@openrouter/agent 0.8.0 → 0.9.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 (87) hide show
  1. package/README.md +483 -5
  2. package/esm/index.d.ts +19 -4
  3. package/esm/index.d.ts.map +1 -1
  4. package/esm/index.js +9 -2
  5. package/esm/index.js.map +1 -1
  6. package/esm/inner-loop/call-model.d.ts.map +1 -1
  7. package/esm/inner-loop/call-model.js +40 -41
  8. package/esm/inner-loop/call-model.js.map +1 -1
  9. package/esm/inner-loop/resume-tool-results.d.ts +128 -0
  10. package/esm/inner-loop/resume-tool-results.d.ts.map +1 -0
  11. package/esm/inner-loop/resume-tool-results.js +244 -0
  12. package/esm/inner-loop/resume-tool-results.js.map +1 -0
  13. package/esm/lib/agent-tool.d.ts +92 -0
  14. package/esm/lib/agent-tool.d.ts.map +1 -0
  15. package/esm/lib/agent-tool.js +211 -0
  16. package/esm/lib/agent-tool.js.map +1 -0
  17. package/esm/lib/async-params.d.ts +82 -0
  18. package/esm/lib/async-params.d.ts.map +1 -1
  19. package/esm/lib/async-params.js +5 -0
  20. package/esm/lib/async-params.js.map +1 -1
  21. package/esm/lib/async-tool-registry.d.ts +134 -0
  22. package/esm/lib/async-tool-registry.d.ts.map +1 -0
  23. package/esm/lib/async-tool-registry.js +352 -0
  24. package/esm/lib/async-tool-registry.js.map +1 -0
  25. package/esm/lib/async-tools.d.ts +23 -0
  26. package/esm/lib/async-tools.d.ts.map +1 -0
  27. package/esm/lib/async-tools.js +19 -0
  28. package/esm/lib/async-tools.js.map +1 -0
  29. package/esm/lib/conversation-state.d.ts +1 -0
  30. package/esm/lib/conversation-state.d.ts.map +1 -1
  31. package/esm/lib/conversation-state.js +8 -0
  32. package/esm/lib/conversation-state.js.map +1 -1
  33. package/esm/lib/doom-loop.d.ts +533 -0
  34. package/esm/lib/doom-loop.d.ts.map +1 -0
  35. package/esm/lib/doom-loop.js +1221 -0
  36. package/esm/lib/doom-loop.js.map +1 -0
  37. package/esm/lib/hooks-schemas.d.ts +33 -0
  38. package/esm/lib/hooks-schemas.d.ts.map +1 -1
  39. package/esm/lib/hooks-schemas.js +54 -0
  40. package/esm/lib/hooks-schemas.js.map +1 -1
  41. package/esm/lib/hooks-types.d.ts +6 -2
  42. package/esm/lib/hooks-types.d.ts.map +1 -1
  43. package/esm/lib/hooks-types.js.map +1 -1
  44. package/esm/lib/model-result.d.ts +646 -10
  45. package/esm/lib/model-result.d.ts.map +1 -1
  46. package/esm/lib/model-result.js +2749 -153
  47. package/esm/lib/model-result.js.map +1 -1
  48. package/esm/lib/reusable-stream.d.ts +9 -0
  49. package/esm/lib/reusable-stream.d.ts.map +1 -1
  50. package/esm/lib/reusable-stream.js +17 -0
  51. package/esm/lib/reusable-stream.js.map +1 -1
  52. package/esm/lib/stream-transformers.d.ts +20 -0
  53. package/esm/lib/stream-transformers.d.ts.map +1 -1
  54. package/esm/lib/stream-transformers.js +45 -0
  55. package/esm/lib/stream-transformers.js.map +1 -1
  56. package/esm/lib/tool-check.d.ts +76 -0
  57. package/esm/lib/tool-check.d.ts.map +1 -0
  58. package/esm/lib/tool-check.js +241 -0
  59. package/esm/lib/tool-check.js.map +1 -0
  60. package/esm/lib/tool-concurrency.d.ts +42 -0
  61. package/esm/lib/tool-concurrency.d.ts.map +1 -0
  62. package/esm/lib/tool-concurrency.js +80 -0
  63. package/esm/lib/tool-concurrency.js.map +1 -0
  64. package/esm/lib/tool-context.d.ts +45 -1
  65. package/esm/lib/tool-context.d.ts.map +1 -1
  66. package/esm/lib/tool-context.js +60 -1
  67. package/esm/lib/tool-context.js.map +1 -1
  68. package/esm/lib/tool-executor.d.ts +52 -9
  69. package/esm/lib/tool-executor.d.ts.map +1 -1
  70. package/esm/lib/tool-executor.js +253 -21
  71. package/esm/lib/tool-executor.js.map +1 -1
  72. package/esm/lib/tool-orchestrator.d.ts.map +1 -1
  73. package/esm/lib/tool-orchestrator.js +87 -50
  74. package/esm/lib/tool-orchestrator.js.map +1 -1
  75. package/esm/lib/tool-task.d.ts +157 -0
  76. package/esm/lib/tool-task.d.ts.map +1 -0
  77. package/esm/lib/tool-task.js +206 -0
  78. package/esm/lib/tool-task.js.map +1 -0
  79. package/esm/lib/tool-types.d.ts +473 -14
  80. package/esm/lib/tool-types.d.ts.map +1 -1
  81. package/esm/lib/tool-types.js +59 -10
  82. package/esm/lib/tool-types.js.map +1 -1
  83. package/esm/lib/tool.d.ts +184 -2
  84. package/esm/lib/tool.d.ts.map +1 -1
  85. package/esm/lib/tool.js +193 -3
  86. package/esm/lib/tool.js.map +1 -1
  87. package/package.json +30 -2
@@ -1 +1 @@
1
- {"version":3,"file":"stream-transformers.d.ts","sourceRoot":"","sources":["../../src/lib/stream-transformers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stream-transformers.d.ts","sourceRoot":"","sources":["../../src/lib/stream-transformers.ts"],"names":[],"mappings":"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"}
@@ -345,6 +345,51 @@ export async function* buildMessageStream(stream) {
345
345
  }
346
346
  }
347
347
  }
348
+ /**
349
+ * Backward scan of a `ReusableReadableStream`'s retained buffer for the
350
+ * last terminal event. Shared by the two extractors below.
351
+ */
352
+ function findBufferedTerminalEvent(stream) {
353
+ return stream.findLastBuffered((event) => 'type' in event &&
354
+ (isResponseCompletedEvent(event) ||
355
+ isResponseFailedEvent(event) ||
356
+ isResponseIncompleteEvent(event)));
357
+ }
358
+ /**
359
+ * Synchronous counterpart to `consumeStreamForCompletion` for streams that
360
+ * have already fully buffered (`isComplete`): scan the retained buffer
361
+ * backwards for the terminal event instead of replaying every event through
362
+ * a fresh consumer (one async microtask hop per event). Same contract —
363
+ * returns the completed/incomplete response, throws on a failed response or
364
+ * a buffer with no terminal event.
365
+ */
366
+ export function extractCompletionFromBuffer(stream) {
367
+ const terminal = findBufferedTerminalEvent(stream);
368
+ if (terminal && isResponseFailedEvent(terminal)) {
369
+ throw new Error(`Response failed: ${JSON.stringify(terminal.response.error)}`);
370
+ }
371
+ if (terminal && (isResponseCompletedEvent(terminal) || isResponseIncompleteEvent(terminal))) {
372
+ return terminal.response;
373
+ }
374
+ throw new Error('Stream ended without completion event');
375
+ }
376
+ /**
377
+ * Non-throwing variant of `extractCompletionFromBuffer` for streams that may
378
+ * still be mid-flight: returns the buffered completed/incomplete response
379
+ * when the terminal event has already been buffered, `undefined` otherwise
380
+ * (no terminal event yet, or the response failed). Consumers stop at the
381
+ * terminal event itself (`streamTerminationEvents`), typically before the
382
+ * pump has read the source close that flips `isComplete` — this lets
383
+ * teardown paths recover the completion in that window without waiting on
384
+ * the close frame.
385
+ */
386
+ export function tryExtractCompletionFromBuffer(stream) {
387
+ const terminal = findBufferedTerminalEvent(stream);
388
+ if (terminal && (isResponseCompletedEvent(terminal) || isResponseIncompleteEvent(terminal))) {
389
+ return terminal.response;
390
+ }
391
+ return undefined;
392
+ }
348
393
  /**
349
394
  * Consume stream until completion and return the complete response
350
395
  */
@@ -1 +1 @@
1
- {"version":3,"file":"stream-transformers.js","sourceRoot":"","sources":["../../src/lib/stream-transformers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stream-transformers.js","sourceRoot":"","sources":["../../src/lib/stream-transformers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ import * as z4 from 'zod/v4';
2
+ import type { $ZodObject, $ZodShape, $ZodType } from 'zod/v4/core';
3
+ import type { APITool, PendingAsyncTool, Tool, ToolCheckConfig, TurnContext } from './tool-types.js';
4
+ /**
5
+ * Reserved name of the single, universal task-interaction tool.
6
+ *
7
+ * Per team decision (2026-07-31): per-tool check schemas bloat every tool's
8
+ * wire definition for a shared set of functionality and scale quadratically
9
+ * with the tool count. Instead, ONE static tool handles every running task —
10
+ * addressed by `taskId` — while the *implementations* stay tool-resident
11
+ * (each tool's `check` config). Best of both: no per-tool context growth,
12
+ * tool-specific behavior preserved.
13
+ */
14
+ export declare const TASK_TOOL_NAME: "task";
15
+ /** Actions the universal task tool supports. */
16
+ export declare const TaskToolInputSchema: z4.ZodObject<{
17
+ taskId: z4.ZodString;
18
+ action: z4.ZodOptional<z4.ZodEnum<{
19
+ steer: "steer";
20
+ result: "result";
21
+ cancel: "cancel";
22
+ check: "check";
23
+ }>>;
24
+ view: z4.ZodOptional<z4.ZodEnum<{
25
+ status: "status";
26
+ logs: "logs";
27
+ transcript: "transcript";
28
+ }>>;
29
+ tail: z4.ZodOptional<z4.ZodNumber>;
30
+ message: z4.ZodOptional<z4.ZodString>;
31
+ reason: z4.ZodOptional<z4.ZodString>;
32
+ params: z4.ZodOptional<z4.ZodRecord<z4.ZodString, z4.ZodUnknown>>;
33
+ }, z4.z.core.$strip>;
34
+ export type TaskToolInput = z4.infer<typeof TaskToolInputSchema>;
35
+ /**
36
+ * The wire definition for the universal task tool. Static — identical
37
+ * regardless of how many long-running tools are registered, so the schema
38
+ * conversion runs once per process (memoized on first call).
39
+ */
40
+ export declare function buildTaskToolApiDefinition(convertZod: (schema: $ZodType) => Record<string, unknown>): APITool;
41
+ /**
42
+ * True when a user tool already claims the reserved task-tool name
43
+ * (defense for dynamically-built tool lists that bypass `tool()`).
44
+ *
45
+ * Shared by registration (`needsTaskTool`) and the engine's interception
46
+ * guard (`taskToolActive`) so a collision disables BOTH: the built-in
47
+ * definition is not registered and calls named "task" route to the user's
48
+ * tool instead of being intercepted.
49
+ */
50
+ export declare function hasTaskToolNameCollision(tools: readonly Tool[]): boolean;
51
+ /**
52
+ * True when the tool list warrants registering the task tool: at least one
53
+ * long-running-capable tool, and no user tool already claiming the name.
54
+ */
55
+ export declare function needsTaskTool(tools: readonly Tool[]): boolean;
56
+ /**
57
+ * Minimal Tool stub for the engine's internal bookkeeping around task-tool
58
+ * answers (result events, output shaping). Never executed as a user tool.
59
+ */
60
+ export declare function buildTaskToolStub(): Tool;
61
+ /** Resolve a tool's check config to `{ schema, execute }` with defaults. */
62
+ export declare function resolveCheckConfig(check: ToolCheckConfig | undefined): {
63
+ schema: $ZodObject<$ZodShape> | undefined;
64
+ execute: ((params: Record<string, unknown>, turnContext: TurnContext) => unknown | Promise<unknown>) | undefined;
65
+ };
66
+ /** The SDK default check handler: status / logs / transcript views. */
67
+ export declare function defaultCheckResult(input: Pick<TaskToolInput, 'view' | 'tail'>, turnContext: TurnContext, options: {
68
+ maxTranscriptChars: number;
69
+ }): unknown;
70
+ /**
71
+ * Answer a task-tool call against a PERSISTED task (deferred /
72
+ * cross-process, after a restart — no live registry entry). Only
73
+ * `status`-grade data survives: identity, timing, `lastLog`.
74
+ */
75
+ export declare function persistedTaskCheckResult(input: Pick<TaskToolInput, 'view'>, pending: PendingAsyncTool): unknown;
76
+ //# sourceMappingURL=tool-check.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-check.d.ts","sourceRoot":"","sources":["../../src/lib/tool-check.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC7B,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACnE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EAChB,IAAI,EACJ,eAAe,EACf,WAAW,EACZ,MAAM,iBAAiB,CAAC;AAGzB;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,EAAG,MAAe,CAAC;AAE9C,gDAAgD;AAChD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;oBAoC9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAKjE;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,CAAC,MAAM,EAAE,QAAQ,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACxD,OAAO,CAUT;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,GAAG,OAAO,CAYxE;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,GAAG,OAAO,CAa7D;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CASxC;AAED,4EAA4E;AAC5E,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,eAAe,GAAG,SAAS,GAAG;IACtE,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;IAC1C,OAAO,EACH,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,WAAW,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,GAC3F,SAAS,CAAC;CACf,CAWA;AAED,uEAAuE;AACvE,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAAC,EAC3C,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE;IACP,kBAAkB,EAAE,MAAM,CAAC;CAC5B,GACA,OAAO,CAiET;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,EAClC,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAoDT"}
@@ -0,0 +1,241 @@
1
+ import * as z4 from 'zod/v4';
2
+ import { isLongRunningTool, ToolType } from './tool-types.js';
3
+ /**
4
+ * Reserved name of the single, universal task-interaction tool.
5
+ *
6
+ * Per team decision (2026-07-31): per-tool check schemas bloat every tool's
7
+ * wire definition for a shared set of functionality and scale quadratically
8
+ * with the tool count. Instead, ONE static tool handles every running task —
9
+ * addressed by `taskId` — while the *implementations* stay tool-resident
10
+ * (each tool's `check` config). Best of both: no per-tool context growth,
11
+ * tool-specific behavior preserved.
12
+ */
13
+ export const TASK_TOOL_NAME = 'task';
14
+ /** Actions the universal task tool supports. */
15
+ export const TaskToolInputSchema = z4.object({
16
+ taskId: z4.string().describe('Task id from a pending tool output.'),
17
+ action: z4
18
+ .enum([
19
+ 'check',
20
+ 'steer',
21
+ 'result',
22
+ 'cancel',
23
+ ])
24
+ .optional()
25
+ .describe("'check' (default): progress views. 'steer': send guidance to the running task. 'result': the final result if settled, else current status. 'cancel': stop the task."),
26
+ view: z4
27
+ .enum([
28
+ 'status',
29
+ 'logs',
30
+ 'transcript',
31
+ ])
32
+ .optional()
33
+ .describe("For action=check: 'status' (default) is a one-line state; 'logs' returns recent progress entries; 'transcript' returns full detail."),
34
+ tail: z4
35
+ .number()
36
+ .int()
37
+ .positive()
38
+ .max(200)
39
+ .optional()
40
+ .describe('For view=logs: how many recent entries. Default 20.'),
41
+ message: z4.string().optional().describe('For action=steer: the guidance to send.'),
42
+ reason: z4.string().optional().describe('For action=cancel: why.'),
43
+ params: z4
44
+ .record(z4.string(), z4.unknown())
45
+ .optional()
46
+ .describe("Extra parameters for the tool's custom check handler, when it declares one."),
47
+ });
48
+ /** Memoized Zod→JSON-Schema conversion — the input schema is static. */
49
+ let taskToolParameters;
50
+ /**
51
+ * The wire definition for the universal task tool. Static — identical
52
+ * regardless of how many long-running tools are registered, so the schema
53
+ * conversion runs once per process (memoized on first call).
54
+ */
55
+ export function buildTaskToolApiDefinition(convertZod) {
56
+ taskToolParameters ?? (taskToolParameters = convertZod(TaskToolInputSchema));
57
+ return {
58
+ type: 'function',
59
+ name: TASK_TOOL_NAME,
60
+ description: 'Interact with a long-running task started by another tool: check progress (status, recent logs, or the full transcript), steer it with a message, fetch its result, or cancel it. Task ids come from pending tool outputs.',
61
+ strict: null,
62
+ parameters: taskToolParameters,
63
+ };
64
+ }
65
+ /**
66
+ * True when a user tool already claims the reserved task-tool name
67
+ * (defense for dynamically-built tool lists that bypass `tool()`).
68
+ *
69
+ * Shared by registration (`needsTaskTool`) and the engine's interception
70
+ * guard (`taskToolActive`) so a collision disables BOTH: the built-in
71
+ * definition is not registered and calls named "task" route to the user's
72
+ * tool instead of being intercepted.
73
+ */
74
+ export function hasTaskToolNameCollision(tools) {
75
+ return tools.some((t) => 'function' in t &&
76
+ t.function?.name === TASK_TOOL_NAME);
77
+ }
78
+ /**
79
+ * True when the tool list warrants registering the task tool: at least one
80
+ * long-running-capable tool, and no user tool already claiming the name.
81
+ */
82
+ export function needsTaskTool(tools) {
83
+ if (hasTaskToolNameCollision(tools)) {
84
+ // Only worth a warning when something was actually disabled: with no
85
+ // long-running tool in the list, the built-in would not have been
86
+ // registered anyway, and warning on every callModel() is pure noise.
87
+ if (tools.some((t) => isLongRunningTool(t))) {
88
+ console.warn(`[AsyncTools] a user tool is named "${TASK_TOOL_NAME}" — the built-in task tool is disabled; models cannot check on long-running tasks.`);
89
+ }
90
+ return false;
91
+ }
92
+ return tools.some((t) => isLongRunningTool(t));
93
+ }
94
+ /**
95
+ * Minimal Tool stub for the engine's internal bookkeeping around task-tool
96
+ * answers (result events, output shaping). Never executed as a user tool.
97
+ */
98
+ export function buildTaskToolStub() {
99
+ return {
100
+ type: ToolType.Function,
101
+ function: {
102
+ name: TASK_TOOL_NAME,
103
+ inputSchema: TaskToolInputSchema,
104
+ execute: false,
105
+ },
106
+ };
107
+ }
108
+ /** Resolve a tool's check config to `{ schema, execute }` with defaults. */
109
+ export function resolveCheckConfig(check) {
110
+ if (check === undefined || check === true) {
111
+ return {
112
+ schema: undefined,
113
+ execute: undefined,
114
+ };
115
+ }
116
+ return {
117
+ schema: check.schema,
118
+ execute: check.execute,
119
+ };
120
+ }
121
+ /** The SDK default check handler: status / logs / transcript views. */
122
+ export function defaultCheckResult(input, turnContext, options) {
123
+ const task = turnContext.task;
124
+ if (!task) {
125
+ return {
126
+ error: 'unknown_task',
127
+ hint: 'No task context available for this check call.',
128
+ };
129
+ }
130
+ const view = input.view ?? 'status';
131
+ const statusView = task.statusView();
132
+ if (view === 'logs') {
133
+ const tail = input.tail ?? 20;
134
+ // Same character budget as the transcript view: entries can be up to
135
+ // maxEntryBytes each (4k default, tool-raisable), so 200 uncapped
136
+ // entries could dump hundreds of KB into the model's context. Newest
137
+ // entries win — drop from the OLDEST end when over budget.
138
+ const entries = task.tailLogs(tail);
139
+ let budget = options.maxTranscriptChars;
140
+ let firstKept = entries.length;
141
+ for (let i = entries.length - 1; i >= 0; i--) {
142
+ const entry = entries[i];
143
+ const size = typeof entry?.data === 'string'
144
+ ? entry.data.length
145
+ : (JSON.stringify(entry?.data)?.length ?? 0);
146
+ if (size > budget) {
147
+ break;
148
+ }
149
+ budget -= size;
150
+ firstKept = i;
151
+ }
152
+ let kept = entries.slice(firstKept);
153
+ // Never answer with NOTHING when progress exists: if even the newest
154
+ // entry alone exceeds the budget, return it truncated to the budget
155
+ // rather than an empty list (a smaller tail could not help, and the
156
+ // transcript view is capped by the same number).
157
+ const newest = entries[entries.length - 1];
158
+ if (kept.length === 0 && newest !== undefined) {
159
+ const body = typeof newest.data === 'string'
160
+ ? newest.data
161
+ : (JSON.stringify(newest.data) ?? String(newest.data));
162
+ kept = [
163
+ {
164
+ ...newest,
165
+ data: `${body.slice(0, Math.max(0, options.maxTranscriptChars - 12))}…[truncated]`,
166
+ },
167
+ ];
168
+ }
169
+ return {
170
+ ...statusView,
171
+ logs: kept,
172
+ ...(kept.length < entries.length && {
173
+ note: `Truncated to the ${kept.length} most recent entries (character budget); use view: 'transcript' or a smaller tail for more.`,
174
+ }),
175
+ };
176
+ }
177
+ if (view === 'transcript') {
178
+ return {
179
+ ...statusView,
180
+ transcript: task.transcript(options.maxTranscriptChars),
181
+ };
182
+ }
183
+ return statusView;
184
+ }
185
+ /**
186
+ * Answer a task-tool call against a PERSISTED task (deferred /
187
+ * cross-process, after a restart — no live registry entry). Only
188
+ * `status`-grade data survives: identity, timing, `lastLog`.
189
+ */
190
+ export function persistedTaskCheckResult(input, pending) {
191
+ const base = {
192
+ taskId: pending.taskId,
193
+ toolName: pending.name,
194
+ mode: pending.mode,
195
+ status: pending.status,
196
+ startedAt: pending.startedAt,
197
+ elapsedMs: Date.now() - pending.startedAt,
198
+ ...(pending.lastLog !== undefined && {
199
+ lastLog: pending.lastLog.text,
200
+ }),
201
+ ...(pending.pollAfterMs !== undefined && {
202
+ pollAfterMs: pending.pollAfterMs,
203
+ }),
204
+ ...(pending.expiresAt !== undefined && {
205
+ expiresAt: pending.expiresAt,
206
+ }),
207
+ ...(pending.orphaned === true && {
208
+ orphaned: true,
209
+ note: 'This task was detached; its result will not be delivered.',
210
+ }),
211
+ };
212
+ // View-specific explanations must not displace the orphaned warning —
213
+ // "the result will never arrive" is the actionable part.
214
+ const withNote = (viewNote) => ('note' in base ? `${base.note} ${viewNote}` : viewNote);
215
+ const view = input.view ?? 'status';
216
+ if (view === 'logs') {
217
+ return {
218
+ ...base,
219
+ logs: pending.lastLog
220
+ ? [
221
+ {
222
+ at: pending.lastLog.at,
223
+ data: pending.lastLog.text,
224
+ },
225
+ ]
226
+ : [],
227
+ note: withNote('Full logs are not retained across processes.'),
228
+ };
229
+ }
230
+ if (view === 'transcript') {
231
+ return {
232
+ ...base,
233
+ transcript: '',
234
+ note: withNote(pending.mode === 'defer'
235
+ ? 'No transcript available — this task is owned by an external system.'
236
+ : 'No transcript available — the task ran in a previous process.'),
237
+ };
238
+ }
239
+ return base;
240
+ }
241
+ //# sourceMappingURL=tool-check.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-check.js","sourceRoot":"","sources":["../../src/lib/tool-check.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Minimal FIFO semaphore used to bound tool-execution concurrency.
3
+ *
4
+ * Three gates exist per run:
5
+ * - the round gate (`toolConcurrency.round`) — bounds simultaneous tool
6
+ * executions within a round;
7
+ * - per-tool gates (`maxConcurrency` on a tool) — bound simultaneous
8
+ * executions of one tool across the run;
9
+ * - the background pool (`toolConcurrency.background`) — bounds detached
10
+ * background-tool work that escaped the round barrier.
11
+ *
12
+ * Waiters are released strictly FIFO so a burst of calls cannot starve an
13
+ * earlier one. Zero dependencies; ~60 lines.
14
+ */
15
+ /** Release function returned by {@link Semaphore.acquire}. Idempotent. */
16
+ export type SemaphoreRelease = () => void;
17
+ /**
18
+ * A counting semaphore with FIFO waiters.
19
+ */
20
+ export declare class Semaphore {
21
+ private available;
22
+ private readonly waiters;
23
+ /**
24
+ * @param limit - Maximum concurrent holders. Must be a positive integer.
25
+ */
26
+ constructor(limit: number);
27
+ /**
28
+ * Acquire one slot. Resolves immediately when a slot is free, otherwise
29
+ * queues FIFO. The returned release function is idempotent — releasing
30
+ * twice does not free two slots.
31
+ */
32
+ acquire(): Promise<SemaphoreRelease>;
33
+ private makeRelease;
34
+ }
35
+ /**
36
+ * Acquire multiple gates in the given (fixed) order and return a single
37
+ * release that frees them in reverse order. Callers MUST pass gates in a
38
+ * globally consistent order (round gate before per-tool gate) — fixed
39
+ * ordering is what makes multi-gate acquisition deadlock-free.
40
+ */
41
+ export declare function acquireAll(gates: ReadonlyArray<Semaphore | undefined>): Promise<SemaphoreRelease>;
42
+ //# sourceMappingURL=tool-concurrency.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-concurrency.d.ts","sourceRoot":"","sources":["../../src/lib/tool-concurrency.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,0EAA0E;AAC1E,MAAM,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC;AAE1C;;GAEG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkD;IAE1E;;OAEG;gBACS,KAAK,EAAE,MAAM;IAOzB;;;;OAIG;IACH,OAAO,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAUpC,OAAO,CAAC,WAAW;CAgBpB;AAED;;;;;GAKG;AACH,wBAAsB,UAAU,CAC9B,KAAK,EAAE,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC,GAC1C,OAAO,CAAC,gBAAgB,CAAC,CAY3B"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Minimal FIFO semaphore used to bound tool-execution concurrency.
3
+ *
4
+ * Three gates exist per run:
5
+ * - the round gate (`toolConcurrency.round`) — bounds simultaneous tool
6
+ * executions within a round;
7
+ * - per-tool gates (`maxConcurrency` on a tool) — bound simultaneous
8
+ * executions of one tool across the run;
9
+ * - the background pool (`toolConcurrency.background`) — bounds detached
10
+ * background-tool work that escaped the round barrier.
11
+ *
12
+ * Waiters are released strictly FIFO so a burst of calls cannot starve an
13
+ * earlier one. Zero dependencies; ~60 lines.
14
+ */
15
+ /**
16
+ * A counting semaphore with FIFO waiters.
17
+ */
18
+ export class Semaphore {
19
+ /**
20
+ * @param limit - Maximum concurrent holders. Must be a positive integer.
21
+ */
22
+ constructor(limit) {
23
+ this.waiters = [];
24
+ if (!Number.isInteger(limit) || limit < 1) {
25
+ throw new Error(`Semaphore limit must be a positive integer, got ${limit}`);
26
+ }
27
+ this.available = limit;
28
+ }
29
+ /**
30
+ * Acquire one slot. Resolves immediately when a slot is free, otherwise
31
+ * queues FIFO. The returned release function is idempotent — releasing
32
+ * twice does not free two slots.
33
+ */
34
+ acquire() {
35
+ if (this.available > 0) {
36
+ this.available--;
37
+ return Promise.resolve(this.makeRelease());
38
+ }
39
+ return new Promise((resolve) => {
40
+ this.waiters.push(resolve);
41
+ });
42
+ }
43
+ makeRelease() {
44
+ let released = false;
45
+ return () => {
46
+ if (released) {
47
+ return;
48
+ }
49
+ released = true;
50
+ const next = this.waiters.shift();
51
+ if (next) {
52
+ // Hand the slot directly to the next waiter (no available++/-- churn).
53
+ next(this.makeRelease());
54
+ }
55
+ else {
56
+ this.available++;
57
+ }
58
+ };
59
+ }
60
+ }
61
+ /**
62
+ * Acquire multiple gates in the given (fixed) order and return a single
63
+ * release that frees them in reverse order. Callers MUST pass gates in a
64
+ * globally consistent order (round gate before per-tool gate) — fixed
65
+ * ordering is what makes multi-gate acquisition deadlock-free.
66
+ */
67
+ export async function acquireAll(gates) {
68
+ const releases = [];
69
+ for (const gate of gates) {
70
+ if (gate) {
71
+ releases.push(await gate.acquire());
72
+ }
73
+ }
74
+ return () => {
75
+ for (let i = releases.length - 1; i >= 0; i--) {
76
+ releases[i]?.();
77
+ }
78
+ };
79
+ }
80
+ //# sourceMappingURL=tool-concurrency.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-concurrency.js","sourceRoot":"","sources":["../../src/lib/tool-concurrency.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH;;GAEG;AACH,MAAM,OAAO,SAAS;IAIpB;;OAEG;IACH,YAAY,KAAa;QALR,YAAO,GAA+C,EAAE,CAAC;QAMxE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,mDAAmD,KAAK,EAAE,CAAC,CAAC;QAC9E,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,IAAI,OAAO,CAAmB,CAAC,OAAO,EAAE,EAAE;YAC/C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,WAAW;QACjB,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,OAAO,GAAG,EAAE;YACV,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO;YACT,CAAC;YACD,QAAQ,GAAG,IAAI,CAAC;YAChB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAClC,IAAI,IAAI,EAAE,CAAC;gBACT,uEAAuE;gBACvE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,CAAC;QACH,CAAC,CAAC;IACJ,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,KAA2C;IAE3C,MAAM,QAAQ,GAAuB,EAAE,CAAC;IACxC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,EAAE,CAAC;YACT,QAAQ,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IACD,OAAO,GAAG,EAAE;QACV,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9C,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAClB,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}