3.7 KiB
Timeout Budget and Rerun Hygiene Plan
Date: 2026-04-19 Status: Draft Upstream Design:
docs/superpowers/specs/2026-04-19-timeout-budget-rerun-hygiene-design.mdUpstream Diagnostic:docs/superpowers/reports/2026-04-19-timeout-regression-diagnostic-report.md
Plan Intent
Create a bounded timeout-budget and rerun-hygiene layer so budget-sensitive scenes are not collapsed into a single source-unreadable bucket.
This plan is classification and reporting only. It does not change analyzer or generator code.
Scope Guardrails
- do not modify
src/generated_scene/analyzer.rs - do not modify
src/generated_scene/generator.rs - do not update
scene_execution_board_2026-04-18.json - do not promote scenes
- do not rerun the full
102sweep - do not treat rerun success as validated pass
- do not start timeout implementation fixes
Fixed Input
The fixed input is:
tests/fixtures/generated_scene/timeout_regression_diagnostic_2026-04-19.json
Only the three diagnosed timeout records enter this plan.
Phase 0: Freeze Timeout Diagnostic Input
Objective
Freeze the timeout diagnostic records before hygiene mapping.
Tasks
- read the timeout diagnostic JSON
- verify total timeout records is
3 - verify the label set is:
timeout-rerun-pass = 2timeout-rerun-fail-closed = 1
Deliverables
- frozen timeout diagnostic baseline
Acceptance Criteria
- exactly
3records enter this hygiene plan - no non-timeout scene enters the plan
Phase 1: Define Hygiene Mapping
Objective
Map timeout diagnostic results to explicit rerun hygiene statuses.
Tasks
- map
timeout-rerun-passtorerun-resolved-pass - map
timeout-rerun-fail-closedtorerun-resolved-fail-closed - preserve any future timeout as
rerun-still-timeout - preserve any future unexpected exit as
rerun-error
Deliverables
- explicit rerun hygiene mapping table
Acceptance Criteria
- each timeout diagnostic label maps to one hygiene status
- pass-like rerun and fail-closed rerun remain distinct
Phase 2: Build Hygiene Output
Objective
Publish a hygiene-layer view for the three timeout records.
Tasks
- write
tests/fixtures/generated_scene/timeout_budget_rerun_hygiene_2026-04-19.json - include:
- original timeout status
- diagnostic label
- rerun hygiene status
- elapsed seconds
- report presence
- readiness if present
- summarize how many records are:
rerun-resolved-passrerun-resolved-fail-closedrerun-still-timeoutrerun-error
Deliverables
- timeout budget hygiene JSON
Acceptance Criteria
- all three timeout records appear in the hygiene JSON
- each has exactly one hygiene status
Phase 3: Publish Report
Objective
Publish the bounded timeout hygiene report without changing scene status.
Tasks
- write
docs/superpowers/reports/2026-04-19-timeout-budget-rerun-hygiene-report.md - explain why
sweep-040-sceneshould not be counted the same way as a hard unreadable source - explain why
sweep-015-sceneandsweep-025-sceneare budget-sensitive pass candidates - state that this remains a hygiene layer, not a promotion layer
Deliverables
- timeout budget and rerun hygiene report
Acceptance Criteria
- report exists
- no execution board update is made
- no implementation change is made
Completion Criteria
This plan is complete when:
- timeout diagnostic input is frozen
- rerun hygiene mapping is defined
- hygiene JSON is published
- hygiene report is published
Stop Statement
Stop after publishing the timeout hygiene JSON and report.
Do not start timeout implementation or scene promotion inside this plan.