pub enum SessionLifecycleState {
Sleeping,
Spawning,
Idle,
Running,
Attention,
AuthRequired,
Failed,
Restarting,
LoggedOut,
}Expand description
Lifecycle state of a session. forge-workspace derives one per
session for the roster a view reads, and one per worker for
WorkerStatus::activity. The two derivations are
independent and need not agree.
Variants§
Sleeping
No subprocess yet; lead exists conceptually but has never been spawned (or has been freed).
Spawning
Subprocess spawn in flight - between user click and first
Connected event from the bridge.
Idle
Subprocess is alive and idle (no turn in progress).
Running
Subprocess is mid-turn or actively streaming.
Attention
Cannot proceed without a human - forge-workspace derives it
for a session holding a pending interaction (permission prompt,
AskUserQuestion, elicitation).
AuthRequired
Bridge is waiting on /login to complete before the session
can be spawned.
Failed
Setup (or running) hit a fatal error - ConnectionFailed
drove this. Bucket is dead but kept in the roster so the
user can see the error banner.
Restarting
The seat’s subprocess died while it was supposed to be up and the supervisor is between attempts. Nothing occupies the slot until one lands.
LoggedOut
User triggered /logout. The bridge is down; user can start
a new session via /new or by clicking another project.
Trait Implementations§
Source§impl Clone for SessionLifecycleState
impl Clone for SessionLifecycleState
impl Copy for SessionLifecycleState
Source§impl Debug for SessionLifecycleState
impl Debug for SessionLifecycleState
Source§impl Default for SessionLifecycleState
impl Default for SessionLifecycleState
Source§impl<'de> Deserialize<'de> for SessionLifecycleState
impl<'de> Deserialize<'de> for SessionLifecycleState
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for SessionLifecycleState
Source§impl PartialEq for SessionLifecycleState
impl PartialEq for SessionLifecycleState
Source§impl Serialize for SessionLifecycleState
impl Serialize for SessionLifecycleState
impl StructuralPartialEq for SessionLifecycleState
Auto Trait Implementations§
impl Freeze for SessionLifecycleState
impl RefUnwindSafe for SessionLifecycleState
impl Send for SessionLifecycleState
impl Sync for SessionLifecycleState
impl Unpin for SessionLifecycleState
impl UnsafeUnpin for SessionLifecycleState
impl UnwindSafe for SessionLifecycleState
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.