Files
claw/docs/superpowers/specs/2026-04-19-102-sweep-status-reconciliation-design.md

120 lines
4.3 KiB
Markdown

# 102 Sweep Status Reconciliation Design
> Date: 2026-04-19
> Status: Draft
> Upstream Follow-Up Sweep: `tests/fixtures/generated_scene/full_sweep_improvement_followup_2026-04-19.json`
> Upstream Route Decisions: `tests/fixtures/generated_scene/remaining_route_conflict_decisions_2026-04-19.json`
## Intent
Create a single reconciled status view after the `102` full-sweep improvement roadmap and the remaining route-conflict adjudication.
This design does not change generation behavior. It reconciles measurement assets so the next roadmap starts from a trustworthy status baseline instead of reading stale `misclassified` counts from the follow-up sweep.
## Problem
The current assets intentionally remain separated:
1. the original execution board records current scene status
2. the follow-up sweep records measured analyzer/generator results
3. the route-conflict decision asset adjudicates the remaining `4` sweep misclassifications
Because the follow-up sweep still contains `4` `misclassified` records, a reader can incorrectly treat them as unresolved route bugs. The later route-conflict plan decided all `4` are `valid-host-bridge-workflow`.
The next step needs a reconciled view that preserves the raw sweep result while adding the final adjudicated state.
## Scope
In scope:
1. merge follow-up sweep records with route-conflict decisions
2. produce reconciled status counts
3. mark the `4` previous misclassifications as `adjudicated-valid-host-bridge`
4. preserve the `2` remaining timeouts as unresolved timeout inputs
5. summarize the `48` structured fail-closed records by archetype and blocker
6. produce a reconciliation report for the next roadmap
Out of scope:
1. modifying `analyzer.rs`
2. modifying `generator.rs`
3. modifying `scene_execution_board_2026-04-18.json`
4. promoting any scene
5. creating or changing family baselines
6. rerunning the `102` sweep
7. implementing fixes for fail-closed records or timeouts
## Inputs
Required inputs:
1. `tests/fixtures/generated_scene/full_sweep_improvement_followup_2026-04-19.json`
2. `tests/fixtures/generated_scene/remaining_route_conflict_decisions_2026-04-19.json`
Optional read-only inputs:
1. `tests/fixtures/generated_scene/scene_execution_board_2026-04-18.json`
2. `docs/superpowers/reports/2026-04-19-102-full-sweep-improvement-coverage-delta-report.md`
3. `docs/superpowers/reports/2026-04-19-remaining-route-conflict-correction-report.md`
## Reconciled Status Model
Every scene keeps its raw follow-up `dryRunStatus`.
The reconciliation adds `reconciledStatus`:
1. `auto-pass`
2. `fail-closed-known`
3. `adjudicated-valid-host-bridge`
4. `source-unreadable`
5. `missing-source`
6. `unsupported-family`
The only status transformation in this plan is:
`misclassified` + route decision `valid-host-bridge-workflow` -> `adjudicated-valid-host-bridge`
If a `misclassified` record has no matching final decision, it must remain `misclassified-unresolved`.
## Expected Reconciled Counts
Based on the current follow-up sweep and route decisions, the expected reconciliation is:
| Reconciled status | Count |
| --- | ---: |
| `auto-pass` | 48 |
| `fail-closed-known` | 48 |
| `adjudicated-valid-host-bridge` | 4 |
| `source-unreadable` | 2 |
| `missing-source` | 0 |
| `unsupported-family` | 0 |
| Total | 102 |
## Follow-Up Inputs for Future Roadmaps
The reconciliation should make the next candidates explicit:
1. `48` structured fail-closed records for workflow evidence / contract completion analysis
2. `2` remaining timeout records for source-scale or command hang diagnostics
3. `4` valid-host-bridge adjudications for optional execution-board expectation cleanup, not analyzer correction
## Deliverables
1. `tests/fixtures/generated_scene/full_sweep_status_reconciliation_2026-04-19.json`
2. `docs/superpowers/reports/2026-04-19-102-sweep-status-reconciliation-report.md`
## Acceptance Criteria
1. total reconciled scene count is exactly `102`
2. all `4` route conflicts are reconciled from `misclassified` to `adjudicated-valid-host-bridge`
3. no `misclassified` status remains unless it lacks a route decision
4. the `2` timeout cases remain separate and unresolved
5. no execution board status is changed
6. no analyzer or generator logic is changed
## Stop Rule
Stop after publishing the reconciliation JSON and report.
Do not start fail-closed implementation, timeout diagnostics, or execution-board sync inside this plan.