instar 1.3.781 → 1.3.782
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/core/IntelligenceRouter.d.ts +9 -14
- package/dist/core/IntelligenceRouter.d.ts.map +1 -1
- package/dist/core/IntelligenceRouter.js +117 -56
- package/dist/core/IntelligenceRouter.js.map +1 -1
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +2 -2
- package/upgrades/1.3.782.md +60 -0
- package/upgrades/nature-routing-a2.2-enforcing.eli16.md +50 -0
- package/upgrades/side-effects/nature-routing-a2.2-enforcing.md +142 -0
|
@@ -164,15 +164,18 @@ export interface IntelligenceRouterOptions {
|
|
|
164
164
|
* (resolved at the construction boundary, like `ladder`). Absent OR `enabled:false`
|
|
165
165
|
* ⇒ the nature router is inert and routing is BYTE-IDENTICAL to today. When enabled +
|
|
166
166
|
* dryRun (the dev-agent default) the resolver OBSERVES (computes + logs the plan via
|
|
167
|
-
* `onNatureRoutePlan`) and still passes through to today's selection.
|
|
168
|
-
*
|
|
167
|
+
* `onNatureRoutePlan`) and still passes through to today's selection. When enabled +
|
|
168
|
+
* `dryRun:false` (the operator's deliberate post-soak flip — A2.2) the resolved plan
|
|
169
|
+
* REPLACES today's selection: the primary `(door, model)` is used and the swapTail feeds
|
|
170
|
+
* the existing failure-swap loop.
|
|
169
171
|
*/
|
|
170
172
|
resolveNatureRouting?: () => NatureRoutingRuntime | undefined;
|
|
171
173
|
/**
|
|
172
|
-
* S4 A2 — the
|
|
173
|
-
* plan
|
|
174
|
-
* calls it freely. The durable
|
|
175
|
-
* surfaces that consume this
|
|
174
|
+
* S4 A2 — the resolved-plan observation sink (FD11 readable canary). Invoked with the
|
|
175
|
+
* resolved plan on EVERY nature-routing call (dryRun AND enforcing) so the plan is always
|
|
176
|
+
* observable. No-op downstream by default; the router calls it freely. The durable
|
|
177
|
+
* `logs/nature-routing.jsonl` + `GET /intelligence/routing` surfaces that consume this,
|
|
178
|
+
* and the FD6 critical-gate drift notice / baseline, are tracked follow-ups.
|
|
176
179
|
*/
|
|
177
180
|
onNatureRoutePlan?: (plan: NatureRoutePlan) => void;
|
|
178
181
|
}
|
|
@@ -446,8 +449,6 @@ export declare class IntelligenceRouter implements IntelligenceProvider {
|
|
|
446
449
|
private providerFor;
|
|
447
450
|
/** Default framework → shared provider; else the cached per-framework provider (null if binary missing). */
|
|
448
451
|
private resolveProvider;
|
|
449
|
-
/** Already warned that nature-routing enforcing mode is not yet wired (warn ONCE). */
|
|
450
|
-
private warnedNatureEnforceNotWired;
|
|
451
452
|
/**
|
|
452
453
|
* S4 A2 — CLI-door reachability probe for the nature router (FD5 availability walk).
|
|
453
454
|
* CLI doors coincide 1:1 with `IntelligenceFramework`. `resolveRoute` skips metered
|
|
@@ -456,12 +457,6 @@ export declare class IntelligenceRouter implements IntelligenceProvider {
|
|
|
456
457
|
* builds (binary present). Result is cached by `providerFor`.
|
|
457
458
|
*/
|
|
458
459
|
private isCliDoorReachable;
|
|
459
|
-
/**
|
|
460
|
-
* S4 A2 — enforcing-mode honesty guard. Flipping `dryRun:false` in A2.1 does NOT re-route
|
|
461
|
-
* (the selection integration is a tracked A2.2 remainder); routing stays byte-identical.
|
|
462
|
-
* Warn ONCE so the flip is an honest no-op rather than a silent dead switch.
|
|
463
|
-
*/
|
|
464
|
-
private warnNatureEnforceNotWired;
|
|
465
460
|
/** Chains already warned about as rejected (warn ONCE per chain, never per call). */
|
|
466
461
|
private warnedRejectedChains?;
|
|
467
462
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IntelligenceRouter.d.ts","sourceRoot":"","sources":["../../src/core/IntelligenceRouter.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"IntelligenceRouter.d.ts","sourceRoot":"","sources":["../../src/core/IntelligenceRouter.ts"],"names":[],"mappings":"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"}
|
|
@@ -175,16 +175,17 @@ export function isBoundedGatingDegrade(component, options) {
|
|
|
175
175
|
return row.chain !== 'WRITE'; // WRITE is the sanctioned Opus-CLI lane; everything else is bounded/gating
|
|
176
176
|
}
|
|
177
177
|
/* ────────────────────────────────────────────────────────────────────────────
|
|
178
|
-
* S4 Increment A2 — the nature-axis routing RESOLVER
|
|
178
|
+
* S4 Increment A2 — the nature-axis routing RESOLVER.
|
|
179
179
|
*
|
|
180
180
|
* `resolveRoute` is a PURE, side-effect-free evaluator (spec CR2-5): a stateless
|
|
181
181
|
* fold `component → resolvedNature → ordered eligible positions → { primary, swapTail }
|
|
182
182
|
* | 'fall-through' | 'no-route' | throw`. It owns no retry/backoff/breaker/budget
|
|
183
183
|
* machinery — those stay in the existing IntelligenceRouter primitives. Wired into
|
|
184
184
|
* `evaluate()` ONLY when `sessions.natureRouting.enabled` (dev-gated dark). In dryRun
|
|
185
|
-
* (the dev-agent default) it OBSERVES: computes + logs the plan, then passes through
|
|
186
|
-
* today's routing (byte-identical selection).
|
|
187
|
-
*
|
|
185
|
+
* (the dev-agent default, A2.1) it OBSERVES: computes + logs the plan, then passes through
|
|
186
|
+
* to today's routing (byte-identical selection). When `dryRun:false` (A2.2, the operator's
|
|
187
|
+
* deliberate post-soak flip) the resolved plan REPLACES today's selection — the primary
|
|
188
|
+
* `(door, model)` is used and the swapTail feeds the existing failure-swap loop verbatim.
|
|
188
189
|
* Spec: docs/specs/nature-axis-routing.md §Resolver / FD3 / FD4 / FD9.
|
|
189
190
|
* ──────────────────────────────────────────────────────────────────────────── */
|
|
190
191
|
/**
|
|
@@ -643,8 +644,6 @@ export class IntelligenceRouter {
|
|
|
643
644
|
resolveProvider(framework) {
|
|
644
645
|
return framework === this.opts.defaultFramework ? this.opts.defaultProvider : this.providerFor(framework);
|
|
645
646
|
}
|
|
646
|
-
/** Already warned that nature-routing enforcing mode is not yet wired (warn ONCE). */
|
|
647
|
-
warnedNatureEnforceNotWired = false;
|
|
648
647
|
/**
|
|
649
648
|
* S4 A2 — CLI-door reachability probe for the nature router (FD5 availability walk).
|
|
650
649
|
* CLI doors coincide 1:1 with `IntelligenceFramework`. `resolveRoute` skips metered
|
|
@@ -655,20 +654,6 @@ export class IntelligenceRouter {
|
|
|
655
654
|
isCliDoorReachable(door) {
|
|
656
655
|
return this.resolveProvider(door) !== null;
|
|
657
656
|
}
|
|
658
|
-
/**
|
|
659
|
-
* S4 A2 — enforcing-mode honesty guard. Flipping `dryRun:false` in A2.1 does NOT re-route
|
|
660
|
-
* (the selection integration is a tracked A2.2 remainder); routing stays byte-identical.
|
|
661
|
-
* Warn ONCE so the flip is an honest no-op rather than a silent dead switch.
|
|
662
|
-
*/
|
|
663
|
-
warnNatureEnforceNotWired() {
|
|
664
|
-
if (this.warnedNatureEnforceNotWired)
|
|
665
|
-
return;
|
|
666
|
-
this.warnedNatureEnforceNotWired = true;
|
|
667
|
-
console.warn('IntelligenceRouter: sessions.natureRouting.dryRun is false, but nature-routing ENFORCING ' +
|
|
668
|
-
'selection is not wired in this build (Increment A2.1 ships the dark/dryRun observation ' +
|
|
669
|
-
'mechanism; enforcing selection is the tracked A2.2 remainder). Routing stays byte-identical — ' +
|
|
670
|
-
'the resolver plan is logged but not applied.');
|
|
671
|
-
}
|
|
672
657
|
/** Chains already warned about as rejected (warn ONCE per chain, never per call). */
|
|
673
658
|
warnedRejectedChains;
|
|
674
659
|
/**
|
|
@@ -695,13 +680,21 @@ export class IntelligenceRouter {
|
|
|
695
680
|
? explicitCategory
|
|
696
681
|
: categoryForComponent(component);
|
|
697
682
|
const cfg = this.opts.resolveConfig();
|
|
698
|
-
// ── S4 A2 — nature-axis routing
|
|
683
|
+
// ── S4 A2 — nature-axis routing (dev-gated dark; dryRun-first). ──
|
|
699
684
|
// Byte-identical when unset/off: when the feature is absent OR `enabled:false` this
|
|
700
685
|
// whole block is skipped and NOTHING about selection changes. In dryRun (the dev-agent
|
|
701
686
|
// default) it OBSERVES only — computes + logs the plan via `onNatureRoutePlan` — and
|
|
702
|
-
// still falls through to today's selection below.
|
|
703
|
-
//
|
|
704
|
-
//
|
|
687
|
+
// still falls through to today's selection below. When ENFORCING (`dryRun:false`, the
|
|
688
|
+
// operator's deliberate flip after the dryRun soak — A2.2) the resolved plan REPLACES
|
|
689
|
+
// today's selection (spec §Resolver steps 8-9): the primary `(door, model)` becomes the
|
|
690
|
+
// selection and the `swapTail` feeds the EXISTING failure-swap loop verbatim. A resolver
|
|
691
|
+
// error can never break routing here — the DESIGNED critical-gate fail-closed throw
|
|
692
|
+
// (`RouterFailClosedError`) propagates on the real path so the gate caller applies its
|
|
693
|
+
// own fail-closed semantics; any UNEXPECTED resolver error falls through to today's
|
|
694
|
+
// selection (fail-safe). In dryRun EVERY outcome (route / no-route / throw) is recorded
|
|
695
|
+
// only — nothing is ever withheld or re-routed.
|
|
696
|
+
let enforced;
|
|
697
|
+
let enforcedNoRoute = false;
|
|
705
698
|
const natureRt = this.opts.resolveNatureRouting?.();
|
|
706
699
|
if (natureRt?.enabled) {
|
|
707
700
|
const dryRun = natureRt.dryRun !== false; // default true on first enable
|
|
@@ -713,26 +706,69 @@ export class IntelligenceRouter {
|
|
|
713
706
|
isInjectionExposed: (comp) => isComponentInjectionExposed(comp, options?.attribution?.injectionExposed === true),
|
|
714
707
|
});
|
|
715
708
|
this.opts.onNatureRoutePlan?.({ component, category, dryRun, resolution });
|
|
709
|
+
if (!dryRun) {
|
|
710
|
+
// ENFORCE (A2.2): the resolved plan becomes the actual selection.
|
|
711
|
+
if (resolution.outcome === 'route') {
|
|
712
|
+
enforced = { primary: resolution.primary, swapTail: resolution.swapTail };
|
|
713
|
+
}
|
|
714
|
+
else if (resolution.outcome === 'no-route') {
|
|
715
|
+
// Low-stakes mapped, all chain doors down ⇒ the caller's OWN non-gating heuristic
|
|
716
|
+
// (the ordinary provider-down contract) — NEVER legacy category routing, so the
|
|
717
|
+
// harness door can't re-open for a nature-routed component (spec §573-581).
|
|
718
|
+
enforcedNoRoute = true;
|
|
719
|
+
}
|
|
720
|
+
// 'fall-through' (unmapped) ⇒ leave enforcement unset → today's category routing below.
|
|
721
|
+
}
|
|
716
722
|
}
|
|
717
723
|
catch (e) {
|
|
718
724
|
if (e instanceof RouterFailClosedError) {
|
|
719
725
|
this.opts.onNatureRoutePlan?.({ component, category, dryRun, failClosed: true });
|
|
726
|
+
// ENFORCE (A2.2): a mapped FD6 critical gate with no available door FAILS CLOSED on
|
|
727
|
+
// the real path — the caller applies its gating fail-closed semantics (block/deny),
|
|
728
|
+
// never legacy routing and never the harness door. In dryRun the throw is swallowed
|
|
729
|
+
// (observe-and-record only), never surfaced to the call path.
|
|
730
|
+
if (!dryRun)
|
|
731
|
+
throw e;
|
|
720
732
|
}
|
|
721
733
|
else {
|
|
734
|
+
// An UNEXPECTED resolver error (the pure fold only THROWS `RouterFailClosedError` by
|
|
735
|
+
// design). Record it and fall through to today's selection — an unexpected error must
|
|
736
|
+
// never break routing (fail-safe); a real empty-set critical gate is the typed error
|
|
737
|
+
// above, never this branch.
|
|
722
738
|
this.opts.onNatureRoutePlan?.({ component, category, dryRun });
|
|
723
739
|
}
|
|
724
740
|
}
|
|
725
|
-
if (!dryRun)
|
|
726
|
-
this.warnNatureEnforceNotWired();
|
|
727
741
|
}
|
|
728
|
-
//
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
742
|
+
// ENFORCE 'no-route': raise the ordinary non-gating error the caller already catches into
|
|
743
|
+
// its heuristic (tracked never-silent). NEVER legacy category routing (harness-door re-open).
|
|
744
|
+
if (enforcedNoRoute) {
|
|
745
|
+
this.opts.onHeuristicFallthrough?.(component ?? '(none)', this.opts.defaultFramework);
|
|
746
|
+
throw new Error(`IntelligenceRouter: nature-routing 'no-route' — no available door for low-stakes ` +
|
|
747
|
+
`'${component ?? '(none)'}' (all chain doors unreachable); caller uses its heuristic.`);
|
|
748
|
+
}
|
|
749
|
+
// Selection: an enforced nature plan supersedes category routing (its primary door is
|
|
750
|
+
// guaranteed reachable — the resolver only emits reachable CLI doors). Otherwise today's
|
|
751
|
+
// behavior: unconfigured componentFrameworks ⇒ the default provider verbatim.
|
|
752
|
+
let framework;
|
|
753
|
+
let evalOptions = options;
|
|
754
|
+
if (enforced) {
|
|
755
|
+
framework = enforced.primary.door; // resolver emits CLI doors only
|
|
756
|
+
// The resolved primary's CONCRETE model id REPLACES the caller's tier hint (spec step 8).
|
|
757
|
+
// It is already reserve-clamped by the resolver (clampToReserveOnCleanDoor); a concrete id
|
|
758
|
+
// rides `options.model` verbatim to the provider (the adapters resolve tier-or-id).
|
|
759
|
+
evalOptions = { ...(options ?? {}), model: enforced.primary.modelId };
|
|
760
|
+
}
|
|
761
|
+
else {
|
|
762
|
+
if (!cfg)
|
|
763
|
+
return this.opts.defaultProvider.evaluate(prompt, options);
|
|
764
|
+
framework = this.resolveFramework(component, category, cfg);
|
|
765
|
+
}
|
|
732
766
|
const primary = this.resolveProvider(framework);
|
|
733
767
|
// Provider unavailable (binary missing / not built) — unchanged: degrade or error.
|
|
768
|
+
// (`cfg?.` because an enforced nature plan may have superseded category routing with a
|
|
769
|
+
// null `cfg`; an enforced primary door is always reachable, so this branch stays legacy.)
|
|
734
770
|
if (!primary) {
|
|
735
|
-
if ((cfg
|
|
771
|
+
if ((cfg?.fallback ?? 'default') === 'none') {
|
|
736
772
|
throw new Error(`IntelligenceRouter: framework '${framework}' for component '${component ?? '(none)'}' ` +
|
|
737
773
|
`is unavailable and fallback is 'none'.`);
|
|
738
774
|
}
|
|
@@ -785,13 +821,21 @@ export class IntelligenceRouter {
|
|
|
785
821
|
const deferrable = !gating && options?.attribution?.deferrable === true;
|
|
786
822
|
const ladder = this.opts.ladder;
|
|
787
823
|
// Framework-swap applies to a gating OR a deferrable call (both ladder paths include it).
|
|
788
|
-
|
|
824
|
+
// An enforced nature plan supplies the resolved `swapTail` (each a door + concrete model,
|
|
825
|
+
// already reserve-clamped); the legacy path supplies the config `failureSwap` frameworks
|
|
826
|
+
// (each taking the caller's tier, clamped per-door in the loop). BOTH ride the SAME
|
|
827
|
+
// gating||deferrable gate and the SAME loop below — the spec's "reuse verbatim".
|
|
828
|
+
const swapPositions = gating || deferrable
|
|
829
|
+
? enforced
|
|
830
|
+
? enforced.swapTail.map((p) => ({ door: p.door, model: p.modelId }))
|
|
831
|
+
: (cfg?.failureSwap ?? []).map((fw) => ({ door: fw }))
|
|
832
|
+
: [];
|
|
789
833
|
// GATING budget: a single hard wall-clock deadline over the whole gating failure path so an
|
|
790
834
|
// awaited gate stays responsive (no stacking rungs). Deferrable calls are not budgeted this way.
|
|
791
835
|
const gatingDeadlineAt = gating && ladder ? Date.now() + ladder.gatingLadderBudgetMs : undefined;
|
|
792
836
|
let err;
|
|
793
837
|
try {
|
|
794
|
-
const mainResult = await primary.evaluate(prompt,
|
|
838
|
+
const mainResult = await primary.evaluate(prompt, evalOptions);
|
|
795
839
|
this.opts.onResolved?.(component ?? '(none)', framework); // a real answer → auto-resolve any open degradation
|
|
796
840
|
return mainResult;
|
|
797
841
|
}
|
|
@@ -807,7 +851,7 @@ export class IntelligenceRouter {
|
|
|
807
851
|
const delay = Math.min(b.baseMs * Math.pow(b.factor, attempt), b.ceilingMs);
|
|
808
852
|
const jittered = Math.min(Math.floor(delay * (0.5 + Math.random() * 0.5)), b.maxWaitMs);
|
|
809
853
|
try {
|
|
810
|
-
const boResult = await primary.evaluate(prompt, { ...(
|
|
854
|
+
const boResult = await primary.evaluate(prompt, { ...(evalOptions ?? {}), rateLimitWaitMs: jittered });
|
|
811
855
|
this.opts.onResolved?.(component ?? '(none)', framework); // recovered on backoff → auto-resolve
|
|
812
856
|
return boResult;
|
|
813
857
|
}
|
|
@@ -818,12 +862,12 @@ export class IntelligenceRouter {
|
|
|
818
862
|
}
|
|
819
863
|
}
|
|
820
864
|
}
|
|
821
|
-
if (
|
|
865
|
+
if (swapPositions.length === 0) {
|
|
822
866
|
// RUNG (c) — DEFERRABLE queue: no swap configured, but a deferrable call can WAIT for capacity
|
|
823
867
|
// in the LlmQueue before dropping to its heuristic. gating can never reach here (deferrable =
|
|
824
868
|
// !gating && …) — the D5 queue-skip invariant is structural.
|
|
825
869
|
if (deferrable) {
|
|
826
|
-
const q = await this.tryDeferrableQueue(primary, prompt,
|
|
870
|
+
const q = await this.tryDeferrableQueue(primary, prompt, evalOptions, component ?? '(none)', framework, category);
|
|
827
871
|
if (q.ok)
|
|
828
872
|
return q.result;
|
|
829
873
|
}
|
|
@@ -850,7 +894,8 @@ export class IntelligenceRouter {
|
|
|
850
894
|
const budgetMs = isValidMs(this.opts.swapTotalBudgetMs) ? this.opts.swapTotalBudgetMs : undefined;
|
|
851
895
|
const monotonicNow = this.opts.monotonicNow ?? (() => performance.now());
|
|
852
896
|
const swapStartedAt = monotonicNow();
|
|
853
|
-
for (const
|
|
897
|
+
for (const t of swapPositions) {
|
|
898
|
+
const target = t.door;
|
|
854
899
|
// GATING budget: if the awaited gate's total wall-clock budget is consumed, stop swapping
|
|
855
900
|
// and fail closed now (responsiveness over completeness — spec §3a). Deferrable calls have
|
|
856
901
|
// no such deadline (gatingDeadlineAt is undefined for them).
|
|
@@ -873,30 +918,46 @@ export class IntelligenceRouter {
|
|
|
873
918
|
// otherwise-UNcapped attempt (no per-target cap, global ≤0/unset).
|
|
874
919
|
cap = cap === undefined ? remaining : Math.min(cap, remaining);
|
|
875
920
|
}
|
|
876
|
-
//
|
|
877
|
-
//
|
|
878
|
-
//
|
|
879
|
-
//
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
921
|
+
// Model for this swap attempt:
|
|
922
|
+
// - NATURE-enforced position (`t.model` set): its OWN concrete model id, already
|
|
923
|
+
// reserve-clamped by the resolver (`clampToReserveOnCleanDoor`) — so it always
|
|
924
|
+
// overrides the base options.model, and the A1 tier-clamp below is a no-op on it.
|
|
925
|
+
// - LEGACY position (`t.model` undefined): the caller's tier, clamped per SAFETY
|
|
926
|
+
// (S2, R1/R2) — a bounded/gating swap onto claude-code requesting `capable` would
|
|
927
|
+
// resolve to Opus-via-Claude-CLI (the measured-banned door, 81.7% vs 99.1%); clamp
|
|
928
|
+
// it down to `balanced` (Sonnet CLI reserve). Only ever narrows; never upgrades.
|
|
929
|
+
let attemptModel;
|
|
930
|
+
let overrideModel;
|
|
931
|
+
if (t.model !== undefined) {
|
|
932
|
+
attemptModel = t.model;
|
|
933
|
+
overrideModel = true;
|
|
934
|
+
}
|
|
935
|
+
else {
|
|
936
|
+
const clamp = clampClaudeCliSwapModel(target, options?.model);
|
|
937
|
+
attemptModel = clamp.model;
|
|
938
|
+
overrideModel = clamp.clamped;
|
|
939
|
+
if (clamp.clamped) {
|
|
940
|
+
this.opts.onDegrade?.({
|
|
941
|
+
component: component ?? '(none)',
|
|
942
|
+
category,
|
|
943
|
+
from: framework,
|
|
944
|
+
to: target,
|
|
945
|
+
reason: `failure-swap-model-clamp: '${target}' capable→balanced ` +
|
|
946
|
+
`(Opus-via-Claude-CLI is banned for bounded/gating verdicts — R1/R2)`,
|
|
947
|
+
});
|
|
948
|
+
}
|
|
890
949
|
}
|
|
891
950
|
// Pass the cap through as the provider's per-call timeout so the subprocess
|
|
892
951
|
// self-terminates at the bound (no AbortSignal exists on IntelligenceOptions).
|
|
893
|
-
|
|
952
|
+
// Base is `evalOptions` (byte-identical to `options` on the legacy path); an enforced
|
|
953
|
+
// position's model always overrides it below.
|
|
954
|
+
const attemptOptions = cap !== undefined || overrideModel
|
|
894
955
|
? {
|
|
895
|
-
...(
|
|
956
|
+
...(evalOptions ?? {}),
|
|
896
957
|
...(cap !== undefined ? { timeoutMs: cap } : {}),
|
|
897
|
-
...(
|
|
958
|
+
...(overrideModel ? { model: attemptModel } : {}),
|
|
898
959
|
}
|
|
899
|
-
:
|
|
960
|
+
: evalOptions;
|
|
900
961
|
try {
|
|
901
962
|
// withSwapTimeout keeps the shipped, crash-safe Promise.race pattern
|
|
902
963
|
// (InputGuard precedent): it attaches a settlement handler to EACH input,
|
|
@@ -938,7 +999,7 @@ export class IntelligenceRouter {
|
|
|
938
999
|
// for capacity in the LlmQueue before dropping to its heuristic (the gentle order, §3b.3). A
|
|
939
1000
|
// gating call NEVER reaches here (deferrable = !gating && …) — D5 queue-skip is structural.
|
|
940
1001
|
if (deferrable) {
|
|
941
|
-
const q = await this.tryDeferrableQueue(primary, prompt,
|
|
1002
|
+
const q = await this.tryDeferrableQueue(primary, prompt, evalOptions, component ?? '(none)', framework, category);
|
|
942
1003
|
if (q.ok)
|
|
943
1004
|
return q.result;
|
|
944
1005
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IntelligenceRouter.js","sourceRoot":"","sources":["../../src/core/IntelligenceRouter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"IntelligenceRouter.js","sourceRoot":"","sources":["../../src/core/IntelligenceRouter.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "./builtin-manifest.schema.json",
|
|
3
3
|
"schemaVersion": 1,
|
|
4
|
-
"generatedAt": "2026-07-
|
|
5
|
-
"instarVersion": "1.3.
|
|
4
|
+
"generatedAt": "2026-07-06T00:02:24.643Z",
|
|
5
|
+
"instarVersion": "1.3.782",
|
|
6
6
|
"entryCount": 202,
|
|
7
7
|
"entries": {
|
|
8
8
|
"hook:session-start": {
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# Upgrade Guide — vNEXT
|
|
2
|
+
|
|
3
|
+
<!-- assembled-by: assemble-next-md -->
|
|
4
|
+
<!-- bump: patch -->
|
|
5
|
+
|
|
6
|
+
## What Changed
|
|
7
|
+
|
|
8
|
+
Wired the enforcing half of Nature-Axis Routing (S4 Increment A2.2). The internal LLM router's
|
|
9
|
+
nature resolver — which since A2.1 has only watched, computing and logging the model + access door it
|
|
10
|
+
WOULD pick for a background check — can now actually apply that choice. When the feature is enabled AND
|
|
11
|
+
an operator has deliberately turned dryRun off, the resolved primary (door, model) becomes the real
|
|
12
|
+
selection and the resolver's fallback list drives the real failover, each fallback position carrying its
|
|
13
|
+
own concrete model. The routing switch is now real machinery — but it stays off by default, so nothing
|
|
14
|
+
changes until it is deliberately turned on.
|
|
15
|
+
|
|
16
|
+
This preserves the maturation ladder A2.1 shipped: DARK on the fleet, and LIVE-in-dryRun on a development
|
|
17
|
+
agent (still observe-and-log only). No default was changed, the enable flag is still omitted so it rides
|
|
18
|
+
the development-agent gate, and the metered paid doors stay skipped (that is Increment B, still deferred
|
|
19
|
+
and PIN-gated). The old one-time "enforcing not yet wired" warning is retired, since it is now real.
|
|
20
|
+
|
|
21
|
+
The four resolver outcomes are honored on the real path: a resolved route applies the chosen door and
|
|
22
|
+
concrete model; an unmapped component falls through to today's routing untouched; a low-stakes sorter
|
|
23
|
+
with every door down raises the ordinary "use your own heuristic" error its caller already catches (never
|
|
24
|
+
today's category routing, so the Claude harness door can never sneak back in); and a safety gate with
|
|
25
|
+
every door down fails closed with a distinct typed error, so its caller blocks or denies rather than
|
|
26
|
+
falling open. Every existing safety clamp — the deny-by-default Claude-reserve allowlist, the FD4 chain
|
|
27
|
+
validators, A1's always-on degrade clamp — is reused unchanged.
|
|
28
|
+
|
|
29
|
+
## What to Tell Your User
|
|
30
|
+
|
|
31
|
+
Nothing proactive — this is an internal, off-by-default plumbing change with no user-facing surface. If a
|
|
32
|
+
user ever asks why a background check might one day run on a different model than the one they talk to, the
|
|
33
|
+
plain answer is: the agent measured which model is best at each kind of internal check, and this lets it
|
|
34
|
+
eventually run the right one for each job. Right now it is off; on a development agent it only watches and
|
|
35
|
+
logs what it would choose. Turning it fully on is a separate, deliberate step the operator takes after
|
|
36
|
+
reviewing what it would do. Nothing the user does changes today, and no setting is required.
|
|
37
|
+
|
|
38
|
+
## Summary of New Capabilities
|
|
39
|
+
|
|
40
|
+
- The nature resolver's plan can now become the real selection: when the feature is enabled and dryRun is
|
|
41
|
+
deliberately turned off, the chosen (door, model) is applied and the fallback tail drives the real
|
|
42
|
+
failure-swap. Shipped dark on the fleet, dryRun-observe on a development agent.
|
|
43
|
+
- A safety gate with no reachable door now actually fails closed on the enforcing path (distinct typed
|
|
44
|
+
error → the caller blocks/denies), and a low-stakes sorter with no door degrades to its own heuristic —
|
|
45
|
+
never to legacy category routing, so the measured-banned Claude harness door cannot re-open.
|
|
46
|
+
- When the feature is off or unset (the fleet default), routing is byte-identical to today — the same
|
|
47
|
+
options object is passed through untouched. No default was flipped; the metered doors stay skipped.
|
|
48
|
+
|
|
49
|
+
## Evidence
|
|
50
|
+
|
|
51
|
+
- tests/unit/nature-routing-resolver.test.ts — new enforcing suite proving selection DIVERGES under
|
|
52
|
+
dryRun:false: it routes to the resolved primary door with its concrete model (the default provider is
|
|
53
|
+
NOT used); the swapTail drives the failure-swap when the primary fails (the next door serves on its OWN
|
|
54
|
+
model); a metered primary is skipped; a JUDGE gate on claude-code enforces the concrete Sonnet reserve
|
|
55
|
+
id (not the caller's `capable` tier, never Opus); a critical gate with no door throws RouterFailClosedError
|
|
56
|
+
on the real path (never the harness door); a low-stakes empty set raises the ordinary heuristic error
|
|
57
|
+
(never legacy routing); an unmapped component falls through; and dryRun:true still observes only.
|
|
58
|
+
- Byte-identical-when-off and dryRun-observes tests remain green; A1 clamp, FD5b injection, FD4/FD4.2
|
|
59
|
+
lints, and the llm-routing-nature / injection-exposure ratchets all stay green; tsc --noEmit clean.
|
|
60
|
+
- Spec: docs/specs/nature-axis-routing.md — §Resolver steps 8-9, FD9 (the A1/A2 increment split).
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# ELI16 — Nature-Axis Routing, Increment A2.2 (enforcing selection)
|
|
2
|
+
|
|
3
|
+
## The one-sentence version
|
|
4
|
+
|
|
5
|
+
We took the nature-routing resolver that has been silently watching ("here's the model+door
|
|
6
|
+
I *would* pick") and wired it so that, when an operator deliberately flips it on, it *actually*
|
|
7
|
+
picks — the resolved model and access door become the real selection, and its fallback list
|
|
8
|
+
drives the real failover.
|
|
9
|
+
|
|
10
|
+
## Why
|
|
11
|
+
|
|
12
|
+
Increment A2.1 shipped a resolver: given an internal check, it works out the *kind* of thinking
|
|
13
|
+
the check does (a quick sort, a careful judgment, open-ended writing), walks an ordered list of
|
|
14
|
+
`(door, model)` candidates, and returns the winner plus a fallback tail. But it was a spectator —
|
|
15
|
+
it computed the plan, logged it, and then still did exactly today's routing. That was the honest,
|
|
16
|
+
observe-first step. A2.2 is the step where the plan becomes the decision. Nothing about the
|
|
17
|
+
resolver's *choice* changes; what changes is that the choice is now applied.
|
|
18
|
+
|
|
19
|
+
## What already exists (and stays exactly as-is)
|
|
20
|
+
|
|
21
|
+
- **The resolver** (`resolveRoute`) — the pure, side-effect-free fold with four honest outcomes:
|
|
22
|
+
a resolved route; "fall through to today's routing" (for an unmapped component); "no route —
|
|
23
|
+
use your own backup heuristic" (for a low-stakes sorter when every door is down); or **throw a
|
|
24
|
+
distinct fail-closed error** (for a safety gate when every door is down — a gate must fail shut).
|
|
25
|
+
- **The safety clamps** — the deny-by-default allowlist that pins any Claude-door bounded/judgment
|
|
26
|
+
call to the single sanctioned Sonnet reserve id (so the measured-banned Opus-via-Claude-CLI route
|
|
27
|
+
can never open), the FD4 chain validators, and A1's always-on degrade clamp. None of these change.
|
|
28
|
+
- **The failure-swap loop** — the existing machinery that, on a runtime failure, tries the next
|
|
29
|
+
door with per-target timeouts, a total budget, a rate-limit backoff, and honest degrade notes.
|
|
30
|
+
|
|
31
|
+
## What this adds
|
|
32
|
+
|
|
33
|
+
When the feature is enabled AND the operator has deliberately turned off dryRun, the resolved plan
|
|
34
|
+
**replaces** today's selection: the primary `(door, model)` becomes the door and model the call runs
|
|
35
|
+
on, and the resolved fallback tail feeds the *existing* failure-swap loop verbatim — each fallback
|
|
36
|
+
position carrying its own concrete model. The four outcomes are honored on this real path: a fail-
|
|
37
|
+
closed gate now actually throws (its caller blocks/denies, never falls open); a low-stakes empty set
|
|
38
|
+
raises the ordinary "use your heuristic" error the caller already catches (never today's category
|
|
39
|
+
routing, so the harness door can't sneak back in); an unmapped component falls through to today's
|
|
40
|
+
routing unchanged. The old one-time "enforcing not yet wired" warning is retired — it is now real.
|
|
41
|
+
|
|
42
|
+
## The safety promise
|
|
43
|
+
|
|
44
|
+
When the feature is **off or unset** (the fleet default), the router is **bit-for-bit like today** —
|
|
45
|
+
same door, same model, same options object passed through untouched. The named byte-identical test
|
|
46
|
+
still guards this. In **dryRun** (the dev-agent default) it is still a spectator: it observes and logs,
|
|
47
|
+
changes nothing. Only a deliberate operator flip of `dryRun:false` — after reviewing the dryRun plan —
|
|
48
|
+
ever activates the re-routing. No defaults changed; the fleet stays dark; the metered paid doors stay
|
|
49
|
+
skipped (that is Increment B, still deferred and PIN-gated). This change makes the switch *real*, but
|
|
50
|
+
leaves it *off*.
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
# Side-Effects Review — Nature-Axis Routing, Increment A2.2 (enforcing selection)
|
|
2
|
+
|
|
3
|
+
**Spec:** docs/specs/nature-axis-routing.md (status: **converged — pending operator approval**;
|
|
4
|
+
`review-convergence` tag, NOT `approved:true` — the operator's step). **Tier-1** change: the enforcing
|
|
5
|
+
wiring for FD9's Increment A2, riding the same dev-gated dark / dryRun-defaulted ladder A2.1 shipped on.
|
|
6
|
+
**Parent standards:** "Structure > Willpower", "No Silent Degradation to Brittle Fallback", benchmark-
|
|
7
|
+
cited routing (INSTAR-Bench v3, rules R1/R2), the Maturation Path (dev-gated dark; the operator's
|
|
8
|
+
deliberate `dryRun:false` flip is the only activation), Migration Parity (no new config, no default flip).
|
|
9
|
+
|
|
10
|
+
**Date:** 2026-07-05
|
|
11
|
+
**Author:** Echo (build hand, topic 29723)
|
|
12
|
+
**Second-pass reviewer:** required (touches routing-of-safety-gates) — see §Second-pass.
|
|
13
|
+
|
|
14
|
+
**Files:** src/core/IntelligenceRouter.ts, tests/unit/nature-routing-resolver.test.ts,
|
|
15
|
+
upgrades/nature-routing-a2.2-enforcing.eli16.md, upgrades/side-effects/nature-routing-a2.2-enforcing.md,
|
|
16
|
+
upgrades/next/nature-routing-a2.2-enforcing.md.
|
|
17
|
+
|
|
18
|
+
## Summary of the change
|
|
19
|
+
|
|
20
|
+
`IntelligenceRouter.evaluate()`'s nature block previously OBSERVED (logged the resolved plan) and then
|
|
21
|
+
fell through to today's selection even with `dryRun:false`, guarded by a one-time "enforcing not yet
|
|
22
|
+
wired" warning. This change makes `dryRun:false` ACTUALLY enforce (spec §Resolver steps 8-9): on outcome
|
|
23
|
+
`route` the resolved primary `(door, model)` replaces `resolveFramework()`'s door + the caller's tier,
|
|
24
|
+
and the resolved `swapTail` feeds the EXISTING failure-swap loop (each tail position carrying its own
|
|
25
|
+
concrete model). On `no-route` it raises the ordinary non-gating heuristic error (never legacy routing);
|
|
26
|
+
on a critical-gate empty set it re-throws `RouterFailClosedError`; on `fall-through` (unmapped) it uses
|
|
27
|
+
today's routing untouched. The obsolete warning method + field are removed.
|
|
28
|
+
|
|
29
|
+
## Decision-point inventory
|
|
30
|
+
|
|
31
|
+
- `IntelligenceRouter.evaluate() — nature block` — modify — was observe-only; now, when
|
|
32
|
+
`enabled && !dryRun`, applies the resolved plan.
|
|
33
|
+
- `IntelligenceRouter.evaluate() — framework/model selection` — modify — `framework`/`evalOptions`
|
|
34
|
+
now derive from the enforced primary when a plan is enforced, else today's category routing.
|
|
35
|
+
- `IntelligenceRouter.evaluate() — failure-swap loop` — pass-through/extend — same loop, now driven by
|
|
36
|
+
either the resolved `swapTail` (per-position concrete model) or today's `cfg.failureSwap` frameworks.
|
|
37
|
+
- `warnNatureEnforceNotWired()` + `warnedNatureEnforceNotWired` — remove — the no-op is now real wiring.
|
|
38
|
+
- `resolveRoute` / `clampToReserveOnCleanDoor` / `mergeNatureRoutingChains` / the FD4/FD4.2 validators —
|
|
39
|
+
pass-through — UNCHANGED (A2.2 consumes them; it does not weaken them).
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## 1. Over-block
|
|
44
|
+
|
|
45
|
+
The only "block" surface is the critical-gate fail-closed throw. On the real path a mapped FD6 critical
|
|
46
|
+
gate whose chain has NO available door throws `RouterFailClosedError` → the caller blocks/denies. This
|
|
47
|
+
can only fire when EVERY door in the gate's chain is unreachable (metered doors are skipped in Increment
|
|
48
|
+
A, so realistically all CLI doors down). That is the correct fail-closed direction for a safety gate; it
|
|
49
|
+
is not an over-block of legitimate traffic — a reachable door always routes. In dryRun the same throw is
|
|
50
|
+
swallowed (observe-only), so the enforcing throw only ever happens on the operator's deliberate flip.
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## 2. Under-block
|
|
55
|
+
|
|
56
|
+
`no-route` (low-stakes empty set) deliberately does NOT block — it raises the ordinary non-gating error
|
|
57
|
+
the caller catches into its heuristic. This is spec-mandated (§573-581): a low-stakes sorter degrades to
|
|
58
|
+
its own heuristic, exactly as it does today when its provider is down. It is NOT a safety gate, so not
|
|
59
|
+
blocking is correct. An UNEXPECTED (non-`RouterFailClosedError`) resolver error also does not block — it
|
|
60
|
+
is recorded and falls through to today's routing (fail-safe), because the pure fold only throws the typed
|
|
61
|
+
error by design; a different throw is a bug and must not break routing.
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## 3. Silent failure / silent degradation
|
|
66
|
+
|
|
67
|
+
No silent path. `no-route` calls `onHeuristicFallthrough` before throwing (never-silent tracking). Every
|
|
68
|
+
swap attempt emits an `onDegrade` note; a successful swap emits the served-by note; a fail-closed gate
|
|
69
|
+
throws a distinct typed error the caller cannot mistake for a model failure. The enforcing primary always
|
|
70
|
+
routes through `resolveProvider` (a real provider), never a heuristic pretending to be an answer. The
|
|
71
|
+
retired warning was itself the only "honest no-op" scaffolding; removing it removes a now-false statement.
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
## 4. Byte-identical-when-off (THE safety case)
|
|
76
|
+
|
|
77
|
+
When `sessions.natureRouting` is absent OR `enabled:false` (the fleet default), the nature block is
|
|
78
|
+
skipped entirely: `enforced` stays undefined, `enforcedNoRoute` false, and `evalOptions` remains the SAME
|
|
79
|
+
`options` object reference. Selection is bit-for-bit today's. In dryRun the plan is logged but `enforced`
|
|
80
|
+
stays undefined (only set when `!dryRun`), so selection is still unchanged. Asserted by the named test
|
|
81
|
+
`natureRouting UNSET ⇒ selection unchanged` (same options object) and the FD4.3 banned-chain-when-off
|
|
82
|
+
test, both green. A new test (`dryRun:true still OBSERVES only`) proves enforcing changes nothing in
|
|
83
|
+
dryRun even with a reachable alternate door.
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## 5. Model-selection correctness (the concrete-id path)
|
|
88
|
+
|
|
89
|
+
The resolved primary's CONCRETE model id (e.g. `gpt-5.4-mini`, `claude-sonnet-4-6`) is placed on
|
|
90
|
+
`options.model` and rides verbatim to the provider — the CLI adapters (`resolveCliFlag` /
|
|
91
|
+
`resolveCliModelFlag`) return a concrete id as-is and only map the three tier tokens, so a concrete id is
|
|
92
|
+
honored. The claude-code reserve is already reserve-clamped by the resolver, so the caller's `capable`
|
|
93
|
+
(→ Opus, the banned door) is replaced by the pinned Sonnet reserve id — asserted by the enforcing test
|
|
94
|
+
`a JUDGE gate landing on claude-code enforces the CONCRETE reserve id`. Metered doors remain skipped
|
|
95
|
+
(Increment A) — asserted by `a metered primary position is SKIPPED`.
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
## 6. Blast radius
|
|
100
|
+
|
|
101
|
+
- **Scope of the real path:** only when `enabled && dryRun:false` — i.e. an operator's deliberate flip
|
|
102
|
+
after the dryRun soak. Dev agents default to dryRun; the fleet is dark. No default is changed.
|
|
103
|
+
- **A1 / A2.1 untouched:** `clampClaudeCliSwapModel` (A1 tier clamp), `clampToReserveOnCleanDoor`,
|
|
104
|
+
`resolveRoute`, the FD4/FD4.2 validators are consumed as-is, not modified. All their tests stay green.
|
|
105
|
+
- **The failure-swap loop:** reused verbatim, gated on `gating||deferrable` exactly as today; nature
|
|
106
|
+
positions ride the same per-target timeout / total-budget / backoff / degrade machinery. A legacy
|
|
107
|
+
swap (no nature plan) is byte-identical (base is `evalOptions`, which === `options` off the nature
|
|
108
|
+
path; no reference-equality assertion in the swap tests regresses).
|
|
109
|
+
- **`cfg` nullability:** the `if (!cfg) return default` short-circuit now lives in the non-enforced
|
|
110
|
+
branch; downstream `cfg?.fallback` / `cfg?.failureSwap` use optional chaining so an enforced plan with
|
|
111
|
+
a null `cfg` (the common fleet shape) is safe. The enforced primary door is always reachable (the
|
|
112
|
+
resolver only emits reachable CLI doors), so the `!primary` degrade path is not reached under
|
|
113
|
+
enforcement.
|
|
114
|
+
|
|
115
|
+
## Explicitly DEFERRED (tracked remainder — NOT dropped)
|
|
116
|
+
|
|
117
|
+
- **FD6 critical-gate drift NOTICE + baseline** — depends on the durable `state/nature-routing-baseline.json`
|
|
118
|
+
store + N=3 debounce + aggregation, which the spec classifies as an "orthogonal surface AROUND the fold"
|
|
119
|
+
and whose PIN-approved baseline MUTATION is explicitly operator-only / out of this scope. The
|
|
120
|
+
`onNatureRoutePlan` hook already records the resolved plan for a future drift tracker to consume.
|
|
121
|
+
- **R6 doc-tree refuse-to-author branch (FD5c)** — DORMANT in Increment A: no component in the shipped
|
|
122
|
+
nature map carries `claudeBanned`, and R6 chains are authored off-Claude, so a claudeBanned empty set
|
|
123
|
+
already resolves to `no-route` → the caller's heuristic (which for `CartographerSweepEngine` IS
|
|
124
|
+
refuse-rather-than-Claude). A dedicated refuse-to-author router branch is a separate concern.
|
|
125
|
+
- **Increment B** — metered live routing + FD12 money/PIN go-live. Untouched; `metered.goLive` stays
|
|
126
|
+
false and unreferenced by this change.
|
|
127
|
+
- **The durable audit log + `GET /intelligence/routing` enforced-diff surface** — the read surfaces are a
|
|
128
|
+
tracked follow-up; enforcement does not require them.
|
|
129
|
+
|
|
130
|
+
## Second-pass review (Phase 5 — required: routes safety GATES)
|
|
131
|
+
|
|
132
|
+
This change makes safety-gate routing REAL, so it triggers the high-risk second pass. Focus:
|
|
133
|
+
(a) can the banned Opus-via-CLI route open under enforcement? — No: the resolved position is already
|
|
134
|
+
reserve-clamped, and the enforced model is the concrete Sonnet reserve id, asserted by the JUDGE-reserve
|
|
135
|
+
enforcing test. (b) can a critical gate fail OPEN under enforcement? — No: the empty-set critical gate
|
|
136
|
+
re-throws `RouterFailClosedError` on the real path (asserted `rejects.toThrow(RouterFailClosedError)`,
|
|
137
|
+
default provider NOT called), and `no-route` is reserved for non-critical low-stakes components only.
|
|
138
|
+
(c) is "off" still truly inert? — Yes, the byte-identical-when-off tests remain green and a new
|
|
139
|
+
dryRun-observes-only enforcing test proves the flip is the sole activation. **Reviewer focus verdict:
|
|
140
|
+
the enforcing path preserves every safety invariant the resolver already guaranteed; the only new risk
|
|
141
|
+
is the model-application boundary (concrete id on `options.model`), which is covered by the concrete-id
|
|
142
|
+
enforcing tests and the pre-existing adapter tier-or-id resolution.**
|