@dzhechkov/harness-core 0.8.5 → 0.8.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 (50) hide show
  1. package/.dz-manifest.json +49 -49
  2. package/README.md +6 -1
  3. package/dist/feature-adr-checkpoints.d.ts +11 -2
  4. package/dist/feature-adr-checkpoints.d.ts.map +1 -1
  5. package/dist/feature-adr-checkpoints.js +37 -2
  6. package/dist/feature-adr-checkpoints.js.map +1 -1
  7. package/dist/feature-adr-routing.d.ts +56 -21
  8. package/dist/feature-adr-routing.d.ts.map +1 -1
  9. package/dist/feature-adr-routing.js +187 -58
  10. package/dist/feature-adr-routing.js.map +1 -1
  11. package/dist/guard.d.ts +25 -0
  12. package/dist/guard.d.ts.map +1 -1
  13. package/dist/guard.js +59 -1
  14. package/dist/guard.js.map +1 -1
  15. package/dist/index.d.ts +2 -2
  16. package/dist/index.d.ts.map +1 -1
  17. package/dist/index.js +1 -1
  18. package/dist/index.js.map +1 -1
  19. package/dist/loop-blobs.generated.js +8 -8
  20. package/dist/loop-blobs.generated.js.map +1 -1
  21. package/dist/loop-plan.d.ts +13 -1
  22. package/dist/loop-plan.d.ts.map +1 -1
  23. package/dist/loop-plan.js +15 -1
  24. package/dist/loop-plan.js.map +1 -1
  25. package/dist/loop-render.d.ts.map +1 -1
  26. package/dist/loop-render.js +51 -6
  27. package/dist/loop-render.js.map +1 -1
  28. package/dist/loop-trace.d.ts +20 -1
  29. package/dist/loop-trace.d.ts.map +1 -1
  30. package/dist/loop-trace.js +83 -1
  31. package/dist/loop-trace.js.map +1 -1
  32. package/dist/model-recommender.d.ts +8 -0
  33. package/dist/model-recommender.d.ts.map +1 -1
  34. package/dist/model-recommender.js +31 -4
  35. package/dist/model-recommender.js.map +1 -1
  36. package/dist/workflow-run.d.ts.map +1 -1
  37. package/dist/workflow-run.js +18 -12
  38. package/dist/workflow-run.js.map +1 -1
  39. package/package.json +18 -15
  40. package/sbom.json +48 -48
  41. package/src/feature-adr-checkpoints.ts +38 -2
  42. package/src/feature-adr-routing.ts +217 -54
  43. package/src/guard.ts +79 -1
  44. package/src/index.ts +2 -1
  45. package/src/loop-blobs.generated.ts +8 -8
  46. package/src/loop-plan.ts +36 -3
  47. package/src/loop-render.ts +50 -6
  48. package/src/loop-trace.ts +91 -2
  49. package/src/model-recommender.ts +35 -4
  50. package/src/workflow-run.ts +18 -11
@@ -14,8 +14,8 @@
14
14
  *
15
15
  * The load-bearing property: a model that WRITES code must not also SELF-QE.
16
16
  * When `args.models.qe` is unset, the QE stage is auto-routed to the OTHER
17
- * family than the resolved coder (codex-coder → Claude `opus`; Claude-coder →
18
- * `codex:<top>:high`, or `opus` if codex is unavailable — never a block).
17
+ * family than the resolved coder (codex-coder → Claude `sonnet`; Claude-coder →
18
+ * the Codex-budget cell, or `opus` if codex is unavailable — never a block).
19
19
  *
20
20
  * DESIGN CONSTRAINT — the Workflow parser is STRICTER than `node --check`
21
21
  * (no nested template literals, no inline `cond ? agent() : null` in arrays).
@@ -71,11 +71,15 @@ export interface RoutingEnv {
71
71
  */
72
72
  readonly usageOverride?: boolean;
73
73
  /**
74
- * Per-stage reasoning for the usage-override spec (merged OVER {@link OVERRIDE_REASONING}).
75
- * `args.usageReasoning` — stage → `'high'|'xhigh'|…`; a single stage may be overridden without
74
+ * Per-stage reasoning for the usage-override spec (merged OVER {@link STAGE_EFFORT}).
75
+ * `args.usageReasoning` — stage → a supported reasoning level; a single stage may be overridden without
76
76
  * touching the others.
77
77
  */
78
78
  readonly usageReasoning?: Record<string, string>;
79
+ /** Raw `args.budget`: a named preset or a per-family object. */
80
+ readonly budget?: unknown;
81
+ /** The productive family for design + code; absent defaults to Claude. */
82
+ readonly primary?: 'claude' | 'codex';
79
83
  }
80
84
  /** A probe reading. `null` on a pct ⇔ that limit is unconfigured (unknown — never a guess). */
81
85
  export interface UsageSignal {
@@ -94,17 +98,16 @@ export interface UsageDecision {
94
98
  readonly action: UsageAction;
95
99
  }
96
100
  /**
97
- * Per-stage reasoning applied under the usage override (LOCKED L-4, arch §4.1 verbatim):
98
- * design/code/plan stages `xhigh`; router/qe/fleet `high`. A pure DATA table (not control
99
- * flow); user-overridable via `env.usageReasoning`. An unknown stage falls back to `'high'`.
100
- */
101
- export declare const OVERRIDE_REASONING: Record<string, 'high' | 'xhigh'>;
102
- /**
103
- * The gpt-5.6-ready TOP codex-id pick — SHARED by the cross-model QE default and the usage
104
- * override so adding an id to {@link KNOWN_CODEX} (e.g. `gpt-5.7`) retargets BOTH with zero
105
- * control-flow diff (AC-3). Pinned `CODEX_MODEL` when ≠ `'auto'`; else the last non-`auto` key of
106
- * `KNOWN_CODEX`.
101
+ * GPT-5.6 reasoning ladder used by the routing tables. The model default is `medium`; `xhigh`
102
+ * and `max` stay valid explicit values but are absent from shipped defaults until evals justify them.
107
103
  */
104
+ export type ReasoningLevel = 'none' | 'low' | 'medium' | 'high' | 'xhigh' | 'max';
105
+ export declare const STAGE_EFFORT: {
106
+ override: Record<string, ReasoningLevel>;
107
+ };
108
+ /** One-release compatibility alias for existing public imports. */
109
+ export declare const OVERRIDE_REASONING: Readonly<Record<string, ReasoningLevel>>;
110
+ /** The flagship Codex id, independent of the spellability allowlist's insertion order. */
108
111
  export declare function topCodexId(env: RoutingEnv): string;
109
112
  /**
110
113
  * The PURE hysteresis core (the load-bearing safety property, AC-1). Given the previous override
@@ -128,9 +131,29 @@ export declare function topCodexId(env: RoutingEnv): string;
128
131
  export declare function decideUsageAction(prevOverride: boolean, signal: UsageSignal | null, threshold: number): UsageDecision;
129
132
  /** Known codex ids. Adding a new id (e.g. `'gpt-5.7'`) is a DATA-ONLY change. */
130
133
  export declare const KNOWN_CODEX: Record<string, number>;
134
+ export type CodexTier = 'flagship' | 'workhorse' | 'high-volume';
135
+ /**
136
+ * Capability tiers are routing data, separate from {@link KNOWN_CODEX}'s spellability role.
137
+ * The allowlist is not an availability check — probe every id before every run
138
+ * (`codex exec -m <id> "Reply with exactly: OK"`); ids drift in both directions on a
139
+ * timescale of days (probed 2026-08-18: 3 ids HTTP 400; probed 2026-08-29: all 3 exit 0).
140
+ */
141
+ export declare const CODEX_TIERS: Record<CodexTier, string>;
142
+ export declare function codexIdForTier(tier: CodexTier, env: RoutingEnv): string;
143
+ export type BudgetLevel = 'normal' | 'eco';
144
+ export interface BudgetAxis {
145
+ readonly claude: BudgetLevel;
146
+ readonly codex: BudgetLevel;
147
+ }
148
+ export declare const BUDGET_PRESETS: Record<'normal' | 'eco' | 'hybrid', BudgetAxis>;
149
+ export declare function resolveBudgetMode(raw: unknown): BudgetAxis;
150
+ export declare function budgetPresetName(axis: BudgetAxis): 'normal' | 'eco' | 'hybrid' | null;
131
151
  /** The Claude model names the Workflow runtime accepts as `agent()` `model`. */
132
152
  export declare const CLAUDE_NAMES: Record<string, number>;
133
- /** The codex-companion `--effort` vocabulary; a spec's `<reasoning>` is clamped to this (unknown ⇒ 'high'). */
153
+ /**
154
+ * The codex-companion `--effort` vocabulary. `minimal` remains temporarily for compatibility
155
+ * until a live companion probe establishes whether it can be retired; `max` is part of GPT-5.6's ladder.
156
+ */
134
157
  export declare const VALID_REASONING: Record<string, number>;
135
158
  /**
136
159
  * The proven DEFAULT TABLE, applied only when the user opts into routing.
@@ -138,6 +161,14 @@ export declare const VALID_REASONING: Record<string, number>;
138
161
  * the cross-model rule), not fixed model names.
139
162
  */
140
163
  export declare const DEFAULT_MODELS: Record<string, string | null>;
164
+ type FamilyRoutingTables = Record<'claude' | 'codex', Record<BudgetLevel, Partial<Record<string, string | null>>>>;
165
+ /** Four family half-tables; presets compose the Claude and Codex halves independently. */
166
+ export declare const ROUTING_TABLES: Record<'claude' | 'codex', FamilyRoutingTables>;
167
+ export declare function budgetTable(primary: 'claude' | 'codex', mode: BudgetAxis, env: RoutingEnv): Partial<Record<string, string | null>>;
168
+ /** Optional Claude precision review after A-normal's recall-oriented Sonnet QE. */
169
+ export declare function qePrecisionPassSpec(primary: 'claude' | 'codex', budget: BudgetAxis, tier: 'S' | 'M' | 'L' | 'XL', _env: RoutingEnv): string | null;
170
+ /** Build/test-time guard for the matrix's load-bearing cross-family property. */
171
+ export declare function assertCrossFamilyQe(codeSpec: string | null, qeSpec: string | null): void;
141
172
  /**
142
173
  * Turn a compact model SPEC into `agent()` opts.
143
174
  * - falsy → `{}` (session-inherited — the BC path)
@@ -171,14 +202,16 @@ export declare function coderIsCodex(env: RoutingEnv): boolean;
171
202
  /**
172
203
  * The CROSS-MODEL QE default (load-bearing). Called only when `MODELS.qe` is
173
204
  * unset. Resolves to the OTHER family than the coder:
174
- * - coder is codex → `'opus'` (Claude reviews codex's code)
175
- * - coder is Claude → codex-available ? `'codex:<top>:high'` : `'opus'` (never block)
176
- * `<top>` = `CODEX_MODEL` when pinned (≠'auto'), else the top `KNOWN_CODEX` id.
205
+ * - coder is codex → `'sonnet'` (the recall-oriented Claude reviewer)
206
+ * - coder is Claude → the Codex-budget cell (`sol:high` or `terra:medium`),
207
+ * or `'opus'` when Codex is unavailable (never block)
208
+ * A pinned `CODEX_MODEL` still outranks the tier selected by the budget table.
177
209
  */
210
+ export declare function resolveQeSpecForCoder(coderCodex: boolean, env: RoutingEnv): string;
178
211
  export declare function resolveQeSpec(env: RoutingEnv): string;
179
212
  /**
180
- * Whether the caller opted into routing at all. When FALSE (no `args.models`,
181
- * no codex knobs), every Claude stage resolves to `{}` → byte-identical to today.
213
+ * Whether the caller opted into routing at all. When FALSE (no axes, `args.models`,
214
+ * or Codex knobs), every Claude stage resolves to `{}` → byte-identical to today.
182
215
  */
183
216
  export declare function routingRequested(env: RoutingEnv): boolean;
184
217
  /**
@@ -198,7 +231,7 @@ export declare function qeShouldUseCodex(env: RoutingEnv): boolean;
198
231
  * Resolve a stage to its `agent()` opts fragment.
199
232
  * 1. explicit `MODELS[stage]` wins
200
233
  * 2. else if the user did NOT opt into routing → `{}` (byte-identical BC path)
201
- * 3. else the DEFAULT TABLE fills the gap
234
+ * 3. else the primary × per-family-budget table fills the gap
202
235
  * 4. `code`/`qe` `null` sentinels resolve via the coder / cross-model rules
203
236
  */
204
237
  export declare function resolveStageModel(stage: string, env: RoutingEnv): StageOpts;
@@ -640,6 +673,7 @@ export interface CodexReviewCommandResult {
640
673
  */
641
674
  export declare function codexExecCommand(input: {
642
675
  readonly modelId?: string | null;
676
+ readonly reasoning?: string | null;
643
677
  readonly prompt?: string | null;
644
678
  readonly timeoutBin?: string | null;
645
679
  readonly timeoutSeconds?: number | null;
@@ -1089,4 +1123,5 @@ export declare function changeSetProbeCmd(opts: {
1089
1123
  paths: readonly string[];
1090
1124
  quote: (s: string) => string;
1091
1125
  }): string | null;
1126
+ export {};
1092
1127
  //# sourceMappingURL=feature-adr-routing.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"feature-adr-routing.d.ts","sourceRoot":"","sources":["../src/feature-adr-routing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feature-adr-routing.d.ts","sourceRoot":"","sources":["../src/feature-adr-routing.ts"],"names":[],"mappings":"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"}
@@ -14,8 +14,8 @@
14
14
  *
15
15
  * The load-bearing property: a model that WRITES code must not also SELF-QE.
16
16
  * When `args.models.qe` is unset, the QE stage is auto-routed to the OTHER
17
- * family than the resolved coder (codex-coder → Claude `opus`; Claude-coder →
18
- * `codex:<top>:high`, or `opus` if codex is unavailable — never a block).
17
+ * family than the resolved coder (codex-coder → Claude `sonnet`; Claude-coder →
18
+ * the Codex-budget cell, or `opus` if codex is unavailable — never a block).
19
19
  *
20
20
  * DESIGN CONSTRAINT — the Workflow parser is STRICTER than `node --check`
21
21
  * (no nested template literals, no inline `cond ? agent() : null` in arrays).
@@ -29,40 +29,27 @@
29
29
  /** Blob version stamp read by scripts/gen-loop-blobs.mjs (feature loop-designer, ADR-004) — the
30
30
  * ONLY loop-designer change to this canonical file; bump when any blob-exported semantic changes. */
31
31
  export const BLOB_VERSION = '1.0.0';
32
- /**
33
- * Per-stage reasoning applied under the usage override (LOCKED L-4, arch §4.1 verbatim):
34
- * design/code/plan stages ⇒ `xhigh`; router/qe/fleet ⇒ `high`. A pure DATA table (not control
35
- * flow); user-overridable via `env.usageReasoning`. An unknown stage falls back to `'high'`.
36
- */
37
- export const OVERRIDE_REASONING = {
38
- router: 'high',
39
- requirements: 'xhigh',
40
- research: 'xhigh',
41
- adr: 'xhigh',
42
- ideation: 'xhigh',
43
- ddd: 'xhigh',
44
- architecture: 'xhigh',
45
- plan: 'xhigh',
46
- code: 'xhigh',
47
- qe: 'high',
48
- fleet: 'high',
49
- };
50
- /**
51
- * The gpt-5.6-ready TOP codex-id pick — SHARED by the cross-model QE default and the usage
52
- * override so adding an id to {@link KNOWN_CODEX} (e.g. `gpt-5.7`) retargets BOTH with zero
53
- * control-flow diff (AC-3). Pinned `CODEX_MODEL` when ≠ `'auto'`; else the last non-`auto` key of
54
- * `KNOWN_CODEX`.
55
- */
32
+ export const STAGE_EFFORT = { override: {
33
+ router: 'medium',
34
+ requirements: 'medium',
35
+ research: 'medium',
36
+ adr: 'high',
37
+ ideation: 'medium',
38
+ ddd: 'high',
39
+ architecture: 'high',
40
+ plan: 'high',
41
+ code: 'medium',
42
+ qe: 'high',
43
+ fleet: 'medium',
44
+ } };
45
+ /** One-release compatibility alias for existing public imports. */
46
+ // Frozen (QE round-1 F10): the alias exports the SAME object as the live effort table, so a
47
+ // consumer mutating the compatibility alias would silently mutate shipped routing. Freezing keeps
48
+ // the read-compatibility promise while making any such write throw loudly in strict mode.
49
+ export const OVERRIDE_REASONING = Object.freeze(STAGE_EFFORT.override);
50
+ /** The flagship Codex id, independent of the spellability allowlist's insertion order. */
56
51
  export function topCodexId(env) {
57
- let top = env.CODEX_MODEL;
58
- if (top === 'auto') {
59
- const ids = Object.keys(KNOWN_CODEX);
60
- for (let i = 0; i < ids.length; i++) {
61
- if (ids[i] !== 'auto')
62
- top = ids[i] || top;
63
- }
64
- }
65
- return top;
52
+ return env.CODEX_MODEL !== 'auto' ? env.CODEX_MODEL : CODEX_TIERS.flagship;
66
53
  }
67
54
  /**
68
55
  * The PURE hysteresis core (the load-bearing safety property, AC-1). Given the previous override
@@ -104,10 +91,69 @@ export function decideUsageAction(prevOverride, signal, threshold) {
104
91
  // ── Data tables (data-only extensibility — gpt-5.6-ready) ───────────────────
105
92
  /** Known codex ids. Adding a new id (e.g. `'gpt-5.7'`) is a DATA-ONLY change. */
106
93
  export const KNOWN_CODEX = { auto: 1, 'gpt-5.5': 1, 'gpt-5.6': 1, 'gpt-5.6-luna': 1, 'gpt-5.6-terra': 1, 'gpt-5.6-sol': 1 };
94
+ /**
95
+ * Capability tiers are routing data, separate from {@link KNOWN_CODEX}'s spellability role.
96
+ * The allowlist is not an availability check — probe every id before every run
97
+ * (`codex exec -m <id> "Reply with exactly: OK"`); ids drift in both directions on a
98
+ * timescale of days (probed 2026-08-18: 3 ids HTTP 400; probed 2026-08-29: all 3 exit 0).
99
+ */
100
+ export const CODEX_TIERS = {
101
+ flagship: 'gpt-5.6-sol',
102
+ workhorse: 'gpt-5.6-terra',
103
+ 'high-volume': 'gpt-5.6-luna',
104
+ };
105
+ export function codexIdForTier(tier, env) {
106
+ return env.CODEX_MODEL !== 'auto' ? env.CODEX_MODEL : CODEX_TIERS[tier];
107
+ }
108
+ export const BUDGET_PRESETS = {
109
+ normal: { claude: 'normal', codex: 'normal' },
110
+ eco: { claude: 'eco', codex: 'eco' },
111
+ hybrid: { claude: 'eco', codex: 'normal' },
112
+ };
113
+ export function resolveBudgetMode(raw) {
114
+ if (raw === undefined)
115
+ return BUDGET_PRESETS.normal;
116
+ if (typeof raw === 'string') {
117
+ const preset = BUDGET_PRESETS[raw];
118
+ if (!preset)
119
+ throw new RangeError('budget: unknown preset "' + raw + '" — valid: normal|eco|hybrid');
120
+ return preset;
121
+ }
122
+ if (raw && typeof raw === 'object') {
123
+ const value = raw;
124
+ for (const key of Object.keys(value)) {
125
+ if (key !== 'claude' && key !== 'codex') {
126
+ throw new RangeError('budget: unknown family key "' + key + '" — valid: claude|codex');
127
+ }
128
+ }
129
+ for (const key of ['claude', 'codex']) {
130
+ const level = value[key];
131
+ if (level !== undefined && level !== 'normal' && level !== 'eco') {
132
+ throw new RangeError('budget.' + key + ': unknown level "' + level + '" — valid: normal|eco');
133
+ }
134
+ }
135
+ return {
136
+ claude: value.claude || 'normal',
137
+ codex: value.codex || 'normal',
138
+ };
139
+ }
140
+ throw new RangeError('budget: expected a preset name or {claude,codex} object, got ' + typeof raw);
141
+ }
142
+ export function budgetPresetName(axis) {
143
+ for (const name of ['normal', 'eco', 'hybrid']) {
144
+ const preset = BUDGET_PRESETS[name];
145
+ if (preset.claude === axis.claude && preset.codex === axis.codex)
146
+ return name;
147
+ }
148
+ return null;
149
+ }
107
150
  /** The Claude model names the Workflow runtime accepts as `agent()` `model`. */
108
151
  export const CLAUDE_NAMES = { fable: 1, opus: 1, sonnet: 1, haiku: 1 };
109
- /** The codex-companion `--effort` vocabulary; a spec's `<reasoning>` is clamped to this (unknown ⇒ 'high'). */
110
- export const VALID_REASONING = { none: 1, minimal: 1, low: 1, medium: 1, high: 1, xhigh: 1 };
152
+ /**
153
+ * The codex-companion `--effort` vocabulary. `minimal` remains temporarily for compatibility
154
+ * until a live companion probe establishes whether it can be retired; `max` is part of GPT-5.6's ladder.
155
+ */
156
+ export const VALID_REASONING = { none: 1, minimal: 1, low: 1, medium: 1, high: 1, xhigh: 1, max: 1 };
111
157
  /**
112
158
  * The proven DEFAULT TABLE, applied only when the user opts into routing.
113
159
  * `code`/`qe` are `null` SENTINELS: their defaults are DERIVED (the coder knob /
@@ -126,6 +172,68 @@ export const DEFAULT_MODELS = {
126
172
  qe: null,
127
173
  fleet: 'sonnet',
128
174
  };
175
+ /** Four family half-tables; presets compose the Claude and Codex halves independently. */
176
+ export const ROUTING_TABLES = {
177
+ claude: {
178
+ claude: {
179
+ normal: { router: 'sonnet', requirements: 'sonnet', research: 'sonnet', adr: 'fable', ideation: 'sonnet', ddd: 'fable', architecture: 'fable', plan: 'opus', code: 'sonnet', fleet: 'sonnet' },
180
+ eco: { router: 'sonnet', requirements: 'sonnet', research: 'sonnet', adr: 'opus', ideation: 'sonnet', ddd: 'opus', architecture: 'opus', plan: 'sonnet', code: 'sonnet', fleet: 'sonnet' },
181
+ },
182
+ codex: { normal: {}, eco: {} },
183
+ },
184
+ codex: {
185
+ claude: {
186
+ normal: { router: 'sonnet', qe: 'sonnet', fleet: 'sonnet' },
187
+ eco: { router: 'sonnet', qe: 'sonnet', fleet: 'sonnet' },
188
+ },
189
+ codex: { normal: {}, eco: {} },
190
+ },
191
+ };
192
+ function codexCell(tier, effort, env) {
193
+ return 'codex:' + codexIdForTier(tier, env) + ':' + effort;
194
+ }
195
+ export function budgetTable(primary, mode, env) {
196
+ const claudeHalf = ROUTING_TABLES[primary].claude[mode.claude];
197
+ let codexHalf;
198
+ if (primary === 'claude') {
199
+ const qeSpec = mode.codex === 'normal'
200
+ ? codexCell('flagship', 'high', env)
201
+ : codexCell('workhorse', 'medium', env);
202
+ codexHalf = { ...ROUTING_TABLES.claude.codex[mode.codex], qe: env.codexAvailable === false ? 'opus' : qeSpec };
203
+ }
204
+ else {
205
+ const normal = mode.codex === 'normal';
206
+ const design = codexCell(normal ? 'flagship' : 'workhorse', normal ? 'high' : 'medium', env);
207
+ codexHalf = {
208
+ requirements: design,
209
+ research: design,
210
+ adr: design,
211
+ ideation: design,
212
+ ddd: design,
213
+ architecture: design,
214
+ plan: codexCell(normal ? 'flagship' : 'workhorse', normal ? 'high' : 'low', env),
215
+ code: codexCell(normal ? 'flagship' : 'workhorse', 'medium', env),
216
+ };
217
+ }
218
+ return { ...claudeHalf, ...codexHalf };
219
+ }
220
+ /** Optional Claude precision review after A-normal's recall-oriented Sonnet QE. */
221
+ export function qePrecisionPassSpec(primary, budget, tier, _env) {
222
+ if (primary !== 'codex')
223
+ return null;
224
+ if (budget.claude !== 'normal')
225
+ return null;
226
+ if (tier !== 'L' && tier !== 'XL')
227
+ return null;
228
+ return 'opus';
229
+ }
230
+ /** Build/test-time guard for the matrix's load-bearing cross-family property. */
231
+ export function assertCrossFamilyQe(codeSpec, qeSpec) {
232
+ const fam = (s) => (s && String(s).split(':')[0] === 'codex') ? 'codex' : 'claude';
233
+ if (fam(codeSpec) === fam(qeSpec)) {
234
+ throw new Error('cross-family QE violated: code=' + codeSpec + ' qe=' + qeSpec);
235
+ }
236
+ }
129
237
  // ── Pure resolvers (byte-equivalent to the workflow's inline block) ──────────
130
238
  /**
131
239
  * Turn a compact model SPEC into `agent()` opts.
@@ -157,11 +265,8 @@ export function specToOpts(spec, env) {
157
265
  id = env.CODEX_MODEL;
158
266
  }
159
267
  let reasoning = parts[2] || 'high';
160
- // Clamp to the codex-companion --effort vocabulary so a bad token (e.g. `codex:gpt-5.6:banana`)
161
- // can't silently reach the runtime as `--effort banana` (QE LOW). Unknown ⇒ 'high'.
162
268
  if (!VALID_REASONING[reasoning]) {
163
- log('models: unknown reasoning ' + reasoning + ' — using high');
164
- reasoning = 'high';
269
+ throw new RangeError('models: invalid reasoning "' + reasoning + '"valid: ' + Object.keys(VALID_REASONING).join('|'));
165
270
  }
166
271
  return { agentType: 'codex:codex-rescue', codexModel: id, _reasoning: reasoning };
167
272
  }
@@ -188,34 +293,43 @@ export function resolveCoderSpec(env) {
188
293
  * `MODELS.code='codex'` still routes QE to Claude (never codex-self-QE).
189
294
  */
190
295
  export function coderIsCodex(env) {
191
- if (env.CODER === 'codex' || env.CODER === 'codex-fallback')
192
- return true;
193
296
  const codeSpec = env.MODELS.code;
194
- if (codeSpec && String(codeSpec).split(':')[0] === 'codex')
297
+ if (codeSpec !== undefined && codeSpec !== null)
298
+ return String(codeSpec).split(':')[0] === 'codex';
299
+ if (env.CODER === 'codex' || env.CODER === 'codex-fallback')
195
300
  return true;
196
- return false;
301
+ return env.primary === 'codex';
197
302
  }
198
303
  /**
199
304
  * The CROSS-MODEL QE default (load-bearing). Called only when `MODELS.qe` is
200
305
  * unset. Resolves to the OTHER family than the coder:
201
- * - coder is codex → `'opus'` (Claude reviews codex's code)
202
- * - coder is Claude → codex-available ? `'codex:<top>:high'` : `'opus'` (never block)
203
- * `<top>` = `CODEX_MODEL` when pinned (≠'auto'), else the top `KNOWN_CODEX` id.
306
+ * - coder is codex → `'sonnet'` (the recall-oriented Claude reviewer)
307
+ * - coder is Claude → the Codex-budget cell (`sol:high` or `terra:medium`),
308
+ * or `'opus'` when Codex is unavailable (never block)
309
+ * A pinned `CODEX_MODEL` still outranks the tier selected by the budget table.
204
310
  */
205
- export function resolveQeSpec(env) {
206
- if (coderIsCodex(env))
207
- return 'opus';
311
+ export function resolveQeSpecForCoder(coderCodex, env) {
312
+ if (coderCodex)
313
+ return 'sonnet';
208
314
  const CODEX_AVAILABLE = env.codexAvailable !== false;
209
315
  if (!CODEX_AVAILABLE)
210
316
  return 'opus';
211
- return 'codex:' + topCodexId(env) + ':high';
317
+ const budget = resolveBudgetMode(env.budget);
318
+ return budget.codex === 'eco'
319
+ ? 'codex:' + codexIdForTier('workhorse', env) + ':medium'
320
+ : 'codex:' + codexIdForTier('flagship', env) + ':high';
321
+ }
322
+ export function resolveQeSpec(env) {
323
+ return resolveQeSpecForCoder(coderIsCodex(env), env);
212
324
  }
213
325
  /**
214
- * Whether the caller opted into routing at all. When FALSE (no `args.models`,
215
- * no codex knobs), every Claude stage resolves to `{}` → byte-identical to today.
326
+ * Whether the caller opted into routing at all. When FALSE (no axes, `args.models`,
327
+ * or Codex knobs), every Claude stage resolves to `{}` → byte-identical to today.
216
328
  */
217
329
  export function routingRequested(env) {
218
330
  return (Object.keys(env.MODELS).length > 0 ||
331
+ env.primary !== undefined ||
332
+ env.budget !== undefined ||
219
333
  env.PLANNER === 'codex' ||
220
334
  env.CODER === 'codex' ||
221
335
  env.CODER === 'codex-fallback' ||
@@ -247,12 +361,12 @@ export function qeShouldUseCodex(env) {
247
361
  * Resolve a stage to its `agent()` opts fragment.
248
362
  * 1. explicit `MODELS[stage]` wins
249
363
  * 2. else if the user did NOT opt into routing → `{}` (byte-identical BC path)
250
- * 3. else the DEFAULT TABLE fills the gap
364
+ * 3. else the primary × per-family-budget table fills the gap
251
365
  * 4. `code`/`qe` `null` sentinels resolve via the coder / cross-model rules
252
366
  */
253
367
  export function resolveStageModel(stage, env) {
254
368
  if (env.usageOverride) {
255
- const r = (env.usageReasoning && env.usageReasoning[stage]) || OVERRIDE_REASONING[stage] || 'high';
369
+ const r = (env.usageReasoning && env.usageReasoning[stage]) || STAGE_EFFORT.override[stage] || 'medium';
256
370
  const o = specToOpts('codex:' + topCodexId(env) + ':' + r, env);
257
371
  o._usageSwitched = true;
258
372
  return o;
@@ -261,7 +375,18 @@ export function resolveStageModel(stage, env) {
261
375
  if (spec === undefined) {
262
376
  if (!routingRequested(env))
263
377
  return {};
264
- spec = DEFAULT_MODELS[stage];
378
+ if (stage === 'code' && (env.CODER === 'codex' || env.CODER === 'codex-fallback')) {
379
+ return specToOpts(resolveCoderSpec(env), env);
380
+ }
381
+ if (stage === 'plan' && env.PLANNER === 'codex') {
382
+ return specToOpts('codex:' + env.CODEX_MODEL + ':high', env);
383
+ }
384
+ if (stage === 'qe') {
385
+ return specToOpts(resolveQeSpec(env), env);
386
+ }
387
+ const resolvedPrimary = env.primary || 'claude';
388
+ const cell = budgetTable(resolvedPrimary, resolveBudgetMode(env.budget), env)[stage];
389
+ spec = cell !== undefined ? cell : DEFAULT_MODELS[stage];
265
390
  }
266
391
  if (stage === 'code' && (spec === null || spec === undefined))
267
392
  return specToOpts(resolveCoderSpec(env), env);
@@ -1225,12 +1350,16 @@ export function codexExecCommand(input) {
1225
1350
  const modelId = String(o.modelId === undefined || o.modelId === null ? '' : o.modelId);
1226
1351
  if (!isSafeCodexId(modelId))
1227
1352
  return null;
1353
+ const reasoning = o.reasoning === undefined || o.reasoning === null || o.reasoning === '' ? 'high' : String(o.reasoning);
1354
+ if (!VALID_REASONING[reasoning])
1355
+ return null;
1228
1356
  const raw = Number(o.timeoutSeconds);
1229
1357
  const seconds = raw === raw && raw !== Infinity && raw > 0 ? Math.floor(raw) : CODEX_EXEC_TIMEOUT_SECONDS;
1230
1358
  const repo = String(o.repo === undefined || o.repo === null ? '' : o.repo);
1231
1359
  const cd = repo === '' ? '' : ' -C ' + codexSq(repo);
1232
1360
  return timeoutBinOrDefault(o.timeoutBin) + ' ' + seconds + ' codex exec' + cd
1233
- + ' -m ' + codexSq(modelId) + ' ' + codexSq(String(o.prompt === undefined || o.prompt === null ? '' : o.prompt)) + ' < /dev/null';
1361
+ + ' -m ' + codexSq(modelId) + ' -c model_reasoning_effort=' + codexSq(reasoning)
1362
+ + ' ' + codexSq(String(o.prompt === undefined || o.prompt === null ? '' : o.prompt)) + ' < /dev/null';
1234
1363
  }
1235
1364
  export function codexReviewCommand(input) {
1236
1365
  const o = input || {};