Cache partition keyed by absolute project path, though the cached content is already path-relative

Author: jasonkuhrtCreated Sep 11, 2026Updated Sep 12, 2026

projectCacheSubdir is the first 16 hex characters of sha256 of the absolute project directory, joined under REACT_DOCTOR_CACHE_DIR (0.9.13, dist/index.js:75687-75693). Everything inside is already relocatable: file-lint-cache.json and sidecar-lint-cache.json key files by project-relative path plus content SHA-1 (:73829-73858, sidecar probes relativized at :73895), computeRulesetHash mixes only config, toolchain versions, ignore patterns and tsconfig content (:73537), and supply-chain/*.json are purl-keyed. In our monorepo a 90 KB file-lint cache and a 2.6 MB sidecar cache hold zero absolute paths.

So the only thing stopping a CI runner's warm lint state from warming a developer checkout is the partition directory name.

Request: derive the partition from the project's path relative to the repository root when git supplies one, or accept an explicit REACT_DOCTOR_CACHE_PARTITION. scan-cache.json needs no change: keyed on headSha, it re-validates payload.directory on lookup (dist/should-fail-scan-gate-*.js:616-641,679).