Files
seaweedfs/sw-block
pingqiu c6b2685890 G5-4 mini-plan v0.1: binary T4 replication wiring
Mirror cmd/blockvolume to T4d-4 part B's WithEngineDrivenRecovery()
framework binding. Single batch (~250 prod + ~150 tests), 5 ordered
subtasks. Design decisions (a-d per kickoff §3 G5-4 row):

  (a) Role inference: assignment-driven, no new CLI flag
  (b) Peer discovery: AssignmentFact.Peers per T4a-5 P-refined
  (c) Listener lifecycle: --ctrl-addr reuse + LIFO Stop in host.Close()
  (d) Engine instantiation: one engine per volume, single --volume-id

Pre-merge gates require G-1 V3-native PORT read of cluster.go:357-369
+ V2 lesson check on weed/storage/blockvol/blockvol.go before code.

4 new invariants to inscribe at close (INV-BIN-WIRING-*).

Submitted for QA + architect ratification per parent kickoff §7
governance loop. No code until ratify.
2026-04-26 16:08:35 -07:00
..

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-block product structure clean enough to split into a separate repo later if needed

Suggested layout:

  • design/: shared V2 design docs
  • prototype/: 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 inside seaweedfs
  • likely future state: sw-block becomes a standalone sibling repo/product
  • design and prototype structure should therefore stay product-oriented and not depend on SeaweedFS-specific paths