Artifact 6806582c3346e9da62073038a992751e809c8076ce1656c612700b6b50a21f77:
- File
conformance/horizon_structural_test.go
-
2026-10-24 00:37:46
— part of check-in
[1afe809b01]
on branch main
— feat(sync): origin refuses a pushed seed by label or shape (#471)
Horizon ยง5.2.3 as the zit 0.7.1 erratum words it. A pushed control artifact is a seed when its U card is the origin's own label (go-libfossil) or it carries a horizon-seed T card under any label. Full text is judged as it arrives. A delta is judged on its expanded content at the end of the request, so a delta whose base arrives later in the same request is caught. A delta never made readable is not identified and stays a dangling delta.
The refusal is atomic: the request rolls back, and the reply is the single error card "seed refused: a seed is private to the clone that holds it; it is never pushed". The horizon-seed name match is kept as an extra check, and now refuses loudly the same way instead of silently dropping the file.
Conformance cases for HZ-5.2-4 cover full text, a delta against a held base, a late delta, the shape under a foreign label (full and late), and a foreign label with no binding card, which is stored. An HZ-5.7-2 case covers the stale-seed check on a late delta. An interop case has zit 0.7.0 push such an artifact to a go-libfossil origin and get refused. (user: [email protected], size: 32054) [annotate] [blame] [check-ins using]
-
2026-10-24 06:39:04
— part of check-in
[81d00b2e3b]
on branch main
— Merge branch 'feat/471-seed-refusal' into feat/horizon-names-seed-refusal
# Conflicts: # conformance/horizon_test.go # docs/site/data/conformance.json (user: [email protected], size: 32054) [annotate] [blame] [check-ins using]
-
2026-10-24 12:32:24
— part of check-in
[5a7c2ba12e]
on branch main
— Merge pull request #476 from danmestas/feat/horizon-names-seed-refusal
feat(horizon): named horizons with depth, and origin seed refusal (user: [email protected], size: 32054) [annotate] [blame] [check-ins using]
-
2026-10-24 00:37:46
— part of check-in
[1afe809b01]
on branch main
— feat(sync): origin refuses a pushed seed by label or shape (#471)