Plan 0016
Every red check carries its evidence
A failing check shows the actual compiler, test, or lint output in the check itself, not an exit code pointing at a runner host. The mechanical failure class (fmt, clippy fixable, lint autofix) gets fixed by CI rather than reported by it.
- Status
- Sketch
- Ambition
- 4 plumbing existing logs to where the reader is, plus an autofix lane
- Impact
- 7 every CI failure today costs a manual expedition to a runner host
- Effort
- 5 failure surfacing in the check output, autofix for the mechanical class
- Risk
- 3 worst case is a noisier check annotation
- Maturity
- 2 runner-side logs exist; the last mile to the check does not
- Leverage
- 7 every future failure, and every agent debugging one, benefits
- Taste
- 3 what to surface is obvious from the issues; the work is wiring
- Authors
- Created
- Updated
- Tracking issue
- -
- Supersedes
- -
- Superseded by
- -
Summary
The recurring CI complaint is not that checks fail, it is that failures arrive as exit codes: flake-check prints a derivation path, the real error lives in a log on a fleet host, and every agent pays a manual expedition to find it. Meanwhile a large class of failures (formatting, fixable clippy, lint autofix) is mechanical: CI knows the fix and reports instead of applying. Two changes: every red check embeds the decisive output, and the mechanical class gets an autofix lane that pushes the fix to the PR branch.
Non-goals
New checks or changed gates; this is legibility and automation for the gates that exist.
Absorbed issues
#2244, #2056, #2052, #2029, #3435, #3434, #3431, #3120, #2763, #2762, #2620, #2609, #2752, #2664, #2460, #2410, #2501, #2679, #2499, #2431, #2371, #2338, #2372
Drafted by Claude Code (Fable) from the open-issue corpus; scores are seed estimates.
andrewgazelka