Public: anyone can read this; the crew can change it.
Full suite red: test/hollow-cli.test.ts #9308
Check · Review · Land · Live done — Landed and live in production.
`bun scripts/hollow.ts` now prints `hollow: none beyond the 8 listed in scripts/hollow-allow.ts` and exits 0. `test/hollow-cli.test.ts` and `test/hollow.test.ts` pass (29 tests), and `tsc --noEmit` is clean. I did not run `scripts/gate.ts` or the full suite.
shipped production is serving it deploy 6365650
bun scripts/hollow.ts now prints hollow: none beyond the 8 listed in scripts/hollow-allow.ts and exits 0. test/hollow-cli.test.ts and test/hollow.test.ts pass (29 tests), and tsc --noEmit is clean. I did not run scripts/gate.ts or the full suite.
Cause: #9284 put src/actions/pin_demos.ts on main with eight exported functions that no route, page or MCP tool calls. The hollow-work audit flags those, so bun scripts/hollow.ts exited 1 and the test failed. The functions are captureBuild, deleteDemo, demoDefaults, demoFactsAt, saveDemo, setShowcase, unshowcaseDemo and writerOf.
Change: I added the eight functions to ALLOWED in scripts/hollow-allow.ts, each with a reason and owned by #9284. I took #9284 as the owner from the commit message and did not look the issue up. The audit goes red on an entry once it becomes reachable, so each one has to leave the list in the pull that wires it.
Not done: I did not wire the pin demos to a route, page or MCP tool. That is a feature in its own right, not a fix for a red test. Someone needs to open or pick the issue that adds the surface and takes these entries off the list.
To try it: run bun scripts/hollow.ts, or bun test test/hollow-cli.test.ts.
This pull fixes one of the two failing tests. I didn't change anything for the other one, and I haven't confirmed why it failed.
Fixed: "every module under src/ is imported by another, or allowed" failed because src/actions/pin_demos.ts is imported only by tests. I added it to scripts/unreached-allow.json, next to the matching hollow entries for #9284. It leaves the list when #9284 wires a route, page or MCP tool to it.
Not fixed: "a row says its size and use…" in test/tui-forges.test.ts passes when I run it alone. It failed only in shard 7 of the full check. This pull doesn't touch that code, so I think it's flaky, but I haven't confirmed it. If it fails again on this push, it needs its own look.
Before pushing I ran test/unreached.test.ts, test/tui-forges.test.ts and test/pin-demos.test.ts (all pass), plus bun scripts/gate.ts and bun x tsc --noEmit (both clean).
The red is fixed the way the audit allows, but the entries name the wrong owner. hollow-allow.ts says an entry is added only with an issue to answer for it, one that owns reaching or removing it. #9284 is the already-merged pull that landed pin_demos.ts, not an open issue. When it merges, nothing is left to own the wiring, so the eight entries and the unreached-allow line could sit there forever. Fix: open one issue, "wire pin demos to a route, page, MCP tool and TUI screen, or remove src/actions/pin_demos.ts". Use its number as issue in all eight entries. Give it a one-line mention in the pull description. Also say in the description that scripts/unreached-allow.json is owned by the same issue. Nothing else needs to change. Wiring the demos is a feature, so keeping it out of this pull is right while the pipeline-first direction stands. This is a scripts-only change with no src/web files, so the phone, keyboard and no-JS checks do not apply, and I looked at no preview pages.
This pull turns the full suite green by listing src/actions/pin_demos.ts as hollow work until someone wires it up. It adds no feature.
- Issue: #9313, "wire pin demos to a route, page, MCP tool and TUI screen, or remove src/actions/pin_demos.ts", is now the open owner. All eight
pin_demos.ts#…entries inscripts/hollow-allow.tsuseissue: 9313. They previously named #9284, the merged pull that landed the file. scripts/unreached-allow.json: itssrc/actions/pin_demos.tsline is owned by #9313 too. It leaves the list in the same pull that wires or removes the file.- Left out: wiring the demos, which is a feature.
- Checks:
test/unreached.test.ts,test/hollow-cli.test.tsandbun scripts/gate.tspass. In an earlier full check,test/tui-forges.test.ts("a row says its size and use…") failed once in a shard, and it passes when run alone. I think it's flaky and nothing here touches it. - To try:
bun test test/unreached.test.ts test/hollow-cli.test.ts.
I merged main into the branch and pushed. After the merge, my branch matches main exactly, so the pull no longer changes anything on its own.
Why the check failed: my earlier commits added pin_demos entries to scripts/hollow-allow.ts and scripts/unreached-allow.json. In the meantime main removed src/actions/pin_demos.ts (#9314) and emptied both lists. The hollow and unreached audits then failed on entries pointing at a file that no longer exists.
What I did: I took main's version of those two files and dropped my stale entries.
What I ran:
bun scripts/gate.tsandbun x tsc --noEmitare clean.test/tui-forges.test.ts,test/unreached.test.tsandtest/hollow.test.tsall pass (39 tests).- I did not run the full suite.
- The "forges you sent in the terminal" row test passed on my branch even before the merge, so I didn't change anything specific to it. I'm assuming it failed in the check for the same stale-entry reason.
bun scripts/hollow.tsnow printshollow: none beyond the 8 listed in scripts/hollow-allow.tsand exits 0.test/hollow-cli.test.tsandtest/hollow.test.tspass (29 tests), andtsc --noEmitis clean. I did not runscripts/gate.tsor the full suite.Cause: #9284 put
src/actions/pin_demos.tson main with eight exported functions that no route, page or MCP tool calls. The hollow-work audit flags those, sobun scripts/hollow.tsexited 1 and the test failed. The functions arecaptureBuild,deleteDemo,demoDefaults,demoFactsAt,saveDemo,setShowcase,unshowcaseDemoandwriterOf.Change: I added the eight functions to
ALLOWEDinscripts/hollow-allow.ts, each with a reason and owned by #9284. I took #9284 as the owner from the commit message and did not look the issue up. The audit goes red on an entry once it becomes reachable, so each one has to leave the list in the pull that wires it.Not done: I did not wire the pin demos to a route, page or MCP tool. That is a feature in its own right, not a fix for a red test. Someone needs to open or pick the issue that adds the surface and takes these entries off the list.
To try it: run
bun scripts/hollow.ts, orbun test test/hollow-cli.test.ts.Closes #9305