@tangle-network/agent-eval 0.107.0 → 0.108.1
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 +31 -0
- package/README.md +2 -2
- package/dist/adapters/http.d.ts +1 -1
- package/dist/adapters/langchain.d.ts +1 -1
- package/dist/adapters/otel.d.ts +1 -1
- package/dist/benchmarks/index.d.ts +3 -1
- package/dist/benchmarks/index.js +49 -3
- package/dist/campaign/index.d.ts +10 -7
- package/dist/campaign/index.js +72 -3407
- package/dist/campaign/index.js.map +1 -1
- package/dist/chunk-6SKVFBTR.js +4306 -0
- package/dist/chunk-6SKVFBTR.js.map +1 -0
- package/dist/{chunk-G4DLZAV5.js → chunk-OVPVM4JC.js} +1044 -643
- package/dist/chunk-OVPVM4JC.js.map +1 -0
- package/dist/chunk-T6W5ADLG.js +766 -0
- package/dist/chunk-T6W5ADLG.js.map +1 -0
- package/dist/contract/index.d.ts +16 -6
- package/dist/contract/index.js +10 -11
- package/dist/contract/index.js.map +1 -1
- package/dist/{gepa-BmqTrdtg.d.ts → gepa-B3x5Ulcv.d.ts} +3 -40
- package/dist/hosted/index.d.ts +1 -1
- package/dist/index-pPtfoIJO.d.ts +423 -0
- package/dist/index.d.ts +6 -5
- package/dist/index.js +8 -7
- package/dist/index.js.map +1 -1
- package/dist/multishot/index.d.ts +1 -1
- package/dist/openapi.json +1 -1
- package/dist/{pre-registration-x3f0VpxT.d.ts → pre-registration-BUhVPzE7.d.ts} +1 -1
- package/dist/{provenance-CIjRcI6m.d.ts → provenance-DdDhf6cg.d.ts} +3 -2
- package/dist/rl.d.ts +1 -1
- package/dist/rl.js +6 -6
- package/dist/storage-Dw_f7WMt.d.ts +39 -0
- package/dist/{types-CNZ0tHET.d.ts → types-BdIv5dvA.d.ts} +1 -1
- package/docs/improvement-glossary.md +5 -1
- package/package.json +1 -1
- package/dist/chunk-6PF6LXRY.js +0 -861
- package/dist/chunk-6PF6LXRY.js.map +0 -1
- package/dist/chunk-6QDKWHLS.js +0 -223
- package/dist/chunk-6QDKWHLS.js.map +0 -1
- package/dist/chunk-G4DLZAV5.js.map +0 -1
- package/dist/chunk-V75NN2ZR.js +0 -421
- package/dist/chunk-V75NN2ZR.js.map +0 -1
- package/dist/index-C2CC_dry.d.ts +0 -159
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { J as JudgeScore } from '../types-
|
|
1
|
+
import { J as JudgeScore } from '../types-BdIv5dvA.js';
|
|
2
2
|
import { AgentProfile } from '@tangle-network/agent-interface';
|
|
3
3
|
import { M as MatrixResult } from '../types-BUxNaJ8c.js';
|
|
4
4
|
import '../run-record-I-Z3JNvO.js';
|
package/dist/openapi.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"openapi": "3.1.0",
|
|
3
3
|
"info": {
|
|
4
4
|
"title": "@tangle-network/agent-eval — wire protocol",
|
|
5
|
-
"version": "0.
|
|
5
|
+
"version": "0.108.1",
|
|
6
6
|
"description": "HTTP and stdio RPC interface to agent-eval. The TypeScript runtime is the source of truth; this spec is the contract that cross-language clients (Python, Rust, Go) generate from.\n\nWire-protocol version: 1.0.0. Bumps on breaking changes to request/response schemas.",
|
|
7
7
|
"contact": {
|
|
8
8
|
"name": "Tangle Network",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { A as AgentEvalError } from './errors-oeQrLqXC.js';
|
|
2
2
|
import { R as RunRecord } from './run-record-I-Z3JNvO.js';
|
|
3
3
|
import { C as ChatClient } from './types-D1ytG0Yg.js';
|
|
4
|
-
import {
|
|
4
|
+
import { g as JudgeDimension, S as Scenario, a as JudgeConfig } from './types-BdIv5dvA.js';
|
|
5
5
|
import { TCloud } from '@tangle-network/tcloud';
|
|
6
6
|
import { R as RawProviderSink } from './raw-provider-sink-C46HDghv.js';
|
|
7
7
|
import { D as DefaultVerdict } from './verdict-C9MlYujm.js';
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { S as Scenario,
|
|
1
|
+
import { S as Scenario, f as Gate, G as GateResult, n as GateContext, C as CampaignResult, p as Mutator, e as SurfaceProposer, M as MutableSurface, h as GateDecision } from './types-BdIv5dvA.js';
|
|
2
2
|
import { R as RedTeamCase } from './red-team-KmmiqBlY.js';
|
|
3
3
|
import { R as RunRecord } from './run-record-I-Z3JNvO.js';
|
|
4
4
|
import { D as Direction } from './pareto-E-pembql.js';
|
|
5
5
|
import { a as PairedBootstrapResult } from './statistics-D88peojY.js';
|
|
6
|
-
import { b as RunCampaignOptions
|
|
6
|
+
import { b as RunCampaignOptions } from './gepa-B3x5Ulcv.js';
|
|
7
7
|
import { HostedClient, TraceSpanEvent } from './hosted/index.js';
|
|
8
|
+
import { C as CampaignStorage } from './storage-Dw_f7WMt.js';
|
|
8
9
|
|
|
9
10
|
/**
|
|
10
11
|
* Compose multiple `Gate` implementations — every gate must pass for the
|
package/dist/rl.d.ts
CHANGED
|
@@ -10,7 +10,7 @@ import { R as Researcher, F as FailureMode, S as SteeringChange, E as Experiment
|
|
|
10
10
|
export { r as runEvalCampaign } from './researcher-Wc7dx6GM.js';
|
|
11
11
|
import { a as VerificationReport } from './multi-layer-verifier-CI4jdX-q.js';
|
|
12
12
|
import { I as InterimReleaseConfidence } from './sequential-5iSVfzl2.js';
|
|
13
|
-
import { C as CampaignResult } from './types-
|
|
13
|
+
import { C as CampaignResult } from './types-BdIv5dvA.js';
|
|
14
14
|
import '@tangle-network/agent-interface';
|
|
15
15
|
import './errors-oeQrLqXC.js';
|
|
16
16
|
import './schema-m0gsnbt3.js';
|
package/dist/rl.js
CHANGED
|
@@ -4,12 +4,6 @@ import {
|
|
|
4
4
|
offPolicyEstimateAll,
|
|
5
5
|
selfNormalizedImportanceWeighting
|
|
6
6
|
} from "./chunk-DTJ6QUQB.js";
|
|
7
|
-
import {
|
|
8
|
-
detectRewardHacking,
|
|
9
|
-
extractVerifiableReward,
|
|
10
|
-
extractVerifiableRewardsFromRecords,
|
|
11
|
-
filterDeterministicallyRewarded
|
|
12
|
-
} from "./chunk-N22ZO7FV.js";
|
|
13
7
|
import {
|
|
14
8
|
FileSystemOutcomeStore,
|
|
15
9
|
InMemoryOutcomeStore
|
|
@@ -17,6 +11,12 @@ import {
|
|
|
17
11
|
import {
|
|
18
12
|
runEvalCampaign
|
|
19
13
|
} from "./chunk-LIEJUH2I.js";
|
|
14
|
+
import {
|
|
15
|
+
detectRewardHacking,
|
|
16
|
+
extractVerifiableReward,
|
|
17
|
+
extractVerifiableRewardsFromRecords,
|
|
18
|
+
filterDeterministicallyRewarded
|
|
19
|
+
} from "./chunk-N22ZO7FV.js";
|
|
20
20
|
import "./chunk-FUCQVFMU.js";
|
|
21
21
|
import {
|
|
22
22
|
rubricPredictiveValidity
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `CampaignStorage` — the filesystem seam `runCampaign` writes through
|
|
3
|
+
* (run/cell dirs, the resumability cache, per-cell artifacts, trace spans).
|
|
4
|
+
*
|
|
5
|
+
* The default (`fsCampaignStorage`) is the Node filesystem — identical
|
|
6
|
+
* behavior to the inline `node:fs` calls it replaces, so existing CLI
|
|
7
|
+
* consumers are unaffected. `inMemoryCampaignStorage` keeps everything in a
|
|
8
|
+
* `Map`, so the substrate runs in environments WITHOUT a filesystem
|
|
9
|
+
* (Cloudflare Workers, Deno Deploy, other edge runtimes) — the campaign
|
|
10
|
+
* still produces its `CampaignResult` (cells + aggregates) in memory;
|
|
11
|
+
* artifacts/traces simply aren't persisted to disk.
|
|
12
|
+
*
|
|
13
|
+
* Paths are opaque keys to the in-memory adapter — it does not parse them,
|
|
14
|
+
* so the same `join(...)`-built paths work unchanged across both adapters.
|
|
15
|
+
*/
|
|
16
|
+
interface CampaignStorage {
|
|
17
|
+
/** Ensure a directory exists (recursive). No-op for in-memory. */
|
|
18
|
+
ensureDir(dir: string): void;
|
|
19
|
+
/** Does this path exist (as a written file or an ensured dir)? */
|
|
20
|
+
exists(path: string): boolean;
|
|
21
|
+
/** Read a UTF-8 file; `undefined` when missing or unreadable. */
|
|
22
|
+
read(path: string): string | undefined;
|
|
23
|
+
/** Write a file (string or bytes). Parent dir is assumed ensured. */
|
|
24
|
+
write(path: string, content: string | Uint8Array): void;
|
|
25
|
+
}
|
|
26
|
+
/** Node-filesystem storage — the default. Lazily requires `node:fs` so the
|
|
27
|
+
* module imports cleanly in non-Node runtimes (where the caller passes
|
|
28
|
+
* `inMemoryCampaignStorage` instead and never constructs this).
|
|
29
|
+
*
|
|
30
|
+
* `createRequire(import.meta.url)` is the ESM-native lazy require — a bare
|
|
31
|
+
* `require` is a ReferenceError under `"type": "module"`, which is exactly
|
|
32
|
+
* the shape this package publishes. */
|
|
33
|
+
declare function fsCampaignStorage(): CampaignStorage;
|
|
34
|
+
/** In-memory storage for filesystem-less runtimes. Artifacts + trace spans
|
|
35
|
+
* live in a `Map` for the duration of the run; the `CampaignResult` is
|
|
36
|
+
* fully populated, but nothing is persisted to disk. */
|
|
37
|
+
declare function inMemoryCampaignStorage(): CampaignStorage;
|
|
38
|
+
|
|
39
|
+
export { type CampaignStorage as C, fsCampaignStorage as f, inMemoryCampaignStorage as i };
|
|
@@ -557,4 +557,4 @@ interface CampaignResult<TArtifact = unknown, TScenario extends Scenario = Scena
|
|
|
557
557
|
scenarios: Array<Pick<TScenario, 'id' | 'kind'>>;
|
|
558
558
|
}
|
|
559
559
|
|
|
560
|
-
export { type JudgeAggregate as A, type ScenarioAggregate as B, type CampaignResult as C, type DispatchFn as D, isProposedCandidate as E, labelTrustRank as F, type GateResult as G, type JudgeScore as J, type LabeledScenarioStore as L, type MutableSurface as M, type OptimizationProposer as O, type ParetoParent as P, type RedactionStatus as R, type Scenario as S, type TraceSpan as T, type JudgeConfig as a, type DispatchContext as b, type
|
|
560
|
+
export { type JudgeAggregate as A, type ScenarioAggregate as B, type CampaignResult as C, type DispatchFn as D, isProposedCandidate as E, labelTrustRank as F, type GateResult as G, type JudgeScore as J, type LabeledScenarioStore as L, type MutableSurface as M, type OptimizationProposer as O, type ParetoParent as P, type RedactionStatus as R, type Scenario as S, type TraceSpan as T, type JudgeConfig as a, type DispatchContext as b, type CampaignTraceWriter as c, type GenerationRecord as d, type SurfaceProposer as e, type Gate as f, type JudgeDimension as g, type GateDecision as h, type CampaignAggregates as i, type CampaignArtifactWriter as j, type CampaignCellResult as k, type CampaignCostMeter as l, type CodeSurface as m, type GateContext as n, type GenerationCandidate as o, type Mutator as p, type OptimizerConfig as q, type SessionScript as r, type LabeledScenarioWrite as s, type LabeledScenarioSampleArgs as t, type LabeledScenarioRecord as u, type LabelTrust as v, type ProposedCandidate as w, type ProposeContext as x, type LabeledScenarioSource as y, type CampaignTokenUsage as z };
|
|
@@ -196,4 +196,8 @@ Every entrant is re-scored on the **same** holdout with the **same** judges, so
|
|
|
196
196
|
- Do not put eval logic inside a proposer — scoring lives in `dispatch` + `judges`, proposing lives in the proposer.
|
|
197
197
|
- Do not let a proposer read held-out judge scores — `ProposeContext` makes that a compile error on purpose; a proposer that games the acceptance axis is an oracle, not an optimizer.
|
|
198
198
|
- Do not read `lift` without `result.power`/MDE — a "+4" on a valset too small to detect +4 is noise wearing a number.
|
|
199
|
-
- Do not look for a `compositeProposer` — `fapoProposer` is the composite; `compareProposers` is the race; `runImprovementLoop`/`improve` is the plug.
|
|
199
|
+
- Do not look for a `compositeProposer` — `fapoProposer` is the composite; `compareProposers` is the race; `runImprovementLoop`/`improve` is the plug.
|
|
200
|
+
|
|
201
|
+
### neutralizationGate — the placebo / content-causality control
|
|
202
|
+
|
|
203
|
+
Standard gates prove a candidate *beat baseline*. `neutralizationGate` proves the candidate's **content** caused the lift, not the extra prompt bytes: it blanks the candidate's added content to byte-length-matched filler, holds everything else fixed, and requires the lift to vanish. A fully-neutralized candidate that still scores is decorative and is rejected. Exports: `neutralizationGate` (`src/campaign/gates/neutralization-gate.ts`), `neutralizeText` (`src/campaign/neutralize.ts`). Since 0.107.0. Pair it with `heldOutGate` in any loop that promotes authored artifacts (prompts, tool docs, knowledge) so a lift that is really just added prompt size cannot be shipped.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tangle-network/agent-eval",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.108.1",
|
|
4
4
|
"description": "Evaluate and improve AI agents from runs, traces, judges, and feedback. Compare candidates, cluster failures, measure lift, and gate releases.",
|
|
5
5
|
"homepage": "https://github.com/tangle-network/agent-eval#readme",
|
|
6
6
|
"repository": {
|