@tangle-network/agent-eval 0.120.2 → 0.120.4
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 +13 -0
- package/dist/analyst/index.d.ts +3111 -0
- package/dist/analyst/index.js +403 -0
- package/dist/analyst/index.js.map +1 -0
- package/dist/authenticity/index.d.ts +161 -0
- package/dist/authenticity/index.js +215 -0
- package/dist/authenticity/index.js.map +1 -0
- package/dist/belief-state/index.d.ts +1301 -0
- package/dist/belief-state/index.js +2152 -0
- package/dist/belief-state/index.js.map +1 -0
- package/dist/benchmarks/index.d.ts +974 -0
- package/dist/benchmarks/index.js +60 -0
- package/dist/benchmarks/index.js.map +1 -0
- package/dist/builder-eval/index.d.ts +695 -0
- package/dist/builder-eval/index.js +366 -0
- package/dist/builder-eval/index.js.map +1 -0
- package/dist/campaign/index.d.ts +7469 -0
- package/dist/campaign/index.js +272 -0
- package/dist/campaign/index.js.map +1 -0
- package/dist/chunk-3RF76KTD.js +84 -0
- package/dist/chunk-3RF76KTD.js.map +1 -0
- package/dist/chunk-3XH4Y2SS.js +750 -0
- package/dist/chunk-3XH4Y2SS.js.map +1 -0
- package/dist/chunk-3YYRZDON.js +45 -0
- package/dist/chunk-3YYRZDON.js.map +1 -0
- package/dist/chunk-5BYTIDZ7.js +550 -0
- package/dist/chunk-5BYTIDZ7.js.map +1 -0
- package/dist/chunk-5CVUPHJ4.js +2668 -0
- package/dist/chunk-5CVUPHJ4.js.map +1 -0
- package/dist/chunk-7QBFOJ3E.js +3920 -0
- package/dist/chunk-7QBFOJ3E.js.map +1 -0
- package/dist/chunk-ARU2PZFM.js +312 -0
- package/dist/chunk-ARU2PZFM.js.map +1 -0
- package/dist/chunk-BOD4O7OF.js +40 -0
- package/dist/chunk-BOD4O7OF.js.map +1 -0
- package/dist/chunk-CVJP5TMD.js +766 -0
- package/dist/chunk-CVJP5TMD.js.map +1 -0
- package/dist/chunk-DPZAEKA6.js +880 -0
- package/dist/chunk-DPZAEKA6.js.map +1 -0
- package/dist/chunk-DTJ6QUQB.js +131 -0
- package/dist/chunk-DTJ6QUQB.js.map +1 -0
- package/dist/chunk-GGE4NNQT.js +65 -0
- package/dist/chunk-GGE4NNQT.js.map +1 -0
- package/dist/chunk-H5UD2323.js +286 -0
- package/dist/chunk-H5UD2323.js.map +1 -0
- package/dist/chunk-HHWE3POT.js +94 -0
- package/dist/chunk-HHWE3POT.js.map +1 -0
- package/dist/chunk-HKUCJ437.js +787 -0
- package/dist/chunk-HKUCJ437.js.map +1 -0
- package/dist/chunk-JHCHEVET.js +274 -0
- package/dist/chunk-JHCHEVET.js.map +1 -0
- package/dist/chunk-K4DBDHLK.js +158 -0
- package/dist/chunk-K4DBDHLK.js.map +1 -0
- package/dist/chunk-K6N6XJJX.js +306 -0
- package/dist/chunk-K6N6XJJX.js.map +1 -0
- package/dist/chunk-MA6HLL3S.js +65 -0
- package/dist/chunk-MA6HLL3S.js.map +1 -0
- package/dist/chunk-MAZ26DC7.js +99 -0
- package/dist/chunk-MAZ26DC7.js.map +1 -0
- package/dist/chunk-MOXWMGPC.js +577 -0
- package/dist/chunk-MOXWMGPC.js.map +1 -0
- package/dist/chunk-NJC7U437.js +626 -0
- package/dist/chunk-NJC7U437.js.map +1 -0
- package/dist/chunk-NMN4WGSJ.js +1030 -0
- package/dist/chunk-NMN4WGSJ.js.map +1 -0
- package/dist/chunk-NPCTHQIO.js +91 -0
- package/dist/chunk-NPCTHQIO.js.map +1 -0
- package/dist/chunk-ONWEPEDO.js +57 -0
- package/dist/chunk-ONWEPEDO.js.map +1 -0
- package/dist/chunk-OYZAPX5G.js +1526 -0
- package/dist/chunk-OYZAPX5G.js.map +1 -0
- package/dist/chunk-PC4UYEBM.js +166 -0
- package/dist/chunk-PC4UYEBM.js.map +1 -0
- package/dist/chunk-PJQFMIOX.js +1182 -0
- package/dist/chunk-PJQFMIOX.js.map +1 -0
- package/dist/chunk-PXD6ZFNY.js +1107 -0
- package/dist/chunk-PXD6ZFNY.js.map +1 -0
- package/dist/chunk-PXE2VKMX.js +140 -0
- package/dist/chunk-PXE2VKMX.js.map +1 -0
- package/dist/chunk-PZ5AY32C.js +10 -0
- package/dist/chunk-PZ5AY32C.js.map +1 -0
- package/dist/chunk-QBRSJK47.js +622 -0
- package/dist/chunk-QBRSJK47.js.map +1 -0
- package/dist/chunk-S3UZOQ5Y.js +328 -0
- package/dist/chunk-S3UZOQ5Y.js.map +1 -0
- package/dist/chunk-SQQED7ZH.js +998 -0
- package/dist/chunk-SQQED7ZH.js.map +1 -0
- package/dist/chunk-SYV364BL.js +1266 -0
- package/dist/chunk-SYV364BL.js.map +1 -0
- package/dist/chunk-T4SQEITX.js +95 -0
- package/dist/chunk-T4SQEITX.js.map +1 -0
- package/dist/chunk-TT4KNT67.js +124 -0
- package/dist/chunk-TT4KNT67.js.map +1 -0
- package/dist/chunk-U5CHZ5M3.js +357 -0
- package/dist/chunk-U5CHZ5M3.js.map +1 -0
- package/dist/chunk-ULOKLHIQ.js +1937 -0
- package/dist/chunk-ULOKLHIQ.js.map +1 -0
- package/dist/chunk-VI2UW6B6.js +162 -0
- package/dist/chunk-VI2UW6B6.js.map +1 -0
- package/dist/chunk-VQMK5FMP.js +247 -0
- package/dist/chunk-VQMK5FMP.js.map +1 -0
- package/dist/chunk-VSMTAMNK.js +53 -0
- package/dist/chunk-VSMTAMNK.js.map +1 -0
- package/dist/chunk-VZSRQ272.js +149 -0
- package/dist/chunk-VZSRQ272.js.map +1 -0
- package/dist/chunk-WW2A73HW.js +159 -0
- package/dist/chunk-WW2A73HW.js.map +1 -0
- package/dist/chunk-X4UCIOTZ.js +136 -0
- package/dist/chunk-X4UCIOTZ.js.map +1 -0
- package/dist/chunk-XJYR7XFV.js +317 -0
- package/dist/chunk-XJYR7XFV.js.map +1 -0
- package/dist/chunk-ZET2UAYW.js +89 -0
- package/dist/chunk-ZET2UAYW.js.map +1 -0
- package/dist/chunk-ZMXDQ4K7.js +870 -0
- package/dist/chunk-ZMXDQ4K7.js.map +1 -0
- package/dist/chunk-ZTJPIIVI.js +7958 -0
- package/dist/chunk-ZTJPIIVI.js.map +1 -0
- package/dist/chunk-ZZUXHH3R.js +99 -0
- package/dist/chunk-ZZUXHH3R.js.map +1 -0
- package/dist/cli.d.ts +1 -0
- package/dist/cli.js +112 -0
- package/dist/cli.js.map +1 -0
- package/dist/contract/index.d.ts +4987 -0
- package/dist/contract/index.js +1654 -0
- package/dist/contract/index.js.map +1 -0
- package/dist/control.d.ts +1013 -0
- package/dist/control.js +34 -0
- package/dist/control.js.map +1 -0
- package/dist/fuzz.d.ts +759 -0
- package/dist/fuzz.js +714 -0
- package/dist/fuzz.js.map +1 -0
- package/dist/hosted/index.d.ts +730 -0
- package/dist/hosted/index.js +14 -0
- package/dist/hosted/index.js.map +1 -0
- package/dist/index.d.ts +16780 -0
- package/dist/index.js +12168 -0
- package/dist/index.js.map +1 -0
- package/dist/matrix/index.d.ts +155 -0
- package/dist/matrix/index.js +8 -0
- package/dist/matrix/index.js.map +1 -0
- package/dist/meta-eval/index.d.ts +1030 -0
- package/dist/meta-eval/index.js +417 -0
- package/dist/meta-eval/index.js.map +1 -0
- package/dist/multishot/index.d.ts +579 -0
- package/dist/multishot/index.js +589 -0
- package/dist/multishot/index.js.map +1 -0
- package/dist/openapi.json +992 -0
- package/dist/pipelines/index.d.ts +567 -0
- package/dist/pipelines/index.js +515 -0
- package/dist/pipelines/index.js.map +1 -0
- package/dist/reporting.d.ts +1277 -0
- package/dist/reporting.js +48 -0
- package/dist/reporting.js.map +1 -0
- package/dist/rl.d.ts +4092 -0
- package/dist/rl.js +1724 -0
- package/dist/rl.js.map +1 -0
- package/dist/run-campaign-75RTPVV5.js +14 -0
- package/dist/run-campaign-75RTPVV5.js.map +1 -0
- package/dist/storyboard/index.d.ts +279 -0
- package/dist/storyboard/index.js +767 -0
- package/dist/storyboard/index.js.map +1 -0
- package/dist/trace-attributes.d.ts +52 -0
- package/dist/trace-attributes.js +62 -0
- package/dist/trace-attributes.js.map +1 -0
- package/dist/traces.d.ts +2343 -0
- package/dist/traces.js +249 -0
- package/dist/traces.js.map +1 -0
- package/dist/wire/index.d.ts +1252 -0
- package/dist/wire/index.js +81 -0
- package/dist/wire/index.js.map +1 -0
- package/docs/eval-surface-map.md +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validator-output verdict — substrate primitive for "did this output pass,
|
|
3
|
+
* and how well?"
|
|
4
|
+
*
|
|
5
|
+
* Used by:
|
|
6
|
+
* - `@tangle-network/agent-eval/matrix` — verdict per cell in the cartesian.
|
|
7
|
+
* - `@tangle-network/agent-runtime` — Validator<Output, Verdict = DefaultVerdict>.
|
|
8
|
+
* Runtime keeps `Validator` because it's coupled to runtime-shaped
|
|
9
|
+
* `ValidationCtx` (iteration, signal, traceEmitter); the verdict TYPE
|
|
10
|
+
* itself is a substrate concept and lives here.
|
|
11
|
+
*
|
|
12
|
+
* Repo layering: agent-eval is the substrate (no upward deps). Both
|
|
13
|
+
* agent-runtime and agent-knowledge consume this type FROM agent-eval —
|
|
14
|
+
* never the other way around. See CLAUDE.md "Repo layering" for the rule.
|
|
15
|
+
*/
|
|
16
|
+
/**
|
|
17
|
+
* Minimal verdict shape — `valid` + `score` are required; `scores` +
|
|
18
|
+
* `notes` are optional surface. Validators that need richer shapes
|
|
19
|
+
* parameterise `Validator<Output, MyVerdict>` with their own type.
|
|
20
|
+
*
|
|
21
|
+
* Need structured extras? Extend DefaultVerdict with typed fields — never
|
|
22
|
+
* serialize extras into `notes`.
|
|
23
|
+
*/
|
|
24
|
+
interface DefaultVerdict {
|
|
25
|
+
/** Whether the output meets the validator's pass criteria. */
|
|
26
|
+
valid: boolean;
|
|
27
|
+
/** Aggregate score in [0, 1]. Drivers use this for winner selection. */
|
|
28
|
+
score: number;
|
|
29
|
+
/** Per-dimension scores. Free-form; weighted into `score` by the validator. */
|
|
30
|
+
scores?: Record<string, number>;
|
|
31
|
+
/** Human-readable rationale; surfaces in trace + final-result `winner.verdict`. */
|
|
32
|
+
notes?: string;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* N-axis cartesian matrix over substrate types — types module.
|
|
37
|
+
*
|
|
38
|
+
* The matrix is a runner + aggregator. It iterates the cartesian product of
|
|
39
|
+
* caller-provided axes (any value type — `AgentProfile` from agent-interface,
|
|
40
|
+
* `Driver` / `Validator` from agent-runtime, rubric records, thinking levels, anything)
|
|
41
|
+
* and aggregates per-axis pass/score/cost summaries. Substrate types are
|
|
42
|
+
* imported at the boundary by JSDoc only; the matrix never wraps them.
|
|
43
|
+
*/
|
|
44
|
+
|
|
45
|
+
/** One axis = one dimension to iterate. `V` is the value type — pass any
|
|
46
|
+
* substrate type (AgentProfile, Driver, Validator, rubric record). */
|
|
47
|
+
interface MatrixAxis<V> {
|
|
48
|
+
/** Axis name. Becomes the key in `MatrixResult.byAxis`. */
|
|
49
|
+
name: string;
|
|
50
|
+
/** Stable id per value. Used as the bucket key in aggregation. */
|
|
51
|
+
values: Array<{
|
|
52
|
+
id: string;
|
|
53
|
+
value: V;
|
|
54
|
+
}>;
|
|
55
|
+
/** Optional bucket label override. Receives the same `(value, id)` the
|
|
56
|
+
* runner stored on the cell; default label is `id`. */
|
|
57
|
+
label?: (value: V, id: string) => string;
|
|
58
|
+
}
|
|
59
|
+
/** A cell carries one picked value from each axis, keyed by axis name. */
|
|
60
|
+
interface MatrixCell {
|
|
61
|
+
axes: Record<string, {
|
|
62
|
+
id: string;
|
|
63
|
+
value: unknown;
|
|
64
|
+
}>;
|
|
65
|
+
/** 0-based replicate index within the same axis combination. */
|
|
66
|
+
rep: number;
|
|
67
|
+
/** Stable sort key — preserves cartesian order across concurrent execution. */
|
|
68
|
+
ordinal: number;
|
|
69
|
+
}
|
|
70
|
+
interface CellResult<Output> {
|
|
71
|
+
output: Output;
|
|
72
|
+
verdict: DefaultVerdict;
|
|
73
|
+
costUsd: number;
|
|
74
|
+
durationMs: number;
|
|
75
|
+
runId?: string;
|
|
76
|
+
/** Populated when `runCell` threw. The cell contributes 0 to passRate AND
|
|
77
|
+
* meanScore regardless of `verdict`. */
|
|
78
|
+
error?: {
|
|
79
|
+
message: string;
|
|
80
|
+
kind: string;
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
interface AxisSummary {
|
|
84
|
+
axisName: string;
|
|
85
|
+
axisValue: string;
|
|
86
|
+
cells: number;
|
|
87
|
+
passRate: number;
|
|
88
|
+
meanScore: number;
|
|
89
|
+
p50Score: number;
|
|
90
|
+
p90Score: number;
|
|
91
|
+
totalCostUsd: number;
|
|
92
|
+
meanDurationMs: number;
|
|
93
|
+
}
|
|
94
|
+
interface MatrixResult<Output> {
|
|
95
|
+
cells: Array<{
|
|
96
|
+
cell: MatrixCell;
|
|
97
|
+
runs: CellResult<Output>[];
|
|
98
|
+
}>;
|
|
99
|
+
/** `byAxis[axisName][axisValueId] = summary`. Populated only for axes
|
|
100
|
+
* named in `aggregateBy` (default = every axis in `axes`). */
|
|
101
|
+
byAxis: Record<string, Record<string, AxisSummary>>;
|
|
102
|
+
summary: {
|
|
103
|
+
totalCells: number;
|
|
104
|
+
runsExecuted: number;
|
|
105
|
+
/** Cells removed by `filter` plus cells unscheduled after the cost
|
|
106
|
+
* ceiling or abort signal tripped. */
|
|
107
|
+
cellsSkipped: number;
|
|
108
|
+
overallPassRate: number;
|
|
109
|
+
overallMeanScore: number;
|
|
110
|
+
totalCostUsd: number;
|
|
111
|
+
durationMs: number;
|
|
112
|
+
};
|
|
113
|
+
/** Stable id-like string generated at the end of the run. */
|
|
114
|
+
matrixId: string;
|
|
115
|
+
}
|
|
116
|
+
interface RunAgentMatrixOptions<Output> {
|
|
117
|
+
axes: MatrixAxis<unknown>[];
|
|
118
|
+
/** User-supplied cell executor. May throw; the matrix captures throws as
|
|
119
|
+
* `CellResult.error` and continues. */
|
|
120
|
+
runCell: (cell: MatrixCell) => Promise<CellResult<Output>>;
|
|
121
|
+
/** Replicates per cell. Default 1. */
|
|
122
|
+
reps?: number;
|
|
123
|
+
/** Prune cells from the cartesian BEFORE rep expansion. */
|
|
124
|
+
filter?: (cell: Omit<MatrixCell, 'rep' | 'ordinal'>) => boolean;
|
|
125
|
+
/** Axes to aggregate into `byAxis`. Default: every axis in `axes`. */
|
|
126
|
+
aggregateBy?: string[];
|
|
127
|
+
/** Max concurrent in-flight `runCell` invocations. Default 4. */
|
|
128
|
+
maxConcurrency?: number;
|
|
129
|
+
/** Cumulative-cost abort threshold (USD). When the running sum of
|
|
130
|
+
* `result.costUsd` crosses this value, no new cells are scheduled.
|
|
131
|
+
* In-flight cells finish. Default `Infinity`. */
|
|
132
|
+
costCeiling?: number;
|
|
133
|
+
/** Fires once per executed cell, after its promise settles. */
|
|
134
|
+
onCellComplete?: (cell: MatrixCell, result: CellResult<Output>) => void;
|
|
135
|
+
/** External cancellation. Aborts in-flight cells via a forwarded signal
|
|
136
|
+
* and suppresses scheduling of new ones. */
|
|
137
|
+
signal?: AbortSignal;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* N-axis cartesian runner.
|
|
142
|
+
*
|
|
143
|
+
* Expansion order: cartesian over `axes` in declared order, then `reps` as the
|
|
144
|
+
* inner-most dim → `ordinal = (cartIdx * reps) + rep`. The returned
|
|
145
|
+
* `cells[]` is sorted by `ordinal` so concurrent execution does not reorder
|
|
146
|
+
* the output.
|
|
147
|
+
*
|
|
148
|
+
* Scheduling is a sliding window of in-flight promises capped at
|
|
149
|
+
* `maxConcurrency`. The window stops admitting new cells when the cost
|
|
150
|
+
* ceiling trips or the abort signal fires; in-flight cells finish.
|
|
151
|
+
*/
|
|
152
|
+
|
|
153
|
+
declare function runAgentMatrix<Output>(opts: RunAgentMatrixOptions<Output>): Promise<MatrixResult<Output>>;
|
|
154
|
+
|
|
155
|
+
export { type AxisSummary, type CellResult, type DefaultVerdict, type MatrixAxis, type MatrixCell, type MatrixResult, type RunAgentMatrixOptions, runAgentMatrix };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|