miroir/crates/miroir-proxy
jedarden 879d25faf4 feat(reshard): implement cross-index PK set + content-hash comparator (P5.1.d)
Implements plan §13.1 step 4: cross-index verification between live and
shadow indexes during resharding. This reuses §13.8's bucketed-Merkle
machinery with PK-keyed (not shard-keyed) bucketing to compare indexes
with different shard counts.

Key changes:
- ReshardExecutor::run_verify now uses AntiEntropyReconciler's
  compare_index_buckets method to perform cross-index comparison
- Added VerificationFailed error variant to MiroirError
- Exposed executor module via pub mod in reshard.rs
- Added helper function hash_pk_to_shard for mismatch detail reporting
- Added 6 acceptance tests for PK-keyed bucketing, content hash
  canonicalization, and verify result structure

Acceptance criteria:
- Cross-index PK set comparison: live PK set == shadow PK set
- Content hash matching: for each PK, content_hash matches
- PK-keyed bucketing: independent of shard count S
- Reuses §13.8 bucketed-Merkle machinery

Closes: miroir-uhj.1.4
2026-05-24 17:50:13 -04:00
..
admin-ui/dist feat(admin-ui): implement Canaries, Shadow Diff, CDC Inspector, Metrics, Settings sections (P5.19.d) 2026-05-24 13:27:52 -04:00
src fix(metrics): fix metric name collision + compilation fixes 2026-05-24 17:23:32 -04:00
static feat(search-ui): add embeddable modes and custom templates (P5.21.e) 2026-05-24 14:37:00 -04:00
tests feat(reshard): implement cross-index PK set + content-hash comparator (P5.1.d) 2026-05-24 17:50:13 -04:00
Cargo.toml fix(config): implement P6.1 pod resource envelope + fix compilation errors 2026-05-24 16:48:57 -04:00