Fork tasks from snapshots; snapshot only when text follows tool calls
This commit is contained in:
+59
-2
@@ -475,6 +475,26 @@ export interface paths {
|
||||
patch?: never;
|
||||
trace?: never;
|
||||
};
|
||||
"/api/tasks/{taskId}/snapshots/{n}/fork": {
|
||||
parameters: {
|
||||
query?: never;
|
||||
header?: never;
|
||||
path: {
|
||||
taskId: string;
|
||||
n: number;
|
||||
};
|
||||
cookie?: never;
|
||||
};
|
||||
get?: never;
|
||||
put?: never;
|
||||
/** @description Creates a new task whose branch and worktree start from the snapshot's commit, with an idle agent session that continues the snapshot's agent conversation as it stood at the snapshot (the vendor's own session fork). The new session's first turn is the first message sent to it. Refused while the task is closed, and for a snapshot with no recorded agent message at or before it. */
|
||||
post: operations["forkSnapshot"];
|
||||
delete?: never;
|
||||
options?: never;
|
||||
head?: never;
|
||||
patch?: never;
|
||||
trace?: never;
|
||||
};
|
||||
"/api/tasks/{taskId}/sessions": {
|
||||
parameters: {
|
||||
query?: never;
|
||||
@@ -768,6 +788,10 @@ export interface components {
|
||||
merge_commit?: string;
|
||||
/** @description The title of the TODO.md item the task was started from; absent for other tasks. */
|
||||
todo_item?: string;
|
||||
/** @description The task this one was forked from; absent for other tasks. */
|
||||
forked_from?: string;
|
||||
/** @description With forked_from: the n of the snapshot it was forked at. */
|
||||
forked_at?: number;
|
||||
};
|
||||
Todo: {
|
||||
/** @description Whether the default branch has a TODO.md at its root. */
|
||||
@@ -875,8 +899,11 @@ export interface components {
|
||||
* @description The task's latest event when the snapshot was started: the tree holds at least the work up to it.
|
||||
*/
|
||||
event_seq: number;
|
||||
/** @enum {string} */
|
||||
trigger: "tool_call" | "turn_end" | "ask_human" | "timer";
|
||||
/**
|
||||
* @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.
|
||||
* @enum {string}
|
||||
*/
|
||||
trigger: "message" | "turn_end" | "tool_call" | "ask_human" | "timer";
|
||||
/** Format: date-time */
|
||||
created_at: string;
|
||||
};
|
||||
@@ -901,6 +928,10 @@ export interface components {
|
||||
created_by: string;
|
||||
/** Format: date-time */
|
||||
created_at: 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_from?: string;
|
||||
/** @description With forked_from: the vendor's id of the last message the fork keeps. */
|
||||
forked_at?: string;
|
||||
};
|
||||
SessionCreate: {
|
||||
prompt: string;
|
||||
@@ -1887,6 +1918,32 @@ export interface operations {
|
||||
404: components["responses"]["Error"];
|
||||
};
|
||||
};
|
||||
forkSnapshot: {
|
||||
parameters: {
|
||||
query?: never;
|
||||
header?: never;
|
||||
path: {
|
||||
taskId: string;
|
||||
n: number;
|
||||
};
|
||||
cookie?: never;
|
||||
};
|
||||
requestBody?: never;
|
||||
responses: {
|
||||
/** @description The new task. */
|
||||
201: {
|
||||
headers: {
|
||||
[name: string]: unknown;
|
||||
};
|
||||
content: {
|
||||
"application/json": components["schemas"]["Task"];
|
||||
};
|
||||
};
|
||||
400: components["responses"]["Error"];
|
||||
404: components["responses"]["Error"];
|
||||
409: components["responses"]["Error"];
|
||||
};
|
||||
};
|
||||
listSessions: {
|
||||
parameters: {
|
||||
query?: never;
|
||||
|
||||
Reference in New Issue
Block a user