@claudexor/harness-codex 3.0.4 → 3.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/auth.d.ts +2 -0
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +10 -0
- package/dist/auth.js.map +1 -1
- package/dist/effort-gate.d.ts +61 -0
- package/dist/effort-gate.d.ts.map +1 -0
- package/dist/effort-gate.js +61 -0
- package/dist/effort-gate.js.map +1 -0
- package/dist/effort-probe.d.ts +167 -0
- package/dist/effort-probe.d.ts.map +1 -0
- package/dist/effort-probe.js +487 -0
- package/dist/effort-probe.js.map +1 -0
- package/dist/index.d.ts +12 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +54 -75
- package/dist/index.js.map +1 -1
- package/dist/missing-cli.d.ts +18 -0
- package/dist/missing-cli.d.ts.map +1 -0
- package/dist/missing-cli.js +70 -0
- package/dist/missing-cli.js.map +1 -0
- package/dist/parse.d.ts +12 -1
- package/dist/parse.d.ts.map +1 -1
- package/dist/parse.js +84 -3
- package/dist/parse.js.map +1 -1
- package/dist/toml.d.ts +9 -0
- package/dist/toml.d.ts.map +1 -0
- package/dist/toml.js +33 -0
- package/dist/toml.js.map +1 -0
- package/package.json +5 -5
package/dist/index.js
CHANGED
|
@@ -4,7 +4,11 @@ import { resolveSecret } from "@claudexor/secrets";
|
|
|
4
4
|
import { tmpdir } from "node:os";
|
|
5
5
|
import { join } from "node:path";
|
|
6
6
|
import { ConformanceReport as ConformanceReportSchema, HarnessManifest as HarnessManifestSchema, } from "@claudexor/schema";
|
|
7
|
-
import {
|
|
7
|
+
import { CODEX_EFFORT_SNAPSHOT, CODEX_EFFORT_SNAPSHOT_VERIFIED_AGAINST, codexEffortFor, codexEffortsForEnv, probeCodexEfforts, unionEffortLevels, } from "./effort-probe.js";
|
|
8
|
+
import { codexRunEffortResolution } from "./effort-gate.js";
|
|
9
|
+
import { tomlBasicString } from "./toml.js";
|
|
10
|
+
export { CODEX_EFFORT_SNAPSHOT, clearCodexEffortCache, unionEffortLevels } from "./effort-probe.js";
|
|
11
|
+
import { abortSignalFromSpec, brokenInstallAdvisory, browserMcpCommand, providerScrubEnv, resolveHarnessBinary, runCliHarness, selectStrictAuthRoute, selectedAuthAvailable, selectedAuthReady, shouldVerifyApiKey, } from "@claudexor/core";
|
|
8
12
|
import { CLAUDEXOR_VERSION, nowIso, redactSecrets } from "@claudexor/util";
|
|
9
13
|
import { parseCodexEvent } from "./parse.js";
|
|
10
14
|
import { probeCodexCredentialProfile, resolveCodexProfileRoute } from "./profile.js";
|
|
@@ -12,50 +16,12 @@ import { smokeIsolatedApiKey } from "./smoke.js";
|
|
|
12
16
|
export { canonicalCodexProfileHome, codexAccountIdentity } from "./profile.js";
|
|
13
17
|
import { estimateCodexCostUsd } from "./pricing.js";
|
|
14
18
|
import { codexImageArgs } from "./attachments.js";
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
* Ordered (weakest→strongest) reasoning-effort levels codex's
|
|
18
|
-
* `model_reasoning_effort` config accepts. SINGLE source: the manifest's
|
|
19
|
-
* `effort_levels` and the run-time normalizer both read this. The cross-harness
|
|
20
|
-
* `max` hint clamps to `xhigh` (the ceiling) via the shared normalizer.
|
|
21
|
-
*/
|
|
22
|
-
const CODEX_EFFORT_LEVELS = ["low", "medium", "high", "xhigh"];
|
|
19
|
+
import { BIN, detectVersion, missingCliError, missingCliReport, probeEnv } from "./missing-cli.js";
|
|
20
|
+
export { BIN } from "./missing-cli.js";
|
|
23
21
|
/** Exported for focused route-policy tests; runtime uses this exact selector. */
|
|
24
22
|
export const selectCodexRunAuthRoute = selectStrictAuthRoute;
|
|
25
|
-
export { CODEX_FILE_AUTH_ARGS, CODEX_FILE_AUTH_OVERRIDE,
|
|
26
|
-
import { CODEX_FILE_AUTH_ARGS, codexApiKey, codexAuthModeAt, defaultNativeCodexHome, ensureCodexApiAuth, hasApiKey, probeLogin, } from "./auth.js";
|
|
27
|
-
/**
|
|
28
|
-
* A TOML basic-string literal for a `-c key=value` override. `developer_instructions`
|
|
29
|
-
* is a documented additive Codex config key (layered as a developer block BEFORE
|
|
30
|
-
* AGENTS.md, not a replacement); passing per-invocation `-c` keeps it isolated
|
|
31
|
-
* to this run (never a shared-config mutation). Instructions may contain quotes
|
|
32
|
-
* and newlines, so they are TOML-escaped.
|
|
33
|
-
*/
|
|
34
|
-
function tomlBasicString(value) {
|
|
35
|
-
// TOML basic-string escapes, built by code point so the SOURCE carries no
|
|
36
|
-
// literal control characters: a backslash and quote are escaped, a literal
|
|
37
|
-
// newline/tab/CR become their escapes (a raw newline is invalid in a basic
|
|
38
|
-
// string), other control chars become \uXXXX, and everything else is literal.
|
|
39
|
-
let out = '"';
|
|
40
|
-
for (const ch of value) {
|
|
41
|
-
const code = ch.charCodeAt(0);
|
|
42
|
-
if (ch === "\\")
|
|
43
|
-
out += "\\\\";
|
|
44
|
-
else if (ch === '"')
|
|
45
|
-
out += '\\"';
|
|
46
|
-
else if (code === 10)
|
|
47
|
-
out += "\\n";
|
|
48
|
-
else if (code === 13)
|
|
49
|
-
out += "\\r";
|
|
50
|
-
else if (code === 9)
|
|
51
|
-
out += "\\t";
|
|
52
|
-
else if (code < 32 || code === 127)
|
|
53
|
-
out += "\\u" + code.toString(16).padStart(4, "0");
|
|
54
|
-
else
|
|
55
|
-
out += ch;
|
|
56
|
-
}
|
|
57
|
-
return out + '"';
|
|
58
|
-
}
|
|
23
|
+
export { CODEX_FILE_AUTH_ARGS, CODEX_FILE_AUTH_OVERRIDE, codexAuthModeAt, defaultNativeCodexHome, ensureCodexApiAuth, probeLogin, } from "./auth.js";
|
|
24
|
+
import { CODEX_FILE_AUTH_ARGS, CODEX_PROJECT_DOC_FALLBACK_ARGS, codexApiKey, codexAuthModeAt, defaultNativeCodexHome, ensureCodexApiAuth, hasApiKey, probeLogin, } from "./auth.js";
|
|
59
25
|
function sandboxArgs(access) {
|
|
60
26
|
switch (access) {
|
|
61
27
|
case "readonly":
|
|
@@ -69,20 +35,6 @@ function sandboxArgs(access) {
|
|
|
69
35
|
return [];
|
|
70
36
|
}
|
|
71
37
|
}
|
|
72
|
-
async function detectVersion(abortSignal) {
|
|
73
|
-
try {
|
|
74
|
-
const r = await runCapture(BIN, ["--version"], {
|
|
75
|
-
timeoutMs: 10_000,
|
|
76
|
-
abortSignal,
|
|
77
|
-
cancelSignal: "SIGTERM",
|
|
78
|
-
cancelKillDelayMs: 0,
|
|
79
|
-
});
|
|
80
|
-
return r.stdout.trim() || `${BIN} (version unknown)`;
|
|
81
|
-
}
|
|
82
|
-
catch {
|
|
83
|
-
return null;
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
38
|
export function redactCodexDoctorDetail(text) {
|
|
87
39
|
return redactSecrets(text).slice(0, 500);
|
|
88
40
|
}
|
|
@@ -189,10 +141,9 @@ export function codexExecArgs(spec, opts = {}) {
|
|
|
189
141
|
// so a thread's later moves continue the same conversation instead of restarting.
|
|
190
142
|
// LIVE-VERIFIED (codex 0.137): the resume subcommand does NOT accept --sandbox;
|
|
191
143
|
// sandboxing must ride as `-c sandbox_mode="..."` config overrides there.
|
|
192
|
-
//
|
|
193
|
-
//
|
|
194
|
-
|
|
195
|
-
const effort = normalizeEffort(spec.effort_hint, CODEX_EFFORT_LEVELS);
|
|
144
|
+
// Effort is resolved against what THIS MODEL advertises, not a harness-wide
|
|
145
|
+
// ladder: gpt-5.6-sol takes `ultra`, gpt-5.4 stops at `xhigh`.
|
|
146
|
+
const effort = codexEffortFor(opts.effortCatalog ?? CODEX_EFFORT_SNAPSHOT, spec.model_hint, spec.effort_hint);
|
|
196
147
|
if (spec.resume_session_id) {
|
|
197
148
|
const args = [
|
|
198
149
|
"exec",
|
|
@@ -200,6 +151,7 @@ export function codexExecArgs(spec, opts = {}) {
|
|
|
200
151
|
spec.resume_session_id,
|
|
201
152
|
"--json",
|
|
202
153
|
...CODEX_FILE_AUTH_ARGS,
|
|
154
|
+
...CODEX_PROJECT_DOC_FALLBACK_ARGS,
|
|
203
155
|
...sandboxConfigArgs(spec.access),
|
|
204
156
|
"--skip-git-repo-check",
|
|
205
157
|
];
|
|
@@ -227,7 +179,7 @@ export function codexExecArgs(spec, opts = {}) {
|
|
|
227
179
|
args.push(spec.prompt);
|
|
228
180
|
return args;
|
|
229
181
|
}
|
|
230
|
-
const args = ["exec", "--json", ...CODEX_FILE_AUTH_ARGS];
|
|
182
|
+
const args = ["exec", "--json", ...CODEX_FILE_AUTH_ARGS, ...CODEX_PROJECT_DOC_FALLBACK_ARGS];
|
|
231
183
|
args.push(...sandboxArgs(spec.access), "--skip-git-repo-check");
|
|
232
184
|
if (opts.outputSchemaPath)
|
|
233
185
|
args.push("--output-schema", opts.outputSchemaPath);
|
|
@@ -277,12 +229,15 @@ function codexWebArgs(policy) {
|
|
|
277
229
|
export function createCodexAdapter(deps = {}) {
|
|
278
230
|
const runtime = {
|
|
279
231
|
detectVersion,
|
|
232
|
+
brokenInstallAdvisory,
|
|
280
233
|
probeLogin,
|
|
281
234
|
hasApiKey,
|
|
282
235
|
codexApiKey,
|
|
283
236
|
resolveProfileSecret: (ref) => resolveSecret(ref),
|
|
284
237
|
smokeIsolatedApiKey,
|
|
285
238
|
runCliHarness,
|
|
239
|
+
probeEfforts: (bin, env) => probeCodexEfforts(bin, env ? { env } : {}),
|
|
240
|
+
nowMs: () => Date.now(),
|
|
286
241
|
...deps,
|
|
287
242
|
};
|
|
288
243
|
return {
|
|
@@ -290,11 +245,16 @@ export function createCodexAdapter(deps = {}) {
|
|
|
290
245
|
async discover() {
|
|
291
246
|
const version = await runtime.detectVersion();
|
|
292
247
|
if (version === null) {
|
|
293
|
-
|
|
248
|
+
const advisory = runtime.brokenInstallAdvisory(BIN);
|
|
249
|
+
throw missingCliError(advisory && redactCodexDoctorDetail(advisory));
|
|
294
250
|
}
|
|
295
251
|
const apiKey = runtime.hasApiKey();
|
|
296
252
|
const login = await runtime.probeLogin(BIN, { env: codexNativeEnv() });
|
|
297
253
|
const nativeSessionAvailable = login.method === "chatgpt";
|
|
254
|
+
// Per-model effort vocabulary from the vendor, probed in the SAME native env
|
|
255
|
+
// the login probe used (the catalog belongs to that CODEX_HOME's account). A
|
|
256
|
+
// failed probe falls back to the snapshot and stamps the version it came from.
|
|
257
|
+
const efforts = await codexEffortsForEnv(runtime, codexNativeEnv());
|
|
298
258
|
const authModes = [
|
|
299
259
|
...(nativeSessionAvailable ? ["local_session"] : []),
|
|
300
260
|
...(apiKey ? ["api_key"] : []),
|
|
@@ -318,10 +278,20 @@ export function createCodexAdapter(deps = {}) {
|
|
|
318
278
|
browser_tool: true,
|
|
319
279
|
// LIVE-VERIFIED (codex 0.137): `codex exec --output-schema <FILE>`.
|
|
320
280
|
json_schema_output: true,
|
|
281
|
+
// D-16: `--output-schema` constrains the FINAL MESSAGE, so a no-caller
|
|
282
|
+
// WorkReport envelope must wrap the markdown deliverable as
|
|
283
|
+
// `output: string` (final_message).
|
|
284
|
+
work_report_transport: "constrained",
|
|
285
|
+
structured_output_channel: "final_message",
|
|
321
286
|
web_policy: "native",
|
|
322
|
-
//
|
|
323
|
-
//
|
|
324
|
-
|
|
287
|
+
// Effort is per MODEL here (`model/list` → supportedReasoningEfforts),
|
|
288
|
+
// so the harness-wide list is the UNION and `model_effort_levels`
|
|
289
|
+
// carries the truth a specific model is held to.
|
|
290
|
+
effort_levels: unionEffortLevels(efforts.catalog.models),
|
|
291
|
+
model_effort_levels: efforts.catalog.models,
|
|
292
|
+
effort_levels_verified_against: efforts.live
|
|
293
|
+
? version
|
|
294
|
+
: CODEX_EFFORT_SNAPSHOT_VERIFIED_AGAINST,
|
|
325
295
|
// Manifest model truth source (strict model-truth validation: an explicit model outside
|
|
326
296
|
// this list is refused, never forwarded to die as a native error).
|
|
327
297
|
// Current + still-API-available ids per the vendor Codex models page,
|
|
@@ -373,14 +343,12 @@ export function createCodexAdapter(deps = {}) {
|
|
|
373
343
|
});
|
|
374
344
|
},
|
|
375
345
|
async doctor(_spec) {
|
|
376
|
-
|
|
346
|
+
// The scoped env drives BOTH the version probe and the advisory, so the
|
|
347
|
+
// diagnosis always describes the exact env the probe failed in.
|
|
348
|
+
const version = await runtime.detectVersion(_spec.abortSignal, _spec.env);
|
|
377
349
|
if (version === null) {
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
status: "unavailable",
|
|
381
|
-
checks: [{ id: "installed", status: "fail", detail: "codex not found on PATH" }],
|
|
382
|
-
reasons: ["codex CLI not found (install Codex or set CLAUDEXOR_CODEX_BIN)"],
|
|
383
|
-
});
|
|
350
|
+
const advisory = runtime.brokenInstallAdvisory(BIN, probeEnv(_spec.env));
|
|
351
|
+
return missingCliReport(advisory && redactCodexDoctorDetail(advisory));
|
|
384
352
|
}
|
|
385
353
|
const requestedSource = _spec.authSource;
|
|
386
354
|
const probeNative = requestedSource === undefined || requestedSource === "native_session";
|
|
@@ -427,7 +395,7 @@ export function createCodexAdapter(deps = {}) {
|
|
|
427
395
|
"explain",
|
|
428
396
|
"audit",
|
|
429
397
|
];
|
|
430
|
-
const binPath = resolveHarnessBinary(BIN);
|
|
398
|
+
const binPath = resolveHarnessBinary(BIN, probeEnv(_spec.env));
|
|
431
399
|
const apiSource = {
|
|
432
400
|
source: "provider_auth_file",
|
|
433
401
|
availability: apiKey ? "available" : "unavailable",
|
|
@@ -629,9 +597,20 @@ async function* runCodex(spec, runtime) {
|
|
|
629
597
|
throw new Error(`codex output-schema file could not be written (${err instanceof Error ? err.message : String(err)}); refusing to run unconstrained`);
|
|
630
598
|
}
|
|
631
599
|
}
|
|
600
|
+
// Probed in THIS run's resolved env, so a credential profile or API-key route
|
|
601
|
+
// gets its OWN account's catalog, not whichever one landed in the cache first.
|
|
602
|
+
// INV-105 on the RUN: version-gate snapshot-fallback trust (an installed
|
|
603
|
+
// codex that is not 0.144.1 is never sent the snapshot's levels), and
|
|
604
|
+
// disclose a DROP/CLAMP on the same catalog the args resolve with — preflight
|
|
605
|
+
// passed this level against the DEFAULT account's manifest, but THIS env's
|
|
606
|
+
// catalog may drop it or clamp it onto the routed model's ceiling.
|
|
607
|
+
const effort = await codexRunEffortResolution(spec, runtime, env, abortSignalFromSpec(spec));
|
|
608
|
+
if (effort.disclosure)
|
|
609
|
+
yield effort.disclosure;
|
|
632
610
|
const args = codexExecArgs(spec, {
|
|
633
611
|
suppressNodeRepl: codexConfigHasNodeRepl(env["CODEX_HOME"]),
|
|
634
612
|
outputSchemaPath,
|
|
613
|
+
effortCatalog: effort.catalog,
|
|
635
614
|
});
|
|
636
615
|
// Route evidence: the auth mode this child ACTUALLY runs under, read from
|
|
637
616
|
// the same auth.json codex loads (typed `auth_mode` field — chatgpt vs
|
|
@@ -645,7 +624,7 @@ async function* runCodex(spec, runtime) {
|
|
|
645
624
|
// codex recorded in its own rollout transcript; cache that one read.
|
|
646
625
|
let codexThreadId;
|
|
647
626
|
let transcriptModel;
|
|
648
|
-
const parseState = {}; //
|
|
627
|
+
const parseState = { envelopeActive: !!spec.output_schema }; // finality + #19816
|
|
649
628
|
try {
|
|
650
629
|
yield* runtime.runCliHarness({
|
|
651
630
|
bin: BIN,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { HarnessUnavailableError } from "@claudexor/core";
|
|
2
|
+
import type { ConformanceReport } from "@claudexor/schema";
|
|
3
|
+
export declare const BIN: string;
|
|
4
|
+
/**
|
|
5
|
+
* Effective environment for a doctor probe: the scoped DoctorSpec.env is a
|
|
6
|
+
* PATCH over the inherited process env with the same semantics runCapture
|
|
7
|
+
* applies when spawning (null/undefined deletes) — so the broken-install
|
|
8
|
+
* advisory diagnoses exactly the env the version probe spawned in (INV-067).
|
|
9
|
+
*/
|
|
10
|
+
export declare function probeEnv(patch?: Record<string, string | null | undefined>): NodeJS.ProcessEnv;
|
|
11
|
+
export declare function detectVersion(abortSignal?: AbortSignal, env?: Record<string, string | null | undefined>): Promise<string | null>;
|
|
12
|
+
/** The discover() dead-end for a missing CLI, advisory-enriched when the
|
|
13
|
+
* filesystem still holds evidence of a broken install. */
|
|
14
|
+
export declare function missingCliError(advisory: string | null, bin?: string): HarnessUnavailableError;
|
|
15
|
+
/** The doctor() unavailable report for a missing CLI; wording is unchanged
|
|
16
|
+
* when there is no advisory evidence. */
|
|
17
|
+
export declare function missingCliReport(advisory: string | null, bin?: string): ConformanceReport;
|
|
18
|
+
//# sourceMappingURL=missing-cli.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"missing-cli.d.ts","sourceRoot":"","sources":["../src/missing-cli.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAE1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE3D,eAAO,MAAM,GAAG,QAA6C,CAAC;AAE9D;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,MAAM,CAAC,UAAU,CAO7F;AAED,wBAAsB,aAAa,CACjC,WAAW,CAAC,EAAE,WAAW,EACzB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAC9C,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAaxB;AAOD;2DAC2D;AAC3D,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,GAAG,GAAE,MAAY,GAChB,uBAAuB,CAKzB;AAED;0CAC0C;AAC1C,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,GAAE,MAAY,GAAG,iBAAiB,CAkB9F"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { isAbsolute } from "node:path";
|
|
2
|
+
import { runCapture } from "@claudexor/core";
|
|
3
|
+
import { HarnessUnavailableError } from "@claudexor/core";
|
|
4
|
+
import { ConformanceReport as ConformanceReportSchema } from "@claudexor/schema";
|
|
5
|
+
export const BIN = process.env.CLAUDEXOR_CODEX_BIN || "codex";
|
|
6
|
+
/**
|
|
7
|
+
* Effective environment for a doctor probe: the scoped DoctorSpec.env is a
|
|
8
|
+
* PATCH over the inherited process env with the same semantics runCapture
|
|
9
|
+
* applies when spawning (null/undefined deletes) — so the broken-install
|
|
10
|
+
* advisory diagnoses exactly the env the version probe spawned in (INV-067).
|
|
11
|
+
*/
|
|
12
|
+
export function probeEnv(patch) {
|
|
13
|
+
const env = { ...process.env };
|
|
14
|
+
for (const [key, value] of Object.entries(patch ?? {})) {
|
|
15
|
+
if (value === undefined || value === null)
|
|
16
|
+
delete env[key];
|
|
17
|
+
else
|
|
18
|
+
env[key] = value;
|
|
19
|
+
}
|
|
20
|
+
return env;
|
|
21
|
+
}
|
|
22
|
+
export async function detectVersion(abortSignal, env) {
|
|
23
|
+
try {
|
|
24
|
+
const r = await runCapture(BIN, ["--version"], {
|
|
25
|
+
timeoutMs: 10_000,
|
|
26
|
+
abortSignal,
|
|
27
|
+
cancelSignal: "SIGTERM",
|
|
28
|
+
cancelKillDelayMs: 0,
|
|
29
|
+
...(env ? { env } : {}),
|
|
30
|
+
});
|
|
31
|
+
return r.stdout.trim() || `${BIN} (version unknown)`;
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
return null;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
/** An absolute override was never a PATH lookup — say what actually failed. */
|
|
38
|
+
function deadEnd(bin) {
|
|
39
|
+
return isAbsolute(bin) ? `codex override ${bin} is not runnable` : "codex not found on PATH";
|
|
40
|
+
}
|
|
41
|
+
/** The discover() dead-end for a missing CLI, advisory-enriched when the
|
|
42
|
+
* filesystem still holds evidence of a broken install. */
|
|
43
|
+
export function missingCliError(advisory, bin = BIN) {
|
|
44
|
+
const summary = isAbsolute(bin)
|
|
45
|
+
? `codex CLI override ${bin} is not runnable (fix CLAUDEXOR_CODEX_BIN)`
|
|
46
|
+
: "codex CLI not found on PATH (set CLAUDEXOR_CODEX_BIN to override)";
|
|
47
|
+
return new HarnessUnavailableError(`${summary}${advisory ? ` — ${advisory}` : ""}`);
|
|
48
|
+
}
|
|
49
|
+
/** The doctor() unavailable report for a missing CLI; wording is unchanged
|
|
50
|
+
* when there is no advisory evidence. */
|
|
51
|
+
export function missingCliReport(advisory, bin = BIN) {
|
|
52
|
+
return ConformanceReportSchema.parse({
|
|
53
|
+
harness_id: "codex",
|
|
54
|
+
status: "unavailable",
|
|
55
|
+
checks: [
|
|
56
|
+
{
|
|
57
|
+
id: "installed",
|
|
58
|
+
status: "fail",
|
|
59
|
+
detail: advisory ? `${deadEnd(bin)} — ${advisory}` : deadEnd(bin),
|
|
60
|
+
},
|
|
61
|
+
],
|
|
62
|
+
reasons: [
|
|
63
|
+
isAbsolute(bin)
|
|
64
|
+
? `codex CLI override ${bin} is not runnable (fix CLAUDEXOR_CODEX_BIN)`
|
|
65
|
+
: "codex CLI not found (install Codex or set CLAUDEXOR_CODEX_BIN)",
|
|
66
|
+
...(advisory ? [advisory] : []),
|
|
67
|
+
],
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=missing-cli.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"missing-cli.js","sourceRoot":"","sources":["../src/missing-cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,IAAI,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAGjF,MAAM,CAAC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,OAAO,CAAC;AAE9D;;;;;GAKG;AACH,MAAM,UAAU,QAAQ,CAAC,KAAiD;IACxE,MAAM,GAAG,GAAsB,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAClD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;QACvD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;;YACtD,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACxB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,WAAyB,EACzB,GAA+C;IAE/C,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,EAAE;YAC7C,SAAS,EAAE,MAAM;YACjB,WAAW;YACX,YAAY,EAAE,SAAS;YACvB,iBAAiB,EAAE,CAAC;YACpB,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxB,CAAC,CAAC;QACH,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,GAAG,oBAAoB,CAAC;IACvD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,+EAA+E;AAC/E,SAAS,OAAO,CAAC,GAAW;IAC1B,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,kBAAkB,GAAG,kBAAkB,CAAC,CAAC,CAAC,yBAAyB,CAAC;AAC/F,CAAC;AAED;2DAC2D;AAC3D,MAAM,UAAU,eAAe,CAC7B,QAAuB,EACvB,MAAc,GAAG;IAEjB,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC;QAC7B,CAAC,CAAC,sBAAsB,GAAG,4CAA4C;QACvE,CAAC,CAAC,mEAAmE,CAAC;IACxE,OAAO,IAAI,uBAAuB,CAAC,GAAG,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACtF,CAAC;AAED;0CAC0C;AAC1C,MAAM,UAAU,gBAAgB,CAAC,QAAuB,EAAE,MAAc,GAAG;IACzE,OAAO,uBAAuB,CAAC,KAAK,CAAC;QACnC,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,aAAa;QACrB,MAAM,EAAE;YACN;gBACE,EAAE,EAAE,WAAW;gBACf,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;aAClE;SACF;QACD,OAAO,EAAE;YACP,UAAU,CAAC,GAAG,CAAC;gBACb,CAAC,CAAC,sBAAsB,GAAG,4CAA4C;gBACvE,CAAC,CAAC,gEAAgE;YACpE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SAChC;KACF,CAAC,CAAC;AACL,CAAC"}
|
package/dist/parse.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type HarnessEvent } from "@claudexor/schema";
|
|
2
2
|
type Json = any;
|
|
3
3
|
/**
|
|
4
4
|
* Per-run finality state: codex's `exec --json` stream has NO typed marker of
|
|
@@ -10,6 +10,17 @@ type Json = any;
|
|
|
10
10
|
*/
|
|
11
11
|
export interface CodexParseState {
|
|
12
12
|
lastAgentMessage?: string;
|
|
13
|
+
/**
|
|
14
|
+
* D-16 / codex #19816: true when THIS run armed a WorkReport output-schema
|
|
15
|
+
* envelope (`--output-schema` present). codex applies the schema to
|
|
16
|
+
* INTERMEDIATE agent messages too, not just the final one, so a mid-run
|
|
17
|
+
* narration arrives as the raw `{work_report, output}` envelope. When set, an
|
|
18
|
+
* intermediate agent message that typed-matches the envelope is unwrapped to
|
|
19
|
+
* its `output` (or suppressed) for the VISIBLE stream — never surfaced raw.
|
|
20
|
+
* The FINAL message keeps the raw envelope so the orchestrator's unwrap runs
|
|
21
|
+
* unchanged.
|
|
22
|
+
*/
|
|
23
|
+
envelopeActive?: boolean;
|
|
13
24
|
}
|
|
14
25
|
/**
|
|
15
26
|
* Map a single Codex `exec --json` JSONL object to normalized HarnessEvents.
|
package/dist/parse.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../src/parse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../src/parse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,YAAY,EAAgB,MAAM,mBAAmB,CAAC;AAGhF,KAAK,IAAI,GAAG,GAAG,CAAC;AAUhB;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe;IAC9B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;;;;;OASG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAqCD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,IAAI,EACT,SAAS,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,eAAe,GACtB,YAAY,EAAE,GAAG,IAAI,CA+TvB"}
|
package/dist/parse.js
CHANGED
|
@@ -1,9 +1,49 @@
|
|
|
1
|
+
import { WorkReport } from "@claudexor/schema";
|
|
1
2
|
import { nowIso, redactSecrets } from "@claudexor/util";
|
|
2
3
|
// Native codex error phrasing that indicates a rate-limit / quota condition.
|
|
3
4
|
// This regex lives in the ADAPTER (native-output translation is its job), not
|
|
4
5
|
// in the budget/governance layer.
|
|
5
6
|
const CODEX_RATE_LIMIT_RE = /rate.?limit|usage.?limit|usagelimitexceeded|too many requests|quota[ _-]?(?:exceeded|exhausted|reached)|(?:http|status|code)[ :/]?429|429 too many/i;
|
|
6
7
|
const CODEX_TRANSIENT_RE = /stream disconnected|failed to lookup address information|nodename nor servname|eai_again|enotfound|econnreset|etimedout|temporar(?:y|ily) unavailable|network/i;
|
|
8
|
+
/**
|
|
9
|
+
* Typed detection of the D-16 `{work_report, output}` transport envelope in an
|
|
10
|
+
* intermediate codex agent message (codex #19816). Returns:
|
|
11
|
+
* - `undefined`: the text is NOT a WorkReport envelope — display it verbatim.
|
|
12
|
+
* - a string: the envelope's `output` narration — display it UNWRAPPED.
|
|
13
|
+
* - `null`: an envelope whose `output` is not a plain string (structured/partial)
|
|
14
|
+
* — SUPPRESS it from the visible stream rather than leak raw JSON.
|
|
15
|
+
*
|
|
16
|
+
* The check is TYPED (INV-049), not a prose/regex match: the text must parse to
|
|
17
|
+
* a JSON object with EXACTLY `work_report` + `output`, and `work_report` must
|
|
18
|
+
* satisfy the WorkReport schema. This never mutates the raw `lastAgentMessage`
|
|
19
|
+
* the turn finalizes — the orchestrator still un-nests the FINAL envelope.
|
|
20
|
+
*/
|
|
21
|
+
function detectEnvelopeOutput(text) {
|
|
22
|
+
const trimmed = text.trim();
|
|
23
|
+
// Fast reject: an envelope is a JSON object literal.
|
|
24
|
+
if (trimmed.length === 0 || trimmed[0] !== "{")
|
|
25
|
+
return undefined;
|
|
26
|
+
let parsed;
|
|
27
|
+
try {
|
|
28
|
+
parsed = JSON.parse(trimmed);
|
|
29
|
+
}
|
|
30
|
+
catch {
|
|
31
|
+
return undefined;
|
|
32
|
+
}
|
|
33
|
+
if (!parsed || typeof parsed !== "object" || Array.isArray(parsed))
|
|
34
|
+
return undefined;
|
|
35
|
+
const obj = parsed;
|
|
36
|
+
const keys = Object.keys(obj);
|
|
37
|
+
if (keys.length !== 2 || !("work_report" in obj) || !("output" in obj))
|
|
38
|
+
return undefined;
|
|
39
|
+
if (!WorkReport.safeParse(obj["work_report"]).success)
|
|
40
|
+
return undefined;
|
|
41
|
+
const output = obj["output"];
|
|
42
|
+
// A string `output` is the no-caller-schema narration codex wraps: show it
|
|
43
|
+
// unwrapped. A non-string `output` is a caller-schema partial we cannot safely
|
|
44
|
+
// render as progress text — suppress rather than leak the envelope JSON.
|
|
45
|
+
return typeof output === "string" ? output : null;
|
|
46
|
+
}
|
|
7
47
|
/**
|
|
8
48
|
* Map a single Codex `exec --json` JSONL object to normalized HarnessEvents.
|
|
9
49
|
* Codex event names: thread.*, turn.*, item.started|updated|completed, error.
|
|
@@ -44,14 +84,35 @@ export function parseCodexEvent(obj, sessionId, state) {
|
|
|
44
84
|
// (vendor semantics — see CodexParseState). Emitted as a `final` message
|
|
45
85
|
// so the engine takes it verbatim; the narration copy already streamed.
|
|
46
86
|
if (state?.lastAgentMessage) {
|
|
47
|
-
|
|
87
|
+
const raw = state.lastAgentMessage;
|
|
88
|
+
const finalEvent = {
|
|
48
89
|
type: "message",
|
|
49
90
|
session_id: sessionId,
|
|
50
91
|
ts,
|
|
51
|
-
text:
|
|
92
|
+
text: raw,
|
|
52
93
|
final: true,
|
|
53
94
|
payload: { final_source: "last_agent_message" },
|
|
54
|
-
}
|
|
95
|
+
};
|
|
96
|
+
// codex #19816 / QA-009: with an armed WorkReport envelope, the FINAL agent
|
|
97
|
+
// message is itself the raw `{work_report, output}` envelope. When its
|
|
98
|
+
// `output` is a plain string, emit the UNWRAPPED output as the final's
|
|
99
|
+
// DISPLAY text — so the answer bubble and the reducer's twin-removal see the
|
|
100
|
+
// SAME unwrapped text the intermediate visible copy carried (the raw-vs-
|
|
101
|
+
// unwrapped mismatch was the QA-009 twin regression) — and carry the RAW
|
|
102
|
+
// envelope on a TYPED payload field so the orchestrator's downstream unwrap
|
|
103
|
+
// still reads machine truth (display truth + machine truth, both typed, no
|
|
104
|
+
// double-unwrap). A non-string / non-envelope final keeps its raw text: its
|
|
105
|
+
// intermediate copy was suppressed (no visible twin), no envelope field is
|
|
106
|
+
// attached, and `answer.machineText()` falls back to that raw text so the
|
|
107
|
+
// orchestrator un-nests exactly as before.
|
|
108
|
+
if (state.envelopeActive) {
|
|
109
|
+
const display = detectEnvelopeOutput(raw);
|
|
110
|
+
if (typeof display === "string") {
|
|
111
|
+
finalEvent.text = display;
|
|
112
|
+
finalEvent.payload = { final_source: "last_agent_message", work_report_envelope: raw };
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
out.push(finalEvent);
|
|
55
116
|
state.lastAgentMessage = undefined;
|
|
56
117
|
}
|
|
57
118
|
return out;
|
|
@@ -182,8 +243,22 @@ export function parseCodexEvent(obj, sessionId, state) {
|
|
|
182
243
|
switch (item.type) {
|
|
183
244
|
case "agent_message": {
|
|
184
245
|
const text = String(item.text ?? "");
|
|
246
|
+
// Keep the RAW text as the turn's finality candidate: the orchestrator
|
|
247
|
+
// un-nests the FINAL `{work_report, output}` envelope downstream, so the
|
|
248
|
+
// final message must stay raw. Only the VISIBLE intermediate copy below
|
|
249
|
+
// is unwrapped/suppressed.
|
|
185
250
|
if (state && text.trim())
|
|
186
251
|
state.lastAgentMessage = text;
|
|
252
|
+
// codex #19816: with `--output-schema` armed, an intermediate agent
|
|
253
|
+
// message is itself the envelope. Unwrap it to its `output` for display,
|
|
254
|
+
// or suppress a non-string `output` — never surface raw `{work_report}`.
|
|
255
|
+
if (state?.envelopeActive) {
|
|
256
|
+
const display = detectEnvelopeOutput(text);
|
|
257
|
+
if (display === null)
|
|
258
|
+
return []; // suppressed: partial/structured envelope
|
|
259
|
+
if (display !== undefined)
|
|
260
|
+
return [{ type: "message", session_id: sessionId, ts, text: display }];
|
|
261
|
+
}
|
|
187
262
|
return [{ type: "message", session_id: sessionId, ts, text }];
|
|
188
263
|
}
|
|
189
264
|
case "reasoning":
|
|
@@ -258,6 +333,12 @@ export function parseCodexEvent(obj, sessionId, state) {
|
|
|
258
333
|
error_summary: failed
|
|
259
334
|
? summarizeCodexOutput(item.error) || "web search failed"
|
|
260
335
|
: undefined,
|
|
336
|
+
// QA-042: codex `exec --json` web_search/open_page items carry NO
|
|
337
|
+
// typed fetch outcome — a `completed` item can hide a 502. So a
|
|
338
|
+
// non-failed item is DISPATCH strength only (the call completed),
|
|
339
|
+
// never proof of retrieved content. Only an explicit `failed`
|
|
340
|
+
// status is a typed retrieval failure.
|
|
341
|
+
web_retrieval: failed ? "failed" : "dispatched",
|
|
261
342
|
},
|
|
262
343
|
payload: { status: item.status, item_id: item.id },
|
|
263
344
|
},
|