@kenkaiiii/ggcoder 5.77.0 → 5.79.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.
Files changed (92) hide show
  1. package/dist/app-sidecar/autopilot-runner.js +2 -5
  2. package/dist/app-sidecar/autopilot-runner.js.map +1 -1
  3. package/dist/app-sidecar/goal-routes.d.ts +26 -0
  4. package/dist/app-sidecar/goal-routes.js +444 -0
  5. package/dist/app-sidecar/goal-routes.js.map +1 -0
  6. package/dist/app-sidecar/history-routes.d.ts +13 -0
  7. package/dist/app-sidecar/history-routes.js +36 -25
  8. package/dist/app-sidecar/history-routes.js.map +1 -1
  9. package/dist/app-sidecar/route-context.d.ts +12 -0
  10. package/dist/app-sidecar/run-control-routes.js +2 -1
  11. package/dist/app-sidecar/run-control-routes.js.map +1 -1
  12. package/dist/app-sidecar/session-routes.js +41 -0
  13. package/dist/app-sidecar/session-routes.js.map +1 -1
  14. package/dist/app-sidecar/session-types.d.ts +2 -0
  15. package/dist/app-sidecar/workspace-routes.js +3 -0
  16. package/dist/app-sidecar/workspace-routes.js.map +1 -1
  17. package/dist/app-sidecar.js +113 -9
  18. package/dist/app-sidecar.js.map +1 -1
  19. package/dist/core/acceptance-checks.js +17 -4
  20. package/dist/core/acceptance-checks.js.map +1 -1
  21. package/dist/core/agent-notifications.d.ts +1 -1
  22. package/dist/core/agent-session/verification-tracker.d.ts +5 -1
  23. package/dist/core/agent-session/verification-tracker.js +25 -6
  24. package/dist/core/agent-session/verification-tracker.js.map +1 -1
  25. package/dist/core/agent-session.d.ts +50 -0
  26. package/dist/core/agent-session.js +49 -11
  27. package/dist/core/agent-session.js.map +1 -1
  28. package/dist/core/ask-user.d.ts +11 -0
  29. package/dist/core/ask-user.js +6 -1
  30. package/dist/core/ask-user.js.map +1 -1
  31. package/dist/core/autopilot-cycle.d.ts +2 -0
  32. package/dist/core/autopilot-cycle.js +21 -2
  33. package/dist/core/autopilot-cycle.js.map +1 -1
  34. package/dist/core/context-files.d.ts +8 -0
  35. package/dist/core/context-files.js +46 -0
  36. package/dist/core/context-files.js.map +1 -0
  37. package/dist/core/goals-store.d.ts +208 -0
  38. package/dist/core/goals-store.js +520 -0
  39. package/dist/core/goals-store.js.map +1 -0
  40. package/dist/core/project-discovery.d.ts +7 -0
  41. package/dist/core/project-discovery.js +8 -2
  42. package/dist/core/project-discovery.js.map +1 -1
  43. package/dist/core/prompt-commands.js +29 -4
  44. package/dist/core/prompt-commands.js.map +1 -1
  45. package/dist/core/session-manager.d.ts +7 -1
  46. package/dist/core/session-manager.js +17 -7
  47. package/dist/core/session-manager.js.map +1 -1
  48. package/dist/core/session-storage.js +5 -1
  49. package/dist/core/session-storage.js.map +1 -1
  50. package/dist/core/subagent-manager.d.ts +51 -0
  51. package/dist/core/subagent-manager.js +95 -15
  52. package/dist/core/subagent-manager.js.map +1 -1
  53. package/dist/core/subagent-store.js +2 -1
  54. package/dist/core/subagent-store.js.map +1 -1
  55. package/dist/core/verification-evidence.d.ts +13 -2
  56. package/dist/core/verification-evidence.js +256 -3
  57. package/dist/core/verification-evidence.js.map +1 -1
  58. package/dist/goals-agent/goal-team.d.ts +2 -0
  59. package/dist/goals-agent/goal-team.js +82 -0
  60. package/dist/goals-agent/goal-team.js.map +1 -0
  61. package/dist/goals-agent/goals-agent.d.ts +90 -0
  62. package/dist/goals-agent/goals-agent.js +246 -0
  63. package/dist/goals-agent/goals-agent.js.map +1 -0
  64. package/dist/modes/subagent-worker-mode.d.ts +12 -0
  65. package/dist/modes/subagent-worker-mode.js +22 -1
  66. package/dist/modes/subagent-worker-mode.js.map +1 -1
  67. package/dist/system-prompt.js +20 -11
  68. package/dist/system-prompt.js.map +1 -1
  69. package/dist/tools/bash-read-evidence.d.ts +13 -0
  70. package/dist/tools/bash-read-evidence.js +48 -1
  71. package/dist/tools/bash-read-evidence.js.map +1 -1
  72. package/dist/tools/bash.d.ts +3 -1
  73. package/dist/tools/bash.js +8 -4
  74. package/dist/tools/bash.js.map +1 -1
  75. package/dist/tools/edit.d.ts +1 -0
  76. package/dist/tools/edit.js +84 -1
  77. package/dist/tools/edit.js.map +1 -1
  78. package/dist/tools/index.d.ts +7 -1
  79. package/dist/tools/index.js +13 -4
  80. package/dist/tools/index.js.map +1 -1
  81. package/dist/tools/read-only-bash.js +3 -0
  82. package/dist/tools/read-only-bash.js.map +1 -1
  83. package/dist/tools/read-tracker.d.ts +6 -12
  84. package/dist/tools/read-tracker.js +21 -36
  85. package/dist/tools/read-tracker.js.map +1 -1
  86. package/dist/tools/read.js +2 -2
  87. package/dist/tools/read.js.map +1 -1
  88. package/dist/tools/subagent-control.js +22 -3
  89. package/dist/tools/subagent-control.js.map +1 -1
  90. package/dist/tools/write.js +110 -8
  91. package/dist/tools/write.js.map +1 -1
  92. package/package.json +4 -4
@@ -111,11 +111,8 @@ export function createAutopilotRunner(ctx) {
111
111
  async function runAutopilotCycle(originalRequest) {
112
112
  if (!ctx.autopilot || ctx.autopilotCancelled)
113
113
  return;
114
- // Unverified work skips a work review silently. A pending plan still enters
115
- // the cycle so driveAutopilotCycle says WHY Ken stepped aside
116
- // (autopilot_human) before the plan is handed to the user.
117
- if (ctx.pendingPlanPath === null && ctx.session.getVerificationProblem())
118
- return;
114
+ // Unchecked work enters the cycle too: driveAutopilotCycle asks for the
115
+ // checks once before Ken reviews, and hands back only if still unchecked.
119
116
  const generation = ctx.runLifecycle.begin(ctx.abortOwnedWork).generation;
120
117
  ctx.pendingCancelDrain = null;
121
118
  ctx.autopilotActive = true;
@@ -1 +1 @@
1
- {"version":3,"file":"autopilot-runner.js","sourceRoot":"","sources":["../../src/app-sidecar/autopilot-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"autopilot-runner.js","sourceRoot":"","sources":["../../src/app-sidecar/autopilot-runner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import type http from "node:http";
2
+ import { type GoalRecord } from "../core/goals-store.js";
3
+ import type { SessionRouteContext } from "./route-context.js";
4
+ /** One row of the app's goal list. */
5
+ export interface GoalSummary {
6
+ id: string;
7
+ name: string;
8
+ goal: string;
9
+ context: GoalRecord["context"];
10
+ path: string;
11
+ createdAt: string;
12
+ lastActiveMs: number;
13
+ lastActiveDisplay: string;
14
+ /** Newest non-empty session to resume; null opens a fresh coordinator session. */
15
+ latestSessionPath: string | null;
16
+ /**
17
+ * Where the goal stands, for the goal list: briefing (not started yet),
18
+ * running (working right now), paused (by the user), or idle (started,
19
+ * not working: done, or waiting to be opened again).
20
+ */
21
+ status: "briefing" | "running" | "paused" | "interrupted" | "idle";
22
+ }
23
+ /** A goal's status for the list (see GoalSummary.status). */
24
+ export declare function goalListStatus(record: GoalRecord, busy: boolean, cutOff?: boolean): GoalSummary["status"];
25
+ /** Goal list, create, and the coordinator's automatic first reply. */
26
+ export declare function handleGoalRoutes(ctx: SessionRouteContext, req: http.IncomingMessage, res: http.ServerResponse, url: string, method: string): boolean;
@@ -0,0 +1,444 @@
1
+ import { promises as fs } from "node:fs";
2
+ import path from "node:path";
3
+ import { createGoal, deleteGoal, goalKickoffPrompt, goalNeedsKickoff, goalPhase, goalResumePrompt, goalSettingsNote, goalWasInterrupted, setGoalCritterModel, setGoalPaused, updateGoal, goalsRoot, listGoals, markGoalKickoff, } from "../core/goals-store.js";
4
+ import { formatRelativeTime } from "../core/project-discovery.js";
5
+ import { getModel } from "../core/model-registry.js";
6
+ import { goalCritterPick } from "../goals-agent/goals-agent.js";
7
+ import { SessionManager } from "../core/session-manager.js";
8
+ import { log } from "../core/logger.js";
9
+ import { readBody, json } from "./http.js";
10
+ /** The kickoff instruction is runtime-authored and never shown as a user bubble. */
11
+ const KICKOFF_PROVENANCE = {
12
+ source: "runtime",
13
+ kind: "automation",
14
+ visibility: "hidden",
15
+ };
16
+ /** How much of a session file's end is read to find its last message. */
17
+ const TAIL_BYTES = 64 * 1024;
18
+ /**
19
+ * The last few messages of a session file (role and content), read from its
20
+ * end only, never thawing or rewriting it. Empty when it can't be read
21
+ * (archived, gone): the goal then just isn't marked interrupted.
22
+ */
23
+ async function lastMessages(file) {
24
+ let text;
25
+ try {
26
+ const handle = await fs.open(file, "r");
27
+ try {
28
+ const { size } = await handle.stat();
29
+ const start = Math.max(0, size - TAIL_BYTES);
30
+ const buf = Buffer.alloc(size - start);
31
+ await handle.read(buf, 0, buf.length, start);
32
+ text = buf.toString("utf-8");
33
+ }
34
+ finally {
35
+ await handle.close();
36
+ }
37
+ }
38
+ catch {
39
+ return [];
40
+ }
41
+ const out = [];
42
+ for (const line of text.split("\n")) {
43
+ if (!line.startsWith("{"))
44
+ continue;
45
+ try {
46
+ const entry = JSON.parse(line);
47
+ if (entry.type === "message" && entry.message?.role) {
48
+ out.push({ role: entry.message.role, content: entry.message.content });
49
+ }
50
+ }
51
+ catch {
52
+ // A line cut at the start of the read window.
53
+ }
54
+ }
55
+ return out;
56
+ }
57
+ /** A goal's status for the list (see GoalSummary.status). */
58
+ export function goalListStatus(record, busy, cutOff = false) {
59
+ if (record.pausedAt)
60
+ return "paused";
61
+ if (busy)
62
+ return "running";
63
+ if (cutOff)
64
+ return "interrupted";
65
+ return record.startedAt ? "idle" : "briefing";
66
+ }
67
+ async function summarize(sessions, dir, record, busy = false) {
68
+ const list = await sessions.list(dir).catch(() => []);
69
+ const withMessages = list.filter((s) => s.messageCount > 0);
70
+ let lastActiveMs = Date.parse(record.createdAt) || 0;
71
+ let latestSessionPath = null;
72
+ let latestMs = -1;
73
+ for (const s of withMessages) {
74
+ const ms = Date.parse(s.lastActivity) || 0;
75
+ if (ms > latestMs) {
76
+ latestMs = ms;
77
+ latestSessionPath = s.path;
78
+ }
79
+ if (ms > lastActiveMs)
80
+ lastActiveMs = ms;
81
+ }
82
+ return {
83
+ id: record.id,
84
+ name: record.name,
85
+ goal: record.goal,
86
+ context: record.context,
87
+ path: dir,
88
+ createdAt: record.createdAt,
89
+ lastActiveMs,
90
+ lastActiveDisplay: formatRelativeTime(lastActiveMs),
91
+ latestSessionPath,
92
+ status: goalListStatus(record, busy,
93
+ // Not working, but its last turn never finished: the app closed, or it
94
+ // was stopped, mid-work. Workers aren't known here, only the session.
95
+ !busy &&
96
+ Boolean(record.startedAt) &&
97
+ latestSessionPath !== null &&
98
+ goalWasInterrupted(record, await lastMessages(latestSessionPath), [])),
99
+ };
100
+ }
101
+ /** Goal list, create, and the coordinator's automatic first reply. */
102
+ export function handleGoalRoutes(ctx, req, res, url, method) {
103
+ if (method === "GET" && url === "/goals") {
104
+ const sessions = new SessionManager(ctx.paths.sessionsDir);
105
+ void listGoals(goalsRoot(ctx.paths.agentDir))
106
+ .then((goals) => Promise.all(goals.map((g) => summarize(sessions, g.dir, g.record, ctx.busyAt(g.dir)))))
107
+ .then((goals) => {
108
+ goals.sort((a, b) => b.lastActiveMs - a.lastActiveMs || a.id.localeCompare(b.id));
109
+ json(res, 200, { goals });
110
+ })
111
+ .catch((err) => {
112
+ log("ERROR", "app-sidecar", "listGoals failed", {
113
+ message: err instanceof Error ? err.message : String(err),
114
+ });
115
+ json(res, 500, { error: "Couldn't read your goals" });
116
+ });
117
+ return true;
118
+ }
119
+ if (method === "POST" && url === "/goals") {
120
+ void readBody(req, res).then(async (raw) => {
121
+ if (raw === null)
122
+ return;
123
+ let body;
124
+ try {
125
+ body = JSON.parse(raw);
126
+ }
127
+ catch {
128
+ json(res, 400, { error: "invalid JSON body" });
129
+ return;
130
+ }
131
+ const input = body && typeof body === "object"
132
+ ? body
133
+ : {};
134
+ try {
135
+ const created = await createGoal(goalsRoot(ctx.paths.agentDir), {
136
+ name: typeof input.name === "string" ? input.name : "",
137
+ goal: typeof input.goal === "string" ? input.goal : "",
138
+ context: Array.isArray(input.context)
139
+ ? input.context.filter((p) => typeof p === "string")
140
+ : [],
141
+ }, new Date());
142
+ if (!created.ok) {
143
+ json(res, 400, { error: created.error });
144
+ return;
145
+ }
146
+ const sessions = new SessionManager(ctx.paths.sessionsDir);
147
+ json(res, 200, {
148
+ goal: await summarize(sessions, created.value.dir, created.value.record),
149
+ });
150
+ }
151
+ catch (err) {
152
+ log("ERROR", "app-sidecar", "createGoal failed", {
153
+ message: err instanceof Error ? err.message : String(err),
154
+ });
155
+ json(res, 500, { error: "Couldn't create the goal" });
156
+ }
157
+ });
158
+ return true;
159
+ }
160
+ // Deleting removes the goal folder and its coordinator sessions. Refused
161
+ // while another window has the goal open, or while this window is running in
162
+ // it, so no live session is left working in a folder that no longer exists.
163
+ if (method === "POST" && url === "/goals/delete") {
164
+ void readBody(req, res).then(async (raw) => {
165
+ if (raw === null)
166
+ return;
167
+ let id;
168
+ try {
169
+ id = JSON.parse(raw)?.id;
170
+ }
171
+ catch {
172
+ json(res, 400, { error: "invalid JSON body" });
173
+ return;
174
+ }
175
+ if (typeof id !== "string" || !id) {
176
+ json(res, 400, { error: "Missing goal id" });
177
+ return;
178
+ }
179
+ const root = goalsRoot(ctx.paths.agentDir);
180
+ const dir = path.join(root, id);
181
+ const holders = ctx.sessionIdsAt(dir);
182
+ if (holders.some((holder) => holder !== ctx.sessionId)) {
183
+ json(res, 409, { error: "This goal is open in another window. Close it there first." });
184
+ return;
185
+ }
186
+ const ownsIt = holders.includes(ctx.sessionId);
187
+ if (ownsIt && (ctx.running || ctx.runClaim.active || ctx.autopilotActive)) {
188
+ json(res, 409, { error: "This goal is still working. Stop it first." });
189
+ return;
190
+ }
191
+ try {
192
+ const deleted = await deleteGoal(root, ctx.paths.sessionsDir, id);
193
+ if (!deleted.ok) {
194
+ json(res, 404, { error: deleted.error });
195
+ return;
196
+ }
197
+ if (ownsIt)
198
+ ctx.goal = null;
199
+ json(res, 200, { ok: true });
200
+ }
201
+ catch (err) {
202
+ log("ERROR", "app-sidecar", "deleteGoal failed", {
203
+ message: err instanceof Error ? err.message : String(err),
204
+ });
205
+ json(res, 500, { error: "Couldn't delete the goal" });
206
+ }
207
+ });
208
+ return true;
209
+ }
210
+ // Pin the model GG Goals' workers run on, or clear it (null) so they follow
211
+ // GG Goals. Applies to the next worker started; running ones keep theirs,
212
+ // so this needs no run lock.
213
+ if (method === "POST" && url === "/goal/critter-model") {
214
+ const goal = ctx.goal;
215
+ if (!goal) {
216
+ json(res, 404, { error: "This window is not a goal" });
217
+ return true;
218
+ }
219
+ void readBody(req, res).then(async (raw) => {
220
+ if (raw === null)
221
+ return;
222
+ let requested;
223
+ try {
224
+ const parsed = JSON.parse(raw)?.model;
225
+ requested = typeof parsed === "string" && parsed.trim() ? parsed.trim() : null;
226
+ }
227
+ catch {
228
+ json(res, 400, { error: "invalid JSON body" });
229
+ return;
230
+ }
231
+ try {
232
+ let pick = null;
233
+ if (requested !== null) {
234
+ const target = getModel(requested);
235
+ if (!target) {
236
+ json(res, 404, { error: `unknown model: ${requested}` });
237
+ return;
238
+ }
239
+ if (!(await ctx.auth.hasProviderAuth(target.provider))) {
240
+ json(res, 400, { error: `Connect ${target.provider} first to use ${target.name}.` });
241
+ return;
242
+ }
243
+ pick = { provider: target.provider, model: target.id };
244
+ }
245
+ const updated = await setGoalCritterModel(goal.dir, pick);
246
+ if (!updated) {
247
+ json(res, 404, { error: "Unknown goal" });
248
+ return;
249
+ }
250
+ ctx.goal = { dir: goal.dir, record: updated };
251
+ const payload = {
252
+ id: updated.id,
253
+ phase: goalPhase(updated),
254
+ critterModel: goalCritterPick(updated)?.model ?? null,
255
+ };
256
+ ctx.broadcast("goal_state", payload);
257
+ json(res, 200, payload);
258
+ }
259
+ catch (err) {
260
+ log("ERROR", "app-sidecar", "set critter model failed", {
261
+ message: err instanceof Error ? err.message : String(err),
262
+ });
263
+ json(res, 500, { error: "Couldn't change the critters' model" });
264
+ }
265
+ });
266
+ return true;
267
+ }
268
+ // Change this goal's attached folders/files or standing instructions. GG
269
+ // Goals' brief is fixed for a session (prompt cache), so the change reaches
270
+ // it in the goal's next session; refused mid-run so no worker is left
271
+ // working from a folder that was just detached.
272
+ if (method === "POST" && url === "/goal/update") {
273
+ const goal = ctx.goal;
274
+ if (!goal) {
275
+ json(res, 404, { error: "This window is not a goal" });
276
+ return true;
277
+ }
278
+ if (ctx.running || ctx.runClaim.active || ctx.autopilotActive) {
279
+ json(res, 409, { error: "This goal is still working. Pause it first." });
280
+ return true;
281
+ }
282
+ void readBody(req, res).then(async (raw) => {
283
+ if (raw === null)
284
+ return;
285
+ let body;
286
+ try {
287
+ body = JSON.parse(raw);
288
+ }
289
+ catch {
290
+ json(res, 400, { error: "invalid JSON body" });
291
+ return;
292
+ }
293
+ try {
294
+ const updated = await updateGoal(goal.dir, body);
295
+ if (!updated.ok) {
296
+ json(res, 400, { error: updated.error });
297
+ return;
298
+ }
299
+ ctx.goal = { dir: goal.dir, record: updated.value };
300
+ // GG Goals' brief is fixed for the session (prompt cache): tell it the
301
+ // new settings at its next turn instead, and they're in the brief from
302
+ // the next session on.
303
+ ctx.session.notify("goal-settings", goalSettingsNote(updated.value));
304
+ for (const item of updated.value.context) {
305
+ if (item.kind !== "folder")
306
+ continue;
307
+ const added = await ctx.session.addDirectory(item.path);
308
+ if (!added.ok && !added.error.startsWith("Already in the workspace")) {
309
+ log("WARN", "app-sidecar", "goal context folder unavailable", { error: added.error });
310
+ }
311
+ }
312
+ json(res, 200, {
313
+ context: updated.value.context,
314
+ instructions: updated.value.instructions ?? "",
315
+ });
316
+ }
317
+ catch (err) {
318
+ log("ERROR", "app-sidecar", "update goal failed", {
319
+ message: err instanceof Error ? err.message : String(err),
320
+ });
321
+ json(res, 500, { error: "Couldn't update the goal" });
322
+ }
323
+ });
324
+ return true;
325
+ }
326
+ // Pause: the app stops the current run (POST /cancel, which also stops its
327
+ // workers) and the goal stays put, even across a restart, until resumed.
328
+ if (method === "POST" && url === "/goal/pause") {
329
+ const goal = ctx.goal;
330
+ if (!goal) {
331
+ json(res, 404, { error: "This window is not a goal" });
332
+ return true;
333
+ }
334
+ void setGoalPaused(goal.dir, true, new Date())
335
+ .then((updated) => {
336
+ if (!updated) {
337
+ json(res, 404, { error: "Unknown goal" });
338
+ return;
339
+ }
340
+ ctx.goal = { dir: goal.dir, record: updated };
341
+ const payload = { id: updated.id, phase: goalPhase(updated), paused: true };
342
+ ctx.broadcast("goal_state", payload);
343
+ json(res, 200, payload);
344
+ })
345
+ .catch((err) => {
346
+ log("ERROR", "app-sidecar", "pause goal failed", {
347
+ message: err instanceof Error ? err.message : String(err),
348
+ });
349
+ json(res, 500, { error: "Couldn't pause the goal" });
350
+ });
351
+ return true;
352
+ }
353
+ // Carry a goal on: after a pause, or when its window opens after the app
354
+ // was closed mid-work. Lifts any pause, then, if the goal was cut off
355
+ // (a worker interrupted, or GG Goals' own turn unfinished), runs once with
356
+ // the resume note so GG Goals checks what's done and continues. Idempotent:
357
+ // nothing to resume answers { resumed: false }.
358
+ if (method === "POST" && url === "/goal/resume") {
359
+ const goal = ctx.goal;
360
+ if (!goal) {
361
+ json(res, 404, { error: "This window is not a goal" });
362
+ return true;
363
+ }
364
+ if (ctx.running || ctx.runClaim.active || ctx.autopilotActive) {
365
+ json(res, 200, { resumed: false });
366
+ return true;
367
+ }
368
+ if (!ctx.runClaim.claim()) {
369
+ json(res, 200, { resumed: false });
370
+ return true;
371
+ }
372
+ void (async () => {
373
+ const wasPaused = Boolean(goal.record.pausedAt);
374
+ const record = wasPaused
375
+ ? ((await setGoalPaused(goal.dir, false, new Date())) ?? goal.record)
376
+ : goal.record;
377
+ ctx.goal = { dir: goal.dir, record };
378
+ if (wasPaused) {
379
+ ctx.broadcast("goal_state", { id: record.id, phase: goalPhase(record), paused: false });
380
+ }
381
+ const cutOff = wasPaused ||
382
+ goalWasInterrupted(record, ctx.session.getMessages(), ctx.session.listSubAgents());
383
+ if (!cutOff) {
384
+ json(res, 200, { resumed: false });
385
+ return;
386
+ }
387
+ json(res, 202, { resumed: true });
388
+ await ctx.runAgent(record.name, () => ctx.session.prompt(goalResumePrompt(record), KICKOFF_PROVENANCE));
389
+ })()
390
+ .catch((err) => {
391
+ log("ERROR", "app-sidecar", "goal resume failed", {
392
+ message: err instanceof Error ? err.message : String(err),
393
+ });
394
+ if (!res.headersSent)
395
+ json(res, 500, { error: "Couldn't resume the goal" });
396
+ })
397
+ .finally(() => ctx.runClaim.release());
398
+ return true;
399
+ }
400
+ // Idempotent: the app calls this whenever it opens a goal that still needs
401
+ // its first reply. Only the first call on a fresh goal starts a run.
402
+ if (method === "POST" && url === "/goal/kickoff") {
403
+ const goal = ctx.goal;
404
+ if (!goal) {
405
+ json(res, 404, { error: "This window is not a goal" });
406
+ return true;
407
+ }
408
+ if (!goalNeedsKickoff(goal.record, ctx.session.getMessages())) {
409
+ json(res, 200, { started: false });
410
+ return true;
411
+ }
412
+ if (ctx.running || ctx.runClaim.active || ctx.autopilotActive) {
413
+ json(res, 409, { error: "The agent is busy" });
414
+ return true;
415
+ }
416
+ // Claim synchronously so a racing prompt queues instead of starting a
417
+ // second run while the kickoff record is being written.
418
+ if (!ctx.runClaim.claim()) {
419
+ json(res, 409, { error: "The agent is busy" });
420
+ return true;
421
+ }
422
+ void markGoalKickoff(goal.dir, new Date())
423
+ .then(async (updated) => {
424
+ if (!updated) {
425
+ json(res, 200, { started: false });
426
+ return;
427
+ }
428
+ ctx.goal = { dir: goal.dir, record: updated };
429
+ json(res, 202, { started: true });
430
+ await ctx.runAgent(updated.name, () => ctx.session.prompt(goalKickoffPrompt(updated), KICKOFF_PROVENANCE));
431
+ })
432
+ .catch((err) => {
433
+ log("ERROR", "app-sidecar", "goal kickoff failed", {
434
+ message: err instanceof Error ? err.message : String(err),
435
+ });
436
+ if (!res.headersSent)
437
+ json(res, 500, { error: "Couldn't start the goal" });
438
+ })
439
+ .finally(() => ctx.runClaim.release());
440
+ return true;
441
+ }
442
+ return false;
443
+ }
444
+ //# sourceMappingURL=goal-routes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"goal-routes.js","sourceRoot":"","sources":["../../src/app-sidecar/goal-routes.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,16 @@
1
1
  import type http from "node:http";
2
2
  import type { SessionRouteContext } from "./route-context.js";
3
+ /**
4
+ * The restored worker rows for one delegation call, as the transcript shows
5
+ * them on reopen (`resultIsError`: null when no result was saved). Async
6
+ * workers are intentionally non-resumable; restored rows are historical.
7
+ */
8
+ export declare function restoredWorkerRows(call: {
9
+ readonly name: string;
10
+ readonly args: Record<string, unknown>;
11
+ }, resultIsError: boolean | null): Array<{
12
+ agentName: string | undefined;
13
+ status: "done" | "error";
14
+ toolUseCount: number;
15
+ }>;
3
16
  export declare function handleHistoryRoutes(ctx: SessionRouteContext, req: http.IncomingMessage, res: http.ServerResponse, url: string, method: string): boolean;