pub struct NotifyDefinition {
pub name: String,
pub channel: String,
pub to_secret: String,
pub to_is_secret: bool,
pub template: String,
pub window: String,
pub provenance: String,
pub effects: Option<EffectRow>,
pub loc: Loc,
pub leading_trivia: Vec<Trivia>,
pub trailing_trivia: Vec<Trivia>,
}Expand description
v2.66.0 — Governed Human Notification: the third egress dual
(deliver = systems of record, document = artifacts, notify =
human attention). Three laws: T933 (the evidence barrier — a guess
reaches a human labeled as a guess, or is refused), T934 (structure:
closed channel catalog; the recipient is a v2.48.0 secret-class ref,
NEVER a literal — PII never rides source or IR), T935 (attention:
a window: is mandatory — unbounded interruption is refused).
Fields§
§name: String§channel: Stringsms | whatsapp | telegram — closed catalog (axon-T934).
to_secret: StringThe v2.48.0 secret-class ref the recipient resolves from AT DISPATCH
(to: secret(ops.oncall_phone)). The literal number/chat-id never
appears anywhere axon stores or reasons over.
to_is_secret: boolTrue iff to: was written in the secret(...) form. A literal
recipient is an axon-T934 refusal (with a teaching message).
template: StringThe message template; ${ref} slots bind flow values post-run.
window: Stringv2.27.0-style duration (30m, 4h, 1d) — at-most-once-per-window
per recipient (axon-T935; enforced durably by the ENT ledger).
provenance: Stringattached | cleared — how epistemic labels cross to the human
. Empty ⇒ attached (the safe default).
effects: Option<EffectRow>Must include web (a notification crosses the trust boundary).
loc: Loc§leading_trivia: Vec<Trivia>§trailing_trivia: Vec<Trivia>