Skip to content

snapshot diff: chunk-index-backed repo-wide 'new bytes' summary #141

Description

@woutervanranst

Follow-up to the snapshot diff command (spec: docs/history/superpowers/2026-06-29-snapshot-list-and-diff-design.md).

The v1 arius snapshot diff is purely structural (Added/Removed/Modified/TimestampChanged from the filetree, zero storage reads). 'Net-new content' was deliberately dropped because, under Merkle pruning, snapshot A's unchanged subtrees are never walked — so 'content absent from A' is not soundly computable. The chunk index answers the different, weaker question 'absent from the whole repository, ever'.

Proposal: add an optional, clearly-labelled summary (NOT a per-path sibling array) of the ContentHashes in the diff's Added ∪ Modified sets that are absent repo-wide per ChunkIndexService.LookupAsync, behind a flag (touches storage). Label it 'new to the repository' — never 'new vs snapshot A'.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions