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
package/dist/runner/types.d.cts
CHANGED
|
@@ -39,6 +39,8 @@ export interface ExperimentRunInfo {
|
|
|
39
39
|
sandboxPlansByEval: globalThis.Record<string, JsonValue>;
|
|
40
40
|
/** Sandbox 是否在同一次 Run 内复用。 */
|
|
41
41
|
sandboxReuse?: boolean;
|
|
42
|
+
/** 跨 Invocation 共享外部状态的互斥声明;只记录稳定、非凭据 key。 */
|
|
43
|
+
sharedState?: SharedStateConfig;
|
|
42
44
|
/** 解析后的 Judge 执行身份;只记录凭据选择器名,不记录凭据。 */
|
|
43
45
|
judge?: Pick<JudgeConfig, "model" | "baseUrl" | "apiKeyEnv" | "timeoutMs">;
|
|
44
46
|
/**
|
|
@@ -639,10 +641,10 @@ export interface EvalAuthorFields {
|
|
|
639
641
|
tags?: string[];
|
|
640
642
|
/**
|
|
641
643
|
* 这道题贡献的 Sandbox 声明层。省略等价于空 command-only layer,不提供隐式 template。
|
|
642
|
-
*
|
|
644
|
+
* 每个实际评估用例 × Experiment 配对必须恰好一方提供 template-bearing layer。
|
|
643
645
|
*/
|
|
644
646
|
sandbox?: SandboxLayer;
|
|
645
|
-
/**
|
|
647
|
+
/** 显式且不可变的评估用例 Plugin occurrence;不存在目录继承。 */
|
|
646
648
|
plugins?: readonly PluginInstance<"eval">[];
|
|
647
649
|
/** 声明 Judge capability;true 继承 Experiment/Config,对象同时声明并覆盖它们。 */
|
|
648
650
|
judge?: JudgeDeclaration;
|
|
@@ -788,6 +790,13 @@ export interface ExperimentHookContext extends ScopedFeedback {
|
|
|
788
790
|
}
|
|
789
791
|
/** Shared lifecycle callback shape for author and Experiment Plugin hooks. */
|
|
790
792
|
export type ExperimentHook = (ctx: ExperimentHookContext) => void | Promise<void>;
|
|
793
|
+
/**
|
|
794
|
+
* 保护同一项目内共享的外部可变状态的互斥声明。它只提供跨 Invocation 的独占,不存储
|
|
795
|
+
* 状态、不提供事务,也不协调不同机器;`key` 必须稳定且不含凭据,并进入配置身份。
|
|
796
|
+
*/
|
|
797
|
+
export interface SharedStateConfig {
|
|
798
|
+
readonly key: string;
|
|
799
|
+
}
|
|
791
800
|
/** Experiment 作者自行选择的字段;不包含路径 id 与 factory 品牌。 */
|
|
792
801
|
export interface ExperimentAuthorFields {
|
|
793
802
|
/** 一句话描述,展示在 view / CLI 里;纯说明,不影响调度或打分。 */
|
|
@@ -845,17 +854,27 @@ export interface ExperimentAuthorFields {
|
|
|
845
854
|
/** 同一 Run 内复用沙箱;这种运行与历史携带双向隔离。 */
|
|
846
855
|
sandboxReuse?: boolean;
|
|
847
856
|
/**
|
|
848
|
-
*
|
|
849
|
-
*
|
|
857
|
+
* 声明本 Experiment 需要独占的共享外部状态。相同 key 的 Invocation 在同一项目
|
|
858
|
+
* Coordination 域内从 Experiment/Sandbox setup 前一直互斥到 Sandbox teardown、
|
|
859
|
+
* provider finalizer 与 Experiment teardown 全部完成;等待者不会先创建 Sandbox,
|
|
860
|
+
* 取得租约后继续自己的 plan。它不是状态存储、事务或跨机器锁。
|
|
861
|
+
*/
|
|
862
|
+
sharedState?: SharedStateConfig;
|
|
863
|
+
/**
|
|
864
|
+
* 本实验的估算花费上限(USD)。调度器累计已完成 attempt 的 `estimatedCostUSD`;该值由
|
|
865
|
+
* model、token usage 与 runtime/config pricing table 计算,与 Provider / Adapter 回报的
|
|
866
|
+
* observed `usage.costUSD` 独立,后者不驱动 budget。估算到顶后跳过这个实验剩下未起飞的
|
|
867
|
+
* attempt 并上报一次 `run:budgetExceeded`(已在飞的 attempt 仍会跑完)。
|
|
850
868
|
*/
|
|
851
869
|
budget?: number;
|
|
852
870
|
/**
|
|
853
|
-
*
|
|
871
|
+
* 本 Invocation 内本实验自己的并发上限:调度器只对这个实验的 attempt 限流,同批其它实验不受影响,
|
|
854
872
|
* 仍按全局并发(CLI / env / config / 沙箱默认)跑。用于串行化有共享状态的实验
|
|
855
873
|
* (如跨 eval 累积记忆:`maxConcurrency: 1` 保证 attempt 按 eval 顺序一个个跑),
|
|
856
874
|
* 或给撞 provider 限额的实验单独降速。名额与 attempt 同生命周期:从沙箱创建前一直握到
|
|
857
875
|
* teardown 与沙箱销毁完成才归还,中途任何等待(含 turn 重试退避)都不松手——
|
|
858
876
|
* `maxConcurrency: 1` 因此是严格的临界区,不会被同实验的下一个 attempt 提前闯入。
|
|
877
|
+
* 它不跨 Invocation;跨 Invocation 的共享外部状态请声明 `sharedState`。
|
|
859
878
|
*/
|
|
860
879
|
maxConcurrency?: number;
|
|
861
880
|
/**
|
|
@@ -907,6 +926,7 @@ export interface ExperimentDefinition {
|
|
|
907
926
|
readonly sandbox?: SandboxLayer;
|
|
908
927
|
readonly plugins: readonly PluginInstance<"experiment">[];
|
|
909
928
|
readonly sandboxReuse: boolean;
|
|
929
|
+
readonly sharedState?: SharedStateConfig;
|
|
910
930
|
readonly budget?: number;
|
|
911
931
|
readonly maxConcurrency?: number;
|
|
912
932
|
readonly classifyFailure?: AttemptFailureClassifier;
|
|
@@ -1040,6 +1060,8 @@ export interface AgentRun {
|
|
|
1040
1060
|
/** Canonical, credential-free Experiment Plugin behavior projection. */
|
|
1041
1061
|
readonly pluginBehavior?: JsonValue;
|
|
1042
1062
|
readonly sandboxReuse?: boolean;
|
|
1063
|
+
/** 跨 Invocation 共享外部状态的互斥声明;值进入 configHash。 */
|
|
1064
|
+
readonly sharedState?: SharedStateConfig;
|
|
1043
1065
|
/** Experiment 声明的 judge 覆盖;与 Eval/Config 的逐字段解析在 pair 规划期完成。 */
|
|
1044
1066
|
readonly judge?: JudgeConfig;
|
|
1045
1067
|
/**
|
|
@@ -1115,6 +1137,8 @@ export interface RunOptions<RecordError = never, RecordRequirements = never> {
|
|
|
1115
1137
|
onCurrentRecordReusePlan?: (input: {
|
|
1116
1138
|
readonly reused: number;
|
|
1117
1139
|
readonly reusedFailures: readonly FailureDetail[];
|
|
1140
|
+
/** Draft identities become Human-visible only if the final receipt confirms publication. */
|
|
1141
|
+
readonly runIds: ReadonlyMap<string, string>;
|
|
1118
1142
|
}) => Effect.Effect<void, never>;
|
|
1119
1143
|
/**
|
|
1120
1144
|
* 已注册的 reporter,携带 name/required 元数据(见 `ReporterRegistration`)。这是内部编排
|
|
@@ -1370,6 +1394,8 @@ export interface InvocationCompletion {
|
|
|
1370
1394
|
* 断言一次)。
|
|
1371
1395
|
*/
|
|
1372
1396
|
export interface RunFeedbackState {
|
|
1397
|
+
/** Draft 期的 Experiment → Run 映射;Human 只在 receipt 确认对应 Run 已发布后使用。 */
|
|
1398
|
+
runIdsByExperiment: ReadonlyMap<string, string>;
|
|
1373
1399
|
total: number;
|
|
1374
1400
|
reused: number;
|
|
1375
1401
|
running: number;
|
package/dist/runner/types.d.mts
CHANGED
|
@@ -39,6 +39,8 @@ export interface ExperimentRunInfo {
|
|
|
39
39
|
sandboxPlansByEval: globalThis.Record<string, JsonValue>;
|
|
40
40
|
/** Sandbox 是否在同一次 Run 内复用。 */
|
|
41
41
|
sandboxReuse?: boolean;
|
|
42
|
+
/** 跨 Invocation 共享外部状态的互斥声明;只记录稳定、非凭据 key。 */
|
|
43
|
+
sharedState?: SharedStateConfig;
|
|
42
44
|
/** 解析后的 Judge 执行身份;只记录凭据选择器名,不记录凭据。 */
|
|
43
45
|
judge?: Pick<JudgeConfig, "model" | "baseUrl" | "apiKeyEnv" | "timeoutMs">;
|
|
44
46
|
/**
|
|
@@ -639,10 +641,10 @@ export interface EvalAuthorFields {
|
|
|
639
641
|
tags?: string[];
|
|
640
642
|
/**
|
|
641
643
|
* 这道题贡献的 Sandbox 声明层。省略等价于空 command-only layer,不提供隐式 template。
|
|
642
|
-
*
|
|
644
|
+
* 每个实际评估用例 × Experiment 配对必须恰好一方提供 template-bearing layer。
|
|
643
645
|
*/
|
|
644
646
|
sandbox?: SandboxLayer;
|
|
645
|
-
/**
|
|
647
|
+
/** 显式且不可变的评估用例 Plugin occurrence;不存在目录继承。 */
|
|
646
648
|
plugins?: readonly PluginInstance<"eval">[];
|
|
647
649
|
/** 声明 Judge capability;true 继承 Experiment/Config,对象同时声明并覆盖它们。 */
|
|
648
650
|
judge?: JudgeDeclaration;
|
|
@@ -788,6 +790,13 @@ export interface ExperimentHookContext extends ScopedFeedback {
|
|
|
788
790
|
}
|
|
789
791
|
/** Shared lifecycle callback shape for author and Experiment Plugin hooks. */
|
|
790
792
|
export type ExperimentHook = (ctx: ExperimentHookContext) => void | Promise<void>;
|
|
793
|
+
/**
|
|
794
|
+
* 保护同一项目内共享的外部可变状态的互斥声明。它只提供跨 Invocation 的独占,不存储
|
|
795
|
+
* 状态、不提供事务,也不协调不同机器;`key` 必须稳定且不含凭据,并进入配置身份。
|
|
796
|
+
*/
|
|
797
|
+
export interface SharedStateConfig {
|
|
798
|
+
readonly key: string;
|
|
799
|
+
}
|
|
791
800
|
/** Experiment 作者自行选择的字段;不包含路径 id 与 factory 品牌。 */
|
|
792
801
|
export interface ExperimentAuthorFields {
|
|
793
802
|
/** 一句话描述,展示在 view / CLI 里;纯说明,不影响调度或打分。 */
|
|
@@ -845,17 +854,27 @@ export interface ExperimentAuthorFields {
|
|
|
845
854
|
/** 同一 Run 内复用沙箱;这种运行与历史携带双向隔离。 */
|
|
846
855
|
sandboxReuse?: boolean;
|
|
847
856
|
/**
|
|
848
|
-
*
|
|
849
|
-
*
|
|
857
|
+
* 声明本 Experiment 需要独占的共享外部状态。相同 key 的 Invocation 在同一项目
|
|
858
|
+
* Coordination 域内从 Experiment/Sandbox setup 前一直互斥到 Sandbox teardown、
|
|
859
|
+
* provider finalizer 与 Experiment teardown 全部完成;等待者不会先创建 Sandbox,
|
|
860
|
+
* 取得租约后继续自己的 plan。它不是状态存储、事务或跨机器锁。
|
|
861
|
+
*/
|
|
862
|
+
sharedState?: SharedStateConfig;
|
|
863
|
+
/**
|
|
864
|
+
* 本实验的估算花费上限(USD)。调度器累计已完成 attempt 的 `estimatedCostUSD`;该值由
|
|
865
|
+
* model、token usage 与 runtime/config pricing table 计算,与 Provider / Adapter 回报的
|
|
866
|
+
* observed `usage.costUSD` 独立,后者不驱动 budget。估算到顶后跳过这个实验剩下未起飞的
|
|
867
|
+
* attempt 并上报一次 `run:budgetExceeded`(已在飞的 attempt 仍会跑完)。
|
|
850
868
|
*/
|
|
851
869
|
budget?: number;
|
|
852
870
|
/**
|
|
853
|
-
*
|
|
871
|
+
* 本 Invocation 内本实验自己的并发上限:调度器只对这个实验的 attempt 限流,同批其它实验不受影响,
|
|
854
872
|
* 仍按全局并发(CLI / env / config / 沙箱默认)跑。用于串行化有共享状态的实验
|
|
855
873
|
* (如跨 eval 累积记忆:`maxConcurrency: 1` 保证 attempt 按 eval 顺序一个个跑),
|
|
856
874
|
* 或给撞 provider 限额的实验单独降速。名额与 attempt 同生命周期:从沙箱创建前一直握到
|
|
857
875
|
* teardown 与沙箱销毁完成才归还,中途任何等待(含 turn 重试退避)都不松手——
|
|
858
876
|
* `maxConcurrency: 1` 因此是严格的临界区,不会被同实验的下一个 attempt 提前闯入。
|
|
877
|
+
* 它不跨 Invocation;跨 Invocation 的共享外部状态请声明 `sharedState`。
|
|
859
878
|
*/
|
|
860
879
|
maxConcurrency?: number;
|
|
861
880
|
/**
|
|
@@ -907,6 +926,7 @@ export interface ExperimentDefinition {
|
|
|
907
926
|
readonly sandbox?: SandboxLayer;
|
|
908
927
|
readonly plugins: readonly PluginInstance<"experiment">[];
|
|
909
928
|
readonly sandboxReuse: boolean;
|
|
929
|
+
readonly sharedState?: SharedStateConfig;
|
|
910
930
|
readonly budget?: number;
|
|
911
931
|
readonly maxConcurrency?: number;
|
|
912
932
|
readonly classifyFailure?: AttemptFailureClassifier;
|
|
@@ -1040,6 +1060,8 @@ export interface AgentRun {
|
|
|
1040
1060
|
/** Canonical, credential-free Experiment Plugin behavior projection. */
|
|
1041
1061
|
readonly pluginBehavior?: JsonValue;
|
|
1042
1062
|
readonly sandboxReuse?: boolean;
|
|
1063
|
+
/** 跨 Invocation 共享外部状态的互斥声明;值进入 configHash。 */
|
|
1064
|
+
readonly sharedState?: SharedStateConfig;
|
|
1043
1065
|
/** Experiment 声明的 judge 覆盖;与 Eval/Config 的逐字段解析在 pair 规划期完成。 */
|
|
1044
1066
|
readonly judge?: JudgeConfig;
|
|
1045
1067
|
/**
|
|
@@ -1115,6 +1137,8 @@ export interface RunOptions<RecordError = never, RecordRequirements = never> {
|
|
|
1115
1137
|
onCurrentRecordReusePlan?: (input: {
|
|
1116
1138
|
readonly reused: number;
|
|
1117
1139
|
readonly reusedFailures: readonly FailureDetail[];
|
|
1140
|
+
/** Draft identities become Human-visible only if the final receipt confirms publication. */
|
|
1141
|
+
readonly runIds: ReadonlyMap<string, string>;
|
|
1118
1142
|
}) => Effect.Effect<void, never>;
|
|
1119
1143
|
/**
|
|
1120
1144
|
* 已注册的 reporter,携带 name/required 元数据(见 `ReporterRegistration`)。这是内部编排
|
|
@@ -1370,6 +1394,8 @@ export interface InvocationCompletion {
|
|
|
1370
1394
|
* 断言一次)。
|
|
1371
1395
|
*/
|
|
1372
1396
|
export interface RunFeedbackState {
|
|
1397
|
+
/** Draft 期的 Experiment → Run 映射;Human 只在 receipt 确认对应 Run 已发布后使用。 */
|
|
1398
|
+
runIdsByExperiment: ReadonlyMap<string, string>;
|
|
1373
1399
|
total: number;
|
|
1374
1400
|
reused: number;
|
|
1375
1401
|
running: number;
|
package/dist/runner/types.d.ts
CHANGED
|
@@ -39,6 +39,8 @@ export interface ExperimentRunInfo {
|
|
|
39
39
|
sandboxPlansByEval: globalThis.Record<string, JsonValue>;
|
|
40
40
|
/** Sandbox 是否在同一次 Run 内复用。 */
|
|
41
41
|
sandboxReuse?: boolean;
|
|
42
|
+
/** 跨 Invocation 共享外部状态的互斥声明;只记录稳定、非凭据 key。 */
|
|
43
|
+
sharedState?: SharedStateConfig;
|
|
42
44
|
/** 解析后的 Judge 执行身份;只记录凭据选择器名,不记录凭据。 */
|
|
43
45
|
judge?: Pick<JudgeConfig, "model" | "baseUrl" | "apiKeyEnv" | "timeoutMs">;
|
|
44
46
|
/**
|
|
@@ -639,10 +641,10 @@ export interface EvalAuthorFields {
|
|
|
639
641
|
tags?: string[];
|
|
640
642
|
/**
|
|
641
643
|
* 这道题贡献的 Sandbox 声明层。省略等价于空 command-only layer,不提供隐式 template。
|
|
642
|
-
*
|
|
644
|
+
* 每个实际评估用例 × Experiment 配对必须恰好一方提供 template-bearing layer。
|
|
643
645
|
*/
|
|
644
646
|
sandbox?: SandboxLayer;
|
|
645
|
-
/**
|
|
647
|
+
/** 显式且不可变的评估用例 Plugin occurrence;不存在目录继承。 */
|
|
646
648
|
plugins?: readonly PluginInstance<"eval">[];
|
|
647
649
|
/** 声明 Judge capability;true 继承 Experiment/Config,对象同时声明并覆盖它们。 */
|
|
648
650
|
judge?: JudgeDeclaration;
|
|
@@ -788,6 +790,13 @@ export interface ExperimentHookContext extends ScopedFeedback {
|
|
|
788
790
|
}
|
|
789
791
|
/** Shared lifecycle callback shape for author and Experiment Plugin hooks. */
|
|
790
792
|
export type ExperimentHook = (ctx: ExperimentHookContext) => void | Promise<void>;
|
|
793
|
+
/**
|
|
794
|
+
* 保护同一项目内共享的外部可变状态的互斥声明。它只提供跨 Invocation 的独占,不存储
|
|
795
|
+
* 状态、不提供事务,也不协调不同机器;`key` 必须稳定且不含凭据,并进入配置身份。
|
|
796
|
+
*/
|
|
797
|
+
export interface SharedStateConfig {
|
|
798
|
+
readonly key: string;
|
|
799
|
+
}
|
|
791
800
|
/** Experiment 作者自行选择的字段;不包含路径 id 与 factory 品牌。 */
|
|
792
801
|
export interface ExperimentAuthorFields {
|
|
793
802
|
/** 一句话描述,展示在 view / CLI 里;纯说明,不影响调度或打分。 */
|
|
@@ -845,17 +854,27 @@ export interface ExperimentAuthorFields {
|
|
|
845
854
|
/** 同一 Run 内复用沙箱;这种运行与历史携带双向隔离。 */
|
|
846
855
|
sandboxReuse?: boolean;
|
|
847
856
|
/**
|
|
848
|
-
*
|
|
849
|
-
*
|
|
857
|
+
* 声明本 Experiment 需要独占的共享外部状态。相同 key 的 Invocation 在同一项目
|
|
858
|
+
* Coordination 域内从 Experiment/Sandbox setup 前一直互斥到 Sandbox teardown、
|
|
859
|
+
* provider finalizer 与 Experiment teardown 全部完成;等待者不会先创建 Sandbox,
|
|
860
|
+
* 取得租约后继续自己的 plan。它不是状态存储、事务或跨机器锁。
|
|
861
|
+
*/
|
|
862
|
+
sharedState?: SharedStateConfig;
|
|
863
|
+
/**
|
|
864
|
+
* 本实验的估算花费上限(USD)。调度器累计已完成 attempt 的 `estimatedCostUSD`;该值由
|
|
865
|
+
* model、token usage 与 runtime/config pricing table 计算,与 Provider / Adapter 回报的
|
|
866
|
+
* observed `usage.costUSD` 独立,后者不驱动 budget。估算到顶后跳过这个实验剩下未起飞的
|
|
867
|
+
* attempt 并上报一次 `run:budgetExceeded`(已在飞的 attempt 仍会跑完)。
|
|
850
868
|
*/
|
|
851
869
|
budget?: number;
|
|
852
870
|
/**
|
|
853
|
-
*
|
|
871
|
+
* 本 Invocation 内本实验自己的并发上限:调度器只对这个实验的 attempt 限流,同批其它实验不受影响,
|
|
854
872
|
* 仍按全局并发(CLI / env / config / 沙箱默认)跑。用于串行化有共享状态的实验
|
|
855
873
|
* (如跨 eval 累积记忆:`maxConcurrency: 1` 保证 attempt 按 eval 顺序一个个跑),
|
|
856
874
|
* 或给撞 provider 限额的实验单独降速。名额与 attempt 同生命周期:从沙箱创建前一直握到
|
|
857
875
|
* teardown 与沙箱销毁完成才归还,中途任何等待(含 turn 重试退避)都不松手——
|
|
858
876
|
* `maxConcurrency: 1` 因此是严格的临界区,不会被同实验的下一个 attempt 提前闯入。
|
|
877
|
+
* 它不跨 Invocation;跨 Invocation 的共享外部状态请声明 `sharedState`。
|
|
859
878
|
*/
|
|
860
879
|
maxConcurrency?: number;
|
|
861
880
|
/**
|
|
@@ -907,6 +926,7 @@ export interface ExperimentDefinition {
|
|
|
907
926
|
readonly sandbox?: SandboxLayer;
|
|
908
927
|
readonly plugins: readonly PluginInstance<"experiment">[];
|
|
909
928
|
readonly sandboxReuse: boolean;
|
|
929
|
+
readonly sharedState?: SharedStateConfig;
|
|
910
930
|
readonly budget?: number;
|
|
911
931
|
readonly maxConcurrency?: number;
|
|
912
932
|
readonly classifyFailure?: AttemptFailureClassifier;
|
|
@@ -1040,6 +1060,8 @@ export interface AgentRun {
|
|
|
1040
1060
|
/** Canonical, credential-free Experiment Plugin behavior projection. */
|
|
1041
1061
|
readonly pluginBehavior?: JsonValue;
|
|
1042
1062
|
readonly sandboxReuse?: boolean;
|
|
1063
|
+
/** 跨 Invocation 共享外部状态的互斥声明;值进入 configHash。 */
|
|
1064
|
+
readonly sharedState?: SharedStateConfig;
|
|
1043
1065
|
/** Experiment 声明的 judge 覆盖;与 Eval/Config 的逐字段解析在 pair 规划期完成。 */
|
|
1044
1066
|
readonly judge?: JudgeConfig;
|
|
1045
1067
|
/**
|
|
@@ -1115,6 +1137,8 @@ export interface RunOptions<RecordError = never, RecordRequirements = never> {
|
|
|
1115
1137
|
onCurrentRecordReusePlan?: (input: {
|
|
1116
1138
|
readonly reused: number;
|
|
1117
1139
|
readonly reusedFailures: readonly FailureDetail[];
|
|
1140
|
+
/** Draft identities become Human-visible only if the final receipt confirms publication. */
|
|
1141
|
+
readonly runIds: ReadonlyMap<string, string>;
|
|
1118
1142
|
}) => Effect.Effect<void, never>;
|
|
1119
1143
|
/**
|
|
1120
1144
|
* 已注册的 reporter,携带 name/required 元数据(见 `ReporterRegistration`)。这是内部编排
|
|
@@ -1370,6 +1394,8 @@ export interface InvocationCompletion {
|
|
|
1370
1394
|
* 断言一次)。
|
|
1371
1395
|
*/
|
|
1372
1396
|
export interface RunFeedbackState {
|
|
1397
|
+
/** Draft 期的 Experiment → Run 映射;Human 只在 receipt 确认对应 Run 已发布后使用。 */
|
|
1398
|
+
runIdsByExperiment: ReadonlyMap<string, string>;
|
|
1373
1399
|
total: number;
|
|
1374
1400
|
reused: number;
|
|
1375
1401
|
running: number;
|