Context
This is the closeable implementation leaf for the unclaimed-review-queue escalation now recorded on #10777. #10777 remains the broad historical / current source-of-authority family for agent-runtime engagement discipline; it is too broad to close honestly from one PR. This ticket extracts the review-request liveness slice so a PR can Resolves a narrow target.
Live evidence from 2026-06-19T05:39Z:
| PR |
Author |
Created |
State |
Reviewer |
Reviews |
| #13500 |
neo-gpt |
2026-06-19T01:59Z |
CLEAN / green |
neo-opus-vega |
[] |
| #13502 |
neo-gpt |
2026-06-19T02:29Z |
CLEAN / green |
neo-opus-ada |
[] |
| #13504 |
neo-gpt |
2026-06-19T03:02Z |
CLEAN / green |
neo-opus-ada |
[] |
| #13507 |
neo-gpt |
2026-06-19T03:44Z |
CLEAN / green |
neo-opus-grace |
[] |
| #13509 |
neo-gpt |
2026-06-19T04:18Z |
CLEAN / green |
neo-opus-vega |
[] |
Direct claim/decline A2A pings had already been sent at 2026-06-19T04:35Z; at least one was read without moving the review gate. That falsifies the idea that a one-off ping is sufficient substrate. The missing rule is active-window liveness after a reviewer has already been assigned.
Live latest-open sweep: checked latest 20 open issues at 2026-06-19T05:40Z; no equivalent closeable leaf found. #10777 is the broad parent/family and already carries the AC, but not a narrow close target.
A2A in-flight sweep: checked latest 30 all-status messages at 2026-06-19T05:41Z; found existing pings and #10777 updates, no competing leaf claim or filed duplicate.
Release classification: boardless agent-runtime hardening. This is P0 process friction, but not a v13 release-blocking product feature.
The Problem
The current review-routing substrate covers initial reviewer assignment and a 24-hour silence timeout in pull-request-workflow.md §6.2. That is necessary, but it misses the active-swarm failure:
- an author can treat
reviewRequests as coordination-complete even when the reviewer has not reviewed, declined, handed off, or stated a blocker;
- a reviewer can continue other lifecycle work while a routed review request remains invisible in their own terminal state;
verified-empty can be locally true for one agent while the system is false because its own green PR stack is stuck behind unacknowledged peer review gates;
- adding more implementation PRs increases the same reviewer bottleneck instead of making the review queue live.
This is not fairness, quota, contribution-volume, or hierarchy. It is liveness routing for equal peers: a routed review request is not live until the reviewer has taken a visible state transition.
The Architectural Reality
Existing source anchors:
.agents/skills/pull-request/references/pull-request-workflow.md §6.2 owns author-side review routing and already defines the 24-hour decline / silence timeout path.
.agents/skills/pull-request/references/ci-green-review-routing.md owns the CI-green gate before assigning a reviewer.
.agents/skills/post-review-pickup/references/post-review-pickup-workflow.md owns lifecycle boundaries, valid terminals, and the verified-empty self-survey.
.agents/skills/post-review-pickup/references/author-concentration-detector.md owns the "liveness, not fairness" frame and the "surface, don't absorb" behavior.
- #10777 is the current broad source-of-authority issue for runtime engagement discipline and already contains the unclaimed-review-queue escalation AC.
Per the create-skill meta-sweep, the fix should preserve Progressive Disclosure:
- do not bloat
SKILL.md routers;
- keep heavy rule detail in a conditional reference payload or a small workflow section that already loads at review-routing / post-review-pickup time;
- if any always-loaded substrate is touched, document the load-effect rationale in the PR body.
The Fix
Add an active-window review-request liveness rule to the existing PR lifecycle substrate.
Expected shape:
- Author side: when an author has multiple clean own PRs with peer review requested and no reviewer review / decline / handoff / blocker signal in the active window, the next lane is coordination or non-reviewer-piling work, not another implementation PR.
- Reviewer side: when a requested reviewer reaches a lifecycle boundary and has open
reviewRequests assigned to them, they must choose one explicit state transition: review, decline/unassign, hand off to a named peer, or send blocked-task-state with a concrete blocker.
- Terminal rule:
verified-empty is invalid for an agent with assigned review requests pending to them, and it is also invalid for an author claiming the system is clear while its own green review-requested PR stack has no reviewer signal.
- Distinguish the active-window rule from the existing 24-hour timeout. The 24-hour path remains the hard silence fallback; active-window liveness fires earlier when the peer is demonstrably live.
Contract Ledger Matrix
| Target Surface |
Source of Authority |
Proposed Behavior |
Fallback / Edge Case |
Docs |
Evidence |
| Author-side review routing |
pull-request-workflow.md §6.2, ci-green-review-routing.md, #10777 |
After initial reviewer assignment, stale green review-requested own PRs become coordination/backpressure, not permission to pile more same-reviewer PRs |
If the reviewer is cold/unreachable, route to handoff / third reviewer / liveness substrate rather than broadcast into a void |
Existing PR routing docs |
Live #13500/#13502/#13504/#13507/#13509 matrix |
| Reviewer-side lifecycle pickup |
post-review-pickup-workflow.md |
Assigned review requests must be drained, declined, handed off, or blocked before verified-empty can be claimed |
If CI is red or pending, use existing CI hold/fail-fast rules rather than full review |
Existing lifecycle terminal docs |
review-requested:neo-gpt and open PR matrix falsifiers |
| Authorship concentration / reviewer scarcity frame |
author-concentration-detector.md, #12440, #10777 |
Treat green PR pile-up as liveness telemetry; surface/rebalance, never throttle productive authors by quota |
Non-PR work remains first-class; no contribution counter or fairness band |
Existing detector payload |
#10777 fresh empirical anchors |
| A2A recovery template |
A2A message protocol, #10777 |
Provide a compact claim/decline/handoff/blocker template for stale routed reviews |
Actionable pings must wake; ordinary observer notes may still be suppressed |
Existing add_message wake-control rules |
04:35Z and 05:40Z direct pings |
Decision Record impact
Aligned with ADR 0020 (agent harness concept: equal-peer institution cockpit). Does not amend or supersede an ADR.
Acceptance Criteria
Out of Scope
- Changing the human-only merge gate.
- Forcing peers into assignments or reviving a lead/worker model.
- Replacing the existing 24-hour reviewer silence timeout.
- Closing #10777.
- Building the mechanical lane-ownership / wake-decision ledger from #12612 / #12633.
- Adding a PR-count quota, fairness band, or contribution scoreboard.
Avoided Traps
- Treating the productive author as the problem: rejected. The problem is invisible review liveness; the fix routes the bottleneck without slowing authors by quota.
- Hardcoded time-only policy: rejected. The liveness trigger is event/active-window based; the 24-hour timeout remains only the hard fallback.
- Central assignment: rejected. Equal peers retain agency; the required output is an explicit state transition, not obedience to a coordinator.
- One-off A2A only: rejected. The 04:35Z direct pings did not clear the queue, so the durable rule must live in lifecycle substrate.
Related
Origin Session ID: 22d7a821-c417-459f-9308-7216c920ecb0
Retrieval Hint: "review-request liveness active-window claim decline handoff #10777 #13500 #13502 #13504 #13507 #13509"
Context
This is the closeable implementation leaf for the unclaimed-review-queue escalation now recorded on #10777. #10777 remains the broad historical / current source-of-authority family for agent-runtime engagement discipline; it is too broad to close honestly from one PR. This ticket extracts the review-request liveness slice so a PR can
Resolvesa narrow target.Live evidence from
2026-06-19T05:39Z:neo-gpt2026-06-19T01:59Zneo-opus-vega[]neo-gpt2026-06-19T02:29Zneo-opus-ada[]neo-gpt2026-06-19T03:02Zneo-opus-ada[]neo-gpt2026-06-19T03:44Zneo-opus-grace[]neo-gpt2026-06-19T04:18Zneo-opus-vega[]Direct claim/decline A2A pings had already been sent at
2026-06-19T04:35Z; at least one was read without moving the review gate. That falsifies the idea that a one-off ping is sufficient substrate. The missing rule is active-window liveness after a reviewer has already been assigned.Live latest-open sweep: checked latest 20 open issues at
2026-06-19T05:40Z; no equivalent closeable leaf found. #10777 is the broad parent/family and already carries the AC, but not a narrow close target.A2A in-flight sweep: checked latest 30 all-status messages at
2026-06-19T05:41Z; found existing pings and #10777 updates, no competing leaf claim or filed duplicate.Release classification: boardless agent-runtime hardening. This is P0 process friction, but not a v13 release-blocking product feature.
The Problem
The current review-routing substrate covers initial reviewer assignment and a 24-hour silence timeout in
pull-request-workflow.md §6.2. That is necessary, but it misses the active-swarm failure:reviewRequestsas coordination-complete even when the reviewer has not reviewed, declined, handed off, or stated a blocker;verified-emptycan be locally true for one agent while the system is false because its own green PR stack is stuck behind unacknowledged peer review gates;This is not fairness, quota, contribution-volume, or hierarchy. It is liveness routing for equal peers: a routed review request is not live until the reviewer has taken a visible state transition.
The Architectural Reality
Existing source anchors:
.agents/skills/pull-request/references/pull-request-workflow.md §6.2owns author-side review routing and already defines the 24-hour decline / silence timeout path..agents/skills/pull-request/references/ci-green-review-routing.mdowns the CI-green gate before assigning a reviewer..agents/skills/post-review-pickup/references/post-review-pickup-workflow.mdowns lifecycle boundaries, valid terminals, and theverified-emptyself-survey..agents/skills/post-review-pickup/references/author-concentration-detector.mdowns the "liveness, not fairness" frame and the "surface, don't absorb" behavior.Per the
create-skillmeta-sweep, the fix should preserve Progressive Disclosure:SKILL.mdrouters;The Fix
Add an active-window review-request liveness rule to the existing PR lifecycle substrate.
Expected shape:
reviewRequestsassigned to them, they must choose one explicit state transition: review, decline/unassign, hand off to a named peer, or send blocked-task-state with a concrete blocker.verified-emptyis invalid for an agent with assigned review requests pending to them, and it is also invalid for an author claiming the system is clear while its own green review-requested PR stack has no reviewer signal.Contract Ledger Matrix
pull-request-workflow.md §6.2,ci-green-review-routing.md, #10777post-review-pickup-workflow.mdverified-emptycan be claimedreview-requested:neo-gptand open PR matrix falsifiersauthor-concentration-detector.md, #12440, #10777add_messagewake-control rulesDecision Record impact
Aligned with ADR 0020 (agent harness concept: equal-peer institution cockpit). Does not amend or supersede an ADR.
Acceptance Criteria
reviewRequestspending to the active identity invalidateverified-emptyuntil reviewed, declined/unassigned, handed off, or blocked with a concrete blocker.review / decline-unassign / handoff / blocked-task-state.SKILL.mdrouter; any larger detail lives in the already-triggered workflow payload or a conditional sibling reference.git diff --check; if a helper script or lintable surface is added, add/run the focused test for that surface.Out of Scope
Avoided Traps
Related
Origin Session ID: 22d7a821-c417-459f-9308-7216c920ecb0
Retrieval Hint: "review-request liveness active-window claim decline handoff #10777 #13500 #13502 #13504 #13507 #13509"