Artifact edae6f7af2bdfdd7fb695c0a3d61c28581ccfb629d897be79df08f07f325befc:
- File
internal/content/sparse_horizon_test.go
-
2026-10-22 00:04:54
— part of check-in
[2ea6479ba9]
on branch feat/horizon-cones
— feat(content): classify blobs below a content horizon as elided
A store cone may now carry a content horizon (draft-fossil-horizon-00 §3.2, §4.1-§4.3). Classification computes the held set K from the store's own check-in graph and walks K's full trees -- F cards directly, through B baselines and through S sub-manifest nodes, with one visited set over structural names -- because mlink records a file version only where it changed, and a blob introduced below C and unchanged through C is named by C's tree alone. Nothing about K is stored: every classification recomputes it, so moving C or losing the cone is a reload, never a migration.
Blobs no K check-in names are elided; with path members as well a blob is kept only when it is in both keep sets. Under a horizon nothing structural is elided, by the horizon or by path members, and delta bases of held artifacts and shunned names keep their classes. A C the store does not hold elides nothing, as zit's classification does: eliding everything would leave the pull that brings a deepened C nothing to ask for. A structural horizon is refused by SetStoreCone until it is implemented.
internal/content now imports internal/horizon, so the held-set tests, which commit through internal/manifest, move to an external test package to avoid an import cycle. (user: [email protected], size: 12211) [annotate] [blame] [check-ins using]
-
2026-10-22 00:12:02
— part of check-in
[bc54a61b2c]
on branch feat/horizon-cones
— Merge branch 'wip/horizon-content' into feat/horizon-cones
The content horizon's store classification: a blob is elided when no check-in in the held set names it through its full tree, a kept blob is in both keep sets under a path cone, structure is never elided under a horizon, and a horizon the store cannot place elides nothing, as zit does. (user: [email protected], size: 12211) [annotate] [blame] [check-ins using]
-
2026-10-22 00:04:54
— part of check-in
[2ea6479ba9]
on branch feat/horizon-cones
— feat(content): classify blobs below a content horizon as elided