agent-nuvira 2.6.14 → 2.7.0
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/README.md +4 -2
- package/dist/cli/chat.d.ts +2 -0
- package/dist/cli/chat.d.ts.map +1 -1
- package/dist/cli/chat.js +107 -4
- package/dist/cli/chat.js.map +1 -1
- package/dist/cli/eval.d.ts.map +1 -1
- package/dist/cli/eval.js +14 -1
- package/dist/cli/eval.js.map +1 -1
- package/dist/cli/execute.d.ts +8 -0
- package/dist/cli/execute.d.ts.map +1 -1
- package/dist/cli/execute.js +105 -1
- package/dist/cli/execute.js.map +1 -1
- package/dist/cli/loop-executor.d.ts +81 -0
- package/dist/cli/loop-executor.d.ts.map +1 -0
- package/dist/cli/loop-executor.js +246 -0
- package/dist/cli/loop-executor.js.map +1 -0
- package/dist/config/types.d.ts +18 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/fresh.d.ts +2 -0
- package/dist/fresh.d.ts.map +1 -0
- package/dist/fresh.js +2 -0
- package/dist/fresh.js.map +1 -0
- package/dist/inference/anthropic-adapter.d.ts +9 -0
- package/dist/inference/anthropic-adapter.d.ts.map +1 -1
- package/dist/inference/anthropic-adapter.js +143 -0
- package/dist/inference/anthropic-adapter.js.map +1 -1
- package/dist/inference/gemini-adapter.d.ts +8 -0
- package/dist/inference/gemini-adapter.d.ts.map +1 -1
- package/dist/inference/gemini-adapter.js +145 -0
- package/dist/inference/gemini-adapter.js.map +1 -1
- package/dist/inference/model-probe.d.ts.map +1 -1
- package/dist/inference/model-probe.js +14 -0
- package/dist/inference/model-probe.js.map +1 -1
- package/dist/inference/native-tools.d.ts +226 -0
- package/dist/inference/native-tools.d.ts.map +1 -0
- package/dist/inference/native-tools.js +389 -0
- package/dist/inference/native-tools.js.map +1 -0
- package/dist/learning/auto-router.d.ts +36 -4
- package/dist/learning/auto-router.d.ts.map +1 -1
- package/dist/learning/auto-router.js +103 -2
- package/dist/learning/auto-router.js.map +1 -1
- package/dist/learning/context-pruner.d.ts.map +1 -1
- package/dist/learning/context-pruner.js +4 -2
- package/dist/learning/context-pruner.js.map +1 -1
- package/dist/learning/engine-router.d.ts +90 -0
- package/dist/learning/engine-router.d.ts.map +1 -0
- package/dist/learning/engine-router.js +128 -0
- package/dist/learning/engine-router.js.map +1 -0
- package/dist/learning/eval-framework.d.ts +42 -1
- package/dist/learning/eval-framework.d.ts.map +1 -1
- package/dist/learning/eval-framework.js +163 -7
- package/dist/learning/eval-framework.js.map +1 -1
- package/dist/learning/routing-cache.d.ts +64 -0
- package/dist/learning/routing-cache.d.ts.map +1 -0
- package/dist/learning/routing-cache.js +100 -0
- package/dist/learning/routing-cache.js.map +1 -0
- package/dist/tools/loop-project-context.d.ts +47 -0
- package/dist/tools/loop-project-context.d.ts.map +1 -0
- package/dist/tools/loop-project-context.js +210 -0
- package/dist/tools/loop-project-context.js.map +1 -0
- package/dist/tools/loop-skill-hint.d.ts +110 -0
- package/dist/tools/loop-skill-hint.d.ts.map +1 -0
- package/dist/tools/loop-skill-hint.js +266 -0
- package/dist/tools/loop-skill-hint.js.map +1 -0
- package/dist/tools/registry.d.ts +10 -0
- package/dist/tools/registry.d.ts.map +1 -1
- package/dist/tools/registry.js +66 -9
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/release-sync.d.ts.map +1 -1
- package/dist/tools/release-sync.js +5 -4
- package/dist/tools/release-sync.js.map +1 -1
- package/dist/tools/tool-loop.d.ts +28 -0
- package/dist/tools/tool-loop.d.ts.map +1 -1
- package/dist/tools/tool-loop.js +182 -6
- package/dist/tools/tool-loop.js.map +1 -1
- package/dist/tools/toolsets.d.ts +33 -0
- package/dist/tools/toolsets.d.ts.map +1 -1
- package/dist/tools/toolsets.js +84 -0
- package/dist/tools/toolsets.js.map +1 -1
- package/dist/web-dashboard/chat-console.d.ts +31 -0
- package/dist/web-dashboard/chat-console.d.ts.map +1 -1
- package/dist/web-dashboard/chat-console.js +73 -0
- package/dist/web-dashboard/chat-console.js.map +1 -1
- package/dist/web-dashboard/loop-turn-telemetry.d.ts +27 -0
- package/dist/web-dashboard/loop-turn-telemetry.d.ts.map +1 -0
- package/dist/web-dashboard/loop-turn-telemetry.js +43 -0
- package/dist/web-dashboard/loop-turn-telemetry.js.map +1 -0
- package/dist/web-dashboard/server.d.ts +62 -1
- package/dist/web-dashboard/server.d.ts.map +1 -1
- package/dist/web-dashboard/server.js +205 -4
- package/dist/web-dashboard/server.js.map +1 -1
- package/dist/web-dashboard/src/types.d.ts +44 -0
- package/dist/web-dashboard/src/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/web-dashboard/public/assets/{index-Cg9LaToa.js → index-C4frng1Q.js} +79 -79
- package/src/web-dashboard/public/assets/{index-Cg9LaToa.js.map → index-C4frng1Q.js.map} +1 -1
- package/src/web-dashboard/public/assets/index-C507EUWf.css +1 -0
- package/src/web-dashboard/public/index.html +2 -2
- package/src/web-dashboard/public/assets/index-B47v8pr1.css +0 -1
|
@@ -48,7 +48,14 @@ export declare const M2B_TASK_IDS: string[];
|
|
|
48
48
|
/** Get the M2b curated task suite. */
|
|
49
49
|
export declare function getM2bTasks(): EvalTask[];
|
|
50
50
|
/** Category of an evaluation task */
|
|
51
|
-
export type EvalCategory = 'bug-fix' | 'feature' | 'refactor' | 'test-writing' | 'dependency-setup' | 'algorithm'
|
|
51
|
+
export type EvalCategory = 'bug-fix' | 'feature' | 'refactor' | 'test-writing' | 'dependency-setup' | 'algorithm'
|
|
52
|
+
/**
|
|
53
|
+
* Assessment Addendum v4 Phase 0: non-coding tasks (research-and-summarize,
|
|
54
|
+
* image-gen composition, gateway delivery) — the assessment proved these
|
|
55
|
+
* are loop-only (the pipeline's writer cannot call tools), so the eval set
|
|
56
|
+
* must include them to measure the loop's EXPANDED reach, not just parity.
|
|
57
|
+
*/
|
|
58
|
+
| 'non-coding';
|
|
52
59
|
/** A single end-to-end evaluation task */
|
|
53
60
|
export interface EvalTask {
|
|
54
61
|
/** Unique task identifier */
|
|
@@ -90,6 +97,12 @@ export interface EvalTask {
|
|
|
90
97
|
timeEstimate: 'quick' | 'medium' | 'slow';
|
|
91
98
|
/** Per-task wall-clock timeout in ms (default 10 min) */
|
|
92
99
|
timeoutMs?: number;
|
|
100
|
+
/**
|
|
101
|
+
* Assessment Addendum v4 Phase 0: tasks tagged loop-only (non-coding) are
|
|
102
|
+
* EXPECTED to fail on the pipeline arm — arm-comparison treats their
|
|
103
|
+
* pipeline-arm failure as the baseline, not a regression signal.
|
|
104
|
+
*/
|
|
105
|
+
loopOnly?: boolean;
|
|
93
106
|
}
|
|
94
107
|
/** The eight metrics measured for a single task run */
|
|
95
108
|
export interface EvalMetrics {
|
|
@@ -127,6 +140,16 @@ export interface EvalMetrics {
|
|
|
127
140
|
latencyMs: number;
|
|
128
141
|
/** Error message if the pipeline itself crashed */
|
|
129
142
|
error?: string;
|
|
143
|
+
/** Which engine arm produced this result ('pipeline' | 'loop' | 'writer-tc'). */
|
|
144
|
+
engine?: 'pipeline' | 'loop' | 'writer-tc';
|
|
145
|
+
/** Tool calls executed (loop arm: from runToolLoop telemetry; pipeline: 0). */
|
|
146
|
+
toolCallCount?: number;
|
|
147
|
+
/** Tools that errored (repair-engine-invocation proxy on the loop arm). */
|
|
148
|
+
erroredToolCount?: number;
|
|
149
|
+
/** Per-turn tool-schema character size (the v3 tiering metric). */
|
|
150
|
+
toolSchemaChars?: number;
|
|
151
|
+
/** Loop hit its step bound before an end turn (bounded-ness signal). */
|
|
152
|
+
bounded?: boolean;
|
|
130
153
|
}
|
|
131
154
|
/** Result of running one eval task */
|
|
132
155
|
export interface EvalResult {
|
|
@@ -228,6 +251,15 @@ export interface RunEvalOptions {
|
|
|
228
251
|
keepWorkspaces?: boolean;
|
|
229
252
|
/** Injectable goal executor — used by tests to stub the orchestrator */
|
|
230
253
|
executeGoal?: (goal: string, workspace: string) => Promise<OrchestrationResult>;
|
|
254
|
+
/**
|
|
255
|
+
* Assessment Addendum v4 Phase 0 — the engine ARM to run:
|
|
256
|
+
* - 'pipeline' (default): the orchestrator (unchanged behavior).
|
|
257
|
+
* - 'loop': runLoopExecutor (the single agentic loop) — Phase 1.1 arm.
|
|
258
|
+
* - 'writer-tc': the orchestrator with useToolCalling (writer-tc arm).
|
|
259
|
+
* Recorded per result (`metrics.engine`) so `nuvira eval results` and the
|
|
260
|
+
* dashboard can compare arms side-by-side.
|
|
261
|
+
*/
|
|
262
|
+
engine?: 'pipeline' | 'loop' | 'writer-tc';
|
|
231
263
|
}
|
|
232
264
|
/**
|
|
233
265
|
* Run a single eval task through the full agent pipeline.
|
|
@@ -323,6 +355,15 @@ export declare function writeBenchmarkReport(run: EvalRun, outputDir: string): s
|
|
|
323
355
|
export declare function formatEvalScoreRules(): string;
|
|
324
356
|
/** Get all available eval tasks. */
|
|
325
357
|
export declare function getEvalTasks(): EvalTask[];
|
|
358
|
+
/**
|
|
359
|
+
* Non-coding (loop-only) tasks — assessment Addendum v4 Phase 0: "Include
|
|
360
|
+
* non-coding tasks in the eval set (image-gen composition,
|
|
361
|
+
* research-and-summarize, gateway delivery) — v2/v3 found these are
|
|
362
|
+
* loop-only; the eval must prove it, not assume it." Gated behind an env
|
|
363
|
+
* flag by default so a plain `nuvira eval run` stays deterministic/offline;
|
|
364
|
+
* `NUVIRA_EVAL_NONCODING=true nuvira eval run --engine loop` exercises them.
|
|
365
|
+
*/
|
|
366
|
+
export declare function getNonCodingEvalTasks(): EvalTask[];
|
|
326
367
|
/** Get a specific eval task by ID. */
|
|
327
368
|
export declare function getEvalTask(id: string): EvalTask | undefined;
|
|
328
369
|
/** Get all past eval runs (most recent first). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eval-framework.d.ts","sourceRoot":"","sources":["../../src/learning/eval-framework.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAQH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAgB,KAAK,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAMnF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,EAWhC,CAAC;AAIF,sCAAsC;AACtC,wBAAgB,WAAW,IAAI,QAAQ,EAAE,CAExC;AAID,qCAAqC;AACrC,MAAM,MAAM,YAAY,GACpB,SAAS,GACT,SAAS,GACT,UAAU,GACV,cAAc,GACd,kBAAkB,GAClB,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"eval-framework.d.ts","sourceRoot":"","sources":["../../src/learning/eval-framework.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,6 +31,7 @@ import { envBuff, resolveNuviraHome } from '../config/paths.js';
|
|
|
31
31
|
import { join } from 'node:path';
|
|
32
32
|
import { tmpdir } from 'node:os';
|
|
33
33
|
import { execSync } from 'node:child_process';
|
|
34
|
+
import { ConfigManager } from '../config/manager.js';
|
|
34
35
|
import { getQuotaLedger } from './quota-ledger.js';
|
|
35
36
|
import { Orchestrator } from '../agents/orchestrator.js';
|
|
36
37
|
import { classifyFallbackError } from './provider-fallback.js';
|
|
@@ -848,14 +849,56 @@ export async function runEvalTask(task, _provider, providerName, model, options
|
|
|
848
849
|
const workspace = scaffoldWorkspace(task);
|
|
849
850
|
const taskStart = Date.now();
|
|
850
851
|
const timeoutMs = task.timeoutMs ?? 600_000;
|
|
852
|
+
const engine = options.engine ?? 'pipeline';
|
|
851
853
|
let result;
|
|
852
854
|
let crashed = false;
|
|
853
855
|
let crashError;
|
|
856
|
+
// Loop-arm telemetry (zeros on the pipeline arms).
|
|
857
|
+
let toolCallCount = 0;
|
|
858
|
+
let erroredToolCount = 0;
|
|
859
|
+
let bounded = false;
|
|
854
860
|
try {
|
|
855
861
|
if (options.executeGoal) {
|
|
856
862
|
result = await options.executeGoal(task.goal, workspace);
|
|
857
863
|
}
|
|
864
|
+
else if (engine === 'loop') {
|
|
865
|
+
// ── LOOP ARM (Addendum v4 Phase 1.1/Phase 0) ──
|
|
866
|
+
// One agentic turn over runToolLoop inside the scaffolded workspace —
|
|
867
|
+
// the same engine chat uses, pointed at the eval workspace. Telemetry
|
|
868
|
+
// (tool calls, errored tools, bounded) feeds the arm comparison.
|
|
869
|
+
const cwd = process.cwd();
|
|
870
|
+
process.chdir(workspace);
|
|
871
|
+
try {
|
|
872
|
+
const { runLoopExecutor } = await import('../cli/loop-executor.js');
|
|
873
|
+
const loopResult = await Promise.race([
|
|
874
|
+
runLoopExecutor(task.goal, options.configManager ?? new ConfigManager(), {
|
|
875
|
+
provider: providerName === 'auto' ? undefined : providerName,
|
|
876
|
+
model,
|
|
877
|
+
quiet: true,
|
|
878
|
+
skipProjectContext: true, // the eval workspace IS the project
|
|
879
|
+
}),
|
|
880
|
+
new Promise((_, reject) => setTimeout(() => reject(new Error(`Task timed out after ${timeoutMs / 1000}s`)), timeoutMs)),
|
|
881
|
+
]);
|
|
882
|
+
toolCallCount = loopResult.toolCalls.length;
|
|
883
|
+
erroredToolCount = loopResult.erroredTools.length;
|
|
884
|
+
bounded = loopResult.bounded;
|
|
885
|
+
result = {
|
|
886
|
+
success: !loopResult.generationFailed,
|
|
887
|
+
goal: task.goal,
|
|
888
|
+
summary: loopResult.content,
|
|
889
|
+
tasksCompleted: loopResult.generationFailed ? 0 : 1,
|
|
890
|
+
tasksTotal: 1,
|
|
891
|
+
agentResults: [],
|
|
892
|
+
fileChanges: '',
|
|
893
|
+
error: loopResult.generationFailed ? loopResult.content : undefined,
|
|
894
|
+
};
|
|
895
|
+
}
|
|
896
|
+
finally {
|
|
897
|
+
process.chdir(cwd);
|
|
898
|
+
}
|
|
899
|
+
}
|
|
858
900
|
else {
|
|
901
|
+
// ── PIPELINE / WRITER-TC ARMS (unchanged orchestrator path) ──
|
|
859
902
|
// Run the full pipeline in the workspace (chdir for the orchestrator,
|
|
860
903
|
// which resolves relative paths against process.cwd()).
|
|
861
904
|
const cwd = process.cwd();
|
|
@@ -863,7 +906,13 @@ export async function runEvalTask(task, _provider, providerName, model, options
|
|
|
863
906
|
try {
|
|
864
907
|
const orchestrator = new Orchestrator(options.configManager);
|
|
865
908
|
result = await Promise.race([
|
|
866
|
-
orchestrator.execute(task.goal, {
|
|
909
|
+
orchestrator.execute(task.goal, {
|
|
910
|
+
provider: providerName,
|
|
911
|
+
model,
|
|
912
|
+
useMemory: false,
|
|
913
|
+
// writer-tc arm: the opt-in tool-calling writer/reviewer path.
|
|
914
|
+
useToolCalling: engine === 'writer-tc' ? true : undefined,
|
|
915
|
+
}),
|
|
867
916
|
new Promise((_, reject) => setTimeout(() => reject(new Error(`Task timed out after ${timeoutMs / 1000}s`)), timeoutMs)),
|
|
868
917
|
]);
|
|
869
918
|
}
|
|
@@ -927,6 +976,11 @@ export async function runEvalTask(task, _provider, providerName, model, options
|
|
|
927
976
|
costUsd: 0,
|
|
928
977
|
latencyMs: elapsedMs,
|
|
929
978
|
error: crashError ?? (result.success ? undefined : result.error),
|
|
979
|
+
// Arm-comparison metrics (zeros/undefined on the pipeline arms).
|
|
980
|
+
engine,
|
|
981
|
+
toolCallCount,
|
|
982
|
+
erroredToolCount,
|
|
983
|
+
bounded,
|
|
930
984
|
};
|
|
931
985
|
// Estimate cost from token usage (reuse the cost-tracker pricing model)
|
|
932
986
|
try {
|
|
@@ -956,8 +1010,10 @@ export async function runEvalTask(task, _provider, providerName, model, options
|
|
|
956
1010
|
* Run the full evaluation suite against a provider/model.
|
|
957
1011
|
*/
|
|
958
1012
|
export async function runEvalSuite(provider, providerName, model, options = {}) {
|
|
959
|
-
// Filter tasks
|
|
960
|
-
|
|
1013
|
+
// Filter tasks — plus the non-coding (loop-only) set when the env gate is
|
|
1014
|
+
// on (Addendum v4 Phase 0: the eval must PROVE the loop's expanded reach,
|
|
1015
|
+
// not assume it; gated so a plain run stays deterministic/offline).
|
|
1016
|
+
let tasks = [...EVAL_TASKS, ...getNonCodingEvalTasks()];
|
|
961
1017
|
if (options.taskIds && options.taskIds.length > 0) {
|
|
962
1018
|
tasks = tasks.filter((t) => options.taskIds.includes(t.id));
|
|
963
1019
|
}
|
|
@@ -1217,6 +1273,11 @@ export function formatEvalReport(run) {
|
|
|
1217
1273
|
lines.push('═'.repeat(64));
|
|
1218
1274
|
lines.push('');
|
|
1219
1275
|
lines.push(` Run ID: ${run.id}`);
|
|
1276
|
+
// Addendum v4 Phase 0 — which engine arm(s) produced these results
|
|
1277
|
+
// ('pipeline' | 'loop' | 'writer-tc'); results persisted before the arm
|
|
1278
|
+
// split have no engine stamp and are shown as the default 'pipeline'.
|
|
1279
|
+
const arms = [...new Set(run.results.map((r) => r.metrics.engine ?? 'pipeline'))];
|
|
1280
|
+
lines.push(` Engine: ${arms.join(' + ')}`);
|
|
1220
1281
|
lines.push(` Duration: ${elapsed}s`);
|
|
1221
1282
|
lines.push(` Composite score: ${(s.avgCompositeScore * 100).toFixed(1)}%`);
|
|
1222
1283
|
lines.push('');
|
|
@@ -1245,8 +1306,8 @@ export function formatEvalReport(run) {
|
|
|
1245
1306
|
lines.push('');
|
|
1246
1307
|
lines.push(' ── Per-Task Results ──');
|
|
1247
1308
|
lines.push(` ${'─'.repeat(74)}`);
|
|
1248
|
-
lines.push(` ${'Task'.padEnd(26)} ${'Status'.padEnd(9)} ${'Score'.padEnd(8)} ${'FixTime'.padEnd(9)} ${'Deps'.padEnd(6)} ${'Rework'.padEnd(8)} ${'NewIdeas'.padEnd(9)} Stuck`);
|
|
1249
|
-
lines.push(` ${'─'.repeat(
|
|
1309
|
+
lines.push(` ${'Task'.padEnd(26)} ${'Status'.padEnd(9)} ${'Score'.padEnd(8)} ${'FixTime'.padEnd(9)} ${'Deps'.padEnd(6)} ${'Rework'.padEnd(8)} ${'NewIdeas'.padEnd(9)} ${'Engine'.padEnd(9)} Stuck`);
|
|
1310
|
+
lines.push(` ${'─'.repeat(84)}`);
|
|
1250
1311
|
for (const r of run.results) {
|
|
1251
1312
|
const status = r.metrics.testPassed ? '✅' : '❌';
|
|
1252
1313
|
const score = `${(r.compositeScore * 100).toFixed(0)}%`;
|
|
@@ -1258,10 +1319,11 @@ export function formatEvalReport(run) {
|
|
|
1258
1319
|
: '—';
|
|
1259
1320
|
const rework = computeReworkTurns(r.metrics) > 0 ? `${computeReworkTurns(r.metrics)}x` : '—';
|
|
1260
1321
|
const ideas = r.metrics.alternativeApproaches > 0 ? `${r.metrics.alternativeApproaches}x` : '—';
|
|
1322
|
+
const engine = (r.metrics.engine ?? 'pipeline').padEnd(9);
|
|
1261
1323
|
const stuckMark = stuckIds.has(r.taskId) ? '🚧' : '—';
|
|
1262
|
-
lines.push(` ${r.taskId.padEnd(26)} ${status.padEnd(9)} ${score.padEnd(8)} ${fix.padEnd(9)} ${deps.padEnd(6)} ${rework.padEnd(8)} ${ideas.padEnd(9)} ${stuckMark}`);
|
|
1324
|
+
lines.push(` ${r.taskId.padEnd(26)} ${status.padEnd(9)} ${score.padEnd(8)} ${fix.padEnd(9)} ${deps.padEnd(6)} ${rework.padEnd(8)} ${ideas.padEnd(9)} ${engine} ${stuckMark}`);
|
|
1263
1325
|
}
|
|
1264
|
-
lines.push(` ${'─'.repeat(
|
|
1326
|
+
lines.push(` ${'─'.repeat(84)}`);
|
|
1265
1327
|
lines.push('');
|
|
1266
1328
|
return lines.join('\n');
|
|
1267
1329
|
}
|
|
@@ -1387,6 +1449,100 @@ export function formatEvalScoreRules() {
|
|
|
1387
1449
|
export function getEvalTasks() {
|
|
1388
1450
|
return [...EVAL_TASKS];
|
|
1389
1451
|
}
|
|
1452
|
+
/**
|
|
1453
|
+
* Non-coding (loop-only) tasks — assessment Addendum v4 Phase 0: "Include
|
|
1454
|
+
* non-coding tasks in the eval set (image-gen composition,
|
|
1455
|
+
* research-and-summarize, gateway delivery) — v2/v3 found these are
|
|
1456
|
+
* loop-only; the eval must prove it, not assume it." Gated behind an env
|
|
1457
|
+
* flag by default so a plain `nuvira eval run` stays deterministic/offline;
|
|
1458
|
+
* `NUVIRA_EVAL_NONCODING=true nuvira eval run --engine loop` exercises them.
|
|
1459
|
+
*/
|
|
1460
|
+
export function getNonCodingEvalTasks() {
|
|
1461
|
+
if (process.env.NUVIRA_EVAL_NONCODING !== 'true')
|
|
1462
|
+
return [];
|
|
1463
|
+
return NON_CODING_EVAL_TASKS.filter((t) => !EVAL_TASKS.some((e) => e.id === t.id));
|
|
1464
|
+
}
|
|
1465
|
+
/**
|
|
1466
|
+
* The two non-coding (loop-only) eval tasks. Both are deliberately
|
|
1467
|
+
* environment-free (no network, no API keys): they measure the loop's
|
|
1468
|
+
* ability to COMPOSE PRIMITIVES — write a script with write_file, run it
|
|
1469
|
+
* with run_terminal, verify the output — which is the assessment's Tier-1
|
|
1470
|
+
* long-tail thesis (v3 §C). The pipeline arm cannot express either task
|
|
1471
|
+
* (its writer is not a tool caller), which is exactly the claim Phase 0
|
|
1472
|
+
* must demonstrate rather than assume.
|
|
1473
|
+
*/
|
|
1474
|
+
const NON_CODING_EVAL_TASKS = [
|
|
1475
|
+
{
|
|
1476
|
+
id: 'nc-csv-pivot',
|
|
1477
|
+
title: 'Summarize a CSV into a report (compose primitives)',
|
|
1478
|
+
category: 'non-coding',
|
|
1479
|
+
difficulty: 'medium',
|
|
1480
|
+
goal: 'Read sales.csv in this directory and write a file report.md containing a markdown table of revenue per region (regions sorted alphabetically, revenue as a plain integer). Do it by writing a small script with write_file and running it with run_terminal — not by hand-editing report.md.',
|
|
1481
|
+
setupFiles: [
|
|
1482
|
+
{
|
|
1483
|
+
path: 'sales.csv',
|
|
1484
|
+
content: [
|
|
1485
|
+
'region,revenue',
|
|
1486
|
+
'west,4100',
|
|
1487
|
+
'east,6200',
|
|
1488
|
+
'north,5300',
|
|
1489
|
+
'south,4700',
|
|
1490
|
+
'east,800',
|
|
1491
|
+
].join('\n'),
|
|
1492
|
+
},
|
|
1493
|
+
],
|
|
1494
|
+
hiddenTests: [
|
|
1495
|
+
{
|
|
1496
|
+
file: 'check.js',
|
|
1497
|
+
command: 'node check.js',
|
|
1498
|
+
},
|
|
1499
|
+
],
|
|
1500
|
+
referencePatterns: [
|
|
1501
|
+
{
|
|
1502
|
+
file: 'report.md',
|
|
1503
|
+
mustContain: ['east', '7000', 'north', '5300'],
|
|
1504
|
+
},
|
|
1505
|
+
],
|
|
1506
|
+
tokenBudget: 12_000,
|
|
1507
|
+
timeEstimate: 'quick',
|
|
1508
|
+
loopOnly: true,
|
|
1509
|
+
},
|
|
1510
|
+
{
|
|
1511
|
+
id: 'nc-log-analyze',
|
|
1512
|
+
title: 'Analyze a log file and extract failures (compose primitives)',
|
|
1513
|
+
category: 'non-coding',
|
|
1514
|
+
difficulty: 'medium',
|
|
1515
|
+
goal: 'Analyze app.log and write failures.json — a JSON array of objects {"line": <number>, "level": "ERROR"} for every line starting with "ERROR" (line numbers 1-based, ascending). Use write_file + run_terminal (a script), not manual editing.',
|
|
1516
|
+
setupFiles: [
|
|
1517
|
+
{
|
|
1518
|
+
path: 'app.log',
|
|
1519
|
+
content: [
|
|
1520
|
+
'INFO boot',
|
|
1521
|
+
'ERROR db timeout',
|
|
1522
|
+
'INFO retry',
|
|
1523
|
+
'ERROR cache miss critical',
|
|
1524
|
+
'WARN slow query',
|
|
1525
|
+
'ERROR disk almost full',
|
|
1526
|
+
].join('\n'),
|
|
1527
|
+
},
|
|
1528
|
+
],
|
|
1529
|
+
hiddenTests: [
|
|
1530
|
+
{
|
|
1531
|
+
file: 'check.js',
|
|
1532
|
+
command: 'node check.js',
|
|
1533
|
+
},
|
|
1534
|
+
],
|
|
1535
|
+
referencePatterns: [
|
|
1536
|
+
{
|
|
1537
|
+
file: 'failures.json',
|
|
1538
|
+
mustContain: ['"line": 2', '"line": 4', '"line": 6'],
|
|
1539
|
+
},
|
|
1540
|
+
],
|
|
1541
|
+
tokenBudget: 10_000,
|
|
1542
|
+
timeEstimate: 'quick',
|
|
1543
|
+
loopOnly: true,
|
|
1544
|
+
},
|
|
1545
|
+
];
|
|
1390
1546
|
/** Get a specific eval task by ID. */
|
|
1391
1547
|
export function getEvalTask(id) {
|
|
1392
1548
|
return EVAL_TASKS.find((t) => t.id === id);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eval-framework.js","sourceRoot":"","sources":["../../src/learning/eval-framework.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"eval-framework.js","sourceRoot":"","sources":["../../src/learning/eval-framework.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Routing decision cache (`src/learning/routing-cache.ts`) — AGENTIC_CAPABILITY_ASSESSMENT
|
|
3
|
+
* Addendum v4 Phase 2.
|
|
4
|
+
*
|
|
5
|
+
* The loop-first engine calls the AutoModelRouter on EVERY model turn. Each
|
|
6
|
+
* resolve() scores 22+ catalog providers across 5 dimensions (+ capability
|
|
7
|
+
* fit, context preflight, bandit sampling, registry filtering) — meaningful
|
|
8
|
+
* CPU work repeated for turns whose ROUTING INPUTS are identical.
|
|
9
|
+
*
|
|
10
|
+
* The cache keys on the STABLE routing inputs only — never the raw message
|
|
11
|
+
* text (every message is unique, so a message-keyed cache would never hit).
|
|
12
|
+
* Two turns hit the same entry when all of the following match:
|
|
13
|
+
* agent type · task intent · complexity · preference mode · provider-health
|
|
14
|
+
* signature (session exclusions + breaker + quota) · registry usable-count
|
|
15
|
+
* · cacheable resolve-option flags.
|
|
16
|
+
*
|
|
17
|
+
* Correctness rules:
|
|
18
|
+
* 1. Provider health is part of the KEY, so a provider failing mid-session
|
|
19
|
+
* changes the key and can never be served a stale healthy-route.
|
|
20
|
+
* 2. TTL (default 30s) bounds staleness of everything NOT in the key
|
|
21
|
+
* (benchmarks recorded by concurrent runs, bandit draws).
|
|
22
|
+
* 3. Non-deterministic layers are opt-out at the call site: when the caller
|
|
23
|
+
* enables `useBandit` or `useMlRouter` with default settings, the cache
|
|
24
|
+
* is still safe for SELECTION (deterministic at cold start) but a caller
|
|
25
|
+
* may force-bypass via `bypass` for benchmark/explain flows that must
|
|
26
|
+
* observe the live ranking.
|
|
27
|
+
* 4. `invalidateRoutingCache()` is called by the model registry refresh and
|
|
28
|
+
* is safe to call anywhere — worst case one extra resolve.
|
|
29
|
+
*/
|
|
30
|
+
export interface RoutingCacheEntry<T> {
|
|
31
|
+
value: T;
|
|
32
|
+
/** Epoch ms when the entry becomes stale. */
|
|
33
|
+
expiresAt: number;
|
|
34
|
+
/** Inputs signature the entry was computed under. */
|
|
35
|
+
signature: string;
|
|
36
|
+
}
|
|
37
|
+
/** Default TTL: short enough to bound staleness, long enough to cover a chat turn's repeated resolves. */
|
|
38
|
+
export declare const DEFAULT_ROUTING_CACHE_TTL_MS = 30000;
|
|
39
|
+
/**
|
|
40
|
+
* Build the inputs signature from the STABLE routing inputs. Every part is
|
|
41
|
+
* stringified; null/undefined/'' parts are skipped (their absence IS signal —
|
|
42
|
+
* e.g. no NLU intent hint). Order-normalized: callers pass parts in a fixed
|
|
43
|
+
* order, but we join with '|' so collisions across part counts are visible.
|
|
44
|
+
*/
|
|
45
|
+
export declare function routingCacheSignature(parts: Array<string | number | boolean | null | undefined>): string;
|
|
46
|
+
/**
|
|
47
|
+
* Get a cached routing decision. Returns undefined on miss/expiry.
|
|
48
|
+
* Expired entries are lazily dropped (no background sweeper — the CLI is
|
|
49
|
+
* single-user and resolve-frequency is bounded by turn count).
|
|
50
|
+
*/
|
|
51
|
+
export declare function getRoutingCache<T>(signature: string): T | undefined;
|
|
52
|
+
/** Store a decision under a signature with the given TTL. */
|
|
53
|
+
export declare function setRoutingCache<T>(signature: string, value: T, ttlMs?: number): void;
|
|
54
|
+
/**
|
|
55
|
+
* Memoize wrapper: return the cached decision for this signature, or compute
|
|
56
|
+
* + store. `compute` throwing propagates (never cache a failure — a transient
|
|
57
|
+
* registry read failure must not pin a degraded route for the TTL).
|
|
58
|
+
*/
|
|
59
|
+
export declare function withRoutingCache<T>(signature: string, ttlMs: number | undefined, compute: () => T): T;
|
|
60
|
+
/** Clear the whole cache (registry refresh, tests, `nuvira models explain`). */
|
|
61
|
+
export declare function invalidateRoutingCache(): void;
|
|
62
|
+
/** Test/inspection helper: current entry count. */
|
|
63
|
+
export declare function routingCacheSize(): number;
|
|
64
|
+
//# sourceMappingURL=routing-cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routing-cache.d.ts","sourceRoot":"","sources":["../../src/learning/routing-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,KAAK,EAAE,CAAC,CAAC;IACT,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,qDAAqD;IACrD,SAAS,EAAE,MAAM,CAAC;CACnB;AAKD,0GAA0G;AAC1G,eAAO,MAAM,4BAA4B,QAAS,CAAC;AAKnD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC,GACzD,MAAM,CAIR;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS,CAQnE;AAED,6DAA6D;AAC7D,wBAAgB,eAAe,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAE,MAAqC,GAAG,IAAI,CAalH;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAChC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,OAAO,EAAE,MAAM,CAAC,GACf,CAAC,CAMH;AAED,gFAAgF;AAChF,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C;AAED,mDAAmD;AACnD,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC"}
|