diff options
| author | historia <[not public]> | 2026-10-01 18:36:36 -0400 |
|---|---|---|
| committer | historia <[not public]> | 2026-10-01 18:36:36 -0400 |
| commit | 8a94f21bd47c0a00bc415395232dba22fa958837 (patch) | |
| tree | 3dc9492913315ac98b6eddaec4605e4344cde7d6 /internal | |
| parent | 4e2a95503e4ea4c830510f5aea23fac7948ddc41 (diff) | |
| download | thehouseoficarus-8a94f21bd47c0a00bc415395232dba22fa958837.tar.gz | |
remove: slop docs
Diffstat (limited to 'internal')
| -rw-r--r-- | internal/casino/core.go | 4 | ||||
| -rw-r--r-- | internal/casino/video_poker_config.go | 2 | ||||
| -rw-r--r-- | internal/casino/video_poker_rules.go | 3 | ||||
| -rw-r--r-- | internal/game/act_burn.go | 2 | ||||
| -rw-r--r-- | internal/game/hacking/liars_dice_test.go | 1 | ||||
| -rw-r--r-- | internal/game/hardening_tick_lifecycle_test.go | 3 | ||||
| -rw-r--r-- | internal/game/money.go | 5 | ||||
| -rw-r--r-- | internal/game/sys_triggers.go | 3 | ||||
| -rw-r--r-- | internal/game/tick_systems.go | 6 | ||||
| -rw-r--r-- | internal/game/tick_systems_test.go | 11 | ||||
| -rw-r--r-- | internal/game/wallet_test.go | 3 |
11 files changed, 18 insertions, 25 deletions
diff --git a/internal/casino/core.go b/internal/casino/core.go index 8ab44f5..f51dde3 100644 --- a/internal/casino/core.go +++ b/internal/casino/core.go @@ -156,8 +156,8 @@ func resolveStakeIDs(w Wallet, ids []string) { // settleStakeOutcome applies one wager's outcome through the wallet and // reports whether the settlement could NOT be made durable. It carries the -// money-critical ordering shared by every table game (documented in -// dev_guide/concurrency.md): compute the payout, pay it via PayCredits +// money-critical ordering shared by every table game: compute the payout, +// pay it via PayCredits // BEFORE announcing the win — that one save credits the payout and resolves // the stakes it returns, so a crash can never pay the payout AND refund the // same stake — and only then stand the hand down. On a persistence failure diff --git a/internal/casino/video_poker_config.go b/internal/casino/video_poker_config.go index 0a39913..88fcbc4 100644 --- a/internal/casino/video_poker_config.go +++ b/internal/casino/video_poker_config.go @@ -56,7 +56,7 @@ var cabinetGames = map[string][]string{ // Each tuple is low, normal, full. These are named published schedules, not // interpolated payouts. Full means the highest offered on this cabinet, not -// a promise of identical RTP across games. Sources: dev_guide/video_poker.md. +// a promise of identical RTP across games. var cabinetSchedules = map[string]map[string][3]string{ CabinetClassic: { "jacks_or_better": {"7/5", "8/5", "9/6"}, diff --git a/internal/casino/video_poker_rules.go b/internal/casino/video_poker_rules.go index bfff0c4..29ab5c3 100644 --- a/internal/casino/video_poker_rules.go +++ b/internal/casino/video_poker_rules.go @@ -14,8 +14,7 @@ type pokerSchedule struct { var pokerCategories = []string{"Natural royal flush", "Royal flush", "Four deuces", "Five of a kind", "Wild royal flush", "Straight flush", "Four aces with 2-4 kicker", "Four 2s-4s with A-4 kicker", "Four aces", "Four 2s-4s", "Four 5s-Ks", "Four of a kind", "Full house", "Flush", "Straight", "Three of a kind", "Two pair", "Jacks or better", "Kings or better"} // pokerPayTable resolves the per-coin (five-coin) rates for a resolved -// game/pay-table pair. Every listed schedule is a published one; see -// dev_guide/video_poker.md for the sources. +// game/pay-table pair. Every listed schedule is a published one. func pokerPayTable(c VideoPokerConfig) (pokerSchedule, bool) { c = c.Normalize() if c.Variant == "" { 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" |
