Expand description
Types consumed/produced by the new planner (RFC-0006 §4.1).
These types are NEW alongside the existing reconcile() /
gates::* / Observed types — both coexist through Phase 5/6 of
the v0.2 fold. Phase 6 wires CP’s runtime applier onto the new
planner and deletes the old path wholesale per RFC-0006 §12.
Dispatch-path enforcement of “verified data only” lands here: the
planner accepts SignedManifestSet, which carries Verified<T>
values from Phase 2. A function taking &SignedManifestSet is
statically guaranteed to be working with cryptographically verified
payloads — there is no path that constructs a manifest without
going through nixfleet_reconciler::verify_*.
Re-exports§
pub use crate::planner_gates::GateBlock;
Structs§
- Fleet
State - Aggregated view of per-host state the planner consults. Built by the
CP runtime from
host_rollout_records(Phase 4 schema). - Rollout
Id - Content-addressed rollout identifier (RFC-0008 §6.3).
- Rollout
Summary - Signed
Manifest Set - All verified, freshness-validated manifests the planner needs to
reason about the fleet. Constructed by the CP runtime’s manifest
poll workers after
verify_artifact/verify_rollout_manifestgates have passed.
Enums§
- Plan
Action - Planner outputs. The applier interprets each variant against real I/O (DB writes, queued HTTP responses, metrics).
Type Aliases§
- Channel
Id - Closure
Hash - HostId
- Quarantine
Set - Per-channel quarantined-closure set. Populated by the
InsertQuarantineapplier (afterRemoteRollbackComplete); read by the quarantine gate to refuse-to-dispatch a known-bad SHA.