pub(crate) struct PooledAgent {
pub handle: Arc<AgentHandle>,
pub account: AccountKey,
pub permission_mode: Option<PermissionMode>,
pub registration: Option<Registration>,
pub session_id: String,
}Expand description
Pool entry wrapping the live Arc<AgentHandle>, the account key
the subprocess is bound to, the permission mode that spawn resolved
for its project, and the session registration a respawn re-sends.
Fields§
§handle: Arc<AgentHandle>§account: AccountKeyThe account the subprocess is bound to, resolved at spawn.
permission_mode: Option<PermissionMode>The permission mode this session spawned with, from its
project; None when the spawn resolved to no project and the
launcher default applied. The dispatch path reads it to stamp
the same mode onto /new and /resume re-spawns.
registration: Option<Registration>The session’s registration, captured at spawn; a /new or
/resume respawn re-registers it so the fresh child gets a
fresh binding and env set.
session_id: StringThe id the child currently runs under, as its spawn resolved it
and as Connected refreshed it. The slot is the pool’s key; this
is the occupant the CLI knows, and what a caller holding only the
slot needs for a CLI argument or a transcript path.
Auto Trait Implementations§
impl !RefUnwindSafe for PooledAgent
impl !UnwindSafe for PooledAgent
impl Freeze for PooledAgent
impl Send for PooledAgent
impl Sync for PooledAgent
impl Unpin for PooledAgent
impl UnsafeUnpin for PooledAgent
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
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
impl<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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 more