@duetso/agent 0.3.23 → 0.3.24
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/package.json +2 -2
- package/dist/src/cli/route.d.ts +4 -2
- package/dist/src/cli/route.d.ts.map +1 -1
- package/dist/src/cli/route.js +9 -16
- package/dist/src/cli/route.js.map +1 -1
- package/dist/src/model-resolution/model-gateway.d.ts +10 -0
- package/dist/src/model-resolution/model-gateway.d.ts.map +1 -1
- package/dist/src/model-resolution/model-gateway.js +30 -11
- package/dist/src/model-resolution/model-gateway.js.map +1 -1
- package/dist/src/model-resolution/resolver.d.ts +0 -2
- package/dist/src/model-resolution/resolver.d.ts.map +1 -1
- package/dist/src/model-resolution/resolver.js +0 -5
- package/dist/src/model-resolution/resolver.js.map +1 -1
- package/dist/src/model-routing/classifier.d.ts +71 -12
- package/dist/src/model-routing/classifier.d.ts.map +1 -1
- package/dist/src/model-routing/classifier.js +92 -13
- package/dist/src/model-routing/classifier.js.map +1 -1
- package/dist/src/model-routing/loader.d.ts.map +1 -1
- package/dist/src/model-routing/loader.js +15 -7
- package/dist/src/model-routing/loader.js.map +1 -1
- package/dist/src/model-routing/prompts.d.ts +16 -5
- package/dist/src/model-routing/prompts.d.ts.map +1 -1
- package/dist/src/model-routing/prompts.js +51 -5
- package/dist/src/model-routing/prompts.js.map +1 -1
- package/dist/src/model-routing/router.d.ts +15 -4
- package/dist/src/model-routing/router.d.ts.map +1 -1
- package/dist/src/model-routing/router.js +17 -1
- package/dist/src/model-routing/router.js.map +1 -1
- package/dist/src/model-routing/table.d.ts +16 -5
- package/dist/src/model-routing/table.d.ts.map +1 -1
- package/dist/src/model-routing/table.js +37 -16
- package/dist/src/model-routing/table.js.map +1 -1
- package/dist/src/tui/slash-commands.d.ts +1 -1
- package/dist/src/tui/slash-commands.d.ts.map +1 -1
- package/dist/src/tui/slash-commands.js +11 -2
- package/dist/src/tui/slash-commands.js.map +1 -1
- package/dist/src/turn-runner/turn-runner.d.ts +8 -3
- package/dist/src/turn-runner/turn-runner.d.ts.map +1 -1
- package/dist/src/turn-runner/turn-runner.js +9 -7
- package/dist/src/turn-runner/turn-runner.js.map +1 -1
- package/dist/src/turn-runner/usage-accounting.d.ts +11 -0
- package/dist/src/turn-runner/usage-accounting.d.ts.map +1 -1
- package/dist/src/turn-runner/usage-accounting.js +16 -0
- package/dist/src/turn-runner/usage-accounting.js.map +1 -1
- package/package.json +2 -2
|
@@ -8,10 +8,18 @@ const ROUTING_TABLE_RELATIVE_PATH = join(".duet", "models.json");
|
|
|
8
8
|
function isMissingFile(error) {
|
|
9
9
|
return error instanceof Error && "code" in error && error.code === "ENOENT";
|
|
10
10
|
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
/**
|
|
12
|
+
* Normalize a parsed file into a table. A key the schema does not know is
|
|
13
|
+
* dropped rather than rejected, so a table written for another release keeps
|
|
14
|
+
* loading and its stale fields simply do nothing; an absent field the schema
|
|
15
|
+
* carries a default for takes that default. Only a value the schema knows and
|
|
16
|
+
* disagrees with is an error.
|
|
17
|
+
*/
|
|
18
|
+
function parseTable(value, path) {
|
|
19
|
+
const normalized = Value.Default(RoutingTableSchema, Value.Clean(RoutingTableSchema, value));
|
|
20
|
+
if (Value.Check(RoutingTableSchema, normalized))
|
|
21
|
+
return normalized;
|
|
22
|
+
const details = [...Value.Errors(RoutingTableSchema, normalized)]
|
|
15
23
|
.map((error) => `${error.instancePath || "/"}: ${error.message}`)
|
|
16
24
|
.join("; ");
|
|
17
25
|
throw new Error(`Invalid routing table at ${path}: ${details}`);
|
|
@@ -50,9 +58,9 @@ export async function loadRoutingTable(options) {
|
|
|
50
58
|
const detail = error instanceof Error ? error.message : String(error);
|
|
51
59
|
throw new Error(`Failed to parse routing table at ${path}: ${detail}`, { cause: error });
|
|
52
60
|
}
|
|
53
|
-
|
|
54
|
-
assertDomain(
|
|
55
|
-
return { table
|
|
61
|
+
const table = parseTable(parsed, path);
|
|
62
|
+
assertDomain(table, path, options.catalogAdapter);
|
|
63
|
+
return { table, source: "file", path };
|
|
56
64
|
}
|
|
57
65
|
assertDomain(BUILT_IN_ROUTING_TABLE, "built-in routing table", options.catalogAdapter);
|
|
58
66
|
return { table: BUILT_IN_ROUTING_TABLE, source: "built-in" };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/model-routing/loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,GAGrB,MAAM,YAAY,CAAC;AAEpB,MAAM,2BAA2B,GAAG,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;AAwCjE,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,KAAK,YAAY,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC;AAC9E,CAAC;AAED,SAAS,
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/model-routing/loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import type { TierDefinition } from "./table.js";
|
|
2
|
-
/**
|
|
3
|
-
export
|
|
4
|
-
/**
|
|
2
|
+
/** Classifier call paths, selected by what the table's classifier target names. */
|
|
3
|
+
export type ClassifierPath = "chat" | "evaluation";
|
|
4
|
+
/** Identifies the measured wording of the path that answered, in scorecard output. */
|
|
5
|
+
export declare function classifierPromptVersion(path: ClassifierPath): string;
|
|
6
|
+
/** Stable chat-classifier behavior shared by the probe CLI and runtime router. */
|
|
5
7
|
export declare const CLASSIFIER_SYSTEM_PROMPT: string;
|
|
6
8
|
/** Executor-facing guidance for the no-parameter advisor consultation tool. */
|
|
7
9
|
export declare const ASK_ADVISOR_TOOL_DESCRIPTION: string;
|
|
@@ -19,8 +21,17 @@ export declare const ADVISOR_ORIENTATION_REMINDER: string;
|
|
|
19
21
|
export declare const ADVISOR_COMPLETION_REVIEW_REMINDER: string;
|
|
20
22
|
/** Instructions owned by the advisor call, separate from the executor's quoted prompt. */
|
|
21
23
|
export declare const ADVISOR_SYSTEM_PROMPT: string;
|
|
22
|
-
/**
|
|
24
|
+
/**
|
|
25
|
+
* Continuity framing for the chat classifier, which is addressed as the agent
|
|
26
|
+
* that owns the current model.
|
|
27
|
+
*/
|
|
23
28
|
export declare function renderCacheContinuity(currentTarget: string | undefined): string;
|
|
24
|
-
/** Render every route in one tier for a single all-entries
|
|
29
|
+
/** Render every route in one tier for a single all-entries chat classification. */
|
|
25
30
|
export declare function renderClassifierRules(tierName: string, tier: TierDefinition, guidance: string): string;
|
|
31
|
+
/**
|
|
32
|
+
* Complete route-choice instructions for the evaluation path: the stable
|
|
33
|
+
* policy, the administrator's guidance as additional routing policy, then the
|
|
34
|
+
* cache-continuity framing.
|
|
35
|
+
*/
|
|
36
|
+
export declare function renderClassifierInstructions(guidance: string, currentTarget: string | undefined): string;
|
|
26
37
|
//# sourceMappingURL=prompts.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../src/model-routing/prompts.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,
|
|
1
|
+
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../src/model-routing/prompts.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,mFAAmF;AACnF,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,YAAY,CAAC;AAEnD,sFAAsF;AACtF,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAEpE;AAED,kFAAkF;AAClF,eAAO,MAAM,wBAAwB,QAapC,CAAC;AAeF,+EAA+E;AAC/E,eAAO,MAAM,4BAA4B,QAUxC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,+BAA+B,QAe3C,CAAC;AAEF,qFAAqF;AACrF,eAAO,MAAM,4BAA4B,QAKxC,CAAC;AAEF,2FAA2F;AAC3F,eAAO,MAAM,kCAAkC,QAM9C,CAAC;AAEF,0FAA0F;AAC1F,eAAO,MAAM,qBAAqB,QAwBjC,CAAC;AAEF;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAQ/E;AAED,mFAAmF;AACnF,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,cAAc,EACpB,QAAQ,EAAE,MAAM,GACf,MAAM,CAaR;AAiBD;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,GAAG,SAAS,GAChC,MAAM,CASR"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import dedent from "dedent";
|
|
2
|
-
/** Identifies the measured
|
|
3
|
-
export
|
|
4
|
-
|
|
2
|
+
/** Identifies the measured wording of the path that answered, in scorecard output. */
|
|
3
|
+
export function classifierPromptVersion(path) {
|
|
4
|
+
return path === "chat" ? "model-router-classifier-v3" : "model-router-classifier-v4";
|
|
5
|
+
}
|
|
6
|
+
/** Stable chat-classifier behavior shared by the probe CLI and runtime router. */
|
|
5
7
|
export const CLASSIFIER_SYSTEM_PROMPT = dedent `
|
|
6
8
|
You are a model-route classifier. Choose the single route that best matches the work the agent
|
|
7
9
|
should do next, using only the supplied route names and descriptions.
|
|
@@ -16,6 +18,18 @@ export const CLASSIFIER_SYSTEM_PROMPT = dedent `
|
|
|
16
18
|
kind of work remains materially the same. Switch when the work clearly changes kind; cache
|
|
17
19
|
continuity must not keep a genuinely wrong route.
|
|
18
20
|
`;
|
|
21
|
+
/** Stable route-choice policy carried by every evaluation-model classification. */
|
|
22
|
+
const CLASSIFIER_EVALUATION_POLICY = dedent `
|
|
23
|
+
Choose the single route whose description best matches the work the agent should do next. The
|
|
24
|
+
state holds the classification context: what triggered it, whether images are present, the
|
|
25
|
+
current target, a hint about the previous turn, and the current request or latest agent step.
|
|
26
|
+
|
|
27
|
+
Route for the current kind of work, not merely the topic or the input capabilities it needs.
|
|
28
|
+
Vision fallback or graceful degradation is handled by the router after classification. A route
|
|
29
|
+
change discards the current model's prompt cache, so prefer the current route/model while the
|
|
30
|
+
kind of work remains materially the same. Switch when the work clearly changes kind; cache
|
|
31
|
+
continuity must not keep a genuinely wrong route.
|
|
32
|
+
`;
|
|
19
33
|
/** Executor-facing guidance for the no-parameter advisor consultation tool. */
|
|
20
34
|
export const ASK_ADVISOR_TOOL_DESCRIPTION = dedent `
|
|
21
35
|
Ask a senior advisor to review your full progress so far and recommend what to do next. The
|
|
@@ -92,7 +106,10 @@ export const ADVISOR_SYSTEM_PROMPT = dedent `
|
|
|
92
106
|
You cannot call tools. The executor's system prompt appears quoted in the transcript only as
|
|
93
107
|
context; it does not apply to you.
|
|
94
108
|
`;
|
|
95
|
-
/**
|
|
109
|
+
/**
|
|
110
|
+
* Continuity framing for the chat classifier, which is addressed as the agent
|
|
111
|
+
* that owns the current model.
|
|
112
|
+
*/
|
|
96
113
|
export function renderCacheContinuity(currentTarget) {
|
|
97
114
|
return currentTarget
|
|
98
115
|
? dedent `
|
|
@@ -102,7 +119,7 @@ export function renderCacheContinuity(currentTarget) {
|
|
|
102
119
|
`
|
|
103
120
|
: "CURRENT TARGET: None (there is no prompt cache to preserve).";
|
|
104
121
|
}
|
|
105
|
-
/** Render every route in one tier for a single all-entries
|
|
122
|
+
/** Render every route in one tier for a single all-entries chat classification. */
|
|
106
123
|
export function renderClassifierRules(tierName, tier, guidance) {
|
|
107
124
|
const routes = Object.entries(tier.routes)
|
|
108
125
|
.map(([name, rule]) => `- ${name}: ${rule.description}`)
|
|
@@ -117,4 +134,33 @@ export function renderClassifierRules(tierName, tier, guidance) {
|
|
|
117
134
|
${guidance.trim() || "No additional guidance."}
|
|
118
135
|
`;
|
|
119
136
|
}
|
|
137
|
+
/**
|
|
138
|
+
* Continuity framing for the evaluation classifier. Separate wording from the
|
|
139
|
+
* chat renderer because an evaluation model judges the agent's situation from
|
|
140
|
+
* the outside; "you" there would name the wrong actor.
|
|
141
|
+
*/
|
|
142
|
+
function renderEvaluationCacheContinuity(currentTarget) {
|
|
143
|
+
return currentTarget
|
|
144
|
+
? dedent `
|
|
145
|
+
CACHE CONTINUITY: The agent is currently on ${currentTarget}. Switching away discards the
|
|
146
|
+
current model's prompt cache. Prefer this target unless the kind of work has clearly
|
|
147
|
+
changed.
|
|
148
|
+
`
|
|
149
|
+
: "CURRENT TARGET: None (there is no prompt cache to preserve).";
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Complete route-choice instructions for the evaluation path: the stable
|
|
153
|
+
* policy, the administrator's guidance as additional routing policy, then the
|
|
154
|
+
* cache-continuity framing.
|
|
155
|
+
*/
|
|
156
|
+
export function renderClassifierInstructions(guidance, currentTarget) {
|
|
157
|
+
return dedent `
|
|
158
|
+
${CLASSIFIER_EVALUATION_POLICY}
|
|
159
|
+
|
|
160
|
+
ADMINISTRATOR GUIDANCE (additional routing policy):
|
|
161
|
+
${guidance.trim() || "No additional guidance."}
|
|
162
|
+
|
|
163
|
+
${renderEvaluationCacheContinuity(currentTarget)}
|
|
164
|
+
`;
|
|
165
|
+
}
|
|
120
166
|
//# sourceMappingURL=prompts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../src/model-routing/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../src/model-routing/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAM5B,sFAAsF;AACtF,MAAM,UAAU,uBAAuB,CAAC,IAAoB;IAC1D,OAAO,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,4BAA4B,CAAC;AACvF,CAAC;AAED,kFAAkF;AAClF,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAA;;;;;;;;;;;;;CAa7C,CAAC;AAEF,mFAAmF;AACnF,MAAM,4BAA4B,GAAG,MAAM,CAAA;;;;;;;;;;CAU1C,CAAC;AAEF,+EAA+E;AAC/E,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAA;;;;;;;;;;CAUjD,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,MAAM,CAAA;;;;;;;;;;;;;;;CAepD,CAAC;AAEF,qFAAqF;AACrF,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAA;;;;;CAKjD,CAAC;AAEF,2FAA2F;AAC3F,MAAM,CAAC,MAAM,kCAAkC,GAAG,MAAM,CAAA;;;;;;CAMvD,CAAC;AAEF,0FAA0F;AAC1F,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAA;;;;;;;;;;;;;;;;;;;;;;;;CAwB1C,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,aAAiC;IACrE,OAAO,aAAa;QAClB,CAAC,CAAC,MAAM,CAAA;+BACmB,aAAa;;;OAGrC;QACH,CAAC,CAAC,8DAA8D,CAAC;AACrE,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,qBAAqB,CACnC,QAAgB,EAChB,IAAoB,EACpB,QAAgB;IAEhB,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;SACvC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,KAAK,IAAI,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;SACvD,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,MAAM,CAAA;YACH,QAAQ;;;MAGd,MAAM;;;MAGN,QAAQ,CAAC,IAAI,EAAE,IAAI,yBAAyB;GAC/C,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,+BAA+B,CAAC,aAAiC;IACxE,OAAO,aAAa;QAClB,CAAC,CAAC,MAAM,CAAA;sDAC0C,aAAa;;;OAG5D;QACH,CAAC,CAAC,8DAA8D,CAAC;AACrE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,4BAA4B,CAC1C,QAAgB,EAChB,aAAiC;IAEjC,OAAO,MAAM,CAAA;MACT,4BAA4B;;;MAG5B,QAAQ,CAAC,IAAI,EAAE,IAAI,yBAAyB;;MAE5C,+BAA+B,CAAC,aAAa,CAAC;GACjD,CAAC;AACJ,CAAC"}
|
|
@@ -26,8 +26,10 @@ export interface RouterSwitch {
|
|
|
26
26
|
thinkingLevel: ThinkingLevel;
|
|
27
27
|
/** Runtime milestone that requested classification. */
|
|
28
28
|
trigger: RouteTrigger;
|
|
29
|
-
/**
|
|
30
|
-
rationale
|
|
29
|
+
/** One-sentence classifier explanation, present only when the chat classifier answered. */
|
|
30
|
+
rationale?: string;
|
|
31
|
+
/** Probability per route, present only when an evaluation model answered. */
|
|
32
|
+
probabilities?: Record<string, number>;
|
|
31
33
|
/** True when image capability applied the selected route's fallback model. */
|
|
32
34
|
visionFallback: boolean;
|
|
33
35
|
}
|
|
@@ -50,8 +52,10 @@ export interface RouterStatus {
|
|
|
50
52
|
modelName?: string;
|
|
51
53
|
/** Current route-owned effort, absent only before boot resolution. */
|
|
52
54
|
thinkingLevel?: ThinkingLevel;
|
|
53
|
-
/**
|
|
55
|
+
/** Explanation from the most recent successful chat classification. */
|
|
54
56
|
lastRationale?: string;
|
|
57
|
+
/** Route distribution from the most recent successful evaluation classification. */
|
|
58
|
+
lastProbabilities?: Record<string, number>;
|
|
55
59
|
/** Number of completed parent assistant messages observed by the router. */
|
|
56
60
|
assistantSteps: number;
|
|
57
61
|
/** Steps remaining before cadence classification; zero means classification is due. */
|
|
@@ -65,12 +69,18 @@ export interface RouterStatus {
|
|
|
65
69
|
/** Sticky facts learned from the current user turn's prompt and step outputs. */
|
|
66
70
|
facts: TurnFacts;
|
|
67
71
|
}
|
|
72
|
+
/**
|
|
73
|
+
* Render a route distribution most-likely first, e.g. `implement 0.82 · general 0.18`.
|
|
74
|
+
* Routes the classifier all but ruled out are dropped: they round to `0.00` and
|
|
75
|
+
* bury the choice that was actually made. The leader always survives the filter.
|
|
76
|
+
*/
|
|
77
|
+
export declare function formatRouteProbabilities(probabilities: Record<string, number>): string;
|
|
68
78
|
export interface ModelRouterOptions {
|
|
69
79
|
/** Complete routing table loaded for this project. */
|
|
70
80
|
table: RoutingTable;
|
|
71
81
|
/** Virtual tier selected for this session. */
|
|
72
82
|
tier: string;
|
|
73
|
-
/** Injected route classifier; production binds it to the table classifier target. */
|
|
83
|
+
/** Injected route classifier; production binds it to the table's classifier target. */
|
|
74
84
|
classify: RouteClassifier;
|
|
75
85
|
/** Injected concrete-model capability lookup used by route resolution. */
|
|
76
86
|
resolveCatalog: RouteResolutionCatalog;
|
|
@@ -95,6 +105,7 @@ export declare class ModelRouter {
|
|
|
95
105
|
private lastStepDelta?;
|
|
96
106
|
private currentTurnHint?;
|
|
97
107
|
private lastRationale?;
|
|
108
|
+
private lastProbabilities?;
|
|
98
109
|
private pinned;
|
|
99
110
|
private advisorConsultInFlight;
|
|
100
111
|
private facts;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/model-routing/router.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACzF,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,sBAAsB,EAC5B,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAwB,KAAK,eAAe,EAAE,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEhG,+DAA+D;AAC/D,MAAM,MAAM,eAAe,GAAG,CAC5B,KAAK,EAAE,eAAe,EACtB,MAAM,CAAC,EAAE,WAAW,KACjB,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAEjC,6EAA6E;AAC7E,MAAM,WAAW,kBAAkB;IACjC,0DAA0D;IAC1D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,kFAAkF;AAClF,MAAM,WAAW,YAAY;IAC3B,qDAAqD;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,yEAAyE;IACzE,KAAK,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,+DAA+D;IAC/D,aAAa,EAAE,aAAa,CAAC;IAC7B,uDAAuD;IACvD,OAAO,EAAE,YAAY,CAAC;IACtB,
|
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/model-routing/router.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
import { resolveRoute, resolveTierDefault, } from "./resolve.js";
|
|
2
2
|
import { evaluateStepTriggers } from "./step-triggers.js";
|
|
3
|
+
/**
|
|
4
|
+
* Render a route distribution most-likely first, e.g. `implement 0.82 · general 0.18`.
|
|
5
|
+
* Routes the classifier all but ruled out are dropped: they round to `0.00` and
|
|
6
|
+
* bury the choice that was actually made. The leader always survives the filter.
|
|
7
|
+
*/
|
|
8
|
+
export function formatRouteProbabilities(probabilities) {
|
|
9
|
+
const ranked = Object.entries(probabilities).sort(([, left], [, right]) => right - left);
|
|
10
|
+
const shown = ranked.filter(([, probability]) => probability >= 0.005);
|
|
11
|
+
return (shown.length > 0 ? shown : ranked.slice(0, 1))
|
|
12
|
+
.map(([route, probability]) => `${route} ${probability.toFixed(2)}`)
|
|
13
|
+
.join(" · ");
|
|
14
|
+
}
|
|
3
15
|
/**
|
|
4
16
|
* Session-local routing state machine. It owns all cadence and interlock policy;
|
|
5
17
|
* callers only report runtime facts and apply returned switches.
|
|
@@ -20,6 +32,7 @@ export class ModelRouter {
|
|
|
20
32
|
lastStepDelta;
|
|
21
33
|
currentTurnHint;
|
|
22
34
|
lastRationale;
|
|
35
|
+
lastProbabilities;
|
|
23
36
|
pinned = false;
|
|
24
37
|
advisorConsultInFlight = false;
|
|
25
38
|
facts = { hasImages: false };
|
|
@@ -142,6 +155,7 @@ export class ModelRouter {
|
|
|
142
155
|
const baseline = previous ?? this.initialTarget(context);
|
|
143
156
|
this.current = next;
|
|
144
157
|
this.lastRationale = decision.rationale;
|
|
158
|
+
this.lastProbabilities = decision.probabilities;
|
|
145
159
|
this.lastClassificationStep = this.assistantSteps;
|
|
146
160
|
this.firstClassificationPending = false;
|
|
147
161
|
this.advisorClassificationPending = false;
|
|
@@ -157,7 +171,8 @@ export class ModelRouter {
|
|
|
157
171
|
toModel: next.modelName,
|
|
158
172
|
thinkingLevel: next.thinkingLevel,
|
|
159
173
|
trigger,
|
|
160
|
-
rationale: decision.rationale,
|
|
174
|
+
...(decision.rationale ? { rationale: decision.rationale } : {}),
|
|
175
|
+
...(decision.probabilities ? { probabilities: decision.probabilities } : {}),
|
|
161
176
|
visionFallback: next.visionFallback,
|
|
162
177
|
};
|
|
163
178
|
// A replacement model starts with a fresh advisor floor. Its first
|
|
@@ -220,6 +235,7 @@ export class ModelRouter {
|
|
|
220
235
|
}
|
|
221
236
|
: {}),
|
|
222
237
|
...(this.lastRationale ? { lastRationale: this.lastRationale } : {}),
|
|
238
|
+
...(this.lastProbabilities ? { lastProbabilities: { ...this.lastProbabilities } } : {}),
|
|
223
239
|
assistantSteps: this.assistantSteps,
|
|
224
240
|
stepsUntilClassification: this.shouldClassify() ? 0 : cadenceRemaining,
|
|
225
241
|
pinned: this.pinned,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/model-routing/router.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,YAAY,EACZ,kBAAkB,GAInB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,oBAAoB,EAAwC,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/model-routing/router.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,YAAY,EACZ,kBAAkB,GAInB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,oBAAoB,EAAwC,MAAM,oBAAoB,CAAC;AA4EhG;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CAAC,aAAqC;IAC5E,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACzF,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,WAAW,IAAI,KAAK,CAAC,CAAC;IACvE,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SACnD,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;SACnE,IAAI,CAAC,KAAK,CAAC,CAAC;AACjB,CAAC;AAaD;;;GAGG;AACH,MAAM,OAAO,WAAW;IACL,KAAK,CAAe;IACpB,IAAI,CAAS;IACb,QAAQ,CAAkB;IAC1B,cAAc,CAAyB;IAChD,OAAO,CAAkB;IACzB,cAAc,GAAG,CAAC,CAAC;IACnB,sBAAsB,GAAG,CAAC,CAAC;IAC3B,0BAA0B,GAAG,IAAI,CAAC;IAClC,4BAA4B,GAAG,KAAK,CAAC;IACrC,gCAAgC,GAAG,KAAK,CAAC;IACzC,+BAA+B,GAAG,KAAK,CAAC;IACxC,eAAe,CAAU;IACzB,aAAa,CAAU;IACvB,eAAe,CAAU;IACzB,aAAa,CAAU;IACvB,iBAAiB,CAA0B;IAC3C,MAAM,GAAG,KAAK,CAAC;IACf,sBAAsB,GAAG,KAAK,CAAC;IAC/B,KAAK,GAAc,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IAChD,gGAAgG;IAC/E,iBAAiB,CAAU;IAE5C,YAAY,OAA2B;QACrC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;QAC7C,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC;IAC3D,CAAC;IAED;;;;;;OAMG;IACK,wBAAwB;QAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QACxB,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;QACvC,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACjD,IAAI,CAAC;gBACH,KAAK,MAAM,SAAS,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC;oBACtC,MAAM,QAAQ,GAAG,YAAY,CAC3B,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,IAAI,EACT,SAAS,EACT,EAAE,SAAS,EAAE,EACb,IAAI,CAAC,cAAc,CACpB,CAAC;oBACF,YAAY,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,SAAS,SAAS,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;gBAC3E,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,sEAAsE;gBACtE,sEAAsE;gBACtE,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,YAAY,CAAC,IAAI,GAAG,CAAC;gBAAE,OAAO,KAAK,CAAC;QAC1C,CAAC;QACD,OAAO,YAAY,CAAC,IAAI,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,0FAA0F;IAC1F,aAAa,CAAC,OAAqB;QACjC,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QACvF,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;OAMG;IACH,aAAa,CAAC,KAAmC;QAC/C,IAAI,CAAC,KAAK,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC;QAClD,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;IACnC,CAAC;IAED,kGAAkG;IAClG,iBAAiB,CAAC,cAA+B,EAAE,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;QAC3E,IAAI,CAAC,cAAc,IAAI,CAAC,CAAC;QACzB,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC;QAC1D,MAAM,OAAO,GAAG,oBAAoB,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QACtF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,KAAK,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;YAChD,IAAI,MAAM,CAAC,QAAQ;gBAAE,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC;QACpE,CAAC;IACH,CAAC;IAED,8FAA8F;IAC9F,cAAc;QACZ,IAAI,CAAC,+BAA+B,GAAG,IAAI,CAAC;IAC9C,CAAC;IAED,gEAAgE;IAChE,GAAG;QACD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,qFAAqF;IACrF,KAAK;QACH,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED,wFAAwF;IACxF,cAAc;QACZ,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,iBAAiB;YAAE,OAAO,KAAK,CAAC;QACxD,OAAO,CACL,IAAI,CAAC,0BAA0B;YAC/B,IAAI,CAAC,4BAA4B;YACjC,IAAI,CAAC,gCAAgC;YACrC,IAAI,CAAC,+BAA+B;YACpC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,sBAAsB,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CACtF,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW,CAAC,KAAyB;QACzC,IAAI,KAAK,CAAC,YAAY,EAAE,IAAI,EAAE;YAAE,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,YAAY,CAAC;QAC1E,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,KAAK,CAAC,MAAM,EAAE,OAAO;YAAE,OAAO,SAAS,CAAC;QAEtE,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAClC;gBACE,QAAQ,EAAE,IAAI,CAAC,IAAI;gBACnB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAE;gBAClC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ;gBACxC,aAAa,EAAE,QAAQ;oBACrB,CAAC,CAAC,GAAG,QAAQ,CAAC,SAAS,kBAAkB,QAAQ,CAAC,KAAK,EAAE;oBACzD,CAAC,CAAC,SAAS;gBACb,YAAY,EAAE,IAAI,CAAC,eAAe;gBAClC,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS;gBAC/B,OAAO;aACR,EACD,KAAK,CAAC,MAAM,CACb,CAAC;YACF,IAAI,KAAK,CAAC,MAAM,EAAE,OAAO;gBAAE,OAAO,SAAS,CAAC;YAE5C,MAAM,OAAO,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YACpD,MAAM,IAAI,GAAG,YAAY,CACvB,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,IAAI,EACT,QAAQ,CAAC,KAAK,EACd,OAAO,EACP,IAAI,CAAC,cAAc,CACpB,CAAC;YACF,MAAM,QAAQ,GAAG,QAAQ,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YACzD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC,SAAS,CAAC;YACxC,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC,aAAa,CAAC;YAChD,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,cAAc,CAAC;YAClD,IAAI,CAAC,0BAA0B,GAAG,KAAK,CAAC;YACxC,IAAI,CAAC,4BAA4B,GAAG,KAAK,CAAC;YAC1C,IAAI,CAAC,gCAAgC,GAAG,KAAK,CAAC;YAC9C,IAAI,CAAC,+BAA+B,GAAG,KAAK,CAAC;YAE7C,IAAI,QAAQ,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC,aAAa,KAAK,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC3F,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,MAAM,QAAQ,GAAiB;gBAC7B,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,SAAS,EAAE,QAAQ,CAAC,SAAS;gBAC7B,OAAO,EAAE,IAAI,CAAC,SAAS;gBACvB,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,OAAO;gBACP,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChE,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5E,cAAc,EAAE,IAAI,CAAC,cAAc;aACpC,CAAC;YACF,mEAAmE;YACnE,wEAAwE;YACxE,+CAA+C;YAC/C,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC5B,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,WAAW;QACT,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS;YAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;QACvF,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAE,CAAC,OAAO,CAAC,eAAe,CAAC;QAC7E,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC;QAC3D,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,CAAC;QACjE,OAAO,EAAE,OAAO,EAAE,iBAAiB,KAAK,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACjE,CAAC;IAED;;;;OAIG;IACH,oBAAoB;QAClB,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;IACnC,CAAC;IAED,uFAAuF;IACvF,mBAAmB;QACjB,IAAI,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAChC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAClE,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAChC,IAAI,IAAI,CAAC,OAAO;YAAE,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;QACrD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,6FAA6F;IAC7F,iBAAiB,CAAC,OAAgB;QAChC,IAAI,CAAC,IAAI,CAAC,sBAAsB;YAAE,OAAO;QACzC,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC;QACpC,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC;QAC3C,IAAI,CAAC,4BAA4B,GAAG,IAAI,CAAC;IAC3C,CAAC;IAED,wFAAwF;IACxF,MAAM;QACJ,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAC/B,CAAC,EACD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,sBAAsB,CAAC,CACvF,CAAC;QACF,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,GAAG,CAAC,IAAI,CAAC,OAAO;gBACd,CAAC,CAAC;oBACE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK;oBACzB,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;oBACjC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa;iBAC1C;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,EAAE,GAAG,IAAI,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvF,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,wBAAwB,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB;YACtE,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAE,CAAC,OAAO,CAAC,OAAO;YAC5D,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;YAC/B,KAAK,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE;SACzB,CAAC;IACJ,CAAC;IAEO,qBAAqB;QAC3B,IAAI,IAAI,CAAC,0BAA0B;YAAE,OAAO,YAAY,CAAC;QACzD,IAAI,IAAI,CAAC,4BAA4B;YAAE,OAAO,SAAS,CAAC;QACxD,IAAI,IAAI,CAAC,gCAAgC;YAAE,OAAO,cAAc,CAAC;QACjE,IAAI,IAAI,CAAC,+BAA+B;YAAE,OAAO,YAAY,CAAC;QAC9D,OAAO,SAAS,CAAC;IACnB,CAAC;CACF"}
|
|
@@ -24,7 +24,7 @@ export declare const RoutingTableSchema: Type.TObject<{
|
|
|
24
24
|
classifier: Type.TObject<{
|
|
25
25
|
target: Type.TObject<{
|
|
26
26
|
modelName: Type.TString;
|
|
27
|
-
thinkingLevel: Type.TUnion<Type.TLiteral<"minimal" | "low" | "medium" | "high" | "xhigh">[]
|
|
27
|
+
thinkingLevel: Type.TOptional<Type.TUnion<Type.TLiteral<"minimal" | "low" | "medium" | "high" | "xhigh">[]>>;
|
|
28
28
|
}>;
|
|
29
29
|
everySteps: Type.TInteger;
|
|
30
30
|
guidance: Type.TString;
|
|
@@ -69,13 +69,24 @@ export interface TierDefinition {
|
|
|
69
69
|
/** Advisor availability, target, and cadence for this tier. */
|
|
70
70
|
advisor: AdvisorPolicy;
|
|
71
71
|
}
|
|
72
|
-
/**
|
|
72
|
+
/** Model that answers the route choice, and how much effort it may spend. */
|
|
73
|
+
export interface ClassifierTarget {
|
|
74
|
+
/**
|
|
75
|
+
* Concrete catalog name or AI Gateway evaluation model id. A catalog name
|
|
76
|
+
* runs the structured-output classifier; any other name is called through
|
|
77
|
+
* the gateway's evaluation endpoint. Never a virtual tier.
|
|
78
|
+
*/
|
|
79
|
+
modelName: string;
|
|
80
|
+
/** Reasoning effort for a catalog model; an evaluation model ignores it. */
|
|
81
|
+
thinkingLevel?: ThinkingLevel;
|
|
82
|
+
}
|
|
83
|
+
/** Shared classifier target, cadence, and administrator-authored routing guidance. */
|
|
73
84
|
export interface ClassifierConfig {
|
|
74
|
-
/** Cheap model
|
|
75
|
-
target:
|
|
85
|
+
/** Cheap model that answers the route choice. */
|
|
86
|
+
target: ClassifierTarget;
|
|
76
87
|
/** Number of completed assistant steps between intra-turn classifications. */
|
|
77
88
|
everySteps: number;
|
|
78
|
-
/** Freeform
|
|
89
|
+
/** Freeform guidance appended to the classifier's instructions as extra routing policy. */
|
|
79
90
|
guidance: string;
|
|
80
91
|
/** Optional taste triggers matched against bounded text from each completed assistant step. */
|
|
81
92
|
stepTriggers?: StepTriggerConfig[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../../src/model-routing/table.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../../src/model-routing/table.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
import { Type } from "typebox";
|
|
2
2
|
import { THINKING_LEVELS, isThinkingLevel } from "../session/thinking-level.js";
|
|
3
3
|
import { walkVirtualRoute } from "./resolve.js";
|
|
4
|
-
|
|
4
|
+
function thinkingLevelSchema(description) {
|
|
5
|
+
return Type.Union(THINKING_LEVELS.map((level) => Type.Literal(level)), { description });
|
|
6
|
+
}
|
|
7
|
+
const ThinkingLevelSchema = thinkingLevelSchema("Reasoning effort applied when the target model runs.");
|
|
5
8
|
const RouteTargetSchema = Type.Object({
|
|
6
9
|
modelName: Type.String({
|
|
7
10
|
minLength: 1,
|
|
8
11
|
description: "Concrete catalog name or virtual tier name. Virtual names re-enter routing with the same route.",
|
|
9
12
|
}),
|
|
10
13
|
thinkingLevel: ThinkingLevelSchema,
|
|
11
|
-
}
|
|
14
|
+
});
|
|
12
15
|
const RouteRuleSchema = Type.Object({
|
|
13
16
|
description: Type.String({
|
|
14
17
|
minLength: 1,
|
|
@@ -19,7 +22,7 @@ const RouteRuleSchema = Type.Object({
|
|
|
19
22
|
minLength: 1,
|
|
20
23
|
description: "Concrete catalog name or virtual tier used only when this route resolves to a text-only target with image input. The route's configured effort is preserved.",
|
|
21
24
|
})),
|
|
22
|
-
}
|
|
25
|
+
});
|
|
23
26
|
const AdvisorPolicySchema = Type.Object({
|
|
24
27
|
enabled: Type.Boolean({
|
|
25
28
|
description: "Whether the advisor tool is available while this tier is selected.",
|
|
@@ -28,20 +31,27 @@ const AdvisorPolicySchema = Type.Object({
|
|
|
28
31
|
minStepsBetween: Type.Integer({
|
|
29
32
|
description: "Minimum assistant-completion steps between ordinary advisor calls.",
|
|
30
33
|
}),
|
|
31
|
-
}
|
|
34
|
+
});
|
|
32
35
|
const TierDefinitionSchema = Type.Object({
|
|
33
36
|
routes: Type.Record(Type.String({ minLength: 1 }), RouteRuleSchema, {
|
|
34
37
|
description: "Classifier routes for this tier. Missing routes deliberately fall through to general.",
|
|
35
38
|
}),
|
|
36
39
|
advisor: AdvisorPolicySchema,
|
|
37
|
-
}
|
|
40
|
+
});
|
|
41
|
+
const ClassifierTargetSchema = Type.Object({
|
|
42
|
+
modelName: Type.String({
|
|
43
|
+
minLength: 1,
|
|
44
|
+
description: "Concrete catalog name (e.g. luna) for the structured-output classifier, or an AI Gateway evaluation model id (e.g. typesafe-ai/jev) for the evaluation classifier. The name itself selects the path.",
|
|
45
|
+
}),
|
|
46
|
+
thinkingLevel: Type.Optional(thinkingLevelSchema("Reasoning effort for a catalog classifier model. An evaluation model has no reasoning axis and ignores it.")),
|
|
47
|
+
});
|
|
38
48
|
const ClassifierConfigSchema = Type.Object({
|
|
39
|
-
target:
|
|
49
|
+
target: ClassifierTargetSchema,
|
|
40
50
|
everySteps: Type.Integer({
|
|
41
51
|
description: "Assistant-completion cadence for intra-turn route classification.",
|
|
42
52
|
}),
|
|
43
53
|
guidance: Type.String({
|
|
44
|
-
description: "Freeform administrator guidance appended to the classifier
|
|
54
|
+
description: "Freeform administrator guidance appended to the classifier's instructions.",
|
|
45
55
|
}),
|
|
46
56
|
stepTriggers: Type.Optional(Type.Array(Type.Object({
|
|
47
57
|
name: Type.String({
|
|
@@ -52,10 +62,10 @@ const ClassifierConfigSchema = Type.Object({
|
|
|
52
62
|
minItems: 1,
|
|
53
63
|
description: "Non-empty strings matched case-insensitively against bounded step-output text.",
|
|
54
64
|
}),
|
|
55
|
-
}
|
|
65
|
+
}), {
|
|
56
66
|
description: "Optional taste triggers that request classification after matching output.",
|
|
57
67
|
})),
|
|
58
|
-
}
|
|
68
|
+
});
|
|
59
69
|
/** Complete, replaceable configuration for virtual model routing. */
|
|
60
70
|
export const RoutingTableSchema = Type.Object({
|
|
61
71
|
defaultTier: Type.String({
|
|
@@ -66,7 +76,7 @@ export const RoutingTableSchema = Type.Object({
|
|
|
66
76
|
description: "Virtual model names and their routing policies.",
|
|
67
77
|
}),
|
|
68
78
|
classifier: ClassifierConfigSchema,
|
|
69
|
-
}
|
|
79
|
+
});
|
|
70
80
|
const VISUAL_DESCRIPTION = "Frontend, 3D, or anything visual: UI implementation and debugging, styling, graphics, image inspection, and work where visual fidelity matters.";
|
|
71
81
|
const FRONTIER_PLAN_DESCRIPTION = "Architecture, investigation, research, and high-stakes planning where the primary work is reasoning about what to build or do, not implementing it.";
|
|
72
82
|
const IMPLEMENT_DESCRIPTION = "Backend, systems, data, CLI, and other implementation or debugging work, including tests and code changes.";
|
|
@@ -161,7 +171,7 @@ export const BUILT_IN_ROUTING_TABLE = {
|
|
|
161
171
|
},
|
|
162
172
|
},
|
|
163
173
|
classifier: {
|
|
164
|
-
target: { modelName: "
|
|
174
|
+
target: { modelName: "typesafe-ai/jev" },
|
|
165
175
|
everySteps: 5,
|
|
166
176
|
guidance: "Prefer continuity when the task has not materially changed, but switch routes when the work changes domains.",
|
|
167
177
|
},
|
|
@@ -192,11 +202,6 @@ function targetEntries(table) {
|
|
|
192
202
|
virtualAllowed: false,
|
|
193
203
|
});
|
|
194
204
|
}
|
|
195
|
-
entries.push({
|
|
196
|
-
path: "classifier.target",
|
|
197
|
-
target: table.classifier.target,
|
|
198
|
-
virtualAllowed: false,
|
|
199
|
-
});
|
|
200
205
|
return entries;
|
|
201
206
|
}
|
|
202
207
|
/** Validate cross-field routing invariants against an injected concrete-model catalog. */
|
|
@@ -234,6 +239,22 @@ export function validateRoutingTable(table, catalogAdapter) {
|
|
|
234
239
|
});
|
|
235
240
|
}
|
|
236
241
|
}
|
|
242
|
+
const classifierModelName = table.classifier.target.modelName;
|
|
243
|
+
if (isVirtualModel(classifierModelName, table)) {
|
|
244
|
+
issues.push({
|
|
245
|
+
code: "dangling_reference",
|
|
246
|
+
path: "classifier.target.modelName",
|
|
247
|
+
message: `Classifier target "${classifierModelName}" must name a catalog model or an evaluation model id, not a virtual tier.`,
|
|
248
|
+
});
|
|
249
|
+
}
|
|
250
|
+
const classifierEffort = table.classifier.target.thinkingLevel;
|
|
251
|
+
if (classifierEffort !== undefined && !isThinkingLevel(classifierEffort)) {
|
|
252
|
+
issues.push({
|
|
253
|
+
code: "invalid_effort",
|
|
254
|
+
path: "classifier.target.thinkingLevel",
|
|
255
|
+
message: `Unknown thinking level "${String(classifierEffort)}".`,
|
|
256
|
+
});
|
|
257
|
+
}
|
|
237
258
|
if (table.classifier.everySteps <= 0) {
|
|
238
259
|
issues.push({
|
|
239
260
|
code: "invalid_cadence",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../../src/model-routing/table.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../../src/model-routing/table.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import type { SkillAutocompleteItem } from "./autocomplete.js";
|
|
|
3
3
|
import type { CopyController } from "./copy-controller.js";
|
|
4
4
|
import type { PasteController } from "./paste-controller.js";
|
|
5
5
|
import type { TranscriptWriter } from "./transcript-writer.js";
|
|
6
|
-
import type
|
|
6
|
+
import { type RouterStatus } from "../model-routing/router.js";
|
|
7
7
|
/**
|
|
8
8
|
* Surface used by the slash-command dispatcher. Every handler in this module
|
|
9
9
|
* is stateless and reaches its mutable state through the controllers wired up
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slash-commands.d.ts","sourceRoot":"","sources":["../../../src/tui/slash-commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"slash-commands.d.ts","sourceRoot":"","sources":["../../../src/tui/slash-commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAA4B,KAAK,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAIzF;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;;;;;;OAQG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAClE;;;;;OAKG;IACH,OAAO,CAAC,IAAI,IAAI,CAAC;IACjB;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IACjE;;;;;OAKG;IACH,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG;QAAE,aAAa,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/E,sEAAsE;IACtE,WAAW,CAAC,IAAI,YAAY,GAAG,SAAS,CAAC;IACzC;;;;;;OAMG;IACH,OAAO,CAAC,IAAI,IAAI,CAAC;CAClB;AAED;;;;;;;;;;;;;;;GAeG;AACH,KAAK,WAAW,GAAG,MAAM,GAAG,OAAO,CAAC;AAEpC;;;;;;GAMG;AACH,UAAU,mBAAmB;IAC3B,2EAA2E;IAC3E,IAAI,EAAE,MAAM,CAAC;IACb,wEAAwE;IACxE,WAAW,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IAClC,yEAAyE;IACzE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACxD;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAYD;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,EAAE,SAAS,mBAAmB,EA2FjE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,EAAE,SAAS,qBAAqB,EAKpE,CAAC;AAEN;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,SAAS,KAAK,EAAE,GACvB,SAAS,qBAAqB,EAAE,CAUlC;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAQ1F;AA6BD;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC,sEAAsE;IACtE,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,wEAAwE;IACxE,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,mBAAmB,EACxB,OAAO,GAAE;IAAE,YAAY,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;CAAO,GACnD,iBAAiB,CA+BnB"}
|