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
+14 -15
View File
@@ -30,7 +30,7 @@ paths:
/api/me/notifications:
put:
operationId: updateNotificationPrefs
description: Sets which new inbox items notify the calling user in their open byre pages.
description: Sets which new questions, finished turns, errors and rate limits notify the calling user in their open byre pages.
requestBody:
required: true
content:
@@ -1125,13 +1125,13 @@ components:
NotificationPrefs:
type: object
description: Which new inbox items and finished turns notify this user in their open byre pages.
description: Which new questions, finished turns, errors and rate limits notify this user in their open byre pages.
required: [questions, reports, errors, rate_limits]
properties:
questions: { type: boolean, description: Questions. On by default. }
reports: { type: boolean, description: "Task turns that end with a summary (turn.ended with summary: true)." }
errors: { type: boolean, description: session_error items. }
rate_limits: { type: boolean, description: rate_limited items. }
errors: { type: boolean, description: session.error events on tasks. }
rate_limits: { type: boolean, description: session.rate_limited events on tasks. }
UserUpdate:
type: object
@@ -1469,9 +1469,9 @@ components:
event_seq: { type: integer, format: int64, description: "The task's latest event when the snapshot was started: the tree holds at least the work up to it." }
trigger:
type: string
enum: [message, turn_end, tool_call, ask_human, timer, requested]
x-enum-varnames: [SnapshotTriggerMessage, SnapshotTriggerTurnEnd, SnapshotTriggerToolCall, SnapshotTriggerAskHuman, SnapshotTriggerTimer, SnapshotTriggerRequested]
description: "turn_end: after byre's end-of-turn commit. requested: a task's agent or the lead asked for it with take_snapshot. message (the agent wrote text after one or more tool calls), tool_call, ask_human and timer appear only on snapshots taken by earlier builds."
enum: [message, turn_end, tool_call, ask_human, timer, requested, answer]
x-enum-varnames: [SnapshotTriggerMessage, SnapshotTriggerTurnEnd, SnapshotTriggerToolCall, SnapshotTriggerAskHuman, SnapshotTriggerTimer, SnapshotTriggerRequested, SnapshotTriggerAnswer]
description: "turn_end: after byre's end-of-turn commit. requested: a task's agent or the lead asked for it with take_snapshot. answer: just before answers from the human were handed to the agent. message (the agent wrote text after one or more tool calls), tool_call, ask_human and timer appear only on snapshots taken by earlier builds."
created_at: { type: string, format: date-time }
Preview:
@@ -1609,21 +1609,19 @@ components:
InboxItem:
type: object
required: [id, project_id, task_id, agent_session_id, thread_id, kind, payload, state, created_at, responses]
description: A question an agent asked the human with ask_human.
required: [id, project_id, task_id, agent_session_id, thread_id, payload, state, created_at, responses]
properties:
id: { type: string }
project_id: { type: string }
task_id: { type: string }
agent_session_id: { type: string }
thread_id: { type: string }
kind: { type: string, enum: [question, session_error, rate_limited] }
payload:
type: object
description: >
question: context (Markdown with the choices inline as `- ( ) text` / `- (*) text` pick-one or `- [ ] text` / `- [x] text` pick-any list items),
context (Markdown with the choices inline as `- ( ) text` / `- (*) text` pick-one or `- [ ] text` / `- [x] text` pick-any list items),
question, why_blocked, options (each choice's text, in order), multiple (true for pick-any), recommended (the marked choices' text), attachments.
session_error: error.
rate_limited: vendor, rate_limit (the vendor's rate-limit status), error.
state: { $ref: "#/components/schemas/InboxState" }
created_at: { type: string, format: date-time }
resolved_by: { type: string }
@@ -1634,7 +1632,7 @@ components:
InboxResponseType:
type: string
enum: [option, other, dismiss]
enum: [option, other]
InboxResponse:
type: object
@@ -1657,6 +1655,7 @@ components:
items: { $ref: "#/components/schemas/Attachment" }
created_at: { type: string, format: date-time }
delivered_at: { type: string, format: date-time }
snapshot_n: { type: integer, description: "The task's snapshot of the worktree as it stood just before the response was handed to the agent; absent until delivered, and when no snapshot could be taken." }
InboxResponseCreate:
type: object
@@ -1746,8 +1745,8 @@ components:
TaskTab:
type: string
enum: [transcript, board, changes, files, terminal, inbox, reviews, workflow, project]
x-enum-varnames: [TabTranscript, TabBoard, TabChanges, TabFiles, TabTerminal, TabInbox, TabReviews, TabWorkflow, TabProject]
enum: [transcript, board, changes, files, terminal, questions, reviews, workflow, project]
x-enum-varnames: [TabTranscript, TabBoard, TabChanges, TabFiles, TabTerminal, TabQuestions, TabReviews, TabWorkflow, TabProject]
TerminalSize:
type: object