pub enum ReadinessOutcome {
Ready,
Failed {
kind: &'static str,
failed: CommandOutcome,
},
DataSkew {
failed: CommandOutcome,
},
ProviderFailed {
detail: String,
},
}Expand description
What readiness concluded. Ready = spend may start (no contract, or
bootstrap + readiness all passed). Failed carries the failing phase’s
kind (“bootstrap command” / “readiness check” / “data clone hook” /
“data migrate hook”) and first failing command outcome, so the engine can
block with the gate’s established reason shape.
Variants§
Ready
Failed
DataSkew
The data block’s skewCheck failed: migration/version skew between
the golden dataset and the workspace code (design D-D). A DISTINCT
outcome from a readiness flake — the engine Blocks with the skew
reason (the migrate/reset hook named as the action), never with the
generic readiness shape.
Fields
failed: CommandOutcomeProviderFailed
The provider/substrate itself failed (remote substrate reported the
workspace failed or never became ready inside the poll bound). A
DISTINCT outcome from a contract-command failure: the engine Blocks
with owner provider (never repo-setup), and the block is NOT
gate-prefixed — a later gate pass does not auto-lift it; the operator
unblocks after the substrate recovers.