pub enum TrifectaVerdict {
Ok,
RefusedTrifecta,
AllowedWithWarning,
}Expand description
The spawn-chokepoint verdict on a grant’s trifecta exposure (RFC 0012 §3.2). The variants name the observation the chokepoint emits — never a crash, always a tool result the parent’s model adapts to (RFC 0007):
TrifectaVerdict::Ok— ≤2 legs; the grant proceeds silently.TrifectaVerdict::RefusedTrifecta— all three legs, no override; thesubagent.spawnchokepoint returnsisError:trueand the child is never re-exec’d. The integrator surfaces the “split into reader/actor subagents, or relaunch with--allow-trifecta” guidance text here.TrifectaVerdict::AllowedWithWarning— all three legs, but--allow-trifectais set; the spawn proceeds and the supervisor emits ascope.trifecta_grantwarn event so the override is auditable.
This mirrors RuleOfTwo (Ok/Warn/Refuse) with the longer,
self-describing names the task’s grant-path API asked for; both sit on the
same Trifecta budget.
Variants§
Ok
≤2 legs — the Rule of Two holds; grant silently.
RefusedTrifecta
All three legs and no --allow-trifecta — the grant is refused.
AllowedWithWarning
All three legs but --allow-trifecta downgrades the refusal to a loud,
auditable warning.
Implementations§
Source§impl TrifectaVerdict
impl TrifectaVerdict
Sourcepub fn is_refused(self) -> bool
pub fn is_refused(self) -> bool
Whether the grant must be blocked at the chokepoint. Only
TrifectaVerdict::RefusedTrifecta blocks; a warning still proceeds.
Trait Implementations§
Source§impl Clone for TrifectaVerdict
impl Clone for TrifectaVerdict
Source§fn clone(&self) -> TrifectaVerdict
fn clone(&self) -> TrifectaVerdict
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for TrifectaVerdict
Source§impl Debug for TrifectaVerdict
impl Debug for TrifectaVerdict
impl Eq for TrifectaVerdict
Source§impl PartialEq for TrifectaVerdict
impl PartialEq for TrifectaVerdict
impl StructuralPartialEq for TrifectaVerdict
Auto Trait Implementations§
impl Freeze for TrifectaVerdict
impl RefUnwindSafe for TrifectaVerdict
impl Send for TrifectaVerdict
impl Sync for TrifectaVerdict
impl Unpin for TrifectaVerdict
impl UnsafeUnpin for TrifectaVerdict
impl UnwindSafe for TrifectaVerdict
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more