-
Notifications
You must be signed in to change notification settings - Fork 1
Closed
Description
Delta Tick Patches (WarpTickPatchV1) + Commit Hash v2 (Paper III boundary semantics)
Goal
- Implement Paper III-style boundary artefacts: a per-tick delta patch (not recipe) that is replayable without search.
- Move commit hashing to v2 so commit_id commits ONLY to the replayable delta (patch_digest), not to planner/scheduler narration.
Decisions (locked)
- Patch stores unversioned slots only.
- WarpTickPatchV1 includes in_slots/out_slots as sets of SlotId.
- ValueVersionId := (slot_id, tick_index) is derived by interpretation along a worldline (position in payload P), not stored.
- Commit hash v2 commits to patch_digest ONLY.
- v2 commit header commits to parents + state_root + patch_digest (+ policy_id/version tags).
- plan_digest / decision_digest / rewrites_digest / receipts / applied_rewrites are diagnostics only.
Implementation outline
- Add WarpTickPatchV1 + WarpOp minimal set to warp-core (delta ops + canonical encoding + patch_digest).
- Generate delta ops by deterministic diff of GraphStore pre/post commit (v0 correctness first).
- Conservative in/out derivation (over-approx OK; under-approx forbidden).
- Update Snapshot to carry patch_digest and compute commit_id v2.
- Update docs/spec-merkle-commit.md with v2 header + new patch digest spec doc.
- Add tests: determinism across engines; replay patch reproduces state_root; slice extraction for a selected slot returns minimal tick subset.
Exit criteria
- cargo test --workspace
- cargo clippy --workspace --all-targets -- -D warnings -D missing_docs
- New spec doc(s) in docs/ and decision log entry recorded.
coderabbitai
Metadata
Metadata
Assignees
Labels
No labels