@ai-agent-forge/agent-forge 0.86.7 → 0.87.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/CHANGELOG.md +18 -0
- package/README.md +8 -9
- package/dist/artifacts/artifact-store.d.ts.map +1 -1
- package/dist/artifacts/artifact-store.js +9 -5
- package/dist/artifacts/artifact-store.js.map +1 -1
- package/dist/bundle/.build-manifest.json +410 -371
- package/dist/bundle/chunks/{chunk-A7GUOX2H.js → chunk-6ZKDNZHA.js} +5 -1
- package/dist/bundle/chunks/chunk-BFC2BDVJ.js +13 -0
- package/dist/bundle/chunks/chunk-MOHOLL3F.js +1456 -0
- package/dist/bundle/chunks/image-resize-worker.js +12 -1
- package/dist/bundle/chunks/{virtual-modules-3IZ4MYSQ.js → virtual-modules-KZ5DRH7Q.js} +1 -1
- package/dist/bundle/cli.js +1 -1
- package/dist/bundle/client.js +1 -1
- package/dist/bundle/index.js +2 -2
- package/dist/bundle/rpc-entry.js +1 -1
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +231 -185
- package/dist/cli/args.js.map +1 -1
- package/dist/cli/auth-check.d.ts.map +1 -1
- package/dist/cli/auth-check.js +3 -2
- package/dist/cli/auth-check.js.map +1 -1
- package/dist/cli/auth-command.d.ts.map +1 -1
- package/dist/cli/auth-command.js +15 -9
- package/dist/cli/auth-command.js.map +1 -1
- package/dist/cli/credential-print.d.ts.map +1 -1
- package/dist/cli/credential-print.js +14 -7
- package/dist/cli/credential-print.js.map +1 -1
- package/dist/cli/experimental/command.d.ts.map +1 -1
- package/dist/cli/experimental/command.js +6 -5
- package/dist/cli/experimental/command.js.map +1 -1
- package/dist/cli/list-models.d.ts.map +1 -1
- package/dist/cli/list-models.js +9 -8
- package/dist/cli/list-models.js.map +1 -1
- package/dist/cli/plugin-manager-controller.d.ts.map +1 -1
- package/dist/cli/plugin-manager-controller.js +2 -1
- package/dist/cli/plugin-manager-controller.js.map +1 -1
- package/dist/cli/serve.d.ts.map +1 -1
- package/dist/cli/serve.js +8 -5
- package/dist/cli/serve.js.map +1 -1
- package/dist/client/remote-session.d.ts.map +1 -1
- package/dist/client/remote-session.js +16 -9
- package/dist/client/remote-session.js.map +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +2 -1
- package/dist/config.js.map +1 -1
- package/dist/core/agent-capability-contract.d.ts +0 -7
- package/dist/core/agent-capability-contract.d.ts.map +1 -1
- package/dist/core/agent-capability-contract.js +72 -68
- package/dist/core/agent-capability-contract.js.map +1 -1
- package/dist/core/agent-session-bash.d.ts.map +1 -1
- package/dist/core/agent-session-bash.js +5 -4
- package/dist/core/agent-session-bash.js.map +1 -1
- package/dist/core/agent-session-compaction.d.ts.map +1 -1
- package/dist/core/agent-session-compaction.js +28 -22
- package/dist/core/agent-session-compaction.js.map +1 -1
- package/dist/core/agent-session-context.d.ts.map +1 -1
- package/dist/core/agent-session-context.js +18 -13
- package/dist/core/agent-session-context.js.map +1 -1
- package/dist/core/agent-session-model.d.ts.map +1 -1
- package/dist/core/agent-session-model.js +2 -1
- package/dist/core/agent-session-model.js.map +1 -1
- package/dist/core/agent-session-retry.d.ts.map +1 -1
- package/dist/core/agent-session-retry.js +3 -2
- package/dist/core/agent-session-retry.js.map +1 -1
- package/dist/core/agent-session-runtime.d.ts.map +1 -1
- package/dist/core/agent-session-runtime.js +7 -6
- package/dist/core/agent-session-runtime.js.map +1 -1
- package/dist/core/agent-session-services.d.ts +1 -1
- package/dist/core/agent-session-services.d.ts.map +1 -1
- package/dist/core/agent-session-services.js.map +1 -1
- package/dist/core/agent-session-tools.d.ts.map +1 -1
- package/dist/core/agent-session-tools.js +3 -2
- package/dist/core/agent-session-tools.js.map +1 -1
- package/dist/core/agent-session.d.ts +40 -2
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +142 -34
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/auth-guidance.d.ts.map +1 -1
- package/dist/core/auth-guidance.js +11 -5
- package/dist/core/auth-guidance.js.map +1 -1
- package/dist/core/auth-storage.d.ts.map +1 -1
- package/dist/core/auth-storage.js +9 -6
- package/dist/core/auth-storage.js.map +1 -1
- package/dist/core/compaction/compaction.d.ts.map +1 -1
- package/dist/core/compaction/compaction.js +2 -1
- package/dist/core/compaction/compaction.js.map +1 -1
- package/dist/core/embedded-sdk.d.ts.map +1 -1
- package/dist/core/embedded-sdk.js +10 -6
- package/dist/core/embedded-sdk.js.map +1 -1
- package/dist/core/export-html/index.d.ts.map +1 -1
- package/dist/core/export-html/index.js +9 -4
- package/dist/core/export-html/index.js.map +1 -1
- package/dist/core/extensions/agent-composition.d.ts.map +1 -1
- package/dist/core/extensions/agent-composition.js +26 -19
- package/dist/core/extensions/agent-composition.js.map +1 -1
- package/dist/core/extensions/bootstrap-agent-loop.d.ts.map +1 -1
- package/dist/core/extensions/bootstrap-agent-loop.js +3 -2
- package/dist/core/extensions/bootstrap-agent-loop.js.map +1 -1
- package/dist/core/extensions/bootstrap-lifecycle.d.ts.map +1 -1
- package/dist/core/extensions/bootstrap-lifecycle.js +20 -17
- package/dist/core/extensions/bootstrap-lifecycle.js.map +1 -1
- package/dist/core/extensions/bootstrap-overflow-policy.d.ts.map +1 -1
- package/dist/core/extensions/bootstrap-overflow-policy.js +2 -1
- package/dist/core/extensions/bootstrap-overflow-policy.js.map +1 -1
- package/dist/core/extensions/bootstrap-retry-policy.d.ts.map +1 -1
- package/dist/core/extensions/bootstrap-retry-policy.js +2 -1
- package/dist/core/extensions/bootstrap-retry-policy.js.map +1 -1
- package/dist/core/extensions/bootstrap-skills.d.ts.map +1 -1
- package/dist/core/extensions/bootstrap-skills.js +7 -6
- package/dist/core/extensions/bootstrap-skills.js.map +1 -1
- package/dist/core/extensions/bootstrap-tools.d.ts.map +1 -1
- package/dist/core/extensions/bootstrap-tools.js +2 -1
- package/dist/core/extensions/bootstrap-tools.js.map +1 -1
- package/dist/core/extensions/capability-plugin.d.ts.map +1 -1
- package/dist/core/extensions/capability-plugin.js +37 -13
- package/dist/core/extensions/capability-plugin.js.map +1 -1
- package/dist/core/extensions/capability-runtime-events.d.ts.map +1 -1
- package/dist/core/extensions/capability-runtime-events.js +17 -13
- package/dist/core/extensions/capability-runtime-events.js.map +1 -1
- package/dist/core/extensions/capability-runtime-guards.d.ts.map +1 -1
- package/dist/core/extensions/capability-runtime-guards.js +16 -15
- package/dist/core/extensions/capability-runtime-guards.js.map +1 -1
- package/dist/core/extensions/capability-runtime-manifest.d.ts.map +1 -1
- package/dist/core/extensions/capability-runtime-manifest.js +52 -30
- package/dist/core/extensions/capability-runtime-manifest.js.map +1 -1
- package/dist/core/extensions/capability-runtime-validation.d.ts.map +1 -1
- package/dist/core/extensions/capability-runtime-validation.js +66 -65
- package/dist/core/extensions/capability-runtime-validation.js.map +1 -1
- package/dist/core/extensions/capability-runtime.d.ts.map +1 -1
- package/dist/core/extensions/capability-runtime.js +147 -127
- package/dist/core/extensions/capability-runtime.js.map +1 -1
- package/dist/core/extensions/compaction-memory-failure-mode.d.ts.map +1 -1
- package/dist/core/extensions/compaction-memory-failure-mode.js +3 -2
- package/dist/core/extensions/compaction-memory-failure-mode.js.map +1 -1
- package/dist/core/extensions/context-strategy-binding.d.ts.map +1 -1
- package/dist/core/extensions/context-strategy-binding.js +7 -4
- package/dist/core/extensions/context-strategy-binding.js.map +1 -1
- package/dist/core/extensions/lifecycle-catalog.d.ts.map +1 -1
- package/dist/core/extensions/lifecycle-catalog.js +290 -279
- package/dist/core/extensions/lifecycle-catalog.js.map +1 -1
- package/dist/core/extensions/lifecycle-delivery-queue.d.ts.map +1 -1
- package/dist/core/extensions/lifecycle-delivery-queue.js +3 -2
- package/dist/core/extensions/lifecycle-delivery-queue.js.map +1 -1
- package/dist/core/facade/coding-agent-facade.d.ts +6 -0
- package/dist/core/facade/coding-agent-facade.d.ts.map +1 -1
- package/dist/core/facade/coding-agent-facade.js +2 -0
- package/dist/core/facade/coding-agent-facade.js.map +1 -1
- package/dist/core/http-dispatcher.d.ts.map +1 -1
- package/dist/core/http-dispatcher.js +2 -1
- package/dist/core/http-dispatcher.js.map +1 -1
- package/dist/core/i18n/index.d.ts +14 -0
- package/dist/core/i18n/index.d.ts.map +1 -0
- package/dist/core/i18n/index.js +67 -0
- package/dist/core/i18n/index.js.map +1 -0
- package/dist/core/i18n/locales/en/example.d.ts +7 -0
- package/dist/core/i18n/locales/en/example.d.ts.map +1 -0
- package/dist/core/i18n/locales/en/example.js +7 -0
- package/dist/core/i18n/locales/en/example.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/cli.d.ts +8 -0
- package/dist/core/i18n/locales/zh-cn/cli.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/cli.js +227 -0
- package/dist/core/i18n/locales/zh-cn/cli.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/common.d.ts +6 -0
- package/dist/core/i18n/locales/zh-cn/common.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/common.js +6 -0
- package/dist/core/i18n/locales/zh-cn/common.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-core.d.ts +13 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-core.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-core.js +173 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-core.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-extensions.d.ts +12 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-extensions.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-extensions.js +582 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-extensions.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-final.d.ts +9 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-final.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-final.js +55 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-final.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-plugins.d.ts +11 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-plugins.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-plugins.js +455 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-plugins.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-errors.d.ts +9 -0
- package/dist/core/i18n/locales/zh-cn/core-errors.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-errors.js +191 -0
- package/dist/core/i18n/locales/zh-cn/core-errors.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/example.d.ts +7 -0
- package/dist/core/i18n/locales/zh-cn/example.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/example.js +10 -0
- package/dist/core/i18n/locales/zh-cn/example.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/index.d.ts +2 -0
- package/dist/core/i18n/locales/zh-cn/index.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/index.js +41 -0
- package/dist/core/i18n/locales/zh-cn/index.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/interactive-mode.d.ts +10 -0
- package/dist/core/i18n/locales/zh-cn/interactive-mode.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/interactive-mode.js +265 -0
- package/dist/core/i18n/locales/zh-cn/interactive-mode.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/keybindings.d.ts +11 -0
- package/dist/core/i18n/locales/zh-cn/keybindings.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/keybindings.js +67 -0
- package/dist/core/i18n/locales/zh-cn/keybindings.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/slash-commands.d.ts +7 -0
- package/dist/core/i18n/locales/zh-cn/slash-commands.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/slash-commands.js +39 -0
- package/dist/core/i18n/locales/zh-cn/slash-commands.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-builtin.d.ts +10 -0
- package/dist/core/i18n/locales/zh-cn/tui-builtin.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-builtin.js +15 -0
- package/dist/core/i18n/locales/zh-cn/tui-builtin.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-components-misc.d.ts +13 -0
- package/dist/core/i18n/locales/zh-cn/tui-components-misc.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-components-misc.js +102 -0
- package/dist/core/i18n/locales/zh-cn/tui-components-misc.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-components-selectors.d.ts +12 -0
- package/dist/core/i18n/locales/zh-cn/tui-components-selectors.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-components-selectors.js +288 -0
- package/dist/core/i18n/locales/zh-cn/tui-components-selectors.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-interactive-misc.d.ts +9 -0
- package/dist/core/i18n/locales/zh-cn/tui-interactive-misc.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-interactive-misc.js +79 -0
- package/dist/core/i18n/locales/zh-cn/tui-interactive-misc.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-self-owned.d.ts +8 -0
- package/dist/core/i18n/locales/zh-cn/tui-self-owned.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-self-owned.js +72 -0
- package/dist/core/i18n/locales/zh-cn/tui-self-owned.js.map +1 -0
- package/dist/core/keybindings.d.ts +15 -0
- package/dist/core/keybindings.d.ts.map +1 -1
- package/dist/core/keybindings.js +18 -0
- package/dist/core/keybindings.js.map +1 -1
- package/dist/core/logger.d.ts.map +1 -1
- package/dist/core/logger.js +5 -1
- package/dist/core/logger.js.map +1 -1
- package/dist/core/model-registry.d.ts.map +1 -1
- package/dist/core/model-registry.js +2 -1
- package/dist/core/model-registry.js.map +1 -1
- package/dist/core/model-runtime.d.ts.map +1 -1
- package/dist/core/model-runtime.js +8 -4
- package/dist/core/model-runtime.js.map +1 -1
- package/dist/core/package-install-host.d.ts.map +1 -1
- package/dist/core/package-install-host.js +4 -3
- package/dist/core/package-install-host.js.map +1 -1
- package/dist/core/package-manager.d.ts.map +1 -1
- package/dist/core/package-manager.js +15 -10
- package/dist/core/package-manager.js.map +1 -1
- package/dist/core/package-resource-collection.d.ts.map +1 -1
- package/dist/core/package-resource-collection.js +2 -1
- package/dist/core/package-resource-collection.js.map +1 -1
- package/dist/core/package-source.d.ts.map +1 -1
- package/dist/core/package-source.js +3 -2
- package/dist/core/package-source.js.map +1 -1
- package/dist/core/provider-composer.d.ts.map +1 -1
- package/dist/core/provider-composer.js +22 -13
- package/dist/core/provider-composer.js.map +1 -1
- package/dist/core/remote-catalog-provider.d.ts.map +1 -1
- package/dist/core/remote-catalog-provider.js +6 -2
- package/dist/core/remote-catalog-provider.js.map +1 -1
- package/dist/core/resolve-config-value.d.ts.map +1 -1
- package/dist/core/resolve-config-value.js +15 -5
- package/dist/core/resolve-config-value.js.map +1 -1
- package/dist/core/sdk.d.ts +19 -5
- package/dist/core/sdk.d.ts.map +1 -1
- package/dist/core/sdk.js +74 -54
- package/dist/core/sdk.js.map +1 -1
- package/dist/core/session-cwd.d.ts.map +1 -1
- package/dist/core/session-cwd.js +5 -2
- package/dist/core/session-cwd.js.map +1 -1
- package/dist/core/session-export.d.ts.map +1 -1
- package/dist/core/session-export.js +2 -1
- package/dist/core/session-export.js.map +1 -1
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js +39 -29
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/session-storage.d.ts.map +1 -1
- package/dist/core/session-storage.js +3 -3
- package/dist/core/session-storage.js.map +1 -1
- package/dist/core/settings-manager.d.ts +11 -0
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js +27 -5
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/slash-commands.d.ts.map +1 -1
- package/dist/core/slash-commands.js +53 -32
- package/dist/core/slash-commands.js.map +1 -1
- package/dist/core/system-prompt.d.ts.map +1 -1
- package/dist/core/system-prompt.js +25 -2
- package/dist/core/system-prompt.js.map +1 -1
- package/dist/core/tools/bash.d.ts.map +1 -1
- package/dist/core/tools/bash.js +11 -7
- package/dist/core/tools/bash.js.map +1 -1
- package/dist/core/tools/edit-diff.d.ts.map +1 -1
- package/dist/core/tools/edit-diff.js +9 -4
- package/dist/core/tools/edit-diff.js.map +1 -1
- package/dist/core/tools/edit.d.ts.map +1 -1
- package/dist/core/tools/edit.js +4 -3
- package/dist/core/tools/edit.js.map +1 -1
- package/dist/core/tools/index.d.ts.map +1 -1
- package/dist/core/tools/index.js +3 -2
- package/dist/core/tools/index.js.map +1 -1
- package/dist/core/tools/output-accumulator.d.ts.map +1 -1
- package/dist/core/tools/output-accumulator.js +2 -1
- package/dist/core/tools/output-accumulator.js.map +1 -1
- package/dist/core/tools/read.d.ts.map +1 -1
- package/dist/core/tools/read.js +6 -2
- package/dist/core/tools/read.js.map +1 -1
- package/dist/core/tools/write.d.ts.map +1 -1
- package/dist/core/tools/write.js +2 -1
- package/dist/core/tools/write.js.map +1 -1
- package/dist/durable/durable-service.d.ts.map +1 -1
- package/dist/durable/durable-service.js +25 -18
- package/dist/durable/durable-service.js.map +1 -1
- package/dist/host/checkpoint-commit.d.ts.map +1 -1
- package/dist/host/checkpoint-commit.js +2 -1
- package/dist/host/checkpoint-commit.js.map +1 -1
- package/dist/host/manual-compaction.d.ts.map +1 -1
- package/dist/host/manual-compaction.js +2 -1
- package/dist/host/manual-compaction.js.map +1 -1
- package/dist/host/output-projection.d.ts +0 -13
- package/dist/host/output-projection.d.ts.map +1 -1
- package/dist/host/output-projection.js +16 -2
- package/dist/host/output-projection.js.map +1 -1
- package/dist/host/summary-retry.d.ts.map +1 -1
- package/dist/host/summary-retry.js +3 -2
- package/dist/host/summary-retry.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +94 -58
- package/dist/main.js.map +1 -1
- package/dist/modes/interactive/components/agents-view.d.ts.map +1 -1
- package/dist/modes/interactive/components/agents-view.js +18 -15
- package/dist/modes/interactive/components/agents-view.js.map +1 -1
- package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/assistant-message.js +6 -5
- package/dist/modes/interactive/components/assistant-message.js.map +1 -1
- package/dist/modes/interactive/components/bash-execution.d.ts.map +1 -1
- package/dist/modes/interactive/components/bash-execution.js +12 -7
- package/dist/modes/interactive/components/bash-execution.js.map +1 -1
- package/dist/modes/interactive/components/bordered-loader.d.ts.map +1 -1
- package/dist/modes/interactive/components/bordered-loader.js +2 -1
- package/dist/modes/interactive/components/bordered-loader.js.map +1 -1
- package/dist/modes/interactive/components/branch-summary-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/branch-summary-message.js +6 -5
- package/dist/modes/interactive/components/branch-summary-message.js.map +1 -1
- package/dist/modes/interactive/components/compaction-summary-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/compaction-summary-message.js +9 -5
- package/dist/modes/interactive/components/compaction-summary-message.js.map +1 -1
- package/dist/modes/interactive/components/config-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/config-selector.js +18 -15
- package/dist/modes/interactive/components/config-selector.js.map +1 -1
- package/dist/modes/interactive/components/custom-entry.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-entry.js +2 -1
- package/dist/modes/interactive/components/custom-entry.js.map +1 -1
- package/dist/modes/interactive/components/dialog-editor.d.ts.map +1 -1
- package/dist/modes/interactive/components/dialog-editor.js +5 -4
- package/dist/modes/interactive/components/dialog-editor.js.map +1 -1
- package/dist/modes/interactive/components/dialog-input.d.ts.map +1 -1
- package/dist/modes/interactive/components/dialog-input.js +2 -1
- package/dist/modes/interactive/components/dialog-input.js.map +1 -1
- package/dist/modes/interactive/components/dialog-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/dialog-selector.js +4 -3
- package/dist/modes/interactive/components/dialog-selector.js.map +1 -1
- package/dist/modes/interactive/components/first-time-setup.d.ts.map +1 -1
- package/dist/modes/interactive/components/first-time-setup.js +11 -10
- package/dist/modes/interactive/components/first-time-setup.js.map +1 -1
- package/dist/modes/interactive/components/footer.d.ts.map +1 -1
- package/dist/modes/interactive/components/footer.js +7 -4
- package/dist/modes/interactive/components/footer.js.map +1 -1
- package/dist/modes/interactive/components/index.d.ts +1 -0
- package/dist/modes/interactive/components/index.d.ts.map +1 -1
- package/dist/modes/interactive/components/index.js +1 -0
- package/dist/modes/interactive/components/index.js.map +1 -1
- package/dist/modes/interactive/components/keybinding-hints.d.ts.map +1 -1
- package/dist/modes/interactive/components/keybinding-hints.js +3 -2
- package/dist/modes/interactive/components/keybinding-hints.js.map +1 -1
- package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
- package/dist/modes/interactive/components/login-dialog.js +12 -11
- package/dist/modes/interactive/components/login-dialog.js.map +1 -1
- package/dist/modes/interactive/components/mermaid.d.ts.map +1 -1
- package/dist/modes/interactive/components/mermaid.js +6 -2
- package/dist/modes/interactive/components/mermaid.js.map +1 -1
- package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/model-selector.js +28 -16
- package/dist/modes/interactive/components/model-selector.js.map +1 -1
- package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/oauth-selector.js +10 -9
- package/dist/modes/interactive/components/oauth-selector.js.map +1 -1
- package/dist/modes/interactive/components/plugin-manager-entry.d.ts.map +1 -1
- package/dist/modes/interactive/components/plugin-manager-entry.js +22 -13
- package/dist/modes/interactive/components/plugin-manager-entry.js.map +1 -1
- package/dist/modes/interactive/components/plugin-selection-entry.d.ts.map +1 -1
- package/dist/modes/interactive/components/plugin-selection-entry.js +27 -12
- package/dist/modes/interactive/components/plugin-selection-entry.js.map +1 -1
- package/dist/modes/interactive/components/queue-manager-selector.d.ts +60 -0
- package/dist/modes/interactive/components/queue-manager-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/queue-manager-selector.js +166 -0
- package/dist/modes/interactive/components/queue-manager-selector.js.map +1 -0
- package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/scoped-models-selector.js +16 -14
- package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
- package/dist/modes/interactive/components/session-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/session-selector.js +43 -31
- package/dist/modes/interactive/components/session-selector.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector.d.ts +2 -0
- package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector.js +113 -96
- package/dist/modes/interactive/components/settings-selector.js.map +1 -1
- package/dist/modes/interactive/components/settings-submenu.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-submenu.js +5 -4
- package/dist/modes/interactive/components/settings-submenu.js.map +1 -1
- package/dist/modes/interactive/components/show-images-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/show-images-selector.js +3 -2
- package/dist/modes/interactive/components/show-images-selector.js.map +1 -1
- package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/skill-invocation-message.js +4 -3
- package/dist/modes/interactive/components/skill-invocation-message.js.map +1 -1
- package/dist/modes/interactive/components/status-indicator.d.ts.map +1 -1
- package/dist/modes/interactive/components/status-indicator.js +14 -5
- package/dist/modes/interactive/components/status-indicator.js.map +1 -1
- package/dist/modes/interactive/components/theme-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/theme-selector.js +2 -1
- package/dist/modes/interactive/components/theme-selector.js.map +1 -1
- package/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/thinking-selector.js +11 -4
- package/dist/modes/interactive/components/thinking-selector.js.map +1 -1
- package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
- package/dist/modes/interactive/components/tool-execution.js +8 -3
- package/dist/modes/interactive/components/tool-execution.js.map +1 -1
- package/dist/modes/interactive/components/tree-list.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-list.js +7 -6
- package/dist/modes/interactive/components/tree-list.js.map +1 -1
- package/dist/modes/interactive/components/tree-render.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-render.js +28 -23
- package/dist/modes/interactive/components/tree-render.js.map +1 -1
- package/dist/modes/interactive/components/tree-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-selector.js +9 -7
- package/dist/modes/interactive/components/tree-selector.js.map +1 -1
- package/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/user-message-selector.js +5 -4
- package/dist/modes/interactive/components/user-message-selector.js.map +1 -1
- package/dist/modes/interactive/components/workflow-view.d.ts.map +1 -1
- package/dist/modes/interactive/components/workflow-view.js +36 -21
- package/dist/modes/interactive/components/workflow-view.js.map +1 -1
- package/dist/modes/interactive/external-editor.d.ts.map +1 -1
- package/dist/modes/interactive/external-editor.js +2 -1
- package/dist/modes/interactive/external-editor.js.map +1 -1
- package/dist/modes/interactive/interactive-auth.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-auth.js +71 -40
- package/dist/modes/interactive/interactive-auth.js.map +1 -1
- package/dist/modes/interactive/interactive-commands.d.ts +1 -0
- package/dist/modes/interactive/interactive-commands.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-commands.js +3 -0
- package/dist/modes/interactive/interactive-commands.js.map +1 -1
- package/dist/modes/interactive/interactive-dialog-ui.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-dialog-ui.js +5 -5
- package/dist/modes/interactive/interactive-dialog-ui.js.map +1 -1
- package/dist/modes/interactive/interactive-format.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-format.js +34 -18
- package/dist/modes/interactive/interactive-format.js.map +1 -1
- package/dist/modes/interactive/interactive-helpers.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-helpers.js +7 -2
- package/dist/modes/interactive/interactive-helpers.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts +4 -1
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +327 -243
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/dist/modes/interactive/interactive-selectors.d.ts +9 -0
- package/dist/modes/interactive/interactive-selectors.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-selectors.js +79 -25
- package/dist/modes/interactive/interactive-selectors.js.map +1 -1
- package/dist/modes/interactive/theme/theme-controller.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme-controller.js +5 -1
- package/dist/modes/interactive/theme/theme-controller.js.map +1 -1
- package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme.js +26 -23
- package/dist/modes/interactive/theme/theme.js.map +1 -1
- package/dist/modes/json-event.d.ts.map +1 -1
- package/dist/modes/json-event.js +3 -2
- package/dist/modes/json-event.js.map +1 -1
- package/dist/modes/print-mode.d.ts.map +1 -1
- package/dist/modes/print-mode.js +3 -2
- package/dist/modes/print-mode.js.map +1 -1
- package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-client.js +3 -2
- package/dist/modes/rpc/rpc-client.js.map +1 -1
- package/dist/package-manager-cli.d.ts.map +1 -1
- package/dist/package-manager-cli.js +28 -13
- package/dist/package-manager-cli.js.map +1 -1
- package/dist/plugins/ecosystem/catalog.d.ts.map +1 -1
- package/dist/plugins/ecosystem/catalog.js +3 -2
- package/dist/plugins/ecosystem/catalog.js.map +1 -1
- package/dist/plugins/ecosystem/cli.d.ts.map +1 -1
- package/dist/plugins/ecosystem/cli.js +2 -1
- package/dist/plugins/ecosystem/cli.js.map +1 -1
- package/dist/plugins/ecosystem/default-plugin-market.d.ts.map +1 -1
- package/dist/plugins/ecosystem/default-plugin-market.js +3 -2
- package/dist/plugins/ecosystem/default-plugin-market.js.map +1 -1
- package/dist/plugins/ecosystem/distribution.d.ts.map +1 -1
- package/dist/plugins/ecosystem/distribution.js +2 -1
- package/dist/plugins/ecosystem/distribution.js.map +1 -1
- package/dist/plugins/ecosystem/installer.d.ts.map +1 -1
- package/dist/plugins/ecosystem/installer.js +3 -2
- package/dist/plugins/ecosystem/installer.js.map +1 -1
- package/dist/plugins/ecosystem/node-disk-registry-source.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-disk-registry-source.js +20 -17
- package/dist/plugins/ecosystem/node-disk-registry-source.js.map +1 -1
- package/dist/plugins/ecosystem/node-distribution-host.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-distribution-host.js +35 -34
- package/dist/plugins/ecosystem/node-distribution-host.js.map +1 -1
- package/dist/plugins/ecosystem/node-npm-registry-source.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-npm-registry-source.js +35 -34
- package/dist/plugins/ecosystem/node-npm-registry-source.js.map +1 -1
- package/dist/plugins/ecosystem/node-package-install-host.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-package-install-host.js +9 -8
- package/dist/plugins/ecosystem/node-package-install-host.js.map +1 -1
- package/dist/plugins/ecosystem/node-package-install-persistence.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-package-install-persistence.js +4 -3
- package/dist/plugins/ecosystem/node-package-install-persistence.js.map +1 -1
- package/dist/plugins/ecosystem/node-plugin-bootstrap.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-plugin-bootstrap.js +21 -5
- package/dist/plugins/ecosystem/node-plugin-bootstrap.js.map +1 -1
- package/dist/plugins/ecosystem/node-plugin-trust-root.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-plugin-trust-root.js +10 -9
- package/dist/plugins/ecosystem/node-plugin-trust-root.js.map +1 -1
- package/dist/plugins/ecosystem/node-registry-source.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-registry-source.js +31 -30
- package/dist/plugins/ecosystem/node-registry-source.js.map +1 -1
- package/dist/plugins/ecosystem/node-release-package-source.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-release-package-source.js +30 -29
- package/dist/plugins/ecosystem/node-release-package-source.js.map +1 -1
- package/dist/plugins/ecosystem/node-tar-writer.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-tar-writer.js +11 -10
- package/dist/plugins/ecosystem/node-tar-writer.js.map +1 -1
- package/dist/plugins/ecosystem/node-url-package-source.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-url-package-source.js +21 -20
- package/dist/plugins/ecosystem/node-url-package-source.js.map +1 -1
- package/dist/plugins/ecosystem/plugin-acquisition.d.ts.map +1 -1
- package/dist/plugins/ecosystem/plugin-acquisition.js +3 -2
- package/dist/plugins/ecosystem/plugin-acquisition.js.map +1 -1
- package/dist/plugins/ecosystem/registry-cli-adapter.d.ts.map +1 -1
- package/dist/plugins/ecosystem/registry-cli-adapter.js +2 -1
- package/dist/plugins/ecosystem/registry-cli-adapter.js.map +1 -1
- package/dist/plugins/ecosystem/registry.d.ts.map +1 -1
- package/dist/plugins/ecosystem/registry.js +35 -32
- package/dist/plugins/ecosystem/registry.js.map +1 -1
- package/dist/plugins/ecosystem/resolver.d.ts.map +1 -1
- package/dist/plugins/ecosystem/resolver.js +3 -2
- package/dist/plugins/ecosystem/resolver.js.map +1 -1
- package/dist/plugins/ecosystem/selection-store.d.ts.map +1 -1
- package/dist/plugins/ecosystem/selection-store.js +11 -10
- package/dist/plugins/ecosystem/selection-store.js.map +1 -1
- package/dist/plugins/ecosystem/selection.d.ts.map +1 -1
- package/dist/plugins/ecosystem/selection.js +8 -7
- package/dist/plugins/ecosystem/selection.js.map +1 -1
- package/dist/plugins/ecosystem/state.d.ts.map +1 -1
- package/dist/plugins/ecosystem/state.js +24 -23
- package/dist/plugins/ecosystem/state.js.map +1 -1
- package/dist/plugins/ecosystem/updates.d.ts.map +1 -1
- package/dist/plugins/ecosystem/updates.js +5 -4
- package/dist/plugins/ecosystem/updates.js.map +1 -1
- package/dist/plugins/mcp-http.d.ts +0 -17
- package/dist/plugins/mcp-http.d.ts.map +1 -1
- package/dist/plugins/mcp-http.js +30 -7
- package/dist/plugins/mcp-http.js.map +1 -1
- package/dist/plugins/plugin-supervisor.d.ts.map +1 -1
- package/dist/plugins/plugin-supervisor.js +19 -1
- package/dist/plugins/plugin-supervisor.js.map +1 -1
- package/dist/profile/first-roles.d.ts.map +1 -1
- package/dist/profile/first-roles.js +10 -1
- package/dist/profile/first-roles.js.map +1 -1
- package/dist/profile/goal-plugin.d.ts.map +1 -1
- package/dist/profile/goal-plugin.js +24 -5
- package/dist/profile/goal-plugin.js.map +1 -1
- package/dist/profile/identity.d.ts.map +1 -1
- package/dist/profile/identity.js +7 -6
- package/dist/profile/identity.js.map +1 -1
- package/dist/profile/lock.d.ts.map +1 -1
- package/dist/profile/lock.js +15 -1
- package/dist/profile/lock.js.map +1 -1
- package/dist/profile/plan-plugin.d.ts.map +1 -1
- package/dist/profile/plan-plugin.js +26 -13
- package/dist/profile/plan-plugin.js.map +1 -1
- package/dist/profile/plugin-profiles.d.ts.map +1 -1
- package/dist/profile/plugin-profiles.js +2 -1
- package/dist/profile/plugin-profiles.js.map +1 -1
- package/dist/profile/policy-manifest.d.ts.map +1 -1
- package/dist/profile/policy-manifest.js +5 -4
- package/dist/profile/policy-manifest.js.map +1 -1
- package/dist/profile/profile-registry.d.ts +0 -12
- package/dist/profile/profile-registry.d.ts.map +1 -1
- package/dist/profile/profile-registry.js +14 -1
- package/dist/profile/profile-registry.js.map +1 -1
- package/dist/profile/role-catalog.d.ts +0 -1
- package/dist/profile/role-catalog.d.ts.map +1 -1
- package/dist/profile/role-catalog.js +17 -15
- package/dist/profile/role-catalog.js.map +1 -1
- package/dist/profile/role-orchestrator.d.ts.map +1 -1
- package/dist/profile/role-orchestrator.js +8 -7
- package/dist/profile/role-orchestrator.js.map +1 -1
- package/dist/profile/role-runner.d.ts.map +1 -1
- package/dist/profile/role-runner.js +3 -2
- package/dist/profile/role-runner.js.map +1 -1
- package/dist/profile/root-facade.d.ts.map +1 -1
- package/dist/profile/root-facade.js +2 -1
- package/dist/profile/root-facade.js.map +1 -1
- package/dist/profile/skill-discovery-wiring.d.ts.map +1 -1
- package/dist/profile/skill-discovery-wiring.js +7 -2
- package/dist/profile/skill-discovery-wiring.js.map +1 -1
- package/dist/profile/state-store.d.ts.map +1 -1
- package/dist/profile/state-store.js +13 -9
- package/dist/profile/state-store.js.map +1 -1
- package/dist/profile/todo-plugin.d.ts.map +1 -1
- package/dist/profile/todo-plugin.js +9 -4
- package/dist/profile/todo-plugin.js.map +1 -1
- package/dist/profiles/builtin-suites.d.ts +13 -6
- package/dist/profiles/builtin-suites.d.ts.map +1 -1
- package/dist/profiles/builtin-suites.js +15 -6
- package/dist/profiles/builtin-suites.js.map +1 -1
- package/dist/profiles/suite-loader.d.ts +25 -1
- package/dist/profiles/suite-loader.d.ts.map +1 -1
- package/dist/profiles/suite-loader.js +34 -9
- package/dist/profiles/suite-loader.js.map +1 -1
- package/dist/remote/server-entry.d.ts.map +1 -1
- package/dist/remote/server-entry.js +3 -2
- package/dist/remote/server-entry.js.map +1 -1
- package/dist/remote/session-source.d.ts.map +1 -1
- package/dist/remote/session-source.js +8 -4
- package/dist/remote/session-source.js.map +1 -1
- package/dist/share/session-share.d.ts.map +1 -1
- package/dist/share/session-share.js +14 -2
- package/dist/share/session-share.js.map +1 -1
- package/dist/testing/plugin-testkit.d.ts.map +1 -1
- package/dist/testing/plugin-testkit.js +4 -3
- package/dist/testing/plugin-testkit.js.map +1 -1
- package/dist/testing/runtime-delivery-queue.d.ts.map +1 -1
- package/dist/testing/runtime-delivery-queue.js +2 -1
- package/dist/testing/runtime-delivery-queue.js.map +1 -1
- package/dist/testing/session-plugin-testkit.d.ts.map +1 -1
- package/dist/testing/session-plugin-testkit.js +10 -7
- package/dist/testing/session-plugin-testkit.js.map +1 -1
- package/dist/utils/ansi.d.ts.map +1 -1
- package/dist/utils/ansi.js +2 -1
- package/dist/utils/ansi.js.map +1 -1
- package/dist/utils/clipboard.d.ts.map +1 -1
- package/dist/utils/clipboard.js +7 -6
- package/dist/utils/clipboard.js.map +1 -1
- package/dist/utils/image-resize-worker.d.ts.map +1 -1
- package/dist/utils/image-resize-worker.js +3 -2
- package/dist/utils/image-resize-worker.js.map +1 -1
- package/dist/utils/shell.d.ts.map +1 -1
- package/dist/utils/shell.js +9 -8
- package/dist/utils/shell.js.map +1 -1
- package/dist/utils/tools-manager.d.ts.map +1 -1
- package/dist/utils/tools-manager.js +23 -13
- package/dist/utils/tools-manager.js.map +1 -1
- package/dist/utils/version-check.d.ts.map +1 -1
- package/dist/utils/version-check.js +5 -1
- package/dist/utils/version-check.js.map +1 -1
- package/docs/keybindings.md +3 -0
- package/docs/quickstart.md +1 -1
- package/docs/settings.md +1 -0
- package/docs/terminal-setup.md +2 -3
- package/docs/usage.md +6 -5
- package/examples/extensions/with-deps/package-lock.json +2 -2
- package/examples/extensions/with-deps/package.json +1 -1
- package/examples/extensions/with-deps/plugin.json +1 -1
- package/package.json +1 -1
- package/dist/bundle/chunks/chunk-EALJ5DDX.js +0 -1452
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"core-contract-extensions.js","sourceRoot":"","sources":["../../../../../src/core/i18n/locales/zh-cn/core-contract-extensions.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * core-contract-extensions 域词典(批次⑨a):src/core/extensions/ 插件开发者\n * 契约错误(D 类)。覆盖范围见 docs/design/国际化与本地化.md:lifecycle 事件\n * envelope 校验、能力运行时、插件 manifest/注册校验、宿主能力门卫、引导插件\n * 与投递队列。key 为英文原文(与调用点逐字一致),占位符 `{name}` 原样保留;\n * 事件名(tool.call 等)与字段路径(data.revision.sessionId 等)按术语保留原文。\n * 豁免未包装(行为依赖消息前缀匹配):Capability API is revoked / Contribution\n * point is not defined(capability-runtime-store.ts / agent-session-tools.ts 以\n * startsWith 消费)。\n */\nexport const coreContractExtensions: Record<string, string> = {\n\t// ---- lifecycle 事件 envelope 校验(lifecycle-catalog.ts) ----\n\t\"agent lifecycle data has unsupported fields\": \"agent lifecycle data 包含不支持的字段\",\n\t\"agent lifecycle data must be a plain object\": \"agent lifecycle data 必须是普通对象\",\n\t\"agent lifecycle data.version must be 1\": \"agent lifecycle data.version 必须为 1\",\n\t\"agent.end data has unsupported fields\": \"agent.end data 包含不支持的字段\",\n\t\"agent.end data must be a plain object\": \"agent.end data 必须是普通对象\",\n\t\"agent.end data.messageCount must be a non-negative safe integer\": \"agent.end data.messageCount 必须是非负安全整数\",\n\t\"agent.end data.version must be 1\": \"agent.end data.version 必须为 1\",\n\t\"agent.task.settled data has unsupported fields: {unsupported}\":\n\t\t\"agent.task.settled data 包含不支持的字段:{unsupported}\",\n\t\"agent.task.settled data is missing required field: {key}\": \"agent.task.settled data 缺少必需字段:{key}\",\n\t\"agent.task.settled data must be a plain object\": \"agent.task.settled data 必须是普通对象\",\n\t\"agent.task.settled data.status is invalid\": \"agent.task.settled data.status 无效\",\n\t\"agent.task.settled data.version must be 1\": \"agent.task.settled data.version 必须为 1\",\n\t\"before.agent.start data has unsupported fields\": \"before.agent.start data 包含不支持的字段\",\n\t\"before.agent.start data has unsupported fields: {unsupported}\":\n\t\t\"before.agent.start data 包含不支持的字段:{unsupported}\",\n\t\"before.agent.start data is missing required field: {key}\": \"before.agent.start data 缺少必需字段:{key}\",\n\t\"before.agent.start data must be a plain object\": \"before.agent.start data 必须是普通对象\", // 复用:lifecycle-catalog.ts\n\t\"before.agent.start data.hasImages must be a boolean\": \"before.agent.start data.hasImages 必须是布尔值\",\n\t\"before.agent.start data.systemPrompt must be a string\": \"before.agent.start data.systemPrompt 必须是字符串\",\n\t\"before.agent.start data.systemPromptOptions must be a plain object\":\n\t\t\"before.agent.start data.systemPromptOptions 必须是普通对象\",\n\t\"before.agent.start data.version must be 1\": \"before.agent.start data.version 必须为 1\",\n\t\"before.agent.start data.version must be 2\": \"before.agent.start data.version 必须为 2\",\n\t\"capability.call data has unsupported fields: {unsupported}\": \"capability.call data 包含不支持的字段:{unsupported}\",\n\t\"capability.call data is missing required field: {key}\": \"capability.call data 缺少必需字段:{key}\",\n\t\"capability.call data must be a plain object\": \"capability.call data 必须是普通对象\",\n\t\"capability.call data.capabilityKind is invalid\": \"capability.call data.capabilityKind 无效\",\n\t\"capability.call data.capabilityVersion must be a positive safe integer\":\n\t\t\"capability.call data.capabilityVersion 必须是正安全整数\",\n\t\"capability.call data.error has unsupported fields\": \"capability.call data.error 包含不支持的字段\",\n\t\"capability.call data.error is missing required field: code\": \"capability.call data.error 缺少必需字段:code\",\n\t\"capability.call data.error is missing required field: message\": \"capability.call data.error 缺少必需字段:message\",\n\t\"capability.call data.error must be a plain object\": \"capability.call data.error 必须是普通对象\",\n\t\"capability.call data.event is invalid\": \"capability.call data.event 无效\",\n\t\"capability.call data.status is invalid\": \"capability.call data.status 无效\",\n\t\"capability.call data.version must be 1\": \"capability.call data.version 必须为 1\",\n\t\"capability.call end requires status\": \"capability.call 的 end 需要 status\",\n\t\"capability.call start/cancel must not include error\": \"capability.call 的 start/cancel 不得包含 error\",\n\t\"capability.call start/cancel must not include status\": \"capability.call 的 start/cancel 不得包含 status\",\n\t\"capability.call succeeded end must not include error\": \"capability.call 成功的 end 不得包含 error\",\n\t\"context.assembled data has unsupported fields\": \"context.assembled data 包含不支持的字段\",\n\t\"context.assembled data must be a plain object\": \"context.assembled data 必须是普通对象\",\n\t\"context.assembled data.messageCount must be a non-negative safe integer\":\n\t\t\"context.assembled data.messageCount 必须是非负安全整数\",\n\t\"context.assembled data.version must be 1\": \"context.assembled data.version 必须为 1\",\n\t\"input.gate.blocked data has unsupported fields: {unsupported}\":\n\t\t\"input.gate.blocked data 包含不支持的字段:{unsupported}\",\n\t\"input.gate.blocked data is missing required field: {key}\": \"input.gate.blocked data 缺少必需字段:{key}\",\n\t\"input.gate.blocked data must be a plain object\": \"input.gate.blocked data 必须是普通对象\",\n\t\"input.gate.blocked data.textLength must be a non-negative integer\":\n\t\t\"input.gate.blocked data.textLength 必须是非负整数\",\n\t\"input.gate.blocked data.version must be 1\": \"input.gate.blocked data.version 必须为 1\",\n\t\"input.received data has unsupported fields\": \"input.received data 包含不支持的字段\",\n\t\"input.received data must be a plain object\": \"input.received data 必须是普通对象\",\n\t\"input.received data.textLength must be a non-negative safe integer\":\n\t\t\"input.received data.textLength 必须是非负安全整数\",\n\t\"input.received data.version must be 1\": \"input.received data.version 必须为 1\",\n\t\"message lifecycle data has unsupported fields\": \"message lifecycle data 包含不支持的字段\",\n\t\"message lifecycle data must be a plain object\": \"message lifecycle data 必须是普通对象\",\n\t\"message lifecycle data.version must be 1\": \"message lifecycle data.version 必须为 1\",\n\t\"model.response data has unsupported fields: {unsupported}\": \"model.response data 包含不支持的字段:{unsupported}\",\n\t\"model.response data is missing required field: {key}\": \"model.response data 缺少必需字段:{key}\",\n\t\"model.response data must be a plain object\": \"model.response data 必须是普通对象\",\n\t\"model.response data.message must be an assistant message object\":\n\t\t\"model.response data.message 必须是 assistant message 对象\",\n\t\"model.response data.message.role must be assistant\": \"model.response data.message.role 必须是 assistant\",\n\t\"model.response data.revision has unsupported fields\": \"model.response data.revision 包含不支持的字段\",\n\t\"model.response data.revision must be a plain object\": \"model.response data.revision 必须是普通对象\",\n\t\"model.response data.revision.sequence must be a non-negative safe integer\":\n\t\t\"model.response data.revision.sequence 必须是非负安全整数\",\n\t\"model.response data.revision.sessionId must match sessionId\":\n\t\t\"model.response data.revision.sessionId 必须与 sessionId 一致\",\n\t\"model.response data.revision.version must be 1\": \"model.response data.revision.version 必须为 1\",\n\t\"model.response data.stopReason is invalid\": \"model.response data.stopReason 无效\",\n\t\"model.response data.version must be 1\": \"model.response data.version 必须为 1\",\n\t\"model.select data has unsupported fields\": \"model.select data 包含不支持的字段\",\n\t\"model.select data must be a plain object\": \"model.select data 必须是普通对象\",\n\t\"model.select data.source is invalid\": \"model.select data.source 无效\",\n\t\"model.select data.version must be 1\": \"model.select data.version 必须为 1\",\n\t\"model.stream committed phase only permits terminal events\": \"model.stream 的 committed phase 只允许终止事件\",\n\t\"model.stream data has unsupported fields: {unsupported}\": \"model.stream data 包含不支持的字段:{unsupported}\",\n\t\"model.stream data is missing required field: {key}\": \"model.stream data 缺少必需字段:{key}\",\n\t\"model.stream data must be a plain object\": \"model.stream data 必须是普通对象\",\n\t\"model.stream data.event is invalid\": \"model.stream data.event 无效\",\n\t\"model.stream data.phase is invalid\": \"model.stream data.phase 无效\",\n\t\"model.stream data.sequence must be a positive safe integer\": \"model.stream data.sequence 必须是正安全整数\",\n\t\"model.stream data.terminal does not match event\": \"model.stream data.terminal 与 event 不一致\",\n\t\"model.stream data.version must be 1\": \"model.stream data.version 必须为 1\",\n\t\"model.stream done event cannot contain error\": \"model.stream 的 done 事件不能包含 error\",\n\t\"model.stream error event requires error object\": \"model.stream 的 error 事件需要 error 对象\",\n\t\"model.stream error has unsupported fields\": \"model.stream error 包含不支持的字段\",\n\t\"model.stream non-terminal event cannot contain error\": \"model.stream 的非终止事件不能包含 error\",\n\t\"operation.cancel data has unsupported fields\": \"operation.cancel data 包含不支持的字段\",\n\t\"operation.cancel data must be a plain object\": \"operation.cancel data 必须是普通对象\",\n\t\"operation.cancel data.version must be 1\": \"operation.cancel data.version 必须为 1\",\n\t\"operation.end data has unsupported fields: {unsupported}\": \"operation.end data 包含不支持的字段:{unsupported}\",\n\t\"operation.end data is missing required field: {key}\": \"operation.end data 缺少必需字段:{key}\",\n\t\"operation.end data must be a plain object\": \"operation.end data 必须是普通对象\",\n\t\"operation.end data.status is invalid\": \"operation.end data.status 无效\",\n\t\"operation.end data.version must be 1\": \"operation.end data.version 必须为 1\",\n\t\"operation.start data has unsupported fields\": \"operation.start data 包含不支持的字段\",\n\t\"operation.start data must be a plain object\": \"operation.start data 必须是普通对象\",\n\t\"operation.start data.version must be 1\": \"operation.start data.version 必须为 1\",\n\t\"operation.step data has unsupported fields\": \"operation.step data 包含不支持的字段\",\n\t\"operation.step data must be a plain object\": \"operation.step data 必须是普通对象\",\n\t\"operation.step data.step must be a positive safe integer\": \"operation.step data.step 必须是正安全整数\",\n\t\"operation.step data.version must be 1\": \"operation.step data.version 必须为 1\",\n\t\"plugin.dispose data has unsupported fields\": \"plugin.dispose data 包含不支持的字段\",\n\t\"plugin.dispose data must be a plain object\": \"plugin.dispose data 必须是普通对象\",\n\t\"plugin.dispose data.status is invalid\": \"plugin.dispose data.status 无效\",\n\t\"plugin.dispose data.version must be 1\": \"plugin.dispose data.version 必须为 1\",\n\t\"plugin.ready data has unsupported fields\": \"plugin.ready data 包含不支持的字段\",\n\t\"plugin.ready data must be a plain object\": \"plugin.ready data 必须是普通对象\",\n\t\"plugin.ready data.version must be 1\": \"plugin.ready data.version 必须为 1\",\n\t\"plugin.rejected data has unsupported fields\": \"plugin.rejected data 包含不支持的字段\",\n\t\"plugin.rejected data must be a plain object\": \"plugin.rejected data 必须是普通对象\",\n\t\"plugin.rejected data.code is invalid\": \"plugin.rejected data.code 无效\",\n\t\"plugin.rejected data.pluginId must be a string when present\": \"plugin.rejected data.pluginId 存在时必须是字符串\",\n\t\"plugin.rejected data.version must be 1\": \"plugin.rejected data.version 必须为 1\",\n\t\"provider.failover.probe.failed data has unsupported fields: {unsupported}\":\n\t\t\"provider.failover.probe.failed data 包含不支持的字段:{unsupported}\",\n\t\"provider.failover.probe.failed data is missing required field: {key}\":\n\t\t\"provider.failover.probe.failed data 缺少必需字段:{key}\",\n\t\"provider.failover.probe.failed data must be a plain object\": \"provider.failover.probe.failed data 必须是普通对象\",\n\t\"provider.failover.probe.failed data.version must be 1\": \"provider.failover.probe.failed data.version 必须为 1\",\n\t\"provider.failover.recovered data has unsupported fields\": \"provider.failover.recovered data 包含不支持的字段\",\n\t\"provider.failover.recovered data must be a plain object\": \"provider.failover.recovered data 必须是普通对象\",\n\t\"provider.failover.recovered data.version must be 1\": \"provider.failover.recovered data.version 必须为 1\",\n\t\"provider.failover.switched data has unsupported fields: {unsupported}\":\n\t\t\"provider.failover.switched data 包含不支持的字段:{unsupported}\",\n\t\"provider.failover.switched data is missing required field: {key}\":\n\t\t\"provider.failover.switched data 缺少必需字段:{key}\",\n\t\"provider.failover.switched data must be a plain object\": \"provider.failover.switched data 必须是普通对象\",\n\t\"provider.failover.switched data.version must be 1\": \"provider.failover.switched data.version 必须为 1\",\n\t\"resources.discover data has unsupported fields\": \"resources.discover data 包含不支持的字段\",\n\t\"resources.discover data has unsupported fields: {unsupported}\":\n\t\t\"resources.discover data 包含不支持的字段:{unsupported}\",\n\t\"resources.discover data is missing required field: {key}\": \"resources.discover data 缺少必需字段:{key}\",\n\t\"resources.discover data must be a plain object\": \"resources.discover data 必须是普通对象\", // 复用:lifecycle-catalog.ts\n\t\"resources.discover data.reason is invalid\": \"resources.discover data.reason 无效\", // 复用:lifecycle-catalog.ts\n\t\"resources.discover data.version must be 1\": \"resources.discover data.version 必须为 1\",\n\t\"resources.discover data.version must be 2\": \"resources.discover data.version 必须为 2\",\n\t\"session.auto.retry data has unsupported fields: {unsupported}\":\n\t\t\"session.auto.retry data 包含不支持的字段:{unsupported}\",\n\t\"session.auto.retry data is missing required field: {key}\": \"session.auto.retry data 缺少必需字段:{key}\",\n\t\"session.auto.retry data must be a plain object\": \"session.auto.retry data 必须是普通对象\",\n\t\"session.auto.retry data.version must be 1\": \"session.auto.retry data.version 必须为 1\",\n\t\"session.compaction.decision data has unsupported fields: {unsupported}\":\n\t\t\"session.compaction.decision data 包含不支持的字段:{unsupported}\",\n\t\"session.compaction.decision data is missing required field: {key}\":\n\t\t\"session.compaction.decision data 缺少必需字段:{key}\",\n\t\"session.compaction.decision data must be a plain object\": \"session.compaction.decision data 必须是普通对象\",\n\t\"session.compaction.decision data.compact must be a boolean\":\n\t\t\"session.compaction.decision data.compact 必须是布尔值\",\n\t\"session.compaction.decision data.reason is invalid\": \"session.compaction.decision data.reason 无效\",\n\t\"session.compaction.decision data.version must be 1\": \"session.compaction.decision data.version 必须为 1\",\n\t\"session.compaction.decision data.willRetry must be a boolean\":\n\t\t\"session.compaction.decision data.willRetry 必须是布尔值\",\n\t\"session.compaction.failed data has unsupported fields: {unsupported}\":\n\t\t\"session.compaction.failed data 包含不支持的字段:{unsupported}\",\n\t\"session.compaction.failed data is missing required field: {key}\":\n\t\t\"session.compaction.failed data 缺少必需字段:{key}\",\n\t\"session.compaction.failed data must be a plain object\": \"session.compaction.failed data 必须是普通对象\",\n\t\"session.compaction.failed data.reason is invalid\": \"session.compaction.failed data.reason 无效\",\n\t\"session.compaction.failed data.version must be 1\": \"session.compaction.failed data.version 必须为 1\",\n\t\"session.context.replaced data has unsupported fields: {unsupported}\":\n\t\t\"session.context.replaced data 包含不支持的字段:{unsupported}\",\n\t\"session.context.replaced data is missing required field: {key}\":\n\t\t\"session.context.replaced data 缺少必需字段:{key}\",\n\t\"session.context.replaced data must be a plain object\": \"session.context.replaced data 必须是普通对象\",\n\t\"session.context.replaced data.messageCount must be a non-negative safe integer\":\n\t\t\"session.context.replaced data.messageCount 必须是非负安全整数\",\n\t\"session.context.replaced data.reason is invalid\": \"session.context.replaced data.reason 无效\",\n\t\"session.context.replaced data.version must be 1\": \"session.context.replaced data.version 必须为 1\",\n\t\"session.end data has unsupported fields\": \"session.end data 包含不支持的字段\",\n\t\"session.end data must be a plain object\": \"session.end data 必须是普通对象\",\n\t\"session.end data.version must be 1\": \"session.end data.version 必须为 1\",\n\t\"session.entry.appended data has unsupported fields\": \"session.entry.appended data 包含不支持的字段\",\n\t\"session.entry.appended data must be a plain object\": \"session.entry.appended data 必须是普通对象\",\n\t\"session.entry.appended data.version must be 1\": \"session.entry.appended data.version 必须为 1\",\n\t\"session.info.changed data has unsupported fields\": \"session.info.changed data 包含不支持的字段\",\n\t\"session.info.changed data must be a plain object\": \"session.info.changed data 必须是普通对象\",\n\t\"session.info.changed data.version must be 1\": \"session.info.changed data.version 必须为 1\",\n\t\"session.reload data has unsupported fields\": \"session.reload data 包含不支持的字段\",\n\t\"session.reload data must be a plain object\": \"session.reload data 必须是普通对象\",\n\t\"session.reload data.generation must be a positive safe integer\": \"session.reload data.generation 必须是正安全整数\",\n\t\"session.reload data.reason is invalid\": \"session.reload data.reason 无效\",\n\t\"session.reload data.version must be 1\": \"session.reload data.version 必须为 1\",\n\t\"session.start data has unsupported fields\": \"session.start data 包含不支持的字段\",\n\t\"session.start data must be a plain object\": \"session.start data 必须是普通对象\",\n\t\"session.start data.reason is invalid\": \"session.start data.reason 无效\",\n\t\"session.start data.version must be 1\": \"session.start data.version 必须为 1\",\n\t\"thinking_level.select data has unsupported fields\": \"thinking_level.select data 包含不支持的字段\",\n\t\"thinking_level.select data must be a plain object\": \"thinking_level.select data 必须是普通对象\",\n\t\"thinking_level.select data.version must be 1\": \"thinking_level.select data.version 必须为 1\",\n\t\"tool.call data has unsupported fields: {unsupported}\": \"tool.call data 包含不支持的字段:{unsupported}\",\n\t\"tool.call data is missing required field: {key}\": \"tool.call data 缺少必需字段:{key}\",\n\t\"tool.call data must be a plain object\": \"tool.call data 必须是普通对象\",\n\t\"tool.call data.revision has unsupported fields\": \"tool.call data.revision 包含不支持的字段\",\n\t\"tool.call data.revision must be a plain object\": \"tool.call data.revision 必须是普通对象\",\n\t\"tool.call data.revision.sequence must be a non-negative safe integer\":\n\t\t\"tool.call data.revision.sequence 必须是非负安全整数\",\n\t\"tool.call data.revision.sessionId must match sessionId\": \"tool.call data.revision.sessionId 必须与 sessionId 一致\",\n\t\"tool.call data.revision.version must be 1\": \"tool.call data.revision.version 必须为 1\",\n\t\"tool.call data.version must be 1\": \"tool.call data.version 必须为 1\",\n\t\"tool.commit data has unsupported fields: {unsupported}\": \"tool.commit data 包含不支持的字段:{unsupported}\",\n\t\"tool.commit data is missing required field: {key}\": \"tool.commit data 缺少必需字段:{key}\",\n\t\"tool.commit data must be a plain object\": \"tool.commit data 必须是普通对象\",\n\t\"tool.commit data.isError must be boolean\": \"tool.commit data.isError 必须是布尔值\",\n\t\"tool.commit data.revision has unsupported fields\": \"tool.commit data.revision 包含不支持的字段\",\n\t\"tool.commit data.revision must be a plain object\": \"tool.commit data.revision 必须是普通对象\",\n\t\"tool.commit data.revision.sequence must be a non-negative safe integer\":\n\t\t\"tool.commit data.revision.sequence 必须是非负安全整数\",\n\t\"tool.commit data.revision.sessionId must match sessionId\":\n\t\t\"tool.commit data.revision.sessionId 必须与 sessionId 一致\",\n\t\"tool.commit data.revision.version must be 1\": \"tool.commit data.revision.version 必须为 1\",\n\t\"tool.commit data.version must be 1\": \"tool.commit data.version 必须为 1\",\n\t\"tool.execute data has unsupported fields: {unsupported}\": \"tool.execute data 包含不支持的字段:{unsupported}\",\n\t\"tool.execute data is missing required field: {key}\": \"tool.execute data 缺少必需字段:{key}\",\n\t\"tool.execute data must be a plain object\": \"tool.execute data 必须是普通对象\",\n\t\"tool.execute data.isError must be boolean\": \"tool.execute data.isError 必须是布尔值\",\n\t\"tool.execute data.version must be 1\": \"tool.execute data.version 必须为 1\",\n\t\"tool.execution.start data has unsupported fields\": \"tool.execution.start data 包含不支持的字段\",\n\t\"tool.execution.start data must be a plain object\": \"tool.execution.start data 必须是普通对象\",\n\t\"tool.execution.start data.version must be 1\": \"tool.execution.start data.version 必须为 1\",\n\t\"tool.gate.blocked data has unsupported fields: {unsupported}\":\n\t\t\"tool.gate.blocked data 包含不支持的字段:{unsupported}\",\n\t\"tool.gate.blocked data is missing required field: {key}\": \"tool.gate.blocked data 缺少必需字段:{key}\",\n\t\"tool.gate.blocked data must be a plain object\": \"tool.gate.blocked data 必须是普通对象\",\n\t\"tool.gate.blocked data.version must be 1\": \"tool.gate.blocked data.version 必须为 1\",\n\t\"tool.result data has unsupported fields: {unsupported}\": \"tool.result data 包含不支持的字段:{unsupported}\",\n\t\"tool.result data is missing required field: {key}\": \"tool.result data 缺少必需字段:{key}\",\n\t\"tool.result data must be a plain object\": \"tool.result data 必须是普通对象\",\n\t\"tool.result data.isError must be boolean\": \"tool.result data.isError 必须是布尔值\",\n\t\"tool.result data.message must be a tool result message object\":\n\t\t\"tool.result data.message 必须是 tool result message 对象\",\n\t\"tool.result data.message.content must be an array\": \"tool.result data.message.content 必须是数组\",\n\t\"tool.result data.message.isError must be boolean\": \"tool.result data.message.isError 必须是布尔值\",\n\t\"tool.result data.message.isError must match isError\": \"tool.result data.message.isError 必须与 isError 一致\",\n\t\"tool.result data.message.role must be toolResult\": \"tool.result data.message.role 必须是 toolResult\",\n\t\"tool.result data.message.toolCallId must match toolCallId\":\n\t\t\"tool.result data.message.toolCallId 必须与 toolCallId 一致\",\n\t\"tool.result data.message.toolName must match toolName\": \"tool.result data.message.toolName 必须与 toolName 一致\",\n\t\"tool.result data.revision has unsupported fields\": \"tool.result data.revision 包含不支持的字段\",\n\t\"tool.result data.revision must be a plain object\": \"tool.result data.revision 必须是普通对象\",\n\t\"tool.result data.revision.sequence must be a non-negative safe integer\":\n\t\t\"tool.result data.revision.sequence 必须是非负安全整数\",\n\t\"tool.result data.revision.sessionId must match sessionId\":\n\t\t\"tool.result data.revision.sessionId 必须与 sessionId 一致\",\n\t\"tool.result data.revision.version must be 1\": \"tool.result data.revision.version 必须为 1\",\n\t\"tool.result data.version must be 1\": \"tool.result data.version 必须为 1\",\n\t\"tool.result.raw data has unsupported fields: {unsupported}\": \"tool.result.raw data 包含不支持的字段:{unsupported}\",\n\t\"tool.result.raw data is missing required field: {key}\": \"tool.result.raw data 缺少必需字段:{key}\",\n\t\"tool.result.raw data must be a plain object\": \"tool.result.raw data 必须是普通对象\",\n\t\"tool.result.raw data.content must be an array\": \"tool.result.raw data.content 必须是数组\",\n\t\"tool.result.raw data.content[{index}] has unsupported image fields\":\n\t\t\"tool.result.raw data.content[{index}] 包含不支持的图像字段\",\n\t\"tool.result.raw data.content[{index}] has unsupported text fields\":\n\t\t\"tool.result.raw data.content[{index}] 包含不支持的文本字段\",\n\t\"tool.result.raw data.content[{index}] must be a plain object\":\n\t\t\"tool.result.raw data.content[{index}] 必须是普通对象\",\n\t\"tool.result.raw data.content[{index}].type is invalid\": \"tool.result.raw data.content[{index}].type 无效\",\n\t\"tool.result.raw data.isError must be boolean\": \"tool.result.raw data.isError 必须是布尔值\",\n\t\"tool.result.raw data.revision has unsupported fields\": \"tool.result.raw data.revision 包含不支持的字段\",\n\t\"tool.result.raw data.revision must be a plain object\": \"tool.result.raw data.revision 必须是普通对象\",\n\t\"tool.result.raw data.revision.sequence must be a non-negative safe integer\":\n\t\t\"tool.result.raw data.revision.sequence 必须是非负安全整数\",\n\t\"tool.result.raw data.revision.sessionId must match sessionId\":\n\t\t\"tool.result.raw data.revision.sessionId 必须与 sessionId 一致\",\n\t\"tool.result.raw data.revision.version must be 1\": \"tool.result.raw data.revision.version 必须为 1\",\n\t\"tool.result.raw data.version must be 1\": \"tool.result.raw data.version 必须为 1\",\n\t\"tool.result.transform data has unsupported fields: {unsupported}\":\n\t\t\"tool.result.transform data 包含不支持的字段:{unsupported}\",\n\t\"tool.result.transform data is missing required field: {key}\": \"tool.result.transform data 缺少必需字段:{key}\",\n\t\"tool.result.transform data must be a plain object\": \"tool.result.transform data 必须是普通对象\",\n\t\"tool.result.transform data.content must be an array\": \"tool.result.transform data.content 必须是数组\",\n\t\"tool.result.transform data.content[{index}] has unsupported image fields\":\n\t\t\"tool.result.transform data.content[{index}] 包含不支持的图像字段\",\n\t\"tool.result.transform data.content[{index}] has unsupported text fields\":\n\t\t\"tool.result.transform data.content[{index}] 包含不支持的文本字段\",\n\t\"tool.result.transform data.content[{index}] must be a plain object\":\n\t\t\"tool.result.transform data.content[{index}] 必须是普通对象\",\n\t\"tool.result.transform data.content[{index}].type is invalid\":\n\t\t\"tool.result.transform data.content[{index}].type 无效\",\n\t\"tool.result.transform data.isError must be boolean\": \"tool.result.transform data.isError 必须是布尔值\",\n\t\"tool.result.transform data.revision has unsupported fields\": \"tool.result.transform data.revision 包含不支持的字段\",\n\t\"tool.result.transform data.revision must be a plain object\": \"tool.result.transform data.revision 必须是普通对象\",\n\t\"tool.result.transform data.revision.sequence must be a non-negative safe integer\":\n\t\t\"tool.result.transform data.revision.sequence 必须是非负安全整数\",\n\t\"tool.result.transform data.revision.sessionId must match sessionId\":\n\t\t\"tool.result.transform data.revision.sessionId 必须与 sessionId 一致\",\n\t\"tool.result.transform data.revision.version must be 1\": \"tool.result.transform data.revision.version 必须为 1\",\n\t\"tool.result.transform data.version must be 1\": \"tool.result.transform data.version 必须为 1\",\n\t\"turn.end data has unsupported fields\": \"turn.end data 包含不支持的字段\",\n\t\"turn.end data must be a plain object\": \"turn.end data 必须是普通对象\",\n\t\"turn.end data.messageCount must be a non-negative safe integer\": \"turn.end data.messageCount 必须是非负安全整数\",\n\t\"turn.end data.outcome is invalid\": \"turn.end data.outcome 无效\",\n\t\"turn.end data.turnIndex must be a non-negative safe integer\": \"turn.end data.turnIndex 必须是非负安全整数\",\n\t\"turn.end data.version must be 1\": \"turn.end data.version 必须为 1\",\n\t\"turn.start data has unsupported fields\": \"turn.start data 包含不支持的字段\",\n\t\"turn.start data must be a plain object\": \"turn.start data 必须是普通对象\",\n\t\"turn.start data.turnIndex must be a non-negative safe integer\": \"turn.start data.turnIndex 必须是非负安全整数\",\n\t\"turn.start data.version must be 1\": \"turn.start data.version 必须为 1\",\n\t\"ui.prompt lifecycle data has unsupported fields\": \"ui.prompt lifecycle data 包含不支持的字段\",\n\t\"ui.prompt lifecycle data must be a plain object\": \"ui.prompt lifecycle data 必须是普通对象\",\n\t\"ui.prompt lifecycle data.version must be 1\": \"ui.prompt lifecycle data.version 必须为 1\",\n\t\"user.bash data has unsupported fields\": \"user.bash data 包含不支持的字段\",\n\t\"user.bash data must be a plain object\": \"user.bash data 必须是普通对象\",\n\t\"user.bash data.excludeFromContext must be a boolean\": \"user.bash data.excludeFromContext 必须是布尔值\",\n\t\"user.bash data.version must be 1\": \"user.bash data.version 必须为 1\",\n\t\"{label} must be JSON-safe\": \"{label} 必须是 JSON 安全值\", // 复用:bootstrap-lifecycle.ts, lifecycle-catalog.ts\n\t\"{label} must be a non-empty string\": \"{label} 必须是非空字符串\", // 复用:bootstrap-lifecycle.ts, capability-runtime-manifest.ts, capability-runtime-validation.ts, lifecycle-catalog.ts\n\t\"{label} must be a non-negative safe integer\": \"{label} 必须是非负安全整数\", // 复用:capability-runtime-validation.ts, lifecycle-catalog.ts\n\t\"{label} must be a positive safe integer\": \"{label} 必须是正安全整数\", // 复用:capability-runtime-manifest.ts, lifecycle-catalog.ts\n\t\"{label} must be a provider/modelId reference\": \"{label} 必须是 provider/modelId 引用\",\n\t\"{label} must be an array\": \"{label} 必须是数组\", // 复用:capability-runtime-manifest.ts, lifecycle-catalog.ts\n\t\"{label} must contain only JSON arrays and plain objects\": \"{label} 只能包含 JSON 数组和普通对象\", // 复用:bootstrap-lifecycle.ts, lifecycle-catalog.ts\n\t\"{label} must contain only finite JSON numbers\": \"{label} 只能包含有限 JSON 数字\", // 复用:bootstrap-lifecycle.ts, lifecycle-catalog.ts\n\t\"{label} must not contain cycles\": \"{label} 不得包含循环引用\", // 复用:bootstrap-lifecycle.ts, lifecycle-catalog.ts\n\t\"{label}[{index}] has unsupported fields\": \"{label}[{index}] 包含不支持的字段\",\n\t\"{label}[{index}] must be a plain object\": \"{label}[{index}] 必须是普通对象\",\n\n\t// ---- 能力运行时契约(capability-runtime.ts) ----\n\t\"Agent context operationId must match active operation: {operationId}\":\n\t\t\"Agent context 的 operationId 必须与活动操作一致:{operationId}\",\n\t\"Agent loop hook position is invalid: {value}\": \"Agent loop hook position 无效:{value}\",\n\t\"Agent loop hook requires a callable handler\": \"Agent loop hook 需要可调用的 handler\",\n\t\"Agent model runtime is not available\": \"Agent 模型运行时不可用\",\n\t\"Agent state operationId must match active operation: {operationId}\":\n\t\t\"Agent state 的 operationId 必须与活动操作一致:{operationId}\", // 复用:capability-runtime.ts\n\t\"Agent task capability is not available from this host\": \"本宿主不提供 Agent task 能力\",\n\t\"Agent tool is not registered: {name}\": \"Agent tool 未注册:{name}\",\n\t\"Branch summary policy requires a non-empty name\": \"分支摘要策略需要非空 name\",\n\t\"Branch summary policy requires a summarize function\": \"分支摘要策略需要 summarize 函数\",\n\t\"Branch summary policy returned an invalid result: {name}\": \"分支摘要策略返回了无效结果:{name}\",\n\t\"Capability plugin {id} has asynchronous cleanup; use the async loader\":\n\t\t\"能力插件 {id} 有异步清理;请使用异步加载器\",\n\t\"Command is not registered: {name}\": \"命令未注册:{name}\",\n\t\"Compaction policy does not support preparation: {name}\": \"压缩策略不支持 preparation:{name}\",\n\t\"Compaction policy does not support summaries: {name}\": \"压缩策略不支持摘要:{name}\",\n\t\"Compaction policy is not registered: {name}\": \"压缩策略未注册:{name}\", // 复用:capability-runtime.ts\n\t\"Compaction policy requires a decide function\": \"压缩策略需要 decide 函数\",\n\t\"Compaction policy requires a non-empty name\": \"压缩策略需要非空 name\",\n\t\"Compaction policy returned an invalid decision: {name}\": \"压缩策略返回了无效的 decision:{name}\",\n\t\"Compaction policy returned an invalid failureMessage: {name}\": \"压缩策略返回了无效的 failureMessage:{name}\",\n\t\"Compaction policy returned an invalid retry value: {name}\": \"压缩策略返回了无效的 retry 值:{name}\",\n\t\"Compaction policy returned an invalid summary: {name}\": \"压缩策略返回了无效的摘要:{name}\",\n\t\"Context strategy does not support replacement: {name}\": \"上下文策略不支持替换:{name}\",\n\t\"Context strategy does not support restore: {name}\": \"上下文策略不支持恢复:{name}\",\n\t\"Context strategy does not support snapshots: {name}\": \"上下文策略不支持快照:{name}\",\n\t\"Context strategy is not registered: {name}\": \"上下文策略未注册:{name}\", // 复用:capability-runtime.ts\n\t\"Context strategy requires a non-empty name\": \"上下文策略需要非空 name\",\n\t\"Contribution can only be removed by its owner: {pointId}@{version}:{id}\":\n\t\t\"Contribution 只能由其 owner 移除:{pointId}@{version}:{id}\",\n\t\"Contribution is already registered: {pointId}@{version}:{id}\": \"Contribution 已注册:{pointId}@{version}:{id}\",\n\t\"Contribution is not registered: {pointId}@{version}:{id}\": \"Contribution 未注册:{pointId}@{version}:{id}\",\n\t\"Contribution point is already defined: {key}\": \"Contribution point 已定义:{key}\",\n\t\"Contribution requires a non-empty id: {pointId}\": \"Contribution 需要非空 id:{pointId}\",\n\t\"Contribution subscriber must be callable: {pointId}\": \"Contribution 订阅者必须可调用:{pointId}\",\n\t\"Diagnostic annotations must be a plain object\": \"Diagnostic 的 annotations 必须是普通对象\",\n\t\"Diagnostic attributes must be serializable\": \"Diagnostic 的 attributes 必须可序列化\",\n\t\"Diagnostic parentSpanId must be non-empty\": \"Diagnostic 的 parentSpanId 必须非空\",\n\t\"Diagnostic span is already ended: {spanId}\": \"Diagnostic span 已结束:{spanId}\", // 复用:capability-runtime.ts\n\t\"Diagnostic span is not available: {spanId}\": \"Diagnostic span 不可用:{spanId}\", // 复用:capability-runtime.ts\n\t\"Diagnostic span name must be non-empty\": \"Diagnostic span 的 name 必须非空\",\n\t\"Diagnostic span result must be serializable\": \"Diagnostic span 的 result 必须可序列化\",\n\t\"Diagnostic span status is invalid\": \"Diagnostic span 的 status 无效\",\n\t\"Entry projection requires a callable project\": \"Entry projection 需要可调用的 project\",\n\t\"Entry projection requires a non-empty customType\": \"Entry projection 需要非空 customType\",\n\t\"Entry projections require a host with entry projection support\": \"Entry projections 需要宿主支持条目投影\",\n\t\"Event type requires a non-empty name\": \"事件类型需要非空 name\",\n\t\"Host declares agent-result-replay-v1 capability without an agentResults option\":\n\t\t\"宿主声明 agent-result-replay-v1 能力但缺少 agentResults 选项\",\n\t\"Host declares agents capability without a parent SessionAPI\": \"宿主声明 agents 能力但缺少父级 SessionAPI\",\n\t\"Host declares agents capability without an AgentTaskAdapter or a session reader/lister\":\n\t\t\"宿主声明 agents 能力但缺少 AgentTaskAdapter 或会话读取/列举器\",\n\t\"Host declares credentials capability without a CredentialAPI\": \"宿主声明 credentials 能力但缺少 CredentialAPI\",\n\t\"Host declares interaction capability without an InteractionHostV1\":\n\t\t\"宿主声明 interaction 能力但缺少 InteractionHostV1\",\n\t\"Host declares session capability without a SessionAPI\": \"宿主声明 session 能力但缺少 SessionAPI\",\n\t\"Host declares session-export capability without SessionAPI.exportArtifact\":\n\t\t\"宿主声明 session-export 能力但缺少 SessionAPI.exportArtifact\",\n\t\"Host declares session-export capability without the session capability\":\n\t\t\"宿主声明 session-export 能力但未声明 session 能力\",\n\t\"Host declares session-revision-v1 capability without SessionAPI.getRevision\":\n\t\t\"宿主声明 session-revision-v1 能力但缺少 SessionAPI.getRevision\",\n\t\"Host declares session-revision-v1 capability without the session capability\":\n\t\t\"宿主声明 session-revision-v1 能力但未声明 session 能力\",\n\t\"Host declares the agent-result-replay-v1 feature without the agents capability\":\n\t\t\"宿主声明 agent-result-replay-v1 特性但未声明 agents 能力\",\n\t\"Host provides a CredentialAPI without the credentials capability\":\n\t\t\"宿主提供了 CredentialAPI 但未声明 credentials 能力\",\n\t\"Host provides a SessionAPI without the session capability\": \"宿主提供了 SessionAPI 但未声明 session 能力\",\n\t\"Host provides an AgentTaskAdapter without the agents capability\":\n\t\t\"宿主提供了 AgentTaskAdapter 但未声明 agents 能力\",\n\t\"Host provides an InteractionHostV1 without the interaction capability\":\n\t\t\"宿主提供了 InteractionHostV1 但未声明 interaction 能力\",\n\t\"Host provides an agentResults option without the agent-result-replay-v1 capability\":\n\t\t\"宿主提供了 agentResults 选项但未声明 agent-result-replay-v1 能力\",\n\t\"Lifecycle after-commit requires a committed event: {id}\": \"Lifecycle after-commit 需要 committed 事件:{id}\",\n\t\"Lifecycle delivery options are only supported for observation registrations: {id}\":\n\t\t\"Lifecycle delivery options 仅支持 observation 注册:{id}\",\n\t\"Lifecycle event is already defined: {key}\": \"Lifecycle 事件已定义:{key}\",\n\t\"Lifecycle event is not defined: {id}@{version}\": \"Lifecycle 事件未定义:{id}@{version}\",\n\t\"Lifecycle event is not serializable\": \"Lifecycle 事件不可序列化\",\n\t\"Lifecycle event reference requires a non-empty id\": \"Lifecycle 事件引用需要非空 id\",\n\t\"Lifecycle event version must be a positive safe integer\": \"Lifecycle 事件的 version 必须是正安全整数\", // 复用:capability-runtime-validation.ts, capability-runtime.ts\n\t\"Lifecycle event version must be provided as a positive safe integer\":\n\t\t\"Lifecycle 事件的 version 必须以正安全整数提供\",\n\t\"Lifecycle execute requires a committed event: {id}\": \"Lifecycle execute 需要 committed 事件:{id}\",\n\t\"Lifecycle transform requires a candidate event: {id}\": \"Lifecycle transform 需要 candidate 事件:{id}\",\n\t\"Lifecycle {kind} registration is not allowed: {id}\": \"不允许 {kind} 注册该 Lifecycle 事件:{id}\",\n\t\"Lifecycle {kind} registration requires a callable handler\": \"Lifecycle {kind} 注册需要可调用的 handler\",\n\t\"Logger fields must be serializable\": \"Logger 的 fields 必须可序列化\",\n\t\"Logger message must be non-empty\": \"Logger 的 message 必须非空\",\n\t\"Operation is not registered: {operation}\": \"操作未注册:{operation}\",\n\t\"Operation requires a non-empty name\": \"操作需要非空 name\",\n\t\"Overflow policy is not registered: {name}\": \"溢出策略未注册:{name}\",\n\t\"Overflow policy requires a decide function\": \"溢出策略需要 decide 函数\",\n\t\"Overflow policy requires a non-empty name\": \"溢出策略需要非空 name\",\n\t\"Overflow policy returned an invalid decision: {name}\": \"溢出策略返回了无效的 decision:{name}\",\n\t\"Plugin capability is already provided: {id}@{version}\": \"插件能力已被提供:{id}@{version}\",\n\t\"Plugin capability is not available: {id}@{version}\": \"插件能力不可用:{id}@{version}\",\n\t\"Plugin capability must be declared by its manifest: {id}@{version} ({owner})\":\n\t\t\"插件能力必须由其 manifest 声明:{id}@{version}({owner})\",\n\t\"Plugin capability provider requires a callable handler\": \"插件能力提供者需要可调用的 handler\",\n\t\"Provider header transform requires a callable transform\": \"Provider header transform 需要可调用的 transform\",\n\t\"Provider header transform requires a non-empty name\": \"Provider header transform 需要非空 name\",\n\t\"RPC method is not registered: {name}\": \"RPC 方法未注册:{name}\",\n\t\"RPC method requires a non-empty name\": \"RPC 方法需要非空 name\",\n\t\"Retry policy does not support classification: {name}\": \"重试策略不支持分类:{name}\",\n\t\"Retry policy is not registered: {name}\": \"重试策略未注册:{name}\", // 复用:capability-runtime.ts\n\t\"Retry policy requires a decide function\": \"重试策略需要 decide 函数\",\n\t\"Retry policy requires a non-empty name\": \"重试策略需要非空 name\",\n\t\"Retry policy returned an invalid classification: {name}\": \"重试策略返回了无效的分类:{name}\",\n\t\"Retry policy returned an invalid decision: {name}\": \"重试策略返回了无效的 decision:{name}\",\n\t\"Retry policy returned an invalid delayMs: {name}\": \"重试策略返回了无效的 delayMs:{name}\",\n\t\"Run loop strategy is not registered: {name}\": \"运行循环策略未注册:{name}\",\n\t\"Run loop strategy requires a decideNextCycle function\": \"运行循环策略需要 decideNextCycle 函数\",\n\t\"Run loop strategy requires a non-empty name\": \"运行循环策略需要非空 name\",\n\t\"Run loop strategy returned an invalid decision: {name}\": \"运行循环策略返回了无效的 decision:{name}\",\n\t\"Runtime idFactory must return a non-empty string for {kind}\": \"运行时 idFactory 为 {kind} 返回的必须是非空字符串\",\n\t\"Skill definition requires a baseDir\": \"技能定义需要 baseDir\",\n\t\"Skill definition requires a filePath\": \"技能定义需要 filePath\",\n\t\"Skill definition requires a non-empty description\": \"技能定义需要非空 description\",\n\t\"State expectedRevision must be a non-negative safe integer\": \"State 的 expectedRevision 必须是非负安全整数\",\n\t\"State key must be a non-empty string\": \"State key 必须是非空字符串\",\n\t\"State prefix must be a string\": \"State prefix 必须是字符串\", // 复用:capability-runtime.ts\n\t\"State revision conflict: {conflictScope}/{key}\": \"State revision 冲突:{conflictScope}/{key}\", // 复用:capability-runtime.ts\n\t\"State value must be serializable\": \"State value 必须可序列化\",\n\t\"State watcher requires a handler\": \"State watcher 需要 handler\",\n\t\"Stream function wrapper requires a callable wrapper\": \"Stream function wrapper 需要可调用的 wrapper\",\n\t\"Stream function wrapper requires a non-empty name\": \"Stream function wrapper 需要非空 name\",\n\t\"Tool is not registered: {name}\": \"工具未注册:{name}\",\n\t\"{kind} is already registered: {name}\": \"{kind} 已注册:{name}\",\n\n\t// ---- 插件注册校验(capability-runtime-validation.ts) ----\n\t\"Agent task metadata must be an object\": \"Agent task metadata 必须是对象\",\n\t\"Agent task requires a non-empty prompt\": \"Agent task 需要非空 prompt\",\n\t\"Capability command returned an invalid message: {commandName}\": \"能力命令返回了无效的 message:{commandName}\",\n\t\"Capability command returned an invalid result: {commandName}\": \"能力命令返回了无效结果:{commandName}\",\n\t\"Capability command returned an invalid status: {commandName}\": \"能力命令返回了无效的 status:{commandName}\",\n\t\"Capability command returned invalid links: {commandName}\": \"能力命令返回了无效的 links:{commandName}\",\n\t\"Capability command returned non-serializable data: {commandName}\": \"能力命令返回了不可序列化的数据:{commandName}\",\n\t\"Command definition argumentHint must be a string\": \"命令定义的 argumentHint 必须是字符串\",\n\t\"Command definition requires a non-empty description\": \"命令定义需要非空 description\",\n\t\"Command definition requires a non-empty name without slash or whitespace\": \"命令定义需要不含斜杠和空白的非空 name\",\n\t\"Command definition requires an execute function\": \"命令定义需要 execute 函数\",\n\t\"Command requires a definition\": \"命令需要定义\",\n\t\"Contribution point definition is required\": \"缺少 contribution point 定义\",\n\t\"Contribution point lifecycle is invalid: {value}\": \"Contribution point 的 lifecycle 无效:{value}\",\n\t\"Contribution point requires a non-empty id\": \"Contribution point 需要非空 id\",\n\t\"Contribution point requires a non-empty schema\": \"Contribution point 需要非空 schema\",\n\t\"Contribution point requires a validate function\": \"Contribution point 需要 validate 函数\",\n\t\"Contribution point version must be a positive safe integer\": \"Contribution point 的 version 必须是正安全整数\",\n\t\"Credential minValidityMs must be a non-negative finite number\": \"Credential 的 minValidityMs 必须是非负有限数字\",\n\t\"Credential resolution requires a non-empty providerId\": \"凭证解析需要非空 providerId\",\n\t\"Execution facts.inputRevision.sessionId must match Execution facts.sessionId\":\n\t\t\"Execution facts.inputRevision.sessionId 必须与 Execution facts.sessionId 一致\",\n\t\"Execution facts.phase is invalid\": \"Execution facts.phase 无效\",\n\t\"Execution facts.version must be 1\": \"Execution facts.version 必须为 1\",\n\t\"Host capabilities must be an object\": \"Host capabilities 必须是对象\",\n\t\"Host features must be an array of non-empty strings\": \"Host features 必须是非空字符串数组\",\n\t\"Host mode must be readonly or full-control\": \"Host mode 必须是 readonly 或 full-control\",\n\t\"Host transports must be an array of supported transports\": \"Host transports 必须是受支持的传输数组\",\n\t\"Interaction input defaultValue must be a string\": \"Interaction input 的 defaultValue 必须是字符串\",\n\t\"Interaction input placeholder must be a string\": \"Interaction input 的 placeholder 必须是字符串\",\n\t\"Interaction notify level must be info, warning, or error\":\n\t\t\"Interaction notify 的 level 必须是 info、warning 或 error\",\n\t\"Interaction notify requires a non-empty message\": \"Interaction notify 需要非空 message\",\n\t\"Interaction request must be an object with a known kind\": \"Interaction request 必须是带已知 kind 的对象\",\n\t\"Interaction request requires a known kind: notify, confirm, select, or input\":\n\t\t\"Interaction request 需要已知的 kind:notify、confirm、select 或 input\",\n\t\"Interaction select options must be non-empty strings\": \"Interaction select 的 options 必须是非空字符串\",\n\t\"Interaction select requires a non-empty options array\": \"Interaction select 需要非空 options 数组\",\n\t\"Interaction timeoutMs must be a positive integer\": \"Interaction 的 timeoutMs 必须是正整数\",\n\t\"Lifecycle event allowedPhases must be a non-empty array of valid phases when provided\":\n\t\t\"Lifecycle 事件的 allowedPhases 提供时必须是非空的有效 phase 数组\",\n\t\"Lifecycle event allowedPhases must include phase\": \"Lifecycle 事件的 allowedPhases 必须包含 phase\",\n\t\"Lifecycle event allowedPhases must not contain duplicates\": \"Lifecycle 事件的 allowedPhases 不得包含重复项\",\n\t\"Lifecycle event allowedRegistrationKinds contains an invalid registration kind\":\n\t\t\"Lifecycle 事件的 allowedRegistrationKinds 包含无效的注册类别\",\n\t\"Lifecycle event allowedRegistrationKinds must be a non-empty array when provided\":\n\t\t\"Lifecycle 事件的 allowedRegistrationKinds 提供时必须是非空数组\",\n\t\"Lifecycle event allowedRegistrationKinds must not contain duplicates\":\n\t\t\"Lifecycle 事件的 allowedRegistrationKinds 不得包含重复项\",\n\t\"Lifecycle event definition is required\": \"缺少 lifecycle 事件定义\",\n\t\"Lifecycle event phase is invalid: {value}\": \"Lifecycle 事件的 phase 无效:{value}\",\n\t\"Lifecycle event requires a non-empty id\": \"Lifecycle 事件需要非空 id\",\n\t\"Lifecycle event requires a non-empty schema\": \"Lifecycle 事件需要非空 schema\",\n\t\"Lifecycle event requires a validate function\": \"Lifecycle 事件需要 validate 函数\",\n\t\"Provider header transform returned invalid headers: {source}\":\n\t\t\"Provider header transform 返回了无效 headers:{source}\", // 复用:capability-runtime-validation.ts\n\t\"Retry schedule.action must be retry or stop\": \"Retry schedule.action 必须是 retry 或 stop\",\n\t\"Retry schedule.retry requires a one-based attempt\": \"Retry schedule.retry 需要从 1 开始的 attempt\",\n\t\"Retry schedule.stop must have delayMs 0\": \"Retry schedule.stop 的 delayMs 必须为 0\",\n\t\"Unsupported host API version: {apiVersion}\": \"不支持的宿主 API 版本:{apiVersion}\",\n\t\"{kind} definition requires a non-empty name\": \"{kind} 定义需要非空 name\",\n\t\"{kind} requires a callable handler\": \"{kind} 需要可调用的 handler\",\n\t\"{label} has unsupported fields: {value}\": \"{label} 包含不支持的字段:{value}\",\n\t\"{label} is missing required fields: {value}\": \"{label} 缺少必需字段:{value}\",\n\t\"{label} must be a non-negative finite number\": \"{label} 必须是非负有限数字\",\n\t\"{label} must be a plain object\": \"{label} 必须是普通对象\",\n\t\"{label}.leafId must be a non-empty string or null\": \"{label}.leafId 必须是非空字符串或 null\",\n\t\"{label}.leafId must be a string or null\": \"{label}.leafId 必须是字符串或 null\",\n\t\"{label}.version must be 1\": \"{label}.version 必须为 1\",\n\n\t// ---- 插件 manifest 校验与解析(capability-runtime-manifest.ts) ----\n\t\"Host is missing required capabilities: {value}\": \"宿主缺少必需能力:{value}\",\n\t\"Plugin capability dependency cycle: {value}\": \"插件能力依赖存在循环:{value}\",\n\t\"Plugin capability is provided more than once: {id}@{version} ({priorId}, {manifestId})\":\n\t\t\"插件能力被提供多次:{id}@{version}({priorId}、{manifestId})\",\n\t\"Plugin manifest config must be a JSON object\": \"Plugin manifest 的 config 必须是 JSON 对象\",\n\t\"Plugin manifest optionalCapabilities must be a string array\":\n\t\t\"Plugin manifest 的 optionalCapabilities 必须是字符串数组\",\n\t\"Plugin manifest optionalCapabilities must be an array\": \"Plugin manifest 的 optionalCapabilities 必须是数组\",\n\t\"Plugin manifest requiredCapabilities must be a string array\":\n\t\t\"Plugin manifest 的 requiredCapabilities 必须是字符串数组\",\n\t\"Plugin manifest requiredCapabilities must be an array\": \"Plugin manifest 的 requiredCapabilities 必须是数组\",\n\t\"Plugin manifest requires id, version, and entry\": \"Plugin manifest 需要 id、version 和 entry\",\n\t\"Unsupported plugin API version: {apiVersion}\": \"不支持的插件 API 版本:{apiVersion}\",\n\t\"{label} declares capability more than once: {id}@{version}\": \"{label} 多次声明同一能力:{id}@{version}\",\n\t\"{label} has an invalid declaration\": \"{label} 包含无效声明\",\n\t\"{label} has an invalid requirement\": \"{label} 包含无效的依赖声明\",\n\t\"{label} requires capability more than once: {id}@{version}\": \"{label} 多次依赖同一能力:{id}@{version}\",\n\t\"{label}.agents declares definition more than once: {id}@{version}\":\n\t\t\"{label}.agents 多次声明同一定义:{id}@{version}\",\n\t\"{label}.agents has an invalid declaration\": \"{label}.agents 包含无效声明\",\n\t\"{label}.agents must be an array\": \"{label}.agents 必须是数组\",\n\t\"{label}.agents.entry must be a non-empty string\": \"{label}.agents.entry 必须是非空字符串\",\n\t\"{label}.agents.role is invalid\": \"{label}.agents.role 无效\",\n\t\"{label}.agents.role is not declared in roles\": \"{label}.agents.role 未在 roles 中声明\",\n\t\"{label}.kind is invalid\": \"{label}.kind 无效\",\n\t\"{label}.optional must be a boolean\": \"{label}.optional 必须是布尔值\",\n\t\"{label}.roles contains an invalid role\": \"{label}.roles 包含无效 role\",\n\t\"{label}.roles declares role more than once: {role}\": \"{label}.roles 多次声明同一 role:{role}\",\n\t\"{label}.roles must be an array\": \"{label}.roles 必须是数组\",\n\n\t// ---- 宿主能力门卫(capability-runtime-guards.ts) ----\n\t\"Agent composition runtime does not support owner-scoped host primitives\":\n\t\t\"Agent 组合运行时不支持 owner 作用域的宿主原语\",\n\t\"Agent definition must be declared by plugin manifest: {id}@{version}\":\n\t\t\"Agent 定义必须由 plugin manifest 声明:{id}@{version}\",\n\t\"Agent definition owner must match plugin manifest: {id}\":\n\t\t\"Agent definition owner 必须与 plugin manifest 一致:{id}\",\n\t\"Agent task can only run once: {id}\": \"Agent task 只能运行一次:{id}\",\n\t\"Agent task failed and its result could not be persisted\": \"Agent task 失败且其结果无法持久化\",\n\t\"Agent task handle is disposed: {id}\": \"Agent task 句柄已销毁:{id}\",\n\t\"Agent task has not been started: {id}\": \"Agent task 尚未启动:{id}\",\n\t\"Agent task was cancelled and its result could not be persisted\": \"Agent task 已取消且其结果无法持久化\",\n\t\"Interaction prompt outcome answered requires a boolean or string value\":\n\t\t\"Interaction prompt outcome 的 answered 需要布尔或字符串值\",\n\t\"Interaction prompt outcome delivered is only valid for notify requests\":\n\t\t\"Interaction prompt outcome 的 delivered 仅对 notify 请求有效\",\n\t\"Interaction prompt outcome has an unknown status: {value}\": \"Interaction prompt outcome 的 status 未知:{value}\",\n\t\"Interaction prompt outcome has unsupported fields: {value}\": \"Interaction prompt outcome 包含不支持的字段:{value}\",\n\t\"Interaction prompt outcome must be an object\": \"Interaction prompt outcome 必须是对象\",\n\t\"Interaction prompt outcome timeout can only be produced by options.timeoutMs, never by the host\":\n\t\t\"Interaction prompt outcome 的 timeout 只能由 options.timeoutMs 产生,宿主不得产生\",\n\t\"Parent Agent instance must belong to plugin manifest: {parentInstanceId}\":\n\t\t\"父 Agent 实例必须属于该 plugin manifest:{parentInstanceId}\",\n\n\t// ---- lifecycle 分发(capability-runtime-events.ts) ----\n\t\"Lifecycle causationId must be non-empty\": \"Lifecycle 的 causationId 必须非空\",\n\t\"Lifecycle correlationId must be non-empty\": \"Lifecycle 的 correlationId 必须非空\",\n\t\"Lifecycle dispatch phase does not match event definition: {type}@{version}\":\n\t\t\"Lifecycle 分发 phase 与事件定义不一致:{type}@{version}\",\n\t\"Lifecycle dispatch phase is invalid: {phase}\": \"Lifecycle 分发 phase 无效:{phase}\",\n\t\"Lifecycle dispatch request is required\": \"缺少 Lifecycle 分发请求\",\n\t\"Lifecycle dispatch requires a non-empty type\": \"Lifecycle 分发需要非空 type\",\n\t\"Lifecycle dispatch version must be a positive safe integer\": \"Lifecycle 分发的 version 必须是正安全整数\",\n\t\"Lifecycle event is not defined: {type}@{version}\": \"Lifecycle 事件未定义:{type}@{version}\",\n\t\"Lifecycle operationId must be non-empty\": \"Lifecycle 的 operationId 必须非空\",\n\t\"Lifecycle source must be non-empty\": \"Lifecycle 的 source 必须非空\",\n\t\"Operation progress data must be serializable\": \"操作进度数据必须可序列化\",\n\t\"Operation progress message must be a non-empty string\": \"操作进度 message 必须是非空字符串\",\n\t\"Operation progress must be an object\": \"操作进度必须是对象\",\n\n\t// ---- Agent 组合运行时(agent-composition.ts) ----\n\t\"Agent controller lease is not valid for instance: {id}\": \"Agent controller lease 对该实例无效:{id}\",\n\t\"Agent definition already registered: {id}@{version}\": \"Agent 定义已注册:{id}@{version}\",\n\t\"Agent definition is required\": \"缺少 Agent 定义\",\n\t\"Agent definition or reference is required\": \"缺少 Agent 定义或引用\",\n\t\"Agent definition owner must be a non-empty string when provided\": \"Agent definition owner 提供时必须是非空字符串\",\n\t\"Agent definition requires a non-empty id\": \"Agent 定义需要非空 id\",\n\t\"Agent definition requires a run function\": \"Agent 定义需要 run 函数\",\n\t\"Agent definition role must be root-agent-controller or child-agent-controller\":\n\t\t\"Agent definition role 必须是 root-agent-controller 或 child-agent-controller\",\n\t\"Agent definition version must be a positive safe integer\": \"Agent definition version 必须是正安全整数\",\n\t\"Agent host operation does not match active operation: {id}\": \"Agent 宿主操作与活动操作不一致:{id}\",\n\t\"Agent instance already has an active controller lease: {id}\": \"Agent 实例已有活动的 controller lease:{id}\",\n\t\"Agent instance cannot run from status {statusValue}: {id}\": \"Agent 实例无法从状态 {statusValue} 启动:{id}\",\n\t\"Agent instance id already exists: {id}\": \"Agent 实例 id 已存在:{id}\", // 复用:agent-composition.ts\n\t\"Agent instance is disposed: {id}\": \"Agent 实例已销毁:{id}\",\n\t\"Agent instance requires an active controller lease: {id}\": \"Agent 实例需要活动的 controller lease:{id}\",\n\t\"Unknown Agent definition: {id}@{version}\": \"未知 Agent 定义:{id}@{version}\",\n\t\"Unknown parent Agent instance: {parentInstanceId}\": \"未知父 Agent 实例:{parentInstanceId}\",\n\t\"Unsupported Agent host primitives version\": \"不支持的 Agent 宿主原语版本\",\n\n\t// ---- 引导:lifecycle 插件(bootstrap-lifecycle.ts) ----\n\t\"session.compaction.commit data has unsupported fields: {unsupported}\":\n\t\t\"session.compaction.commit data 包含不支持的字段:{unsupported}\",\n\t\"session.compaction.commit data is missing required field: {key}\":\n\t\t\"session.compaction.commit data 缺少必需字段:{key}\",\n\t\"session.compaction.commit data must be a plain object\": \"session.compaction.commit data 必须是普通对象\",\n\t\"session.compaction.commit data.fromHook must be boolean\": \"session.compaction.commit data.fromHook 必须是布尔值\",\n\t\"session.compaction.commit data.reason is invalid\": \"session.compaction.commit data.reason 无效\",\n\t\"session.compaction.commit data.status is invalid\": \"session.compaction.commit data.status 无效\",\n\t\"session.compaction.commit data.tokensBefore must be a non-negative finite number\":\n\t\t\"session.compaction.commit data.tokensBefore 必须是非负有限数字\",\n\t\"session.compaction.commit data.version must be 1\": \"session.compaction.commit data.version 必须为 1\",\n\t\"session.compaction.commit.revision has unsupported fields\": \"session.compaction.commit.revision 包含不支持的字段\",\n\t\"session.compaction.commit.revision must be a plain object\": \"session.compaction.commit.revision 必须是普通对象\",\n\t\"session.compaction.commit.revision.sequence must be a non-negative safe integer\":\n\t\t\"session.compaction.commit.revision.sequence 必须是非负安全整数\",\n\t\"session.compaction.commit.revision.version must be 1\": \"session.compaction.commit.revision.version 必须为 1\",\n\n\t// ---- 引导:主循环(bootstrap-agent-loop.ts) ----\n\t\"tool.call transform cannot change call identity or revision\": \"tool.call transform 不得更改调用标识或 revision\",\n\t\"tool.result.transform transform cannot change result identity or revision\":\n\t\t\"tool.result.transform transform 不得更改结果标识或 revision\",\n\n\t// ---- 引导:技能(bootstrap-skills.ts) ----\n\t\"Bootstrap skills plugin is already installed\": \"引导技能插件已安装\",\n\t\"Bootstrap skills plugin is not installed\": \"引导技能插件未安装\",\n\t\"Skill conflicts in contribution point: {name}\": \"技能与 contribution point 冲突:{name}\", // 复用:bootstrap-skills.ts\n\t\"SkillDefinitionV1 validation failed\": \"SkillDefinitionV1 校验失败\", // 复用:bootstrap-skills.ts\n\n\t// ---- 引导:溢出策略(bootstrap-overflow-policy.ts) ----\n\t\"Overflow policy requires an assistant message object\": \"溢出策略需要 assistant message 对象\",\n\n\t// ---- 引导:重试策略(bootstrap-retry-policy.ts) ----\n\t\"Retry classification requires an assistant message object\": \"重试分类需要 assistant message 对象\",\n\n\t// ---- 引导:基础工具(bootstrap-tools.ts) ----\n\t\"Readonly mode does not allow base tool overrides\": \"readonly 模式不允许覆盖基础工具\",\n\n\t// ---- 能力插件装载(capability-plugin.ts) ----\n\t\"Capability plugin entry must default-export a factory function: {entryPath}\":\n\t\t\"能力插件入口必须 default 导出工厂函数:{entryPath}\",\n\t\"Capability plugin factory must return void or an instance with dispose(): {id}\":\n\t\t\"能力插件工厂必须返回 void 或带 dispose() 的实例:{id}\",\n\t\"Capability plugin is already loaded: {id}\": \"能力插件已加载:{id}\", // 复用:capability-plugin.ts\n\t\"Synchronous capability plugin factory must return void or an instance with dispose(): {id}\":\n\t\t\"同步能力插件工厂必须返回 void 或带 dispose() 的实例:{id}\",\n\n\t// ---- 压缩内存失败模式(compaction-memory-failure-mode.ts) ----\n\t\"Compaction memory failure mode declaration requires a profileId\": \"压缩内存失败模式声明需要 profileId\",\n\t\"Invalid compaction memory failure mode: {value}\": \"无效的压缩内存失败模式:{value}\",\n\n\t// ---- 上下文策略绑定(context-strategy-binding.ts) ----\n\t\"Context strategy must return an AgentMessage array: {strategyName}\":\n\t\t\"上下文策略必须返回 AgentMessage 数组:{strategyName}\",\n\t\"Context strategy returned a non-cloneable request context: {name}\": \"上下文策略返回了不可克隆的请求上下文:{name}\",\n\n\t// ---- lifecycle 投递队列(lifecycle-delivery-queue.ts) ----\n\t\"Lifecycle delivery queue overflowCode must be non-empty\": \"Lifecycle 投递队列的 overflowCode 必须非空\",\n\t\"Lifecycle delivery queue {label} must be a positive safe integer\": \"Lifecycle 投递队列的 {label} 必须是正安全整数\",\n};\n"]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 批次⑨收尾域词典(docs/design/国际化与本地化.md §词典结构):批次⑨abc
|
|
3
|
+
* 精确对账后发现的最后一批散布 throw——artifacts、client/remote-session、
|
|
4
|
+
* main.ts 子任务护栏、profiles/suite-loader、remote/server-entry 与
|
|
5
|
+
* session-source、share、testing 工具。至此 agent-forge 包内可译 throw 清零
|
|
6
|
+
* (豁免清单见设计文档 §1 非目标 6-9)。
|
|
7
|
+
*/
|
|
8
|
+
export declare const coreContractFinal: Record<string, string>;
|
|
9
|
+
//# sourceMappingURL=core-contract-final.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"core-contract-final.d.ts","sourceRoot":"","sources":["../../../../../src/core/i18n/locales/zh-cn/core-contract-final.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA+DpD,CAAC","sourcesContent":["/**\n * 批次⑨收尾域词典(docs/design/国际化与本地化.md §词典结构):批次⑨abc\n * 精确对账后发现的最后一批散布 throw——artifacts、client/remote-session、\n * main.ts 子任务护栏、profiles/suite-loader、remote/server-entry 与\n * session-source、share、testing 工具。至此 agent-forge 包内可译 throw 清零\n * (豁免清单见设计文档 §1 非目标 6-9)。\n */\nexport const coreContractFinal: Record<string, string> = {\n\t// --- artifacts/artifact-store.ts ---\n\t\"Artifact not found: {artifactId}\": \"找不到制品:{artifactId}\",\n\t\"Artifact {artifactId} belongs to a different session\": \"制品 {artifactId} 属于另一个会话\",\n\t\"Artifact {artifactId} lifecycle has ended: {reason}\": \"制品 {artifactId} 生命周期已结束:{reason}\",\n\t\"Artifact {artifactId} lifecycle has already ended\": \"制品 {artifactId} 生命周期已经结束\",\n\n\t// --- client/remote-session.ts ---\n\t\"Session cannot accept input during {phase} phase\": \"会话处于 {phase} 阶段,不能接受输入\",\n\t\"Cannot {operation} a session while session is {phase}\": \"会话处于 {phase} 状态,无法执行 {operation}\",\n\t\"Session {id} did not provide a snapshot\": \"会话 {id} 未提供快照\",\n\t\"Remote session is disposed\": \"远程会话已销毁\",\n\t\"Remote session is busy with {operation}\": \"远程会话正忙于 {operation}\",\n\t\"Cannot {description} while session is {phase}\": \"会话处于 {phase} 状态,无法 {description}\",\n\n\t// --- main.ts ---\n\t\"agent task child profile model {model} is not among the runner's scoped models{available}\":\n\t\t\"agent task 子 profile 模型 {model} 不在 runner 的作用域模型内{available}\",\n\t\"resume target {resumeId} is not a persisted child of session {parentId}\":\n\t\t\"resume 目标 {resumeId} 不是会话 {parentId} 的已持久化子会话\",\n\n\t// --- profiles/suite-loader.ts ---\n\t\"Invalid suite.json at {path}: {errors}. Fix the file, or delete the suite workspace directory {dir} and recreate it.\":\n\t\t\"{path} 的 suite.json 无效:{errors}。请修复该文件,或删除 suite 工作区目录 {dir} 后重建。\",\n\n\t// --- remote/server-entry.ts / session-source.ts ---\n\t\"Unknown or unavailable model: {provider}/{id}\": \"未知或不可用的模型:{provider}/{id}\",\n\t\"Remote server requires a session source or sessionSourceOptions\":\n\t\t\"远程服务器需要 session source 或 sessionSourceOptions\",\n\t'cwd \"{cwd}\" is outside the configured workspace roots: [{roots}]':\n\t\t'cwd \"{cwd}\" 在配置的工作区根目录之外:[{roots}]',\n\t\"Cannot create session: cwd does not exist: {cwd}\": \"无法创建会话:cwd 不存在:{cwd}\",\n\t\"Cannot create session: cwd is not a directory: {cwd}\": \"无法创建会话:cwd 不是目录:{cwd}\",\n\t\"Session not found: {id}\": \"找不到会话:{id}\",\n\n\t// --- share/session-share.ts ---\n\t\"Share not found: {shareId}\": \"找不到分享:{shareId}\",\n\t\"Share {shareId} has already been revoked\": \"分享 {shareId} 已被撤销\",\n\n\t// --- testing/ ---\n\t\"Runtime-only delivery queue {name} must be a positive safe integer\": \"仅运行时的投递队列 {name} 必须是正的安全整数\",\n\t\"Session plugin testkit plugin API handles expire after session reload; access the current runtime directly\":\n\t\t\"会话插件 testkit 的插件 API 句柄在会话重载后过期;请直接访问当前运行时\",\n\t\"Session plugin testkit has no loaded plugin: {pluginId}\": \"会话插件 testkit 没有已加载的插件:{pluginId}\",\n\t\"Session plugin testkit has {count} unused faux response\": \"会话插件 testkit 有 {count} 个未使用的 faux 响应\",\n\t\"Session plugin testkit has {count} unused faux responses\": \"会话插件 testkit 有 {count} 个未使用的 faux 响应\",\n\t\"Session plugin testkit repeat count must be a positive integer\": \"会话插件 testkit 的重复次数必须是正整数\",\n\t\"Session plugin testkit transcript diverged on run {run}\": \"会话插件 testkit 的转录在第 {run} 次运行出现分歧\",\n\t\"Plugin testkit manifestRoot must be a non-empty string\": \"插件 testkit 的 manifestRoot 必须是非空字符串\",\n\t\"Plugin testkit repeat count must be a positive integer\": \"插件 testkit 的重复次数必须是正整数\",\n\t\"Plugin testkit transcript diverged on run {run}\": \"插件 testkit 的转录在第 {run} 次运行出现分歧\",\n\n\t// --- profiles/suite-loader.ts .profile-lock.json 校验 ---\n\t\".profile-lock.json must be a JSON object\": \".profile-lock.json 必须是 JSON 对象\",\n\t\".profile-lock.json identity must be a JSON object\": \".profile-lock.json 的 identity 必须是 JSON 对象\",\n\t\".profile-lock.json identity must carry profileId/profileVersion/manifestDigest/capabilityVersions\":\n\t\t\".profile-lock.json 的 identity 必须携带 profileId/profileVersion/manifestDigest/capabilityVersions\",\n\t\".profile-lock.json identity.capabilityVersions entries must be objects\":\n\t\t\".profile-lock.json 的 identity.capabilityVersions 条目必须是对象\",\n\t\".profile-lock.json identity.capabilityVersions entries must carry id/version\":\n\t\t\".profile-lock.json 的 identity.capabilityVersions 条目必须携带 id/version\",\n\t\".profile-lock.json must carry lockedAt/lockedBy/generation\":\n\t\t\".profile-lock.json 必须携带 lockedAt/lockedBy/generation\",\n};\n"]}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 批次⑨收尾域词典(docs/design/国际化与本地化.md §词典结构):批次⑨abc
|
|
3
|
+
* 精确对账后发现的最后一批散布 throw——artifacts、client/remote-session、
|
|
4
|
+
* main.ts 子任务护栏、profiles/suite-loader、remote/server-entry 与
|
|
5
|
+
* session-source、share、testing 工具。至此 agent-forge 包内可译 throw 清零
|
|
6
|
+
* (豁免清单见设计文档 §1 非目标 6-9)。
|
|
7
|
+
*/
|
|
8
|
+
export const coreContractFinal = {
|
|
9
|
+
// --- artifacts/artifact-store.ts ---
|
|
10
|
+
"Artifact not found: {artifactId}": "找不到制品:{artifactId}",
|
|
11
|
+
"Artifact {artifactId} belongs to a different session": "制品 {artifactId} 属于另一个会话",
|
|
12
|
+
"Artifact {artifactId} lifecycle has ended: {reason}": "制品 {artifactId} 生命周期已结束:{reason}",
|
|
13
|
+
"Artifact {artifactId} lifecycle has already ended": "制品 {artifactId} 生命周期已经结束",
|
|
14
|
+
// --- client/remote-session.ts ---
|
|
15
|
+
"Session cannot accept input during {phase} phase": "会话处于 {phase} 阶段,不能接受输入",
|
|
16
|
+
"Cannot {operation} a session while session is {phase}": "会话处于 {phase} 状态,无法执行 {operation}",
|
|
17
|
+
"Session {id} did not provide a snapshot": "会话 {id} 未提供快照",
|
|
18
|
+
"Remote session is disposed": "远程会话已销毁",
|
|
19
|
+
"Remote session is busy with {operation}": "远程会话正忙于 {operation}",
|
|
20
|
+
"Cannot {description} while session is {phase}": "会话处于 {phase} 状态,无法 {description}",
|
|
21
|
+
// --- main.ts ---
|
|
22
|
+
"agent task child profile model {model} is not among the runner's scoped models{available}": "agent task 子 profile 模型 {model} 不在 runner 的作用域模型内{available}",
|
|
23
|
+
"resume target {resumeId} is not a persisted child of session {parentId}": "resume 目标 {resumeId} 不是会话 {parentId} 的已持久化子会话",
|
|
24
|
+
// --- profiles/suite-loader.ts ---
|
|
25
|
+
"Invalid suite.json at {path}: {errors}. Fix the file, or delete the suite workspace directory {dir} and recreate it.": "{path} 的 suite.json 无效:{errors}。请修复该文件,或删除 suite 工作区目录 {dir} 后重建。",
|
|
26
|
+
// --- remote/server-entry.ts / session-source.ts ---
|
|
27
|
+
"Unknown or unavailable model: {provider}/{id}": "未知或不可用的模型:{provider}/{id}",
|
|
28
|
+
"Remote server requires a session source or sessionSourceOptions": "远程服务器需要 session source 或 sessionSourceOptions",
|
|
29
|
+
'cwd "{cwd}" is outside the configured workspace roots: [{roots}]': 'cwd "{cwd}" 在配置的工作区根目录之外:[{roots}]',
|
|
30
|
+
"Cannot create session: cwd does not exist: {cwd}": "无法创建会话:cwd 不存在:{cwd}",
|
|
31
|
+
"Cannot create session: cwd is not a directory: {cwd}": "无法创建会话:cwd 不是目录:{cwd}",
|
|
32
|
+
"Session not found: {id}": "找不到会话:{id}",
|
|
33
|
+
// --- share/session-share.ts ---
|
|
34
|
+
"Share not found: {shareId}": "找不到分享:{shareId}",
|
|
35
|
+
"Share {shareId} has already been revoked": "分享 {shareId} 已被撤销",
|
|
36
|
+
// --- testing/ ---
|
|
37
|
+
"Runtime-only delivery queue {name} must be a positive safe integer": "仅运行时的投递队列 {name} 必须是正的安全整数",
|
|
38
|
+
"Session plugin testkit plugin API handles expire after session reload; access the current runtime directly": "会话插件 testkit 的插件 API 句柄在会话重载后过期;请直接访问当前运行时",
|
|
39
|
+
"Session plugin testkit has no loaded plugin: {pluginId}": "会话插件 testkit 没有已加载的插件:{pluginId}",
|
|
40
|
+
"Session plugin testkit has {count} unused faux response": "会话插件 testkit 有 {count} 个未使用的 faux 响应",
|
|
41
|
+
"Session plugin testkit has {count} unused faux responses": "会话插件 testkit 有 {count} 个未使用的 faux 响应",
|
|
42
|
+
"Session plugin testkit repeat count must be a positive integer": "会话插件 testkit 的重复次数必须是正整数",
|
|
43
|
+
"Session plugin testkit transcript diverged on run {run}": "会话插件 testkit 的转录在第 {run} 次运行出现分歧",
|
|
44
|
+
"Plugin testkit manifestRoot must be a non-empty string": "插件 testkit 的 manifestRoot 必须是非空字符串",
|
|
45
|
+
"Plugin testkit repeat count must be a positive integer": "插件 testkit 的重复次数必须是正整数",
|
|
46
|
+
"Plugin testkit transcript diverged on run {run}": "插件 testkit 的转录在第 {run} 次运行出现分歧",
|
|
47
|
+
// --- profiles/suite-loader.ts .profile-lock.json 校验 ---
|
|
48
|
+
".profile-lock.json must be a JSON object": ".profile-lock.json 必须是 JSON 对象",
|
|
49
|
+
".profile-lock.json identity must be a JSON object": ".profile-lock.json 的 identity 必须是 JSON 对象",
|
|
50
|
+
".profile-lock.json identity must carry profileId/profileVersion/manifestDigest/capabilityVersions": ".profile-lock.json 的 identity 必须携带 profileId/profileVersion/manifestDigest/capabilityVersions",
|
|
51
|
+
".profile-lock.json identity.capabilityVersions entries must be objects": ".profile-lock.json 的 identity.capabilityVersions 条目必须是对象",
|
|
52
|
+
".profile-lock.json identity.capabilityVersions entries must carry id/version": ".profile-lock.json 的 identity.capabilityVersions 条目必须携带 id/version",
|
|
53
|
+
".profile-lock.json must carry lockedAt/lockedBy/generation": ".profile-lock.json 必须携带 lockedAt/lockedBy/generation",
|
|
54
|
+
};
|
|
55
|
+
//# sourceMappingURL=core-contract-final.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"core-contract-final.js","sourceRoot":"","sources":["../../../../../src/core/i18n/locales/zh-cn/core-contract-final.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAA2B;IACxD,sCAAsC;IACtC,kCAAkC,EAAE,gCAAoB;IACxD,sDAAsD,EAAE,2CAAyB;IACjF,qDAAqD,EAAE,sDAAkC;IACzF,mDAAmD,EAAE,8CAA0B;IAE/E,mCAAmC;IACnC,kDAAkD,EAAE,kDAAwB;IAC5E,uDAAuD,EAAE,wDAAkC;IAC3F,yCAAyC,EAAE,6BAAe;IAC1D,4BAA4B,EAAE,uBAAS;IACvC,yCAAyC,EAAE,mCAAqB;IAChE,+CAA+C,EAAE,oDAAkC;IAEnF,kBAAkB;IAClB,2FAA2F,EAC1F,sFAA8D;IAC/D,yEAAyE,EACxE,2EAA+C;IAEhD,mCAAmC;IACnC,sHAAsH,EACrH,mHAAmE;IAEpE,qDAAqD;IACrD,+CAA+C,EAAE,+CAA2B;IAC5E,iEAAiE,EAChE,+DAA+C;IAChD,kEAAkE,EACjE,8DAAoC;IACrC,kDAAkD,EAAE,4CAAsB;IAC1E,sDAAsD,EAAE,+CAAuB;IAC/E,yBAAyB,EAAE,wBAAY;IAEvC,iCAAiC;IACjC,4BAA4B,EAAE,6BAAiB;IAC/C,0CAA0C,EAAE,+BAAmB;IAE/D,mBAAmB;IACnB,oEAAoE,EAAE,gEAA4B;IAClG,4GAA4G,EAC3G,oGAA4C;IAC7C,yDAAyD,EAAE,4DAAkC;IAC7F,yDAAyD,EAAE,8DAAsC;IACjG,0DAA0D,EAAE,8DAAsC;IAClG,gEAAgE,EAAE,wDAA0B;IAC5F,yDAAyD,EAAE,kEAAkC;IAC7F,wDAAwD,EAAE,0DAAoC;IAC9F,wDAAwD,EAAE,kDAAwB;IAClF,iDAAiD,EAAE,4DAAgC;IAEnF,6DAAyD;IACzD,0CAA0C,EAAE,0CAAgC;IAC5E,mDAAmD,EAAE,uDAA2C;IAChG,mGAAmG,EAClG,yGAA+F;IAChG,wEAAwE,EACvE,0EAA0D;IAC3D,8EAA8E,EAC7E,kFAAoE;IACrE,4DAA4D,EAC3D,8DAAsD;CACvD,CAAC","sourcesContent":["/**\n * 批次⑨收尾域词典(docs/design/国际化与本地化.md §词典结构):批次⑨abc\n * 精确对账后发现的最后一批散布 throw——artifacts、client/remote-session、\n * main.ts 子任务护栏、profiles/suite-loader、remote/server-entry 与\n * session-source、share、testing 工具。至此 agent-forge 包内可译 throw 清零\n * (豁免清单见设计文档 §1 非目标 6-9)。\n */\nexport const coreContractFinal: Record<string, string> = {\n\t// --- artifacts/artifact-store.ts ---\n\t\"Artifact not found: {artifactId}\": \"找不到制品:{artifactId}\",\n\t\"Artifact {artifactId} belongs to a different session\": \"制品 {artifactId} 属于另一个会话\",\n\t\"Artifact {artifactId} lifecycle has ended: {reason}\": \"制品 {artifactId} 生命周期已结束:{reason}\",\n\t\"Artifact {artifactId} lifecycle has already ended\": \"制品 {artifactId} 生命周期已经结束\",\n\n\t// --- client/remote-session.ts ---\n\t\"Session cannot accept input during {phase} phase\": \"会话处于 {phase} 阶段,不能接受输入\",\n\t\"Cannot {operation} a session while session is {phase}\": \"会话处于 {phase} 状态,无法执行 {operation}\",\n\t\"Session {id} did not provide a snapshot\": \"会话 {id} 未提供快照\",\n\t\"Remote session is disposed\": \"远程会话已销毁\",\n\t\"Remote session is busy with {operation}\": \"远程会话正忙于 {operation}\",\n\t\"Cannot {description} while session is {phase}\": \"会话处于 {phase} 状态,无法 {description}\",\n\n\t// --- main.ts ---\n\t\"agent task child profile model {model} is not among the runner's scoped models{available}\":\n\t\t\"agent task 子 profile 模型 {model} 不在 runner 的作用域模型内{available}\",\n\t\"resume target {resumeId} is not a persisted child of session {parentId}\":\n\t\t\"resume 目标 {resumeId} 不是会话 {parentId} 的已持久化子会话\",\n\n\t// --- profiles/suite-loader.ts ---\n\t\"Invalid suite.json at {path}: {errors}. Fix the file, or delete the suite workspace directory {dir} and recreate it.\":\n\t\t\"{path} 的 suite.json 无效:{errors}。请修复该文件,或删除 suite 工作区目录 {dir} 后重建。\",\n\n\t// --- remote/server-entry.ts / session-source.ts ---\n\t\"Unknown or unavailable model: {provider}/{id}\": \"未知或不可用的模型:{provider}/{id}\",\n\t\"Remote server requires a session source or sessionSourceOptions\":\n\t\t\"远程服务器需要 session source 或 sessionSourceOptions\",\n\t'cwd \"{cwd}\" is outside the configured workspace roots: [{roots}]':\n\t\t'cwd \"{cwd}\" 在配置的工作区根目录之外:[{roots}]',\n\t\"Cannot create session: cwd does not exist: {cwd}\": \"无法创建会话:cwd 不存在:{cwd}\",\n\t\"Cannot create session: cwd is not a directory: {cwd}\": \"无法创建会话:cwd 不是目录:{cwd}\",\n\t\"Session not found: {id}\": \"找不到会话:{id}\",\n\n\t// --- share/session-share.ts ---\n\t\"Share not found: {shareId}\": \"找不到分享:{shareId}\",\n\t\"Share {shareId} has already been revoked\": \"分享 {shareId} 已被撤销\",\n\n\t// --- testing/ ---\n\t\"Runtime-only delivery queue {name} must be a positive safe integer\": \"仅运行时的投递队列 {name} 必须是正的安全整数\",\n\t\"Session plugin testkit plugin API handles expire after session reload; access the current runtime directly\":\n\t\t\"会话插件 testkit 的插件 API 句柄在会话重载后过期;请直接访问当前运行时\",\n\t\"Session plugin testkit has no loaded plugin: {pluginId}\": \"会话插件 testkit 没有已加载的插件:{pluginId}\",\n\t\"Session plugin testkit has {count} unused faux response\": \"会话插件 testkit 有 {count} 个未使用的 faux 响应\",\n\t\"Session plugin testkit has {count} unused faux responses\": \"会话插件 testkit 有 {count} 个未使用的 faux 响应\",\n\t\"Session plugin testkit repeat count must be a positive integer\": \"会话插件 testkit 的重复次数必须是正整数\",\n\t\"Session plugin testkit transcript diverged on run {run}\": \"会话插件 testkit 的转录在第 {run} 次运行出现分歧\",\n\t\"Plugin testkit manifestRoot must be a non-empty string\": \"插件 testkit 的 manifestRoot 必须是非空字符串\",\n\t\"Plugin testkit repeat count must be a positive integer\": \"插件 testkit 的重复次数必须是正整数\",\n\t\"Plugin testkit transcript diverged on run {run}\": \"插件 testkit 的转录在第 {run} 次运行出现分歧\",\n\n\t// --- profiles/suite-loader.ts .profile-lock.json 校验 ---\n\t\".profile-lock.json must be a JSON object\": \".profile-lock.json 必须是 JSON 对象\",\n\t\".profile-lock.json identity must be a JSON object\": \".profile-lock.json 的 identity 必须是 JSON 对象\",\n\t\".profile-lock.json identity must carry profileId/profileVersion/manifestDigest/capabilityVersions\":\n\t\t\".profile-lock.json 的 identity 必须携带 profileId/profileVersion/manifestDigest/capabilityVersions\",\n\t\".profile-lock.json identity.capabilityVersions entries must be objects\":\n\t\t\".profile-lock.json 的 identity.capabilityVersions 条目必须是对象\",\n\t\".profile-lock.json identity.capabilityVersions entries must carry id/version\":\n\t\t\".profile-lock.json 的 identity.capabilityVersions 条目必须携带 id/version\",\n\t\".profile-lock.json must carry lockedAt/lockedBy/generation\":\n\t\t\".profile-lock.json 必须携带 lockedAt/lockedBy/generation\",\n};\n"]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 插件契约与外围模块域词典(docs/design/国际化与本地化.md §3,批次⑨c):覆盖
|
|
3
|
+
* `src/plugins/`(ecosystem 协议校验族、安装/分发/信任根等)、`src/profile/`、
|
|
4
|
+
* `src/host/`、`src/utils/`、`src/modes/` 外围、`src/cli/`(parseArgs 诊断、auth
|
|
5
|
+
* 命令错误)、`src/durable/`、`src/package-manager-cli.ts` 的 throw 契约消息与
|
|
6
|
+
* 主题解析错误。key 为英文原文,占位符 `{name}` 原样保留;协议码
|
|
7
|
+
* (invalid_response、archive_invalid 等)、字段名、命令名、路径不译。
|
|
8
|
+
* 与 core-contract-core 域重复的 4 条 `{label}` 系列词条译文一致,覆盖无需登记。
|
|
9
|
+
*/
|
|
10
|
+
export declare const coreContractPlugins: Record<string, string>;
|
|
11
|
+
//# sourceMappingURL=core-contract-plugins.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"core-contract-plugins.d.ts","sourceRoot":"","sources":["../../../../../src/core/i18n/locales/zh-cn/core-contract-plugins.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA0ftD,CAAC","sourcesContent":["/**\n * 插件契约与外围模块域词典(docs/design/国际化与本地化.md §3,批次⑨c):覆盖\n * `src/plugins/`(ecosystem 协议校验族、安装/分发/信任根等)、`src/profile/`、\n * `src/host/`、`src/utils/`、`src/modes/` 外围、`src/cli/`(parseArgs 诊断、auth\n * 命令错误)、`src/durable/`、`src/package-manager-cli.ts` 的 throw 契约消息与\n * 主题解析错误。key 为英文原文,占位符 `{name}` 原样保留;协议码\n * (invalid_response、archive_invalid 等)、字段名、命令名、路径不译。\n * 与 core-contract-core 域重复的 4 条 `{label}` 系列词条译文一致,覆盖无需登记。\n */\nexport const coreContractPlugins: Record<string, string> = {\n\t// --- 与 core-contract-core 译文一致的 `{label}` 系列(相同译文覆盖) ---\n\t\"{label} is invalid\": \"{label} 无效\",\n\t\"{label} must be a non-empty string\": \"{label} 必须是非空字符串\",\n\t\"{label} must be a plain object\": \"{label} 必须是普通对象\",\n\t\"{label} must be an array\": \"{label} 必须是数组\",\n\n\t// --- cli/args.ts parseArgs 诊断 ---\n\t\"{option} requires a plugin id\": \"{option} 需要一个插件 id\",\n\t\"{option} requires a non-empty plugin id\": \"{option} 需要非空插件 id\",\n\t\"{option} plugin id must be at most {max} characters\": \"{option} 插件 id 最多 {max} 个字符\",\n\t\"{option} accepts at most {max} plugin ids\": \"{option} 最多接受 {max} 个插件 id\",\n\t\"--plugin-profile requires a profile id\": \"--plugin-profile 需要一个 profile id\",\n\t\"--plugin-profile requires a non-empty profile id\": \"--plugin-profile 需要非空 profile id\",\n\t\"--plugin-profile id must be at most {max} characters\": \"--plugin-profile id 最多 {max} 个字符\",\n\t\"--mode requires text, json, or rpc\": \"--mode 需要 text、json 或 rpc\",\n\t'Invalid mode \"{mode}\". Valid values: text, json, rpc': '无效的模式 \"{mode}\"。有效值:text、json、rpc',\n\t\"--name requires a value\": \"--name 需要一个值\",\n\t\"--suite requires a suite id\": \"--suite 需要一个 suite id\",\n\t\"--suite-create requires a suite id\": \"--suite-create 需要一个 suite id\",\n\t\"--clone-from requires a suite id\": \"--clone-from 需要一个 suite id\",\n\t\"--suite-delete requires a suite id\": \"--suite-delete 需要一个 suite id\",\n\t\"--suite-reset requires a suite id\": \"--suite-reset 需要一个 suite id\",\n\t\"--serve requires a valid TCP port (0-65535)\": \"--serve 需要有效的 TCP 端口(0-65535)\",\n\t\"--serve-workspace-root requires a directory\": \"--serve-workspace-root 需要一个目录\",\n\t'Invalid thinking level \"{level}\". Valid values: {levels}': '无效的思考级别 \"{level}\"。有效值:{levels}',\n\t\"--trace-kind requires a comma-separated kind list\": \"--trace-kind 需要逗号分隔的 kind 列表\",\n\t\"--trace-kind requires at least one trace kind\": \"--trace-kind 至少需要一个 trace kind\",\n\t'Invalid trace kind(s) \"{kinds}\". Valid values: {valid}': '无效的 trace kind \"{kinds}\"。有效值:{valid}',\n\t\"--trace-limit requires a positive integer\": \"--trace-limit 需要正整数\",\n\t'Invalid trace limit \"{limit}\". Expected a positive integer': '无效的 trace 上限 \"{limit}\"。应为正整数',\n\t\"--log-level requires a level\": \"--log-level 需要一个级别\",\n\t'Invalid log level \"{level}\". Valid values: {levels}': '无效的日志级别 \"{level}\"。有效值:{levels}',\n\t\"--plugin-scope must be global or project\": \"--plugin-scope 必须是 global 或 project\",\n\t\"--plugin-scope may be specified only once\": \"--plugin-scope 只能指定一次\",\n\t\"--use-theme requires a theme name\": \"--use-theme 需要主题名\",\n\t\"--tui-mode requires regular or fullscreen\": \"--tui-mode 需要 regular 或 fullscreen\",\n\t'Invalid TUI mode \"{mode}\". Valid values: regular, fullscreen':\n\t\t'无效的 TUI 模式 \"{mode}\"。有效值:regular、fullscreen',\n\n\t// --- cli/auth-command.ts、auth-check、credential-print ---\n\t'Unknown auth command \"{command}\". Use \"{apiKey}\", \"{bearerToken}\", or \"{check}\".':\n\t\t'未知的 auth 命令 \"{command}\"。请使用 \"{apiKey}\"、\"{bearerToken}\" 或 \"{check}\"。',\n\t\"--min-expiry is only supported by print-bearer-token\": \"--min-expiry 仅被 print-bearer-token 支持\",\n\t\"--min-expiry must use a duration such as 30m or 1h\": \"--min-expiry 必须使用时长格式,如 30m 或 1h\",\n\t\"{arg} is only supported by auth check\": \"{arg} 仅被 auth check 支持\",\n\t\"Auth commands only accept --provider and --model\": \"auth 命令只接受 --provider 和 --model\",\n\t\"Auth checks require --provider <provider> or --model <model>\":\n\t\t\"auth check 需要 --provider <provider> 或 --model <model>\",\n\t\"Credential printing requires --provider <provider> or --model <model>\":\n\t\t\"凭证打印需要 --provider <provider> 或 --model <model>\",\n\t\"Unable to resolve an auth provider\": \"无法解析 auth 提供方\",\n\t'Unable to resolve model \"{model}\"': '无法解析模型 \"{model}\"',\n\t\"Unable to resolve the requested provider/model\": \"无法解析所请求的提供方/模型\",\n\t'Unknown provider \"{provider}\". Use --list-models to see available providers.':\n\t\t'未知的提供方 \"{provider}\"。使用 --list-models 查看可用提供方。',\n\t'Model \"{model}\" not found. Use --list-models to see available models.':\n\t\t'未找到模型 \"{model}\"。使用 --list-models 查看可用模型。',\n\t'Provider \"{providerId}\" is configured with OAuth, not an API key':\n\t\t'提供方 \"{providerId}\" 配置的是 OAuth,而非 API key',\n\t'Provider \"{providerId}\" is not configured with an OAuth bearer token':\n\t\t'提供方 \"{providerId}\" 未配置 OAuth bearer token',\n\t\"No usable {credential} is configured\": \"没有可用的已配置 {credential}\",\n\t\"Multiple configured providers matched ({providers}). Specify --provider.\":\n\t\t\"多个已配置提供方匹配({providers})。请指定 --provider。\",\n\n\t// --- modes/interactive/theme/theme.ts 主题解析 ---\n\t\"Invalid hex color: {hex}\": \"无效的十六进制颜色:{hex}\",\n\t\"Invalid color value: {color}\": \"无效的颜色值:{color}\",\n\t\"Circular variable reference detected: {value}\": \"检测到循环变量引用:{value}\",\n\t\"Variable reference not found: {value}\": \"未找到变量引用:{value}\",\n\t\"Unknown theme color: {color}\": \"未知的主题颜色:{color}\",\n\t\"Unknown theme background color: {color}\": \"未知的主题背景色:{color}\",\n\t'Invalid theme name \"{name}\": theme names cannot contain \"/\" because it is reserved for automatic light/dark theme settings.':\n\t\t'无效的主题名 \"{name}\":主题名不能包含 \"/\",该字符保留给自动明暗主题设置。',\n\t'Invalid theme \"{label}\":': '无效主题 \"{label}\":',\n\t\"Missing required color tokens:\": \"缺少必需的颜色 token:\",\n\t'Please add these colors to your theme\\'s \"colors\" object.': '请将这些颜色添加到主题的 \"colors\" 对象。',\n\t\"See the built-in themes (dark.json, light.json) for reference values.\":\n\t\t\"参考内置主题(dark.json、light.json)的取值。\",\n\t\"Other errors:\": \"其他错误:\",\n\t\"Failed to parse theme {label}: {error}\": \"解析主题 {label} 失败:{error}\",\n\t'Theme \"{name}\" does not have a source path for export': '主题 \"{name}\" 没有可用于导出的源路径',\n\t\"Theme not found: {name}\": \"未找到主题:{name}\",\n\t\"Theme not initialized. Call initTheme() first.\": \"主题未初始化。请先调用 initTheme()。\",\n\n\t// --- modes/ 其余(interactive-mode / json-event / rpc-client / plugin-selection-entry) ---\n\t\"TUI property {property} is not callable\": \"TUI 属性 {property} 不可调用\",\n\t\"Fullscreen layout is not initialized\": \"全屏布局未初始化\",\n\t\"Completed compaction is missing from the session context\": \"会话上下文中缺少已完成的压缩结果\",\n\t\"toolcall_start content at index {index} is not a tool call\": \"toolcall_start 内容(索引 {index})不是工具调用\",\n\t\"message_update message is not an assistant message\": \"message_update 消息不是 assistant 消息\",\n\t\"Client already started\": \"客户端已启动\",\n\t\"Client not started\": \"客户端未启动\",\n\t\"invalid plugin selection profile ID\": \"无效的插件选择 profile ID\",\n\t\"plugin selection profile does not match the entry profile\": \"插件选择 profile 与入口 profile 不匹配\",\n\n\t// --- interactive-mode 遗漏登记的既有 t() 词条(批次⑨c 补录) ---\n\tinterrupt: \"中断\",\n\tcommands: \"命令\",\n\tbash: \"bash\",\n\tmore: \"更多\",\n\tContext: \"上下文\",\n\tSkills: \"技能\",\n\tPrompts: \"提示词\",\n\tThemes: \"主题\",\n\tError: \"错误\",\n\tCompaction: \"压缩\",\n\tSummarize: \"总结\",\n\tMessages: \"消息\",\n\tTokens: \"Token 用量\",\n\tCost: \"费用\",\n\tCommand: \"命令\",\n\tDescription: \"说明\",\n\tKey: \"按键\",\n\tAction: \"操作\",\n\tNavigation: \"导航\",\n\tEditing: \"编辑\",\n\tUndo: \"撤销\",\n\tOther: \"其他\",\n\n\t// --- plugins/ecosystem/registry.ts 协议校验族 ---\n\t\"{label} must be a non-empty bounded string\": \"{label} 必须是非空有界字符串\",\n\t\"{label} contains an unsupported field\": \"{label} 包含不支持的字段\",\n\t\"Plugin registry source must be an opaque URI, not a local path\":\n\t\t\"插件注册表 source 必须是不透明 URI,不能是本地路径\",\n\t\"Plugin registry source URL is invalid\": \"插件注册表 source URL 无效\",\n\t\"Registry manifest must be an object\": \"Registry manifest 必须是对象\",\n\t\"Registry manifest id is invalid\": \"Registry manifest id 无效\",\n\t\"Registry manifest pluginVersion is invalid\": \"Registry manifest pluginVersion 无效\",\n\t\"Registry manifest apiVersion is invalid\": \"Registry manifest apiVersion 无效\",\n\t\"Published plugins must declare host version compatibility range: set minHostVersion and/or maxHostVersion\":\n\t\t\"已发布的插件必须声明 host 版本兼容范围:设置 minHostVersion 和/或 maxHostVersion\",\n\t\"Registry manifest cannot be serialized\": \"Registry manifest 无法序列化\",\n\t\"Registry manifest exceeds the size limit\": \"Registry manifest 超出大小上限\",\n\t\"Registry response entry must be an object\": \"Registry 响应条目必须是对象\",\n\t\"Registry distribution descriptor is invalid\": \"Registry 分发描述符无效\",\n\t\"Registry distribution descriptor does not match the manifest identity\": \"Registry 分发描述符与 manifest 身份不匹配\",\n\t\"maxManifests must be an integer between 1 and {max}\": \"maxManifests 必须是 1 到 {max} 之间的整数\",\n\t\"Manifest digest mismatch for {identity}\": \"manifest 摘要不匹配:{identity}\",\n\t\"Registry source proof was rejected\": \"Registry source 证明被拒绝\",\n\t\"Plugin source verifier failed\": \"插件 source 校验器失败\",\n\t\"Plugin source was rejected\": \"插件 source 被拒绝\",\n\t\"Registry source must provide list()\": \"Registry source 必须提供 list()\",\n\t\"Registry source/digest verifier is required\": \"必须提供 Registry source/digest 校验器\",\n\t\"Registry source verifier is required\": \"必须提供 Registry source 校验器\",\n\t\"Plugin registry source failed\": \"插件注册表 source 失败\",\n\t\"Registry source must return an array\": \"Registry source 必须返回数组\",\n\t\"Registry response contains too many manifests\": \"Registry 响应包含过多 manifest\",\n\t\"Registry response exceeds the aggregate size limit\": \"Registry 响应超出聚合大小上限\",\n\t\"Duplicate registry manifest: {identity}\": \"重复的 registry manifest:{identity}\",\n\t\"Registry does not expose a host-side package resolver\": \"Registry 未暴露 host 侧的包解析器\",\n\n\t// --- catalog / selection / resolver / updates ---\n\t\"maxEntries must be an integer between 1 and {max}\": \"maxEntries 必须是 1 到 {max} 之间的整数\",\n\t\"Catalog contains duplicate plugin version: {identity}\": \"Catalog 包含重复的插件版本:{identity}\",\n\t\"{label} must be at most {max} characters\": \"{label} 最多 {max} 个字符\",\n\t\"{label} must contain at most {max} plugin IDs\": \"{label} 最多包含 {max} 个插件 ID\",\n\t\"{label} contains duplicate plugin ID: {id}\": \"{label} 包含重复的插件 ID:{id}\",\n\t\"Selection references unknown plugin ID: {id}\": \"选择引用了未知的插件 ID:{id}\",\n\t\"discovered plugin IDs exceed the selection limit of {limit}\": \"发现的插件 ID 超出选择上限 {limit}\",\n\t\"Catalog truncation omitted selected plugin ID: {id}\": \"Catalog 截断遗漏了已选择的插件 ID:{id}\",\n\t\"capability {id} version must be a positive safe integer\": \"能力 {id} 的版本必须是正的安全整数\",\n\t\"update source must be a non-empty string\": \"更新 source 必须是非空字符串\",\n\t\"Only a verified update can become active: {pluginId}\": \"只有已验证的更新才能转为 active:{pluginId}\",\n\t\"Cannot rollback updates for different plugins\": \"无法回滚不同插件的更新\",\n\t\"Rollback target must be active\": \"回滚目标必须处于 active 状态\",\n\n\t// --- installer / state / selection-store ---\n\t\"installation reference is invalid\": \"安装引用无效\",\n\t\"installation reference must be opaque\": \"安装引用必须是不透明值\",\n\t\"invalid plugin state file path\": \"无效的插件状态文件路径\",\n\t\"invalid plugin scope reference\": \"无效的插件作用域引用\",\n\t\"record source label is invalid\": \"记录 source 标签无效\",\n\t\"record schema is invalid\": \"记录 schema 无效\",\n\t\"state schema is invalid\": \"state schema 无效\",\n\t\"state scope is invalid\": \"state 作用域无效\",\n\t\"state enabled flag is invalid\": \"state enabled 标志无效\",\n\t\"state lifecycle is invalid\": \"state 生命周期值无效\",\n\t\"snapshot schema is invalid\": \"快照 schema 无效\",\n\t\"snapshot version is unsupported\": \"不支持的快照版本\",\n\t\"records must be an array\": \"records 必须是数组\",\n\t\"installation scope does not match state scope\": \"安装作用域与 state 作用域不一致\",\n\t\"invalid plugin selection file path\": \"无效的插件选择文件路径\",\n\t\"selection schema is invalid\": \"选择 schema 无效\",\n\t\"selection IDs must be arrays\": \"选择 ID 必须是数组\",\n\t\"too many plugin IDs\": \"插件 ID 过多\",\n\t\"selections must be an array\": \"selections 必须是数组\",\n\n\t// --- node-distribution-host / 信任根 ---\n\t\"plugin request timed out\": \"插件请求超时\",\n\t\"plugin request was cancelled\": \"插件请求已取消\",\n\t\"{label} must be a positive integer at most {maximum}\": \"{label} 必须是不超过 {maximum} 的正整数\",\n\t\"allowed origin is invalid\": \"allowed origin 无效\",\n\t\"allowed origin must be an http(s) origin\": \"allowed origin 必须是 http(s) origin\",\n\t\"allowed origin must not include a path or query\": \"allowed origin 不得包含路径或查询\",\n\t\"at least one allowed origin is required\": \"至少需要一个 allowed origin\",\n\t\"plugin source URL is invalid\": \"插件 source URL 无效\",\n\t\"plugin source URL must use http(s) without credentials\": \"插件 source URL 必须使用 http(s) 且不带凭据\",\n\t\"plugin source origin is not allowed\": \"插件 source origin 不在允许范围\",\n\t\"plugin response content length is invalid\": \"插件响应 content length 无效\",\n\t\"plugin response size mismatch\": \"插件响应大小不匹配\",\n\t\"plugin response media type mismatch\": \"插件响应媒体类型不匹配\",\n\t\"plugin artifact digest algorithm is unsupported\": \"不支持插件制品摘要算法\",\n\t\"plugin artifact file write failed\": \"插件制品文件写入失败\",\n\t\"Node fetch is unavailable\": \"Node fetch 不可用\",\n\t\"maxRedirects must be an integer between 0 and {max}\": \"maxRedirects 必须是 0 到 {max} 之间的整数\",\n\t\"userAgent is invalid\": \"userAgent 无效\",\n\t\"artifactDirectory must be absolute\": \"artifactDirectory 必须是绝对路径\",\n\t\"plugin distribution host is closed\": \"插件分发 host 已关闭\",\n\t\"plugin redirect limit exceeded\": \"超出插件重定向上限\",\n\t\"plugin metadata request failed\": \"插件元数据请求失败\",\n\t\"plugin artifact request failed\": \"插件制品请求失败\",\n\t\"plugin artifact response has no body\": \"插件制品响应没有 body\",\n\t\"plugin artifact exceeds its size limit\": \"插件制品超出大小上限\",\n\t\"plugin artifact size mismatch\": \"插件制品大小不匹配\",\n\t\"plugin artifact digest mismatch\": \"插件制品摘要不匹配\",\n\t\"plugin artifact release was cancelled\": \"插件制品释放已取消\",\n\t\"plugin artifact reference is unknown\": \"未知的插件制品引用\",\n\t\"plugin artifact is still being read\": \"插件制品仍在读取中\",\n\t\"plugin artifact read was cancelled\": \"插件制品读取已取消\",\n\t\"{label} must be an ISO-8601 UTC timestamp\": \"{label} 必须是 ISO-8601 UTC 时间戳\",\n\t\"{label} must be a valid ISO-8601 UTC timestamp\": \"{label} 必须是有效的 ISO-8601 UTC 时间戳\",\n\t\"publicKeyPem is invalid\": \"publicKeyPem 无效\",\n\t\"publicKeyPem must be an Ed25519 public key\": \"publicKeyPem 必须是 Ed25519 公钥\",\n\t\"keys must contain between 1 and {max} entries\": \"keys 必须包含 1 到 {max} 个条目\",\n\t\"revokedKeyIds is invalid or duplicated\": \"revokedKeyIds 无效或重复\",\n\t\"keyId is invalid or duplicated\": \"keyId 无效或重复\",\n\t\"notBefore must be earlier than notAfter\": \"notBefore 必须早于 notAfter\",\n\n\t// --- node-package-install 家族(构造器消息 + 校验) ---\n\t\"Node package installation failed: {code}\": \"Node 包安装失败:{code}\",\n\t\"Node package install persistence failed: {code}\": \"Node 包安装持久化失败:{code}\",\n\t\"loadPlugin must be omitted when binding a session\": \"绑定会话时必须省略 loadPlugin\",\n\t\"non-ascii zip name\": \"zip 条目名包含非 ASCII 字符\",\n\t\"openArtifact is required\": \"必须提供 openArtifact\",\n\t\"installationDirectory must be absolute\": \"installationDirectory 必须是绝对路径\",\n\t\"persistence mode is invalid\": \"持久化模式无效\",\n\t\"supportedScopes is invalid\": \"supportedScopes 无效\",\n\t\"lockTimeoutMs must be a positive integer at most {max}\": \"lockTimeoutMs 必须是不超过 {max} 的正整数\",\n\t\"rootDirectory must be absolute\": \"rootDirectory 必须是绝对路径\",\n\n\t// --- node-registry-source / npm / release / url / disk ---\n\t\"Allowed registry origin is invalid\": \"Allowed registry origin 无效\",\n\t\"Allowed registry origin must be an http(s) origin without credentials\":\n\t\t\"Allowed registry origin 必须是不带凭据的 http(s) origin\",\n\t\"Allowed registry origin must not include a path, query, or fragment\":\n\t\t\"Allowed registry origin 不得包含路径、查询或片段\",\n\t\"Plugin registry URL is invalid\": \"插件注册表 URL 无效\",\n\t\"Plugin registry URL must use http(s) without credentials\": \"插件注册表 URL 必须使用 http(s) 且不带凭据\",\n\t\"Plugin registry URL must not include a query or fragment\": \"插件注册表 URL 不得包含查询或片段\",\n\t\"Plugin registry origin is not allowed\": \"插件注册表 origin 不在允许范围\",\n\t\"Plugin registry response length is invalid\": \"插件注册表响应长度无效\",\n\t\"Plugin registry response has no body\": \"插件注册表响应没有 body\",\n\t\"Plugin registry response exceeds the configured size limit\": \"插件注册表响应超出配置的大小上限\",\n\t\"Plugin registry response is not valid JSON\": \"插件注册表响应不是有效 JSON\",\n\t\"Plugin registry document is invalid\": \"插件注册表文档无效\",\n\t\"At least one allowed registry origin is required\": \"至少需要一个允许的注册表 origin\",\n\t\"Plugin registry request did not succeed\": \"插件注册表请求未成功\",\n\t\"Plugin registry response must be JSON\": \"插件注册表响应必须是 JSON\",\n\t\"npm integrity algorithm is unsupported\": \"不支持 npm integrity 算法\",\n\t\"npm integrity encoding is invalid\": \"npm integrity 编码无效\",\n\t\"npm integrity length is invalid\": \"npm integrity 长度无效\",\n\t\"npm integrity is invalid\": \"npm integrity 无效\",\n\t\"npm registry origin is invalid\": \"npm 注册表 origin 无效\",\n\t\"npm registry origin must be http(s) without credentials\": \"npm 注册表 origin 必须是不带凭据的 http(s)\",\n\t\"npm registry origin must not include a path, query, or fragment\": \"npm 注册表 origin 不得包含路径、查询或片段\",\n\t\"npm package name is invalid\": \"npm 包名无效\",\n\t\"npm tarball URL is invalid\": \"npm tarball URL 无效\",\n\t\"npm tarball URL must use http(s) without credentials\": \"npm tarball URL 必须使用 http(s) 且不带凭据\",\n\t\"npm tarball URL must not include a fragment\": \"npm tarball URL 不得包含片段\",\n\t\"npm registry response has no body\": \"npm 注册表响应没有 body\",\n\t\"npm registry response exceeds the configured size limit\": \"npm 注册表响应超出配置的大小上限\",\n\t\"npm registry response is not valid JSON\": \"npm 注册表响应不是有效 JSON\",\n\t\"npm packument is invalid\": \"npm packument 无效\",\n\t\"npm packument has no version table\": \"npm packument 没有版本表\",\n\t\"npm registry token is invalid\": \"npm 注册表 token 无效\",\n\t\"npm registry response must be JSON\": \"npm 注册表响应必须是 JSON\",\n\t\"npm package version has no integrity field\": \"npm 包版本没有 integrity 字段\",\n\t\"{label} must be http(s) without credentials\": \"{label} 必须是不带凭据的 http(s)\",\n\t\"{label} must not include a query or fragment\": \"{label} 不得包含查询或片段\",\n\t\"release API response is not valid JSON\": \"release API 响应不是有效 JSON\",\n\t\"release API response is not a release list\": \"release API 响应不是 release 列表\",\n\t\"release API response is not a release object\": \"release API 响应不是 release 对象\",\n\t\"release assets are invalid\": \"release assets 无效\",\n\t\"release has no assets\": \"release 没有 assets\",\n\t\"assets: {names}\": \"assets:{names}\",\n\t\"candidates: {names}\": \"candidates:{names}\",\n\t\"release asset has no download URL\": \"release asset 没有 download URL\",\n\t\"release API response has no body\": \"release API 响应没有 body\",\n\t\"release API response exceeds the configured size limit\": \"release API 响应超出配置的大小上限\",\n\t\"release API response must be JSON\": \"release API 响应必须是 JSON\",\n\t\"release API redirect target is invalid\": \"release API 重定向目标无效\",\n\t\"release API redirect must stay http(s)\": \"release API 重定向必须保持 http(s)\",\n\t\"plugin package URL is invalid\": \"插件包 URL 无效\",\n\t\"plugin package URL must use http(s) without credentials\": \"插件包 URL 必须使用 http(s) 且不带凭据\",\n\t\"plugin package URL must not include a fragment\": \"插件包 URL 不得包含片段\",\n\t\"expected sha256 digest is invalid\": \"期望的 sha256 摘要无效\",\n\t\"plugin package exceeds the configured size limit\": \"插件包超出配置的大小上限\",\n\t\"plugin package bytes do not match the expected sha256 digest\": \"插件包字节与期望的 sha256 摘要不匹配\",\n\t\"Index record {index} is not an object\": \"索引记录 {index} 不是对象\",\n\t\"Index record {index} has an invalid schema\": \"索引记录 {index} 的 schema 无效\",\n\t\"Index record {index} is invalid\": \"索引记录 {index} 无效\",\n\t\"Install store index JSON is invalid\": \"Install store 索引 JSON 无效\",\n\t\"Install store index is not an object\": \"Install store 索引不是对象\",\n\t\"Install store index schema is unsupported\": \"不支持的 Install store 索引 schema\",\n\t\"Install store index exceeds the record limit\": \"Install store 索引超出记录上限\",\n\t\"{label} exceeds the size limit\": \"{label} 超出大小上限\",\n\t\"Installed plugin manifest JSON is invalid\": \"已安装插件 manifest JSON 无效\",\n\t\"Installed plugin manifest is not an object\": \"已安装插件 manifest 不是对象\",\n\t\"Installed plugin package format is unsupported\": \"不支持的已安装插件包格式\",\n\t\"Installed plugin manifest identity does not match index record for {identity}\":\n\t\t\"已安装插件 manifest 身份与索引记录不匹配:{identity}\",\n\t\"Install store root directory must be absolute\": \"Install store 根目录必须是绝对路径\",\n\taborted: \"已中止\",\n\n\t// --- tar ---\n\t\"tar header field overflows\": \"tar header 字段溢出\",\n\t\"tar header name field overflows\": \"tar header name 字段溢出\",\n\t\"tar entry name cannot be split into ustar fields\": \"tar 条目名无法拆分到 ustar 字段\",\n\t\"tar entry name is invalid\": \"tar 条目名无效\",\n\t\"tar entry name is not normalized\": \"tar 条目名未规范化\",\n\t\"tar directory entry must be empty\": \"tar 目录条目必须为空\",\n\t\"tar file entry requires bytes\": \"tar 文件条目需要字节内容\",\n\t\"tar entries must be an array\": \"tar 条目必须是数组\",\n\t\"duplicate tar entry name: {name}\": \"重复的 tar 条目名:{name}\",\n\n\t// --- bootstrap / market / acquisition / supervisor ---\n\t\"{env} must be a JSON array of {keyId, publicKeyPem}\": \"{env} 必须是由 {keyId, publicKeyPem} 组成的 JSON 数组\",\n\t\"{env} must be a JSON array\": \"{env} 必须是 JSON 数组\",\n\t\"plugin state read failed ({detail}) for the {scope} scope\": \"读取 {scope} 作用域的插件状态失败({detail})\",\n\t\"installer prepare rejected {pluginId}: {reason}\": \"installer prepare 拒绝了 {pluginId}:{reason}\",\n\t\"plugin install failed ({code}) for {pluginId}\": \"插件安装失败({code}):{pluginId}\",\n\t\"plugin activation failed ({code}) for {pluginId}\": \"插件激活失败({code}):{pluginId}\",\n\t\"plugin state persist failed ({status}) for {pluginId}\": \"插件状态持久化失败({status}):{pluginId}\",\n\t\"plugin installation transaction did not complete\": \"插件安装事务未完成\",\n\t\"Unknown supervised plugin: {pluginId}\": \"未知的受监管插件:{pluginId}\",\n\n\t// --- profile/ ---\n\t\"Unknown first-batch role: {roleId}\": \"未知的首批角色:{roleId}\",\n\t\"Goal title must be a non-empty string\": \"Goal 标题必须是非空字符串\",\n\t\"Goal {goalId} must be in draft status to activate (current: {status})\":\n\t\t\"Goal {goalId} 必须处于 draft 状态才能激活(当前:{status})\",\n\t\"Goal {goalId} must be active to achieve (current: {status})\":\n\t\t\"Goal {goalId} 必须处于 active 状态才能完成(当前:{status})\",\n\t\"Achieving a goal requires at least one evidence reference\": \"完成 goal 至少需要一个证据引用\",\n\t\"Goal {goalId} cannot be archived from status {status}\": \"Goal {goalId} 无法从 {status} 状态归档\",\n\t\"{label}[{index}] must be a plain object\": \"{label}[{index}] 必须是普通对象\",\n\t\"{label} contains duplicate entry: {key}\": \"{label} 包含重复条目:{key}\",\n\t\"{label}[{index}].selectedAdapter must be an object\": \"{label}[{index}].selectedAdapter 必须是对象\",\n\t\"Profile identity.capabilityVersions version must be a positive safe integer: {id}\":\n\t\t\"Profile identity.capabilityVersions 版本必须是正的安全整数:{id}\",\n\t\"Plan title must be a non-empty string\": \"Plan 标题必须是非空字符串\",\n\t\"Plan branch must be a non-empty string\": \"Plan 分支必须是非空字符串\",\n\t\"Plan requires at least one step\": \"Plan 至少需要一个步骤\",\n\t\"Plan stepId must be a non-empty string\": \"Plan stepId 必须是非空字符串\",\n\t\"Plan step title must be a non-empty string\": \"Plan 步骤标题必须是非空字符串\",\n\t\"Duplicate plan stepId: {stepId}\": \"重复的 plan stepId:{stepId}\",\n\t\"Plan {planId} must be in draft status to activate (current: {status})\":\n\t\t\"Plan {planId} 必须处于 draft 状态才能激活(当前:{status})\",\n\t\"Plan {planId} must be active to link a revision (current: {status})\":\n\t\t\"Plan {planId} 必须处于 active 状态才能关联修订(当前:{status})\",\n\t\"Plan revision must be a positive safe integer, got {revision}\": \"Plan 修订号必须是正的安全整数,实际为 {revision}\",\n\t\"Plan {planId} must be active to complete (current: {status})\":\n\t\t\"Plan {planId} 必须处于 active 状态才能完成(当前:{status})\",\n\t\"Completing a plan requires at least one evidence reference\": \"完成 plan 至少需要一个证据引用\",\n\t\"Plan {planId} requires atRevision or a linked revision to complete\": \"Plan {planId} 完成 atRevision 或已关联的修订\",\n\t\"Plan {planId} cannot be discarded from status {status}\": \"Plan {planId} 无法从 {status} 状态废弃\",\n\t\"builtin manifest override does not match plugin {pluginId}\": \"builtin manifest 覆盖与插件 {pluginId} 不匹配\",\n\t\"Policy manifest policyKind is invalid: {policyKind}\": \"Policy manifest policyKind 无效:{policyKind}\",\n\t\"Policy manifest policyId must be a non-empty string\": \"Policy manifest policyId 必须是非空字符串\",\n\t\"Policy manifest {policyId}: enabled must be stated explicitly\": \"Policy manifest {policyId}:必须显式声明 enabled\",\n\t\"Policy manifest profileId must be a non-empty string\": \"Policy manifest profileId 必须是非空字符串\",\n\t\"Registry source already registered: {sourceId}\": \"Registry source 已注册:{sourceId}\",\n\t\"{label}.schemaVersion must be a positive safe integer\": \"{label}.schemaVersion 必须是正的安全整数\",\n\t\"Role metadata must be a plain object\": \"Role metadata 必须是普通对象\",\n\t\"Role metadata is missing required field: {key}\": \"Role metadata 缺少必需字段:{key}\",\n\t\"Role metadata has unsupported fields: {fields}\": \"Role metadata 包含不支持的字段:{fields}\",\n\t\"Role metadata.capabilityDependencies must be an array\": \"Role metadata.capabilityDependencies 必须是数组\",\n\t\"{label}.capabilityVersion must be a positive safe integer\": \"{label}.capabilityVersion 必须是正的安全整数\",\n\t\"{label}.required must be boolean\": \"{label}.required 必须是布尔值\",\n\t\"Role metadata.writableScopes must be an array\": \"Role metadata.writableScopes 必须是数组\",\n\t\"Role metadata.writableScopes[{index}] is invalid\": \"Role metadata.writableScopes[{index}] 无效\",\n\t\"Role metadata.concurrency is invalid\": \"Role metadata.concurrency 无效\",\n\t\"Role already registered: {roleId}\": \"角色已注册:{roleId}\",\n\t\"Unknown role: {roleId}\": \"未知的角色:{roleId}\",\n\t\"Role orchestrator is already running an orchestration\": \"Role orchestrator 已在运行一次编排\",\n\t\"Role id must be a non-empty string\": \"角色 id 必须是非空字符串\",\n\t\"Duplicate roleId in orchestration request: {roleId}\": \"编排请求中存在重复的 roleId:{roleId}\",\n\t\"Duplicate run override for role: {roleId}\": \"角色的运行覆盖重复:{roleId}\",\n\t\"Run override for unrequested role: {roleId}\": \"存在针对未请求角色的运行覆盖:{roleId}\",\n\t\"Orchestration outcome missing for role: {roleId}\": \"角色缺少编排结果:{roleId}\",\n\t\"No run binding for role: {roleId}\": \"角色没有运行绑定:{roleId}\",\n\t\"Root facade is already running a turn\": \"Root facade 已在运行一个回合\",\n\t\"Discovered item id must be a non-empty string\": \"发现的条目 id 必须是非空字符串\",\n\t\"Item {key} re-registered with a different version ({from} -> {to})\":\n\t\t\"条目 {key} 以不同版本重新注册({from} -> {to})\",\n\t\"{label} must be JSON-safe: {node} is not a finite number\": \"{label} 必须是 JSON 安全值:{node} 不是有限数字\",\n\t\"{label} must be JSON-safe: circular reference\": \"{label} 必须是 JSON 安全值:存在循环引用\",\n\t\"{label} must be JSON-safe: {key} is undefined\": \"{label} 必须是 JSON 安全值:{key} 为 undefined\",\n\t\"{label} must be JSON-safe: unsupported value of type {type}\": \"{label} 必须是 JSON 安全值:不支持的 {type} 类型值\",\n\t\"Transition conflict: expected fromStatus {from}, got {to}\": \"状态迁移冲突:期望 fromStatus {from},实际为 {to}\",\n\t\"Todo {todoId} must be {allowed} (current: {status})\": \"Todo {todoId} 必须是 {allowed}(当前:{status})\",\n\t\"Todo content must be a non-empty string\": \"Todo 内容必须是非空字符串\",\n\t\"Todo cancel reason must be a non-empty string when provided\": \"Todo 取消原因提供时必须是非空字符串\",\n\n\t// --- host/ ---\n\t\"Checkpoint operationId must be a non-empty string\": \"Checkpoint operationId 必须是非空字符串\",\n\t\"Compaction pluginId must be a non-empty string\": \"Compaction pluginId 必须是非空字符串\",\n\t\"Host output projection requires a traceId on every event\": \"Host 输出投影要求每个事件都携带 traceId\",\n\t\"Unsupported host event reached the projector\": \"不支持的主机事件到达投影器\",\n\t\"Summary retry attemptLimit must be at least 1\": \"Summary 重试 attemptLimit 至少为 1\",\n\t\"Summary retry wait bounds are invalid\": \"Summary 重试等待边界无效\",\n\n\t// --- durable/ ---\n\t\"durable store persist lock timeout after {timeoutMs} ms: {lockPath} is held by another writer\":\n\t\t\"durable store 持久化锁超时({timeoutMs} ms):{lockPath} 被其他写入者持有\",\n\t\"Durable store lockTimeoutMs must be a positive number\": \"Durable store lockTimeoutMs 必须是正数\",\n\t\"Durable store staleLockMs must be a positive number\": \"Durable store staleLockMs 必须是正数\",\n\t\"Durable store leaseTtlMs must be a positive number\": \"Durable store leaseTtlMs 必须是正数\",\n\t\"Writer {writerId} does not hold the store lease (held by {holder})\":\n\t\t\"写入者 {writerId} 未持有存储租约(由 {holder} 持有)\",\n\t\"Writer {writerId} lost the store lease (expired or recovered by another writer)\":\n\t\t\"写入者 {writerId} 丢失了存储租约(已过期或被其他写入者恢复)\",\n\t\"{label} must be an object\": \"{label} 必须是对象\",\n\t\"{label} {idField} must be a non-empty string\": \"{label} {idField} 必须是非空字符串\",\n\t\"{label} persistedAt must be a finite number\": \"{label} persistedAt 必须是有限数字\",\n\t\"{label} sessionId must be a non-empty string\": \"{label} sessionId 必须是非空字符串\",\n\t\"Writer {writerId} does not hold the writer lease\": \"写入者 {writerId} 未持有写入者租约\",\n\t\"Writer {writerId} cannot release a crashed lease; recover it instead\":\n\t\t\"写入者 {writerId} 无法释放崩溃的租约;请改为恢复它\",\n\t\"Writer {writerId} does not hold the writer lease (held by {holder})\":\n\t\t\"写入者 {writerId} 未持有写入者租约(由 {holder} 持有)\",\n\t\"Unsupported durable snapshot version: {version}\": \"不支持的 durable 快照版本:{version}\",\n\t\"Durable snapshot {field} must be an array\": \"Durable 快照 {field} 必须是数组\",\n\t\"Durable snapshot writer holder must be a string or null\": \"Durable 快照 writer holder 必须是字符串或 null\",\n\t\"Durable snapshot writer crashPending must be a string or null\":\n\t\t\"Durable 快照 writer crashPending 必须是字符串或 null\",\n\n\t// --- utils/ ---\n\t\"Expected a `string`, got `{type}`\": \"期望 `string`,实际为 `{type}`\",\n\t\"Clipboard unavailable: text exceeds the OSC 52 size limit\": \"剪贴板不可用:文本超出 OSC 52 大小上限\",\n\t\"Clipboard unavailable: install the Termux:API app and `termux-api` package\":\n\t\t\"剪贴板不可用:请安装 Termux:API 应用和 `termux-api` 包\",\n\t\"Clipboard unavailable: install `wl-clipboard` (`wl-copy`) or check Wayland access\":\n\t\t\"剪贴板不可用:请安装 `wl-clipboard`(`wl-copy`)或检查 Wayland 访问权限\",\n\t\"Clipboard unavailable: install `xclip` or `xsel`, or check X11 access\":\n\t\t\"剪贴板不可用:请安装 `xclip` 或 `xsel`,或检查 X11 访问权限\",\n\t\"Clipboard unavailable: ensure the built-in `clip` command is on PATH\":\n\t\t\"剪贴板不可用:请确保内置 `clip` 命令位于 PATH 中\",\n\t\"Clipboard unavailable\": \"剪贴板不可用\",\n\t\"image resize worker requires parentPort\": \"图片缩放 worker 需要 parentPort\",\n\t\"Invalid image resize worker request\": \"无效的图片缩放 worker 请求\",\n\t\"Custom shell path not found: {path}\": \"未找到自定义 shell 路径:{path}\",\n\t\"No bash shell found. Options:\": \"未找到 bash shell。选项:\",\n\t\"1. Install Git for Windows: https://git-scm.com/download/win\":\n\t\t\"1. 安装 Git for Windows:https://git-scm.com/download/win\",\n\t\"2. Add your bash to PATH (Cygwin, MSYS2, etc.)\": \"2. 将你的 bash 加入 PATH(Cygwin、MSYS2 等)\",\n\t\"3. Set shellPath in settings.json\": \"3. 在 settings.json 中设置 shellPath\",\n\t\"Searched Git Bash in:\": \"搜索 Git Bash 的位置:\",\n\t\"The powershell tool is only available on Windows.\": \"powershell 工具仅在 Windows 上可用。\",\n\t\"No PowerShell executable found. Install PowerShell or add powershell.exe/pwsh.exe to PATH.\":\n\t\t\"未找到 PowerShell 可执行文件。请安装 PowerShell 或将 powershell.exe/pwsh.exe 加入 PATH。\",\n\t\"Failed to resolve latest {repo} release: HTTP {status} without redirect\":\n\t\t\"解析 {repo} 最新 release 失败:HTTP {status} 且无重定向\",\n\t\"Failed to resolve latest {repo} release: unexpected redirect to {location}\":\n\t\t\"解析 {repo} 最新 release 失败:意外重定向到 {location}\",\n\t\"Download failed with HTTP {status}: {url}\": \"下载失败,HTTP {status}:{url}\",\n\t\"No response body\": \"响应没有 body\",\n\t\"No committed sha256 for {name} asset {assetName}; refresh the pin and its digests\":\n\t\t\"{name} 的 asset {assetName} 没有已提交的 sha256;请刷新 pin 及其摘要\",\n\t\"Failed to fetch release checksum: HTTP {status}: {url}\": \"获取 release 校验和失败:HTTP {status}:{url}\",\n\t\"Release checksum has an unexpected format: {url}\": \"release 校验和格式异常:{url}\",\n\t\"Failed to extract {assetName}: {failure}\": \"解压 {assetName} 失败:{failure}\",\n\t\"Failed to extract {assetName}: {failures}\": \"解压 {assetName} 失败:{failures}\",\n\t\"Unknown tool: {tool}\": \"未知的工具:{tool}\",\n\t\"Unsupported platform: {platform}/{architecture}\": \"不支持的平台:{platform}/{architecture}\",\n\t\"Unsupported archive format: {assetName}\": \"不支持的归档格式:{assetName}\",\n\t\"Binary not found in archive: expected {binaryFileName} under {extractDir}\":\n\t\t\"归档中未找到二进制文件:期望 {binaryFileName} 位于 {extractDir} 下\",\n\t\"Version service returned an unexpected package name: {actual}. Expected {expected}.\":\n\t\t\"版本服务返回了意外的包名:{actual}。期望 {expected}。\",\n\n\t// --- package-manager-cli.ts ---\n\t\"Managed install marker is missing or invalid: {path}\": \"托管安装标记缺失或无效:{path}\",\n\t\"Could not download managed installer {label} from {url}: HTTP {status}\":\n\t\t\"无法从 {url} 下载托管安装器 {label}:HTTP {status}\",\n\t\"npm {args} exited with code {code}\": \"npm {args} 退出码 {code}\",\n\t\"Could not verify managed {app} {version}: {reason}\": \"无法验证托管的 {app} {version}:{reason}\",\n\t\"Managed {app} smoke test returned version {installed}; expected {expected}.\":\n\t\t\"托管 {app} 冒烟测试返回版本 {installed};期望 {expected}。\",\n\t\"Invalid managed release version: {version}\": \"无效的托管 release 版本:{version}\",\n\t\"Another managed {app} update is already running.\": \"另一个托管的 {app} 更新已在运行。\",\n\t\"Managed self-update requires AGENT_FORGE_INSTALLER_API_BASE to be configured.\":\n\t\t\"托管自更新要求配置 AGENT_FORGE_INSTALLER_API_BASE。\",\n\t\"Model catalog refresh timed out.\": \"模型目录刷新超时。\",\n\t\"Could not refresh model catalogs: {details}\": \"无法刷新模型目录:{details}\",\n\t\"Could not determine latest {app} version.\": \"无法确定最新的 {app} 版本。\",\n\t\"Could not determine latest {app} version: {reason}\": \"无法确定最新的 {app} 版本:{reason}\",\n\n\t// --- cli/experimental/command.ts ---\n\t\"Option {option} is already registered for {name}\": \"选项 {option} 已注册到 {name}\",\n\t\"Command {name} is already registered\": \"命令 {name} 已注册\",\n\t\"Command {name} does not define an action\": \"命令 {name} 未定义 action\",\n\t\"Command {name} does not define a builder\": \"命令 {name} 未定义 builder\",\n\t\"Command {name} failed without an error\": \"命令 {name} 失败但没有错误\",\n};\n"]}
|