agent-inspect 6.31.12 → 6.31.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.
Files changed (36) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +1 -1
  3. package/package.json +1 -1
  4. package/packages/cli/dist/{chunk-GBAGZVUX.mjs → chunk-ZAYVAHIH.mjs} +82 -13
  5. package/packages/cli/dist/chunk-ZAYVAHIH.mjs.map +1 -0
  6. package/packages/cli/dist/index.cjs +286 -44
  7. package/packages/cli/dist/index.cjs.map +1 -1
  8. package/packages/cli/dist/index.mjs +209 -36
  9. package/packages/cli/dist/index.mjs.map +1 -1
  10. package/packages/cli/dist/{src-F44EQY4S.mjs → src-KP4UIFK5.mjs} +3 -3
  11. package/packages/cli/dist/{src-F44EQY4S.mjs.map → src-KP4UIFK5.mjs.map} +1 -1
  12. package/packages/core/dist/advanced.cjs +80 -11
  13. package/packages/core/dist/advanced.cjs.map +1 -1
  14. package/packages/core/dist/advanced.mjs +27 -7
  15. package/packages/core/dist/advanced.mjs.map +1 -1
  16. package/packages/core/dist/{chunk-OAUNS5CS.mjs → chunk-JE3TUFAQ.mjs} +3 -3
  17. package/packages/core/dist/{chunk-OAUNS5CS.mjs.map → chunk-JE3TUFAQ.mjs.map} +1 -1
  18. package/packages/core/dist/{chunk-QOC3PJO3.mjs → chunk-NJUSSJX3.mjs} +3 -3
  19. package/packages/core/dist/{chunk-QOC3PJO3.mjs.map → chunk-NJUSSJX3.mjs.map} +1 -1
  20. package/packages/core/dist/{chunk-AK5EN4U2.mjs → chunk-YU6XT5A2.mjs} +58 -9
  21. package/packages/core/dist/chunk-YU6XT5A2.mjs.map +1 -0
  22. package/packages/core/dist/exporters.cjs +205 -32
  23. package/packages/core/dist/exporters.cjs.map +1 -1
  24. package/packages/core/dist/exporters.mjs +205 -32
  25. package/packages/core/dist/exporters.mjs.map +1 -1
  26. package/packages/core/dist/logs.cjs +56 -7
  27. package/packages/core/dist/logs.cjs.map +1 -1
  28. package/packages/core/dist/logs.mjs +2 -2
  29. package/packages/core/dist/persisted.cjs +56 -7
  30. package/packages/core/dist/persisted.cjs.map +1 -1
  31. package/packages/core/dist/persisted.mjs +3 -3
  32. package/packages/core/dist/readers.cjs +56 -7
  33. package/packages/core/dist/readers.cjs.map +1 -1
  34. package/packages/core/dist/readers.mjs +3 -3
  35. package/packages/cli/dist/chunk-GBAGZVUX.mjs.map +0 -1
  36. package/packages/core/dist/chunk-AK5EN4U2.mjs.map +0 -1
@@ -1,9 +1,9 @@
1
- import { normalizeTokenUsage } from './chunk-OAUNS5CS.mjs';
2
- export { persistedInspectEventToInspectEvent, persistedInspectEventsToInspectEvents, persistedInspectEventsToRunTrees, traceEventToPersistedInspectEvent, traceEventsToPersistedInspectEvents, traceEventsToPersistedRunTrees } from './chunk-OAUNS5CS.mjs';
1
+ import { normalizeTokenUsage } from './chunk-JE3TUFAQ.mjs';
2
+ export { persistedInspectEventToInspectEvent, persistedInspectEventsToInspectEvents, persistedInspectEventsToRunTrees, traceEventToPersistedInspectEvent, traceEventsToPersistedInspectEvents, traceEventsToPersistedRunTrees } from './chunk-JE3TUFAQ.mjs';
3
3
  import './chunk-AHUZNHFI.mjs';
4
4
  import './chunk-S4YWKV4G.mjs';
5
5
  import './chunk-S6LQBLX5.mjs';
6
- import './chunk-AK5EN4U2.mjs';
6
+ import './chunk-YU6XT5A2.mjs';
7
7
  export { isPersistedInspectEvent, isPersistedInspectEventV02, isPersistedInspectEventV10, persistedInspectEventToTraceEvents, persistedInspectEventsToTraceEvents } from './chunk-EE5Z2GQ3.mjs';
8
8
 
9
9
  // packages/core/src/persisted/from-inspect-event.ts
@@ -1362,18 +1362,16 @@ var TreeBuilder = class {
1362
1362
  inc(confidenceBreakdown, e.confidence);
1363
1363
  kinds[e.kind] = (kinds[e.kind] ?? 0) + 1;
1364
1364
  }
1365
- const startedAt = sorted.length > 0 ? sorted[0].timestamp : void 0;
1366
- const endedAt = sorted.length > 0 ? sorted[sorted.length - 1].timestamp : void 0;
1367
- const status = computeRunStatus(sorted);
1368
- const durationMs = startedAt !== void 0 && endedAt !== void 0 && Number.isFinite(startedAt) && Number.isFinite(endedAt) && endedAt >= startedAt && status !== "running" ? endedAt - startedAt : void 0;
1369
1365
  const name = sorted.find((e) => e.kind === "RUN")?.name;
1366
+ const status = computeRunStatus(sorted);
1367
+ const timing = resolveRunTiming(sorted, status);
1370
1368
  out.push({
1371
1369
  runId,
1372
1370
  name,
1373
1371
  status,
1374
- startedAt,
1375
- endedAt: status === "running" ? void 0 : endedAt,
1376
- durationMs,
1372
+ startedAt: timing.startedAt,
1373
+ endedAt: timing.endedAt,
1374
+ durationMs: timing.durationMs,
1377
1375
  children: roots,
1378
1376
  metadata: {
1379
1377
  totalEvents: sorted.length,
@@ -1387,6 +1385,57 @@ var TreeBuilder = class {
1387
1385
  return out;
1388
1386
  }
1389
1387
  };
1388
+ function resolveRunTiming(sorted, status) {
1389
+ let startedAtMs;
1390
+ let endedAtMs;
1391
+ let explicitDurationMs;
1392
+ for (const event of sorted) {
1393
+ if (event.kind !== "RUN") continue;
1394
+ const attrs = event.attributes ?? {};
1395
+ if (typeof attrs.startedAtMs === "number" && Number.isFinite(attrs.startedAtMs)) {
1396
+ startedAtMs = startedAtMs === void 0 ? attrs.startedAtMs : Math.min(startedAtMs, attrs.startedAtMs);
1397
+ }
1398
+ if (typeof attrs.endedAtMs === "number" && Number.isFinite(attrs.endedAtMs)) {
1399
+ endedAtMs = endedAtMs === void 0 ? attrs.endedAtMs : Math.max(endedAtMs, attrs.endedAtMs);
1400
+ }
1401
+ if ((event.status === "ok" || event.status === "error") && typeof event.durationMs === "number" && Number.isFinite(event.durationMs) && event.durationMs >= 0) {
1402
+ explicitDurationMs = event.durationMs;
1403
+ if (endedAtMs === void 0 && startedAtMs !== void 0) {
1404
+ endedAtMs = startedAtMs + event.durationMs;
1405
+ } else if (endedAtMs === void 0 && Number.isFinite(event.timestamp)) {
1406
+ endedAtMs = event.timestamp + event.durationMs;
1407
+ if (startedAtMs === void 0) {
1408
+ startedAtMs = event.timestamp;
1409
+ }
1410
+ }
1411
+ }
1412
+ if (startedAtMs === void 0 && event.status === "running" && Number.isFinite(event.timestamp)) {
1413
+ startedAtMs = event.timestamp;
1414
+ }
1415
+ }
1416
+ if (startedAtMs !== void 0 && endedAtMs !== void 0 && Number.isFinite(startedAtMs) && Number.isFinite(endedAtMs) && endedAtMs >= startedAtMs && status !== "running") {
1417
+ return {
1418
+ startedAt: startedAtMs,
1419
+ endedAt: endedAtMs,
1420
+ durationMs: endedAtMs - startedAtMs
1421
+ };
1422
+ }
1423
+ if (startedAtMs !== void 0 && explicitDurationMs !== void 0 && status !== "running") {
1424
+ return {
1425
+ startedAt: startedAtMs,
1426
+ endedAt: startedAtMs + explicitDurationMs,
1427
+ durationMs: explicitDurationMs
1428
+ };
1429
+ }
1430
+ const startedAt = sorted.length > 0 ? sorted[0].timestamp : void 0;
1431
+ const endedAt = sorted.length > 0 ? sorted[sorted.length - 1].timestamp : void 0;
1432
+ const durationMs = startedAt !== void 0 && endedAt !== void 0 && Number.isFinite(startedAt) && Number.isFinite(endedAt) && endedAt >= startedAt && status !== "running" ? endedAt - startedAt : void 0;
1433
+ return {
1434
+ startedAt,
1435
+ endedAt: status === "running" ? void 0 : endedAt,
1436
+ durationMs
1437
+ };
1438
+ }
1390
1439
 
1391
1440
  // packages/core/src/persisted/to-inspect-event.ts
1392
1441
  function compactAttributes2(entries) {