Part of #586 (P0 Trust), a slice of #2219. The check runner's disk is at 10% free, and vitals() (src/kernel/vitals.ts:263) reads the real disk under dataDir with statfsSync. Every test that expects a fresh forge to have no needs therefore goes red on the runner, whatever the pull changed. That parked #2150, #2237 and #810 twice each. The failing tests (check run 01m522wjk43793n9a8rz731s64): test/vitals.test.ts "two forges in one process keep their own error and refusal signals" (line 279, Disk is nearly full: 10% free.), "a lane older than its budget is degraded…" (line 439, ["disk"]), and test/tui-screens.test.ts "the forge's health in the terminal > a site admin sees a degraded cause's sentence" ("All fine").
Done looks like.
[ ] The disk reading reaches vitals() as input: a disk probe on the app's config, defaulting to statfsSync(dataDir) in production. Tests that are not about the disk give it a roomy reading, or diskFreeMin: 0.
[ ] The three tests above pass on a machine whose disk is 95% full. A test proves it by giving the probe a reading of 5% free and checking that only the disk test sees the need.
[ ] The disk need itself is still tested: a low reading raises "Disk is nearly full".
[ ] Production behaviour is unchanged.
Files. src/kernel/vitals.ts, the app config that carries the probe (src/app.ts or its config module), test/vitals.test.ts, test/tui-screens.test.ts.
Risk. None for production. Also tell the operator, in the pull, that the runner's disk really is at 10% free.
Before pushing.bun x tsc --noEmit, bun test test/vitals.test.ts test/tui-screens.test.ts.
Part of #586 (P0 Trust), a slice of #2219. The check runner's disk is at 10% free, and
vitals()(src/kernel/vitals.ts:263) reads the real disk underdataDirwithstatfsSync. Every test that expects a fresh forge to have no needs therefore goes red on the runner, whatever the pull changed. That parked #2150, #2237 and #810 twice each. The failing tests (check run 01m522wjk43793n9a8rz731s64):test/vitals.test.ts"two forges in one process keep their own error and refusal signals" (line 279,Disk is nearly full: 10% free.), "a lane older than its budget is degraded…" (line 439,["disk"]), andtest/tui-screens.test.ts"the forge's health in the terminal > a site admin sees a degraded cause's sentence" ("All fine").Done looks like.
vitals()as input: adiskprobe on the app's config, defaulting tostatfsSync(dataDir)in production. Tests that are not about the disk give it a roomy reading, ordiskFreeMin: 0.Files. src/kernel/vitals.ts, the app config that carries the probe (src/app.ts or its config module), test/vitals.test.ts, test/tui-screens.test.ts.
Risk. None for production. Also tell the operator, in the pull, that the runner's disk really is at 10% free.
Before pushing.
bun x tsc --noEmit,bun test test/vitals.test.ts test/tui-screens.test.ts.