refactor(cache): restructure the cache entry around fs and env fingerprint records - #600
Open
wan9chi wants to merge 1 commit into
Open
refactor(cache): restructure the cache entry around fs and env fingerprint records#600wan9chi wants to merge 1 commit into
wan9chi wants to merge 1 commit into
Conversation
…print records The cache entry conflated three records: the listed inputs' pre-run content hashes (globbed_inputs), the fspy-discovered input fingerprints, and the tracked env state — the first two scattered across the entry and the post-run fingerprint, with the change-kind vocabulary living in the cache module (a module cycle with the fingerprint module). Regroup them by what they mean: InputFingerprints (everything the run read — snapshot + discovered halves, one opaque serialized value) and TrackedEnvFingerprints (everything runner-aware tools observed in the env), each owning its validation. Lookup and update control flow is unchanged. The entry layout changes, so CACHE_SCHEMA_VERSION bumps 18 -> 19; existing caches are ignored once via the versioned cache directory. Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
This was referenced Aug 9, 2026
fspy benchmarklinuxmacoswindows |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Motivation
The cache entry conflates three records with different validation stories: the listed inputs' pre-run content hashes (
globbed_inputs), the traced-access fingerprints (insidePostRunFingerprint), and the tracked env state (also insidePostRunFingerprint) — with the change-kind vocabulary living in the cache module, creating a module cycle with the fingerprint module.This regroups them by what they mean, as groundwork for extracting the filesystem story into its own crate (stack: 1/3):
InputFingerprints— everything the run read: the listed-inputs snapshot and the discovered-input fingerprints, one opaque serialized value owning its own validation (find_change).TrackedEnvFingerprints— everything runner-aware tools observed in the env, owningvalidate_envs(newpost_run.rs, dissolvingPostRunFingerprint).Lookup and update control flow is unchanged. The entry layout changes, so
CACHE_SCHEMA_VERSIONbumps 18 → 19; existing caches are ignored once via the versioned cache directory.🤖 Generated with Claude Code