@codetreker/daynight 0.32.1 → 0.38.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +266 -68
- package/dist/api/client.d.ts +7 -1
- package/dist/api/client.js +117 -21
- package/dist/api/client.js.map +1 -1
- package/dist/api/json-source.d.ts +3 -0
- package/dist/api/json-source.js +113 -0
- package/dist/api/json-source.js.map +1 -0
- package/dist/api/parse.d.ts +2 -1
- package/dist/api/parse.js +16 -1
- package/dist/api/parse.js.map +1 -1
- package/dist/api/thread.d.ts +6 -0
- package/dist/api/thread.js +79 -0
- package/dist/api/thread.js.map +1 -0
- package/dist/api/types.d.ts +50 -0
- package/dist/cli/application.js +12 -2
- package/dist/cli/application.js.map +1 -1
- package/dist/cli/context.d.ts +9 -1
- package/dist/cli/context.js +3 -1
- package/dist/cli/context.js.map +1 -1
- package/dist/cli/schema.js +10 -10
- package/dist/cli/schema.js.map +1 -1
- package/dist/commands/cleanup-operation.d.ts +3 -0
- package/dist/commands/cleanup-operation.js +12 -0
- package/dist/commands/cleanup-operation.js.map +1 -0
- package/dist/commands/controller/provider-display.d.ts +2 -0
- package/dist/commands/controller/provider-display.js +63 -0
- package/dist/commands/controller/provider-display.js.map +1 -0
- package/dist/commands/controller/providers/projection.js +12 -0
- package/dist/commands/controller/providers/projection.js.map +1 -1
- package/dist/commands/controller/runtime.js +4 -2
- package/dist/commands/controller/runtime.js.map +1 -1
- package/dist/commands/server/runtime.d.ts +10 -1
- package/dist/commands/server/runtime.js +24 -7
- package/dist/commands/server/runtime.js.map +1 -1
- package/dist/commands/skill/skills/using-daynight/SKILL.md +5 -3
- package/dist/commands/skill/skills/using-daynight/references/authorization.md +2 -2
- package/dist/commands/skill/skills/using-daynight/references/autopilot-managed-task.md +4 -3
- package/dist/commands/skill/skills/using-daynight/references/handbook.md +4 -1
- package/dist/commands/skill/skills/using-daynight/references/handoff.md +25 -15
- package/dist/commands/skill/skills/using-daynight/references/task-content.md +7 -4
- package/dist/commands/skill/skills/using-daynight/references/task-management.md +56 -6
- package/dist/commands/skill/skills/using-daynight/references/write-safety.md +22 -3
- package/dist/commands/skill/usage.md +84 -7
- package/dist/commands/task/command.js +28 -3
- package/dist/commands/task/command.js.map +1 -1
- package/dist/commands/task/definition.js +40 -6
- package/dist/commands/task/definition.js.map +1 -1
- package/dist/commands/task/rendering.js +4 -0
- package/dist/commands/task/rendering.js.map +1 -1
- package/dist/commands/task/thread-diagnostics.d.ts +5 -0
- package/dist/commands/task/thread-diagnostics.js +32 -0
- package/dist/commands/task/thread-diagnostics.js.map +1 -0
- package/dist/commands/task/thread-rendering.d.ts +8 -0
- package/dist/commands/task/thread-rendering.js +80 -0
- package/dist/commands/task/thread-rendering.js.map +1 -0
- package/dist/commands/task/thread.d.ts +11 -0
- package/dist/commands/task/thread.js +74 -0
- package/dist/commands/task/thread.js.map +1 -0
- package/dist/commands/worker/backends/session-api.d.ts +1 -1
- package/dist/commands/worker/backends/session-api.js +4 -4
- package/dist/commands/worker/backends/session-api.js.map +1 -1
- package/dist/commands/worker/backends/web-store.d.ts +4 -0
- package/dist/commands/worker/backends/web-store.js +40 -6
- package/dist/commands/worker/backends/web-store.js.map +1 -1
- package/dist/commands/worker/backends/web.js +248 -127
- package/dist/commands/worker/backends/web.js.map +1 -1
- package/dist/commands/worker/cleanup-error.d.ts +5 -0
- package/dist/commands/worker/cleanup-error.js +9 -0
- package/dist/commands/worker/cleanup-error.js.map +1 -0
- package/dist/commands/worker/cleanup-schedule.d.ts +3 -0
- package/dist/commands/worker/cleanup-schedule.js +11 -0
- package/dist/commands/worker/cleanup-schedule.js.map +1 -0
- package/dist/commands/worker/cleanup.js +47 -31
- package/dist/commands/worker/cleanup.js.map +1 -1
- package/dist/commands/worker/coordinator.js +186 -63
- package/dist/commands/worker/coordinator.js.map +1 -1
- package/dist/commands/worker/execution.d.ts +1 -1
- package/dist/commands/worker/execution.js +2 -2
- package/dist/commands/worker/execution.js.map +1 -1
- package/dist/commands/worker/prompts.js +2 -2
- package/dist/commands/worker/prompts.js.map +1 -1
- package/dist/commands/worker/remote.js +3 -4
- package/dist/commands/worker/remote.js.map +1 -1
- package/dist/commands/worker/remove-worktree-contents.d.ts +3 -0
- package/dist/commands/worker/remove-worktree-contents.js +106 -0
- package/dist/commands/worker/remove-worktree-contents.js.map +1 -0
- package/dist/commands/worker/runtime.js +1 -1
- package/dist/commands/worker/runtime.js.map +1 -1
- package/dist/commands/worker/sqlite/006-cleanup-schedules.sql +14 -0
- package/dist/commands/worker/store.d.ts +5 -1
- package/dist/commands/worker/store.js +53 -0
- package/dist/commands/worker/store.js.map +1 -1
- package/dist/commands/worker/types.d.ts +10 -0
- package/dist/commands/worker/worktrees.js +70 -24
- package/dist/commands/worker/worktrees.js.map +1 -1
- package/dist/platform/diagnostics.d.ts +5 -0
- package/dist/platform/diagnostics.js +12 -0
- package/dist/platform/diagnostics.js.map +1 -1
- package/dist/session/codex-subagent-activity.d.ts +4 -0
- package/dist/session/codex-subagent-activity.js +13 -0
- package/dist/session/codex-subagent-activity.js.map +1 -0
- package/dist/session/v2/archive.d.ts +6 -0
- package/dist/session/v2/archive.js +163 -0
- package/dist/session/v2/archive.js.map +1 -0
- package/dist/session/v2/protocol.d.ts +19 -0
- package/dist/session/v2/protocol.js +260 -0
- package/dist/session/v2/protocol.js.map +1 -0
- package/dist/session/v2/responsibility.d.ts +3 -0
- package/dist/session/v2/responsibility.js +12 -0
- package/dist/session/v2/responsibility.js.map +1 -0
- package/dist/session/v2/types.d.ts +293 -0
- package/dist/session/v2/types.js +2 -0
- package/dist/session/v2/types.js.map +1 -0
- package/dist/session/v2/values.d.ts +59 -0
- package/dist/session/v2/values.js +201 -0
- package/dist/session/v2/values.js.map +1 -0
- package/package.json +5 -3
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { ApiError } from "../../api/client.js";
|
|
2
|
+
import { UsageError } from "../../cli/context.js";
|
|
3
|
+
import { PublicDiagnosticError } from "../../platform/diagnostics.js";
|
|
4
|
+
import { terminalText } from "../../platform/terminal.js";
|
|
5
|
+
const codes = new Set(["invalid_input", "payload_too_large", "unauthenticated", "forbidden", "not_found", "message_not_found", "task_deleted", "claim_conflict", "clock_not_advanced", "message_outcome_unknown", "internal_error"]);
|
|
6
|
+
const safeText = (value) => terminalText(value).replace(/[\u061c\u200e\u200f\u202a-\u202e\u2066-\u2069]/gu, (character) => `\\u${character.codePointAt(0).toString(16).padStart(4, "0")}`);
|
|
7
|
+
const apiFailures = (cause, seen = new Set()) => {
|
|
8
|
+
if (!(cause instanceof Error) || seen.has(cause))
|
|
9
|
+
return [];
|
|
10
|
+
seen.add(cause);
|
|
11
|
+
return [...(cause instanceof ApiError ? [cause] : []), ...(cause instanceof AggregateError ? cause.errors.flatMap((error) => apiFailures(error, seen)) : []), ...apiFailures(cause.cause, seen)];
|
|
12
|
+
};
|
|
13
|
+
export const classifyThreadPostFailure = (cause) => {
|
|
14
|
+
const failures = apiFailures(cause);
|
|
15
|
+
return failures.some((error) => error.confirmedMessageId !== undefined) ? "confirmed" : failures.some((error) => error.outcomeUnconfirmed) ? "unknown" : "failed";
|
|
16
|
+
};
|
|
17
|
+
export class ThreadCommandError extends PublicDiagnosticError {
|
|
18
|
+
constructor(cause, operation, phase, projectId, taskId) {
|
|
19
|
+
const outcome = operation === "post" ? classifyThreadPostFailure(cause) : "failed";
|
|
20
|
+
const failures = apiFailures(cause);
|
|
21
|
+
const api = failures.find((error) => error.confirmedMessageId !== undefined) ?? failures.find((error) => error.outcomeUnconfirmed) ?? failures[0];
|
|
22
|
+
const message = cause instanceof UsageError ? `${cause.message} Run ${cause.helpCommand} for usage.`
|
|
23
|
+
: outcome === "confirmed" ? `Message posted. Id: ${api.confirmedMessageId}\nThe message is confirmed, but local response cleanup failed.`
|
|
24
|
+
: outcome === "unknown" ? "The posting outcome is unknown.\nRead the thread before sending the message again."
|
|
25
|
+
: phase === "prepare" ? "Could not prepare the Thread request. Check configuration and authentication; run daynight login if needed."
|
|
26
|
+
: `Thread ${operation} failed.`;
|
|
27
|
+
const context = [`source=cli`, `operation=task.thread.${operation}`, `phase=${api?.phase ?? phase}`, ...(projectId === undefined ? [] : [`projectId=${projectId}`]), ...(taskId === undefined ? [] : [`taskId=${taskId}`]), ...(api?.status === undefined ? [] : [`status=${api.status}`]), ...(api?.code === undefined ? [] : [`code=${codes.has(api.code) ? api.code : "server_error"}`]), ...(api?.requestId === undefined ? [] : [`requestId=${safeText(api.requestId)}`])];
|
|
28
|
+
super(`${message}${api?.status === 401 ? " Run daynight login to authenticate." : api?.code === "claim_conflict" ? " Verify the current claim before posting again." : ""}\n${context.join(" ")}`, cause instanceof UsageError ? 2 : 1, { cause });
|
|
29
|
+
this.name = "ThreadCommandError";
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=thread-diagnostics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thread-diagnostics.js","sourceRoot":"","sources":["../../../src/commands/task/thread-diagnostics.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ThreadMessage, ThreadPage } from "../../api/types.js";
|
|
2
|
+
export declare const THREAD_OUTPUT_BYTES = 262144;
|
|
3
|
+
export declare const MIN_THREAD_WIRE_FIXED_BYTES = 183;
|
|
4
|
+
export declare const MAX_THREAD_RENDER_FIXED_BYTES = 473;
|
|
5
|
+
export declare const encodeThreadBody: (value: string, singleLine?: boolean) => string;
|
|
6
|
+
export declare const renderThreadMessage: (message: ThreadMessage) => string;
|
|
7
|
+
export declare const renderThreadPage: (page: ThreadPage, direction: "latest" | "before" | "after", check?: () => void) => string;
|
|
8
|
+
export declare const renderThreadPostReceipt: (message: ThreadMessage) => string;
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { ProtocolError } from "../../api/validation.js";
|
|
2
|
+
import { terminalText } from "../../platform/terminal.js";
|
|
3
|
+
export const THREAD_OUTPUT_BYTES = 262_144;
|
|
4
|
+
export const MIN_THREAD_WIRE_FIXED_BYTES = 183;
|
|
5
|
+
export const MAX_THREAD_RENDER_FIXED_BYTES = 473;
|
|
6
|
+
const separator = "------------------------------";
|
|
7
|
+
const betweenMessages = `\n\n${separator}\n\n`;
|
|
8
|
+
const beforeNotice = "... Has more messages before";
|
|
9
|
+
const afterNotice = "Has more messages after...";
|
|
10
|
+
const bidi = /[\u061c\u200e\u200f\u202a-\u202e\u2066-\u2069]/u;
|
|
11
|
+
const unsafeBody = /[\u0000-\u0008\u000b-\u001f\u007f-\u009f\u2028\u2029]/u;
|
|
12
|
+
const unicodeEscape = (character) => `\\u${character.codePointAt(0).toString(16).padStart(4, "0")}`;
|
|
13
|
+
export const encodeThreadBody = (value, singleLine = false) => Array.from(value, (character) => {
|
|
14
|
+
if (character === "\\")
|
|
15
|
+
return "\\\\";
|
|
16
|
+
if (character === "\r")
|
|
17
|
+
return "\\r";
|
|
18
|
+
if (character === "\u007f")
|
|
19
|
+
return "\\x7f";
|
|
20
|
+
if (singleLine && character === '"')
|
|
21
|
+
return '\\"';
|
|
22
|
+
return unsafeBody.test(character) || bidi.test(character) ? unicodeEscape(character) : character;
|
|
23
|
+
}).join("");
|
|
24
|
+
const encodeThreadLabel = (value) => Array.from(value, (character) => character === "\u007f" ? "\\x7f" : bidi.test(character) ? unicodeEscape(character) : terminalText(character)).join("");
|
|
25
|
+
export const renderThreadMessage = (message) => {
|
|
26
|
+
const { author } = message;
|
|
27
|
+
const name = author.displayName === null || author.displayName === "" ? "Account" : encodeThreadLabel(author.displayName);
|
|
28
|
+
const execution = author.execution;
|
|
29
|
+
const body = message.body.includes("\n")
|
|
30
|
+
? `Message:\n${encodeThreadBody(message.body).split("\n").map((line) => ` ${line}`).join("\n")}`
|
|
31
|
+
: `Message: "${encodeThreadBody(message.body, true)}"`;
|
|
32
|
+
return [
|
|
33
|
+
`Id: ${message.id}`,
|
|
34
|
+
`Author: ${name}${author.Agent ? "'s Agent" : ""} (${author.userId})`,
|
|
35
|
+
...(author.Agent ? ["Agent: True"] : []),
|
|
36
|
+
`CreatedAt: ${message.createdAt}`,
|
|
37
|
+
...(message.replyTo === undefined ? [] : [`ReplyTo: ${message.replyTo}`]),
|
|
38
|
+
...(execution === undefined ? [] : [
|
|
39
|
+
`Execution ClaimId: ${execution.claimId}`,
|
|
40
|
+
`Execution WorkerId: ${execution.workerId}`,
|
|
41
|
+
`Execution Provider: ${execution.provider}`,
|
|
42
|
+
]),
|
|
43
|
+
body,
|
|
44
|
+
].join("\n");
|
|
45
|
+
};
|
|
46
|
+
const composePage = (blocks, before, after) => `${before ? `${beforeNotice}\n\n` : ""}${separator}\n\n${blocks.join(betweenMessages)}\n\n${separator}\n${after ? `\n${afterNotice}\n` : ""}`;
|
|
47
|
+
export const renderThreadPage = (page, direction, check) => {
|
|
48
|
+
check?.();
|
|
49
|
+
if (page.items.length === 0)
|
|
50
|
+
return direction === "after" ? "No new messages.\n" : "No messages.\n";
|
|
51
|
+
const blocks = page.items.map((message) => {
|
|
52
|
+
check?.();
|
|
53
|
+
const block = renderThreadMessage(message);
|
|
54
|
+
check?.();
|
|
55
|
+
return block;
|
|
56
|
+
});
|
|
57
|
+
const prefixBytes = [0];
|
|
58
|
+
for (const block of blocks)
|
|
59
|
+
prefixBytes.push(prefixBytes[prefixBytes.length - 1] + Buffer.byteLength(block, "utf8"));
|
|
60
|
+
for (let count = blocks.length; count > 0; count--) {
|
|
61
|
+
check?.();
|
|
62
|
+
const start = direction === "after" ? 0 : blocks.length - count;
|
|
63
|
+
const end = start + count;
|
|
64
|
+
const before = page.hasMoreBefore || start > 0;
|
|
65
|
+
const after = page.hasMoreAfter || end < blocks.length;
|
|
66
|
+
const size = prefixBytes[end] - prefixBytes[start]
|
|
67
|
+
+ (count - 1) * Buffer.byteLength(betweenMessages, "utf8")
|
|
68
|
+
+ Buffer.byteLength(composePage([""], before, after), "utf8");
|
|
69
|
+
if (size > THREAD_OUTPUT_BYTES)
|
|
70
|
+
continue;
|
|
71
|
+
const output = composePage(blocks.slice(start, end), before, after);
|
|
72
|
+
if (Buffer.byteLength(output, "utf8") !== size)
|
|
73
|
+
throw new ProtocolError("The thread output byte calculation is inconsistent.");
|
|
74
|
+
check?.();
|
|
75
|
+
return output;
|
|
76
|
+
}
|
|
77
|
+
throw new ProtocolError("A complete thread message exceeds the terminal output byte limit.");
|
|
78
|
+
};
|
|
79
|
+
export const renderThreadPostReceipt = (message) => `Message posted.\nId: ${message.id}\n${message.replyTo === undefined ? "" : `ReplyTo: ${message.replyTo}\n`}`;
|
|
80
|
+
//# sourceMappingURL=thread-rendering.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thread-rendering.js","sourceRoot":"","sources":["../../../src/commands/task/thread-rendering.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { PostThreadMessageInput, ThreadReadQuery } from "../../api/types.js";
|
|
2
|
+
import type { CliContext } from "../../cli/context.js";
|
|
3
|
+
import type { ParsedCommand } from "../../cli/schema.js";
|
|
4
|
+
import type { TaskCommandDependencies } from "./command.js";
|
|
5
|
+
type Command = Extract<ParsedCommand, {
|
|
6
|
+
kind: "run";
|
|
7
|
+
}>;
|
|
8
|
+
export declare const compileThreadRead: (command: Command) => ThreadReadQuery;
|
|
9
|
+
export declare const compileThreadPost: (command: Command) => PostThreadMessageInput;
|
|
10
|
+
export declare const runTaskThreadCommand: (command: Command, context: CliContext, dependencies: TaskCommandDependencies) => Promise<void>;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { canonicalId } from "../../api/validation.js";
|
|
2
|
+
import { UsageError } from "../../cli/context.js";
|
|
3
|
+
import { PublicDiagnosticError } from "../../platform/diagnostics.js";
|
|
4
|
+
import { isNonemptyText } from "../../platform/text.js";
|
|
5
|
+
import { ThreadCommandError } from "./thread-diagnostics.js";
|
|
6
|
+
import { renderThreadPage, renderThreadPostReceipt } from "./thread-rendering.js";
|
|
7
|
+
const parseId = (value, label, help) => {
|
|
8
|
+
const parsed = canonicalId(value);
|
|
9
|
+
if (parsed === null)
|
|
10
|
+
throw new UsageError(`${label} must be a hyphenated UUID.`, help);
|
|
11
|
+
return parsed;
|
|
12
|
+
};
|
|
13
|
+
const optionalId = (command, option, help) => {
|
|
14
|
+
const value = command.options.get(option);
|
|
15
|
+
return value === undefined ? undefined : parseId(value, option.slice(2), help);
|
|
16
|
+
};
|
|
17
|
+
export const compileThreadRead = (command) => {
|
|
18
|
+
const help = `${command.path.join(" ")} --help`;
|
|
19
|
+
const beforeId = optionalId(command, "--before-id", help), afterId = optionalId(command, "--after-id", help);
|
|
20
|
+
if (beforeId !== undefined && afterId !== undefined)
|
|
21
|
+
throw new UsageError("--before-id and --after-id are mutually exclusive.", help);
|
|
22
|
+
const value = command.options.get("--count");
|
|
23
|
+
if (value !== undefined && (!/^[0-9]+$/.test(value) || Number(value) < 1 || Number(value) > 100))
|
|
24
|
+
throw new UsageError("--count must be a decimal integer from 1 to 100.", help);
|
|
25
|
+
return { count: value === undefined ? 20 : Number(value), details: command.options.has("--details"), ...(beforeId === undefined ? {} : { beforeId }), ...(afterId === undefined ? {} : { afterId }) };
|
|
26
|
+
};
|
|
27
|
+
export const compileThreadPost = (command) => {
|
|
28
|
+
const help = `${command.path.join(" ")} --help`;
|
|
29
|
+
const body = command.options.get("--body");
|
|
30
|
+
if (!isNonemptyText(body) || Buffer.byteLength(body, "utf8") > 65536)
|
|
31
|
+
throw new UsageError("--body must be nonempty text without NUL or invalid Unicode, at most 65536 UTF-8 bytes.", help);
|
|
32
|
+
const replyTo = optionalId(command, "--reply-to", help), claimId = optionalId(command, "--claim-id", help);
|
|
33
|
+
return { body, ...(replyTo === undefined ? {} : { replyTo }), ...(claimId === undefined ? {} : { claimId }) };
|
|
34
|
+
};
|
|
35
|
+
export const runTaskThreadCommand = async (command, context, dependencies) => {
|
|
36
|
+
const name = command.command.name;
|
|
37
|
+
let projectId, taskId;
|
|
38
|
+
let phase = "prepare";
|
|
39
|
+
let confirmedMessageId;
|
|
40
|
+
try {
|
|
41
|
+
const help = `${command.path.join(" ")} --help`;
|
|
42
|
+
taskId = parseId(command.values[0], "task-id", help);
|
|
43
|
+
projectId = optionalId(command, "--project", help);
|
|
44
|
+
const read = name === "read" ? compileThreadRead(command) : undefined;
|
|
45
|
+
const post = name === "post" ? compileThreadPost(command) : undefined;
|
|
46
|
+
await dependencies.runServerCommand(context, async ({ api, operation, serverUrl }) => {
|
|
47
|
+
operation.check();
|
|
48
|
+
if (projectId === undefined)
|
|
49
|
+
projectId = (await dependencies.resolveProject({ serverUrl, operation, api, workingDirectory: context.workingDirectory() })).id;
|
|
50
|
+
operation.check();
|
|
51
|
+
phase = "request";
|
|
52
|
+
if (read !== undefined) {
|
|
53
|
+
const page = await api.readTaskThread(projectId, taskId, read);
|
|
54
|
+
operation.check();
|
|
55
|
+
phase = "render";
|
|
56
|
+
const output = renderThreadPage(page, read.afterId === undefined ? read.beforeId === undefined ? "latest" : "before" : "after", () => operation.check());
|
|
57
|
+
phase = "output";
|
|
58
|
+
await context.stdoutBytes(Buffer.from(output, "utf8"), operation.signal);
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
const message = await api.postTaskThreadMessage(projectId, taskId, post);
|
|
62
|
+
confirmedMessageId = message.id;
|
|
63
|
+
return { kind: "confirmed-mutation", output: renderThreadPostReceipt(message), identity: { projectId, taskId: taskId, messageId: message.id } };
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
catch (cause) {
|
|
67
|
+
if (cause instanceof PublicDiagnosticError)
|
|
68
|
+
throw cause;
|
|
69
|
+
if (confirmedMessageId !== undefined)
|
|
70
|
+
throw new PublicDiagnosticError(`Message posted. Id: ${confirmedMessageId}\nThe message is confirmed, but local receipt preparation failed.`, 1, { cause });
|
|
71
|
+
throw new ThreadCommandError(cause, name, phase, projectId, taskId);
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
//# sourceMappingURL=thread.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thread.js","sourceRoot":"","sources":["../../../src/commands/task/thread.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ export declare const createWorkerSessionApi: (serverOrigin: string, serverToken:
|
|
|
6
6
|
projectId: string;
|
|
7
7
|
taskId: string;
|
|
8
8
|
claimId: string;
|
|
9
|
-
}, signal: AbortSignal) => Promise<void>;
|
|
9
|
+
}, signal: AbortSignal, timeoutMs?: number) => Promise<void>;
|
|
10
10
|
verifySupport: (provider: string, signal: AbortSignal) => Promise<void>;
|
|
11
11
|
register: (task: LocalTask, execution: WebExecutionState, signal: AbortSignal) => Promise<{
|
|
12
12
|
readonly claimId: string;
|
|
@@ -4,8 +4,8 @@ import { randomUUID } from "node:crypto";
|
|
|
4
4
|
import { SESSION_PROTOCOL } from "../../../session/protocol.js";
|
|
5
5
|
import { parseRegistrationResponse, parseControllerGrantResponse, parseCurrentSessionResponse } from "../../../session/controller-protocol.js";
|
|
6
6
|
export const createWorkerSessionApi = (serverOrigin, serverToken) => {
|
|
7
|
-
const request = async (target, body, signal, method = "POST") => {
|
|
8
|
-
const response = await fetch(`${serverOrigin}${target}`, { method, headers: { authorization: `Bearer ${serverToken}`, "content-type": "application/json" }, ...(body === undefined ? {} : { body: JSON.stringify(body) }), signal: AbortSignal.any([signal, AbortSignal.timeout(
|
|
7
|
+
const request = async (target, body, signal, method = "POST", timeoutMs = 30_000) => {
|
|
8
|
+
const response = await fetch(`${serverOrigin}${target}`, { method, headers: { authorization: `Bearer ${serverToken}`, "content-type": "application/json" }, ...(body === undefined ? {} : { body: JSON.stringify(body) }), signal: AbortSignal.any([signal, AbortSignal.timeout(timeoutMs)]) });
|
|
9
9
|
const chunks = [];
|
|
10
10
|
let size = 0;
|
|
11
11
|
if (response.body !== null) {
|
|
@@ -39,8 +39,8 @@ export const createWorkerSessionApi = (serverOrigin, serverToken) => {
|
|
|
39
39
|
};
|
|
40
40
|
const prefix = (task) => `/api/v1/projects/${task.projectId}/tasks/${task.taskId}/sessions`;
|
|
41
41
|
return {
|
|
42
|
-
verifyUnregistered: async (identity, signal) => {
|
|
43
|
-
const result = parseCurrentSessionResponse(await request(`/api/v1/projects/${identity.projectId}/tasks/${identity.taskId}/sessions/current`, undefined, signal, "GET"));
|
|
42
|
+
verifyUnregistered: async (identity, signal, timeoutMs = 30_000) => {
|
|
43
|
+
const result = parseCurrentSessionResponse(await request(`/api/v1/projects/${identity.projectId}/tasks/${identity.taskId}/sessions/current`, undefined, signal, "GET", timeoutMs));
|
|
44
44
|
if (result.status !== "not_registered" || result.claimId !== identity.claimId)
|
|
45
45
|
throw new Error("The original Web launch provenance is missing; an existing or superseded Session cannot be recreated or deleted. Restore its execution evidence.");
|
|
46
46
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-api.js","sourceRoot":"","sources":["../../../../src/commands/worker/backends/session-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,4BAA4B,EAAE,2BAA2B,EAAuF,MAAM,yCAAyC,CAAC;AAEpO,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,YAAoB,EAAE,WAAmB,EAAE,EAAE;IAClF,MAAM,OAAO,GAAG,KAAK,EAAE,MAAc,EAAE,IAAa,EAAE,MAAmB,EAAE,MAAM,GAAG,MAAM,EAAoB,EAAE;
|
|
1
|
+
{"version":3,"file":"session-api.js","sourceRoot":"","sources":["../../../../src/commands/worker/backends/session-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type SqliteMigrationReporter } from "../../../platform/sqlite-access.js";
|
|
2
2
|
import type { ExecutionConfiguration as FrozenExecutionConfiguration, WorkerProject, ResourceOwner } from "../types.js";
|
|
3
|
+
import type { ControllerSnapshot } from "../../controller/lifecycle-store.js";
|
|
3
4
|
import type { LocalTask, ClaimIdentity, CleanupState, WorktreeBinding, WebExecutionState } from "./web-types.js";
|
|
4
5
|
export declare const openWebExecutionStore: (filename: string, options?: {
|
|
5
6
|
onMigration?: SqliteMigrationReporter;
|
|
@@ -17,7 +18,9 @@ export declare const openWebExecutionStore: (filename: string, options?: {
|
|
|
17
18
|
}, now: number) => LocalTask;
|
|
18
19
|
clearShutdown: (identity: ClaimIdentity, now: number) => LocalTask;
|
|
19
20
|
beginRecovery: (identity: ClaimIdentity, now: number) => LocalTask;
|
|
21
|
+
pauseRecovery: (identity: ClaimIdentity, reason: string, now: number) => LocalTask;
|
|
20
22
|
authorizeRecoveryRetry: (identity: ClaimIdentity, now: number) => LocalTask;
|
|
23
|
+
completeRecoveryRetry: (identity: ClaimIdentity, observed: ControllerSnapshot, now: number) => LocalTask;
|
|
21
24
|
bindNativeSession: (identity: ClaimIdentity, reference: {
|
|
22
25
|
source: "controller";
|
|
23
26
|
sessionId: string;
|
|
@@ -31,6 +34,7 @@ export declare const openWebExecutionStore: (filename: string, options?: {
|
|
|
31
34
|
nativeSessionId: string | null;
|
|
32
35
|
nativeStopped: boolean;
|
|
33
36
|
}, now: number) => LocalTask;
|
|
37
|
+
retryUnsubmittedWebGeneration: (identity: ClaimIdentity, previous: ControllerSnapshot, now: number) => LocalTask;
|
|
34
38
|
confirmBackendResourcesClosed: (identity: ClaimIdentity, proof: {
|
|
35
39
|
controllerStopped: true;
|
|
36
40
|
endpointClosed: true;
|
|
@@ -77,15 +77,35 @@ export const openWebExecutionStore = (filename, options = {}) => {
|
|
|
77
77
|
if (task.status !== "active")
|
|
78
78
|
throw new Error("Only an active execution can recover.");
|
|
79
79
|
const recovery = task.recovery;
|
|
80
|
-
if (recovery.
|
|
81
|
-
throw new Error("
|
|
80
|
+
if (recovery.retryAuthorized)
|
|
81
|
+
throw new Error("An explicit retry must consume its authorization with the original generation transition.");
|
|
82
|
+
if (recovery.pauseReason !== null)
|
|
83
|
+
return task;
|
|
82
84
|
if (task.configuration === null)
|
|
83
85
|
throw new Error("The original frozen execution configuration is missing.");
|
|
84
|
-
if (recovery.count >= task.configuration.recoveryLimit
|
|
85
|
-
|
|
86
|
+
if (recovery.count >= task.configuration.recoveryLimit)
|
|
87
|
+
return { ...task, recovery: { ...recovery, pauseReason: "The execution recovery budget is exhausted.", retryAuthorized: false } };
|
|
86
88
|
return { ...task, recovery: { count: integer(recovery.count + 1, "Recovery count"), pauseReason: null, retryAuthorized: false } };
|
|
87
89
|
}),
|
|
88
|
-
|
|
90
|
+
pauseRecovery: (identity, reason, now) => change(identity, now, task => {
|
|
91
|
+
if (task.status !== "active")
|
|
92
|
+
throw new Error("Only an active execution can pause recovery.");
|
|
93
|
+
return { ...task, recovery: { ...task.recovery, pauseReason: text(reason, "Recovery pause reason"), retryAuthorized: false } };
|
|
94
|
+
}),
|
|
95
|
+
authorizeRecoveryRetry: (identity, now) => change(identity, now, task => {
|
|
96
|
+
requireOrdinary(task);
|
|
97
|
+
if (task.recovery.retryAuthorized)
|
|
98
|
+
return task;
|
|
99
|
+
// A reason marks unconsumed authorization; clearing it with a new generation marks the one in-flight attempt.
|
|
100
|
+
return { ...task, recovery: { ...task.recovery, pauseReason: task.recovery.pauseReason ?? "An explicit recovery retry is awaiting original process stop verification.", retryAuthorized: true } };
|
|
101
|
+
}),
|
|
102
|
+
completeRecoveryRetry: (identity, observed, now) => change(identity, now, task => {
|
|
103
|
+
requireOrdinary(task);
|
|
104
|
+
const execution = task.webExecution;
|
|
105
|
+
if (execution === null || (observed.lifecycle !== "ready" && observed.lifecycle !== "working") || observed.executionId !== execution.executionId || observed.claimId !== task.claimId || observed.executionGeneration !== execution.executionGeneration || observed.controllerInstanceId !== execution.controllerInstanceId || observed.nativeSessionId === null || observed.nativeSessionId !== task.resources.nativeSession?.sessionId || task.recovery.pauseReason !== null)
|
|
106
|
+
throw new Error("Explicit recovery completion requires the ready original generation and native identity.");
|
|
107
|
+
return { ...task, recovery: { ...task.recovery, retryAuthorized: false } };
|
|
108
|
+
}),
|
|
89
109
|
bindNativeSession: (identity, reference, now) => change(identity, now, task => {
|
|
90
110
|
id(reference.sessionId, "Native session");
|
|
91
111
|
if (task.resources.nativeSession !== null && task.resources.nativeSession.sessionId !== reference.sessionId)
|
|
@@ -130,7 +150,21 @@ export const openWebExecutionStore = (filename, options = {}) => {
|
|
|
130
150
|
const execution = task.webExecution;
|
|
131
151
|
if (execution == null || task.configuration?.agentControlMode !== "web" || previous.executionGeneration !== execution.executionGeneration || previous.controllerInstanceId !== execution.controllerInstanceId || !previous.nativeStopped || previous.nativeSessionId === null || previous.nativeSessionId !== task.resources.nativeSession?.sessionId)
|
|
132
152
|
throw new Error("Web recovery requires the exact stopped generation and native identity.");
|
|
133
|
-
|
|
153
|
+
if (task.recovery.pauseReason !== null && !task.recovery.retryAuthorized)
|
|
154
|
+
throw new Error("The paused execution requires an explicit recovery retry.");
|
|
155
|
+
if (task.recovery.retryAuthorized && task.recovery.pauseReason === null)
|
|
156
|
+
throw new Error("The authorized recovery generation is still awaiting a successful observation.");
|
|
157
|
+
// Persist consumption and its sole replacement identity together across Worker interruption.
|
|
158
|
+
const recovery = task.recovery.retryAuthorized ? { count: integer(task.recovery.count + 1, "Recovery count"), pauseReason: null, retryAuthorized: true } : task.recovery;
|
|
159
|
+
return { ...task, recovery, webExecution: { ...execution, executionGeneration: String(BigInt(execution.executionGeneration) + 1n), controllerInstanceId: randomUUID(), launchId: randomUUID(), launchSubmission: "not-submitted", controllerProcess: null, nativeProcesses: [], restartAfterShutdown: false, cleanupOperationId: null, ticketPath: null, activity: "initializing" } };
|
|
160
|
+
}),
|
|
161
|
+
retryUnsubmittedWebGeneration: (identity, previous, now) => change(identity, now, task => {
|
|
162
|
+
requireOrdinary(task);
|
|
163
|
+
const execution = task.webExecution;
|
|
164
|
+
if (execution === null || task.status !== "active" || !task.recovery.retryAuthorized || task.recovery.pauseReason === null || execution.launchSubmission !== "not-submitted" || execution.controllerProcess !== null || execution.nativeProcesses.length !== 0 || previous.executionId !== execution.executionId || previous.claimId !== task.claimId || previous.sessionId !== execution.sessionId || String(BigInt(previous.executionGeneration) + 1n) !== execution.executionGeneration || previous.controllerInstanceId === execution.controllerInstanceId || previous.nativeSessionId === null || previous.nativeSessionId !== task.resources.nativeSession?.sessionId || previous.lifecycle !== "stopped" || !previous.nativeStopped || previous.stoppedAt === null || previous.controllerProcess === null)
|
|
165
|
+
throw new Error("Unsubmitted recovery requires the exact preceding stopped generation and no current launch evidence.");
|
|
166
|
+
// A failed preparation retains the allocated launch intent; another explicit allowance cannot allocate it again.
|
|
167
|
+
return { ...task, recovery: { count: integer(task.recovery.count + 1, "Recovery count"), pauseReason: null, retryAuthorized: true }, webExecution: { ...execution, restartAfterShutdown: false, activity: "initializing" } };
|
|
134
168
|
}),
|
|
135
169
|
confirmBackendResourcesClosed: (identity, proof, now) => change(identity, now, task => {
|
|
136
170
|
const cleanup = needCleanup(task);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-store.js","sourceRoot":"","sources":["../../../../src/commands/worker/backends/web-store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"web-store.js","sourceRoot":"","sources":["../../../../src/commands/worker/backends/web-store.ts"],"names":[],"mappings":"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"}
|