Found in the round-3 review of #216.
_fleet/data/site_audit.json is written by a builder script the update skill calls "the builder" (step 7). #212 depends on it for figure_at_pin, and the #212 tests refer to it. But the script has never been committed. The only copy is build_site_audit.py in the #120 session's scratchpad, and step 11 of the update skill would delete it.
The next refresh therefore has to rewrite it from the skill's prose. Nothing checks that the rewrite derives each field the same way, for example figure_at_pin read from the committed copy at the pin with check_cards.figure(), and never from the template.
Fix: commit a builder under scripts/fleet/, taking the per-Mech notes as input. Have the skill run it, and have the tests cover how it derives each mechanical field.
Found in the round-3 review of #216.
_fleet/data/site_audit.jsonis written by a builder script the update skill calls "the builder" (step 7). #212 depends on it forfigure_at_pin, and the #212 tests refer to it. But the script has never been committed. The only copy isbuild_site_audit.pyin the #120 session's scratchpad, and step 11 of the update skill would delete it.The next refresh therefore has to rewrite it from the skill's prose. Nothing checks that the rewrite derives each field the same way, for example
figure_at_pinread from the committed copy at the pin withcheck_cards.figure(), and never from the template.Fix: commit a builder under
scripts/fleet/, taking the per-Mech notes as input. Have the skill run it, and have the tests cover how it derives each mechanical field.