77 lines
2.8 KiB
Markdown
77 lines
2.8 KiB
Markdown
# Timeout Budget and Rerun Hygiene Report
|
|
|
|
> Date: 2026-04-19
|
|
> Plan: `docs/superpowers/plans/2026-04-19-timeout-budget-rerun-hygiene-plan.md`
|
|
> Source diagnostic: `tests/fixtures/generated_scene/timeout_regression_diagnostic_2026-04-19.json`
|
|
|
|
## Scope
|
|
|
|
This plan only converts the three timeout diagnostic records into a rerun-hygiene layer.
|
|
|
|
It does not:
|
|
|
|
1. change analyzer or generator code
|
|
2. update `scene_execution_board_2026-04-18.json`
|
|
3. promote scenes
|
|
4. rerun the full `102` sweep
|
|
5. treat rerun success as validated scene pass
|
|
|
|
## Frozen Diagnostic Input
|
|
|
|
| Diagnostic label | Count |
|
|
| --- | ---: |
|
|
| `timeout-rerun-pass` | 2 |
|
|
| `timeout-rerun-fail-closed` | 1 |
|
|
| Total | 3 |
|
|
|
|
## Hygiene Mapping
|
|
|
|
| Diagnostic label | Hygiene status |
|
|
| --- | --- |
|
|
| `timeout-rerun-pass` | `rerun-resolved-pass` |
|
|
| `timeout-rerun-fail-closed` | `rerun-resolved-fail-closed` |
|
|
| `timeout-rerun-timeout` | `rerun-still-timeout` |
|
|
| `timeout-rerun-error` | `rerun-error` |
|
|
| `timeout-large-source` | `rerun-still-timeout` |
|
|
| `timeout-command-hang` | `rerun-still-timeout` |
|
|
| `timeout-nondeterministic` | `rerun-error` |
|
|
| `timeout-source-scan-heavy` | `rerun-still-timeout` |
|
|
| `timeout-unknown` | `rerun-error` |
|
|
|
|
## Hygiene Results
|
|
|
|
| Scene id | Scene | Diagnostic label | Hygiene status | Elapsed seconds | Result |
|
|
| --- | --- | --- | --- | ---: | --- |
|
|
| `sweep-015-scene` | `????` | `timeout-rerun-pass` | `rerun-resolved-pass` | 74.76 | readiness `A` |
|
|
| `sweep-025-scene` | `??????????` | `timeout-rerun-pass` | `rerun-resolved-pass` | 49.03 | readiness `A` |
|
|
| `sweep-040-scene` | `?????` | `timeout-rerun-fail-closed` | `rerun-resolved-fail-closed` | 45.91 | fail-closed, readiness `C` |
|
|
|
|
## Summary
|
|
|
|
| Hygiene status | Count |
|
|
| --- | ---: |
|
|
| `rerun-resolved-pass` | 2 |
|
|
| `rerun-resolved-fail-closed` | 1 |
|
|
| `rerun-still-timeout` | 0 |
|
|
| `rerun-error` | 0 |
|
|
|
|
## Interpretation
|
|
|
|
1. The timeout bucket should not be treated as a single unreadable category.
|
|
2. Two timeout records are budget-sensitive pass candidates under the bounded rerun budget.
|
|
3. `sweep-040-scene` should not stay grouped with hard unreadable inputs. Under rerun hygiene, it belongs to `rerun-resolved-fail-closed`, which means it should feed the structured fail-closed layer rather than the unreadable bucket.
|
|
4. This remains a hygiene layer only. None of these three records are promoted or merged into the execution board by this report.
|
|
|
|
## Recommendation
|
|
|
|
Use the rerun hygiene layer before any timeout implementation work or execution-board update.
|
|
|
|
The highest-value follow-up is to apply this hygiene rule to future sweeps so budget-sensitive scenes are separated into:
|
|
|
|
1. `rerun-resolved-pass`
|
|
2. `rerun-resolved-fail-closed`
|
|
3. `rerun-still-timeout`
|
|
4. `rerun-error`
|
|
|
|
instead of collapsing all timeout outcomes into `source-unreadable`.
|