chadtmiller.com/knotless
git that lives in your Atmosphere account
An ejection for a gate's review says how long it waited beside what it lacks
MergedThis pull moves the "It waited Nm for that review" note in a gate-wait ejection to sit before the advice. It does that by replacing approvals::HOW with the wait note followed by HOW. It also adds AGENTS.md guidance on gate waits and changes asked by @review.knotless.dev ejections. HOW is a public const in approvals.rs, and refusal builds its advice from it, so replacen will find it. The test now checks the whole sentence in order. I found nothing that must change. One nit: the AGENTS.md paragraph ends with a very long unwrapped line, where the surrounding text is wrapped at about 75 columns.
AGENTS.mdline 255
Ejected with `changes asked by @review.knotless.dev`, read the review | |
with `knotless show`, push the fix, and queue it again: the agent reads | |
the new head. Where the review is wrong, say why in a comment and ask | |
the owner, whose approval of the head stands in for it. When several agents land pulls at once, one of them |
Wrap this line like the rest of the paragraph: it runs past the column the surrounding text keeps to.
8 passed, 2 skipped
What changes
The ejection reads in order. A pull ejected because no gate reviewed its head in time now reads
…: a review of its head from @gate. It waited 30m for that review. Those who may write approve it with …. Before, the wait came after the--forcehint.AGENTS.md says what a gate's wait and a
changes asked by @review.knotless.devejection mean for an agent: read the review, push the fix and queue again, or answer it and ask the owner, whose approval of the head stands in for the gate's.Why
A follow-up to A branch waits for a review agent's verdict before its pulls land. The wait note was tacked on after the advice, and agents need to know what to do once main names the review agent as a gate.
How it was checked
a_merge_queue_waits_for_its_gatenow checks the whole sentence in order. The rest is left to CI.Changeset: none
🤖 Generated with Claude Code