CI / build (push) Has been cancelled
- Archive 79 completed framework-dev tasks from tasks/ -> tasks/complete/ - status.py: add --cleanup-done and --install-cleanup-schedule commands - Add scripts/automaton-cleanup.sh for periodic task archiving - Dashboard: rename 'Background' tab -> 'Agent', 'Cleanup' agent -> 'Completed Task Archiver', remove redundant group headers and pill badges, dim inactive agent placeholders - .rules.md: add Self-Documenting UI Names rule - New tests: test_cleanup_done.py, expanded test_app.py and test_task.py
16 lines
971 B
Markdown
16 lines
971 B
Markdown
# Bug Report: fix-verdict-pass-inference
|
|
|
|
## Summary
|
|
The fix replaces substring search with structured-line parsing, correctly matching the dashboard's approach.
|
|
|
|
## Bugs Found
|
|
|
|
### Bug 1: Substring match within status line value
|
|
- **Severity**: Low
|
|
- **Location**: scripts/status.py:316
|
|
- **Description**: `_parse_verdict_status_line()` uses `label in after_colon.upper()` which is a substring match within the status value. A status like `## Status: FAILURE` would match `FAIL` (since `"FAIL" in "FAILURE"` is True). However, this is consistent with the dashboard's `parse_verdict_status()` (task.py:82) which has the same pattern, and verdict status values are always exactly "PASS", "FAIL", or "NEEDS_REVIEW" per the referee prompt template.
|
|
- **Suggested Fix**: Use exact match only: `if after_colon.upper() == label`. However, this would diverge from the dashboard's behavior and could break existing verdicts with extra text on the status line.
|
|
|
|
## Score
|
|
+1 (Low)
|