@bradtaylorsf/alpha-loop 1.4.2 → 1.5.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 +136 -3
- package/dist/cli.js +73 -6
- package/dist/cli.js.map +1 -1
- package/dist/commands/eval.d.ts +59 -4
- package/dist/commands/eval.js +370 -55
- package/dist/commands/eval.js.map +1 -1
- package/dist/commands/evolve.d.ts +43 -4
- package/dist/commands/evolve.js +444 -66
- package/dist/commands/evolve.js.map +1 -1
- package/dist/commands/init.js +3 -7
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/plan.d.ts +11 -0
- package/dist/commands/plan.js +298 -0
- package/dist/commands/plan.js.map +1 -0
- package/dist/commands/roadmap.d.ts +9 -0
- package/dist/commands/roadmap.js +202 -0
- package/dist/commands/roadmap.js.map +1 -0
- package/dist/commands/triage.d.ts +9 -0
- package/dist/commands/triage.js +226 -0
- package/dist/commands/triage.js.map +1 -0
- package/dist/commands/vision.js +1 -0
- package/dist/commands/vision.js.map +1 -1
- package/dist/lib/config.d.ts +20 -0
- package/dist/lib/config.js +55 -0
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/eval-checks.d.ts +11 -1
- package/dist/lib/eval-checks.js +39 -0
- package/dist/lib/eval-checks.js.map +1 -1
- package/dist/lib/eval-fixtures.d.ts +55 -0
- package/dist/lib/eval-fixtures.js +172 -0
- package/dist/lib/eval-fixtures.js.map +1 -0
- package/dist/lib/eval-runner.d.ts +26 -2
- package/dist/lib/eval-runner.js +202 -17
- package/dist/lib/eval-runner.js.map +1 -1
- package/dist/lib/eval-skill-bridge.d.ts +53 -0
- package/dist/lib/eval-skill-bridge.js +121 -0
- package/dist/lib/eval-skill-bridge.js.map +1 -0
- package/dist/lib/eval-swebench.d.ts +68 -0
- package/dist/lib/eval-swebench.js +274 -0
- package/dist/lib/eval-swebench.js.map +1 -0
- package/dist/lib/eval.d.ts +9 -1
- package/dist/lib/eval.js +27 -7
- package/dist/lib/eval.js.map +1 -1
- package/dist/lib/github.d.ts +46 -0
- package/dist/lib/github.js +179 -0
- package/dist/lib/github.js.map +1 -1
- package/dist/lib/pipeline.js +44 -2
- package/dist/lib/pipeline.js.map +1 -1
- package/dist/lib/planning.d.ts +91 -0
- package/dist/lib/planning.js +315 -0
- package/dist/lib/planning.js.map +1 -0
- package/dist/lib/prompts.d.ts +79 -0
- package/dist/lib/prompts.js +151 -2
- package/dist/lib/prompts.js.map +1 -1
- package/dist/lib/score.d.ts +24 -2
- package/dist/lib/score.js +162 -3
- package/dist/lib/score.js.map +1 -1
- package/package.json +2 -1
package/dist/lib/eval-runner.js
CHANGED
|
@@ -10,18 +10,30 @@ import { createHash } from 'node:crypto';
|
|
|
10
10
|
import { log } from './logger.js';
|
|
11
11
|
import { exec } from './shell.js';
|
|
12
12
|
import { spawnAgent } from './agent.js';
|
|
13
|
-
import { buildImplementPrompt, buildReviewPrompt } from './prompts.js';
|
|
13
|
+
import { buildImplementPrompt, buildReviewPrompt, buildLearnPrompt } from './prompts.js';
|
|
14
14
|
import { processIssue } from './pipeline.js';
|
|
15
15
|
import { runChecks } from './eval-checks.js';
|
|
16
16
|
import { computeCompositeScore, appendScore, hashConfig } from './score.js';
|
|
17
17
|
import { writeRunManifest, writeConfigSnapshot, writeScores as writeTraceScores, computeScores as computeTraceScores, } from './traces.js';
|
|
18
|
+
import { loadEvalConfig, cloneOrCacheFixtureRepo, extractFixture, setupFixture as runFixtureSetup, } from './eval-fixtures.js';
|
|
19
|
+
import { estimateCost, resolveStepConfig } from './config.js';
|
|
18
20
|
/**
|
|
19
21
|
* Run a full eval suite: iterate over cases, execute, collect results.
|
|
20
22
|
*/
|
|
21
23
|
export async function runEvalSuite(cases, config, options = {}) {
|
|
24
|
+
// Apply pipeline config overrides if provided
|
|
25
|
+
if (options.configOverrides) {
|
|
26
|
+
const mergedPipeline = { ...config.pipeline };
|
|
27
|
+
for (const [step, override] of Object.entries(options.configOverrides)) {
|
|
28
|
+
mergedPipeline[step] = {
|
|
29
|
+
...(mergedPipeline[step] ?? {}),
|
|
30
|
+
...override,
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
config = { ...config, pipeline: mergedPipeline };
|
|
34
|
+
}
|
|
22
35
|
const session = `eval-${new Date().toISOString().replace(/[:.]/g, '-').slice(0, 19)}`;
|
|
23
36
|
const results = [];
|
|
24
|
-
let totalCost = 0;
|
|
25
37
|
// Snapshot harness for tracking
|
|
26
38
|
const harnessHash = snapshotHarness(config);
|
|
27
39
|
log.step(`Eval run: ${session} (${cases.length} cases, harness=${harnessHash})`);
|
|
@@ -72,6 +84,8 @@ export async function runEvalSuite(cases, config, options = {}) {
|
|
|
72
84
|
const passCount = results.filter((r) => r.passed).length;
|
|
73
85
|
const failCount = results.length - passCount;
|
|
74
86
|
const totalDuration = results.reduce((sum, r) => sum + r.duration, 0);
|
|
87
|
+
// Accumulate real costs from agent token usage
|
|
88
|
+
const totalCost = results.reduce((sum, r) => sum + (r.costUsd ?? 0), 0);
|
|
75
89
|
// Record to score history
|
|
76
90
|
const configObj = {
|
|
77
91
|
agent: config.agent,
|
|
@@ -80,6 +94,7 @@ export async function runEvalSuite(cases, config, options = {}) {
|
|
|
80
94
|
maxTestRetries: config.maxTestRetries,
|
|
81
95
|
testCommand: config.testCommand,
|
|
82
96
|
harnessHash,
|
|
97
|
+
pipeline: config.pipeline,
|
|
83
98
|
};
|
|
84
99
|
const entry = {
|
|
85
100
|
timestamp: new Date().toISOString(),
|
|
@@ -129,7 +144,7 @@ export async function runEvalSuite(cases, config, options = {}) {
|
|
|
129
144
|
});
|
|
130
145
|
}
|
|
131
146
|
catch { /* non-fatal */ }
|
|
132
|
-
return { cases: results, composite, totalDuration, passCount, failCount };
|
|
147
|
+
return { cases: results, composite, totalDuration, totalCost, passCount, failCount };
|
|
133
148
|
}
|
|
134
149
|
/**
|
|
135
150
|
* Run a single e2e eval case.
|
|
@@ -218,19 +233,47 @@ async function runStepEval(evalCase, config, session, options) {
|
|
|
218
233
|
const startTime = Date.now();
|
|
219
234
|
const input = evalCase.inputText ?? evalCase.issueBody;
|
|
220
235
|
const step = evalCase.step ?? 'review';
|
|
236
|
+
// Map eval step names to PipelineStepName for resolveStepConfig
|
|
237
|
+
const pipelineStepMap = {
|
|
238
|
+
plan: 'plan',
|
|
239
|
+
implement: 'implement',
|
|
240
|
+
'test-fix': 'test_fix',
|
|
241
|
+
review: 'review',
|
|
242
|
+
verify: 'verify',
|
|
243
|
+
learn: 'learn',
|
|
244
|
+
};
|
|
245
|
+
// Resolve per-step agent/model from pipeline config (falls back to top-level)
|
|
246
|
+
const pipelineStep = pipelineStepMap[step];
|
|
247
|
+
const resolved = pipelineStep
|
|
248
|
+
? resolveStepConfig(config, pipelineStep)
|
|
249
|
+
: { agent: config.agent, model: config.model };
|
|
250
|
+
const resolvedAgent = resolved.agent;
|
|
221
251
|
let output = '';
|
|
252
|
+
// Accumulate cost/token data from agent invocations
|
|
253
|
+
let caseCostUsd = 0;
|
|
254
|
+
let caseInputTokens = 0;
|
|
255
|
+
let caseOutputTokens = 0;
|
|
256
|
+
const trackCost = (result) => {
|
|
257
|
+
if (result.costUsd)
|
|
258
|
+
caseCostUsd += result.costUsd;
|
|
259
|
+
if (result.inputTokens)
|
|
260
|
+
caseInputTokens += result.inputTokens;
|
|
261
|
+
if (result.outputTokens)
|
|
262
|
+
caseOutputTokens += result.outputTokens;
|
|
263
|
+
};
|
|
222
264
|
try {
|
|
223
265
|
// Run the targeted pipeline step
|
|
224
266
|
switch (step) {
|
|
225
267
|
case 'plan': {
|
|
226
268
|
const result = await spawnAgent({
|
|
227
|
-
agent:
|
|
228
|
-
model:
|
|
269
|
+
agent: resolvedAgent,
|
|
270
|
+
model: resolved.model,
|
|
229
271
|
prompt: `Plan the implementation for the following issue:\n\n${input}`,
|
|
230
272
|
cwd: process.cwd(),
|
|
231
273
|
timeout: (evalCase.timeout || 60) * 1000,
|
|
232
274
|
});
|
|
233
275
|
output = result.output;
|
|
276
|
+
trackCost(result);
|
|
234
277
|
break;
|
|
235
278
|
}
|
|
236
279
|
case 'implement': {
|
|
@@ -240,13 +283,14 @@ async function runStepEval(evalCase, config, session, options) {
|
|
|
240
283
|
body: input,
|
|
241
284
|
});
|
|
242
285
|
const result = await spawnAgent({
|
|
243
|
-
agent:
|
|
244
|
-
model:
|
|
286
|
+
agent: resolvedAgent,
|
|
287
|
+
model: resolved.model,
|
|
245
288
|
prompt,
|
|
246
289
|
cwd: process.cwd(),
|
|
247
290
|
timeout: (evalCase.timeout || 120) * 1000,
|
|
248
291
|
});
|
|
249
292
|
output = result.output;
|
|
293
|
+
trackCost(result);
|
|
250
294
|
break;
|
|
251
295
|
}
|
|
252
296
|
case 'review': {
|
|
@@ -257,13 +301,14 @@ async function runStepEval(evalCase, config, session, options) {
|
|
|
257
301
|
baseBranch: config.baseBranch,
|
|
258
302
|
});
|
|
259
303
|
const result = await spawnAgent({
|
|
260
|
-
agent:
|
|
261
|
-
model:
|
|
304
|
+
agent: resolvedAgent,
|
|
305
|
+
model: resolved.model,
|
|
262
306
|
prompt,
|
|
263
307
|
cwd: process.cwd(),
|
|
264
308
|
timeout: (evalCase.timeout || 60) * 1000,
|
|
265
309
|
});
|
|
266
310
|
output = result.output;
|
|
311
|
+
trackCost(result);
|
|
267
312
|
break;
|
|
268
313
|
}
|
|
269
314
|
case 'test': {
|
|
@@ -278,6 +323,58 @@ async function runStepEval(evalCase, config, session, options) {
|
|
|
278
323
|
output = 'Verify step eval not yet supported';
|
|
279
324
|
break;
|
|
280
325
|
}
|
|
326
|
+
case 'learn': {
|
|
327
|
+
const prompt = buildLearnPrompt({
|
|
328
|
+
issueNum: 0,
|
|
329
|
+
title: evalCase.issueTitle || 'Eval learn case',
|
|
330
|
+
status: 'failure',
|
|
331
|
+
retries: 0,
|
|
332
|
+
duration: 0,
|
|
333
|
+
diff: '',
|
|
334
|
+
testOutput: '',
|
|
335
|
+
reviewOutput: '',
|
|
336
|
+
verifyOutput: '',
|
|
337
|
+
body: input,
|
|
338
|
+
});
|
|
339
|
+
const result = await spawnAgent({
|
|
340
|
+
agent: resolvedAgent,
|
|
341
|
+
model: config.evalModel || resolved.model,
|
|
342
|
+
prompt,
|
|
343
|
+
cwd: process.cwd(),
|
|
344
|
+
timeout: (evalCase.timeout || 60) * 1000,
|
|
345
|
+
maxTurns: 1,
|
|
346
|
+
});
|
|
347
|
+
output = result.output;
|
|
348
|
+
trackCost(result);
|
|
349
|
+
break;
|
|
350
|
+
}
|
|
351
|
+
case 'skill': {
|
|
352
|
+
// Skill evals: spawn agent with the skill context from input
|
|
353
|
+
const result = await spawnAgent({
|
|
354
|
+
agent: config.agent,
|
|
355
|
+
model: config.evalModel || config.model,
|
|
356
|
+
prompt: input,
|
|
357
|
+
cwd: process.cwd(),
|
|
358
|
+
timeout: (evalCase.timeout || 60) * 1000,
|
|
359
|
+
});
|
|
360
|
+
output = result.output;
|
|
361
|
+
trackCost(result);
|
|
362
|
+
break;
|
|
363
|
+
}
|
|
364
|
+
case 'test-fix': {
|
|
365
|
+
// Test-fix evals: provide failing test output + code, ask agent to fix
|
|
366
|
+
const prompt = `The following test is failing. Diagnose the root cause and fix it.\n\n${input}`;
|
|
367
|
+
const result = await spawnAgent({
|
|
368
|
+
agent: resolvedAgent,
|
|
369
|
+
model: resolved.model,
|
|
370
|
+
prompt,
|
|
371
|
+
cwd: process.cwd(),
|
|
372
|
+
timeout: (evalCase.timeout || 120) * 1000,
|
|
373
|
+
});
|
|
374
|
+
output = result.output;
|
|
375
|
+
trackCost(result);
|
|
376
|
+
break;
|
|
377
|
+
}
|
|
281
378
|
}
|
|
282
379
|
}
|
|
283
380
|
catch (err) {
|
|
@@ -297,6 +394,9 @@ async function runStepEval(evalCase, config, session, options) {
|
|
|
297
394
|
partialCredit: checkResults.avgScore,
|
|
298
395
|
retries: 0,
|
|
299
396
|
duration,
|
|
397
|
+
costUsd: caseCostUsd || undefined,
|
|
398
|
+
inputTokens: caseInputTokens || undefined,
|
|
399
|
+
outputTokens: caseOutputTokens || undefined,
|
|
300
400
|
details: {
|
|
301
401
|
successMatch: true,
|
|
302
402
|
filesMatch: true,
|
|
@@ -316,6 +416,9 @@ async function runStepEval(evalCase, config, session, options) {
|
|
|
316
416
|
partialCredit: outputMatch ? 1 : 0,
|
|
317
417
|
retries: 0,
|
|
318
418
|
duration,
|
|
419
|
+
costUsd: caseCostUsd || undefined,
|
|
420
|
+
inputTokens: caseInputTokens || undefined,
|
|
421
|
+
outputTokens: caseOutputTokens || undefined,
|
|
319
422
|
details: {
|
|
320
423
|
successMatch: true,
|
|
321
424
|
filesMatch: true,
|
|
@@ -327,10 +430,16 @@ async function runStepEval(evalCase, config, session, options) {
|
|
|
327
430
|
}
|
|
328
431
|
/**
|
|
329
432
|
* Prepare a fixture directory for an e2e eval case.
|
|
330
|
-
*
|
|
433
|
+
*
|
|
434
|
+
* Supports three modes:
|
|
435
|
+
* 1. Monorepo fixture — fixtureRepo matches a name in config.yaml fixture_repo.fixtures
|
|
436
|
+
* 2. Remote/local repo — fixtureRepo is a GitHub owner/repo or local path
|
|
437
|
+
* 3. Current project — fixtureRepo is empty, uses the current project as fixture
|
|
331
438
|
*/
|
|
332
439
|
export function prepareFixture(evalCase, projectDir) {
|
|
333
440
|
const fixtureDir = resolve(projectDir, '.worktrees', `eval-${evalCase.id}`);
|
|
441
|
+
const evalDir = join(projectDir, '.alpha-loop', 'evals');
|
|
442
|
+
const evalConfig = loadEvalConfig(evalDir);
|
|
334
443
|
// Clean up any existing fixture
|
|
335
444
|
if (existsSync(fixtureDir)) {
|
|
336
445
|
rmSync(fixtureDir, { recursive: true, force: true });
|
|
@@ -338,38 +447,77 @@ export function prepareFixture(evalCase, projectDir) {
|
|
|
338
447
|
mkdirSync(fixtureDir, { recursive: true });
|
|
339
448
|
const repo = evalCase.fixtureRepo;
|
|
340
449
|
const ref = evalCase.fixtureRef || 'main';
|
|
450
|
+
// Mode 1: Monorepo fixture — repo name matches a configured fixture
|
|
451
|
+
if (evalConfig.fixture_repo && evalConfig.fixture_repo.fixtures[repo]) {
|
|
452
|
+
const repoDir = cloneOrCacheFixtureRepo(evalConfig.fixture_repo, projectDir);
|
|
453
|
+
extractFixture(repoDir, repo, evalConfig.fixture_repo, fixtureDir);
|
|
454
|
+
const entry = evalConfig.fixture_repo.fixtures[repo];
|
|
455
|
+
runFixtureSetup(fixtureDir, entry);
|
|
456
|
+
return fixtureDir;
|
|
457
|
+
}
|
|
458
|
+
// Mode 1b: SWE-bench repo — look up base_commit from config
|
|
459
|
+
if (evalConfig.swebench_repos && evalCase.source === 'swe-bench') {
|
|
460
|
+
const repoConfig = evalConfig.swebench_repos[repo];
|
|
461
|
+
if (repoConfig) {
|
|
462
|
+
// Clone the repo at the base commit
|
|
463
|
+
const url = `https://github.com/${repo}.git`;
|
|
464
|
+
log.info(`Cloning SWE-bench repo ${repo}...`);
|
|
465
|
+
const cloneResult = exec(`git clone "${url}" "${fixtureDir}"`, { timeout: 120_000 });
|
|
466
|
+
if (cloneResult.exitCode !== 0) {
|
|
467
|
+
throw new Error(`Failed to clone SWE-bench repo ${repo}: ${cloneResult.stderr}`);
|
|
468
|
+
}
|
|
469
|
+
// Checkout base commit
|
|
470
|
+
const checkout = exec(`git checkout "${ref}"`, { cwd: fixtureDir, timeout: 30_000 });
|
|
471
|
+
if (checkout.exitCode !== 0) {
|
|
472
|
+
throw new Error(`Failed to checkout ${ref}: ${checkout.stderr}`);
|
|
473
|
+
}
|
|
474
|
+
return fixtureDir;
|
|
475
|
+
}
|
|
476
|
+
}
|
|
477
|
+
// Mode 2: Remote or local repo
|
|
341
478
|
if (repo.includes('/') && !existsSync(repo)) {
|
|
342
479
|
// Remote repo — clone it
|
|
343
|
-
const cloneResult = exec(`git clone --depth 1 --branch ${ref} https://github.com/${repo}.git ${fixtureDir}`, { timeout: 120_000 });
|
|
480
|
+
const cloneResult = exec(`git clone --depth 1 --branch "${ref}" "https://github.com/${repo}.git" "${fixtureDir}"`, { timeout: 120_000 });
|
|
344
481
|
if (cloneResult.exitCode !== 0) {
|
|
345
482
|
throw new Error(`Failed to clone fixture repo ${repo}: ${cloneResult.stderr}`);
|
|
346
483
|
}
|
|
347
484
|
}
|
|
348
485
|
else if (existsSync(repo)) {
|
|
349
486
|
// Local repo — copy via git worktree or clone
|
|
350
|
-
const cloneResult = exec(`git clone --local --branch ${ref} ${repo} ${fixtureDir}`, { timeout: 30_000 });
|
|
487
|
+
const cloneResult = exec(`git clone --local --branch "${ref}" "${repo}" "${fixtureDir}"`, { timeout: 30_000 });
|
|
351
488
|
if (cloneResult.exitCode !== 0) {
|
|
352
489
|
throw new Error(`Failed to clone local fixture ${repo}: ${cloneResult.stderr}`);
|
|
353
490
|
}
|
|
354
491
|
}
|
|
355
492
|
else {
|
|
356
|
-
// Use current project as fixture
|
|
357
|
-
const result = exec(`git worktree add ${fixtureDir} ${ref} --detach`, {
|
|
493
|
+
// Mode 3: Use current project as fixture
|
|
494
|
+
const result = exec(`git worktree add "${fixtureDir}" "${ref}" --detach`, {
|
|
358
495
|
cwd: projectDir,
|
|
359
496
|
timeout: 30_000,
|
|
360
497
|
});
|
|
361
498
|
if (result.exitCode !== 0) {
|
|
362
499
|
// Worktree might already exist, try direct clone
|
|
363
|
-
exec(`git clone --local --branch ${ref} ${projectDir} ${fixtureDir}`, { timeout: 30_000 });
|
|
500
|
+
exec(`git clone --local --branch "${ref}" "${projectDir}" "${fixtureDir}"`, { timeout: 30_000 });
|
|
364
501
|
}
|
|
365
502
|
}
|
|
366
503
|
return fixtureDir;
|
|
367
504
|
}
|
|
368
|
-
/**
|
|
505
|
+
/** Extensions to include when hashing template directories. */
|
|
506
|
+
const TEXT_EXTENSIONS = new Set(['.md', '.yaml', '.yml', '.txt', '.json', '.ts', '.js']);
|
|
507
|
+
/** Read text files in a directory recursively, sorted, and concatenate contents. */
|
|
369
508
|
function readDirContentsSorted(dirPath) {
|
|
370
509
|
const entries = readdirSync(dirPath, { recursive: true, withFileTypes: true });
|
|
371
510
|
const files = entries
|
|
372
|
-
.filter((d) =>
|
|
511
|
+
.filter((d) => {
|
|
512
|
+
if (!d.isFile())
|
|
513
|
+
return false;
|
|
514
|
+
// Skip dotfiles (.DS_Store, .gitkeep, etc.)
|
|
515
|
+
if (d.name.startsWith('.'))
|
|
516
|
+
return false;
|
|
517
|
+
// Only include known text extensions
|
|
518
|
+
const ext = d.name.slice(d.name.lastIndexOf('.'));
|
|
519
|
+
return TEXT_EXTENSIONS.has(ext);
|
|
520
|
+
})
|
|
373
521
|
.map((d) => join(d.parentPath ?? d.path, d.name))
|
|
374
522
|
.sort();
|
|
375
523
|
return files.map((f) => readFileSync(f, 'utf-8')).join('\n');
|
|
@@ -436,4 +584,41 @@ function getGitState() {
|
|
|
436
584
|
return { branch: 'unknown', commit: 'unknown' };
|
|
437
585
|
}
|
|
438
586
|
}
|
|
587
|
+
/** Default average token estimates per pipeline step (input, output). */
|
|
588
|
+
const DEFAULT_TOKEN_ESTIMATES = {
|
|
589
|
+
plan: { input: 5000, output: 2000 },
|
|
590
|
+
implement: { input: 30000, output: 15000 },
|
|
591
|
+
test_fix: { input: 20000, output: 10000 },
|
|
592
|
+
review: { input: 25000, output: 5000 },
|
|
593
|
+
verify: { input: 15000, output: 3000 },
|
|
594
|
+
learn: { input: 10000, output: 3000 },
|
|
595
|
+
};
|
|
596
|
+
/**
|
|
597
|
+
* Estimate the cost of running an eval suite with a given config.
|
|
598
|
+
* Uses average token counts from previous runs if available,
|
|
599
|
+
* otherwise falls back to default estimates.
|
|
600
|
+
*/
|
|
601
|
+
export function estimateRunCost(caseCount, config) {
|
|
602
|
+
const steps = [];
|
|
603
|
+
const pipelineSteps = ['plan', 'implement', 'test_fix', 'review', 'verify', 'learn'];
|
|
604
|
+
for (const step of pipelineSteps) {
|
|
605
|
+
const { model } = resolveStepConfig(config, step);
|
|
606
|
+
const tokens = DEFAULT_TOKEN_ESTIMATES[step];
|
|
607
|
+
const costPerCase = estimateCost(model, tokens.input, tokens.output, config.pricing);
|
|
608
|
+
steps.push({
|
|
609
|
+
step,
|
|
610
|
+
model,
|
|
611
|
+
inputTokens: tokens.input,
|
|
612
|
+
outputTokens: tokens.output,
|
|
613
|
+
costPerCase,
|
|
614
|
+
});
|
|
615
|
+
}
|
|
616
|
+
const totalPerCase = steps.reduce((sum, s) => sum + s.costPerCase, 0);
|
|
617
|
+
return {
|
|
618
|
+
steps,
|
|
619
|
+
totalPerCase,
|
|
620
|
+
totalForSuite: totalPerCase * caseCount,
|
|
621
|
+
caseCount,
|
|
622
|
+
};
|
|
623
|
+
}
|
|
439
624
|
//# sourceMappingURL=eval-runner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eval-runner.js","sourceRoot":"","sources":["../../src/lib/eval-runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"eval-runner.js","sourceRoot":"","sources":["../../src/lib/eval-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Eval Skill Bridge — convert between AlphaLoop eval format (checks.yaml)
|
|
3
|
+
* and skill-creator eval format (evals.json).
|
|
4
|
+
*
|
|
5
|
+
* The skill-creator skill (.claude/skills/skill-creator/) uses its own eval format
|
|
6
|
+
* with assertions, grading agents, and benchmarking. This bridge allows:
|
|
7
|
+
* - Captured eval cases to be converted to skill-creator format for skill testing
|
|
8
|
+
* - Skill-creator evals to be loaded as AlphaLoop step-level cases
|
|
9
|
+
*/
|
|
10
|
+
import type { EvalCase } from './eval.js';
|
|
11
|
+
/** A single assertion in skill-creator format. */
|
|
12
|
+
export type SkillCreatorAssertion = {
|
|
13
|
+
type: 'contains' | 'contains_any' | 'not_contains' | 'output_contains';
|
|
14
|
+
value?: string;
|
|
15
|
+
values?: string[];
|
|
16
|
+
};
|
|
17
|
+
/** A single eval case in skill-creator format. */
|
|
18
|
+
export type SkillCreatorEvalCase = {
|
|
19
|
+
id: number;
|
|
20
|
+
prompt: string;
|
|
21
|
+
expected_output: string;
|
|
22
|
+
assertions: SkillCreatorAssertion[];
|
|
23
|
+
files: string[];
|
|
24
|
+
};
|
|
25
|
+
/** The top-level skill-creator eval format (evals.json). */
|
|
26
|
+
export type SkillCreatorEval = {
|
|
27
|
+
skill_name: string;
|
|
28
|
+
evals: SkillCreatorEvalCase[];
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* Convert an AlphaLoop EvalCase to skill-creator eval format.
|
|
32
|
+
*
|
|
33
|
+
* Maps:
|
|
34
|
+
* - keyword_present checks → contains assertions
|
|
35
|
+
* - keyword_absent checks → not_contains assertions
|
|
36
|
+
* - contains_any checks → contains_any assertions
|
|
37
|
+
* - llm_judge rubric → expected_output description
|
|
38
|
+
*/
|
|
39
|
+
export declare function toSkillCreatorEval(evalCase: EvalCase): SkillCreatorEval;
|
|
40
|
+
/**
|
|
41
|
+
* Convert a skill-creator eval back to an AlphaLoop EvalCase.
|
|
42
|
+
*
|
|
43
|
+
* Maps:
|
|
44
|
+
* - contains/output_contains assertions → keyword_present checks
|
|
45
|
+
* - contains_any assertions → contains_any checks
|
|
46
|
+
* - not_contains assertions → keyword_absent checks
|
|
47
|
+
* - expected_output → llm_judge rubric
|
|
48
|
+
*/
|
|
49
|
+
export declare function fromSkillCreatorEval(skillEval: SkillCreatorEval, caseIndex?: number): EvalCase;
|
|
50
|
+
/**
|
|
51
|
+
* Convert multiple skill-creator eval cases to AlphaLoop format.
|
|
52
|
+
*/
|
|
53
|
+
export declare function fromSkillCreatorEvalAll(skillEval: SkillCreatorEval): EvalCase[];
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Convert an AlphaLoop EvalCase to skill-creator eval format.
|
|
3
|
+
*
|
|
4
|
+
* Maps:
|
|
5
|
+
* - keyword_present checks → contains assertions
|
|
6
|
+
* - keyword_absent checks → not_contains assertions
|
|
7
|
+
* - contains_any checks → contains_any assertions
|
|
8
|
+
* - llm_judge rubric → expected_output description
|
|
9
|
+
*/
|
|
10
|
+
export function toSkillCreatorEval(evalCase) {
|
|
11
|
+
const skillName = evalCase.tags.find((t) => t.startsWith('skill:'))?.slice(6)
|
|
12
|
+
?? evalCase.step
|
|
13
|
+
?? 'unknown';
|
|
14
|
+
const assertions = [];
|
|
15
|
+
let expectedOutput = evalCase.description;
|
|
16
|
+
if (evalCase.checks) {
|
|
17
|
+
for (const check of evalCase.checks) {
|
|
18
|
+
switch (check.type) {
|
|
19
|
+
case 'keyword_present':
|
|
20
|
+
assertions.push({ type: 'contains', values: check.keywords });
|
|
21
|
+
break;
|
|
22
|
+
case 'keyword_absent':
|
|
23
|
+
assertions.push({ type: 'not_contains', values: check.keywords });
|
|
24
|
+
break;
|
|
25
|
+
case 'contains_any':
|
|
26
|
+
assertions.push({ type: 'contains_any', values: check.values });
|
|
27
|
+
break;
|
|
28
|
+
case 'llm_judge':
|
|
29
|
+
expectedOutput = check.rubric;
|
|
30
|
+
break;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return {
|
|
35
|
+
skill_name: skillName,
|
|
36
|
+
evals: [{
|
|
37
|
+
id: parseInt(evalCase.id.replace(/\D/g, '')) || 1,
|
|
38
|
+
prompt: evalCase.inputText ?? evalCase.issueBody,
|
|
39
|
+
expected_output: expectedOutput,
|
|
40
|
+
assertions,
|
|
41
|
+
files: [],
|
|
42
|
+
}],
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Convert a skill-creator eval back to an AlphaLoop EvalCase.
|
|
47
|
+
*
|
|
48
|
+
* Maps:
|
|
49
|
+
* - contains/output_contains assertions → keyword_present checks
|
|
50
|
+
* - contains_any assertions → contains_any checks
|
|
51
|
+
* - not_contains assertions → keyword_absent checks
|
|
52
|
+
* - expected_output → llm_judge rubric
|
|
53
|
+
*/
|
|
54
|
+
export function fromSkillCreatorEval(skillEval, caseIndex) {
|
|
55
|
+
const evalEntry = skillEval.evals[caseIndex ?? 0];
|
|
56
|
+
if (!evalEntry) {
|
|
57
|
+
throw new Error(`No eval case at index ${caseIndex ?? 0} in skill ${skillEval.skill_name}`);
|
|
58
|
+
}
|
|
59
|
+
const checks = [];
|
|
60
|
+
for (const assertion of evalEntry.assertions) {
|
|
61
|
+
switch (assertion.type) {
|
|
62
|
+
case 'contains':
|
|
63
|
+
case 'output_contains': {
|
|
64
|
+
const keywords = assertion.values
|
|
65
|
+
?? (assertion.value ? [assertion.value] : []);
|
|
66
|
+
if (keywords.length > 0) {
|
|
67
|
+
checks.push({ type: 'keyword_present', keywords });
|
|
68
|
+
}
|
|
69
|
+
break;
|
|
70
|
+
}
|
|
71
|
+
case 'contains_any': {
|
|
72
|
+
const values = assertion.values
|
|
73
|
+
?? (assertion.value ? [assertion.value] : []);
|
|
74
|
+
if (values.length > 0) {
|
|
75
|
+
checks.push({ type: 'contains_any', values });
|
|
76
|
+
}
|
|
77
|
+
break;
|
|
78
|
+
}
|
|
79
|
+
case 'not_contains': {
|
|
80
|
+
const keywords = assertion.values
|
|
81
|
+
?? (assertion.value ? [assertion.value] : []);
|
|
82
|
+
if (keywords.length > 0) {
|
|
83
|
+
checks.push({ type: 'keyword_absent', keywords });
|
|
84
|
+
}
|
|
85
|
+
break;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
// Add llm_judge if there's an expected_output description
|
|
90
|
+
if (evalEntry.expected_output) {
|
|
91
|
+
checks.push({
|
|
92
|
+
type: 'llm_judge',
|
|
93
|
+
model: 'claude-haiku-4-5',
|
|
94
|
+
rubric: `Does the output match this expectation?\n\n${evalEntry.expected_output}\n\n5 = Fully matches\n3 = Partially matches\n1 = Does not match`,
|
|
95
|
+
min_score: 4,
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
return {
|
|
99
|
+
id: `skill-${skillEval.skill_name}-${evalEntry.id}`,
|
|
100
|
+
description: evalEntry.expected_output.slice(0, 100),
|
|
101
|
+
type: 'step',
|
|
102
|
+
step: 'skill',
|
|
103
|
+
fixtureRepo: '',
|
|
104
|
+
fixtureRef: 'main',
|
|
105
|
+
issueTitle: `Skill eval: ${skillEval.skill_name}`,
|
|
106
|
+
issueBody: evalEntry.prompt,
|
|
107
|
+
expected: { success: true },
|
|
108
|
+
tags: [`skill:${skillEval.skill_name}`],
|
|
109
|
+
timeout: 60,
|
|
110
|
+
source: 'skill-creator',
|
|
111
|
+
checks,
|
|
112
|
+
inputText: evalEntry.prompt,
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Convert multiple skill-creator eval cases to AlphaLoop format.
|
|
117
|
+
*/
|
|
118
|
+
export function fromSkillCreatorEvalAll(skillEval) {
|
|
119
|
+
return skillEval.evals.map((_, i) => fromSkillCreatorEval(skillEval, i));
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=eval-skill-bridge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eval-skill-bridge.js","sourceRoot":"","sources":["../../src/lib/eval-skill-bridge.ts"],"names":[],"mappings":"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"}
|