myxce/.kiro/specs/raft-ha-core-safety
Rongsong Shen 056675c8b3 fix(raft-ha-core-safety): (term,lsn,payload-crc)-aware persist guard (task 2.2)
Payload-aware repair: identical payload = idempotent no-op; non-empty
differing payload at the TIP = repair (truncate-to-lsn-1 + re-append,
committed_lsn snapshot/restored under lock); empty-over-stored = keep
(never degrade); BELOW-tip conflict = loud non-promotable fence
(recovery_unrecoverable), never truncate the tail or lower committed_lsn.
read_entry_meta_locked computes payload-crc identically to walcompare.
Turns 2.1 case (a) green; new below-tip regression test pins the
committed-boundary safety. Review round 1 caught + fixed a committed-data-
loss bug (tail-truncate on below-tip conflict). 8/8 target suite, sibling
persist/repl/catchup/durability suites green; persist-before-ACK intact.
2026-06-27 10:57:37 +00:00
..
design.md docs(raft-ha-core-safety): retarget Phase 2 to cross-term payload loss (post-1.3) 2026-06-27 09:38:06 +00:00
requirements.md docs(raft-ha-core-safety): finalize spec (requirements, design, research, tasks) 2026-06-27 04:37:07 +00:00
research.md docs(raft-ha-core-safety): retarget Phase 2 to cross-term payload loss (post-1.3) 2026-06-27 09:38:06 +00:00
spec.json docs(raft-ha-core-safety): finalize spec (requirements, design, research, tasks) 2026-06-27 04:37:07 +00:00
tasks.md fix(raft-ha-core-safety): (term,lsn,payload-crc)-aware persist guard (task 2.2) 2026-06-27 10:57:37 +00:00