Skip to main content

Module orchestrator

Module orchestrator 

Source
Expand description

Backfill orchestration: plan units → gate → run each unit through executor::run_expanded under bounded concurrency → record every unit’s terminal outcome in the durable progress marker.

Reuses expand (so every config gate applies) and the executor (so transforms / quality / contract / masking / DLQ / flush-completing cancel all behave exactly like faucet run). Each unit runs the selected root node with:

  • ${backfill.*} tokens substituted in its source + sink configs,
  • the ${now.*} clock set to the unit’s window start,
  • a namespaced row id (backfill::{unit}) so its state key never touches the forward-sync bookmark,
  • delivery forced to at-least-once (pair with write_mode: upsert for idempotent replays).

Structs§

BackfillOptions
Inputs for one faucet backfill invocation.
BackfillOutcome
Overall backfill result.
UnitReport
Per-unit report line.

Enums§

BackfillRange
The requested replay range.

Functions§

run_backfill
Run a backfill. Returns the per-unit outcome table; Err only for planning/gating/config failures (unit failures are reported in the outcome and via a non-Ok summary the caller maps to an exit code).