@dungle-scrubs/harness-cli-normalizer 0.1.3 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +144 -7
- package/dist/cli/args.d.ts +74 -0
- package/dist/cli/args.d.ts.map +1 -0
- package/dist/cli/args.js +339 -0
- package/dist/cli/args.js.map +1 -0
- package/dist/cli/check.d.ts +2 -0
- package/dist/cli/check.d.ts.map +1 -0
- package/dist/cli/check.js +110 -0
- package/dist/cli/check.js.map +1 -0
- package/dist/cli/exit-codes.d.ts +7 -0
- package/dist/cli/exit-codes.d.ts.map +1 -0
- package/dist/cli/exit-codes.js +11 -0
- package/dist/cli/exit-codes.js.map +1 -0
- package/dist/cli/help.d.ts +7 -0
- package/dist/cli/help.d.ts.map +1 -0
- package/dist/cli/help.js +110 -0
- package/dist/cli/help.js.map +1 -0
- package/dist/cli/index.d.ts +4 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +170 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/inspect.d.ts +3 -0
- package/dist/cli/inspect.d.ts.map +1 -0
- package/dist/cli/inspect.js +170 -0
- package/dist/cli/inspect.js.map +1 -0
- package/dist/cli/ls.d.ts +2 -0
- package/dist/cli/ls.d.ts.map +1 -0
- package/dist/cli/ls.js +10 -0
- package/dist/cli/ls.js.map +1 -0
- package/dist/cli/render.d.ts +8 -0
- package/dist/cli/render.d.ts.map +1 -0
- package/dist/cli/render.js +55 -0
- package/dist/cli/render.js.map +1 -0
- package/dist/cli/resolve-harness.d.ts +4 -0
- package/dist/cli/resolve-harness.d.ts.map +1 -0
- package/dist/cli/resolve-harness.js +31 -0
- package/dist/cli/resolve-harness.js.map +1 -0
- package/dist/cli/run.d.ts +2 -0
- package/dist/cli/run.d.ts.map +1 -0
- package/dist/cli/run.js +280 -0
- package/dist/cli/run.js.map +1 -0
- package/dist/cli/session.d.ts +2 -0
- package/dist/cli/session.d.ts.map +1 -0
- package/dist/cli/session.js +128 -0
- package/dist/cli/session.js.map +1 -0
- package/dist/cli/version.d.ts +2 -0
- package/dist/cli/version.d.ts.map +1 -0
- package/dist/cli/version.js +34 -0
- package/dist/cli/version.js.map +1 -0
- package/dist/cli.js +2 -0
- package/dist/execution/decode.d.ts.map +1 -1
- package/dist/execution/decode.js +32 -0
- package/dist/execution/decode.js.map +1 -1
- package/dist/execution/deps.d.ts +7 -1
- package/dist/execution/deps.d.ts.map +1 -1
- package/dist/execution/events.d.ts +6 -2
- package/dist/execution/events.d.ts.map +1 -1
- package/dist/execution/events.js.map +1 -1
- package/dist/execution/failure.d.ts +45 -0
- package/dist/execution/failure.d.ts.map +1 -0
- package/dist/execution/failure.js +121 -0
- package/dist/execution/failure.js.map +1 -0
- package/dist/execution/node-deps.d.ts.map +1 -1
- package/dist/execution/node-deps.js +19 -0
- package/dist/execution/node-deps.js.map +1 -1
- package/dist/execution/stream-turn.d.ts +2 -0
- package/dist/execution/stream-turn.d.ts.map +1 -1
- package/dist/execution/stream-turn.js +181 -16
- package/dist/execution/stream-turn.js.map +1 -1
- package/dist/interpretation/argv.d.ts +16 -4
- package/dist/interpretation/argv.d.ts.map +1 -1
- package/dist/interpretation/argv.js +68 -19
- package/dist/interpretation/argv.js.map +1 -1
- package/dist/interpretation/dimensions.d.ts +0 -2
- package/dist/interpretation/dimensions.d.ts.map +1 -1
- package/dist/interpretation/dimensions.js +0 -2
- package/dist/interpretation/dimensions.js.map +1 -1
- package/dist/interpretation/limits.d.ts +10 -1
- package/dist/interpretation/limits.d.ts.map +1 -1
- package/dist/interpretation/limits.js +84 -5
- package/dist/interpretation/limits.js.map +1 -1
- package/dist/interpretation/refusal.d.ts +31 -0
- package/dist/interpretation/refusal.d.ts.map +1 -0
- package/dist/interpretation/refusal.js +87 -0
- package/dist/interpretation/refusal.js.map +1 -0
- package/dist/interpretation/turn-options.d.ts +18 -0
- package/dist/interpretation/turn-options.d.ts.map +1 -0
- package/dist/interpretation/turn-options.js +417 -0
- package/dist/interpretation/turn-options.js.map +1 -0
- package/dist/interpretation/vocabulary.d.ts +5 -0
- package/dist/interpretation/vocabulary.d.ts.map +1 -1
- package/dist/interpretation/vocabulary.js +1 -1
- package/dist/interpretation/vocabulary.js.map +1 -1
- package/dist/knowledge/claude-code.d.ts +13 -1
- package/dist/knowledge/claude-code.d.ts.map +1 -1
- package/dist/knowledge/claude-code.js +35 -13
- package/dist/knowledge/claude-code.js.map +1 -1
- package/dist/knowledge/codex.d.ts.map +1 -1
- package/dist/knowledge/codex.js +25 -14
- package/dist/knowledge/codex.js.map +1 -1
- package/dist/knowledge/descriptor.d.ts +118 -14
- package/dist/knowledge/descriptor.d.ts.map +1 -1
- package/dist/knowledge/descriptor.js +58 -0
- package/dist/knowledge/descriptor.js.map +1 -1
- package/dist/knowledge/matchers.d.ts +3 -3
- package/dist/knowledge/matchers.d.ts.map +1 -1
- package/dist/knowledge/matchers.js +19 -6
- package/dist/knowledge/matchers.js.map +1 -1
- package/dist/knowledge/muse.d.ts +2 -2
- package/dist/knowledge/muse.d.ts.map +1 -1
- package/dist/knowledge/muse.js +22 -6
- package/dist/knowledge/muse.js.map +1 -1
- package/dist/knowledge/overrides.d.ts +7 -0
- package/dist/knowledge/overrides.d.ts.map +1 -1
- package/dist/knowledge/overrides.js +76 -0
- package/dist/knowledge/overrides.js.map +1 -1
- package/dist/knowledge/pi.d.ts.map +1 -1
- package/dist/knowledge/pi.js +25 -3
- package/dist/knowledge/pi.js.map +1 -1
- package/package.json +5 -2
- package/src/cli/args.ts +381 -0
- package/src/cli/check.ts +136 -0
- package/src/cli/exit-codes.ts +13 -0
- package/src/cli/help.ts +114 -0
- package/src/cli/index.ts +177 -0
- package/src/cli/inspect.ts +174 -0
- package/src/cli/ls.ts +14 -0
- package/src/cli/render.ts +62 -0
- package/src/cli/resolve-harness.ts +33 -0
- package/src/cli/run.ts +280 -0
- package/src/cli/session.ts +137 -0
- package/src/cli/version.ts +32 -0
- package/src/execution/decode.ts +32 -0
- package/src/execution/deps.ts +7 -1
- package/src/execution/events.ts +9 -2
- package/src/execution/failure.ts +159 -0
- package/src/execution/node-deps.ts +17 -0
- package/src/execution/stream-turn.ts +189 -17
- package/src/interpretation/argv.ts +85 -27
- package/src/interpretation/dimensions.ts +0 -6
- package/src/interpretation/limits.ts +97 -6
- package/src/interpretation/refusal.ts +116 -0
- package/src/interpretation/turn-options.ts +424 -0
- package/src/interpretation/vocabulary.ts +1 -1
- package/src/knowledge/claude-code.ts +35 -13
- package/src/knowledge/codex.ts +25 -14
- package/src/knowledge/descriptor.ts +138 -12
- package/src/knowledge/matchers.ts +22 -9
- package/src/knowledge/muse.ts +22 -6
- package/src/knowledge/overrides.ts +97 -0
- package/src/knowledge/pi.ts +25 -3
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { readFileSync } from "node:fs";
|
|
2
|
+
import { dirname, resolve } from "node:path";
|
|
3
|
+
import { fileURLToPath } from "node:url";
|
|
4
|
+
let cached = null;
|
|
5
|
+
export const getVersion = () => {
|
|
6
|
+
if (cached !== null)
|
|
7
|
+
return cached;
|
|
8
|
+
// dist/cli.js is at dist/cli.js -> repo root is one level up from dist, or two from src/cli per build.
|
|
9
|
+
// Try to locate package.json via fileURLToPath.
|
|
10
|
+
try {
|
|
11
|
+
const current = fileURLToPath(import.meta.url);
|
|
12
|
+
// src/cli/version.ts -> ../../package.json ; dist/cli.js -> ../package.json
|
|
13
|
+
const candidates = [
|
|
14
|
+
resolve(dirname(current), "../../package.json"),
|
|
15
|
+
resolve(dirname(current), "../package.json"),
|
|
16
|
+
resolve(dirname(current), "../../../package.json"),
|
|
17
|
+
];
|
|
18
|
+
for (const p of candidates) {
|
|
19
|
+
try {
|
|
20
|
+
const raw = readFileSync(p, "utf8");
|
|
21
|
+
const parsed = JSON.parse(raw);
|
|
22
|
+
if (typeof parsed.version === "string") {
|
|
23
|
+
cached = parsed.version;
|
|
24
|
+
return cached;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
catch { }
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
catch { }
|
|
31
|
+
cached = "0.0.0";
|
|
32
|
+
return cached;
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=version.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/cli/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,IAAI,MAAM,GAAkB,IAAI,CAAC;AAEjC,MAAM,CAAC,MAAM,UAAU,GAAG,GAAW,EAAE;IACrC,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,MAAM,CAAC;IACnC,uGAAuG;IACvG,gDAAgD;IAChD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/C,4EAA4E;QAC5E,MAAM,UAAU,GAAG;YACjB,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,oBAAoB,CAAC;YAC/C,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,iBAAiB,CAAC;YAC5C,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,uBAAuB,CAAC;SACnD,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;gBACpC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAyB,CAAC;gBACvD,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;oBACvC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC;oBACxB,OAAO,MAAM,CAAC;gBAChB,CAAC;YACH,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;QACZ,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;IACV,MAAM,GAAG,OAAO,CAAC;IACjB,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
|
package/dist/cli.js
ADDED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decode.d.ts","sourceRoot":"","sources":["../../src/execution/decode.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB;8CAC0C;IAC1C,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,eAAO,MAAM,gBAAgB,iBAAiB,MAAM,GAAG,IAAI,KAAU,WAInE,CAAC;AAEH,eAAO,MAAM,UAAU,MAClB,iBAAiB,QACd,MAAM,SACL,WAAW,SACX,MAAM,KACZ,YAAY,EAcd,CAAC;AAEF;;uDAEuD;AACvD,eAAO,MAAM,YAAY,MACpB,iBAAiB,OACf,OAAO,SACL,WAAW,SACX,MAAM,KACZ,YAAY,
|
|
1
|
+
{"version":3,"file":"decode.d.ts","sourceRoot":"","sources":["../../src/execution/decode.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB;8CAC0C;IAC1C,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,eAAO,MAAM,gBAAgB,iBAAiB,MAAM,GAAG,IAAI,KAAU,WAInE,CAAC;AAEH,eAAO,MAAM,UAAU,MAClB,iBAAiB,QACd,MAAM,SACL,WAAW,SACX,MAAM,KACZ,YAAY,EAcd,CAAC;AAEF;;uDAEuD;AACvD,eAAO,MAAM,YAAY,MACpB,iBAAiB,OACf,OAAO,SACL,WAAW,SACX,MAAM,KACZ,YAAY,EAsDd,CAAC"}
|
package/dist/execution/decode.js
CHANGED
|
@@ -55,6 +55,38 @@ export const decodeParsed = (h, raw, state, model) => {
|
|
|
55
55
|
// descriptor-driven. contentEventsOf dispatches by harness name.
|
|
56
56
|
for (const content of contentEventsOf(h.name, raw))
|
|
57
57
|
events.push(content);
|
|
58
|
+
// claude's rate_limit_event: only non-"allowed" statuses are failures.
|
|
59
|
+
// overageStatus is deliberately not classified - it is a separate
|
|
60
|
+
// billing signal, not a rate limit.
|
|
61
|
+
if (h.name === "claude" && typeof raw.type === "string") {
|
|
62
|
+
const rec = raw;
|
|
63
|
+
if (rec.type === "rate_limit_event") {
|
|
64
|
+
const info = rec.rate_limit_info;
|
|
65
|
+
const status = info?.status;
|
|
66
|
+
if (status !== undefined && status !== "allowed") {
|
|
67
|
+
const rawResets = info?.resetsAt;
|
|
68
|
+
let resetsAt;
|
|
69
|
+
if (typeof rawResets === "number" && Number.isFinite(rawResets) && rawResets > 0) {
|
|
70
|
+
// Arithmetic conversion: resetsAt is seconds, we need milliseconds. No wall clock read.
|
|
71
|
+
resetsAt = rawResets * 1000;
|
|
72
|
+
if (!Number.isFinite(resetsAt) || resetsAt <= 0)
|
|
73
|
+
resetsAt = undefined;
|
|
74
|
+
}
|
|
75
|
+
// Push a failure event directly - this is a structured record, not a wall scan
|
|
76
|
+
const failure = {
|
|
77
|
+
class: "rate-limit",
|
|
78
|
+
retryable: true,
|
|
79
|
+
message: `Rate limit hit (rate_limit_event status=${status}) - retry after backoff or route to another provider`,
|
|
80
|
+
code: "rate-limit",
|
|
81
|
+
...(resetsAt !== undefined ? { resetsAt } : {}),
|
|
82
|
+
};
|
|
83
|
+
events.push({
|
|
84
|
+
kind: "failure",
|
|
85
|
+
...failure,
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
58
90
|
return events;
|
|
59
91
|
};
|
|
60
92
|
//# sourceMappingURL=decode.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decode.js","sourceRoot":"","sources":["../../src/execution/decode.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAYhE,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,WAAW,GAAkB,IAAI,EAAe,EAAE,CAAC,CAAC;IACnF,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,KAAK;IAChB,WAAW;CACZ,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,CAAoB,EACpB,IAAY,EACZ,KAAkB,EAClB,KAAa,EACG,EAAE;IAClB,IAAI,GAAY,CAAC;IACjB,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,2EAA2E;QAC3E,MAAM,IAAI,GAAG,iBAAiB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACxC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;YACvB,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,wBAAwB,IAAI,GAAG,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,YAAY,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC5C,CAAC,CAAC;AAEF;;uDAEuD;AACvD,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,CAAoB,EACpB,GAAY,EACZ,KAAkB,EAClB,KAAa,EACG,EAAE;IAClB,MAAM,MAAM,GAAmB,EAAE,CAAC;IAClC,MAAM,OAAO,GAAG,cAAc,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IAC5E,IAAI,OAAO,CAAC,SAAS,KAAK,IAAI;QAAE,KAAK,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IACrE,IAAI,OAAO,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,UAAU;YAChB,SAAS,EAAE,OAAO,CAAC,QAAQ;YAC3B,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS;YAC/B,YAAY,EAAE,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,eAAe,CAAC;SACxD,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,OAAO,CAAC,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC5E,sEAAsE;QACtE,iEAAiE;QACjE,4CAA4C;QAC5C,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,uEAAuE;IACvE,iEAAiE;IACjE,KAAK,MAAM,OAAO,IAAI,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"decode.js","sourceRoot":"","sources":["../../src/execution/decode.ts"],"names":[],"mappings":"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"}
|
package/dist/execution/deps.d.ts
CHANGED
|
@@ -27,6 +27,10 @@ export interface SpawnOptions {
|
|
|
27
27
|
/** `pipe` opens a writable stdin (sessions require it); `inherit` hands
|
|
28
28
|
* the child the parent's fd 0; `close` gives it nothing (pi's rule). */
|
|
29
29
|
readonly stdin: "inherit" | "close" | "pipe";
|
|
30
|
+
/** Merged over the parent environment by the spawn adapter. A key mapped
|
|
31
|
+
* to "" means DELETE the variable (not an empty string). Validated
|
|
32
|
+
* against /^[A-Za-z_][A-Za-z0-9_]*$/ and NUL-free. */
|
|
33
|
+
readonly env?: Readonly<Record<string, string>>;
|
|
30
34
|
}
|
|
31
35
|
export type TimerHandle = number;
|
|
32
36
|
export interface Clock {
|
|
@@ -43,8 +47,10 @@ export interface RunnerDeps {
|
|
|
43
47
|
readonly spawn: (argv: readonly string[], opts: SpawnOptions) => SpawnedProcess;
|
|
44
48
|
readonly clock: Clock;
|
|
45
49
|
readonly signal: (proc: SpawnedProcess, sig: SignalName) => void;
|
|
46
|
-
/**
|
|
50
|
+
/** Inactivity budget; arms at every granularity and rearms on any output chunk. */
|
|
47
51
|
readonly stallMs?: number;
|
|
52
|
+
/** Wall-clock ceiling; armed once at spawn and never rearmed. */
|
|
53
|
+
readonly turnTimeoutMs?: number;
|
|
48
54
|
readonly log?: BoundaryLog;
|
|
49
55
|
/** Host-minted correlation id; without it the runner falls back to a
|
|
50
56
|
* per-process monotonic counter (collides across processes). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deps.d.ts","sourceRoot":"","sources":["../../src/execution/deps.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC;IACpD,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC;IACpD;;;8DAG0D;IAC1D,aAAa,IAAI,IAAI,CAAC;IACtB;6BACyB;IACzB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxC;6DACyD;IACzD,QAAQ,CAAC,KAAK,CAAC,EAAE;QACf,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QAC1B,GAAG,IAAI,IAAI,CAAC;KACb,CAAC;CACH;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB;4EACwE;IACxE,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"deps.d.ts","sourceRoot":"","sources":["../../src/execution/deps.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC;IACpD,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC;IACpD;;;8DAG0D;IAC1D,aAAa,IAAI,IAAI,CAAC;IACtB;6BACyB;IACzB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxC;6DACyD;IACzD,QAAQ,CAAC,KAAK,CAAC,EAAE;QACf,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QAC1B,GAAG,IAAI,IAAI,CAAC;KACb,CAAC;CACH;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB;4EACwE;IACxE,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;IAC7C;;0DAEsD;IACtD,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACjD;AAED,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC;AAEjC,MAAM,WAAW,KAAK;IACpB,GAAG,IAAI,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,EAAE,MAAM,IAAI,EAAE,EAAE,EAAE,MAAM,GAAG,WAAW,CAAC;IACpD,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;CACzC;AAED,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;AAE/C;;WAEW;AACX,MAAM,MAAM,WAAW,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;AAEnE,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,KAAK,cAAc,CAAC;IAChF,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,EAAE,UAAU,KAAK,IAAI,CAAC;IACjE,mFAAmF;IACnF,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,iEAAiE;IACjE,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC;IAC3B;oEACgE;IAChE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B"}
|
|
@@ -15,7 +15,8 @@
|
|
|
15
15
|
* concatenate both.
|
|
16
16
|
*/
|
|
17
17
|
import type { CapabilityResult } from "../interpretation/capabilities.js";
|
|
18
|
-
|
|
18
|
+
import type { FailureSummary } from "./failure.js";
|
|
19
|
+
export type ExitCause = "clean" | "limit" | "crash" | "stall" | "killed" | "failed";
|
|
19
20
|
export type HarnessEvent = {
|
|
20
21
|
readonly kind: "identity";
|
|
21
22
|
readonly sessionId: string;
|
|
@@ -45,10 +46,13 @@ export type HarnessEvent = {
|
|
|
45
46
|
} | {
|
|
46
47
|
readonly kind: "error";
|
|
47
48
|
readonly message: string;
|
|
48
|
-
} | {
|
|
49
|
+
} | ({
|
|
50
|
+
readonly kind: "failure";
|
|
51
|
+
} & FailureSummary) | {
|
|
49
52
|
readonly kind: "done";
|
|
50
53
|
readonly exitCode: number | null;
|
|
51
54
|
readonly cause: ExitCause;
|
|
55
|
+
readonly failure?: FailureSummary;
|
|
52
56
|
};
|
|
53
57
|
export declare const DROPPABLE_KINDS: Set<string>;
|
|
54
58
|
//# sourceMappingURL=events.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/execution/events.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/execution/events.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEpF,MAAM,MAAM,YAAY,GACpB;IACE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,iBAAiB,GAAG,gBAAgB,CAAC;IACzD,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAAC;CACzC,GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACjD;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC1E;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACrD;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAC1E;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACtD;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC3E;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACpD,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GAAG,cAAc,CAAC,GAC/C;IACE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC;CACnC,CAAC;AAEN,eAAO,MAAM,eAAe,aAA4C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/execution/events.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/execution/events.ts"],"names":[],"mappings":"AA2CA,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* failure: typed taxonomy for every way a turn can fail, and the reduction
|
|
3
|
+
* that collapses many observations into one self-sufficient summary on `done`.
|
|
4
|
+
*
|
|
5
|
+
* Provider-unavailable vs work-verdict is the load-bearing split: a provider-
|
|
6
|
+
* unavailable failure (rate-limit, usage-limit, quota, auth, transport) reached
|
|
7
|
+
* no verdict on the work, so routing the same work elsewhere is safe. A
|
|
8
|
+
* work-verdict failure (task, budget) means the model did the work and the
|
|
9
|
+
* work is wrong or incomplete - the router must NOT auto-route it elsewhere,
|
|
10
|
+
* or it would hide a model error behind a retry. `rejected` is the library
|
|
11
|
+
* refusing to build the call at all (unexpressible option, bad value); it is
|
|
12
|
+
* non-retryable across the whole model chain because the remedy is different
|
|
13
|
+
* options or a different harness, not a different model.
|
|
14
|
+
*/
|
|
15
|
+
import type { RefusalIssue } from "../interpretation/refusal.js";
|
|
16
|
+
import type { AuthFailureKind, DiscoveryFacet, LimitCode, TurnOptionKey } from "../knowledge/descriptor.js";
|
|
17
|
+
export declare const FAILURE_CLASSES: readonly ["rate-limit", "usage-limit", "quota", "auth", "budget", "task", "transport", "rejected"];
|
|
18
|
+
export type FailureClass = (typeof FAILURE_CLASSES)[number];
|
|
19
|
+
export interface FailureSummary {
|
|
20
|
+
readonly class: FailureClass;
|
|
21
|
+
readonly retryable: boolean;
|
|
22
|
+
readonly message: string;
|
|
23
|
+
readonly code?: LimitCode;
|
|
24
|
+
readonly authKind?: AuthFailureKind;
|
|
25
|
+
readonly resetsAt?: number;
|
|
26
|
+
readonly issue?: RefusalIssue;
|
|
27
|
+
readonly option?: TurnOptionKey;
|
|
28
|
+
readonly facet?: DiscoveryFacet;
|
|
29
|
+
readonly supported?: readonly string[];
|
|
30
|
+
}
|
|
31
|
+
export declare const retryableOf: (cls: FailureClass) => boolean;
|
|
32
|
+
export declare const failureFromLimit: (code: LimitCode) => FailureSummary;
|
|
33
|
+
export declare const failureFromAuth: (kind: AuthFailureKind) => FailureSummary;
|
|
34
|
+
export declare const failureFromTask: (detail?: string) => FailureSummary;
|
|
35
|
+
export declare const failureFromBudget: (detail?: string) => FailureSummary;
|
|
36
|
+
export declare const failureFromTransport: (detail?: string) => FailureSummary;
|
|
37
|
+
export declare const failureFromRejected: (opts: {
|
|
38
|
+
issue: RefusalIssue;
|
|
39
|
+
option?: TurnOptionKey;
|
|
40
|
+
facet?: DiscoveryFacet;
|
|
41
|
+
supported?: readonly string[];
|
|
42
|
+
detail?: string;
|
|
43
|
+
}) => FailureSummary;
|
|
44
|
+
export declare const reduceFailures: (failures: readonly FailureSummary[]) => FailureSummary | undefined;
|
|
45
|
+
//# sourceMappingURL=failure.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"failure.d.ts","sourceRoot":"","sources":["../../src/execution/failure.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,SAAS,EACT,aAAa,EACd,MAAM,4BAA4B,CAAC;AAEpC,eAAO,MAAM,eAAe,oGASjB,CAAC;AACZ,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5D,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAC;IACpC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAED,eAAO,MAAM,WAAW,QAAS,YAAY,KAAG,OACU,CAAC;AAyB3D,eAAO,MAAM,gBAAgB,SAAU,SAAS,KAAG,cAalD,CAAC;AAEF,eAAO,MAAM,eAAe,SAAU,eAAe,KAAG,cAKtD,CAAC;AAEH,eAAO,MAAM,eAAe,YAAa,MAAM,KAAG,cAIhD,CAAC;AAEH,eAAO,MAAM,iBAAiB,YAAa,MAAM,KAAG,cAIlD,CAAC;AAEH,eAAO,MAAM,oBAAoB,YAAa,MAAM,KAAG,cAIrD,CAAC;AAEH,eAAO,MAAM,mBAAmB,SAAU;IACxC,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,KAAG,cAQF,CAAC;AAcH,eAAO,MAAM,cAAc,aAAc,SAAS,cAAc,EAAE,KAAG,cAAc,GAAG,SAgBrF,CAAC"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* failure: typed taxonomy for every way a turn can fail, and the reduction
|
|
3
|
+
* that collapses many observations into one self-sufficient summary on `done`.
|
|
4
|
+
*
|
|
5
|
+
* Provider-unavailable vs work-verdict is the load-bearing split: a provider-
|
|
6
|
+
* unavailable failure (rate-limit, usage-limit, quota, auth, transport) reached
|
|
7
|
+
* no verdict on the work, so routing the same work elsewhere is safe. A
|
|
8
|
+
* work-verdict failure (task, budget) means the model did the work and the
|
|
9
|
+
* work is wrong or incomplete - the router must NOT auto-route it elsewhere,
|
|
10
|
+
* or it would hide a model error behind a retry. `rejected` is the library
|
|
11
|
+
* refusing to build the call at all (unexpressible option, bad value); it is
|
|
12
|
+
* non-retryable across the whole model chain because the remedy is different
|
|
13
|
+
* options or a different harness, not a different model.
|
|
14
|
+
*/
|
|
15
|
+
export const FAILURE_CLASSES = Object.freeze([
|
|
16
|
+
"rate-limit",
|
|
17
|
+
"usage-limit",
|
|
18
|
+
"quota",
|
|
19
|
+
"auth",
|
|
20
|
+
"budget",
|
|
21
|
+
"task",
|
|
22
|
+
"transport",
|
|
23
|
+
"rejected",
|
|
24
|
+
]);
|
|
25
|
+
export const retryableOf = (cls) => cls !== "task" && cls !== "budget" && cls !== "rejected";
|
|
26
|
+
const messageFor = (cls, detail) => {
|
|
27
|
+
switch (cls) {
|
|
28
|
+
case "rate-limit":
|
|
29
|
+
return `Rate limit hit${detail ? ` (${detail})` : ""} - retry after backoff or route to another provider`;
|
|
30
|
+
case "usage-limit":
|
|
31
|
+
return `Usage limit reached${detail ? ` (${detail})` : ""} - wait for reset or route to another provider`;
|
|
32
|
+
case "quota":
|
|
33
|
+
return `Quota exceeded${detail ? ` (${detail})` : ""} - replenish quota or route to another provider`;
|
|
34
|
+
case "auth":
|
|
35
|
+
return `Authentication failed${detail ? ` (${detail})` : ""} - re-authenticate this provider`;
|
|
36
|
+
case "budget":
|
|
37
|
+
return `Step budget exhausted${detail ? ` (${detail})` : ""} - raise the step cap and retry on the same model`;
|
|
38
|
+
case "task":
|
|
39
|
+
return `Task failed${detail ? ` (${detail})` : ""} - surface to caller, do not auto-route`;
|
|
40
|
+
case "transport":
|
|
41
|
+
return `Transport failure${detail ? ` (${detail})` : ""} - retry or route to another provider`;
|
|
42
|
+
case "rejected":
|
|
43
|
+
return `Request rejected${detail ? ` (${detail})` : ""} - change options or harness`;
|
|
44
|
+
default:
|
|
45
|
+
return `Failure${detail ? ` (${detail})` : ""}`;
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
export const failureFromLimit = (code) => {
|
|
49
|
+
const cls = code === "rate-limit"
|
|
50
|
+
? "rate-limit"
|
|
51
|
+
: code === "credits" || code === "quota"
|
|
52
|
+
? "quota"
|
|
53
|
+
: "usage-limit";
|
|
54
|
+
return {
|
|
55
|
+
class: cls,
|
|
56
|
+
retryable: retryableOf(cls),
|
|
57
|
+
message: messageFor(cls, code),
|
|
58
|
+
code: code,
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
export const failureFromAuth = (kind) => ({
|
|
62
|
+
class: "auth",
|
|
63
|
+
retryable: true,
|
|
64
|
+
message: messageFor("auth", kind),
|
|
65
|
+
authKind: kind,
|
|
66
|
+
});
|
|
67
|
+
export const failureFromTask = (detail) => ({
|
|
68
|
+
class: "task",
|
|
69
|
+
retryable: false,
|
|
70
|
+
message: messageFor("task", detail),
|
|
71
|
+
});
|
|
72
|
+
export const failureFromBudget = (detail) => ({
|
|
73
|
+
class: "budget",
|
|
74
|
+
retryable: false,
|
|
75
|
+
message: messageFor("budget", detail),
|
|
76
|
+
});
|
|
77
|
+
export const failureFromTransport = (detail) => ({
|
|
78
|
+
class: "transport",
|
|
79
|
+
retryable: true,
|
|
80
|
+
message: messageFor("transport", detail),
|
|
81
|
+
});
|
|
82
|
+
export const failureFromRejected = (opts) => ({
|
|
83
|
+
class: "rejected",
|
|
84
|
+
retryable: false,
|
|
85
|
+
message: messageFor("rejected", opts.detail ?? opts.issue),
|
|
86
|
+
issue: opts.issue,
|
|
87
|
+
option: opts.option,
|
|
88
|
+
facet: opts.facet,
|
|
89
|
+
supported: opts.supported,
|
|
90
|
+
});
|
|
91
|
+
/** Precedence for reduction: lower number = higher priority (wins). */
|
|
92
|
+
const PRECEDENCE = {
|
|
93
|
+
auth: 1,
|
|
94
|
+
"rate-limit": 2,
|
|
95
|
+
"usage-limit": 2,
|
|
96
|
+
quota: 2,
|
|
97
|
+
budget: 3,
|
|
98
|
+
task: 3,
|
|
99
|
+
transport: 4,
|
|
100
|
+
rejected: 0, // rejected is separate, not reduced with others? But per spec, rejected is non-retryable and stands alone
|
|
101
|
+
};
|
|
102
|
+
export const reduceFailures = (failures) => {
|
|
103
|
+
if (failures.length === 0)
|
|
104
|
+
return undefined;
|
|
105
|
+
if (failures.length === 1)
|
|
106
|
+
return failures[0];
|
|
107
|
+
// Sort by precedence, then by earliest (stable). Lower precedence number wins.
|
|
108
|
+
let best = failures[0];
|
|
109
|
+
let bestPrec = PRECEDENCE[best.class] ?? 99;
|
|
110
|
+
for (let i = 1; i < failures.length; i++) {
|
|
111
|
+
const cur = failures[i];
|
|
112
|
+
const curPrec = PRECEDENCE[cur.class] ?? 99;
|
|
113
|
+
if (curPrec < bestPrec) {
|
|
114
|
+
best = cur;
|
|
115
|
+
bestPrec = curPrec;
|
|
116
|
+
}
|
|
117
|
+
// ties keep earliest (do nothing)
|
|
118
|
+
}
|
|
119
|
+
return best;
|
|
120
|
+
};
|
|
121
|
+
//# sourceMappingURL=failure.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"failure.js","sourceRoot":"","sources":["../../src/execution/failure.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-deps.d.ts","sourceRoot":"","sources":["../../src/execution/node-deps.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAS,UAAU,EAAgC,MAAM,WAAW,CAAC;AAMjF,KAAK,YAAY,GAAG,SAAS,GAAG,QAAQ,CAAC;AAwBzC;;kEAEkE;AAClE,eAAO,MAAM,sBAAsB,WACzB,QAAQ,iBACD,KAAK,gBACN,OAAO,CAAC,YAAY,CAAC,KAClC;IAAE,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IAAC,OAAO,IAAI,IAAI,CAAA;CAyC/D,CAAC;
|
|
1
|
+
{"version":3,"file":"node-deps.d.ts","sourceRoot":"","sources":["../../src/execution/node-deps.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAS,UAAU,EAAgC,MAAM,WAAW,CAAC;AAMjF,KAAK,YAAY,GAAG,SAAS,GAAG,QAAQ,CAAC;AAwBzC;;kEAEkE;AAClE,eAAO,MAAM,sBAAsB,WACzB,QAAQ,iBACD,KAAK,gBACN,OAAO,CAAC,YAAY,CAAC,KAClC;IAAE,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IAAC,OAAO,IAAI,IAAI,CAAA;CAyC/D,CAAC;AAoGF,eAAO,MAAM,cAAc,WAAY,OAAO,CAAC,UAAU,CAAC,KAAG,UAO3D,CAAC"}
|
|
@@ -76,8 +76,27 @@ const realSpawn = (argv, opts) => {
|
|
|
76
76
|
const [bin, ...args] = argv;
|
|
77
77
|
if (bin === undefined)
|
|
78
78
|
throw new Error("empty argv");
|
|
79
|
+
const env = opts.env === undefined
|
|
80
|
+
? undefined
|
|
81
|
+
: (() => {
|
|
82
|
+
const merged = { ...process.env };
|
|
83
|
+
for (const [k, v] of Object.entries(opts.env)) {
|
|
84
|
+
if (v === "")
|
|
85
|
+
delete merged[k];
|
|
86
|
+
else
|
|
87
|
+
merged[k] = v;
|
|
88
|
+
}
|
|
89
|
+
// Filter out undefined to satisfy Node's env type (string -> string)
|
|
90
|
+
const out = {};
|
|
91
|
+
for (const [k, v] of Object.entries(merged)) {
|
|
92
|
+
if (v !== undefined)
|
|
93
|
+
out[k] = v;
|
|
94
|
+
}
|
|
95
|
+
return out;
|
|
96
|
+
})();
|
|
79
97
|
const child = nodeSpawn(bin, args, {
|
|
80
98
|
...(opts.cwd !== undefined ? { cwd: opts.cwd } : {}),
|
|
99
|
+
...(env !== undefined ? { env } : {}),
|
|
81
100
|
stdio: [
|
|
82
101
|
opts.stdin === "pipe" ? "pipe" : opts.stdin === "close" ? "ignore" : "inherit",
|
|
83
102
|
"pipe",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-deps.js","sourceRoot":"","sources":["../../src/execution/node-deps.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"node-deps.js","sourceRoot":"","sources":["../../src/execution/node-deps.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,6 +38,8 @@ export interface TurnRunOptions extends LaunchOptions {
|
|
|
38
38
|
readonly resume?: string;
|
|
39
39
|
/** Working directory for the spawned harness. */
|
|
40
40
|
readonly cwd?: string;
|
|
41
|
+
/** Per-call environment, merged over parent; "" deletes. */
|
|
42
|
+
readonly env?: Readonly<Record<string, string>>;
|
|
41
43
|
}
|
|
42
44
|
export declare function streamTurn(h: HarnessDescriptor, opts: TurnRunOptions, deps: RunnerDeps): AsyncIterable<HarnessEvent>;
|
|
43
45
|
//# sourceMappingURL=stream-turn.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream-turn.d.ts","sourceRoot":"","sources":["../../src/execution/stream-turn.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAGL,KAAK,aAAa,EAEnB,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"stream-turn.d.ts","sourceRoot":"","sources":["../../src/execution/stream-turn.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAGL,KAAK,aAAa,EAEnB,MAAM,2BAA2B,CAAC;AAInC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAIpE,OAAO,KAAK,EAAE,UAAU,EAAkB,MAAM,WAAW,CAAC;AAC5D,OAAO,KAAK,EAAa,YAAY,EAAE,MAAM,aAAa,CAAC;AAe3D;;sCAEsC;AACtC,eAAO,MAAM,aAAa,OAAQ,CAAC;AACnC,eAAO,MAAM,aAAa,OAAQ,CAAC;AAWnC;;qDAEqD;AACrD,eAAO,MAAM,UAAU,SAAU,SAAS,MAAM,EAAE,WAAW,MAAM,KAAG,MAAM,EAKxE,CAAC;AAEL;;8BAE8B;AAC9B,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgB;IACtC,OAAO,CAAC,KAAK,CAAK;IAClB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAOvB;IACD,QAAQ,IAAI,SAAS,MAAM,EAAE,CAE5B;CACF;AAED,MAAM,WAAW,cAAe,SAAQ,aAAa;IACnD;;uDAEmD;IACnD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,iDAAiD;IACjD,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACjD;AAED,wBAAuB,UAAU,CAC/B,CAAC,EAAE,iBAAiB,EACpB,IAAI,EAAE,cAAc,EACpB,IAAI,EAAE,UAAU,GACf,aAAa,CAAC,YAAY,CAAC,CA8X7B"}
|