From 1ffee4e905f138a9976b5c7790d0788fdbbd3aac Mon Sep 17 00:00:00 2001 From: Justin Gordon Date: Sat, 20 Jun 2026 01:01:16 -1000 Subject: [PATCH 01/32] Document coordinated batch QA lane --- .agents/workflows/pr-processing.md | 110 +++++++++++++++++++++++------ 1 file changed, 88 insertions(+), 22 deletions(-) diff --git a/.agents/workflows/pr-processing.md b/.agents/workflows/pr-processing.md index 0d74658a31..05e190af56 100644 --- a/.agents/workflows/pr-processing.md +++ b/.agents/workflows/pr-processing.md @@ -415,6 +415,50 @@ only a caveated no-PR `park` disposition or a product-decision blocker. Workers should not turn product-decision blockers into speculative PRs. They should post or draft the evidence-backed question and stop that target. +### Batch QA Lane + +Use a QA lane when a batch needs evidence beyond each individual worker's local validation before +coordinator closeout, release-readiness, or release-promotion decisions rely on the batch. QA is a +sibling lane to implementation and audit work: it verifies the user-visible or operator-visible result +of the batch, while audit verifies that the QA coverage and evidence were adequate. + +Create an explicit QA lane for release-affecting batches, RC or final-release preparation, +CI/tooling changes, generated-example or generator-output changes, developer-workflow changes, broad +runtime behavior changes, and any batch where the coordinator cannot tell from worker validation alone +whether the intended surfaces were exercised. For docs-only, no-code process, no-PR evidence, and other +low-risk batches, QA may be recorded as `not required` with a one-line rationale instead of spawning a +separate worker. + +Coordinate QA with the same primitives as other batch lanes: + +- The coordinator declares the QA lane in private batch state when the backend is available, for + example as lane `qa` or a backend-supported synthetic target such as `:qa`. Do not add new + backend schema requirements in this workflow; use the current private backend README/schema for the + exact representation. +- The QA owner gets a stable agent id, branch/worktree ownership when files may be edited, and + `agent-coord claim` / `agent-coord heartbeat` updates at lane start, evidence refresh, blocked state, + resumed state, and done state. If private state is unavailable, record claim and heartbeat state as + `UNKNOWN` and use the public claim-comment fallback only where the dependency rules allow it. +- QA may run in parallel with audit or closeout once changed areas and candidate PRs are known, but it + must not push dependent changes while declared `blocked_on` refs remain unmet. +- QA findings are triaged like other batch findings: release-blocking issues stop readiness or + promotion until fixed or explicitly waived, while non-blocking process improvements are bundled in + the handoff and become follow-up issues only when the Follow-Up Tracking Policy allows it. + +Each final batch handoff that has a QA lane, or intentionally omits one, includes this evidence block: + +```markdown +### QA Evidence + +- QA lane: +- Scope checked: +- Automated checks: +- Manual checks: +- Findings: +- Release-blocking status: +- Process-gap disposition: