mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2026-10-20 21:14:25 +02:00
Contract review (no code changed): - replicaFlushedLSN is the sole authority for replica durability - flushedLSN advanced only after fd.Sync() on replica (not on receive) - shippedLSN/sentLSN are explicitly diagnostic (comment at line 268) - barrier response carries flushedLSN; shipper updates via monotonic CAS - sync_all gates on ALL barriers succeeding (fail-closed) 8 baseline tests promoted to CP13-3 primary proof: - BarrierUsesFlushedLSN, FlushedLSNMonotonicWithinEpoch - FlushedLSN_OnlyAfterSync, FlushedLSN_NotOnReceive - ShipperReplicaFlushedLSN_UpdatedOnBarrier, _Monotonic - BarrierResp_FlushedLSN_Roundtrip, BackwardCompat_1Byte 6 tests classified as support evidence (not primary proof). Reconnect/retention/rebuild tests explicitly out of scope (CP13-4+). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
sw-block
Private WAL V2 and standalone block-service workspace.
Purpose:
- keep WAL V2 design/prototype work isolated from WAL V1 production code in
weed/storage/blockvol - allow private design notes and experiments to evolve without polluting V1 delivery paths
- keep the future standalone
sw-blockproduct structure clean enough to split into a separate repo later if needed
Suggested layout:
design/: shared V2 design docsprototype/: code prototypes and experiments.private/: private notes, phase development, roadmap, and non-public working material
Repository direction:
- current state:
sw-block/is an isolated workspace insideseaweedfs - likely future state:
sw-blockbecomes a standalone sibling repo/product - design and prototype structure should therefore stay product-oriented and not depend on SeaweedFS-specific paths