pub struct ChatEntry {Show 18 fields
pub start_seq: u64,
pub seq: u64,
pub role: ChatRole,
pub text: String,
pub recorded_at_ms: Option<i64>,
pub revision: u64,
pub message_id: Option<String>,
pub tool_call_id: Option<String>,
pub tool_status: Option<ToolStatus>,
pub tool_summary: Option<String>,
pub tool_presentation: Option<ToolCallPresentation>,
pub tool_content: Vec<String>,
pub tool_diffstats: Vec<String>,
pub tool_locations: Vec<String>,
pub plan: Vec<PlanLine>,
pub leading_omitted: bool,
pub raw_only: bool,
pub source: TranscriptSource,
}Fields§
§start_seq: u64§seq: u64§role: ChatRole§text: String§recorded_at_ms: Option<i64>§revision: u64§message_id: Option<String>§tool_call_id: Option<String>§tool_status: Option<ToolStatus>§tool_summary: Option<String>Compact label used by Rich and browser projections. text remains the
original provider title for Raw mode.
tool_presentation: Option<ToolCallPresentation>Selected bounded source retained so partial ACP updates can preserve a raw-command-derived summary without retaining arbitrary raw JSON.
tool_content: Vec<String>§tool_diffstats: Vec<String>§tool_locations: Vec<String>§plan: Vec<PlanLine>§leading_omitted: bool§raw_only: boolDetail the decluttered feed leaves out: the entry renders only in the raw transcript mode. Set once, when the entry is built, because Alt-T switches render mode without rebuilding entries.
source: TranscriptSourceThe materialized transcript item this entry was derived from, when it came from the controller’s projection. Provenance only, so it is neither serialized nor part of the entry’s value.
Implementations§
Source§impl ChatEntry
impl ChatEntry
Sourcepub fn is_session_restart(&self) -> bool
pub fn is_session_restart(&self) -> bool
Whether this entry is the durable marker emitted when a session’s control plane restarts. The source identity is authoritative for materialized entries; the role/text check also covers entries built from older worker snapshots that have no materialized source handle.
pub fn plan(seq: u64, plan: Vec<PlanLine>) -> ChatEntry
pub fn touch(&mut self, seq: u64)
pub fn with_recorded_at(self, recorded_at_ms: Option<i64>) -> ChatEntry
Trait Implementations§
Source§impl<'de> Deserialize<'de> for ChatEntry
impl<'de> Deserialize<'de> for ChatEntry
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<ChatEntry, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<ChatEntry, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
impl Eq for ChatEntry
Source§impl Serialize for ChatEntry
impl Serialize for ChatEntry
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl StructuralPartialEq for ChatEntry
Auto Trait Implementations§
impl Freeze for ChatEntry
impl RefUnwindSafe for ChatEntry
impl Send for ChatEntry
impl Sync for ChatEntry
impl Unpin for ChatEntry
impl UnsafeUnpin for ChatEntry
impl UnwindSafe for ChatEntry
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>,
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.