@alpacakit/agents 0.1.0-beta.35 → 0.1.0-beta.36

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 (50) hide show
  1. package/README.md +25 -0
  2. package/dist/agents/claude.d.ts +9 -2
  3. package/dist/agents/claude.d.ts.map +1 -1
  4. package/dist/agents/claude.js +16 -5
  5. package/dist/agents/codex.d.ts +1 -1
  6. package/dist/agents/codex.js +1 -1
  7. package/dist/core/error.d.ts +25 -0
  8. package/dist/core/error.d.ts.map +1 -1
  9. package/dist/core/error.js +15 -0
  10. package/dist/core/node-controlled-exec.d.ts.map +1 -1
  11. package/dist/core/node-controlled-exec.js +31 -8
  12. package/dist/core/node-ports.d.ts.map +1 -1
  13. package/dist/core/node-ports.js +20 -0
  14. package/dist/core/ports.d.ts +5 -0
  15. package/dist/core/ports.d.ts.map +1 -1
  16. package/dist/fleet/policy.d.ts.map +1 -1
  17. package/dist/fleet/policy.js +3 -0
  18. package/dist/index.d.ts +3 -3
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +2 -2
  21. package/dist/internal/controlled-process/host-controller.d.ts +3 -2
  22. package/dist/internal/controlled-process/host-controller.d.ts.map +1 -1
  23. package/dist/internal/controlled-process/host-controller.js +63 -23
  24. package/dist/internal/controlled-process/input-transport.d.ts +17 -0
  25. package/dist/internal/controlled-process/input-transport.d.ts.map +1 -0
  26. package/dist/internal/controlled-process/input-transport.js +188 -0
  27. package/dist/internal/controlled-process/lifecycle.d.ts +1 -1
  28. package/dist/internal/controlled-process/lifecycle.d.ts.map +1 -1
  29. package/dist/internal/controlled-process/lifecycle.js +1 -0
  30. package/dist/internal/controlled-process/schema.d.ts +2 -2
  31. package/dist/internal/controlled-process/schema.js +1 -1
  32. package/dist/internal/controlled-process/shim-runtime.d.ts.map +1 -1
  33. package/dist/internal/controlled-process/shim-runtime.js +43 -4
  34. package/dist/internal/controlled-process/supervisor-coordinator.d.ts.map +1 -1
  35. package/dist/internal/controlled-process/supervisor-coordinator.js +4 -2
  36. package/dist/internal/controlled-process/supervisor-model.d.ts +24 -2
  37. package/dist/internal/controlled-process/supervisor-model.d.ts.map +1 -1
  38. package/dist/internal/controlled-process/supervisor-runtime.d.ts.map +1 -1
  39. package/dist/internal/controlled-process/supervisor-runtime.js +116 -15
  40. package/dist/internal/controlled-process/supervisor-schema.d.ts +66 -3
  41. package/dist/internal/controlled-process/supervisor-schema.d.ts.map +1 -1
  42. package/dist/internal/controlled-process/supervisor-schema.js +31 -3
  43. package/dist/internal/controlled-process/supervisor-values.d.ts +5 -0
  44. package/dist/internal/controlled-process/supervisor-values.d.ts.map +1 -1
  45. package/dist/internal/controlled-process/supervisor-values.js +5 -0
  46. package/dist/internal/controlled-process/values.d.ts +4 -4
  47. package/dist/internal/controlled-process/values.js +4 -4
  48. package/dist/structured/run-structured.d.ts.map +1 -1
  49. package/dist/structured/run-structured.js +2 -5
  50. package/package.json +2 -2
package/README.md CHANGED
@@ -65,6 +65,13 @@ for await (const event of handle.events) {
65
65
  const result = await handle; // await handle === await handle.result
66
66
  ```
67
67
 
68
+ For an isolated Claude Code invocation, construct the adapter with
69
+ `claude({ customizations: "disabled" })`. It passes `--safe-mode`,
70
+ `--strict-mcp-config`, and `--no-session-persistence`, so Claude does not load
71
+ the user's CLAUDE.md, skills, plugins, hooks, MCP servers, or custom commands;
72
+ authentication remains available and the session is not persisted. Plain
73
+ `claude()` keeps the CLI's inherited customization behavior.
74
+
68
75
  ### Controlled child lifecycle
69
76
 
70
77
  Embedding hosts that need durable custody of CLI workers create a
@@ -114,6 +121,21 @@ termination through that controller exactly once. The supervisor owns signal
114
121
  escalation and reports either authenticated absence or a typed unkillable
115
122
  reason, so the runtime never falls back to direct process signaling.
116
123
 
124
+ Prompt bytes use the v2 controlled-process protocol. The bounded control
125
+ frame carries only a UTF-8 byte length and SHA-256 digest; a dedicated data FD
126
+ streams the bytes through the supervisor and shim to worker stdin with
127
+ backpressure. A process is not ready until the shim has verified the exact
128
+ length and digest and worker stdin has closed successfully. The old protocol
129
+ that embedded stdin in the JSON bootstrap is not accepted. Launch transfer
130
+ uses the configured host-idle timeout as its deadline, so a peer that never
131
+ consumes stdin cannot leave the launch pending indefinitely.
132
+
133
+ Launch transport failures throw `AgentError` with code
134
+ `controlled_process_launch`. Its data contains the stable `failureCode`,
135
+ `retryability`, transfer `stage`, and declared/observed byte counts, so hosts
136
+ can route permanent contract failures separately from transient pipe or early
137
+ exit failures without parsing messages.
138
+
117
139
  A naturally completed worker includes its exact `{ code, signal }` as
118
140
  `workerExit`. Abort-driven termination may complete with `workerExit: null`;
119
141
  pre-exec lifecycle failure rejects `spawn` before a process handle is returned.
@@ -144,6 +166,9 @@ const { output } = await runtime.agent("claude").run({
144
166
  `agent.run({ ..., contract })` returns an awaitable handle: `await` it
145
167
  for the result, or iterate `.events` to stream every repair attempt's run
146
168
  events as they happen (`for await (const event of handle.events) …`).
169
+ Default repair attempts send only the invalid block, concise diagnostics, and
170
+ a request for the original required shape; they do not repeat the original
171
+ task or contract text.
147
172
 
148
173
  ## Failover across credentials and agents
149
174
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Built-in claude adapter (v1 E1/E2 argv kept verbatim):
2
+ * Built-in claude CLI contract:
3
3
  * `claude -p [--model m] [--effort e] --output-format stream-json
4
4
  * --permission-mode <mode> [tool args] --verbose`, prompt on stdin.
5
5
  * Read-only grants map to `--allowedTools` (`Bash(cmd:*)` for shell
@@ -16,5 +16,12 @@ export declare const CLAUDE_API_KEY_ENV_VAR = "ANTHROPIC_API_KEY";
16
16
  * the same stream format.
17
17
  */
18
18
  export declare function structuredQuotaMatcher(): FailureMatcher;
19
- export declare function claude(): AgentDefinition<"claude">;
19
+ export type ClaudeOptions = {
20
+ /**
21
+ * `disabled` prevents loading user customizations while retaining auth and
22
+ * disables session persistence. The default `inherit` preserves CLI behavior.
23
+ */
24
+ readonly customizations?: "inherit" | "disabled";
25
+ };
26
+ export declare function claude(options?: ClaudeOptions): AgentDefinition<"claude">;
20
27
  //# sourceMappingURL=claude.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../src/agents/claude.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA8CH,OAAO,EACL,KAAK,cAAc,EAEpB,MAAM,uBAAuB,CAAC;AAM/B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG/D,eAAO,MAAM,yBAAyB,sBAAsB,CAAC;AAC7D,eAAO,MAAM,sBAAsB,sBAAsB,CAAC;AAyJ1D;;;;;GAKG;AACH,wBAAgB,sBAAsB,IAAI,cAAc,CA0CvD;AAoSD,wBAAgB,MAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,CA0ElD"}
1
+ {"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../src/agents/claude.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA8CH,OAAO,EACL,KAAK,cAAc,EAEpB,MAAM,uBAAuB,CAAC;AAM/B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG/D,eAAO,MAAM,yBAAyB,sBAAsB,CAAC;AAC7D,eAAO,MAAM,sBAAsB,sBAAsB,CAAC;AAsK1D;;;;;GAKG;AACH,wBAAgB,sBAAsB,IAAI,cAAc,CA0CvD;AAoSD,MAAM,MAAM,aAAa,GAAG;IAC1B;;;OAGG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;CAClD,CAAC;AAEF,wBAAgB,MAAM,CAAC,OAAO,GAAE,aAAkB,GAAG,eAAe,CAAC,QAAQ,CAAC,CA2E7E"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Built-in claude adapter (v1 E1/E2 argv kept verbatim):
2
+ * Built-in claude CLI contract:
3
3
  * `claude -p [--model m] [--effort e] --output-format stream-json
4
4
  * --permission-mode <mode> [tool args] --verbose`, prompt on stdin.
5
5
  * Read-only grants map to `--allowedTools` (`Bash(cmd:*)` for shell
@@ -40,6 +40,9 @@ const CLAUDE = {
40
40
  verbose: "--verbose",
41
41
  tools: "--tools",
42
42
  allowedTools: "--allowedTools",
43
+ safeMode: "--safe-mode",
44
+ strictMcpConfig: "--strict-mcp-config",
45
+ noSessionPersistence: "--no-session-persistence",
43
46
  },
44
47
  auth: {
45
48
  statusArgs: ["auth", "status", "--json"],
@@ -99,13 +102,20 @@ function grantToToolArg(grant) {
99
102
  ? `Bash(${grant.command}:*)`
100
103
  : grant.name;
101
104
  }
102
- function sharedArgs(ctx) {
105
+ function sharedArgs(ctx, customizations) {
103
106
  return [
104
107
  CLAUDE.cli.prompt,
105
108
  ...(ctx.model === null ? [] : [CLAUDE.cli.model, ctx.model]),
106
109
  ...(ctx.effort === null ? [] : [CLAUDE.cli.effort, ctx.effort]),
107
110
  CLAUDE.cli.outputFormat,
108
111
  CLAUDE.cli.streamJson,
112
+ ...(customizations === "disabled"
113
+ ? [
114
+ CLAUDE.cli.safeMode,
115
+ CLAUDE.cli.strictMcpConfig,
116
+ CLAUDE.cli.noSessionPersistence,
117
+ ]
118
+ : []),
109
119
  ];
110
120
  }
111
121
  function parseClaudeLine(line) {
@@ -428,19 +438,20 @@ async function removeClaudeMcp(ctx, name, options) {
428
438
  async function listClaudeMcp(ctx) {
429
439
  return listMcpServersViaCli(ctx, { command: CLAUDE.command });
430
440
  }
431
- export function claude() {
441
+ export function claude(options = {}) {
442
+ const customizations = options.customizations ?? "inherit";
432
443
  return defineCliAgent({
433
444
  id: CLAUDE.id,
434
445
  command: CLAUDE.command,
435
446
  args: {
436
447
  [SANDBOX_MODE.full]: (_sandbox, ctx) => [
437
- ...sharedArgs(ctx),
448
+ ...sharedArgs(ctx, customizations),
438
449
  CLAUDE.cli.permissionMode,
439
450
  CLAUDE.cli.bypassPermissions,
440
451
  CLAUDE.cli.verbose,
441
452
  ],
442
453
  [SANDBOX_MODE.readOnly]: (sandbox, ctx) => [
443
- ...sharedArgs(ctx),
454
+ ...sharedArgs(ctx, customizations),
444
455
  CLAUDE.cli.permissionMode,
445
456
  CLAUDE.cli.defaultPermissionMode,
446
457
  ...(sandbox.grants.length === 0
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Built-in codex adapter (v1 E1/E2 argv kept verbatim):
2
+ * Built-in codex CLI contract:
3
3
  * `codex exec [--model m] [-c model_reasoning_effort="e"] --json
4
4
  * --skip-git-repo-check --sandbox <mode> -C <workspace>`, prompt on
5
5
  * stdin. Codex sandboxing is filesystem-level, so read-only grants have
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Built-in codex adapter (v1 E1/E2 argv kept verbatim):
2
+ * Built-in codex CLI contract:
3
3
  * `codex exec [--model m] [-c model_reasoning_effort="e"] --json
4
4
  * --skip-git-repo-check --sandbox <mode> -C <workspace>`, prompt on
5
5
  * stdin. Codex sandboxing is filesystem-level, so read-only grants have
@@ -13,6 +13,7 @@ export declare const AGENT_ERROR_CODE: {
13
13
  readonly limit: "limit";
14
14
  readonly cancelled: "cancelled";
15
15
  readonly outputRejected: "output_rejected";
16
+ readonly controlledProcessLaunch: "controlled_process_launch";
16
17
  readonly failed: "failed";
17
18
  };
18
19
  export type AgentErrorCode = (typeof AGENT_ERROR_CODE)[keyof typeof AGENT_ERROR_CODE];
@@ -23,6 +24,7 @@ export declare const AGENT_FAILURE_CLASS: {
23
24
  export type AgentFailureClass = (typeof AGENT_FAILURE_CLASS)[keyof typeof AGENT_FAILURE_CLASS];
24
25
  export declare const AGENT_INFRASTRUCTURE_FAILURE_CODE: {
25
26
  readonly controlledProcessLifecycle: "controlled_process_lifecycle";
27
+ readonly controlledProcessLaunch: "controlled_process_launch";
26
28
  };
27
29
  export type AgentInfrastructureFailureCode = (typeof AGENT_INFRASTRUCTURE_FAILURE_CODE)[keyof typeof AGENT_INFRASTRUCTURE_FAILURE_CODE];
28
30
  export type AgentFailureCode = AgentErrorCode | AgentInfrastructureFailureCode;
@@ -69,6 +71,28 @@ export type Issue = {
69
71
  code: string;
70
72
  message: string;
71
73
  };
74
+ export declare const CONTROLLED_PROCESS_LAUNCH_FAILURE_CODE: {
75
+ readonly inputEarlyEof: "input_early_eof";
76
+ readonly inputOverrun: "input_overrun";
77
+ readonly inputDigestMismatch: "input_digest_mismatch";
78
+ readonly inputWriteFailed: "input_write_failed";
79
+ readonly inputTransferTimeout: "input_transfer_timeout";
80
+ readonly workerExited: "worker_exited_during_launch";
81
+ readonly protocolViolation: "protocol_violation";
82
+ };
83
+ export type ControlledProcessLaunchFailureCode = (typeof CONTROLLED_PROCESS_LAUNCH_FAILURE_CODE)[keyof typeof CONTROLLED_PROCESS_LAUNCH_FAILURE_CODE];
84
+ export declare const CONTROLLED_PROCESS_LAUNCH_FAILURE_RETRYABILITY: {
85
+ readonly permanent: "permanent";
86
+ readonly transient: "transient";
87
+ };
88
+ export type ControlledProcessLaunchFailureRetryability = (typeof CONTROLLED_PROCESS_LAUNCH_FAILURE_RETRYABILITY)[keyof typeof CONTROLLED_PROCESS_LAUNCH_FAILURE_RETRYABILITY];
89
+ export type ControlledProcessLaunchFailureData = {
90
+ readonly failureCode: ControlledProcessLaunchFailureCode;
91
+ readonly retryability: ControlledProcessLaunchFailureRetryability;
92
+ readonly stage: "host_to_supervisor" | "supervisor_to_shim" | "shim_to_worker" | "control_protocol";
93
+ readonly expectedBytes: number | null;
94
+ readonly actualBytes: number | null;
95
+ };
72
96
  export type AgentErrorData = {
73
97
  [AGENT_ERROR_CODE.invalidInput]: {
74
98
  reason: string;
@@ -100,6 +124,7 @@ export type AgentErrorData = {
100
124
  issues: Issue[];
101
125
  attempts: number;
102
126
  };
127
+ [AGENT_ERROR_CODE.controlledProcessLaunch]: ControlledProcessLaunchFailureData;
103
128
  [AGENT_ERROR_CODE.failed]: {
104
129
  exitCode: number | null;
105
130
  stdoutTail: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/core/error.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/core/error.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ export const AGENT_ERROR_CODE = {
13
13
  limit: "limit",
14
14
  cancelled: "cancelled",
15
15
  outputRejected: "output_rejected",
16
+ controlledProcessLaunch: "controlled_process_launch",
16
17
  failed: "failed",
17
18
  };
18
19
  export const AGENT_FAILURE_CLASS = {
@@ -21,6 +22,7 @@ export const AGENT_FAILURE_CLASS = {
21
22
  };
22
23
  export const AGENT_INFRASTRUCTURE_FAILURE_CODE = {
23
24
  controlledProcessLifecycle: "controlled_process_lifecycle",
25
+ controlledProcessLaunch: "controlled_process_launch",
24
26
  };
25
27
  export function agentFailure(failureCode) {
26
28
  return {
@@ -56,6 +58,19 @@ export const TIMEOUT_KIND = {
56
58
  total: "total",
57
59
  idle: "idle",
58
60
  };
61
+ export const CONTROLLED_PROCESS_LAUNCH_FAILURE_CODE = {
62
+ inputEarlyEof: "input_early_eof",
63
+ inputOverrun: "input_overrun",
64
+ inputDigestMismatch: "input_digest_mismatch",
65
+ inputWriteFailed: "input_write_failed",
66
+ inputTransferTimeout: "input_transfer_timeout",
67
+ workerExited: "worker_exited_during_launch",
68
+ protocolViolation: "protocol_violation",
69
+ };
70
+ export const CONTROLLED_PROCESS_LAUNCH_FAILURE_RETRYABILITY = {
71
+ permanent: "permanent",
72
+ transient: "transient",
73
+ };
59
74
  const AGENT_ERROR_BRAND = Symbol.for("@alpacakit/agents.AgentError");
60
75
  export class AgentError extends Error {
61
76
  code;
@@ -1 +1 @@
1
- {"version":3,"file":"node-controlled-exec.d.ts","sourceRoot":"","sources":["../../src/core/node-controlled-exec.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,cAAc,EACd,qBAAqB,EACtB,MAAM,yBAAyB,CAAC;AAajC,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,qBAAqB,GAC7B,cAAc,CA0BhB"}
1
+ {"version":3,"file":"node-controlled-exec.d.ts","sourceRoot":"","sources":["../../src/core/node-controlled-exec.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,cAAc,EACd,qBAAqB,EACtB,MAAM,yBAAyB,CAAC;AAmBjC,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,qBAAqB,GAC7B,cAAc,CAgDhB"}
@@ -1,5 +1,7 @@
1
1
  import path from "node:path";
2
2
  import { launchControlledProcess, recoverControlledProcess, } from "../internal/controlled-process/host-controller.js";
3
+ import { ControlledProcessLaunchError } from "../internal/controlled-process/input-transport.js";
4
+ import { AGENT_ERROR_CODE, AGENT_INFRASTRUCTURE_FAILURE_CODE, AgentError, infrastructureFailure, } from "./error.js";
3
5
  import { withNodeBinFirst } from "./node-ports.js";
4
6
  const PACKAGE_ROOT = path.resolve(import.meta.dirname, "../..");
5
7
  const SUPERVISOR_ENTRY_PATH = path.join(PACKAGE_ROOT, "dist/internal/controlled-process/supervisor-entry.js");
@@ -7,14 +9,35 @@ const SHIM_ENTRY_PATH = path.join(PACKAGE_ROOT, "dist/internal/controlled-proces
7
9
  export function createControlledExec(options) {
8
10
  return {
9
11
  spawn: async (worker, lifecycle) => {
10
- const process = await launchControlledProcess({
11
- supervisorEntryPath: SUPERVISOR_ENTRY_PATH,
12
- shimEntryPath: SHIM_ENTRY_PATH,
13
- runtimeDirectory: options.runtimeDirectory,
14
- worker: { ...worker, env: withNodeBinFirst(worker.env) },
15
- timing: options.termination,
16
- lifecycle,
17
- });
12
+ let process;
13
+ try {
14
+ process = await launchControlledProcess({
15
+ supervisorEntryPath: SUPERVISOR_ENTRY_PATH,
16
+ shimEntryPath: SHIM_ENTRY_PATH,
17
+ runtimeDirectory: options.runtimeDirectory,
18
+ worker: { ...worker, env: withNodeBinFirst(worker.env) },
19
+ timing: options.termination,
20
+ lifecycle,
21
+ });
22
+ }
23
+ catch (error) {
24
+ if (!(error instanceof ControlledProcessLaunchError)) {
25
+ throw error;
26
+ }
27
+ throw new AgentError({
28
+ code: AGENT_ERROR_CODE.controlledProcessLaunch,
29
+ classification: infrastructureFailure(AGENT_INFRASTRUCTURE_FAILURE_CODE.controlledProcessLaunch),
30
+ message: error.message,
31
+ data: {
32
+ failureCode: error.failure.code,
33
+ retryability: error.failure.retryability,
34
+ stage: error.failure.stage,
35
+ expectedBytes: error.failure.expectedBytes,
36
+ actualBytes: error.failure.actualBytes,
37
+ },
38
+ cause: error,
39
+ });
40
+ }
18
41
  return {
19
42
  chunks: process.chunks,
20
43
  completion: process.completion,
@@ -1 +1 @@
1
- {"version":3,"file":"node-ports.d.ts","sourceRoot":"","sources":["../../src/core/node-ports.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EACV,KAAK,EACL,IAAI,EAIJ,UAAU,EAGX,MAAM,YAAY,CAAC;AAOpB,eAAO,MAAM,WAAW,EAAE,KAOzB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,UAEvB,CAAC;AAoBF,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC1B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAUxB;AAyGD,eAAO,MAAM,QAAQ,EAAE,IAGtB,CAAC"}
1
+ {"version":3,"file":"node-ports.d.ts","sourceRoot":"","sources":["../../src/core/node-ports.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EACV,KAAK,EACL,IAAI,EAIJ,UAAU,EAGX,MAAM,YAAY,CAAC;AAOpB,eAAO,MAAM,WAAW,EAAE,KAOzB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,UAEvB,CAAC;AAoBF,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC1B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAUxB;AA+HD,eAAO,MAAM,QAAQ,EAAE,IAGtB,CAAC"}
@@ -49,8 +49,12 @@ export function withNodeBinFirst(env) {
49
49
  return { ...env, [key]: [nodeBinDir, ...rest].join(path.delimiter) };
50
50
  }
51
51
  function spawnProcess(options) {
52
+ if (options.processGroup === true && process.platform === "win32") {
53
+ throw new Error("Process-group execution is not supported on Windows.");
54
+ }
52
55
  const child = spawn(options.command, options.args, {
53
56
  cwd: options.cwd,
57
+ detached: options.processGroup === true,
54
58
  env: withNodeBinFirst(options.env),
55
59
  stdio: ["pipe", "pipe", "pipe"],
56
60
  });
@@ -103,11 +107,27 @@ function spawnProcess(options) {
103
107
  child.stdin.end();
104
108
  },
105
109
  kill: (signal) => {
110
+ if (options.processGroup === true && child.pid !== undefined) {
111
+ try {
112
+ process.kill(-child.pid, signal);
113
+ }
114
+ catch (error) {
115
+ if (!isErrnoCode(error, "ESRCH")) {
116
+ throw error;
117
+ }
118
+ }
119
+ return;
120
+ }
106
121
  child.kill(signal);
107
122
  },
108
123
  awaitTerminationEscalation: () => termination,
109
124
  };
110
125
  }
126
+ function isErrnoCode(error, code) {
127
+ return (error instanceof Error &&
128
+ "code" in error &&
129
+ error.code === code);
130
+ }
111
131
  function isExecutable(candidate) {
112
132
  return new Promise((resolve) => {
113
133
  access(candidate, constants.X_OK, (error) => {
@@ -23,6 +23,11 @@ export type ExecSpawnOptions = {
23
23
  cwd: string;
24
24
  env: Record<string, string>;
25
25
  stdin: string | null;
26
+ /**
27
+ * Start an independent process group and signal that group from kill().
28
+ * The built-in Node adapter rejects this option on Windows.
29
+ */
30
+ processGroup?: boolean;
26
31
  };
27
32
  /** Interactive spawn: stdin stays open for incremental writes. */
28
33
  export type InteractiveExecSpawnOptions = ExecSpawnOptions & {
@@ -1 +1 @@
1
- {"version":3,"file":"ports.d.ts","sourceRoot":"","sources":["../../src/core/ports.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEhE,YAAY,EACV,KAAK,EACL,UAAU,EACV,cAAc,EACd,eAAe,GAChB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,MAAM,SAAS,GAAG;IAAE,OAAO,EAAE,aAAa,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjE,MAAM,MAAM,QAAQ,GAAG;IAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC;AAEtE,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,CAAC;AAEF,kEAAkE;AAClE,MAAM,MAAM,2BAA2B,GAAG,gBAAgB,GAAG;IAC3D,aAAa,EAAE,IAAI,CAAC;CACrB,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IAC1C,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACjC,IAAI,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;IAClC;;;OAGG;IACH,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C;AAED,+EAA+E;AAC/E,MAAM,WAAW,sBAAuB,SAAQ,WAAW;IACzD,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,IAAI,IAAI,CAAC;CAClB;AAED,MAAM,WAAW,IAAI;IACnB,KAAK,CAAC,OAAO,EAAE,2BAA2B,GAAG,sBAAsB,CAAC;IACpE,KAAK,CAAC,OAAO,EAAE,gBAAgB,GAAG,WAAW,CAAC;IAC9C,wEAAwE;IACxE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAC7E;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,SAAS,EAAE,YAAY,GAAG,IAAI,CAAC;CACrC;AAED,eAAO,MAAM,SAAS;;;;;CAKZ,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,OAAO,SAAS,CAAC,CAAC;AAElE,MAAM,WAAW,MAAM;IACrB,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CAC7D;AAED,uDAAuD;AACvD,MAAM,MAAM,KAAK,GAAG;IAClB,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,eAAe,CAAC;IACzB,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,EAAE,aAAa,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,aAE3B,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,MAExB,CAAC"}
1
+ {"version":3,"file":"ports.d.ts","sourceRoot":"","sources":["../../src/core/ports.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEhE,YAAY,EACV,KAAK,EACL,UAAU,EACV,cAAc,EACd,eAAe,GAChB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,MAAM,SAAS,GAAG;IAAE,OAAO,EAAE,aAAa,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjE,MAAM,MAAM,QAAQ,GAAG;IAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC;AAEtE,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,kEAAkE;AAClE,MAAM,MAAM,2BAA2B,GAAG,gBAAgB,GAAG;IAC3D,aAAa,EAAE,IAAI,CAAC;CACrB,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IAC1C,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACjC,IAAI,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;IAClC;;;OAGG;IACH,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C;AAED,+EAA+E;AAC/E,MAAM,WAAW,sBAAuB,SAAQ,WAAW;IACzD,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,IAAI,IAAI,CAAC;CAClB;AAED,MAAM,WAAW,IAAI;IACnB,KAAK,CAAC,OAAO,EAAE,2BAA2B,GAAG,sBAAsB,CAAC;IACpE,KAAK,CAAC,OAAO,EAAE,gBAAgB,GAAG,WAAW,CAAC;IAC9C,wEAAwE;IACxE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAC7E;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,SAAS,EAAE,YAAY,GAAG,IAAI,CAAC;CACrC;AAED,eAAO,MAAM,SAAS;;;;;CAKZ,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,OAAO,SAAS,CAAC,CAAC;AAElE,MAAM,WAAW,MAAM;IACrB,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CAC7D;AAED,uDAAuD;AACvD,MAAM,MAAM,KAAK,GAAG;IAClB,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,eAAe,CAAC;IACzB,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,EAAE,aAAa,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,aAE3B,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,MAExB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/fleet/policy.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,gBAAgB,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEzE;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc;;;CAGjB,CAAC;AAEX,MAAM,MAAM,aAAa,GACvB,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAEvD,eAAO,MAAM,mBAAmB;;;;CAItB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAC3B,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,OAAO,mBAAmB,CAAC,CAAC;AAEjE,MAAM,MAAM,aAAa,GACrB;IACE,IAAI,EAAE,OAAO,mBAAmB,CAAC,QAAQ,CAAC;IAC1C,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,EAAE,aAAa,CAAC;CACtB,GACD;IAAE,IAAI,EAAE,OAAO,mBAAmB,CAAC,eAAe,CAAA;CAAE,GACpD;IAAE,IAAI,EAAE,OAAO,mBAAmB,CAAC,QAAQ,CAAA;CAAE,CAAC;AAElD,MAAM,MAAM,UAAU,GAAG,OAAO,CAC9B,cAAc,EACd,OAAO,gBAAgB,CAAC,YAAY,GAAG,OAAO,gBAAgB,CAAC,SAAS,CACzE,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;AAE9D,yEAAyE;AACzE,eAAO,MAAM,yBAAyB,UAAY,CAAC;AACnD,eAAO,MAAM,4BAA4B,SAAU,CAAC;AAEpD,eAAO,MAAM,oBAAoB,EAAE,aAiBlC,CAAC;AAEF,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,SAAS,GAC5C,aAAa,CAEf"}
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/fleet/policy.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,gBAAgB,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEzE;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc;;;CAGjB,CAAC;AAEX,MAAM,MAAM,aAAa,GACvB,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAEvD,eAAO,MAAM,mBAAmB;;;;CAItB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAC3B,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,OAAO,mBAAmB,CAAC,CAAC;AAEjE,MAAM,MAAM,aAAa,GACrB;IACE,IAAI,EAAE,OAAO,mBAAmB,CAAC,QAAQ,CAAC;IAC1C,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,EAAE,aAAa,CAAC;CACtB,GACD;IAAE,IAAI,EAAE,OAAO,mBAAmB,CAAC,eAAe,CAAA;CAAE,GACpD;IAAE,IAAI,EAAE,OAAO,mBAAmB,CAAC,QAAQ,CAAA;CAAE,CAAC;AAElD,MAAM,MAAM,UAAU,GAAG,OAAO,CAC9B,cAAc,EACd,OAAO,gBAAgB,CAAC,YAAY,GAAG,OAAO,gBAAgB,CAAC,SAAS,CACzE,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;AAE9D,yEAAyE;AACzE,eAAO,MAAM,yBAAyB,UAAY,CAAC;AACnD,eAAO,MAAM,4BAA4B,SAAU,CAAC;AAEpD,eAAO,MAAM,oBAAoB,EAAE,aAoBlC,CAAC;AAEF,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,SAAS,GAC5C,aAAa,CAEf"}
@@ -44,6 +44,9 @@ export const defaultFailurePolicy = {
44
44
  [AGENT_ERROR_CODE.limit]: { kind: FAILURE_ACTION_KIND.terminal },
45
45
  [AGENT_ERROR_CODE.failed]: { kind: FAILURE_ACTION_KIND.terminal },
46
46
  [AGENT_ERROR_CODE.outputRejected]: { kind: FAILURE_ACTION_KIND.terminal },
47
+ [AGENT_ERROR_CODE.controlledProcessLaunch]: {
48
+ kind: FAILURE_ACTION_KIND.terminal,
49
+ },
47
50
  };
48
51
  export function resolveFailurePolicy(overrides) {
49
52
  return { ...defaultFailurePolicy, ...overrides };
package/dist/index.d.ts CHANGED
@@ -8,7 +8,7 @@
8
8
  * storage (`/config`).
9
9
  */
10
10
  export { BUILTIN_AGENT_ID, type BuiltinAgentId, builtinAgentFactories, } from "./agents/builtin.js";
11
- export { claude, structuredQuotaMatcher } from "./agents/claude.js";
11
+ export { claude, type ClaudeOptions, structuredQuotaMatcher, } from "./agents/claude.js";
12
12
  export { capacityTextMatcher, codex } from "./agents/codex.js";
13
13
  export type { PiSessionEngineOptions } from "./agents/openai-compatible/pi/engine.js";
14
14
  export { PI_DEFAULT_CONTEXT_WINDOW, PI_DEFAULT_MAX_TOKENS, piSessionEngine, } from "./agents/openai-compatible/pi/engine.js";
@@ -24,8 +24,8 @@ export type { ChildProcessAbsenceProof, ChildProcessCompletion, ChildProcessIden
24
24
  export { CHILD_PROCESS_ABSENCE_PROOF, CHILD_PROCESS_TERMINATION_EVIDENCE_KIND, CHILD_PROCESS_TERMINATION_KIND, CHILD_PROCESS_TERMINATION_PHASE, CHILD_PROCESS_UNKILLABLE_REASON, } from "./core/controlled-process.js";
25
25
  export type { EnvPatch } from "./core/env.js";
26
26
  export { applyEnvPatch, EMPTY_ENV_PATCH, mergeEnvPatches, processEnv, } from "./core/env.js";
27
- export type { AgentErrorCode, AgentErrorData, AgentErrorOptions, AgentFailure, AgentFailureClass, AgentFailureCode, AgentInfrastructureFailureCode, AuthFailureReason, GuardViolation, Issue, NotAvailableCause, TimeoutKind, } from "./core/error.js";
28
- export { AGENT_ERROR_CODE, AGENT_FAILURE_CLASS, AGENT_INFRASTRUCTURE_FAILURE_CODE, AgentError, AUTH_FAILURE_REASON, agentFailure, infrastructureFailure, isAgentError, NOT_AVAILABLE_CAUSE, TIMEOUT_KIND, } from "./core/error.js";
27
+ export type { AgentErrorCode, AgentErrorData, AgentErrorOptions, AgentFailure, AgentFailureClass, AgentFailureCode, AgentInfrastructureFailureCode, AuthFailureReason, ControlledProcessLaunchFailureCode, ControlledProcessLaunchFailureData, ControlledProcessLaunchFailureRetryability, GuardViolation, Issue, NotAvailableCause, TimeoutKind, } from "./core/error.js";
28
+ export { AGENT_ERROR_CODE, AGENT_FAILURE_CLASS, AGENT_INFRASTRUCTURE_FAILURE_CODE, AgentError, AUTH_FAILURE_REASON, agentFailure, CONTROLLED_PROCESS_LAUNCH_FAILURE_CODE, CONTROLLED_PROCESS_LAUNCH_FAILURE_RETRYABILITY, infrastructureFailure, isAgentError, NOT_AVAILABLE_CAUSE, TIMEOUT_KIND, } from "./core/error.js";
29
29
  export { createControlledExec } from "./core/node-controlled-exec.js";
30
30
  export type { Clock, Exec, ExecChunk, ExecExit, ExecProcess, ExecSpawnOptions, HttpClient, InteractiveExecProcess, InteractiveExecSpawnOptions, Logger, LogLevel, Ports, SecretResolver, SecretResolvers, TelemetrySink, } from "./core/ports.js";
31
31
  export { LOG_LEVEL } from "./core/ports.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -8,7 +8,7 @@
8
8
  * storage (`/config`).
9
9
  */
10
10
  export { BUILTIN_AGENT_ID, builtinAgentFactories, } from "./agents/builtin.js";
11
- export { claude, structuredQuotaMatcher } from "./agents/claude.js";
11
+ export { claude, structuredQuotaMatcher, } from "./agents/claude.js";
12
12
  export { capacityTextMatcher, codex } from "./agents/codex.js";
13
13
  export { PI_DEFAULT_CONTEXT_WINDOW, PI_DEFAULT_MAX_TOKENS, piSessionEngine, } from "./agents/openai-compatible/pi/engine.js";
14
14
  export { openaiCompatible } from "./agents/openai-compatible.js";
@@ -18,7 +18,7 @@ export { fileProfileStore } from "./auth/profile-store.js";
18
18
  export { envResolver, requireSecret } from "./auth/secrets.js";
19
19
  export { CHILD_PROCESS_ABSENCE_PROOF, CHILD_PROCESS_TERMINATION_EVIDENCE_KIND, CHILD_PROCESS_TERMINATION_KIND, CHILD_PROCESS_TERMINATION_PHASE, CHILD_PROCESS_UNKILLABLE_REASON, } from "./core/controlled-process.js";
20
20
  export { applyEnvPatch, EMPTY_ENV_PATCH, mergeEnvPatches, processEnv, } from "./core/env.js";
21
- export { AGENT_ERROR_CODE, AGENT_FAILURE_CLASS, AGENT_INFRASTRUCTURE_FAILURE_CODE, AgentError, AUTH_FAILURE_REASON, agentFailure, infrastructureFailure, isAgentError, NOT_AVAILABLE_CAUSE, TIMEOUT_KIND, } from "./core/error.js";
21
+ export { AGENT_ERROR_CODE, AGENT_FAILURE_CLASS, AGENT_INFRASTRUCTURE_FAILURE_CODE, AgentError, AUTH_FAILURE_REASON, agentFailure, CONTROLLED_PROCESS_LAUNCH_FAILURE_CODE, CONTROLLED_PROCESS_LAUNCH_FAILURE_RETRYABILITY, infrastructureFailure, isAgentError, NOT_AVAILABLE_CAUSE, TIMEOUT_KIND, } from "./core/error.js";
22
22
  export { createControlledExec } from "./core/node-controlled-exec.js";
23
23
  export { LOG_LEVEL } from "./core/ports.js";
24
24
  export { redactJsonSecrets, redactSecrets } from "./core/redact.js";
@@ -1,10 +1,11 @@
1
1
  import type { ChildProcessCompletion, ChildProcessIdentity, ChildProcessLifecycle, ChildProcessTerminationResult } from "../../core/controlled-process.js";
2
- import type { ControlledProcessOutput, SupervisorTimingOptions, SupervisorWorkerOptions } from "./supervisor-model.js";
2
+ import type { ExecSpawnOptions } from "../../core/ports.js";
3
+ import type { ControlledProcessOutput, SupervisorTimingOptions } from "./supervisor-model.js";
3
4
  export type ControlledProcessLaunchInput = {
4
5
  readonly supervisorEntryPath: string;
5
6
  readonly shimEntryPath: string;
6
7
  readonly runtimeDirectory: string;
7
- readonly worker: SupervisorWorkerOptions;
8
+ readonly worker: ExecSpawnOptions;
8
9
  readonly timing: SupervisorTimingOptions;
9
10
  readonly lifecycle: ChildProcessLifecycle;
10
11
  };
@@ -1 +1 @@
1
- {"version":3,"file":"host-controller.d.ts","sourceRoot":"","sources":["../../../src/internal/controlled-process/host-controller.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EAErB,6BAA6B,EAC9B,MAAM,kCAAkC,CAAC;AA+B1C,OAAO,KAAK,EACV,uBAAuB,EAEvB,uBAAuB,EACvB,uBAAuB,EACxB,MAAM,uBAAuB,CAAC;AAoC/B,MAAM,MAAM,4BAA4B,GAAG;IACzC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAC;IACzC,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAC;IACzC,QAAQ,CAAC,SAAS,EAAE,qBAAqB,CAAC;CAC3C,CAAC;AAEF,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,CAAC;IACxC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,uBAAuB,CAAC,CAAC;IACxD,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACrD,kBAAkB,IAAI,OAAO,CAAC,sBAAsB,CAAC,CAAC;CACvD;AAqED,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,4BAA4B,GAClC,OAAO,CAAC,2BAA2B,CAAC,CA2GtC;AAymBD,wBAAsB,wBAAwB,CAAC,KAAK,EAAE;IACpD,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,CAAC;IACxC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,qBAAqB,EAAE,kBAAkB,CAAC,CAAC;CACrE,GAAG,OAAO,CAAC,6BAA6B,CAAC,CA4BzC"}
1
+ {"version":3,"file":"host-controller.d.ts","sourceRoot":"","sources":["../../../src/internal/controlled-process/host-controller.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EAErB,6BAA6B,EAC9B,MAAM,kCAAkC,CAAC;AAQ1C,OAAO,KAAK,EAAY,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AA6BtE,OAAO,KAAK,EACV,uBAAuB,EAEvB,uBAAuB,EACxB,MAAM,uBAAuB,CAAC;AAqC/B,MAAM,MAAM,4BAA4B,GAAG;IACzC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAC;IACzC,QAAQ,CAAC,SAAS,EAAE,qBAAqB,CAAC;CAC3C,CAAC;AAEF,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,CAAC;IACxC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,uBAAuB,CAAC,CAAC;IACxD,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACrD,kBAAkB,IAAI,OAAO,CAAC,sBAAsB,CAAC,CAAC;CACvD;AAsED,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,4BAA4B,GAClC,OAAO,CAAC,2BAA2B,CAAC,CAoJtC;AAgnBD,wBAAsB,wBAAwB,CAAC,KAAK,EAAE;IACpD,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,CAAC;IACxC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,qBAAqB,EAAE,kBAAkB,CAAC,CAAC;CACrE,GAAG,OAAO,CAAC,6BAA6B,CAAC,CA4BzC"}