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.
- package/README.md +4 -4
- package/THIRD_PARTY_NOTICES.md +8 -0
- package/dist/agents/manager.d.ts.map +1 -1
- package/dist/agents/transports/process-transport.d.ts.map +1 -1
- package/dist/agents/transports/process-utils.d.ts +4 -1
- package/dist/agents/transports/process-utils.d.ts.map +1 -1
- package/dist/agents/types.d.ts +2 -0
- package/dist/agents/types.d.ts.map +1 -1
- package/dist/chunks/{chunk-KMYXXGHU.js → chunk-BXYWRMBE.js} +2 -2
- package/dist/chunks/chunk-QUWC6YCN.js +125 -0
- package/dist/chunks/chunk-QUWC6YCN.js.map +7 -0
- package/dist/chunks/{chunk-7BG5COXB.js → chunk-SVDHQUTM.js} +21 -4
- package/dist/chunks/chunk-SVDHQUTM.js.map +7 -0
- package/dist/chunks/{chunk-DRZDTBPZ.js → chunk-Y5HBN75E.js} +35 -15
- package/dist/chunks/chunk-Y5HBN75E.js.map +7 -0
- package/dist/chunks/{chunk-5LKJU6VU.js → chunk-YFL34TLP.js} +1 -1
- package/dist/chunks/{chunk-HTDX5H7Q.js → chunk-ZLWJ3T75.js} +2 -2
- package/dist/fabric-runtime-state.js +2 -2
- package/dist/jev-fabric/client.js +1 -1
- package/dist/jev-fabric/client.js.map +2 -2
- package/dist/jev-fabric/resolve.js +1 -1
- package/dist/jev-fabric/resolve.js.map +2 -2
- package/dist/jev.js +1 -1
- package/dist/providers/jev-provider.js +1 -1
- package/dist/residency/host.js +3 -3
- package/dist/residency/pi-entry.js +3 -3
- package/dist/runtime/node-process-runtime.js +2 -2
- package/dist/runtime/typescript-kernel.js +2 -2
- package/dist/worker/result.d.ts +3 -0
- package/dist/worker/result.d.ts.map +1 -0
- package/dist/worker/result.js +7493 -0
- package/dist/worker/result.js.map +7 -0
- package/dist/worker/run-record.js +10 -113
- package/dist/worker/run-record.js.map +3 -3
- package/dist/worker/startup.d.ts +8 -0
- package/dist/worker/startup.d.ts.map +1 -0
- package/dist/worker.js +76 -20
- package/dist/worker.js.map +4 -4
- package/docs/agents.md +1 -1
- package/docs/background-tasks.md +1 -1
- package/docs/configuration.md +3 -1
- package/docs/licenses/typebox-mit.txt +23 -0
- package/docs/shell-composition.md +1 -1
- package/package.json +6 -6
- package/dist/chunks/chunk-7BG5COXB.js.map +0 -7
- package/dist/chunks/chunk-DRZDTBPZ.js.map +0 -7
- /package/dist/chunks/{chunk-KMYXXGHU.js.map → chunk-BXYWRMBE.js.map} +0 -0
- /package/dist/chunks/{chunk-5LKJU6VU.js.map → chunk-YFL34TLP.js.map} +0 -0
- /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/
|
|
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/
|
|
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
|
[](https://www.npmjs.com/package/pi-fabric)
|
|
18
18
|
[](https://arcprize.org/scorecards/d4c56c67-136b-4643-b648-62ae28fe2a54)
|
|
19
|
-
[](https://github.com/fabric-runtime/pi-fabric/actions/workflows/test.yml)
|
|
20
20
|
[](https://github.com/earendil-works/pi-coding-agent)
|
|
21
21
|
[](LICENSE)
|
|
22
22
|
[](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/
|
|
99
|
+
pi install git:github.com/fabric-runtime/pi-fabric
|
|
100
100
|
```
|
|
101
101
|
|
|
102
102
|
From a local checkout:
|
package/THIRD_PARTY_NOTICES.md
CHANGED
|
@@ -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":"AACA,OAAO,EAIL,KAAK,oBAAoB,EAC1B,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAOzD,OAAO,EAIL,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EAEtB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACzB,MAAM,cAAc,CAAC;AACtB,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,iBAAiB,CAAC;AAkBzB,OAAO,EAGL,KAAK,mBAAmB,EACzB,MAAM,mBAAmB,CAAC;AAU3B,OAAO,KAAK,EACV,yBAAyB,EACzB,0BAA0B,EAE1B,kBAAkB,EAClB,cAAc,EACd,eAAe,EAEf,cAAc,EACd,eAAe,EACf,cAAc,EAEd,gBAAgB,EAKjB,MAAM,YAAY,CAAC;AAapB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAqBpE,OAAO,EAGL,KAAK,6BAA6B,EACnC,MAAM,uBAAuB,CAAC;AAsB/B,eAAO,MAAM,uBAAuB,GAClC,qBAAqB,MAAM,EAC3B,qBAAqB,MAAM,KAC1B,MAYF,CAAC;AAEF,UAAU,+BAA+B;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,iBAAiB,CAAC;CAC3B;AAED,KAAK,gCAAgC,GAAG,CACtC,OAAO,EAAE,+BAA+B,KACrC,MAAM,GAAG,SAAS,CAAC;AAExB,8EAA8E;AAC9E,eAAO,MAAM,eAAe,GAAI,WAAW,MAAM,EAAE,eAAe,MAAM,KAAG,MAoB1E,CAAC;
|
|
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;
|
|
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
|
|
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":"
|
|
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"}
|
package/dist/agents/types.d.ts
CHANGED
|
@@ -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-
|
|
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-
|
|
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
|
-
|
|
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-
|
|
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-
|
|
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
|
-
|
|
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 (
|
|
3447
|
-
managed.nestedSnapshot =
|
|
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
|
-
//
|
|
3712
|
-
//
|
|
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-
|
|
7766
|
+
//# sourceMappingURL=chunk-Y5HBN75E.js.map
|