mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2026-07-31 20:36:47 +00:00
Add host-side protocol state seam that derives per-replica execution state from V2 sender/session snapshots and blocks live-tail WAL shipping while an active recovery session is in progress. New file: weed/server/block_protocol_state.go - replicaProtocolExecutionState derived from engine snapshots - LiveEligible=false during active catch-up/rebuild sessions - bindProtocolExecutionPolicy wires policy into BlockVol - syncProtocolExecutionState called after assignments + core events Data plane changes: - WALShipper.Ship() checks liveShippingPolicy before dial/send - BlockVol.SetLiveShippingPolicy persists across shipper group rebuilds - ShipperGroup propagates policy to all shippers Design contract: sw-block/design/v2-protocol-aware-execution.md Scope: WAL-first rollout only. Prevents illegal live-tail delivery during active recovery. Does not change snapshot/build behavior or move backlog. Next wave: bounded WAL catch-up under same contract. Tests: 4 unit/component tests for phase gate behavior, plus bootstrap seam tests that confirmed the two pre-existing bugs locally. 13 files changed, 900 insertions, 69 deletions. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
V2 Design
This directory now keeps the current design and process entrypoints for the active V2 line.
Historical planning/review documents were moved to ../docs/archive/design/ to keep this directory smaller and easier to navigate.
Read First
v2-protocol-truths.mdv2-capability-map.mdv2-pure-runtime-rf1-bootstrap.mdv2-volumev2-single-node-mvp.mdv2-proof-and-retest-pyramid.mdv2-protocol-claim-and-evidence.mdv2-two-loop-protocol.mdv2-automata-ownership-map.mdv2-loop1-surface-draft.mdv2-product-completion-overview.mdv2-phase-development-plan.mdv2-semantic-methodology.zh.mdv2-protocol-closure-map.zh.mdv2-algorithm-overview.mdv2-algorithm-overview.zh.mdv2-detailed-algorithm.zh.md
Active Process / Workflow
protocol-development-process.mdagent_dev_process.md
Active Supporting Design
v2-acceptance-criteria.mdv2-open-questions.mdv2_scenarios.mdv2-scenario-sources-from-v1.mdv1-v15-v2-comparison.mdv2-reuse-replacement-boundary.mdwal-replication-v2.mdwal-replication-v2-state-machine.mdwal-replication-v2-orchestrator.mdwal-v2-tiny-prototype.mdwal-v1-to-v2-mapping.mdv2-dist-fsm.md
Historical / Archived
See ../docs/archive/design/README.md for archived:
- old roadmaps
- first-slice planning docs
- passed readiness/slicing reviews
- phase-specific design maps for closed phases
Execution Note
- active development tracking lives under
../.private/phase/ - current phase contract and slice packages live there rather than in this directory
The original project-level copies under learn/projects/sw-block/design/ remain as shared references for now.