From 8a94f21bd47c0a00bc415395232dba22fa958837 Mon Sep 17 00:00:00 2001 From: historia <[not public]> Date: Thu, 1 Oct 2026 18:36:36 -0400 Subject: remove: slop docs --- internal/game/act_burn.go | 2 +- internal/game/hacking/liars_dice_test.go | 1 - internal/game/hardening_tick_lifecycle_test.go | 3 +-- internal/game/money.go | 5 ++--- internal/game/sys_triggers.go | 3 +-- internal/game/tick_systems.go | 6 +++--- internal/game/tick_systems_test.go | 11 +++++------ internal/game/wallet_test.go | 3 +-- 8 files changed, 14 insertions(+), 20 deletions(-) (limited to 'internal/game') diff --git a/internal/game/act_burn.go b/internal/game/act_burn.go index 706d0a7..4b3b437 100644 --- a/internal/game/act_burn.go +++ b/internal/game/act_burn.go @@ -424,7 +424,7 @@ func (g *Game) broadcastDrop(p *player.Player, itemID, itemName string) { func (g *Game) FireTick() { // Mandatory tick-system guard: the master per-tick subscriber can fire // before SetHub during startup, and burning out a fire reaches - // cancelStokers -> g.Hub.PlayersInRoom. See dev_guide/tick_order.md. + // cancelStokers -> g.Hub.PlayersInRoom. if g.Hub == nil { return } diff --git a/internal/game/hacking/liars_dice_test.go b/internal/game/hacking/liars_dice_test.go index 83bed93..03f2b8d 100644 --- a/internal/game/hacking/liars_dice_test.go +++ b/internal/game/hacking/liars_dice_test.go @@ -10,7 +10,6 @@ import ( // "illegal use of non-zero Builder copied by value" on ordinary input — a // forced challenge resolves on the very first bid. A panic here runs on the // game owner goroutine, which has no recovery, so it terminated the server. -// See dev_guide/concurrency.md for the owner's no-recovery guarantee. func TestLiarsDiceForcedChallengeDoesNotPanic(t *testing.T) { g := NewLiarsDiceGame() diff --git a/internal/game/hardening_tick_lifecycle_test.go b/internal/game/hardening_tick_lifecycle_test.go index d16c2c8..d9a348a 100644 --- a/internal/game/hardening_tick_lifecycle_test.go +++ b/internal/game/hardening_tick_lifecycle_test.go @@ -50,8 +50,7 @@ func TestFireTickNilHubIsSafe(t *testing.T) { // TestSequenceTickFiresInDeterministicOrder guards the sorted iteration over // g.sequences: map iteration randomly chose which simultaneous sequence -// advanced first, contradicting the determinism contract in -// dev_guide/tick_order.md. +// advanced first, contradicting the deterministic-order contract. func TestSequenceTickFiresInDeterministicOrder(t *testing.T) { g := escapeTestGame() g.sequences = make(map[string]*sequence) diff --git a/internal/game/money.go b/internal/game/money.go index 4c3316e..6317df8 100644 --- a/internal/game/money.go +++ b/internal/game/money.go @@ -6,8 +6,7 @@ package game // economy journal and no two-phase recovery: startup simply refunds any stake // still listed as pending, because a listed stake means the process died // before the round resolved. Two-phase journal recovery was deliberately -// removed as out of scope for a game this size; see -// dev_guide/concurrency.md ("Durable money") before reintroducing it. +// removed as out of scope for a game this size. import ( "crypto/rand" @@ -128,7 +127,7 @@ func addCreditsChecked(a, b int) (int, error) { // same save that settled them. // // This is intentionally the entire recovery story. Two-phase journal recovery -// is out of scope for this game (see dev_guide/concurrency.md). +// is out of scope for this game. func (g *Game) recoverPendingWagers() { names, err := g.AccountStore.ListCharacterNames() if err != nil { diff --git a/internal/game/sys_triggers.go b/internal/game/sys_triggers.go index d1ce336..790eb12 100644 --- a/internal/game/sys_triggers.go +++ b/internal/game/sys_triggers.go @@ -101,8 +101,7 @@ func (g *Game) startSequence(sess *net.Session, p *player.Player, steps []behavi func (g *Game) SequenceTick() { g.seqMu.Lock() // g.sequences is a map: collect its keys and sort them so the per-tick - // order in which simultaneous sequences advance is reproducible (the - // determinism contract in dev_guide/tick_order.md). + // order in which simultaneous sequences advance is reproducible. keys := make([]string, 0, len(g.sequences)) for key := range g.sequences { keys = append(keys, key) diff --git a/internal/game/tick_systems.go b/internal/game/tick_systems.go index f85cdfa..8311ccf 100644 --- a/internal/game/tick_systems.go +++ b/internal/game/tick_systems.go @@ -1,15 +1,15 @@ package game // tickSystem is one step of the canonical per-tick system sequence. Name is -// the human-readable identifier also encoded in dev_guide/tick_order.md; -// Run invokes the underlying system. The slice tickSystemOrder is the single +// the human-readable identifier for the step; Run invokes the underlying +// system. The slice tickSystemOrder is the single // executable source of truth for the order in which per-tick systems fire. // // The order is what callers like the master subscriber in cmd/thoi/main.go // (registered as engine subscription ID 1, which the engine fires before all // dynamically-registered combat/aggro/respawn callbacks per processTick's // registration-ID sort) depend on. Reordering this slice is a breaking change -// to game behavior; keep dev_guide/tick_order.md in sync. +// to game behavior. type tickSystem struct { Name string Run func(*Game) diff --git a/internal/game/tick_systems_test.go b/internal/game/tick_systems_test.go index 82028d6..a701fd7 100644 --- a/internal/game/tick_systems_test.go +++ b/internal/game/tick_systems_test.go @@ -13,8 +13,8 @@ import ( ) // expectedTickSystemOrder is the canonical per-tick system sequence. It MUST -// stay in sync with tickSystemOrder in tick_systems.go and with -// dev_guide/tick_order.md. Updating one without the others is a bug. +// stay in sync with tickSystemOrder in tick_systems.go. Updating one without +// the other is a bug. // // The list is intentionally spelled out here (rather than derived from // tickSystemOrder) so the test fails loudly when someone reorders, adds, or @@ -48,17 +48,16 @@ var expectedTickSystemOrder = []string{ // TestTickSystemOrder asserts the canonical per-tick system sequence matches // the documented order exactly. This is the regression guard referenced in -// dev_guide/tick_order.md and in the master subscriber doc comment in -// cmd/thoi/main.go. +// the master subscriber doc comment in cmd/thoi/main.go. func TestTickSystemOrder(t *testing.T) { got := TickSystemOrder() if len(got) != len(expectedTickSystemOrder) { - t.Fatalf("tick system count changed: got %d, want %d (update expectedTickSystemOrder and dev_guide/tick_order.md)", + t.Fatalf("tick system count changed: got %d, want %d (update expectedTickSystemOrder)", len(got), len(expectedTickSystemOrder)) } for i, want := range expectedTickSystemOrder { if got[i].Name != want { - t.Errorf("tick system %d: got %q, want %q (reordered? update dev_guide/tick_order.md)", + t.Errorf("tick system %d: got %q, want %q (reordered?)", i, got[i].Name, want) } } diff --git a/internal/game/wallet_test.go b/internal/game/wallet_test.go index a74ccd5..56789d8 100644 --- a/internal/game/wallet_test.go +++ b/internal/game/wallet_test.go @@ -3,8 +3,7 @@ package game // Single-file money wallet regressions: a wager debits and records a pending // stake in one atomic character save, a settlement credits and clears the // stakes it returns in one save, a failed save reverts, and startup refunds -// anything left in flight. See internal/game/money.go for the design and -// dev_guide/concurrency.md for why two-phase recovery is out of scope. +// anything left in flight. See internal/game/money.go for the design. import ( "os" -- cgit v1.2.3