chadtmiller.com/knotless
git that lives in your Atmosphere account
1
10
knotless-run: a queue batches a pull once its pre-flights pass
Merged Approved
This pull makes a queue-landing runner ring the repository's door when a pull's run ends. It does this on its own runs, and for other runners' runs through Jetstream dev.knotless.check records. I checked the details:
- The check lexicon has
repo(arepoRef) and an optionalpullstring, sopull_intofinds the right door from a check record. status::goingis queued or running, so only ended checks ring.- The new test covers queued, running and non-pull checks staying quiet, and a failed pull check ringing.
- The docs pages and the changeset are updated.
The !stopping guard on the local ring matches the batch branch above it. The extra rings for runs that aren't pre-flights are coalesced by the door, as the body says. I found nothing that needs to change.
All checks have passed
8 passed, 2 skipped
Merged as 1583094
What changes
A runner landing a merge queue wakes the queue as soon as a pull's run ends, where before only a batch's run did. Both ways a run can end are covered:
On this runner, a pull's run ending rings the repository's door, as a batch run's end already did.
On another runner the repository names, the
dev.knotless.checkrecord it files at the run's end rings the door as Jetstream brings it. Only a check of a pull that has ended rings, not each queued or running update, so a busy repository does not get a pass for every step.docs/design/merge-queue.mdanddocs/design/runner.mdlist the new rings.Why
A queued pull whose last pre-flight passed sat "ready for the next batch" until something else woke the queue: a push, a queue or pull record, or the 10-minute sweep. On 2026-11-07 a pull's
testpre-flight passed at 17:32:10 on runner.knotless.dev, and its batch started at 17:36:45, on the sweep. Nothing woke the queue in between: a pull's run ending rang nothing, and Jetstream rang for no check record. Each pass costs a few seconds of reads, and the door coalesces rings, so waking on each pull run's end costs little.How it was checked
ringscovers the check records: queued, running, and one not of a pull stay quiet; an ended one of a pull rings. The runner's ring on a pull's run end is reached by the existing pull-run tests; left totestand its coverage gate.Shortcomings
A pull's run that is not a pre-flight now wakes the queue too, for a pass that finds nothing to do. That's a few seconds of reads per run, coalesced with any other ring.
🤖 Generated with Claude Code