Quick and Claude Opus 4.8
ed6c084c68
feat(search): gate index events by active provider and harden rebuild reconcile
...
Completes the search-provider-interface wiring that the catalog hardening
commits already call into:
- Skip the transactional search-index-event write path when Meilisearch is
not the active provider (ItemRepository.WithActiveSearchProvider /
SearchIndexEventRepository.disabledByActiveProvider).
- Dead-letter catalog_search_index_events after 10 attempts instead of
retrying forever.
- Track the rebuild high-water mark (MaxEventID / MarkProcessedThrough) and
persist last_processed_event_id in UpdateStateAfterRebuild so a rebuild
reconciles events enqueued during the rebuild.
- Validate (read-only) the embedding lock when embedding a search query
instead of establishing/mutating it.
- Surface total_exact on the legacy /items browse response.
- Wire the active catalog search provider into the scanner and item repo at
startup.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-26 08:34:04 -04:00
..
2026-06-10 14:58:54 -04:00
2026-05-22 23:26:56 -04:00
2026-05-29 12:16:18 -04:00
2026-05-29 12:16:18 -04:00
2026-06-17 09:51:43 -04:00
2026-06-17 13:48:57 -04:00
2026-06-17 13:48:57 -04:00
2026-06-17 13:48:57 -04:00
2026-06-09 19:28:53 -04:00
2026-06-08 21:05:33 -04:00
2026-06-16 20:13:10 -04:00
2026-06-05 16:33:40 -04:00
2026-06-16 20:13:10 -04:00
2026-05-29 13:50:48 -04:00
2026-05-29 13:50:48 -04:00
2026-05-29 13:49:34 -04:00
2026-05-29 13:49:34 -04:00
2026-06-24 11:03:38 -04:00
2026-06-24 11:03:38 -04:00
2026-05-22 23:26:56 -04:00
2026-06-25 23:32:30 -04:00
2026-06-25 23:32:30 -04:00
2026-05-22 23:26:56 -04:00
2026-05-22 23:26:56 -04:00
2026-05-22 23:26:56 -04:00
2026-06-16 18:30:16 -04:00
2026-06-09 18:01:36 -04:00
2026-06-09 18:01:36 -04:00
2026-06-17 09:51:43 -04:00
2026-06-10 08:18:35 -04:00
2026-06-16 18:17:08 -04:00
2026-06-16 20:13:10 -04:00
2026-05-23 23:48:25 -04:00
2026-06-25 20:46:08 -04:00
2026-06-08 09:33:55 -04:00
2026-06-16 20:13:10 -04:00
2026-06-24 11:03:38 -04:00
2026-06-24 11:03:38 -04:00
2026-06-12 10:32:21 -04:00
2026-06-25 16:20:14 -04:00
2026-05-27 13:59:29 -04:00
2026-06-09 19:44:40 -04:00
2026-05-29 11:53:32 -04:00
2026-06-18 10:07:58 -04:00
2026-05-27 10:11:58 -04:00
2026-05-22 23:26:56 -04:00
2026-06-18 10:07:58 -04:00
2026-05-22 23:26:56 -04:00
2026-06-16 20:13:10 -04:00
2026-06-25 20:46:08 -04:00
2026-06-25 21:31:20 -04:00
2026-05-22 23:26:56 -04:00
2026-05-22 23:26:56 -04:00
2026-06-15 15:34:13 -04:00
2026-06-15 15:34:13 -04:00
2026-05-28 17:11:11 -04:00
2026-06-25 20:46:08 -04:00
2026-06-26 08:34:04 -04:00
2026-05-22 23:26:56 -04:00
2026-05-22 23:26:56 -04:00
2026-06-18 10:20:48 -04:00
2026-05-22 23:26:56 -04:00
2026-06-24 11:03:38 -04:00
2026-06-16 18:32:52 -04:00
2026-06-25 17:26:19 -04:00
2026-06-18 10:07:58 -04:00
2026-06-10 14:58:54 -04:00
2026-06-18 10:07:58 -04:00
2026-06-16 20:13:10 -04:00
2026-06-16 20:13:10 -04:00
2026-06-16 20:13:10 -04:00
2026-05-27 10:11:58 -04:00
2026-06-09 19:44:40 -04:00
2026-06-09 19:44:40 -04:00
2026-06-25 20:46:08 -04:00
2026-06-25 20:46:08 -04:00
2026-06-25 20:46:08 -04:00
2026-05-24 22:27:18 -04:00
2026-06-16 20:13:10 -04:00
2026-06-24 11:03:38 -04:00
2026-06-24 11:03:38 -04:00
2026-06-16 20:13:10 -04:00
2026-06-16 20:13:10 -04:00
2026-05-27 10:11:58 -04:00
2026-06-16 20:13:10 -04:00
2026-05-22 23:26:56 -04:00
2026-05-22 23:26:56 -04:00
2026-06-26 08:34:04 -04:00
2026-06-26 08:34:04 -04:00
2026-06-25 22:43:23 -04:00
2026-06-25 22:43:23 -04:00
2026-06-26 08:34:04 -04:00
2026-06-25 23:43:21 -04:00
2026-06-25 23:43:21 -04:00
2026-06-25 23:17:47 -04:00
2026-06-25 23:43:21 -04:00
2026-06-15 09:34:08 -04:00
2026-06-15 09:34:08 -04:00
2026-06-25 23:43:21 -04:00
2026-06-18 10:07:58 -04:00
2026-06-25 23:43:21 -04:00
2026-06-25 23:06:51 -04:00
2026-06-25 23:06:51 -04:00
2026-06-11 17:16:27 -04:00
2026-05-27 14:27:14 -04:00
2026-05-22 23:26:56 -04:00
2026-06-18 10:07:58 -04:00
2026-06-18 19:17:22 -04:00
2026-06-05 16:33:40 -04:00