agent-inspect 6.31.7 → 6.31.9
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 +12 -0
- package/README.md +1 -1
- package/package.json +1 -1
- package/packages/cli/dist/{chunk-QV73NM25.mjs → chunk-SWUZRRDT.mjs} +158 -21
- package/packages/cli/dist/chunk-SWUZRRDT.mjs.map +1 -0
- package/packages/cli/dist/index.cjs +312 -52
- package/packages/cli/dist/index.cjs.map +1 -1
- package/packages/cli/dist/index.mjs +156 -36
- package/packages/cli/dist/index.mjs.map +1 -1
- package/packages/cli/dist/{src-KFOBXFPN.mjs → src-XFIPYODW.mjs} +3 -3
- package/packages/cli/dist/{src-KFOBXFPN.mjs.map → src-XFIPYODW.mjs.map} +1 -1
- package/packages/core/dist/advanced.cjs +200 -24
- package/packages/core/dist/advanced.cjs.map +1 -1
- package/packages/core/dist/advanced.d.cts +1 -1
- package/packages/core/dist/advanced.d.ts +1 -1
- package/packages/core/dist/advanced.mjs +89 -15
- package/packages/core/dist/advanced.mjs.map +1 -1
- package/packages/core/dist/checks.mjs +2 -2
- package/packages/core/dist/{chunk-LXYPM2ZO.mjs → chunk-2CCRUI42.mjs} +19 -318
- package/packages/core/dist/chunk-2CCRUI42.mjs.map +1 -0
- package/packages/core/dist/{chunk-QLYUWKK7.mjs → chunk-2IRRUNIN.mjs} +11 -5
- package/packages/core/dist/chunk-2IRRUNIN.mjs.map +1 -0
- package/packages/core/dist/{chunk-VQUB3WRI.mjs → chunk-3SPBELJB.mjs} +14 -3
- package/packages/core/dist/chunk-3SPBELJB.mjs.map +1 -0
- package/packages/core/dist/{chunk-3RV3JILQ.mjs → chunk-IJJSPJXV.mjs} +20 -12
- package/packages/core/dist/chunk-IJJSPJXV.mjs.map +1 -0
- package/packages/core/dist/chunk-L5WLVBW4.mjs +355 -0
- package/packages/core/dist/chunk-L5WLVBW4.mjs.map +1 -0
- package/packages/core/dist/exporters.cjs +110 -18
- package/packages/core/dist/exporters.cjs.map +1 -1
- package/packages/core/dist/exporters.mjs +110 -18
- package/packages/core/dist/exporters.mjs.map +1 -1
- package/packages/core/dist/index.cjs +12 -1
- package/packages/core/dist/index.cjs.map +1 -1
- package/packages/core/dist/index.mjs +2 -2
- package/packages/core/dist/persisted.cjs +344 -9
- package/packages/core/dist/persisted.cjs.map +1 -1
- package/packages/core/dist/persisted.d.cts +8 -1
- package/packages/core/dist/persisted.d.ts +8 -1
- package/packages/core/dist/persisted.mjs +3 -2
- package/packages/core/dist/persisted.mjs.map +1 -1
- package/packages/core/dist/readers.cjs +377 -87
- package/packages/core/dist/readers.cjs.map +1 -1
- package/packages/core/dist/readers.mjs +3 -3
- package/packages/cli/dist/chunk-QV73NM25.mjs.map +0 -1
- package/packages/core/dist/chunk-3RV3JILQ.mjs.map +0 -1
- package/packages/core/dist/chunk-FWK3Q3OJ.mjs +0 -56
- package/packages/core/dist/chunk-FWK3Q3OJ.mjs.map +0 -1
- package/packages/core/dist/chunk-LXYPM2ZO.mjs.map +0 -1
- package/packages/core/dist/chunk-QLYUWKK7.mjs.map +0 -1
- package/packages/core/dist/chunk-VQUB3WRI.mjs.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 6.31.9
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- f71ec7e: Fail closed when suite cases declare no effective assertions or unknown selectors, wire eval.requireSuccess and related eval controls into real check rules, and share AsyncLocalStorage across packed CJS root and /advanced entrypoints so guarded wrappers see the active run context.
|
|
8
|
+
|
|
9
|
+
## 6.31.8
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- 5bbe8c0: Restore CLI export lifecycle coalescing for schema 0.1 nested tools, map adapter modelId/source/fractional duration on OTLP export, keep OTLP parent lookup trace-scoped, strengthen producer validation, and make Promptfoo/Collector/Elastic recipe verifiers honest.
|
|
14
|
+
|
|
3
15
|
## 6.31.7
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -213,7 +213,7 @@ The root package is enough for custom capture, the CLI, checks, and Evidence wor
|
|
|
213
213
|
|
|
214
214
|
## Status and documentation
|
|
215
215
|
|
|
216
|
-
**Current published baseline:** **6.31.
|
|
216
|
+
**Current published baseline:** **6.31.9** · persisted schema `1.0` · Node.js `>=20` · MIT.
|
|
217
217
|
|
|
218
218
|
Legacy v0.1 and v0.2 traces remain readable. Check the npm badge and [changelog](CHANGELOG.md) for the current published version.
|
|
219
219
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agent-inspect",
|
|
3
|
-
"version": "6.31.
|
|
3
|
+
"version": "6.31.9",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"description": "Local evidence debugger and trajectory-test toolkit for TypeScript AI agents — execution trees, TraceContract checks, Evidence v2, and read-only MCP",
|
|
@@ -1627,7 +1627,18 @@ function extractCorrelationMetadata(record) {
|
|
|
1627
1627
|
}
|
|
1628
1628
|
|
|
1629
1629
|
// packages/core/src/context.ts
|
|
1630
|
-
|
|
1630
|
+
var GLOBAL_CONTEXT_ALS_KEY = "agent-inspect:execution-context-als:v1";
|
|
1631
|
+
function getSharedContextStorage() {
|
|
1632
|
+
const host = globalThis;
|
|
1633
|
+
const existing = host[GLOBAL_CONTEXT_ALS_KEY];
|
|
1634
|
+
if (existing instanceof AsyncLocalStorage) {
|
|
1635
|
+
return existing;
|
|
1636
|
+
}
|
|
1637
|
+
const created = new AsyncLocalStorage();
|
|
1638
|
+
host[GLOBAL_CONTEXT_ALS_KEY] = created;
|
|
1639
|
+
return created;
|
|
1640
|
+
}
|
|
1641
|
+
getSharedContextStorage();
|
|
1631
1642
|
|
|
1632
1643
|
// packages/core/src/terminal.ts
|
|
1633
1644
|
var TERMINAL_INDENT = " ";
|
|
@@ -8407,6 +8418,45 @@ function createToolOrderingRule(options) {
|
|
|
8407
8418
|
requireEndpoints: false
|
|
8408
8419
|
});
|
|
8409
8420
|
}
|
|
8421
|
+
function createToolFailureRule(options) {
|
|
8422
|
+
return {
|
|
8423
|
+
id: "tool.failures",
|
|
8424
|
+
category: "tool",
|
|
8425
|
+
defaultSeverity: "error",
|
|
8426
|
+
evaluate(context) {
|
|
8427
|
+
const tools = finishedEvents(context, "TOOL");
|
|
8428
|
+
const failures = tools.filter((event) => event.status === "error");
|
|
8429
|
+
const retries = tools.map((event) => ({ event, count: retryCount(event) })).filter((item) => item.count !== void 0);
|
|
8430
|
+
const findings = [];
|
|
8431
|
+
if (options.maxFailures !== void 0 && failures.length > options.maxFailures) {
|
|
8432
|
+
findings.push(
|
|
8433
|
+
failFinding(
|
|
8434
|
+
"tool.failures",
|
|
8435
|
+
`Tool failure count ${failures.length} exceeded ${options.maxFailures}.`,
|
|
8436
|
+
failures.map((event) => eventEvidence3(event)),
|
|
8437
|
+
{ maxFailures: options.maxFailures },
|
|
8438
|
+
failures.length
|
|
8439
|
+
)
|
|
8440
|
+
);
|
|
8441
|
+
}
|
|
8442
|
+
if (options.maxRetries !== void 0) {
|
|
8443
|
+
const excessiveRetries = retries.filter((item) => item.count > options.maxRetries);
|
|
8444
|
+
if (excessiveRetries.length > 0) {
|
|
8445
|
+
findings.push(
|
|
8446
|
+
failFinding(
|
|
8447
|
+
"tool.failures",
|
|
8448
|
+
`Tool retry count exceeded ${options.maxRetries}.`,
|
|
8449
|
+
excessiveRetries.map((item) => eventEvidence3(item.event, "attributes.retryCount")),
|
|
8450
|
+
{ maxRetries: options.maxRetries },
|
|
8451
|
+
excessiveRetries.map((item) => ({ tool: toolName(item.event), retries: item.count }))
|
|
8452
|
+
)
|
|
8453
|
+
);
|
|
8454
|
+
}
|
|
8455
|
+
}
|
|
8456
|
+
return findings;
|
|
8457
|
+
}
|
|
8458
|
+
};
|
|
8459
|
+
}
|
|
8410
8460
|
function createLlmUsageRule(options) {
|
|
8411
8461
|
return {
|
|
8412
8462
|
id: "llm.usage",
|
|
@@ -11954,8 +12004,13 @@ function persistedInspectEventsToInspectEvents(events, options) {
|
|
|
11954
12004
|
}
|
|
11955
12005
|
|
|
11956
12006
|
// packages/core/src/persisted/tree-bridge.ts
|
|
12007
|
+
function logicalToPersisted(event) {
|
|
12008
|
+
const { sourceEventIds: _sourceEventIds, projection: _projection, ...rest } = event;
|
|
12009
|
+
return rest;
|
|
12010
|
+
}
|
|
11957
12011
|
function persistedInspectEventsToRunTrees(events, options) {
|
|
11958
|
-
const
|
|
12012
|
+
const sourceEvents = options?.coalesceLifecycle === true ? projectLogicalEvents(events).logicalEvents.map(logicalToPersisted) : events;
|
|
12013
|
+
const inspectEvents = persistedInspectEventsToInspectEvents(sourceEvents, {
|
|
11959
12014
|
skipInvalid: options?.skipInvalid
|
|
11960
12015
|
});
|
|
11961
12016
|
return new TreeBuilder().build(inspectEvents);
|
|
@@ -12649,7 +12704,7 @@ function mapOpenInferenceSpan(span, index, version) {
|
|
|
12649
12704
|
const errorMessage = isRecord11(span.status) && typeof span.status.message === "string" ? span.status.message : void 0;
|
|
12650
12705
|
const event = {
|
|
12651
12706
|
schemaVersion: "0.2",
|
|
12652
|
-
eventId: typeof rawAttributes["agent_inspect.event_id"] === "string" ? rawAttributes["agent_inspect.event_id"] : spanId
|
|
12707
|
+
eventId: typeof rawAttributes["agent_inspect.event_id"] === "string" ? rawAttributes["agent_inspect.event_id"] : `${traceId}:${spanId}`,
|
|
12653
12708
|
runId: typeof rawAttributes["agent_inspect.run_id"] === "string" ? rawAttributes["agent_inspect.run_id"] : traceId,
|
|
12654
12709
|
kind,
|
|
12655
12710
|
name,
|
|
@@ -12700,12 +12755,16 @@ function mapOpenInferenceEvents(document) {
|
|
|
12700
12755
|
const mapped = document.spans.map(
|
|
12701
12756
|
(span, index) => mapOpenInferenceSpan(span, index, document.version)
|
|
12702
12757
|
);
|
|
12703
|
-
const
|
|
12704
|
-
mapped.map((span) =>
|
|
12758
|
+
const spanKeyToEventId = new Map(
|
|
12759
|
+
mapped.map((span) => {
|
|
12760
|
+
const traceId = typeof span.event.trace?.traceId === "string" ? span.event.trace.traceId : "";
|
|
12761
|
+
return [`${traceId}:${span.spanId}`, span.event.eventId];
|
|
12762
|
+
})
|
|
12705
12763
|
);
|
|
12706
12764
|
for (const span of mapped) {
|
|
12707
12765
|
if (span.parentSpanId === void 0) continue;
|
|
12708
|
-
span.event.
|
|
12766
|
+
const traceId = typeof span.event.trace?.traceId === "string" ? span.event.trace.traceId : "";
|
|
12767
|
+
span.event.parentId = spanKeyToEventId.get(`${traceId}:${span.parentSpanId}`) ?? span.parentSpanId;
|
|
12709
12768
|
}
|
|
12710
12769
|
return {
|
|
12711
12770
|
events: mapped.map((span) => span.event),
|
|
@@ -13254,7 +13313,7 @@ function mapOtlpSpan(context) {
|
|
|
13254
13313
|
const errorMessage = isRecord11(span.status) && typeof span.status.message === "string" ? span.status.message : void 0;
|
|
13255
13314
|
const event = {
|
|
13256
13315
|
schemaVersion: "0.2",
|
|
13257
|
-
eventId: typeof parsedSpanAttributes.attributes["agent_inspect.event_id"] === "string" ? parsedSpanAttributes.attributes["agent_inspect.event_id"] : spanId
|
|
13316
|
+
eventId: typeof parsedSpanAttributes.attributes["agent_inspect.event_id"] === "string" ? parsedSpanAttributes.attributes["agent_inspect.event_id"] : `${traceId}:${spanId}`,
|
|
13258
13317
|
runId: typeof parsedSpanAttributes.attributes["agent_inspect.run_id"] === "string" ? parsedSpanAttributes.attributes["agent_inspect.run_id"] : traceId,
|
|
13259
13318
|
kind,
|
|
13260
13319
|
name: readStringField(span, ["name"]) ?? spanId,
|
|
@@ -13303,12 +13362,16 @@ function mapOtlpSpan(context) {
|
|
|
13303
13362
|
}
|
|
13304
13363
|
function mapOtlpEventsToPersisted(document) {
|
|
13305
13364
|
const mapped = document.spans.map((span) => mapOtlpSpan(span));
|
|
13306
|
-
const
|
|
13307
|
-
mapped.map((span) =>
|
|
13365
|
+
const spanKeyToEventId = new Map(
|
|
13366
|
+
mapped.map((span) => {
|
|
13367
|
+
const traceId = typeof span.event.trace?.traceId === "string" ? span.event.trace.traceId : "";
|
|
13368
|
+
return [`${traceId}:${span.spanId}`, span.event.eventId];
|
|
13369
|
+
})
|
|
13308
13370
|
);
|
|
13309
13371
|
for (const span of mapped) {
|
|
13310
13372
|
if (span.parentSpanId === void 0) continue;
|
|
13311
|
-
span.event.
|
|
13373
|
+
const traceId = typeof span.event.trace?.traceId === "string" ? span.event.trace.traceId : "";
|
|
13374
|
+
span.event.parentId = spanKeyToEventId.get(`${traceId}:${span.parentSpanId}`) ?? span.parentSpanId;
|
|
13312
13375
|
}
|
|
13313
13376
|
return {
|
|
13314
13377
|
events: mapped.map((span) => span.event),
|
|
@@ -13636,21 +13699,48 @@ async function resolveSuiteCaseTrace(suiteCase, options) {
|
|
|
13636
13699
|
}
|
|
13637
13700
|
|
|
13638
13701
|
// packages/core/src/suite/run.ts
|
|
13702
|
+
var KNOWN_SUITE_SELECT_IDS = /* @__PURE__ */ new Set([
|
|
13703
|
+
"run.status",
|
|
13704
|
+
"run.duration",
|
|
13705
|
+
"run.depth",
|
|
13706
|
+
"outcome.status",
|
|
13707
|
+
"tool.usage",
|
|
13708
|
+
"tool.failures",
|
|
13709
|
+
"llm.usage"
|
|
13710
|
+
]);
|
|
13639
13711
|
function diagnostic5(code, message, severity = "error", caseId) {
|
|
13640
13712
|
return { code, message, severity, ...caseId !== void 0 ? { caseId } : {} };
|
|
13641
13713
|
}
|
|
13642
|
-
function
|
|
13714
|
+
function buildCaseAssertions(suiteCase, config) {
|
|
13643
13715
|
const rules = [];
|
|
13644
13716
|
const select = new Set(config.checks?.select ?? []);
|
|
13645
|
-
|
|
13717
|
+
const configDiagnostics = [];
|
|
13718
|
+
const evalConfig = config.eval;
|
|
13719
|
+
const declaredSelect = [...select];
|
|
13720
|
+
for (const id of declaredSelect) {
|
|
13721
|
+
if (!KNOWN_SUITE_SELECT_IDS.has(id)) {
|
|
13722
|
+
configDiagnostics.push(
|
|
13723
|
+
diagnostic5(
|
|
13724
|
+
"AI_SUITE_UNKNOWN_SELECTOR",
|
|
13725
|
+
`Unknown or unsupported suite check selector "${id}".`,
|
|
13726
|
+
"error",
|
|
13727
|
+
suiteCase.id
|
|
13728
|
+
)
|
|
13729
|
+
);
|
|
13730
|
+
}
|
|
13731
|
+
}
|
|
13732
|
+
if (select.has("run.status") || evalConfig?.requireSuccess === true) {
|
|
13646
13733
|
rules.push(createRunStatusRule());
|
|
13734
|
+
select.add("run.status");
|
|
13647
13735
|
}
|
|
13648
13736
|
const requiredTools = [
|
|
13649
13737
|
...config.checks?.tool?.required ?? [],
|
|
13738
|
+
...evalConfig?.requiredTools ?? [],
|
|
13650
13739
|
...suiteCase.requireTools ?? []
|
|
13651
13740
|
];
|
|
13652
13741
|
const forbiddenTools = [
|
|
13653
13742
|
...config.checks?.tool?.forbidden ?? [],
|
|
13743
|
+
...evalConfig?.forbiddenTools ?? [],
|
|
13654
13744
|
...suiteCase.forbidTools ?? []
|
|
13655
13745
|
];
|
|
13656
13746
|
if (requiredTools.length > 0 || forbiddenTools.length > 0) {
|
|
@@ -13662,20 +13752,51 @@ function buildCaseRules(suiteCase, config) {
|
|
|
13662
13752
|
);
|
|
13663
13753
|
select.add("tool.usage");
|
|
13664
13754
|
}
|
|
13665
|
-
const maxDurationMs = suiteCase.maxDurationMs ?? config.checks?.run?.maxDurationMs ??
|
|
13755
|
+
const maxDurationMs = suiteCase.maxDurationMs ?? config.checks?.run?.maxDurationMs ?? evalConfig?.maxDurationMs;
|
|
13666
13756
|
if (maxDurationMs !== void 0) {
|
|
13667
13757
|
rules.push(createRunDurationRule({ maxDurationMs }));
|
|
13668
13758
|
select.add("run.duration");
|
|
13669
13759
|
}
|
|
13670
|
-
const
|
|
13671
|
-
if (
|
|
13672
|
-
rules.push(
|
|
13760
|
+
const maxDepth = config.checks?.run?.maxDepth ?? evalConfig?.maxDepth;
|
|
13761
|
+
if (maxDepth !== void 0) {
|
|
13762
|
+
rules.push(createRunDepthRule({ maxDepth }));
|
|
13763
|
+
select.add("run.depth");
|
|
13764
|
+
}
|
|
13765
|
+
if (evalConfig?.maxRetries !== void 0) {
|
|
13766
|
+
rules.push(createToolFailureRule({ maxRetries: evalConfig.maxRetries }));
|
|
13767
|
+
select.add("tool.failures");
|
|
13768
|
+
}
|
|
13769
|
+
const allowedModels = config.checks?.llm?.allowedModels;
|
|
13770
|
+
const maxTotalTokens = config.checks?.llm?.maxTotalTokens ?? evalConfig?.maxTotalTokens;
|
|
13771
|
+
if (allowedModels !== void 0 || maxTotalTokens !== void 0) {
|
|
13772
|
+
rules.push(
|
|
13773
|
+
createLlmUsageRule({
|
|
13774
|
+
...allowedModels !== void 0 ? { allowedModels } : {},
|
|
13775
|
+
...maxTotalTokens !== void 0 ? { maxTotalTokens } : {}
|
|
13776
|
+
})
|
|
13777
|
+
);
|
|
13673
13778
|
select.add("llm.usage");
|
|
13674
13779
|
}
|
|
13675
13780
|
if (select.has("outcome.status")) {
|
|
13676
13781
|
rules.push(createObservedOutcomeRule({ failOn: ["failed"] }));
|
|
13677
13782
|
}
|
|
13678
|
-
|
|
13783
|
+
const observationCount = suiteCase.expectedObservations?.length ?? 0;
|
|
13784
|
+
if (rules.length === 0 && observationCount === 0 && configDiagnostics.length === 0) {
|
|
13785
|
+
configDiagnostics.push(
|
|
13786
|
+
diagnostic5(
|
|
13787
|
+
"AI_SUITE_NO_ASSERTIONS",
|
|
13788
|
+
`Suite case "${suiteCase.id}" declares no effective checks, eval controls, or expected observations.`,
|
|
13789
|
+
"error",
|
|
13790
|
+
suiteCase.id
|
|
13791
|
+
)
|
|
13792
|
+
);
|
|
13793
|
+
}
|
|
13794
|
+
return {
|
|
13795
|
+
rules,
|
|
13796
|
+
select: [...select],
|
|
13797
|
+
observationCount,
|
|
13798
|
+
configDiagnostics
|
|
13799
|
+
};
|
|
13679
13800
|
}
|
|
13680
13801
|
function outcomesFromRead(read) {
|
|
13681
13802
|
const persistedOutcomes = extractOutcomesFromPersistedEvents(
|
|
@@ -13756,8 +13877,20 @@ async function runSuiteCase(suiteCase, config, options) {
|
|
|
13756
13877
|
]
|
|
13757
13878
|
};
|
|
13758
13879
|
}
|
|
13759
|
-
const
|
|
13760
|
-
|
|
13880
|
+
const compiled = buildCaseAssertions(suiteCase, config);
|
|
13881
|
+
if (compiled.configDiagnostics.length > 0) {
|
|
13882
|
+
return {
|
|
13883
|
+
id: suiteCase.id,
|
|
13884
|
+
status: "error",
|
|
13885
|
+
tracePath: resolved.tracePath,
|
|
13886
|
+
...resolved.runId !== void 0 ? { runId: resolved.runId } : {},
|
|
13887
|
+
checkOk: false,
|
|
13888
|
+
...config.eval?.requireSuccess === true ? { evalOk: false } : {},
|
|
13889
|
+
message: compiled.configDiagnostics.map((item) => item.message).join("; "),
|
|
13890
|
+
diagnostics: compiled.configDiagnostics
|
|
13891
|
+
};
|
|
13892
|
+
}
|
|
13893
|
+
const checkResult = compiled.rules.length > 0 ? runTraceChecks({ read }, { rules: compiled.rules, select: compiled.select }) : {
|
|
13761
13894
|
ok: true,
|
|
13762
13895
|
status: "pass",
|
|
13763
13896
|
format: read.format,
|
|
@@ -13785,6 +13918,9 @@ async function runSuiteCase(suiteCase, config, options) {
|
|
|
13785
13918
|
];
|
|
13786
13919
|
const checkOk = checkResult.ok;
|
|
13787
13920
|
const observationsOk = observationResult.ok;
|
|
13921
|
+
const evalOk = config.eval?.requireSuccess === true ? checkResult.findings.every(
|
|
13922
|
+
(finding) => finding.ruleId !== "run.status" || finding.status !== "fail"
|
|
13923
|
+
) && checkResult.diagnostics.every((item) => item.severity !== "error") : void 0;
|
|
13788
13924
|
const ok = checkOk && observationsOk;
|
|
13789
13925
|
const status = ok ? "pass" : checkResult.status === "error" ? "error" : "fail";
|
|
13790
13926
|
return {
|
|
@@ -13793,6 +13929,7 @@ async function runSuiteCase(suiteCase, config, options) {
|
|
|
13793
13929
|
tracePath: resolved.tracePath,
|
|
13794
13930
|
...resolved.runId !== void 0 ? { runId: resolved.runId } : {},
|
|
13795
13931
|
checkOk,
|
|
13932
|
+
...evalOk !== void 0 ? { evalOk } : {},
|
|
13796
13933
|
observationsOk,
|
|
13797
13934
|
diagnostics,
|
|
13798
13935
|
...ok ? {} : {
|
|
@@ -14960,5 +15097,5 @@ function renderGateReport(result, options = {}) {
|
|
|
14960
15097
|
}
|
|
14961
15098
|
|
|
14962
15099
|
export { ATTRIBUTION_CONFIDENCES, COHORT_METRIC_IDS, DEFAULT_REDACT_KEYS, DEFAULT_SUITE_ARTIFACTS_DIR, EVIDENCE_FORMAT_VERSION, EVIDENCE_HTML_FILENAME, EVIDENCE_MANIFEST_FILENAME, Redactor, TraceDirectory, TraceReadError, TreeBuilder, aggregateBundleSafeStatus, aggregateSessionCheckResults, analyzeCohort, applyProfileMetadataCaps, assertBundlePathContained, assertEvidenceRelativePath, buildActivitySummary, buildBundleMetadata, buildBundleSummaryMarkdown, buildEvidenceCausalFailureViewHtml, buildEvidenceCiPackage, buildEvidenceCircuitViewHtml, buildEvidenceContractsViewHtml, buildEvidenceDiffViewHtml, buildEvidenceHtmlShell, buildEvidenceManifest, buildEvidenceOutcomesViewHtml, buildEvidenceProvenanceViewHtml, buildEvidenceSafetyViewHtml, buildEvidenceTimelineViewHtml, buildEvidenceToolsLlmViewHtml, buildEvidenceTreeViewHtml, buildLocalExplanation, buildPlaceholderArtifact, buildRunSummary, buildRunTimeline, buildRunWhatSummary, buildSessionIndex, buildTraceStats, buildZipArchive, bundleFailsOnSafety, bundleRunAssetRelativePath, collectTraceSchemaVersions, compactAttributes, createBaselineRegressionRule, createLlmUsageRule, createMaxStepDurationRule, createObservedOutcomeRule, createRequireCompletedRule, createRunDepthRule, createRunDurationRule, createRunStatusRule, createSafetyOversizedAttributeRule, createSafetyRawContentRule, createSafetyRedactionRule, createSafetySecretPatternRule, createStallDetectionRule, createStructureCycleRule, createStructureOrphanRule, createStructureParallelWidthRule, createStructureRelationshipRule, createToolUsageRule, defaultBundleOutputPath, defaultSuiteConfigTemplate, defineTraceContract, diffRuns, diffTraceEvents, enrichSessionRunRecord, escapeHtml, escapeMarkdown, evaluateTraceContract, extractMetadata, extractOutcomesFromTraceEvents, filterMetasBySessionScope, filterTraces, flattenTree, formatDuration2 as formatDuration, formatStepLabel, formatTimestamp, gateHasThresholds, getIndent, getTraceFilePath, inferEvidenceFileRole, isAgentInspectTrace, isAttributionConfidence, isCredentialSensitiveKey, isPersistedInspectEvent, loadSessionRunRecords, loadSuiteConfig, loadTraceMetadataList, manualTraceEventsToComparableRun, nanoid, normalizeBundleOutputPath, openTrace, parseCohortMetricList, parseDuration, parseDurationFilter, parseGateList, parseTraceJsonl, persistedInspectEventsToRunTrees, persistedInspectEventsToTraceEvents, projectLogicalEvents, renderActivitySummaryHuman, renderCohortReport, renderErrorLine, renderGateReport, renderObservedOutcomesHtml, renderObservedOutcomesMarkdown, renderRunDiff, renderRunWhat, renderStepLine, renderSuiteReport, renderTimeline, renderTraceStats, resolveBundleRunIds, resolveRedactionProfile, resolveSuiteTemplate, resolveTraceDir, runGate, runSuite, runTraceChecks, safeString, sanitizeBundleRunId, searchTraces, serializeEvidenceManifest, sha256Hex, stableJson, stringContainsHighConfidenceCredential, summarizeObservedOutcomes, summarizeSemanticParity, traceEventToPersistedInspectEvent, truncateName, truncateStringForProfile, validateEvent, validateSuiteConfig, verifyEvidenceDirectory, zeroKinds };
|
|
14963
|
-
//# sourceMappingURL=chunk-
|
|
14964
|
-
//# sourceMappingURL=chunk-
|
|
15100
|
+
//# sourceMappingURL=chunk-SWUZRRDT.mjs.map
|
|
15101
|
+
//# sourceMappingURL=chunk-SWUZRRDT.mjs.map
|