Half the engineering lives in tools/, instruments the project built to study itself.
The screenshot rig (tools/screenshot.mjs), every historical image on this page came through it. Its own header explains the problem it solves:
// Why CDP and not `chrome --screenshot --virtual-time-budget`: the game
// boots asynchronously (PixiJS init, async asset fetches, RAF loop) and
// virtual time expires before the first real frame, producing a black
// capture. Driving Chrome over the DevTools protocol lets us wait REAL
// seconds while the match actually plays, then grab the canvas mid-action.
It spawns a throwaway-profile Chrome, holds keys down (that's why the first-light player is mid-jump), dispatches wheel events for close-ups, and shot the historical builds from git worktrees serving four eras on four ports.
The analyst (analyze-match.mjs) turns a telemetry dump into a gameplay report, it's what caught the bots fighting like infantry (jet use 2–4%) and proved the Skyreach fix (47–56%).
The smoke driver (online-smoke.mjs) speaks the real binary protocol as two fake players to prove the whole online 3v3 loop, pairing, snapshots, kill feed, with no browser at all.
The disk rescuer (offload-replays.mjs) moves replay blobs to object storage, verified before deleting, manifests, events, and telemetry stay forever, because the site re-simulates replays from seeds anyway.
The autopilot (autopilot.mjs, evolve.mjs, autopilot-gate.mjs) runs the whole lab unattended: pick a teacher, train, gauntlet the result against the veterans, and only ship weights that win, rejected candidates leave a ledger entry instead of a regression.
And the graph itself: a hook blocks file edits unless a decision node was logged in the last fifteen minutes. The work cannot happen without the record of why.