@pellux/goodvibes-sdk 0.37.2 → 1.0.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/dist/contracts/artifacts/operator-contract.json +3171 -929
- package/dist/daemon.d.ts +2 -0
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +4 -0
- package/dist/events/communication.d.ts +21 -1
- package/dist/events/communication.d.ts.map +1 -1
- package/dist/events/surfaces.d.ts +25 -3
- package/dist/events/surfaces.d.ts.map +1 -1
- package/dist/events/surfaces.js +22 -1
- package/dist/events/workflows.d.ts +7 -6
- package/dist/events/workflows.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/platform/agents/archetypes.d.ts.map +1 -1
- package/dist/platform/agents/archetypes.js +7 -0
- package/dist/platform/agents/index.d.ts +1 -0
- package/dist/platform/agents/index.d.ts.map +1 -1
- package/dist/platform/agents/index.js +1 -0
- package/dist/platform/agents/message-bus-core.d.ts +7 -0
- package/dist/platform/agents/message-bus-core.d.ts.map +1 -1
- package/dist/platform/agents/message-bus-core.js +2 -1
- package/dist/platform/agents/orchestrator-runner.d.ts +50 -1
- package/dist/platform/agents/orchestrator-runner.d.ts.map +1 -1
- package/dist/platform/agents/orchestrator-runner.js +172 -7
- package/dist/platform/agents/orchestrator.d.ts +78 -6
- package/dist/platform/agents/orchestrator.d.ts.map +1 -1
- package/dist/platform/agents/orchestrator.js +95 -18
- package/dist/platform/agents/planner-decomposition-runner.d.ts +38 -0
- package/dist/platform/agents/planner-decomposition-runner.d.ts.map +1 -0
- package/dist/platform/agents/planner-decomposition-runner.js +113 -0
- package/dist/platform/agents/turn-knowledge-injection.d.ts +192 -0
- package/dist/platform/agents/turn-knowledge-injection.d.ts.map +1 -0
- package/dist/platform/agents/turn-knowledge-injection.js +269 -0
- package/dist/platform/agents/worktree.d.ts +126 -8
- package/dist/platform/agents/worktree.d.ts.map +1 -1
- package/dist/platform/agents/worktree.js +240 -19
- package/dist/platform/agents/wrfc-controller.d.ts +46 -0
- package/dist/platform/agents/wrfc-controller.d.ts.map +1 -1
- package/dist/platform/agents/wrfc-controller.js +213 -32
- package/dist/platform/agents/wrfc-gate-runtime.d.ts +9 -0
- package/dist/platform/agents/wrfc-gate-runtime.d.ts.map +1 -1
- package/dist/platform/agents/wrfc-gate-runtime.js +7 -3
- package/dist/platform/agents/wrfc-gates.d.ts +1 -1
- package/dist/platform/agents/wrfc-gates.d.ts.map +1 -1
- package/dist/platform/agents/wrfc-gates.js +7 -1
- package/dist/platform/agents/wrfc-types.d.ts +23 -3
- package/dist/platform/agents/wrfc-types.d.ts.map +1 -1
- package/dist/platform/automation/types.d.ts +9 -1
- package/dist/platform/automation/types.d.ts.map +1 -1
- package/dist/platform/calendar/calendar-api-shared.d.ts +25 -0
- package/dist/platform/calendar/calendar-api-shared.d.ts.map +1 -0
- package/dist/platform/calendar/calendar-api-shared.js +100 -0
- package/dist/platform/calendar/calendar-connector.d.ts +79 -0
- package/dist/platform/calendar/calendar-connector.d.ts.map +1 -0
- package/dist/platform/calendar/calendar-connector.js +155 -0
- package/dist/platform/calendar/google-calendar-api.d.ts +25 -0
- package/dist/platform/calendar/google-calendar-api.d.ts.map +1 -0
- package/dist/platform/calendar/google-calendar-api.js +89 -0
- package/dist/platform/calendar/http-fetch-adapter.d.ts +25 -0
- package/dist/platform/calendar/http-fetch-adapter.d.ts.map +1 -0
- package/dist/platform/calendar/http-fetch-adapter.js +25 -0
- package/dist/platform/calendar/ics-parser.d.ts +35 -0
- package/dist/platform/calendar/ics-parser.d.ts.map +1 -0
- package/dist/platform/calendar/ics-parser.js +236 -0
- package/dist/platform/calendar/index.d.ts +41 -0
- package/dist/platform/calendar/index.d.ts.map +1 -0
- package/dist/platform/calendar/index.js +49 -0
- package/dist/platform/calendar/merged-calendar-model.d.ts +67 -0
- package/dist/platform/calendar/merged-calendar-model.d.ts.map +1 -0
- package/dist/platform/calendar/merged-calendar-model.js +181 -0
- package/dist/platform/calendar/microsoft-graph-api.d.ts +25 -0
- package/dist/platform/calendar/microsoft-graph-api.d.ts.map +1 -0
- package/dist/platform/calendar/microsoft-graph-api.js +95 -0
- package/dist/platform/calendar/oauth-flow.d.ts +62 -0
- package/dist/platform/calendar/oauth-flow.d.ts.map +1 -0
- package/dist/platform/calendar/oauth-flow.js +305 -0
- package/dist/platform/calendar/oauth-providers.d.ts +43 -0
- package/dist/platform/calendar/oauth-providers.d.ts.map +1 -0
- package/dist/platform/calendar/oauth-providers.js +120 -0
- package/dist/platform/calendar/oauth-token-store.d.ts +72 -0
- package/dist/platform/calendar/oauth-token-store.d.ts.map +1 -0
- package/dist/platform/calendar/oauth-token-store.js +189 -0
- package/dist/platform/calendar/oauth-types.d.ts +274 -0
- package/dist/platform/calendar/oauth-types.d.ts.map +1 -0
- package/dist/platform/calendar/oauth-types.js +22 -0
- package/dist/platform/calendar/rrule.d.ts +39 -0
- package/dist/platform/calendar/rrule.d.ts.map +1 -0
- package/dist/platform/calendar/rrule.js +261 -0
- package/dist/platform/calendar/subscription-store.d.ts +118 -0
- package/dist/platform/calendar/subscription-store.d.ts.map +1 -0
- package/dist/platform/calendar/subscription-store.js +293 -0
- package/dist/platform/calendar/types.d.ts +170 -0
- package/dist/platform/calendar/types.d.ts.map +1 -0
- package/dist/platform/calendar/types.js +21 -0
- package/dist/platform/companion/companion-chat-attachments.d.ts +29 -0
- package/dist/platform/companion/companion-chat-attachments.d.ts.map +1 -0
- package/dist/platform/companion/companion-chat-attachments.js +121 -0
- package/dist/platform/companion/companion-chat-broker-bridge.d.ts +40 -0
- package/dist/platform/companion/companion-chat-broker-bridge.d.ts.map +1 -0
- package/dist/platform/companion/companion-chat-broker-bridge.js +14 -0
- package/dist/platform/companion/companion-chat-broker-sync.d.ts +38 -0
- package/dist/platform/companion/companion-chat-broker-sync.d.ts.map +1 -0
- package/dist/platform/companion/companion-chat-broker-sync.js +80 -0
- package/dist/platform/companion/companion-chat-gc.d.ts +63 -0
- package/dist/platform/companion/companion-chat-gc.d.ts.map +1 -0
- package/dist/platform/companion/companion-chat-gc.js +38 -0
- package/dist/platform/companion/companion-chat-manager.d.ts +67 -20
- package/dist/platform/companion/companion-chat-manager.d.ts.map +1 -1
- package/dist/platform/companion/companion-chat-manager.js +130 -144
- package/dist/platform/companion/companion-chat-persistence.d.ts +9 -1
- package/dist/platform/companion/companion-chat-persistence.d.ts.map +1 -1
- package/dist/platform/companion/companion-chat-persistence.js +10 -2
- package/dist/platform/companion/companion-chat-routes.d.ts +2 -1
- package/dist/platform/companion/companion-chat-routes.d.ts.map +1 -1
- package/dist/platform/companion/companion-chat-routes.js +37 -4
- package/dist/platform/config/credential-status.d.ts +28 -0
- package/dist/platform/config/credential-status.d.ts.map +1 -0
- package/dist/platform/config/credential-status.js +75 -0
- package/dist/platform/config/index.d.ts +25 -0
- package/dist/platform/config/index.d.ts.map +1 -1
- package/dist/platform/config/index.js +18 -0
- package/dist/platform/config/manager.d.ts +18 -0
- package/dist/platform/config/manager.d.ts.map +1 -1
- package/dist/platform/config/manager.js +36 -2
- package/dist/platform/config/migrations.d.ts +48 -0
- package/dist/platform/config/migrations.d.ts.map +1 -0
- package/dist/platform/config/migrations.js +54 -0
- package/dist/platform/config/schema-domain-core.d.ts +10 -1
- package/dist/platform/config/schema-domain-core.d.ts.map +1 -1
- package/dist/platform/config/schema-domain-core.js +46 -3
- package/dist/platform/config/schema-types.d.ts +13 -7
- package/dist/platform/config/schema-types.d.ts.map +1 -1
- package/dist/platform/config/schema.d.ts.map +1 -1
- package/dist/platform/config/schema.js +2 -0
- package/dist/platform/control-plane/approval-broker.d.ts +11 -0
- package/dist/platform/control-plane/approval-broker.d.ts.map +1 -1
- package/dist/platform/control-plane/approval-broker.js +17 -1
- package/dist/platform/control-plane/approval-hunk-apply.d.ts +77 -0
- package/dist/platform/control-plane/approval-hunk-apply.d.ts.map +1 -0
- package/dist/platform/control-plane/approval-hunk-apply.js +80 -0
- package/dist/platform/control-plane/gateway-disabled-response.d.ts +20 -0
- package/dist/platform/control-plane/gateway-disabled-response.d.ts.map +1 -0
- package/dist/platform/control-plane/gateway-disabled-response.js +24 -0
- package/dist/platform/control-plane/gateway-scope-enforcement.d.ts +68 -0
- package/dist/platform/control-plane/gateway-scope-enforcement.d.ts.map +1 -0
- package/dist/platform/control-plane/gateway-scope-enforcement.js +91 -0
- package/dist/platform/control-plane/gateway-utils.d.ts +17 -0
- package/dist/platform/control-plane/gateway-utils.d.ts.map +1 -1
- package/dist/platform/control-plane/gateway-utils.js +30 -0
- package/dist/platform/control-plane/gateway.d.ts +12 -2
- package/dist/platform/control-plane/gateway.d.ts.map +1 -1
- package/dist/platform/control-plane/gateway.js +27 -31
- package/dist/platform/control-plane/index.d.ts +6 -1
- package/dist/platform/control-plane/index.d.ts.map +1 -1
- package/dist/platform/control-plane/index.js +4 -0
- package/dist/platform/control-plane/invoke-input-validation.d.ts +56 -0
- package/dist/platform/control-plane/invoke-input-validation.d.ts.map +1 -0
- package/dist/platform/control-plane/invoke-input-validation.js +163 -0
- package/dist/platform/control-plane/method-catalog-admin.d.ts.map +1 -1
- package/dist/platform/control-plane/method-catalog-admin.js +12 -1
- package/dist/platform/control-plane/method-catalog-calendar.d.ts +16 -0
- package/dist/platform/control-plane/method-catalog-calendar.d.ts.map +1 -1
- package/dist/platform/control-plane/method-catalog-calendar.js +21 -0
- package/dist/platform/control-plane/method-catalog-channels.d.ts.map +1 -1
- package/dist/platform/control-plane/method-catalog-channels.js +32 -3
- package/dist/platform/control-plane/method-catalog-control-automation.d.ts.map +1 -1
- package/dist/platform/control-plane/method-catalog-control-automation.js +19 -34
- package/dist/platform/control-plane/method-catalog-control-companion.d.ts +15 -0
- package/dist/platform/control-plane/method-catalog-control-companion.d.ts.map +1 -0
- package/dist/platform/control-plane/method-catalog-control-companion.js +133 -0
- package/dist/platform/control-plane/method-catalog-control-core.d.ts.map +1 -1
- package/dist/platform/control-plane/method-catalog-control-core.js +104 -122
- package/dist/platform/control-plane/method-catalog-control.d.ts.map +1 -1
- package/dist/platform/control-plane/method-catalog-control.js +4 -0
- package/dist/platform/control-plane/method-catalog-email.d.ts +17 -0
- package/dist/platform/control-plane/method-catalog-email.d.ts.map +1 -1
- package/dist/platform/control-plane/method-catalog-email.js +21 -0
- package/dist/platform/control-plane/method-catalog-events.d.ts +28 -0
- package/dist/platform/control-plane/method-catalog-events.d.ts.map +1 -1
- package/dist/platform/control-plane/method-catalog-events.js +74 -1
- package/dist/platform/control-plane/method-catalog-fleet.d.ts +24 -0
- package/dist/platform/control-plane/method-catalog-fleet.d.ts.map +1 -0
- package/dist/platform/control-plane/method-catalog-fleet.js +65 -0
- package/dist/platform/control-plane/method-catalog-route-reconcile.d.ts +84 -0
- package/dist/platform/control-plane/method-catalog-route-reconcile.d.ts.map +1 -0
- package/dist/platform/control-plane/method-catalog-route-reconcile.js +103 -0
- package/dist/platform/control-plane/method-catalog-shared.d.ts +29 -0
- package/dist/platform/control-plane/method-catalog-shared.d.ts.map +1 -1
- package/dist/platform/control-plane/method-catalog.d.ts +9 -0
- package/dist/platform/control-plane/method-catalog.d.ts.map +1 -1
- package/dist/platform/control-plane/method-catalog.js +32 -3
- package/dist/platform/control-plane/operator-contract-schemas-admin.d.ts +8 -0
- package/dist/platform/control-plane/operator-contract-schemas-admin.d.ts.map +1 -1
- package/dist/platform/control-plane/operator-contract-schemas-admin.js +22 -1
- package/dist/platform/control-plane/operator-contract-schemas-fleet.d.ts +18 -0
- package/dist/platform/control-plane/operator-contract-schemas-fleet.d.ts.map +1 -0
- package/dist/platform/control-plane/operator-contract-schemas-fleet.js +182 -0
- package/dist/platform/control-plane/operator-contract-schemas-permissions.d.ts.map +1 -1
- package/dist/platform/control-plane/operator-contract-schemas-permissions.js +5 -0
- package/dist/platform/control-plane/operator-contract-schemas-runtime.d.ts +29 -0
- package/dist/platform/control-plane/operator-contract-schemas-runtime.d.ts.map +1 -1
- package/dist/platform/control-plane/operator-contract-schemas-runtime.js +57 -3
- package/dist/platform/control-plane/operator-contract-schemas.d.ts +1 -0
- package/dist/platform/control-plane/operator-contract-schemas.d.ts.map +1 -1
- package/dist/platform/control-plane/operator-contract-schemas.js +1 -0
- package/dist/platform/control-plane/operator-contract.d.ts.map +1 -1
- package/dist/platform/control-plane/operator-contract.js +8 -0
- package/dist/platform/control-plane/routes/checkpoints.d.ts +39 -0
- package/dist/platform/control-plane/routes/checkpoints.d.ts.map +1 -0
- package/dist/platform/control-plane/routes/checkpoints.js +166 -0
- package/dist/platform/control-plane/routes/fleet.d.ts +53 -0
- package/dist/platform/control-plane/routes/fleet.d.ts.map +1 -0
- package/dist/platform/control-plane/routes/fleet.js +153 -0
- package/dist/platform/control-plane/routes/gateway-verb-error.d.ts +30 -0
- package/dist/platform/control-plane/routes/gateway-verb-error.d.ts.map +1 -0
- package/dist/platform/control-plane/routes/gateway-verb-error.js +36 -0
- package/dist/platform/control-plane/routes/index.d.ts +0 -6
- package/dist/platform/control-plane/routes/index.d.ts.map +1 -1
- package/dist/platform/control-plane/routes/index.js +5 -5
- package/dist/platform/control-plane/routes/invocation-params.d.ts +23 -0
- package/dist/platform/control-plane/routes/invocation-params.d.ts.map +1 -0
- package/dist/platform/control-plane/routes/invocation-params.js +9 -0
- package/dist/platform/control-plane/routes/register-w3-s2.d.ts +26 -0
- package/dist/platform/control-plane/routes/register-w3-s2.d.ts.map +1 -0
- package/dist/platform/control-plane/routes/register-w3-s2.js +8 -0
- package/dist/platform/control-plane/routes/session-search.d.ts +37 -0
- package/dist/platform/control-plane/routes/session-search.d.ts.map +1 -0
- package/dist/platform/control-plane/routes/session-search.js +113 -0
- package/dist/platform/control-plane/session-broker-gc.d.ts +16 -0
- package/dist/platform/control-plane/session-broker-gc.d.ts.map +1 -1
- package/dist/platform/control-plane/session-broker-gc.js +23 -6
- package/dist/platform/control-plane/session-broker-helpers.d.ts +3 -3
- package/dist/platform/control-plane/session-broker-helpers.d.ts.map +1 -1
- package/dist/platform/control-plane/session-broker-inputs.d.ts +18 -0
- package/dist/platform/control-plane/session-broker-inputs.d.ts.map +1 -1
- package/dist/platform/control-plane/session-broker-inputs.js +34 -0
- package/dist/platform/control-plane/session-broker-sessions.d.ts +102 -3
- package/dist/platform/control-plane/session-broker-sessions.d.ts.map +1 -1
- package/dist/platform/control-plane/session-broker-sessions.js +179 -5
- package/dist/platform/control-plane/session-broker-state.d.ts +20 -1
- package/dist/platform/control-plane/session-broker-state.d.ts.map +1 -1
- package/dist/platform/control-plane/session-broker-state.js +67 -5
- package/dist/platform/control-plane/session-broker.d.ts +51 -38
- package/dist/platform/control-plane/session-broker.d.ts.map +1 -1
- package/dist/platform/control-plane/session-broker.js +183 -75
- package/dist/platform/control-plane/session-store-importer.d.ts +57 -0
- package/dist/platform/control-plane/session-store-importer.d.ts.map +1 -0
- package/dist/platform/control-plane/session-store-importer.js +227 -0
- package/dist/platform/control-plane/session-types.d.ts +142 -7
- package/dist/platform/control-plane/session-types.d.ts.map +1 -1
- package/dist/platform/core/adaptive-planner.d.ts +50 -0
- package/dist/platform/core/adaptive-planner.d.ts.map +1 -1
- package/dist/platform/core/adaptive-planner.js +49 -0
- package/dist/platform/core/execution-plan.d.ts +43 -1
- package/dist/platform/core/execution-plan.d.ts.map +1 -1
- package/dist/platform/core/execution-plan.js +46 -10
- package/dist/platform/core/index.d.ts +2 -0
- package/dist/platform/core/index.d.ts.map +1 -1
- package/dist/platform/core/index.js +2 -0
- package/dist/platform/core/orchestrator-runtime.d.ts +31 -0
- package/dist/platform/core/orchestrator-runtime.d.ts.map +1 -1
- package/dist/platform/core/orchestrator-tool-runtime.d.ts +7 -0
- package/dist/platform/core/orchestrator-tool-runtime.d.ts.map +1 -1
- package/dist/platform/core/orchestrator-tool-runtime.js +10 -0
- package/dist/platform/core/orchestrator-turn-loop.d.ts +35 -1
- package/dist/platform/core/orchestrator-turn-loop.d.ts.map +1 -1
- package/dist/platform/core/orchestrator-turn-loop.js +121 -3
- package/dist/platform/core/orchestrator.d.ts +67 -0
- package/dist/platform/core/orchestrator.d.ts.map +1 -1
- package/dist/platform/core/orchestrator.js +89 -1
- package/dist/platform/core/plan-decomposition.d.ts +196 -0
- package/dist/platform/core/plan-decomposition.d.ts.map +1 -0
- package/dist/platform/core/plan-decomposition.js +417 -0
- package/dist/platform/core/plan-proposal.d.ts +204 -0
- package/dist/platform/core/plan-proposal.d.ts.map +1 -0
- package/dist/platform/core/plan-proposal.js +296 -0
- package/dist/platform/core/wrfc-routing.d.ts +1 -0
- package/dist/platform/core/wrfc-routing.d.ts.map +1 -1
- package/dist/platform/core/wrfc-routing.js +51 -1
- package/dist/platform/daemon/boot.d.ts +63 -0
- package/dist/platform/daemon/boot.d.ts.map +1 -0
- package/dist/platform/daemon/boot.js +60 -0
- package/dist/platform/daemon/cli.js +2 -1
- package/dist/platform/daemon/control-plane.d.ts.map +1 -1
- package/dist/platform/daemon/control-plane.js +50 -1
- package/dist/platform/daemon/facade-composition.d.ts.map +1 -1
- package/dist/platform/daemon/facade-composition.js +6 -0
- package/dist/platform/daemon/facade.d.ts +18 -6
- package/dist/platform/daemon/facade.d.ts.map +1 -1
- package/dist/platform/daemon/facade.js +50 -43
- package/dist/platform/daemon/http/router-route-contexts.d.ts +1 -0
- package/dist/platform/daemon/http/router-route-contexts.d.ts.map +1 -1
- package/dist/platform/daemon/http/router-route-contexts.js +1 -0
- package/dist/platform/daemon/http/router-session-broker-adapter.d.ts +13 -0
- package/dist/platform/daemon/http/router-session-broker-adapter.d.ts.map +1 -0
- package/dist/platform/daemon/http/router-session-broker-adapter.js +27 -0
- package/dist/platform/daemon/http/router.d.ts +1 -1
- package/dist/platform/daemon/http/router.d.ts.map +1 -1
- package/dist/platform/daemon/http/router.js +7 -22
- package/dist/platform/daemon/http/runtime-route-types.d.ts +42 -4
- package/dist/platform/daemon/http/runtime-route-types.d.ts.map +1 -1
- package/dist/platform/daemon/index.d.ts +2 -0
- package/dist/platform/daemon/index.d.ts.map +1 -1
- package/dist/platform/daemon/index.js +1 -0
- package/dist/platform/daemon/service-manager.d.ts +16 -0
- package/dist/platform/daemon/service-manager.d.ts.map +1 -1
- package/dist/platform/daemon/service-manager.js +79 -15
- package/dist/platform/intelligence/tree-sitter/service.d.ts.map +1 -1
- package/dist/platform/intelligence/tree-sitter/service.js +16 -2
- package/dist/platform/knowledge/browser-history/readers.d.ts.map +1 -1
- package/dist/platform/knowledge/browser-history/readers.js +15 -5
- package/dist/platform/knowledge/knowledge-api.d.ts +26 -0
- package/dist/platform/knowledge/knowledge-api.d.ts.map +1 -1
- package/dist/platform/knowledge/knowledge-api.js +11 -0
- package/dist/platform/knowledge/project-planning/service.d.ts +14 -1
- package/dist/platform/knowledge/project-planning/service.d.ts.map +1 -1
- package/dist/platform/knowledge/project-planning/service.js +77 -0
- package/dist/platform/knowledge/project-planning/types.d.ts +32 -0
- package/dist/platform/knowledge/project-planning/types.d.ts.map +1 -1
- package/dist/platform/orchestration/bookkeeping.d.ts +12 -0
- package/dist/platform/orchestration/bookkeeping.d.ts.map +1 -0
- package/dist/platform/orchestration/bookkeeping.js +91 -0
- package/dist/platform/orchestration/budget.d.ts +22 -0
- package/dist/platform/orchestration/budget.d.ts.map +1 -0
- package/dist/platform/orchestration/budget.js +35 -0
- package/dist/platform/orchestration/cancellation.d.ts +31 -0
- package/dist/platform/orchestration/cancellation.d.ts.map +1 -0
- package/dist/platform/orchestration/cancellation.js +25 -0
- package/dist/platform/orchestration/controller-compat.d.ts +46 -0
- package/dist/platform/orchestration/controller-compat.d.ts.map +1 -0
- package/dist/platform/orchestration/controller-compat.js +27 -0
- package/dist/platform/orchestration/dirty-guard.d.ts +32 -0
- package/dist/platform/orchestration/dirty-guard.d.ts.map +1 -0
- package/dist/platform/orchestration/dirty-guard.js +147 -0
- package/dist/platform/orchestration/engine.d.ts +82 -0
- package/dist/platform/orchestration/engine.d.ts.map +1 -0
- package/dist/platform/orchestration/engine.js +623 -0
- package/dist/platform/orchestration/index.d.ts +20 -0
- package/dist/platform/orchestration/index.d.ts.map +1 -0
- package/dist/platform/orchestration/index.js +11 -0
- package/dist/platform/orchestration/persistence.d.ts +24 -0
- package/dist/platform/orchestration/persistence.d.ts.map +1 -0
- package/dist/platform/orchestration/persistence.js +179 -0
- package/dist/platform/orchestration/phase-runner.d.ts +114 -0
- package/dist/platform/orchestration/phase-runner.d.ts.map +1 -0
- package/dist/platform/orchestration/phase-runner.js +347 -0
- package/dist/platform/orchestration/proposal-workstream.d.ts +56 -0
- package/dist/platform/orchestration/proposal-workstream.d.ts.map +1 -0
- package/dist/platform/orchestration/proposal-workstream.js +76 -0
- package/dist/platform/orchestration/scheduler.d.ts +64 -0
- package/dist/platform/orchestration/scheduler.d.ts.map +1 -0
- package/dist/platform/orchestration/scheduler.js +73 -0
- package/dist/platform/orchestration/types.d.ts +535 -0
- package/dist/platform/orchestration/types.d.ts.map +1 -0
- package/dist/platform/orchestration/types.js +47 -0
- package/dist/platform/orchestration/worktree-isolation.d.ts +33 -0
- package/dist/platform/orchestration/worktree-isolation.d.ts.map +1 -0
- package/dist/platform/orchestration/worktree-isolation.js +248 -0
- package/dist/platform/presentation/glyphs.d.ts +91 -0
- package/dist/platform/presentation/glyphs.d.ts.map +1 -0
- package/dist/platform/presentation/glyphs.js +93 -0
- package/dist/platform/presentation/index.d.ts +28 -0
- package/dist/platform/presentation/index.d.ts.map +1 -0
- package/dist/platform/presentation/index.js +27 -0
- package/dist/platform/presentation/thinking-phrases.d.ts +12 -0
- package/dist/platform/presentation/thinking-phrases.d.ts.map +1 -0
- package/dist/platform/presentation/thinking-phrases.js +32 -0
- package/dist/platform/presentation/tones.d.ts +121 -0
- package/dist/platform/presentation/tones.d.ts.map +1 -0
- package/dist/platform/presentation/tones.js +145 -0
- package/dist/platform/presentation/waiting-wording.d.ts +54 -0
- package/dist/platform/presentation/waiting-wording.d.ts.map +1 -0
- package/dist/platform/presentation/waiting-wording.js +51 -0
- package/dist/platform/providers/runtime-snapshot.d.ts.map +1 -1
- package/dist/platform/providers/runtime-snapshot.js +12 -2
- package/dist/platform/runtime/bootstrap-services.d.ts +62 -2
- package/dist/platform/runtime/bootstrap-services.d.ts.map +1 -1
- package/dist/platform/runtime/bootstrap-services.js +217 -50
- package/dist/platform/runtime/daemon-version-compat.d.ts +39 -0
- package/dist/platform/runtime/daemon-version-compat.d.ts.map +1 -0
- package/dist/platform/runtime/daemon-version-compat.js +75 -0
- package/dist/platform/runtime/detached-daemon-runtime.d.ts +26 -0
- package/dist/platform/runtime/detached-daemon-runtime.d.ts.map +1 -0
- package/dist/platform/runtime/detached-daemon-runtime.js +49 -0
- package/dist/platform/runtime/emitters/communication.d.ts +11 -0
- package/dist/platform/runtime/emitters/communication.d.ts.map +1 -1
- package/dist/platform/runtime/emitters/communication.js +9 -0
- package/dist/platform/runtime/emitters/workflows.d.ts +1 -1
- package/dist/platform/runtime/emitters/workflows.d.ts.map +1 -1
- package/dist/platform/runtime/events/index.d.ts +13 -0
- package/dist/platform/runtime/events/index.d.ts.map +1 -1
- package/dist/platform/runtime/events/index.js +13 -0
- package/dist/platform/runtime/feature-flags/flags.d.ts.map +1 -1
- package/dist/platform/runtime/feature-flags/flags.js +56 -1
- package/dist/platform/runtime/fleet/adapters/agent.d.ts +56 -0
- package/dist/platform/runtime/fleet/adapters/agent.d.ts.map +1 -0
- package/dist/platform/runtime/fleet/adapters/agent.js +143 -0
- package/dist/platform/runtime/fleet/adapters/automation.d.ts +30 -0
- package/dist/platform/runtime/fleet/adapters/automation.d.ts.map +1 -0
- package/dist/platform/runtime/fleet/adapters/automation.js +41 -0
- package/dist/platform/runtime/fleet/adapters/background-process.d.ts +12 -0
- package/dist/platform/runtime/fleet/adapters/background-process.d.ts.map +1 -0
- package/dist/platform/runtime/fleet/adapters/background-process.js +46 -0
- package/dist/platform/runtime/fleet/adapters/code-index.d.ts +21 -0
- package/dist/platform/runtime/fleet/adapters/code-index.d.ts.map +1 -0
- package/dist/platform/runtime/fleet/adapters/code-index.js +44 -0
- package/dist/platform/runtime/fleet/adapters/orchestration.d.ts +69 -0
- package/dist/platform/runtime/fleet/adapters/orchestration.d.ts.map +1 -0
- package/dist/platform/runtime/fleet/adapters/orchestration.js +329 -0
- package/dist/platform/runtime/fleet/adapters/schedule.d.ts +14 -0
- package/dist/platform/runtime/fleet/adapters/schedule.d.ts.map +1 -0
- package/dist/platform/runtime/fleet/adapters/schedule.js +28 -0
- package/dist/platform/runtime/fleet/adapters/trigger.d.ts +12 -0
- package/dist/platform/runtime/fleet/adapters/trigger.d.ts.map +1 -0
- package/dist/platform/runtime/fleet/adapters/trigger.js +22 -0
- package/dist/platform/runtime/fleet/adapters/watcher.d.ts +13 -0
- package/dist/platform/runtime/fleet/adapters/watcher.d.ts.map +1 -0
- package/dist/platform/runtime/fleet/adapters/watcher.js +47 -0
- package/dist/platform/runtime/fleet/adapters/workflow.d.ts +11 -0
- package/dist/platform/runtime/fleet/adapters/workflow.d.ts.map +1 -0
- package/dist/platform/runtime/fleet/adapters/workflow.js +34 -0
- package/dist/platform/runtime/fleet/adapters/wrfc.d.ts +35 -0
- package/dist/platform/runtime/fleet/adapters/wrfc.d.ts.map +1 -0
- package/dist/platform/runtime/fleet/adapters/wrfc.js +275 -0
- package/dist/platform/runtime/fleet/index.d.ts +10 -0
- package/dist/platform/runtime/fleet/index.d.ts.map +1 -0
- package/dist/platform/runtime/fleet/index.js +6 -0
- package/dist/platform/runtime/fleet/registry.d.ts +113 -0
- package/dist/platform/runtime/fleet/registry.d.ts.map +1 -0
- package/dist/platform/runtime/fleet/registry.js +664 -0
- package/dist/platform/runtime/fleet/types.d.ts +199 -0
- package/dist/platform/runtime/fleet/types.d.ts.map +1 -0
- package/dist/platform/runtime/fleet/types.js +2 -0
- package/dist/platform/runtime/operator-client.d.ts +20 -2
- package/dist/platform/runtime/operator-client.d.ts.map +1 -1
- package/dist/platform/runtime/operator-client.js +11 -1
- package/dist/platform/runtime/provider-accounts/registry.d.ts.map +1 -1
- package/dist/platform/runtime/provider-accounts/registry.js +11 -1
- package/dist/platform/runtime/runtime-knowledge-api.d.ts +1 -1
- package/dist/platform/runtime/runtime-knowledge-api.d.ts.map +1 -1
- package/dist/platform/runtime/runtime-knowledge-api.js +1 -0
- package/dist/platform/runtime/services.d.ts +48 -0
- package/dist/platform/runtime/services.d.ts.map +1 -1
- package/dist/platform/runtime/services.js +95 -2
- package/dist/platform/runtime/session-spine/client.d.ts +234 -0
- package/dist/platform/runtime/session-spine/client.d.ts.map +1 -0
- package/dist/platform/runtime/session-spine/client.js +449 -0
- package/dist/platform/runtime/session-spine/index.d.ts +12 -0
- package/dist/platform/runtime/session-spine/index.d.ts.map +1 -0
- package/dist/platform/runtime/session-spine/index.js +11 -0
- package/dist/platform/runtime/session-spine/union-cache.d.ts +225 -0
- package/dist/platform/runtime/session-spine/union-cache.d.ts.map +1 -0
- package/dist/platform/runtime/session-spine/union-cache.js +333 -0
- package/dist/platform/runtime/shell-command-ops.d.ts +3 -1
- package/dist/platform/runtime/shell-command-ops.d.ts.map +1 -1
- package/dist/platform/runtime/transports/daemon-http-client-validators.d.ts.map +1 -1
- package/dist/platform/runtime/transports/daemon-http-client-validators.js +22 -0
- package/dist/platform/runtime/transports/daemon-http-client.d.ts.map +1 -1
- package/dist/platform/runtime/transports/daemon-http-client.js +25 -2
- package/dist/platform/runtime/transports/http-types.d.ts +9 -2
- package/dist/platform/runtime/transports/http-types.d.ts.map +1 -1
- package/dist/platform/state/canonical-memory.d.ts +95 -0
- package/dist/platform/state/canonical-memory.d.ts.map +1 -0
- package/dist/platform/state/canonical-memory.js +155 -0
- package/dist/platform/state/code-index-chunking.d.ts +49 -0
- package/dist/platform/state/code-index-chunking.d.ts.map +1 -0
- package/dist/platform/state/code-index-chunking.js +111 -0
- package/dist/platform/state/code-index-db.d.ts +53 -0
- package/dist/platform/state/code-index-db.d.ts.map +1 -0
- package/dist/platform/state/code-index-db.js +101 -0
- package/dist/platform/state/code-index-reindex.d.ts +73 -0
- package/dist/platform/state/code-index-reindex.d.ts.map +1 -0
- package/dist/platform/state/code-index-reindex.js +156 -0
- package/dist/platform/state/code-index-store.d.ts +175 -0
- package/dist/platform/state/code-index-store.d.ts.map +1 -0
- package/dist/platform/state/code-index-store.js +620 -0
- package/dist/platform/state/index.d.ts +12 -2
- package/dist/platform/state/index.d.ts.map +1 -1
- package/dist/platform/state/index.js +6 -1
- package/dist/platform/state/knowledge-injection.d.ts +23 -0
- package/dist/platform/state/knowledge-injection.d.ts.map +1 -1
- package/dist/platform/state/knowledge-injection.js +34 -19
- package/dist/platform/state/memory-recall-contract.d.ts +63 -0
- package/dist/platform/state/memory-recall-contract.d.ts.map +1 -0
- package/dist/platform/state/memory-recall-contract.js +94 -0
- package/dist/platform/state/memory-store.d.ts +2 -0
- package/dist/platform/state/memory-store.d.ts.map +1 -1
- package/dist/platform/state/memory-store.js +4 -0
- package/dist/platform/state/memory-vector-store.d.ts +1 -13
- package/dist/platform/state/memory-vector-store.d.ts.map +1 -1
- package/dist/platform/state/memory-vector-store.js +18 -39
- package/dist/platform/state/sqlite-store.d.ts +2 -0
- package/dist/platform/state/sqlite-store.d.ts.map +1 -1
- package/dist/platform/state/sqlite-store.js +4 -0
- package/dist/platform/state/sqlite-vec-loader.d.ts +25 -0
- package/dist/platform/state/sqlite-vec-loader.d.ts.map +1 -0
- package/dist/platform/state/sqlite-vec-loader.js +43 -0
- package/dist/platform/state/vibe-projection.d.ts +67 -0
- package/dist/platform/state/vibe-projection.d.ts.map +1 -0
- package/dist/platform/state/vibe-projection.js +115 -0
- package/dist/platform/tools/agent/index.d.ts.map +1 -1
- package/dist/platform/tools/agent/index.js +8 -0
- package/dist/platform/tools/agent/manager.d.ts +140 -1
- package/dist/platform/tools/agent/manager.d.ts.map +1 -1
- package/dist/platform/tools/agent/manager.js +143 -1
- package/dist/platform/tools/agent/schema.d.ts +26 -0
- package/dist/platform/tools/agent/schema.d.ts.map +1 -1
- package/dist/platform/tools/agent/schema.js +2 -2
- package/dist/platform/tools/agent/wrfc-batch-policy.d.ts +13 -0
- package/dist/platform/tools/agent/wrfc-batch-policy.d.ts.map +1 -1
- package/dist/platform/tools/agent/wrfc-batch-policy.js +60 -0
- package/dist/platform/tools/exec/runtime.d.ts +10 -0
- package/dist/platform/tools/exec/runtime.d.ts.map +1 -1
- package/dist/platform/tools/exec/runtime.js +161 -49
- package/dist/platform/tools/exec/schema.d.ts +3 -1
- package/dist/platform/tools/exec/schema.d.ts.map +1 -1
- package/dist/platform/tools/exec/schema.js +2 -1
- package/dist/platform/tools/fetch/runtime.d.ts +7 -0
- package/dist/platform/tools/fetch/runtime.d.ts.map +1 -1
- package/dist/platform/tools/fetch/runtime.js +8 -6
- package/dist/platform/tools/index.d.ts +2 -0
- package/dist/platform/tools/index.d.ts.map +1 -1
- package/dist/platform/tools/index.js +2 -0
- package/dist/platform/tools/registry.d.ts +9 -3
- package/dist/platform/tools/registry.d.ts.map +1 -1
- package/dist/platform/tools/registry.js +9 -3
- package/dist/platform/tools/state/index.d.ts +9 -0
- package/dist/platform/tools/state/index.d.ts.map +1 -1
- package/dist/platform/tools/state/index.js +60 -3
- package/dist/platform/types/foundation-contract.d.ts +1 -1
- package/dist/platform/types/foundation-contract.d.ts.map +1 -1
- package/dist/platform/types/index.d.ts +1 -1
- package/dist/platform/types/index.d.ts.map +1 -1
- package/dist/platform/types/tools.d.ts +14 -1
- package/dist/platform/types/tools.d.ts.map +1 -1
- package/dist/platform/version.js +1 -1
- package/package.json +29 -9
- package/dist/platform/control-plane/routes/automation.d.ts +0 -3
- package/dist/platform/control-plane/routes/automation.d.ts.map +0 -1
- package/dist/platform/control-plane/routes/automation.js +0 -63
- package/dist/platform/control-plane/routes/context.d.ts +0 -2
- package/dist/platform/control-plane/routes/context.d.ts.map +0 -1
- package/dist/platform/control-plane/routes/context.js +0 -1
- package/dist/platform/control-plane/routes/operator.d.ts +0 -8
- package/dist/platform/control-plane/routes/operator.d.ts.map +0 -1
- package/dist/platform/control-plane/routes/operator.js +0 -415
- package/dist/platform/control-plane/routes/remote.d.ts +0 -3
- package/dist/platform/control-plane/routes/remote.d.ts.map +0 -1
- package/dist/platform/control-plane/routes/remote.js +0 -35
- package/dist/platform/control-plane/routes/sessions.d.ts +0 -3
- package/dist/platform/control-plane/routes/sessions.d.ts.map +0 -1
- package/dist/platform/control-plane/routes/sessions.js +0 -43
- package/dist/platform/control-plane/routes/tasks.d.ts +0 -3
- package/dist/platform/control-plane/routes/tasks.d.ts.map +0 -1
- package/dist/platform/control-plane/routes/tasks.js +0 -22
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* vibe-projection.ts — VIBE.md as a PROJECTION of memory records (Wave-6 E6).
|
|
3
|
+
*
|
|
4
|
+
* BEFORE E6, VIBE.md was a persona file read off disk and injected into the prompt
|
|
5
|
+
* — a projection of ITSELF, a source of truth disjoint from the memory store. E6
|
|
6
|
+
* demotes the file to an import/export FORMAT and makes the prompt block a
|
|
7
|
+
* projection of first-class memory records:
|
|
8
|
+
*
|
|
9
|
+
* - Persona/preference facts persist as MemoryRecords with cls 'constraint',
|
|
10
|
+
* scope project|team, tagged VIBE_PERSONA_TAG.
|
|
11
|
+
* - renderVibeProjection(records) emits the same '## GoodVibes Agent VIBE.md'
|
|
12
|
+
* prompt block from those records — the block the file used to emit.
|
|
13
|
+
* - The file round-trips THROUGH the record set (vibeBodyToConstraintOptions
|
|
14
|
+
* imports a VIBE.md body into records; the records export back through the
|
|
15
|
+
* normal MemoryStore bundle seam). The file is a format, not the truth.
|
|
16
|
+
*
|
|
17
|
+
* INVARIANT PRESERVED. The projected block keeps the precedence caveat verbatim:
|
|
18
|
+
* persona instructions are followed only when they do not conflict with explicit
|
|
19
|
+
* user instructions, safety policy, tool contracts, confirmation requirements, or
|
|
20
|
+
* secret-handling rules. Demoting the file to a projection must not drop that.
|
|
21
|
+
*/
|
|
22
|
+
/** Tag marking a constraint record as a VIBE.md persona/preference line. */
|
|
23
|
+
export const VIBE_PERSONA_TAG = 'vibe';
|
|
24
|
+
/** The projected prompt block heading. */
|
|
25
|
+
export const VIBE_PROJECTION_HEADING = '## GoodVibes Agent VIBE.md';
|
|
26
|
+
/**
|
|
27
|
+
* The precedence caveat. MUST accompany every projected block — persona records
|
|
28
|
+
* never override explicit instructions, safety, tool contracts, confirmations, or
|
|
29
|
+
* secret-handling.
|
|
30
|
+
*/
|
|
31
|
+
export const VIBE_PROJECTION_CAVEAT = 'These user-authored vibe/personality instructions shape the same serial assistant conversation. Follow them only when they do not conflict with explicit user instructions, safety policy, tool contracts, confirmation requirements, or secret-handling rules.';
|
|
32
|
+
/** Scopes eligible for the VIBE projection (persona applies at project/team scope, not per-session). */
|
|
33
|
+
const VIBE_PROJECTION_SCOPES = ['project', 'team'];
|
|
34
|
+
/**
|
|
35
|
+
* Select the constraint records that make up the VIBE persona: cls 'constraint',
|
|
36
|
+
* tagged VIBE_PERSONA_TAG, in an eligible scope. Ordered stably by scope (team
|
|
37
|
+
* after project) then creation time so the projected block is deterministic.
|
|
38
|
+
*/
|
|
39
|
+
export function selectVibeRecords(records, options = {}) {
|
|
40
|
+
const scopes = new Set(options.scopes ?? VIBE_PROJECTION_SCOPES);
|
|
41
|
+
return records
|
|
42
|
+
.filter((record) => record.cls === 'constraint')
|
|
43
|
+
.filter((record) => record.tags.includes(VIBE_PERSONA_TAG))
|
|
44
|
+
.filter((record) => scopes.has(record.scope))
|
|
45
|
+
.sort((left, right) => {
|
|
46
|
+
if (left.scope !== right.scope)
|
|
47
|
+
return left.scope === 'project' ? -1 : 1;
|
|
48
|
+
return left.createdAt - right.createdAt;
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
function vibeLine(record) {
|
|
52
|
+
const detail = record.detail?.trim();
|
|
53
|
+
return detail && detail !== record.summary ? `- ${record.summary} — ${detail}` : `- ${record.summary}`;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Render the VIBE.md prompt block from persona/constraint records. Returns null
|
|
57
|
+
* when there are no persona records to project (no empty block). The caveat is
|
|
58
|
+
* always included when a block is produced.
|
|
59
|
+
*/
|
|
60
|
+
export function renderVibeProjection(records, options = {}) {
|
|
61
|
+
const persona = selectVibeRecords(records, options);
|
|
62
|
+
if (persona.length === 0)
|
|
63
|
+
return null;
|
|
64
|
+
return [
|
|
65
|
+
VIBE_PROJECTION_HEADING,
|
|
66
|
+
VIBE_PROJECTION_CAVEAT,
|
|
67
|
+
'',
|
|
68
|
+
...persona.map(vibeLine),
|
|
69
|
+
].join('\n');
|
|
70
|
+
}
|
|
71
|
+
const BULLET_PREFIX = /^\s*[-*]\s+/;
|
|
72
|
+
/**
|
|
73
|
+
* Turn a VIBE.md body into constraint MemoryAddOptions — the file demoted to an
|
|
74
|
+
* IMPORT FORMAT. Each bullet line becomes one persona record so that editing a
|
|
75
|
+
* single record later changes exactly one line of the projected block. A body
|
|
76
|
+
* with no bullets becomes a single record carrying the whole body as detail.
|
|
77
|
+
*
|
|
78
|
+
* Heading lines (starting with '#') and blank lines are dropped; they carry no
|
|
79
|
+
* persona instruction.
|
|
80
|
+
*/
|
|
81
|
+
export function vibeBodyToConstraintOptions(body, options = {}) {
|
|
82
|
+
const scope = options.scope ?? 'project';
|
|
83
|
+
const tags = options.name ? [VIBE_PERSONA_TAG, options.name] : [VIBE_PERSONA_TAG];
|
|
84
|
+
const provenance = options.sourceRef
|
|
85
|
+
? [{ kind: 'file', ref: options.sourceRef }]
|
|
86
|
+
: undefined;
|
|
87
|
+
const lines = body.split('\n');
|
|
88
|
+
const bullets = lines
|
|
89
|
+
.filter((line) => BULLET_PREFIX.test(line))
|
|
90
|
+
.map((line) => line.replace(BULLET_PREFIX, '').trim())
|
|
91
|
+
.filter((line) => line.length > 0);
|
|
92
|
+
if (bullets.length > 0) {
|
|
93
|
+
return bullets.map((summary) => ({
|
|
94
|
+
scope,
|
|
95
|
+
cls: 'constraint',
|
|
96
|
+
summary,
|
|
97
|
+
tags: [...tags],
|
|
98
|
+
...(provenance ? { provenance } : {}),
|
|
99
|
+
}));
|
|
100
|
+
}
|
|
101
|
+
const prose = lines
|
|
102
|
+
.filter((line) => !line.trimStart().startsWith('#'))
|
|
103
|
+
.join('\n')
|
|
104
|
+
.trim();
|
|
105
|
+
if (!prose)
|
|
106
|
+
return [];
|
|
107
|
+
return [{
|
|
108
|
+
scope,
|
|
109
|
+
cls: 'constraint',
|
|
110
|
+
summary: options.name ?? 'VIBE.md persona',
|
|
111
|
+
detail: prose,
|
|
112
|
+
tags: [...tags],
|
|
113
|
+
...(provenance ? { provenance } : {}),
|
|
114
|
+
}];
|
|
115
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/platform/tools/agent/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG7D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAmB,YAAY,EAAoB,MAAM,cAAc,CAAC;AAK/E,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAiHhD,wBAAgB,eAAe,CAAC,MAAM,EAAE;IACtC,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,EAAE,IAAI,CAAC,eAAe,EAAE,aAAa,GAAG,MAAM,CAAC,CAAC;IAC1D,cAAc,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC,GAAG,SAAS,CAAC;IAChE,eAAe,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,eAAe,CAAC,GAAG,SAAS,CAAC;IACrE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;CAC3C,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/platform/tools/agent/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG7D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAmB,YAAY,EAAoB,MAAM,cAAc,CAAC;AAK/E,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAiHhD,wBAAgB,eAAe,CAAC,MAAM,EAAE;IACtC,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,EAAE,IAAI,CAAC,eAAe,EAAE,aAAa,GAAG,MAAM,CAAC,CAAC;IAC1D,cAAc,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC,GAAG,SAAS,CAAC;IAChE,eAAe,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,eAAe,CAAC,GAAG,SAAS,CAAC;IACrE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;CAC3C,GAAG,IAAI,CAgmBP"}
|
|
@@ -493,6 +493,13 @@ export function createAgentTool(config) {
|
|
|
493
493
|
error: `Failed to collapse role-decomposition batch into a WRFC owner chain: ${summarizeError(error)}`,
|
|
494
494
|
};
|
|
495
495
|
}
|
|
496
|
+
// Part (a): when a requested fan-out was collapsed, state it plainly for
|
|
497
|
+
// the host to surface to the user — what was requested, what the guard
|
|
498
|
+
// did, and why — so the collapse is never a silent, confusing rewrite.
|
|
499
|
+
const fanout = batchPolicy.ownerInput?.fanoutCollapse;
|
|
500
|
+
const announcement = fanout
|
|
501
|
+
? `Requested ${fanout.requestedShape}; the WRFC topology guard ran them as one reviewed chain instead (${batchPolicy.reason ?? 'topology enforcement'}).`
|
|
502
|
+
: undefined;
|
|
496
503
|
return {
|
|
497
504
|
success: true,
|
|
498
505
|
output: JSON.stringify({
|
|
@@ -503,6 +510,7 @@ export function createAgentTool(config) {
|
|
|
503
510
|
collapsedToWrfc: true,
|
|
504
511
|
collapsedTaskCount: input.tasks.length,
|
|
505
512
|
reason: batchPolicy.reason,
|
|
513
|
+
...(announcement ? { announcement } : {}),
|
|
506
514
|
roleTaskIndexes: batchPolicy.roleTaskIndexes ?? [],
|
|
507
515
|
compoundTaskIndexes: batchPolicy.compoundTaskIndexes ?? [],
|
|
508
516
|
scopeMutation: batchPolicy.scopeMutation ?? null,
|
|
@@ -2,10 +2,12 @@ import { ArchetypeLoader } from '../../agents/archetypes.js';
|
|
|
2
2
|
import { AgentMessageBus } from '../../agents/message-bus.js';
|
|
3
3
|
import { WrfcController } from '../../agents/wrfc-controller.js';
|
|
4
4
|
import type { ConfigManager } from '../../config/manager.js';
|
|
5
|
+
import type { ConversationMessageSnapshot } from '../../core/conversation.js';
|
|
5
6
|
import type { RuntimeEventBus } from '../../runtime/events/index.js';
|
|
6
7
|
import type { ExecutionIntent } from '../../runtime/execution-intents.js';
|
|
7
8
|
import type { AgentInput } from './schema.js';
|
|
8
9
|
import type { WrfcAgentRole } from '../../agents/wrfc-types.js';
|
|
10
|
+
import type { TurnInjectionRecord } from '../../agents/turn-knowledge-injection.js';
|
|
9
11
|
export type AgentExecutor = {
|
|
10
12
|
runAgent(record: AgentRecord): Promise<void>;
|
|
11
13
|
};
|
|
@@ -15,7 +17,25 @@ export interface AgentManagerDependencies {
|
|
|
15
17
|
readonly wrfcController?: Pick<WrfcController, 'createChain'> | null | undefined;
|
|
16
18
|
readonly executor?: AgentExecutor | null | undefined;
|
|
17
19
|
readonly configManager?: Pick<ConfigManager, 'get'> | undefined;
|
|
20
|
+
/**
|
|
21
|
+
* Bound on how many finished agents' final conversation snapshot are kept
|
|
22
|
+
* in the retention ring (see getConversationSnapshot). Defaults to
|
|
23
|
+
* DEFAULT_CONVERSATION_SNAPSHOT_RETENTION. Test-only knob in practice.
|
|
24
|
+
*/
|
|
25
|
+
readonly conversationSnapshotRetention?: number | undefined;
|
|
18
26
|
}
|
|
27
|
+
/**
|
|
28
|
+
* Wave-3 tab attach point (Part C6): default bound on how many recently
|
|
29
|
+
* finished agents' final conversation snapshot AgentManager keeps around
|
|
30
|
+
* after their live source is released. Without a bound, a long-lived process
|
|
31
|
+
* that spawns many short-lived agents would retain every finished agent's
|
|
32
|
+
* full message history forever — this is the "leaking unbounded memory" the
|
|
33
|
+
* brief calls out. RUNNING agents are unaffected by this bound: their
|
|
34
|
+
* snapshot is read live from the still-open ConversationManager, whose size
|
|
35
|
+
* is already governed by the existing context-window compaction machinery
|
|
36
|
+
* (core/context-compaction.ts), not by this retention ring.
|
|
37
|
+
*/
|
|
38
|
+
export declare const DEFAULT_CONVERSATION_SNAPSHOT_RETENTION = 20;
|
|
19
39
|
export declare const AGENT_TEMPLATES: Record<string, {
|
|
20
40
|
description: string;
|
|
21
41
|
defaultTools: string[];
|
|
@@ -33,6 +53,16 @@ export interface AgentRecord {
|
|
|
33
53
|
context?: string | undefined;
|
|
34
54
|
tools: string[];
|
|
35
55
|
status: 'pending' | 'running' | 'completed' | 'failed' | 'cancelled';
|
|
56
|
+
/**
|
|
57
|
+
* Set by cancel(id, kind) when status transitions to 'cancelled'. Distinguishes
|
|
58
|
+
* a graceful interrupt request from a hard kill for display purposes
|
|
59
|
+
* (Wave-3 verb formalization) without overloading `status`, which is
|
|
60
|
+
* consumed widely (ledger parse, orchestrator finalize, exportState/
|
|
61
|
+
* importState). Absent on records cancelled before this field existed, and
|
|
62
|
+
* on any record cancelled via the single-arg cancel(id) call — both default
|
|
63
|
+
* to 'kill' at the read site (fleet/adapters/agent.ts deriveAgentState).
|
|
64
|
+
*/
|
|
65
|
+
terminationKind?: 'interrupt' | 'kill' | undefined;
|
|
36
66
|
startedAt: number;
|
|
37
67
|
completedAt?: number | undefined;
|
|
38
68
|
progress?: string | undefined;
|
|
@@ -56,7 +86,28 @@ export interface AgentRecord {
|
|
|
56
86
|
wrfcSubtaskId?: string | undefined;
|
|
57
87
|
wrfcRouteReason?: string | undefined;
|
|
58
88
|
wrfcSubtasks?: AgentInput['wrfcSubtasks'] | undefined;
|
|
89
|
+
/** Set when this owner agent's chain was created by collapsing a requested fan-out (schema.ts FanoutCollapseInfo). */
|
|
90
|
+
fanoutCollapse?: AgentInput['fanoutCollapse'] | undefined;
|
|
59
91
|
dangerously_disable_wrfc?: boolean | undefined;
|
|
92
|
+
/**
|
|
93
|
+
* Wave-4 orchestration engine tag (wo701): set by phase-runner.ts when it
|
|
94
|
+
* spawns an agent to run one WorkItem through one Phase. Mirrors
|
|
95
|
+
* wrfcId/wrfcSubtaskId — the fleet's agent adapter uses it to parent this
|
|
96
|
+
* agent node under its work-item ProcessNode (adapters/agent.ts
|
|
97
|
+
* resolveParentId), separate from the WRFC parenting track so the two
|
|
98
|
+
* systems' agents are never conflated.
|
|
99
|
+
*/
|
|
100
|
+
workItemId?: string | undefined;
|
|
101
|
+
/**
|
|
102
|
+
* Overrides this agent's tool working directory (absolute path) — see
|
|
103
|
+
* AgentInput.workingDirectory. Copied from the spawn input at construction
|
|
104
|
+
* (NOT settable post-hoc like workItemId: AgentOrchestrator.runAgent reads
|
|
105
|
+
* it synchronously to select/build the per-cwd ToolRegistry before the
|
|
106
|
+
* caller of spawn() gets its return value back). Absent ⇒ the
|
|
107
|
+
* orchestrator's default working directory, unchanged from before this
|
|
108
|
+
* field existed.
|
|
109
|
+
*/
|
|
110
|
+
workingDirectory?: string | undefined;
|
|
60
111
|
cohort?: string | undefined;
|
|
61
112
|
orchestrationGraphId?: string | undefined;
|
|
62
113
|
orchestrationNodeId?: string | undefined;
|
|
@@ -80,6 +131,17 @@ export interface AgentRecord {
|
|
|
80
131
|
confidence: number;
|
|
81
132
|
reviewState: 'fresh' | 'reviewed' | 'stale' | 'contradicted';
|
|
82
133
|
}>;
|
|
134
|
+
/**
|
|
135
|
+
* Wave-5 (wo801, W5.1) bounded ring of per-turn passive-injection honesty
|
|
136
|
+
* records — one entry per turn that actually ran retrieval (turns that
|
|
137
|
+
* reused the prior turn's cached block, or that ran with the feature
|
|
138
|
+
* flag/budget off, append nothing). See turn-knowledge-injection.ts for
|
|
139
|
+
* the record shape and recordTurnInjection for the ring-eviction policy.
|
|
140
|
+
* Deliberately a plain field (no new KnowledgeEvent contract member) —
|
|
141
|
+
* the same entries are also appended to the agent's session transcript
|
|
142
|
+
* via `session.appendMessage({type:'knowledge_injection', ...})`.
|
|
143
|
+
*/
|
|
144
|
+
turnInjections?: TurnInjectionRecord[] | undefined;
|
|
83
145
|
}
|
|
84
146
|
export declare class AgentManager {
|
|
85
147
|
private agents;
|
|
@@ -90,12 +152,89 @@ export declare class AgentManager {
|
|
|
90
152
|
private wrfcController;
|
|
91
153
|
private executor;
|
|
92
154
|
private readonly configManager;
|
|
155
|
+
/**
|
|
156
|
+
* Live snapshot accessors for RUNNING agents (Wave-3 Part C6 bridge).
|
|
157
|
+
* Registered by the executor (orchestrator-runner.ts) right after it
|
|
158
|
+
* creates the agent's ConversationManager; the manager never stores
|
|
159
|
+
* messages itself while an agent is running — it just holds a callback.
|
|
160
|
+
*/
|
|
161
|
+
private readonly conversationSources;
|
|
162
|
+
/**
|
|
163
|
+
* Wave-4 cooperative cancellation bridge (wo701): per-agent AbortSignal
|
|
164
|
+
* registered by an orchestration-engine work item for the duration of one
|
|
165
|
+
* phase run. AgentOrchestrator reads this via
|
|
166
|
+
* setCancellationSource/getCancellationSignal and threads it into
|
|
167
|
+
* toolRegistry.execute opts so opted-in tools (exec, fetch) can abort an
|
|
168
|
+
* in-flight child process/request immediately, instead of only at the next
|
|
169
|
+
* turn boundary's status poll. Purely additive — no caller is required to
|
|
170
|
+
* register anything, and an agent with no registered signal behaves
|
|
171
|
+
* exactly as before this change.
|
|
172
|
+
*/
|
|
173
|
+
private readonly cancellationSignals;
|
|
174
|
+
/**
|
|
175
|
+
* Frozen final snapshots for agents whose live source was released (their
|
|
176
|
+
* run ended). Map insertion order doubles as the bounded ring's age order:
|
|
177
|
+
* oldest entry (first key) is evicted once conversationSnapshotRetention is
|
|
178
|
+
* exceeded. See getConversationSnapshot for the read-side contract.
|
|
179
|
+
*/
|
|
180
|
+
private readonly frozenConversationSnapshots;
|
|
181
|
+
private readonly conversationSnapshotRetention;
|
|
93
182
|
constructor(deps?: AgentManagerDependencies);
|
|
94
183
|
setRuntimeBus(runtimeBus: RuntimeEventBus | null): void;
|
|
95
184
|
private deriveEffectiveTools;
|
|
96
185
|
spawn(input: AgentInput): AgentRecord;
|
|
97
186
|
getStatus(id: string): AgentRecord | null;
|
|
98
|
-
cancel(id: string): boolean;
|
|
187
|
+
cancel(id: string, kind?: 'interrupt' | 'kill'): boolean;
|
|
188
|
+
/**
|
|
189
|
+
* Register the live conversation-snapshot source for a running agent
|
|
190
|
+
* (Wave-3 Part C6 bridge). Called by the executor (orchestrator-runner.ts)
|
|
191
|
+
* once its ConversationManager exists — `source` is invoked on demand by
|
|
192
|
+
* getConversationSnapshot(); the manager never copies or stores the
|
|
193
|
+
* messages itself while the agent is running.
|
|
194
|
+
*/
|
|
195
|
+
registerConversationSource(agentId: string, source: () => ConversationMessageSnapshot[]): void;
|
|
196
|
+
/**
|
|
197
|
+
* Wave-4 cooperative cancellation bridge (wo701): register the AbortSignal
|
|
198
|
+
* an orchestration engine's cancellation registry created for a work
|
|
199
|
+
* item's current agent. Called by the engine right after
|
|
200
|
+
* AgentManager.spawn() so the signal is in place before the agent's first
|
|
201
|
+
* turn/tool call.
|
|
202
|
+
*/
|
|
203
|
+
registerCancellationSignal(agentId: string, signal: AbortSignal): void;
|
|
204
|
+
/** Drop the registered signal once the run ends (success, failure, or cancel). Safe to call unconditionally. */
|
|
205
|
+
releaseCancellationSignal(agentId: string): void;
|
|
206
|
+
/** Read back the registered signal for AgentOrchestrator's per-tool-call opts. */
|
|
207
|
+
getCancellationSignal(agentId: string): AbortSignal | undefined;
|
|
208
|
+
/**
|
|
209
|
+
* Release the live source for an agent whose run has ended, freezing one
|
|
210
|
+
* final snapshot into the bounded retention ring (see
|
|
211
|
+
* DEFAULT_CONVERSATION_SNAPSHOT_RETENTION) so a transcript tab that was
|
|
212
|
+
* open at the moment of completion keeps showing content instead of going
|
|
213
|
+
* blank. Once evicted (oldest-first, beyond the retention bound),
|
|
214
|
+
* getConversationSnapshot falls back to an empty array — callers past that
|
|
215
|
+
* point are expected to degrade to the on-disk event ledger (Wave-3 TUI
|
|
216
|
+
* Part C6's documented fallback for completed/detached agents).
|
|
217
|
+
*
|
|
218
|
+
* Safe to call even when no source was ever registered for this agentId
|
|
219
|
+
* (e.g. a WRFC owner agent, which never runs its own turn loop).
|
|
220
|
+
*/
|
|
221
|
+
releaseConversationSource(agentId: string): void;
|
|
222
|
+
/**
|
|
223
|
+
* The Wave-3 tab attach point: a full-fidelity conversation history for a
|
|
224
|
+
* fleet agent (ConversationMessageSnapshot[] — the same shape the main
|
|
225
|
+
* session surface renders via MessageLineCache/conversation.ts).
|
|
226
|
+
*
|
|
227
|
+
* - RUNNING agent with a registered source → the current live snapshot.
|
|
228
|
+
* - Agent whose run just ended → the frozen final snapshot, until evicted
|
|
229
|
+
* from the bounded retention ring (oldest-first beyond
|
|
230
|
+
* conversationSnapshotRetention completed agents).
|
|
231
|
+
* - Unknown agent, or one long since evicted → empty array. The disk
|
|
232
|
+
* ledger (<agentId>.jsonl, written by AgentSession) is NOT a substitute
|
|
233
|
+
* for this array — it is a truncated event log (tool args/results
|
|
234
|
+
* sliced to 500 chars, no assistant message text), so callers past
|
|
235
|
+
* eviction get a degraded activity view, never a fabricated replay.
|
|
236
|
+
*/
|
|
237
|
+
getConversationSnapshot(agentId: string): ConversationMessageSnapshot[];
|
|
99
238
|
listByGraph(graphId: string): AgentRecord[];
|
|
100
239
|
cancelSubtree(rootAgentId: string): string[];
|
|
101
240
|
cancelGraph(graphId: string): string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../../src/platform/tools/agent/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAcrE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAE1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAG9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../../src/platform/tools/agent/manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,11 +8,27 @@ import { logger } from '../../utils/logger.js';
|
|
|
8
8
|
import { summarizeError } from '../../utils/error-display.js';
|
|
9
9
|
import { splitModelRegistryKey } from '../../providers/registry-helpers.js';
|
|
10
10
|
import { isRootReviewRoleTask, resolveAuthoritativeWrfcScope, resolveImplementationToolContract, resolveNarrowedRootSpawnScope, } from './wrfc-batch-policy.js';
|
|
11
|
+
/**
|
|
12
|
+
* Wave-3 tab attach point (Part C6): default bound on how many recently
|
|
13
|
+
* finished agents' final conversation snapshot AgentManager keeps around
|
|
14
|
+
* after their live source is released. Without a bound, a long-lived process
|
|
15
|
+
* that spawns many short-lived agents would retain every finished agent's
|
|
16
|
+
* full message history forever — this is the "leaking unbounded memory" the
|
|
17
|
+
* brief calls out. RUNNING agents are unaffected by this bound: their
|
|
18
|
+
* snapshot is read live from the still-open ConversationManager, whose size
|
|
19
|
+
* is already governed by the existing context-window compaction machinery
|
|
20
|
+
* (core/context-compaction.ts), not by this retention ring.
|
|
21
|
+
*/
|
|
22
|
+
export const DEFAULT_CONVERSATION_SNAPSHOT_RETENTION = 20;
|
|
11
23
|
export const AGENT_TEMPLATES = {
|
|
12
24
|
orchestrator: {
|
|
13
25
|
description: 'WRFC coordination and decomposition agent',
|
|
14
26
|
defaultTools: ['read', 'find', 'analyze', 'inspect', 'registry'],
|
|
15
27
|
},
|
|
28
|
+
planner: {
|
|
29
|
+
description: 'Read-only goal-decomposition agent (no write/edit/exec/delegate)',
|
|
30
|
+
defaultTools: ['read', 'find', 'analyze', 'inspect'],
|
|
31
|
+
},
|
|
16
32
|
engineer: {
|
|
17
33
|
description: 'Full-stack implementation agent',
|
|
18
34
|
defaultTools: ['read', 'write', 'edit', 'find', 'exec', 'analyze', 'inspect', 'fetch', 'registry'],
|
|
@@ -65,12 +81,40 @@ export class AgentManager {
|
|
|
65
81
|
wrfcController;
|
|
66
82
|
executor;
|
|
67
83
|
configManager;
|
|
84
|
+
/**
|
|
85
|
+
* Live snapshot accessors for RUNNING agents (Wave-3 Part C6 bridge).
|
|
86
|
+
* Registered by the executor (orchestrator-runner.ts) right after it
|
|
87
|
+
* creates the agent's ConversationManager; the manager never stores
|
|
88
|
+
* messages itself while an agent is running — it just holds a callback.
|
|
89
|
+
*/
|
|
90
|
+
conversationSources = new Map();
|
|
91
|
+
/**
|
|
92
|
+
* Wave-4 cooperative cancellation bridge (wo701): per-agent AbortSignal
|
|
93
|
+
* registered by an orchestration-engine work item for the duration of one
|
|
94
|
+
* phase run. AgentOrchestrator reads this via
|
|
95
|
+
* setCancellationSource/getCancellationSignal and threads it into
|
|
96
|
+
* toolRegistry.execute opts so opted-in tools (exec, fetch) can abort an
|
|
97
|
+
* in-flight child process/request immediately, instead of only at the next
|
|
98
|
+
* turn boundary's status poll. Purely additive — no caller is required to
|
|
99
|
+
* register anything, and an agent with no registered signal behaves
|
|
100
|
+
* exactly as before this change.
|
|
101
|
+
*/
|
|
102
|
+
cancellationSignals = new Map();
|
|
103
|
+
/**
|
|
104
|
+
* Frozen final snapshots for agents whose live source was released (their
|
|
105
|
+
* run ended). Map insertion order doubles as the bounded ring's age order:
|
|
106
|
+
* oldest entry (first key) is evicted once conversationSnapshotRetention is
|
|
107
|
+
* exceeded. See getConversationSnapshot for the read-side contract.
|
|
108
|
+
*/
|
|
109
|
+
frozenConversationSnapshots = new Map();
|
|
110
|
+
conversationSnapshotRetention;
|
|
68
111
|
constructor(deps = {}) {
|
|
69
112
|
this.archetypeLoader = deps.archetypeLoader ?? new ArchetypeLoader();
|
|
70
113
|
this.messageBus = deps.messageBus ?? new AgentMessageBus();
|
|
71
114
|
this.wrfcController = deps.wrfcController ?? null;
|
|
72
115
|
this.executor = deps.executor ?? null;
|
|
73
116
|
this.configManager = deps.configManager ?? null;
|
|
117
|
+
this.conversationSnapshotRetention = deps.conversationSnapshotRetention ?? DEFAULT_CONVERSATION_SNAPSHOT_RETENTION;
|
|
74
118
|
}
|
|
75
119
|
setRuntimeBus(runtimeBus) {
|
|
76
120
|
this.runtimeBus = runtimeBus;
|
|
@@ -285,6 +329,7 @@ export class AgentManager {
|
|
|
285
329
|
communicationLane,
|
|
286
330
|
systemPromptAddendum: input.systemPromptAddendum,
|
|
287
331
|
wrfcSubtasks: input.wrfcSubtasks,
|
|
332
|
+
...(input.fanoutCollapse ? { fanoutCollapse: input.fanoutCollapse } : {}),
|
|
288
333
|
status: 'pending',
|
|
289
334
|
startedAt: Date.now(),
|
|
290
335
|
toolCallCount: 0,
|
|
@@ -298,6 +343,7 @@ export class AgentManager {
|
|
|
298
343
|
reasoningSummaryCount: 0,
|
|
299
344
|
},
|
|
300
345
|
dangerously_disable_wrfc: input.dangerously_disable_wrfc,
|
|
346
|
+
workingDirectory: input.workingDirectory,
|
|
301
347
|
cohort: input.cohort,
|
|
302
348
|
...(orchestrationGraphId ? {
|
|
303
349
|
orchestrationGraphId,
|
|
@@ -446,12 +492,13 @@ export class AgentManager {
|
|
|
446
492
|
getStatus(id) {
|
|
447
493
|
return this.agents.get(id) ?? null;
|
|
448
494
|
}
|
|
449
|
-
cancel(id) {
|
|
495
|
+
cancel(id, kind = 'kill') {
|
|
450
496
|
const record = this.agents.get(id);
|
|
451
497
|
if (!record)
|
|
452
498
|
return false;
|
|
453
499
|
if (record.status === 'pending' || record.status === 'running') {
|
|
454
500
|
record.status = 'cancelled';
|
|
501
|
+
record.terminationKind = kind;
|
|
455
502
|
record.completedAt = Date.now();
|
|
456
503
|
if (this.runtimeBus) {
|
|
457
504
|
emitAgentCancelled(this.runtimeBus, {
|
|
@@ -480,6 +527,99 @@ export class AgentManager {
|
|
|
480
527
|
this.agents.set(id, record);
|
|
481
528
|
return true;
|
|
482
529
|
}
|
|
530
|
+
/**
|
|
531
|
+
* Register the live conversation-snapshot source for a running agent
|
|
532
|
+
* (Wave-3 Part C6 bridge). Called by the executor (orchestrator-runner.ts)
|
|
533
|
+
* once its ConversationManager exists — `source` is invoked on demand by
|
|
534
|
+
* getConversationSnapshot(); the manager never copies or stores the
|
|
535
|
+
* messages itself while the agent is running.
|
|
536
|
+
*/
|
|
537
|
+
registerConversationSource(agentId, source) {
|
|
538
|
+
this.conversationSources.set(agentId, source);
|
|
539
|
+
}
|
|
540
|
+
/**
|
|
541
|
+
* Wave-4 cooperative cancellation bridge (wo701): register the AbortSignal
|
|
542
|
+
* an orchestration engine's cancellation registry created for a work
|
|
543
|
+
* item's current agent. Called by the engine right after
|
|
544
|
+
* AgentManager.spawn() so the signal is in place before the agent's first
|
|
545
|
+
* turn/tool call.
|
|
546
|
+
*/
|
|
547
|
+
registerCancellationSignal(agentId, signal) {
|
|
548
|
+
this.cancellationSignals.set(agentId, signal);
|
|
549
|
+
}
|
|
550
|
+
/** Drop the registered signal once the run ends (success, failure, or cancel). Safe to call unconditionally. */
|
|
551
|
+
releaseCancellationSignal(agentId) {
|
|
552
|
+
this.cancellationSignals.delete(agentId);
|
|
553
|
+
}
|
|
554
|
+
/** Read back the registered signal for AgentOrchestrator's per-tool-call opts. */
|
|
555
|
+
getCancellationSignal(agentId) {
|
|
556
|
+
return this.cancellationSignals.get(agentId);
|
|
557
|
+
}
|
|
558
|
+
/**
|
|
559
|
+
* Release the live source for an agent whose run has ended, freezing one
|
|
560
|
+
* final snapshot into the bounded retention ring (see
|
|
561
|
+
* DEFAULT_CONVERSATION_SNAPSHOT_RETENTION) so a transcript tab that was
|
|
562
|
+
* open at the moment of completion keeps showing content instead of going
|
|
563
|
+
* blank. Once evicted (oldest-first, beyond the retention bound),
|
|
564
|
+
* getConversationSnapshot falls back to an empty array — callers past that
|
|
565
|
+
* point are expected to degrade to the on-disk event ledger (Wave-3 TUI
|
|
566
|
+
* Part C6's documented fallback for completed/detached agents).
|
|
567
|
+
*
|
|
568
|
+
* Safe to call even when no source was ever registered for this agentId
|
|
569
|
+
* (e.g. a WRFC owner agent, which never runs its own turn loop).
|
|
570
|
+
*/
|
|
571
|
+
releaseConversationSource(agentId) {
|
|
572
|
+
const source = this.conversationSources.get(agentId);
|
|
573
|
+
if (!source)
|
|
574
|
+
return;
|
|
575
|
+
this.conversationSources.delete(agentId);
|
|
576
|
+
let finalSnapshot;
|
|
577
|
+
try {
|
|
578
|
+
finalSnapshot = source();
|
|
579
|
+
}
|
|
580
|
+
catch (error) {
|
|
581
|
+
logger.warn('AgentManager: conversation source threw on release', { agentId, error: summarizeError(error) });
|
|
582
|
+
return;
|
|
583
|
+
}
|
|
584
|
+
// Re-insert at the end (freshest) even if already present, so the ring's
|
|
585
|
+
// insertion order tracks recency of completion, not first appearance.
|
|
586
|
+
this.frozenConversationSnapshots.delete(agentId);
|
|
587
|
+
this.frozenConversationSnapshots.set(agentId, finalSnapshot);
|
|
588
|
+
while (this.frozenConversationSnapshots.size > this.conversationSnapshotRetention) {
|
|
589
|
+
const oldestKey = this.frozenConversationSnapshots.keys().next().value;
|
|
590
|
+
if (oldestKey === undefined)
|
|
591
|
+
break;
|
|
592
|
+
this.frozenConversationSnapshots.delete(oldestKey);
|
|
593
|
+
}
|
|
594
|
+
}
|
|
595
|
+
/**
|
|
596
|
+
* The Wave-3 tab attach point: a full-fidelity conversation history for a
|
|
597
|
+
* fleet agent (ConversationMessageSnapshot[] — the same shape the main
|
|
598
|
+
* session surface renders via MessageLineCache/conversation.ts).
|
|
599
|
+
*
|
|
600
|
+
* - RUNNING agent with a registered source → the current live snapshot.
|
|
601
|
+
* - Agent whose run just ended → the frozen final snapshot, until evicted
|
|
602
|
+
* from the bounded retention ring (oldest-first beyond
|
|
603
|
+
* conversationSnapshotRetention completed agents).
|
|
604
|
+
* - Unknown agent, or one long since evicted → empty array. The disk
|
|
605
|
+
* ledger (<agentId>.jsonl, written by AgentSession) is NOT a substitute
|
|
606
|
+
* for this array — it is a truncated event log (tool args/results
|
|
607
|
+
* sliced to 500 chars, no assistant message text), so callers past
|
|
608
|
+
* eviction get a degraded activity view, never a fabricated replay.
|
|
609
|
+
*/
|
|
610
|
+
getConversationSnapshot(agentId) {
|
|
611
|
+
const liveSource = this.conversationSources.get(agentId);
|
|
612
|
+
if (liveSource) {
|
|
613
|
+
try {
|
|
614
|
+
return liveSource();
|
|
615
|
+
}
|
|
616
|
+
catch (error) {
|
|
617
|
+
logger.warn('AgentManager: conversation source threw', { agentId, error: summarizeError(error) });
|
|
618
|
+
return [];
|
|
619
|
+
}
|
|
620
|
+
}
|
|
621
|
+
return this.frozenConversationSnapshots.get(agentId) ?? [];
|
|
622
|
+
}
|
|
483
623
|
listByGraph(graphId) {
|
|
484
624
|
return this.list().filter((agent) => agent.orchestrationGraphId === graphId);
|
|
485
625
|
}
|
|
@@ -521,6 +661,8 @@ export class AgentManager {
|
|
|
521
661
|
clear() {
|
|
522
662
|
this.agents.clear();
|
|
523
663
|
this.orchestrationGraphs.clear();
|
|
664
|
+
this.conversationSources.clear();
|
|
665
|
+
this.frozenConversationSnapshots.clear();
|
|
524
666
|
}
|
|
525
667
|
exportState() {
|
|
526
668
|
return [...this.agents.values()].map((agent) => {
|
|
@@ -10,6 +10,21 @@ export interface AgentProviderRoutingPolicy {
|
|
|
10
10
|
providerFailurePolicy?: 'ordered-fallbacks' | 'fail' | undefined;
|
|
11
11
|
fallbackModels?: readonly string[] | undefined;
|
|
12
12
|
}
|
|
13
|
+
/**
|
|
14
|
+
* Internal marker recording that a requested multi-agent fan-out was collapsed
|
|
15
|
+
* into a single WRFC owner chain by the topology guard. Set by the collapse
|
|
16
|
+
* guards (wrfc-batch-policy.ts / the TUI wrfc-agent-guard), threaded onto the
|
|
17
|
+
* owner AgentRecord and then the WrfcChain. It lets the controller mechanically
|
|
18
|
+
* recognise — and never fail the review on — the parallelism/spawn-count
|
|
19
|
+
* constraints the collapse itself made unsatisfiable, and lets the host state
|
|
20
|
+
* the collapse plainly to the user. Never set by the model-facing tool call.
|
|
21
|
+
*/
|
|
22
|
+
export interface FanoutCollapseInfo {
|
|
23
|
+
/** How many separate agents the requester asked to fan out into. */
|
|
24
|
+
readonly requestedAgentCount: number;
|
|
25
|
+
/** Short human phrase describing the requested shape, for the user-facing announcement. */
|
|
26
|
+
readonly requestedShape: string;
|
|
27
|
+
}
|
|
13
28
|
/** Input shape for the agent tool. */
|
|
14
29
|
export interface AgentInput {
|
|
15
30
|
mode: 'spawn' | 'batch-spawn' | 'status' | 'cancel' | 'list' | 'templates' | 'get' | 'budget' | 'plan' | 'wait' | 'message' | 'wrfc-chains' | 'wrfc-history' | 'cohort-status' | 'cohort-report';
|
|
@@ -29,6 +44,8 @@ export interface AgentInput {
|
|
|
29
44
|
systemPromptAddendum?: string | undefined;
|
|
30
45
|
/** Internal compound WRFC deliverables owned by one top-level WRFC chain. */
|
|
31
46
|
wrfcSubtasks?: AgentInput['tasks'] | undefined;
|
|
47
|
+
/** Internal: set by the topology guard when a requested fan-out was collapsed into this owner chain. */
|
|
48
|
+
fanoutCollapse?: FanoutCollapseInfo | undefined;
|
|
32
49
|
successCriteria?: string[] | undefined;
|
|
33
50
|
requiredEvidence?: string[] | undefined;
|
|
34
51
|
writeScope?: string[] | undefined;
|
|
@@ -40,6 +57,15 @@ export interface AgentInput {
|
|
|
40
57
|
orchestrationNodeId?: string | undefined;
|
|
41
58
|
parentNodeId?: string | undefined;
|
|
42
59
|
dangerously_disable_wrfc?: boolean | undefined;
|
|
60
|
+
/**
|
|
61
|
+
* Overrides this spawn's tool working directory (absolute path), e.g. an
|
|
62
|
+
* orchestration-engine item's dedicated git worktree in `worktree`
|
|
63
|
+
* isolation mode (see platform/orchestration/worktree-isolation.ts).
|
|
64
|
+
* Omitted ⇒ the orchestrator's default working directory, exactly as
|
|
65
|
+
* before this field existed. Internal — not part of any user-facing agent
|
|
66
|
+
* template surface.
|
|
67
|
+
*/
|
|
68
|
+
workingDirectory?: string | undefined;
|
|
43
69
|
cohort?: string | undefined;
|
|
44
70
|
tasks?: Array<{
|
|
45
71
|
task: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../src/platform/tools/agent/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAE1E;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,cAgP/B,CAAC;AAEF,MAAM,WAAW,0BAA0B;IACzC,iBAAiB,CAAC,EAAE,iBAAiB,GAAG,UAAU,GAAG,WAAW,GAAG,SAAS,CAAC;IAC7E,qBAAqB,CAAC,EAAE,mBAAmB,GAAG,MAAM,GAAG,SAAS,CAAC;IACjE,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;CAChD;AAED,sCAAsC;AACtC,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,OAAO,GAAG,aAAa,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,aAAa,GAAG,cAAc,GAAG,eAAe,GAAG,eAAe,CAAC;IAEjM,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACtC,OAAO,CAAC,EAAE,0BAA0B,GAAG,SAAS,CAAC;IACjD,eAAe,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC;IAC9C,eAAe,CAAC,EAAE,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;IACpE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC7B,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACpC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,0DAA0D;IAC1D,oBAAoB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,6EAA6E;IAC7E,YAAY,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IAC/C,eAAe,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACvC,gBAAgB,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAClC,iBAAiB,CAAC,EAAE,QAAQ,GAAG,mBAAmB,GAAG,SAAS,CAAC;IAC/D,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACzC,iBAAiB,CAAC,EAAE,aAAa,GAAG,qBAAqB,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC5F,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,oBAAoB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,wBAAwB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../src/platform/tools/agent/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,7 +43,7 @@ export const AGENT_TOOL_SCHEMA = {
|
|
|
43
43
|
},
|
|
44
44
|
template: {
|
|
45
45
|
type: 'string',
|
|
46
|
-
enum: ['orchestrator', 'engineer', 'reviewer', 'tester', 'researcher', 'integrator', 'general'],
|
|
46
|
+
enum: ['orchestrator', 'planner', 'engineer', 'reviewer', 'tester', 'researcher', 'integrator', 'general'],
|
|
47
47
|
description: 'Agent template to use (mode: spawn). Default: general. ' +
|
|
48
48
|
'Each template includes a pre-selected tool set.',
|
|
49
49
|
},
|
|
@@ -167,7 +167,7 @@ export const AGENT_TOOL_SCHEMA = {
|
|
|
167
167
|
required: ['task'],
|
|
168
168
|
properties: {
|
|
169
169
|
task: { type: 'string', description: 'Task description for the agent.' },
|
|
170
|
-
template: { type: 'string', enum: ['orchestrator', 'engineer', 'reviewer', 'tester', 'researcher', 'integrator', 'general'], description: 'Agent template.' },
|
|
170
|
+
template: { type: 'string', enum: ['orchestrator', 'planner', 'engineer', 'reviewer', 'tester', 'researcher', 'integrator', 'general'], description: 'Agent template.' },
|
|
171
171
|
model: { type: 'string', description: 'Provider-qualified model registry key.' },
|
|
172
172
|
provider: { type: 'string', description: 'Provider override.' },
|
|
173
173
|
fallbackModels: { type: 'array', items: { type: 'string' }, description: 'Ordered provider-qualified registry keys.' },
|