Skip to main content

Module landing_objects

Module landing_objects 

Source
Expand description

Migration of a prepared commit’s shadow objects into a kept pack of the real store. What: Migration of a prepared commit’s shadow-only objects into the real store as one pack, optionally kept by a .keep file naming the transaction. Why: The real target may name the commit only after the compare-and-swap, so its objects must be in the real store first, and the keep stops prune or repack from removing them mid-landing (src/policy-engine/commit-landing-objects.ts).

In TS you’d write (pseudocode):

await migrateShadowObjects({ gitPath, cwd, shadowPath, newOid, oldBase, keepMessage });

Functions§

migrate_shadow_objects
What: Packs the commit’s objects that the shadow holds and the real store lacks, and indexes the pack into the real store. Why: pack-objects --local leaves out objects reached through the shadow’s alternates, so the pack carries only what the landing introduces.