Run tasks on Codex beside Claude; drop turn caps and mid-turn snapshots
This commit is contained in:
+12
-28
@@ -312,7 +312,7 @@ paths:
|
||||
a Co-authored-by trailer for each of the task's co-authors, pushes it to origin, fast-forwards the project's
|
||||
checkout to it, then removes the worktree and branch and marks the task merged. While another task in the
|
||||
project is merging, the merge is held instead (merge_queued_at is set) and starts when no merge is in progress
|
||||
in the project and the task's session is idle, oldest first. Refused while a turn is running or queued, or the
|
||||
in the project and the task's session is idle, oldest first. Refused while a turn is running, or the
|
||||
merge is already held.
|
||||
responses:
|
||||
"202":
|
||||
@@ -332,10 +332,10 @@ paths:
|
||||
description: >
|
||||
Asks the task's agent to merge the project's default branch into the task branch, resolving any conflicts
|
||||
and regenerating generated files. Sent to the task's idle session, or starts a session when it has none.
|
||||
Refused while a turn is running or queued.
|
||||
Refused while a turn is running.
|
||||
responses:
|
||||
"202":
|
||||
description: The merge turn was started or queued.
|
||||
description: The merge turn was started.
|
||||
content:
|
||||
application/json:
|
||||
schema: { $ref: "#/components/schemas/AgentSession" }
|
||||
@@ -640,7 +640,7 @@ paths:
|
||||
the session is completed and a new session on the same task and model starts with the handoff as its first message.
|
||||
responses:
|
||||
"202":
|
||||
description: The handoff turn was started or queued.
|
||||
description: The handoff turn was started.
|
||||
content:
|
||||
application/json:
|
||||
schema: { $ref: "#/components/schemas/AgentSession" }
|
||||
@@ -1013,7 +1013,7 @@ components:
|
||||
type: string
|
||||
enum: [message, turn_end, tool_call, ask_human, timer]
|
||||
x-enum-varnames: [SnapshotTriggerMessage, SnapshotTriggerTurnEnd, SnapshotTriggerToolCall, SnapshotTriggerAskHuman, SnapshotTriggerTimer]
|
||||
description: "message: the agent wrote text after one or more tool calls; turn_end: after byre's end-of-turn commit. tool_call, ask_human and timer appear only on snapshots taken by earlier builds."
|
||||
description: "turn_end: after byre's end-of-turn commit. 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:
|
||||
@@ -1032,19 +1032,18 @@ components:
|
||||
id: { type: string }
|
||||
task_id: { type: string, description: Empty for a lead session. }
|
||||
owner: { type: string, description: "The login whose lead agent this is; empty for a task's session." }
|
||||
vendor: { type: string, enum: [claude] }
|
||||
model: { type: string, description: Requested model; empty means the vendor's default. }
|
||||
vendor_session_id: { type: string }
|
||||
vendor: { type: string, enum: [claude, codex], description: "Follows from the model the session was created with: gpt-* models run on Codex, every other model on Claude Code." }
|
||||
model: { type: string, description: "Requested model; empty means the vendor's default. A session only switches between its own vendor's models." }
|
||||
vendor_session_id: { type: string, description: "Claude Code's session id, chosen by byre; or the Codex thread id, empty until the session's first turn starts its thread." }
|
||||
state:
|
||||
type: string
|
||||
enum: [idle, queued, running, completed]
|
||||
x-enum-varnames: [AgentSessionStateIdle, AgentSessionStateQueued, AgentSessionStateRunning, AgentSessionStateCompleted]
|
||||
description: queued means a turn is waiting for a free slot under the concurrency caps.
|
||||
enum: [idle, running, completed]
|
||||
x-enum-varnames: [AgentSessionStateIdle, AgentSessionStateRunning, AgentSessionStateCompleted]
|
||||
role: { type: string, enum: [implementer, lead] }
|
||||
created_by: { type: string }
|
||||
created_at: { type: string, format: date-time }
|
||||
forked_from: { type: string, description: "A fork's first start resumes this vendor session, cut at forked_at, under a new vendor_session_id; absent for other sessions." }
|
||||
forked_at: { type: string, description: "With forked_from: the vendor's id of the last message the fork keeps." }
|
||||
forked_at: { type: string, description: "With forked_from: the vendor's id of the last thing the fork keeps, a message for Claude Code, a turn for Codex." }
|
||||
|
||||
SessionCreate:
|
||||
type: object
|
||||
@@ -1219,7 +1218,7 @@ components:
|
||||
|
||||
Status:
|
||||
type: object
|
||||
required: [started_at, db_bytes, last_event_seq, projects, active_tasks, sse_clients, live_agents, running_turns, queued_turns, caps, rate_limits, agent_processes, zombies, stuck_after_seconds, protocol_errors]
|
||||
required: [started_at, db_bytes, last_event_seq, projects, active_tasks, sse_clients, live_agents, running_turns, rate_limits, agent_processes, zombies, stuck_after_seconds, protocol_errors]
|
||||
properties:
|
||||
live_agents: { type: integer, description: Agent processes currently running. }
|
||||
agent_processes:
|
||||
@@ -1236,11 +1235,6 @@ components:
|
||||
type: array
|
||||
description: Turns running now, oldest session first.
|
||||
items: { $ref: "#/components/schemas/TurnRef" }
|
||||
queued_turns:
|
||||
type: array
|
||||
description: Turns waiting for room under the caps, in the order they will start.
|
||||
items: { $ref: "#/components/schemas/TurnRef" }
|
||||
caps: { $ref: "#/components/schemas/Caps" }
|
||||
rate_limits:
|
||||
type: object
|
||||
description: The latest rate-limit status each vendor reported, keyed by vendor.
|
||||
@@ -1252,16 +1246,6 @@ components:
|
||||
active_tasks: { type: integer }
|
||||
sse_clients: { type: integer }
|
||||
|
||||
Caps:
|
||||
type: object
|
||||
required: [global, per_vendor]
|
||||
properties:
|
||||
global: { type: integer, description: Most turns running at once across all vendors. }
|
||||
per_vendor:
|
||||
type: object
|
||||
description: Most turns running at once per vendor, keyed by vendor.
|
||||
additionalProperties: { type: integer }
|
||||
|
||||
TurnRef:
|
||||
type: object
|
||||
required: [session_id, task_id, vendor]
|
||||
|
||||
Reference in New Issue
Block a user