Skip to content
go-libfossil Check-in [c7c0c130bd]
Login

Check-in [c7c0c130bd]

Overview
Comment:fix(horizon/seed): apply the seed only to linked check-ins

The seed's rows name their target as their source, and the crosslink treats a blob that sources a tagxref row as already linked. A sync stores an entry before it links it, so a seed applied in between left the entry unlinked for good: no event, no plink, no leaf. Apply now skips a target the store has not linked; the sync layer applies again after the round that links it.

Timelines: family | ancestors | descendants | both | trunk | feat/horizon-cones
Files: files | file ages | folders
SHA3-256: c7c0c130bd218d89e0c6485a7bb128fd3c242d4adfe66982359fb2a109347845
User & Date: [email protected] on 2026-10-22 16:12:53.950
Original User & Date: [email protected] on 2026-10-22 16:12:54.000
Other Links: branch diff | manifest | tags
Context
2026-10-22
16:12
fix(manifest): link a structural store's check-ins against absent parents

A sparse store defers a check-in whose parent it lacks, so that mlinks wait on a complete parent tree. Under a structural horizon (draft -fossil-horizon-00 §5.1) the parents below the horizon never arrive, so C and every entry of K stayed unlinked. An absent source no longer defers there; the check-in links against the phantom as a dense store links it. check-in: 79ec72f88e user: [email protected] tags: feat/horizon-cones, trunk

16:12
fix(horizon/seed): apply the seed only to linked check-ins

The seed's rows name their target as their source, and the crosslink treats a blob that sources a tagxref row as already linked. A sync stores an entry before it links it, so a seed applied in between left the entry unlinked for good: no event, no plink, no leaf. Apply now skips a target the store has not linked; the sync layer applies again after the round that links it. check-in: c7c0c130bd user: [email protected] tags: feat/horizon-cones, trunk

15:49
feat(content): hold and classify a structural horizon store

A structural-horizon clone (draft-fossil-horizon-00 §5.1) keeps only the manifests and nodes its held set reaches, so its phantoms need classes the content horizon never had: a parent the origin labelled below the horizon is elided, an unlabelled one stays transit because it may only be late (§5.3), and a phantom only a tag or cherry-pick names is a manifest below the horizon nothing in K reaches. SetStoreCone stops refusing the depth, and keeps the boundary labels beside the store cone, dropping them when the horizon moves since they name what lies below one C. check-in: 31b140507a user: [email protected] tags: feat/horizon-cones, trunk

Changes