pub struct ApprovalPreview {
pub prompt_text: String,
pub next_fires: Vec<ApprovalPreviewFire>,
pub zone_name: String,
pub zone_is_fallback: bool,
pub cadence: String,
pub routine_name: String,
}Expand description
The approval card’s spec-computed preview (#1496).
The next fire times a routine will run at, plus the exact prompt text that
will execute — built by the control plane from the compiled spec, never
from the model’s narration (INV-RL3). Carried on both
TurnEvent::ApprovalPending (the live card) and PendingApproval
(the ListPending recovery path) so neither surface can drop it. Render
with approval_preview_text — never a hand-written per-edge rendering,
so the four chat edges cannot word the same state differently.
Fields§
§prompt_text: StringThe exact prompt text the routine will run, copied verbatim from the compiled spec — never re-typed or summarized.
next_fires: Vec<ApprovalPreviewFire>Up to the next three fire instants, oldest first. Fewer than three (or none) when the schedule itself has fewer left.
zone_name: StringIANA name of the zone next_fires[].local_time is rendered in.
zone_is_fallback: booltrue when Self::zone_name is the schedule’s OWN zone shown as a
labeled fallback because the creating admin’s zone could not be
resolved — false when it is the admin’s actual zone.
cadence: StringThe schedule in English — every weekday at 9:00 AM PDT (UTC-7) —
EMPTY when it is not confidently describable, in which case the card
omits its cadence line rather than assert a wrong sentence (#1808).
routine_name: StringRoutine resource name for a delete preview; empty for create.
Trait Implementations§
Source§impl Clone for ApprovalPreview
impl Clone for ApprovalPreview
Source§fn clone(&self) -> ApprovalPreview
fn clone(&self) -> ApprovalPreview
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ApprovalPreview
impl Debug for ApprovalPreview
Source§impl Default for ApprovalPreview
impl Default for ApprovalPreview
Source§fn default() -> ApprovalPreview
fn default() -> ApprovalPreview
impl Eq for ApprovalPreview
Source§impl From<ApprovalPreview> for ApprovalPreview
impl From<ApprovalPreview> for ApprovalPreview
Source§fn from(p: WireAgentApprovalPreview) -> Self
fn from(p: WireAgentApprovalPreview) -> Self
Source§impl From<ApprovalPreview> for ApprovalPreview
impl From<ApprovalPreview> for ApprovalPreview
Source§fn from(p: WireListApprovalPreview) -> Self
fn from(p: WireListApprovalPreview) -> Self
Source§impl PartialEq for ApprovalPreview
impl PartialEq for ApprovalPreview
impl StructuralPartialEq for ApprovalPreview
Auto Trait Implementations§
impl Freeze for ApprovalPreview
impl RefUnwindSafe for ApprovalPreview
impl Send for ApprovalPreview
impl Sync for ApprovalPreview
impl Unpin for ApprovalPreview
impl UnsafeUnpin for ApprovalPreview
impl UnwindSafe for ApprovalPreview
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request