@cat-factory/local-server 0.88.9 → 0.90.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.
@@ -1 +1 @@
1
- {"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../src/compose.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAqB,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAiBlF,MAAM,WAAW,2BAA2B;IAC1C,sFAAsF;IACtF,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,oFAAoF;IACpF,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,wBAAgB,0BAA0B,CAAC,IAAI,GAAE,2BAAgC,GAAG,cAAc,CA2LjG"}
1
+ {"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../src/compose.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAqB,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAiBlF,MAAM,WAAW,2BAA2B;IAC1C,sFAAsF;IACtF,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,oFAAoF;IACpF,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,wBAAgB,0BAA0B,CAAC,IAAI,GAAE,2BAAgC,GAAG,cAAc,CAoMjG"}
package/dist/compose.js CHANGED
@@ -99,6 +99,15 @@ export function createDockerComposeRuntime(opts = {}) {
99
99
  await git(['-C', dir, 'checkout', '--quiet', '--detach', 'FETCH_HEAD']);
100
100
  return { dir };
101
101
  },
102
+ async workingDir(project) {
103
+ // The repo-less counterpart of `checkout`: a shared stack whose compose layers are all
104
+ // inline / read from other repos has nothing to clone, so it materializes them into this
105
+ // (created-if-absent) tree. Deliberately NOT wiped like `checkout` does — there is no clone
106
+ // to make authoritative, and the layer writes below overwrite deterministically anyway.
107
+ const dir = checkoutDir(project);
108
+ await mkdir(dir, { recursive: true });
109
+ return { dir };
110
+ },
102
111
  async writeCheckoutFile(project, relPath, content) {
103
112
  const path = join(checkoutDir(project), relPath);
104
113
  await mkdir(dirname(path), { recursive: true });
@@ -1 +1 @@
1
- {"version":3,"file":"compose.js","sourceRoot":"","sources":["../src/compose.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compose.js","sourceRoot":"","sources":["../src/compose.ts"],"names":[],"mappings":"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"}
@@ -2,16 +2,70 @@ import { type InlineCliRunner } from '@cat-factory/agents';
2
2
  import { type HarnessKind, type ModelProviderResolver, type ModelRef, type SubscriptionVendor } from '@cat-factory/kernel';
3
3
  import type { InlineContainerRequest } from './LocalContainerRunnerTransport.js';
4
4
  import type { InlineJobResult } from './harnessHttp.js';
5
- /**
6
- * Runs a CLI once: feed the prompt over stdin, collect stdout, reject on non-zero exit, abort,
7
- * or timeout. The injectable seam ({@link CliExec}) so the vendor runners below are unit-testable
8
- * with a fake process (mirroring the injectable exec every other local subprocess transport
9
- * takes) — the default is the real {@link spawnCliExec}.
10
- */
11
- export type CliExec = (command: string, args: string[], stdin: string, opts?: {
5
+ /** How the caller wants a CLI run supervised, and how it wants the output delivered. */
6
+ export interface CliExecOptions {
12
7
  signal?: AbortSignal;
13
8
  timeoutMs?: number;
14
- }) => Promise<string>;
9
+ /**
10
+ * Consume stdout LINE BY LINE as it arrives, INSTEAD of buffering the body — the two are
11
+ * mutually exclusive, and supplying this is what keeps a streaming vendor's output out of the
12
+ * orchestrator's memory (see {@link spawnCliExec}). The promise then resolves with `''`: the
13
+ * observer is the only account of the stream, so a caller that supplies one must not also
14
+ * expect a body.
15
+ *
16
+ * Lines arrive without their terminator, in order, and the final line is flushed on close even
17
+ * when the CLI was killed mid-write — so an observer must tolerate a truncated last line.
18
+ *
19
+ * MUST NOT THROW. It runs inside the stream's `data` handler, where a rejection would escape
20
+ * the promise entirely and leave the run unsettled; the one implementation
21
+ * ({@link ClaudeStreamFold.line}) is total by construction.
22
+ */
23
+ onLine?: (line: string) => void;
24
+ }
25
+ /**
26
+ * Runs a CLI once: feed the prompt over stdin, deliver stdout (buffered, or streamed line-by-line
27
+ * via {@link CliExecOptions.onLine}), reject on non-zero exit, abort, or timeout. The injectable
28
+ * seam ({@link CliExec}) so the vendor runners below are unit-testable with a fake process
29
+ * (mirroring the injectable exec every other local subprocess transport takes) — the default is
30
+ * the real {@link spawnCliExec}.
31
+ */
32
+ export type CliExec = (command: string, args: string[], stdin: string, opts?: CliExecOptions) => Promise<string>;
33
+ /**
34
+ * How quiet the run had gone before it died, or `''` when silence isn't part of the story. Exit
35
+ * status alone can't separate a CLI that stalled from one that died on its first line — and for the
36
+ * watchdog kill silence IS the whole diagnosis, because the message otherwise reports only that the
37
+ * budget elapsed.
38
+ *
39
+ * The container harness's twin says "no activity" because its channel also carries synthetic
40
+ * keep-alive beats. Here the channel is literally the child's stdout/stderr, so this claims exactly
41
+ * that much and no more: the CLI itself was silent.
42
+ *
43
+ * Exported for its own test (like {@link spawnCliExec}): reaching the threshold through a real
44
+ * subprocess would mean a 30s test.
45
+ */
46
+ export declare function silenceClause(startedAt: number, lastOutputAt: number | undefined, now: number): string;
47
+ /** Why a CLI run ended badly. Structured because the message is prose a caller extends. */
48
+ export type CliExecFailureReason = 'timeout' | 'aborted' | 'exit';
49
+ /**
50
+ * A CLI run that ended badly, carrying what only the SPAWN SITE knows: how it died, and (already
51
+ * folded into `message`) how quiet it had gone.
52
+ *
53
+ * It deliberately carries NO output. The spawn site could not interpret a partial stream anyway —
54
+ * only the vendor knows its own format — so the evidence accumulates in the vendor's own observer
55
+ * ({@link ClaudeStreamFold}, fed through {@link CliExecOptions.onLine}) and is still there to be
56
+ * read after the rejection. That split is what lets a killed run report what it spent without the
57
+ * spawn holding the stream: before it, the watchdog and abort paths rejected with the bare fact
58
+ * that the budget had elapsed, so a run that burned millions of tokens read exactly like one that
59
+ * never reached the model.
60
+ *
61
+ * A caller that ENRICHES the message re-throws a `CliExecFailure` rather than a plain `Error`
62
+ * ({@link withBurnClause}), so `reason` survives the enrichment on the error itself and not only
63
+ * down the `cause` chain.
64
+ */
65
+ export declare class CliExecFailure extends Error {
66
+ readonly reason: CliExecFailureReason;
67
+ constructor(message: string, reason: CliExecFailureReason, options?: ErrorOptions);
68
+ }
15
69
  /** The default {@link CliExec}: a real `node:child_process` spawn with a timeout watchdog.
16
70
  * Exported for its own tests (the sanitized-env contract); callers use the runner builders. */
17
71
  export declare const spawnCliExec: CliExec;
@@ -1 +1 @@
1
- {"version":3,"file":"harnessInline.d.ts","sourceRoot":"","sources":["../src/harnessInline.ts"],"names":[],"mappings":"AAGA,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAEL,KAAK,WAAW,EAIhB,KAAK,qBAAqB,EAC1B,KAAK,QAAQ,EAKb,KAAK,kBAAkB,EAExB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAA;AAChF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAavD;;;;;GAKG;AACH,MAAM,MAAM,OAAO,GAAG,CACpB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,WAAW,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,KAChD,OAAO,CAAC,MAAM,CAAC,CAAA;AAqCpB;+FAC+F;AAC/F,eAAO,MAAM,YAAY,EAAE,OAoEvB,CAAA;AAuFJ,4FAA4F;AAC5F,wBAAgB,eAAe,CAC7B,MAAM,EAAE,kBAAkB,EAC1B,IAAI,GAAE,OAAsB,GAC3B,eAAe,CAEjB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CACxC,eAAe,EAAE,SAAS,WAAW,EAAE,GAAG,SAAS,GAClD,CAAC,GAAG,EAAE,QAAQ,KAAK,OAAO,CAM5B;AAqBD;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,GAAG,CAAC,kBAAkB,CAAC,CAKzB;AAED,+FAA+F;AAC/F,KAAK,oBAAoB,GAAG,CAAC,GAAG,EAAE,sBAAsB,KAAK,OAAO,CAAC,eAAe,CAAC,CAAA;AAErF,yGAAyG;AACzG,UAAU,eAAe;IACvB,oFAAoF;IACpF,8BAA8B,CAAC,EAAE,CAC/B,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,kBAAkB,KACvB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAChC,sEAAsE;IACtE,sBAAsB,CAAC,EAAE,CACvB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,kBAAkB,KACvB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CACjC;AAED,sGAAsG;AACtG,MAAM,WAAW,yBAA0B,SAAQ,eAAe;IAChE,gFAAgF;IAChF,eAAe,EAAE,SAAS,WAAW,EAAE,CAAA;IACvC,wFAAwF;IACxF,cAAc,EAAE,WAAW,CAAC,kBAAkB,CAAC,CAAA;IAC/C,6FAA6F;IAC7F,SAAS,CAAC,EAAE,oBAAoB,CAAA;IAChC,mFAAmF;IACnF,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AA+HD;;;;;;;;GAQG;AACH,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,yBAAyB,GAC9B,CAAC,KAAK,EAAE,qBAAqB,KAAK,qBAAqB,CAQzD"}
1
+ {"version":3,"file":"harnessInline.d.ts","sourceRoot":"","sources":["../src/harnessInline.ts"],"names":[],"mappings":"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"}
@@ -12,14 +12,23 @@ const DEFAULT_CLI_TIMEOUT_MS = 300_000;
12
12
  const KILL_GRACE_MS = 2_000;
13
13
  /** How much of the CLI's output a failure message carries. Tail-biased: the error is at the end. */
14
14
  const EXIT_OUTPUT_TAIL_CHARS = 700;
15
+ /**
16
+ * How much of EACH stream is retained for that message. The bound applies to stdout as well as
17
+ * stderr, and on the streaming path it is the ONLY stdout the spawn holds: `stream-json` output is
18
+ * unbounded in a way the one-shot `json` object never was (every assistant envelope, every
19
+ * `tool_use` input and every tool_result, for as long as the watchdog allows), and this runner
20
+ * bypasses permissions, so a stalled tool-using run would otherwise park hundreds of MB in the
21
+ * orchestrator process — precisely on the runs worth diagnosing. The container harness's
22
+ * `streamCli` retains no body for the same reason.
23
+ */
24
+ const OUTPUT_TAIL_RETAIN_CHARS = 8_000;
15
25
  /**
16
26
  * The message a badly-ended inline CLI fails with.
17
27
  *
18
- * `claude -p --output-format json` reports an API refusal (quota, rate limit, auth) as JSON on
19
- * STDOUT and leaves stderr EMPTY, so a stderr-only message carries nothing but the exit code and
20
- * the reason the caller's in-band `is_error` check would have surfaced is dropped on the floor.
21
- * Carry whichever stream actually spoke, and say so when neither did rather than trailing off
22
- * after a colon.
28
+ * `claude -p` reports an API refusal (quota, rate limit, auth) as JSON on STDOUT and leaves stderr
29
+ * EMPTY, so a stderr-only message carries nothing but the exit code, and the reason the caller's
30
+ * in-band `is_error` check would have surfaced is dropped on the floor. Carry whichever stream
31
+ * actually spoke, and say so when neither did rather than trailing off after a colon.
23
32
  *
24
33
  * Both streams are command output, so both are scrubbed at this emit site — the sibling in the
25
34
  * container harness (`streamCli`) redacts its stderr tail for the same reason, and stdout here is
@@ -31,11 +40,70 @@ function cliExitMessage(command, code, killSignal, stderr, stdout) {
31
40
  const tail = (redactSecrets(spoke) ?? '').slice(-EXIT_OUTPUT_TAIL_CHARS) || '(no output)';
32
41
  return `${command} ${describeProcessExit(code, killSignal)}: ${tail}`;
33
42
  }
43
+ /**
44
+ * How long a run must have been quiet before its silence is worth reporting. Mirrors the container
45
+ * harness's `SILENCE_BREADCRUMB_MS` and its reasoning: without the threshold every fast failure (a
46
+ * missing binary, an auth rejection) would gain a true-but-useless "said nothing" clause for a
47
+ * phase where the CLI was never going to have spoken yet.
48
+ */
49
+ const SILENCE_BREADCRUMB_MS = 30_000;
50
+ /**
51
+ * How quiet the run had gone before it died, or `''` when silence isn't part of the story. Exit
52
+ * status alone can't separate a CLI that stalled from one that died on its first line — and for the
53
+ * watchdog kill silence IS the whole diagnosis, because the message otherwise reports only that the
54
+ * budget elapsed.
55
+ *
56
+ * The container harness's twin says "no activity" because its channel also carries synthetic
57
+ * keep-alive beats. Here the channel is literally the child's stdout/stderr, so this claims exactly
58
+ * that much and no more: the CLI itself was silent.
59
+ *
60
+ * Exported for its own test (like {@link spawnCliExec}): reaching the threshold through a real
61
+ * subprocess would mean a 30s test.
62
+ */
63
+ export function silenceClause(startedAt, lastOutputAt, now) {
64
+ const silentMs = now - (lastOutputAt ?? startedAt);
65
+ if (silentMs < SILENCE_BREADCRUMB_MS)
66
+ return '';
67
+ const secs = Math.round(silentMs / 1000);
68
+ return lastOutputAt === undefined ? `no output at all in ${secs}s` : `silent for ${secs}s`;
69
+ }
70
+ /**
71
+ * A CLI run that ended badly, carrying what only the SPAWN SITE knows: how it died, and (already
72
+ * folded into `message`) how quiet it had gone.
73
+ *
74
+ * It deliberately carries NO output. The spawn site could not interpret a partial stream anyway —
75
+ * only the vendor knows its own format — so the evidence accumulates in the vendor's own observer
76
+ * ({@link ClaudeStreamFold}, fed through {@link CliExecOptions.onLine}) and is still there to be
77
+ * read after the rejection. That split is what lets a killed run report what it spent without the
78
+ * spawn holding the stream: before it, the watchdog and abort paths rejected with the bare fact
79
+ * that the budget had elapsed, so a run that burned millions of tokens read exactly like one that
80
+ * never reached the model.
81
+ *
82
+ * A caller that ENRICHES the message re-throws a `CliExecFailure` rather than a plain `Error`
83
+ * ({@link withBurnClause}), so `reason` survives the enrichment on the error itself and not only
84
+ * down the `cause` chain.
85
+ */
86
+ export class CliExecFailure extends Error {
87
+ reason;
88
+ constructor(message, reason, options) {
89
+ super(message, options);
90
+ this.reason = reason;
91
+ this.name = 'CliExecFailure';
92
+ }
93
+ }
94
+ /** Keep only the trailing {@link OUTPUT_TAIL_RETAIN_CHARS} of a stream. */
95
+ function retainTail(buffer) {
96
+ return buffer.length > OUTPUT_TAIL_RETAIN_CHARS ? buffer.slice(-OUTPUT_TAIL_RETAIN_CHARS) : buffer;
97
+ }
34
98
  /** The default {@link CliExec}: a real `node:child_process` spawn with a timeout watchdog.
35
99
  * Exported for its own tests (the sanitized-env contract); callers use the runner builders. */
36
100
  export const spawnCliExec = (command, args, stdin, opts = {}) => new Promise((resolve, reject) => {
37
- const { signal, timeoutMs = DEFAULT_CLI_TIMEOUT_MS } = opts;
101
+ const { signal, timeoutMs = DEFAULT_CLI_TIMEOUT_MS, onLine } = opts;
38
102
  if (signal?.aborted) {
103
+ // Deliberately a plain Error, not a {@link CliExecFailure}: nothing ran, so there is no
104
+ // stream to account for and no silence to measure. The message already says as much, and the
105
+ // vendor runner passes a non-`CliExecFailure` through untouched rather than appending a
106
+ // redundant "no model call completed".
39
107
  reject(new Error(`${command} aborted before start`));
40
108
  return;
41
109
  }
@@ -48,8 +116,24 @@ export const spawnCliExec = (command, args, stdin, opts = {}) => new Promise((re
48
116
  });
49
117
  child.stdin.on('error', () => { });
50
118
  child.stdin.end(stdin);
51
- let stdout = '';
119
+ // Decode on the STREAM, not per chunk: a multi-byte character split across a chunk boundary
120
+ // decodes to replacement characters when each `Buffer` is stringified alone, and `onLine`
121
+ // hands these lines to `JSON.parse` — one unlucky boundary would silently drop an event (and
122
+ // its usage) from the fold. `setEncoding` holds the partial sequence back instead.
123
+ child.stdout.setEncoding('utf8');
124
+ child.stderr.setEncoding('utf8');
125
+ /** The full stdout — retained ONLY when no `onLine` consumer took the stream instead. */
126
+ let body = '';
127
+ /** Bounded tail of stdout, always retained: the failure message needs it either way. */
128
+ let stdoutTail = '';
52
129
  let stderr = '';
130
+ /** Carry for a chunk boundary that fell mid-line (streaming path only). */
131
+ let lineBuffer = '';
132
+ // When the child last spoke on EITHER stream, so a failure can say how long it had been quiet.
133
+ // `undefined` until the first byte — the honest distinction between a run that went quiet and
134
+ // one that never produced anything at all.
135
+ const startedAt = Date.now();
136
+ let lastOutputAt;
53
137
  let killedReason;
54
138
  let killTimer;
55
139
  // Terminate the child (SIGTERM), escalating to SIGKILL if it doesn't exit promptly.
@@ -70,12 +154,24 @@ export const spawnCliExec = (command, args, stdin, opts = {}) => new Promise((re
70
154
  clearTimeout(killTimer);
71
155
  };
72
156
  child.stdout.on('data', (chunk) => {
73
- stdout += chunk.toString();
157
+ lastOutputAt = Date.now();
158
+ stdoutTail = retainTail(stdoutTail + chunk);
159
+ if (!onLine) {
160
+ body += chunk;
161
+ return;
162
+ }
163
+ lineBuffer += chunk;
164
+ let nl = lineBuffer.indexOf('\n');
165
+ while (nl !== -1) {
166
+ const line = lineBuffer.slice(0, nl);
167
+ lineBuffer = lineBuffer.slice(nl + 1);
168
+ nl = lineBuffer.indexOf('\n');
169
+ onLine(line);
170
+ }
74
171
  });
75
172
  child.stderr.on('data', (chunk) => {
76
- stderr += chunk.toString();
77
- if (stderr.length > 8_000)
78
- stderr = stderr.slice(-8_000);
173
+ lastOutputAt = Date.now();
174
+ stderr = retainTail(stderr + chunk);
79
175
  });
80
176
  child.on('error', (err) => {
81
177
  cleanup();
@@ -86,21 +182,39 @@ export const spawnCliExec = (command, args, stdin, opts = {}) => new Promise((re
86
182
  // line in this handler that reaches for it.
87
183
  child.on('close', (code, killSignal) => {
88
184
  cleanup();
185
+ // Flush the trailing line BEFORE settling, so the observer sees the whole stream. It has no
186
+ // terminator in two cases that matter: a clean run whose terminal `result` event is the last
187
+ // thing written, and a killed one cut mid-JSON. The observer drops what it can't parse.
188
+ if (onLine && lineBuffer) {
189
+ const last = lineBuffer;
190
+ lineBuffer = '';
191
+ onLine(last);
192
+ }
193
+ // Every bad end goes out as a {@link CliExecFailure} naming HOW it died and (below) how quiet
194
+ // it had gone. The watchdog and abort paths used to reject with the bare fact that the budget
195
+ // elapsed — no timing, nothing about what the run had already done — which made a run that
196
+ // burned through a poll budget indistinguishable from one that never reached the model. What
197
+ // it consumed is added by the vendor runner, off the observer it fed.
198
+ const failed = (reason, base) => {
199
+ const silence = silenceClause(startedAt, lastOutputAt, Date.now());
200
+ reject(new CliExecFailure(silence ? `${base}; ${silence}` : base, reason));
201
+ };
89
202
  if (killedReason === 'timeout') {
90
- reject(new Error(`${command} timed out after ${timeoutMs}ms`));
203
+ failed('timeout', `${command} timed out after ${timeoutMs}ms`);
91
204
  return;
92
205
  }
93
206
  if (killedReason === 'aborted') {
94
- reject(new Error(`${command} aborted`));
207
+ failed('aborted', `${command} aborted`);
95
208
  return;
96
209
  }
97
210
  if (code !== 0) {
98
211
  // BOTH streams, not just stderr — see {@link cliExitMessage} for why, and for what is
99
- // scrubbed out of them on the way.
100
- reject(new Error(cliExitMessage(command, code, killSignal, stderr, stdout)));
212
+ // scrubbed out of them on the way. The stdout TAIL, since that is all either path holds.
213
+ failed('exit', cliExitMessage(command, code, killSignal, stderr, stdoutTail));
101
214
  return;
102
215
  }
103
- resolve(stdout);
216
+ // `''` on the streaming path, by contract: the observer already has the stream.
217
+ resolve(body);
104
218
  });
105
219
  });
106
220
  /**
@@ -137,35 +251,204 @@ function claudeUsage(raw) {
137
251
  // guard only fires for HTTP providers. `error_max_turns` is the closest limit signal they give.)
138
252
  const CLAUDE_ERROR_SUBTYPES = new Set(['error_max_turns', 'error_during_execution']);
139
253
  /**
140
- * A runner for the ambient `claude` CLI (`--output-format json`), which returns a single result
141
- * object `{ result, usage, subtype, is_error }`. The role rides `--append-system-prompt`; the
142
- * prompt goes over stdin. Bypass permissions so the headless run never blocks on an approval
143
- * prompt (an inline text task uses no tools anyway).
254
+ * How much non-event output the fold retains for the {@link ClaudeStreamFold.fallbackText}
255
+ * fallback. Only ever reached by a CLI that does not speak `stream-json` at all, whose whole
256
+ * output is one short answer.
257
+ */
258
+ const FALLBACK_BODY_MAX_CHARS = 64 * 1024;
259
+ /**
260
+ * Folds Claude Code's `stream-json` output AS IT ARRIVES into the two things the runner needs: the
261
+ * run's terminal `result` event, and the cumulative telemetry of the calls that got as far as
262
+ * reporting usage. Fed line-by-line through {@link CliExecOptions.onLine}, so it holds a bounded
263
+ * summary instead of the stream — and it is readable after a REJECTION, which is what lets a
264
+ * killed run still say what it spent.
265
+ *
266
+ * Envelopes are keyed by `message.id` BEFORE summing, because the stream emits one envelope per
267
+ * CONTENT BLOCK of a response, each repeating that ONE call's `usage` — a turn that answers with
268
+ * text and then fires five tool calls arrives as six envelopes. Summing per envelope therefore
269
+ * multiplies the burn: on the run that motivated this change, 117 envelopes carried 31 real calls
270
+ * and the naive sum inflated 1.47M tokens to 5.53M (3.8x). The container harness hit exactly this
271
+ * trap and fixed it the same way — see `claude-call-aggregator.ts` and
272
+ * docs/initiatives/token-burn-instrumentation.md.
273
+ *
274
+ * {@link line} is TOTAL: it parses defensively and returns rather than throwing, which is the
275
+ * contract {@link CliExecOptions.onLine} demands of an observer running inside a stream handler.
276
+ */
277
+ class ClaudeStreamFold {
278
+ /** Usage per CALL, keyed by `message.id` — a response's repeated per-block usage counts once. */
279
+ usageByCall = new Map();
280
+ /** Envelopes with no id can't be folded, so each stands alone instead of colliding. */
281
+ anonCalls = 0;
282
+ terminal;
283
+ nonEventText = '';
284
+ sawEvent = false;
285
+ line(raw) {
286
+ if (!raw.trim())
287
+ return;
288
+ let event;
289
+ try {
290
+ event = JSON.parse(raw);
291
+ }
292
+ catch {
293
+ this.retainNonEvent(raw); // a wrapper/progress line, or a last line cut mid-JSON
294
+ return;
295
+ }
296
+ if (typeof event !== 'object' || event === null) {
297
+ this.retainNonEvent(raw);
298
+ return;
299
+ }
300
+ // The CLI is speaking `stream-json`, so the event stream IS its body: stop retaining raw text
301
+ // for good. Retention exists only for a CLI that never emits an event at all.
302
+ this.sawEvent = true;
303
+ this.nonEventText = '';
304
+ const e = event;
305
+ // The terminal event, the same object `--output-format json` used to emit on its own. LAST one
306
+ // wins: it is the run's authoritative account of itself.
307
+ if (e.type === 'result') {
308
+ this.terminal = e;
309
+ return;
310
+ }
311
+ const message = e.message;
312
+ if (typeof message !== 'object' || message === null)
313
+ return;
314
+ const m = message;
315
+ // Store the PARSED usage, so `calls` counts calls that actually reported a burn rather than
316
+ // envelopes that merely carried a `usage` key — otherwise a stream of empty ones reads as
317
+ // "burned 0 tokens across 3 model calls", contradicting the `no model call completed` branch.
318
+ const usage = claudeUsage(m.usage);
319
+ if (!usage)
320
+ return;
321
+ this.usageByCall.set(typeof m.id === 'string' ? m.id : `anon:${this.anonCalls++}`, usage);
322
+ }
323
+ retainNonEvent(raw) {
324
+ if (this.sawEvent || this.nonEventText.length >= FALLBACK_BODY_MAX_CHARS)
325
+ return;
326
+ this.nonEventText = this.nonEventText ? `${this.nonEventText}\n${raw}` : raw;
327
+ }
328
+ /** The run's terminal `result` event, or `undefined` if it never reached one. */
329
+ get result() {
330
+ return this.terminal;
331
+ }
332
+ /** What a CLI that emitted no events at all wrote, for the raw-text fallback. */
333
+ get fallbackText() {
334
+ return this.nonEventText.trim();
335
+ }
336
+ /** Cumulative burn across the calls that got as far as reporting usage. */
337
+ telemetry() {
338
+ let inputTokens = 0;
339
+ let cacheReadTokens = 0;
340
+ let cacheWriteTokens = 0;
341
+ let outputTokens = 0;
342
+ for (const one of this.usageByCall.values()) {
343
+ inputTokens += one.inputTokens ?? 0;
344
+ cacheReadTokens += one.cacheReadTokens ?? 0;
345
+ cacheWriteTokens += one.cacheWriteTokens ?? 0;
346
+ outputTokens += one.outputTokens ?? 0;
347
+ }
348
+ const calls = this.usageByCall.size;
349
+ return {
350
+ calls,
351
+ usage: calls === 0 ? undefined : { inputTokens, cacheReadTokens, cacheWriteTokens, outputTokens },
352
+ };
353
+ }
354
+ }
355
+ /** Compact token counts: a breadcrumb is read by a human, not summed by anything. */
356
+ function formatTokens(count) {
357
+ if (count >= 1_000_000)
358
+ return `${(count / 1_000_000).toFixed(2)}M`;
359
+ if (count >= 1_000)
360
+ return `${(count / 1_000).toFixed(1)}k`;
361
+ return String(count);
362
+ }
363
+ /**
364
+ * What the run consumed before it died, in the two terms that change the diagnosis: whether the
365
+ * model was reached at all, and whether a warm cache carried the input (`claudeUsage` keeps the
366
+ * input classes apart for precisely this reason — a cache-heavy run is ~0.1x the base rate).
367
+ */
368
+ function claudeBurnClause(calls, usage) {
369
+ if (calls === 0 || !usage)
370
+ return 'no model call completed';
371
+ const total = (usage.inputTokens ?? 0) +
372
+ (usage.cacheReadTokens ?? 0) +
373
+ (usage.cacheWriteTokens ?? 0) +
374
+ (usage.outputTokens ?? 0);
375
+ return (`burned ${formatTokens(total)} tokens ` +
376
+ `(${formatTokens(usage.cacheReadTokens ?? 0)} cache-read) ` +
377
+ `across ${calls} model call${calls === 1 ? '' : 's'}`);
378
+ }
379
+ /**
380
+ * A runner for the ambient `claude` CLI. The role rides `--append-system-prompt`; the prompt goes
381
+ * over stdin. Bypass permissions so the headless run never blocks on an approval prompt (an inline
382
+ * text task uses no tools anyway).
383
+ *
384
+ * Streams `--output-format stream-json --verbose` rather than taking the single-object `json`: that
385
+ * lone result object exists ONLY if the CLI reaches the end, so a run the watchdog killed reported
386
+ * nothing whatsoever about what it had already spent — and nothing else recorded it either, because
387
+ * a failed step writes no `token_usage` row on either transport. The terminal event carries the same
388
+ * fields the single object did (`-p --output-format json` prints exactly that event), so the success
389
+ * path is unchanged; the difference is that a killed run now still has a stream to account for
390
+ * itself with.
391
+ *
392
+ * The stream is consumed through {@link ClaudeStreamFold} rather than buffered — see
393
+ * {@link OUTPUT_TAIL_RETAIN_CHARS} for why holding it would be a memory fault on exactly the runs
394
+ * this exists to diagnose. The fold is declared OUTSIDE the try so it is still readable when the
395
+ * run is killed, which is the whole mechanism.
144
396
  */
145
397
  function makeClaudeRunner(exec) {
146
398
  return async (req) => {
147
- const args = ['-p', '--output-format', 'json', '--permission-mode', 'bypassPermissions'];
399
+ const args = [
400
+ '-p',
401
+ '--output-format',
402
+ 'stream-json',
403
+ // Required alongside `stream-json` in print mode, exactly as the container harness runs it.
404
+ '--verbose',
405
+ '--permission-mode',
406
+ 'bypassPermissions',
407
+ ];
148
408
  if (req.system.trim())
149
409
  args.push('--append-system-prompt', req.system);
150
410
  args.push('--model', req.model);
151
- const stdout = await exec('claude', args, req.prompt, req.signal ? { signal: req.signal } : {});
152
- let parsed;
411
+ const fold = new ClaudeStreamFold();
153
412
  try {
154
- parsed = JSON.parse(stdout);
413
+ await exec('claude', args, req.prompt, {
414
+ onLine: (line) => fold.line(line),
415
+ ...(req.signal ? { signal: req.signal } : {}),
416
+ });
155
417
  }
156
- catch {
157
- // Not JSON (older CLI / a wrapper line) — fall back to the raw text.
158
- return { text: stdout.trim(), finishReason: 'stop' };
418
+ catch (error) {
419
+ if (error instanceof CliExecFailure)
420
+ throw withBurnClause(error, fold);
421
+ throw error;
159
422
  }
160
- const subtype = typeof parsed.subtype === 'string' ? parsed.subtype : undefined;
161
- if (parsed.is_error === true || (subtype && CLAUDE_ERROR_SUBTYPES.has(subtype))) {
162
- const detail = typeof parsed.result === 'string' ? parsed.result : (subtype ?? 'error');
163
- throw new Error(`claude reported an error (${subtype ?? 'is_error'}): ${detail.slice(0, 700)}`);
423
+ const result = fold.result;
424
+ if (!result) {
425
+ // No terminal event (an older CLI, or a wrapper that swallowed the stream) — fall back to the
426
+ // raw text, as the single-object path did when its JSON wouldn't parse.
427
+ return { text: fold.fallbackText, finishReason: 'stop' };
164
428
  }
165
- const text = typeof parsed.result === 'string' ? parsed.result : '';
166
- return { text, finishReason: 'stop', usage: claudeUsage(parsed.usage) };
429
+ const subtype = typeof result.subtype === 'string' ? result.subtype : undefined;
430
+ if (result.is_error === true || (subtype && CLAUDE_ERROR_SUBTYPES.has(subtype))) {
431
+ const detail = typeof result.result === 'string' ? result.result : (subtype ?? 'error');
432
+ throw new Error(`claude reported an error (${subtype ?? 'is_error'}): ` +
433
+ detail.slice(0, EXIT_OUTPUT_TAIL_CHARS));
434
+ }
435
+ const text = typeof result.result === 'string' ? result.result : '';
436
+ // The terminal event's own cumulative figure, not the folded per-call sum: on a run that
437
+ // finished, the CLI's account of itself is authoritative.
438
+ return { text, finishReason: 'stop', usage: claudeUsage(result.usage) };
167
439
  };
168
440
  }
441
+ /**
442
+ * Re-throw a badly-ended `claude` run with what its PARTIAL stream says it had already consumed.
443
+ *
444
+ * Stays a {@link CliExecFailure} so `reason` is readable on the error a caller actually catches,
445
+ * not only one link down the chain; the un-enriched original rides as `cause` so the raw kill
446
+ * message survives too.
447
+ */
448
+ function withBurnClause(failure, fold) {
449
+ const { calls, usage } = fold.telemetry();
450
+ return new CliExecFailure(`${failure.message}; ${claudeBurnClause(calls, usage)}`, failure.reason, { cause: failure });
451
+ }
169
452
  /**
170
453
  * A runner for the ambient `codex` CLI. Codex has no system-prompt flag, so the composed role is
171
454
  * prepended to the prompt (as the harness does), and `codex exec` prints the final assistant
@@ -1 +1 @@
1
- {"version":3,"file":"harnessInline.js","sourceRoot":"","sources":["../src/harnessInline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"harnessInline.js","sourceRoot":"","sources":["../src/harnessInline.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -13,4 +13,5 @@ export { InitiativePresetRegistry, type InitiativePresetRegistration } from '@ca
13
13
  export { PipelineRegistry, defaultPipelineRegistry } from '@cat-factory/kernel';
14
14
  export { TaskTypeRegistry, defaultTaskTypeRegistry } from '@cat-factory/kernel';
15
15
  export { DEFAULT_MODEL_PRESET_ID, MODEL_PRESET_SEED_IDS } from '@cat-factory/kernel';
16
+ export type { ComposeFileRef, ComposeSource, CreateSharedStackInput } from '@cat-factory/kernel';
16
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACjE,OAAO,EACL,6BAA6B,EAC7B,oCAAoC,EACpC,KAAK,oCAAoC,GAC1C,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,oBAAoB,EACpB,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,4BAA4B,GAC7B,MAAM,qBAAqB,CAAA;AAI5B,OAAO,EAAE,QAAQ,EAAE,KAAK,eAAe,EAAE,KAAK,UAAU,EAAE,MAAM,eAAe,CAAA;AAE/E,OAAO,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAO7E,OAAO,EAAE,0BAA0B,EAAE,KAAK,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAInG,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,GAC3B,MAAM,iBAAiB,CAAA;AAMxB,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,KAAK,mBAAmB,GACzB,MAAM,qBAAqB,CAAA;AAK5B,OAAO,EAAE,+BAA+B,EAAE,MAAM,qBAAqB,CAAA;AACrE,OAAO,EAAE,wBAAwB,EAAE,KAAK,4BAA4B,EAAE,MAAM,qBAAqB,CAAA;AAIjG,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAK/E,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAI/E,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACjE,OAAO,EACL,6BAA6B,EAC7B,oCAAoC,EACpC,KAAK,oCAAoC,GAC1C,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,oBAAoB,EACpB,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,4BAA4B,GAC7B,MAAM,qBAAqB,CAAA;AAI5B,OAAO,EAAE,QAAQ,EAAE,KAAK,eAAe,EAAE,KAAK,UAAU,EAAE,MAAM,eAAe,CAAA;AAE/E,OAAO,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAO7E,OAAO,EAAE,0BAA0B,EAAE,KAAK,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAInG,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,GAC3B,MAAM,iBAAiB,CAAA;AAMxB,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,KAAK,mBAAmB,GACzB,MAAM,qBAAqB,CAAA;AAK5B,OAAO,EAAE,+BAA+B,EAAE,MAAM,qBAAqB,CAAA;AACrE,OAAO,EAAE,wBAAwB,EAAE,KAAK,4BAA4B,EAAE,MAAM,qBAAqB,CAAA;AAIjG,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAK/E,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAI/E,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAIpF,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA"}
package/dist/server.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { type AgentKindRegistry, type InitiativePresetRegistry, type TaskTypeRegistry, start } from '@cat-factory/node-server';
2
+ import { type CreateSharedStackInput } from '@cat-factory/kernel';
2
3
  import type { BackendRegistries, RegisterHandlerInput } from '@cat-factory/integrations';
3
4
  export declare function startLocal(options?: {
4
5
  env?: NodeJS.ProcessEnv;
@@ -56,5 +57,14 @@ export declare function startLocal(options?: {
56
57
  * Omitted ⇒ no seeding.
57
58
  */
58
59
  seedEnvironmentHandlers?: RegisterHandlerInput[];
60
+ /**
61
+ * A deployment's pre-declared SHARED STACKS (each a `CreateSharedStackInput`) — the long-lived
62
+ * compose infra its previews attach to. Threaded on BOTH local boot paths and backfilled
63
+ * exactly like {@link seedEnvironmentHandlers}. A seed's compose layers may be inline
64
+ * documents, paths in another repo, or paths in the stack's own clone, so a local deployment
65
+ * can declare its whole infra dependency set in code — including a stack with no repo of its
66
+ * own. Bringing one UP needs the host Docker daemon, which local mode has. Omitted ⇒ no seeding.
67
+ */
68
+ seedSharedStacks?: CreateSharedStackInput[];
59
69
  }): Promise<Awaited<ReturnType<typeof start>>>;
60
70
  //# sourceMappingURL=server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,EAQrB,KAAK,EAEN,MAAM,0BAA0B,CAAA;AAWjC,OAAO,KAAK,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAoCxF,wBAAsB,UAAU,CAC9B,OAAO,GAAE;IACP,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;IACvB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC;;;;;OAKG;IACH,wBAAwB,CAAC,EAAE,wBAAwB,CAAA;IACnD;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC;;;;;;;;;;;;OAYG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC;;;;;;;OAOG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B;;;;;;;OAOG;IACH,uBAAuB,CAAC,EAAE,oBAAoB,EAAE,CAAA;CAC5C,GACL,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAuB5C"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,EAQrB,KAAK,EAEN,MAAM,0BAA0B,CAAA;AASjC,OAAO,EAAiB,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAEhF,OAAO,KAAK,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAoCxF,wBAAsB,UAAU,CAC9B,OAAO,GAAE;IACP,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;IACvB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC;;;;;OAKG;IACH,wBAAwB,CAAC,EAAE,wBAAwB,CAAA;IACnD;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC;;;;;;;;;;;;OAYG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC;;;;;;;OAOG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B;;;;;;;OAOG;IACH,uBAAuB,CAAC,EAAE,oBAAoB,EAAE,CAAA;IAChD;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,sBAAsB,EAAE,CAAA;CACvC,GACL,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAuB5C"}
package/dist/server.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { execFile } from 'node:child_process';
2
2
  import { promisify } from 'node:util';
3
- import { DEFAULT_APP_CACHES_PROFILE, NodeRealtimeHub, backfillEnvironmentHandlerSeeds, createApp, installProcessFailureGuards, serveAppWithRealtime, serveMisconfigured, start, startBootClock, } from '@cat-factory/node-server';
3
+ import { DEFAULT_APP_CACHES_PROFILE, NodeRealtimeHub, backfillDeclaredSeeds, createApp, installProcessFailureGuards, serveAppWithRealtime, serveMisconfigured, start, startBootClock, } from '@cat-factory/node-server';
4
4
  import { DOCS, ENV_VARS_ANCHORS, isConfigValidationError, logger, parseLogLevel, setLogLevel, } from '@cat-factory/server';
5
5
  import { runBestEffort } from '@cat-factory/kernel';
6
6
  import { validateRegistrationsOnce } from '@cat-factory/orchestration';
@@ -137,6 +137,9 @@ async function bootLocal(options, env) {
137
137
  // so `buildLocalContainer` (via `...options`) hands them to `buildNodeContainer` → `createCore`,
138
138
  // and `start()`'s post-listen backfill seeds every existing workspace. Undefined ⇒ no seeding.
139
139
  seedEnvironmentHandlers: options.seedEnvironmentHandlers,
140
+ // …and the declared shared stacks along the same path, so a local deployment can describe its
141
+ // whole infra dependency set (inline compose documents included) in code.
142
+ seedSharedStacks: options.seedSharedStacks,
140
143
  // Inject the deployment's backend registries (if any) by reference — `start()` never puts a
141
144
  // `backendRegistries` on `o`, so this can't clobber one, and when absent `buildLocalContainer`
142
145
  // falls back to `createBackendRegistries()` (the built-in-only default). Unchanged from the
@@ -171,7 +174,7 @@ async function startLocalMothership(env, host,
171
174
  /** The deployment extension seams threaded into `buildLocalContainer` (bundled to stay under
172
175
  * the parameter-count lint; `startLocal` passes its own `options`, a structural superset). */
173
176
  extensions) {
174
- const { agentKindRegistry, initiativePresetRegistry, backendRegistries, defaultModelPresetId, taskTypeRegistry, seedEnvironmentHandlers, } = extensions;
177
+ const { agentKindRegistry, initiativePresetRegistry, backendRegistries, defaultModelPresetId, taskTypeRegistry, seedEnvironmentHandlers, seedSharedStacks, } = extensions;
175
178
  logger.info('local mode: booting in MOTHERSHIP mode (no local Postgres; org state served remotely)', { mothership: env.LOCAL_MOTHERSHIP_URL });
176
179
  // Shared with the engine's event publisher (wired inside the container) and the HTTP
177
180
  // server's WebSocket upgrade listener below, exactly as the Node `start()` does. Local
@@ -190,6 +193,7 @@ extensions) {
190
193
  defaultModelPresetId,
191
194
  taskTypeRegistry,
192
195
  seedEnvironmentHandlers,
196
+ seedSharedStacks,
193
197
  });
194
198
  // Validate registered gates / agent kinds once before serving (parity with `start()`).
195
199
  validateRegistrationsOnce({
@@ -201,7 +205,7 @@ extensions) {
201
205
  // the mothership path builds `buildLocalContainer` directly and never runs `bootServer`, so it
202
206
  // must run the same best-effort backfill itself (new workspaces are seeded by
203
207
  // WorkspaceService.create). Fire-and-forget so it doesn't delay serving; a no-op when unwired.
204
- void backfillEnvironmentHandlerSeeds(container, logger);
208
+ void backfillDeclaredSeeds(container, logger);
205
209
  const app = createApp(container, env);
206
210
  // Shared serve + WebSocket-upgrade helper (one implementation with `start()`, so port/host
207
211
  // resolution can't drift). The shutdown sequence stays local because it differs from `start()`:
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cat-factory/local-server",
3
- "version": "0.88.9",
3
+ "version": "0.90.0",
4
4
  "description": "Local-mode runtime facade for the Agent Architecture Board: the @cat-factory/node-server stack with agent jobs run as local Docker/Podman containers and GitHub accessed via a personal access token — a developer can run the whole product on their own machine.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -27,23 +27,23 @@
27
27
  "@hono/node-server": "^2.0.12",
28
28
  "drizzle-orm": "1.0.0-rc.4",
29
29
  "ws": "^8.21.1",
30
- "@cat-factory/agents": "0.87.1",
31
- "@cat-factory/contracts": "0.196.0",
30
+ "@cat-factory/agents": "0.87.2",
32
31
  "@cat-factory/executor-harness": "1.76.2",
33
- "@cat-factory/gitlab": "0.14.4",
34
- "@cat-factory/integrations": "0.110.5",
35
- "@cat-factory/kernel": "0.192.0",
36
- "@cat-factory/node-server": "0.139.1",
37
- "@cat-factory/orchestration": "0.170.0",
38
- "@cat-factory/server": "0.178.1"
32
+ "@cat-factory/contracts": "0.197.0",
33
+ "@cat-factory/gitlab": "0.14.5",
34
+ "@cat-factory/integrations": "0.111.0",
35
+ "@cat-factory/kernel": "0.193.0",
36
+ "@cat-factory/node-server": "0.140.0",
37
+ "@cat-factory/orchestration": "0.171.0",
38
+ "@cat-factory/server": "0.178.2"
39
39
  },
40
40
  "devDependencies": {
41
41
  "@types/node": "^26.1.1",
42
42
  "@types/ws": "^8.18.1",
43
43
  "typescript": "7.0.2",
44
44
  "vitest": "^4.1.10",
45
- "@cat-factory/conformance": "0.16.0",
46
- "@cat-factory/gates": "0.8.21"
45
+ "@cat-factory/conformance": "0.16.1",
46
+ "@cat-factory/gates": "0.8.22"
47
47
  },
48
48
  "scripts": {
49
49
  "build": "tsc -b tsconfig.build.json",