You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
refactor(project): Detect file replacement via inode in cache check
Extend matchResourceMetadataStrict to compare the resource inode against
the cached inode. When both sides expose an inode and they disagree, the
file has been replaced (atomic rename, cp, tar extraction, ...) — the
mtime+size short-circuit is suppressed and the comparison falls through
to the integrity check.
Inode is now always populated by createResourceIndex; the optional
includeInode flag is removed. When either side has no inode (virtual
resources, caches written before this change), the inode check is
skipped and behavior matches the previous mtime+size path.
Falling through to integrity rather than returning false avoids
unnecessary task re-execution when the replacement preserves content
(e.g. an idempotent rsync). When the replacement also alters content,
the integrity check correctly classifies the resource as changed,
closing a stale-cache blind spot that mtime+size alone could not detect.
0 commit comments