docs: reconcile BACKLOG→RETRO for static_check stage + critique producer (e46777e)
Per the hygiene rule: the §B-§5 static_check stage seam + emitter and the §B-§6/A3 critique-outcome producer are built and unit-verified, so move them out of the live "missing" list. Both narrowed to their remaining live-QA-gated *activations* (a sandboxed production CommandRunner for §B-§5; model-emitted CritiqueFindingsRecordedEvents for §6), with a dated RETRO entry + commit map. Updated QA-reviewer-static-first (the producing stage now exists — check 4 reframed from "blocked on unbuilt seam" to an activation step) and its README index line. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -53,6 +53,23 @@ viewer scrolling one line at a time; `db27b34` adds paging. Item moved out of BA
|
||||
|
||||
---
|
||||
|
||||
## 2026-06-22 — reviewer reliability: static_check stage + critique calibration producer (branch `feat/backlog-burndown`)
|
||||
|
||||
Two deterministic role-reliability tracks whose consumer halves already existed but had nothing
|
||||
feeding them. Both built + unit-verified (Gradle green, detekt clean); their *activations* are
|
||||
model-/sandbox-gated and stay narrowed in BACKLOG.
|
||||
|
||||
| Commit | What | Item |
|
||||
|--------|------|------|
|
||||
| `e46777e` | **§B-§5 deterministic `static_check` stage seam + emitter.** `StaticCheckStageExecutor` runs a configured tool (`static_tool`/`static_argv` via stage metadata) through the existing `StaticAnalysisRunner` and emits `StaticFindingsRecordedEvent`; `DefaultSessionOrchestrator.enterStage` dispatches any `metadata["stage_type"]=="static_check"` stage to it instead of the LLM subagent and advances on the unconditional exit edge; `TomlWorkflowLoader` gained `stage_type`/`static_tool`/`static_argv` fields; `role_pipeline.toml` carries a `static_check` stage between implementer and reviewer. **No-op until** a sandboxed, workspace-scoped `CommandRunner` is wired + `static_argv` set (live-QA-gated). Tests: `StaticCheckStageExecutorTest` (4) + `StaticCheckStageTest` integration (1). | B §5 |
|
||||
| `e46777e` | **§B-§6 / A3 critique-outcome producer.** New `CritiqueFindingsRecordedEvent` (+ `CritiqueVerdict`) is the producing side — a critic's findings + verdict per iteration, with `modelHash`. `CritiqueOutcomeCorrelator` (pure, in the reviewer-loop runtime) decides UPHELD / DISMISSED / INCONCLUSIVE per critic and finding id; a hook in `completeWorkflow`/`failWorkflow` correlates recorded findings into `CritiqueOutcomeCorrelatedEvent`s at loop resolution (no-op + idempotent), feeding the existing `:core:critique` calibration projection. **Dormant until** the reviewer/plan-critic emit `CritiqueFindingsRecordedEvent`s (model-gated). Tests: `CritiqueOutcomeCorrelatorTest` (8) + `CritiqueCalibrationWiringTest` integration (1). | B §6 / C-A3 |
|
||||
|
||||
Both follow the same shape as the earlier dormant-activation work: the deterministic seam + the
|
||||
event wiring land and are unit-proven now; the LLM-/sandbox-side activation is the live-QA-gated
|
||||
follow-up. `docs/qa/QA-reviewer-static-first.md` updated (no longer "producing stage not built").
|
||||
|
||||
---
|
||||
|
||||
## 2026-06-21 — wider grants + revoke (branch `feat/backlog-burndown`)
|
||||
|
||||
Operator-requested (not a prior BACKLOG item): grants that outlive a single session, plus a
|
||||
|
||||
Reference in New Issue
Block a user