niceeval 0.13.1 → 0.13.2
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/INDEX.md +25 -2
- package/README.md +9 -10
- package/README.zh.md +9 -10
- package/dist/agents/ai-sdk.cjs.map +1 -1
- package/dist/agents/ai-sdk.d.cts +1 -1
- package/dist/agents/ai-sdk.d.mts +1 -1
- package/dist/agents/ai-sdk.d.ts +1 -1
- package/dist/agents/bub-install-spec.cjs +19 -5
- package/dist/agents/bub-install-spec.cjs.map +1 -1
- package/dist/agents/bub-install-spec.d.cts +9 -2
- package/dist/agents/bub-install-spec.d.mts +9 -2
- package/dist/agents/bub-install-spec.d.ts +9 -2
- package/dist/agents/bub-install-spec.js +14 -12
- package/dist/agents/bub.cjs +10 -6
- package/dist/agents/bub.cjs.map +1 -1
- package/dist/agents/bub.d.cts +2 -2
- package/dist/agents/bub.d.mts +2 -2
- package/dist/agents/bub.d.ts +2 -2
- package/dist/agents/claude-code.cjs.map +1 -1
- package/dist/agents/claude-code.d.cts +2 -2
- package/dist/agents/claude-code.d.mts +2 -2
- package/dist/agents/claude-code.d.ts +2 -2
- package/dist/agents/codex.cjs +4 -4
- package/dist/agents/codex.cjs.map +1 -1
- package/dist/agents/codex.d.cts +3 -3
- package/dist/agents/codex.d.mts +3 -3
- package/dist/agents/codex.d.ts +3 -3
- package/dist/agents/coding-cli-versions.cjs +10 -1
- package/dist/agents/coding-cli-versions.cjs.map +1 -1
- package/dist/agents/coding-cli-versions.d.cts +8 -3
- package/dist/agents/coding-cli-versions.d.mts +8 -3
- package/dist/agents/coding-cli-versions.d.ts +8 -3
- package/dist/agents/coding-cli-versions.js +18 -12
- package/dist/agents/deepseek-harness.cjs +151 -0
- package/dist/agents/deepseek-harness.cjs.map +1 -0
- package/dist/agents/deepseek-harness.d.cts +14 -0
- package/dist/agents/deepseek-harness.d.mts +14 -0
- package/dist/agents/deepseek-harness.d.ts +14 -0
- package/dist/agents/deepseek-harness.js +7 -0
- package/dist/agents/deepseek-harness.js.map +1 -0
- package/dist/agents/exact-npm-plugins.cjs +28 -0
- package/dist/agents/exact-npm-plugins.cjs.map +1 -0
- package/dist/agents/exact-npm-plugins.d.cts +10 -0
- package/dist/agents/exact-npm-plugins.d.mts +10 -0
- package/dist/agents/exact-npm-plugins.d.ts +10 -0
- package/dist/agents/exact-npm-plugins.js +8 -0
- package/dist/agents/exact-npm-plugins.js.map +1 -0
- package/dist/agents/index.cjs +5 -1
- package/dist/agents/index.cjs.map +1 -1
- package/dist/agents/index.d.cts +4 -0
- package/dist/agents/index.d.mts +4 -0
- package/dist/agents/index.d.ts +4 -0
- package/dist/agents/index.js +54 -50
- package/dist/agents/index.mjs +54 -50
- package/dist/agents/omp.cjs +170 -0
- package/dist/agents/omp.cjs.map +1 -0
- package/dist/agents/omp.d.cts +14 -0
- package/dist/agents/omp.d.mts +14 -0
- package/dist/agents/omp.d.ts +14 -0
- package/dist/agents/omp.js +7 -0
- package/dist/agents/omp.js.map +1 -0
- package/dist/agents/openclaw.cjs +51 -2
- package/dist/agents/openclaw.cjs.map +1 -1
- package/dist/agents/openclaw.d.cts +2 -0
- package/dist/agents/openclaw.d.mts +2 -0
- package/dist/agents/openclaw.d.ts +2 -0
- package/dist/agents/types.cjs.map +1 -1
- package/dist/agents/types.d.cts +4 -4
- package/dist/agents/types.d.mts +4 -4
- package/dist/agents/types.d.ts +4 -4
- package/dist/agents/ui-message-stream.cjs +24 -7
- package/dist/agents/ui-message-stream.cjs.map +1 -1
- package/dist/analysis/api.cjs +28 -2
- package/dist/analysis/api.cjs.map +1 -1
- package/dist/analysis/api.d.cts +22 -1
- package/dist/analysis/api.d.mts +22 -1
- package/dist/analysis/api.d.ts +22 -1
- package/dist/analysis/api.js +8 -6
- package/dist/analysis/bindings.cjs +11 -18
- package/dist/analysis/bindings.cjs.map +1 -1
- package/dist/analysis/bindings.d.cts +177 -49
- package/dist/analysis/bindings.d.mts +177 -49
- package/dist/analysis/bindings.d.ts +177 -49
- package/dist/analysis/contracts.cjs +1 -0
- package/dist/analysis/contracts.cjs.map +1 -1
- package/dist/analysis/contracts.d.cts +43 -3
- package/dist/analysis/contracts.d.mts +43 -3
- package/dist/analysis/contracts.d.ts +43 -3
- package/dist/analysis/cost-projection.cjs +2 -1
- package/dist/analysis/cost-projection.cjs.map +1 -1
- package/dist/analysis/cost-projection.d.cts +1 -1
- package/dist/analysis/cost-projection.d.mts +1 -1
- package/dist/analysis/cost-projection.d.ts +1 -1
- package/dist/analysis/cost.cjs +13 -3
- package/dist/analysis/cost.cjs.map +1 -1
- package/dist/analysis/cost.d.cts +10 -3
- package/dist/analysis/cost.d.mts +10 -3
- package/dist/analysis/cost.d.ts +10 -3
- package/dist/analysis/experiment-groups.cjs +96 -0
- package/dist/analysis/experiment-groups.cjs.map +1 -0
- package/dist/analysis/experiment-groups.d.cts +9 -0
- package/dist/analysis/experiment-groups.d.mts +9 -0
- package/dist/analysis/experiment-groups.d.ts +9 -0
- package/dist/analysis/experiment-groups.js +10 -0
- package/dist/analysis/experiment-groups.js.map +1 -0
- package/dist/analysis/index.cjs +4 -1
- package/dist/analysis/index.cjs.map +1 -1
- package/dist/analysis/index.d.cts +4 -2
- package/dist/analysis/index.d.mts +4 -2
- package/dist/analysis/index.d.ts +4 -2
- package/dist/analysis/index.js +40 -36
- package/dist/analysis/index.mjs +40 -36
- package/dist/assertions/limits.cjs +4 -0
- package/dist/assertions/limits.cjs.map +1 -1
- package/dist/assertions/limits.d.cts +4 -0
- package/dist/assertions/limits.d.mts +4 -0
- package/dist/assertions/limits.d.ts +4 -0
- package/dist/assertions/match.cjs +63 -25
- package/dist/assertions/match.cjs.map +1 -1
- package/dist/assertions/match.d.cts +7 -0
- package/dist/assertions/match.d.mts +7 -0
- package/dist/assertions/match.d.ts +7 -0
- package/dist/assertions/record/attachment.cjs +32 -4
- package/dist/assertions/record/attachment.cjs.map +1 -1
- package/dist/assertions/record/diff.cjs +10 -4
- package/dist/assertions/record/diff.cjs.map +1 -1
- package/dist/assertions/record/producer.cjs +101 -4
- package/dist/assertions/record/producer.cjs.map +1 -1
- package/dist/assertions/record/producer.d.cts +4 -1
- package/dist/assertions/record/producer.d.mts +4 -1
- package/dist/assertions/record/producer.d.ts +4 -1
- package/dist/assertions/runtime.cjs +45 -5
- package/dist/assertions/runtime.cjs.map +1 -1
- package/dist/cli/record.cjs +113 -8
- package/dist/cli/record.cjs.map +1 -1
- package/dist/cli/record.d.cts +20 -1
- package/dist/cli/record.d.mts +20 -1
- package/dist/cli/record.d.ts +20 -1
- package/dist/cli/record.js +4 -2
- package/dist/cli.cjs +386 -31
- package/dist/cli.cjs.map +1 -1
- package/dist/cli.d.cts +10 -2
- package/dist/cli.d.mts +10 -2
- package/dist/cli.d.ts +10 -2
- package/dist/context/send-retry.cjs +4 -4
- package/dist/context/send-retry.cjs.map +1 -1
- package/dist/coordination/host/runtime.cjs +8 -30
- package/dist/coordination/host/runtime.cjs.map +1 -1
- package/dist/coordination/host/runtime.d.cts +3 -3
- package/dist/coordination/host/runtime.d.mts +3 -3
- package/dist/coordination/host/runtime.d.ts +3 -3
- package/dist/coordination/host/types.cjs.map +1 -1
- package/dist/coordination/host/types.d.cts +0 -5
- package/dist/coordination/host/types.d.mts +0 -5
- package/dist/coordination/host/types.d.ts +0 -5
- package/dist/coordination/platform/node.cjs +90 -9
- package/dist/coordination/platform/node.cjs.map +1 -1
- package/dist/define.cjs +25 -1
- package/dist/define.cjs.map +1 -1
- package/dist/experiment/host/index.cjs +1 -0
- package/dist/experiment/host/index.cjs.map +1 -1
- package/dist/i18n/en.cjs +26 -8
- package/dist/i18n/en.cjs.map +1 -1
- package/dist/i18n/en.d.cts +19 -6
- package/dist/i18n/en.d.mts +19 -6
- package/dist/i18n/en.d.ts +19 -6
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/o11y/parsers/hermes.cjs +1 -1
- package/dist/o11y/parsers/hermes.cjs.map +1 -1
- package/dist/o11y/prices.json +1 -1
- package/dist/o11y/record/families.cjs +12 -3
- package/dist/o11y/record/families.cjs.map +1 -1
- package/dist/o11y/record/families.d.cts +8 -8
- package/dist/o11y/record/families.d.mts +8 -8
- package/dist/o11y/record/families.d.ts +8 -8
- package/dist/o11y/record/family-projectors.d.cts +66 -18
- package/dist/o11y/record/family-projectors.d.mts +66 -18
- package/dist/o11y/record/family-projectors.d.ts +66 -18
- package/dist/o11y/record/family-writers.d.cts +11 -3
- package/dist/o11y/record/family-writers.d.mts +11 -3
- package/dist/o11y/record/family-writers.d.ts +11 -3
- package/dist/o11y/record/runner-producer.cjs +14 -4
- package/dist/o11y/record/runner-producer.cjs.map +1 -1
- package/dist/record/codec/core.d.cts +2 -2
- package/dist/record/codec/core.d.mts +2 -2
- package/dist/record/codec/core.d.ts +2 -2
- package/dist/record/family/catalog.d.cts +44 -12
- package/dist/record/family/catalog.d.mts +44 -12
- package/dist/record/family/catalog.d.ts +44 -12
- package/dist/record/family/index.js +128 -124
- package/dist/record/family/observability-v1.cjs +35 -0
- package/dist/record/family/observability-v1.cjs.map +1 -0
- package/dist/record/family/observability-v1.d.cts +3 -0
- package/dist/record/family/observability-v1.d.mts +3 -0
- package/dist/record/family/observability-v1.d.ts +3 -0
- package/dist/record/family/observability-v1.js +6 -0
- package/dist/record/family/observability-v1.js.map +1 -0
- package/dist/record/family/observability.cjs +58 -9
- package/dist/record/family/observability.cjs.map +1 -1
- package/dist/record/family/observability.d.cts +1014 -15
- package/dist/record/family/observability.d.mts +1014 -15
- package/dist/record/family/observability.d.ts +1014 -15
- package/dist/record/family/observability.js +22 -18
- package/dist/record/host/runtime.cjs +600 -31
- package/dist/record/host/runtime.cjs.map +1 -1
- package/dist/record/host/types.cjs.map +1 -1
- package/dist/record/host/types.d.cts +33 -9
- package/dist/record/host/types.d.mts +33 -9
- package/dist/record/host/types.d.ts +33 -9
- package/dist/record/maintenance/runtime.cjs +1 -2
- package/dist/record/maintenance/runtime.cjs.map +1 -1
- package/dist/record/model/core.cjs.map +1 -1
- package/dist/record/model/core.d.cts +1 -1
- package/dist/record/model/core.d.mts +1 -1
- package/dist/record/model/core.d.ts +1 -1
- package/dist/record/model/definition.d.cts +6 -6
- package/dist/record/model/definition.d.mts +6 -6
- package/dist/record/model/definition.d.ts +6 -6
- package/dist/record/model/identifiers.cjs +1 -1
- package/dist/record/model/identifiers.cjs.map +1 -1
- package/dist/record/model/identifiers.d.cts +1 -1
- package/dist/record/model/identifiers.d.mts +1 -1
- package/dist/record/model/identifiers.d.ts +1 -1
- package/dist/record/platform/node.cjs +159 -23
- package/dist/record/platform/node.cjs.map +1 -1
- package/dist/record/platform/services.cjs.map +1 -1
- package/dist/record/platform/services.d.cts +15 -2
- package/dist/record/platform/services.d.mts +15 -2
- package/dist/record/platform/services.d.ts +15 -2
- package/dist/record/reader/errors.cjs +37 -1
- package/dist/record/reader/errors.cjs.map +1 -1
- package/dist/record/reader/errors.d.cts +49 -1
- package/dist/record/reader/errors.d.mts +49 -1
- package/dist/record/reader/errors.d.ts +49 -1
- package/dist/record/reader/errors.js +22 -12
- package/dist/record/reader/format.cjs +76 -17
- package/dist/record/reader/format.cjs.map +1 -1
- package/dist/record/reader/format.d.cts +11 -4
- package/dist/record/reader/format.d.mts +11 -4
- package/dist/record/reader/format.d.ts +11 -4
- package/dist/record/reader/format.js +2 -0
- package/dist/record/reader/index.js +32 -18
- package/dist/record/reader/runtime.cjs +64 -0
- package/dist/record/reader/runtime.cjs.map +1 -1
- package/dist/record/reader/runtime.d.cts +15 -0
- package/dist/record/reader/runtime.d.mts +15 -0
- package/dist/record/reader/runtime.d.ts +15 -0
- package/dist/record/reader/runtime.js +2 -0
- package/dist/report/assets/styles.css +53 -29
- package/dist/report/built-in/analysis-values.cjs +21 -13
- package/dist/report/built-in/analysis-values.cjs.map +1 -1
- package/dist/report/built-in/analysis-values.d.cts +11 -22
- package/dist/report/built-in/analysis-values.d.mts +11 -22
- package/dist/report/built-in/analysis-values.d.ts +11 -22
- package/dist/report/built-in/analysis-values.js +4 -6
- package/dist/report/built-in/index.cjs +1 -3
- package/dist/report/built-in/index.cjs.map +1 -1
- package/dist/report/built-in/index.d.cts +1 -1
- package/dist/report/built-in/index.d.mts +1 -1
- package/dist/report/built-in/index.d.ts +1 -1
- package/dist/report/built-in/index.js +4 -8
- package/dist/report/built-in/index.mjs +4 -8
- package/dist/report/built-in/machine.cjs +0 -2
- package/dist/report/built-in/machine.cjs.map +1 -1
- package/dist/report/built-in/machine.d.cts +0 -2
- package/dist/report/built-in/machine.d.mts +0 -2
- package/dist/report/built-in/machine.d.ts +0 -2
- package/dist/report/built-in/result-components.cjs +49 -51
- package/dist/report/built-in/result-components.cjs.map +1 -1
- package/dist/report/built-in/result-components.d.cts +16 -17
- package/dist/report/built-in/result-components.d.mts +16 -17
- package/dist/report/built-in/result-components.d.ts +16 -17
- package/dist/report/built-in/result-components.js +0 -4
- package/dist/report/built-in/run-membership-overview.cjs +126 -17
- package/dist/report/built-in/run-membership-overview.cjs.map +1 -1
- package/dist/report/built-in/run-membership-overview.d.cts +14 -0
- package/dist/report/built-in/run-membership-overview.d.mts +14 -0
- package/dist/report/built-in/run-membership-overview.d.ts +14 -0
- package/dist/report/built-in/run-membership-overview.js +4 -2
- package/dist/report/built-in/standard.cjs +80 -45
- package/dist/report/built-in/standard.cjs.map +1 -1
- package/dist/report/built-in/standard.d.cts +19 -41
- package/dist/report/built-in/standard.d.mts +19 -41
- package/dist/report/built-in/standard.d.ts +19 -41
- package/dist/report/built-in/standard.js +6 -6
- package/dist/report/components/attempt-detail/compute.cjs +78 -2
- package/dist/report/components/attempt-detail/compute.cjs.map +1 -1
- package/dist/report/components/attempt-detail/compute.d.cts +1 -1
- package/dist/report/components/attempt-detail/compute.d.mts +1 -1
- package/dist/report/components/attempt-detail/compute.d.ts +1 -1
- package/dist/report/components/attempt-detail/content.cjs +1 -1
- package/dist/report/components/attempt-detail/content.cjs.map +1 -1
- package/dist/report/components/entity-lists/compute.cjs +42 -5
- package/dist/report/components/entity-lists/compute.cjs.map +1 -1
- package/dist/report/components/entity-lists/compute.d.cts +10 -8
- package/dist/report/components/entity-lists/compute.d.mts +10 -8
- package/dist/report/components/entity-lists/compute.d.ts +10 -8
- package/dist/report/components/entity-lists/content.cjs +31 -6
- package/dist/report/components/entity-lists/content.cjs.map +1 -1
- package/dist/report/components/entity-lists/index.cjs +9 -4
- package/dist/report/components/entity-lists/index.cjs.map +1 -1
- package/dist/report/components/entity-lists/index.d.cts +4 -7
- package/dist/report/components/entity-lists/index.d.mts +4 -7
- package/dist/report/components/entity-lists/index.d.ts +4 -7
- package/dist/report/components/summaries/compute.cjs +8 -1
- package/dist/report/components/summaries/compute.cjs.map +1 -1
- package/dist/report/components/summaries/compute.d.cts +9 -1
- package/dist/report/components/summaries/compute.d.mts +9 -1
- package/dist/report/components/summaries/compute.d.ts +9 -1
- package/dist/report/components/summaries/index.cjs +48 -4
- package/dist/report/components/summaries/index.cjs.map +1 -1
- package/dist/report/components/summaries/index.d.cts +7 -4
- package/dist/report/components/summaries/index.d.mts +7 -4
- package/dist/report/components/summaries/index.d.ts +7 -4
- package/dist/report/definition/cell.cjs +3 -0
- package/dist/report/definition/cell.cjs.map +1 -1
- package/dist/report/definition/cell.d.cts +2 -0
- package/dist/report/definition/cell.d.mts +2 -0
- package/dist/report/definition/cell.d.ts +2 -0
- package/dist/report/definition/primitives/chart.cjs +8 -5
- package/dist/report/definition/primitives/chart.cjs.map +1 -1
- package/dist/report/definition/primitives/points-dataset.cjs +1 -0
- package/dist/report/definition/primitives/points-dataset.cjs.map +1 -1
- package/dist/report/definition/primitives.cjs +15 -2
- package/dist/report/definition/primitives.cjs.map +1 -1
- package/dist/report/definition/report.cjs +27 -3
- package/dist/report/definition/report.cjs.map +1 -1
- package/dist/report/definition/report.d.cts +8 -0
- package/dist/report/definition/report.d.mts +8 -0
- package/dist/report/definition/report.d.ts +8 -0
- package/dist/report/execution/machine.cjs +30 -14
- package/dist/report/execution/machine.cjs.map +1 -1
- package/dist/report/execution/machine.d.cts +20 -10
- package/dist/report/execution/machine.d.mts +20 -10
- package/dist/report/execution/machine.d.ts +20 -10
- package/dist/report/execution/machine.js +6 -6
- package/dist/report/host/execute.cjs +25 -16
- package/dist/report/host/execute.cjs.map +1 -1
- package/dist/report/host/execute.d.cts +4 -0
- package/dist/report/host/execute.d.mts +4 -0
- package/dist/report/host/execute.d.ts +4 -0
- package/dist/report/host/from-record.cjs +22 -5
- package/dist/report/host/from-record.cjs.map +1 -1
- package/dist/report/host/machine.cjs +53 -11
- package/dist/report/host/machine.cjs.map +1 -1
- package/dist/report/host/site-runtime.cjs +9 -8
- package/dist/report/host/site-runtime.cjs.map +1 -1
- package/dist/report/host/site-runtime.d.cts +1 -1
- package/dist/report/host/site-runtime.d.mts +1 -1
- package/dist/report/host/site-runtime.d.ts +1 -1
- package/dist/report/host/static.cjs +56 -9
- package/dist/report/host/static.cjs.map +1 -1
- package/dist/report/index.cjs.map +1 -1
- package/dist/report/index.d.cts +1 -1
- package/dist/report/index.d.mts +1 -1
- package/dist/report/index.d.ts +1 -1
- package/dist/report/model/dataset.cjs +7 -2
- package/dist/report/model/dataset.cjs.map +1 -1
- package/dist/report/model/locale.cjs +2 -0
- package/dist/report/model/locale.cjs.map +1 -1
- package/dist/report/model/locale.d.cts +1 -0
- package/dist/report/model/locale.d.mts +1 -0
- package/dist/report/model/locale.d.ts +1 -0
- package/dist/report/model/metrics.cjs +3 -1
- package/dist/report/model/metrics.cjs.map +1 -1
- package/dist/report/model/pricing.cjs +16 -11
- package/dist/report/model/pricing.cjs.map +1 -1
- package/dist/report/react/styles.css +53 -29
- package/dist/runner/adoption.cjs +1 -0
- package/dist/runner/adoption.cjs.map +1 -1
- package/dist/runner/attempt.cjs +44 -5
- package/dist/runner/attempt.cjs.map +1 -1
- package/dist/runner/attempt.d.cts +13 -1
- package/dist/runner/attempt.d.mts +13 -1
- package/dist/runner/attempt.d.ts +13 -1
- package/dist/runner/config-identity.cjs +10 -2
- package/dist/runner/config-identity.cjs.map +1 -1
- package/dist/runner/config-identity.d.cts +4 -2
- package/dist/runner/config-identity.d.mts +4 -2
- package/dist/runner/config-identity.d.ts +4 -2
- package/dist/runner/feedback/human.cjs +298 -59
- package/dist/runner/feedback/human.cjs.map +1 -1
- package/dist/runner/feedback/json.cjs +14 -6
- package/dist/runner/feedback/json.cjs.map +1 -1
- package/dist/runner/feedback/json.d.cts +3 -2
- package/dist/runner/feedback/json.d.mts +3 -2
- package/dist/runner/feedback/json.d.ts +3 -2
- package/dist/runner/feedback/reducer.cjs +2 -0
- package/dist/runner/feedback/reducer.cjs.map +1 -1
- package/dist/runner/judge-config.cjs +1 -1
- package/dist/runner/judge-config.cjs.map +1 -1
- package/dist/runner/ledger.cjs +124 -12
- package/dist/runner/ledger.cjs.map +1 -1
- package/dist/runner/project-current.cjs +13 -5
- package/dist/runner/project-current.cjs.map +1 -1
- package/dist/runner/run.cjs +564 -256
- package/dist/runner/run.cjs.map +1 -1
- package/dist/runner/sandbox-pool.cjs +161 -30
- package/dist/runner/sandbox-pool.cjs.map +1 -1
- package/dist/runner/sandbox-pool.d.cts +34 -2
- package/dist/runner/sandbox-pool.d.mts +34 -2
- package/dist/runner/sandbox-pool.d.ts +34 -2
- package/dist/runner/shared-state-lease.cjs +803 -0
- package/dist/runner/shared-state-lease.cjs.map +1 -0
- package/dist/runner/shared-state-lease.d.cts +121 -0
- package/dist/runner/shared-state-lease.d.mts +121 -0
- package/dist/runner/shared-state-lease.d.ts +121 -0
- package/dist/runner/shared-state-lease.js +24 -0
- package/dist/runner/shared-state-lease.js.map +1 -0
- package/dist/runner/teardown-registry.cjs +97 -34
- package/dist/runner/teardown-registry.cjs.map +1 -1
- package/dist/runner/teardown-registry.d.cts +27 -1
- package/dist/runner/teardown-registry.d.mts +27 -1
- package/dist/runner/teardown-registry.d.ts +27 -1
- package/dist/runner/teardown-registry.js +20 -16
- package/dist/runner/types.cjs.map +1 -1
- package/dist/runner/types.d.cts +31 -5
- package/dist/runner/types.d.mts +31 -5
- package/dist/runner/types.d.ts +31 -5
- package/dist/sample/analysis.cjs +249 -459
- package/dist/sample/analysis.cjs.map +1 -1
- package/dist/sample/capability.cjs +138 -7
- package/dist/sample/capability.cjs.map +1 -1
- package/dist/sample/capability.d.cts +3 -1
- package/dist/sample/capability.d.mts +3 -1
- package/dist/sample/capability.d.ts +3 -1
- package/dist/sample/capability.js +8 -6
- package/dist/sandbox/docker-agent-image.cjs +5 -1
- package/dist/sandbox/docker-agent-image.cjs.map +1 -1
- package/dist/sandbox/docker-agent-image.d.cts +2 -0
- package/dist/sandbox/docker-agent-image.d.mts +2 -0
- package/dist/sandbox/docker-agent-image.d.ts +2 -0
- package/dist/sandbox/docker-agent-image.js +14 -10
- package/dist/sandbox/docker-profile/schema.cjs +283 -534
- package/dist/sandbox/docker-profile/schema.cjs.map +1 -1
- package/dist/sandbox/docker-profile/schema.d.cts +10 -27
- package/dist/sandbox/docker-profile/schema.d.mts +10 -27
- package/dist/sandbox/docker-profile/schema.d.ts +10 -27
- package/dist/sandbox/e2b-agent-template.cjs +5 -2
- package/dist/sandbox/e2b-agent-template.cjs.map +1 -1
- package/dist/sandbox/index.cjs +4 -2
- package/dist/sandbox/index.cjs.map +1 -1
- package/dist/sandbox/index.d.cts +1 -1
- package/dist/sandbox/index.d.mts +1 -1
- package/dist/sandbox/index.d.ts +1 -1
- package/dist/sandbox/index.js +120 -116
- package/dist/sandbox/index.mjs +120 -116
- package/dist/sandbox/keep-registry.cjs +28 -66
- package/dist/sandbox/keep-registry.cjs.map +1 -1
- package/dist/sandbox/types.cjs.map +1 -1
- package/dist/sandbox/types.d.cts +1 -1
- package/dist/sandbox/types.d.mts +1 -1
- package/dist/sandbox/types.d.ts +1 -1
- package/dist/shared/aggregate.cjs +16 -6
- package/dist/shared/aggregate.cjs.map +1 -1
- package/dist/shared/aggregate.d.cts +12 -4
- package/dist/shared/aggregate.d.mts +12 -4
- package/dist/shared/aggregate.d.ts +12 -4
- package/dist/shared/turn-label.cjs +20 -2
- package/dist/shared/turn-label.cjs.map +1 -1
- package/dist/shared/turn-label.d.cts +2 -0
- package/dist/shared/turn-label.d.mts +2 -0
- package/dist/shared/turn-label.d.ts +2 -0
- package/dist/shared/turn-label.js +4 -2
- package/dist/vendor/remark/remark-gfm.cjs +7 -7
- package/dist/vendor/remark/remark-gfm.cjs.map +1 -1
- package/dist/vendor/remark/remark-parse.cjs +12 -12
- package/dist/vendor/remark/remark-parse.cjs.map +1 -1
- package/dist/vendor/remark/remark.cjs +13 -13
- package/dist/vendor/remark/remark.cjs.map +1 -1
- package/dist/view/server.cjs +6 -0
- package/dist/view/server.cjs.map +1 -1
- package/docs-site/images/hitl-handshake-zh.svg +3 -3
- package/docs-site/zh/examples/ai-agent-application.mdx +1 -1
- package/docs-site/zh/examples/coding-agent-extensions.mdx +1 -1
- package/docs-site/zh/examples/integrations/ai-sdk-v7.mdx +4 -3
- package/docs-site/zh/examples/integrations/claude-sdk.mdx +3 -3
- package/docs-site/zh/examples/integrations/codex-sdk.mdx +5 -5
- package/docs-site/zh/examples/integrations/langgraph.mdx +4 -4
- package/docs-site/zh/examples/integrations/pi-sdk.mdx +5 -5
- package/docs-site/zh/explanation/adapter.mdx +5 -5
- package/docs-site/zh/explanation/assert.mdx +7 -7
- package/docs-site/zh/explanation/drive.mdx +4 -2
- package/docs-site/zh/explanation/evals.mdx +10 -8
- package/docs-site/zh/explanation/experiment.mdx +2 -2
- package/docs-site/zh/explanation/hitl.mdx +9 -9
- package/docs-site/zh/explanation/judge.mdx +5 -5
- package/docs-site/zh/explanation/overview.mdx +3 -3
- package/docs-site/zh/explanation/runner.mdx +1 -1
- package/docs-site/zh/index.mdx +3 -3
- package/docs-site/zh/reference/builtin-agents.mdx +13 -13
- package/docs-site/zh/reference/capabilities.mdx +1 -1
- package/docs-site/zh/reference/cli.mdx +18 -12
- package/docs-site/zh/reference/define-agent.mdx +130 -5
- package/docs-site/zh/reference/define-config.mdx +2 -2
- package/docs-site/zh/reference/define-eval.mdx +4 -4
- package/docs-site/zh/reference/events.mdx +11 -11
- package/docs-site/zh/reference/official-adapters.mdx +6 -6
- package/docs-site/zh/reference/results-data.mdx +6 -0
- package/docs-site/zh/troubleshooting/debugging.mdx +1 -1
- package/docs-site/zh/troubleshooting/recover-after-kill.mdx +37 -5
- package/docs-site/zh/tutorials/accept-results.mdx +72 -0
- package/docs-site/zh/tutorials/agent-onboarding.mdx +6 -6
- package/docs-site/zh/tutorials/authoring.mdx +9 -13
- package/docs-site/zh/tutorials/ci-integration.mdx +6 -6
- package/docs-site/zh/tutorials/compare-runs.mdx +61 -0
- package/docs-site/zh/tutorials/concurrency.mdx +13 -12
- package/docs-site/zh/tutorials/configuration.mdx +4 -6
- package/docs-site/zh/tutorials/connect-your-agent.mdx +1 -1
- package/docs-site/zh/tutorials/control-run-cost.mdx +58 -0
- package/docs-site/zh/tutorials/criteria-files.mdx +2 -2
- package/docs-site/zh/tutorials/custom-reports.mdx +2 -2
- package/docs-site/zh/tutorials/debug-lifecycle-plan.mdx +46 -0
- package/docs-site/zh/tutorials/docker-in-docker.mdx +52 -43
- package/docs-site/zh/tutorials/eval-groups.mdx +6 -6
- package/docs-site/zh/tutorials/evaluation-kinds.mdx +3 -3
- package/docs-site/zh/tutorials/experiments.mdx +2 -3
- package/docs-site/zh/tutorials/handle-execution-failures.mdx +18 -10
- package/docs-site/zh/tutorials/install-custom-sandbox-agent.mdx +16 -8
- package/docs-site/zh/tutorials/nixos-managed-dind.mdx +160 -0
- package/docs-site/zh/tutorials/plugins.mdx +14 -0
- package/docs-site/zh/tutorials/rerun-and-cache.mdx +4 -2
- package/docs-site/zh/tutorials/sandbox-agent.mdx +17 -11
- package/docs-site/zh/tutorials/sandbox-providers.mdx +17 -13
- package/docs-site/zh/tutorials/sandbox-reuse.mdx +12 -19
- package/docs-site/zh/tutorials/select-and-preview.mdx +65 -0
- package/docs-site/zh/tutorials/verify-judge.mdx +78 -0
- package/docs-site/zh/tutorials/viewing-results.mdx +38 -1
- package/docs-site/zh/tutorials/write-experiment.mdx +7 -5
- package/docs-site/zh/tutorials/write-send.mdx +9 -8
- package/package.json +9 -5
- package/dist/report/built-in/overview.cjs +0 -44
- package/dist/report/built-in/overview.cjs.map +0 -1
- package/dist/report/built-in/overview.d.cts +0 -6
- package/dist/report/built-in/overview.d.mts +0 -6
- package/dist/report/built-in/overview.d.ts +0 -6
- package/dist/report/built-in/overview.js +0 -9
- package/dist/report/built-in/overview.js.map +0 -1
- package/dist/runner/gate-lease.cjs +0 -283
- package/dist/runner/gate-lease.cjs.map +0 -1
- package/dist/runner/gate-lease.d.cts +0 -62
- package/dist/runner/gate-lease.d.mts +0 -62
- package/dist/runner/gate-lease.d.ts +0 -62
- package/dist/runner/gate-lease.js +0 -22
- package/dist/runner/gate-lease.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observability.js","sourceRoot":"","sources":["observability.ts"],"names":[],"mappings":"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","sourcesContent":["import { createHash } from \"node:crypto\";\nimport { Schema } from \"effect\";\nimport { CanonicalProjectRelativePathSchema, Sha256DigestSchema, SourceItemIdSchema, } from \"../codec/identifiers.ts\";\nimport { RecordBlobRefSchema, type RecordBlobRef, } from \"../attachment/blob-ref.ts\";\nimport { recordAttachmentIssue, type RecordAttachmentIssue } from \"../attachment/errors.ts\";\nimport { defineRecordAttachment } from \"../definition/index.ts\";\nimport type { SourcesAttachment } from \"./sources.ts\";\nimport { MAX_COMMAND_INLINE_STREAM_BYTES, MAX_COMMAND_STREAM_BYTES, } from \"../../o11y/record/limits.ts\";\nimport { FixedAttachmentValueLimits, NonNegativeSafeIntegerSchema, EmptyArraySchema, PositiveSafeIntegerSchema, SafeIdentifierSchema, SafeTextSchema, isCanonicalIdentitySequence, } from \"./common.ts\";\nconst ObservabilityTargetSchema = Schema.Literal(\"conversation\", \"command\", \"usage\", \"timing\", \"diagnostic\");\nconst ObservabilityLimitationSchema = Schema.Union(Schema.Struct({\n code: Schema.Literal(\"capture-failed\", \"capture-interrupted\"),\n stage: Schema.Literal(\"adapter\", \"command-capture\", \"usage-capture\", \"timing-capture\", \"diagnostic-capture\", \"attempt-finalizer\", \"run-teardown\"),\n target: ObservabilityTargetSchema,\n}), Schema.Struct({\n code: Schema.Literal(\"collection-cap-reached\", \"unsupported-input\"),\n target: ObservabilityTargetSchema,\n omittedAtLeast: PositiveSafeIntegerSchema,\n}), Schema.Struct({\n code: Schema.Literal(\"text-truncated\", \"redacted\"),\n target: ObservabilityTargetSchema,\n replacementOrOmittedCount: PositiveSafeIntegerSchema,\n}), Schema.Struct({\n code: Schema.Literal(\"stream-truncated\"),\n commandId: SafeIdentifierSchema,\n stream: Schema.Literal(\"stdout\", \"stderr\"),\n retainedBytes: NonNegativeSafeIntegerSchema,\n omittedBytes: PositiveSafeIntegerSchema,\n}), Schema.Struct({\n code: Schema.Literal(\"invalid-utf8-replaced\", \"unsafe-control-stripped\"),\n commandId: SafeIdentifierSchema,\n stream: Schema.Literal(\"stdout\", \"stderr\"),\n count: PositiveSafeIntegerSchema,\n}));\nconst ObservabilityCollectionStateSchema = Schema.Union(Schema.Struct({\n state: Schema.Literal(\"complete\"),\n limitations: EmptyArraySchema,\n}), Schema.Struct({\n state: Schema.Literal(\"partial\"),\n limitations: Schema.NonEmptyArray(ObservabilityLimitationSchema),\n}));\nconst ConversationTurnSchema = Schema.Struct({\n turnId: SafeIdentifierSchema,\n sequence: PositiveSafeIntegerSchema,\n outcome: Schema.Literal(\"completed\", \"failed\", \"cancelled\", \"interrupted\"),\n});\nconst ConversationItemBase = {\n itemId: SafeIdentifierSchema,\n turnId: SafeIdentifierSchema,\n sequence: PositiveSafeIntegerSchema,\n} as const;\nconst ConversationItemSchema = Schema.Union(Schema.Struct({\n ...ConversationItemBase,\n kind: Schema.Literal(\"message\"),\n role: Schema.Literal(\"user\", \"assistant\"),\n text: SafeTextSchema,\n}), Schema.Struct({\n ...ConversationItemBase,\n kind: Schema.Literal(\"tool-call\"),\n callId: SafeIdentifierSchema,\n tool: SafeIdentifierSchema,\n inputSummary: SafeTextSchema,\n}), Schema.Struct({\n ...ConversationItemBase,\n kind: Schema.Literal(\"tool-result\"),\n callId: SafeIdentifierSchema,\n outcome: Schema.Literal(\"completed\", \"rejected\", \"failed\", \"cancelled\"),\n outputSummary: SafeTextSchema,\n}), Schema.Struct({\n ...ConversationItemBase,\n kind: Schema.Literal(\"thinking-summary\", \"compaction\", \"context-injection\"),\n summary: SafeTextSchema,\n}), Schema.Struct({\n ...ConversationItemBase,\n kind: Schema.Literal(\"subagent\"),\n state: Schema.Literal(\"started\", \"completed\", \"failed\"),\n label: SafeIdentifierSchema,\n summary: SafeTextSchema,\n}), Schema.Struct({\n ...ConversationItemBase,\n kind: Schema.Literal(\"input-request\"),\n state: Schema.Literal(\"requested\", \"answered\", \"cancelled\"),\n promptSummary: SafeTextSchema,\n responseSummary: Schema.NullOr(SafeTextSchema),\n}), Schema.Struct({\n ...ConversationItemBase,\n kind: Schema.Literal(\"skill-load\", \"conversation-error\"),\n code: SafeIdentifierSchema,\n summary: SafeTextSchema,\n}));\nexport const AttemptConversationCollectionSchema = Schema.Struct({\n collection: ObservabilityCollectionStateSchema,\n turns: Schema.Array(ConversationTurnSchema),\n items: Schema.Array(ConversationItemSchema),\n}).pipe(Schema.filter((value) => {\n if (!isCanonicalIdentitySequence(value.turns.map((turn) => turn.turnId)))\n return false;\n if (!isCanonicalIdentitySequence(value.items.map((item) => item.itemId)))\n return false;\n const turnIds = new Set(value.turns.map((turn) => turn.turnId));\n if (new Set(value.turns.map((turn) => turn.sequence)).size !== value.turns.length)\n return false;\n if (new Set(value.items.map((item) => item.sequence)).size !== value.items.length)\n return false;\n const callIds = new Map<string, {\n readonly turnId: string;\n readonly sequence: number;\n }>();\n for (const item of value.items) {\n if (!turnIds.has(item.turnId))\n return false;\n if (item.kind === \"tool-call\") {\n if (callIds.has(item.callId))\n return false;\n callIds.set(item.callId, { turnId: item.turnId, sequence: item.sequence });\n }\n }\n // Item arrays are canonically ordered by immutable item identity, not by\n // temporal sequence. Resolve every call first, then validate results by\n // their explicit sequence so a lexically earlier result id is not\n // mistaken for an impossible pair.\n const resultIds = new Set<string>();\n for (const item of value.items) {\n if (item.kind === \"tool-result\") {\n const call = callIds.get(item.callId);\n if (call === undefined || resultIds.has(item.callId) ||\n call.turnId !== item.turnId || item.sequence <= call.sequence)\n return false;\n resultIds.add(item.callId);\n }\n }\n return value.collection.state !== \"complete\" || [...callIds.keys()].every((id) => resultIds.has(id));\n}, {\n identifier: \"AttemptConversationCollection\",\n description: \"canonical turns/items with matched tool calls in a complete collection\",\n}));\nconst CommandStreamSchema = Schema.Struct({\n storage: Schema.Union(Schema.Struct({ kind: Schema.Literal(\"inline\"), text: SafeTextSchema }), Schema.Struct({ kind: Schema.Literal(\"blob\"), ref: RecordBlobRefSchema })),\n retainedBytes: NonNegativeSafeIntegerSchema,\n totalSafeUtf8Bytes: NonNegativeSafeIntegerSchema,\n /** Digest of the exact retained safe bytes, whether inline or blob-backed. */\n sha256: Sha256DigestSchema,\n}).pipe(Schema.filter((value) => {\n if (value.totalSafeUtf8Bytes < value.retainedBytes ||\n value.retainedBytes > MAX_COMMAND_STREAM_BYTES)\n return false;\n if (value.storage.kind !== \"inline\")\n return true;\n return value.retainedBytes <= MAX_COMMAND_INLINE_STREAM_BYTES &&\n new TextEncoder().encode(value.storage.text).byteLength === value.retainedBytes;\n}, {\n identifier: \"CommandStream\",\n description: \"a stream whose retained bytes cannot exceed the observed safe bytes\",\n}));\nconst CommandObservationSchema = Schema.Struct({\n commandId: SafeIdentifierSchema,\n manifest: Schema.Struct({\n phase: Schema.Literal(\"attempt.setup\", \"sandbox.prepare\", \"agent.ensure\", \"eval.run\", \"sandbox.command\", \"attempt.teardown\"),\n invocation: Schema.Union(Schema.Struct({\n kind: Schema.Literal(\"argv\"),\n executable: SafeTextSchema,\n arguments: Schema.Array(SafeTextSchema),\n }), Schema.Struct({ kind: Schema.Literal(\"shell\"), command: SafeTextSchema })),\n workingDirectory: Schema.Union(Schema.Struct({ kind: Schema.Literal(\"sandbox-default\") }), Schema.Struct({\n kind: Schema.Literal(\"project-relative\"),\n path: CanonicalProjectRelativePathSchema,\n }), Schema.Struct({ kind: Schema.Literal(\"redacted\") })),\n }),\n result: Schema.Struct({\n outcome: Schema.Union(Schema.Struct({\n kind: Schema.Literal(\"exited\"),\n exitCode: Schema.JsonNumber.pipe(Schema.filter((value) => Number.isSafeInteger(value))),\n }), Schema.Struct({\n kind: Schema.Literal(\"terminated\"),\n reason: Schema.Literal(\"timeout\", \"cancelled\", \"transport-lost\"),\n }), Schema.Struct({\n kind: Schema.Literal(\"not-started\"),\n reason: Schema.Literal(\"spawn-failed\", \"cancelled-before-start\"),\n })),\n stdout: CommandStreamSchema,\n stderr: CommandStreamSchema,\n }),\n});\nfunction hasStreamTruncationLimitation(limitations: readonly unknown[], commandId: string, stream: \"stdout\" | \"stderr\", retainedBytes: number, totalSafeUtf8Bytes: number): boolean {\n if (totalSafeUtf8Bytes === retainedBytes)\n return true;\n const omittedBytes = totalSafeUtf8Bytes - retainedBytes;\n return limitations.some((limitation) => {\n if (typeof limitation !== \"object\" || limitation === null)\n return false;\n const candidate = limitation as Record<string, unknown>;\n return candidate.code === \"stream-truncated\" &&\n candidate.commandId === commandId &&\n candidate.stream === stream &&\n candidate.retainedBytes === retainedBytes &&\n candidate.omittedBytes === omittedBytes;\n });\n}\nfunction hasCanonicalCommandsCollection(value: {\n readonly collection: {\n readonly limitations: readonly unknown[];\n };\n readonly commands: readonly Schema.Schema.Type<typeof CommandObservationSchema>[];\n}): boolean {\n if (value.commands.length > 256 ||\n !isCanonicalIdentitySequence(value.commands.map((command) => command.commandId)))\n return false;\n for (const command of value.commands) {\n for (const [streamName, stream] of [\n [\"stdout\", command.result.stdout],\n [\"stderr\", command.result.stderr],\n ] as const) {\n if ((stream.storage.kind === \"inline\") !==\n (stream.retainedBytes <= MAX_COMMAND_INLINE_STREAM_BYTES) ||\n !hasStreamTruncationLimitation(value.collection.limitations, command.commandId, streamName, stream.retainedBytes, stream.totalSafeUtf8Bytes))\n return false;\n }\n }\n return true;\n}\nexport const AttemptCommandsCollectionSchema = Schema.Struct({\n collection: ObservabilityCollectionStateSchema,\n commands: Schema.Array(CommandObservationSchema),\n}).pipe(Schema.filter(hasCanonicalCommandsCollection, {\n identifier: \"AttemptCommandsCollection\",\n description: \"canonical command identities\",\n}));\nconst UsageObservationSchema = Schema.Union(Schema.Struct({\n usageObservationId: SafeIdentifierSchema,\n kind: Schema.Literal(\"token-bucket\"),\n provider: SafeIdentifierSchema,\n bucket: Schema.Literal(\"input\", \"output\", \"cache-read\", \"cache-write\", \"reasoning\", \"other\"),\n tokens: NonNegativeSafeIntegerSchema,\n}), Schema.Struct({\n usageObservationId: SafeIdentifierSchema,\n kind: Schema.Literal(\"request\"),\n provider: SafeIdentifierSchema,\n requestKind: Schema.Literal(\"model\", \"tool\"),\n}), Schema.Struct({\n usageObservationId: SafeIdentifierSchema,\n kind: Schema.Literal(\"provider-cost\"),\n provider: SafeIdentifierSchema,\n amount: Schema.String.pipe(Schema.filter((value) => /^(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$/.test(value))),\n currency: Schema.String.pipe(Schema.filter((value) => /^[A-Z]{3}$/.test(value))),\n}));\nexport const AttemptUsageCollectionSchema = Schema.Struct({\n collection: ObservabilityCollectionStateSchema,\n observations: Schema.Array(UsageObservationSchema),\n}).pipe(Schema.filter((value) => isCanonicalIdentitySequence(value.observations.map((observation) => observation.usageObservationId)), { identifier: \"AttemptUsageCollection\", description: \"canonical usage identities\" }));\nconst AttemptTimingPhaseSchema = Schema.Literal(\"attempt.setup\", \"sandbox.prepare\", \"agent.ensure\", \"eval.run\", \"agent.send\", \"sandbox.command\", \"assertion.evaluate\", \"verdict.fold\", \"attempt.teardown\");\nconst RunTimingPhaseSchema = Schema.Literal(\"run.setup\", \"run.discovery\", \"run.plan\", \"run.dispatch\", \"run.teardown\");\ninterface TimingEntryForValidation {\n readonly intervalId: string;\n readonly parentIntervalId: string | null;\n readonly outcome: string;\n readonly startOffsetMs: number;\n readonly durationMs: number;\n}\ninterface TimingCollectionForValidation {\n readonly collection: {\n readonly state: string;\n };\n readonly intervals: readonly TimingEntryForValidation[];\n}\nfunction isTimingEntryForValidation(value: unknown): value is TimingEntryForValidation {\n return (typeof value === \"object\" &&\n value !== null &&\n \"intervalId\" in value &&\n typeof value.intervalId === \"string\" &&\n \"parentIntervalId\" in value &&\n (typeof value.parentIntervalId === \"string\" || value.parentIntervalId === null) &&\n \"outcome\" in value &&\n typeof value.outcome === \"string\" &&\n \"startOffsetMs\" in value &&\n typeof value.startOffsetMs === \"number\" &&\n \"durationMs\" in value &&\n typeof value.durationMs === \"number\");\n}\nfunction isTimingCollectionForValidation(value: unknown): value is TimingCollectionForValidation {\n return (typeof value === \"object\" &&\n value !== null &&\n \"collection\" in value &&\n typeof value.collection === \"object\" &&\n value.collection !== null &&\n \"state\" in value.collection &&\n typeof value.collection.state === \"string\" &&\n \"intervals\" in value &&\n Array.isArray(value.intervals) &&\n value.intervals.every(isTimingEntryForValidation));\n}\nfunction hasCanonicalTimingCollection(value: unknown): boolean {\n if (!isTimingCollectionForValidation(value))\n return false;\n if (!isCanonicalIdentitySequence(value.intervals.map((entry) => entry.intervalId))) {\n return false;\n }\n const byId = new Map(value.intervals.map((entry) => [entry.intervalId, entry] as const));\n for (const entry of value.intervals) {\n const end = entry.startOffsetMs + entry.durationMs;\n if (!Number.isSafeInteger(end))\n return false;\n if (entry.parentIntervalId === null)\n continue;\n const parent = byId.get(entry.parentIntervalId);\n if (parent === undefined)\n return false;\n const parentEnd = parent.startOffsetMs + parent.durationMs;\n if (!Number.isSafeInteger(parentEnd) || entry.startOffsetMs < parent.startOffsetMs ||\n end > parentEnd)\n return false;\n const visited = new Set<string>([entry.intervalId]);\n let cursor: TimingEntryForValidation | undefined = parent;\n while (cursor !== undefined && cursor.parentIntervalId !== null) {\n if (visited.has(cursor.intervalId))\n return false;\n visited.add(cursor.intervalId);\n cursor = byId.get(cursor.parentIntervalId);\n if (cursor === undefined)\n return false;\n }\n }\n return (value.collection.state !== \"complete\" ||\n value.intervals.every((entry) => entry.outcome !== \"unknown\"));\n}\nfunction timingCollectionSchema<Phase extends Schema.Schema.AnyNoContext>(phase: Phase) {\n const interval = Schema.Struct({\n intervalId: SafeIdentifierSchema,\n phase,\n label: SafeIdentifierSchema,\n startOffsetMs: NonNegativeSafeIntegerSchema,\n durationMs: NonNegativeSafeIntegerSchema,\n parentIntervalId: Schema.NullOr(SafeIdentifierSchema),\n outcome: Schema.Literal(\"completed\", \"failed\", \"cancelled\", \"interrupted\", \"unknown\"),\n });\n return Schema.Struct({\n collection: ObservabilityCollectionStateSchema,\n intervals: Schema.Array(interval),\n }).pipe(Schema.filter(hasCanonicalTimingCollection, { identifier: \"TimingCollection\", description: \"canonical timing intervals with valid parents\" }));\n}\nexport const AttemptTimingCollectionSchema = timingCollectionSchema(AttemptTimingPhaseSchema);\nexport const RunTimingCollectionSchema = timingCollectionSchema(RunTimingPhaseSchema);\nconst SourceFrameSchema = Schema.Struct({\n sourceItemId: SourceItemIdSchema,\n sha256: Sha256DigestSchema,\n start: Schema.Struct({\n line: PositiveSafeIntegerSchema,\n column: PositiveSafeIntegerSchema,\n }),\n end: Schema.Struct({\n line: PositiveSafeIntegerSchema,\n column: PositiveSafeIntegerSchema,\n }),\n});\ninterface DiagnosticForValidation {\n readonly diagnosticId: string;\n}\ninterface DiagnosticsCollectionForValidation {\n readonly diagnostics: readonly DiagnosticForValidation[];\n}\nfunction isDiagnosticForValidation(value: unknown): value is DiagnosticForValidation {\n return (typeof value === \"object\" &&\n value !== null &&\n \"diagnosticId\" in value &&\n typeof value.diagnosticId === \"string\");\n}\nfunction isDiagnosticsCollectionForValidation(value: unknown): value is DiagnosticsCollectionForValidation {\n return (typeof value === \"object\" &&\n value !== null &&\n \"diagnostics\" in value &&\n Array.isArray(value.diagnostics) &&\n value.diagnostics.every(isDiagnosticForValidation));\n}\nfunction hasCanonicalDiagnosticsCollection(value: unknown): boolean {\n return (isDiagnosticsCollectionForValidation(value) &&\n isCanonicalIdentitySequence(value.diagnostics.map((diagnostic) => diagnostic.diagnosticId)));\n}\nfunction diagnosticsCollectionSchema<Phase extends Schema.Schema.AnyNoContext>(phase: Phase) {\n const diagnostic = Schema.Struct({\n diagnosticId: SafeIdentifierSchema,\n kind: Schema.Literal(\"advisory\", \"execution-error\"),\n code: SafeIdentifierSchema,\n phase,\n summary: SafeTextSchema,\n causes: Schema.Array(Schema.Struct({ code: SafeIdentifierSchema, summary: SafeTextSchema })),\n redaction: Schema.Union(Schema.Struct({ state: Schema.Literal(\"none\") }), Schema.Struct({ state: Schema.Literal(\"applied\"), replacements: PositiveSafeIntegerSchema })),\n sourceFrame: Schema.NullOr(SourceFrameSchema),\n });\n return Schema.Struct({\n collection: ObservabilityCollectionStateSchema,\n diagnostics: Schema.Array(diagnostic),\n }).pipe(Schema.filter(hasCanonicalDiagnosticsCollection, { identifier: \"DiagnosticsCollection\", description: \"canonical diagnostic identities\" }));\n}\nexport const AttemptDiagnosticsCollectionSchema = diagnosticsCollectionSchema(Schema.Literal(\"attempt.setup\", \"sandbox.prepare\", \"agent.ensure\", \"eval.run\", \"agent.send\", \"sandbox.command\", \"assertion.evaluate\", \"verdict.fold\", \"attempt.teardown\"));\nexport const RunDiagnosticsCollectionSchema = diagnosticsCollectionSchema(Schema.Literal(\"run.setup\", \"run.discovery\", \"run.plan\", \"run.dispatch\", \"run.teardown\"));\n/** Exact Attempt owner payload for the one fixed Observability family. */\nexport const AttemptObservabilityAttachmentSchema = Schema.Struct({\n owner: Schema.propertySignature(Schema.Literal(\"attempt\")).pipe(Schema.fromKey(\"owner-kind\")),\n conversation: Schema.propertySignature(AttemptConversationCollectionSchema).pipe(Schema.fromKey(\"conversation-data\")),\n commands: Schema.propertySignature(AttemptCommandsCollectionSchema).pipe(Schema.fromKey(\"commands-data\")),\n usage: Schema.propertySignature(AttemptUsageCollectionSchema).pipe(Schema.fromKey(\"usage-data\")),\n timing: Schema.propertySignature(AttemptTimingCollectionSchema).pipe(Schema.fromKey(\"timing-data\")),\n diagnostics: Schema.propertySignature(AttemptDiagnosticsCollectionSchema).pipe(Schema.fromKey(\"diagnostics-data\")),\n});\n/** Exact Run owner payload for the same fixed Observability family. */\nexport const RunObservabilityAttachmentSchema = Schema.Struct({\n owner: Schema.propertySignature(Schema.Literal(\"run\")).pipe(Schema.fromKey(\"owner-kind\")),\n timing: Schema.propertySignature(RunTimingCollectionSchema).pipe(Schema.fromKey(\"timing-data\")),\n diagnostics: Schema.propertySignature(RunDiagnosticsCollectionSchema).pipe(Schema.fromKey(\"diagnostics-data\")),\n});\nexport type AttemptObservabilityAttachment = Schema.Schema.Type<typeof AttemptObservabilityAttachmentSchema>;\nexport type RunObservabilityAttachment = Schema.Schema.Type<typeof RunObservabilityAttachmentSchema>;\nexport type ObservabilityAttachment = AttemptObservabilityAttachment | RunObservabilityAttachment;\nfunction commandStreamBlobRefs(stream: Schema.Schema.Type<typeof CommandStreamSchema>): readonly RecordBlobRef[] {\n return stream.storage.kind === \"blob\" ? [stream.storage.ref] : [];\n}\n/** Complete closure projection for `niceeval.observability`. */\nexport function observabilityBlobRefs(payload: ObservabilityAttachment): readonly RecordBlobRef[] {\n if (!(\"commands\" in payload))\n return Object.freeze([]);\n return Object.freeze(payload.commands.commands.flatMap((command) => [\n ...commandStreamBlobRefs(command.result.stdout),\n ...commandStreamBlobRefs(command.result.stderr),\n ]));\n}\nfunction commandStreamIntegrityIssues(stream: Schema.Schema.Type<typeof CommandStreamSchema>, blobs: ReadonlyMap<RecordBlobRef, Uint8Array>, path: readonly string[]): readonly RecordAttachmentIssue[] {\n const bytes = stream.storage.kind === \"inline\"\n ? new TextEncoder().encode(stream.storage.text)\n : blobs.get(stream.storage.ref);\n if (bytes === undefined) {\n return Object.freeze([\n recordAttachmentIssue(\"record-attachment-materialized-invalid\", [...path, \"storage\"]),\n ]);\n }\n if (stream.storage.kind === \"blob\") {\n try {\n const text = new TextDecoder(\"utf-8\", { fatal: true }).decode(bytes);\n if (/[\\u0000-\\u0008\\u000b\\u000c\\u000e-\\u001f\\u007f]/.test(text)) {\n return Object.freeze([\n recordAttachmentIssue(\"record-attachment-materialized-invalid\", [...path, \"storage\"]),\n ]);\n }\n }\n catch {\n return Object.freeze([\n recordAttachmentIssue(\"record-attachment-materialized-invalid\", [...path, \"storage\"]),\n ]);\n }\n }\n if (bytes.byteLength !== stream.retainedBytes || stream.totalSafeUtf8Bytes < bytes.byteLength) {\n return Object.freeze([\n recordAttachmentIssue(\"record-attachment-materialized-invalid\", [...path, \"retainedBytes\"]),\n ]);\n }\n if (createHash(\"sha256\").update(bytes).digest(\"hex\") !== stream.sha256) {\n return Object.freeze([\n recordAttachmentIssue(\"record-attachment-materialized-invalid\", [...path, \"sha256\"]),\n ]);\n }\n return Object.freeze([]);\n}\n/** Own-closure checks shared by the writer seal and the reader materializer. */\nexport function observabilityAttachmentIntegrityIssues(payload: ObservabilityAttachment, blobs: readonly {\n readonly ref: RecordBlobRef;\n readonly bytes: Uint8Array;\n}[]): readonly RecordAttachmentIssue[] {\n if (!(\"commands\" in payload))\n return Object.freeze([]);\n const bytesByRef = new Map<RecordBlobRef, Uint8Array>(blobs.map((blob) => [blob.ref, blob.bytes] as const));\n const issues: RecordAttachmentIssue[] = [];\n for (const [index, command] of payload.commands.commands.entries()) {\n issues.push(...commandStreamIntegrityIssues(command.result.stdout, bytesByRef, [\"commands\", \"commands\", String(index), \"result\", \"stdout\"]));\n issues.push(...commandStreamIntegrityIssues(command.result.stderr, bytesByRef, [\"commands\", \"commands\", String(index), \"result\", \"stderr\"]));\n }\n return Object.freeze(issues);\n}\n/**\n * The Sources closure belongs to the origin Run, so this cross-family join is\n * deliberately performed by Host's common seal/read boundary rather than by\n * a family-local reader special case.\n */\nexport function observabilitySourceFrameIntegrityIssues(payload: ObservabilityAttachment, sources: SourcesAttachment): readonly RecordAttachmentIssue[] {\n const sourceById = new Map(sources.items.map((item) => [item.sourceItemId, item] as const));\n const diagnostics = payload.diagnostics.diagnostics;\n const issues: RecordAttachmentIssue[] = [];\n for (const [index, diagnostic] of diagnostics.entries()) {\n const frame = diagnostic.sourceFrame;\n if (frame === null)\n continue;\n const source = sourceById.get(frame.sourceItemId);\n if (source === undefined || source.sha256 !== frame.sha256) {\n issues.push(recordAttachmentIssue(\"record-attachment-materialized-invalid\", [\"diagnostics\", \"diagnostics\", String(index), \"sourceFrame\"]));\n continue;\n }\n const startsAfterEnd = frame.start.line > frame.end.line ||\n (frame.start.line === frame.end.line && frame.start.column > frame.end.column);\n if (startsAfterEnd) {\n issues.push(recordAttachmentIssue(\"record-attachment-materialized-invalid\", [\"diagnostics\", \"diagnostics\", String(index), \"sourceFrame\"]));\n }\n }\n return Object.freeze(issues);\n}\nconst AttemptObservabilityBlobBudget = Object.freeze({\n maximumBlobs: 4000,\n maximumBlobBytes: 16 * 1024 * 1024,\n maximumTotalBytes: 64 * 1024 * 1024,\n});\nconst RunObservabilityBlobBudget = Object.freeze({\n maximumBlobs: 256,\n maximumBlobBytes: 16 * 1024 * 1024,\n maximumTotalBytes: 16 * 1024 * 1024,\n});\n/** One family declaration owns both Observability owner payloads. */\nexport const observabilityRecordAttachment = defineRecordAttachment({\n family: \"niceeval.observability\",\n current: {\n schemaVersion: 1,\n owners: {\n attempt: {\n schema: AttemptObservabilityAttachmentSchema,\n limits: FixedAttachmentValueLimits,\n blobs: {\n refs: observabilityBlobRefs,\n budget: AttemptObservabilityBlobBudget,\n verify: observabilityAttachmentIntegrityIssues,\n },\n },\n run: {\n schema: RunObservabilityAttachmentSchema,\n limits: FixedAttachmentValueLimits,\n blobs: {\n refs: observabilityBlobRefs,\n budget: RunObservabilityBlobBudget,\n verify: observabilityAttachmentIntegrityIssues,\n },\n },\n },\n },\n});\n"]}
|
|
1
|
+
{"version":3,"file":"observability.js","sourceRoot":"","sources":["observability.ts"],"names":[],"mappings":"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","sourcesContent":["import { createHash } from \"node:crypto\";\nimport { Schema } from \"effect\";\nimport { CanonicalProjectRelativePathSchema, Sha256DigestSchema, SourceItemIdSchema, } from \"../codec/identifiers.ts\";\nimport { RecordBlobRefSchema, type RecordBlobRef, } from \"../attachment/blob-ref.ts\";\nimport { recordAttachmentIssue, type RecordAttachmentIssue } from \"../attachment/errors.ts\";\nimport { defineRecordAttachment } from \"../definition/index.ts\";\nimport type { SourcesAttachment } from \"./sources.ts\";\nimport { MAX_COMMAND_INLINE_STREAM_BYTES, MAX_COMMAND_STREAM_BYTES, } from \"../../o11y/record/limits.ts\";\nimport { isCanonicalTurnLabel } from \"../../shared/turn-label.ts\";\nimport { FixedAttachmentValueLimits, NonNegativeSafeIntegerSchema, EmptyArraySchema, PositiveSafeIntegerSchema, SafeIdentifierSchema, SafeTextSchema, isCanonicalIdentitySequence, } from \"./common.ts\";\nconst ObservabilityTargetSchema = Schema.Literal(\"conversation\", \"command\", \"usage\", \"timing\", \"diagnostic\");\nconst ObservabilityLimitationSchema = Schema.Union(Schema.Struct({\n code: Schema.Literal(\"capture-failed\", \"capture-interrupted\"),\n stage: Schema.Literal(\"adapter\", \"command-capture\", \"usage-capture\", \"timing-capture\", \"diagnostic-capture\", \"attempt-finalizer\", \"run-teardown\"),\n target: ObservabilityTargetSchema,\n}), Schema.Struct({\n code: Schema.Literal(\"collection-cap-reached\", \"unsupported-input\"),\n target: ObservabilityTargetSchema,\n omittedAtLeast: PositiveSafeIntegerSchema,\n}), Schema.Struct({\n code: Schema.Literal(\"text-truncated\", \"redacted\"),\n target: ObservabilityTargetSchema,\n replacementOrOmittedCount: PositiveSafeIntegerSchema,\n}), Schema.Struct({\n code: Schema.Literal(\"stream-truncated\"),\n commandId: SafeIdentifierSchema,\n stream: Schema.Literal(\"stdout\", \"stderr\"),\n retainedBytes: NonNegativeSafeIntegerSchema,\n omittedBytes: PositiveSafeIntegerSchema,\n}), Schema.Struct({\n code: Schema.Literal(\"invalid-utf8-replaced\", \"unsafe-control-stripped\"),\n commandId: SafeIdentifierSchema,\n stream: Schema.Literal(\"stdout\", \"stderr\"),\n count: PositiveSafeIntegerSchema,\n}));\nconst ObservabilityCollectionStateSchema = Schema.Union(Schema.Struct({\n state: Schema.Literal(\"complete\"),\n limitations: EmptyArraySchema,\n}), Schema.Struct({\n state: Schema.Literal(\"partial\"),\n limitations: Schema.NonEmptyArray(ObservabilityLimitationSchema),\n}));\nconst ConversationTurnSchema = Schema.Struct({\n turnId: SafeIdentifierSchema,\n sequence: PositiveSafeIntegerSchema,\n outcome: Schema.Literal(\"completed\", \"failed\", \"cancelled\", \"interrupted\"),\n});\nconst ConversationItemBase = {\n itemId: SafeIdentifierSchema,\n turnId: SafeIdentifierSchema,\n sequence: PositiveSafeIntegerSchema,\n} as const;\nconst ConversationItemSchema = Schema.Union(Schema.Struct({\n ...ConversationItemBase,\n kind: Schema.Literal(\"message\"),\n role: Schema.Literal(\"user\", \"assistant\"),\n text: SafeTextSchema,\n}), Schema.Struct({\n ...ConversationItemBase,\n kind: Schema.Literal(\"tool-call\"),\n callId: SafeIdentifierSchema,\n tool: SafeIdentifierSchema,\n inputSummary: SafeTextSchema,\n}), Schema.Struct({\n ...ConversationItemBase,\n kind: Schema.Literal(\"tool-result\"),\n callId: SafeIdentifierSchema,\n outcome: Schema.Literal(\"completed\", \"rejected\", \"failed\", \"cancelled\"),\n outputSummary: SafeTextSchema,\n}), Schema.Struct({\n ...ConversationItemBase,\n kind: Schema.Literal(\"thinking-summary\", \"compaction\", \"context-injection\"),\n summary: SafeTextSchema,\n}), Schema.Struct({\n ...ConversationItemBase,\n kind: Schema.Literal(\"subagent\"),\n state: Schema.Literal(\"started\", \"completed\", \"failed\"),\n label: SafeIdentifierSchema,\n summary: SafeTextSchema,\n}), Schema.Struct({\n ...ConversationItemBase,\n kind: Schema.Literal(\"input-request\"),\n state: Schema.Literal(\"requested\", \"answered\", \"cancelled\"),\n promptSummary: SafeTextSchema,\n responseSummary: Schema.NullOr(SafeTextSchema),\n}), Schema.Struct({\n ...ConversationItemBase,\n kind: Schema.Literal(\"skill-load\", \"conversation-error\"),\n code: SafeIdentifierSchema,\n summary: SafeTextSchema,\n}));\nexport const AttemptConversationCollectionSchema = Schema.Struct({\n collection: ObservabilityCollectionStateSchema,\n turns: Schema.Array(ConversationTurnSchema),\n items: Schema.Array(ConversationItemSchema),\n}).pipe(Schema.filter((value) => {\n // Conversation is temporal. Producers retain turns and items in their\n // observed sequence, so canonicality is unique identity plus a strictly\n // increasing sequence (not lexical ordering of ids such as turn-9 and\n // turn-10).\n if (new Set(value.turns.map((turn) => turn.turnId)).size !== value.turns.length)\n return false;\n if (new Set(value.items.map((item) => item.itemId)).size !== value.items.length)\n return false;\n const turnIds = new Set(value.turns.map((turn) => turn.turnId));\n if (new Set(value.turns.map((turn) => turn.sequence)).size !== value.turns.length)\n return false;\n if (new Set(value.items.map((item) => item.sequence)).size !== value.items.length)\n return false;\n if (value.turns.some((turn, index) => index > 0 && value.turns[index - 1]!.sequence >= turn.sequence))\n return false;\n if (value.items.some((item, index) => index > 0 && value.items[index - 1]!.sequence >= item.sequence))\n return false;\n const callIds = new Map<string, {\n readonly turnId: string;\n readonly sequence: number;\n }>();\n for (const item of value.items) {\n if (!turnIds.has(item.turnId))\n return false;\n if (item.kind === \"tool-call\") {\n if (callIds.has(item.callId))\n return false;\n callIds.set(item.callId, { turnId: item.turnId, sequence: item.sequence });\n }\n }\n // Resolve every call first, then validate results by their explicit\n // sequence.\n const resultIds = new Set<string>();\n for (const item of value.items) {\n if (item.kind === \"tool-result\") {\n const call = callIds.get(item.callId);\n if (call === undefined || resultIds.has(item.callId) ||\n call.turnId !== item.turnId || item.sequence <= call.sequence)\n return false;\n resultIds.add(item.callId);\n }\n }\n return value.collection.state !== \"complete\" || [...callIds.keys()].every((id) => resultIds.has(id));\n}, {\n identifier: \"AttemptConversationCollection\",\n description: \"canonical turns/items with matched tool calls in a complete collection\",\n}));\nconst CommandStreamSchema = Schema.Struct({\n storage: Schema.Union(Schema.Struct({ kind: Schema.Literal(\"inline\"), text: SafeTextSchema }), Schema.Struct({ kind: Schema.Literal(\"blob\"), ref: RecordBlobRefSchema })),\n retainedBytes: NonNegativeSafeIntegerSchema,\n totalSafeUtf8Bytes: NonNegativeSafeIntegerSchema,\n /** Digest of the exact retained safe bytes, whether inline or blob-backed. */\n sha256: Sha256DigestSchema,\n}).pipe(Schema.filter((value) => {\n if (value.totalSafeUtf8Bytes < value.retainedBytes ||\n value.retainedBytes > MAX_COMMAND_STREAM_BYTES)\n return false;\n if (value.storage.kind !== \"inline\")\n return true;\n return value.retainedBytes <= MAX_COMMAND_INLINE_STREAM_BYTES &&\n new TextEncoder().encode(value.storage.text).byteLength === value.retainedBytes;\n}, {\n identifier: \"CommandStream\",\n description: \"a stream whose retained bytes cannot exceed the observed safe bytes\",\n}));\nconst CommandObservationSchema = Schema.Struct({\n commandId: SafeIdentifierSchema,\n manifest: Schema.Struct({\n phase: Schema.Literal(\"attempt.setup\", \"sandbox.prepare\", \"agent.ensure\", \"eval.run\", \"sandbox.command\", \"attempt.teardown\"),\n invocation: Schema.Union(Schema.Struct({\n kind: Schema.Literal(\"argv\"),\n executable: SafeTextSchema,\n arguments: Schema.Array(SafeTextSchema),\n }), Schema.Struct({ kind: Schema.Literal(\"shell\"), command: SafeTextSchema })),\n workingDirectory: Schema.Union(Schema.Struct({ kind: Schema.Literal(\"sandbox-default\") }), Schema.Struct({\n kind: Schema.Literal(\"project-relative\"),\n path: CanonicalProjectRelativePathSchema,\n }), Schema.Struct({ kind: Schema.Literal(\"redacted\") })),\n }),\n result: Schema.Struct({\n outcome: Schema.Union(Schema.Struct({\n kind: Schema.Literal(\"exited\"),\n exitCode: Schema.JsonNumber.pipe(Schema.filter((value) => Number.isSafeInteger(value))),\n }), Schema.Struct({\n kind: Schema.Literal(\"terminated\"),\n reason: Schema.Literal(\"timeout\", \"cancelled\", \"transport-lost\"),\n }), Schema.Struct({\n kind: Schema.Literal(\"not-started\"),\n reason: Schema.Literal(\"spawn-failed\", \"cancelled-before-start\"),\n })),\n stdout: CommandStreamSchema,\n stderr: CommandStreamSchema,\n }),\n});\nfunction hasStreamTruncationLimitation(limitations: readonly unknown[], commandId: string, stream: \"stdout\" | \"stderr\", retainedBytes: number, totalSafeUtf8Bytes: number): boolean {\n if (totalSafeUtf8Bytes === retainedBytes)\n return true;\n const omittedBytes = totalSafeUtf8Bytes - retainedBytes;\n return limitations.some((limitation) => {\n if (typeof limitation !== \"object\" || limitation === null)\n return false;\n const candidate = limitation as Record<string, unknown>;\n return candidate.code === \"stream-truncated\" &&\n candidate.commandId === commandId &&\n candidate.stream === stream &&\n candidate.retainedBytes === retainedBytes &&\n candidate.omittedBytes === omittedBytes;\n });\n}\nfunction hasCanonicalCommandsCollection(value: {\n readonly collection: {\n readonly limitations: readonly unknown[];\n };\n readonly commands: readonly Schema.Schema.Type<typeof CommandObservationSchema>[];\n}): boolean {\n if (value.commands.length > 256 ||\n !isCanonicalIdentitySequence(value.commands.map((command) => command.commandId)))\n return false;\n for (const command of value.commands) {\n for (const [streamName, stream] of [\n [\"stdout\", command.result.stdout],\n [\"stderr\", command.result.stderr],\n ] as const) {\n if ((stream.storage.kind === \"inline\") !==\n (stream.retainedBytes <= MAX_COMMAND_INLINE_STREAM_BYTES) ||\n !hasStreamTruncationLimitation(value.collection.limitations, command.commandId, streamName, stream.retainedBytes, stream.totalSafeUtf8Bytes))\n return false;\n }\n }\n return true;\n}\nexport const AttemptCommandsCollectionSchema = Schema.Struct({\n collection: ObservabilityCollectionStateSchema,\n commands: Schema.Array(CommandObservationSchema),\n}).pipe(Schema.filter(hasCanonicalCommandsCollection, {\n identifier: \"AttemptCommandsCollection\",\n description: \"canonical command identities\",\n}));\nconst UsageObservationSchema = Schema.Union(Schema.Struct({\n usageObservationId: SafeIdentifierSchema,\n kind: Schema.Literal(\"token-bucket\"),\n provider: SafeIdentifierSchema,\n bucket: Schema.Literal(\"input\", \"output\", \"cache-read\", \"cache-write\", \"reasoning\", \"other\"),\n tokens: NonNegativeSafeIntegerSchema,\n}), Schema.Struct({\n usageObservationId: SafeIdentifierSchema,\n kind: Schema.Literal(\"request\"),\n provider: SafeIdentifierSchema,\n requestKind: Schema.Literal(\"model\", \"tool\"),\n}), Schema.Struct({\n usageObservationId: SafeIdentifierSchema,\n kind: Schema.Literal(\"provider-cost\"),\n provider: SafeIdentifierSchema,\n amount: Schema.String.pipe(Schema.filter((value) => /^(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$/.test(value))),\n currency: Schema.String.pipe(Schema.filter((value) => /^[A-Z]{3}$/.test(value))),\n}));\nexport const AttemptUsageCollectionSchema = Schema.Struct({\n collection: ObservabilityCollectionStateSchema,\n observations: Schema.Array(UsageObservationSchema),\n}).pipe(Schema.filter((value) => isCanonicalIdentitySequence(value.observations.map((observation) => observation.usageObservationId)), { identifier: \"AttemptUsageCollection\", description: \"canonical usage identities\" }));\nconst AttemptTimingPhaseSchema = Schema.Literal(\"attempt.setup\", \"sandbox.prepare\", \"agent.ensure\", \"eval.run\", \"agent.send\", \"sandbox.command\", \"assertion.evaluate\", \"verdict.fold\", \"attempt.teardown\");\nconst RunTimingPhaseSchema = Schema.Literal(\"run.setup\", \"run.discovery\", \"run.plan\", \"run.dispatch\", \"run.teardown\");\ninterface TimingEntryForValidation {\n readonly intervalId: string;\n readonly parentIntervalId: string | null;\n readonly outcome: string;\n readonly startOffsetMs: number;\n readonly durationMs: number;\n}\ninterface TimingCollectionForValidation {\n readonly collection: {\n readonly state: string;\n };\n readonly intervals: readonly TimingEntryForValidation[];\n}\nfunction isTimingEntryForValidation(value: unknown): value is TimingEntryForValidation {\n return (typeof value === \"object\" &&\n value !== null &&\n \"intervalId\" in value &&\n typeof value.intervalId === \"string\" &&\n \"parentIntervalId\" in value &&\n (typeof value.parentIntervalId === \"string\" || value.parentIntervalId === null) &&\n \"outcome\" in value &&\n typeof value.outcome === \"string\" &&\n \"startOffsetMs\" in value &&\n typeof value.startOffsetMs === \"number\" &&\n \"durationMs\" in value &&\n typeof value.durationMs === \"number\");\n}\nfunction isTimingCollectionForValidation(value: unknown): value is TimingCollectionForValidation {\n return (typeof value === \"object\" &&\n value !== null &&\n \"collection\" in value &&\n typeof value.collection === \"object\" &&\n value.collection !== null &&\n \"state\" in value.collection &&\n typeof value.collection.state === \"string\" &&\n \"intervals\" in value &&\n Array.isArray(value.intervals) &&\n value.intervals.every(isTimingEntryForValidation));\n}\nfunction hasCanonicalTimingCollection(value: unknown): boolean {\n if (!isTimingCollectionForValidation(value))\n return false;\n if (!isCanonicalIdentitySequence(value.intervals.map((entry) => entry.intervalId))) {\n return false;\n }\n const byId = new Map(value.intervals.map((entry) => [entry.intervalId, entry] as const));\n for (const entry of value.intervals) {\n const end = entry.startOffsetMs + entry.durationMs;\n if (!Number.isSafeInteger(end))\n return false;\n if (entry.parentIntervalId === null)\n continue;\n const parent = byId.get(entry.parentIntervalId);\n if (parent === undefined)\n return false;\n const parentEnd = parent.startOffsetMs + parent.durationMs;\n if (!Number.isSafeInteger(parentEnd) || entry.startOffsetMs < parent.startOffsetMs ||\n end > parentEnd)\n return false;\n const visited = new Set<string>([entry.intervalId]);\n let cursor: TimingEntryForValidation | undefined = parent;\n while (cursor !== undefined && cursor.parentIntervalId !== null) {\n if (visited.has(cursor.intervalId))\n return false;\n visited.add(cursor.intervalId);\n cursor = byId.get(cursor.parentIntervalId);\n if (cursor === undefined)\n return false;\n }\n }\n return (value.collection.state !== \"complete\" ||\n value.intervals.every((entry) => entry.outcome !== \"unknown\"));\n}\nfunction timingCollectionSchema<Phase extends Schema.Schema.AnyNoContext>(phase: Phase) {\n const interval = Schema.Struct({\n intervalId: SafeIdentifierSchema,\n phase,\n label: SafeIdentifierSchema,\n startOffsetMs: NonNegativeSafeIntegerSchema,\n durationMs: NonNegativeSafeIntegerSchema,\n parentIntervalId: Schema.NullOr(SafeIdentifierSchema),\n outcome: Schema.Literal(\"completed\", \"failed\", \"cancelled\", \"interrupted\", \"unknown\"),\n });\n return Schema.Struct({\n collection: ObservabilityCollectionStateSchema,\n intervals: Schema.Array(interval),\n }).pipe(Schema.filter(hasCanonicalTimingCollection, { identifier: \"TimingCollection\", description: \"canonical timing intervals with valid parents\" }));\n}\nconst CanonicalTurnLabelSchema = Schema.String.pipe(Schema.filter(isCanonicalTurnLabel, {\n identifier: \"CanonicalTurnLabel\",\n description: \"a canonical turnN or sessionK/turnN timing label\",\n}));\nfunction attemptTimingCollectionSchema<Label extends Schema.Schema.AnyNoContext>(agentSendLabel: Label) {\n const intervalBase = {\n intervalId: SafeIdentifierSchema,\n startOffsetMs: NonNegativeSafeIntegerSchema,\n durationMs: NonNegativeSafeIntegerSchema,\n parentIntervalId: Schema.NullOr(SafeIdentifierSchema),\n outcome: Schema.Literal(\"completed\", \"failed\", \"cancelled\", \"interrupted\", \"unknown\"),\n } as const;\n const interval = Schema.Union(Schema.Struct({\n ...intervalBase,\n phase: Schema.Literal(\"agent.send\"),\n label: agentSendLabel,\n }), Schema.Struct({\n ...intervalBase,\n phase: Schema.Literal(\"attempt.setup\", \"sandbox.prepare\", \"agent.ensure\", \"eval.run\", \"sandbox.command\", \"assertion.evaluate\", \"verdict.fold\", \"attempt.teardown\"),\n label: SafeIdentifierSchema,\n }));\n return Schema.Struct({\n collection: ObservabilityCollectionStateSchema,\n intervals: Schema.Array(interval),\n }).pipe(Schema.filter(hasCanonicalTimingCollection, { identifier: \"TimingCollection\", description: \"canonical timing intervals with valid parents\" }));\n}\nexport const AttemptTimingCollectionSchema = attemptTimingCollectionSchema(Schema.Union(SafeIdentifierSchema, CanonicalTurnLabelSchema));\n/** Exact historical v1 timing shape: every label was a SafeIdentifier. */\nexport const AttemptTimingCollectionV1Schema = attemptTimingCollectionSchema(SafeIdentifierSchema);\nexport const RunTimingCollectionSchema = timingCollectionSchema(RunTimingPhaseSchema);\nconst SourceFrameSchema = Schema.Struct({\n sourceItemId: SourceItemIdSchema,\n sha256: Sha256DigestSchema,\n start: Schema.Struct({\n line: PositiveSafeIntegerSchema,\n column: PositiveSafeIntegerSchema,\n }),\n end: Schema.Struct({\n line: PositiveSafeIntegerSchema,\n column: PositiveSafeIntegerSchema,\n }),\n});\ninterface DiagnosticForValidation {\n readonly diagnosticId: string;\n}\ninterface DiagnosticsCollectionForValidation {\n readonly diagnostics: readonly DiagnosticForValidation[];\n}\nfunction isDiagnosticForValidation(value: unknown): value is DiagnosticForValidation {\n return (typeof value === \"object\" &&\n value !== null &&\n \"diagnosticId\" in value &&\n typeof value.diagnosticId === \"string\");\n}\nfunction isDiagnosticsCollectionForValidation(value: unknown): value is DiagnosticsCollectionForValidation {\n return (typeof value === \"object\" &&\n value !== null &&\n \"diagnostics\" in value &&\n Array.isArray(value.diagnostics) &&\n value.diagnostics.every(isDiagnosticForValidation));\n}\nfunction hasCanonicalDiagnosticsCollection(value: unknown): boolean {\n return (isDiagnosticsCollectionForValidation(value) &&\n isCanonicalIdentitySequence(value.diagnostics.map((diagnostic) => diagnostic.diagnosticId)));\n}\nfunction diagnosticsCollectionSchema<Phase extends Schema.Schema.AnyNoContext>(phase: Phase) {\n const diagnostic = Schema.Struct({\n diagnosticId: SafeIdentifierSchema,\n kind: Schema.Literal(\"advisory\", \"execution-error\"),\n code: SafeIdentifierSchema,\n phase,\n summary: SafeTextSchema,\n causes: Schema.Array(Schema.Struct({ code: SafeIdentifierSchema, summary: SafeTextSchema })),\n redaction: Schema.Union(Schema.Struct({ state: Schema.Literal(\"none\") }), Schema.Struct({ state: Schema.Literal(\"applied\"), replacements: PositiveSafeIntegerSchema })),\n sourceFrame: Schema.NullOr(SourceFrameSchema),\n });\n return Schema.Struct({\n collection: ObservabilityCollectionStateSchema,\n diagnostics: Schema.Array(diagnostic),\n }).pipe(Schema.filter(hasCanonicalDiagnosticsCollection, { identifier: \"DiagnosticsCollection\", description: \"canonical diagnostic identities\" }));\n}\nexport const AttemptDiagnosticsCollectionSchema = diagnosticsCollectionSchema(Schema.Literal(\"attempt.setup\", \"sandbox.prepare\", \"agent.ensure\", \"eval.run\", \"agent.send\", \"sandbox.command\", \"assertion.evaluate\", \"verdict.fold\", \"attempt.teardown\"));\nexport const RunDiagnosticsCollectionSchema = diagnosticsCollectionSchema(Schema.Literal(\"run.setup\", \"run.discovery\", \"run.plan\", \"run.dispatch\", \"run.teardown\"));\n/** Exact Attempt owner payload for the one fixed Observability family. */\nexport const AttemptObservabilityAttachmentSchema = Schema.Struct({\n owner: Schema.propertySignature(Schema.Literal(\"attempt\")).pipe(Schema.fromKey(\"owner-kind\")),\n conversation: Schema.propertySignature(AttemptConversationCollectionSchema).pipe(Schema.fromKey(\"conversation-data\")),\n commands: Schema.propertySignature(AttemptCommandsCollectionSchema).pipe(Schema.fromKey(\"commands-data\")),\n usage: Schema.propertySignature(AttemptUsageCollectionSchema).pipe(Schema.fromKey(\"usage-data\")),\n timing: Schema.propertySignature(AttemptTimingCollectionSchema).pipe(Schema.fromKey(\"timing-data\")),\n diagnostics: Schema.propertySignature(AttemptDiagnosticsCollectionSchema).pipe(Schema.fromKey(\"diagnostics-data\")),\n});\n/** Exact historical v1 payload; only the agent.send label domain differs from v2. */\nexport const AttemptObservabilityAttachmentV1Schema = Schema.Struct({\n owner: Schema.propertySignature(Schema.Literal(\"attempt\")).pipe(Schema.fromKey(\"owner-kind\")),\n conversation: Schema.propertySignature(AttemptConversationCollectionSchema).pipe(Schema.fromKey(\"conversation-data\")),\n commands: Schema.propertySignature(AttemptCommandsCollectionSchema).pipe(Schema.fromKey(\"commands-data\")),\n usage: Schema.propertySignature(AttemptUsageCollectionSchema).pipe(Schema.fromKey(\"usage-data\")),\n timing: Schema.propertySignature(AttemptTimingCollectionV1Schema).pipe(Schema.fromKey(\"timing-data\")),\n diagnostics: Schema.propertySignature(AttemptDiagnosticsCollectionSchema).pipe(Schema.fromKey(\"diagnostics-data\")),\n});\n/** Exact Run owner payload for the same fixed Observability family. */\nexport const RunObservabilityAttachmentSchema = Schema.Struct({\n owner: Schema.propertySignature(Schema.Literal(\"run\")).pipe(Schema.fromKey(\"owner-kind\")),\n timing: Schema.propertySignature(RunTimingCollectionSchema).pipe(Schema.fromKey(\"timing-data\")),\n diagnostics: Schema.propertySignature(RunDiagnosticsCollectionSchema).pipe(Schema.fromKey(\"diagnostics-data\")),\n});\nexport type AttemptObservabilityAttachment = Schema.Schema.Type<typeof AttemptObservabilityAttachmentSchema>;\nexport type RunObservabilityAttachment = Schema.Schema.Type<typeof RunObservabilityAttachmentSchema>;\nexport type ObservabilityAttachment = AttemptObservabilityAttachment | RunObservabilityAttachment;\nfunction commandStreamBlobRefs(stream: Schema.Schema.Type<typeof CommandStreamSchema>): readonly RecordBlobRef[] {\n return stream.storage.kind === \"blob\" ? [stream.storage.ref] : [];\n}\n/** Complete closure projection for `niceeval.observability`. */\nexport function observabilityBlobRefs(payload: ObservabilityAttachment): readonly RecordBlobRef[] {\n if (!(\"commands\" in payload))\n return Object.freeze([]);\n return Object.freeze(payload.commands.commands.flatMap((command) => [\n ...commandStreamBlobRefs(command.result.stdout),\n ...commandStreamBlobRefs(command.result.stderr),\n ]));\n}\nfunction commandStreamIntegrityIssues(stream: Schema.Schema.Type<typeof CommandStreamSchema>, blobs: ReadonlyMap<RecordBlobRef, Uint8Array>, path: readonly string[]): readonly RecordAttachmentIssue[] {\n const bytes = stream.storage.kind === \"inline\"\n ? new TextEncoder().encode(stream.storage.text)\n : blobs.get(stream.storage.ref);\n if (bytes === undefined) {\n return Object.freeze([\n recordAttachmentIssue(\"record-attachment-materialized-invalid\", [...path, \"storage\"]),\n ]);\n }\n if (stream.storage.kind === \"blob\") {\n try {\n const text = new TextDecoder(\"utf-8\", { fatal: true }).decode(bytes);\n if (/[\\u0000-\\u0008\\u000b\\u000c\\u000e-\\u001f\\u007f]/.test(text)) {\n return Object.freeze([\n recordAttachmentIssue(\"record-attachment-materialized-invalid\", [...path, \"storage\"]),\n ]);\n }\n }\n catch {\n return Object.freeze([\n recordAttachmentIssue(\"record-attachment-materialized-invalid\", [...path, \"storage\"]),\n ]);\n }\n }\n if (bytes.byteLength !== stream.retainedBytes || stream.totalSafeUtf8Bytes < bytes.byteLength) {\n return Object.freeze([\n recordAttachmentIssue(\"record-attachment-materialized-invalid\", [...path, \"retainedBytes\"]),\n ]);\n }\n if (createHash(\"sha256\").update(bytes).digest(\"hex\") !== stream.sha256) {\n return Object.freeze([\n recordAttachmentIssue(\"record-attachment-materialized-invalid\", [...path, \"sha256\"]),\n ]);\n }\n return Object.freeze([]);\n}\n/** Own-closure checks shared by the writer seal and the reader materializer. */\nexport function observabilityAttachmentIntegrityIssues(payload: ObservabilityAttachment, blobs: readonly {\n readonly ref: RecordBlobRef;\n readonly bytes: Uint8Array;\n}[]): readonly RecordAttachmentIssue[] {\n if (!(\"commands\" in payload))\n return Object.freeze([]);\n const bytesByRef = new Map<RecordBlobRef, Uint8Array>(blobs.map((blob) => [blob.ref, blob.bytes] as const));\n const issues: RecordAttachmentIssue[] = [];\n for (const [index, command] of payload.commands.commands.entries()) {\n issues.push(...commandStreamIntegrityIssues(command.result.stdout, bytesByRef, [\"commands\", \"commands\", String(index), \"result\", \"stdout\"]));\n issues.push(...commandStreamIntegrityIssues(command.result.stderr, bytesByRef, [\"commands\", \"commands\", String(index), \"result\", \"stderr\"]));\n }\n return Object.freeze(issues);\n}\n/**\n * The Sources closure belongs to the origin Run, so this cross-family join is\n * deliberately performed by Host's common seal/read boundary rather than by\n * a family-local reader special case.\n */\nexport function observabilitySourceFrameIntegrityIssues(payload: ObservabilityAttachment, sources: SourcesAttachment): readonly RecordAttachmentIssue[] {\n const sourceById = new Map(sources.items.map((item) => [item.sourceItemId, item] as const));\n const diagnostics = payload.diagnostics.diagnostics;\n const issues: RecordAttachmentIssue[] = [];\n for (const [index, diagnostic] of diagnostics.entries()) {\n const frame = diagnostic.sourceFrame;\n if (frame === null)\n continue;\n const source = sourceById.get(frame.sourceItemId);\n if (source === undefined || source.sha256 !== frame.sha256) {\n issues.push(recordAttachmentIssue(\"record-attachment-materialized-invalid\", [\"diagnostics\", \"diagnostics\", String(index), \"sourceFrame\"]));\n continue;\n }\n const startsAfterEnd = frame.start.line > frame.end.line ||\n (frame.start.line === frame.end.line && frame.start.column > frame.end.column);\n if (startsAfterEnd) {\n issues.push(recordAttachmentIssue(\"record-attachment-materialized-invalid\", [\"diagnostics\", \"diagnostics\", String(index), \"sourceFrame\"]));\n }\n }\n return Object.freeze(issues);\n}\nconst AttemptObservabilityBlobBudget = Object.freeze({\n maximumBlobs: 4000,\n maximumBlobBytes: 16 * 1024 * 1024,\n maximumTotalBytes: 64 * 1024 * 1024,\n});\nconst RunObservabilityBlobBudget = Object.freeze({\n maximumBlobs: 256,\n maximumBlobBytes: 16 * 1024 * 1024,\n maximumTotalBytes: 16 * 1024 * 1024,\n});\n/** One family declaration owns both Observability owner payloads. */\nexport const observabilityRecordAttachment = defineRecordAttachment({\n family: \"niceeval.observability\",\n current: {\n schemaVersion: 2,\n owners: {\n attempt: {\n schema: AttemptObservabilityAttachmentSchema,\n limits: FixedAttachmentValueLimits,\n blobs: {\n refs: observabilityBlobRefs,\n budget: AttemptObservabilityBlobBudget,\n verify: observabilityAttachmentIntegrityIssues,\n },\n },\n run: {\n schema: RunObservabilityAttachmentSchema,\n limits: FixedAttachmentValueLimits,\n blobs: {\n refs: observabilityBlobRefs,\n budget: RunObservabilityBlobBudget,\n verify: observabilityAttachmentIntegrityIssues,\n },\n },\n },\n },\n maintenance: () => __niceevalDynamicImport(\"./observability-v1.cjs\").then(({ observabilityV1Maintenance }) => observabilityV1Maintenance),\n adjacentMigrationLinks: Object.freeze([\n Object.freeze({ fromSchemaVersion: 1, toSchemaVersion: 2 }),\n ]),\n});\n"]}
|