Expand description
EphemeralEnvId — the typed, validate-by-construction identity of an
ephemeral environment (the Dev-Loop “EnvId” keystone; Confluence “9 ·
Ephemeral Environments”).
A facade over the existing stringly derivation
(ephemeral_id_from_spec) — same
hash, now a newtype so an invalid id is unrepresentable: the only ways to
build one are from_spec (derive — always valid,
idempotent: same spec ⇒ same id ⇒ same DNS slot) and
parse (validate at an untrusted boundary —
parse-don’t-validate). Deserialization routes through parse, so a malformed
id in a CRD/label/wire is parse-time-rejected (the eclusa §III.5 wire
discipline), never an in-flight value. Existing call sites keep using the
string fns unchanged; new typed code uses this newtype.
Structs§
- Ephemeral
EnvId - The deterministic identity of an ephemeral environment — exactly
EPHEMERAL_ID_HASH_LENlowercase-hex chars of BLAKE3 over a spec’s canonical JSON. Validate-by-construction (see the module docs).
Enums§
- EnvId
Error - Why a string is not a valid
EphemeralEnvId.