@tangle-network/agent-eval 0.173.2 → 0.173.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/dist/cli.js CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import { i as runRolloutReleaseCli } from "./hf-dataset-D8_RNIis.js";
3
3
  import { t as createChatClient } from "./chat-client-CkmjYlfB.js";
4
- import { t as runAnalystBenchmarkCommand } from "./benchmark-command-CS6gVHVq.js";
4
+ import { t as runAnalystBenchmarkCommand } from "./benchmark-command-BY9oscke.js";
5
5
  import { a as runRpcBatch, o as runRpcOnce, p as handleVersion, r as startServerAsync, s as buildOpenApi } from "./server-D_cjseFN.js";
6
6
  import { writeFileSync } from "node:fs";
7
7
  //#region src/cli-config.ts
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.173.2",
5
+ "version": "0.173.3",
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.1.0. Bumps on breaking changes to request/response schemas.",
7
7
  "contact": {
8
8
  "name": "Tangle Network",
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/supervisor-run/source-facts.ts","../../src/supervisor-run/analyze.ts","../../src/supervisor-run/claude-code-reader.ts","../../src/supervisor-run/integrity-types.ts","../../src/supervisor-run/integrity.ts","../../src/supervisor-run/loops-reader.ts","../../src/supervisor-run/render.ts","../../src/supervisor-run/rollout-nodes.ts","../../src/supervisor-run/runtime-reader.ts"],"mappings":";;;UAwBU;EACR;EACA;EACA;EACA;;EAEA;;;;;;EAMA;;UAGe;EACf,QAAQ;;;;;;EAMR;EACA;;;;;;EAMA;;UAmFe;;EAEf;EACA;EACA;EACA;;EAEA,MAAM;;EAEN;;EAEA;EACA;;EAEA;EACA;;UAGe;EACf;EACA;EACA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;EACA;EACA,OAAO;;EAEP;;UAGe;;EAEf;EACA;EACA;;EAEA;EACA;EACA;EACA;EACA;;EAEA;EACA;EACA;;EAEA;;EAEA;EACA;;EAEA;;EAEA;EACA;EACA;EACA;EACA,eAAe;EACf,uBAAuB;;UAGR;;EAEf;EACA;;UAGe;;EAEf;;EAEA;EACA;;;;;;UAOe;WACN;WACA,iBAAiB;WACjB,iBAAiB;WACjB,uBAAuB;WACvB,uBAAuB;WACvB;;;;;;;IAOP;IACA;IACA;IACA;;IAEA;;IAEA;;IAEA;IACA;;IAEA;;IAEA;IACA;;IAEA;;WAEO,YAAY,oBAAoB;;WAEhC,wBAAwB;;WAExB;;;;;;;;;WASA;;WAEA;;;;;;WAMA,0BAA0B,SAAS;;;;;;;WAOnC;;WAEA,gBAAgB;;WAEhB,OAAO;WACP;WACA;;;;;;WAMA;WACA;;;;;;;;;;;;;;;;;;KAmDC;iBAiFI,oBAAoB,KAAK,uBAAuB;;;;;;;iBC9WhD,4BACd,KAAK,sBACL,qBACC;;iBAo2Ba,WAAW,eAAe;;;;;;iBA+C1B,qBAAqB,kBAAkB,wBAAwB;;;UCp4B9D;;WAEN;;;;;WAKA;WACA;WACA;WACA;WACA;WACA;WACA;;;;;;iBAmOW,4BACpB,MAAM,0BACL,QAAQ;;iBAiUK,8BAA8B,MAAM,0BAA0B;;;cCnoBjE;KAED;KAEA;KAKA;UAmCK;WACN;WACA;;UAGM;WACN,MAAM;WACN;WACA,UAAU;WACV;WACA;WACA;WACA,mBAAmB;WACnB;WACA,WAAW,SAAS;;UAGd;WACN,eAAe;WACf;WACA;WACA,MAAM;WACN,iBAAiB;;UAGX;;WAEN;;;;;;;;iBC5BK,8BACd,OAAO,uBAAuB,mBAC9B,UAAS,gCACR;;;;;;;iBCDmB,uBAAuB,aAAa;UAUzC;;WAEN;;WAEA;;WAEA;;WAEA;;;;;;;iBAQW,uBACpB,gBACA,OAAM,qBACL,QAAQ;;iBAmKK,yBACd,gBACA,OAAM,qBACL;;;;;;iBAkCmB,qBACpB,gBAAgB,sBAAsB,sBACtC,OAAM,qBACL,QAAQ;UAgBM,kCAAkC;;WAExC;;WAEA;;;;;;WAMA;;;;;;;;iBASW,yBACpB,gBACA,OAAM,4BACL,QAAQ;;;;;iBA0CW,6BACpB,gBACA,OAAM,4BACL,QAAQ;;;;;;iBAgBW,sBACpB,gBACA,OAAM;EAA8B;IACnC,QAAQ;;;;;;;iBA+BW,sBAAsB,eAAe;;;;;;;iBCzY3C,4BAA4B,GAAG;iBAiC/B,4BAA4B,GAAG;iBA+K/B,+BACd,QAAQ,qBACR;;;UC9Le;;WAEN;;WAEA,QAAQ;;WAER;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;WACA;WACA;WACA;WACA;;WAEA;;;;;;;iBAwBK,0BACd,KAAK,sBACL,OAAM,2BACL;;;UC6Vc;;;;;;WAMN;;;;;;;;;;;;;;;;iBAsDW,yBACpB,gBACA,OAAM,uBACL,QAAQ;;iBAkEK,2BACd,gBACA,OAAM,uBACL;;iBAKmB,0BAA0B,iBAAiB"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/supervisor-run/source-facts.ts","../../src/supervisor-run/analyze.ts","../../src/supervisor-run/claude-code-reader.ts","../../src/supervisor-run/integrity-types.ts","../../src/supervisor-run/integrity.ts","../../src/supervisor-run/loops-reader.ts","../../src/supervisor-run/render.ts","../../src/supervisor-run/rollout-nodes.ts","../../src/supervisor-run/runtime-reader.ts"],"mappings":";;;UAwBU;EACR;EACA;EACA;EACA;;EAEA;;;;;;EAMA;;UAGe;EACf,QAAQ;;;;;;EAMR;EACA;;;;;;EAMA;;UAmFe;;EAEf;EACA;EACA;EACA;;EAEA,MAAM;;EAEN;;EAEA;EACA;;EAEA;EACA;;UAGe;EACf;EACA;EACA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;EACA;EACA,OAAO;;EAEP;;UAGe;;EAEf;EACA;EACA;;EAEA;EACA;EACA;EACA;EACA;;EAEA;EACA;EACA;;EAEA;;EAEA;EACA;;EAEA;;EAEA;EACA;EACA;EACA;EACA,eAAe;EACf,uBAAuB;;UAGR;;EAEf;EACA;;UAGe;;EAEf;;EAEA;EACA;;;;;;UAOe;WACN;WACA,iBAAiB;WACjB,iBAAiB;WACjB,uBAAuB;WACvB,uBAAuB;WACvB;;;;;;;IAOP;IACA;IACA;IACA;;IAEA;;IAEA;;IAEA;IACA;;IAEA;;IAEA;IACA;;IAEA;;WAEO,YAAY,oBAAoB;;WAEhC,wBAAwB;;WAExB;;;;;;;;;WASA;;WAEA;;;;;;WAMA,0BAA0B,SAAS;;;;;;;WAOnC;;WAEA,gBAAgB;;WAEhB,OAAO;WACP;WACA;;;;;;WAMA;WACA;;;;;;;;;;;;;;;;;;KAmDC;iBAiFI,oBAAoB,KAAK,uBAAuB;;;;;;;iBC9WhD,4BACd,KAAK,sBACL,qBACC;;iBAo2Ba,WAAW,eAAe;;;;;;iBA+C1B,qBAAqB,kBAAkB,wBAAwB;;;UCp4B9D;;WAEN;;;;;WAKA;WACA;WACA;WACA;WACA;WACA;WACA;;;;;;iBAmOW,4BACpB,MAAM,0BACL,QAAQ;;iBAiUK,8BAA8B,MAAM,0BAA0B;;;cCnoBjE;KAED;KAEA;KAKA;UAmCK;WACN;WACA;;UAGM;WACN,MAAM;WACN;WACA,UAAU;WACV;WACA;WACA;WACA,mBAAmB;WACnB;WACA,WAAW,SAAS;;UAGd;WACN,eAAe;WACf;WACA;WACA,MAAM;WACN,iBAAiB;;UAGX;;WAEN;;;;;;;;iBC5BK,8BACd,OAAO,uBAAuB,mBAC9B,UAAS,gCACR;;;;;;;iBCDmB,uBAAuB,aAAa;UAUzC;;WAEN;;WAEA;;WAEA;;WAEA;;;;;;;iBAQW,uBACpB,gBACA,OAAM,qBACL,QAAQ;;iBAmKK,yBACd,gBACA,OAAM,qBACL;;;;;;iBAkCmB,qBACpB,gBAAgB,sBAAsB,sBACtC,OAAM,qBACL,QAAQ;UAgBM,kCAAkC;;WAExC;;WAEA;;;;;;WAMA;;;;;;;;iBASW,yBACpB,gBACA,OAAM,4BACL,QAAQ;;;;;iBA0CW,6BACpB,gBACA,OAAM,4BACL,QAAQ;;;;;;iBAgBW,sBACpB,gBACA,OAAM;EAA8B;IACnC,QAAQ;;;;;;;iBA+BW,sBAAsB,eAAe;;;;;;;iBCzY3C,4BAA4B,GAAG;iBAiC/B,4BAA4B,GAAG;iBA+K/B,+BACd,QAAQ,qBACR;;;UC9Le;;WAEN;;WAEA,QAAQ;;WAER;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;WACA;WACA;WACA;WACA;;WAEA;;;;;;;iBAwBK,0BACd,KAAK,sBACL,OAAM,2BACL;;;UCiYc;;;;;;WAMN;;;;;;;;;;;;;;;;iBAsDW,yBACpB,gBACA,OAAM,uBACL,QAAQ;;iBAkEK,2BACd,gBACA,OAAM,uBACL;;iBAKmB,0BAA0B,iBAAiB"}
@@ -1192,10 +1192,11 @@ function renderSupervisorRollupMarkdown(rollup, title = "Round rollup") {
1192
1192
  * Each line is an envelope whose `root` identifies the local tree. A journal
1193
1193
  * can connect a nested tree with `spawned.ownedTreeRoot`. It can also use the
1194
1194
  * spawned child id as the nested root and repeat the spawn as a parentless
1195
- * marker. This reader accepts both forms, removes a duplicate marker, and
1196
- * preserves the other envelopes for the supervisor-run analyzer. Runtime
1197
- * stores profile identity below `identity` and does not emit Eval's role field.
1198
- * This boundary projects those fields without changing Runtime's dialect.
1195
+ * marker when no owned tree is recorded. Descendant spawns must occur in the
1196
+ * tree their parent owns. This reader removes a duplicate marker and preserves
1197
+ * the other envelopes for the supervisor-run analyzer. Runtime stores profile
1198
+ * identity below `identity` and does not emit Eval's role field. This boundary
1199
+ * projects those fields without changing Runtime's dialect.
1199
1200
  *
1200
1201
  * The run's terminal status is Runtime's own `result.json` `kind` — `winner`,
1201
1202
  * `no-winner`, or whatever a later arm is called — read verbatim. The reader
@@ -1283,14 +1284,15 @@ function parseEnvelopeJournal(text, path) {
1283
1284
  const id = nonEmptyString(entry.event.id);
1284
1285
  if (id === null) continue;
1285
1286
  if (nonEmptyString(entry.event.parent) !== null) {
1286
- const matches = parentSpawnsById.get(id) ?? [];
1287
- matches.push(entry);
1288
- parentSpawnsById.set(id, matches);
1289
1287
  const ownedTreeRoot = nonEmptyString(entry.event.ownedTreeRoot);
1290
1288
  if (ownedTreeRoot !== null) {
1291
1289
  const owners = parentSpawnsByOwnedTreeRoot.get(ownedTreeRoot) ?? [];
1292
1290
  owners.push(entry);
1293
1291
  parentSpawnsByOwnedTreeRoot.set(ownedTreeRoot, owners);
1292
+ } else {
1293
+ const matches = parentSpawnsById.get(id) ?? [];
1294
+ matches.push(entry);
1295
+ parentSpawnsById.set(id, matches);
1294
1296
  }
1295
1297
  }
1296
1298
  if (entry.root === id && (entry.event.parent === void 0 || entry.event.parent === null)) {
@@ -1322,6 +1324,22 @@ function parseEnvelopeJournal(text, path) {
1322
1324
  if (markerDigest !== null && parentDigest !== null && markerDigest !== parentDigest) throw formatError(path, markers[0]?.line ?? 1, `nested tree ${JSON.stringify(nestedRoot)} disagrees with its parent profile digest`);
1323
1325
  if (parentDigest === null && markerDigest !== null) parentSpawn.event.profileDigest = markerDigest;
1324
1326
  }
1327
+ const ownedTreeBySupervisorId = /* @__PURE__ */ new Map([[top.root, top.root]]);
1328
+ for (const [nestedRoot, parentSpawn] of nestedParentSpawns) {
1329
+ const supervisorId = nonEmptyString(parentSpawn.event.id);
1330
+ if (supervisorId === null) continue;
1331
+ const priorTree = ownedTreeBySupervisorId.get(supervisorId);
1332
+ if (priorTree !== void 0 && priorTree !== nestedRoot) throw formatError(path, parentSpawn.line, `spawn ${JSON.stringify(supervisorId)} owns both ${JSON.stringify(priorTree)} and ${JSON.stringify(nestedRoot)}`);
1333
+ ownedTreeBySupervisorId.set(supervisorId, nestedRoot);
1334
+ }
1335
+ for (const entry of events) {
1336
+ if (entry.event.kind !== "spawned") continue;
1337
+ const parentId = nonEmptyString(entry.event.parent);
1338
+ if (parentId === null) continue;
1339
+ const parentTree = ownedTreeBySupervisorId.get(parentId);
1340
+ if (parentTree === void 0) throw formatError(path, entry.line, `spawn ${JSON.stringify(entry.event.id)} names parent ${JSON.stringify(parentId)}, which owns no journal tree`);
1341
+ if (entry.root !== parentTree) throw formatError(path, entry.line, `spawn ${JSON.stringify(entry.event.id)} is in tree ${JSON.stringify(entry.root)}, but parent ${JSON.stringify(parentId)} owns tree ${JSON.stringify(parentTree)}`);
1342
+ }
1325
1343
  const supervisorIds = /* @__PURE__ */ new Set([top.root, ...[...nestedParentSpawns.values()].map((entry) => nonEmptyString(entry.event.id)).filter((id) => id !== null)]);
1326
1344
  const normalized = events.filter((entry) => !(nestedRoots.has(entry.root) && entry.event.kind === "spawned" && entry.event.id === entry.root && (entry.event.parent === void 0 || entry.event.parent === null))).map((entry) => {
1327
1345
  const event = { ...entry.event };