Brian Andrew Mulrooney

2026-09-26

Gap: Project rules kept only as written notes were skipped

Several rules protecting the project's evidence and machines existed only as written notes, and each had been broken at least once. Four now run as checks that refuse the wrong action, each written against a failing test first.

Gap: A test run with a script error could report success

A script error during a test had been counted as a pass. Every test run now ends on one summary line that counts errors and states a single verdict; any error makes the verdict a failure.

Gap: Work could be declared finished with engine processes still running

A new sweep separates the project's processes from the rest of the system and refuses to mark work finished while a project engine process is alive. A second check refuses to start an automated helper task unless its written specification exists. Both were confirmed live.

Gap: The command that opens the game world did not load the approved data

That command now loads the dataset named as approved in the project's ledger of ruled values; promoting a new one is a one-line edit by the developer. A water-network audit that had acted as a blocking check became a report: it read 2 095 820 findings, finished and changed nothing.

Gap: Clean-up deleted evidence the bug ledger cites

Three manual clean-ups had deleted capture archives that bug entries cite as evidence. One clean-up command is now the only way to delete scratch captures; it keeps every cited archive and refuses a request that names one. Its first run kept the 8 cited archives and freed 220. Seven dead evidence links were annotated with what removed them.

Gap: The documentation usage study read none of its own log

The project logs each topic worked on and the documentation page that answered it; a study reads that log to find topics that load too much context or have no page. It matched a retired row format, so it read zero rows; the step that clears the log matched the same format, so 347 rows had accumulated by the time it was found. The study now parses the rows as YAML (a plain-text data format), and clearing keeps the file's header. Its 109 reported missing pages were not missing: 86 had moved in an earlier reorganization and 23 were matched by hand. Pages that are logs or ledgers rather than documentation are now labelled as such instead of raised as problems. Flagged topics fell from 66 to 30.

Histogram of documentation lines read per topic: most of 343 topics sit near a median of 350 lines, 30 sit over the limit near 470, and 52 answered from log or ledger files are not charted
Documentation read per topic: 343 topics, median 350 lines; 261 within the limit, 30 over it, and 52 answered from log or ledger files, not charted

Two dead ends: the study's test assumed the wrong sample size, and the file that tracks the project's goals had stopped parsing as YAML over six unquoted colons. Both were fixed.

At the close, 762 automated tests passed in 23.1 seconds on 14 workers.

‹›