Artifact 283a2fd08ca54265f77c8cf463b5b793d505722e195fd9be1391e9d27518b489:
- File
internal/manifest/schedule.go
-
2026-10-20 04:47:23
— part of check-in
[8c00d632b7]
on branch perf/tag-repair-batch
— fix(manifest): apply leaf rechecks in the transaction that links the batch
Each link transaction now runs the whole repair gate before it commits: the reparent pass, tag propagation from the parents it linked, and the leaf rechecks it scheduled. Fossil's manifest_crosslink_end runs the reparent pass and leaf_do_pending_checks inside the transaction that linked the check-ins, so a crash can never leave a committed check-in without its leaf row; this does the same. The schedule records whether a transaction linked anything, so one that linked nothing skips the gate.
The gate at the end of a sweep or a receive is gone. Finalize repairs only what a caller linked through LinkStored in a transaction it opened itself rather than through ReceiveLinker.WithTx, which is all that can still leave work on the schedule.
Tracked in #432. (user: [email protected], size: 4183) [annotate] [blame] [check-ins using]
-
2026-10-20 21:38:53
— part of check-in
[b38bf23f79]
on branch feat/submanifest-reader
— perf(manifest): bound repair work by the linked batch (#455)
Propagate tags and apply scheduled leaf rechecks before each link transaction commits. Preserve sparse metadata repair, pretagged merge-parent rechecks, and rollback-safe retries. Tracked in #432. (user: [email protected], size: 4183) [annotate] [blame] [check-ins using]
-
2026-10-21 21:20:46
— part of check-in
[7244496a09]
on branch main
— Merge pull request #437 from danmestas/feat/submanifest-reader
feat: sub-manifest trees and sparse cones (draft-fossil-submanifests-00, draft-fossil-sparse-cone-00) (user: [email protected], size: 4183) [annotate] [blame] [check-ins using]
-
2026-10-20 04:47:23
— part of check-in
[8c00d632b7]
on branch perf/tag-repair-batch
— fix(manifest): apply leaf rechecks in the transaction that links the batch