@post-print/agent-test 0.3.11 → 0.3.13
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 +1 -0
- package/dist/cli.d.ts +9 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +53 -3
- package/dist/cli.js.map +1 -1
- package/dist/command-allowlist.d.ts +9 -0
- package/dist/command-allowlist.d.ts.map +1 -0
- package/dist/command-allowlist.js +29 -0
- package/dist/command-allowlist.js.map +1 -0
- package/dist/compare-scenario.d.ts +5 -0
- package/dist/compare-scenario.d.ts.map +1 -1
- package/dist/compare-scenario.js +42 -25
- package/dist/compare-scenario.js.map +1 -1
- package/dist/expect.d.ts +2 -0
- package/dist/expect.d.ts.map +1 -1
- package/dist/expect.js +17 -0
- package/dist/expect.js.map +1 -1
- package/dist/html-report.d.ts +1 -0
- package/dist/html-report.d.ts.map +1 -1
- package/dist/html-report.js +26 -30
- package/dist/html-report.js.map +1 -1
- package/dist/index.d.ts +7 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -2
- package/dist/index.js.map +1 -1
- package/dist/live-isolation.d.ts +6 -1
- package/dist/live-isolation.d.ts.map +1 -1
- package/dist/live-isolation.js +30 -2
- package/dist/live-isolation.js.map +1 -1
- package/dist/record-trace.d.ts +2 -2
- package/dist/record-trace.d.ts.map +1 -1
- package/dist/record-trace.js +6 -4
- package/dist/record-trace.js.map +1 -1
- package/dist/run-suite.d.ts +9 -1
- package/dist/run-suite.d.ts.map +1 -1
- package/dist/run-suite.js +103 -42
- package/dist/run-suite.js.map +1 -1
- package/dist/scenario-story.d.ts.map +1 -1
- package/dist/scenario-story.js +11 -4
- package/dist/scenario-story.js.map +1 -1
- package/dist/types.d.ts +8 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/validate-suite.d.ts.map +1 -1
- package/dist/validate-suite.js +1 -0
- package/dist/validate-suite.js.map +1 -1
- package/dist/viewer/catalog.d.ts +51 -0
- package/dist/viewer/catalog.d.ts.map +1 -0
- package/dist/viewer/catalog.js +107 -0
- package/dist/viewer/catalog.js.map +1 -0
- package/dist/viewer/cli.d.ts +17 -0
- package/dist/viewer/cli.d.ts.map +1 -0
- package/dist/viewer/cli.js +38 -0
- package/dist/viewer/cli.js.map +1 -0
- package/dist/viewer/emit.d.ts +7 -0
- package/dist/viewer/emit.d.ts.map +1 -0
- package/dist/viewer/emit.js +25 -0
- package/dist/viewer/emit.js.map +1 -0
- package/dist/viewer/events.d.ts +55 -0
- package/dist/viewer/events.d.ts.map +1 -0
- package/dist/viewer/events.js +45 -0
- package/dist/viewer/events.js.map +1 -0
- package/dist/viewer/live-runner.d.ts +14 -0
- package/dist/viewer/live-runner.d.ts.map +1 -0
- package/dist/viewer/live-runner.js +73 -0
- package/dist/viewer/live-runner.js.map +1 -0
- package/dist/viewer/page.d.ts +3 -0
- package/dist/viewer/page.d.ts.map +1 -0
- package/dist/viewer/page.js +431 -0
- package/dist/viewer/page.js.map +1 -0
- package/dist/viewer/run-controller.d.ts +22 -0
- package/dist/viewer/run-controller.d.ts.map +1 -0
- package/dist/viewer/run-controller.js +128 -0
- package/dist/viewer/run-controller.js.map +1 -0
- package/dist/viewer/server.d.ts +16 -0
- package/dist/viewer/server.d.ts.map +1 -0
- package/dist/viewer/server.js +147 -0
- package/dist/viewer/server.js.map +1 -0
- package/dist/worker-pool.d.ts +8 -0
- package/dist/worker-pool.d.ts.map +1 -0
- package/dist/worker-pool.js +26 -0
- package/dist/worker-pool.js.map +1 -0
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -37,6 +37,7 @@ JSON is an authoring adapter, not a stored answer. This repository keeps host-ag
|
|
|
37
37
|
```bash
|
|
38
38
|
npx agent-test login
|
|
39
39
|
npx agent-test --check --suites-dir agent-suites
|
|
40
|
+
npx agent-test viewer --suites-dir agent-suites --workers 2
|
|
40
41
|
npx agent-test --suites-dir agent-suites --host cursor --suite smoke
|
|
41
42
|
npx agent-test --suites-dir agent-suites --host cursor --auth-mode api-key
|
|
42
43
|
```
|
package/dist/cli.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env -S node --disable-warning=ExperimentalWarning
|
|
2
2
|
import { type AgentHost, type HostAuthMode } from "@post-print/agent-harness";
|
|
3
3
|
import { type FailOnMode } from "./suite-summary.js";
|
|
4
|
+
import type { CompareArmId } from "./types.js";
|
|
4
5
|
export interface ParsedCliArgs {
|
|
5
6
|
cwd: string;
|
|
6
7
|
suitesDir: string;
|
|
@@ -41,6 +42,14 @@ export interface ParsedCliArgs {
|
|
|
41
42
|
authMode?: HostAuthMode;
|
|
42
43
|
/** `agent-test login` — store host CLI or Cursor SDK credentials. */
|
|
43
44
|
login: boolean;
|
|
45
|
+
/** `agent-test viewer` — localhost catalog and live chat UI. */
|
|
46
|
+
viewer: boolean;
|
|
47
|
+
/** Isolated child: run one compare arm only. */
|
|
48
|
+
compareArm?: CompareArmId;
|
|
49
|
+
/** Viewer listen port. `0` picks a free port. */
|
|
50
|
+
viewerPort?: number;
|
|
51
|
+
/** How many live agents run at once. Viewer default is 4. CLI default is 1. */
|
|
52
|
+
workers?: number;
|
|
44
53
|
}
|
|
45
54
|
/** Usage text for `--help`. */
|
|
46
55
|
export declare function formatHelp(): string;
|
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAIA,OAAO,EACN,KAAK,SAAS,EAEd,KAAK,YAAY,EAMjB,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAIA,OAAO,EACN,KAAK,SAAS,EAEd,KAAK,YAAY,EAMjB,MAAM,2BAA2B,CAAC;AA+BnC,OAAO,EACN,KAAK,UAAU,EAIf,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAQ/C,MAAM,WAAW,aAAa;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,6DAA6D;IAC7D,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC;IACpB,wEAAwE;IACxE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,8CAA8C;IAC9C,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,OAAO,CAAC;IACxB,wDAAwD;IACxD,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,OAAO,CAAC;IACpB,4FAA4F;IAC5F,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;IACvB,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,UAAU,CAAC;IACnB,0EAA0E;IAC1E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,qEAAqE;IACrE,KAAK,EAAE,OAAO,CAAC;IACf,gEAAgE;IAChE,MAAM,EAAE,OAAO,CAAC;IAChB,gDAAgD;IAChD,UAAU,CAAC,EAAE,YAAY,CAAC;IAC1B,iDAAiD;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+EAA+E;IAC/E,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AA+CD,+BAA+B;AAC/B,wBAAgB,UAAU,IAAI,MAAM,CAwCnC;AAED,2DAA2D;AAC3D,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,aAAa,CA+R1D;AAED,4FAA4F;AAC5F,wBAAgB,mBAAmB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAQ9F;AAED,4EAA4E;AAC5E,wBAAgB,0BAA0B,CACzC,UAAU,EAAE,OAAO,EACnB,SAAS,CAAC,EAAE,MAAM,GAChB,MAAM,GAAG,SAAS,CAKpB"}
|
package/dist/cli.js
CHANGED
|
@@ -4,6 +4,7 @@ import { fileURLToPath } from "node:url";
|
|
|
4
4
|
import { cleanupStaleScenarioWorktrees, isPathUnderRoot, knownAgentHosts, missingClassifierAuth, parseHostAuthModeFlag, setProcessAuthMode, } from "@post-print/agent-harness";
|
|
5
5
|
import { collectSuiteHosts, formatCheckReport, formatCheckSummary, missingHostsAuth, runCheck, } from "./check.js";
|
|
6
6
|
import { isCliMain } from "./cli-entry.js";
|
|
7
|
+
import { parseCompareArmId } from "./compare-scenario.js";
|
|
7
8
|
import { missingAgentAuth } from "./doctor.js";
|
|
8
9
|
import { installHostLogFilter } from "./host-log.js";
|
|
9
10
|
import { ensureCursorSdkLoginForLive, offerCursorSdkReloginIfNeeded, runHostLogin, } from "./host-login.js";
|
|
@@ -17,7 +18,9 @@ import { shouldStartReportPreview, startDetachedReportPreview } from "./report-p
|
|
|
17
18
|
import { registerLiveRunHandlers, runAllSuites, selectedRunNeedsJudge } from "./run-suite.js";
|
|
18
19
|
import { formatRunSummary, shouldFailScenario, summarizeReports, } from "./suite-summary.js";
|
|
19
20
|
import { configureCliColor, theme } from "./theme.js";
|
|
21
|
+
import { startViewerCli } from "./viewer/cli.js";
|
|
20
22
|
import { suppressNoisyRuntimeWarnings } from "./warnings.js";
|
|
23
|
+
import { parseWorkerCount } from "./worker-pool.js";
|
|
21
24
|
suppressNoisyRuntimeWarnings();
|
|
22
25
|
configureCliColor();
|
|
23
26
|
function splitArgvFlag(token) {
|
|
@@ -57,11 +60,13 @@ export function formatHelp() {
|
|
|
57
60
|
return [
|
|
58
61
|
"agent-test [options] [suite]",
|
|
59
62
|
"agent-test login [--host cursor|claude|openai]",
|
|
63
|
+
"agent-test viewer [--suites-dir agent-suites]",
|
|
60
64
|
"",
|
|
61
65
|
"Launch a host agent and score the transcript.",
|
|
62
66
|
"A run checks the suite and host first.",
|
|
63
67
|
"",
|
|
64
68
|
" login Store a Cursor SDK login. Codex uses `codex login`.",
|
|
69
|
+
" viewer Open a localhost catalog. Run buttons start live agents.",
|
|
65
70
|
" --check Check the suite and host. Do not launch an agent.",
|
|
66
71
|
" --help, -h Print this help.",
|
|
67
72
|
"",
|
|
@@ -74,12 +79,15 @@ export function formatHelp() {
|
|
|
74
79
|
" --suites-dir <path> Suite root (default: agent-suites)",
|
|
75
80
|
" --suite <name> Run one suite",
|
|
76
81
|
" --scenario <name> Run one scenario",
|
|
82
|
+
" --compare-arm <id> Isolated child: run one compare arm",
|
|
83
|
+
" --port <n> Viewer listen port. Default is a free port.",
|
|
77
84
|
" --no-judge Skip the judge",
|
|
78
85
|
" --fail-on all|behavior|infra-only",
|
|
79
86
|
" --allow-user-input Let a user agent answer AskQuestion tools",
|
|
80
87
|
" --timeout-ms <n> Agent deadline",
|
|
81
88
|
" --no-timeout Disable the deadline",
|
|
82
89
|
" --scenario-retries <n> Announce-stop retries",
|
|
90
|
+
" --workers <n> Parallel live agents (1-32). Viewer default 4. CLI default 1.",
|
|
83
91
|
" --debug Keep recordings and write a debug bundle",
|
|
84
92
|
" --debug-dir <path> Debug session parent directory",
|
|
85
93
|
" --report-out <path> HTML report file or directory",
|
|
@@ -119,11 +127,15 @@ export function parseCliArgs(argv) {
|
|
|
119
127
|
let failOn = "all";
|
|
120
128
|
let scenarioRetries;
|
|
121
129
|
let authMode;
|
|
130
|
+
let compareArm;
|
|
131
|
+
let viewerPort;
|
|
132
|
+
let workers;
|
|
122
133
|
if (argv[2] === "compare") {
|
|
123
|
-
throw new Error("The compare subcommand is removed. Add compare.a and compare.b, or compare.arms, on one scenario. Set compare.faster or compare.cheaper when named arms must win on
|
|
134
|
+
throw new Error("The compare subcommand is removed. Add compare.a and compare.b, or compare.arms, on one scenario. Set compare.faster or compare.cheaper when named arms must win on turns or tokens. Add rubric.judge only when you want a shared judge.");
|
|
124
135
|
}
|
|
125
136
|
const login = argv[2] === "login";
|
|
126
|
-
const
|
|
137
|
+
const viewer = argv[2] === "viewer";
|
|
138
|
+
const startIndex = login || viewer ? 3 : 2;
|
|
127
139
|
const checkMode = {
|
|
128
140
|
check: false,
|
|
129
141
|
validateOnly: false,
|
|
@@ -200,6 +212,22 @@ export function parseCliArgs(argv) {
|
|
|
200
212
|
case "--scenario":
|
|
201
213
|
scenarioFilter = read();
|
|
202
214
|
break;
|
|
215
|
+
case "--compare-arm": {
|
|
216
|
+
const value = parseCompareArmId(read());
|
|
217
|
+
if (!value) {
|
|
218
|
+
throw new Error("--compare-arm must be a lowercase slug");
|
|
219
|
+
}
|
|
220
|
+
compareArm = value;
|
|
221
|
+
break;
|
|
222
|
+
}
|
|
223
|
+
case "--port": {
|
|
224
|
+
const parsedPort = Number(read());
|
|
225
|
+
if (!Number.isInteger(parsedPort) || parsedPort < 0 || parsedPort > 65535) {
|
|
226
|
+
throw new Error("--port must be an integer 0-65535");
|
|
227
|
+
}
|
|
228
|
+
viewerPort = parsedPort;
|
|
229
|
+
break;
|
|
230
|
+
}
|
|
203
231
|
case "--staging-session-id":
|
|
204
232
|
stagingSessionId = read();
|
|
205
233
|
break;
|
|
@@ -250,6 +278,9 @@ export function parseCliArgs(argv) {
|
|
|
250
278
|
scenarioRetries = parsedRetries;
|
|
251
279
|
break;
|
|
252
280
|
}
|
|
281
|
+
case "--workers":
|
|
282
|
+
workers = parseWorkerCount(read());
|
|
283
|
+
break;
|
|
253
284
|
case "--compare-pairs":
|
|
254
285
|
case "--a":
|
|
255
286
|
case "--b":
|
|
@@ -257,7 +288,7 @@ export function parseCliArgs(argv) {
|
|
|
257
288
|
case "--compare-b":
|
|
258
289
|
case "--out-dir":
|
|
259
290
|
case "--compare-out":
|
|
260
|
-
throw new Error(`${flag} is removed. Add compare.a and compare.b, or compare.arms, on one scenario. Set compare.faster or compare.cheaper when named arms must win on
|
|
291
|
+
throw new Error(`${flag} is removed. Add compare.a and compare.b, or compare.arms, on one scenario. Set compare.faster or compare.cheaper when named arms must win on turns or tokens. Add rubric.judge only when you want a shared judge.`);
|
|
261
292
|
case "--report-out":
|
|
262
293
|
reportOut = read();
|
|
263
294
|
break;
|
|
@@ -285,6 +316,12 @@ export function parseCliArgs(argv) {
|
|
|
285
316
|
const host = hosts?.[0];
|
|
286
317
|
judge = judge ?? true;
|
|
287
318
|
worktree = worktree ?? true;
|
|
319
|
+
if (workers === undefined) {
|
|
320
|
+
const fromEnv = process.env.AGENT_TEST_WORKERS?.trim();
|
|
321
|
+
if (fromEnv) {
|
|
322
|
+
workers = parseWorkerCount(fromEnv, "AGENT_TEST_WORKERS");
|
|
323
|
+
}
|
|
324
|
+
}
|
|
288
325
|
if (debug) {
|
|
289
326
|
keepRecordings = true;
|
|
290
327
|
process.env.AGENT_TEST_DEBUG = "1";
|
|
@@ -322,6 +359,10 @@ export function parseCliArgs(argv) {
|
|
|
322
359
|
scenarioRetries,
|
|
323
360
|
authMode,
|
|
324
361
|
login,
|
|
362
|
+
viewer,
|
|
363
|
+
compareArm,
|
|
364
|
+
viewerPort,
|
|
365
|
+
workers,
|
|
325
366
|
};
|
|
326
367
|
}
|
|
327
368
|
/** Resolve an explicit report target into the HTML path and optional artifact directory. */
|
|
@@ -400,6 +441,15 @@ async function main() {
|
|
|
400
441
|
console.error(error instanceof Error ? error.message : error);
|
|
401
442
|
return 1;
|
|
402
443
|
}
|
|
444
|
+
if (args.viewer) {
|
|
445
|
+
try {
|
|
446
|
+
return await startViewerCli(args);
|
|
447
|
+
}
|
|
448
|
+
catch (error) {
|
|
449
|
+
console.error(error instanceof Error ? error.message : error);
|
|
450
|
+
return 1;
|
|
451
|
+
}
|
|
452
|
+
}
|
|
403
453
|
if (args.check || args.doctor || args.validateOnly || args.validateSeeds) {
|
|
404
454
|
const report = await runCheck({
|
|
405
455
|
cwd: args.cwd,
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/** Split `cmd && other` into statements. Pipes and newlines also split. */
|
|
2
|
+
export declare function splitShellSegments(command: string): string[];
|
|
3
|
+
/** True when the statement includes at least one allowlist fragment. */
|
|
4
|
+
export declare function shellSegmentAllowed(segment: string, allowlist: string[]): boolean;
|
|
5
|
+
/** Segments of one command that miss the allowlist. An empty list rejects every statement. */
|
|
6
|
+
export declare function disallowedShellSegments(command: string, allowlist: string[]): string[];
|
|
7
|
+
/** True when every statement in the command matches the allowlist. */
|
|
8
|
+
export declare function shellCommandAllowed(command: string, allowlist: string[]): boolean;
|
|
9
|
+
//# sourceMappingURL=command-allowlist.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-allowlist.d.ts","sourceRoot":"","sources":["../src/command-allowlist.ts"],"names":[],"mappings":"AAGA,2EAA2E;AAC3E,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAK5D;AAED,wEAAwE;AACxE,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAEjF;AAED,8FAA8F;AAC9F,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAStF;AAED,sEAAsE;AACtE,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAEjF"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/** Split a shell line on combinators so each statement is scored. */
|
|
2
|
+
const SHELL_SPLIT = /(?:&&|\|\||;|\n|(?<!\|)\|(?!\|))/;
|
|
3
|
+
/** Split `cmd && other` into statements. Pipes and newlines also split. */
|
|
4
|
+
export function splitShellSegments(command) {
|
|
5
|
+
return command
|
|
6
|
+
.split(SHELL_SPLIT)
|
|
7
|
+
.map((segment) => segment.trim())
|
|
8
|
+
.filter((segment) => segment.length > 0);
|
|
9
|
+
}
|
|
10
|
+
/** True when the statement includes at least one allowlist fragment. */
|
|
11
|
+
export function shellSegmentAllowed(segment, allowlist) {
|
|
12
|
+
return allowlist.some((pattern) => pattern.length > 0 && segment.includes(pattern));
|
|
13
|
+
}
|
|
14
|
+
/** Segments of one command that miss the allowlist. An empty list rejects every statement. */
|
|
15
|
+
export function disallowedShellSegments(command, allowlist) {
|
|
16
|
+
const segments = splitShellSegments(command);
|
|
17
|
+
if (segments.length === 0) {
|
|
18
|
+
return [];
|
|
19
|
+
}
|
|
20
|
+
if (allowlist.length === 0) {
|
|
21
|
+
return [command.trim() || command];
|
|
22
|
+
}
|
|
23
|
+
return segments.filter((segment) => !shellSegmentAllowed(segment, allowlist));
|
|
24
|
+
}
|
|
25
|
+
/** True when every statement in the command matches the allowlist. */
|
|
26
|
+
export function shellCommandAllowed(command, allowlist) {
|
|
27
|
+
return disallowedShellSegments(command, allowlist).length === 0;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=command-allowlist.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-allowlist.js","sourceRoot":"","sources":["../src/command-allowlist.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,MAAM,WAAW,GAAG,kCAAkC,CAAC;AAEvD,2EAA2E;AAC3E,MAAM,UAAU,kBAAkB,CAAC,OAAe;IACjD,OAAO,OAAO;SACZ,KAAK,CAAC,WAAW,CAAC;SAClB,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;SAChC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAC3C,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,mBAAmB,CAAC,OAAe,EAAE,SAAmB;IACvE,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;AACrF,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,uBAAuB,CAAC,OAAe,EAAE,SAAmB;IAC3E,MAAM,QAAQ,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC7C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,EAAE,CAAC;IACX,CAAC;IACD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,OAAO,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,mBAAmB,CAAC,OAAe,EAAE,SAAmB;IACvE,OAAO,uBAAuB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;AACjE,CAAC"}
|
|
@@ -34,6 +34,11 @@ export declare function compareResultArms(result: ScenarioCompareResult): Compar
|
|
|
34
34
|
export declare function buildCompareResult(arms: CompareArmResult[], gates?: Pick<ScenarioCompareResult, "faster" | "cheaper">): ScenarioCompareResult;
|
|
35
35
|
export declare function resolveCompareMetricPairs(gate: CompareMetricGate | undefined, armIds: readonly string[]): CompareMetricPair[];
|
|
36
36
|
export declare function compareArmTokens(arm: CompareArmResult): number | undefined;
|
|
37
|
+
/** Assistant messages on the trace. One message is one agent turn after stream coalesce. */
|
|
38
|
+
export declare function compareArmTurns(arm: CompareArmResult): number | undefined;
|
|
39
|
+
export declare function formatCompareTurns(turns: number): string;
|
|
40
|
+
/** Apply one compare arm, or throw when the arm id is missing. */
|
|
41
|
+
export declare function requireCompareArm(scenario: AgentScenario, side: CompareArmId): AgentScenario;
|
|
37
42
|
/** Apply one compare arm onto the shared scenario. Drops `compare` so the arm is a normal run. */
|
|
38
43
|
export declare function applyCompareArm(scenario: AgentScenario, side: CompareArmId): AgentScenario;
|
|
39
44
|
export declare function attachCompareStoryResults(fields: CompareStoryFields, result: ScenarioCompareResult): CompareStoryFields;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compare-scenario.d.ts","sourceRoot":"","sources":["../src/compare-scenario.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACX,aAAa,EACb,gBAAgB,EAChB,UAAU,EACV,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,cAAc,EACd,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"compare-scenario.d.ts","sourceRoot":"","sources":["../src/compare-scenario.ts"],"names":[],"mappings":"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"}
|
package/dist/compare-scenario.js
CHANGED
|
@@ -3,6 +3,7 @@ const RUBRIC_ARRAY_KEYS = [
|
|
|
3
3
|
"must",
|
|
4
4
|
"mustNot",
|
|
5
5
|
"mustRun",
|
|
6
|
+
"allowedCommands",
|
|
6
7
|
"mustCallTool",
|
|
7
8
|
"mustNotCallTool",
|
|
8
9
|
"mustReadPath",
|
|
@@ -129,6 +130,24 @@ export function compareArmTokens(arm) {
|
|
|
129
130
|
const total = arm.trace?.usage?.totalTokens;
|
|
130
131
|
return typeof total === "number" ? total : undefined;
|
|
131
132
|
}
|
|
133
|
+
/** Assistant messages on the trace. One message is one agent turn after stream coalesce. */
|
|
134
|
+
export function compareArmTurns(arm) {
|
|
135
|
+
if (!arm.trace) {
|
|
136
|
+
return undefined;
|
|
137
|
+
}
|
|
138
|
+
return arm.trace.messages.filter((message) => message.role === "assistant").length;
|
|
139
|
+
}
|
|
140
|
+
export function formatCompareTurns(turns) {
|
|
141
|
+
return turns === 1 ? "1 turn" : `${turns} turns`;
|
|
142
|
+
}
|
|
143
|
+
/** Apply one compare arm, or throw when the arm id is missing. */
|
|
144
|
+
export function requireCompareArm(scenario, side) {
|
|
145
|
+
const resolved = resolveCompareArms(scenario.compare);
|
|
146
|
+
if (!resolved.some((entry) => entry.id === side)) {
|
|
147
|
+
throw new Error(`Scenario ${scenario.name} has no compare arm ${side}`);
|
|
148
|
+
}
|
|
149
|
+
return applyCompareArm(scenario, side);
|
|
150
|
+
}
|
|
132
151
|
/** Apply one compare arm onto the shared scenario. Drops `compare` so the arm is a normal run. */
|
|
133
152
|
export function applyCompareArm(scenario, side) {
|
|
134
153
|
const { compare, ...rest } = scenario;
|
|
@@ -192,31 +211,25 @@ export function prefixCompareFailures(label, failures) {
|
|
|
192
211
|
message: `${label}: ${failure.message}`,
|
|
193
212
|
}));
|
|
194
213
|
}
|
|
195
|
-
function formatCompareDuration(ms) {
|
|
196
|
-
if (ms < 1000) {
|
|
197
|
-
return `${Math.round(ms)}ms`;
|
|
198
|
-
}
|
|
199
|
-
return `${(ms / 1000).toFixed(1)}s`;
|
|
200
|
-
}
|
|
201
214
|
function armToolCount(arm) {
|
|
202
215
|
return arm.trace ? arm.trace.toolCalls.length : undefined;
|
|
203
216
|
}
|
|
204
217
|
function armById(arms, id) {
|
|
205
218
|
return arms.find((arm) => arm.id === id);
|
|
206
219
|
}
|
|
207
|
-
function
|
|
208
|
-
const
|
|
209
|
-
const
|
|
210
|
-
if (typeof
|
|
220
|
+
function describePairTurns(winner, loser) {
|
|
221
|
+
const winnerTurns = compareArmTurns(winner);
|
|
222
|
+
const loserTurns = compareArmTurns(loser);
|
|
223
|
+
if (typeof winnerTurns !== "number" || typeof loserTurns !== "number") {
|
|
211
224
|
return undefined;
|
|
212
225
|
}
|
|
213
|
-
if (
|
|
214
|
-
return `${winner.label} and ${loser.label}
|
|
226
|
+
if (winnerTurns === loserTurns) {
|
|
227
|
+
return `${winner.label} and ${loser.label} use ${formatCompareTurns(winnerTurns)}`;
|
|
215
228
|
}
|
|
216
|
-
if (
|
|
217
|
-
return `${winner.label}
|
|
229
|
+
if (winnerTurns < loserTurns) {
|
|
230
|
+
return `${winner.label} uses fewer turns than ${loser.label} (${winnerTurns} vs ${loserTurns})`;
|
|
218
231
|
}
|
|
219
|
-
return `${loser.label}
|
|
232
|
+
return `${loser.label} uses fewer turns than ${winner.label} (${loserTurns} vs ${winnerTurns})`;
|
|
220
233
|
}
|
|
221
234
|
function describePairTokens(winner, loser) {
|
|
222
235
|
const winnerTokens = compareArmTokens(winner);
|
|
@@ -234,13 +247,17 @@ function describePairTokens(winner, loser) {
|
|
|
234
247
|
}
|
|
235
248
|
function describeTwoArmOutcome(left, right) {
|
|
236
249
|
const lines = [];
|
|
237
|
-
const
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
250
|
+
const aTurns = compareArmTurns(left);
|
|
251
|
+
const bTurns = compareArmTurns(right);
|
|
252
|
+
if (typeof aTurns === "number" && typeof bTurns === "number") {
|
|
253
|
+
if (aTurns === bTurns) {
|
|
254
|
+
lines.push(`both arms use ${formatCompareTurns(aTurns)}`);
|
|
241
255
|
}
|
|
242
256
|
else {
|
|
243
|
-
|
|
257
|
+
const turns = describePairTurns(left, right);
|
|
258
|
+
if (turns) {
|
|
259
|
+
lines.push(turns);
|
|
260
|
+
}
|
|
244
261
|
}
|
|
245
262
|
}
|
|
246
263
|
const aTokens = compareArmTokens(left);
|
|
@@ -287,7 +304,7 @@ export function describeCompareOutcome(compare) {
|
|
|
287
304
|
if (!winner || !loser) {
|
|
288
305
|
continue;
|
|
289
306
|
}
|
|
290
|
-
const line =
|
|
307
|
+
const line = describePairTurns(winner, loser);
|
|
291
308
|
if (line) {
|
|
292
309
|
lines.push(line);
|
|
293
310
|
}
|
|
@@ -323,7 +340,7 @@ export function applySidecarCompareDurations(compare, sidecar) {
|
|
|
323
340
|
});
|
|
324
341
|
return buildCompareResult(arms, { faster: compare.faster, cheaper: compare.cheaper });
|
|
325
342
|
}
|
|
326
|
-
function assertMetricPair(matcher, pair, byId, read, verb, unit) {
|
|
343
|
+
function assertMetricPair(matcher, pair, byId, read, verb, unit, reported) {
|
|
327
344
|
const winner = byId.get(pair.winner);
|
|
328
345
|
const loser = byId.get(pair.loser);
|
|
329
346
|
if (!winner || !loser) {
|
|
@@ -335,7 +352,7 @@ function assertMetricPair(matcher, pair, byId, read, verb, unit) {
|
|
|
335
352
|
const loserValue = read(loser);
|
|
336
353
|
if (winnerValue === undefined || loserValue === undefined) {
|
|
337
354
|
return [
|
|
338
|
-
assertionFailure(matcher, `${winner.label} must ${verb} ${loser.label}, but one arm did not report ${
|
|
355
|
+
assertionFailure(matcher, `${winner.label} must ${verb} ${loser.label}, but one arm did not report ${reported}`, "rubric_miss"),
|
|
339
356
|
];
|
|
340
357
|
}
|
|
341
358
|
if (!(winnerValue < loserValue)) {
|
|
@@ -354,10 +371,10 @@ export function assertCompareMetrics(spec, result) {
|
|
|
354
371
|
const byId = new Map(arms.map((arm) => [arm.id, arm]));
|
|
355
372
|
const failures = [];
|
|
356
373
|
for (const pair of resolveCompareMetricPairs(spec.faster, armIds)) {
|
|
357
|
-
failures.push(...assertMetricPair("faster", pair, byId,
|
|
374
|
+
failures.push(...assertMetricPair("faster", pair, byId, compareArmTurns, "use fewer turns than", "", "turns"));
|
|
358
375
|
}
|
|
359
376
|
for (const pair of resolveCompareMetricPairs(spec.cheaper, armIds)) {
|
|
360
|
-
failures.push(...assertMetricPair("cheaper", pair, byId, compareArmTokens, "use fewer tokens than", ""));
|
|
377
|
+
failures.push(...assertMetricPair("cheaper", pair, byId, compareArmTokens, "use fewer tokens than", "", "tokens"));
|
|
361
378
|
}
|
|
362
379
|
return failures;
|
|
363
380
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compare-scenario.js","sourceRoot":"","sources":["../src/compare-scenario.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"compare-scenario.js","sourceRoot":"","sources":["../src/compare-scenario.ts"],"names":[],"mappings":"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"}
|
package/dist/expect.d.ts
CHANGED
|
@@ -23,6 +23,8 @@ export declare class TraceAssertion {
|
|
|
23
23
|
toHaveHandsOnTier(tier: ScenarioRubric["tier"]): this;
|
|
24
24
|
toHaveReviewDepth(depth: ScenarioRubric["reviewDepth"]): this;
|
|
25
25
|
toHaveRunCommand(fragment: string): this;
|
|
26
|
+
/** When set, every shell statement must match one allowlist fragment. */
|
|
27
|
+
toHaveAllowedCommands(allowlist: string[] | undefined): this;
|
|
26
28
|
/**
|
|
27
29
|
* Assert a tool was called. Spec is a name substring, or `name:fragment`
|
|
28
30
|
* where fragment must appear in JSON args or the tool result.
|
package/dist/expect.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expect.d.ts","sourceRoot":"","sources":["../src/expect.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,UAAU,EAMf,KAAK,gBAAgB,EACrB,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"expect.d.ts","sourceRoot":"","sources":["../src/expect.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,UAAU,EAMf,KAAK,gBAAgB,EACrB,MAAM,2BAA2B,CAAC;AAInC,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEnE,MAAM,WAAW,mBAAmB;IACnC,gFAAgF;IAChF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAqDD,qBAAa,cAAc;IAIzB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAHvB,OAAO,CAAC,QAAQ,CAA0B;IAE1C,YACkB,KAAK,EAAE,UAAU,EAClC,QAAQ,GAAE,mBAAwB,EAC/B;IAEJ,IAAI,EAAE,IAAI,OAAO,CAEhB;IAED,IAAI,MAAM,IAAI,gBAAgB,EAAE,CAE/B;IAED,OAAO,CAAC,WAAW;IAInB,qFAAqF;IACrF,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,iBAAiB;IAezB,sFAAsF;IACtF,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,IAAI;IAIZ,UAAU,CAAC,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,CAe7C;IAED,sFAAsF;IACtF,iBAAiB,CAAC,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,CAgBpD;IAED,iBAAiB,CAAC,KAAK,EAAE,cAAc,CAAC,aAAa,CAAC,GAAG,IAAI,CAe5D;IAED,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAiBvC;IAED,yEAAyE;IACzE,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,GAAG,IAAI,CAiB3D;IAED;;;OAGG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAKnC;IAED,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAKtC;IAED,6EAA6E;IAC7E,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAYrC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CASxC;IAED,qBAAqB,IAAI,IAAI,CAe5B;IAED,uEAAuE;IACvE,6BAA6B,IAAI,IAAI,CASpC;IAED,2EAA2E;IAC3E,4BAA4B,CAAC,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,CAY/D;IAED,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAW1C;IAED,OAAO,CAAC,eAAe;IASvB,kFAAkF;IAClF,OAAO,CAAC,cAAc;IAatB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAU7C;IAED,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAW9B;IAED,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAUjC;CACD;AA0JD,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,cAAc,CAE5F;AAED,wBAAgB,YAAY,CAC3B,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,cAAc,EACtB,OAAO,CAAC,EAAE,mBAAmB,GAC3B,gBAAgB,EAAE,CA8CpB"}
|