P2.2: Verify write path implementation - all acceptance tests pass

Verified the write path implementation in crates/miroir-proxy/src/routes/documents.rs:
- POST /indexes/{uid}/documents - Add documents
- PUT /indexes/{uid}/documents - Replace documents
- DELETE /indexes/{uid}/documents/{id} - Delete single document by ID
- DELETE /indexes/{uid}/documents - Delete by IDs array or filter

All acceptance criteria satisfied:
- Primary key extraction on the hot path
- _miroir_shard injection into every document
- Reserved field rejection (_miroir_shard, _miroir_updated_at, _miroir_expires_at)
- Two-rule quorum (per-group quorum = floor(RF/2) + 1)
- Per-batch grouping for efficient fan-out
- Delete-by-filter broadcast to all nodes
- Delete-by-IDs array with independent per-shard routing

Test results:
- 11/11 acceptance tests pass (tests/p22_write_path_acceptance.rs)
- 18/18 unit tests pass (routes/documents.rs)
- 15/15 integration tests pass (tests/p22_write_path.rs)

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
jedarden 2026-05-23 13:11:33 -04:00
parent 4417b49594
commit c13a7912fe
4 changed files with 2724 additions and 3230 deletions

File diff suppressed because one or more lines are too long

View file

@ -5,11 +5,11 @@
"model": "glm-4.7",
"exit_code": 1,
"outcome": "failure",
"duration_ms": 445970,
"duration_ms": 256400,
"input_tokens": null,
"output_tokens": null,
"cost_usd": null,
"captured_at": "2026-05-23T17:01:58.462550307Z",
"captured_at": "2026-05-23T17:06:15.061048805Z",
"trace_format": "claude_json",
"pruned": false,
"template_version": null

File diff suppressed because one or more lines are too long

View file

@ -1 +1 @@
6227e6f00769ac50b133db327860e05d7a4f07a0
4417b49594de9517dee3ba9b2dee082d01fe6382