Skip to content

Approve FS-0007: v0 Two-Client Multiplayer Slice#10

Merged
danieldilly merged 1 commit intomainfrom
feat/approve-fs-0007-v0-multiplayer-slice
Dec 23, 2025
Merged

Approve FS-0007: v0 Two-Client Multiplayer Slice#10
danieldilly merged 1 commit intomainfrom
feat/approve-fs-0007-v0-multiplayer-slice

Conversation

@danieldilly
Copy link
Contributor

Summary

Approves FS-0007 v0 Two-Client Multiplayer Slice specification after extensive iterative review with multiple senior reviewers. Changes spec status from Draft to Approved, marking it implementation-ready.

Key refinements:

  • Complete wire schemas for all protocol messages (ClientHello, ServerWelcome, JoinBaseline, SnapshotProto)
  • Explicit detectability data contract with tie evolution semantics for InputSeq selection
  • Byte-identical snapshot broadcast for v0 floor coherency
  • 20 Tier-0 gates with concrete, testable acceptance criteria
  • Constitution and ADR updates to close governance gaps

Trace Block

Issue: #7
Spec: docs/specs/FS-0007-v0-multiplayer-slice.md
Constitution: AC-0001, INV-0001, INV-0002, INV-0003, INV-0004, INV-0005, INV-0006, INV-0007, DM-0001, DM-0002, DM-0003, DM-0005, DM-0006, DM-0007, DM-0008, DM-0009, DM-0010, DM-0011, DM-0014, DM-0015, DM-0016, DM-0017, DM-0018, DM-0019, DM-0020, DM-0021, DM-0022, DM-0023, DM-0024, DM-0025, DM-0026, DM-0027, KC-0001, KC-0002
ADRs: ADR-0001, ADR-0002, ADR-0003, ADR-0004, ADR-0005, ADR-0006, ADR-0007

Files Changed

  • docs/specs/FS-0007-v0-multiplayer-slice.md (status: Draft → Approved; +263/-57 lines)
  • docs/constitution/acceptance-kill.md (AC-0001 clarifications: testable synchronization definition, entity binding requirement)
  • docs/adr/0006-input-tick-targeting.md (added v0 floor coherency normative constraint)
  • docs/networking/v0-parameters.md (minor parameter documentation updates)

Determinism / Simulation Impact

  • This PR changes simulation-plane logic
    • No simulation implementation changes. This PR approves the specification only. Implementation will follow in a subsequent PR that references this approved spec.

Verification

  • just ci (all checks pass)
  • just ids (Constitution ID validation passes)
  • just spec-lint (FS-0007 structure and ID references validated)
  • Constitution docs changed: just ids-gen run and outputs committed (AC-0001 updates)

Risk / Notes

Spec Completeness: This spec underwent extensive review with multiple senior reviewers across 20+ refinement rounds. All P0 blockers closed:

  • Wire schemas complete and consistent
  • Validation rules unambiguous with single normative triggers
  • Tie detection semantics explicitly defined (max_seq_tied evolution)
  • Floor coherency byte-identical and testable
  • Recovery under packet loss validated via T0.13a
  • 20 Tier-0 gates enforce all critical requirements

Implementation Next Steps: Once merged, implementation work for AC-0001 can begin using this approved spec as the definitive requirements document.

Spec Length: 554 lines. Reviewer feedback noted this feels long due to Constitution material repetition. Post-v0 refactor tracked to move stable patterns into Constitution and shrink specs to deltas only. Not blocking for v0.

Checklist

  • Trace block is complete and accurate
  • This PR stays within Constitution invariants (no silent weakening)
  • No new dependencies added
  • Spec exists for non-trivial changes (FS-0007 approved)
  • Gates defined per spec's Gate Plan (20 Tier-0 gates in FS-0007)

Changes spec status from Draft to Approved after extensive iterative review.

Key refinements in this version:
- Complete wire schemas (ClientHello, ServerWelcome, JoinBaseline, SnapshotProto)
- Explicit detectability data contract with tie evolution semantics
- ServerWelcome.target_tick_floor formula normative requirement
- Byte-identical snapshot broadcast for v0 floor coherency
- InputSeq selection with max_seq_tied as single normative trigger
- Buffer cap lifted to own validation row for visibility
- Floor recovery test (T0.13a) validates bounded recovery under packet loss
- Transport vs application monotonicity clarification
- 20 Tier-0 gates with concrete acceptance criteria

Constitution updates:
- AC-0001.1: Testable synchronization definition
- AC-0001.2: Controlled entity binding requirement

ADR updates:
- ADR-0006: v0 floor coherency normative constraint

Spec is implementation-ready with no remaining P0 blockers.

Refs: #7
@danieldilly danieldilly merged commit 4be386f into main Dec 23, 2025
1 check passed
@danieldilly danieldilly deleted the feat/approve-fs-0007-v0-multiplayer-slice branch December 23, 2025 18:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant