This website requires JavaScript.
0bef53bd11
Merge next: make build and make cover targets (closes #19 , closes #17 )
main
clawbot
2026-08-10 15:58:35 +02:00
e3ab4aba8b
build: add a make cover target for per-function coverage (closes #17 )
next
sneak
2026-08-10 13:48:52 +00:00
60442ce103
build: add a make build target, drop README's raw go build (closes #19 )
sneak
2026-08-10 13:46:25 +00:00
8413c0c7ba
Merge next: trim the lint-gate comments to the traps (closes #44 )
clawbot
2026-08-10 15:41:16 +02:00
6f997b8d5c
docs: trim the lint-gate comments to the traps (closes #44 )
sneak
2026-08-10 13:36:58 +00:00
9f079ab594
Merge next: run all linting in Docker (closes #41 )
clawbot
2026-08-10 15:33:21 +02:00
3eb9f81fc4
docs: name the two required flags, and record .dockerignore as part of the gate
sneak
2026-08-10 13:29:44 +00:00
20cfb47912
build: define the lint stage name once so the two flags cannot diverge
sneak
2026-08-10 13:11:42 +00:00
329c03f06e
build: make the lint cache-busting self-validating in script/lint
sneak
2026-08-10 12:55:40 +00:00
599286a88e
build: run golangci-lint in a pinned container via script/lint (closes #41 )
sneak
2026-08-10 12:33:41 +00:00
bde4eae450
Merge fix/autosave-turn-budget-36 (drive on a condition, not a turn budget)
clawbot
2026-08-09 19:18:56 +02:00
3061931291
test: drive the autosave race test to a condition, not a turn count (closes #36 )
clawbot
2026-08-09 16:45:34 +00:00
13caec4298
Merge test/wizard-coverage (wizard commands verified against C)
clawbot
2026-08-09 18:15:32 +02:00
df45f4cb24
Merge trap coverage (eight trap effects verified against C)
clawbot
2026-08-09 18:15:08 +02:00
ba444a2002
Unit-test the eight trap effects against the C reference (closes #14 )
sneak
2026-08-09 15:37:46 +00:00
6f409bda9e
Cover the wizard commands with C-verified unit tests (closes #7 )
sneak
2026-08-09 15:39:58 +00:00
c0741ad1ea
Merge test/sticks-coverage (wand, staff and bolt-geometry tests)
clawbot
2026-08-09 17:23:54 +02:00
29fbedb77d
Test the wands, staffs and bolt geometry of sticks.c (closes #6 )
sneak
2026-08-09 15:06:52 +00:00
bf820e3ec9
Merge test/rings-coverage (ring tests verified against C)
clawbot
2026-08-09 17:08:28 +02:00
c61e2827c5
Cover game/rings.go with C-verified unit tests (closes #5 )
sneak
2026-08-09 14:53:46 +00:00
2f7a0d980d
Merge audit/command-switch-coverage (pin dispatch to C's command switch)
clawbot
2026-08-09 16:27:51 +02:00
2e02e7d190
test: pin command dispatch to C's command.c switch (closes #31 )
sneak
2026-08-09 14:17:21 +00:00
a653cc76f2
Merge fix/lost-c-behaviors (schtick message, forced redraw, greeting)
clawbot
2026-08-09 12:13:59 +02:00
1142f43aed
Restore three lost C behaviors: schtick message, forced redraw, greeting (closes #13 )
sneak
2026-08-09 09:55:38 +00:00
727dfb2642
Merge fix/wizard-toggle-off (restore the '+' wizard toggle)
clawbot
2026-08-09 10:30:21 +02:00
c95f98ffe5
Port the '+' wizard-mode toggle-off (closes #11 )
sneak
2026-08-09 08:22:05 +00:00
630038eedb
Merge cleanup/pr26-followups (post-#26 doc and naming cleanups)
clawbot
2026-08-09 10:13:19 +02:00
f7670cf86a
docs,save: correct a stale TODO claim and rename encodeSnapshot (closes #27 )
sneak
2026-08-09 08:05:30 +00:00
85354f2e6b
Merge fix/autosave-race (service signal saves on the game goroutine)
clawbot
2026-08-09 10:00:59 +02:00
3a01283358
fix: take the signal-time autosave on the game goroutine (closes #24 )
clawbot
2026-08-09 06:47:40 +00:00
e1bf46b241
Merge sig-leave (restore the terminal on INT/QUIT)
clawbot
2026-08-09 08:19:01 +02:00
dfb34be1c4
fix: restore the terminal on SIGINT/SIGQUIT (closes #12 )
sneak
2026-08-09 05:45:45 +00:00
4aa4babe40
Merge fix/wizard-which-bounds (bound wizard-created item kinds)
clawbot
2026-08-09 07:34:54 +02:00
af3050b187
fix: bound wizard-created Which against its item table (closes #10 )
sneak
2026-08-09 05:09:03 +00:00
eb31473ef0
Merge docs-staleness (correct stale MEMORY/README/TODO claims)
clawbot
2026-08-09 07:00:35 +02:00
56bcad9fc6
docs: correct stale claims in MEMORY.md, TODO.md, and README.md (closes #3 )
sneak
2026-08-09 04:59:00 +00:00
c922a16781
Merge make-test-policy-pattern (mandated test target pattern)
clawbot
2026-08-09 03:50:26 +02:00
e376b2bf11
build: adopt the mandated test target pattern (closes #2 )
sneak
2026-08-09 01:42:24 +00:00
d6cd418f38
Merge pull request 'Update golangci-lint to v2.12.2 with canonical config' (#1 ) from golangci-v2.12.2 into main
Jeffrey Paul
2026-08-07 23:24:38 +02:00
63d1e797e2
chore(lint): adopt canonical golangci-lint config
sneak
2026-08-07 20:45:02 +00:00
8ce238dd62
Merge seed-compat (item-table cross-validation vs C reference)
sneak
2026-07-24 03:05:39 +07:00
c30da22e43
Rotate TODO to coverage-broadening step (seed-compat item tables done)
sneak
2026-07-24 03:05:39 +07:00
e595b87718
Cross-validate item appearance tables against the C reference
sneak
2026-07-24 03:05:01 +07:00
11223caa7c
Merge playtest-hardening (deep playthrough + crash sweep tests)
sneak
2026-07-23 08:59:03 +07:00
e7e1bc3c40
Rotate TODO to seed-verification step (playtest hardening done)
sneak
2026-07-23 08:59:03 +07:00
061da11877
Add deep-playthrough and turn-loop crash-sweep tests (playtest hardening)
sneak
2026-07-23 08:58:05 +07:00
0e6ed41351
Merge docs-refresh (ARCHITECTURE.md Part 2 + rename table)
sneak
2026-07-23 08:40:55 +07:00
b431af8b74
Rotate TODO to playtest step (docs refresh done)
sneak
2026-07-23 08:40:55 +07:00
cb1e302102
Refresh ARCHITECTURE.md Part 2 for the post-refactor design
sneak
2026-07-23 08:40:15 +07:00
bcdfaf4ab4
Merge refactor/constructor-style (refactor step 8: New/Params + os.Exit)
sneak
2026-07-23 08:02:40 +07:00
a7d27ef65f
Rotate TODO to docs-refresh step (step 8 done)
sneak
2026-07-23 08:02:35 +07:00
194ce1dd16
Exit the process on game-over instead of unwinding a panic
sneak
2026-07-23 06:44:39 +07:00
cd0ba6c8ee
Rename constructor to game.New(game.Params) per styleguide
sneak
2026-07-23 05:39:31 +07:00
8241cf4bee
Merge add-make-targets (dev Makefile + markdown formatting)
sneak
2026-07-22 22:20:45 +07:00
35b538e888
Add dev Makefile; format all markdown with prettier
sneak
2026-07-22 22:20:34 +07:00
88f18fc635
Merge refactor/effects-dispatch (refactor step 7)
sneak
2026-07-22 22:18:11 +07:00
ad098f9d99
Rotate TODO to step 8; note complexity linters clean (step 7 done)
sneak
2026-07-22 22:18:11 +07:00
5b7e258195
Decompose test functions to clear complexity findings (step 7)
sneak
2026-07-22 22:11:10 +07:00
5c14a829aa
Decompose tcell ReadChar key translation (refactor step 7)
sneak
2026-07-22 22:08:59 +07:00
b68836dde0
Decompose wizard.go createObj and whatis (refactor step 7)
sneak
2026-07-22 22:07:31 +07:00
730d91d160
Decompose ObjectKind.String and doMotion (refactor step 7)
sneak
2026-07-22 22:06:48 +07:00
71713d68b7
Decompose io.go End and status (refactor step 7)
sneak
2026-07-22 22:05:06 +07:00
444bc30f2c
Decompose ringOn and totalWinner (refactor step 7)
sneak
2026-07-22 22:03:31 +07:00
ff7ee95395
Finish score/wakeMonster tidy (scoreSlot; drop unused return)
sneak
2026-07-22 22:02:02 +07:00
8895db530d
Decompose score and wakeMonster (refactor step 7)
sneak
2026-07-22 22:01:03 +07:00
3e1c30c787
Flatten digWallGap
sneak
2026-07-22 21:59:44 +07:00
432ea4f019
Decompose rooms.go (refactor step 7)
sneak
2026-07-22 21:59:24 +07:00
bac9e361bc
Decompose daemons.go; daemon dispatch becomes a table (step 7)
sneak
2026-07-22 21:57:22 +07:00
9083967ed3
Split applyHeader turn-state half; drop inline stat err
sneak
2026-07-22 21:55:04 +07:00
80484bcd31
Finish save.go split: header/player halves, drop inline err
sneak
2026-07-22 21:54:41 +07:00
43b4fbe746
Decompose save.go (refactor step 7)
sneak
2026-07-22 21:53:02 +07:00
389db14bbf
Finish addLine split (addLinePageBreak)
sneak
2026-07-22 21:51:06 +07:00
e1f065e783
Decompose things.go (refactor step 7)
sneak
2026-07-22 21:50:44 +07:00
0b798c9c82
Tidy pack.go split: drop unused lp param and named returns
sneak
2026-07-07 03:31:53 +02:00
0274460e62
Decompose pack.go (refactor step 7)
sneak
2026-07-07 03:31:23 +02:00
c6dae3cf3d
Finish getStr split (getStrResult)
sneak
2026-07-07 03:28:30 +02:00
5849dddcf0
Decompose options.go (refactor step 7)
sneak
2026-07-07 03:27:56 +02:00
cc2efb86e8
Decompose passages.go (refactor step 7)
sneak
2026-07-07 03:25:46 +02:00
ea68df32f0
Decompose move.go; traps become a handler table (refactor step 7)
sneak
2026-07-07 03:22:54 +02:00
fec79b939a
Decompose chase.go (refactor step 7)
sneak
2026-07-07 03:19:31 +02:00
aa57349c34
Decompose command.go; command keys become a handler table (step 7)
sneak
2026-07-07 03:15:27 +02:00
4a248eb392
Decompose look and promptDirection (refactor step 7)
sneak
2026-07-07 03:03:50 +02:00
a20f500655
Decompose fight.go: hit-handler table, weapon/armor helpers (step 7)
sneak
2026-07-07 02:58:44 +02:00
ebe477ba28
Decompose remaining effects-file hot spots (refactor step 7)
sneak
2026-07-07 02:53:09 +02:00
1a25beead8
Decompose fireBolt (refactor step 7)
sneak
2026-07-07 02:49:37 +02:00
8e2915f60d
Convert doZap to a per-wand handler table (refactor step 7)
sneak
2026-07-07 02:48:01 +02:00
3047f729aa
Convert readScroll to a per-scroll handler table (refactor step 7)
sneak
2026-07-07 02:46:09 +02:00
cc025eb808
Convert quaff to a per-potion handler table (refactor step 7)
sneak
2026-07-07 02:44:33 +02:00
acef593288
Merge refactor/god-object-extraction (refactor step 6)
sneak
2026-07-07 02:42:18 +02:00
0b56ac8019
Extract MessageLine, Player pack ops, and Level list management
sneak
2026-07-07 02:42:18 +02:00
a094f7c6c3
Merge refactor/fix-nonamedreturns
sneak
2026-07-07 02:35:18 +02:00
0caaa14198
Drop unused named return on moveMonster (nonamedreturns)
sneak
2026-07-07 02:35:18 +02:00
d3ef07cfa7
Merge refactor/item-combat-ui-renames (refactor step 5)
sneak
2026-07-07 02:34:32 +02:00
f432c8718c
Rename getDir to promptDirection; rotate TODO (step 5 done)
sneak
2026-07-07 02:34:32 +02:00
ae79fd5e84
Rename combat methods; -1 status codes become named bool results
sneak
2026-07-07 02:33:15 +02:00
6d798c56ed
Rename item-subsystem methods (refactor step 5, items)
sneak
2026-07-07 02:31:38 +02:00
0554f5d4f1
Merge refactor/movement-renames (refactor step 4)
sneak
2026-07-07 02:29:06 +02:00
6850c87ae7
Rename movement/world methods to idiomatic Go; remove all gotos
sneak
2026-07-07 02:29:06 +02:00
65a1cd68b8
Merge refactor/drop-unused-nolints
sneak
2026-07-07 02:17:25 +02:00
525465a68b
Drop two unused gosec nolint directives in chooseSeed
sneak
2026-07-07 02:17:25 +02:00