@abot-ai/runtime 1.0.0 → 1.2.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/README.md +23 -6
- package/dist/scripts/add-runtime-model.js +4 -0
- package/dist/scripts/configure-long-term-memory.d.ts +6 -0
- package/dist/scripts/configure-long-term-memory.js +139 -0
- package/dist/scripts/init-runtime.js +11 -1
- package/dist/scripts/runtime-setup-files.d.ts +1 -0
- package/dist/scripts/runtime-setup-files.js +4 -0
- package/dist/src/capabilities/normal-invocation/contracts.d.ts +1 -0
- package/dist/src/capabilities/normal-invocation/validator.d.ts +5 -0
- package/dist/src/capabilities/normal-invocation/validator.js +35 -2
- package/dist/src/capabilities/tool-definition-validator/definition-fields.d.ts +7 -0
- package/dist/src/capabilities/tool-definition-validator/definition-fields.js +156 -0
- package/dist/src/capabilities/tool-definition-validator/definition-parser.d.ts +2 -0
- package/dist/src/capabilities/tool-definition-validator/definition-parser.js +76 -0
- package/dist/src/capabilities/tool-definition-validator/definition-shape.d.ts +7 -0
- package/dist/src/capabilities/tool-definition-validator/definition-shape.js +34 -0
- package/dist/src/capabilities/tool-definition-validator/event-presentation.d.ts +2 -0
- package/dist/src/capabilities/tool-definition-validator/event-presentation.js +97 -0
- package/dist/src/capabilities/tool-definition-validator/module-registry.d.ts +3 -0
- package/dist/src/capabilities/tool-definition-validator/module-registry.js +99 -0
- package/dist/src/capabilities/tool-definition-validator/payload-channel-spec.d.ts +2 -0
- package/dist/src/capabilities/tool-definition-validator/payload-channel-spec.js +190 -0
- package/dist/src/capabilities/tool-definition-validator/payload-channel-stage.d.ts +11 -0
- package/dist/src/capabilities/tool-definition-validator/payload-channel-stage.js +155 -0
- package/dist/src/capabilities/tool-definition-validator/payload-stage-conditions.d.ts +24 -0
- package/dist/src/capabilities/tool-definition-validator/payload-stage-conditions.js +193 -0
- package/dist/src/capabilities/tool-definition-validator.d.ts +2 -4
- package/dist/src/capabilities/tool-definition-validator.js +2 -776
- package/dist/src/capabilities/tool-types.d.ts +1 -1
- package/dist/src/cli/abot.js +11 -2
- package/dist/src/model-gateway/client/embeddings.d.ts +3 -0
- package/dist/src/model-gateway/client/embeddings.js +48 -0
- package/dist/src/model-gateway/client.d.ts +3 -1
- package/dist/src/model-gateway/client.js +5 -0
- package/dist/src/model-gateway/embeddings/constants.d.ts +1 -0
- package/dist/src/model-gateway/embeddings/constants.js +1 -0
- package/dist/src/model-gateway/embeddings/discovery.d.ts +10 -0
- package/dist/src/model-gateway/embeddings/discovery.js +39 -0
- package/dist/src/model-gateway/embeddings/execution.d.ts +16 -0
- package/dist/src/model-gateway/embeddings/execution.js +64 -0
- package/dist/src/model-gateway/embeddings/fingerprint.d.ts +3 -0
- package/dist/src/model-gateway/embeddings/fingerprint.js +36 -0
- package/dist/src/model-gateway/embeddings/profile.d.ts +11 -0
- package/dist/src/model-gateway/embeddings/profile.js +37 -0
- package/dist/src/model-gateway/embeddings/server-handler.d.ts +3 -0
- package/dist/src/model-gateway/embeddings/server-handler.js +89 -0
- package/dist/src/model-gateway/embeddings/validation.d.ts +7 -0
- package/dist/src/model-gateway/embeddings/validation.js +69 -0
- package/dist/src/model-gateway/index.d.ts +5 -3
- package/dist/src/model-gateway/index.js +3 -1
- package/dist/src/model-gateway/providers/contracts.d.ts +27 -1
- package/dist/src/model-gateway/providers/ollama/adapter.js +4 -0
- package/dist/src/model-gateway/providers/ollama/base-url.d.ts +1 -0
- package/dist/src/model-gateway/providers/ollama/base-url.js +4 -0
- package/dist/src/model-gateway/providers/ollama/embedding-models.d.ts +2 -0
- package/dist/src/model-gateway/providers/ollama/embedding-models.js +31 -0
- package/dist/src/model-gateway/providers/ollama/embeddings.d.ts +2 -0
- package/dist/src/model-gateway/providers/ollama/embeddings.js +43 -0
- package/dist/src/model-gateway/providers/ollama/generation-options.d.ts +1 -3
- package/dist/src/model-gateway/providers/ollama/generation-options.js +1 -5
- package/dist/src/model-gateway/providers/ollama/payload.js +0 -8
- package/dist/src/model-gateway/providers/ollama/request-diagnostics.js +2 -1
- package/dist/src/model-gateway/providers/openai/adapter.js +2 -0
- package/dist/src/model-gateway/providers/openai/embeddings.d.ts +2 -0
- package/dist/src/model-gateway/providers/openai/embeddings.js +87 -0
- package/dist/src/model-gateway/providers/openai/payload.js +5 -8
- package/dist/src/model-gateway/server/contracts.d.ts +5 -3
- package/dist/src/model-gateway/server/create-server.js +9 -0
- package/dist/src/model-gateway/server/errors.js +34 -0
- package/dist/src/model-gateway/server/index.d.ts +2 -0
- package/dist/src/model-gateway/server/index.js +2 -0
- package/dist/src/model-gateway/server/provider-fetch.d.ts +5 -3
- package/dist/src/model-gateway/server/provider-fetch.js +3 -1
- package/dist/src/model-gateway/server/request-body.d.ts +1 -1
- package/dist/src/model-gateway/server/request-body.js +1 -0
- package/dist/src/model-gateway/types.d.ts +39 -0
- package/dist/src/plugin-contract/manifest.d.ts +1 -0
- package/dist/src/plugin-sdk/index.d.ts +2 -0
- package/dist/src/plugin-sdk/index.js +2 -0
- package/dist/src/plugin-sdk/tool-availability-brief.d.ts +9 -0
- package/dist/src/plugin-sdk/tool-availability-brief.js +48 -0
- package/dist/src/plugin-sdk/tool-availability-overview.d.ts +9 -0
- package/dist/src/plugin-sdk/tool-availability-overview.js +62 -0
- package/dist/src/runtime/adapters/index.d.ts +4 -0
- package/dist/src/runtime/adapters/index.js +4 -0
- package/dist/src/runtime/adapters/long-term-memory/file-lock/acquisition.d.ts +2 -0
- package/dist/src/runtime/adapters/long-term-memory/file-lock/acquisition.js +77 -0
- package/dist/src/runtime/adapters/long-term-memory/file-lock/cleanup.d.ts +4 -0
- package/dist/src/runtime/adapters/long-term-memory/file-lock/cleanup.js +52 -0
- package/dist/src/runtime/adapters/long-term-memory/file-lock/contracts.d.ts +31 -0
- package/dist/src/runtime/adapters/long-term-memory/file-lock/contracts.js +17 -0
- package/dist/src/runtime/adapters/long-term-memory/file-lock/install.d.ts +1 -0
- package/dist/src/runtime/adapters/long-term-memory/file-lock/install.js +36 -0
- package/dist/src/runtime/adapters/long-term-memory/file-lock/owner-record.d.ts +2 -0
- package/dist/src/runtime/adapters/long-term-memory/file-lock/owner-record.js +114 -0
- package/dist/src/runtime/adapters/long-term-memory/file-lock/snapshot.d.ts +2 -0
- package/dist/src/runtime/adapters/long-term-memory/file-lock/snapshot.js +103 -0
- package/dist/src/runtime/adapters/long-term-memory/file-lock.d.ts +2 -0
- package/dist/src/runtime/adapters/long-term-memory/file-lock.js +10 -0
- package/dist/src/runtime/adapters/long-term-memory/file-repository.d.ts +2 -0
- package/dist/src/runtime/adapters/long-term-memory/file-repository.js +57 -0
- package/dist/src/runtime/adapters/long-term-memory/in-memory-repository.d.ts +2 -0
- package/dist/src/runtime/adapters/long-term-memory/in-memory-repository.js +21 -0
- package/dist/src/runtime/adapters/long-term-memory/onboarding-config-repository.d.ts +5 -0
- package/dist/src/runtime/adapters/long-term-memory/onboarding-config-repository.js +60 -0
- package/dist/src/runtime/adapters/long-term-memory/onboarding-service.d.ts +8 -0
- package/dist/src/runtime/adapters/long-term-memory/onboarding-service.js +34 -0
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/run.d.ts +7 -1
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/run.js +54 -25
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/executor.js +18 -4
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/payload/lifecycle.d.ts +6 -1
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/payload/lifecycle.js +25 -12
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/shared/action-fingerprint.d.ts +22 -0
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/shared/action-fingerprint.js +65 -0
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/shared/contracts.d.ts +44 -0
- package/dist/src/runtime/adapters/registered-tool-normal-invocations.d.ts +1 -1
- package/dist/src/runtime/adapters/registered-tool-payload-plan.d.ts +0 -9
- package/dist/src/runtime/adapters/registered-tool-payload-plan.js +0 -67
- package/dist/src/runtime/adapters/registered-tool-payload-related-artifacts.d.ts +13 -0
- package/dist/src/runtime/adapters/registered-tool-payload-related-artifacts.js +84 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/catalog.js +18 -4
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/execution.js +221 -87
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/failure-outcome-fingerprint.d.ts +7 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/failure-outcome-fingerprint.js +84 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-lifecycle.d.ts +6 -4
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-lifecycle.js +18 -2
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-observability.d.ts +35 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-observability.js +32 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-rejection.d.ts +3 -3
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-rejection.js +13 -8
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-stages.d.ts +6 -4
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-stages.js +13 -3
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/result-observer.js +12 -4
- package/dist/src/runtime/capabilities/request-bound-tool-registry.js +1 -24
- package/dist/src/runtime/capabilities/tool-availability.d.ts +6 -0
- package/dist/src/runtime/capabilities/tool-availability.js +28 -0
- package/dist/src/runtime/composition.d.ts +3 -0
- package/dist/src/runtime/composition.js +5 -2
- package/dist/src/runtime/config/builders.js +34 -1
- package/dist/src/runtime/config/effective-model-config-validation.js +9 -0
- package/dist/src/runtime/config/embedding-profiles.d.ts +5 -0
- package/dist/src/runtime/config/embedding-profiles.js +66 -0
- package/dist/src/runtime/config/fields.js +22 -0
- package/dist/src/runtime/config/long-term-memory.d.ts +9 -0
- package/dist/src/runtime/config/long-term-memory.js +71 -0
- package/dist/src/runtime/config/runner/config-normalization.d.ts +16 -0
- package/dist/src/runtime/config/runner/config-normalization.js +109 -0
- package/dist/src/runtime/config/runner/loader.d.ts +1 -1
- package/dist/src/runtime/config/runner/loader.js +2 -69
- package/dist/src/runtime/config/runner/model-policy.js +3 -0
- package/dist/src/runtime/config/runner/schema-version.d.ts +14 -0
- package/dist/src/runtime/config/runner/schema-version.js +35 -0
- package/dist/src/runtime/config/runner/versioned-config.d.ts +2 -0
- package/dist/src/runtime/config/runner/versioned-config.js +51 -0
- package/dist/src/runtime/config/schema.js +36 -0
- package/dist/src/runtime/config/types.d.ts +1 -0
- package/dist/src/runtime/config/validation/environment-config-validation.d.ts +1 -0
- package/dist/src/runtime/config/validation/environment-config-validation.js +41 -0
- package/dist/src/runtime/config/validation/model-invocation-config-validation.d.ts +2 -0
- package/dist/src/runtime/config/validation/model-invocation-config-validation.js +64 -0
- package/dist/src/runtime/config/validation/model-invocation-override-validation.d.ts +2 -0
- package/dist/src/runtime/config/validation/model-invocation-override-validation.js +72 -0
- package/dist/src/runtime/config/validation/model-profile-validation.d.ts +4 -0
- package/dist/src/runtime/config/validation/model-profile-validation.js +87 -0
- package/dist/src/runtime/config/validation/model-registry-validation.d.ts +2 -0
- package/dist/src/runtime/config/validation/model-registry-validation.js +118 -0
- package/dist/src/runtime/config/validation/path-config-validation.d.ts +1 -0
- package/dist/src/runtime/config/validation/path-config-validation.js +7 -0
- package/dist/src/runtime/config/validation/runtime-config-field-validation.d.ts +12 -0
- package/dist/src/runtime/config/validation/runtime-config-field-validation.js +158 -0
- package/dist/src/runtime/config/validation/runtime-config-validation-contract.d.ts +9 -0
- package/dist/src/runtime/config/validation/runtime-config-validation-contract.js +13 -0
- package/dist/src/runtime/config/validation/runtime-root-section-validation.d.ts +6 -0
- package/dist/src/runtime/config/validation/runtime-root-section-validation.js +82 -0
- package/dist/src/runtime/config/validation/web-ui-config-validation.d.ts +3 -0
- package/dist/src/runtime/config/validation/web-ui-config-validation.js +26 -0
- package/dist/src/runtime/config/validation.d.ts +4 -15
- package/dist/src/runtime/config/validation.js +27 -499
- package/dist/src/runtime/config.js +3 -0
- package/dist/src/runtime/context/accepted-capability-action.d.ts +11 -0
- package/dist/src/runtime/context/accepted-capability-action.js +29 -0
- package/dist/src/runtime/context/capability-brief.d.ts +25 -0
- package/dist/src/runtime/context/capability-brief.js +106 -0
- package/dist/src/runtime/context/model-step-compaction.js +6 -0
- package/dist/src/runtime/context/operation-supervision-evidence.d.ts +37 -0
- package/dist/src/runtime/context/operation-supervision-evidence.js +90 -0
- package/dist/src/runtime/context/request-tool-results-message-binding.d.ts +6 -0
- package/dist/src/runtime/context/request-tool-results-message-binding.js +30 -0
- package/dist/src/runtime/context/request-tool-results-scope.d.ts +3 -0
- package/dist/src/runtime/context/request-tool-results-scope.js +8 -0
- package/dist/src/runtime/context/request-tool-results.d.ts +11 -4
- package/dist/src/runtime/context/request-tool-results.js +60 -40
- package/dist/src/runtime/default-adapters.d.ts +3 -0
- package/dist/src/runtime/default-adapters.js +64 -3
- package/dist/src/runtime/index.d.ts +1 -0
- package/dist/src/runtime/index.js +1 -0
- package/dist/src/runtime/lifecycle/request-finalizer.d.ts +3 -0
- package/dist/src/runtime/lifecycle/request-finalizer.js +8 -0
- package/dist/src/runtime/long-term-memory/background-save-queue.d.ts +17 -0
- package/dist/src/runtime/long-term-memory/background-save-queue.js +66 -0
- package/dist/src/runtime/long-term-memory/candidate-persistence.d.ts +16 -0
- package/dist/src/runtime/long-term-memory/candidate-persistence.js +109 -0
- package/dist/src/runtime/long-term-memory/candidate-preparation.d.ts +8 -0
- package/dist/src/runtime/long-term-memory/candidate-preparation.js +36 -0
- package/dist/src/runtime/long-term-memory/candidate-processing.d.ts +9 -0
- package/dist/src/runtime/long-term-memory/candidate-processing.js +79 -0
- package/dist/src/runtime/long-term-memory/contracts.d.ts +108 -0
- package/dist/src/runtime/long-term-memory/contracts.js +1 -0
- package/dist/src/runtime/long-term-memory/diagnostics.d.ts +9 -0
- package/dist/src/runtime/long-term-memory/diagnostics.js +42 -0
- package/dist/src/runtime/long-term-memory/embedding-batches.d.ts +13 -0
- package/dist/src/runtime/long-term-memory/embedding-batches.js +87 -0
- package/dist/src/runtime/long-term-memory/events.d.ts +13 -0
- package/dist/src/runtime/long-term-memory/events.js +15 -0
- package/dist/src/runtime/long-term-memory/finalization.d.ts +8 -0
- package/dist/src/runtime/long-term-memory/finalization.js +24 -0
- package/dist/src/runtime/long-term-memory/index.d.ts +6 -0
- package/dist/src/runtime/long-term-memory/index.js +6 -0
- package/dist/src/runtime/long-term-memory/management/contracts.d.ts +54 -0
- package/dist/src/runtime/long-term-memory/management/contracts.js +1 -0
- package/dist/src/runtime/long-term-memory/management/errors.d.ts +10 -0
- package/dist/src/runtime/long-term-memory/management/errors.js +13 -0
- package/dist/src/runtime/long-term-memory/management/mutations.d.ts +17 -0
- package/dist/src/runtime/long-term-memory/management/mutations.js +178 -0
- package/dist/src/runtime/long-term-memory/management/queries.d.ts +8 -0
- package/dist/src/runtime/long-term-memory/management/queries.js +46 -0
- package/dist/src/runtime/long-term-memory/management/search.d.ts +7 -0
- package/dist/src/runtime/long-term-memory/management/search.js +18 -0
- package/dist/src/runtime/long-term-memory/management/service.d.ts +13 -0
- package/dist/src/runtime/long-term-memory/management/service.js +61 -0
- package/dist/src/runtime/long-term-memory/management/validation.d.ts +24 -0
- package/dist/src/runtime/long-term-memory/management/validation.js +77 -0
- package/dist/src/runtime/long-term-memory/onboarding/configuration.d.ts +14 -0
- package/dist/src/runtime/long-term-memory/onboarding/configuration.js +92 -0
- package/dist/src/runtime/long-term-memory/onboarding/contracts.d.ts +52 -0
- package/dist/src/runtime/long-term-memory/onboarding/contracts.js +1 -0
- package/dist/src/runtime/long-term-memory/onboarding/service.d.ts +21 -0
- package/dist/src/runtime/long-term-memory/onboarding/service.js +88 -0
- package/dist/src/runtime/long-term-memory/policies/normalization.d.ts +10 -0
- package/dist/src/runtime/long-term-memory/policies/normalization.js +45 -0
- package/dist/src/runtime/long-term-memory/policies/reconciliation.d.ts +20 -0
- package/dist/src/runtime/long-term-memory/policies/reconciliation.js +21 -0
- package/dist/src/runtime/long-term-memory/policies/scoring.d.ts +13 -0
- package/dist/src/runtime/long-term-memory/policies/scoring.js +55 -0
- package/dist/src/runtime/long-term-memory/policies/sensitive-data.d.ts +5 -0
- package/dist/src/runtime/long-term-memory/policies/sensitive-data.js +12 -0
- package/dist/src/runtime/long-term-memory/projection.d.ts +4 -0
- package/dist/src/runtime/long-term-memory/projection.js +39 -0
- package/dist/src/runtime/long-term-memory/ranked-search.d.ts +11 -0
- package/dist/src/runtime/long-term-memory/ranked-search.js +111 -0
- package/dist/src/runtime/long-term-memory/repository-state.d.ts +4 -0
- package/dist/src/runtime/long-term-memory/repository-state.js +131 -0
- package/dist/src/runtime/long-term-memory/response-context.d.ts +5 -0
- package/dist/src/runtime/long-term-memory/response-context.js +21 -0
- package/dist/src/runtime/long-term-memory/retrieval.d.ts +8 -0
- package/dist/src/runtime/long-term-memory/retrieval.js +73 -0
- package/dist/src/runtime/long-term-memory/service.d.ts +10 -0
- package/dist/src/runtime/long-term-memory/service.js +83 -0
- package/dist/src/runtime/orchestration/capability-adapters/index.d.ts +2 -0
- package/dist/src/runtime/orchestration/capability-adapters/index.js +2 -0
- package/dist/src/runtime/orchestration/final-response/authoring-contract.d.ts +10 -0
- package/dist/src/runtime/orchestration/final-response/authoring-contract.js +94 -0
- package/dist/src/runtime/orchestration/final-response/finalization.d.ts +1 -0
- package/dist/src/runtime/orchestration/final-response/finalization.js +1 -0
- package/dist/src/runtime/orchestration/final-response/format.d.ts +2 -0
- package/dist/src/runtime/orchestration/final-response/format.js +49 -0
- package/dist/src/runtime/orchestration/final-response/invoke.d.ts +16 -0
- package/dist/src/runtime/orchestration/final-response/invoke.js +24 -0
- package/dist/src/runtime/orchestration/role-calls/activation-budget.d.ts +14 -0
- package/dist/src/runtime/orchestration/role-calls/activation-budget.js +52 -0
- package/dist/src/runtime/orchestration/role-calls/candidate-validation.js +162 -1
- package/dist/src/runtime/orchestration/role-calls/capability-selection-reconsideration.js +1 -8
- package/dist/src/runtime/orchestration/role-calls/capability-selection-supervision-issuance.d.ts +17 -0
- package/dist/src/runtime/orchestration/role-calls/capability-selection-supervision-issuance.js +155 -0
- package/dist/src/runtime/orchestration/role-calls/capability-selection-supervision.d.ts +78 -0
- package/dist/src/runtime/orchestration/role-calls/capability-selection-supervision.js +339 -0
- package/dist/src/runtime/orchestration/role-calls/child-return.d.ts +4 -0
- package/dist/src/runtime/orchestration/role-calls/child-return.js +25 -5
- package/dist/src/runtime/orchestration/role-calls/command-decoder.js +43 -13
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/active-capability-caller.d.ts +6 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/active-capability-caller.js +15 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/call-frame-state.d.ts +3 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/call-frame-state.js +6 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/call-scope-transitions.d.ts +3 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/call-scope-transitions.js +86 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/capability-batch-transitions.d.ts +3 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/capability-batch-transitions.js +172 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/capability-execution-state.d.ts +9 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/capability-execution-state.js +28 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/capability-execution-transitions.d.ts +3 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/capability-execution-transitions.js +117 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/capability-invocation.d.ts +4 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/capability-invocation.js +16 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/capability-selection-transition.d.ts +2 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/capability-selection-transition.js +114 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/capability-settlement.d.ts +6 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/capability-settlement.js +54 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/child-transitions.d.ts +3 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/child-transitions.js +221 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/operation-supervision-intervention.d.ts +13 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/operation-supervision-intervention.js +25 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/root-transitions.d.ts +3 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/root-transitions.js +70 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch.d.ts +2 -2
- package/dist/src/runtime/orchestration/role-calls/command-dispatch.js +8 -582
- package/dist/src/runtime/orchestration/role-calls/contracts.d.ts +48 -5
- package/dist/src/runtime/orchestration/role-calls/contracts.js +4 -4
- package/dist/src/runtime/orchestration/role-calls/dependency-results.d.ts +1 -1
- package/dist/src/runtime/orchestration/role-calls/dependency-results.js +1 -0
- package/dist/src/runtime/orchestration/role-calls/diagnostics.d.ts +4 -0
- package/dist/src/runtime/orchestration/role-calls/diagnostics.js +152 -1
- package/dist/src/runtime/orchestration/role-calls/index.d.ts +11 -1
- package/dist/src/runtime/orchestration/role-calls/index.js +11 -1
- package/dist/src/runtime/orchestration/role-calls/ledger.d.ts +3 -1
- package/dist/src/runtime/orchestration/role-calls/ledger.js +139 -8
- package/dist/src/runtime/orchestration/role-calls/operation-supervision-issuance.d.ts +11 -0
- package/dist/src/runtime/orchestration/role-calls/operation-supervision-issuance.js +66 -0
- package/dist/src/runtime/orchestration/role-calls/operation-supervision-projection.d.ts +16 -0
- package/dist/src/runtime/orchestration/role-calls/operation-supervision-projection.js +52 -0
- package/dist/src/runtime/orchestration/role-calls/operation-supervision-state-validation.d.ts +3 -0
- package/dist/src/runtime/orchestration/role-calls/operation-supervision-state-validation.js +151 -0
- package/dist/src/runtime/orchestration/role-calls/operation-supervision.d.ts +112 -0
- package/dist/src/runtime/orchestration/role-calls/operation-supervision.js +197 -0
- package/dist/src/runtime/orchestration/role-calls/reconsideration-cause.d.ts +26 -0
- package/dist/src/runtime/orchestration/role-calls/reconsideration-cause.js +127 -0
- package/dist/src/runtime/orchestration/role-calls/reducer-primitives.d.ts +1 -2
- package/dist/src/runtime/orchestration/role-calls/reducer-primitives.js +2 -12
- package/dist/src/runtime/orchestration/role-calls/reducer.d.ts +1 -1
- package/dist/src/runtime/orchestration/role-calls/reducer.js +20 -3
- package/dist/src/runtime/orchestration/role-calls/result-receipt.d.ts +49 -0
- package/dist/src/runtime/orchestration/role-calls/result-receipt.js +188 -0
- package/dist/src/runtime/orchestration/role-calls/return-result-receipt.d.ts +19 -0
- package/dist/src/runtime/orchestration/role-calls/return-result-receipt.js +52 -0
- package/dist/src/runtime/orchestration/role-calls/transactions.js +63 -5
- package/dist/src/runtime/orchestration/role-calls/work-result-lineage.d.ts +34 -0
- package/dist/src/runtime/orchestration/role-calls/work-result-lineage.js +185 -0
- package/dist/src/runtime/orchestration/role-calls/work-result-receipt.d.ts +36 -0
- package/dist/src/runtime/orchestration/role-calls/work-result-receipt.js +187 -0
- package/dist/src/runtime/orchestration/role-executors/activation/capability-continuation.d.ts +15 -0
- package/dist/src/runtime/orchestration/role-executors/activation/capability-continuation.js +73 -0
- package/dist/src/runtime/orchestration/role-executors/activation/loop.d.ts +0 -1
- package/dist/src/runtime/orchestration/role-executors/activation/loop.js +16 -54
- package/dist/src/runtime/orchestration/role-executors/activation/result-normalization.js +20 -3
- package/dist/src/runtime/orchestration/role-executors/activation/state-validation.d.ts +13 -1
- package/dist/src/runtime/orchestration/role-executors/activation/state-validation.js +137 -1
- package/dist/src/runtime/orchestration/role-executors/child-invocation/transaction.js +1 -0
- package/dist/src/runtime/orchestration/role-executors/contracts.d.ts +8 -3
- package/dist/src/runtime/orchestration/role-executors/diagnostics.d.ts +2 -0
- package/dist/src/runtime/orchestration/role-executors/diagnostics.js +1 -6
- package/dist/src/runtime/orchestration/worker-capabilities/assignment-provenance.d.ts +36 -0
- package/dist/src/runtime/orchestration/worker-capabilities/assignment-provenance.js +171 -0
- package/dist/src/runtime/orchestration/worker-capabilities/batch-selection.d.ts +10 -0
- package/dist/src/runtime/orchestration/worker-capabilities/batch-selection.js +8 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/adapter-catalog.d.ts +14 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/adapter-catalog.js +76 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/adapter-normalization.d.ts +10 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/adapter-normalization.js +160 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/binding-rejection.d.ts +2 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/binding-rejection.js +8 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/bound-capability-session.d.ts +24 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/bound-capability-session.js +100 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/call-authority.d.ts +29 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/call-authority.js +193 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/create-binding.d.ts +11 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/create-binding.js +109 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/dependency-results.d.ts +2 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/dependency-results.js +34 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/invocation-preparation.d.ts +21 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/invocation-preparation.js +167 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding.d.ts +1 -13
- package/dist/src/runtime/orchestration/worker-capabilities/binding.js +1 -625
- package/dist/src/runtime/orchestration/worker-capabilities/contracts.d.ts +89 -15
- package/dist/src/runtime/orchestration/worker-capabilities/contracts.js +3 -1
- package/dist/src/runtime/orchestration/worker-capabilities/controls.d.ts +7 -0
- package/dist/src/runtime/orchestration/worker-capabilities/controls.js +50 -0
- package/dist/src/runtime/orchestration/worker-capabilities/error-fingerprint.d.ts +5 -0
- package/dist/src/runtime/orchestration/worker-capabilities/error-fingerprint.js +119 -0
- package/dist/src/runtime/orchestration/worker-capabilities/errors.d.ts +6 -0
- package/dist/src/runtime/orchestration/worker-capabilities/errors.js +11 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/adapter-exact-result.d.ts +7 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/adapter-exact-result.js +35 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/adapter-execution.d.ts +9 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/adapter-execution.js +28 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/adapter-result-normalization.d.ts +18 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/adapter-result-normalization.js +197 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/adapter-result-references.d.ts +2 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/adapter-result-references.js +44 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/context-projection.d.ts +12 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/context-projection.js +51 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/invocation-preparation.d.ts +26 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/invocation-preparation.js +114 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/ledger-transaction.d.ts +20 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/ledger-transaction.js +142 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution.d.ts +10 -14
- package/dist/src/runtime/orchestration/worker-capabilities/execution.js +107 -357
- package/dist/src/runtime/orchestration/worker-capabilities/index.d.ts +5 -0
- package/dist/src/runtime/orchestration/worker-capabilities/index.js +5 -0
- package/dist/src/runtime/orchestration/worker-capabilities/outcome-fingerprint.d.ts +8 -0
- package/dist/src/runtime/orchestration/worker-capabilities/outcome-fingerprint.js +21 -0
- package/dist/src/runtime/orchestration/worker-capabilities/payload-assignment-validation.d.ts +3 -0
- package/dist/src/runtime/orchestration/worker-capabilities/payload-assignment-validation.js +30 -0
- package/dist/src/runtime/orchestration/worker-capabilities/payload-author.js +23 -12
- package/dist/src/runtime/orchestration/worker-capabilities/payload-contracts.d.ts +20 -7
- package/dist/src/runtime/orchestration/worker-capabilities/payload-contracts.js +2 -0
- package/dist/src/runtime/orchestration/worker-capabilities/payload-instructions.js +4 -4
- package/dist/src/runtime/orchestration/worker-capabilities/payload-source-provenance.d.ts +14 -0
- package/dist/src/runtime/orchestration/worker-capabilities/payload-source-provenance.js +132 -0
- package/dist/src/runtime/orchestration/worker-capabilities/preparation-fingerprint.d.ts +23 -0
- package/dist/src/runtime/orchestration/worker-capabilities/preparation-fingerprint.js +109 -0
- package/dist/src/runtime/plugins/manifest-projection.js +3 -0
- package/dist/src/runtime/plugins/manifest-validator.js +20 -0
- package/dist/src/runtime/ports.d.ts +10 -1
- package/dist/src/runtime/request/capability-brief.d.ts +5 -0
- package/dist/src/runtime/request/capability-brief.js +24 -0
- package/dist/src/runtime/request/contracts.d.ts +7 -0
- package/dist/src/runtime/request/dependencies.d.ts +1 -0
- package/dist/src/runtime/request/dependencies.js +10 -1
- package/dist/src/runtime/request/execution-agent-root-execution.js +5 -4
- package/dist/src/runtime/request/execution-facets.d.ts +2 -1
- package/dist/src/runtime/request/execution-facets.js +6 -0
- package/dist/src/runtime/request/execution-scope-surfaces.js +6 -0
- package/dist/src/runtime/request/execution-scope.d.ts +5 -3
- package/dist/src/runtime/request/handler.js +4 -1
- package/dist/src/runtime/request/result.d.ts +2 -0
- package/dist/src/runtime/request/role-executor-composition.js +1 -1
- package/dist/src/runtime/request/root-contract.d.ts +4 -2
- package/dist/src/runtime/request/root-execution-kernel.js +100 -31
- package/dist/src/runtime/request/supervisor-root-execution.js +4 -2
- package/dist/src/runtime/request/worker-capability-composition.d.ts +2 -1
- package/dist/src/runtime/request/worker-capability-composition.js +6 -1
- package/dist/src/runtime/request/worker-capability-payload-prompts.js +1 -1
- package/dist/src/runtime/request/worker-capability-payload.js +11 -8
- package/dist/src/runtime/steps/execution-agent/capability-invocation-contract.d.ts +24 -0
- package/dist/src/runtime/steps/execution-agent/capability-invocation-contract.js +52 -0
- package/dist/src/runtime/steps/execution-agent/contracts.d.ts +5 -2
- package/dist/src/runtime/steps/execution-agent/format.js +19 -6
- package/dist/src/runtime/steps/execution-agent/input.js +8 -12
- package/dist/src/runtime/steps/execution-agent/parser.js +25 -19
- package/dist/src/runtime/steps/execution-agent/prompt.js +6 -4
- package/dist/src/runtime/steps/execution-agent/reconsideration-context.d.ts +3 -0
- package/dist/src/runtime/steps/execution-agent/reconsideration-context.js +76 -0
- package/dist/src/runtime/steps/execution-agent/refinement-prompt.js +4 -4
- package/dist/src/runtime/steps/execution-agent/refinement-reconsideration.d.ts +3 -0
- package/dist/src/runtime/steps/execution-agent/refinement-reconsideration.js +25 -0
- package/dist/src/runtime/steps/execution-agent/refinement.d.ts +4 -7
- package/dist/src/runtime/steps/execution-agent/refinement.js +24 -35
- package/dist/src/runtime/steps/execution-agent/response-input.d.ts +2 -0
- package/dist/src/runtime/steps/execution-agent/response-input.js +22 -6
- package/dist/src/runtime/steps/execution-agent/response-prompt.d.ts +1 -1
- package/dist/src/runtime/steps/execution-agent/response-prompt.js +8 -3
- package/dist/src/runtime/steps/execution-agent/response-run.d.ts +6 -0
- package/dist/src/runtime/steps/execution-agent/response-run.js +40 -10
- package/dist/src/runtime/steps/execution-agent/run.js +6 -6
- package/dist/src/runtime/steps/execution-agent/state-context.d.ts +4 -1
- package/dist/src/runtime/steps/execution-agent/state-context.js +40 -23
- package/dist/src/runtime/steps/planner-decision/capability-catalog-context.d.ts +14 -0
- package/dist/src/runtime/steps/planner-decision/capability-catalog-context.js +87 -0
- package/dist/src/runtime/steps/planner-decision/contracts.d.ts +3 -5
- package/dist/src/runtime/steps/planner-decision/contracts.js +3 -3
- package/dist/src/runtime/steps/planner-decision/format.d.ts +3 -2
- package/dist/src/runtime/steps/planner-decision/format.js +73 -76
- package/dist/src/runtime/steps/planner-decision/input.d.ts +4 -3
- package/dist/src/runtime/steps/planner-decision/input.js +10 -7
- package/dist/src/runtime/steps/planner-decision/parser.d.ts +3 -2
- package/dist/src/runtime/steps/planner-decision/parser.js +10 -19
- package/dist/src/runtime/steps/planner-decision/plan-parser.js +18 -12
- package/dist/src/runtime/steps/planner-decision/prompt.js +33 -28
- package/dist/src/runtime/steps/planner-decision/resume.d.ts +1 -1
- package/dist/src/runtime/steps/planner-decision/resume.js +38 -1
- package/dist/src/runtime/steps/planner-decision/run.d.ts +3 -2
- package/dist/src/runtime/steps/reviewer-decision/audit-coverage.d.ts +10 -0
- package/dist/src/runtime/steps/reviewer-decision/audit-coverage.js +186 -0
- package/dist/src/runtime/steps/reviewer-decision/contracts.d.ts +3 -8
- package/dist/src/runtime/steps/reviewer-decision/contracts.js +12 -6
- package/dist/src/runtime/steps/reviewer-decision/delegated-context.d.ts +24 -0
- package/dist/src/runtime/steps/reviewer-decision/delegated-context.js +70 -0
- package/dist/src/runtime/steps/reviewer-decision/diagnostics.js +1 -1
- package/dist/src/runtime/steps/reviewer-decision/format.js +37 -24
- package/dist/src/runtime/steps/reviewer-decision/input.js +1 -1
- package/dist/src/runtime/steps/reviewer-decision/model-context.d.ts +4 -3
- package/dist/src/runtime/steps/reviewer-decision/model-context.js +92 -10
- package/dist/src/runtime/steps/reviewer-decision/parser.js +19 -1
- package/dist/src/runtime/steps/reviewer-decision/projection.js +42 -68
- package/dist/src/runtime/steps/reviewer-decision/prompt.js +10 -5
- package/dist/src/runtime/steps/reviewer-decision/run.js +12 -3
- package/dist/src/runtime/steps/reviewer-decision/verification-coverage.d.ts +14 -0
- package/dist/src/runtime/steps/reviewer-decision/verification-coverage.js +52 -0
- package/dist/src/runtime/steps/supervisor-decision/capability-brief.d.ts +14 -0
- package/dist/src/runtime/steps/supervisor-decision/capability-brief.js +38 -0
- package/dist/src/runtime/steps/supervisor-decision/contracts.d.ts +7 -3
- package/dist/src/runtime/steps/supervisor-decision/diagnostics.d.ts +2 -0
- package/dist/src/runtime/steps/supervisor-decision/diagnostics.js +8 -2
- package/dist/src/runtime/steps/supervisor-decision/format.js +32 -20
- package/dist/src/runtime/steps/supervisor-decision/input.d.ts +4 -1
- package/dist/src/runtime/steps/supervisor-decision/input.js +19 -1
- package/dist/src/runtime/steps/supervisor-decision/parser.js +62 -59
- package/dist/src/runtime/steps/supervisor-decision/prompt.js +6 -7
- package/dist/src/runtime/steps/supervisor-decision/resume.js +47 -1
- package/dist/src/runtime/steps/supervisor-decision/run.js +10 -0
- package/dist/src/runtime/steps/supervisor-decision/working-directory.js +2 -1
- package/dist/src/runtime/steps/supervisor-response/index.d.ts +1 -1
- package/dist/src/runtime/steps/supervisor-response/index.js +1 -1
- package/dist/src/runtime/steps/supervisor-response/input.d.ts +13 -5
- package/dist/src/runtime/steps/supervisor-response/input.js +27 -8
- package/dist/src/runtime/steps/supervisor-response/memory-authoring.d.ts +10 -0
- package/dist/src/runtime/steps/supervisor-response/memory-authoring.js +125 -0
- package/dist/src/runtime/steps/supervisor-response/prompt.d.ts +4 -0
- package/dist/src/runtime/steps/supervisor-response/prompt.js +19 -0
- package/dist/src/runtime/steps/supervisor-response/run.d.ts +8 -0
- package/dist/src/runtime/steps/supervisor-response/run.js +46 -17
- package/dist/src/runtime/steps/worker-decision/contracts.d.ts +10 -2
- package/dist/src/runtime/steps/worker-decision/contracts.js +3 -0
- package/dist/src/runtime/steps/worker-decision/format.d.ts +4 -0
- package/dist/src/runtime/steps/worker-decision/format.js +97 -22
- package/dist/src/runtime/steps/worker-decision/input/action-policy.d.ts +9 -0
- package/dist/src/runtime/steps/worker-decision/input/action-policy.js +15 -0
- package/dist/src/runtime/steps/worker-decision/input/canonical-state.d.ts +2 -2
- package/dist/src/runtime/steps/worker-decision/input/canonical-state.js +27 -8
- package/dist/src/runtime/steps/worker-decision/input/capability-selection.js +44 -3
- package/dist/src/runtime/steps/worker-decision/input/contract.d.ts +1 -0
- package/dist/src/runtime/steps/worker-decision/input/contract.js +12 -6
- package/dist/src/runtime/steps/worker-decision/input/diagnostic-projection.js +16 -7
- package/dist/src/runtime/steps/worker-decision/input/prompt-context.d.ts +1 -0
- package/dist/src/runtime/steps/worker-decision/input/prompt-context.js +13 -7
- package/dist/src/runtime/steps/worker-decision/input/reference-context.js +53 -15
- package/dist/src/runtime/steps/worker-decision/input/session.js +2 -1
- package/dist/src/runtime/steps/worker-decision/input/types.d.ts +8 -2
- package/dist/src/runtime/steps/worker-decision/input.d.ts +3 -2
- package/dist/src/runtime/steps/worker-decision/input.js +2 -2
- package/dist/src/runtime/steps/worker-decision/parser/accepted-decision.d.ts +3 -0
- package/dist/src/runtime/steps/worker-decision/parser/accepted-decision.js +70 -0
- package/dist/src/runtime/steps/worker-decision/parser/action-validation.d.ts +4 -0
- package/dist/src/runtime/steps/worker-decision/parser/action-validation.js +55 -0
- package/dist/src/runtime/steps/worker-decision/parser/capability-batch-validation.d.ts +3 -0
- package/dist/src/runtime/steps/worker-decision/parser/capability-batch-validation.js +135 -0
- package/dist/src/runtime/steps/worker-decision/parser/capability-controls-validation.d.ts +6 -0
- package/dist/src/runtime/steps/worker-decision/parser/capability-controls-validation.js +132 -0
- package/dist/src/runtime/steps/worker-decision/parser/capability-invocation-validation.d.ts +4 -0
- package/dist/src/runtime/steps/worker-decision/parser/capability-invocation-validation.js +104 -0
- package/dist/src/runtime/steps/worker-decision/parser/decision-shape-validation.d.ts +4 -0
- package/dist/src/runtime/steps/worker-decision/parser/decision-shape-validation.js +28 -0
- package/dist/src/runtime/steps/worker-decision/parser/pending-capability-selection-validation.d.ts +4 -0
- package/dist/src/runtime/steps/worker-decision/parser/pending-capability-selection-validation.js +105 -0
- package/dist/src/runtime/steps/worker-decision/parser/validation-contract.d.ts +50 -0
- package/dist/src/runtime/steps/worker-decision/parser/validation-contract.js +19 -0
- package/dist/src/runtime/steps/worker-decision/parser.d.ts +5 -1
- package/dist/src/runtime/steps/worker-decision/parser.js +32 -426
- package/dist/src/runtime/steps/worker-decision/payload-dependency-results.d.ts +8 -0
- package/dist/src/runtime/steps/worker-decision/payload-dependency-results.js +19 -0
- package/dist/src/runtime/steps/worker-decision/prompt.d.ts +3 -0
- package/dist/src/runtime/steps/worker-decision/prompt.js +63 -26
- package/dist/src/runtime/steps/worker-decision/result-author.js +28 -11
- package/dist/src/runtime/steps/worker-decision/run.js +99 -21
- package/dist/src/runtime/validation/strict-record.d.ts +2 -0
- package/dist/src/runtime/validation/strict-record.js +12 -0
- package/dist/src/shared/model-step-registry-data.json +9 -0
- package/dist/src/shared/model-step-registry.d.ts +9 -0
- package/dist/src/shared/model-step-registry.generated.d.ts +9 -0
- package/dist/src/shared/model-step-registry.generated.js +9 -0
- package/dist/src/web-ui/app/ARCHITECTURE.md +20 -7
- package/dist/src/web-ui/app/app.js +62 -18
- package/dist/src/web-ui/app/components/composer-context-window.d.ts +25 -0
- package/dist/src/web-ui/app/components/composer-context-window.js +155 -0
- package/dist/src/web-ui/app/components/composer-plan.d.ts +9 -0
- package/dist/src/web-ui/app/components/composer-plan.js +128 -0
- package/dist/src/web-ui/app/components/config-workspace/config-model.js +320 -0
- package/dist/src/web-ui/app/components/config-workspace/dashboard-rendering.js +155 -0
- package/dist/src/web-ui/app/components/config-workspace/field-rendering.js +278 -0
- package/dist/src/web-ui/app/components/config-workspace/model-rendering.js +251 -0
- package/dist/src/web-ui/app/components/config-workspace/step-rendering.js +145 -0
- package/dist/src/web-ui/app/components/config-workspace/workspace-events.js +271 -0
- package/dist/src/web-ui/app/components/config-workspace/workspace-mutations.js +195 -0
- package/dist/src/web-ui/app/components/config-workspace/workspace-persistence.js +247 -0
- package/dist/src/web-ui/app/components/config-workspace/workspace-view.js +299 -0
- package/dist/src/web-ui/app/components/config-workspace.js +179 -866
- package/dist/src/web-ui/app/components/conversation-activity.d.ts +12 -7
- package/dist/src/web-ui/app/components/conversation-activity.js +64 -157
- package/dist/src/web-ui/app/components/conversation-role-cards.d.ts +23 -0
- package/dist/src/web-ui/app/components/conversation-role-cards.js +181 -0
- package/dist/src/web-ui/app/components/conversation-sidebar-layout.js +12 -0
- package/dist/src/web-ui/app/components/conversation-sources.d.ts +7 -0
- package/dist/src/web-ui/app/components/conversation-sources.js +182 -0
- package/dist/src/web-ui/app/components/conversation-view.js +34 -6
- package/dist/src/web-ui/app/components/long-term-memory/icons.js +16 -0
- package/dist/src/web-ui/app/components/long-term-memory/manager.js +192 -0
- package/dist/src/web-ui/app/components/long-term-memory/record-editor.d.ts +9 -0
- package/dist/src/web-ui/app/components/long-term-memory/record-editor.js +62 -0
- package/dist/src/web-ui/app/components/long-term-memory/record-list.d.ts +5 -0
- package/dist/src/web-ui/app/components/long-term-memory/record-list.js +97 -0
- package/dist/src/web-ui/app/components/long-term-memory/view-model.d.ts +29 -0
- package/dist/src/web-ui/app/components/long-term-memory/view-model.js +69 -0
- package/dist/src/web-ui/app/components/long-term-memory-setup.js +334 -0
- package/dist/src/web-ui/app/components/model-selector.js +4 -1
- package/dist/src/web-ui/app/components/operations-section.js +46 -0
- package/dist/src/web-ui/app/components/runtime-setup-guide.d.ts +39 -0
- package/dist/src/web-ui/app/components/tool-approval-card.d.ts +18 -0
- package/dist/src/web-ui/app/components/workspace-shell.js +134 -85
- package/dist/src/web-ui/app/controllers/app-event-bindings.js +43 -6
- package/dist/src/web-ui/app/controllers/composer-attachments-controller.d.ts +92 -0
- package/dist/src/web-ui/app/controllers/composer-queue-controller.d.ts +109 -0
- package/dist/src/web-ui/app/controllers/composer-submit-controller.d.ts +77 -0
- package/dist/src/web-ui/app/controllers/conversation-session-controller.d.ts +149 -0
- package/dist/src/web-ui/app/controllers/conversation-session-controller.js +43 -3
- package/dist/src/web-ui/app/controllers/long-term-memory/controller.d.ts +87 -0
- package/dist/src/web-ui/app/controllers/long-term-memory/controller.js +302 -0
- package/dist/src/web-ui/app/controllers/long-term-memory/policy.d.ts +14 -0
- package/dist/src/web-ui/app/controllers/long-term-memory/policy.js +61 -0
- package/dist/src/web-ui/app/controllers/long-term-memory/state.js +85 -0
- package/dist/src/web-ui/app/controllers/operations-controller.d.ts +25 -0
- package/dist/src/web-ui/app/controllers/realtime-event-controller.d.ts +58 -0
- package/dist/src/web-ui/app/controllers/realtime-event-controller.js +55 -90
- package/dist/src/web-ui/app/controllers/runtime-onboarding-controller.d.ts +32 -0
- package/dist/src/web-ui/app/controllers/runtime-selection-controller.d.ts +177 -0
- package/dist/src/web-ui/app/controllers/runtime-selection-controller.js +80 -11
- package/dist/src/web-ui/app/controllers/session-controller.js +17 -12
- package/dist/src/web-ui/app/controllers/tool-approval-controller.d.ts +28 -0
- package/dist/src/web-ui/app/index.html +221 -224
- package/dist/src/web-ui/app/lib/composer-plan-model.d.ts +32 -0
- package/dist/src/web-ui/app/lib/composer-plan-model.js +108 -0
- package/dist/src/web-ui/app/lib/conversation-role-model.d.ts +19 -0
- package/dist/src/web-ui/app/lib/conversation-role-model.js +193 -0
- package/dist/src/web-ui/app/lib/event-presentation.js +30 -9
- package/dist/src/web-ui/app/lib/source-url-policy.d.ts +2 -0
- package/dist/src/web-ui/app/lib/source-url-policy.js +31 -0
- package/dist/src/web-ui/app/lib/task-progress.d.ts +53 -0
- package/dist/src/web-ui/app/lib/task-progress.js +233 -0
- package/dist/src/web-ui/app/lib/tool-invocation-count.d.ts +5 -0
- package/dist/src/web-ui/app/lib/tool-invocation-count.js +21 -0
- package/dist/src/web-ui/app/lib/web-source-event.d.ts +8 -0
- package/dist/src/web-ui/app/lib/web-source-event.js +21 -0
- package/dist/src/web-ui/app/lib/web-sources.d.ts +36 -0
- package/dist/src/web-ui/app/lib/web-sources.js +177 -0
- package/dist/src/web-ui/app/services/runtime-web-client/memory.js +127 -0
- package/dist/src/web-ui/app/services/runtime-web-client.d.ts +84 -0
- package/dist/src/web-ui/app/services/runtime-web-client.js +27 -1
- package/dist/src/web-ui/app/styles/00-tokens-base.css +15 -3
- package/dist/src/web-ui/app/styles/10-shell-sessions.css +24 -34
- package/dist/src/web-ui/app/styles/12-conversation-sidebar.css +93 -0
- package/dist/src/web-ui/app/styles/20-chat-composer.css +55 -472
- package/dist/src/web-ui/app/styles/21-composer-controls.css +368 -0
- package/dist/src/web-ui/app/styles/22-composer-context-window.css +90 -0
- package/dist/src/web-ui/app/styles/23-composer-plan.css +171 -0
- package/dist/src/web-ui/app/styles/24-conversation-role-cards.css +205 -0
- package/dist/src/web-ui/app/styles/25-conversation-sources.css +141 -0
- package/dist/src/web-ui/app/styles/30-inspector-config.css +142 -1602
- package/dist/src/web-ui/app/styles/35-memory-onboarding.css +153 -0
- package/dist/src/web-ui/app/styles/36-memory-management.css +419 -0
- package/dist/src/web-ui/app/styles/37-config-operations.css +197 -0
- package/dist/src/web-ui/app/styles/40-config-workspace.css +992 -0
- package/dist/src/web-ui/app/styles/90-responsive.css +199 -101
- package/dist/src/web-ui/app/styles/foundation.css +2 -2
- package/dist/src/web-ui/app/styles.css +10 -0
- package/dist/src/web-ui/app/ui-behavior.d.ts +1 -1
- package/dist/src/web-ui/app/ui-behavior.js +1 -1
- package/dist/src/web-ui/config-dashboard-backend.js +9 -1
- package/dist/src/web-ui/local-runtime/api-router.d.ts +4 -2
- package/dist/src/web-ui/local-runtime/api-router.js +33 -0
- package/dist/src/web-ui/local-runtime/contracts.d.ts +5 -0
- package/dist/src/web-ui/local-runtime/memory-management-input.d.ts +12 -0
- package/dist/src/web-ui/local-runtime/memory-management-input.js +68 -0
- package/dist/src/web-ui/local-runtime/memory-management-response.d.ts +17 -0
- package/dist/src/web-ui/local-runtime/memory-management-response.js +47 -0
- package/dist/src/web-ui/local-runtime/memory-management-routes.d.ts +24 -0
- package/dist/src/web-ui/local-runtime/memory-management-routes.js +128 -0
- package/dist/src/web-ui/local-runtime/memory-onboarding-routes.d.ts +17 -0
- package/dist/src/web-ui/local-runtime/memory-onboarding-routes.js +81 -0
- package/dist/src/web-ui/local-runtime/request-abort.d.ts +7 -0
- package/dist/src/web-ui/local-runtime/request-abort.js +19 -0
- package/dist/src/web-ui/local-runtime-backend.js +10 -3
- package/dist/src/web-ui/server.d.ts +2 -0
- package/dist/src/web-ui/server.js +3 -0
- package/docs/configuration.md +144 -54
- package/docs/installation.md +28 -4
- package/docs/known-limitations.md +32 -0
- package/docs/long-term-memory.md +181 -0
- package/docs/plugins.md +28 -13
- package/docs/publishing.md +52 -25
- package/docs/runtime-invariant-coverage.md +18 -17
- package/docs/runtime-library.md +16 -1
- package/docs/runtime-prompt-policy-contracts.md +39 -19
- package/docs/troubleshooting.md +21 -0
- package/examples/models/default.config.json +1 -0
- package/examples/request-runner.config.example.json +16 -22
- package/examples/runtime.config.example.json +4 -0
- package/methodologies/memory-informed-response.md +15 -0
- package/methodologies/response-ux.md +17 -0
- package/package.json +11 -4
- package/plugins/capability-brief/source/index.ts +5 -48
- package/plugins/capability-brief/src/index.cjs +46 -33
- package/plugins/exec/source/handlers.ts +65 -5
- package/plugins/exec/src/index.cjs +39 -3
- package/plugins/filesystem/plugin.json +1 -0
- package/plugins/system-probe/plugin.json +1 -0
- package/plugins/web/README.md +125 -0
- package/plugins/web/plugin.json +1 -1
- package/plugins/web/skills/web_fetch_skill/SKILL.md +2 -2
- package/plugins/web/skills/web_search_skill/SKILL.md +8 -4
- package/plugins/web/source/errors.ts +5 -1
- package/plugins/web/source/fetch-presentation.ts +61 -0
- package/plugins/web/source/fetch-service.ts +2 -31
- package/plugins/web/source/light/config.ts +196 -0
- package/plugins/web/source/light/crawl/origin-gate.ts +134 -0
- package/plugins/web/source/light/crawl/robots-cache.ts +71 -0
- package/plugins/web/source/light/crawl/robots-parser.ts +132 -0
- package/plugins/web/source/light/crawl/robots-policy.ts +154 -0
- package/plugins/web/source/light/crawl/session-budget.ts +141 -0
- package/plugins/web/source/light/crawl/transport.ts +216 -0
- package/plugins/web/source/light/discovery/candidate-values.ts +63 -0
- package/plugins/web/source/light/discovery/feed-document.ts +127 -0
- package/plugins/web/source/light/discovery/html-links.ts +80 -0
- package/plugins/web/source/light/discovery/html-robots-directives.ts +29 -0
- package/plugins/web/source/light/discovery/markup-tree.ts +145 -0
- package/plugins/web/source/light/discovery/origin-dates.ts +71 -0
- package/plugins/web/source/light/discovery/sitemap-document.ts +63 -0
- package/plugins/web/source/light/documents/cache-policy.ts +28 -0
- package/plugins/web/source/light/documents/document-cache.ts +99 -0
- package/plugins/web/source/light/documents/document-charset.ts +89 -0
- package/plugins/web/source/light/documents/document-contract.ts +20 -0
- package/plugins/web/source/light/documents/document-reader.ts +75 -0
- package/plugins/web/source/light/documents/extract-document.ts +124 -0
- package/plugins/web/source/light/documents/http-cache-freshness.ts +68 -0
- package/plugins/web/source/light/documents/response-decoding.ts +120 -0
- package/plugins/web/source/light/ranking/document-ranking.ts +114 -0
- package/plugins/web/source/light/ranking/query-normalization.ts +69 -0
- package/plugins/web/source/light/search-collection.ts +136 -0
- package/plugins/web/source/light/search-frontier.ts +246 -0
- package/plugins/web/source/light/search-metadata.ts +84 -0
- package/plugins/web/source/light/search-service.ts +154 -0
- package/plugins/web/source/light/search-unavailable.ts +33 -0
- package/plugins/web/source/light/sources/catalog.ts +312 -0
- package/plugins/web/source/light/sources/source-definition.ts +9 -0
- package/plugins/web/source/light/sources/source-selection.ts +35 -0
- package/plugins/web/source/plugin.ts +70 -56
- package/plugins/web/source/public-http.ts +10 -1
- package/plugins/web/source/search-presentation.ts +63 -63
- package/plugins/web/source/search-service-selector.ts +31 -0
- package/plugins/web/source/search-service.ts +6 -0
- package/plugins/web/source/search-source-presentation.ts +76 -0
- package/plugins/web/source/search-types.ts +4 -0
- package/plugins/web/source/source-output-receipts.ts +267 -0
- package/plugins/web/source/source-receipt-budget.ts +51 -0
- package/plugins/web/source/source-receipt-contract.ts +18 -0
- package/plugins/web/src/index.cjs +3214 -288
- package/runtime.config.schema.json +30 -0
- package/src/runtime/README.md +107 -47
- package/dist/src/model-gateway/structured-output/budget.d.ts +0 -7
- package/dist/src/model-gateway/structured-output/budget.js +0 -20
- package/dist/src/model-gateway/structured-output/schema-character-estimator.d.ts +0 -1
- package/dist/src/model-gateway/structured-output/schema-character-estimator.js +0 -211
- package/dist/src/model-gateway/structured-output-budget.d.ts +0 -1
- package/dist/src/model-gateway/structured-output-budget.js +0 -1
package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-observability.d.ts
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { RoleCallFrame } from "../../orchestration/role-calls/index.js";
|
|
2
|
+
import type { RegisteredToolNormalInvocationExecutor } from "../registered-tool-normal-invocations.js";
|
|
3
|
+
import { type RegisteredToolWorkerCapabilityProviderDiagnostic } from "../registered-tool-worker-capability-diagnostics.js";
|
|
4
|
+
export type PayloadStageMaterializationDetails = Readonly<{
|
|
5
|
+
payloadStage: number;
|
|
6
|
+
payloadStageCount: number;
|
|
7
|
+
source: "manifest_literal";
|
|
8
|
+
byteCount: number;
|
|
9
|
+
}>;
|
|
10
|
+
/**
|
|
11
|
+
* Keeps tool-payload lifecycle and its adapter diagnostic provisional during
|
|
12
|
+
* preparation. Canonically admitted execution releases them in their original
|
|
13
|
+
* order; discarded preparations never publish them.
|
|
14
|
+
*/
|
|
15
|
+
export declare function createDeferredPayloadObservability(params: {
|
|
16
|
+
executor: RegisteredToolNormalInvocationExecutor;
|
|
17
|
+
diagnostic: RegisteredToolWorkerCapabilityProviderDiagnostic;
|
|
18
|
+
operationId: string;
|
|
19
|
+
call: RoleCallFrame;
|
|
20
|
+
}): Readonly<{
|
|
21
|
+
lifecycleEmitter: Readonly<{
|
|
22
|
+
emitPayloadLifecycle(input: Parameters<RegisteredToolNormalInvocationExecutor["emitPayloadLifecycle"]>[0]): Readonly<{
|
|
23
|
+
status: "rejected";
|
|
24
|
+
code: string;
|
|
25
|
+
message: string;
|
|
26
|
+
}> | Readonly<{
|
|
27
|
+
status: "emitted";
|
|
28
|
+
}>;
|
|
29
|
+
}>;
|
|
30
|
+
deferPayloadStageMaterialized(details: PayloadStageMaterializationDetails): void;
|
|
31
|
+
release(executionId: string): void;
|
|
32
|
+
}>;
|
|
33
|
+
export type PayloadLifecycleEmitter = Readonly<{
|
|
34
|
+
emitPayloadLifecycle: RegisteredToolNormalInvocationExecutor["emitPayloadLifecycle"];
|
|
35
|
+
}>;
|
package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-observability.js
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { traceRegisteredToolWorkerCapabilityPayloadStageMaterialized, } from "../registered-tool-worker-capability-diagnostics.js";
|
|
2
|
+
/**
|
|
3
|
+
* Keeps tool-payload lifecycle and its adapter diagnostic provisional during
|
|
4
|
+
* preparation. Canonically admitted execution releases them in their original
|
|
5
|
+
* order; discarded preparations never publish them.
|
|
6
|
+
*/
|
|
7
|
+
export function createDeferredPayloadObservability(params) {
|
|
8
|
+
const deferred = [];
|
|
9
|
+
const lifecycleEmitter = Object.freeze({
|
|
10
|
+
emitPayloadLifecycle(input) {
|
|
11
|
+
const prepared = params.executor.preparePayloadLifecycle(input);
|
|
12
|
+
if (prepared.status === "rejected")
|
|
13
|
+
return prepared;
|
|
14
|
+
deferred.push(() => {
|
|
15
|
+
prepared.emit();
|
|
16
|
+
});
|
|
17
|
+
return Object.freeze({ status: "emitted" });
|
|
18
|
+
},
|
|
19
|
+
});
|
|
20
|
+
return Object.freeze({
|
|
21
|
+
lifecycleEmitter,
|
|
22
|
+
deferPayloadStageMaterialized(details) {
|
|
23
|
+
deferred.push((executionId) => {
|
|
24
|
+
traceRegisteredToolWorkerCapabilityPayloadStageMaterialized(params.diagnostic, params.operationId, params.call, executionId, details);
|
|
25
|
+
});
|
|
26
|
+
},
|
|
27
|
+
release(executionId) {
|
|
28
|
+
for (const publish of deferred)
|
|
29
|
+
publish(executionId);
|
|
30
|
+
},
|
|
31
|
+
});
|
|
32
|
+
}
|
package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-rejection.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import type { CapabilityAdapterResult } from "../../orchestration/capability-adapters/index.js";
|
|
2
2
|
import type { WorkerCapabilityAdapterResult, WorkerCapabilityExecutionFreshness } from "../../orchestration/worker-capabilities/index.js";
|
|
3
|
-
import type {
|
|
3
|
+
import type { PayloadLifecycleEmitter } from "./payload-observability.js";
|
|
4
4
|
export declare const STEERING_SUPERSEDED_BEFORE_EXTERNAL_EXECUTION: "steering_superseded_before_external_execution";
|
|
5
5
|
export declare const STEERING_SUPERSEDED_SUMMARY = "steering_superseded_before_external_execution: No external execution occurred because a newer active-request update superseded this capability invocation.";
|
|
6
|
-
export type PayloadLifecycleContext = Readonly<Omit<Parameters<
|
|
6
|
+
export type PayloadLifecycleContext = Readonly<Omit<Parameters<PayloadLifecycleEmitter["emitPayloadLifecycle"]>[0], "phase" | "errorCode">>;
|
|
7
7
|
export declare function rejectPayloadLifecycle(params: {
|
|
8
|
-
executor:
|
|
8
|
+
executor: PayloadLifecycleEmitter;
|
|
9
9
|
lifecycle: PayloadLifecycleContext;
|
|
10
10
|
code: string;
|
|
11
11
|
message: string;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { boundedSummary, requireCapabilityAdapterResult, } from "./result-observer.js";
|
|
2
|
+
import { createRegisteredToolWorkerFailureOutcomeFingerprint } from "./failure-outcome-fingerprint.js";
|
|
2
3
|
export const STEERING_SUPERSEDED_BEFORE_EXTERNAL_EXECUTION = "steering_superseded_before_external_execution";
|
|
3
4
|
export const STEERING_SUPERSEDED_SUMMARY = "steering_superseded_before_external_execution: No external execution occurred because a newer active-request update superseded this capability invocation.";
|
|
4
5
|
export function rejectPayloadLifecycle(params) {
|
|
@@ -12,22 +13,26 @@ export function rejectPayloadLifecycle(params) {
|
|
|
12
13
|
: (params.fallback ?? payloadRejection(params.code, params.message));
|
|
13
14
|
}
|
|
14
15
|
export function payloadRejection(sourceIssueCode, summary) {
|
|
16
|
+
const exactResult = requireCapabilityAdapterResult({
|
|
17
|
+
kind: "runtime_capability_rejection_v1",
|
|
18
|
+
authority: "runtime",
|
|
19
|
+
status: "rejected",
|
|
20
|
+
stage: "before_external_execution",
|
|
21
|
+
code: sourceIssueCode,
|
|
22
|
+
message: summary,
|
|
23
|
+
});
|
|
15
24
|
return Object.freeze({
|
|
16
25
|
status: "rejected",
|
|
17
26
|
result: Object.freeze({
|
|
18
27
|
outcome: "failed",
|
|
19
28
|
observedEffect: "none",
|
|
20
29
|
summary: boundedSummary(summary),
|
|
30
|
+
failureOutcomeFingerprint: sourceIssueCode === STEERING_SUPERSEDED_BEFORE_EXTERNAL_EXECUTION
|
|
31
|
+
? null
|
|
32
|
+
: createRegisteredToolWorkerFailureOutcomeFingerprint(exactResult),
|
|
21
33
|
}),
|
|
22
34
|
sourceIssueCode,
|
|
23
|
-
exactResult
|
|
24
|
-
kind: "runtime_capability_rejection_v1",
|
|
25
|
-
authority: "runtime",
|
|
26
|
-
status: "rejected",
|
|
27
|
-
stage: "before_external_execution",
|
|
28
|
-
code: sourceIssueCode,
|
|
29
|
-
message: summary,
|
|
30
|
-
}),
|
|
35
|
+
exactResult,
|
|
31
36
|
});
|
|
32
37
|
}
|
|
33
38
|
export function executionFreshnessRejection(freshness) {
|
|
@@ -1,23 +1,25 @@
|
|
|
1
1
|
import type { ToolExecutionSharedState } from "../../../capabilities/tool-types.js";
|
|
2
2
|
import type { CapabilityAdapterResult } from "../../orchestration/capability-adapters/index.js";
|
|
3
3
|
import type { WorkerCapabilityAdapterResult, WorkerCapabilityExecutionFreshness, WorkerCapabilityPayloadAuthor } from "../../orchestration/worker-capabilities/index.js";
|
|
4
|
-
import type {
|
|
4
|
+
import type { RegisteredToolNormalInvocationProjection } from "../registered-tool-normal-invocations.js";
|
|
5
5
|
import { type RegisteredToolStagedPayloadPlan } from "../registered-tool-payload-plan.js";
|
|
6
|
-
import {
|
|
6
|
+
import type { PayloadLifecycleEmitter, PayloadStageMaterializationDetails } from "./payload-observability.js";
|
|
7
7
|
export type StagedOperationPayloadParams = Readonly<{
|
|
8
8
|
plan: RegisteredToolStagedPayloadPlan;
|
|
9
9
|
handle: RegisteredToolNormalInvocationProjection["handle"];
|
|
10
|
-
executor:
|
|
10
|
+
executor: PayloadLifecycleEmitter;
|
|
11
11
|
sharedState: ToolExecutionSharedState;
|
|
12
12
|
payloadAuthor?: WorkerCapabilityPayloadAuthor;
|
|
13
13
|
call: Parameters<WorkerCapabilityPayloadAuthor["author"]>[0]["call"];
|
|
14
|
+
assignmentProvenance?: Parameters<WorkerCapabilityPayloadAuthor["author"]>[0]["assignmentProvenance"];
|
|
14
15
|
executionId: string;
|
|
15
16
|
descriptor: Parameters<WorkerCapabilityPayloadAuthor["author"]>[0]["descriptor"];
|
|
16
17
|
intent: string;
|
|
18
|
+
authoringObjective?: string;
|
|
17
19
|
controls: Readonly<Record<string, unknown>>;
|
|
18
20
|
dependencyResults?: Parameters<WorkerCapabilityPayloadAuthor["author"]>[0]["dependencyResults"];
|
|
19
21
|
settledCapabilityResults: Parameters<WorkerCapabilityPayloadAuthor["author"]>[0]["settledCapabilityResults"];
|
|
20
|
-
|
|
22
|
+
deferPayloadStageMaterialized(details: PayloadStageMaterializationDetails): void;
|
|
21
23
|
executionFreshness?: WorkerCapabilityExecutionFreshness;
|
|
22
24
|
}>;
|
|
23
25
|
export type StagedOperationPayloadResult = Readonly<{
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { resolveRegisteredToolPayloadRelatedArtifactContexts } from "../registered-tool-payload-related-artifacts.js";
|
|
2
|
+
import { materializeRegisteredToolPayloadStageResponseFormat, resolveRegisteredToolPayloadStageLiteralOutput, resolveRegisteredToolPayloadStageMinBytes, resolveRegisteredToolPayloadTargetContext, validateRegisteredToolPayloadStageTargetLineBounds, } from "../registered-tool-payload-plan.js";
|
|
3
3
|
import { normalizePayloadAuthoringResult } from "./payload-authoring-result.js";
|
|
4
4
|
import { executionFreshnessRejection, payloadRejection, rejectPayloadLifecycle, STEERING_SUPERSEDED_BEFORE_EXTERNAL_EXECUTION, STEERING_SUPERSEDED_SUMMARY, } from "./payload-rejection.js";
|
|
5
5
|
export async function prepareStagedOperationPayload(params) {
|
|
@@ -173,12 +173,22 @@ class PayloadStageRunner {
|
|
|
173
173
|
targetParam: this.params.plan.targetParam,
|
|
174
174
|
controls: this.params.controls,
|
|
175
175
|
sharedState: this.params.sharedState,
|
|
176
|
+
call: this.params.call,
|
|
177
|
+
...(this.params.assignmentProvenance
|
|
178
|
+
? { assignmentProvenance: this.params.assignmentProvenance }
|
|
179
|
+
: {}),
|
|
176
180
|
settledCapabilityResults: this.params.settledCapabilityResults,
|
|
177
181
|
});
|
|
178
182
|
rawAuthored = await payloadAuthor.author({
|
|
179
183
|
call: this.params.call,
|
|
184
|
+
...(this.params.assignmentProvenance
|
|
185
|
+
? { assignmentProvenance: this.params.assignmentProvenance }
|
|
186
|
+
: {}),
|
|
180
187
|
executionId: this.params.executionId,
|
|
181
188
|
descriptor: this.params.descriptor,
|
|
189
|
+
...(this.params.authoringObjective
|
|
190
|
+
? { authoringObjective: this.params.authoringObjective }
|
|
191
|
+
: {}),
|
|
182
192
|
controls: this.params.controls,
|
|
183
193
|
contextScope,
|
|
184
194
|
...(this.params.dependencyResults
|
|
@@ -267,7 +277,7 @@ class PayloadStageRunner {
|
|
|
267
277
|
}
|
|
268
278
|
completeStage(input) {
|
|
269
279
|
if (input.stageInputs.literalResolution.status === "matched") {
|
|
270
|
-
|
|
280
|
+
this.params.deferPayloadStageMaterialized({
|
|
271
281
|
payloadStage: input.started.stageIndex,
|
|
272
282
|
payloadStageCount: input.started.stageCount,
|
|
273
283
|
source: "manifest_literal",
|
|
@@ -1,14 +1,22 @@
|
|
|
1
1
|
import { executionProtocolError } from "./errors.js";
|
|
2
|
+
import { createRegisteredToolWorkerFailureOutcomeFingerprint } from "./failure-outcome-fingerprint.js";
|
|
2
3
|
import { boundedSummary, captureRegisteredToolResult, projectMutationGrounding, projectObservationOutput, projectToolTargetReferences, summarizeCompletedMutation, validateToolExecutionResult, } from "./result-evidence.js";
|
|
3
4
|
import { isPlainRecord, nonEmpty, safeIssueCode } from "./values.js";
|
|
4
5
|
export function observeExternalResult(input, expectedEffect, directRoot) {
|
|
5
6
|
const observed = observeExternalResultLegacy(input, expectedEffect, directRoot);
|
|
7
|
+
const exactResult = captureRegisteredToolResult(input);
|
|
6
8
|
return Object.freeze({
|
|
7
9
|
...observed,
|
|
8
|
-
result:
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
result: observed.result.outcome === "failed"
|
|
11
|
+
? Object.freeze({
|
|
12
|
+
...observed.result,
|
|
13
|
+
exactResult,
|
|
14
|
+
failureOutcomeFingerprint: createRegisteredToolWorkerFailureOutcomeFingerprint(exactResult),
|
|
15
|
+
})
|
|
16
|
+
: Object.freeze({
|
|
17
|
+
...observed.result,
|
|
18
|
+
exactResult,
|
|
19
|
+
}),
|
|
12
20
|
});
|
|
13
21
|
}
|
|
14
22
|
function observeExternalResultLegacy(input, expectedEffect, directRoot) {
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { projectAvailableTools } from "./tool-availability.js";
|
|
1
2
|
/**
|
|
2
3
|
* Adds trusted request services to an already config-filtered Tool Registry.
|
|
3
4
|
* Tools remain opaque to the request flow.
|
|
@@ -54,27 +55,3 @@ export function bindRequestToolRegistry(params) {
|
|
|
54
55
|
}),
|
|
55
56
|
});
|
|
56
57
|
}
|
|
57
|
-
function projectAvailableTools(registrations) {
|
|
58
|
-
if (registrations === undefined)
|
|
59
|
-
return undefined;
|
|
60
|
-
const entries = registrations.flatMap((registration) => registration.contract.operations.map((operation) => Object.freeze({
|
|
61
|
-
toolName: registration.toolName,
|
|
62
|
-
operationId: operation.operationId,
|
|
63
|
-
summary: operation.summary,
|
|
64
|
-
catalogGroups: Object.freeze([
|
|
65
|
-
...(registration.definition.catalogGroups ?? ["other"]),
|
|
66
|
-
]),
|
|
67
|
-
effect: operation.effect,
|
|
68
|
-
})));
|
|
69
|
-
entries.sort(compareAvailableTools);
|
|
70
|
-
return Object.freeze(entries);
|
|
71
|
-
}
|
|
72
|
-
function compareAvailableTools(left, right) {
|
|
73
|
-
const byOperation = compareAscii(left.operationId, right.operationId);
|
|
74
|
-
return byOperation !== 0
|
|
75
|
-
? byOperation
|
|
76
|
-
: compareAscii(left.toolName, right.toolName);
|
|
77
|
-
}
|
|
78
|
-
function compareAscii(left, right) {
|
|
79
|
-
return left < right ? -1 : left > right ? 1 : 0;
|
|
80
|
-
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { RegisteredToolNormalInvocation, ToolAvailabilityEntry } from "../../capabilities/tool-types.js";
|
|
2
|
+
/** Passive request-effective tool facts, independent of execution services. */
|
|
3
|
+
export interface ToolAvailabilitySource {
|
|
4
|
+
getAvailableTools(): readonly ToolAvailabilityEntry[] | undefined;
|
|
5
|
+
}
|
|
6
|
+
export declare function projectAvailableTools(registrations: readonly RegisteredToolNormalInvocation[] | undefined): readonly ToolAvailabilityEntry[] | undefined;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export function projectAvailableTools(registrations) {
|
|
2
|
+
if (registrations === undefined)
|
|
3
|
+
return undefined;
|
|
4
|
+
const entries = registrations.flatMap((registration) => registration.contract.operations.map((operation) => Object.freeze({
|
|
5
|
+
toolName: registration.toolName,
|
|
6
|
+
operationId: operation.operationId,
|
|
7
|
+
summary: operation.summary,
|
|
8
|
+
catalogGroups: Object.freeze([
|
|
9
|
+
...(registration.definition.catalogGroups ?? ["other"]),
|
|
10
|
+
]),
|
|
11
|
+
effect: operation.effect,
|
|
12
|
+
})));
|
|
13
|
+
entries.sort(compareAvailableTools);
|
|
14
|
+
return Object.freeze(entries);
|
|
15
|
+
}
|
|
16
|
+
function compareAvailableTools(left, right) {
|
|
17
|
+
const byOperation = compareAscii(left.operationId, right.operationId);
|
|
18
|
+
return byOperation !== 0
|
|
19
|
+
? byOperation
|
|
20
|
+
: compareAscii(left.toolName, right.toolName);
|
|
21
|
+
}
|
|
22
|
+
function compareAscii(left, right) {
|
|
23
|
+
if (left < right)
|
|
24
|
+
return -1;
|
|
25
|
+
if (left > right)
|
|
26
|
+
return 1;
|
|
27
|
+
return 0;
|
|
28
|
+
}
|
|
@@ -3,6 +3,7 @@ import type { EventSinkFactory, ModelGatewayClient, RuntimeConfig, RuntimeHost,
|
|
|
3
3
|
import type { RuntimeAttachmentStore } from "./attachments/store.js";
|
|
4
4
|
import type { RequestHandlerOptions, RunRequestMessage } from "./request/contracts.js";
|
|
5
5
|
import { type SessionMemoryCompactor } from "./context/session-memory/index.js";
|
|
6
|
+
import type { LongTermMemoryService } from "./long-term-memory/contracts.js";
|
|
6
7
|
export type RuntimeEnvironmentServices = Readonly<{
|
|
7
8
|
config: RuntimeConfig;
|
|
8
9
|
sessions: SessionStore;
|
|
@@ -11,6 +12,7 @@ export type RuntimeEnvironmentServices = Readonly<{
|
|
|
11
12
|
models: ModelGatewayClient;
|
|
12
13
|
events: EventSinkFactory;
|
|
13
14
|
sessionMemoryCompactor: SessionMemoryCompactor;
|
|
15
|
+
longTermMemory: LongTermMemoryService;
|
|
14
16
|
}>;
|
|
15
17
|
export type RuntimeRequestOptions = Pick<RequestHandlerOptions, "toolApprovalController" | "requestSteering">;
|
|
16
18
|
export type RuntimeRequestHandler = Readonly<{
|
|
@@ -30,6 +32,7 @@ export type RuntimeDependencies = {
|
|
|
30
32
|
models: ModelGatewayClient;
|
|
31
33
|
events: EventSinkFactory;
|
|
32
34
|
sessionMemoryCompactor: SessionMemoryCompactor;
|
|
35
|
+
longTermMemory: LongTermMemoryService;
|
|
33
36
|
};
|
|
34
37
|
export type RuntimeDependencyOverrides = Partial<Omit<RuntimeDependencies, "config">>;
|
|
35
38
|
export type RuntimeApplicationOverrides = RuntimeDependencyOverrides;
|
|
@@ -1,16 +1,19 @@
|
|
|
1
|
-
import { createBoundRuntimeRequestHandler, createDefaultAttachmentStore, createDefaultEventSinkFactory, createDefaultModelGatewayClient, createDefaultRuntimeHost, createDefaultSessionStore, createDefaultToolRegistry, } from "./default-adapters.js";
|
|
1
|
+
import { createBoundRuntimeRequestHandler, createDefaultAttachmentStore, createDefaultEventSinkFactory, createDefaultModelGatewayClient, createDefaultLongTermMemoryService, createDefaultRuntimeHost, createDefaultSessionStore, createDefaultToolRegistry, } from "./default-adapters.js";
|
|
2
2
|
import { loadRuntimeConfig } from "./config.js";
|
|
3
3
|
import { createModelSessionMemoryCompactor, } from "./context/session-memory/index.js";
|
|
4
4
|
export function createRuntimeApplication(config = loadRuntimeConfig(), overrides = {}) {
|
|
5
5
|
const tools = overrides.tools ?? createDefaultToolRegistry(config);
|
|
6
|
+
const models = overrides.models ?? createDefaultModelGatewayClient(config);
|
|
6
7
|
const services = Object.freeze({
|
|
7
8
|
config,
|
|
8
9
|
sessions: overrides.sessions ?? createDefaultSessionStore(config),
|
|
9
10
|
attachments: overrides.attachments ?? createDefaultAttachmentStore(config),
|
|
10
11
|
tools,
|
|
11
|
-
models
|
|
12
|
+
models,
|
|
12
13
|
events: overrides.events ?? createDefaultEventSinkFactory(config),
|
|
13
14
|
sessionMemoryCompactor: overrides.sessionMemoryCompactor ?? createModelSessionMemoryCompactor(),
|
|
15
|
+
longTermMemory: overrides.longTermMemory ??
|
|
16
|
+
createDefaultLongTermMemoryService(config, models),
|
|
14
17
|
});
|
|
15
18
|
const requests = createRuntimeRequestHandler(services);
|
|
16
19
|
const host = overrides.host ??
|
|
@@ -378,6 +378,33 @@ function buildModelProviders(providers) {
|
|
|
378
378
|
}
|
|
379
379
|
return entries.length > 0 ? Object.fromEntries(entries) : undefined;
|
|
380
380
|
}
|
|
381
|
+
function buildEmbeddingProfiles(profiles) {
|
|
382
|
+
if (!isRecord(profiles)) {
|
|
383
|
+
return undefined;
|
|
384
|
+
}
|
|
385
|
+
const entries = [];
|
|
386
|
+
for (const [profileId, value] of Object.entries(profiles)) {
|
|
387
|
+
if (!isRecord(value)) {
|
|
388
|
+
continue;
|
|
389
|
+
}
|
|
390
|
+
const provider = readNestedConfigString(value, "provider");
|
|
391
|
+
const model = readNestedConfigString(value, "model");
|
|
392
|
+
if (!provider || !model) {
|
|
393
|
+
continue;
|
|
394
|
+
}
|
|
395
|
+
const label = readNestedConfigString(value, "label");
|
|
396
|
+
entries.push([
|
|
397
|
+
profileId,
|
|
398
|
+
{
|
|
399
|
+
provider,
|
|
400
|
+
model,
|
|
401
|
+
...(label ? { label } : {}),
|
|
402
|
+
...(isRecord(value.options) ? { options: { ...value.options } } : {}),
|
|
403
|
+
},
|
|
404
|
+
]);
|
|
405
|
+
}
|
|
406
|
+
return entries.length > 0 ? Object.fromEntries(entries) : undefined;
|
|
407
|
+
}
|
|
381
408
|
function buildModelProfiles(profiles, options) {
|
|
382
409
|
if (!isRecord(profiles)) {
|
|
383
410
|
return {};
|
|
@@ -461,14 +488,20 @@ export function buildRuntimeModelConfiguration(config, options) {
|
|
|
461
488
|
}
|
|
462
489
|
const providers = buildModelProviders(config.models.providers);
|
|
463
490
|
const builtProfiles = buildModelProfiles(config.models.profiles, options);
|
|
491
|
+
const embeddingProfiles = buildEmbeddingProfiles(config.models.embeddingProfiles);
|
|
464
492
|
const invocationProfiles = buildModelInvocationProfiles(config.models.invocationProfiles);
|
|
465
493
|
const defaults = buildModelDefaults(config.models.defaults);
|
|
466
|
-
const modelPolicy = providers ||
|
|
494
|
+
const modelPolicy = providers ||
|
|
495
|
+
builtProfiles.gatewayProfiles ||
|
|
496
|
+
embeddingProfiles ||
|
|
497
|
+
invocationProfiles ||
|
|
498
|
+
defaults
|
|
467
499
|
? {
|
|
468
500
|
...(providers ? { providers } : {}),
|
|
469
501
|
...(builtProfiles.gatewayProfiles
|
|
470
502
|
? { profiles: builtProfiles.gatewayProfiles }
|
|
471
503
|
: {}),
|
|
504
|
+
...(embeddingProfiles ? { embeddingProfiles } : {}),
|
|
472
505
|
...(invocationProfiles ? { invocationProfiles } : {}),
|
|
473
506
|
...(defaults ? { defaults } : {}),
|
|
474
507
|
}
|
|
@@ -53,7 +53,13 @@ function validateInvocationTarget(params) {
|
|
|
53
53
|
params.issues.push(`${params.field} references unknown model or invocation profile ${params.targetId}`);
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
|
+
function isImplicitRunnerStepTarget(params) {
|
|
57
|
+
return (params.acceptsIdentityDefault === true && params.targetId === params.stepId);
|
|
58
|
+
}
|
|
56
59
|
function validateStepTarget(params) {
|
|
60
|
+
if (isImplicitRunnerStepTarget(params)) {
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
57
63
|
if (hasConfiguredProfile(params.profiles, params.targetId) ||
|
|
58
64
|
hasConfiguredInvocationProfile(params.invocationProfiles, params.targetId) ||
|
|
59
65
|
hasConfiguredCalibrationSlot(params.profiles, params.targetId)) {
|
|
@@ -139,6 +145,7 @@ export function validateEffectiveRuntimeModelConfig(params) {
|
|
|
139
145
|
validateStepTarget({
|
|
140
146
|
issues,
|
|
141
147
|
field: `models.defaults.steps.${stepId}`,
|
|
148
|
+
stepId,
|
|
142
149
|
targetId,
|
|
143
150
|
profiles,
|
|
144
151
|
invocationProfiles,
|
|
@@ -154,9 +161,11 @@ export function validateEffectiveRuntimeModelConfig(params) {
|
|
|
154
161
|
validateStepTarget({
|
|
155
162
|
issues,
|
|
156
163
|
field: `requestRunner.models.defaults.steps.${stepId}`,
|
|
164
|
+
stepId,
|
|
157
165
|
targetId,
|
|
158
166
|
profiles,
|
|
159
167
|
invocationProfiles,
|
|
168
|
+
acceptsIdentityDefault: true,
|
|
160
169
|
});
|
|
161
170
|
}
|
|
162
171
|
if (issues.length > 0) {
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { hasOwnValue, isRecord } from "./utils.js";
|
|
2
|
+
export function validateEmbeddingProfiles(params) {
|
|
3
|
+
if (!hasOwnValue(params.models, "embeddingProfiles")) {
|
|
4
|
+
return;
|
|
5
|
+
}
|
|
6
|
+
const profiles = params.models.embeddingProfiles;
|
|
7
|
+
if (!isRecord(profiles)) {
|
|
8
|
+
params.issues.push("models.embeddingProfiles must be an object");
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
for (const [profileId, profile] of Object.entries(profiles)) {
|
|
12
|
+
validateEmbeddingProfile({ ...params, profileId, profile });
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
function validateEmbeddingProfile(params) {
|
|
16
|
+
const displayKey = `models.embeddingProfiles.${params.profileId}`;
|
|
17
|
+
if (!params.profileId.trim()) {
|
|
18
|
+
params.issues.push("models.embeddingProfiles keys must be non-empty strings");
|
|
19
|
+
}
|
|
20
|
+
if (!isRecord(params.profile)) {
|
|
21
|
+
params.issues.push(`${displayKey} must be an object`);
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
const profile = params.profile;
|
|
25
|
+
rejectUnsupportedFields(params.issues, profile, displayKey);
|
|
26
|
+
validateOptionalString(params.issues, profile, "label", displayKey);
|
|
27
|
+
validateRequiredString({ ...params, profile }, "provider", displayKey);
|
|
28
|
+
validateRequiredString({ ...params, profile }, "model", displayKey);
|
|
29
|
+
if (hasOwnValue(profile, "options") && !isRecord(profile.options)) {
|
|
30
|
+
params.issues.push(`${displayKey}.options must be an object`);
|
|
31
|
+
}
|
|
32
|
+
validateProviderReference({ ...params, profile }, displayKey);
|
|
33
|
+
}
|
|
34
|
+
function rejectUnsupportedFields(issues, profile, displayKey) {
|
|
35
|
+
const supported = new Set(["label", "provider", "model", "options"]);
|
|
36
|
+
for (const key of Object.keys(profile)) {
|
|
37
|
+
if (!supported.has(key)) {
|
|
38
|
+
issues.push(`${displayKey}.${key} is not supported for embeddings`);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
function validateRequiredString(params, key, displayKey) {
|
|
43
|
+
if (params.allowIncompleteSetup && !hasOwnValue(params.profile, key)) {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
const value = params.profile[key];
|
|
47
|
+
if (typeof value !== "string" || !value.trim()) {
|
|
48
|
+
params.issues.push(`${displayKey}.${key} must be a non-empty string`);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
function validateOptionalString(issues, profile, key, displayKey) {
|
|
52
|
+
const value = profile[key];
|
|
53
|
+
if (value !== undefined && (typeof value !== "string" || !value.trim())) {
|
|
54
|
+
issues.push(`${displayKey}.${key} must be a non-empty string`);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
function validateProviderReference(params, displayKey) {
|
|
58
|
+
const providerId = params.profile.provider;
|
|
59
|
+
if (typeof providerId !== "string" || !providerId.trim()) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
const providers = params.models.providers;
|
|
63
|
+
if (!isRecord(providers) || !Object.hasOwn(providers, providerId.trim())) {
|
|
64
|
+
params.issues.push(`${displayKey}.provider references unknown provider ${providerId.trim()}`);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
@@ -194,6 +194,11 @@ export const RUNTIME_CONFIG_SCHEMA_FIELDS = [
|
|
|
194
194
|
type: "object-map",
|
|
195
195
|
description: "Host-defined model profiles keyed by profile id for model-gateway policy.",
|
|
196
196
|
},
|
|
197
|
+
{
|
|
198
|
+
path: "models.embeddingProfiles",
|
|
199
|
+
type: "object-map",
|
|
200
|
+
description: "Provider and model bindings for non-generative embedding operations.",
|
|
201
|
+
},
|
|
197
202
|
{
|
|
198
203
|
path: "models.profiles.<profileId>.configRef",
|
|
199
204
|
type: "non-empty-string",
|
|
@@ -246,6 +251,23 @@ export const RUNTIME_CONFIG_SCHEMA_FIELDS = [
|
|
|
246
251
|
type: "non-empty-string",
|
|
247
252
|
description: "Path to the runtime request-runner config file, resolved relative to the runtime config file.",
|
|
248
253
|
},
|
|
254
|
+
{
|
|
255
|
+
path: "longTermMemory.enabled",
|
|
256
|
+
type: "boolean",
|
|
257
|
+
defaultValue: "false",
|
|
258
|
+
description: "Whether passive cross-session memory retrieval and collection are enabled.",
|
|
259
|
+
},
|
|
260
|
+
{
|
|
261
|
+
path: "longTermMemory.emitClientEvents",
|
|
262
|
+
type: "boolean",
|
|
263
|
+
defaultValue: "false",
|
|
264
|
+
description: "Whether bounded memory lifecycle events are visible to clients.",
|
|
265
|
+
},
|
|
266
|
+
{
|
|
267
|
+
path: "longTermMemory.embeddingProfileId",
|
|
268
|
+
type: "non-empty-string",
|
|
269
|
+
description: "Embedding profile used by passive long-term memory when enabled.",
|
|
270
|
+
},
|
|
249
271
|
{
|
|
250
272
|
path: "features",
|
|
251
273
|
type: "feature-flag-map",
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { RuntimeLongTermMemoryConfig } from "../ports.js";
|
|
2
|
+
import type { RuntimeConfigFile } from "./types.js";
|
|
3
|
+
export declare const DEFAULT_LONG_TERM_MEMORY_CONFIG: RuntimeLongTermMemoryConfig;
|
|
4
|
+
export declare function buildLongTermMemoryConfig(config: RuntimeConfigFile): RuntimeLongTermMemoryConfig;
|
|
5
|
+
export declare function validateLongTermMemoryConfig(params: {
|
|
6
|
+
issues: string[];
|
|
7
|
+
value: unknown;
|
|
8
|
+
embeddingProfiles: unknown;
|
|
9
|
+
}): void;
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { isRecord } from "./utils.js";
|
|
2
|
+
export const DEFAULT_LONG_TERM_MEMORY_CONFIG = Object.freeze({
|
|
3
|
+
enabled: false,
|
|
4
|
+
emitClientEvents: false,
|
|
5
|
+
});
|
|
6
|
+
export function buildLongTermMemoryConfig(config) {
|
|
7
|
+
if (!isRecord(config.longTermMemory)) {
|
|
8
|
+
return DEFAULT_LONG_TERM_MEMORY_CONFIG;
|
|
9
|
+
}
|
|
10
|
+
const embeddingProfileId = readOptionalString(config.longTermMemory.embeddingProfileId);
|
|
11
|
+
return Object.freeze({
|
|
12
|
+
enabled: config.longTermMemory.enabled === true,
|
|
13
|
+
emitClientEvents: config.longTermMemory.emitClientEvents === true,
|
|
14
|
+
...(embeddingProfileId ? { embeddingProfileId } : {}),
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
export function validateLongTermMemoryConfig(params) {
|
|
18
|
+
if (params.value === undefined) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
if (!isRecord(params.value)) {
|
|
22
|
+
params.issues.push("longTermMemory must be an object");
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
rejectUnsupportedKeys(params.issues, params.value);
|
|
26
|
+
validateOptionalBoolean(params.issues, params.value, "enabled");
|
|
27
|
+
validateOptionalBoolean(params.issues, params.value, "emitClientEvents");
|
|
28
|
+
validateOptionalProfileId(params.issues, params.value);
|
|
29
|
+
validateEnabledProfileBinding(params);
|
|
30
|
+
}
|
|
31
|
+
function rejectUnsupportedKeys(issues, config) {
|
|
32
|
+
const supported = new Set([
|
|
33
|
+
"enabled",
|
|
34
|
+
"emitClientEvents",
|
|
35
|
+
"embeddingProfileId",
|
|
36
|
+
]);
|
|
37
|
+
for (const key of Object.keys(config)) {
|
|
38
|
+
if (!supported.has(key)) {
|
|
39
|
+
issues.push(`longTermMemory.${key} is not a supported configuration field`);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
function validateOptionalBoolean(issues, config, key) {
|
|
44
|
+
if (config[key] !== undefined && typeof config[key] !== "boolean") {
|
|
45
|
+
issues.push(`longTermMemory.${key} must be a boolean`);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
function validateOptionalProfileId(issues, config) {
|
|
49
|
+
const value = config.embeddingProfileId;
|
|
50
|
+
if (value !== undefined &&
|
|
51
|
+
(typeof value !== "string" || value.trim().length === 0)) {
|
|
52
|
+
issues.push("longTermMemory.embeddingProfileId must be a non-empty string");
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
function validateEnabledProfileBinding(params) {
|
|
56
|
+
if (!isRecord(params.value) || params.value.enabled !== true) {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
const profileId = readOptionalString(params.value.embeddingProfileId);
|
|
60
|
+
if (!profileId) {
|
|
61
|
+
params.issues.push("longTermMemory.embeddingProfileId is required when longTermMemory.enabled is true");
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
if (!isRecord(params.embeddingProfiles) ||
|
|
65
|
+
!Object.hasOwn(params.embeddingProfiles, profileId)) {
|
|
66
|
+
params.issues.push(`longTermMemory.embeddingProfileId references unknown embedding profile ${profileId}`);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
function readOptionalString(value) {
|
|
70
|
+
return typeof value === "string" && value.trim() ? value.trim() : undefined;
|
|
71
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type RequestContextConfig, type RequestRunnerConfig } from "./contracts.js";
|
|
2
|
+
export type ParsedModelDefaults = Readonly<{
|
|
3
|
+
profileId: string;
|
|
4
|
+
rawStepTargets: Record<string, unknown>;
|
|
5
|
+
}>;
|
|
6
|
+
export declare function assertRegisteredModelStepKeys(value: Record<string, unknown>, configPath: string, field: string): void;
|
|
7
|
+
export declare function parseRequestRunnerModelDefaults(root: Record<string, unknown>, configPath: string): ParsedModelDefaults;
|
|
8
|
+
export declare function parseRequestRunnerContext(root: Record<string, unknown>, configPath: string): RequestContextConfig;
|
|
9
|
+
export declare function materializeRequestRunnerConfig(params: {
|
|
10
|
+
configPath: string;
|
|
11
|
+
context: RequestContextConfig;
|
|
12
|
+
defaultTimeoutMs: number;
|
|
13
|
+
modelDefaults: ParsedModelDefaults;
|
|
14
|
+
rawSteps: Record<string, unknown>;
|
|
15
|
+
requireConfiguredTimeout: boolean;
|
|
16
|
+
}): RequestRunnerConfig;
|