Explain a cache miss without exposing input contents
The team cannot tell whether frequent misses come from the lockfile or an unstable generated file. Add an explain command comparing safe input metadata from two runs.
- Focused work estimate
- 1h 30m + prerequisites
- Priority in the scenario
- Low
- Engineering practice
- Observability · Developer tooling · Privacy
Estimated field mix
- Developer tooling70%
- Privacy engineering30%
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
A product team waits for every package to rebuild after small changes. An experimental cache is faster but occasionally returns success after a shared type changed. Build a small, auditable task runner around fixture packages.
Setup prerequisites
- Prepare four fixture packages with one shared library and two applications.
- Use only trusted fixture commands in local tests.
Preceding work
Complete these dependencies, or supply their agreed outputs before taking this ticket.
- BUILD-101 · Reject invalid task configuration before starting a command
- BUILD-102 · Show why a task is selected after a file change
- BUILD-104 · Include tool versions and declared environment in the cache key
- BUILD-103 · Schedule independent checks without exceeding the worker limit
- BUILD-106 · Never cache failed or incompletely written task outputs
Acceptance criteria
- Explanation identifies added, removed, or changed input paths and changed key categories.
- File contents and environment values are never printed.
- A missing prior run produces a useful first-run result instead of an error.
Implementation constraints
- Retain hashes and category names only for environment-sensitive inputs.
Verification to include
- Change a source file and a tool version and assert both reasons appear.
- Place a secret fixture value in a declared environment variable and confirm no output includes it.
Deliverables
- Cache-miss explanation command and safe metadata format
Rollout and recovery
Make explanation read-only; deleting history must not alter cache correctness.
Value of the work
For the engineer: Practice incremental computation, dependency scheduling, cache correctness, and cancellation.
For the team: Inspect whether faster checks preserve the guarantees reviewers depend on.
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.