pub struct PlanContext<'a> {
pub port_in_use: &'a (dyn Fn(u16) -> bool + Sync),
pub resolved: Option<(&'a ServiceRef, &'a Path)>,
pub pre_built_ctx: Option<BTreeMap<String, String>>,
pub port_overrides: BTreeMap<String, u16>,
pub mode: PlanMode,
pub acme: Option<&'a AcmeMode>,
}Expand description
Frontend-supplied capabilities and plan mechanics. Everything here
is either a system probe core refuses to own (port_in_use) or
internal plumbing for retries/upgrades; none of it is user intent.
Fields§
§port_in_use: &'a (dyn Fn(u16) -> bool + Sync)+ Sync so plans can be held across awaits inside async (Send)
handlers; the CLI’s plain fn pointer satisfies it for free.
resolved: Option<(&'a ServiceRef, &'a Path)>Already-resolved (ref, repo dir) when the frontend resolved the
registry earlier (the CLI does, once per batch). None resolves
from AddRequest::service.
pre_built_ctx: Option<BTreeMap<String, String>>Secrets minted during an interactive prompt phase, reused so the values the user saw match what gets written.
port_overrides: BTreeMap<String, u16>Pin port assignments (upgrade re-renders).
mode: PlanMode§acme: Option<&'a AcmeMode>ACME mode for the reverse proxy’s own install. Lives here rather
than in AddRequest until AcmeMode grows serde support;
only the CLI exposes it today.