jevsnes.git / research / fixtures / README.md

Chapter 23: fixtures, evidence in a jar

When something goes wrong in a running game, the moment passes. Link walks on, the bot re-plans, and an hour later all anyone has is a memory of "he just stood there". This folder keeps the moment. A fixture is what a running window said about itself at the time something went wrong, saved as it came out of the tool that produced it, so that the defect can be argued about with the real thing in front of you.

A fixture here is evidence, not a test input. Nothing in the build reads these files; a person does. When a fixture leads to a test, the test lives beside the code it tests and rebuilds the situation in that crate's own terms, citing the fixture in its doc comment. That way a fixture can be deleted without breaking anything, and a test never ends up testing a JSON parser.

Aside: the one that is here. On 2026-09-20 the window stood motionless in overworld area 43 for four minutes, with the player-control flag on the whole time. The decision record shows Jev choosing the right direction, over and over. The defect was underneath: the empty button press that followed each choice counted as "Link is not moving", so every plan was thrown away one decision after it was made. It is kept because it is a perfect example of a bug that looks like the model's fault and is not.

Try it. jq '.' research/fixtures/live-stall-area43.json | head -40 and see what a decision record from the old Rust brain looked like.

For the people who maintain it

In this folder

PathWhat it is
live-stall-area43.jsonThe live window on 2026-09-20, motionless in overworld area 43 at (1667, 3041) for four minutes with control: true. The decision record shows Jev choosing goal_up, the right answer, over and over. What was wrong: the empty press that follows a choice counted as "Link is not moving", so the plan was binned one decision after it was made. It produced the test the_live_stall in packages/brain, which was deleted with the Rust brain on 2026-09-21; the fixture is kept as the record of the defect.
README.mdThis chapter.
CLAUDE.mdHow to capture one, for agents.

← Previous: Chapter 22, research/ · Up: research · Next: Chapter 24, tools/ →