Questions tab, question bubbles, answer snapshots; errors to transcript

This commit is contained in:
Ian Gulliver
2026-10-18 15:06:06 -07:00
parent 1ef3594016
commit 10a80ccb22
31 changed files with 744 additions and 665 deletions
+5 -5
View File
@@ -889,7 +889,7 @@ func (m *Manager) pump(l *live) {
if m.leadsTask(ctx, l.taskID, l.id) {
m.abandonMerge(l.taskID, l.projectID)
}
m.fileError(l, "The agent process exited mid-turn. Send a message to resume it.")
m.recordError(l, "The agent process exited mid-turn. Send a message to resume it.")
}
}
@@ -1104,7 +1104,7 @@ func (m *Manager) turnEnded(ctx context.Context, l *live, res endResult) error {
sha, err := git.CommitAll(l.dir, commitMessage(res), l.gitName, l.gitEmail)
if err != nil {
slog.Error("commit turn", "session", l.id, "err", err)
m.fileError(l, fmt.Sprintf("byre couldn't commit the turn's work, so the turn counts as unfinished: %v", err))
m.recordError(l, fmt.Sprintf("byre couldn't commit the turn's work, so the turn counts as unfinished: %v", err))
finished = false
if owner {
err = git.AbortMerge(l.dir)
@@ -1152,9 +1152,9 @@ func (m *Manager) turnEnded(ctx context.Context, l *live, res endResult) error {
switch {
case !res.isError || interrupted:
case rateLimited != nil:
m.fileRateLimited(l, rateLimited, failure)
m.recordRateLimited(l, rateLimited, failure)
default:
m.fileError(l, failure)
m.recordError(l, failure)
}
stageFinished := false
@@ -1217,7 +1217,7 @@ func (m *Manager) turnEnded(ctx context.Context, l *live, res endResult) error {
case mergeBy != "":
go m.releaseMerge(l.projectID, l.taskID)
if !res.isError || interrupted {
m.fileError(l, "The Merge turn ended unfinished (interrupted, or with no final message), so byre didn't squash or push the task. Merge again to retry.")
m.recordError(l, "The Merge turn ended unfinished (interrupted, or with no final message), so byre didn't squash or push the task. Merge again to retry.")
}
default:
go m.nextMerge(l.projectID)