Expand description
Inventory enumeration: turn the fixed target-root list into hashed
PathEntry rows.
§Target roots
Built from two sources, concatenated in this order:
- Platform-specific — provided by each registered
PlatformProbe(one sibling crate per supported Agent platform). Each probe owns its own(category, path)list plus optional per-file decomposition rules. - Universal — hard-coded in [
universal_target_roots]: dependency manifests + lockfiles (supply-chain) and.env, all resolved relative to the current working directory. These are platform-agnostic and have no owning probe.
Missing targets are silently skipped (no error). Directories are walked
recursively, with SKIP_DIRS / SKIP_FILES noise filtered out.
Symlinks are not followed.
§Per-file decomposition
[path_entries] delegates to the owning probe’s
PlatformProbe::decompose_file: when it returns Some(fragments),
the file produces one virtual <file>#<fragment> entry per element
(each hashed over its own payload); when it returns None the file
produces a single whole-file SHA-256 row. The mechanism lets a
probe split noisy configs into per-block fragments so that
unrelated background writes (session counters, cache, timestamps)
do not show as Modified noise — without core needing to know the
per-platform schema.
Structs§
- Path
Entry - One hashed file or virtual sub-entry.