chadtmiller.com/knotless
git that lives in your Atmosphere account
A pull's test run goes against both nets at once, as a batch's does
MergedThis pull drops COV_NETS=${KNOTLESS_RUN_PULL:+stock} from the test workflow. A pull's run now tests against both the stock PDS and the spaces alpha, as the merge queue's batch does. The workflow comments, AGENTS.md, docs/design/merge-queue.md and the cov.mjs notes are updated to match.
I checked that KNOTLESS_RUN_PULL is still used elsewhere (harness/changes.sh, shots/compare.mjs), so nothing else depends on that line. The COV_NETS=stock option stays in cov.mjs, and its comment still describes it correctly. A search found no other docs that still say a pull's run uses the stock PDS alone.
I haven't verified the timing figures. The pull's own test run is the check it names.
8 passed, 2 skipped
What changes
A pull's
testrun, its pre-flight, tests against the stock PDS and the spaces alpha at once, as the merge queue's batch does, rather than against the stock PDS first and the alpha only when the gate falls short. AGENTS.md, docs/design/merge-queue.md and cov.mjs's notes say so (the merge-queue page still said a pull's run only reported a shortfall).Why
Stock first saved nothing: it fell short in every one of the last 13 pulls' runs, which then ran the alpha's runs after the stock ones (
short against stock alone: making the 33 runs left). Side by side, the runs pack into the 4 cores the run's container has, with no second gate between them.Measured on the runner, a full run, cold for the workspace's crates, no stored runs: both nets at once took 294s after the build; stock first, then the alpha, took 343s. The last 13 pulls' runs took 380–560s, against main's 407s for the same work. Host load moves these by tens of seconds, so it is about a minute a pull, not an exact number.
The spike behind it, Spike: the test check measures where its time goes, measured more, and ruled out the rest:
cpu.max 400000 100000on an 8-core host), stays at 4.0 and is throttled, so more jobs at once would not help.synchronous = OFF) changed nothing (278s, 277s, 275s, A/B/A).How it was checked
This pull's own
testrun is the check: a pull's run now as a batch's.Shortcomings
A pull whose change only the stored stock runs needed, and that would have passed without starting the alpha, now starts it: none of the last 13 was such a pull.
Changeset: none
🤖 Generated with Claude Code