Files
seaweedfs/sw-block/.private/phase
pingqiuandClaude Opus 4.6 edec7098e8 feat: add V2 protocol simulator and enginev2 sender/session prototype
Adds sw-block/ directory with:

- distsim: protocol correctness simulator (96 tests)
  - cluster model with epoch fencing, barrier semantics, commit modes
  - endpoint identity, control-plane flow, candidate eligibility
  - timeout events, timer races, same-tick ordering
  - session ownership tracking with ID-based stale fencing

- enginev2: standalone V2 sender/session implementation (63 tests)
  - per-replica Sender with identity-preserving reconciliation
  - RecoverySession with FSM phase transitions and session ID
  - execution APIs: BeginConnect, RecordHandshake, BeginCatchUp,
    RecordCatchUpProgress, CompleteSessionByID — all sender-authority-gated
  - recovery outcome branching: zero-gap, catch-up, needs-rebuild
  - assignment-intent orchestration with epoch fencing

- design docs: acceptance criteria, open questions, first-slice spec,
  protocol development process

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-28 10:38:27 -07:00
..

Phase Dev

Use this directory for private phase development notes.

Phase Protocol

Each phase should use this file set:

  • phase-01.md
    • plan
    • scope
    • progress
    • active tasks
    • exit criteria
  • phase-01-log.md
    • dated development log
    • experiments
    • test runs
    • failures and findings
  • phase-01-decisions.md
    • key algorithm decisions
    • tradeoffs
    • rejected alternatives

Suggested naming pattern:

  • phase-01.md
  • phase-01-log.md
  • phase-01-decisions.md
  • phase-02.md
  • phase-02-log.md
  • phase-02-decisions.md

Rule of use:

  1. if it is what we are doing -> phase-xx.md
  2. if it is what happened -> phase-xx-log.md
  3. if it is why we chose something -> phase-xx-decisions.md