mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2026-05-22 17:51:30 +00:00
Close all Rebuild Ready and Restore Ready matrix gaps. V2 Ready at 10/14 (2 partial, 2 missing — honest assessment). New tests (tester-written): - R1: syncAck-driven trigger via protocol engine decision - R3: stale replica restart beyond WAL → rebuild converges - R5: connection drop mid-base → cancel → fresh rebuild converges - R10: failover-rejoin with forced WAL recycling, strict rebuild assert - R11: divergent replica full overwrite convergence - R12: crash mid-rebuild → fresh session converges (not resume) - S2: corrupt WAL entry + corrupt base block both rejected - S5: snapshot-tail rebuild (base + WAL tail replay) - S7: crash between base install and tail replay - S8: snapshot under concurrent writes - V5: rebuild complete without DurableLSN blocks publish_healthy - V9: mixed replica health aggregate projection - V14: negative fail-closed matrix (epoch, kind, stale) Bug fix: StartRebuildSession now clears stale dirty map + resets WAL + updates checkpoint AFTER safety check but BEFORE session.Start(). Fixes stale extent data shadowing rebuild base blocks on reopened replicas. Cleanup: remove 14 obsolete design docs (migration batches, old WAL-v2 specs, simulator goals) — all superseded by current protocol docs. 34 component tests + 8 protocol engine tests + server tests all pass. 1GB CRC validation passes in 19s. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>