thinking output 2

This commit is contained in:
Ian Gulliver
2026-10-17 15:01:43 -07:00
parent 632fc6fdfa
commit c8a7220c9b
3 changed files with 14 additions and 21 deletions
+1 -1
View File
File diff suppressed because one or more lines are too long
+7 -8
View File
@@ -827,12 +827,14 @@ struct RowView: View {
MarkdownView(blocks: row.md, ctx: md) MarkdownView(blocks: row.md, ctx: md)
case .thinking(let blocks): case .thinking(let blocks):
DetailsBox(nested: nested) { VStack(alignment: .leading, spacing: 2) {
HStack(spacing: 4) {
SubagentTag(show: row.tag) SubagentTag(show: row.tag)
Text("thinking").foregroundStyle(Palette.muted) Text("thinking")
} content: { }
MarkdownView(blocks: blocks, ctx: MDContext(color: Palette.muted, taskId: row.taskId)) .font(Fonts.font(11))
.padding(.vertical, 6) .foregroundStyle(Palette.muted)
MarkdownView(blocks: blocks, ctx: md)
} }
case .tool(let name, let brief, let input): case .tool(let name, let brief, let input):
@@ -950,9 +952,6 @@ private struct RunSummary: View {
} }
counts[key]!.n += 1 counts[key]!.n += 1
} }
if order.isEmpty {
return Text(styled([("thinking", 400, Palette.muted)]))
}
var parts: [(String, CGFloat, Color?)] = [] var parts: [(String, CGFloat, Color?)] = []
for (i, key) in order.enumerated() { for (i, key) in order.enumerated() {
let (call, n) = counts[key]! let (call, n) = counts[key]!
+4 -10
View File
@@ -276,7 +276,7 @@ final class TranscriptBuilder {
!parent.isEmpty && ctx.subagents[parent] == nil !parent.isEmpty && ctx.subagents[parent] == nil
} }
private func addToRun(_ row: Row, _ call: Call?, _ parent: String) { private func addToRun(_ row: Row, _ call: Call, _ parent: String) {
if let sub = ctx.subagents[parent] { if let sub = ctx.subagents[parent] {
sub.run = extendRun(sub.run, row, call, parent) { r in sub.run = extendRun(sub.run, row, call, parent) { r in
sub.row.body!.rows.append(r) sub.row.body!.rows.append(r)
@@ -289,14 +289,12 @@ final class TranscriptBuilder {
} }
} }
private func extendRun(_ run: Run?, _ row: Row, _ call: Call?, _ parent: String, _ place: (Row) -> RowList) -> Run { private func extendRun(_ run: Run?, _ row: Row, _ call: Call, _ parent: String, _ place: (Row) -> RowList) -> Run {
guard let run, run.parent == parent else { guard let run, run.parent == parent else {
let list = place(row) let list = place(row)
return Run(first: row, container: list, calls: call.map { [$0] } ?? [], parent: parent) return Run(first: row, container: list, calls: [call], parent: parent)
} }
if let call {
run.calls.append(call) run.calls.append(call)
}
if run.group == nil { if run.group == nil {
let group = Row(.group, taskId: taskId, body: true) let group = Row(.group, taskId: taskId, body: true)
group.owner = ctx.subagents[parent]?.row group.owner = ctx.subagents[parent]?.row
@@ -449,10 +447,6 @@ final class TranscriptBuilder {
guard let row = renderEvent(ev) else { guard let row = renderEvent(ev) else {
continue continue
} }
if ev.kind == "agent.thinking" {
addToRun(row, nil, parent)
continue
}
if let sub { if let sub {
sub.run = nil sub.run = nil
sub.row.body!.rows.append(row) sub.row.body!.rows.append(row)
@@ -497,7 +491,7 @@ final class TranscriptBuilder {
if ev.kind == "task.merge_after_review" && sink == nil { if ev.kind == "task.merge_after_review" && sink == nil {
lastMergeAfterReview = row.id lastMergeAfterReview = row.id
} }
put(row) put(row, keepHeld: ev.kind == "agent.thinking")
} }
return contextChanged return contextChanged
} }