fn evaluate_synth_gates(
db: &Arc<Db>,
manifests: &SignedManifestSet,
quarantines: &QuarantineSet,
record: &HostRolloutState,
) -> Option<String>Expand description
Run the dispatch-gate evaluation against a Pending HRR record so
maybe_synthesize_recovery_completion can refuse to fast-forward
Pending → Converged when an active gate (channel-edges,
wave-promotion, quarantine, etc.) would still hold the host.
Returns Some(reason) when a gate blocks; the caller leaves the
host in Pending and lets the next regular plan tick handle it.