miroir/crates/miroir-proxy
jedarden 92a36612e0 feat(search-ui): add Idempotency-Key header for query coalescing (plan §13.10, §13.21)
- Add canonicalJson() helper to sort object keys recursively
- Add generateIdempotencyKey() to create per-query idempotency keys
  from index + canonicalized request body (hash-based)
- Send Idempotency-Key header on search requests for server-side coalescing
- Add unit test (test_idempotency_key.js) verifying:
  - Same parameters produce same key
  - Different parameters produce different keys
  - Key format is correct (search-{hex})
  - Canonical JSON ensures consistency across key orderings

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-05-31 11:51:21 -04:00
..
admin-ui/dist feat(admin-ui): add 2PC settings preview endpoint and UI integration 2026-05-25 00:03:35 -04:00
src feat(tenant): implement tenant affinity API endpoints and CLI commands 2026-05-26 19:41:50 -04:00
static feat(search-ui): add Idempotency-Key header for query coalescing (plan §13.10, §13.21) 2026-05-31 11:51:21 -04:00
tests test(search-ui): add HTTP endpoint tests and scoped key rotation documentation 2026-05-26 18:29:11 -04:00
Cargo.toml feat(dump-import): implement multipart upload and broadcast fallback 2026-05-26 13:43:33 -04:00