niceeval 0.17.1 → 0.19.0
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 +5 -2
- package/dist/adapter-usage.cjs.map +1 -1
- package/dist/adapter-usage.d.cts +1 -1
- package/dist/adapter-usage.d.mts +1 -1
- package/dist/adapter-usage.d.ts +1 -1
- package/dist/adapter.cjs +8 -3
- package/dist/adapter.cjs.map +1 -1
- package/dist/adapter.d.cts +26 -15
- package/dist/adapter.d.mts +26 -15
- package/dist/adapter.d.ts +26 -15
- package/dist/agents/{effect-runtime.cjs → agent-effects.cjs} +12 -18
- package/dist/agents/agent-effects.cjs.map +1 -0
- package/dist/agents/agent-effects.d.cts +23 -0
- package/dist/agents/agent-effects.d.mts +23 -0
- package/dist/agents/agent-effects.d.ts +23 -0
- package/dist/agents/agent-effects.js +16 -0
- package/dist/agents/agent-effects.js.map +1 -0
- package/dist/agents/ai-sdk.cjs +1 -1
- package/dist/agents/ai-sdk.cjs.map +1 -1
- package/dist/agents/bub.cjs +31 -18
- package/dist/agents/bub.cjs.map +1 -1
- package/dist/agents/bub.d.cts +9 -12
- package/dist/agents/bub.d.mts +9 -12
- package/dist/agents/bub.d.ts +9 -12
- package/dist/agents/claude-code-native.cjs +2 -2
- package/dist/agents/claude-code-native.cjs.map +1 -1
- package/dist/agents/claude-code.cjs +17 -11
- package/dist/agents/claude-code.cjs.map +1 -1
- package/dist/agents/claude-code.d.cts +11 -11
- package/dist/agents/claude-code.d.mts +11 -11
- package/dist/agents/claude-code.d.ts +11 -11
- package/dist/agents/codex-app-server.cjs +2 -2
- package/dist/agents/codex-app-server.cjs.map +1 -1
- package/dist/agents/codex.cjs +18 -12
- package/dist/agents/codex.cjs.map +1 -1
- package/dist/agents/codex.d.cts +12 -12
- package/dist/agents/codex.d.mts +12 -12
- package/dist/agents/codex.d.ts +12 -12
- package/dist/agents/deepseek-harness.cjs +2 -2
- package/dist/agents/deepseek-harness.cjs.map +1 -1
- package/dist/agents/hermes.cjs +3 -3
- package/dist/agents/hermes.cjs.map +1 -1
- package/dist/agents/index.cjs +3 -3
- package/dist/agents/index.cjs.map +1 -1
- package/dist/agents/index.d.cts +3 -3
- package/dist/agents/index.d.mts +3 -3
- package/dist/agents/index.d.ts +3 -3
- package/dist/agents/index.js +2 -2
- package/dist/agents/index.mjs +2 -2
- package/dist/agents/mcp.cjs.map +1 -1
- package/dist/agents/mcp.d.cts +2 -2
- package/dist/agents/mcp.d.mts +2 -2
- package/dist/agents/mcp.d.ts +2 -2
- package/dist/agents/omp.cjs +2 -2
- package/dist/agents/omp.cjs.map +1 -1
- package/dist/agents/openai-compat.cjs +2 -2
- package/dist/agents/openai-compat.cjs.map +1 -1
- package/dist/agents/openclaw.cjs +3 -3
- package/dist/agents/openclaw.cjs.map +1 -1
- package/dist/agents/opencode.cjs +16 -4
- package/dist/agents/opencode.cjs.map +1 -1
- package/dist/agents/plugin-extensions.cjs +71 -0
- package/dist/agents/plugin-extensions.cjs.map +1 -0
- package/dist/agents/plugin-extensions.d.cts +26 -0
- package/dist/agents/plugin-extensions.d.mts +26 -0
- package/dist/agents/plugin-extensions.d.ts +26 -0
- package/dist/agents/plugin-extensions.js +8 -0
- package/dist/agents/plugin-extensions.js.map +1 -0
- package/dist/agents/post-setup.cjs +14 -3
- package/dist/agents/post-setup.cjs.map +1 -1
- package/dist/agents/post-setup.d.cts +4 -2
- package/dist/agents/post-setup.d.mts +4 -2
- package/dist/agents/post-setup.d.ts +4 -2
- package/dist/agents/post-setup.js +8 -6
- package/dist/agents/sdk-streams.cjs +3 -3
- package/dist/agents/sdk-streams.cjs.map +1 -1
- package/dist/agents/{session-slot.cjs → session-key.cjs} +4 -4
- package/dist/agents/session-key.cjs.map +1 -0
- package/dist/agents/session-key.d.cts +12 -0
- package/dist/agents/session-key.d.mts +12 -0
- package/dist/agents/session-key.d.ts +12 -0
- package/dist/agents/session-key.js +6 -0
- package/dist/agents/session-key.js.map +1 -0
- package/dist/agents/shared.cjs +2 -2
- package/dist/agents/shared.cjs.map +1 -1
- package/dist/agents/shared.d.cts +4 -4
- package/dist/agents/shared.d.mts +4 -4
- package/dist/agents/shared.d.ts +4 -4
- package/dist/agents/skills.cjs.map +1 -1
- package/dist/agents/skills.d.cts +3 -3
- package/dist/agents/skills.d.mts +3 -3
- package/dist/agents/skills.d.ts +3 -3
- package/dist/agents/types.cjs.map +1 -1
- package/dist/agents/types.d.cts +55 -54
- package/dist/agents/types.d.mts +55 -54
- package/dist/agents/types.d.ts +55 -54
- package/dist/agents/ui-message-stream.cjs +4 -4
- package/dist/agents/ui-message-stream.cjs.map +1 -1
- package/dist/agents/unrecognized-events.cjs +32 -0
- package/dist/agents/unrecognized-events.cjs.map +1 -0
- package/dist/agents/unrecognized-events.d.cts +8 -0
- package/dist/agents/unrecognized-events.d.mts +8 -0
- package/dist/agents/unrecognized-events.d.ts +8 -0
- package/dist/agents/unrecognized-events.js +6 -0
- package/dist/agents/unrecognized-events.js.map +1 -0
- package/dist/assertions/api.cjs.map +1 -1
- package/dist/assertions/api.d.cts +3 -0
- package/dist/assertions/api.d.mts +3 -0
- package/dist/assertions/api.d.ts +3 -0
- package/dist/assertions/collection.cjs +1 -1
- package/dist/assertions/collection.cjs.map +1 -1
- package/dist/assertions/judge.cjs +1 -1
- package/dist/assertions/judge.cjs.map +1 -1
- package/dist/assertions/match.cjs +52 -21
- package/dist/assertions/match.cjs.map +1 -1
- package/dist/assertions/match.d.cts +16 -5
- package/dist/assertions/match.d.mts +16 -5
- package/dist/assertions/match.d.ts +16 -5
- package/dist/assertions/match.js +96 -94
- package/dist/assertions/measurements.cjs +61 -0
- package/dist/assertions/measurements.cjs.map +1 -0
- package/dist/assertions/measurements.d.cts +24 -0
- package/dist/assertions/measurements.d.mts +24 -0
- package/dist/assertions/measurements.d.ts +24 -0
- package/dist/assertions/measurements.js +8 -0
- package/dist/assertions/measurements.js.map +1 -0
- package/dist/assertions/numeric.cjs +2 -0
- package/dist/assertions/numeric.cjs.map +1 -1
- package/dist/assertions/numeric.d.cts +1 -1
- package/dist/assertions/numeric.d.mts +1 -1
- package/dist/assertions/numeric.d.ts +1 -1
- package/dist/assertions/quantity.cjs +42 -0
- package/dist/assertions/quantity.cjs.map +1 -0
- package/dist/assertions/quantity.d.cts +18 -0
- package/dist/assertions/quantity.d.mts +18 -0
- package/dist/assertions/quantity.d.ts +18 -0
- package/dist/assertions/quantity.js +22 -0
- package/dist/assertions/quantity.js.map +1 -0
- package/dist/assertions/record/attachment.cjs +2 -0
- package/dist/assertions/record/attachment.cjs.map +1 -1
- package/dist/assertions/record/codec.cjs +5 -1
- package/dist/assertions/record/codec.cjs.map +1 -1
- package/dist/assertions/record/model.cjs.map +1 -1
- package/dist/assertions/record/model.d.cts +3 -1
- package/dist/assertions/record/model.d.mts +3 -1
- package/dist/assertions/record/model.d.ts +3 -1
- package/dist/assertions/runtime.cjs +11 -6
- package/dist/assertions/runtime.cjs.map +1 -1
- package/dist/cli/program.cjs +3 -0
- package/dist/cli/program.cjs.map +1 -1
- package/dist/context/assert-first.cjs +6 -4
- package/dist/context/assert-first.cjs.map +1 -1
- package/dist/context/assert-first.d.cts +9 -3
- package/dist/context/assert-first.d.mts +9 -3
- package/dist/context/assert-first.d.ts +9 -3
- package/dist/context/notes.cjs +47 -0
- package/dist/context/notes.cjs.map +1 -0
- package/dist/context/notes.d.cts +10 -0
- package/dist/context/notes.d.mts +10 -0
- package/dist/context/notes.d.ts +10 -0
- package/dist/context/notes.js +6 -0
- package/dist/context/notes.js.map +1 -0
- package/dist/context/send-failures.cjs +1 -7
- package/dist/context/send-failures.cjs.map +1 -1
- package/dist/context/send-failures.d.cts +2 -3
- package/dist/context/send-failures.d.mts +2 -3
- package/dist/context/send-failures.d.ts +2 -3
- package/dist/context/send-retry.cjs +0 -1
- package/dist/context/send-retry.cjs.map +1 -1
- package/dist/context/send-retry.d.cts +1 -2
- package/dist/context/send-retry.d.mts +1 -2
- package/dist/context/send-retry.d.ts +1 -2
- package/dist/context/session.cjs +10 -17
- package/dist/context/session.cjs.map +1 -1
- package/dist/context/session.d.cts +4 -10
- package/dist/context/session.d.mts +4 -10
- package/dist/context/session.d.ts +4 -10
- package/dist/define.cjs +89 -64
- package/dist/define.cjs.map +1 -1
- package/dist/define.d.cts +3 -3
- package/dist/define.d.mts +3 -3
- package/dist/define.d.ts +3 -3
- package/dist/eval/cli/contribution.cjs +1 -1
- package/dist/eval/cli/contribution.cjs.map +1 -1
- package/dist/eval/host/index.cjs +1 -1
- package/dist/eval/host/index.cjs.map +1 -1
- package/dist/eval/record/evaluation.cjs +1 -1
- package/dist/eval/record/evaluation.cjs.map +1 -1
- package/dist/eval/record/membership-provenance.d.cts +3 -3
- package/dist/eval/record/membership-provenance.d.mts +3 -3
- package/dist/eval/record/membership-provenance.d.ts +3 -3
- package/dist/eval/record/score.cjs +2 -2
- package/dist/eval/record/score.cjs.map +1 -1
- package/dist/eval/record/sealed-assertion.cjs +1 -1
- package/dist/eval/record/sealed-assertion.cjs.map +1 -1
- package/dist/eval/record/verdict.cjs +2 -2
- package/dist/eval/record/verdict.cjs.map +1 -1
- package/dist/expect/index.cjs +13 -1
- package/dist/expect/index.cjs.map +1 -1
- package/dist/expect/index.d.cts +5 -1
- package/dist/expect/index.d.mts +5 -1
- package/dist/expect/index.d.ts +5 -1
- package/dist/expect/index.js +92 -72
- package/dist/expect/index.mjs +92 -72
- package/dist/experiment/host/cli/contribution.cjs +52 -39
- package/dist/experiment/host/cli/contribution.cjs.map +1 -1
- package/dist/experiment/host/cli/contribution.d.cts +18 -4
- package/dist/experiment/host/cli/contribution.d.mts +18 -4
- package/dist/experiment/host/cli/contribution.d.ts +18 -4
- package/dist/experiment/host/cli/contribution.js +2 -2
- package/dist/experiment/host/cli/debug-protocol.cjs +2 -2
- package/dist/experiment/host/cli/debug-protocol.cjs.map +1 -1
- package/dist/experiment/host/cli/debug-protocol.d.cts +2 -2
- package/dist/experiment/host/cli/debug-protocol.d.mts +2 -2
- package/dist/experiment/host/cli/debug-protocol.d.ts +2 -2
- package/dist/experiment/host/cli/output-protocol.cjs +1 -1
- package/dist/experiment/host/cli/output-protocol.cjs.map +1 -1
- package/dist/experiment/host/cli/output-protocol.d.cts +2 -2
- package/dist/experiment/host/cli/output-protocol.d.mts +2 -2
- package/dist/experiment/host/cli/output-protocol.d.ts +2 -2
- package/dist/experiment/host/current.cjs +2 -2
- package/dist/experiment/host/current.cjs.map +1 -1
- package/dist/experiment/host/index.cjs +1 -1
- package/dist/experiment/host/index.cjs.map +1 -1
- package/dist/experiment/host/operations.cjs +24 -23
- package/dist/experiment/host/operations.cjs.map +1 -1
- package/dist/experiment/host/runtime.cjs +11 -10
- package/dist/experiment/host/runtime.cjs.map +1 -1
- package/dist/experiment/host/runtime.d.cts +3 -3
- package/dist/experiment/host/runtime.d.mts +3 -3
- package/dist/experiment/host/runtime.d.ts +3 -3
- package/dist/experiment/host/teardown.cjs +4 -3
- package/dist/experiment/host/teardown.cjs.map +1 -1
- package/dist/experiment/host/teardown.d.cts +3 -3
- package/dist/experiment/host/teardown.d.mts +3 -3
- package/dist/experiment/host/teardown.d.ts +3 -3
- package/dist/experiment/host/types.cjs.map +1 -1
- package/dist/experiment/host/types.d.cts +19 -19
- package/dist/experiment/host/types.d.mts +19 -19
- package/dist/experiment/host/types.d.ts +19 -19
- package/dist/index.cjs +3 -19
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +4 -8
- package/dist/index.d.mts +4 -8
- package/dist/index.d.ts +4 -8
- package/dist/index.js +12 -34
- package/dist/index.mjs +12 -34
- package/dist/inspection/assertions.cjs +1 -1
- package/dist/inspection/assertions.cjs.map +1 -1
- package/dist/inspection/cli/contribution.cjs +8 -7
- package/dist/inspection/cli/contribution.cjs.map +1 -1
- package/dist/inspection/facts.cjs +4 -4
- package/dist/inspection/facts.cjs.map +1 -1
- package/dist/inspection/index.cjs +1 -5
- package/dist/inspection/index.cjs.map +1 -1
- package/dist/inspection/index.d.cts +1 -2
- package/dist/inspection/index.d.mts +1 -2
- package/dist/inspection/index.d.ts +1 -2
- package/dist/inspection/index.js +20 -26
- package/dist/inspection/lifecycle.cjs +7 -0
- package/dist/inspection/lifecycle.cjs.map +1 -0
- package/dist/inspection/lifecycle.d.cts +4 -0
- package/dist/inspection/lifecycle.d.mts +4 -0
- package/dist/inspection/lifecycle.d.ts +4 -0
- package/dist/inspection/lifecycle.js +6 -0
- package/dist/inspection/lifecycle.js.map +1 -0
- package/dist/inspection/notes.cjs +40 -0
- package/dist/inspection/notes.cjs.map +1 -0
- package/dist/inspection/notes.d.cts +12 -0
- package/dist/inspection/notes.d.mts +12 -0
- package/dist/inspection/notes.d.ts +12 -0
- package/dist/inspection/notes.js +8 -0
- package/dist/inspection/notes.js.map +1 -0
- package/dist/inspection/overview.cjs +12 -15
- package/dist/inspection/overview.cjs.map +1 -1
- package/dist/inspection/overview.d.cts +8 -6
- package/dist/inspection/overview.d.mts +8 -6
- package/dist/inspection/overview.d.ts +8 -6
- package/dist/inspection/planned-attempt.cjs +45 -0
- package/dist/inspection/planned-attempt.cjs.map +1 -0
- package/dist/inspection/planned-attempt.d.cts +109 -0
- package/dist/inspection/planned-attempt.d.mts +109 -0
- package/dist/inspection/planned-attempt.d.ts +109 -0
- package/dist/inspection/planned-attempt.js +24 -0
- package/dist/inspection/planned-attempt.js.map +1 -0
- package/dist/inspection/project-result.cjs +5 -5
- package/dist/inspection/project-result.cjs.map +1 -1
- package/dist/inspection/project-result.d.cts +58 -57
- package/dist/inspection/project-result.d.mts +58 -57
- package/dist/inspection/project-result.d.ts +58 -57
- package/dist/inspection/project-result.js +4 -4
- package/dist/inspection/project.cjs +3 -3
- package/dist/inspection/project.cjs.map +1 -1
- package/dist/inspection/protocol-values.cjs +1 -1
- package/dist/inspection/protocol-values.cjs.map +1 -1
- package/dist/inspection/protocol-values.d.cts +1 -1
- package/dist/inspection/protocol-values.d.mts +1 -1
- package/dist/inspection/protocol-values.d.ts +1 -1
- package/dist/inspection/protocol.cjs +8 -8
- package/dist/inspection/protocol.cjs.map +1 -1
- package/dist/inspection/protocol.d.cts +237 -219
- package/dist/inspection/protocol.d.mts +237 -219
- package/dist/inspection/protocol.d.ts +237 -219
- package/dist/inspection/public.cjs +1 -5
- package/dist/inspection/public.cjs.map +1 -1
- package/dist/inspection/public.d.cts +1 -2
- package/dist/inspection/public.d.mts +1 -2
- package/dist/inspection/public.d.ts +1 -2
- package/dist/inspection/public.js +14 -20
- package/dist/inspection/public.mjs +166 -129
- package/dist/inspection/query.cjs +1 -1
- package/dist/inspection/query.cjs.map +1 -1
- package/dist/inspection/results.cjs +61 -52
- package/dist/inspection/results.cjs.map +1 -1
- package/dist/inspection/results.d.cts +157 -140
- package/dist/inspection/results.d.mts +157 -140
- package/dist/inspection/results.d.ts +157 -140
- package/dist/inspection/select.cjs +33 -28
- package/dist/inspection/select.cjs.map +1 -1
- package/dist/inspection/source.cjs +1 -1
- package/dist/inspection/source.cjs.map +1 -1
- package/dist/inspection/sources.cjs +2 -2
- package/dist/inspection/sources.cjs.map +1 -1
- package/dist/inspection/trace.cjs +9 -8
- package/dist/inspection/trace.cjs.map +1 -1
- package/dist/inspection/trace.d.cts +4 -4
- package/dist/inspection/trace.d.mts +4 -4
- package/dist/inspection/trace.d.ts +4 -4
- package/dist/loaders/index.cjs +7 -279
- package/dist/loaders/index.cjs.map +1 -1
- package/dist/loaders/index.d.cts +2 -95
- package/dist/loaders/index.d.mts +2 -95
- package/dist/loaders/index.d.ts +2 -95
- package/dist/loaders/index.js +10 -12
- package/dist/loaders/index.mjs +10 -12
- package/dist/loaders/runtime.cjs +283 -0
- package/dist/loaders/runtime.cjs.map +1 -0
- package/dist/loaders/runtime.d.cts +95 -0
- package/dist/loaders/runtime.d.mts +95 -0
- package/dist/loaders/runtime.d.ts +95 -0
- package/dist/loaders/runtime.js +16 -0
- package/dist/loaders/runtime.js.map +1 -0
- package/dist/migrations/judge-provider.md +6 -6
- package/dist/{model-slots.cjs → model-roles.cjs} +26 -7
- package/dist/model-roles.cjs.map +1 -0
- package/dist/model-roles.d.cts +26 -0
- package/dist/model-roles.d.mts +26 -0
- package/dist/model-roles.d.ts +26 -0
- package/dist/model-roles.js +14 -0
- package/dist/model-roles.js.map +1 -0
- package/dist/o11y/adapter-usage-projection.cjs +9 -8
- package/dist/o11y/adapter-usage-projection.cjs.map +1 -1
- package/dist/o11y/adapter-usage-projection.d.cts +23 -15
- package/dist/o11y/adapter-usage-projection.d.mts +23 -15
- package/dist/o11y/adapter-usage-projection.d.ts +23 -15
- package/dist/o11y/cache-read.cjs +14 -14
- package/dist/o11y/cache-read.cjs.map +1 -1
- package/dist/o11y/cache-read.d.cts +5 -5
- package/dist/o11y/cache-read.d.mts +5 -5
- package/dist/o11y/cache-read.d.ts +5 -5
- package/dist/o11y/derive.cjs.map +1 -1
- package/dist/o11y/derive.d.cts +2 -2
- package/dist/o11y/derive.d.mts +2 -2
- package/dist/o11y/derive.d.ts +2 -2
- package/dist/o11y/eval-usage.cjs +9 -9
- package/dist/o11y/eval-usage.cjs.map +1 -1
- package/dist/o11y/eval-usage.d.cts +7 -7
- package/dist/o11y/eval-usage.d.mts +7 -7
- package/dist/o11y/eval-usage.d.ts +7 -7
- package/dist/o11y/parsers/bub.cjs +57 -81
- package/dist/o11y/parsers/bub.cjs.map +1 -1
- package/dist/o11y/parsers/index.cjs.map +1 -1
- package/dist/o11y/parsers/index.d.cts +2 -0
- package/dist/o11y/parsers/index.d.mts +2 -0
- package/dist/o11y/parsers/index.d.ts +2 -0
- package/dist/o11y/parsers/opencode.cjs +129 -217
- package/dist/o11y/parsers/opencode.cjs.map +1 -1
- package/dist/o11y/parsers/opencode.d.cts +2 -5
- package/dist/o11y/parsers/opencode.d.mts +2 -5
- package/dist/o11y/parsers/opencode.d.ts +2 -5
- package/dist/o11y/types.cjs.map +1 -1
- package/dist/o11y/types.d.cts +1 -1
- package/dist/o11y/types.d.mts +1 -1
- package/dist/o11y/types.d.ts +1 -1
- package/dist/plugin/contracts.cjs +170 -120
- package/dist/plugin/contracts.cjs.map +1 -1
- package/dist/plugin/contracts.d.cts +102 -90
- package/dist/plugin/contracts.d.mts +102 -90
- package/dist/plugin/contracts.d.ts +102 -90
- package/dist/plugin/contracts.js +16 -12
- package/dist/plugin/index.cjs.map +1 -1
- package/dist/plugin/index.d.cts +1 -1
- package/dist/plugin/index.d.mts +1 -1
- package/dist/plugin/index.d.ts +1 -1
- package/dist/plugin/link.cjs +69 -64
- package/dist/plugin/link.cjs.map +1 -1
- package/dist/plugin/link.d.cts +5 -3
- package/dist/plugin/link.d.mts +5 -3
- package/dist/plugin/link.d.ts +5 -3
- package/dist/plugin/link.js +12 -8
- package/dist/record/codec/seal-manifest.d.cts +3 -3
- package/dist/record/codec/seal-manifest.d.mts +3 -3
- package/dist/record/codec/seal-manifest.d.ts +3 -3
- package/dist/record/family/attempt-note/definition.cjs +12 -0
- package/dist/record/family/attempt-note/definition.cjs.map +1 -0
- package/dist/record/family/attempt-note/definition.d.cts +6 -0
- package/dist/record/family/attempt-note/definition.d.mts +6 -0
- package/dist/record/family/attempt-note/definition.d.ts +6 -0
- package/dist/record/family/attempt-note/definition.js +6 -0
- package/dist/record/family/attempt-note/definition.js.map +1 -0
- package/dist/record/family/attempt-note/persistence.cjs +10 -0
- package/dist/record/family/attempt-note/persistence.cjs.map +1 -0
- package/dist/record/family/attempt-note/persistence.d.cts +6 -0
- package/dist/record/family/attempt-note/persistence.d.mts +6 -0
- package/dist/record/family/attempt-note/persistence.d.ts +6 -0
- package/dist/record/family/attempt-note/persistence.js +6 -0
- package/dist/record/family/attempt-note/persistence.js.map +1 -0
- package/dist/record/family/attempt-note/schema.cjs +20 -0
- package/dist/record/family/attempt-note/schema.cjs.map +1 -0
- package/dist/record/family/attempt-note/schema.d.cts +21 -0
- package/dist/record/family/attempt-note/schema.d.mts +21 -0
- package/dist/record/family/attempt-note/schema.d.ts +21 -0
- package/dist/record/family/attempt-note/schema.js +10 -0
- package/dist/record/family/attempt-note/schema.js.map +1 -0
- package/dist/record/family/catalog.cjs +32 -29
- package/dist/record/family/catalog.cjs.map +1 -1
- package/dist/record/family/catalog.d.cts +7 -2
- package/dist/record/family/catalog.d.mts +7 -2
- package/dist/record/family/catalog.d.ts +7 -2
- package/dist/record/family/current.cjs +48 -45
- package/dist/record/family/current.cjs.map +1 -1
- package/dist/record/family/current.d.cts +15 -0
- package/dist/record/family/current.d.mts +15 -0
- package/dist/record/family/current.d.ts +15 -0
- package/dist/record/model/index.js +66 -64
- package/dist/record/model/run-context.cjs +9 -3
- package/dist/record/model/run-context.cjs.map +1 -1
- package/dist/record/model/run-context.d.cts +9 -2
- package/dist/record/model/run-context.d.mts +9 -2
- package/dist/record/model/run-context.d.ts +9 -2
- package/dist/record/model/run-context.js +8 -6
- package/dist/record/model/seal-manifest.d.cts +1 -1
- package/dist/record/model/seal-manifest.d.mts +1 -1
- package/dist/record/model/seal-manifest.d.ts +1 -1
- package/dist/run/cli/contribution.cjs +6 -32
- package/dist/run/cli/contribution.cjs.map +1 -1
- package/dist/run/host/runtime.cjs +1 -1
- package/dist/run/host/runtime.cjs.map +1 -1
- package/dist/run/storage/sqlite.cjs +7 -7
- package/dist/run/storage/sqlite.cjs.map +1 -1
- package/dist/runner/adapter-usage.cjs +5 -3
- package/dist/runner/adapter-usage.cjs.map +1 -1
- package/dist/runner/adapter-usage.d.cts +2 -2
- package/dist/runner/adapter-usage.d.mts +2 -2
- package/dist/runner/adapter-usage.d.ts +2 -2
- package/dist/runner/adoption.cjs +10 -12
- package/dist/runner/adoption.cjs.map +1 -1
- package/dist/runner/attempt-notes.cjs +8 -0
- package/dist/runner/attempt-notes.cjs.map +1 -0
- package/dist/runner/attempt-notes.d.cts +4 -0
- package/dist/runner/attempt-notes.d.mts +4 -0
- package/dist/runner/attempt-notes.d.ts +4 -0
- package/dist/runner/attempt-notes.js +8 -0
- package/dist/runner/attempt-notes.js.map +1 -0
- package/dist/runner/attempt.cjs +61 -73
- package/dist/runner/attempt.cjs.map +1 -1
- package/dist/runner/attempt.d.cts +3 -3
- package/dist/runner/attempt.d.mts +3 -3
- package/dist/runner/attempt.d.ts +3 -3
- package/dist/runner/command-plan.cjs +21 -26
- package/dist/runner/command-plan.cjs.map +1 -1
- package/dist/runner/command-plan.d.cts +4 -4
- package/dist/runner/command-plan.d.mts +4 -4
- package/dist/runner/command-plan.d.ts +4 -4
- package/dist/runner/command-plan.js +4 -4
- package/dist/runner/config-identity.cjs.map +1 -1
- package/dist/runner/config-identity.d.cts +2 -2
- package/dist/runner/config-identity.d.mts +2 -2
- package/dist/runner/config-identity.d.ts +2 -2
- package/dist/runner/discover.cjs +6 -6
- package/dist/runner/discover.cjs.map +1 -1
- package/dist/runner/eval-selection.cjs +15 -1
- package/dist/runner/eval-selection.cjs.map +1 -1
- package/dist/runner/eval-selection.d.cts +4 -0
- package/dist/runner/eval-selection.d.mts +4 -0
- package/dist/runner/eval-selection.d.ts +4 -0
- package/dist/runner/feedback/human.cjs +1 -1
- package/dist/runner/feedback/human.cjs.map +1 -1
- package/dist/runner/feedback/json.cjs +4 -2
- package/dist/runner/feedback/json.cjs.map +1 -1
- package/dist/runner/feedback/json.d.cts +1 -1
- package/dist/runner/feedback/json.d.mts +1 -1
- package/dist/runner/feedback/json.d.ts +1 -1
- package/dist/runner/feedback/sink.cjs +1 -1
- package/dist/runner/feedback/sink.cjs.map +1 -1
- package/dist/runner/feedback/sink.d.cts +1 -1
- package/dist/runner/feedback/sink.d.mts +1 -1
- package/dist/runner/feedback/sink.d.ts +1 -1
- package/dist/runner/fingerprint.cjs +1 -1
- package/dist/runner/fingerprint.cjs.map +1 -1
- package/dist/runner/lock.cjs +1 -3
- package/dist/runner/lock.cjs.map +1 -1
- package/dist/runner/lock.d.cts +0 -2
- package/dist/runner/lock.d.mts +0 -2
- package/dist/runner/lock.d.ts +0 -2
- package/dist/runner/lock.js +14 -16
- package/dist/runner/project-target.cjs.map +1 -1
- package/dist/runner/project-target.d.cts +2 -2
- package/dist/runner/project-target.d.mts +2 -2
- package/dist/runner/project-target.d.ts +2 -2
- package/dist/runner/record/attachments.cjs +2 -2
- package/dist/runner/record/attachments.cjs.map +1 -1
- package/dist/runner/record/planning.cjs +8 -2
- package/dist/runner/record/planning.cjs.map +1 -1
- package/dist/runner/record.cjs +2 -0
- package/dist/runner/record.cjs.map +1 -1
- package/dist/runner/report.cjs +3 -3
- package/dist/runner/report.cjs.map +1 -1
- package/dist/runner/report.d.cts +1 -1
- package/dist/runner/report.d.mts +1 -1
- package/dist/runner/report.d.ts +1 -1
- package/dist/runner/reuse-plan.cjs +2 -2
- package/dist/runner/reuse-plan.cjs.map +1 -1
- package/dist/runner/run.cjs +10 -45
- package/dist/runner/run.cjs.map +1 -1
- package/dist/runner/sandbox-pool.cjs +1 -2
- package/dist/runner/sandbox-pool.cjs.map +1 -1
- package/dist/runner/setup-prefix-preparation.cjs +1 -1
- package/dist/runner/setup-prefix-preparation.cjs.map +1 -1
- package/dist/runner/teardown-registry.cjs +2 -2
- package/dist/runner/teardown-registry.cjs.map +1 -1
- package/dist/runner/teardown-registry.d.cts +1 -1
- package/dist/runner/teardown-registry.d.mts +1 -1
- package/dist/runner/teardown-registry.d.ts +1 -1
- package/dist/runner/types.cjs +4 -4
- package/dist/runner/types.cjs.map +1 -1
- package/dist/runner/types.d.cts +64 -92
- package/dist/runner/types.d.mts +64 -92
- package/dist/runner/types.d.ts +64 -92
- package/dist/runner/types.js +2 -2
- package/dist/sandbox/action.cjs +1 -1
- package/dist/sandbox/action.cjs.map +1 -1
- package/dist/sandbox/cli/contribution.cjs +17 -14
- package/dist/sandbox/cli/contribution.cjs.map +1 -1
- package/dist/sandbox/cli/contribution.d.cts +1 -1
- package/dist/sandbox/cli/contribution.d.mts +1 -1
- package/dist/sandbox/cli/contribution.d.ts +1 -1
- package/dist/sandbox/commands.cjs +1 -1
- package/dist/sandbox/commands.cjs.map +1 -1
- package/dist/sandbox/commands.d.cts +1 -1
- package/dist/sandbox/commands.d.mts +1 -1
- package/dist/sandbox/commands.d.ts +1 -1
- package/dist/sandbox/compose.cjs +2 -2
- package/dist/sandbox/compose.cjs.map +1 -1
- package/dist/sandbox/docker-profile/registry.cjs +5 -10
- package/dist/sandbox/docker-profile/registry.cjs.map +1 -1
- package/dist/sandbox/docker-profile/registry.d.cts +0 -4
- package/dist/sandbox/docker-profile/registry.d.mts +0 -4
- package/dist/sandbox/docker-profile/registry.d.ts +0 -4
- package/dist/sandbox/docker-profile/registry.js +6 -14
- package/dist/sandbox/docker-profile/runtime.cjs +1 -1
- package/dist/sandbox/docker-profile/runtime.cjs.map +1 -1
- package/dist/sandbox/docker-profile/schema.cjs +12 -16
- package/dist/sandbox/docker-profile/schema.cjs.map +1 -1
- package/dist/sandbox/docker-profile/schema.d.cts +2 -6
- package/dist/sandbox/docker-profile/schema.d.mts +2 -6
- package/dist/sandbox/docker-profile/schema.d.ts +2 -6
- package/dist/sandbox/docker-profile/schema.js +24 -32
- package/dist/sandbox/incus.cjs +2 -2
- package/dist/sandbox/incus.cjs.map +1 -1
- package/dist/sandbox/index.cjs +4 -36
- package/dist/sandbox/index.cjs.map +1 -1
- package/dist/sandbox/index.d.cts +4 -8
- package/dist/sandbox/index.d.mts +4 -8
- package/dist/sandbox/index.d.ts +4 -8
- package/dist/sandbox/index.js +116 -174
- package/dist/sandbox/index.mjs +116 -174
- package/dist/sandbox/layer.cjs +3 -3
- package/dist/sandbox/layer.cjs.map +1 -1
- package/dist/sandbox/link.cjs +5 -0
- package/dist/sandbox/link.cjs.map +1 -1
- package/dist/sandbox/link.d.cts +3 -0
- package/dist/sandbox/link.d.mts +3 -0
- package/dist/sandbox/link.d.ts +3 -0
- package/dist/sandbox/runtime.cjs +9 -4
- package/dist/sandbox/runtime.cjs.map +1 -1
- package/dist/shared/failure-class.cjs +5 -5
- package/dist/shared/failure-class.cjs.map +1 -1
- package/dist/shared/failure-class.d.cts +4 -10
- package/dist/shared/failure-class.d.mts +4 -10
- package/dist/shared/failure-class.d.ts +4 -10
- package/dist/shared/types.cjs.map +1 -1
- package/dist/shared/types.d.cts +1 -1
- package/dist/shared/types.d.mts +1 -1
- package/dist/shared/types.d.ts +1 -1
- package/dist/show/contribution.cjs +17 -2
- package/dist/show/contribution.cjs.map +1 -1
- package/dist/show/contribution.d.cts +14 -0
- package/dist/show/contribution.d.mts +14 -0
- package/dist/show/contribution.d.ts +14 -0
- package/dist/show/model.cjs +8 -5
- package/dist/show/model.cjs.map +1 -1
- package/dist/show/model.d.cts +11 -8
- package/dist/show/model.d.mts +11 -8
- package/dist/show/model.d.ts +11 -8
- package/dist/show/render.cjs +34 -22
- package/dist/show/render.cjs.map +1 -1
- package/dist/sources/projector.cjs +1 -1
- package/dist/sources/projector.cjs.map +1 -1
- package/dist/types.cjs +1 -1
- package/dist/types.cjs.map +1 -1
- package/dist/types.d.cts +1 -1
- package/dist/types.d.mts +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/types.js +2 -2
- package/dist/view/app-dist/.vite/manifest.json +2 -2
- package/dist/view/app-dist/assets/{index-B3ijZRph.js → index-CxrOUvHC.js} +17 -17
- package/dist/view/app-dist/assets/{quality-cost-scatter-B--DfJ9s.js → quality-cost-scatter-B6Aiss7x.js} +1 -1
- package/dist/view/app-dist/index.html +1 -1
- package/dist/view/cli/contribution.cjs +1 -1
- package/dist/view/cli/contribution.cjs.map +1 -1
- package/dist/view/function-runtime.mjs +318 -121
- package/dist/view/http-protocol.d.cts +1 -1
- package/dist/view/http-protocol.d.mts +1 -1
- package/dist/view/http-protocol.d.ts +1 -1
- package/dist/view/inspection-host.cjs +2 -2
- package/dist/view/inspection-host.cjs.map +1 -1
- package/dist/view/inspection-host.d.cts +349 -331
- package/dist/view/inspection-host.d.mts +349 -331
- package/dist/view/inspection-host.d.ts +349 -331
- package/docs-site/zh/examples/integrations/ai-sdk-v7.mdx +9 -9
- package/docs-site/zh/examples/integrations/claude-sdk.mdx +8 -8
- package/docs-site/zh/examples/integrations/codex-sdk.mdx +4 -4
- package/docs-site/zh/examples/integrations/langgraph.mdx +6 -6
- package/docs-site/zh/examples/integrations/pi-sdk.mdx +8 -8
- package/docs-site/zh/explanation/adapter.mdx +6 -6
- package/docs-site/zh/explanation/assert.mdx +7 -7
- package/docs-site/zh/explanation/drive.mdx +4 -4
- package/docs-site/zh/explanation/hitl.mdx +2 -2
- package/docs-site/zh/explanation/judge.mdx +3 -3
- package/docs-site/zh/index.mdx +18 -0
- package/docs-site/zh/introduction.mdx +4 -3
- package/docs-site/zh/reference/builtin-agents.mdx +46 -49
- package/docs-site/zh/reference/cli.mdx +16 -14
- package/docs-site/zh/reference/define-agent.mdx +19 -19
- package/docs-site/zh/reference/define-config.mdx +7 -15
- package/docs-site/zh/reference/define-eval.mdx +20 -14
- package/docs-site/zh/reference/define-experiment.mdx +18 -39
- package/docs-site/zh/reference/events.mdx +1 -1
- package/docs-site/zh/reference/expect.mdx +21 -0
- package/docs-site/zh/reference/official-adapters.mdx +12 -5
- package/docs-site/zh/troubleshooting/debugging.mdx +2 -2
- package/docs-site/zh/troubleshooting/recover-after-kill.mdx +1 -1
- package/docs-site/zh/tutorials/agent-onboarding.mdx +2 -2
- package/docs-site/zh/tutorials/authoring.mdx +4 -3
- package/docs-site/zh/tutorials/compare-runs.mdx +1 -1
- package/docs-site/zh/tutorials/concurrency.mdx +8 -8
- package/docs-site/zh/tutorials/configuration.mdx +5 -5
- package/docs-site/zh/tutorials/control-run-cost.mdx +49 -9
- package/docs-site/zh/tutorials/eval-groups.mdx +1 -1
- package/docs-site/zh/tutorials/evaluation-kinds.mdx +5 -5
- package/docs-site/zh/tutorials/experiment-services.mdx +32 -32
- package/docs-site/zh/tutorials/handle-execution-failures.mdx +2 -28
- package/docs-site/zh/tutorials/plugins.mdx +49 -143
- package/docs-site/zh/tutorials/sandbox-agent.mdx +1 -1
- package/docs-site/zh/tutorials/sandbox-reuse.mdx +7 -7
- package/docs-site/zh/tutorials/upgrade-0-18.mdx +64 -0
- package/docs-site/zh/tutorials/upgrade-0-19.mdx +121 -0
- package/docs-site/zh/tutorials/upgrade-0-20.mdx +12 -0
- package/docs-site/zh/tutorials/verify-judge.mdx +4 -3
- package/docs-site/zh/tutorials/viewing-results.mdx +2 -2
- package/docs-site/zh/tutorials/write-experiment.mdx +1 -1
- package/docs-site/zh/tutorials/write-send.mdx +13 -13
- package/package.json +1 -1
- package/dist/agents/effect-runtime.cjs.map +0 -1
- package/dist/agents/effect-runtime.d.cts +0 -29
- package/dist/agents/effect-runtime.d.mts +0 -29
- package/dist/agents/effect-runtime.d.ts +0 -29
- package/dist/agents/effect-runtime.js +0 -16
- package/dist/agents/effect-runtime.js.map +0 -1
- package/dist/agents/session-slot.cjs.map +0 -1
- package/dist/agents/session-slot.d.cts +0 -12
- package/dist/agents/session-slot.d.mts +0 -12
- package/dist/agents/session-slot.d.ts +0 -12
- package/dist/agents/session-slot.js +0 -6
- package/dist/agents/session-slot.js.map +0 -1
- package/dist/model-slots.cjs.map +0 -1
- package/dist/model-slots.d.cts +0 -19
- package/dist/model-slots.d.mts +0 -19
- package/dist/model-slots.d.ts +0 -19
- package/dist/model-slots.js +0 -8
- package/dist/model-slots.js.map +0 -1
package/dist/runner/attempt.cjs
CHANGED
|
@@ -6,6 +6,7 @@ exports.scoreFactOutcomeForAttemptError = scoreFactOutcomeForAttemptError;
|
|
|
6
6
|
exports.errorFromThrown = errorFromThrown;
|
|
7
7
|
exports.executeSandboxAction = executeSandboxAction;
|
|
8
8
|
exports.experimentRunInfo = experimentRunInfo;
|
|
9
|
+
const attempt_notes_ts_1 = require("./attempt-notes.cjs");
|
|
9
10
|
const attempt_cancellation_ts_1 = require("./attempt-cancellation.cjs");
|
|
10
11
|
// 单个 attempt 的完整生命周期:资源(沙箱 / OTLP 接收器)经 Effect.Sample 的
|
|
11
12
|
// acquireRelease 接管,无论 body 成功 / 抛错 / 被中断,stop() / close() 都保证执行。
|
|
@@ -36,7 +37,7 @@ const keep_registry_ts_1 = require("../sandbox/keep-registry.cjs");
|
|
|
36
37
|
const project_state_database_ts_1 = require("../record/sqlite/project-state-database.cjs");
|
|
37
38
|
const provisioner_ts_1 = require("../agents/provisioner.cjs");
|
|
38
39
|
const callback_context_ts_1 = require("../agents/callback-context.cjs");
|
|
39
|
-
const
|
|
40
|
+
const agent_effects_ts_1 = require("../agents/agent-effects.cjs");
|
|
40
41
|
const receiver_ts_1 = require("../o11y/otlp/receiver.cjs");
|
|
41
42
|
const sandbox_receiver_ts_1 = require("../o11y/otlp/sandbox-receiver.cjs");
|
|
42
43
|
const turn_otel_ts_1 = require("../o11y/otlp/turn-otel.cjs");
|
|
@@ -68,7 +69,7 @@ const redaction_ts_1 = require("../sandbox/redaction.cjs");
|
|
|
68
69
|
const link_ts_1 = require("../sandbox/link.cjs");
|
|
69
70
|
const config_identity_ts_1 = require("./config-identity.cjs");
|
|
70
71
|
const setup_prefix_plan_ts_1 = require("./setup-prefix-plan.cjs");
|
|
71
|
-
const
|
|
72
|
+
const link_ts_2 = require("../plugin/link.cjs");
|
|
72
73
|
const source_loc_ts_1 = require("../source-loc.cjs");
|
|
73
74
|
const source_producer_ts_1 = require("./source-producer.cjs");
|
|
74
75
|
const sandbox_record_producer_ts_1 = require("./sandbox-record-producer.cjs");
|
|
@@ -126,7 +127,7 @@ function reportJudgeErrorAssistance(a, sealed) {
|
|
|
126
127
|
}), identity: { experimentId: a.run.experimentId, evalId: a.evalDef.id, attempt: a.attempt } });
|
|
127
128
|
}
|
|
128
129
|
/**
|
|
129
|
-
*
|
|
130
|
+
* 一次终局失败的空间轴决议:读取抛出点声明,否则缺省不可重试(见
|
|
130
131
|
* src/shared/failure-class.ts 的 `resolveAttemptFailureClass`),缺省档(`scope` 省略或
|
|
131
132
|
* `"attempt"`)返回 undefined —— 死因只属于本次执行,没有闸可落。
|
|
132
133
|
*
|
|
@@ -135,9 +136,9 @@ function reportJudgeErrorAssistance(a, sealed) {
|
|
|
135
136
|
* attempt 内的失败(本文件的 `declareFailure`)与 attempt 开跑前的资源获取失败
|
|
136
137
|
* (run.ts 的复用池租借)共用这一份决议,两处不各写一遍链。
|
|
137
138
|
*/
|
|
138
|
-
function attemptFailureDeclaration(
|
|
139
|
+
function attemptFailureDeclaration(phase, e) {
|
|
139
140
|
const info = (0, failure_class_ts_2.attemptFailureInfo)(phase, e);
|
|
140
|
-
const cls = (0, failure_class_ts_2.resolveAttemptFailureClass)(info
|
|
141
|
+
const cls = (0, failure_class_ts_2.resolveAttemptFailureClass)(info);
|
|
141
142
|
if (cls.scope !== "eval" && cls.scope !== "experiment")
|
|
142
143
|
return undefined;
|
|
143
144
|
return { class: cls, phase, text: info.text };
|
|
@@ -253,6 +254,7 @@ function runAttemptEffect(a, opts, sandboxSem, { attachmentScope, buildLocators,
|
|
|
253
254
|
// Assert-first state becomes visible only after the real TestContext has
|
|
254
255
|
// been constructed. Scope finalization owns the interruption seal so an
|
|
255
256
|
// aborted Attempt cannot leave declared entries unsealed.
|
|
257
|
+
let liveNotes;
|
|
256
258
|
let liveAssertions;
|
|
257
259
|
let liveAssertionState;
|
|
258
260
|
let adapterResources;
|
|
@@ -306,7 +308,7 @@ function runAttemptEffect(a, opts, sandboxSem, { attachmentScope, buildLocators,
|
|
|
306
308
|
/**
|
|
307
309
|
* 终局失败的分类与回执 —— **必须在把错误折成纯数据 `AttemptError` 之前调**:折完之后原错误
|
|
308
310
|
* 对象(连同它携带的 `_tag`/`class` 与 cause 链)就不再是任何人的引用,空间轴声明再也读不出来。
|
|
309
|
-
*
|
|
311
|
+
* 读取抛出点声明,否则缺省不可重试(见
|
|
310
312
|
* src/shared/failure-class.ts 的 `resolveAttemptFailureClass`);send 失败的时间轴已由 send 重试
|
|
311
313
|
* 执行体在 context 层消费完,浮出到这里的一定是终局失败,这里只读空间轴。
|
|
312
314
|
* 缺省档(`scope` 省略或 `"attempt"`)不回执:那是「死因只属于本次执行」,没有闸可落。
|
|
@@ -314,7 +316,7 @@ function runAttemptEffect(a, opts, sandboxSem, { attachmentScope, buildLocators,
|
|
|
314
316
|
const declareFailure = (phase, e) => {
|
|
315
317
|
if (!onFailureClass)
|
|
316
318
|
return;
|
|
317
|
-
const declaration = attemptFailureDeclaration(
|
|
319
|
+
const declaration = attemptFailureDeclaration(phase, e);
|
|
318
320
|
if (declaration) {
|
|
319
321
|
// 空间轴回执会先于 Attempt 结果封口进入 run.ts,并立即生成运行期反馈与 run.json 的
|
|
320
322
|
// dispatch-halted 诊断。它不能依赖下面的 EvalResult 最终扫描补救,否则同一条错误在
|
|
@@ -570,6 +572,21 @@ ${recentLogs.map((l) => ` · ${l}`).join("\n")}`;
|
|
|
570
572
|
yield* effect_1.Effect.addFinalizer(() => effect_1.Effect.promise(() => judgeUsage.closeAndDrain()));
|
|
571
573
|
const assertFirst = yield* (0, assert_first_bridge_ts_1.makeAssertFirstAttemptBridge)();
|
|
572
574
|
if (adapter.kind === "custom") {
|
|
575
|
+
const pluginHooks = (0, link_ts_2.attemptPluginLifecycles)(evalDef, run);
|
|
576
|
+
let activated = 0;
|
|
577
|
+
const pluginContext = {
|
|
578
|
+
experimentId: run.experimentId, evalId: evalDef.id, attempt: a.attempt,
|
|
579
|
+
...(evalDef.evalGroup === undefined ? {} : { evalGroup: { id: evalDef.evalGroup.id, definitionHash: evalDef.evalGroup.definitionHash } }),
|
|
580
|
+
signal, progress: scopedFeedback.progress, diagnostic: scopedFeedback.diagnostic,
|
|
581
|
+
};
|
|
582
|
+
yield* effect_1.Effect.addFinalizer(() => effect_1.Effect.forEach(pluginHooks.slice(0, activated).reverse(), (entry) => entry.teardown === undefined ? effect_1.Effect.void : (0, cleanup_timeout_ts_1.cleanupCallback)((cleanupSignal) => entry.teardown({ ...pluginContext, signal: cleanupSignal })).pipe(effect_1.Effect.catchCause((cause) => effect_1.Effect.sync(() => scopedFeedback.diagnostic({
|
|
583
|
+
code: "plugin-after-failed", level: "warning", message: String(effect_1.Cause.squash(cause)),
|
|
584
|
+
})))), { concurrency: 1, discard: true }));
|
|
585
|
+
for (const entry of pluginHooks) {
|
|
586
|
+
activated += 1;
|
|
587
|
+
if (entry.setup !== undefined)
|
|
588
|
+
yield* effect_1.Effect.tryPromise({ try: () => Promise.resolve(entry.setup(pluginContext)), catch: (cause) => cause });
|
|
589
|
+
}
|
|
573
590
|
const resources = new attempt_resources_ts_1.AdapterAttemptResources(() => {
|
|
574
591
|
adapterUsageSnapshot = adapterUsage.close();
|
|
575
592
|
adapterExecutionTraces.close();
|
|
@@ -624,7 +641,8 @@ ${recentLogs.map((l) => ` · ${l}`).join("\n")}`;
|
|
|
624
641
|
feedback: scopedFeedback,
|
|
625
642
|
log,
|
|
626
643
|
declareFailure,
|
|
627
|
-
registerAssertions: (runtime) => {
|
|
644
|
+
registerAssertions: (runtime, state) => {
|
|
645
|
+
liveNotes = state.notes;
|
|
628
646
|
if (liveAssertions !== undefined && liveAssertions !== runtime) {
|
|
629
647
|
throw new Error("Attempt tried to register a second Assertions runtime");
|
|
630
648
|
}
|
|
@@ -788,7 +806,8 @@ ${recentLogs.map((l) => ` · ${l}`).join("\n")}`;
|
|
|
788
806
|
// forkIn() interrupts new children immediately even before the executor's own finalizer flips
|
|
789
807
|
// its closed flag. Cleanup therefore uses the provider-owned resource facade; before/Agent/test
|
|
790
808
|
// continue to use the interruptible author facade above.
|
|
791
|
-
const
|
|
809
|
+
const cleanupSandbox = reusedSandbox?.resourceSandbox ?? materializedCase?.sandbox ?? sandbox;
|
|
810
|
+
const cleanupCommandTarget = (0, operations_ts_1.createSandboxCommandTarget)(cleanupSandbox);
|
|
792
811
|
// ── tracing ──────────────────────────────────────────────────────────────────
|
|
793
812
|
// sandbox.otlpHost:
|
|
794
813
|
// string → provider 承诺该 hostname 可访问宿主 receiver
|
|
@@ -996,10 +1015,15 @@ ${recentLogs.map((l) => ` · ${l}`).join("\n")}`;
|
|
|
996
1015
|
}));
|
|
997
1016
|
if (node)
|
|
998
1017
|
recorder.pushParent(node);
|
|
999
|
-
return (0, cleanup_timeout_ts_1.cleanupCallback)((cleanupSignal) =>
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1018
|
+
return (0, cleanup_timeout_ts_1.cleanupCallback)((cleanupSignal) => {
|
|
1019
|
+
// The forward Attempt may have exhausted its deadline. Each cleanup
|
|
1020
|
+
// owns a fresh bounded command window, including on reused instances.
|
|
1021
|
+
(0, deadline_ts_1.applyCommandDeadline)(cleanupSandbox, clock.currentTimeMillisUnsafe() + cleanup_timeout_ts_1.CLEANUP_TIMEOUT_MS);
|
|
1022
|
+
return cleanup.command(cleanupCommandTarget, {
|
|
1023
|
+
...cleanup.context,
|
|
1024
|
+
signal: cleanupSignal,
|
|
1025
|
+
});
|
|
1026
|
+
}).pipe(effect_1.Effect.catch((error) => effect_1.Effect.sync(() => {
|
|
1003
1027
|
if (node)
|
|
1004
1028
|
node.failed = true;
|
|
1005
1029
|
declareFailure("sandbox.cleanup", error);
|
|
@@ -1084,6 +1108,7 @@ ${recentLogs.map((l) => ` · ${l}`).join("\n")}`;
|
|
|
1084
1108
|
},
|
|
1085
1109
|
assertFirst,
|
|
1086
1110
|
registerAssertions: (runtime, state) => {
|
|
1111
|
+
liveNotes = state.notes;
|
|
1087
1112
|
if (liveAssertions !== undefined && liveAssertions !== runtime) {
|
|
1088
1113
|
throw new Error("Attempt tried to register a second Assertions runtime");
|
|
1089
1114
|
}
|
|
@@ -1340,6 +1365,7 @@ ${recentLogs.map((l) => ` · ${l}`).join("\n")}`;
|
|
|
1340
1365
|
if (capture !== undefined) {
|
|
1341
1366
|
(0, sandbox_record_producer_ts_1.retainRunnerAttemptFileChangesCapture)(finalResult, capture);
|
|
1342
1367
|
}
|
|
1368
|
+
(0, attempt_notes_ts_1.retainAttemptNotes)(finalResult, liveNotes?.snapshot() ?? []);
|
|
1343
1369
|
(0, judge_usage_ts_2.retainJudgeUsage)(finalResult, judgeUsage.snapshot());
|
|
1344
1370
|
if (adapterUsageSnapshot !== undefined)
|
|
1345
1371
|
(0, adapter_usage_ts_1.retainAdapterUsage)(finalResult, adapterUsageSnapshot);
|
|
@@ -1389,7 +1415,7 @@ function runAdapterAttemptBody(input) {
|
|
|
1389
1415
|
judge: a.judge,
|
|
1390
1416
|
executeStop: assertFirst.requestAssertion,
|
|
1391
1417
|
});
|
|
1392
|
-
registerAssertions(state.assertions);
|
|
1418
|
+
registerAssertions(state.assertions, state);
|
|
1393
1419
|
sourceCapture.attachAssertions(state.assertions);
|
|
1394
1420
|
let error;
|
|
1395
1421
|
let skipReason;
|
|
@@ -1921,15 +1947,15 @@ async function runAttemptBody(a, config, t0, base, res, parentSignal) {
|
|
|
1921
1947
|
const managedProcess = managedProcessSupport?._tag === "Supported"
|
|
1922
1948
|
? managedProcessSupport.value
|
|
1923
1949
|
: undefined;
|
|
1924
|
-
/** agent.
|
|
1950
|
+
/** agent.before 时点已走到(未声明 setup 也置位)——agent.after 的触发条件(成对触发规则)。 */
|
|
1925
1951
|
let agentSetupReached = false;
|
|
1926
|
-
const evalPluginLifecycles = (0,
|
|
1952
|
+
const evalPluginLifecycles = (0, link_ts_2.attemptPluginLifecycles)(evalDef, run);
|
|
1927
1953
|
let activatedEvalPlugins = 0;
|
|
1928
1954
|
const evalPluginContext = {
|
|
1929
1955
|
experimentId: run.experimentId,
|
|
1930
1956
|
evalId: evalDef.id,
|
|
1931
1957
|
attempt,
|
|
1932
|
-
...(evalDef.evalGroup === undefined ? {} : {
|
|
1958
|
+
...(evalDef.evalGroup === undefined ? {} : { evalGroup: { id: evalDef.evalGroup.id, definitionHash: evalDef.evalGroup.definitionHash } }),
|
|
1933
1959
|
signal,
|
|
1934
1960
|
progress: feedback.progress,
|
|
1935
1961
|
diagnostic: feedback.diagnostic,
|
|
@@ -1937,10 +1963,10 @@ async function runAttemptBody(a, config, t0, base, res, parentSignal) {
|
|
|
1937
1963
|
// Only the Assert-first runtime is registered with the outer Scope. The
|
|
1938
1964
|
// body requests its single seal after gathering non-authoring evidence.
|
|
1939
1965
|
let assertionState;
|
|
1940
|
-
/** adapter 在 agent.
|
|
1966
|
+
/** adapter 在 agent.before 里经 `ctx.reportInstallation()` 交回的安装清单(宿主侧内存对象,不经沙箱磁盘;
|
|
1941
1967
|
* 装了 Skill / plugin / MCP 的沙箱型 adapter 才有)。运行器只把它抬成 attempt artifact,
|
|
1942
1968
|
* 不解释内容、不按 agent 名字分支;什么都没装的 adapter 不调用 → undefined,不生成空 artifact。 */
|
|
1943
|
-
let
|
|
1969
|
+
let agentInstallation;
|
|
1944
1970
|
// 变更分类账(仅沙箱型;workspace.baseline 阶段建立)。
|
|
1945
1971
|
let ledger;
|
|
1946
1972
|
const linked = usesSandbox && a.plan._tag === "Sandbox" ? a.plan.pair : undefined;
|
|
@@ -2071,7 +2097,7 @@ async function runAttemptBody(a, config, t0, base, res, parentSignal) {
|
|
|
2071
2097
|
structurallyEligibleCount += 1;
|
|
2072
2098
|
}
|
|
2073
2099
|
}
|
|
2074
|
-
if (run.
|
|
2100
|
+
if (run.sandboxBeforeCache === "bypass") {
|
|
2075
2101
|
await replayAllBefore(linked.before, "replay(bypass)");
|
|
2076
2102
|
return;
|
|
2077
2103
|
}
|
|
@@ -2443,30 +2469,16 @@ async function runAttemptBody(a, config, t0, base, res, parentSignal) {
|
|
|
2443
2469
|
}
|
|
2444
2470
|
}
|
|
2445
2471
|
// agent 自己的 lifecycle:装 CLI、写 config(每个沙箱一次,不在每轮 send 里)。
|
|
2446
|
-
// 时点在此走到(未声明 setup 也算)——agent.
|
|
2472
|
+
// 时点在此走到(未声明 setup 也算)——agent.after 据此触发。
|
|
2447
2473
|
agentSetupReached = true;
|
|
2448
|
-
if (agent.
|
|
2474
|
+
if (agent.before) {
|
|
2449
2475
|
enterPhase("agent.setup");
|
|
2450
2476
|
log(`agent setup (install CLI / write config)...`);
|
|
2451
|
-
const
|
|
2452
|
-
|
|
2453
|
-
:
|
|
2454
|
-
|
|
2455
|
-
|
|
2456
|
-
const setup = agent.setup;
|
|
2457
|
-
const context = setupContext;
|
|
2458
|
-
const native = (0, effect_runtime_ts_1.agentSetupEffect)(agent, sandbox, context);
|
|
2459
|
-
returned = await assertFirst.requestEffect(native === undefined
|
|
2460
|
-
? (0, callback_context_ts_1.withAgentCallbackContext)(context, (callbackContext) => (0, effect_runtime_ts_1.authorCallbackEffect)(() => setup(sandbox, callbackContext)))
|
|
2461
|
-
: (0, callback_context_ts_1.withAgentCallbackContext)(context, (callbackContext) => (0, effect_runtime_ts_1.agentSetupEffect)(agent, sandbox, callbackContext)));
|
|
2462
|
-
}
|
|
2463
|
-
else {
|
|
2464
|
-
const setup = agent.setup;
|
|
2465
|
-
const native = (0, effect_runtime_ts_1.agentSetupEffect)(agent, sandbox, attemptCtx);
|
|
2466
|
-
returned = await assertFirst.requestEffect(native === undefined
|
|
2467
|
-
? (0, callback_context_ts_1.withAgentCallbackContext)(attemptCtx, (callbackContext) => (0, effect_runtime_ts_1.authorCallbackEffect)(() => setup(callbackContext)))
|
|
2468
|
-
: (0, callback_context_ts_1.withAgentCallbackContext)(attemptCtx, (callbackContext) => (0, effect_runtime_ts_1.agentSetupEffect)(agent, sandbox, callbackContext)));
|
|
2469
|
-
}
|
|
2477
|
+
const context = {
|
|
2478
|
+
...sandboxAttemptCtx,
|
|
2479
|
+
reportInstallation: (manifest) => { agentInstallation = manifest; },
|
|
2480
|
+
};
|
|
2481
|
+
const returned = await assertFirst.requestEffect((0, callback_context_ts_1.withAgentCallbackContext)(context, (callbackContext) => (0, agent_effects_ts_1.agentBeforeEffect)(agent, sandbox, callbackContext) ?? effect_1.Effect.void));
|
|
2470
2482
|
if (typeof returned === "function") {
|
|
2471
2483
|
throw new Error(`${`Agent.setup (${agent.name})`} returned a function. setup does not carry cleanup and the returned value will not be executed — put the cleanup in the paired teardown of the same layer (${"Agent.teardown"}); see the experiments tutorial on docs-site or docs/runner.md.
|
|
2472
2484
|
`.trimEnd());
|
|
@@ -2521,10 +2533,6 @@ async function runAttemptBody(a, config, t0, base, res, parentSignal) {
|
|
|
2521
2533
|
otel,
|
|
2522
2534
|
feedback,
|
|
2523
2535
|
concurrencySlot,
|
|
2524
|
-
// 实验分类器:send 链上排在 adapter 的 classifySendFailure 之前(见
|
|
2525
|
-
// docs/feature/error-classification/architecture.md「分类链」)。与本文件 declareFailure
|
|
2526
|
-
// 走的生命周期链是同一个函数,两条链的决议序各自单源在 send-failures.ts / failure-class.ts。
|
|
2527
|
-
experimentClassifier: run.classifyFailure,
|
|
2528
2536
|
sourceRegistry,
|
|
2529
2537
|
resources: attemptResources,
|
|
2530
2538
|
nextSourceOrder: sourceCapture.nextSourceOrder,
|
|
@@ -2867,7 +2875,7 @@ async function runAttemptBody(a, config, t0, base, res, parentSignal) {
|
|
|
2867
2875
|
sources,
|
|
2868
2876
|
o11y,
|
|
2869
2877
|
trace,
|
|
2870
|
-
|
|
2878
|
+
agentInstallation,
|
|
2871
2879
|
...(diffArtifactAvailable ? { diff: diffWindows } : {}),
|
|
2872
2880
|
evidenceCoverage: state.manager.evidenceCoverage,
|
|
2873
2881
|
// sandbox 归属不在这里拼:它是租借时刻就定死的调度事实,由 runAttemptEffect 统一挂到
|
|
@@ -2881,7 +2889,7 @@ async function runAttemptBody(a, config, t0, base, res, parentSignal) {
|
|
|
2881
2889
|
if (isBodyInterrupted(signal, parentSignal, isDeadlineTimedOut()))
|
|
2882
2890
|
throw e;
|
|
2883
2891
|
recorder.failCurrent();
|
|
2884
|
-
// SandboxLayer command / agent.
|
|
2892
|
+
// SandboxLayer command / agent.before / 评分链路抛出的终局失败:同样先读空间轴回执,
|
|
2885
2893
|
// 再折成纯数据 AttemptError(顺序不可换,见 declareFailure)。
|
|
2886
2894
|
declareFailure(getPhase() ?? "eval.run", e);
|
|
2887
2895
|
const error = errorFromThrown(e, getPhase(), res.attemptTimeout);
|
|
@@ -2914,45 +2922,25 @@ async function runAttemptBody(a, config, t0, base, res, parentSignal) {
|
|
|
2914
2922
|
...(sealed === undefined
|
|
2915
2923
|
? (evalDef.evaluationKind === "score" ? { scoreResult: scoreFactOutcomeForAttemptError(error) } : {})
|
|
2916
2924
|
: legacyResultProjectionFromSealedAssertions(sealed, error)),
|
|
2917
|
-
...(
|
|
2925
|
+
...(agentInstallation !== undefined ? { agentInstallation } : {}),
|
|
2918
2926
|
};
|
|
2919
2927
|
return value;
|
|
2920
2928
|
}
|
|
2921
2929
|
finally {
|
|
2922
2930
|
// 收尾段一律在 finally 跑(主链成败都执行),不改判定,各自兜错(diagnostic)、各自计时
|
|
2923
2931
|
// (不计入 durationMs 口径,见 docs/feature/record/architecture.md)。执行序与 LifecyclePhase
|
|
2924
|
-
// 闭集声明一致:agent.
|
|
2932
|
+
// 闭集声明一致:agent.after → sandbox.cleanup;各段可独立标 failed。
|
|
2925
2933
|
// 沙箱 stop / 接收器 close 不在这里 —— 由 runAttemptEffect 的 Sample 在本函数返回后回收,
|
|
2926
2934
|
// 并经 finalizer 计成 sandbox.stop。没有对应 teardown/cleanup 的段直接跳过,不产生空阶段。
|
|
2927
2935
|
if (assertFirst.beginCleanup()) {
|
|
2928
2936
|
try {
|
|
2929
|
-
if (agentSetupReached && agent.
|
|
2937
|
+
if (agentSetupReached && agent.after) {
|
|
2930
2938
|
enterPhase("agent.teardown");
|
|
2931
2939
|
await recorder
|
|
2932
2940
|
.measureClosing("agent.teardown", async () => {
|
|
2933
2941
|
try {
|
|
2934
|
-
|
|
2935
|
-
|
|
2936
|
-
if (agent.kind === "sandbox") {
|
|
2937
|
-
const teardown = agent.teardown;
|
|
2938
|
-
if (teardown) {
|
|
2939
|
-
const context = { ...sandboxAttemptCtx, signal };
|
|
2940
|
-
const native = (0, effect_runtime_ts_1.agentTeardownEffect)(agent, sandbox, context);
|
|
2941
|
-
await assertFirst.requestCleanup((0, cleanup_timeout_ts_1.withCleanupTimeout)(native === undefined
|
|
2942
|
-
? (0, callback_context_ts_1.withAgentCallbackContext)(context, (callbackContext) => (0, effect_runtime_ts_1.authorCallbackEffect)(() => teardown(sandbox, callbackContext)), { inheritAttemptSignal: false })
|
|
2943
|
-
: (0, callback_context_ts_1.withAgentCallbackContext)(context, (callbackContext) => (0, effect_runtime_ts_1.agentTeardownEffect)(agent, sandbox, callbackContext), { inheritAttemptSignal: false })));
|
|
2944
|
-
}
|
|
2945
|
-
}
|
|
2946
|
-
else {
|
|
2947
|
-
const teardown = agent.teardown;
|
|
2948
|
-
if (teardown) {
|
|
2949
|
-
const context = { ...attemptCtx, signal };
|
|
2950
|
-
const native = (0, effect_runtime_ts_1.agentTeardownEffect)(agent, sandbox, context);
|
|
2951
|
-
await assertFirst.requestCleanup((0, cleanup_timeout_ts_1.withCleanupTimeout)(native === undefined
|
|
2952
|
-
? (0, callback_context_ts_1.withAgentCallbackContext)(context, (callbackContext) => (0, effect_runtime_ts_1.authorCallbackEffect)(() => teardown(callbackContext)), { inheritAttemptSignal: false })
|
|
2953
|
-
: (0, callback_context_ts_1.withAgentCallbackContext)(context, (callbackContext) => (0, effect_runtime_ts_1.agentTeardownEffect)(agent, sandbox, callbackContext), { inheritAttemptSignal: false })));
|
|
2954
|
-
}
|
|
2955
|
-
}
|
|
2942
|
+
const context = { ...sandboxAttemptCtx, signal };
|
|
2943
|
+
await assertFirst.requestCleanup((0, cleanup_timeout_ts_1.withCleanupTimeout)((0, callback_context_ts_1.withAgentCallbackContext)(context, (callbackContext) => (0, agent_effects_ts_1.agentAfterEffect)(agent, sandbox, callbackContext) ?? effect_1.Effect.void, { inheritAttemptSignal: false })));
|
|
2956
2944
|
}
|
|
2957
2945
|
catch (e) {
|
|
2958
2946
|
declareFailure("agent.teardown", e);
|
|
@@ -3095,7 +3083,7 @@ const EVAL_RESULT_REDACTED_EVIDENCE_KEYS = [
|
|
|
3095
3083
|
"events",
|
|
3096
3084
|
"o11y",
|
|
3097
3085
|
"trace",
|
|
3098
|
-
"
|
|
3086
|
+
"agentInstallation",
|
|
3099
3087
|
"evidenceCoverage",
|
|
3100
3088
|
"diff",
|
|
3101
3089
|
"commands",
|