Skip to main content

Module closure_explain

Module closure_explain 

Source
Expand description

Path-dependency closure sync explanation (bd-session-history-remediation-ocv9i.8.1).

Backs rch sync --explain / the doctor surface: for every root in a DependencyClosurePlan, it joins the planner facts (why a root is included, its risk class, sync order) with convergence facts (local vs remote revision/hash, last sync time) into a ClosureExplainReport so an operator sees the whole closure — and why each root will (or won’t) sync — without inspecting Cargo manifests, the daemon, and the remote separately.

Convergence facts are supplied by the caller (the daemon’s repo-convergence layer), so this stays a pure, deterministic join with no I/O.

Structs§

ClosureExplainEntry
One explained root: planner facts joined with convergence facts.
ClosureExplainReport
The full explanation report for a closure plan.
RootConvergence
Per-root convergence facts (local vs remote state), keyed into the explain join by canonical root path.

Enums§

RootSyncOutcome
The effective sync action for one root, derived from convergence.

Functions§

derive_outcome
Derive the sync outcome for a root from its convergence facts.
explain_closure
Build the explanation report by joining a closure plan with per-root convergence facts (keyed by canonical root path). Roots with no convergence entry are treated as missing.