edde746
bc483a8206
fix(catalog): keep a server's verified library copies when it sits out a later lookup wave
...
A catalog item that had a copy on server A lost it from the detail page when a later refresh could not reach A: partial results expire after the negative TTL and the fresh wave replaced the cache as a unit, so A failing while B answered empty left nothing, with no evidence A had removed anything.
The cache now holds per-server answers with one invariant: a server's answer is replaced only by that server. Servers that failed or were cancelled keep their last-known copies, servers named in no set have left the account, and the failed set still passes through so the outage stays visible and the wave is retried.
2026-09-05 23:14:11 +02:00
..
2026-09-05 23:14:11 +02:00
2026-09-03 11:36:29 +02:00
2026-09-05 14:44:01 +02:00
2026-09-05 23:14:11 +02:00
2026-08-29 19:11:58 +02:00
2026-09-05 04:15:17 +02:00
2026-09-03 21:42:47 +02:00
2026-09-05 14:44:02 +02:00
2026-09-03 11:36:56 +02:00
2026-09-03 11:36:56 +02:00
2026-09-03 21:28:10 +02:00
2026-08-17 20:47:40 +02:00
2026-07-30 11:55:13 +02:00
2026-08-24 13:41:44 +02:00
2026-09-02 22:38:11 +02:00
2026-07-26 04:24:55 +02:00
2026-05-04 22:40:18 +02:00
2026-08-27 14:14:01 +02:00
2026-08-14 13:36:29 +02:00
2026-08-27 10:16:05 +02:00
2026-08-06 03:45:09 +02:00
2026-08-23 18:13:39 +02:00
2026-09-05 14:44:01 +02:00
2026-08-31 06:43:47 +02:00
2026-08-19 13:16:36 +02:00
2026-08-21 19:23:40 +02:00
2026-07-24 03:56:40 +02:00
2026-07-30 20:03:04 +02:00
2026-05-01 01:20:36 +02:00
2026-07-26 06:09:47 +02:00
2026-09-03 11:36:29 +02:00
2026-08-27 16:58:52 +02:00
2026-08-24 19:27:20 +02:00
2026-08-06 03:45:09 +02:00
2026-08-17 19:02:19 +02:00
2026-08-08 09:09:48 +02:00
2026-05-01 01:20:36 +02:00
2026-08-17 19:02:25 +02:00
2026-07-24 03:56:40 +02:00
2026-08-17 19:02:25 +02:00
2026-09-05 14:44:02 +02:00
2026-08-27 09:21:48 +02:00
2026-08-17 19:02:23 +02:00
2026-08-05 06:09:26 +02:00
2026-08-24 05:23:05 +02:00
2026-09-03 11:36:29 +02:00
2026-09-03 11:36:56 +02:00
2026-07-12 08:42:25 +02:00
2026-08-25 03:07:14 +02:00
2026-08-05 06:09:26 +02:00
2026-09-03 13:08:46 +02:00
2026-08-14 13:36:29 +02:00
2026-07-31 21:45:33 +02:00
2026-07-05 15:55:52 +02:00
2026-08-17 19:02:19 +02:00
2026-08-23 17:51:27 +02:00
2026-09-02 12:31:27 +02:00
2026-09-03 11:36:29 +02:00
2026-09-04 16:49:55 +02:00
2026-08-17 19:02:25 +02:00
2026-08-24 12:32:05 +02:00
2026-07-31 21:45:32 +02:00
2026-07-26 06:09:48 +02:00
2026-08-25 08:42:48 +02:00
2026-08-25 08:42:48 +02:00
2026-07-26 06:09:48 +02:00
2026-08-18 04:06:11 +02:00
2026-08-17 13:47:00 +02:00
2026-07-17 23:09:07 +02:00
2026-09-03 18:13:28 +02:00
2026-04-16 23:13:15 +02:00
2026-04-21 12:04:48 +02:00
2026-08-08 09:09:48 +02:00
2026-08-24 05:23:05 +02:00
2026-08-27 16:59:08 +02:00
2026-08-17 19:02:25 +02:00
2026-07-05 19:26:28 +02:00
2026-08-10 21:23:55 +02:00
2026-08-10 23:04:35 +02:00
2026-08-24 12:32:05 +02:00
2026-08-02 16:16:19 +02:00
2026-08-17 19:02:25 +02:00
2026-08-17 19:02:25 +02:00
2026-08-09 07:30:47 +02:00
2026-09-03 13:03:24 +02:00
2026-07-26 06:09:48 +02:00
2026-08-25 08:42:48 +02:00
2026-08-17 19:02:25 +02:00
2026-09-03 11:36:56 +02:00
2026-09-05 14:44:02 +02:00
2026-09-03 11:36:29 +02:00
2026-09-05 15:15:19 +02:00
2026-07-16 14:36:48 +02:00
2026-09-03 13:08:46 +02:00
2026-09-03 13:08:46 +02:00
2026-08-02 04:55:54 +02:00
2026-08-17 19:02:25 +02:00
2026-08-24 19:27:20 +02:00
2026-08-18 06:09:11 +02:00
2026-05-28 15:46:08 -04:00
2026-08-05 12:03:05 +02:00
2026-05-01 01:20:36 +02:00
2026-07-12 08:42:25 +02:00
2026-08-27 14:14:01 +02:00
2026-09-05 04:18:36 +02:00
2026-07-26 06:09:49 +02:00
2026-05-10 13:33:02 +02:00
2026-07-26 06:09:49 +02:00
2026-07-26 06:09:49 +02:00
2026-08-02 04:37:29 +02:00
2026-07-31 21:45:32 +02:00
2026-07-30 02:46:10 +02:00
2026-08-27 14:14:01 +02:00
2026-09-03 23:54:09 +02:00
2026-08-18 06:09:11 +02:00
2026-09-03 13:08:46 +02:00
2026-07-24 03:56:40 +02:00
2026-08-17 19:02:25 +02:00
2026-08-26 16:53:14 +02:00
2026-08-18 06:09:11 +02:00
2026-07-24 03:46:46 +02:00
2026-08-08 09:09:48 +02:00
2026-07-26 06:09:48 +02:00