Skip to main content

Module replay_shadow

Module replay_shadow 

Source
Expand description

Replay: the shadow-repository Git runner that every replay step uses (replay_shadow). What: Running real Git against the shadow repository for replay: the shadow selection, an optional private index, bytes on standard input, and the caller’s kept global options when a signed rebuild needs them. Why: Every replay step runs in git --git-dir=<shadow> so its objects stay in the shadow store until the next migration; one runner keeps the selection in one place.

In TS you’d write (pseudocode):

runShadowGit({ gitPath, shadowPath, args, input, environment });

Functions§

replay_base_index
What: The private index file a replay step edits, named by the replay number. Why: Each replay keeps its own index under the transaction directory, so a later replay never reads an earlier one.
run_shadow_checked
What: Runs one shadow Git command and requires success. Why: Replay cannot continue after a failed merge-base, hash-object or read-tree; the caller maps the failure to transaction-failed.