Infrastructure
Rust build-cache hygiene
Bound and expose jackin❯-managed Rust build storage without sacrificing correct parallel builds
Status: Open
Outcome: Every jackin❯-managed Rust cache class has an owner, a bounded retention policy, operator visibility, and safe cleanup; parallel builds reuse compiler output without sharing an unsafe mutable target directory.
Current state
Research identified unbounded incremental directories and duplicated target trees as distinct problems. jackin❯ has no unified cache inventory, budget, doctor surface, or prune ownership yet.
Remaining work
- Define the owned cache classes, paths, retention rules, and deletion safety contract.
- Select and wire the compiler-cache backend for local and container builds, with incremental compilation disabled where required.
- Add bounded defaults and shared-cache mounts only where cache identity remains correct across projects and toolchains.
- Expose bytes and health by cache class in
jackin doctor; add dry-run and explicit class selectors tojackin prune. - Cover concurrency, toolchain drift, filesystem fallback, and cleanup safety with tests and measured acceptance.
Completion gate
Fresh and repeated builds must prove correct cache hits, bounded disk growth, and safe cleanup across host-native and container workflows. Automatic deletion may touch only paths jackin❯ owns and labels.