@tangle-network/agent-bench 0.4.0 → 0.4.3
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/CHANGELOG.md +15 -0
- package/dist/adapters.d.ts +4 -11
- package/dist/adapters.js +78 -41
- package/dist/adapters.js.map +1 -1
- package/dist/benchmarks/_harness.d.ts +51 -66
- package/dist/benchmarks/_harness.js +329 -31
- package/dist/benchmarks/_harness.js.map +1 -1
- package/dist/benchmarks/aec-bench.d.ts +4 -25
- package/dist/benchmarks/aec-bench.js +242 -7
- package/dist/benchmarks/aec-bench.js.map +1 -1
- package/dist/benchmarks/agentbench.d.ts +5 -13
- package/dist/benchmarks/agentbench.js +114 -9
- package/dist/benchmarks/agentbench.js.map +1 -1
- package/dist/benchmarks/appworld.d.ts +9 -29
- package/dist/benchmarks/appworld.js +317 -12
- package/dist/benchmarks/appworld.js.map +1 -1
- package/dist/benchmarks/bfcl.d.ts +5 -15
- package/dist/benchmarks/bfcl.js +264 -9
- package/dist/benchmarks/bfcl.js.map +1 -1
- package/dist/benchmarks/cad-design.d.ts +16 -41
- package/dist/benchmarks/cad-design.js +512 -6
- package/dist/benchmarks/cad-design.js.map +1 -1
- package/dist/benchmarks/cadbench.d.ts +4 -17
- package/dist/benchmarks/cadbench.js +2 -8
- package/dist/benchmarks/cadgenbench.d.ts +4 -20
- package/dist/benchmarks/cadgenbench.js +2 -8
- package/dist/benchmarks/commit0.d.ts +5 -27
- package/dist/benchmarks/commit0.js +187 -9
- package/dist/benchmarks/commit0.js.map +1 -1
- package/dist/benchmarks/crag.d.ts +4 -12
- package/dist/benchmarks/crag.js +110 -8
- package/dist/benchmarks/crag.js.map +1 -1
- package/dist/benchmarks/dabstep.d.ts +5 -15
- package/dist/benchmarks/dabstep.js +177 -9
- package/dist/benchmarks/dabstep.js.map +1 -1
- package/dist/benchmarks/enterpriseops-gym.d.ts +5 -34
- package/dist/benchmarks/enterpriseops-gym.js +236 -9
- package/dist/benchmarks/enterpriseops-gym.js.map +1 -1
- package/dist/benchmarks/finresearchbench.d.ts +4 -13
- package/dist/benchmarks/finresearchbench.js +218 -7
- package/dist/benchmarks/finresearchbench.js.map +1 -1
- package/dist/benchmarks/finsearchcomp.d.ts +8 -39
- package/dist/benchmarks/finsearchcomp.js +267 -6
- package/dist/benchmarks/finsearchcomp.js.map +1 -1
- package/dist/benchmarks/frames.d.ts +15 -37
- package/dist/benchmarks/frames.js +408 -11
- package/dist/benchmarks/frames.js.map +1 -1
- package/dist/benchmarks/hotpotqa.d.ts +4 -24
- package/dist/benchmarks/hotpotqa.js +250 -14
- package/dist/benchmarks/hotpotqa.js.map +1 -1
- package/dist/benchmarks/humaneval.d.ts +19 -37
- package/dist/benchmarks/humaneval.js +279 -16
- package/dist/benchmarks/humaneval.js.map +1 -1
- package/dist/benchmarks/mind2web.d.ts +7 -34
- package/dist/benchmarks/mind2web.js +257 -8
- package/dist/benchmarks/mind2web.js.map +1 -1
- package/dist/benchmarks/nomiracl.d.ts +4 -13
- package/dist/benchmarks/nomiracl.js +146 -8
- package/dist/benchmarks/nomiracl.js.map +1 -1
- package/dist/benchmarks/open-rag-bench.d.ts +4 -12
- package/dist/benchmarks/open-rag-bench.js +110 -8
- package/dist/benchmarks/open-rag-bench.js.map +1 -1
- package/dist/benchmarks/programbench.d.ts +5 -29
- package/dist/benchmarks/programbench.js +161 -9
- package/dist/benchmarks/programbench.js.map +1 -1
- package/dist/benchmarks/rag-shared.d.ts +21 -20
- package/dist/benchmarks/rag-shared.js +245 -38
- package/dist/benchmarks/rag-shared.js.map +1 -1
- package/dist/benchmarks/ragbench.d.ts +4 -14
- package/dist/benchmarks/ragbench.js +127 -8
- package/dist/benchmarks/ragbench.js.map +1 -1
- package/dist/benchmarks/simpleqa.d.ts +17 -44
- package/dist/benchmarks/simpleqa.js +293 -10
- package/dist/benchmarks/simpleqa.js.map +1 -1
- package/dist/benchmarks/swe-bench.d.ts +23 -36
- package/dist/benchmarks/swe-bench.js +234 -13
- package/dist/benchmarks/swe-bench.js.map +1 -1
- package/dist/benchmarks/t2-ragbench.d.ts +4 -12
- package/dist/benchmarks/t2-ragbench.js +118 -8
- package/dist/benchmarks/t2-ragbench.js.map +1 -1
- package/dist/benchmarks/tau-bench-shared.d.ts +14 -22
- package/dist/benchmarks/tau-bench-shared.js +169 -9
- package/dist/benchmarks/tau-bench-shared.js.map +1 -1
- package/dist/benchmarks/tau2-bench.d.ts +5 -5
- package/dist/benchmarks/tau2-bench.js +28 -10
- package/dist/benchmarks/tau2-bench.js.map +1 -1
- package/dist/benchmarks/tau3-banking.d.ts +4 -13
- package/dist/benchmarks/tau3-banking.js +28 -8
- package/dist/benchmarks/tau3-banking.js.map +1 -1
- package/dist/benchmarks/terminal-bench.d.ts +4 -22
- package/dist/benchmarks/terminal-bench.js +140 -7
- package/dist/benchmarks/terminal-bench.js.map +1 -1
- package/dist/benchmarks/toollm.d.ts +5 -13
- package/dist/benchmarks/toollm.js +184 -9
- package/dist/benchmarks/toollm.js.map +1 -1
- package/dist/benchmarks/trata-hedge.d.ts +4 -30
- package/dist/benchmarks/trata-hedge.js +336 -6
- package/dist/benchmarks/trata-hedge.js.map +1 -1
- package/dist/benchmarks/types.d.ts +85 -94
- package/dist/benchmarks/types.js +1 -1
- package/dist/benchmarks/webarena-verified.d.ts +5 -13
- package/dist/benchmarks/webarena-verified.js +152 -9
- package/dist/benchmarks/webarena-verified.js.map +1 -1
- package/dist/cadbench-DpQWZHp4.js +285 -0
- package/dist/cadbench-DpQWZHp4.js.map +1 -0
- package/dist/cadgenbench-DRhczfsG.js +151 -0
- package/dist/cadgenbench-DRhczfsG.js.map +1 -0
- package/dist/index.d.ts +245 -293
- package/dist/index.js +1669 -1791
- package/dist/index.js.map +1 -1
- package/package.json +17 -14
- package/pier_agents/candidate_contract.py +238 -24
- package/pier_agents/tangle_candidate.py +75 -5
- package/scripts/verify-packed-consumer.mjs +84 -17
- package/scripts/verify-pier-agent.mts +6 -4
- package/src/benchmarks/_harness.test.mts +16 -1
- package/src/benchmarks/_harness.ts +9 -2
- package/src/benchmarks/terminal-bench.ts +2 -1
- package/src/corpus.test.mts +13 -0
- package/src/corpus.ts +4 -0
- package/src/profile-coordinates.ts +2 -2
- package/src/rollout-ledger/backfill-swe-arena.mts +5 -1
- package/src/rollout-ledger/settle-capture.mts +7 -1
- package/src/search-bench/profiles.ts +1 -1
- package/src/skill-sandbox-smoke.mts +2 -1
- package/src/swe-arena/gepa-seat.mts +1 -1
- package/src/swe-arena/ledger-orphans.test.mts +36 -34
- package/dist/benchmarks/cadbench.js.map +0 -1
- package/dist/benchmarks/cadgenbench.js.map +0 -1
- package/dist/benchmarks/types.js.map +0 -1
- package/dist/chunk-3U5TXJZS.js +0 -251
- package/dist/chunk-3U5TXJZS.js.map +0 -1
- package/dist/chunk-53UPUNBZ.js +0 -325
- package/dist/chunk-53UPUNBZ.js.map +0 -1
- package/dist/chunk-5H5XV76F.js +0 -240
- package/dist/chunk-5H5XV76F.js.map +0 -1
- package/dist/chunk-7GRVHU22.js +0 -208
- package/dist/chunk-7GRVHU22.js.map +0 -1
- package/dist/chunk-C7T7WEK2.js +0 -103
- package/dist/chunk-C7T7WEK2.js.map +0 -1
- package/dist/chunk-HWST3SED.js +0 -162
- package/dist/chunk-HWST3SED.js.map +0 -1
- package/dist/chunk-IA2FBTWC.js +0 -318
- package/dist/chunk-IA2FBTWC.js.map +0 -1
- package/dist/chunk-IFVINJ4B.js +0 -142
- package/dist/chunk-IFVINJ4B.js.map +0 -1
- package/dist/chunk-INNOYXCP.js +0 -387
- package/dist/chunk-INNOYXCP.js.map +0 -1
- package/dist/chunk-IZ5M6OAC.js +0 -169
- package/dist/chunk-IZ5M6OAC.js.map +0 -1
- package/dist/chunk-JTHWEDEW.js +0 -32
- package/dist/chunk-JTHWEDEW.js.map +0 -1
- package/dist/chunk-K3BQGZCT.js +0 -221
- package/dist/chunk-K3BQGZCT.js.map +0 -1
- package/dist/chunk-KP5KD6EN.js +0 -276
- package/dist/chunk-KP5KD6EN.js.map +0 -1
- package/dist/chunk-MQMRLGOG.js +0 -136
- package/dist/chunk-MQMRLGOG.js.map +0 -1
- package/dist/chunk-NQG5XDSB.js +0 -147
- package/dist/chunk-NQG5XDSB.js.map +0 -1
- package/dist/chunk-PA2ZKHJC.js +0 -230
- package/dist/chunk-PA2ZKHJC.js.map +0 -1
- package/dist/chunk-PB64GYIG.js +0 -118
- package/dist/chunk-PB64GYIG.js.map +0 -1
- package/dist/chunk-PUIRNYI7.js +0 -189
- package/dist/chunk-PUIRNYI7.js.map +0 -1
- package/dist/chunk-RCYQEFNX.js +0 -30
- package/dist/chunk-RCYQEFNX.js.map +0 -1
- package/dist/chunk-RH5F53JT.js +0 -182
- package/dist/chunk-RH5F53JT.js.map +0 -1
- package/dist/chunk-SEVJPLZC.js +0 -260
- package/dist/chunk-SEVJPLZC.js.map +0 -1
- package/dist/chunk-SFLA7OH3.js +0 -27
- package/dist/chunk-SFLA7OH3.js.map +0 -1
- package/dist/chunk-SHM6MRRF.js +0 -130
- package/dist/chunk-SHM6MRRF.js.map +0 -1
- package/dist/chunk-SHYIRB7I.js +0 -120
- package/dist/chunk-SHYIRB7I.js.map +0 -1
- package/dist/chunk-SVR2LKYI.js +0 -116
- package/dist/chunk-SVR2LKYI.js.map +0 -1
- package/dist/chunk-TBKU5XQI.js +0 -228
- package/dist/chunk-TBKU5XQI.js.map +0 -1
- package/dist/chunk-UPAMRDX4.js +0 -233
- package/dist/chunk-UPAMRDX4.js.map +0 -1
- package/dist/chunk-V7AEBY6U.js +0 -144
- package/dist/chunk-V7AEBY6U.js.map +0 -1
- package/dist/chunk-VQRS7VUC.js +0 -342
- package/dist/chunk-VQRS7VUC.js.map +0 -1
- package/dist/chunk-WSKWVEQB.js +0 -317
- package/dist/chunk-WSKWVEQB.js.map +0 -1
- package/dist/chunk-X3BTXCJ4.js +0 -262
- package/dist/chunk-X3BTXCJ4.js.map +0 -1
- package/dist/chunk-XKEFIFIC.js +0 -197
- package/dist/chunk-XKEFIFIC.js.map +0 -1
- package/dist/chunk-XYA4XSNU.js +0 -148
- package/dist/chunk-XYA4XSNU.js.map +0 -1
- package/dist/chunk-YSMEKBTD.js +0 -211
- package/dist/chunk-YSMEKBTD.js.map +0 -1
- package/dist/chunk-Z4TZ76N7.js +0 -170
- package/dist/chunk-Z4TZ76N7.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.4.3
|
|
4
|
+
|
|
5
|
+
- Consume Runtime 0.107.1 with Eval 0.133.0, Interface 0.36.0, and Knowledge 6.1.2.
|
|
6
|
+
|
|
7
|
+
## 0.4.2
|
|
8
|
+
|
|
9
|
+
- Consume `@tangle-network/agent-runtime` 0.106.x with Eval 0.131.0, Interface 0.35.0, and Knowledge 6.1.0.
|
|
10
|
+
- Build the package before checking its exports so verification works from a clean checkout.
|
|
11
|
+
|
|
12
|
+
## 0.4.1
|
|
13
|
+
|
|
14
|
+
- Read Runtime 0.105 candidate plans from their signed run cell, benchmark records, and profile activation.
|
|
15
|
+
- Allow only the fixed public executable path signed by the Runtime plan.
|
|
16
|
+
- Restore the real Pier failure/success proof against the current receipt layout.
|
|
17
|
+
|
|
3
18
|
## 0.4.0
|
|
4
19
|
|
|
5
20
|
- Add the resumable SWE improvement loop backed by the official GEPA engine.
|
package/dist/adapters.d.ts
CHANGED
|
@@ -1,15 +1,8 @@
|
|
|
1
|
-
import { BenchmarkAdapter } from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* The benchmark registry — the single source of truth for every wired benchmark.
|
|
6
|
-
* One key per benchmark; the value is its `BenchmarkAdapter` factory. `runBenchmarks`
|
|
7
|
-
* (the unifier) maps over this; `run.ts`, `rsi.ts`, and `corpus-replay.mts` all read it
|
|
8
|
-
* here rather than each keeping their own copy.
|
|
9
|
-
*/
|
|
10
|
-
|
|
1
|
+
import { BenchmarkAdapter } from "./benchmarks/types.js";
|
|
2
|
+
//#region src/adapters.d.ts
|
|
11
3
|
declare const ADAPTERS: Record<string, () => BenchmarkAdapter>;
|
|
12
4
|
/** Resolve a benchmark key to its adapter, failing loud with the known keys. */
|
|
13
5
|
declare function resolveAdapter(key: string): BenchmarkAdapter;
|
|
14
|
-
|
|
6
|
+
//#endregion
|
|
15
7
|
export { ADAPTERS, resolveAdapter };
|
|
8
|
+
//# sourceMappingURL=adapters.d.ts.map
|
package/dist/adapters.js
CHANGED
|
@@ -1,43 +1,80 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
} from "./
|
|
5
|
-
import "./
|
|
6
|
-
import "./
|
|
7
|
-
import "./
|
|
8
|
-
import "./
|
|
9
|
-
import "./
|
|
10
|
-
import "./
|
|
11
|
-
import "./
|
|
12
|
-
import "./
|
|
13
|
-
import "./
|
|
14
|
-
import "./
|
|
15
|
-
import "./
|
|
16
|
-
import "./
|
|
17
|
-
import "./
|
|
18
|
-
import "./
|
|
19
|
-
import "./
|
|
20
|
-
import "./
|
|
21
|
-
import "./
|
|
22
|
-
import "./
|
|
23
|
-
import "./
|
|
24
|
-
import "./
|
|
25
|
-
import "./
|
|
26
|
-
import "./
|
|
27
|
-
import "./
|
|
28
|
-
import "./
|
|
29
|
-
import "./
|
|
30
|
-
import "./
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
1
|
+
import { createAecBenchAdapter } from "./benchmarks/aec-bench.js";
|
|
2
|
+
import { createAgentBenchAdapter } from "./benchmarks/agentbench.js";
|
|
3
|
+
import { createAppWorldAdapter, createAppWorldReactAdapter } from "./benchmarks/appworld.js";
|
|
4
|
+
import { createBfclAdapter } from "./benchmarks/bfcl.js";
|
|
5
|
+
import { t as createCadBenchAdapter } from "./cadbench-DpQWZHp4.js";
|
|
6
|
+
import { createCadDesignAdapter } from "./benchmarks/cad-design.js";
|
|
7
|
+
import { t as createCadGenBenchAdapter } from "./cadgenbench-DRhczfsG.js";
|
|
8
|
+
import { createCommit0Adapter } from "./benchmarks/commit0.js";
|
|
9
|
+
import { createCragAdapter } from "./benchmarks/crag.js";
|
|
10
|
+
import { createDabstepAdapter } from "./benchmarks/dabstep.js";
|
|
11
|
+
import { createEnterpriseOpsGymAdapter } from "./benchmarks/enterpriseops-gym.js";
|
|
12
|
+
import { createFinResearchBenchAdapter } from "./benchmarks/finresearchbench.js";
|
|
13
|
+
import { createFinsearchcompAdapter } from "./benchmarks/finsearchcomp.js";
|
|
14
|
+
import { createFramesAdapter } from "./benchmarks/frames.js";
|
|
15
|
+
import { createHotpotqaAdapter } from "./benchmarks/hotpotqa.js";
|
|
16
|
+
import { createHumanEvalAdapter } from "./benchmarks/humaneval.js";
|
|
17
|
+
import { createMind2WebAdapter } from "./benchmarks/mind2web.js";
|
|
18
|
+
import { createNoMiraclAdapter } from "./benchmarks/nomiracl.js";
|
|
19
|
+
import { createOpenRagBenchAdapter } from "./benchmarks/open-rag-bench.js";
|
|
20
|
+
import { createProgrambenchAdapter } from "./benchmarks/programbench.js";
|
|
21
|
+
import { createRagBenchAdapter } from "./benchmarks/ragbench.js";
|
|
22
|
+
import { createSimpleQaAdapter } from "./benchmarks/simpleqa.js";
|
|
23
|
+
import { createSweBenchAdapter } from "./benchmarks/swe-bench.js";
|
|
24
|
+
import { createT2RagBenchAdapter } from "./benchmarks/t2-ragbench.js";
|
|
25
|
+
import { createTau2BenchAdapter } from "./benchmarks/tau2-bench.js";
|
|
26
|
+
import { createTau3BankingAdapter } from "./benchmarks/tau3-banking.js";
|
|
27
|
+
import { createTerminalBenchAdapter } from "./benchmarks/terminal-bench.js";
|
|
28
|
+
import { createToolLlmAdapter } from "./benchmarks/toollm.js";
|
|
29
|
+
import { createTrataHedgeAdapter } from "./benchmarks/trata-hedge.js";
|
|
30
|
+
import { createWebArenaVerifiedAdapter } from "./benchmarks/webarena-verified.js";
|
|
31
|
+
//#region src/adapters.ts
|
|
32
|
+
/**
|
|
33
|
+
* The benchmark registry — the single source of truth for every wired benchmark.
|
|
34
|
+
* One key per benchmark; the value is its `BenchmarkAdapter` factory. `runBenchmarks`
|
|
35
|
+
* (the unifier) maps over this; `run.ts`, `rsi.ts`, and `corpus-replay.mts` all read it
|
|
36
|
+
* here rather than each keeping their own copy.
|
|
37
|
+
*/
|
|
38
|
+
const ADAPTERS = {
|
|
39
|
+
"swe-bench": createSweBenchAdapter,
|
|
40
|
+
"terminal-bench": createTerminalBenchAdapter,
|
|
41
|
+
"aec-bench": createAecBenchAdapter,
|
|
42
|
+
commit0: createCommit0Adapter,
|
|
43
|
+
dabstep: createDabstepAdapter,
|
|
44
|
+
programbench: createProgrambenchAdapter,
|
|
45
|
+
"webarena-verified": createWebArenaVerifiedAdapter,
|
|
46
|
+
"tau2-bench": createTau2BenchAdapter,
|
|
47
|
+
"tau3-banking": createTau3BankingAdapter,
|
|
48
|
+
agentbench: createAgentBenchAdapter,
|
|
49
|
+
bfcl: createBfclAdapter,
|
|
50
|
+
toollm: createToolLlmAdapter,
|
|
51
|
+
appworld: createAppWorldAdapter,
|
|
52
|
+
"appworld-react": createAppWorldReactAdapter,
|
|
53
|
+
"enterpriseops-gym": createEnterpriseOpsGymAdapter,
|
|
54
|
+
"cad-design": createCadDesignAdapter,
|
|
55
|
+
cadbench: createCadBenchAdapter,
|
|
56
|
+
cadgenbench: createCadGenBenchAdapter,
|
|
57
|
+
frames: createFramesAdapter,
|
|
58
|
+
ragbench: createRagBenchAdapter,
|
|
59
|
+
crag: createCragAdapter,
|
|
60
|
+
nomiracl: createNoMiraclAdapter,
|
|
61
|
+
"open-rag-bench": createOpenRagBenchAdapter,
|
|
62
|
+
"t2-ragbench": createT2RagBenchAdapter,
|
|
63
|
+
finresearchbench: createFinResearchBenchAdapter,
|
|
64
|
+
finsearchcomp: createFinsearchcompAdapter,
|
|
65
|
+
simpleqa: createSimpleQaAdapter,
|
|
66
|
+
hotpotqa: createHotpotqaAdapter,
|
|
67
|
+
humaneval: createHumanEvalAdapter,
|
|
68
|
+
mind2web: createMind2WebAdapter,
|
|
69
|
+
"trata-hedge": createTrataHedgeAdapter
|
|
42
70
|
};
|
|
71
|
+
/** Resolve a benchmark key to its adapter, failing loud with the known keys. */
|
|
72
|
+
function resolveAdapter(key) {
|
|
73
|
+
const make = ADAPTERS[key];
|
|
74
|
+
if (!make) throw new Error(`unknown benchmark ${JSON.stringify(key)} (have: ${Object.keys(ADAPTERS).join(", ")})`);
|
|
75
|
+
return make();
|
|
76
|
+
}
|
|
77
|
+
//#endregion
|
|
78
|
+
export { ADAPTERS, resolveAdapter };
|
|
79
|
+
|
|
43
80
|
//# sourceMappingURL=adapters.js.map
|
package/dist/adapters.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"adapters.js","names":[],"sources":["../src/adapters.ts"],"sourcesContent":["/**\n * The benchmark registry — the single source of truth for every wired benchmark.\n * One key per benchmark; the value is its `BenchmarkAdapter` factory. `runBenchmarks`\n * (the unifier) maps over this; `run.ts`, `rsi.ts`, and `corpus-replay.mts` all read it\n * here rather than each keeping their own copy.\n */\n\nimport { createAecBenchAdapter } from './benchmarks/aec-bench'\nimport { createAgentBenchAdapter } from './benchmarks/agentbench'\nimport { createAppWorldAdapter, createAppWorldReactAdapter } from './benchmarks/appworld'\nimport { createBfclAdapter } from './benchmarks/bfcl'\nimport { createCadBenchAdapter } from './benchmarks/cadbench'\nimport { createCadDesignAdapter } from './benchmarks/cad-design'\nimport { createCadGenBenchAdapter } from './benchmarks/cadgenbench'\nimport { createCommit0Adapter } from './benchmarks/commit0'\nimport { createCragAdapter } from './benchmarks/crag'\nimport { createDabstepAdapter } from './benchmarks/dabstep'\nimport { createEnterpriseOpsGymAdapter } from './benchmarks/enterpriseops-gym'\nimport { createFinResearchBenchAdapter } from './benchmarks/finresearchbench'\nimport { createFinsearchcompAdapter } from './benchmarks/finsearchcomp'\nimport { createFramesAdapter } from './benchmarks/frames'\nimport { createHotpotqaAdapter } from './benchmarks/hotpotqa'\nimport { createHumanEvalAdapter } from './benchmarks/humaneval'\nimport { createMind2WebAdapter } from './benchmarks/mind2web'\nimport { createNoMiraclAdapter } from './benchmarks/nomiracl'\nimport { createOpenRagBenchAdapter } from './benchmarks/open-rag-bench'\nimport { createProgrambenchAdapter } from './benchmarks/programbench'\nimport { createRagBenchAdapter } from './benchmarks/ragbench'\nimport { createSimpleQaAdapter } from './benchmarks/simpleqa'\nimport { createSweBenchAdapter } from './benchmarks/swe-bench'\nimport { createT2RagBenchAdapter } from './benchmarks/t2-ragbench'\nimport { createTau2BenchAdapter } from './benchmarks/tau2-bench'\nimport { createTau3BankingAdapter } from './benchmarks/tau3-banking'\nimport { createTerminalBenchAdapter } from './benchmarks/terminal-bench'\nimport { createToolLlmAdapter } from './benchmarks/toollm'\nimport { createTrataHedgeAdapter } from './benchmarks/trata-hedge'\nimport { createWebArenaVerifiedAdapter } from './benchmarks/webarena-verified'\nimport type { BenchmarkAdapter } from './benchmarks/types'\n\nexport const ADAPTERS: Record<string, () => BenchmarkAdapter> = {\n 'swe-bench': createSweBenchAdapter,\n 'terminal-bench': createTerminalBenchAdapter,\n // Code-benches sharing ./benchmarks/_harness (stage → external evaluator → report).\n // loadTasks fetches the REAL dataset (committed fixtures fallback offline); judge\n // delegates to the benchmark's own harness and fails loud when it/Docker is absent.\n 'aec-bench': createAecBenchAdapter,\n commit0: createCommit0Adapter,\n dabstep: createDabstepAdapter,\n programbench: createProgrambenchAdapter,\n 'webarena-verified': createWebArenaVerifiedAdapter,\n 'tau2-bench': createTau2BenchAdapter,\n 'tau3-banking': createTau3BankingAdapter,\n agentbench: createAgentBenchAdapter,\n bfcl: createBfclAdapter,\n toollm: createToolLlmAdapter,\n appworld: createAppWorldAdapter,\n // AppWorld's native interactive protocol — the worker is the in-engine ReAct\n // episode (execution feedback every turn), the mode published baselines use.\n 'appworld-react': createAppWorldReactAdapter,\n 'enterpriseops-gym': createEnterpriseOpsGymAdapter,\n 'cad-design': createCadDesignAdapter,\n cadbench: createCadBenchAdapter,\n cadgenbench: createCadGenBenchAdapter,\n frames: createFramesAdapter,\n ragbench: createRagBenchAdapter,\n crag: createCragAdapter,\n nomiracl: createNoMiraclAdapter,\n 'open-rag-bench': createOpenRagBenchAdapter,\n 't2-ragbench': createT2RagBenchAdapter,\n finresearchbench: createFinResearchBenchAdapter,\n finsearchcomp: createFinsearchcompAdapter,\n simpleqa: createSimpleQaAdapter,\n hotpotqa: createHotpotqaAdapter,\n // Deployable-checker code domain: worker = router completion, judge = Docker test\n // run (--network=none). The steering A/B counterpart to humaneval-gate.mts (selection).\n humaneval: createHumanEvalAdapter,\n mind2web: createMind2WebAdapter,\n 'trata-hedge': createTrataHedgeAdapter,\n}\n\n/** Resolve a benchmark key to its adapter, failing loud with the known keys. */\nexport function resolveAdapter(key: string): BenchmarkAdapter {\n const make = ADAPTERS[key]\n if (!make) throw new Error(`unknown benchmark ${JSON.stringify(key)} (have: ${Object.keys(ADAPTERS).join(', ')})`)\n return make()\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuCA,MAAa,WAAmD;CAC9D,aAAa;CACb,kBAAkB;CAIlB,aAAa;CACb,SAAS;CACT,SAAS;CACT,cAAc;CACd,qBAAqB;CACrB,cAAc;CACd,gBAAgB;CAChB,YAAY;CACZ,MAAM;CACN,QAAQ;CACR,UAAU;CAGV,kBAAkB;CAClB,qBAAqB;CACrB,cAAc;CACd,UAAU;CACV,aAAa;CACb,QAAQ;CACR,UAAU;CACV,MAAM;CACN,UAAU;CACV,kBAAkB;CAClB,eAAe;CACf,kBAAkB;CAClB,eAAe;CACf,UAAU;CACV,UAAU;CAGV,WAAW;CACX,UAAU;CACV,eAAe;AACjB;;AAGA,SAAgB,eAAe,KAA+B;CAC5D,MAAM,OAAO,SAAS;CACtB,IAAI,CAAC,MAAM,MAAM,IAAI,MAAM,qBAAqB,KAAK,UAAU,GAAG,EAAE,UAAU,OAAO,KAAK,QAAQ,CAAC,CAAC,KAAK,IAAI,EAAE,EAAE;CACjH,OAAO,KAAK;AACd"}
|
|
@@ -1,29 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Shared code-bench harness. The "stage the artifact → run the benchmark's own
|
|
6
|
-
* evaluator in an external process (mkdtemp / execFile / .venv python / Docker)
|
|
7
|
-
* → read its JSON report → { resolved, score }" spine that swe-bench,
|
|
8
|
-
* terminal-bench, commit0, programbench and aec-bench all need. Factored out so
|
|
9
|
-
* the Docker/venv/report-reading logic lives in ONE place instead of being
|
|
10
|
-
* copy-pasted per adapter.
|
|
11
|
-
*
|
|
12
|
-
* It owns NO benchmark policy: each adapter passes the argv for its evaluator
|
|
13
|
-
* and a `parseReport` that maps that evaluator's report JSON → a BenchScore. The
|
|
14
|
-
* harness owns process spawning, temp-dir lifecycle, large-buffer/timeout config
|
|
15
|
-
* and fail-loud diagnostics.
|
|
16
|
-
*
|
|
17
|
-
* Fail-loud: an absent .venv / harness / Docker daemon THROWS from `preflight`
|
|
18
|
-
* (the adapter passes the import line + the exact fix). A staged run that exits
|
|
19
|
-
* nonzero throws with the captured stderr — never a fabricated score.
|
|
20
|
-
*/
|
|
21
|
-
|
|
1
|
+
import { BenchScore, JudgeArtifactReceipt } from "./types.js";
|
|
2
|
+
//#region src/benchmarks/_harness.d.ts
|
|
22
3
|
/** Package root for agent-bench, so `.venv`, scripts, and fixtures resolve. */
|
|
23
4
|
declare const benchRoot: string;
|
|
24
5
|
/** Resolve the shared interpreter without requiring an installed package to contain a venv. */
|
|
25
6
|
declare function resolveBenchPython(env?: Readonly<{
|
|
26
|
-
|
|
7
|
+
AGENT_BENCH_PYTHON?: string;
|
|
27
8
|
}>, root?: string): string;
|
|
28
9
|
/** The shared interpreter every Python-backed evaluator runs through. */
|
|
29
10
|
declare const venvPython: string;
|
|
@@ -31,6 +12,9 @@ declare const venvPython: string;
|
|
|
31
12
|
* deps conflict with the shared `.venv` (commit0 downgrades pydantic/sqlalchemy)
|
|
32
13
|
* get their own venv and pass its python explicitly — keeping the shared one clean. */
|
|
33
14
|
declare const venvPythonAt: (venvDir: string) => string;
|
|
15
|
+
/** Resolve an executable in an isolated venv. Relative venv paths are package-owned;
|
|
16
|
+
* absolute paths allow installed consumers to keep large environments elsewhere. */
|
|
17
|
+
declare function venvBinAt(venvDir: string, name: string): string;
|
|
34
18
|
/** Report/transcript reads are large; 256 MiB matches the SWE harness budget. */
|
|
35
19
|
declare const bigBuffer: number;
|
|
36
20
|
/** Path to a named executable inside the bench venv (e.g. `venvBin('tb')`). */
|
|
@@ -47,14 +31,14 @@ declare function runVenvPython(script: string, args?: string[], timeoutMs?: numb
|
|
|
47
31
|
* to the adapter's `fix` guidance — the contract every code-bench preflight wants.
|
|
48
32
|
*/
|
|
49
33
|
declare function preflightVenvImports(opts: {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
34
|
+
/** Module names to `import` (e.g. ['swebench']); '' entries are ignored. */
|
|
35
|
+
modules: string[];
|
|
36
|
+
/** Also `docker.from_env().ping()` — true for Docker-backed evaluators. */
|
|
37
|
+
requireDocker?: boolean;
|
|
38
|
+
/** Actionable remediation appended to the thrown message. */
|
|
39
|
+
fix: string;
|
|
40
|
+
/** Override the interpreter (e.g. an isolated `.venv-commit0`). Default: shared `.venv`. */
|
|
41
|
+
python?: string;
|
|
58
42
|
}): Promise<void>;
|
|
59
43
|
/**
|
|
60
44
|
* Run a bench-local python driver script (in the bench venv) while piping
|
|
@@ -67,47 +51,47 @@ declare function preflightVenvImports(opts: {
|
|
|
67
51
|
* artifact-piping judges (commit0, appworld) MUST go through this.
|
|
68
52
|
*/
|
|
69
53
|
declare function runVenvScriptStdin(scriptPath: string, args: string[], input: string, opts?: {
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
54
|
+
cwd?: string;
|
|
55
|
+
timeoutMs?: number;
|
|
56
|
+
python?: string;
|
|
73
57
|
}): Promise<string>;
|
|
74
58
|
interface StagedRunSpec {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
59
|
+
/** mkdtemp prefix, e.g. 'swebench-' / 'commit0-'. */
|
|
60
|
+
tmpPrefix: string;
|
|
61
|
+
/**
|
|
62
|
+
* Write the artifact + any harness inputs into the temp dir. Returns nothing;
|
|
63
|
+
* `argv`/`cwd` consume `dir` to point the evaluator at what was written.
|
|
64
|
+
*/
|
|
65
|
+
stage(dir: string): Promise<void>;
|
|
66
|
+
/** The external evaluator to spawn. `bin` defaults to the bench venv python. */
|
|
67
|
+
bin?: string;
|
|
68
|
+
/** argv for the evaluator, computed from the temp `dir`. */
|
|
69
|
+
argv(dir: string): string[];
|
|
70
|
+
/** Working directory for the evaluator. Defaults to the temp `dir`. */
|
|
71
|
+
cwd?(dir: string): string;
|
|
72
|
+
/** Hard timeout for the evaluator (ms); 0 = none. */
|
|
73
|
+
timeoutMs?: number;
|
|
74
|
+
/**
|
|
75
|
+
* Read the evaluator's report(s) out of `dir` and map to a BenchScore. Throws
|
|
76
|
+
* if the expected report is absent/malformed (fail loud — no default score).
|
|
77
|
+
*/
|
|
78
|
+
parseReport(dir: string): Promise<BenchScore>;
|
|
79
|
+
/**
|
|
80
|
+
* Copy the complete evaluator directory plus raw process stdout/stderr to this
|
|
81
|
+
* caller-owned directory before cleanup. The destination must not exist.
|
|
82
|
+
*/
|
|
83
|
+
capture?: StagedRunCaptureSpec;
|
|
84
|
+
/** Keep the temp dir on disk (debugging). Default false → always cleaned up. */
|
|
85
|
+
keepTmp?: boolean;
|
|
102
86
|
}
|
|
103
87
|
interface StagedRunCaptureSpec {
|
|
104
|
-
|
|
105
|
-
|
|
88
|
+
/** Destination for `evaluator/`, `process/`, and the hashed `receipt.json`. */
|
|
89
|
+
destination: string;
|
|
106
90
|
}
|
|
107
91
|
/** A staged run failed after any requested evidence was durably retained. */
|
|
108
92
|
declare class StagedJudgeError extends Error {
|
|
109
|
-
|
|
110
|
-
|
|
93
|
+
readonly judgeArtifacts?: JudgeArtifactReceipt;
|
|
94
|
+
constructor(message: string, judgeArtifacts?: JudgeArtifactReceipt, options?: ErrorOptions);
|
|
111
95
|
}
|
|
112
96
|
/**
|
|
113
97
|
* The shared judge body: mkdtemp → stage → spawn evaluator → parseReport →
|
|
@@ -121,5 +105,6 @@ declare function readJsonReport<T>(path: string): Promise<T>;
|
|
|
121
105
|
declare function stageFile(path: string, content: string): Promise<void>;
|
|
122
106
|
/** Sanitize an instance id into a filesystem/run-id-safe token. */
|
|
123
107
|
declare function safeRunId(prefix: string, id: string): string;
|
|
124
|
-
|
|
125
|
-
export { StagedJudgeError,
|
|
108
|
+
//#endregion
|
|
109
|
+
export { StagedJudgeError, StagedRunCaptureSpec, StagedRunSpec, benchRoot, bigBuffer, preflightVenvImports, readJsonReport, resolveBenchPython, runStagedJudge, runVenvPython, runVenvScriptStdin, safeRunId, stageFile, venvBin, venvBinAt, venvPython, venvPythonAt };
|
|
110
|
+
//# sourceMappingURL=_harness.d.ts.map
|