pi-fabric 0.104.0 → 0.104.2

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 (49) hide show
  1. package/README.md +4 -4
  2. package/THIRD_PARTY_NOTICES.md +8 -0
  3. package/dist/agents/manager.d.ts.map +1 -1
  4. package/dist/agents/transports/process-transport.d.ts.map +1 -1
  5. package/dist/agents/transports/process-utils.d.ts +4 -1
  6. package/dist/agents/transports/process-utils.d.ts.map +1 -1
  7. package/dist/agents/types.d.ts +2 -0
  8. package/dist/agents/types.d.ts.map +1 -1
  9. package/dist/chunks/{chunk-KMYXXGHU.js → chunk-BXYWRMBE.js} +2 -2
  10. package/dist/chunks/chunk-QUWC6YCN.js +125 -0
  11. package/dist/chunks/chunk-QUWC6YCN.js.map +7 -0
  12. package/dist/chunks/{chunk-7BG5COXB.js → chunk-SVDHQUTM.js} +21 -4
  13. package/dist/chunks/chunk-SVDHQUTM.js.map +7 -0
  14. package/dist/chunks/{chunk-DRZDTBPZ.js → chunk-Y5HBN75E.js} +35 -15
  15. package/dist/chunks/chunk-Y5HBN75E.js.map +7 -0
  16. package/dist/chunks/{chunk-5LKJU6VU.js → chunk-YFL34TLP.js} +1 -1
  17. package/dist/chunks/{chunk-HTDX5H7Q.js → chunk-ZLWJ3T75.js} +2 -2
  18. package/dist/fabric-runtime-state.js +2 -2
  19. package/dist/jev-fabric/client.js +1 -1
  20. package/dist/jev-fabric/client.js.map +2 -2
  21. package/dist/jev-fabric/resolve.js +1 -1
  22. package/dist/jev-fabric/resolve.js.map +2 -2
  23. package/dist/jev.js +1 -1
  24. package/dist/providers/jev-provider.js +1 -1
  25. package/dist/residency/host.js +3 -3
  26. package/dist/residency/pi-entry.js +3 -3
  27. package/dist/runtime/node-process-runtime.js +2 -2
  28. package/dist/runtime/typescript-kernel.js +2 -2
  29. package/dist/worker/result.d.ts +3 -0
  30. package/dist/worker/result.d.ts.map +1 -0
  31. package/dist/worker/result.js +7493 -0
  32. package/dist/worker/result.js.map +7 -0
  33. package/dist/worker/run-record.js +10 -113
  34. package/dist/worker/run-record.js.map +3 -3
  35. package/dist/worker/startup.d.ts +8 -0
  36. package/dist/worker/startup.d.ts.map +1 -0
  37. package/dist/worker.js +76 -20
  38. package/dist/worker.js.map +4 -4
  39. package/docs/agents.md +1 -1
  40. package/docs/background-tasks.md +1 -1
  41. package/docs/configuration.md +3 -1
  42. package/docs/licenses/typebox-mit.txt +23 -0
  43. package/docs/shell-composition.md +1 -1
  44. package/package.json +6 -6
  45. package/dist/chunks/chunk-7BG5COXB.js.map +0 -7
  46. package/dist/chunks/chunk-DRZDTBPZ.js.map +0 -7
  47. /package/dist/chunks/{chunk-KMYXXGHU.js.map → chunk-BXYWRMBE.js.map} +0 -0
  48. /package/dist/chunks/{chunk-5LKJU6VU.js.map → chunk-YFL34TLP.js.map} +0 -0
  49. /package/dist/chunks/{chunk-HTDX5H7Q.js.map → chunk-ZLWJ3T75.js.map} +0 -0
package/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  <div align="center">
2
2
 
3
3
  <p>
4
- <img src="https://raw.githubusercontent.com/monotykamary/pi-fabric/main/media/opencollective/logo-dark.svg" alt="Pi Fabric logo" width="96" height="96">
4
+ <img src="https://raw.githubusercontent.com/fabric-runtime/pi-fabric/main/media/opencollective/fabric-runtime/fa-avatar.png" alt="Pi Fabric logo" width="96" height="96">
5
5
  </p>
6
6
 
7
7
  # pi-fabric
@@ -11,12 +11,12 @@
11
11
  _One program for tools, MCP, agents, workflows, actors, mesh, councils, and recursion._
12
12
 
13
13
  <p>
14
- <img src="https://raw.githubusercontent.com/monotykamary/pi-fabric/main/media/banner.svg" alt="Animated banner: one checked TypeScript program weaving pi core tools, MCP servers, agents, and mesh into a single result" width="100%">
14
+ <img src="https://raw.githubusercontent.com/fabric-runtime/pi-fabric/main/media/banner.svg" alt="Animated banner: one checked TypeScript program weaving pi core tools, MCP servers, agents, and mesh into a single result" width="100%">
15
15
  </p>
16
16
 
17
17
  [![npm version](https://img.shields.io/npm/v/pi-fabric?style=for-the-badge&logo=npm&color=cb3837)](https://www.npmjs.com/package/pi-fabric)
18
18
  [![ARC-AGI-3 scorecard](https://img.shields.io/badge/ARC--AGI--3-100%25%20across%2025%20envs-16a34a?style=for-the-badge)](https://arcprize.org/scorecards/d4c56c67-136b-4643-b648-62ae28fe2a54)
19
- [![checks](https://img.shields.io/github/actions/workflow/status/monotykamary/pi-fabric/test.yml?branch=main&style=for-the-badge&label=checks)](https://github.com/monotykamary/pi-fabric/actions/workflows/test.yml)
19
+ [![checks](https://img.shields.io/github/actions/workflow/status/fabric-runtime/pi-fabric/test.yml?branch=main&style=for-the-badge&label=checks)](https://github.com/fabric-runtime/pi-fabric/actions/workflows/test.yml)
20
20
  [![pi extension](https://img.shields.io/badge/pi-extension-8b5cf6?style=for-the-badge)](https://github.com/earendil-works/pi-coding-agent)
21
21
  [![license](https://img.shields.io/badge/license-MIT-f4c430?style=for-the-badge)](LICENSE)
22
22
  [![Open Collective](https://img.shields.io/badge/Open_Collective-support-151515?style=for-the-badge&logo=opencollective&logoColor=white)](https://opencollective.com/pi-fabric)
@@ -96,7 +96,7 @@ pi install npm:pi-fabric
96
96
  From GitHub:
97
97
 
98
98
  ```bash
99
- pi install git:github.com/monotykamary/pi-fabric
99
+ pi install git:github.com/fabric-runtime/pi-fabric
100
100
  ```
101
101
 
102
102
  From a local checkout:
@@ -1,5 +1,13 @@
1
1
  # Third-party notices
2
2
 
3
+ ## TypeBox 1.3.27
4
+
5
+ The standalone worker's `dist/worker/result.js` includes the stateless validator
6
+ from [TypeBox](https://github.com/sinclairzx81/typebox), Copyright (c) 2017-2026
7
+ Haydn Paterson, licensed under MIT. This private artifact is not loaded by the
8
+ Pi extension, which continues to use Pi's host-provided TypeBox. The complete
9
+ license is distributed at [docs/licenses/typebox-mit.txt](docs/licenses/typebox-mit.txt).
10
+
3
11
  ## Bend 2.0.34
4
12
 
5
13
  The generated policy kernel includes Bend's emitted JavaScript trampoline and
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/agents/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/agents/manager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"process-transport.d.ts","sourceRoot":"","sources":["../../../src/agents/transports/process-transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,aAAa,CAAC;AAGrB,qBAAa,gBAAiB,YAAW,qBAAqB;IAC5D,QAAQ,CAAC,IAAI,EAAG,SAAS,CAAU;IAE7B,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAI7B,MAAM,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC;CAa3E"}
1
+ {"version":3,"file":"process-transport.d.ts","sourceRoot":"","sources":["../../../src/agents/transports/process-transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,aAAa,CAAC;AAGrB,qBAAa,gBAAiB,YAAW,qBAAqB;IAC5D,QAAQ,CAAC,IAAI,EAAG,SAAS,CAAU;IAE7B,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAI7B,MAAM,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC;CAe3E"}
@@ -25,9 +25,12 @@ export declare const resolveScriptRuntime: (options?: ScriptRuntimeOptions) => P
25
25
  export declare const resolveScriptRuntimeSync: (options?: ScriptRuntimeOptions) => string;
26
26
  export declare const scriptSpawnArgs: (workerPath: string, workerArguments: readonly string[], options?: ScriptRuntimeOptions) => Promise<string[]>;
27
27
  export declare const workerCommand: (workerPath: string, workerArguments: string[]) => Promise<string>;
28
- export declare const spawnDetached: (workerPath: string, workerArguments: string[], cwd: string) => Promise<{
28
+ export declare const spawnDetached: (workerPath: string, workerArguments: string[], cwd: string, options?: {
29
+ captureStderr?: boolean;
30
+ }) => Promise<{
29
31
  pid: number;
30
32
  stop(): Promise<void>;
31
33
  isAlive(): Promise<boolean>;
34
+ readStderr(): string;
32
35
  }>;
33
36
  //# sourceMappingURL=process-utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"process-utils.d.ts","sourceRoot":"","sources":["../../../src/agents/transports/process-utils.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,WAAW,GACtB,SAAS,MAAM,EACf,MAAM,MAAM,EAAE,EACd,UAAS;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,KACjD,OAAO,CAAC,cAAc,CAoBrB,CAAC;AA8BL;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAC3B,SAAS,MAAM,EACf,MAAK,MAAM,CAAC,UAAwB,KACnC,OAAO,CAAC,OAAO,CAUjB,CAAC;AAIF,eAAO,MAAM,cAAc,GAAI,KAAK,MAAM,KAAG,OAU5C,CAAC;AAIF,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB;8DAC0D;IAC1D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kEAAkE;IAClE,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAgDD,eAAO,MAAM,oBAAoB,GAAU,UAAU,oBAAoB,KAAG,OAAO,CAAC,MAAM,CAazF,CAAC;AAMF,eAAO,MAAM,wBAAwB,GAAI,UAAS,oBAAyB,KAAG,MAS7E,CAAC;AAaF,eAAO,MAAM,eAAe,GAC1B,YAAY,MAAM,EAClB,iBAAiB,SAAS,MAAM,EAAE,EAClC,UAAU,oBAAoB,KAC7B,OAAO,CAAC,MAAM,EAAE,CAGlB,CAAC;AAEF,eAAO,MAAM,aAAa,GACxB,YAAY,MAAM,EAClB,iBAAiB,MAAM,EAAE,KACxB,OAAO,CAAC,MAAM,CAC+D,CAAC;AAEjF,eAAO,MAAM,aAAa,GACxB,YAAY,MAAM,EAClB,iBAAiB,MAAM,EAAE,EACzB,KAAK,MAAM,KACV,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAA;CAAE,CAqB7E,CAAC"}
1
+ {"version":3,"file":"process-utils.d.ts","sourceRoot":"","sources":["../../../src/agents/transports/process-utils.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,WAAW,GACtB,SAAS,MAAM,EACf,MAAM,MAAM,EAAE,EACd,UAAS;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,KACjD,OAAO,CAAC,cAAc,CAoBrB,CAAC;AA8BL;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAC3B,SAAS,MAAM,EACf,MAAK,MAAM,CAAC,UAAwB,KACnC,OAAO,CAAC,OAAO,CAUjB,CAAC;AAIF,eAAO,MAAM,cAAc,GAAI,KAAK,MAAM,KAAG,OAU5C,CAAC;AAIF,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB;8DAC0D;IAC1D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kEAAkE;IAClE,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAgDD,eAAO,MAAM,oBAAoB,GAAU,UAAU,oBAAoB,KAAG,OAAO,CAAC,MAAM,CAazF,CAAC;AAMF,eAAO,MAAM,wBAAwB,GAAI,UAAS,oBAAyB,KAAG,MAS7E,CAAC;AAaF,eAAO,MAAM,eAAe,GAC1B,YAAY,MAAM,EAClB,iBAAiB,SAAS,MAAM,EAAE,EAClC,UAAU,oBAAoB,KAC7B,OAAO,CAAC,MAAM,EAAE,CAGlB,CAAC;AAEF,eAAO,MAAM,aAAa,GACxB,YAAY,MAAM,EAClB,iBAAiB,MAAM,EAAE,KACxB,OAAO,CAAC,MAAM,CAC+D,CAAC;AAEjF,eAAO,MAAM,aAAa,GACxB,YAAY,MAAM,EAClB,iBAAiB,MAAM,EAAE,EACzB,KAAK,MAAM,EACX,UAAS;IAAE,aAAa,CAAC,EAAE,OAAO,CAAA;CAAO,KACxC,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAAC,UAAU,IAAI,MAAM,CAAA;CAAE,CAqCnG,CAAC"}
@@ -308,6 +308,8 @@ export interface AgentTransportHandle {
308
308
  sessionId?: string;
309
309
  attachCommand?: string;
310
310
  livenessPollIntervalMs?: number;
311
+ /** Bounded diagnostic tail for workers that fail before writing a status record. */
312
+ readStderr?(): string;
311
313
  isAlive(): Promise<boolean>;
312
314
  stop(): Promise<void>;
313
315
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/agents/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/agents/types.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@ import {
12
12
  import {
13
13
  resolveScriptRuntime,
14
14
  resolveScriptRuntimeSync
15
- } from "./chunk-7BG5COXB.js";
15
+ } from "./chunk-SVDHQUTM.js";
16
16
  import {
17
17
  runAbortable,
18
18
  settleWithin
@@ -364,4 +364,4 @@ export {
364
364
  NodeProcessRuntime,
365
365
  BunProcessRuntime
366
366
  };
367
- //# sourceMappingURL=chunk-KMYXXGHU.js.map
367
+ //# sourceMappingURL=chunk-BXYWRMBE.js.map
@@ -0,0 +1,125 @@
1
+ // src/worker/run-record.ts
2
+ import fs from "node:fs";
3
+ import path from "node:path";
4
+ var MAX_RUN_ERROR_CHARS = 2e4;
5
+ var MAX_RUN_TEXT_CHARS = 1e5;
6
+ var emptyUsage = () => ({
7
+ input: 0,
8
+ output: 0,
9
+ cacheRead: 0,
10
+ cacheWrite: 0,
11
+ cost: 0
12
+ });
13
+ var createRunningRecord = (options, task, thinking, startedAt) => ({
14
+ id: options.id,
15
+ name: options.name,
16
+ task,
17
+ status: "running",
18
+ runner: options.runner,
19
+ ...options.kernel ? { kernel: options.kernel } : {},
20
+ transport: options.transport,
21
+ cwd: options.cwd,
22
+ ...options.model ? { model: options.model, requestedModel: options.model } : {},
23
+ ...thinking ? { thinking } : {},
24
+ ...options.actorId ? { actorId: options.actorId } : {},
25
+ ...options.actorName ? { actorName: options.actorName } : {},
26
+ ...options.capabilityRequirements ? { capabilityRequirements: [...options.capabilityRequirements] } : {},
27
+ ...options.capabilityDigest ? { capabilityDigest: options.capabilityDigest } : {},
28
+ startedAt,
29
+ updatedAt: startedAt,
30
+ turns: options.carryOver?.turns ?? 0,
31
+ toolCalls: options.carryOver?.toolCalls ?? 0,
32
+ text: "",
33
+ usage: options.carryOver?.usage ?? emptyUsage(),
34
+ logFile: options.logFile,
35
+ ...options.branch ? { branch: options.branch } : {},
36
+ ...options.worktree ? { worktree: options.worktree } : {}
37
+ });
38
+ var writeRunRecord = (filePath, record) => {
39
+ fs.mkdirSync(path.dirname(filePath), { recursive: true });
40
+ const temporaryPath = `${filePath}.${process.pid}.tmp`;
41
+ fs.writeFileSync(temporaryPath, JSON.stringify(record, null, 2), {
42
+ encoding: "utf8",
43
+ mode: 384
44
+ });
45
+ renameWithRetry(temporaryPath, filePath);
46
+ };
47
+ var RETRYABLE_RENAME_CODES = /* @__PURE__ */ new Set(["EPERM", "EACCES", "EEXIST", "EBUSY"]);
48
+ var syncSleep = (ms) => {
49
+ try {
50
+ const buffer = new Int32Array(new SharedArrayBuffer(4));
51
+ Atomics.wait(buffer, 0, 0, ms);
52
+ } catch {
53
+ }
54
+ };
55
+ var renameWithRetry = (source, target) => {
56
+ for (let attempt = 1; ; attempt++) {
57
+ try {
58
+ fs.renameSync(source, target);
59
+ return;
60
+ } catch (error) {
61
+ const code = typeof error === "object" && error !== null && "code" in error ? String(error.code) : void 0;
62
+ if (attempt >= 8 || code === void 0 || !RETRYABLE_RENAME_CODES.has(code)) {
63
+ throw error;
64
+ }
65
+ syncSleep(25 * attempt);
66
+ }
67
+ }
68
+ };
69
+ var updateRunRecord = (filePath, record) => {
70
+ record.updatedAt = Date.now();
71
+ writeRunRecord(filePath, record);
72
+ };
73
+ var writeCrashRunRecord = (filePath, record, error) => {
74
+ const reason = error instanceof Error ? error.message : String(error);
75
+ const crashed = {
76
+ ...record,
77
+ status: "failed",
78
+ error: `Worker crashed before reporting a result: ${reason}`.slice(0, MAX_RUN_ERROR_CHARS),
79
+ finishedAt: Date.now(),
80
+ updatedAt: Date.now()
81
+ };
82
+ delete crashed.currentTool;
83
+ writeRunRecord(filePath, crashed);
84
+ };
85
+ var numberField = (value) => typeof value === "number" ? value : 0;
86
+ var applyUsage = (record, message) => {
87
+ const usage = message.usage;
88
+ if (typeof usage !== "object" || usage === null) return;
89
+ const values = usage;
90
+ record.usage.input += numberField(values.input);
91
+ record.usage.output += numberField(values.output);
92
+ record.usage.cacheRead += numberField(values.cacheRead);
93
+ record.usage.cacheWrite += numberField(values.cacheWrite);
94
+ const cost = values.cost;
95
+ if (typeof cost === "number") record.usage.cost += cost;
96
+ if (typeof cost === "object" && cost !== null) {
97
+ record.usage.cost += numberField(cost.total);
98
+ }
99
+ };
100
+ var extractUsageDelta = (message) => {
101
+ const usage = message.usage;
102
+ if (typeof usage !== "object" || usage === null || Array.isArray(usage)) return void 0;
103
+ const values = usage;
104
+ const cost = values.cost;
105
+ return {
106
+ input: numberField(values.input),
107
+ output: numberField(values.output),
108
+ cacheRead: numberField(values.cacheRead),
109
+ cacheWrite: numberField(values.cacheWrite),
110
+ cost: typeof cost === "number" ? cost : typeof cost === "object" && cost !== null ? numberField(cost.total) : 0
111
+ };
112
+ };
113
+ var latestRunText = (text) => Array.from(text).slice(-MAX_RUN_TEXT_CHARS).join("");
114
+
115
+ export {
116
+ emptyUsage,
117
+ createRunningRecord,
118
+ writeRunRecord,
119
+ updateRunRecord,
120
+ writeCrashRunRecord,
121
+ applyUsage,
122
+ extractUsageDelta,
123
+ latestRunText
124
+ };
125
+ //# sourceMappingURL=chunk-QUWC6YCN.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/worker/run-record.ts"],
4
+ "sourcesContent": ["import fs from \"node:fs\";\nimport path from \"node:path\";\nimport type {\n AgentRunRecord,\n AgentUsage,\n AgentWorkerOptions,\n} from \"../agents/types.js\";\n\nconst MAX_RUN_ERROR_CHARS = 20_000;\nconst MAX_RUN_TEXT_CHARS = 100_000;\n\nexport const emptyUsage = (): AgentUsage => ({\n input: 0,\n output: 0,\n cacheRead: 0,\n cacheWrite: 0,\n cost: 0,\n});\n\nexport const createRunningRecord = (\n options: AgentWorkerOptions,\n task: string,\n thinking: AgentRunRecord[\"thinking\"],\n startedAt: number,\n): AgentRunRecord => ({\n id: options.id,\n name: options.name,\n task,\n status: \"running\",\n runner: options.runner,\n ...(options.kernel ? { kernel: options.kernel } : {}),\n transport: options.transport,\n cwd: options.cwd,\n ...(options.model ? { model: options.model, requestedModel: options.model } : {}),\n ...(thinking ? { thinking } : {}),\n ...(options.actorId ? { actorId: options.actorId } : {}),\n ...(options.actorName ? { actorName: options.actorName } : {}),\n ...(options.capabilityRequirements\n ? { capabilityRequirements: [...options.capabilityRequirements] }\n : {}),\n ...(options.capabilityDigest ? { capabilityDigest: options.capabilityDigest } : {}),\n startedAt,\n updatedAt: startedAt,\n turns: options.carryOver?.turns ?? 0,\n toolCalls: options.carryOver?.toolCalls ?? 0,\n text: \"\",\n usage: options.carryOver?.usage ?? emptyUsage(),\n logFile: options.logFile,\n ...(options.branch ? { branch: options.branch } : {}),\n ...(options.worktree ? { worktree: options.worktree } : {}),\n});\n\nexport const writeRunRecord = (filePath: string, record: AgentRunRecord): void => {\n fs.mkdirSync(path.dirname(filePath), { recursive: true });\n const temporaryPath = `${filePath}.${process.pid}.tmp`;\n fs.writeFileSync(temporaryPath, JSON.stringify(record, null, 2), {\n encoding: \"utf8\",\n mode: 0o600,\n });\n renameWithRetry(temporaryPath, filePath);\n};\n\n// Windows transiently rejects rename() with EPERM/EACCES/EEXIST/EBUSY while\n// an antivirus scan or sibling reader probes the destination file \u2014\n// milliseconds of contention, not policy. Retry a bounded linear backoff\n// before surfacing.\n//\n// Self-contained on purpose: this module is dynamically imported by the\n// spawned worker through plain Node with worker.ts switching the import\n// extension, so it must not depend on ../core/atomic-write.js. Keep the shared\n// implementation for the host side and this copy for the worker boundary.\nconst RETRYABLE_RENAME_CODES = new Set([\"EPERM\", \"EACCES\", \"EEXIST\", \"EBUSY\"]);\n\nconst syncSleep = (ms: number): void => {\n try {\n const buffer = new Int32Array(new SharedArrayBuffer(4));\n Atomics.wait(buffer, 0, 0, ms);\n } catch {\n // Atomics.wait unavailable: retry immediately \u2014 correct, just busier.\n }\n};\n\nconst renameWithRetry = (source: string, target: string): void => {\n for (let attempt = 1; ; attempt++) {\n try {\n fs.renameSync(source, target);\n return;\n } catch (error) {\n const code =\n typeof error === \"object\" && error !== null && \"code\" in error\n ? String((error as { code?: unknown }).code)\n : undefined;\n if (attempt >= 8 || code === undefined || !RETRYABLE_RENAME_CODES.has(code)) {\n throw error;\n }\n syncSleep(25 * attempt);\n }\n }\n};\n\nexport const updateRunRecord = (filePath: string, record: AgentRunRecord): void => {\n record.updatedAt = Date.now();\n writeRunRecord(filePath, record);\n};\n\nexport const writeCrashRunRecord = (\n filePath: string,\n record: AgentRunRecord,\n error: unknown,\n): void => {\n const reason = error instanceof Error ? error.message : String(error);\n const crashed: AgentRunRecord = {\n ...record,\n status: \"failed\",\n error: `Worker crashed before reporting a result: ${reason}`.slice(0, MAX_RUN_ERROR_CHARS),\n finishedAt: Date.now(),\n updatedAt: Date.now(),\n };\n delete crashed.currentTool;\n writeRunRecord(filePath, crashed);\n};\n\nconst numberField = (value: unknown): number => (typeof value === \"number\" ? value : 0);\n\nexport const applyUsage = (\n record: AgentRunRecord,\n message: Record<string, unknown>,\n): void => {\n const usage = message.usage;\n if (typeof usage !== \"object\" || usage === null) return;\n const values = usage as Record<string, unknown>;\n record.usage.input += numberField(values.input);\n record.usage.output += numberField(values.output);\n record.usage.cacheRead += numberField(values.cacheRead);\n record.usage.cacheWrite += numberField(values.cacheWrite);\n const cost = values.cost;\n if (typeof cost === \"number\") record.usage.cost += cost;\n if (typeof cost === \"object\" && cost !== null) {\n record.usage.cost += numberField((cost as Record<string, unknown>).total);\n }\n};\n\n/**\n * Extract the per-message token delta a Pi assistant `message_end` contributed.\n * Unlike `applyUsage`, which mutates the run record, this returns the delta so\n * the worker can attribute a single event without re-deriving it from a\n * post-hoc cumulative diff. Cost is reported in the runner's own total units.\n */\nexport const extractUsageDelta = (\n message: Record<string, unknown>,\n): { input: number; output: number; cacheRead: number; cacheWrite: number; cost: number } | undefined => {\n const usage = message.usage;\n if (typeof usage !== \"object\" || usage === null || Array.isArray(usage)) return undefined;\n const values = usage as Record<string, unknown>;\n const cost = values.cost;\n return {\n input: numberField(values.input),\n output: numberField(values.output),\n cacheRead: numberField(values.cacheRead),\n cacheWrite: numberField(values.cacheWrite),\n cost:\n typeof cost === \"number\"\n ? cost\n : typeof cost === \"object\" && cost !== null\n ? numberField((cost as Record<string, unknown>).total)\n : 0,\n };\n};\n\nexport const latestRunText = (text: string): string =>\n Array.from(text).slice(-MAX_RUN_TEXT_CHARS).join(\"\");\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -2,6 +2,7 @@
2
2
  import { execFile, spawn } from "node:child_process";
3
3
  import fs from "node:fs";
4
4
  import path from "node:path";
5
+ import { StringDecoder } from "node:string_decoder";
5
6
  var executeFile = (command, args, options = {}) => new Promise((resolve, reject) => {
6
7
  execFile(
7
8
  command,
@@ -119,18 +120,34 @@ var scriptSpawnArgs = async (workerPath, workerArguments, options) => {
119
120
  return [runtime, workerPath, ...workerArguments];
120
121
  };
121
122
  var workerCommand = async (workerPath, workerArguments) => (await scriptSpawnArgs(workerPath, workerArguments)).map(shellQuote).join(" ");
122
- var spawnDetached = async (workerPath, workerArguments, cwd) => {
123
+ var spawnDetached = async (workerPath, workerArguments, cwd, options = {}) => {
123
124
  const runtime = await resolveScriptRuntime(runtimeOptionsForWorker(workerPath));
124
125
  const child = spawn(runtime, [workerPath, ...workerArguments], {
125
126
  cwd,
126
127
  detached: process.platform !== "win32",
127
- stdio: "ignore"
128
+ // Resident hosts must remain independent of the launching process's pipes.
129
+ stdio: ["ignore", "ignore", options.captureStderr ? "pipe" : "ignore"]
130
+ });
131
+ const decoder = new StringDecoder("utf8");
132
+ let stderr = "";
133
+ child.stderr?.on("data", (chunk) => {
134
+ stderr = (stderr + decoder.write(chunk)).slice(-2e4);
135
+ });
136
+ child.stderr?.on("end", () => {
137
+ stderr = (stderr + decoder.end()).slice(-2e4);
138
+ });
139
+ child.stderr?.on("error", () => {
140
+ });
141
+ await new Promise((resolve, reject) => {
142
+ child.once("spawn", resolve);
143
+ child.once("error", reject);
128
144
  });
129
- if (!child.pid) throw new Error("Failed to launch Fabric worker process");
130
145
  const pid = child.pid;
131
146
  child.unref();
147
+ child.stderr?.unref?.();
132
148
  return {
133
149
  pid,
150
+ readStderr: () => stderr,
134
151
  async stop() {
135
152
  try {
136
153
  process.kill(process.platform === "win32" ? pid : -pid, "SIGTERM");
@@ -153,4 +170,4 @@ export {
153
170
  workerCommand,
154
171
  spawnDetached
155
172
  };
156
- //# sourceMappingURL=chunk-7BG5COXB.js.map
173
+ //# sourceMappingURL=chunk-SVDHQUTM.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/agents/transports/process-utils.ts"],
4
+ "sourcesContent": ["import { execFile, spawn } from \"node:child_process\";\nimport fs from \"node:fs\";\nimport path from \"node:path\";\nimport { StringDecoder } from \"node:string_decoder\";\n\nexport interface ExecFileResult {\n stdout: string;\n stderr: string;\n}\n\nexport const executeFile = (\n command: string,\n args: string[],\n options: { cwd?: string; timeoutMs?: number } = {},\n): Promise<ExecFileResult> =>\n new Promise((resolve, reject) => {\n execFile(\n command,\n args,\n {\n encoding: \"utf8\",\n maxBuffer: 10 * 1024 * 1024,\n ...(options.cwd ? { cwd: options.cwd } : {}),\n ...(options.timeoutMs ? { timeout: options.timeoutMs } : {}),\n },\n (error, stdout, stderr) => {\n if (error) {\n Object.assign(error, { stdout, stderr });\n reject(error);\n return;\n }\n resolve({ stdout, stderr });\n },\n );\n });\n\n/** Windows resolves bare names through PATHEXT; POSIX needs the execute bit. */\nconst executableNames = (command: string, env: NodeJS.ProcessEnv): string[] => {\n if (process.platform !== \"win32\" || path.extname(command) !== \"\") return [command];\n const extensions = (env.PATHEXT ?? \".COM;.EXE;.BAT;.CMD\")\n .split(\";\")\n .map((extension) => extension.trim().toLowerCase())\n .filter((extension) => extension !== \"\");\n return [command, ...extensions.map((extension) => command + extension)];\n};\n\nconst unquotePathEntry = (entry: string): string => {\n const trimmed = entry.trim();\n return trimmed.length > 1 && trimmed.startsWith('\"') && trimmed.endsWith('\"')\n ? trimmed.slice(1, -1)\n : trimmed;\n};\n\nconst isExecutableFile = async (candidate: string): Promise<boolean> => {\n try {\n const stats = await fs.promises.stat(candidate);\n if (!stats.isFile()) return false;\n // Windows has no execute bit; PATHEXT already narrowed the candidate name.\n return process.platform === \"win32\" || (stats.mode & 0o111) !== 0;\n } catch {\n return false;\n }\n};\n\n/**\n * PATH lookup that never shells out: Windows runners reach this code with no\n * `sh` on PATH, and a login shell may rewrite PATH behind the caller's back.\n */\nexport const commandAvailable = async (\n command: string,\n env: NodeJS.ProcessEnv = process.env,\n): Promise<boolean> => {\n const names = executableNames(command, env);\n for (const entry of (env.PATH ?? \"\").split(path.delimiter)) {\n const directory = unquotePathEntry(entry);\n if (directory === \"\") continue;\n for (const name of names) {\n if (await isExecutableFile(path.join(directory, name))) return true;\n }\n }\n return false;\n};\n\nconst shellQuote = (value: string): string => `'${value.replaceAll(\"'\", `'\"'\"'`)}'`;\n\nexport const processIsAlive = (pid: number): boolean => {\n if (!Number.isSafeInteger(pid) || pid <= 0) return false;\n try {\n process.kill(pid, 0);\n return true;\n } catch (error) {\n // On Windows, EPERM means the process exists but cannot be opened for\n // signaling; only ESRCH (or other errors) mean it is gone.\n return error instanceof Error && \"code\" in error && (error as NodeJS.ErrnoException).code === \"EPERM\";\n }\n};\n\nconst GENERIC_RUNTIME = /^(node|bun)(\\.exe)?$/;\n\nexport interface ScriptRuntimeOptions {\n execPath?: string;\n env?: NodeJS.ProcessEnv;\n /** Require Node.js specifically; used by the Node-process executor whose\n * `--eval`/`--input-type=module` flags are Node-only. */\n requireNode?: boolean;\n /** Require Bun specifically; used by the Bun-process executor. */\n requireBun?: boolean;\n}\n\nconst runtimeOverride = (env: NodeJS.ProcessEnv): string | undefined => {\n const value = env.PI_FABRIC_NODE_BINARY;\n return typeof value === \"string\" && value.trim() ? value.trim() : undefined;\n};\n\nconst isGenericRuntime = (execPath: string, requireNode: boolean, requireBun = false): boolean => {\n const name = path.basename(execPath).toLowerCase();\n return GENERIC_RUNTIME.test(name)\n && (!requireNode || name.startsWith(\"node\"))\n && (!requireBun || name.startsWith(\"bun\"));\n};\n\nconst missingRuntimeError = (execPath: string, requireNode: boolean, requireBun = false): Error => {\n const required = requireNode\n ? \"a Node.js runtime\"\n : requireBun\n ? \"a Bun runtime\"\n : \"a Node.js or Bun runtime\";\n const shape = requireNode ? \"(not node)\" : requireBun ? \"(not bun)\" : \"(not node/bun)\";\n return new Error(\n `Fabric requires ${required} to launch a JavaScript worker, but ` +\n `process.execPath is ${execPath} ${shape} and PI_FABRIC_NODE_BINARY is unset. ` +\n \"Install Node.js or Bun, or set PI_FABRIC_NODE_BINARY to the runtime binary.\",\n );\n};\n\n// Transports launch the worker (a .js module) as `<runtime> worker.js args`.\n// Under the new Bun-compiled pi binary, process.execPath is the pi executable,\n// not node/bun, so it cannot run an arbitrary script. Resolve a real runtime\n// before spawning: reuse process.execPath when it IS node/bun, else fall back\n// to PI_FABRIC_NODE_BINARY, then the first node/bun on PATH.\nconst resolveScriptRuntimeUncached = async (options: ScriptRuntimeOptions = {}): Promise<string> => {\n const execPath = options.execPath ?? process.execPath;\n const env = options.env ?? process.env;\n const requireNode = options.requireNode === true;\n const requireBun = options.requireBun === true;\n if (isGenericRuntime(execPath, requireNode, requireBun)) return execPath;\n const override = runtimeOverride(env);\n if (override) return override;\n for (const candidate of requireNode ? [\"node\"] : requireBun ? [\"bun\"] : [\"node\", \"bun\"]) {\n if (await commandAvailable(candidate)) return candidate;\n }\n throw missingRuntimeError(execPath, requireNode, requireBun);\n};\n\nlet cachedDefaultRuntime: string | undefined;\nexport const resolveScriptRuntime = async (options?: ScriptRuntimeOptions): Promise<string> => {\n if (\n options &&\n (options.execPath !== undefined ||\n options.env !== undefined ||\n options.requireNode !== undefined ||\n options.requireBun !== undefined)\n ) {\n return resolveScriptRuntimeUncached(options);\n }\n if (cachedDefaultRuntime) return cachedDefaultRuntime;\n cachedDefaultRuntime = await resolveScriptRuntimeUncached();\n return cachedDefaultRuntime;\n};\n\n// Synchronous variant for callers that already run under a real runtime (e.g.\n// the worker, which a transport always launches via the resolved runtime). No\n// PATH lookup; throws if the current process is the bundled binary with no\n// override set.\nexport const resolveScriptRuntimeSync = (options: ScriptRuntimeOptions = {}): string => {\n const execPath = options.execPath ?? process.execPath;\n const env = options.env ?? process.env;\n const requireNode = options.requireNode === true;\n const requireBun = options.requireBun === true;\n if (isGenericRuntime(execPath, requireNode, requireBun)) return execPath;\n const override = runtimeOverride(env);\n if (override) return override;\n throw missingRuntimeError(execPath, requireNode, requireBun);\n};\n\nconst typescriptWorker = (workerPath: string): boolean =>\n /.[cm]?tsx?$/i.test(path.extname(workerPath));\n\nconst runtimeOptionsForWorker = (\n workerPath: string,\n options?: ScriptRuntimeOptions,\n): ScriptRuntimeOptions | undefined => {\n if (!typescriptWorker(workerPath) || options?.requireNode || options?.requireBun) return options;\n return { ...options, requireBun: true };\n};\n\nexport const scriptSpawnArgs = async (\n workerPath: string,\n workerArguments: readonly string[],\n options?: ScriptRuntimeOptions,\n): Promise<string[]> => {\n const runtime = await resolveScriptRuntime(runtimeOptionsForWorker(workerPath, options));\n return [runtime, workerPath, ...workerArguments];\n};\n\nexport const workerCommand = async (\n workerPath: string,\n workerArguments: string[],\n): Promise<string> =>\n (await scriptSpawnArgs(workerPath, workerArguments)).map(shellQuote).join(\" \");\n\nexport const spawnDetached = async (\n workerPath: string,\n workerArguments: string[],\n cwd: string,\n options: { captureStderr?: boolean } = {},\n): Promise<{ pid: number; stop(): Promise<void>; isAlive(): Promise<boolean>; readStderr(): string }> => {\n const runtime = await resolveScriptRuntime(runtimeOptionsForWorker(workerPath));\n const child = spawn(runtime, [workerPath, ...workerArguments], {\n cwd,\n detached: process.platform !== \"win32\",\n // Resident hosts must remain independent of the launching process's pipes.\n stdio: [\"ignore\", \"ignore\", options.captureStderr ? \"pipe\" : \"ignore\"],\n });\n // Drain throughout the run, retaining only a bounded UTF-8 tail in memory.\n // No disk log can grow without bound or keep secrets after run cleanup.\n const decoder = new StringDecoder(\"utf8\");\n let stderr = \"\";\n child.stderr?.on(\"data\", (chunk: Buffer) => {\n stderr = (stderr + decoder.write(chunk)).slice(-20_000);\n });\n child.stderr?.on(\"end\", () => { stderr = (stderr + decoder.end()).slice(-20_000); });\n child.stderr?.on(\"error\", () => {});\n await new Promise<void>((resolve, reject) => {\n child.once(\"spawn\", resolve);\n child.once(\"error\", reject);\n });\n const pid = child.pid!;\n child.unref();\n // A diagnostic pipe must not keep the owner process alive on its own.\n (child.stderr as (NodeJS.ReadableStream & { unref?: () => void }) | null)?.unref?.();\n return {\n pid,\n readStderr: () => stderr,\n async stop() {\n try {\n process.kill(process.platform === \"win32\" ? pid : -pid, \"SIGTERM\");\n } catch { /* process group already exited */ }\n },\n async isAlive() {\n return processIsAlive(pid);\n },\n };\n};\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -5,7 +5,7 @@ import {
5
5
  scriptSpawnArgs,
6
6
  spawnDetached,
7
7
  workerCommand
8
- } from "./chunk-7BG5COXB.js";
8
+ } from "./chunk-SVDHQUTM.js";
9
9
  import {
10
10
  discoverClaudeModels,
11
11
  mapClaudeTools,
@@ -890,13 +890,15 @@ var ProcessTransport = class {
890
890
  const processHandle = await spawnDetached(
891
891
  request.workerPath,
892
892
  request.workerArguments,
893
- request.cwd
893
+ request.cwd,
894
+ { captureStderr: true }
894
895
  );
895
896
  return {
896
897
  kind: this.kind,
897
898
  sessionId: String(processHandle.pid),
898
899
  isAlive: processHandle.isAlive,
899
- stop: processHandle.stop
900
+ stop: processHandle.stop,
901
+ readStderr: processHandle.readStderr
900
902
  };
901
903
  }
902
904
  };
@@ -2004,6 +2006,21 @@ var compactUiRecord = (record) => {
2004
2006
  ...nestedAgents && nestedAgents.length > 0 ? { nestedAgents: nestedAgents.map((nested) => compactUiRecord(nested)) } : {}
2005
2007
  };
2006
2008
  };
2009
+ var reconcileNestedAgents = (records, owner) => records.map((record) => {
2010
+ let next = record;
2011
+ if (terminalStatuses.has(owner.status) && !terminalStatuses.has(record.status) && record.residency !== "durable") {
2012
+ const { currentTool: _currentTool, blockedOn: _blockedOn, ...rest } = record;
2013
+ const finishedAt = owner.finishedAt ?? owner.updatedAt;
2014
+ next = {
2015
+ ...rest,
2016
+ status: "failed",
2017
+ error: `Nested agent owner ${owner.id} finished (${owner.status}) before a terminal result was retained`,
2018
+ finishedAt,
2019
+ updatedAt: Math.max(record.updatedAt, finishedAt)
2020
+ };
2021
+ }
2022
+ return next.nestedAgents ? { ...next, nestedAgents: reconcileNestedAgents(next.nestedAgents, next) } : next;
2023
+ });
2007
2024
  var readNestedAgents = (runDirectory, depth = 0) => {
2008
2025
  if (depth >= 8) return [];
2009
2026
  const nestedRoot = path12.join(runDirectory, "nested");
@@ -2085,6 +2102,7 @@ var AgentManager = class {
2085
2102
  this.#semaphore = new AgentAdmission(config.maxConcurrent, Infinity, config.maxDepth);
2086
2103
  this.#managedTempRoot = options.runRoot === void 0 && process.env.PI_FABRIC_RUN_ROOT === void 0;
2087
2104
  this.#runRoot = options.runRoot ?? process.env.PI_FABRIC_RUN_ROOT ?? fs11.mkdtempSync(path12.join(os3.tmpdir(), "pi-fabric-runs-"));
2105
+ this.#parentOwnedRunRoot = options.runRoot === void 0 && this.#parentLineage?.worker === true && this.#parentLineage.depth > 0 && path12.basename(this.#runRoot) === "nested" && path12.basename(path12.dirname(this.#runRoot)) === this.#parentLineage.runId;
2088
2106
  this.#retention = options.retention ?? DEFAULT_FABRIC_CONFIG.retention;
2089
2107
  this.#workerPath = options.workerPath ?? fileURLToPath(new URL("../worker.js", import.meta.url));
2090
2108
  this.#fabricExtensionPath = options.fabricExtensionPath ?? fileURLToPath(new URL("../index.js", import.meta.url));
@@ -2132,6 +2150,7 @@ var AgentManager = class {
2132
2150
  #worktrees = new WorktreeManager();
2133
2151
  #runRoot;
2134
2152
  #managedTempRoot;
2153
+ #parentOwnedRunRoot;
2135
2154
  #retention;
2136
2155
  #workerPath;
2137
2156
  #fabricExtensionPath;
@@ -3130,7 +3149,7 @@ var AgentManager = class {
3130
3149
  this.#unregisteredTransports.clear();
3131
3150
  const storageSafe = !this.#managedTempRoot || canRemoveManagedRunRoot(this.#runRoot);
3132
3151
  if (!this.config.retainRuns) {
3133
- if (storageSafe) {
3152
+ if (storageSafe && !this.#parentOwnedRunRoot) {
3134
3153
  await removeTree(this.#runRoot).catch(() => void 0);
3135
3154
  }
3136
3155
  } else if (this.#managedTempRoot) {
@@ -3396,10 +3415,12 @@ var AgentManager = class {
3396
3415
  return;
3397
3416
  }
3398
3417
  const logSummary = summarizeRunLog(managed.runDirectory, 8);
3418
+ const stderr = managed.transport.readStderr?.().trim();
3419
+ const diagnostic = [logSummary ? `last run log: ${logSummary}` : void 0, stderr ? `worker stderr: ${stderr}` : void 0].filter(Boolean).join("; ");
3399
3420
  const failed = failedRecord(
3400
3421
  managed,
3401
3422
  "failed",
3402
- logSummary ? `Agent transport exited without a result; last run log: ${logSummary}` : "Agent transport exited without a result"
3423
+ diagnostic ? `Agent transport exited without a result; ${diagnostic}` : "Agent transport exited without a result"
3403
3424
  );
3404
3425
  if (await this.#resumeStopped(managed, failed, deadline)) continue;
3405
3426
  if (await this.#retryStartup(managed, failed, deadline)) {
@@ -3427,6 +3448,8 @@ var AgentManager = class {
3427
3448
  #settle(managed, result) {
3428
3449
  if (managed.settled) return;
3429
3450
  if (managed.worktreeResult) result.worktreeResult = managed.worktreeResult;
3451
+ const nested = this.#nestedAgents(managed, true);
3452
+ if (nested.length > 0) result.nestedAgents = reconcileNestedAgents(nested, result);
3430
3453
  this.#drainLifecycle(managed);
3431
3454
  if (!beginAgentSettlement(managed)) return;
3432
3455
  managed.questions?.abort(new Error("Agent run settled"));
@@ -3443,10 +3466,8 @@ var AgentManager = class {
3443
3466
  const compactResult = compactUiRecord(result);
3444
3467
  managed.latestRecord = compactResult;
3445
3468
  managed.latestUiRecord = compactResult;
3446
- if (managed.nestedSnapshot) {
3447
- managed.nestedSnapshot = managed.nestedSnapshot.map(
3448
- (record) => compactUiRecord(record)
3449
- );
3469
+ if (result.nestedAgents) {
3470
+ managed.nestedSnapshot = result.nestedAgents.map((record) => compactUiRecord(record));
3450
3471
  }
3451
3472
  this.#pruneRetainedUiRecords();
3452
3473
  this.#invalidateUiList();
@@ -3708,9 +3729,8 @@ var AgentManager = class {
3708
3729
  ...managed.worktree ? { worktree: managed.worktree } : {}
3709
3730
  };
3710
3731
  }
3711
- // Recursive child processes remove their nested run directories on shutdown.
3712
- // Preserve the last bounded status tree so completed leaves remain visible
3713
- // in the parent run until that parent is explicitly cleaned up.
3732
+ // Retain a bounded tree even when legacy workers removed their nested run
3733
+ // directories. Terminal-owner reconciliation prevents cached active ghosts.
3714
3734
  #nestedAgents(managed, force = false) {
3715
3735
  const now = Date.now();
3716
3736
  const needsInitialDiscovery = managed.nestedSnapshot === void 0 && fs11.existsSync(path12.join(managed.runDirectory, "nested"));
@@ -3726,10 +3746,10 @@ var AgentManager = class {
3726
3746
  return managed.nestedSnapshot ? structuredClone(managed.nestedSnapshot) : [];
3727
3747
  }
3728
3748
  #withTransportMetadata(record, managed) {
3729
- const nestedAgents = this.#nestedAgents(
3749
+ const nestedAgents = reconcileNestedAgents(this.#nestedAgents(
3730
3750
  managed,
3731
3751
  terminalStatuses.has(record.status) && !managed.settled
3732
- );
3752
+ ), record);
3733
3753
  const budget = this.#budgetSummary();
3734
3754
  const { logFile: _logFile, nestedAgents: _nestedAgents, ...safeRecord } = record;
3735
3755
  const model = record.model ?? managed.model;
@@ -7743,4 +7763,4 @@ export {
7743
7763
  agentParticipantRecords,
7744
7764
  actorParticipantRecord
7745
7765
  };
7746
- //# sourceMappingURL=chunk-DRZDTBPZ.js.map
7766
+ //# sourceMappingURL=chunk-Y5HBN75E.js.map