story-kit: merge 160_story_constrain_thinking_trace_height_in_agent_stream_ui

This commit is contained in:
Dave
2026-02-24 18:03:08 +00:00
parent 95fc5aba49
commit 464b1e5530
4 changed files with 351 additions and 5 deletions

View File

@@ -115,6 +115,12 @@ pub enum AgentEvent {
agent_name: String,
message: String,
},
/// Thinking tokens from an extended-thinking block.
Thinking {
story_id: String,
agent_name: String,
text: String,
},
}
#[derive(Debug, Clone, Serialize, PartialEq)]
@@ -3357,7 +3363,23 @@ fn run_agent_pty_blocking(
&& let Some(content) = message.get("content").and_then(|c| c.as_array())
{
for block in content {
if let Some(text) = block.get("text").and_then(|t| t.as_str()) {
let block_type = block.get("type").and_then(|t| t.as_str()).unwrap_or("");
if block_type == "thinking" {
if let Some(thinking) =
block.get("thinking").and_then(|t| t.as_str())
{
emit_event(
AgentEvent::Thinking {
story_id: story_id.to_string(),
agent_name: agent_name.to_string(),
text: thinking.to_string(),
},
tx,
event_log,
log_writer,
);
}
} else if let Some(text) = block.get("text").and_then(|t| t.as_str()) {
emit_event(
AgentEvent::Output {
story_id: story_id.to_string(),