chadtmiller.com/knotless
git that lives in your Atmosphere account
just queue-stats counts the ejections its runners write
MergedThis makes just queue-stats read queue records from the repository's runners as well as the owner. It keeps only records whose repo.uri is this repository, and it adds "failed pre-flight" and "review" ejection kinds. It also updates the merge-queue design page and the script's header comment. The diagnosis fits the design: the owner queues a pull and a runner ejects it, so reading only the owner's records gave 0% ejected. The kind matches line up with the runner's wording: its pre-flight failed at its head… in queue.rs for the pre-flight kind, and the not reviewed and changes asked reasons that AGENTS.md describes for the review kind. I found nothing that must change.
Two small points, neither blocking:
- If the repository record can't be fetched, or has no
runnersarray, the script stops or quietly reads only the owner's records. The first is acceptable for a harness script. The second is the old 0% behavior, so the shortcoming note in the body could say so. - I didn't run the script. I checked it against the diff,
repo.jsonandqueue.rs. The runner entries should carry adid, since the#runnerref inrepo.jsonis how the repository record names runners. I couldn't confirm the field name from the schema text I read, and your PDS comparison in the body covers it.
This makes just queue-stats read queue records from the repository's runners as well as the owner. It keeps only records whose repo.uri is this repository. It adds "failed pre-flight" and "review" ejection kinds, and it updates the design page and the script's header comment to match. Last round I said I couldn't confirm the runner field name. I've now checked lexicons/dev/knotless/repo.json: #runner requires did, so runners.map((r) => r.did) is right. I found nothing that must change.
I didn't run the script.
The record-fetch failure and missing runners array are still the two cases I noted last round, and neither blocks. A missing array quietly falls back to reading only the owner's records, which is the old 0% behavior.
8 passed, 2 skipped
What changes
just queue-statscounts ejections. It reads the queue records of the owner and the repository's runners, and keeps to this repository. Failed pre-flights and reviews are kinds of their own, as they would otherwise be most ofother.Why
It showed 0% ejected every day. A pull is queued by its owner and ejected by a runner, and the script read only the owner's records. It also counted the owner's other repositories in queued.
How it was checked
Run against a separate count from the PDS records: the days agree, from 51% ejected on 11-02 to 18% on 11-06.
Shortcomings
A runner taken off the repository's list stops being read, so ejections it wrote count only if an earlier run kept them.
🤖 Generated with Claude Code