pub struct ThreadListItem {
pub thread_id: String,
pub name: String,
pub thread_state: i32,
pub last_activity_at: Option<Timestamp>,
pub target_thread_id: Option<String>,
pub thread_health: Option<String>,
pub task: Option<String>,
pub base_state: Option<StateId>,
pub parent_thread: Option<String>,
}Expand description
Compact status and identity projection for thread-list rows. Fetch the full ThreadSummary through GetThread when detail is needed.
Field selection is driven by list consumers (notably loadTasksView), not by mirroring every cheap ThreadSummary field. Do not re-add freshness, current_state, or changed_paths without a concrete reader: changed_paths is an unbounded repeated that regresses the streamed-list frame-size goal.
Hosted-empty today (CLI may populate; hosted registry leaves unset so the next slim must not treat these as free list-row candidates):
- thread_health
Fields§
§thread_id: StringStable opaque server-assigned identity.
name: StringRenameable human-facing thread ref/title.
thread_state: i32§last_activity_at: Option<Timestamp>Grounds LAST_ACTIVITY_DESC ordering and renders row recency.
target_thread_id: Option<String>Stable identity of the thread’s target, when one is configured.
thread_health: Option<String>Compact server-computed status/health rollup for the row. Hosted-empty today: the hosted ListThreads projection leaves this unset; CLI implementations may populate it. Keep the field (consumer-read, free when absent) rather than removing it for a formal break with no wire win.
task: Option<String>Human-facing task/title text. Same name/type as ThreadSummary.task so mappers project 1:1 from the widened list row.
base_state: Option<StateId>Base revision the thread is relative to. Same name/type as ThreadSummary.base_state.
parent_thread: Option<String>Renameable human-facing parent thread ref. Same name/type as ThreadSummary.parent_thread (not parent_thread_id).
Implementations§
Source§impl ThreadListItem
impl ThreadListItem
Sourcepub fn thread_state(&self) -> Kind
pub fn thread_state(&self) -> Kind
Returns the enum value of thread_state, or the default if the field is set to an invalid enum value.
Sourcepub fn set_thread_state(&mut self, value: Kind)
pub fn set_thread_state(&mut self, value: Kind)
Sets thread_state to the provided enum value.
Sourcepub fn target_thread_id(&self) -> &str
pub fn target_thread_id(&self) -> &str
Returns the value of target_thread_id, or the default value if target_thread_id is unset.
Sourcepub fn thread_health(&self) -> &str
pub fn thread_health(&self) -> &str
Returns the value of thread_health, or the default value if thread_health is unset.
Sourcepub fn parent_thread(&self) -> &str
pub fn parent_thread(&self) -> &str
Returns the value of parent_thread, or the default value if parent_thread is unset.
Trait Implementations§
Source§impl Clone for ThreadListItem
impl Clone for ThreadListItem
Source§fn clone(&self) -> ThreadListItem
fn clone(&self) -> ThreadListItem
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 ThreadListItem
impl Debug for ThreadListItem
Source§impl Default for ThreadListItem
impl Default for ThreadListItem
impl Eq for ThreadListItem
Source§impl Hash for ThreadListItem
impl Hash for ThreadListItem
Source§impl Message for ThreadListItem
impl Message for ThreadListItem
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self.