Skip to main content

SessionRead

Struct SessionRead 

Source
pub struct SessionRead(/* private fields */);
Expand description

Deliberately does not implement Clone: read().clone() clones the Session, preserving the existing detached-snapshot read contract.

Methods from Deref<Target = Session>§

Source

pub fn supervisor_incarnation_id(&self) -> Option<Uuid>

Identity shape observed from an executing snapshot, never a live grant. Every management operation must still revalidate canonical storage.

Source

pub fn execution_compatibility(&self) -> SessionCompatibilityReport

Source

pub fn check_execution_compatibility( &self, ) -> Result<(), SessionCompatibilityError>

Source

pub fn root_mode_birth_token(&self) -> String

Opaque lifetime token, so a deleted Root ID cannot reuse an old CAS.

Source

pub fn root_mode_operation( &self, operation_id: &str, ) -> Option<&RootModeOperationReceipt>

Source

pub fn subagent_type(&self) -> Option<String>

Source

pub fn last_run_status(&self) -> Option<String>

Source

pub fn last_run_error(&self) -> Option<String>

Source

pub fn child_launch_generation(&self) -> u64

The queued launch identity is durable on the logical Child session, independent of a process-local runner or scheduler entry.

Source

pub fn is_child_launch_cancelled(&self, generation: u64) -> bool

Source

pub fn recoverable_child_launch_generation(&self) -> Option<u64>

Reconciliation is deliberately narrower than a pending status: an old intent cannot borrow a later draft/retry generation.

Source

pub fn provider_name(&self) -> Option<String>

Source

pub fn pending_injected_messages(&self) -> Option<Vec<Value>>

Read the pending injected messages, decoding the legacy JSON-string form defensively. Malformed legacy JSON yields None (never a panic).

Source

pub fn has_pending_injected_messages(&self) -> bool

True when there are queued injected messages on either plane.

Source

pub fn session_inbox_admission(&self) -> Option<&SessionInboxAdmissionState>

Source

pub fn selected_skill_ids(&self) -> Option<Vec<String>>

Read selected skill ids. The typed field is preferred; the legacy fallback parses the stored JSON-array string defensively (malformed → None).

Source

pub fn skill_mode(&self) -> Option<String>

Read the skill mode. Resolution order: typed field, then legacy skill_mode key, then the historical mode key. When both legacy keys are present and disagree, a warning is logged and skill_mode wins.

Source

pub fn reasoning_effort_meta(&self) -> Option<String>

Source

pub fn enhance_prompt(&self) -> Option<String>

Source

pub fn root_orchestration_prompt_enabled(&self) -> bool

Host-selected delegation guidance is scoped to a genuine root Session. An imported or malformed child cannot acquire it from inherited metadata.

Source

pub fn task_list_version_meta(&self) -> Option<String>

Source

pub fn todo_list_version_meta(&self) -> Option<String>

Source

pub fn workspace_path_meta(&self) -> Option<String>

Source

pub fn project_id_meta(&self) -> Option<String>

Read the stable Project identity, preferring typed runtime metadata and falling back to the legacy metadata string during migration.

Source

pub fn root_thinking_mode(&self) -> RootThinkingMode

Source

pub fn root_orchestration_only_enabled(&self) -> bool

Source

pub fn validate_root_orchestration_compatibility( &self, ) -> Result<(), RootToolAuthorityError>

Keep the narrow tool catalog usable when an old turn or a new request carries a mode that requires tools outside the Root allowlist.

Source

pub fn model_orchestration_only_enabled(&self) -> bool

Derived model posture, not a persisted selection or permission grant. A trusted Supervisor orchestrates in both thinking modes. Children and ordinary Roots retain their own independent mode and permissions.

Source

pub fn allows_model_tool_execution(&self, execution_name: &str) -> bool

Defense in depth at both catalog projection and final dispatch.

Source

pub fn effective_token_budget(&self) -> Option<&TokenBudget>

The effective token budget: a genuine/child override (token_budget) if set, otherwise the current round’s resolved-budget snapshot (resolved_token_budget). Both are None until the first resolution. Downstream readers should use this rather than token_budget directly so they observe the engine-resolved budget without persisting it. Note the snapshot is returned regardless of which model it was resolved for; that is safe because resolve_token_budget runs at round start (re-keying to the current model) before any reader — don’t call this expecting model-freshness without a preceding same-round resolve. (#180)

Source

pub fn format_task_list_for_prompt(&self) -> String

Source

pub fn has_pending_question(&self) -> bool

Trait Implementations§

Source§

impl Deref for SessionRead

Source§

type Target = Session

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Session

Dereferences the value.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> FutureExt for T

Source§

fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ

Attaches the provided Context to this type, returning a WithContext wrapper. Read more
Source§

fn with_current_context(self) -> WithContext<Self> ⓘ

Attaches the current Context to this type, returning a WithContext wrapper. Read more
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more