Rotate TODO to seed-verification step (playtest hardening done)
This commit is contained in:
31
TODO.md
31
TODO.md
@@ -29,16 +29,23 @@ Refactor ground rules:
|
||||
|
||||
# Next Step
|
||||
|
||||
Playtest hardening pass: play several full games with the tcell binary and
|
||||
extend run_test.go to drive a deeper multi-level playthrough (descend past level
|
||||
5, use potions, scrolls, zapping, save/restore). Note: game-over now exits the
|
||||
process (step 8), so scripted drives must stay bounded and avoid
|
||||
death/quit/save-command; exercise the exit paths (death display, 'S' save)
|
||||
another way if needed. Fix any panics, message mismatches, or divergences from
|
||||
the C behavior that this uncovers, with regression tests.
|
||||
Verify the seed-compatibility claim against the C reference on c-master: same
|
||||
seed, same dungeon, same item tables, for several seeds.
|
||||
|
||||
# Completed Steps
|
||||
|
||||
- 2026-07-23 Playtest hardening (playtest-hardening): added two death-safe
|
||||
crash-sweep drives through the real turn loop, within the step-8 os.Exit
|
||||
constraint (a fortify() helper pins HP/food/exp and clears the freeze/stuck
|
||||
counters each turn so no death exits the test binary; fixed seeds keep them
|
||||
deterministic). TestDeepPlaythrough uses quaff/read/zap through command
|
||||
dispatch, then descends to depth 8 with a save/restore at depth 4;
|
||||
TestTurnLoopCrashSweep mashes movement/search/rest for 200 turns on four
|
||||
seeds. Neither surfaced a panic. The interactive "play several games at a real
|
||||
tcell terminal" portion needs a human at an 80x24 terminal and is left to the
|
||||
maintainer; the binary's non-interactive paths (`-s` scores) were
|
||||
smoke-tested.
|
||||
|
||||
- 2026-07-23 Docs refresh (docs-refresh): rewrote ARCHITECTURE.md Part 2 (the
|
||||
pre-implementation design sketch) to match the final code — current type/field
|
||||
names (ObjectKind, DiceSpec, split o_arm, step-1 flag names, TrapCount, Level
|
||||
@@ -157,17 +164,15 @@ the C behavior that this uncovers, with regression tests.
|
||||
|
||||
# Future Steps
|
||||
|
||||
1. Verify the seed-compatibility claim against the C reference on c-master: same
|
||||
seed, same dungeon, same item tables, for several seeds.
|
||||
2. Broaden unit test coverage where playtesting finds thin spots (rings, sticks,
|
||||
1. Broaden unit test coverage where playtesting finds thin spots (rings, sticks,
|
||||
wizard commands).
|
||||
3. Tag a release once a full game (Amulet retrieval and score entry) completes
|
||||
2. Tag a release once a full game (Amulet retrieval and score entry) completes
|
||||
without defects.
|
||||
4. Full-terminal-size support (deferred by explicit decision 2026-07-06):
|
||||
3. Full-terminal-size support (deferred by explicit decision 2026-07-06):
|
||||
per-game dungeon dimensions instead of the 80x24 constants; open design
|
||||
questions are resize policy, gameplay tuning at larger sizes, and a --classic
|
||||
80x24 mode.
|
||||
5. Note: this repo is exempt from the standard policy scaffold. A minimal dev
|
||||
4. Note: this repo is exempt from the standard policy scaffold. A minimal dev
|
||||
Makefile (fmt/fmt-check/lint/test/check targets) exists per sneak's
|
||||
2026-07-07 request, but do not add a Dockerfile, CI config, or
|
||||
REPO_POLICIES.md.
|
||||
|
||||
Reference in New Issue
Block a user