@te-river/opencode-team-mode 1.5.5 → 1.5.7

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 (163) hide show
  1. package/README.md +544 -634
  2. package/README.zh-CN.md +511 -576
  3. package/dist/agents.d.ts +6 -1
  4. package/dist/agents.d.ts.map +1 -1
  5. package/dist/agents.js +113 -533
  6. package/dist/agents.js.map +1 -1
  7. package/dist/approval-gate.d.ts +16 -0
  8. package/dist/approval-gate.d.ts.map +1 -1
  9. package/dist/approval-gate.js +8 -1
  10. package/dist/approval-gate.js.map +1 -1
  11. package/dist/blackboard.d.ts.map +1 -1
  12. package/dist/blackboard.js +3 -2
  13. package/dist/blackboard.js.map +1 -1
  14. package/dist/commands.d.ts.map +1 -1
  15. package/dist/commands.js +7 -6
  16. package/dist/commands.js.map +1 -1
  17. package/dist/envprotect/bash-classify.d.ts +42 -0
  18. package/dist/envprotect/bash-classify.d.ts.map +1 -0
  19. package/dist/envprotect/bash-classify.js +221 -0
  20. package/dist/envprotect/bash-classify.js.map +1 -0
  21. package/dist/envprotect/gate-predicates.d.ts +57 -0
  22. package/dist/envprotect/gate-predicates.d.ts.map +1 -0
  23. package/dist/envprotect/gate-predicates.js +174 -0
  24. package/dist/envprotect/gate-predicates.js.map +1 -0
  25. package/dist/envprotect/hook.d.ts +45 -0
  26. package/dist/envprotect/hook.d.ts.map +1 -0
  27. package/dist/envprotect/hook.js +158 -0
  28. package/dist/envprotect/hook.js.map +1 -0
  29. package/dist/envprotect/path-classify.d.ts +16 -0
  30. package/dist/envprotect/path-classify.d.ts.map +1 -0
  31. package/dist/envprotect/path-classify.js +72 -0
  32. package/dist/envprotect/path-classify.js.map +1 -0
  33. package/dist/envprotect/patterns.d.ts +77 -0
  34. package/dist/envprotect/patterns.d.ts.map +1 -0
  35. package/dist/envprotect/patterns.js +182 -0
  36. package/dist/envprotect/patterns.js.map +1 -0
  37. package/dist/envprotect.d.ts +19 -217
  38. package/dist/envprotect.d.ts.map +1 -1
  39. package/dist/envprotect.js +18 -803
  40. package/dist/envprotect.js.map +1 -1
  41. package/dist/fs-safe.d.ts +16 -0
  42. package/dist/fs-safe.d.ts.map +1 -0
  43. package/dist/fs-safe.js +56 -0
  44. package/dist/fs-safe.js.map +1 -0
  45. package/dist/index.d.ts.map +1 -1
  46. package/dist/index.js +22 -6
  47. package/dist/index.js.map +1 -1
  48. package/dist/prompts/lead.d.ts +7 -0
  49. package/dist/prompts/lead.d.ts.map +1 -0
  50. package/dist/prompts/lead.js +233 -0
  51. package/dist/prompts/lead.js.map +1 -0
  52. package/dist/prompts/shared.d.ts +8 -0
  53. package/dist/prompts/shared.d.ts.map +1 -0
  54. package/dist/prompts/shared.js +120 -0
  55. package/dist/prompts/shared.js.map +1 -0
  56. package/dist/prompts/specialists.d.ts +12 -0
  57. package/dist/prompts/specialists.d.ts.map +1 -0
  58. package/dist/prompts/specialists.js +241 -0
  59. package/dist/prompts/specialists.js.map +1 -0
  60. package/dist/shell-text.d.ts +14 -0
  61. package/dist/shell-text.d.ts.map +1 -0
  62. package/dist/shell-text.js +16 -0
  63. package/dist/shell-text.js.map +1 -0
  64. package/dist/tm/args-schema.d.ts +42 -0
  65. package/dist/tm/args-schema.d.ts.map +1 -0
  66. package/dist/tm/args-schema.js +213 -0
  67. package/dist/tm/args-schema.js.map +1 -0
  68. package/dist/tm/browser.d.ts +52 -0
  69. package/dist/tm/browser.d.ts.map +1 -0
  70. package/dist/tm/browser.js +361 -0
  71. package/dist/tm/browser.js.map +1 -0
  72. package/dist/tm/client-unwrap.d.ts +38 -0
  73. package/dist/tm/client-unwrap.d.ts.map +1 -0
  74. package/dist/tm/client-unwrap.js +113 -0
  75. package/dist/tm/client-unwrap.js.map +1 -0
  76. package/dist/tm/config.d.ts +55 -19
  77. package/dist/tm/config.d.ts.map +1 -1
  78. package/dist/tm/config.js +74 -19
  79. package/dist/tm/config.js.map +1 -1
  80. package/dist/tm/guard.d.ts.map +1 -1
  81. package/dist/tm/guard.js +4 -7
  82. package/dist/tm/guard.js.map +1 -1
  83. package/dist/tm/index.d.ts +24 -7
  84. package/dist/tm/index.d.ts.map +1 -1
  85. package/dist/tm/index.js +111 -21
  86. package/dist/tm/index.js.map +1 -1
  87. package/dist/tm/memory.d.ts +88 -0
  88. package/dist/tm/memory.d.ts.map +1 -0
  89. package/dist/tm/memory.js +360 -0
  90. package/dist/tm/memory.js.map +1 -0
  91. package/dist/tm/pipelines.d.ts +58 -0
  92. package/dist/tm/pipelines.d.ts.map +1 -0
  93. package/dist/tm/pipelines.js +308 -0
  94. package/dist/tm/pipelines.js.map +1 -0
  95. package/dist/tm/preview.d.ts +6 -1
  96. package/dist/tm/preview.d.ts.map +1 -1
  97. package/dist/tm/preview.js +63 -13
  98. package/dist/tm/preview.js.map +1 -1
  99. package/dist/tm/ptc/budgets.d.ts +38 -0
  100. package/dist/tm/ptc/budgets.d.ts.map +1 -0
  101. package/dist/tm/ptc/budgets.js +59 -0
  102. package/dist/tm/ptc/budgets.js.map +1 -0
  103. package/dist/tm/ptc/contract.d.ts +131 -0
  104. package/dist/tm/ptc/contract.d.ts.map +1 -0
  105. package/dist/tm/ptc/contract.js +47 -0
  106. package/dist/tm/ptc/contract.js.map +1 -0
  107. package/dist/tm/ptc/driver.d.ts +37 -0
  108. package/dist/tm/ptc/driver.d.ts.map +1 -0
  109. package/dist/tm/ptc/driver.js +181 -0
  110. package/dist/tm/ptc/driver.js.map +1 -0
  111. package/dist/tm/ptc/engines.d.ts +32 -0
  112. package/dist/tm/ptc/engines.d.ts.map +1 -0
  113. package/dist/tm/ptc/engines.js +201 -0
  114. package/dist/tm/ptc/engines.js.map +1 -0
  115. package/dist/tm/ptc/gate.d.ts +28 -0
  116. package/dist/tm/ptc/gate.d.ts.map +1 -0
  117. package/dist/tm/ptc/gate.js +130 -0
  118. package/dist/tm/ptc/gate.js.map +1 -0
  119. package/dist/tm/ptc/index.d.ts +19 -0
  120. package/dist/tm/ptc/index.d.ts.map +1 -0
  121. package/dist/tm/ptc/index.js +15 -0
  122. package/dist/tm/ptc/index.js.map +1 -0
  123. package/dist/tm/ptc/pscan.d.ts +11 -0
  124. package/dist/tm/ptc/pscan.d.ts.map +1 -0
  125. package/dist/tm/ptc/pscan.js +27 -0
  126. package/dist/tm/ptc/pscan.js.map +1 -0
  127. package/dist/tm/ptc/summary.d.ts +17 -0
  128. package/dist/tm/ptc/summary.d.ts.map +1 -0
  129. package/dist/tm/ptc/summary.js +112 -0
  130. package/dist/tm/ptc/summary.js.map +1 -0
  131. package/dist/tm/ptc/tool.d.ts +35 -0
  132. package/dist/tm/ptc/tool.d.ts.map +1 -0
  133. package/dist/tm/ptc/tool.js +136 -0
  134. package/dist/tm/ptc/tool.js.map +1 -0
  135. package/dist/tm/ptc.d.ts +45 -26
  136. package/dist/tm/ptc.d.ts.map +1 -1
  137. package/dist/tm/ptc.js +71 -45
  138. package/dist/tm/ptc.js.map +1 -1
  139. package/dist/tm/result.d.ts +34 -0
  140. package/dist/tm/result.d.ts.map +1 -0
  141. package/dist/tm/result.js +87 -0
  142. package/dist/tm/result.js.map +1 -0
  143. package/dist/tm/search.d.ts +58 -0
  144. package/dist/tm/search.d.ts.map +1 -0
  145. package/dist/tm/search.js +229 -0
  146. package/dist/tm/search.js.map +1 -0
  147. package/dist/tm/shell-bridge.d.ts +22 -0
  148. package/dist/tm/shell-bridge.d.ts.map +1 -0
  149. package/dist/tm/shell-bridge.js +116 -0
  150. package/dist/tm/shell-bridge.js.map +1 -0
  151. package/dist/tm/store.d.ts.map +1 -1
  152. package/dist/tm/store.js +2 -1
  153. package/dist/tm/store.js.map +1 -1
  154. package/dist/tm/tools.d.ts +13 -71
  155. package/dist/tm/tools.d.ts.map +1 -1
  156. package/dist/tm/tools.js +22 -656
  157. package/dist/tm/tools.js.map +1 -1
  158. package/dist/tm/webfetch.d.ts +109 -0
  159. package/dist/tm/webfetch.d.ts.map +1 -0
  160. package/dist/tm/webfetch.js +305 -0
  161. package/dist/tm/webfetch.js.map +1 -0
  162. package/docs/installation.md +201 -0
  163. package/package.json +4 -3
package/dist/tm/ptc.d.ts CHANGED
@@ -1,21 +1,29 @@
1
1
  /**
2
- * tm_ptc_run — M1 contract + aggregation skeleton (NO sandbox).
2
+ * tm_ptc_run — programmatic batch orchestration (M1–M3 all shipped).
3
3
  *
4
4
  * Design: .git/opencode-team/.../ptc-run/02-architect-ptc-run-design.md §2/§3/§4/§6.
5
- * Milestone split (design §10): this is **M1 only** — args schema, the engine
6
- * RPC seam frozen for M2, the StepGate failure governance (error / call /
7
- * time budgets, ≤1 retry on idempotent phases, produced-output preservation),
8
- * the five-state status enum, the char-pinned aggregation summary, composite
9
- * step numbers (`sXXXX.kNN`) and the trajectory event shapes.
5
+ * M1 contract: args schema, the frozen `PtcEngine` seam, the StepGate failure
6
+ * governance (error / call / time budgets, ≤1 retry on idempotent phases,
7
+ * produced-output preservation), the five-state status enum, the char-pinned
8
+ * aggregation summary, composite step numbers (`sXXXX.kNN`) and the
9
+ * trajectory event shapes.
10
+ * M2 engines: WorkerEngine (worker_threads + MessagePort RPC, env:{},
11
+ * resourceLimits, hard `terminate()` wall-clock kill; bootstrap as a
12
+ * build-time string), InlineVmEngine (node:vm runInNewContext fallback —
13
+ * the script timeout kills pre-await synchronous busy-loops; a post-await
14
+ * busy loop blocks the host event loop irrecoverably, documented —
15
+ * prefer worker/auto), InlineSequentialEngine (M1 legacy, test-only).
16
+ * staticPscan is wired as
17
+ * the FIRST gate — banned tokens reject before any engine runs (in both
18
+ * runPtc and the tool execute path).
19
+ * M3 registration: tm/index merges tm_ptc_run into the `tools` map; since
20
+ * v1.5.4 ALL SIX agents carry the allow (team included — CHANGELOG 1.5.4).
10
21
  *
11
- * Deliberately NOT here in M1 (deferred):
12
- * - the worker/RPC engine + inline-VM sandbox (M2 — the `PtcEngine` seam
13
- * below is frozen so M2 adds an engine without touching this contract);
14
- * - the program-source static pre-scan is WRITTEN but NOT wired into the run
15
- * path (M2 attaches it) — `staticPscan`, marked unused here;
16
- * - registering `tm_ptc_run` into the tm_* tool set (M3 role/whitelist
17
- * wiring) — `buildPtcRunTool` exists and is fully exercised by tests, but
18
- * index.ts does NOT merge it into `tools` yet.
22
+ * Engine selection: TM_PTC_ENGINE=auto (default) | worker | inline. auto
23
+ * runs worker-first; an engine-error re-runs the WHOLE program on
24
+ * InlineVmEngine (bridged calls are read-only, so a re-run is safe; the
25
+ * fallback starts with fresh call/error budgets under the SAME wall-clock
26
+ * deadline) and marks `degraded-engine` in the summary.
19
27
  *
20
28
  * Governance is REUSED, never forked (D6 lock): the inline bridge calls the
21
29
  * exact four exported pipelines (`buildPipelines`), so threshold offload,
@@ -123,8 +131,8 @@ export type PtcArgsResult = {
123
131
  * 80 is truncated; `budgets` are clamped toward the env ceilings.
124
132
  */
125
133
  export declare function parsePtcArgs(raw: Record<string, unknown> | undefined, cfg: TmConfig): PtcArgsResult;
126
- /** Static scan of a program string. M1 EXPOSES + tests this but does NOT call
127
- * it in the run path (the sandbox that needs it lands in M2). */
134
+ /** Static scan of a program string — the FIRST gate: runPtc and
135
+ * buildPtcRunTool both reject a rejected program before any engine runs. */
128
136
  export declare function staticPscan(program: string): {
129
137
  rejected: boolean;
130
138
  tokens: string[];
@@ -183,19 +191,27 @@ export declare class WorkerEngine implements PtcEngine {
183
191
  run(program: string, bridge: PtcBridge, signal: AbortSignal): Promise<unknown>;
184
192
  }
185
193
  /**
186
- * Inline-vm engine — runs the program inside `node:vm` with a compile
187
- * timeout for synchronous busy-loops. Same `PtcEngine` seam as
188
- * `InlineSequentialEngine` (M1) and `WorkerEngine` (M2).
194
+ * Inline-vm engine — runs the program inside `node:vm` via
195
+ * `runInNewContext` with a script-level execution timeout. Measured on
196
+ * Node 24/win32: `compileFunction`'s `timeout` does NOT interrupt a busy
197
+ * loop when the compiled function is invoked (the call blocks the main
198
+ * thread forever), while the async-IIFE + `runInNewContext` shape DOES —
199
+ * a synchronous busy loop before the first `await` is killed ("Script
200
+ * execution timed out").
189
201
  *
190
- * KNOWN RESIDUAL RISK (design §3, declared): `vm.compileFunction`'s
191
- * `timeout` only kills synchronous CPU-bound loops. An `await` yields
192
- * back to the event loop, so a pure-JS busy-wait between awaits can only
193
- * be caught by the next bridge call's step-budget pre-check. This is the
194
- * accepted trade-off for the inline fallback; the primary worker engine
195
- * does not share this limitation (`worker.terminate()` is wall-clock).
202
+ * KNOWN RESIDUAL RISK (design §3, declared): a busy loop AFTER the first
203
+ * `await` runs in a microtask continuation that blocks the host event
204
+ * loop — no timer can fire, so NOTHING reclaims the main thread. This is
205
+ * inherent to any main-thread execution (InlineSequentialEngine shares
206
+ * it); the primary worker engine does not share it (`terminate()` runs on
207
+ * a separate thread) — prefer worker/auto in production.
196
208
  */
197
209
  export declare class InlineVmEngine implements PtcEngine {
198
210
  readonly name: PtcEngineName;
211
+ /** Script execution timeout in ms (kills pre-await synchronous
212
+ * busy-loops). Injectable so tests can pin the kill fast. */
213
+ private readonly compileTimeoutMs;
214
+ constructor(compileTimeoutMs?: number);
199
215
  run(program: string, bridge: PtcBridge, signal: AbortSignal): Promise<unknown>;
200
216
  }
201
217
  interface GateState {
@@ -264,13 +280,16 @@ export declare function renderPtcSummary(o: PtcRunOutcome, offload?: (content: s
264
280
  */
265
281
  export declare function pipelineBridge(pipelines: TmPipelines, ctx: unknown): PtcBridge;
266
282
  /** Build the tm_ptc_run ToolDefinition. Registered in the tool segment
267
- * when the agent's whitelist grants tm_ptc_run (M3). */
283
+ * when the agent's whitelist grants tm_ptc_run (M3). `deps.args` is the
284
+ * ZodRawShape from tools.buildPtcArgsSchema() when zod is available — the
285
+ * descriptor fallback below keeps the tool usable without zod. */
268
286
  export declare function buildPtcRunTool(deps: {
269
287
  cfg: TmConfig;
270
288
  store: RunStore;
271
289
  nextStepId: () => string;
272
290
  ctx: unknown;
273
291
  accessToken: string;
292
+ args?: Record<string, unknown>;
274
293
  engine?: PtcEngine;
275
294
  pipelines?: TmPipelines;
276
295
  bridge?: PtcBridge;
@@ -1 +1 @@
1
- {"version":3,"file":"ptc.d.ts","sourceRoot":"","sources":["../../src/tm/ptc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ptc.d.ts","sourceRoot":"","sources":["../../src/tm/ptc.ts"],"names":[],"mappings":"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"}
package/dist/tm/ptc.js CHANGED
@@ -1,21 +1,29 @@
1
1
  /**
2
- * tm_ptc_run — M1 contract + aggregation skeleton (NO sandbox).
2
+ * tm_ptc_run — programmatic batch orchestration (M1–M3 all shipped).
3
3
  *
4
4
  * Design: .git/opencode-team/.../ptc-run/02-architect-ptc-run-design.md §2/§3/§4/§6.
5
- * Milestone split (design §10): this is **M1 only** — args schema, the engine
6
- * RPC seam frozen for M2, the StepGate failure governance (error / call /
7
- * time budgets, ≤1 retry on idempotent phases, produced-output preservation),
8
- * the five-state status enum, the char-pinned aggregation summary, composite
9
- * step numbers (`sXXXX.kNN`) and the trajectory event shapes.
5
+ * M1 contract: args schema, the frozen `PtcEngine` seam, the StepGate failure
6
+ * governance (error / call / time budgets, ≤1 retry on idempotent phases,
7
+ * produced-output preservation), the five-state status enum, the char-pinned
8
+ * aggregation summary, composite step numbers (`sXXXX.kNN`) and the
9
+ * trajectory event shapes.
10
+ * M2 engines: WorkerEngine (worker_threads + MessagePort RPC, env:{},
11
+ * resourceLimits, hard `terminate()` wall-clock kill; bootstrap as a
12
+ * build-time string), InlineVmEngine (node:vm runInNewContext fallback —
13
+ * the script timeout kills pre-await synchronous busy-loops; a post-await
14
+ * busy loop blocks the host event loop irrecoverably, documented —
15
+ * prefer worker/auto), InlineSequentialEngine (M1 legacy, test-only).
16
+ * staticPscan is wired as
17
+ * the FIRST gate — banned tokens reject before any engine runs (in both
18
+ * runPtc and the tool execute path).
19
+ * M3 registration: tm/index merges tm_ptc_run into the `tools` map; since
20
+ * v1.5.4 ALL SIX agents carry the allow (team included — CHANGELOG 1.5.4).
10
21
  *
11
- * Deliberately NOT here in M1 (deferred):
12
- * - the worker/RPC engine + inline-VM sandbox (M2 — the `PtcEngine` seam
13
- * below is frozen so M2 adds an engine without touching this contract);
14
- * - the program-source static pre-scan is WRITTEN but NOT wired into the run
15
- * path (M2 attaches it) — `staticPscan`, marked unused here;
16
- * - registering `tm_ptc_run` into the tm_* tool set (M3 role/whitelist
17
- * wiring) — `buildPtcRunTool` exists and is fully exercised by tests, but
18
- * index.ts does NOT merge it into `tools` yet.
22
+ * Engine selection: TM_PTC_ENGINE=auto (default) | worker | inline. auto
23
+ * runs worker-first; an engine-error re-runs the WHOLE program on
24
+ * InlineVmEngine (bridged calls are read-only, so a re-run is safe; the
25
+ * fallback starts with fresh call/error budgets under the SAME wall-clock
26
+ * deadline) and marks `degraded-engine` in the summary.
19
27
  *
20
28
  * Governance is REUSED, never forked (D6 lock): the inline bridge calls the
21
29
  * exact four exported pipelines (`buildPipelines`), so threshold offload,
@@ -93,7 +101,7 @@ export function parsePtcArgs(raw, cfg) {
93
101
  const budgets = resolvePtcBudgets(cfg, a.budgets);
94
102
  return { ok: true, args: { program, label, budgets } };
95
103
  }
96
- // ---------- static pre-scan (WRITTEN, NOT enabled in M1 — M2 wires it) ------
104
+ // ---------- static pre-scan (the FIRST gate: wired into runPtc + the tool) --
97
105
  /** Banned identifier tokens for the program source (auxiliary guard, not a
98
106
  * security boundary — see design §3 trust model). */
99
107
  const PSCAN_PATTERNS = [
@@ -107,8 +115,8 @@ const PSCAN_PATTERNS = [
107
115
  /\bnet\b/,
108
116
  /\bchild_process\b/,
109
117
  ];
110
- /** Static scan of a program string. M1 EXPOSES + tests this but does NOT call
111
- * it in the run path (the sandbox that needs it lands in M2). */
118
+ /** Static scan of a program string — the FIRST gate: runPtc and
119
+ * buildPtcRunTool both reject a rejected program before any engine runs. */
112
120
  export function staticPscan(program) {
113
121
  const tokens = [];
114
122
  for (const re of PSCAN_PATTERNS) {
@@ -145,9 +153,11 @@ function extractLine(err) {
145
153
  export class InlineSequentialEngine {
146
154
  name = "inline";
147
155
  async run(program, bridge, signal) {
148
- // M1 = "no sandbox": the program is a trusted async function body (only our
149
- // implementer/tester agents author it, temp 0.2). M2 replaces this with the
150
- // worker/VM engines behind the SAME seam; nothing else in this file changes.
156
+ // M1 legacy engine, kept test-only: the program runs as a trusted async
157
+ // function body on the MAIN thread — no sandbox, no timeout, and a
158
+ // post-await busy loop blocks the host event loop irrecoverably (same
159
+ // residual as InlineVmEngine). Production runs WorkerEngine (auto
160
+ // default) or InlineVmEngine.
151
161
  const AsyncFunction = Object.getPrototypeOf(async function () { }).constructor;
152
162
  const tm = makeFacade(bridge);
153
163
  let abortHandler;
@@ -214,7 +224,10 @@ export class WorkerEngine {
214
224
  " }",
215
225
  " });",
216
226
  " try {",
217
- " var fn = new AsyncFunction(" + JSON.stringify("tm") + ", program);",
227
+ // strict-mode body, same as the inline engines (they prefix the program
228
+ // with "use strict"; the worker builds the body string here)
229
+ " var body = " + JSON.stringify('"use strict";\n') + " + program;",
230
+ " var fn = new AsyncFunction(" + JSON.stringify("tm") + ", body);",
218
231
  " var result = await fn(tm);",
219
232
  ' parentPort.postMessage({ t: "done", result: result });',
220
233
  " } catch (err) {",
@@ -295,19 +308,29 @@ export class WorkerEngine {
295
308
  }
296
309
  // ---------- M2: inline-vm fallback engine (node:vm with timeout) ----------
297
310
  /**
298
- * Inline-vm engine — runs the program inside `node:vm` with a compile
299
- * timeout for synchronous busy-loops. Same `PtcEngine` seam as
300
- * `InlineSequentialEngine` (M1) and `WorkerEngine` (M2).
311
+ * Inline-vm engine — runs the program inside `node:vm` via
312
+ * `runInNewContext` with a script-level execution timeout. Measured on
313
+ * Node 24/win32: `compileFunction`'s `timeout` does NOT interrupt a busy
314
+ * loop when the compiled function is invoked (the call blocks the main
315
+ * thread forever), while the async-IIFE + `runInNewContext` shape DOES —
316
+ * a synchronous busy loop before the first `await` is killed ("Script
317
+ * execution timed out").
301
318
  *
302
- * KNOWN RESIDUAL RISK (design §3, declared): `vm.compileFunction`'s
303
- * `timeout` only kills synchronous CPU-bound loops. An `await` yields
304
- * back to the event loop, so a pure-JS busy-wait between awaits can only
305
- * be caught by the next bridge call's step-budget pre-check. This is the
306
- * accepted trade-off for the inline fallback; the primary worker engine
307
- * does not share this limitation (`worker.terminate()` is wall-clock).
319
+ * KNOWN RESIDUAL RISK (design §3, declared): a busy loop AFTER the first
320
+ * `await` runs in a microtask continuation that blocks the host event
321
+ * loop — no timer can fire, so NOTHING reclaims the main thread. This is
322
+ * inherent to any main-thread execution (InlineSequentialEngine shares
323
+ * it); the primary worker engine does not share it (`terminate()` runs on
324
+ * a separate thread) — prefer worker/auto in production.
308
325
  */
309
326
  export class InlineVmEngine {
310
327
  name = "inline";
328
+ /** Script execution timeout in ms (kills pre-await synchronous
329
+ * busy-loops). Injectable so tests can pin the kill fast. */
330
+ compileTimeoutMs;
331
+ constructor(compileTimeoutMs = 30_000) {
332
+ this.compileTimeoutMs = compileTimeoutMs;
333
+ }
311
334
  async run(program, bridge, signal) {
312
335
  const tm = makeFacade(bridge);
313
336
  let abortHandler;
@@ -319,10 +342,12 @@ export class InlineVmEngine {
319
342
  signal.addEventListener("abort", abortHandler, { once: true });
320
343
  });
321
344
  try {
322
- // compileFunction's timeout kills synchronous busy-loops; the `await`
323
- // gap residual is documented (design §3) and accepted for the fallback.
324
- const fn = vm.compileFunction(`"use strict";\n${program}`, ["tm"], { timeout: 30_000 });
325
- return await Promise.race([fn(tm), abortP]);
345
+ // The async-IIFE is the program wrapper: `return` stays legal in the
346
+ // body, the `tm` facade rides the context globals, and the script's
347
+ // completion value IS the program's promise. The timeout kills
348
+ // pre-await synchronous busy-loops (see the class doc).
349
+ const promise = vm.runInNewContext(`(async () => {\n"use strict";\n${program}\n})()`, { tm }, { timeout: this.compileTimeoutMs });
350
+ return await Promise.race([promise, abortP]);
326
351
  }
327
352
  finally {
328
353
  if (abortHandler)
@@ -471,14 +496,13 @@ export function selectEngine(mode, bridge) {
471
496
  if (mode === "worker") {
472
497
  return { engine: new WorkerEngine(), degraded: false };
473
498
  }
474
- // auto: try worker first, degrade to inline on any failure.
475
- try {
476
- // WorkerEngine construction is cheap (no spawn until run()).
477
- return { engine: new WorkerEngine(), degraded: false };
478
- }
479
- catch {
480
- return { engine: new InlineVmEngine(), degraded: true };
481
- }
499
+ // auto: worker first. Construction never throws (no spawn until run()),
500
+ // so this branch cannot fail — the REAL auto-degrade happens in runPtc,
501
+ // which re-runs the whole program on InlineVmEngine when a worker run
502
+ // returns engine-error (bridged calls are read-only, so a re-run is safe;
503
+ // the fallback run starts with fresh call/error budgets under the SAME
504
+ // wall-clock deadline).
505
+ return { engine: new WorkerEngine(), degraded: false };
482
506
  }
483
507
  export async function runPtc(o) {
484
508
  const now = o.now ?? Date.now;
@@ -755,16 +779,18 @@ const PTC_RUN_DESCRIPTION = `Program-mode batch orchestration over the four gove
755
779
  - budgets (optional, tighten-only; clamped to TM_PTC_* ceilings): max_calls, max_errors, timeout_ms. Hitting any budget stops the whole run (produced output is NOT lost). Errors are retried at most once and only on idempotent phases (client/execute/store).
756
780
  - Governance is NOT bypassed: every bridged call runs the full tm_* pipeline (P2 path scope, P3 allowlist, R6, threshold offload + handles, TTL). Status is one of ok | stopped-error-budget | stopped-call-budget | timeout | engine-error.
757
781
  - Programs containing require/import/process/globalThis/Deno/Bun/fs/net/child_process are rejected before execution (static pre-scan, auxiliary guard).
758
- - Engine: TM_PTC_ENGINE=auto|worker|inline (auto tries worker first, falls back to inline with degraded-engine mark).`;
782
+ - Engine: TM_PTC_ENGINE=auto|worker|inline (auto tries worker first; on engine failure it re-runs the WHOLE program on inline with a degraded-engine mark — bridged calls are read-only, so a re-run is safe, and the fallback starts with fresh budgets under the same wall-clock deadline). The inline engine kills pre-await synchronous busy-loops via the vm script timeout; a busy loop after the first await blocks the host event loop irrecoverably — prefer worker/auto.`;
759
783
  /** Build the tm_ptc_run ToolDefinition. Registered in the tool segment
760
- * when the agent's whitelist grants tm_ptc_run (M3). */
784
+ * when the agent's whitelist grants tm_ptc_run (M3). `deps.args` is the
785
+ * ZodRawShape from tools.buildPtcArgsSchema() when zod is available — the
786
+ * descriptor fallback below keeps the tool usable without zod. */
761
787
  export function buildPtcRunTool(deps) {
762
788
  const { cfg, store, nextStepId, ctx, accessToken } = deps;
763
789
  const baseBridge = deps.bridge ?? (deps.pipelines ? pipelineBridge(deps.pipelines, ctx) : undefined);
764
790
  const expireAt = () => Date.now() + cfg.blackboardTtlDays * 24 * 60 * 60 * 1000;
765
791
  return {
766
792
  description: PTC_RUN_DESCRIPTION,
767
- args: {
793
+ args: deps.args ?? {
768
794
  program: { descriptor: "program: string (required, async fn body, ≤TM_PTC_MAX_PROGRAM_CHARS)" },
769
795
  label: { descriptor: "label: string (optional, ≤80 chars)" },
770
796
  budgets: { descriptor: "budgets: { max_calls?, max_errors?, timeout_ms? } (optional, tighten-only)" },
@@ -1 +1 @@
1
- {"version":3,"file":"ptc.js","sourceRoot":"","sources":["../../src/tm/ptc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ptc.js","sourceRoot":"","sources":["../../src/tm/ptc.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * tm layer — structured errors (T1.4) + the ToolResult rendering contract
3
+ * (official tool.d.ts:39-46). Split out of the former tools.ts hub; behavior
4
+ * unchanged.
5
+ *
6
+ * ToolResult contract: execute() returns {output: string} — ALWAYS. Handles,
7
+ * structured errors, pages and degraded warnings are formatted INTO the
8
+ * output text; a bare object return crashes the host result pipeline
9
+ * (`c.split`) and the model would never see the handle it needs to drive
10
+ * tm_fetch.
11
+ */
12
+ import type { ToolResult } from "../types.js";
13
+ export type TmPhase = "args" | "permission" | "client" | "execute" | "store" | "governance";
14
+ export interface TmErrorBody {
15
+ error: {
16
+ tool: string;
17
+ phase: TmPhase;
18
+ message: string;
19
+ line?: number;
20
+ };
21
+ }
22
+ export declare function tmError(tool: string, phase: TmPhase, message: string, line?: number): TmErrorBody;
23
+ /** Fixed invalid-handle message (spec-pinned wording for tm_fetch). */
24
+ export declare const HANDLE_INVALID_MESSAGE = "\u8F7D\u8377\u5DF2\u6E05\u7406\u6216 run \u4E0D\u5339\u914D\uFF0C\u5EFA\u8BAE\u91CD\u8DD1\u539F\u5DE5\u5177\u3002";
25
+ export declare function isTmErrorBody(res: unknown): res is TmErrorBody;
26
+ /**
27
+ * Render one pipeline result as the host ToolResult: `{output: string}`.
28
+ * The model can ONLY see this text — so the handle fields it needs to drive
29
+ * tm_fetch (ref/access_token/expire_at), the preview, paging hints, error
30
+ * phase/message and degraded warnings are all formatted INTO the output.
31
+ * Exported for the tm_webfetch tool (built outside the pipelines module).
32
+ */
33
+ export declare function toToolResult(res: unknown): ToolResult;
34
+ //# sourceMappingURL=result.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../../src/tm/result.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAE7C,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,YAAY,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,YAAY,CAAA;AAE3F,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CACxE;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAIjG;AAED,uEAAuE;AACvE,eAAO,MAAM,sBAAsB,sHAA4B,CAAA;AAE/D,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,WAAW,CAE9D;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,UAAU,CAsDrD"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * tm layer — structured errors (T1.4) + the ToolResult rendering contract
3
+ * (official tool.d.ts:39-46). Split out of the former tools.ts hub; behavior
4
+ * unchanged.
5
+ *
6
+ * ToolResult contract: execute() returns {output: string} — ALWAYS. Handles,
7
+ * structured errors, pages and degraded warnings are formatted INTO the
8
+ * output text; a bare object return crashes the host result pipeline
9
+ * (`c.split`) and the model would never see the handle it needs to drive
10
+ * tm_fetch.
11
+ */
12
+ export function tmError(tool, phase, message, line) {
13
+ const body = { tool, phase, message };
14
+ if (typeof line === "number" && Number.isFinite(line))
15
+ body.line = line;
16
+ return { error: body };
17
+ }
18
+ /** Fixed invalid-handle message (spec-pinned wording for tm_fetch). */
19
+ export const HANDLE_INVALID_MESSAGE = "载荷已清理或 run 不匹配,建议重跑原工具。";
20
+ export function isTmErrorBody(res) {
21
+ return Boolean(res) && typeof res === "object" && "error" in res;
22
+ }
23
+ /**
24
+ * Render one pipeline result as the host ToolResult: `{output: string}`.
25
+ * The model can ONLY see this text — so the handle fields it needs to drive
26
+ * tm_fetch (ref/access_token/expire_at), the preview, paging hints, error
27
+ * phase/message and degraded warnings are all formatted INTO the output.
28
+ * Exported for the tm_webfetch tool (built outside the pipelines module).
29
+ */
30
+ export function toToolResult(res) {
31
+ if (typeof res === "string")
32
+ return { output: res };
33
+ if (!res || typeof res !== "object")
34
+ return { output: String(res ?? "") };
35
+ if (isTmErrorBody(res)) {
36
+ const e = res.error;
37
+ const head = `[${e.tool} 失败 · phase=${e.phase}` + (typeof e.line === "number" ? ` · line=${e.line}` : "") + "]";
38
+ return { output: `${head}\n${e.message}` };
39
+ }
40
+ const o = res;
41
+ // tm_fetch structure page
42
+ if (o.mode === "structure") {
43
+ return {
44
+ output: [
45
+ `ref: ${String(o.ref)}`,
46
+ `mode: structure | total_lines: ${String(o.total_lines)}${o.expire_at != null ? ` | expire_at: ${String(o.expire_at)}` : ""}`,
47
+ "结构摘要:",
48
+ String(o.summary ?? ""),
49
+ ].join("\n"),
50
+ };
51
+ }
52
+ // tm_fetch lines page — hint already carries total/returned/remaining/next offset
53
+ if (o.mode === "lines") {
54
+ return {
55
+ output: `ref: ${String(o.ref)}\n${String(o.hint ?? "")}\n--- 内容 ---\n${String(o.content ?? "")}`,
56
+ };
57
+ }
58
+ // offload handle — the model's ONLY window onto ref + token + preview
59
+ if (o.offloaded === true) {
60
+ return {
61
+ output: [
62
+ `结果过大(约 ${String(o.tokens)} tokens),已卸载到 run 存储。以下句柄是取回全文的唯一入口:`,
63
+ `ref: ${String(o.ref)}`,
64
+ `access_token: ${String(o.access_token)}`,
65
+ `expire_at: ${String(o.expire_at)}`,
66
+ `tokens: ${String(o.tokens)}`,
67
+ `content_type: ${String(o.content_type ?? "text")}`,
68
+ "preview:",
69
+ String(o.preview ?? ""),
70
+ `用 tm_fetch(ref, access_token) 分页取回;大载荷先试 mode:"structure"。`,
71
+ ].join("\n"),
72
+ };
73
+ }
74
+ // degraded path — store failure never fails the task
75
+ if (o.degraded === true) {
76
+ return {
77
+ output: `[警告] ${String(o.warning ?? "")}\n--- 内容(截断) ---\n${String(o.content ?? "")}`,
78
+ };
79
+ }
80
+ try {
81
+ return { output: JSON.stringify(res, null, 2) };
82
+ }
83
+ catch {
84
+ return { output: String(res) };
85
+ }
86
+ }
87
+ //# sourceMappingURL=result.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result.js","sourceRoot":"","sources":["../../src/tm/result.ts"],"names":[],"mappings":"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"}