@abot-ai/runtime 1.8.0 → 1.9.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 +216 -222
- package/dist/scripts/runtime-setup-files.js +46 -2
- package/dist/src/capabilities/tool-definition-validator/definition-parser.js +8 -0
- package/dist/src/capabilities/tool-types.d.ts +4 -0
- package/dist/src/model-gateway/client/chat.js +9 -5
- package/dist/src/model-gateway/client/invocation-error.d.ts +9 -0
- package/dist/src/model-gateway/client/invocation-error.js +30 -0
- package/dist/src/model-gateway/client/stream-consumer.js +9 -2
- package/dist/src/model-gateway/client/stream-parser.js +2 -1
- package/dist/src/model-gateway/protocol/message-contract.d.ts +1 -0
- package/dist/src/model-gateway/protocol/message-contract.js +1 -1
- package/dist/src/model-gateway/server/chat-handler.js +5 -7
- package/dist/src/model-gateway/server/chat-stream-response.d.ts +7 -0
- package/dist/src/model-gateway/server/chat-stream-response.js +25 -0
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/approval.d.ts +5 -1
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/approval.js +15 -1
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/prepared-execution.js +7 -5
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/prepared-snapshot.js +9 -2
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-rejection.d.ts +2 -2
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-rejection.js +2 -2
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/prepared-execution.js +17 -11
- package/dist/src/runtime/automations/service.d.ts +1 -1
- package/dist/src/runtime/capabilities/automation-builder/tool-module.js +4 -4
- package/dist/src/runtime/capabilities/automations/draft-index.d.ts +1 -1
- package/dist/src/runtime/capabilities/automations/tool-module.js +4 -4
- package/dist/src/runtime/capabilities/core-tool-contracts.d.ts +29 -0
- package/dist/src/runtime/capabilities/core-tool-contracts.js +38 -0
- package/dist/src/runtime/capabilities/knowledge-skills/read-many.d.ts +4 -0
- package/dist/src/runtime/capabilities/knowledge-skills/read-many.js +21 -0
- package/dist/src/runtime/capabilities/knowledge-skills/read-targets.d.ts +13 -0
- package/dist/src/runtime/capabilities/knowledge-skills/read-targets.js +44 -0
- package/dist/src/runtime/capabilities/knowledge-skills/tool-contract.d.ts +141 -0
- package/dist/src/runtime/capabilities/knowledge-skills/tool-contract.js +58 -0
- package/dist/src/runtime/capabilities/knowledge-skills/tool-module.d.ts +4 -0
- package/dist/src/runtime/capabilities/knowledge-skills/tool-module.js +78 -0
- package/dist/src/runtime/capabilities/knowledge-skills/tool-output.d.ts +12 -0
- package/dist/src/runtime/capabilities/knowledge-skills/tool-output.js +21 -0
- package/dist/src/runtime/capabilities/knowledge-skills/write-contract.d.ts +77 -0
- package/dist/src/runtime/capabilities/knowledge-skills/write-contract.js +28 -0
- package/dist/src/runtime/capabilities/knowledge-skills/write-operations.d.ts +3 -0
- package/dist/src/runtime/capabilities/knowledge-skills/write-operations.js +34 -0
- package/dist/src/runtime/capabilities/scheduling/tool-module.js +3 -3
- package/dist/src/runtime/capabilities/tool-availability.js +6 -0
- package/dist/src/runtime/composition.d.ts +5 -0
- package/dist/src/runtime/context/capability-brief.d.ts +2 -2
- package/dist/src/runtime/context/capability-brief.js +3 -3
- package/dist/src/runtime/context/capability-descriptions.d.ts +3 -2
- package/dist/src/runtime/context/capability-descriptions.js +57 -20
- package/dist/src/runtime/context/capability-result-compaction-source.d.ts +3 -1
- package/dist/src/runtime/context/capability-result-compaction-source.js +13 -1
- package/dist/src/runtime/context/core-skill-read-context.d.ts +16 -0
- package/dist/src/runtime/context/core-skill-read-context.js +76 -0
- package/dist/src/runtime/context/exact-evidence-match.d.ts +3 -0
- package/dist/src/runtime/context/exact-evidence-match.js +34 -0
- package/dist/src/runtime/context/model-step-compaction.js +20 -6
- package/dist/src/runtime/context/semantic-compaction/core-skill-read-source.d.ts +9 -0
- package/dist/src/runtime/context/semantic-compaction/core-skill-read-source.js +38 -0
- package/dist/src/runtime/context/semantic-compaction/generation-contracts.d.ts +2 -0
- package/dist/src/runtime/context/semantic-compaction/prompt.js +7 -7
- package/dist/src/runtime/context/semantic-compaction/run.js +10 -3
- package/dist/src/runtime/context/semantic-compaction/super-source-integrity.js +33 -3
- package/dist/src/runtime/context/session-artifact-paths.d.ts +2 -1
- package/dist/src/runtime/context/session-artifact-paths.js +2 -1
- package/dist/src/runtime/context/session-memory/model-step-controller.d.ts +2 -2
- package/dist/src/runtime/context/super-worker-compaction-failure.d.ts +1 -1
- package/dist/src/runtime/context/super-worker-compaction-failure.js +2 -1
- package/dist/src/runtime/context/super-worker-compaction-sidecar.d.ts +2 -1
- package/dist/src/runtime/context/super-worker-compaction-sidecar.js +9 -3
- package/dist/src/runtime/default-environment-adapters.d.ts +2 -1
- package/dist/src/runtime/default-environment-adapters.js +5 -1
- package/dist/src/runtime/knowledge-skills/available-skills-projection.d.ts +17 -0
- package/dist/src/runtime/knowledge-skills/available-skills-projection.js +66 -0
- package/dist/src/runtime/knowledge-skills/available-skills.d.ts +7 -0
- package/dist/src/runtime/knowledge-skills/available-skills.js +17 -0
- package/dist/src/runtime/knowledge-skills/builtins/abot-studio.d.ts +2 -0
- package/dist/src/runtime/knowledge-skills/builtins/abot-studio.js +27 -0
- package/dist/src/runtime/knowledge-skills/builtins/computer-use.d.ts +2 -0
- package/dist/src/runtime/knowledge-skills/builtins/computer-use.js +34 -0
- package/dist/src/runtime/knowledge-skills/builtins/skill-creator.d.ts +2 -0
- package/dist/src/runtime/knowledge-skills/builtins/skill-creator.js +29 -0
- package/dist/src/runtime/knowledge-skills/builtins/technical-work.d.ts +2 -0
- package/dist/src/runtime/knowledge-skills/builtins/technical-work.js +27 -0
- package/dist/src/runtime/knowledge-skills/catalog.d.ts +2 -0
- package/dist/src/runtime/knowledge-skills/catalog.js +12 -0
- package/dist/src/runtime/knowledge-skills/personal-contracts.d.ts +48 -0
- package/dist/src/runtime/knowledge-skills/personal-contracts.js +29 -0
- package/dist/src/runtime/knowledge-skills/personal-documents.d.ts +6 -0
- package/dist/src/runtime/knowledge-skills/personal-documents.js +56 -0
- package/dist/src/runtime/knowledge-skills/personal-management.d.ts +9 -0
- package/dist/src/runtime/knowledge-skills/personal-management.js +64 -0
- package/dist/src/runtime/knowledge-skills/personal-repository.d.ts +6 -0
- package/dist/src/runtime/knowledge-skills/personal-repository.js +76 -0
- package/dist/src/runtime/knowledge-skills/personal-store.d.ts +4 -0
- package/dist/src/runtime/knowledge-skills/personal-store.js +33 -0
- package/dist/src/runtime/knowledge-skills/read-evidence.d.ts +3 -0
- package/dist/src/runtime/knowledge-skills/read-evidence.js +13 -0
- package/dist/src/runtime/knowledge-skills/store.d.ts +19 -0
- package/dist/src/runtime/knowledge-skills/store.js +41 -0
- package/dist/src/runtime/local-application.d.ts +2 -1
- package/dist/src/runtime/local-host/app-service-dispatch.d.ts +1 -0
- package/dist/src/runtime/local-host/app-service-dispatch.js +5 -0
- package/dist/src/runtime/local-host/client-services.d.ts +3 -1
- package/dist/src/runtime/local-host/client-services.js +3 -2
- package/dist/src/runtime/long-term-memory/conversation-authoring/context.d.ts +7 -1
- package/dist/src/runtime/long-term-memory/conversation-authoring/context.js +51 -25
- package/dist/src/runtime/long-term-memory/conversation-authoring/plain-text-context.d.ts +5 -0
- package/dist/src/runtime/long-term-memory/conversation-authoring/plain-text-context.js +28 -0
- package/dist/src/runtime/long-term-memory/initial-context.d.ts +18 -0
- package/dist/src/runtime/long-term-memory/initial-context.js +57 -0
- package/dist/src/runtime/long-term-memory/projection.js +1 -1
- package/dist/src/runtime/model/context-compaction-admission.d.ts +1 -0
- package/dist/src/runtime/model/context-compaction-admission.js +35 -1
- package/dist/src/runtime/model/context-compaction-contracts.d.ts +9 -1
- package/dist/src/runtime/model/invoke-step.js +6 -2
- package/dist/src/runtime/model/provider-failure.d.ts +13 -0
- package/dist/src/runtime/model/provider-failure.js +37 -0
- package/dist/src/runtime/orchestration/role-calls/activation-budget.js +1 -0
- package/dist/src/runtime/orchestration/role-calls/candidate-validation.js +4 -1
- package/dist/src/runtime/orchestration/role-calls/checkpoint-state.d.ts +1 -1
- package/dist/src/runtime/orchestration/role-calls/checkpoint-state.js +7 -3
- package/dist/src/runtime/orchestration/role-calls/command-decoder.js +3 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/skill-read-transition.d.ts +4 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/skill-read-transition.js +48 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch.js +3 -0
- package/dist/src/runtime/orchestration/role-calls/contracts.d.ts +8 -4
- package/dist/src/runtime/orchestration/role-calls/contracts.js +3 -3
- package/dist/src/runtime/orchestration/role-calls/ledger.d.ts +2 -1
- package/dist/src/runtime/orchestration/role-calls/ledger.js +2 -2
- package/dist/src/runtime/orchestration/role-calls/memory-recall-contract.d.ts +7 -0
- package/dist/src/runtime/orchestration/role-calls/memory-recall-state-validation.d.ts +2 -0
- package/dist/src/runtime/orchestration/role-calls/memory-recall-state-validation.js +88 -0
- package/dist/src/runtime/orchestration/role-calls/reducer.d.ts +1 -1
- package/dist/src/runtime/orchestration/role-calls/reducer.js +2 -1
- package/dist/src/runtime/orchestration/role-calls/skill-read.d.ts +47 -0
- package/dist/src/runtime/orchestration/role-calls/skill-read.js +196 -0
- package/dist/src/runtime/orchestration/role-executors/activation/model-output-failure.d.ts +1 -1
- package/dist/src/runtime/orchestration/role-executors/activation/model-output-failure.js +4 -2
- package/dist/src/runtime/orchestration/worker-capabilities/binding/create-binding.js +4 -1
- package/dist/src/runtime/orchestration/worker-capabilities/contracts.d.ts +4 -2
- package/dist/src/runtime/orchestration/worker-capabilities/contracts.js +2 -2
- package/dist/src/runtime/orchestration/worker-capabilities/execution/approval-group.js +10 -4
- package/dist/src/runtime/orchestration/worker-capabilities/execution/execution-freshness.d.ts +5 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/execution-freshness.js +31 -0
- package/dist/src/runtime/orchestration/worker-capabilities/payload-compaction-transport.d.ts +2 -0
- package/dist/src/runtime/orchestration/worker-capabilities/payload-compaction-transport.js +7 -2
- package/dist/src/runtime/orchestration/worker-capabilities/supervisor-skill-authority.d.ts +19 -0
- package/dist/src/runtime/orchestration/worker-capabilities/supervisor-skill-authority.js +43 -0
- package/dist/src/runtime/plugins/loader.js +7 -6
- package/dist/src/runtime/plugins/manifest-projection.js +3 -0
- package/dist/src/runtime/request/approval-wait/preflight.js +1 -0
- package/dist/src/runtime/request/bound-runtime-handler.js +1 -0
- package/dist/src/runtime/request/capability-execution-freshness.js +6 -1
- package/dist/src/runtime/request/contracts.d.ts +2 -0
- package/dist/src/runtime/request/execution-agent-root-execution.js +11 -1
- package/dist/src/runtime/request/execution-payload-compacted-evidence.d.ts +2 -2
- package/dist/src/runtime/request/execution-scope-surfaces.d.ts +2 -0
- package/dist/src/runtime/request/execution-scope-surfaces.js +7 -0
- package/dist/src/runtime/request/execution-scope.d.ts +6 -2
- package/dist/src/runtime/request/execution-scope.js +11 -0
- package/dist/src/runtime/request/payload-settled-evidence.d.ts +11 -0
- package/dist/src/runtime/request/payload-settled-evidence.js +29 -0
- package/dist/src/runtime/request/prepared-execution.js +2 -0
- package/dist/src/runtime/request/role-call-delegation-events.d.ts +19 -0
- package/dist/src/runtime/request/role-call-delegation-events.js +52 -0
- package/dist/src/runtime/request/role-call-return-events.d.ts +19 -0
- package/dist/src/runtime/request/role-call-return-events.js +63 -0
- package/dist/src/runtime/request/role-executor-composition.js +2 -2
- package/dist/src/runtime/request/root-capability-binding.d.ts +24 -0
- package/dist/src/runtime/request/root-capability-binding.js +57 -0
- package/dist/src/runtime/request/root-capability-catalog.d.ts +16 -0
- package/dist/src/runtime/request/root-capability-catalog.js +20 -0
- package/dist/src/runtime/request/root-contract.d.ts +13 -1
- package/dist/src/runtime/request/root-execution-kernel.js +36 -68
- package/dist/src/runtime/request/root-reference-action.d.ts +15 -0
- package/dist/src/runtime/request/root-reference-action.js +48 -0
- package/dist/src/runtime/request/root-skill-read.d.ts +13 -0
- package/dist/src/runtime/request/root-skill-read.js +102 -0
- package/dist/src/runtime/request/runner.js +19 -3
- package/dist/src/runtime/request/super-payload-context-failure.js +13 -4
- package/dist/src/runtime/request/supervisor-root-execution.js +54 -1
- package/dist/src/runtime/request/supervisor-skill-edit-target.d.ts +9 -0
- package/dist/src/runtime/request/supervisor-skill-edit-target.js +25 -0
- package/dist/src/runtime/request/supervisor-skill-payload-context.d.ts +21 -0
- package/dist/src/runtime/request/supervisor-skill-payload-context.js +91 -0
- package/dist/src/runtime/request/supervisor-skill-write-preparation.d.ts +25 -0
- package/dist/src/runtime/request/supervisor-skill-write-preparation.js +71 -0
- package/dist/src/runtime/request/worker-capability-composition.d.ts +4 -1
- package/dist/src/runtime/request/worker-capability-composition.js +4 -1
- package/dist/src/runtime/request/worker-capability-payload.d.ts +1 -1
- package/dist/src/runtime/request/worker-capability-payload.js +44 -37
- package/dist/src/runtime/runtime-environment.d.ts +2 -0
- package/dist/src/runtime/runtime-environment.js +12 -1
- package/dist/src/runtime/scheduler/contracts.d.ts +4 -0
- package/dist/src/runtime/scheduler/run-list-filter.d.ts +11 -0
- package/dist/src/runtime/scheduler/run-list-filter.js +56 -0
- package/dist/src/runtime/scheduler/run-list-query.d.ts +2 -2
- package/dist/src/runtime/scheduler/run-list-query.js +4 -1
- package/dist/src/runtime/steps/auditor-decision/contracts.d.ts +2 -0
- package/dist/src/runtime/steps/auditor-decision/evidence-representation.d.ts +2 -2
- package/dist/src/runtime/steps/auditor-decision/evidence-representation.js +2 -34
- package/dist/src/runtime/steps/auditor-decision/input.js +21 -3
- package/dist/src/runtime/steps/auditor-decision/projection.js +5 -0
- package/dist/src/runtime/steps/auditor-decision/prompt.d.ts +1 -1
- package/dist/src/runtime/steps/auditor-decision/prompt.js +14 -3
- package/dist/src/runtime/steps/capability-execution-guidance.d.ts +7 -0
- package/dist/src/runtime/steps/capability-execution-guidance.js +28 -0
- package/dist/src/runtime/steps/capability-execution-instructions.d.ts +0 -2
- package/dist/src/runtime/steps/capability-execution-instructions.js +0 -2
- package/dist/src/runtime/steps/execution-agent/capability-result-context.d.ts +5 -2
- package/dist/src/runtime/steps/execution-agent/capability-result-context.js +22 -3
- package/dist/src/runtime/steps/execution-agent/compaction.d.ts +3 -2
- package/dist/src/runtime/steps/execution-agent/compaction.js +9 -1
- package/dist/src/runtime/steps/execution-agent/contracts.d.ts +10 -0
- package/dist/src/runtime/steps/execution-agent/decision-parsing.js +13 -1
- package/dist/src/runtime/steps/execution-agent/direct-response-configuration.d.ts +3 -0
- package/dist/src/runtime/steps/execution-agent/direct-response-configuration.js +64 -0
- package/dist/src/runtime/steps/execution-agent/direct-response-contract.d.ts +7 -0
- package/dist/src/runtime/steps/execution-agent/direct-response-contract.js +56 -0
- package/dist/src/runtime/steps/execution-agent/direct-response-policy.d.ts +9 -0
- package/dist/src/runtime/steps/execution-agent/direct-response-policy.js +30 -0
- package/dist/src/runtime/steps/execution-agent/direct-response-prompt.d.ts +7 -0
- package/dist/src/runtime/steps/execution-agent/direct-response-prompt.js +43 -0
- package/dist/src/runtime/steps/execution-agent/format.js +2 -0
- package/dist/src/runtime/steps/execution-agent/input.d.ts +2 -0
- package/dist/src/runtime/steps/execution-agent/input.js +35 -2
- package/dist/src/runtime/steps/execution-agent/plugin-catalog.d.ts +4 -0
- package/dist/src/runtime/steps/execution-agent/plugin-catalog.js +8 -0
- package/dist/src/runtime/steps/execution-agent/prompt.d.ts +1 -0
- package/dist/src/runtime/steps/execution-agent/prompt.js +42 -41
- package/dist/src/runtime/steps/execution-agent/refinement-input.d.ts +1 -0
- package/dist/src/runtime/steps/execution-agent/refinement-prompt.js +4 -1
- package/dist/src/runtime/steps/execution-agent/response-prompt.js +1 -0
- package/dist/src/runtime/steps/execution-agent/response-run.js +6 -12
- package/dist/src/runtime/steps/execution-agent/run.js +5 -2
- package/dist/src/runtime/steps/execution-agent/state-context.d.ts +2 -3
- package/dist/src/runtime/steps/execution-agent/state-context.js +3 -40
- package/dist/src/runtime/steps/knowledge-skill-instructions.d.ts +3 -0
- package/dist/src/runtime/steps/knowledge-skill-instructions.js +3 -0
- package/dist/src/runtime/steps/planner-decision/capability-brief.d.ts +4 -2
- package/dist/src/runtime/steps/planner-decision/capability-brief.js +5 -1
- package/dist/src/runtime/steps/planner-decision/input.d.ts +2 -2
- package/dist/src/runtime/steps/planner-decision/input.js +7 -1
- package/dist/src/runtime/steps/planner-decision/prompt.js +29 -49
- package/dist/src/runtime/steps/planner-graph/input.d.ts +2 -2
- package/dist/src/runtime/steps/planner-graph/input.js +9 -8
- package/dist/src/runtime/steps/planner-graph/prompt.js +2 -2
- package/dist/src/runtime/steps/planner-graph/run.d.ts +2 -2
- package/dist/src/runtime/steps/planner-graph/run.js +5 -5
- package/dist/src/runtime/steps/planner-graph/skill-guidance.d.ts +5 -0
- package/dist/src/runtime/steps/planner-graph/skill-guidance.js +62 -0
- package/dist/src/runtime/steps/reviewer-decision/final-evidence.d.ts +1 -0
- package/dist/src/runtime/steps/reviewer-decision/final-evidence.js +3 -1
- package/dist/src/runtime/steps/reviewer-decision/input.d.ts +3 -1
- package/dist/src/runtime/steps/reviewer-decision/input.js +2 -22
- package/dist/src/runtime/steps/reviewer-decision/model-context.d.ts +21 -0
- package/dist/src/runtime/steps/reviewer-decision/model-context.js +32 -1
- package/dist/src/runtime/steps/reviewer-decision/projection.js +4 -0
- package/dist/src/runtime/steps/reviewer-decision/prompt.d.ts +1 -1
- package/dist/src/runtime/steps/reviewer-decision/prompt.js +15 -4
- package/dist/src/runtime/steps/reviewer-decision/run.d.ts +2 -0
- package/dist/src/runtime/steps/reviewer-decision/run.js +6 -0
- package/dist/src/runtime/steps/skill-read-decision.d.ts +34 -0
- package/dist/src/runtime/steps/skill-read-decision.js +91 -0
- package/dist/src/runtime/steps/supervisor-decision/artifact-paths.d.ts +22 -0
- package/dist/src/runtime/steps/supervisor-decision/artifact-paths.js +132 -0
- package/dist/src/runtime/steps/supervisor-decision/capability-brief.d.ts +2 -0
- package/dist/src/runtime/steps/supervisor-decision/capability-brief.js +9 -2
- package/dist/src/runtime/steps/supervisor-decision/contracts.d.ts +12 -3
- package/dist/src/runtime/steps/supervisor-decision/contracts.js +3 -0
- package/dist/src/runtime/steps/supervisor-decision/decision-phases.d.ts +37 -0
- package/dist/src/runtime/steps/supervisor-decision/decision-phases.js +124 -0
- package/dist/src/runtime/steps/supervisor-decision/diagnostics.d.ts +5 -1
- package/dist/src/runtime/steps/supervisor-decision/diagnostics.js +4 -0
- package/dist/src/runtime/steps/supervisor-decision/format.d.ts +1 -0
- package/dist/src/runtime/steps/supervisor-decision/format.js +2 -0
- package/dist/src/runtime/steps/supervisor-decision/input.d.ts +8 -1
- package/dist/src/runtime/steps/supervisor-decision/input.js +35 -11
- package/dist/src/runtime/steps/supervisor-decision/parser.d.ts +1 -0
- package/dist/src/runtime/steps/supervisor-decision/parser.js +11 -0
- package/dist/src/runtime/steps/supervisor-decision/preparation-input.d.ts +26 -0
- package/dist/src/runtime/steps/supervisor-decision/preparation-input.js +39 -0
- package/dist/src/runtime/steps/supervisor-decision/preparation.d.ts +17 -0
- package/dist/src/runtime/steps/supervisor-decision/preparation.js +65 -0
- package/dist/src/runtime/steps/supervisor-decision/presentation.d.ts +13 -0
- package/dist/src/runtime/steps/supervisor-decision/presentation.js +47 -0
- package/dist/src/runtime/steps/supervisor-decision/prompt.d.ts +5 -0
- package/dist/src/runtime/steps/supervisor-decision/prompt.js +97 -106
- package/dist/src/runtime/steps/supervisor-decision/response-recommendation.d.ts +2 -0
- package/dist/src/runtime/steps/supervisor-decision/response-recommendation.js +2 -0
- package/dist/src/runtime/steps/supervisor-decision/resume.d.ts +3 -0
- package/dist/src/runtime/steps/supervisor-decision/resume.js +20 -0
- package/dist/src/runtime/steps/supervisor-decision/run.d.ts +7 -0
- package/dist/src/runtime/steps/supervisor-decision/run.js +76 -158
- package/dist/src/runtime/steps/supervisor-decision/skill-selection-input.d.ts +21 -0
- package/dist/src/runtime/steps/supervisor-decision/skill-selection-input.js +29 -0
- package/dist/src/runtime/steps/supervisor-decision/skill-selection.d.ts +16 -0
- package/dist/src/runtime/steps/supervisor-decision/skill-selection.js +44 -0
- package/dist/src/runtime/steps/supervisor-response/input.d.ts +3 -0
- package/dist/src/runtime/steps/supervisor-response/input.js +5 -0
- package/dist/src/runtime/steps/supervisor-response/prompt.js +2 -0
- package/dist/src/runtime/steps/supervisor-response/response-recommendation.d.ts +3 -0
- package/dist/src/runtime/steps/supervisor-response/response-recommendation.js +24 -4
- package/dist/src/runtime/steps/supervisor-response/run.d.ts +7 -0
- package/dist/src/runtime/steps/supervisor-response/run.js +3 -6
- package/dist/src/runtime/steps/supervisor-skill-authoring/contract.d.ts +43 -0
- package/dist/src/runtime/steps/supervisor-skill-authoring/contract.js +85 -0
- package/dist/src/runtime/steps/supervisor-skill-authoring/input.d.ts +35 -0
- package/dist/src/runtime/steps/supervisor-skill-authoring/input.js +87 -0
- package/dist/src/runtime/steps/supervisor-skill-authoring/run.d.ts +10 -0
- package/dist/src/runtime/steps/supervisor-skill-authoring/run.js +35 -0
- package/dist/src/runtime/steps/supervisor-skill-instructions.d.ts +4 -0
- package/dist/src/runtime/steps/supervisor-skill-instructions.js +4 -0
- package/dist/src/runtime/steps/worker-capability-scope-decision.js +14 -1
- package/dist/src/runtime/steps/worker-decision/contracts.d.ts +1 -0
- package/dist/src/runtime/steps/worker-decision/input/execution-guidance.d.ts +5 -0
- package/dist/src/runtime/steps/worker-decision/input/execution-guidance.js +31 -0
- package/dist/src/runtime/steps/worker-decision/input/prompt-context.js +2 -25
- package/dist/src/runtime/steps/worker-decision/input/reference-context.js +4 -0
- package/dist/src/runtime/steps/worker-decision/prompt.js +6 -2
- package/dist/src/runtime/steps/worker-decision/result-author.js +6 -0
- package/dist/src/web-ui/app/ARCHITECTURE.md +1 -1
- package/dist/src/web-ui/app/app-bootstrap.js +3 -0
- package/dist/src/web-ui/app/app.js +7 -1
- package/dist/src/web-ui/app/components/automations/run-history-controls.js +77 -0
- package/dist/src/web-ui/app/components/automations/run-history.js +55 -0
- package/dist/src/web-ui/app/components/automations/run.js +3 -8
- package/dist/src/web-ui/app/components/automations/timeline.js +3 -2
- package/dist/src/web-ui/app/components/automations/workspace.js +11 -2
- package/dist/src/web-ui/app/components/conversation-role-cards.js +27 -0
- package/dist/src/web-ui/app/components/conversation-role-delegations.d.ts +12 -0
- package/dist/src/web-ui/app/components/conversation-role-delegations.js +24 -0
- package/dist/src/web-ui/app/components/conversation-role-history.d.ts +13 -0
- package/dist/src/web-ui/app/components/conversation-role-history.js +81 -0
- package/dist/src/web-ui/app/components/conversation-role-returns.d.ts +12 -0
- package/dist/src/web-ui/app/components/conversation-role-returns.js +23 -0
- package/dist/src/web-ui/app/components/dashboard/compact-layout.js +137 -0
- package/dist/src/web-ui/app/components/dashboard/icons.js +5 -0
- package/dist/src/web-ui/app/components/dashboard/widget-card.js +85 -0
- package/dist/src/web-ui/app/components/dashboard/widget-dialog.js +83 -0
- package/dist/src/web-ui/app/components/dashboard/widget-summaries.js +155 -0
- package/dist/src/web-ui/app/components/dashboard/workspace.js +28 -4
- package/dist/src/web-ui/app/components/onboarding-workspace-access.js +1 -1
- package/dist/src/web-ui/app/components/operations-summary.js +2 -1
- package/dist/src/web-ui/app/components/passive-learning/home-widget-preview.js +32 -0
- package/dist/src/web-ui/app/components/passive-learning/home.js +4 -1
- package/dist/src/web-ui/app/components/schedules/details.js +3 -2
- package/dist/src/web-ui/app/components/skills/workspace.js +119 -0
- package/dist/src/web-ui/app/components/spark-chat/panel.js +1 -1
- package/dist/src/web-ui/app/components/spark-chat/settings.js +1 -1
- package/dist/src/web-ui/app/components/system-host/home-widget-permission-preview.js +75 -0
- package/dist/src/web-ui/app/components/system-host/home-widget-summary.js +93 -0
- package/dist/src/web-ui/app/components/system-host/macos-permission-rendering.js +2 -2
- package/dist/src/web-ui/app/components/system-host/native-windows-access.js +1 -1
- package/dist/src/web-ui/app/components/system-host/rendering.js +3 -3
- package/dist/src/web-ui/app/components/system-host/windows-store-setup.js +2 -2
- package/dist/src/web-ui/app/components/workspace-shell.js +11 -1
- package/dist/src/web-ui/app/computer-access-feature.js +13 -1
- package/dist/src/web-ui/app/configuration-feature.js +2 -0
- package/dist/src/web-ui/app/controllers/automation-read-projection.js +8 -4
- package/dist/src/web-ui/app/controllers/automation-run-actions.js +3 -1
- package/dist/src/web-ui/app/controllers/automation-run-history.js +159 -0
- package/dist/src/web-ui/app/controllers/automations-controller.js +27 -11
- package/dist/src/web-ui/app/controllers/environment-workspace-preparation.js +6 -2
- package/dist/src/web-ui/app/controllers/operations-controller.js +2 -1
- package/dist/src/web-ui/app/controllers/realtime-event-controller.js +22 -1
- package/dist/src/web-ui/app/controllers/reasoning-mode-controller.js +1 -1
- package/dist/src/web-ui/app/controllers/runtime-selection-controller.js +7 -1
- package/dist/src/web-ui/app/controllers/skills-controller.js +237 -0
- package/dist/src/web-ui/app/dashboard-feature.js +9 -0
- package/dist/src/web-ui/app/lib/conversation-role-model.d.ts +5 -0
- package/dist/src/web-ui/app/lib/conversation-role-model.js +63 -5
- package/dist/src/web-ui/app/lib/event-presentation.js +34 -0
- package/dist/src/web-ui/app/lib/reasoning-controls.js +6 -1
- package/dist/src/web-ui/app/lib/role-delegation-event.d.ts +18 -0
- package/dist/src/web-ui/app/lib/role-delegation-event.js +47 -0
- package/dist/src/web-ui/app/lib/role-return-event.d.ts +19 -0
- package/dist/src/web-ui/app/lib/role-return-event.js +36 -0
- package/dist/src/web-ui/app/lib/tool-activity-event.js +8 -6
- package/dist/src/web-ui/app/lib/tool-skill-activity-fields.js +50 -0
- package/dist/src/web-ui/app/lib/workspace-route.js +1 -0
- package/dist/src/web-ui/app/passive-learning-feature.js +2 -2
- package/dist/src/web-ui/app/services/runtime-web-client/automations.d.ts +9 -1
- package/dist/src/web-ui/app/services/runtime-web-client/automations.js +10 -2
- package/dist/src/web-ui/app/services/runtime-web-client/skills.js +23 -0
- package/dist/src/web-ui/app/services/runtime-web-client.js +2 -0
- package/dist/src/web-ui/app/skills-feature.js +36 -0
- package/dist/src/web-ui/app/styles/24-conversation-role-cards.css +58 -0
- package/dist/src/web-ui/app/styles/40-skills.css +34 -0
- package/dist/src/web-ui/app/styles/50-automations.css +24 -3
- package/dist/src/web-ui/app/styles/95-home-widgets.css +110 -0
- package/dist/src/web-ui/app/styles.css +2 -0
- package/dist/src/web-ui/app/ui-behavior.d.ts +1 -1
- package/dist/src/web-ui/app/ui-behavior.js +1 -0
- package/dist/src/web-ui/client-state/store.js +3 -2
- package/dist/src/web-ui/client-state/transaction-order.d.ts +2 -0
- package/dist/src/web-ui/client-state/transaction-order.js +18 -0
- package/dist/src/web-ui/local-runtime/api-router.d.ts +1 -0
- package/dist/src/web-ui/local-runtime/api-router.js +7 -0
- package/dist/src/web-ui/local-runtime/automation-routes.js +2 -1
- package/dist/src/web-ui/local-runtime/automation-run-page.d.ts +5 -0
- package/dist/src/web-ui/local-runtime/automation-run-page.js +26 -0
- package/dist/src/web-ui/local-runtime/skill-management-routes.d.ts +18 -0
- package/dist/src/web-ui/local-runtime/skill-management-routes.js +118 -0
- package/docs/configuration.md +8 -0
- package/docs/plugins.md +37 -32
- package/docs/runtime-public-contracts.md +37 -0
- package/examples/request-runner.config.example.json +3 -0
- package/package.json +1 -1
- package/plugins/capability-brief/plugin.json +1 -1
- package/plugins/code-outline/plugin.json +1 -1
- package/plugins/document-reader/plugin.json +1 -1
- package/plugins/exec/plugin.json +1 -1
- package/plugins/filesystem/plugin.json +1 -1
- package/plugins/json-inspector/plugin.json +1 -1
- package/plugins/local-search/plugin.json +1 -1
- package/plugins/memory/plugin.json +1 -1
- package/plugins/project-orientation/plugin.json +1 -1
- package/plugins/system/plugin.json +1 -1
- package/plugins/system-probe/plugin.json +1 -1
- package/plugins/web/plugin.json +1 -1
- package/plugins/web/skills/web_fetch_skill/SKILL.md +1 -2
- package/plugins/web/skills/web_search_skill/SKILL.md +3 -7
- package/src/runtime/README.md +96 -1
|
@@ -1,19 +1,23 @@
|
|
|
1
1
|
import { resolveMemoryRecallSteeringVersion } from "../../long-term-memory/recall-binding.js";
|
|
2
2
|
import { canOfferMemoryRecall } from "../../long-term-memory/recall-policy.js";
|
|
3
|
-
import { invokeStructuredModelStep, StructuredModelInvalidOutputError, } from "../../model/invoke-structured-step.js";
|
|
4
3
|
import { createModelStepCompactionController } from "../../context/model-step-compaction.js";
|
|
5
4
|
import { superCompactionFailureOwner } from "../../context/super-compaction-failure-owner.js";
|
|
6
5
|
import { createSessionMemoryAwareCompactionController } from "../../context/session-memory/index.js";
|
|
7
6
|
import { resolveRequestSteeringInbox, } from "../../request/request-steering.js";
|
|
8
7
|
import { SUPERVISOR_DECISION_MODEL_STEP, } from "./contracts.js";
|
|
9
|
-
import { traceSupervisorDecisionPhaseSuperseded, traceSupervisorModelCompleted, traceSupervisorModelFailed, traceSupervisorModelStarted, traceSupervisorWorkingDirectoryModelStarted, } from "./diagnostics.js";
|
|
10
8
|
import { buildSupervisorDecisionInput } from "./input.js";
|
|
11
9
|
import { buildSupervisorCapabilityBriefOptions } from "./capability-brief.js";
|
|
12
10
|
import { createSupervisorCapabilityBriefReadmissionController } from "./capability-brief-readmission.js";
|
|
13
|
-
import {
|
|
14
|
-
import { buildSupervisorWorkingDirectoryInput, mergeSupervisorWorkingDirectory,
|
|
11
|
+
import { createSupervisorArtifactPathsReadmissionController } from "./artifact-paths.js";
|
|
12
|
+
import { buildSupervisorWorkingDirectoryInput, mergeSupervisorWorkingDirectory, } from "./working-directory.js";
|
|
15
13
|
import { SUPERVISOR_RESPONSE_MODEL_STEP } from "../supervisor-response/contracts.js";
|
|
16
14
|
import { resolveCanonicalReviewerCompletionTargetText } from "../reviewer-decision/contracts.js";
|
|
15
|
+
import { createDecisionOutcome, runRoutingPhase, runWorkingDirectoryPhase, requiresWorkingDirectory, tracePhaseSuperseded } from "./decision-phases.js";
|
|
16
|
+
import { prepareSupervisorDecision } from "./preparation.js";
|
|
17
|
+
import { isSupervisorSkillLookup } from "./skill-selection.js";
|
|
18
|
+
import { assertBoundModelStepSteeringCurrent } from "../../model/model-step-steering.js";
|
|
19
|
+
import { canOfferSupervisorSkillAuthoring } from "../supervisor-skill-authoring/input.js";
|
|
20
|
+
import { runSupervisorSkillAuthoring } from "../supervisor-skill-authoring/run.js";
|
|
17
21
|
export async function runSupervisorDecision(request, options) {
|
|
18
22
|
const boundSteeringVersion = resolveMemoryRecallSteeringVersion(options.memoryRecallMessage, request.requestId, options.call.callId);
|
|
19
23
|
const baseDiagnostic = {
|
|
@@ -32,37 +36,9 @@ export async function runSupervisorDecision(request, options) {
|
|
|
32
36
|
const memoryRecallMessage = request.longTermMemory?.enabled
|
|
33
37
|
? options.memoryRecallMessage
|
|
34
38
|
: undefined;
|
|
35
|
-
const
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
recallCount: options.memoryRecallCount ?? 0,
|
|
39
|
-
maxRecallCallsPerRequest: request.memoryRecallLimit,
|
|
40
|
-
}),
|
|
41
|
-
...(memoryRecallMessage ? { memoryRecallMessage } : {}),
|
|
42
|
-
...buildSupervisorCapabilityBriefOptions(request, options),
|
|
43
|
-
toolResults: options.toolResults,
|
|
44
|
-
...(options.includeAcknowledgement === undefined
|
|
45
|
-
? {}
|
|
46
|
-
: { includeAcknowledgement: options.includeAcknowledgement }),
|
|
47
|
-
...(options.includeTitle === undefined
|
|
48
|
-
? {}
|
|
49
|
-
: { includeTitle: options.includeTitle }),
|
|
50
|
-
...(options.allowedRoleIds === undefined
|
|
51
|
-
? {}
|
|
52
|
-
: { allowedRoleIds: options.allowedRoleIds }),
|
|
53
|
-
...(options.resume === undefined ? {} : { resume: options.resume }),
|
|
54
|
-
...(options.workerCapabilityAffordances === undefined
|
|
55
|
-
? {}
|
|
56
|
-
: {
|
|
57
|
-
workerCapabilityAffordances: options.workerCapabilityAffordances,
|
|
58
|
-
}),
|
|
59
|
-
...(options.availableWorkerCapabilityCatalog === undefined
|
|
60
|
-
? {}
|
|
61
|
-
: {
|
|
62
|
-
availableWorkerCapabilityCatalog: options.availableWorkerCapabilityCatalog,
|
|
63
|
-
}),
|
|
64
|
-
diagnostic: routingDiagnostic,
|
|
65
|
-
});
|
|
39
|
+
const initialMemoryMessage = request.longTermMemory?.enabled
|
|
40
|
+
? options.initialMemoryMessage
|
|
41
|
+
: undefined;
|
|
66
42
|
const requestSteering = resolveRequestSteeringInbox(request.requestSteering);
|
|
67
43
|
const contextCompaction = createSessionMemoryAwareCompactionController(request, createModelStepCompactionController(request, {
|
|
68
44
|
consumer: SUPERVISOR_DECISION_MODEL_STEP,
|
|
@@ -89,23 +65,78 @@ export async function runSupervisorDecision(request, options) {
|
|
|
89
65
|
]),
|
|
90
66
|
}));
|
|
91
67
|
for (;;) {
|
|
68
|
+
const preparation = await prepareSupervisorDecision(request, {
|
|
69
|
+
diagnostic: baseDiagnostic,
|
|
70
|
+
includeAcknowledgement: options.resume === undefined && options.includeAcknowledgement === true,
|
|
71
|
+
includeTitle: options.resume === undefined && (options.includeTitle ?? request.shouldGenerateSessionTitle ?? false),
|
|
72
|
+
allowSkillReads: request.knowledgeSkillStore !== undefined && options.allowSkillReads !== false,
|
|
73
|
+
skillReadHead: options.skillReadHead,
|
|
74
|
+
boundSteeringVersion,
|
|
75
|
+
});
|
|
76
|
+
assertBoundModelStepSteeringCurrent(requestSteering, preparation.steeringVersion);
|
|
77
|
+
if (isSupervisorSkillLookup(preparation.selection)) {
|
|
78
|
+
return createDecisionOutcome({ ...preparation.selection, ...preparation.presentation }, preparation.steeringVersion);
|
|
79
|
+
}
|
|
80
|
+
const input = buildSupervisorDecisionInput(request, {
|
|
81
|
+
allowSkillAuthoring: canOfferSupervisorSkillAuthoring(request, options),
|
|
82
|
+
allowMemoryRecall: canOfferMemoryRecall({
|
|
83
|
+
enabled: request.longTermMemory?.enabled === true,
|
|
84
|
+
recallCount: options.memoryRecallCount ?? 0,
|
|
85
|
+
maxRecallCallsPerRequest: request.memoryRecallLimit,
|
|
86
|
+
}),
|
|
87
|
+
...(memoryRecallMessage ? { memoryRecallMessage } : {}),
|
|
88
|
+
...(initialMemoryMessage ? { initialMemoryMessage } : {}),
|
|
89
|
+
...buildSupervisorCapabilityBriefOptions(request, options),
|
|
90
|
+
toolResults: options.toolResults,
|
|
91
|
+
...(options.skillReadHead ? { skillReadHead: options.skillReadHead } : {}),
|
|
92
|
+
includeAcknowledgement: false,
|
|
93
|
+
includeTitle: false,
|
|
94
|
+
...(options.allowedRoleIds === undefined
|
|
95
|
+
? {}
|
|
96
|
+
: { allowedRoleIds: options.allowedRoleIds }),
|
|
97
|
+
...(options.resume === undefined ? {} : { resume: options.resume }),
|
|
98
|
+
...(options.workerCapabilityAffordances === undefined
|
|
99
|
+
? {}
|
|
100
|
+
: {
|
|
101
|
+
workerCapabilityAffordances: options.workerCapabilityAffordances,
|
|
102
|
+
}),
|
|
103
|
+
...(options.availableWorkerCapabilityCatalog === undefined
|
|
104
|
+
? {}
|
|
105
|
+
: {
|
|
106
|
+
availableWorkerCapabilityCatalog: options.availableWorkerCapabilityCatalog,
|
|
107
|
+
}),
|
|
108
|
+
diagnostic: routingDiagnostic,
|
|
109
|
+
});
|
|
92
110
|
const routing = await runRoutingPhase({
|
|
93
111
|
request,
|
|
94
112
|
requestSteering,
|
|
95
|
-
boundSteeringVersion,
|
|
113
|
+
boundSteeringVersion: preparation.steeringVersion,
|
|
96
114
|
input,
|
|
97
115
|
diagnostic: routingDiagnostic,
|
|
98
|
-
contextCompaction:
|
|
116
|
+
contextCompaction: createSupervisorArtifactPathsReadmissionController(request, {
|
|
117
|
+
projection: input.artifactPathsProjection,
|
|
118
|
+
format: input.format,
|
|
119
|
+
includeInstructions: true,
|
|
120
|
+
controller: createSupervisorCapabilityBriefReadmissionController(request, { input, controller: contextCompaction }),
|
|
121
|
+
}),
|
|
99
122
|
});
|
|
123
|
+
if (routing.decision.action === "author_skill") {
|
|
124
|
+
const authored = await runSupervisorSkillAuthoring(request, {
|
|
125
|
+
...options, diagnostic: baseDiagnostic,
|
|
126
|
+
boundSteeringVersion: routing.steeringVersion, contextCompaction,
|
|
127
|
+
});
|
|
128
|
+
return createDecisionOutcome({ ...authored.decision, ...preparation.presentation }, authored.steeringVersion);
|
|
129
|
+
}
|
|
100
130
|
if (routing.decision.action === "invoke_role" &&
|
|
101
131
|
routing.decision.roleId === "reviewer") {
|
|
102
132
|
return createDecisionOutcome(Object.freeze({
|
|
103
133
|
...routing.decision,
|
|
134
|
+
...preparation.presentation,
|
|
104
135
|
objective: resolveCanonicalReviewerCompletionTargetText(request.prompt),
|
|
105
136
|
}), routing.steeringVersion);
|
|
106
137
|
}
|
|
107
138
|
if (!requiresWorkingDirectory(routing.decision)) {
|
|
108
|
-
return createDecisionOutcome(routing.decision, routing.steeringVersion);
|
|
139
|
+
return createDecisionOutcome({ ...routing.decision, ...preparation.presentation }, routing.steeringVersion);
|
|
109
140
|
}
|
|
110
141
|
if (!requestSteering.isCurrent(routing.steeringVersion)) {
|
|
111
142
|
tracePhaseSuperseded({
|
|
@@ -128,7 +159,12 @@ export async function runSupervisorDecision(request, options) {
|
|
|
128
159
|
boundSteeringVersion,
|
|
129
160
|
frozenDecision: routing.decision,
|
|
130
161
|
diagnostic: workingDirectoryDiagnostic,
|
|
131
|
-
contextCompaction,
|
|
162
|
+
contextCompaction: createSupervisorArtifactPathsReadmissionController(request, {
|
|
163
|
+
projection: input.artifactPathsProjection,
|
|
164
|
+
format: workingDirectoryInput.format,
|
|
165
|
+
includeInstructions: false,
|
|
166
|
+
controller: contextCompaction,
|
|
167
|
+
}),
|
|
132
168
|
});
|
|
133
169
|
const merged = mergeSupervisorWorkingDirectory(routing.decision, workingDirectory.decision);
|
|
134
170
|
if (workingDirectory.steeringVersion !== routing.steeringVersion ||
|
|
@@ -142,124 +178,6 @@ export async function runSupervisorDecision(request, options) {
|
|
|
142
178
|
});
|
|
143
179
|
continue;
|
|
144
180
|
}
|
|
145
|
-
return createDecisionOutcome(merged, workingDirectory.steeringVersion);
|
|
181
|
+
return createDecisionOutcome({ ...merged, ...preparation.presentation }, workingDirectory.steeringVersion);
|
|
146
182
|
}
|
|
147
183
|
}
|
|
148
|
-
function createDecisionOutcome(decision, steeringVersion) {
|
|
149
|
-
return Object.freeze({ decision, steeringVersion });
|
|
150
|
-
}
|
|
151
|
-
async function runRoutingPhase(params) {
|
|
152
|
-
const startedAt = Date.now();
|
|
153
|
-
traceSupervisorModelStarted({
|
|
154
|
-
diagnostic: params.diagnostic,
|
|
155
|
-
allowMemoryRecall: params.input.allowMemoryRecall,
|
|
156
|
-
messageCount: params.input.context.messages.length,
|
|
157
|
-
messageCharacterCount: params.input.context.messages.reduce((total, message) => total + message.content.length, 0),
|
|
158
|
-
includeAcknowledgement: params.input.includeAcknowledgement,
|
|
159
|
-
includeTitle: params.input.includeTitle,
|
|
160
|
-
allowedRoleIds: params.input.allowedRoleIds,
|
|
161
|
-
availableWorkerCapabilityCatalog: params.input.availableWorkerCapabilityCatalog,
|
|
162
|
-
});
|
|
163
|
-
try {
|
|
164
|
-
const accepted = await invokeStructuredModelStep({
|
|
165
|
-
request: params.request,
|
|
166
|
-
boundSteeringVersion: params.boundSteeringVersion,
|
|
167
|
-
modelStep: params.input.modelStep,
|
|
168
|
-
format: params.input.format,
|
|
169
|
-
messages: params.input.context.messages,
|
|
170
|
-
contextCompaction: params.contextCompaction,
|
|
171
|
-
timeoutReason: "supervisor_decision_timeout",
|
|
172
|
-
invalidOutputReason: "invalid_supervisor_decision",
|
|
173
|
-
parse: (text) => captureAcceptedPhase(parseSupervisorDecisionOutput(text, {
|
|
174
|
-
includeAcknowledgement: params.input.includeAcknowledgement,
|
|
175
|
-
includeTitle: params.input.includeTitle,
|
|
176
|
-
includeResponseRecommendation: params.input.includeResponseRecommendation,
|
|
177
|
-
allowMemoryRecall: params.input.allowMemoryRecall,
|
|
178
|
-
allowedRoleIds: params.input.allowedRoleIds,
|
|
179
|
-
availableWorkerCapabilityCatalog: params.input.availableWorkerCapabilityCatalog,
|
|
180
|
-
diagnostic: params.diagnostic,
|
|
181
|
-
}), params.requestSteering),
|
|
182
|
-
});
|
|
183
|
-
traceSupervisorModelCompleted({
|
|
184
|
-
diagnostic: params.diagnostic,
|
|
185
|
-
decision: accepted.decision,
|
|
186
|
-
durationMs: Date.now() - startedAt,
|
|
187
|
-
});
|
|
188
|
-
return accepted;
|
|
189
|
-
}
|
|
190
|
-
catch (error) {
|
|
191
|
-
tracePhaseFailure(params.diagnostic, startedAt, error);
|
|
192
|
-
throw error;
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
async function runWorkingDirectoryPhase(params) {
|
|
196
|
-
const startedAt = Date.now();
|
|
197
|
-
traceSupervisorWorkingDirectoryModelStarted({
|
|
198
|
-
diagnostic: params.diagnostic,
|
|
199
|
-
messageCount: params.input.messages.length,
|
|
200
|
-
messageCharacterCount: params.input.messages.reduce((total, message) => total + message.content.length, 0),
|
|
201
|
-
frozenDecision: params.frozenDecision,
|
|
202
|
-
});
|
|
203
|
-
try {
|
|
204
|
-
const accepted = await invokeStructuredModelStep({
|
|
205
|
-
request: params.request,
|
|
206
|
-
boundSteeringVersion: params.boundSteeringVersion,
|
|
207
|
-
modelStep: params.input.modelStep,
|
|
208
|
-
format: params.input.format,
|
|
209
|
-
messages: params.input.messages,
|
|
210
|
-
contextCompaction: params.contextCompaction,
|
|
211
|
-
timeoutReason: "supervisor_decision_timeout",
|
|
212
|
-
invalidOutputReason: "invalid_supervisor_decision",
|
|
213
|
-
parse: (text) => captureAcceptedPhase(parseSupervisorWorkingDirectoryOutput(text, {
|
|
214
|
-
diagnostic: params.diagnostic,
|
|
215
|
-
}), params.requestSteering),
|
|
216
|
-
});
|
|
217
|
-
traceSupervisorModelCompleted({
|
|
218
|
-
diagnostic: params.diagnostic,
|
|
219
|
-
decision: mergeSupervisorWorkingDirectory(params.frozenDecision, accepted.decision),
|
|
220
|
-
durationMs: Date.now() - startedAt,
|
|
221
|
-
});
|
|
222
|
-
return accepted;
|
|
223
|
-
}
|
|
224
|
-
catch (error) {
|
|
225
|
-
tracePhaseFailure(params.diagnostic, startedAt, error);
|
|
226
|
-
throw error;
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
function captureAcceptedPhase(parsed, requestSteering) {
|
|
230
|
-
if (!parsed.ok) {
|
|
231
|
-
return parsed;
|
|
232
|
-
}
|
|
233
|
-
return Object.freeze({
|
|
234
|
-
ok: true,
|
|
235
|
-
decision: Object.freeze({
|
|
236
|
-
decision: parsed.decision,
|
|
237
|
-
steeringVersion: requestSteering.snapshot().version,
|
|
238
|
-
}),
|
|
239
|
-
});
|
|
240
|
-
}
|
|
241
|
-
function requiresWorkingDirectory(decision) {
|
|
242
|
-
return (decision.action === "invoke_role" &&
|
|
243
|
-
(decision.roleId === "planner" || decision.roleId === "worker"));
|
|
244
|
-
}
|
|
245
|
-
function tracePhaseFailure(diagnostic, startedAt, error) {
|
|
246
|
-
traceSupervisorModelFailed({
|
|
247
|
-
diagnostic,
|
|
248
|
-
durationMs: Date.now() - startedAt,
|
|
249
|
-
errorType: error instanceof Error && error.name ? error.name : typeof error,
|
|
250
|
-
invalidStructuredOutput: error instanceof StructuredModelInvalidOutputError,
|
|
251
|
-
});
|
|
252
|
-
}
|
|
253
|
-
function tracePhaseSuperseded(params) {
|
|
254
|
-
traceSupervisorDecisionPhaseSuperseded({
|
|
255
|
-
diagnostic: params.diagnostic,
|
|
256
|
-
routingSteeringVersion: params.routingSteeringVersion,
|
|
257
|
-
currentSteeringVersion: params.requestSteering.snapshot().version,
|
|
258
|
-
...(params.workingDirectorySteeringVersion === undefined
|
|
259
|
-
? {}
|
|
260
|
-
: {
|
|
261
|
-
workingDirectorySteeringVersion: params.workingDirectorySteeringVersion,
|
|
262
|
-
}),
|
|
263
|
-
checkpoint: params.checkpoint,
|
|
264
|
-
});
|
|
265
|
-
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { RoleCallLedgerHead } from "../../orchestration/role-calls/index.js";
|
|
2
|
+
import type { RequestExecutionScope } from "../../request/execution-scope.js";
|
|
3
|
+
import { type SupervisorDecisionDiagnosticContext } from "./contracts.js";
|
|
4
|
+
export declare function buildSupervisorSkillSelectionInput(request: RequestExecutionScope, options?: {
|
|
5
|
+
skillReadHead?: RoleCallLedgerHead;
|
|
6
|
+
diagnostic?: SupervisorDecisionDiagnosticContext;
|
|
7
|
+
}): {
|
|
8
|
+
format: import("../../../model-gateway/types.js").ModelGatewayJsonSchemaFormat;
|
|
9
|
+
context: Readonly<{
|
|
10
|
+
messages: import("../../../model-gateway/types.js").ChatMessage[];
|
|
11
|
+
selectedHistoryMessageIds: string[];
|
|
12
|
+
omittedHistoryMessageIds: string[];
|
|
13
|
+
budget: import("../../context/request-context-contracts.js").RequestContextBudgetEstimate & {
|
|
14
|
+
parts: import("../../context/request-context-contracts.js").RequestContextBudgetParts;
|
|
15
|
+
};
|
|
16
|
+
compaction: Readonly<{
|
|
17
|
+
applied: boolean;
|
|
18
|
+
compactedSourceRefs: readonly string[];
|
|
19
|
+
}>;
|
|
20
|
+
}>;
|
|
21
|
+
};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { isKnowledgeSkillStorageFailure } from "../../knowledge-skills/personal-contracts.js";
|
|
2
|
+
import { SUPERVISOR_DECISION_MODEL_STEP } from "./contracts.js";
|
|
3
|
+
import { buildSupervisorPreparationInput } from "./preparation-input.js";
|
|
4
|
+
import { createSupervisorSkillSelectionFormat, SUPERVISOR_SKILL_SELECTION_INSTRUCTIONS } from "./skill-selection.js";
|
|
5
|
+
export function buildSupervisorSkillSelectionInput(request, options = {}) {
|
|
6
|
+
const reads = options.skillReadHead?.state.skillReads ?? [];
|
|
7
|
+
const loadedIds = new Set(reads.flatMap((read) => read.operation === "read_skills" && read.result.outcome === "completed"
|
|
8
|
+
? read.result.skills.map((skill) => skill.skillId) : []));
|
|
9
|
+
const lastList = [...reads].reverse().find((read) => read.operation === "list_skills" && read.result.outcome === "completed");
|
|
10
|
+
const metadata = lastList?.result.outcome === "completed"
|
|
11
|
+
? lastList.result.skills : readCandidateMetadata(request);
|
|
12
|
+
return buildSupervisorPreparationInput(request, {
|
|
13
|
+
instructions: SUPERVISOR_SKILL_SELECTION_INSTRUCTIONS,
|
|
14
|
+
format: createSupervisorSkillSelectionFormat(),
|
|
15
|
+
diagnostic: options.diagnostic ?? { requestId: request.requestId, modelStep: SUPERVISOR_DECISION_MODEL_STEP, decisionPhase: "skill_selection" },
|
|
16
|
+
availableSkills: metadata.filter((skill) => !loadedIds.has(skill.skillId)),
|
|
17
|
+
expandedCatalog: lastList !== undefined,
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
function readCandidateMetadata(request) {
|
|
21
|
+
try {
|
|
22
|
+
return request.knowledgeSkillStore?.list() ?? [];
|
|
23
|
+
}
|
|
24
|
+
catch (error) {
|
|
25
|
+
if (isKnowledgeSkillStorageFailure(error))
|
|
26
|
+
return [];
|
|
27
|
+
throw error;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { ModelGatewayJsonSchemaFormat } from "../../../model-gateway/types.js";
|
|
2
|
+
import type { StructuredModelParseResult } from "../../model/invoke-structured-step.js";
|
|
3
|
+
import { type SkillReadDecision } from "../skill-read-decision.js";
|
|
4
|
+
type SupervisorSkillRead = Extract<SkillReadDecision, {
|
|
5
|
+
action: "read_skills";
|
|
6
|
+
}>;
|
|
7
|
+
export type SupervisorSkillSelection = SupervisorSkillRead | Readonly<{
|
|
8
|
+
action: "continue";
|
|
9
|
+
}>;
|
|
10
|
+
export declare function isSupervisorSkillLookup(selection: SkillReadDecision | Readonly<{
|
|
11
|
+
action: "continue";
|
|
12
|
+
}>): selection is SupervisorSkillRead;
|
|
13
|
+
export declare function createSupervisorSkillSelectionFormat(): ModelGatewayJsonSchemaFormat;
|
|
14
|
+
export declare const SUPERVISOR_SKILL_SELECTION_INSTRUCTIONS: string;
|
|
15
|
+
export declare function parseSupervisorSkillSelectionOutput(text: string): StructuredModelParseResult<SupervisorSkillSelection>;
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { createStructuredDecisionEnvelopeSchema, readStructuredDecisionEnvelope } from "../../model/structured-decision-envelope.js";
|
|
2
|
+
import { createSkillReadDecisionSchemas, parseSkillReadDecision } from "../skill-read-decision.js";
|
|
3
|
+
const READ_OPTIONS = Object.freeze({ acknowledgementMaxLength: 0, titleMaxLength: 0, allowSkillReads: true });
|
|
4
|
+
export function isSupervisorSkillLookup(selection) {
|
|
5
|
+
return selection.action === "read_skills";
|
|
6
|
+
}
|
|
7
|
+
export function createSupervisorSkillSelectionFormat() {
|
|
8
|
+
const [, readSchema] = createSkillReadDecisionSchemas(READ_OPTIONS);
|
|
9
|
+
return {
|
|
10
|
+
type: "json_schema", name: "supervisor_skill_selection", strict: true,
|
|
11
|
+
schema: createStructuredDecisionEnvelopeSchema([
|
|
12
|
+
{ type: "object", properties: { action: { type: "string", enum: ["continue"] } }, required: ["action"], additionalProperties: false },
|
|
13
|
+
readSchema,
|
|
14
|
+
]),
|
|
15
|
+
postValidatedSchemaConstraints: [{ keyword: "maxLength", path: "/properties/decision/anyOf/1/properties/skillIds/items/maxLength" }],
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
export const SUPERVISOR_SKILL_SELECTION_INSTRUCTIONS = [
|
|
19
|
+
"Match the user's request to Available Skills. Your only task is selecting relevant guidance; return only the supplied JSON shape.",
|
|
20
|
+
"Select a Skill only when its description is relevant to the requested task, resources, workflow or answer style. Do not select Skills merely because they exist. No relevant match: choose continue. Greetings and standalone factual questions normally need no Skill.",
|
|
21
|
+
"For a relevant match, choose read_skills with up to eight exact IDs or full names in skillIds. Percent-decode displayed IDs. A user request to create or edit a Skill matches Skill Creator.",
|
|
22
|
+
"Skills already read successfully for this request are omitted; do not request them again. Metadata is not document content and grants no authority or completion evidence.",
|
|
23
|
+
"The available catalog is already supplied. Choose read_skills from the displayed metadata or continue. Reading is optional; do not invent a match.",
|
|
24
|
+
].join("\n");
|
|
25
|
+
export function parseSupervisorSkillSelectionOutput(text) {
|
|
26
|
+
let record;
|
|
27
|
+
try {
|
|
28
|
+
record = readStructuredDecisionEnvelope(JSON.parse(text));
|
|
29
|
+
}
|
|
30
|
+
catch { /* Rejected below. */ }
|
|
31
|
+
if (!record)
|
|
32
|
+
return { ok: false, stage: "json_envelope", issues: [{ code: "skill_selection_envelope_invalid", path: "decision", message: "Return one decision object." }] };
|
|
33
|
+
if (isContinueSelection(record))
|
|
34
|
+
return { ok: true, decision: Object.freeze({ action: "continue" }) };
|
|
35
|
+
const parsed = parseSkillReadDecision(record, READ_OPTIONS);
|
|
36
|
+
if (!parsed.ok)
|
|
37
|
+
return parsed;
|
|
38
|
+
if (!isSupervisorSkillLookup(parsed.decision))
|
|
39
|
+
return { ok: false, stage: "domain_parser", issues: [{ code: "skill_selection_action_invalid", path: "decision.action", message: "Choose read_skills or continue." }] };
|
|
40
|
+
return { ok: true, decision: parsed.decision };
|
|
41
|
+
}
|
|
42
|
+
function isContinueSelection(record) {
|
|
43
|
+
return record.action === "continue" && Object.keys(record).length === 1;
|
|
44
|
+
}
|
|
@@ -3,6 +3,7 @@ import type { ChatMessage } from "../../../model-gateway/types.js";
|
|
|
3
3
|
import { type RequestToolResultsView } from "../../context/request-tool-results.js";
|
|
4
4
|
import type { RequestExecutionSeed } from "../../request/contracts.js";
|
|
5
5
|
import { SUPERVISOR_RESPONSE_MODEL_STEP, type SupervisorResponseCallIdentity, type SupervisorResponseResumeContext } from "./contracts.js";
|
|
6
|
+
import type { RoleCallLedgerHead } from "../../orchestration/role-calls/index.js";
|
|
6
7
|
export type SupervisorResponseInputRequest = Pick<RequestExecutionSeed, "requestId" | "prompt" | "historyMessages" | "sessionKind" | "runnerConfig" | "attachments" | "agentMode" | "modelPreference" | "modelPolicy" | "scheduledExecution" | "automationOutputContract"> & Partial<Pick<RequestExecutionSeed, "onEvent" | "sessionMemory">>;
|
|
7
8
|
export declare function buildSupervisorResponseInput(request: SupervisorResponseInputRequest, options: SupervisorResponseInputOptions): {
|
|
8
9
|
context: RequestContextProjection;
|
|
@@ -14,8 +15,10 @@ export declare function buildSupervisorMemoryAuthoringInput(request: SupervisorR
|
|
|
14
15
|
};
|
|
15
16
|
type SupervisorResponseInputOptions = Readonly<{
|
|
16
17
|
responseRecommendation?: string;
|
|
18
|
+
responseRecommendationOrigin?: "skill_authoring_no_save";
|
|
17
19
|
call: SupervisorResponseCallIdentity;
|
|
18
20
|
toolResults: RequestToolResultsView;
|
|
21
|
+
skillReadHead?: RoleCallLedgerHead;
|
|
19
22
|
resume?: SupervisorResponseResumeContext;
|
|
20
23
|
longTermMemoryMessage?: ChatMessage;
|
|
21
24
|
memoryAuthoringMessage?: ChatMessage;
|
|
@@ -11,6 +11,7 @@ import { createSupervisorMemoryCandidatesFormat } from "./memory-authoring.js";
|
|
|
11
11
|
import { buildSupervisorResponseRecommendationMessage } from "./response-recommendation.js";
|
|
12
12
|
import { buildSupervisorMemoryAuthoringInstructions, buildSupervisorResponseInstructions, } from "./prompt.js";
|
|
13
13
|
import { automationResponseFormat } from "../../request/automation-output-contract.js";
|
|
14
|
+
import { buildCoreSkillReadContextMessages } from "../../context/core-skill-read-context.js";
|
|
14
15
|
export function buildSupervisorResponseInput(request, options) {
|
|
15
16
|
const responseRecommendationMessage = buildSupervisorResponseRecommendationMessage(options);
|
|
16
17
|
const scheduledExecution = projectScheduledExecutionContext(request, [buildSupervisorResponseInstructions({
|
|
@@ -24,6 +25,10 @@ export function buildSupervisorResponseInput(request, options) {
|
|
|
24
25
|
: [])].join("\n"), "response");
|
|
25
26
|
return buildSupervisorInput(request, options, {
|
|
26
27
|
...scheduledExecution,
|
|
28
|
+
referenceMessages: [
|
|
29
|
+
...(scheduledExecution.referenceMessages ?? []),
|
|
30
|
+
...buildCoreSkillReadContextMessages(options.skillReadHead),
|
|
31
|
+
],
|
|
27
32
|
...(request.automationOutputContract
|
|
28
33
|
? { format: automationResponseFormat(request.automationOutputContract) }
|
|
29
34
|
: {}),
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { SUPER_SKILL_GUIDANCE_INSTRUCTION } from "../supervisor-skill-instructions.js";
|
|
1
2
|
import { CONVERSATION_MEMORY_AUTHORING_INSTRUCTIONS } from "../../long-term-memory/conversation-authoring/prompt.js";
|
|
2
3
|
export function buildSupervisorResponseInstructions(params) {
|
|
3
4
|
return [
|
|
@@ -31,6 +32,7 @@ export function buildSupervisorResponseInstructions(params) {
|
|
|
31
32
|
"Use each capsule result only for its exact reported outcome, observed effect, and summary. It does not by itself prove completion of the delegated work or of the user request.",
|
|
32
33
|
]
|
|
33
34
|
: []),
|
|
35
|
+
SUPER_SKILL_GUIDANCE_INSTRUCTION,
|
|
34
36
|
"Do not mention internal role names, call identifiers, runtime contracts, or orchestration unless the user explicitly asks about them.",
|
|
35
37
|
].join("\n");
|
|
36
38
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { RoleCallLedgerHead } from "../../orchestration/role-calls/index.js";
|
|
1
2
|
import type { ChatMessage } from "../../../model-gateway/types.js";
|
|
2
3
|
import type { RequestToolResultsView } from "../../context/request-tool-results.js";
|
|
3
4
|
import type { SupervisorResponseCallIdentity, SupervisorResponseResumeContext } from "./contracts.js";
|
|
@@ -5,6 +6,8 @@ export declare const SUPERVISOR_RESPONSE_RECOMMENDATION_KIND = "runtime_supervis
|
|
|
5
6
|
export declare function buildSupervisorResponseRecommendationMessage(options: Readonly<{
|
|
6
7
|
call: SupervisorResponseCallIdentity;
|
|
7
8
|
responseRecommendation?: string;
|
|
9
|
+
responseRecommendationOrigin?: "skill_authoring_no_save";
|
|
8
10
|
resume?: SupervisorResponseResumeContext;
|
|
9
11
|
toolResults: RequestToolResultsView;
|
|
12
|
+
skillReadHead?: RoleCallLedgerHead;
|
|
10
13
|
}>): ChatMessage | undefined;
|
|
@@ -6,20 +6,40 @@ export function buildSupervisorResponseRecommendationMessage(options) {
|
|
|
6
6
|
if (!isSupervisorResponseRecommendation(options.responseRecommendation)) {
|
|
7
7
|
throw new Error("supervisor_response_recommendation_invalid");
|
|
8
8
|
}
|
|
9
|
-
if (!
|
|
9
|
+
if (!canProjectSupervisorResponseRecommendation(options)) {
|
|
10
10
|
throw new Error("supervisor_response_recommendation_scope_invalid");
|
|
11
11
|
}
|
|
12
|
+
const { limitations, ...semantics } = supervisorResponseRecommendationSemantics(options.responseRecommendationOrigin);
|
|
12
13
|
return Object.freeze({
|
|
13
14
|
role: "system",
|
|
14
15
|
content: JSON.stringify({
|
|
15
16
|
kind: SUPERVISOR_RESPONSE_RECOMMENDATION_KIND,
|
|
16
17
|
authority: "accepted_supervisor_decision",
|
|
17
|
-
|
|
18
|
-
applicability: "current_direct_response_only",
|
|
18
|
+
...semantics,
|
|
19
19
|
callId: options.call.callId,
|
|
20
20
|
invocationAttempt: options.call.invocationAttempt,
|
|
21
21
|
responseRecommendation: options.responseRecommendation,
|
|
22
|
-
limitations
|
|
22
|
+
limitations,
|
|
23
23
|
}),
|
|
24
24
|
});
|
|
25
25
|
}
|
|
26
|
+
function canProjectSupervisorResponseRecommendation(options) {
|
|
27
|
+
if (options.responseRecommendationOrigin === "skill_authoring_no_save")
|
|
28
|
+
return true;
|
|
29
|
+
return canRecommendDirectSupervisorResponse(options);
|
|
30
|
+
}
|
|
31
|
+
function supervisorResponseRecommendationSemantics(origin) {
|
|
32
|
+
if (origin === "skill_authoring_no_save") {
|
|
33
|
+
return {
|
|
34
|
+
purpose: "explain_skill_authoring_no_save",
|
|
35
|
+
applicability: "current_response_after_skill_authoring_no_save",
|
|
36
|
+
outcome: "no_save",
|
|
37
|
+
limitations: "The accepted Skill authoring flow did not produce a save. Use the supplied reason to explain why, subject to the current request and supplied facts. It adds no user intent, execution authority, or completion evidence. This decision does not establish a save; report any earlier save only from its confirmed write result. Do not expose internal routing details.",
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
return {
|
|
41
|
+
purpose: "guide_direct_response_content",
|
|
42
|
+
applicability: "current_direct_response_only",
|
|
43
|
+
limitations: "Internal answer-content recommendation from the accepted Supervisor decision, not new user intent, execution authority, or completion evidence. Use its relevant substance to compose the answer, subject to the current request and supplied facts. Do not expose the recommendation's internal framing.",
|
|
44
|
+
};
|
|
45
|
+
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { ChatMessage } from "../../../model-gateway/types.js";
|
|
2
|
+
import type { RoleCallLedgerHead } from "../../orchestration/role-calls/index.js";
|
|
2
3
|
import type { RequestToolResultsView } from "../../context/request-tool-results.js";
|
|
3
4
|
import type { RequestExecutionScope } from "../../request/execution-scope.js";
|
|
4
5
|
import { type SupervisorResponseCallIdentity, type SupervisorResponseResumeContext } from "./contracts.js";
|
|
@@ -6,16 +7,22 @@ import { type RequestSteeringSnapshot } from "../../request/request-steering.js"
|
|
|
6
7
|
import type { RootAuthoredResponse } from "../../long-term-memory/contracts.js";
|
|
7
8
|
export declare function runSupervisorResponse(request: RequestExecutionScope, options: Readonly<{
|
|
8
9
|
responseRecommendation?: string;
|
|
10
|
+
responseRecommendationOrigin?: "skill_authoring_no_save";
|
|
9
11
|
memoryRecallMessage?: ChatMessage;
|
|
12
|
+
initialMemoryMessage?: ChatMessage;
|
|
10
13
|
call: SupervisorResponseCallIdentity;
|
|
11
14
|
toolResults: RequestToolResultsView;
|
|
15
|
+
skillReadHead?: RoleCallLedgerHead;
|
|
12
16
|
resume?: SupervisorResponseResumeContext;
|
|
13
17
|
}>): Promise<string>;
|
|
14
18
|
export declare function runSupervisorAuthoredResponse(request: RequestExecutionScope, options: Readonly<{
|
|
15
19
|
responseRecommendation?: string;
|
|
20
|
+
responseRecommendationOrigin?: "skill_authoring_no_save";
|
|
16
21
|
memoryRecallMessage?: ChatMessage;
|
|
22
|
+
initialMemoryMessage?: ChatMessage;
|
|
17
23
|
call: SupervisorResponseCallIdentity;
|
|
18
24
|
toolResults: RequestToolResultsView;
|
|
25
|
+
skillReadHead?: RoleCallLedgerHead;
|
|
19
26
|
resume?: SupervisorResponseResumeContext;
|
|
20
27
|
steeringSnapshot?: RequestSteeringSnapshot;
|
|
21
28
|
}>): Promise<RootAuthoredResponse>;
|
|
@@ -9,7 +9,6 @@ import { buildSupervisorMemoryAuthoringInput, buildSupervisorResponseInput, } fr
|
|
|
9
9
|
import { buildSupervisorResponseRepairHint } from "./prompt.js";
|
|
10
10
|
import { SUPERVISOR_DECISION_MODEL_STEP } from "../supervisor-decision/contracts.js";
|
|
11
11
|
import { resolveRequestSteeringInbox, } from "../../request/request-steering.js";
|
|
12
|
-
import { retrieveResponseLongTermMemory } from "../../long-term-memory/response-context.js";
|
|
13
12
|
import { authorSupervisorMemoryCandidates } from "./memory-authoring.js";
|
|
14
13
|
import { canAuthorConversationMemory, prepareConversationMemoryAuthoring, } from "../../long-term-memory/conversation-authoring/context.js";
|
|
15
14
|
import { assertBoundModelStepSteeringCurrent, isModelStepSteeringSuperseded, } from "../../model/model-step-steering.js";
|
|
@@ -32,11 +31,9 @@ export async function runSupervisorAuthoredResponse(request, options) {
|
|
|
32
31
|
? options.steeringSnapshot?.version
|
|
33
32
|
: undefined);
|
|
34
33
|
assertBoundModelStepSteeringCurrent(requestSteering, boundSteeringVersion);
|
|
35
|
-
const memoryMessage =
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
: undefined);
|
|
39
|
-
assertBoundModelStepSteeringCurrent(requestSteering, boundSteeringVersion);
|
|
34
|
+
const memoryMessage = memoryEnabled
|
|
35
|
+
? options.memoryRecallMessage ?? options.initialMemoryMessage
|
|
36
|
+
: undefined;
|
|
40
37
|
const inputOptions = {
|
|
41
38
|
...options,
|
|
42
39
|
...(memoryMessage ? { longTermMemoryMessage: memoryMessage } : {}),
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { ModelGatewayJsonSchemaFormat } from "../../../model-gateway/types.js";
|
|
2
|
+
import type { KnowledgeSkillMetadata } from "../../knowledge-skills/store.js";
|
|
3
|
+
import type { StructuredModelParseResult } from "../../model/invoke-structured-step.js";
|
|
4
|
+
export type SupervisorSkillAuthoringSelection = Readonly<{
|
|
5
|
+
action: "create_skill";
|
|
6
|
+
name: string;
|
|
7
|
+
description: string;
|
|
8
|
+
}> | Readonly<{
|
|
9
|
+
action: "update_skill";
|
|
10
|
+
skillId: string;
|
|
11
|
+
name?: string;
|
|
12
|
+
description?: string;
|
|
13
|
+
}> | Readonly<{
|
|
14
|
+
action: "no_save";
|
|
15
|
+
reason: string;
|
|
16
|
+
}>;
|
|
17
|
+
export type SupervisorSkillWriteSelection = Exclude<SupervisorSkillAuthoringSelection, {
|
|
18
|
+
action: "no_save";
|
|
19
|
+
}>;
|
|
20
|
+
export type SupervisorSkillAuthoringOptions = Readonly<{
|
|
21
|
+
writeOperationIds: readonly string[];
|
|
22
|
+
personalSkills: readonly KnowledgeSkillMetadata[];
|
|
23
|
+
}>;
|
|
24
|
+
export declare const SUPERVISOR_SKILL_NO_SAVE_REASON_MAX_LENGTH = 300;
|
|
25
|
+
export declare const SUPERVISOR_SKILL_AUTHORING_ROUTE_SCHEMA: {
|
|
26
|
+
type: string;
|
|
27
|
+
properties: {
|
|
28
|
+
action: {
|
|
29
|
+
type: string;
|
|
30
|
+
enum: string[];
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
required: string[];
|
|
34
|
+
additionalProperties: boolean;
|
|
35
|
+
};
|
|
36
|
+
export declare function isSupervisorSkillWriteSelection(decision: Readonly<{
|
|
37
|
+
action: string;
|
|
38
|
+
}>): decision is SupervisorSkillWriteSelection;
|
|
39
|
+
export declare function parseSupervisorSkillAuthoringRoute(record: Readonly<Record<string, unknown>>, allowed: boolean): StructuredModelParseResult<Readonly<{
|
|
40
|
+
action: "author_skill";
|
|
41
|
+
}>>;
|
|
42
|
+
export declare function createSupervisorSkillAuthoringFormat(options: SupervisorSkillAuthoringOptions): ModelGatewayJsonSchemaFormat;
|
|
43
|
+
export declare function parseSupervisorSkillAuthoringOutput(text: string, options: SupervisorSkillAuthoringOptions): StructuredModelParseResult<SupervisorSkillAuthoringSelection>;
|