instar 1.3.778 → 1.3.779

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.
@@ -2751,6 +2751,7 @@
2751
2751
  <button class="tab" data-tab="tokens" onclick="switchTab('tokens')">Tokens</button>
2752
2752
  <button class="tab" data-tab="resources" onclick="switchTab('resources')">Resource Usage</button>
2753
2753
  <button class="tab" data-tab="llm-activity" onclick="switchTab('llm-activity')">LLM Activity</button>
2754
+ <button class="tab" data-tab="routing-map" onclick="switchTab('routing-map')">Routing Map</button>
2754
2755
  <button class="tab" data-tab="threadline" onclick="switchTab('threadline')">Threadline</button>
2755
2756
  <button class="tab" data-tab="evidence" onclick="switchTab('evidence')">Evidence</button>
2756
2757
  <button class="tab" data-tab="process-health" onclick="switchTab('process-health')">Process Health</button>
@@ -3337,6 +3338,41 @@
3337
3338
  </div>
3338
3339
  </div>
3339
3340
 
3341
+ <!-- Routing Map tab — the read-only nature-axis routing map (FD11 readable canary,
3342
+ docs/specs/nature-axis-routing.md). For every internal job-kind: which door +
3343
+ model it uses and its full ordered fallback tier list, with injection-safe /
3344
+ money-gated / critical-gate flags. Read-only display; data from
3345
+ /intelligence/routing/chains. No controls — the map only DISPLAYS the routing. -->
3346
+ <div id="routingMapPanel" style="display:none;flex-direction:column;padding:20px;gap:16px;overflow-y:auto">
3347
+ <div style="display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap">
3348
+ <h2 style="margin:0">Routing Map</h2>
3349
+ <button onclick="loadRoutingMap()" style="padding:6px 12px">Refresh</button>
3350
+ </div>
3351
+ <div style="font-size:12px;color:var(--text-dim);line-height:1.4">
3352
+ Where each internal job-kind sends its AI calls. Every background check, gate, and
3353
+ sentinel has a <b>lane</b> (its "nature") and a fallback list of <b>doors</b> — the ways
3354
+ it can reach a model. This shows, per lane, the ordered door + model list it tries, and
3355
+ flags a door that's <b>metered</b> (a paid API, skipped for now), <b>money-gated</b>, or
3356
+ that must never take untrusted input. Read-only: it shows the map, it changes nothing.
3357
+ </div>
3358
+
3359
+ <!-- The four lanes (chains) -->
3360
+ <div id="routingMapChainsCard" style="border:1px solid var(--border);border-radius:8px;padding:16px;display:flex;flex-direction:column;gap:12px">
3361
+ <div style="font-weight:600">Lanes (fallback order)</div>
3362
+ <div id="routingMapChainsBody" style="font-size:13px;overflow-x:auto">
3363
+ <div style="color:var(--text-dim)">Loading...</div>
3364
+ </div>
3365
+ </div>
3366
+
3367
+ <!-- Per job-kind mapping -->
3368
+ <div style="border:1px solid var(--border);border-radius:8px;padding:16px;display:flex;flex-direction:column;gap:8px">
3369
+ <div style="font-weight:600">By job-kind</div>
3370
+ <div id="routingMapComponentsBody" style="font-size:13px;overflow-x:auto">
3371
+ <div style="color:var(--text-dim)">Loading...</div>
3372
+ </div>
3373
+ </div>
3374
+ </div>
3375
+
3340
3376
  <!-- Evidence Tab (WikiClaim Phase 4) — per-entity evidence + reverse "what cites this?" view.
3341
3377
  Spec: docs/specs/OPENCLAW-IMPORT-WIKICLAIM-EVIDENCE-SPEC.md § Phase 4 (line 343). -->
3342
3378
  <!-- process-health tab -->
@@ -5004,6 +5040,12 @@
5004
5040
  display: ['flex'],
5005
5041
  onActivate: () => { if (typeof loadLlmActivity === 'function') loadLlmActivity(); },
5006
5042
  },
5043
+ {
5044
+ id: 'routing-map',
5045
+ panels: ['routingMapPanel'],
5046
+ display: ['flex'],
5047
+ onActivate: () => { if (typeof loadRoutingMap === 'function') loadRoutingMap(); },
5048
+ },
5007
5049
  {
5008
5050
  id: 'threadline',
5009
5051
  panels: ['threadlineTab'],
@@ -5676,6 +5718,98 @@
5676
5718
  }
5677
5719
  }
5678
5720
 
5721
+ async function loadRoutingMap() {
5722
+ const chainsEl = document.getElementById('routingMapChainsBody');
5723
+ const compsEl = document.getElementById('routingMapComponentsBody');
5724
+ // Render one door+model position as a compact chip line.
5725
+ const flags = (p) => {
5726
+ const f = [];
5727
+ if (p.doorClass === 'metered') f.push('metered' + (p.skippedInIncrementA ? ' · skipped now' : ''));
5728
+ if (p.moneyGated) f.push('money-gated');
5729
+ if (p.injectionSafe === false) f.push('unsafe for untrusted input');
5730
+ if (p.claudeBanned) f.push('no-Claude');
5731
+ return f.length ? ' <span style="color:var(--text-dim)">(' + f.map(escapeHtml).join(' · ') + ')</span>' : '';
5732
+ };
5733
+ const posLine = (p, i) => '<div style="padding:2px 0">' +
5734
+ '<span style="color:var(--text-dim)">' + (i + 1) + '.</span> ' +
5735
+ '<b>' + escapeHtml(p.door) + '</b> → ' + escapeHtml(p.modelId) + flags(p) + '</div>';
5736
+ const th = (t, right) => '<th style="padding:6px 8px;' + (right ? 'text-align:right' : 'text-align:left') + '">' + t + '</th>';
5737
+ const td = (v, right) => '<td style="padding:6px 8px;vertical-align:top;' + (right ? 'text-align:right' : '') + '">' + v + '</td>';
5738
+ try {
5739
+ const data = await apiFetch('/intelligence/routing/chains');
5740
+ const chains = data.chains || [];
5741
+ chainsEl.innerHTML =
5742
+ '<div style="font-size:11px;color:var(--text-dim);margin-bottom:8px">Enforced default framework: <b>' +
5743
+ escapeHtml(String(data.defaultFramework || '—')) + '</b> · injection signal: ' +
5744
+ escapeHtml(String(data.injectionExposureSource || '—')) + '</div>' +
5745
+ '<div style="display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px">' +
5746
+ chains.map((c) =>
5747
+ '<div style="border:1px solid var(--border);border-radius:6px;padding:10px">' +
5748
+ '<div style="font-weight:600;margin-bottom:4px">' + escapeHtml(c.chain) + '</div>' +
5749
+ (c.positions || []).map(posLine).join('') +
5750
+ '</div>').join('') +
5751
+ '</div>';
5752
+
5753
+ const comps = (data.components || []).slice().sort((a, b) => {
5754
+ // Mapped (has a chain) first, then by component name.
5755
+ if (!!a.chain !== !!b.chain) return a.chain ? -1 : 1;
5756
+ return String(a.component).localeCompare(String(b.component));
5757
+ });
5758
+ if (comps.length === 0) {
5759
+ compsEl.innerHTML = '<div style="color:var(--text-dim)">No components mapped.</div>';
5760
+ return;
5761
+ }
5762
+ const yn = (v) => v === true ? 'yes' : (v === false ? 'no' : '—');
5763
+ compsEl.innerHTML =
5764
+ '<table style="width:100%;border-collapse:collapse;font-size:12px;min-width:760px">' +
5765
+ '<thead><tr style="color:var(--text-dim)">' +
5766
+ th('Job-kind') + th('Category') + th('Lane') + th('Enforced now') +
5767
+ th('Critical gate') + th('Injection exposure') + th('Fallback order') +
5768
+ '</tr></thead><tbody>' +
5769
+ comps.map((c) => {
5770
+ const route = (c.route && c.route.length)
5771
+ ? c.route.map(posLine).join('')
5772
+ : '<span style="color:var(--text-dim)">legacy category routing (no nature lane)</span>';
5773
+ const lane = c.chain
5774
+ ? escapeHtml(c.chain) + ' <span style="color:var(--text-dim)">(' + escapeHtml(String(c.nature)) + ')</span>'
5775
+ : '<span style="color:var(--text-dim)">—</span>';
5776
+ // Prefer the richer FD5b exposure classification; fall back to the untrusted-input flag.
5777
+ let exposure;
5778
+ if (c.injectionExposure) {
5779
+ const ch = c.injectionExposure.channels || {};
5780
+ const chans = ['user', 'model', 'tool'].filter((k) => ch[k]);
5781
+ exposure = c.injectionExposure.exposed
5782
+ ? 'exposed' + (chans.length ? ' <span style="color:var(--text-dim)">(' + chans.join('/') + ')</span>' : '')
5783
+ : 'not exposed' + (c.injectionExposure.reason ? ' <span style="color:var(--text-dim)">(' + escapeHtml(c.injectionExposure.reason) + ')</span>' : '');
5784
+ } else if (c.untrustedInput === true) {
5785
+ exposure = 'exposed';
5786
+ } else if (c.untrustedInput === false) {
5787
+ exposure = 'not exposed' + (c.untrustedInputReason ? ' <span style="color:var(--text-dim)">(' + escapeHtml(c.untrustedInputReason) + ')</span>' : '');
5788
+ } else {
5789
+ exposure = '—';
5790
+ }
5791
+ return '<tr style="border-top:1px solid var(--border)">' +
5792
+ td('<b>' + escapeHtml(c.component) + '</b>') +
5793
+ td(escapeHtml(String(c.category || '—'))) +
5794
+ td(lane) +
5795
+ td(escapeHtml(String(c.enforcedFramework || '—'))) +
5796
+ td(c.criticalGate ? '<b>yes</b>' : 'no') +
5797
+ td(exposure) +
5798
+ td(route) +
5799
+ '</tr>';
5800
+ }).join('') +
5801
+ '</tbody></table>';
5802
+ } catch (err) {
5803
+ const m = err && err.message ? String(err.message) : String(err);
5804
+ if (/503|unavailable|not initialized/i.test(m)) {
5805
+ chainsEl.innerHTML = '<div style="color:var(--text-dim)">The routing map isn\'t available on this agent (no AI provider configured).</div>';
5806
+ } else {
5807
+ chainsEl.innerHTML = '<div style="color:var(--red)">Error: ' + escapeHtml(m) + '</div>';
5808
+ }
5809
+ compsEl.innerHTML = '';
5810
+ }
5811
+ }
5812
+
5679
5813
  async function loadResources() {
5680
5814
  const headlineEl = document.getElementById('resourcesHeadlineBody');
5681
5815
  const sourcesEl = document.getElementById('resourcesSourcesBody');
@@ -0,0 +1,110 @@
1
+ /**
2
+ * Nature-axis routing MAP — a pure, read-only composition of the shipped routing
3
+ * data (docs/specs/nature-axis-routing.md, FD11 "readable canary"). It answers a
4
+ * single operator question: for every known internal job-kind, which door + model
5
+ * does it use, and what is its full ordered fallback tier list?
6
+ *
7
+ * This module is DATA-ONLY and SIDE-EFFECT-FREE. It reads exported maps from
8
+ * `llmBenchCoverage` (the four routing chains, the job-kind→nature registry, the
9
+ * label→model-id registry, the door taxonomy, the critical-gate set, and the
10
+ * per-component untrusted-input classification) and `componentCategories` (the
11
+ * known-component list + categories) and composes them into a display structure.
12
+ * It performs ZERO writes, mutates NO config, and changes NO routing behavior —
13
+ * it only DESCRIBES the maps the resolver already uses. It backs
14
+ * `GET /intelligence/routing/chains`.
15
+ *
16
+ * Injection-exposure display: three shipped signals — per-position `injectionSafe`
17
+ * (a door that must not take an injection-exposed call, e.g. Groq), per-component
18
+ * `LLM_UNTRUSTED_INPUT` (does the component judge attacker-controllable content), and
19
+ * the per-component FD5b `LLM_ROUTING_INJECTION_EXPOSURE` classification (exposed + the
20
+ * user/model/tool input channels), surfaced when that map is present on the base.
21
+ */
22
+ import { type RoutingChain, type RoutingDoor, type TaskNature } from '../data/llmBenchCoverage.js';
23
+ import { type ComponentCategory } from './componentCategories.js';
24
+ /** One resolved chain position for display: the door + concrete model id + static flags. */
25
+ export interface RoutingMapPosition {
26
+ /** The access path to a model (CLI harness or metered API). */
27
+ readonly door: RoutingDoor;
28
+ /** `cli` (an installed harness) or `metered` (a paid API door). */
29
+ readonly doorClass: 'cli' | 'metered';
30
+ /** The chain position's benchmark label / tier hint. */
31
+ readonly label: string;
32
+ /** The concrete model id (label resolved via ROUTING_LABEL_TO_MODEL_ID; a tier hint passes through). */
33
+ readonly modelId: string;
34
+ /** `false` only when this door must NOT take an injection-exposed call (FD5b; e.g. Groq WRITE). */
35
+ readonly injectionSafe: boolean;
36
+ /** A real-spend door gated behind Increment B's money/PIN go-live. */
37
+ readonly moneyGated: boolean;
38
+ /** Vault secret name backing a metered door (Increment B). */
39
+ readonly keyRef?: string;
40
+ /** doc-tree / cartographer components may never route to any claude-code door (R6). */
41
+ readonly claudeBanned: boolean;
42
+ /**
43
+ * Metered doors are DEFINED but always skipped (unavailable) in Increment A — so
44
+ * this position does not actuate today. Purely informational.
45
+ */
46
+ readonly skippedInIncrementA: boolean;
47
+ }
48
+ /** A full chain (FAST/SORT/JUDGE/WRITE): its ordered position list. */
49
+ export interface RoutingMapChain {
50
+ readonly chain: RoutingChain;
51
+ readonly positions: readonly RoutingMapPosition[];
52
+ }
53
+ /** One known component's routing entry. */
54
+ export interface RoutingMapComponent {
55
+ readonly component: string;
56
+ readonly category: ComponentCategory;
57
+ /** The task nature (A/B/D/E) — null when the component is unmapped (legacy category routing). */
58
+ readonly nature: TaskNature | null;
59
+ /** The routing chain — null when unmapped. */
60
+ readonly chain: RoutingChain | null;
61
+ /** A fail-closed critical gate: no available door ⇒ throw, never fall through (FD6). */
62
+ readonly criticalGate: boolean;
63
+ /** Does the component judge attacker-controllable content? true / false(+reason) / null(=unclassified). */
64
+ readonly untrustedInput: boolean | null;
65
+ /** When `untrustedInput` is false, the argued reason for the exemption. */
66
+ readonly untrustedInputReason?: string;
67
+ /**
68
+ * FD5b injection-exposure classification: whether the component's LLM call can carry
69
+ * attacker-controllable content, and via which channel(s) (user / model / tool). Present
70
+ * only when the shipped FD5b `LLM_ROUTING_INJECTION_EXPOSURE` map is on the base.
71
+ */
72
+ readonly injectionExposure?: {
73
+ readonly exposed: boolean;
74
+ readonly channels: {
75
+ readonly user: boolean;
76
+ readonly model: boolean;
77
+ readonly tool: boolean;
78
+ };
79
+ readonly reason?: string;
80
+ };
81
+ /** The CURRENTLY-enforced legacy framework (live, optional — injected by the route). */
82
+ readonly enforcedFramework?: string;
83
+ /** The ordered resolved chain for this component ([] when unmapped). */
84
+ readonly route: readonly RoutingMapPosition[];
85
+ }
86
+ /** The full read-only routing map. */
87
+ export interface NatureRoutingMap {
88
+ readonly doors: {
89
+ readonly cli: readonly RoutingDoor[];
90
+ readonly metered: readonly RoutingDoor[];
91
+ };
92
+ readonly chains: readonly RoutingMapChain[];
93
+ readonly components: readonly RoutingMapComponent[];
94
+ /** Which injection-exposure signal the display is sourced from. */
95
+ readonly injectionExposureSource: 'FD5b-exposure-map' | 'untrusted-input-flag';
96
+ readonly note: string;
97
+ }
98
+ /**
99
+ * Build the full nature-axis routing map. Pure — reads exported static maps and an
100
+ * optional live `enforcedFrameworkFor` callback, writes nothing, mutates nothing.
101
+ */
102
+ export declare function buildNatureRoutingMap(opts?: {
103
+ /** Optional live resolver for the CURRENTLY-enforced legacy framework of a component. */
104
+ enforcedFrameworkFor?: (component: string) => string | undefined;
105
+ }): NatureRoutingMap;
106
+ /** Look up a single component's routing entry (for the `?trace=<component>` drill-down). */
107
+ export declare function traceComponent(component: string, opts?: {
108
+ enforcedFrameworkFor?: (component: string) => string | undefined;
109
+ }): RoutingMapComponent | undefined;
110
+ //# sourceMappingURL=natureRoutingMap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"natureRoutingMap.d.ts","sourceRoot":"","sources":["../../src/core/natureRoutingMap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,EASL,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,UAAU,EAEhB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAyC,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAEzG,4FAA4F;AAC5F,MAAM,WAAW,kBAAkB;IACjC,+DAA+D;IAC/D,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,mEAAmE;IACnE,QAAQ,CAAC,SAAS,EAAE,KAAK,GAAG,SAAS,CAAC;IACtC,wDAAwD;IACxD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,wGAAwG;IACxG,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,mGAAmG;IACnG,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,sEAAsE;IACtE,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,8DAA8D;IAC9D,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,uFAAuF;IACvF,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B;;;OAGG;IACH,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAC;CACvC;AAED,uEAAuE;AACvE,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,SAAS,kBAAkB,EAAE,CAAC;CACnD;AAED,2CAA2C;AAC3C,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC,iGAAiG;IACjG,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IACnC,8CAA8C;IAC9C,QAAQ,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CAAC;IACpC,wFAAwF;IACxF,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,2GAA2G;IAC3G,QAAQ,CAAC,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IACxC,2EAA2E;IAC3E,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IACvC;;;;OAIG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE;QAC3B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;QAC1B,QAAQ,CAAC,QAAQ,EAAE;YAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;YAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;YAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;SAAE,CAAC;QAC/F,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,wFAAwF;IACxF,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,wEAAwE;IACxE,QAAQ,CAAC,KAAK,EAAE,SAAS,kBAAkB,EAAE,CAAC;CAC/C;AAED,sCAAsC;AACtC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,GAAG,EAAE,SAAS,WAAW,EAAE,CAAC;QAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,WAAW,EAAE,CAAA;KAAE,CAAC;IACnG,QAAQ,CAAC,MAAM,EAAE,SAAS,eAAe,EAAE,CAAC;IAC5C,QAAQ,CAAC,UAAU,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACpD,mEAAmE;IACnE,QAAQ,CAAC,uBAAuB,EAAE,mBAAmB,GAAG,sBAAsB,CAAC;IAC/E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAkCD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,CAAC,EAAE;IAC3C,yFAAyF;IACzF,oBAAoB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;CAClE,GAAG,gBAAgB,CA6DnB;AAED,4FAA4F;AAC5F,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE;IAAE,oBAAoB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAA;CAAE,GAC1E,mBAAmB,GAAG,SAAS,CAEjC"}
@@ -0,0 +1,120 @@
1
+ /**
2
+ * Nature-axis routing MAP — a pure, read-only composition of the shipped routing
3
+ * data (docs/specs/nature-axis-routing.md, FD11 "readable canary"). It answers a
4
+ * single operator question: for every known internal job-kind, which door + model
5
+ * does it use, and what is its full ordered fallback tier list?
6
+ *
7
+ * This module is DATA-ONLY and SIDE-EFFECT-FREE. It reads exported maps from
8
+ * `llmBenchCoverage` (the four routing chains, the job-kind→nature registry, the
9
+ * label→model-id registry, the door taxonomy, the critical-gate set, and the
10
+ * per-component untrusted-input classification) and `componentCategories` (the
11
+ * known-component list + categories) and composes them into a display structure.
12
+ * It performs ZERO writes, mutates NO config, and changes NO routing behavior —
13
+ * it only DESCRIBES the maps the resolver already uses. It backs
14
+ * `GET /intelligence/routing/chains`.
15
+ *
16
+ * Injection-exposure display: three shipped signals — per-position `injectionSafe`
17
+ * (a door that must not take an injection-exposed call, e.g. Groq), per-component
18
+ * `LLM_UNTRUSTED_INPUT` (does the component judge attacker-controllable content), and
19
+ * the per-component FD5b `LLM_ROUTING_INJECTION_EXPOSURE` classification (exposed + the
20
+ * user/model/tool input channels), surfaced when that map is present on the base.
21
+ */
22
+ import { NATURE_ROUTING_DEFAULT_CHAINS, LLM_ROUTING_NATURE, ROUTING_LABEL_TO_MODEL_ID, CLI_ROUTING_DOORS, METERED_ROUTING_DOORS, NATURE_ROUTING_CRITICAL_GATES, LLM_UNTRUSTED_INPUT, LLM_ROUTING_INJECTION_EXPOSURE, } from '../data/llmBenchCoverage.js';
23
+ import { knownComponents, categoryForComponent } from './componentCategories.js';
24
+ /** The canonical chain order for display. */
25
+ const CHAIN_ORDER = ['FAST', 'SORT', 'JUDGE', 'WRITE'];
26
+ /** Resolve a chain position's `model` label to a concrete id (FD-LABEL); a tier hint passes through. Pure. */
27
+ function resolveModelId(pos) {
28
+ return ROUTING_LABEL_TO_MODEL_ID[pos.door]?.[pos.model] ?? pos.model;
29
+ }
30
+ /** Compose one display position from a chain position. Pure. */
31
+ function toMapPosition(pos) {
32
+ const doorClass = CLI_ROUTING_DOORS.has(pos.door) ? 'cli' : 'metered';
33
+ return {
34
+ door: pos.door,
35
+ doorClass,
36
+ label: pos.model,
37
+ modelId: resolveModelId(pos),
38
+ injectionSafe: pos.injectionSafe !== false, // undefined ⇒ safe; only explicit false ⇒ unsafe
39
+ moneyGated: pos.moneyGated === true,
40
+ keyRef: pos.keyRef,
41
+ claudeBanned: pos.claudeBanned === true,
42
+ skippedInIncrementA: METERED_ROUTING_DOORS.has(pos.door),
43
+ };
44
+ }
45
+ /** Resolve a component's untrusted-input classification for display. */
46
+ function untrustedFor(component) {
47
+ const raw = LLM_UNTRUSTED_INPUT[component];
48
+ if (raw === true)
49
+ return { flag: true };
50
+ if (raw && typeof raw === 'object')
51
+ return { flag: false, reason: raw.false };
52
+ return { flag: null }; // undeclared
53
+ }
54
+ /**
55
+ * Build the full nature-axis routing map. Pure — reads exported static maps and an
56
+ * optional live `enforcedFrameworkFor` callback, writes nothing, mutates nothing.
57
+ */
58
+ export function buildNatureRoutingMap(opts) {
59
+ // Pre-compose the four canonical chains once (each component reuses these).
60
+ const chainPositions = {
61
+ FAST: NATURE_ROUTING_DEFAULT_CHAINS.FAST.map(toMapPosition),
62
+ SORT: NATURE_ROUTING_DEFAULT_CHAINS.SORT.map(toMapPosition),
63
+ JUDGE: NATURE_ROUTING_DEFAULT_CHAINS.JUDGE.map(toMapPosition),
64
+ WRITE: NATURE_ROUTING_DEFAULT_CHAINS.WRITE.map(toMapPosition),
65
+ };
66
+ const chains = CHAIN_ORDER.map((chain) => ({
67
+ chain,
68
+ positions: chainPositions[chain],
69
+ }));
70
+ const components = knownComponents().map((component) => {
71
+ const nc = LLM_ROUTING_NATURE[component];
72
+ const nature = nc ? nc.nature : null;
73
+ const chain = nc ? nc.chain : null;
74
+ const { flag, reason } = untrustedFor(component);
75
+ const enforcedFramework = opts?.enforcedFrameworkFor?.(component);
76
+ const ie = LLM_ROUTING_INJECTION_EXPOSURE[component];
77
+ return {
78
+ component,
79
+ category: categoryForComponent(component),
80
+ nature,
81
+ chain,
82
+ criticalGate: NATURE_ROUTING_CRITICAL_GATES.has(component),
83
+ untrustedInput: flag,
84
+ ...(reason ? { untrustedInputReason: reason } : {}),
85
+ ...(ie
86
+ ? {
87
+ injectionExposure: {
88
+ exposed: ie.exposed,
89
+ channels: {
90
+ user: ie.inputShape.userContent,
91
+ model: ie.inputShape.modelContent,
92
+ tool: ie.inputShape.toolContent,
93
+ },
94
+ ...(ie.reason ? { reason: ie.reason } : {}),
95
+ },
96
+ }
97
+ : {}),
98
+ ...(enforcedFramework ? { enforcedFramework } : {}),
99
+ route: chain ? chainPositions[chain] : [],
100
+ };
101
+ });
102
+ return {
103
+ doors: {
104
+ cli: [...CLI_ROUTING_DOORS],
105
+ metered: [...METERED_ROUTING_DOORS],
106
+ },
107
+ chains,
108
+ components,
109
+ injectionExposureSource: 'FD5b-exposure-map',
110
+ note: 'Read-only routing MAP: for each internal job-kind, its nature/chain and the ordered ' +
111
+ 'fallback door+model list. Describes the shipped nature-routing chains — it does NOT ' +
112
+ 'reflect live actuation (nature routing is dev-gated/dryRun) and changes no behavior. ' +
113
+ 'Metered (paid-API) doors are skipped in Increment A. Spend/PIN controls are out of scope.',
114
+ };
115
+ }
116
+ /** Look up a single component's routing entry (for the `?trace=<component>` drill-down). */
117
+ export function traceComponent(component, opts) {
118
+ return buildNatureRoutingMap(opts).components.find((c) => c.component === component);
119
+ }
120
+ //# sourceMappingURL=natureRoutingMap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"natureRoutingMap.js","sourceRoot":"","sources":["../../src/core/natureRoutingMap.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/server/routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/server/routes.ts"],"names":[],"mappings":"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"}
@@ -38,6 +38,7 @@ import { PROPOSABLE_FLOOR_ACTIONS, renderAuthorizationCard } from '../core/Autho
38
38
  import { planTransferByNickname } from '../core/TransferByNickname.js';
39
39
  import { IntelligenceRouter } from '../core/IntelligenceRouter.js';
40
40
  import { knownComponents } from '../core/componentCategories.js';
41
+ import { buildNatureRoutingMap, traceComponent } from '../core/natureRoutingMap.js';
41
42
  import { SecretStore } from '../core/SecretStore.js';
42
43
  import { secretKeyPaths } from '../core/SecretSync.js';
43
44
  import { PlaywrightProfileRegistry, PlaywrightRegistryError, PlaywrightRegistryCorruptError, DEFAULT_BLOCK_MAX_BYTES as PLAYWRIGHT_BLOCK_MAX_BYTES, } from '../core/PlaywrightProfileRegistry.js';
@@ -8885,6 +8886,44 @@ document.getElementById('mcpForm').addEventListener('submit', async function (e)
8885
8886
  note: 'Routes INTERNAL component LLM calls only; spawned interactive sessions use topicFrameworks.',
8886
8887
  });
8887
8888
  });
8889
+ // ── Nature-axis routing MAP (FD11 readable canary; read-only) ─────────
8890
+ // A richer, non-breaking SIBLING of GET /intelligence/routing. Where the legacy
8891
+ // route returns the live category→framework view (IntelligenceRouter.for), this
8892
+ // returns the full nature-axis routing MAP: for every known internal job-kind, its
8893
+ // nature/chain and the ORDERED fallback door+model list, with per-door flags
8894
+ // (injection-safe / money-gated / metered-skipped-in-Increment-A) and per-component
8895
+ // critical-gate + untrusted-input annotations. Composed PURELY from the shipped
8896
+ // static routing maps (docs/specs/nature-axis-routing.md) — it performs ZERO writes,
8897
+ // mutates no config, and changes NO routing behavior; it only DESCRIBES the maps.
8898
+ // `?trace=<component>` drills into a single component. Same Bearer-auth + 503-when-
8899
+ // no-IntelligenceRouter shape as the legacy route above.
8900
+ router.get('/intelligence/routing/chains', (req, res) => {
8901
+ const intel = ctx.intelligence;
8902
+ if (!intel || !(intel instanceof IntelligenceRouter)) {
8903
+ res.status(503).json({ error: 'intelligence router unavailable (no LLM provider configured)' });
8904
+ return;
8905
+ }
8906
+ // Live legacy-framework annotation per component (the "currently enforced" view,
8907
+ // read-only) — lets the map show enforced framework alongside the nature chain.
8908
+ // `intel.for` is a pure registry resolution (the legacy route above calls it bare);
8909
+ // no try/catch — a silent catch here would be a swallowed fallback with no report.
8910
+ const enforcedFrameworkFor = (name) => intel.for(name).framework;
8911
+ const traceName = typeof req.query.trace === 'string' ? req.query.trace.trim() : '';
8912
+ if (traceName) {
8913
+ const entry = traceComponent(traceName, { enforcedFrameworkFor });
8914
+ if (!entry) {
8915
+ res.status(404).json({ error: `unknown component '${traceName}'` });
8916
+ return;
8917
+ }
8918
+ res.json({ trace: entry });
8919
+ return;
8920
+ }
8921
+ const map = buildNatureRoutingMap({ enforcedFrameworkFor });
8922
+ res.json({
8923
+ defaultFramework: intel.for('__nonexistent__').framework,
8924
+ ...map,
8925
+ });
8926
+ });
8888
8927
  // ── Release-readiness (Layer B of release-readiness-visibility) ──────
8889
8928
  // Null when there's no analyzable instar git repo or the feature is off.
8890
8929
  router.get('/release-readiness', (_req, res) => {