@dungle-scrubs/harness-cli-normalizer 0.6.5 → 0.6.6

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 (44) hide show
  1. package/README.md +23 -8
  2. package/dist/cli/help.d.ts +1 -1
  3. package/dist/cli/help.d.ts.map +1 -1
  4. package/dist/cli/help.js +5 -2
  5. package/dist/cli/help.js.map +1 -1
  6. package/dist/cli/inspect-context.js +4 -6
  7. package/dist/cli/inspect-context.js.map +1 -1
  8. package/dist/cli/inspect-session.js +1 -1
  9. package/dist/cli/inspect-session.js.map +1 -1
  10. package/dist/cli/inspect.d.ts.map +1 -1
  11. package/dist/cli/inspect.js +3 -2
  12. package/dist/cli/inspect.js.map +1 -1
  13. package/dist/cli/runtime-compatibility.d.ts +4 -3
  14. package/dist/cli/runtime-compatibility.d.ts.map +1 -1
  15. package/dist/cli/runtime-compatibility.js +4 -3
  16. package/dist/cli/runtime-compatibility.js.map +1 -1
  17. package/dist/execution/context-inspection.d.ts +1 -1
  18. package/dist/execution/context-inspection.d.ts.map +1 -1
  19. package/dist/execution/context-inspection.js +28 -30
  20. package/dist/execution/context-inspection.js.map +1 -1
  21. package/dist/execution/lines.d.ts +2 -1
  22. package/dist/execution/lines.d.ts.map +1 -1
  23. package/dist/execution/lines.js +4 -1
  24. package/dist/execution/lines.js.map +1 -1
  25. package/dist/interpretation/context-inspection.d.ts +8 -0
  26. package/dist/interpretation/context-inspection.d.ts.map +1 -1
  27. package/dist/interpretation/context-inspection.js +55 -5
  28. package/dist/interpretation/context-inspection.js.map +1 -1
  29. package/dist/knowledge/claude-code.d.ts.map +1 -1
  30. package/dist/knowledge/claude-code.js +5 -1
  31. package/dist/knowledge/claude-code.js.map +1 -1
  32. package/dist/knowledge/descriptor.d.ts +11 -3
  33. package/dist/knowledge/descriptor.d.ts.map +1 -1
  34. package/package.json +1 -1
  35. package/src/cli/help.ts +5 -2
  36. package/src/cli/inspect-context.ts +4 -8
  37. package/src/cli/inspect-session.ts +1 -1
  38. package/src/cli/inspect.ts +3 -2
  39. package/src/cli/runtime-compatibility.ts +10 -4
  40. package/src/execution/context-inspection.ts +35 -30
  41. package/src/execution/lines.ts +5 -1
  42. package/src/interpretation/context-inspection.ts +73 -4
  43. package/src/knowledge/claude-code.ts +5 -1
  44. package/src/knowledge/descriptor.ts +11 -3
@@ -1,4 +1,5 @@
1
1
  import { buildSpawnArgv } from "./argv.js";
2
+ import { contentEventsOf } from "./content.js";
2
3
  import { ArgvRefusalError } from "./refusal.js";
3
4
  import { asRecord } from "./shape.js";
4
5
  /** Preserve the real turn's launch settings, replacing only its prompt
@@ -10,7 +11,7 @@ export function buildContextInspectionArgv(harness, options) {
10
11
  harness: harness.name,
11
12
  issue: "invalid-option-value",
12
13
  option: "context",
13
- supported: ["verified native context adapter without native passthrough"],
14
+ supported: ["supported native context adapter without native passthrough"],
14
15
  });
15
16
  }
16
17
  return [
@@ -30,6 +31,24 @@ export function assertContextInspectionOptions(harness, options) {
30
31
  });
31
32
  }
32
33
  const positive = (value) => typeof value === "number" && Number.isSafeInteger(value) && value > 0;
34
+ /** Cleanup and caller interruption take precedence. Otherwise a recognized
35
+ * native failure explains a failed exchange more precisely than its framing. */
36
+ export function settledContextInspection(facts) {
37
+ const { accounting, clean, exitCode, nativeFailure } = facts;
38
+ if (!clean)
39
+ return { status: "unavailable", reason: "cleanup" };
40
+ if (accounting.status === "unavailable" &&
41
+ (accounting.reason === "cancelled" || accounting.reason === "timeout"))
42
+ return accounting;
43
+ if (nativeFailure !== null)
44
+ return { status: "unavailable", reason: nativeFailure };
45
+ if (accounting.status === "unavailable" &&
46
+ accounting.reason === "transport" &&
47
+ exitCode !== null &&
48
+ exitCode !== 0)
49
+ return { status: "unavailable", reason: "native-exit" };
50
+ return accounting;
51
+ }
33
52
  /** Normalize only a complete native response. A window alone says nothing
34
53
  * about remaining capacity, and invalid compaction data must not increase it. */
35
54
  export function contextInspectionOf(input) {
@@ -75,8 +94,6 @@ export function createContextProbe(inputId, prompt) {
75
94
  initial: control(initializeId, { subtype: "initialize", hooks: null }),
76
95
  staged,
77
96
  accept(line) {
78
- if (phase === "finished")
79
- return null;
80
97
  let decoded;
81
98
  try {
82
99
  decoded = JSON.parse(line);
@@ -86,7 +103,38 @@ export function createContextProbe(inputId, prompt) {
86
103
  return { kind: "complete", accounting: { status: "unavailable", reason: "protocol" } };
87
104
  }
88
105
  const frame = asRecord(decoded);
89
- if (frame === null || Array.isArray(decoded))
106
+ const failure = contentEventsOf("claude", decoded).find((event) => event.kind === "limit" || (event.kind === "error" && event.terminal));
107
+ if (failure) {
108
+ phase = "finished";
109
+ return {
110
+ kind: "complete",
111
+ accounting: {
112
+ status: "unavailable",
113
+ reason: failure.kind === "limit" ? "limit" : "native-exit",
114
+ },
115
+ };
116
+ }
117
+ const content = asRecord(frame?.message)?.content;
118
+ const toolResult = frame?.type === "user" &&
119
+ (frame.parent_tool_use_id != null ||
120
+ (Array.isArray(content) &&
121
+ content.some((block) => asRecord(block)?.type === "tool_result")));
122
+ const allowed = frame !== null &&
123
+ !Array.isArray(decoded) &&
124
+ !toolResult &&
125
+ (frame.type === "user" ||
126
+ frame.type === "control_response" ||
127
+ frame.type === "command_lifecycle" ||
128
+ (frame.type === "system" &&
129
+ ["init", "hook_started", "hook_progress", "hook_response"].includes(String(frame.subtype))) ||
130
+ (frame.type === "result" && frame.subtype === "success" && frame.num_turns === 0) ||
131
+ (frame.type === "rate_limit_event" &&
132
+ ["allowed", "allowed_warning"].includes(String(asRecord(frame.rate_limit_info)?.status))));
133
+ if (!allowed || frame === null) {
134
+ phase = "finished";
135
+ return { kind: "complete", accounting: { status: "unavailable", reason: "protocol" } };
136
+ }
137
+ if (phase === "finished")
90
138
  return null;
91
139
  if (phase === "ack" && frame.type === "user" && frame.uuid === inputId) {
92
140
  phase = "usage";
@@ -98,7 +146,9 @@ export function createContextProbe(inputId, prompt) {
98
146
  const expected = phase === "initialize" ? initializeId : phase === "usage" ? usageId : null;
99
147
  if (expected === null || response.request_id !== expected)
100
148
  return null;
101
- if (response.subtype !== "success") {
149
+ if (response.subtype !== "success" ||
150
+ (phase === "initialize" &&
151
+ (asRecord(response.response) === null || Array.isArray(response.response)))) {
102
152
  phase = "finished";
103
153
  return { kind: "complete", accounting: { status: "unavailable", reason: "protocol" } };
104
154
  }
@@ -1 +1 @@
1
- {"version":3,"file":"context-inspection.js","sourceRoot":"","sources":["../../src/interpretation/context-inspection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context-inspection.js","sourceRoot":"","sources":["../../src/interpretation/context-inspection.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"claude-code.d.ts","sourceRoot":"","sources":["../../src/knowledge/claude-code.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAc,KAAK,iBAAiB,EAAc,MAAM,iBAAiB,CAAC;AAKjF,eAAO,MAAM,UAAU,EAAE,iBA8OvB,CAAC"}
1
+ {"version":3,"file":"claude-code.d.ts","sourceRoot":"","sources":["../../src/knowledge/claude-code.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAc,KAAK,iBAAiB,EAAc,MAAM,iBAAiB,CAAC;AAKjF,eAAO,MAAM,UAAU,EAAE,iBAkPvB,CAAC"}
@@ -39,6 +39,7 @@ export const claudeCode = deepFreeze({
39
39
  idFlag: "--session-id",
40
40
  },
41
41
  resume: {
42
+ admission: { kind: "invocation", modes: ["headless-turn"] },
42
43
  // A-005: claude resumes are id-stable - the caller-assigned id survives
43
44
  // every resume, so there is no rotation handling and forking is only the
44
45
  // explicit --fork-session flag (deliberate branching, never a default).
@@ -149,7 +150,10 @@ export const claudeCode = deepFreeze({
149
150
  object: "context_window",
150
151
  usedPctField: "used_percentage",
151
152
  },
152
- nativeContextManagement: null,
153
+ nativeContextManagement: {
154
+ kind: "native-session-auto-compaction",
155
+ modes: ["headless-turn"],
156
+ },
153
157
  contextInspection: {
154
158
  kind: "claude-control-v1",
155
159
  flags: [...STREAM_INPUT_FLAGS, "--no-session-persistence", "--replay-user-messages"],
@@ -1 +1 @@
1
- {"version":3,"file":"claude-code.js","sourceRoot":"","sources":["../../src/knowledge/claude-code.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude-code.js","sourceRoot":"","sources":["../../src/knowledge/claude-code.ts"],"names":[],"mappings":"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"}
@@ -252,6 +252,12 @@ export interface HarnessDescriptor {
252
252
  * anywhere else (the v1 first-UUID-wins scar: a UUID inside quoted prompt
253
253
  * text was returned as the session id, and resuming it started a stranger). */
254
254
  readonly resume: {
255
+ /** Declared invocation support by mode, not proof that a saved session exists.
256
+ * Omitted retains the verification-version admission policy. */
257
+ readonly admission?: {
258
+ readonly kind: "invocation";
259
+ readonly modes: readonly HarnessMode[];
260
+ };
255
261
  readonly style: ResumeStyle;
256
262
  readonly flag: string;
257
263
  readonly aliases: readonly string[];
@@ -375,16 +381,18 @@ export interface HarnessDescriptor {
375
381
  readonly object: string;
376
382
  readonly usedPctField: string;
377
383
  } | null;
378
- /** Disposable native context accounting, verified at verifiedAgainst.
384
+ /** Disposable native context accounting; the exchange validates support.
379
385
  * Null is unknown support, never a model-window estimate. */
380
386
  readonly contextInspection: {
381
387
  readonly flags: readonly string[];
382
388
  readonly forkFlag: string;
383
389
  readonly kind: "claude-control-v1";
384
390
  } | null;
385
- /** Native context handling at verifiedAgainst; not a preflight count. */
391
+ /** Curated native context handling, not a count or enabled-state observation.
392
+ * Native-session handling covers the native session; callers must prepare
393
+ * imported history. Disabled native compaction is not detected here. */
386
394
  readonly nativeContextManagement: {
387
- readonly kind: "auto-compaction";
395
+ readonly kind: "auto-compaction" | "native-session-auto-compaction";
388
396
  readonly modes: readonly HarnessMode[];
389
397
  } | null;
390
398
  /** Resume-most-recent support (codex --last), or null. The race it opens
@@ -1 +1 @@
1
- {"version":3,"file":"descriptor.d.ts","sourceRoot":"","sources":["../../src/knowledge/descriptor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"descriptor.d.ts","sourceRoot":"","sources":["../../src/knowledge/descriptor.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dungle-scrubs/harness-cli-normalizer",
3
- "version": "0.6.5",
3
+ "version": "0.6.6",
4
4
  "description": "One stable CLI to four coding-agent harnesses: normalized flags, defaults, and events.",
5
5
  "license": "MIT",
6
6
  "author": "Kevin Frilot",
package/src/cli/help.ts CHANGED
@@ -168,10 +168,13 @@ Arguments:
168
168
  Options:
169
169
  --argv Preview argv that would be spawned
170
170
  --runtime Preview argv and probe the selected executable version;
171
- exact adapter matches support native resume, others unknown
171
+ Claude headless-turn resume uses invocation support.
172
+ Other harnesses and persistent sessions require exact
173
+ adapter versions. A resolved executable is required
172
174
  (does not run a model or prove the saved session exists)
173
175
  --context Inspect complete staged context through a disposable native
174
- process (headless-turn only, verified Claude adapter).
176
+ process (Claude headless-turn only). Validates the native
177
+ operation independently of version metadata.
175
178
  --json returns accounting plus executable/model provenance.
176
179
  Native estimate includes recalled history and the composed
177
180
  prompt. No assistant task is queried. Resume is forked with
@@ -51,16 +51,12 @@ async function inspectContextRequest(
51
51
  refuse(refusalOf(error), outcome.plan.wantJson);
52
52
  return;
53
53
  }
54
- const runtime = await runtimeCompatibility(harness, options);
54
+ const runtime = await runtimeCompatibility(harness, { ...options, mode: "headless-turn" });
55
55
  let accounting: ContextInspection;
56
- if (harness.contextInspection === null) {
56
+ if (harness.contextInspection?.kind !== "claude-control-v1") {
57
57
  accounting = { status: "unavailable", reason: "unsupported-adapter" };
58
- } else if (
59
- runtime.resume.status !== "supported" ||
60
- runtime.executable.path === null ||
61
- harness.contextInspection?.kind !== "claude-control-v1"
62
- ) {
63
- accounting = { status: "unavailable", reason: "unverified-adapter" };
58
+ } else if (runtime.executable.path === null) {
59
+ accounting = { status: "unavailable", reason: "transport" };
64
60
  } else {
65
61
  try {
66
62
  const argv = buildContextInspectionArgv(harness, options);
@@ -75,7 +75,7 @@ export async function inspectSessionRuntime(
75
75
  });
76
76
  process.stderr.write(`argv: ${argv.join(" ")}\n`);
77
77
  process.stdout.write(
78
- `${JSON.stringify({ v: 1, argvKind: "redacted-preview", argv, ...(await runtimeCompatibility(harness, { cwd })) })}\n`,
78
+ `${JSON.stringify({ v: 1, argvKind: "redacted-preview", argv, ...(await runtimeCompatibility(harness, { cwd, mode: "headless-session" })) })}\n`,
79
79
  );
80
80
  } catch (error) {
81
81
  if (!(error instanceof ArgvRefusalError)) throw error;
@@ -84,7 +84,7 @@ export const inspect = async (harnessName: string, rawArgs: string[]): Promise<v
84
84
  }
85
85
  const argv = outcome.plan.redactedArgv;
86
86
  process.stdout.write(
87
- `${JSON.stringify({ v: 1, argvKind: "redacted-preview", argv, ...(await runtimeCompatibility(h, outcome.plan.options)) })}\n`,
87
+ `${JSON.stringify({ v: 1, argvKind: "redacted-preview", argv, ...(await runtimeCompatibility(h, { ...outcome.plan.options, mode })) })}\n`,
88
88
  );
89
89
  return;
90
90
  }
@@ -144,6 +144,7 @@ export const inspect = async (harnessName: string, rawArgs: string[]): Promise<v
144
144
  slice[canonical] = { native: null, source: "none" };
145
145
  }
146
146
  }
147
+ const { admission: _admission, ...resume } = h.resume;
147
148
  const out = {
148
149
  name: h.name,
149
150
  bin: h.bin,
@@ -158,7 +159,7 @@ export const inspect = async (harnessName: string, rawArgs: string[]): Promise<v
158
159
  toolsFlag: h.tools.includeFlag,
159
160
  idFlag: h.launch.idFlag,
160
161
  },
161
- resume: h.resume,
162
+ resume,
162
163
  contextInspection: h.contextInspection ?? null,
163
164
  nativeContextManagement:
164
165
  h.nativeContextManagement === null
@@ -1,7 +1,7 @@
1
1
  import { accessSync, constants, realpathSync, statSync } from "node:fs";
2
2
  import { delimiter, isAbsolute, resolve } from "node:path";
3
3
  import { mergeEnvironment } from "../execution/environment.js";
4
- import type { HarnessDescriptor } from "../knowledge/descriptor.js";
4
+ import type { HarnessDescriptor, HarnessMode } from "../knowledge/descriptor.js";
5
5
  import { installedVersion } from "./check.js";
6
6
 
7
7
  function executablePath(bin: string, cwd: string, searchPath: string): string | null {
@@ -20,10 +20,14 @@ function executablePath(bin: string, cwd: string, searchPath: string): string |
20
20
  return null;
21
21
  }
22
22
 
23
- /** Exact verified versions establish support. Newer is not evidence of compatibility. */
23
+ /** Admission describes a supported invocation, never saved-session existence. */
24
24
  export async function runtimeCompatibility(
25
25
  harness: HarnessDescriptor,
26
- options: { readonly cwd?: string; readonly env?: Readonly<Record<string, string>> } = {},
26
+ options: {
27
+ readonly cwd?: string;
28
+ readonly env?: Readonly<Record<string, string>>;
29
+ readonly mode: HarnessMode;
30
+ },
27
31
  ): Promise<{
28
32
  readonly executable: { readonly path: string | null; readonly version: string | null };
29
33
  readonly resume: { readonly status: "supported" | "unknown"; readonly reason: string | null };
@@ -37,7 +41,9 @@ export async function runtimeCompatibility(
37
41
  const path = executablePath(harness.bin, cwd, searchPath);
38
42
  const version =
39
43
  path === null ? null : await installedVersion(path, { cwd, env: effectiveEnvironment });
40
- const supported = version !== null && version === harness.verifiedAgainst;
44
+ const invocation = harness.resume.admission?.modes.includes(options.mode) === true;
45
+ const supported =
46
+ path !== null && (invocation || (version !== null && version === harness.verifiedAgainst));
41
47
  return {
42
48
  executable: { path, version },
43
49
  resume: {
@@ -1,5 +1,8 @@
1
1
  import type { ContextInspection } from "../interpretation/context-inspection.js";
2
- import { createContextProbe } from "../interpretation/context-inspection.js";
2
+ import {
3
+ createContextProbe,
4
+ settledContextInspection,
5
+ } from "../interpretation/context-inspection.js";
3
6
  import { detectAuthFailureInLine, detectLimitInLine } from "../interpretation/limits.js";
4
7
  import type { HarnessDescriptor } from "../knowledge/descriptor.js";
5
8
 
@@ -10,7 +13,7 @@ import { LineBuffer } from "./lines.js";
10
13
  import { KILL_GRACE_MS, superviseTermination } from "./supervisor.js";
11
14
 
12
15
  export interface ContextInspectionOptions {
13
- /** Already validated, version-bound ephemeral argv. The CLI adapter owns
16
+ /** Already validated, executable-bound ephemeral argv. The CLI adapter owns
14
17
  * no-persistence and fork-on-resume enforcement before this layer runs. */
15
18
  readonly argv: readonly string[];
16
19
  readonly cwd?: string;
@@ -53,11 +56,14 @@ export async function inspectContext(
53
56
  return { status: "unavailable", reason: "transport" };
54
57
  }
55
58
  let finished = false;
59
+ const outcome: { accounting: ContextInspection } = {
60
+ accounting: { status: "unavailable", reason: "transport" },
61
+ };
56
62
  let exited = false;
57
63
  let exitCode: number | null = null;
58
64
  let nativeFailure: "auth" | "limit" | null = null;
59
65
  let disposalTimer: TimerHandle | undefined;
60
- const result = deferred<ContextInspection>();
66
+ const result = deferred<void>();
61
67
  const stopped = deferred<boolean>();
62
68
  const signal = (kind: "SIGTERM" | "SIGKILL"): void => {
63
69
  try {
@@ -68,18 +74,17 @@ export async function inspectContext(
68
74
  };
69
75
  const termination = superviseTermination(deps.clock, signal);
70
76
  const finish = (value: ContextInspection): void => {
77
+ if (!finished || (outcome.accounting.status === "available" && value.status === "unavailable"))
78
+ outcome.accounting = value;
71
79
  if (finished) return;
72
80
  finished = true;
73
- result.resolve(value);
81
+ result.resolve();
74
82
  try {
75
83
  child.stdin?.end();
76
84
  } catch {
77
85
  /* A broken pipe still needs cleanup. */
78
86
  }
79
- if (exited) {
80
- stopped.resolve(true);
81
- return;
82
- }
87
+ if (exited) return;
83
88
  termination.escalate();
84
89
  disposalTimer = deps.clock.setTimeout(() => {
85
90
  child.disposeOutput();
@@ -99,9 +104,9 @@ export async function inspectContext(
99
104
  }
100
105
  };
101
106
  const onLine = (line: string): void => {
102
- if (finished) return;
107
+ if (finished && outcome.accounting.status !== "available") return;
103
108
  const action = probe.accept(line);
104
- if (action?.kind === "send") write(action.line);
109
+ if (action?.kind === "send" && !finished) write(action.line);
105
110
  else if (action?.kind === "complete") finish(action.accounting);
106
111
  };
107
112
  const deadline = deps.clock.setTimeout(
@@ -111,14 +116,16 @@ export async function inspectContext(
111
116
  const abort = (): void => finish({ status: "unavailable", reason: "cancelled" });
112
117
  options.signal?.addEventListener("abort", abort, { once: true });
113
118
  const stdout = (async (): Promise<void> => {
114
- const lines = new LineBuffer(CONTEXT_TRANSPORT_MAX + 65_536);
119
+ const lines = new LineBuffer(CONTEXT_TRANSPORT_MAX + 65_536, () =>
120
+ finish({ status: "unavailable", reason: "transport-limit" }),
121
+ );
115
122
  try {
116
123
  for await (const chunk of child.stdout) {
117
- if (!finished) for (const line of lines.push(chunk)) onLine(line);
124
+ for (const line of lines.push(chunk)) onLine(line);
118
125
  }
119
126
  const tail = lines.flush();
120
127
  if (tail !== null) onLine(tail);
121
- finish({ status: "unavailable", reason: "transport" });
128
+ if (!finished) finish({ status: "unavailable", reason: "transport" });
122
129
  } catch {
123
130
  finish({ status: "unavailable", reason: "transport" });
124
131
  }
@@ -142,36 +149,34 @@ export async function inspectContext(
142
149
  void child.exited.then(async (code) => {
143
150
  exited = true;
144
151
  exitCode = code;
145
- if (code !== null && code !== 0) finish({ status: "unavailable", reason: "transport" });
152
+ if (!finished && code !== null && code !== 0)
153
+ finish({ status: "unavailable", reason: "transport" });
146
154
  termination.settle();
147
155
  if (disposalTimer !== undefined) deps.clock.clearTimeout(disposalTimer);
148
156
  // Exit can precede the final bytes reaching the runtime's read buffer.
149
157
  // Drain naturally first; inherited pipes get a bounded disposal fallback.
150
158
  let drainTimer: TimerHandle | undefined;
151
- await Promise.race([
152
- Promise.all([stdout, stderr]),
153
- new Promise<void>((resolve) => {
154
- drainTimer = deps.clock.setTimeout(resolve, KILL_GRACE_MS);
159
+ const drained = await Promise.race([
160
+ Promise.all([stdout, stderr]).then(() => true),
161
+ new Promise<boolean>((resolve) => {
162
+ drainTimer = deps.clock.setTimeout(() => resolve(false), KILL_GRACE_MS);
155
163
  }),
156
164
  ]);
157
165
  if (drainTimer !== undefined) deps.clock.clearTimeout(drainTimer);
158
166
  child.disposeOutput();
159
- stopped.resolve(true);
167
+ stopped.resolve(drained);
160
168
  });
161
169
  write(probe.initial);
162
170
  // Abort can arrive during spawn or listener registration.
163
171
  if (options.signal?.aborted) abort();
164
- const value = await result.promise;
172
+ await result.promise;
165
173
  deps.clock.clearTimeout(deadline);
166
- options.signal?.removeEventListener("abort", abort);
167
174
  const clean = await stopped.promise;
168
- if (clean) await Promise.all([stdout, stderr]);
169
- if (!clean) return { status: "unavailable", reason: "cleanup" };
170
- if (value.status === "unavailable" && value.reason === "transport") {
171
- return {
172
- status: "unavailable",
173
- reason: nativeFailure ?? (exitCode !== null && exitCode !== 0 ? "native-exit" : "transport"),
174
- };
175
- }
176
- return value;
175
+ options.signal?.removeEventListener("abort", abort);
176
+ return settledContextInspection({
177
+ accounting: outcome.accounting,
178
+ clean,
179
+ exitCode,
180
+ nativeFailure,
181
+ });
177
182
  }
@@ -11,7 +11,10 @@
11
11
  export const LINE_MAX = 65_536;
12
12
 
13
13
  export class LineBuffer {
14
- constructor(private readonly limit = LINE_MAX) {}
14
+ constructor(
15
+ private readonly limit = LINE_MAX,
16
+ private readonly onOverflow?: () => void,
17
+ ) {}
15
18
  // Per-instance and stateful ({stream:true}): a shared decoder would carry
16
19
  // partial-sequence state across two streams and corrupt both.
17
20
  private readonly decoder = new TextDecoder();
@@ -44,6 +47,7 @@ export class LineBuffer {
44
47
  if (this.pending.length + text.length > this.limit) {
45
48
  this.pending = "";
46
49
  this.discarding = true;
50
+ this.onOverflow?.();
47
51
  } else this.pending += text;
48
52
  }
49
53