Track failed static-build nodes without caching broken outputs
A failed transform writes a cache entry that future builds treat as success. Separate failure from reusable output.
- Focused work estimate
- 2h + prerequisites
- Priority in the scenario
- High
- Engineering practice
- Error handling · Build systems
Estimated field mix
- Developer tooling60%
- Compiler and language tooling40%
Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.
Review it, then add it to your workspace.
The board opens an editable draft; nothing is saved until you confirm it. Sign-in and workspace permissions apply, and Demo boards remain ephemeral.
Project context
Fictional static documentation compiler Rowan transforms synthetic text modules through a deterministic local adapter. It never executes candidate source as code.
Setup prerequisites
- Create a synthetic module graph and deterministic transform stub.
- Provide file-change, missing-input and interrupted-output fixtures.
Preceding work
Complete these dependencies, or supply their agreed outputs before taking this ticket.
- CBUILD-101 · Normalize local build paths without merging distinct modules
- CBUILD-102 · Report missing static-build imports at their source location
- CBUILD-103 · Detect static-build dependency cycles with a readable path
- CBUILD-104 · Include transform configuration in static-build cache identity
- CBUILD-105 · Invalidate transitive static-build dependents after source changes
Acceptance criteria
- Only successful validated output caches
- Failure retains diagnostics
- Next build retries affected node
Implementation constraints
- Never replace last good output with partial bytes silently.
Verification to include
- Build successful node
- Fail transform after partial output
Deliverables
- Build result states and failure cases
Rollout and recovery
Clear only affected invalid cache entries and retry.
Value of the work
For the engineer: Practice dependency graphs and cache correctness.
For the team: Inspect whether build speed improvements preserve output correctness.
Evidence boundaries
Outcome Evidence: Tests, patches, and runbooks are requested deliverables. They become Outcome Evidence only through a qualified Mission and immutable Evidence IDs.
Ownership Evidence: Independent adaptation must be observed under a declared verification policy and cite immutable Evidence IDs. Completing a planning ticket establishes no Ownership Evidence.