Repoint every stale TODO.md citation in the tree
Some checks failed
libakgl CI Build / cmake_build (push) Successful in 7m48s
libakgl CI Build / memory_check (push) Successful in 12m49s
libakgl CI Build / performance (push) Failing after 41m22s
libakgl CI Build / mutation_test (push) Successful in 27m0s

A sweep of all 265 tracked files, not just the ones the migration touched.

Two cross-repository citations named deps/libakerror/TODO.md item 8, a
numbering that has not existed for two releases; both now name libakerror
issue #18. Three tutorial and plan references pointed at TODO.md for defects
that are tracked: the invisible-on-frame-one actor is #39, the control map
traps are #81, and the pkg-config gap is #17.

plan.md is a live instruction document for writing the manual and still told
its reader to file findings in TODO.md; it says the tracker now.

Filed while sweeping: a zeroed akgl_ControlMap matches gamepad South, because
SDL_GAMEPAD_BUTTON_SOUTH is 0 and the two arms of the match are one
expression, and handler_on/handler_off are called without a NULL check. Both
are documented as workarounds in chapter 21 and neither had an issue. #81.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Andrew Kesterson <andrew@aklabs.net>
This commit is contained in:
2026-08-02 22:01:27 -04:00
parent ad71072cb3
commit 8477ea698b
5 changed files with 14 additions and 15 deletions

16
plan.md
View File

@@ -45,7 +45,7 @@ JRPG — with akbasic's harness ported so no sample in it can rot.
| Tutorial assets | Vendor a curated Kenney.nl **CC0** subset, with `LICENSE`, a provenance manifest, and a refresh script |
| Tutorial code | Real compiling, runnable targets under `examples/`, built by default and in CI |
| Existing `README.md` | Split: the FAQ half seeds `docs/` (corrected); the developer-process half stays |
| Known defects | Documented inline in the owning chapter, cross-referenced to `TODO.md` |
| Known defects | Documented inline in the owning chapter, cross-referenced to the issue that tracks it |
---
@@ -188,7 +188,7 @@ cannot anticipate:
`include/akgl/error.h`.
- **`akgl.pc` names no dependencies at all** — no `Requires:` — despite `akerror.h` being
part of libakgl's public interface. Chapter 03 says so and gives the flags to add by
hand. (`TODO.md`.)
hand. (Issue #17.)
---
@@ -352,7 +352,7 @@ a hazard. Exercises arcade physics, `physics.gravity.y`, `AKGL_ACTOR_STATE_MOVIN
tilemap layers, and a custom `movementlogicfunc` (which is where `AKGL_ERR_LOGICINTERRUPT`
stops being a table row and becomes something the reader writes).
This game forces the chapter to make three honest statements, all from `TODO.md`:
This game forces the chapter to make three honest statements, all from the defect record:
- **`akgl_physics_arcade_collide` is not implemented** — it raises `AKERR_API`, and
`akgl_physics_simulate` never calls `collide` at all. `arcade_move` does no clamping and
@@ -433,7 +433,7 @@ covers.
This plan does not fix it — replacing test fixtures is a separate change with its own blast
radius, and it is not blocking the docs. It does two things: the tutorial assets get a clean
provenance story that does not depend on those files, and the finding goes into `TODO.md`
provenance story that does not depend on those files, and the finding goes into the tracker
with file, functional consequence and blast radius, per the house practice of documenting
defects against yourself.
@@ -473,12 +473,12 @@ project exists to fix is documentation asserting things nobody checked:
`norun` block is a decision that has to be justified.
4. **Do not restate signatures** — link the Doxygen reference, or `excerpt=` the header.
5. **Note the known defect where a reader would hit it**, with the guard to apply, linked
to `TODO.md`.
to its issue.
Wave 2 is the integration pass, and the only genuinely serial step: build the TOC, insert
cross-references between chapters and both tutorials, verify no chapter re-teaches upstream
material, reconcile terminology, cut the README's FAQ half, add the `TODO.md` entries, then
run the full gate.
material, reconcile terminology, cut the README's FAQ half, file the issues the writing turned
up, then run the full gate.
## Verification
@@ -516,7 +516,7 @@ Specific things that must hold before this is done:
## Out of scope, deliberately
- Replacing the RPG-Maker-named test fixtures (recorded in `TODO.md` instead).
- Replacing the RPG-Maker-named test fixtures (issue #52 instead).
- Fixing the false claims in `physics.h` and `registry.h`. The chapters document what the
code *does*; correcting the header comments is a separate commit, since `AGENTS.md`
requires style and behaviour changes to stay unbundled.