@pellux/goodvibes-tui 0.18.10 → 0.18.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +56 -0
- package/README.md +1 -1
- package/docs/foundation-artifacts/operator-contract.json +1 -1
- package/package.json +2 -2
- package/src/core/conversation-rendering.ts +2 -2
- package/src/core/conversation.ts +5 -5
- package/src/core/orchestrator.ts +13 -11
- package/src/daemon/facade-composition.ts +8 -8
- package/src/daemon/facade.ts +8 -8
- package/src/daemon/types.ts +3 -3
- package/src/input/command-registry.ts +3 -3
- package/src/input/commands/session-content.ts +2 -2
- package/src/input/commands/session-workflow.ts +1 -1
- package/src/input/handler-feed.ts +1 -1
- package/src/input/session-picker-modal.ts +1 -1
- package/src/panels/builtin/agent.ts +1 -0
- package/src/panels/builtin/operations.ts +1 -0
- package/src/panels/builtin/session.ts +1 -1
- package/src/panels/builtin/shared.ts +2 -2
- package/src/panels/context-visualizer-panel.ts +4 -1
- package/src/panels/provider-health-domains.ts +5 -1
- package/src/panels/provider-health-panel.ts +5 -1
- package/src/panels/session-browser-panel.ts +1 -1
- package/src/panels/token-budget-panel.ts +6 -2
- package/src/plugins/loader.ts +2 -2
- package/src/runtime/bootstrap-command-context.ts +3 -3
- package/src/runtime/bootstrap-command-parts.ts +3 -3
- package/src/runtime/bootstrap-core.ts +2 -2
- package/src/runtime/bootstrap-hook-bridge.ts +1 -1
- package/src/runtime/bootstrap-shell.ts +1 -1
- package/src/runtime/bootstrap.ts +5 -4
- package/src/runtime/services.ts +2 -2
- package/src/runtime/ui-read-models-observability-security.ts +2 -2
- package/src/runtime/ui-read-models-observability-system.ts +1 -1
- package/src/runtime/ui-service-queries.ts +1 -1
- package/src/tools/index.ts +1 -1
- package/src/version.ts +1 -1
- package/src/acp/connection.ts +0 -447
- package/src/acp/index.ts +0 -7
- package/src/acp/manager.ts +0 -1
- package/src/adapters/bluebubbles/index.ts +0 -127
- package/src/adapters/discord/index.ts +0 -297
- package/src/adapters/github/index.ts +0 -73
- package/src/adapters/google-chat/index.ts +0 -119
- package/src/adapters/imessage/index.ts +0 -92
- package/src/adapters/index.ts +0 -15
- package/src/adapters/matrix/index.ts +0 -116
- package/src/adapters/mattermost/index.ts +0 -151
- package/src/adapters/msteams/index.ts +0 -180
- package/src/adapters/ntfy/index.ts +0 -118
- package/src/adapters/signal/index.ts +0 -92
- package/src/adapters/slack/index.ts +0 -323
- package/src/adapters/telegram/index.ts +0 -160
- package/src/adapters/types.ts +0 -97
- package/src/adapters/webhook/index.ts +0 -178
- package/src/adapters/whatsapp/index.ts +0 -135
- package/src/agents/message-bus-core.ts +0 -312
- package/src/agents/message-bus.ts +0 -2
- package/src/agents/orchestrator-prompts.ts +0 -351
- package/src/agents/orchestrator-runner.ts +0 -668
- package/src/agents/orchestrator.ts +0 -438
- package/src/agents/session.ts +0 -108
- package/src/agents/worktree.ts +0 -153
- package/src/agents/wrfc-config.ts +0 -47
- package/src/agents/wrfc-controller.ts +0 -747
- package/src/agents/wrfc-gate-runtime.ts +0 -75
- package/src/agents/wrfc-reporting.ts +0 -284
- package/src/agents/wrfc-runtime-events.ts +0 -150
- package/src/agents/wrfc-types.ts +0 -67
- package/src/automation/delivery-manager.ts +0 -368
- package/src/automation/index.ts +0 -72
- package/src/automation/manager-runtime-delivery.ts +0 -139
- package/src/automation/manager-runtime-events.ts +0 -131
- package/src/automation/manager-runtime-execution.ts +0 -511
- package/src/automation/manager-runtime-helpers.ts +0 -433
- package/src/automation/manager-runtime-job-mutations.ts +0 -175
- package/src/automation/manager-runtime-reconcile.ts +0 -148
- package/src/automation/manager-runtime-scheduling.ts +0 -189
- package/src/automation/manager-runtime-sync.ts +0 -54
- package/src/automation/manager-runtime.ts +0 -721
- package/src/automation/manager.ts +0 -10
- package/src/automation/service.ts +0 -242
- package/src/channels/builtin/account-actions.ts +0 -490
- package/src/channels/builtin/accounts.ts +0 -433
- package/src/channels/builtin/contracts.ts +0 -405
- package/src/channels/builtin/plugins.ts +0 -308
- package/src/channels/builtin/rendering.ts +0 -174
- package/src/channels/builtin/setup-schema.ts +0 -504
- package/src/channels/builtin/shared.ts +0 -96
- package/src/channels/builtin/surfaces.ts +0 -57
- package/src/channels/builtin/targets.ts +0 -693
- package/src/channels/builtin-runtime.ts +0 -443
- package/src/channels/delivery/shared.ts +0 -199
- package/src/channels/delivery/strategies-bridge.ts +0 -246
- package/src/channels/delivery/strategies-core.ts +0 -299
- package/src/channels/delivery/strategies-enterprise.ts +0 -178
- package/src/channels/delivery/types.ts +0 -59
- package/src/channels/delivery-router.ts +0 -127
- package/src/channels/index.ts +0 -77
- package/src/channels/plugin-registry.ts +0 -551
- package/src/channels/provider-runtime.ts +0 -330
- package/src/channels/reply-pipeline.ts +0 -522
- package/src/channels/route-manager.ts +0 -340
- package/src/channels/surface-registry.ts +0 -186
- package/src/config/helper-model.ts +0 -1
- package/src/config/manager.ts +0 -8
- package/src/config/subscription-auth.ts +0 -31
- package/src/config/tool-llm.ts +0 -110
- package/src/control-plane/approval-broker.ts +0 -351
- package/src/control-plane/gateway.ts +0 -1
- package/src/control-plane/index.ts +0 -54
- package/src/control-plane/media-contract-schemas.ts +0 -1
- package/src/control-plane/method-catalog-admin.ts +0 -1
- package/src/control-plane/method-catalog-channels.ts +0 -1
- package/src/control-plane/method-catalog-control-automation.ts +0 -1
- package/src/control-plane/method-catalog-control-core.ts +0 -1
- package/src/control-plane/method-catalog-control.ts +0 -1
- package/src/control-plane/method-catalog-events.ts +0 -1
- package/src/control-plane/method-catalog-knowledge.ts +0 -1
- package/src/control-plane/method-catalog-media.ts +0 -1
- package/src/control-plane/method-catalog-runtime.ts +0 -1
- package/src/control-plane/method-catalog-shared.ts +0 -1
- package/src/control-plane/method-catalog.ts +0 -1
- package/src/control-plane/operator-contract-schemas-admin.ts +0 -1
- package/src/control-plane/operator-contract-schemas-channels.ts +0 -1
- package/src/control-plane/operator-contract-schemas-control.ts +0 -1
- package/src/control-plane/operator-contract-schemas-domains.ts +0 -1
- package/src/control-plane/operator-contract-schemas-knowledge.ts +0 -1
- package/src/control-plane/operator-contract-schemas-media.ts +0 -1
- package/src/control-plane/operator-contract-schemas-permissions.ts +0 -1
- package/src/control-plane/operator-contract-schemas-remote.ts +0 -1
- package/src/control-plane/operator-contract-schemas-runtime.ts +0 -1
- package/src/control-plane/operator-contract-schemas-shared.ts +0 -1
- package/src/control-plane/operator-contract-schemas-telemetry.ts +0 -1
- package/src/control-plane/operator-contract-schemas.ts +0 -1
- package/src/control-plane/operator-contract.ts +0 -165
- package/src/control-plane/session-broker.ts +0 -780
- package/src/core/compaction-sections.ts +0 -492
- package/src/core/compaction-types.ts +0 -147
- package/src/core/context-compaction.ts +0 -542
- package/src/core/conversation-compaction.ts +0 -68
- package/src/core/conversation-diff.ts +0 -55
- package/src/core/conversation-utils.ts +0 -72
- package/src/core/event-replay.ts +0 -287
- package/src/core/orchestrator-context-runtime.ts +0 -407
- package/src/core/orchestrator-follow-up-runtime.ts +0 -134
- package/src/core/orchestrator-runtime.ts +0 -132
- package/src/core/orchestrator-tool-runtime.ts +0 -468
- package/src/core/orchestrator-turn-helpers.ts +0 -355
- package/src/core/orchestrator-turn-loop.ts +0 -443
- package/src/core/plan-command-handler.ts +0 -169
- package/src/core/transcript-events/classify.ts +0 -95
- package/src/core/transcript-events/index.ts +0 -15
- package/src/daemon/control-plane.ts +0 -522
- package/src/daemon/helpers.ts +0 -74
- package/src/daemon/http/router-route-contexts.ts +0 -370
- package/src/daemon/http/router.ts +0 -531
- package/src/daemon/http-listener.ts +0 -301
- package/src/daemon/index.ts +0 -1
- package/src/daemon/server.ts +0 -1
- package/src/daemon/service-manager.ts +0 -413
- package/src/daemon/surface-actions.ts +0 -183
- package/src/daemon/surface-delivery.ts +0 -530
- package/src/daemon/transport-events.ts +0 -110
- package/src/export/markdown.ts +0 -213
- package/src/export/session-export.ts +0 -1
- package/src/git/index.ts +0 -1
- package/src/git/service.ts +0 -414
- package/src/hooks/chain-engine.ts +0 -414
- package/src/hooks/dispatcher.ts +0 -414
- package/src/hooks/hook-api.ts +0 -170
- package/src/hooks/index.ts +0 -48
- package/src/hooks/runners/agent.ts +0 -93
- package/src/hooks/runners/prompt.ts +0 -69
- package/src/hooks/workbench.ts +0 -360
- package/src/integrations/index.ts +0 -42
- package/src/integrations/notifier.ts +0 -206
- package/src/integrations/webhooks.ts +0 -1
- package/src/knowledge/consolidation.ts +0 -346
- package/src/knowledge/graphql.ts +0 -324
- package/src/knowledge/index.ts +0 -60
- package/src/knowledge/ingest-compile.ts +0 -386
- package/src/knowledge/ingest-context.ts +0 -18
- package/src/knowledge/ingest-inputs.ts +0 -387
- package/src/knowledge/ingest.ts +0 -1
- package/src/knowledge/internal.ts +0 -257
- package/src/knowledge/knowledge-api.ts +0 -432
- package/src/knowledge/lint.ts +0 -121
- package/src/knowledge/memory-sync.ts +0 -62
- package/src/knowledge/packet.ts +0 -370
- package/src/knowledge/scheduling.ts +0 -283
- package/src/knowledge/service.ts +0 -715
- package/src/mcp/client.ts +0 -383
- package/src/mcp/index.ts +0 -12
- package/src/mcp/mcp-api.ts +0 -90
- package/src/mcp/registry.ts +0 -1
- package/src/media/builtin-image-understanding.ts +0 -303
- package/src/media/builtin-providers.ts +0 -26
- package/src/media/index.ts +0 -18
- package/src/multimodal/index.ts +0 -13
- package/src/multimodal/service.ts +0 -492
- package/src/permissions/briefs/build.ts +0 -88
- package/src/permissions/manager.ts +0 -1
- package/src/plugins/api.ts +0 -383
- package/src/plugins/manager.ts +0 -481
- package/src/profiles/shape.ts +0 -58
- package/src/providers/amazon-bedrock-mantle.ts +0 -50
- package/src/providers/amazon-bedrock.ts +0 -61
- package/src/providers/anthropic-compat.ts +0 -373
- package/src/providers/anthropic-sdk-provider.ts +0 -230
- package/src/providers/anthropic-vertex.ts +0 -59
- package/src/providers/anthropic.ts +0 -469
- package/src/providers/auto-register.ts +0 -417
- package/src/providers/builtin-catalog.ts +0 -326
- package/src/providers/builtin-registry.ts +0 -575
- package/src/providers/cache-planner.ts +0 -258
- package/src/providers/capabilities.ts +0 -1
- package/src/providers/custom-loader.ts +0 -425
- package/src/providers/discovered-compat.ts +0 -7
- package/src/providers/discovered-factory.ts +0 -61
- package/src/providers/discovered-traits.ts +0 -138
- package/src/providers/gemini.ts +0 -462
- package/src/providers/github-copilot.ts +0 -254
- package/src/providers/index.ts +0 -1
- package/src/providers/interface.ts +0 -185
- package/src/providers/llama-cpp.ts +0 -402
- package/src/providers/lm-studio-helpers.ts +0 -367
- package/src/providers/lm-studio.ts +0 -484
- package/src/providers/model-catalog-cache.ts +0 -221
- package/src/providers/model-catalog-notifications.ts +0 -97
- package/src/providers/model-catalog-synthetic.ts +0 -202
- package/src/providers/model-catalog.ts +0 -211
- package/src/providers/model-limits.ts +0 -1
- package/src/providers/ollama.ts +0 -469
- package/src/providers/openai-codex.ts +0 -472
- package/src/providers/openai-compat.ts +0 -615
- package/src/providers/openai.ts +0 -231
- package/src/providers/optimizer.ts +0 -1
- package/src/providers/provider-api.ts +0 -1
- package/src/providers/registry-helpers.ts +0 -34
- package/src/providers/registry-models.ts +0 -77
- package/src/providers/registry-types.ts +0 -67
- package/src/providers/registry.ts +0 -1
- package/src/providers/runtime-metadata.ts +0 -149
- package/src/providers/runtime-snapshot.ts +0 -130
- package/src/providers/synthetic.ts +0 -561
- package/src/providers/tier-prompts.ts +0 -84
- package/src/providers/tool-formats.ts +0 -414
- package/src/runtime/auth/inspection.ts +0 -125
- package/src/runtime/bootstrap-background.ts +0 -157
- package/src/runtime/bootstrap-helpers.ts +0 -88
- package/src/runtime/bootstrap-runtime-events.ts +0 -254
- package/src/runtime/bootstrap-services.ts +0 -197
- package/src/runtime/compaction/index.ts +0 -1
- package/src/runtime/compaction/lifecycle.ts +0 -1
- package/src/runtime/compaction/manager.ts +0 -474
- package/src/runtime/compaction/quality-score.ts +0 -1
- package/src/runtime/compaction/resume-repair.ts +0 -1
- package/src/runtime/compaction/strategies/autocompact.ts +0 -1
- package/src/runtime/compaction/strategies/boundary-commit.ts +0 -1
- package/src/runtime/compaction/strategies/collapse.ts +0 -1
- package/src/runtime/compaction/strategies/index.ts +0 -1
- package/src/runtime/compaction/strategies/microcompact.ts +0 -1
- package/src/runtime/compaction/strategies/reactive.ts +0 -1
- package/src/runtime/compaction/types.ts +0 -1
- package/src/runtime/ecosystem/recommendations.ts +0 -117
- package/src/runtime/emitters/agents.ts +0 -96
- package/src/runtime/emitters/automation.ts +0 -112
- package/src/runtime/emitters/communication.ts +0 -53
- package/src/runtime/emitters/compaction.ts +0 -161
- package/src/runtime/emitters/control-plane.ts +0 -65
- package/src/runtime/emitters/deliveries.ts +0 -65
- package/src/runtime/emitters/forensics.ts +0 -17
- package/src/runtime/emitters/index.ts +0 -59
- package/src/runtime/emitters/knowledge.ts +0 -129
- package/src/runtime/emitters/mcp.ts +0 -95
- package/src/runtime/emitters/ops.ts +0 -163
- package/src/runtime/emitters/orchestration.ts +0 -87
- package/src/runtime/emitters/permissions.ts +0 -98
- package/src/runtime/emitters/planner.ts +0 -23
- package/src/runtime/emitters/plugins.ts +0 -78
- package/src/runtime/emitters/providers.ts +0 -30
- package/src/runtime/emitters/routes.ts +0 -57
- package/src/runtime/emitters/security.ts +0 -53
- package/src/runtime/emitters/session.ts +0 -93
- package/src/runtime/emitters/surfaces.ts +0 -57
- package/src/runtime/emitters/tasks.ts +0 -69
- package/src/runtime/emitters/tools.ts +0 -140
- package/src/runtime/emitters/transport.ts +0 -78
- package/src/runtime/emitters/turn.ts +0 -155
- package/src/runtime/emitters/ui.ts +0 -57
- package/src/runtime/emitters/watchers.ts +0 -57
- package/src/runtime/emitters/workflows.ts +0 -79
- package/src/runtime/eval/index.ts +0 -48
- package/src/runtime/eval/runner.ts +0 -163
- package/src/runtime/eval/suites.ts +0 -264
- package/src/runtime/events/domain-map.ts +0 -148
- package/src/runtime/events/index.ts +0 -1
- package/src/runtime/events/turn.ts +0 -1
- package/src/runtime/events/workflows.ts +0 -1
- package/src/runtime/forensics/collector.ts +0 -693
- package/src/runtime/forensics/index.ts +0 -23
- package/src/runtime/foundation-clients.ts +0 -78
- package/src/runtime/foundation-services.ts +0 -96
- package/src/runtime/guidance.ts +0 -183
- package/src/runtime/health/effect-handlers.ts +0 -189
- package/src/runtime/health/index.ts +0 -70
- package/src/runtime/health/wiring.ts +0 -115
- package/src/runtime/integration/helpers.ts +0 -640
- package/src/runtime/lifecycle.ts +0 -107
- package/src/runtime/mcp/index.ts +0 -68
- package/src/runtime/mcp/manager.ts +0 -513
- package/src/runtime/network/inbound.ts +0 -131
- package/src/runtime/network/index.ts +0 -30
- package/src/runtime/network/outbound.ts +0 -292
- package/src/runtime/network/shared.ts +0 -82
- package/src/runtime/operator-client.ts +0 -235
- package/src/runtime/ops/control-plane.ts +0 -363
- package/src/runtime/ops/index.ts +0 -122
- package/src/runtime/ops/playbooks/index.ts +0 -10
- package/src/runtime/ops/playbooks/session-unrecoverable.ts +0 -196
- package/src/runtime/ops/playbooks/stuck-turn.ts +0 -197
- package/src/runtime/ops/runtime-context.ts +0 -100
- package/src/runtime/ops-api.ts +0 -27
- package/src/runtime/orchestration/spawn-policy.ts +0 -83
- package/src/runtime/peer-client.ts +0 -404
- package/src/runtime/perf/index.ts +0 -57
- package/src/runtime/perf/slo-collector.ts +0 -375
- package/src/runtime/permissions/index.ts +0 -190
- package/src/runtime/permissions/policy-runtime.ts +0 -1
- package/src/runtime/permissions/preflight.ts +0 -101
- package/src/runtime/permissions/rule-suggestions.ts +0 -36
- package/src/runtime/plugins/hot-reload.ts +0 -221
- package/src/runtime/plugins/index.ts +0 -84
- package/src/runtime/plugins/lifecycle.ts +0 -95
- package/src/runtime/plugins/manager.ts +0 -474
- package/src/runtime/plugins/manifest.ts +0 -167
- package/src/runtime/plugins/quarantine.ts +0 -202
- package/src/runtime/plugins/trust.ts +0 -291
- package/src/runtime/plugins/types.ts +0 -205
- package/src/runtime/provider-accounts/registry.ts +0 -326
- package/src/runtime/remote/distributed-runtime-contract-schemas.ts +0 -386
- package/src/runtime/remote/index.ts +0 -488
- package/src/runtime/remote/runner-registry.ts +0 -438
- package/src/runtime/remote/supervisor.ts +0 -70
- package/src/runtime/runtime-hook-api.ts +0 -5
- package/src/runtime/runtime-knowledge-api.ts +0 -14
- package/src/runtime/runtime-mcp-api.ts +0 -5
- package/src/runtime/runtime-ops-api.ts +0 -86
- package/src/runtime/runtime-provider-api.ts +0 -18
- package/src/runtime/session-maintenance.ts +0 -188
- package/src/runtime/session-persistence.ts +0 -288
- package/src/runtime/session-return-context.ts +0 -195
- package/src/runtime/settings/control-plane-store.ts +0 -258
- package/src/runtime/settings/control-plane.ts +0 -599
- package/src/runtime/shell-command-extensions.ts +0 -54
- package/src/runtime/shell-command-ops.ts +0 -207
- package/src/runtime/shell-command-platform.ts +0 -47
- package/src/runtime/shell-command-services.ts +0 -143
- package/src/runtime/shell-command-workspace.ts +0 -31
- package/src/runtime/tasks/adapters/acp-adapter.ts +0 -211
- package/src/runtime/tasks/adapters/agent-adapter.ts +0 -208
- package/src/runtime/tasks/adapters/index.ts +0 -16
- package/src/runtime/tasks/adapters/process-adapter.ts +0 -214
- package/src/runtime/tasks/adapters/scheduler-adapter.ts +0 -193
- package/src/runtime/tasks/index.ts +0 -68
- package/src/runtime/tasks/manager.ts +0 -415
- package/src/runtime/telemetry/api-helpers.ts +0 -517
- package/src/runtime/telemetry/api.ts +0 -768
- package/src/runtime/telemetry/index.ts +0 -178
- package/src/runtime/telemetry/instrumentation/domain-bridge-agent-session.ts +0 -440
- package/src/runtime/telemetry/instrumentation/domain-bridge-plugin-mcp.ts +0 -200
- package/src/runtime/telemetry/instrumentation/domain-bridge-shared.ts +0 -18
- package/src/runtime/telemetry/instrumentation/domain-bridge-transport-task.ts +0 -204
- package/src/runtime/telemetry/instrumentation/domain-bridge.ts +0 -125
- package/src/runtime/telemetry/instrumentation/index.ts +0 -67
- package/src/runtime/tools/context.ts +0 -114
- package/src/runtime/tools/index.ts +0 -46
- package/src/runtime/tools/phased-executor.ts +0 -448
- package/src/runtime/tools/phases/budget.ts +0 -130
- package/src/runtime/tools/phases/execute.ts +0 -69
- package/src/runtime/tools/phases/index.ts +0 -13
- package/src/runtime/tools/phases/map-output.ts +0 -98
- package/src/runtime/tools/phases/permission.ts +0 -133
- package/src/runtime/tools/phases/posthook.ts +0 -57
- package/src/runtime/tools/phases/prehook.ts +0 -68
- package/src/runtime/tools/phases/validate.ts +0 -53
- package/src/runtime/transports/direct.ts +0 -73
- package/src/runtime/transports/http-helpers.ts +0 -218
- package/src/runtime/transports/http-types.ts +0 -364
- package/src/runtime/transports/http.ts +0 -629
- package/src/runtime/transports/realtime.ts +0 -50
- package/src/runtime/transports/remote-events.ts +0 -16
- package/src/runtime/transports/shared.ts +0 -39
- package/src/runtime/transports/ui-runtime-events.ts +0 -35
- package/src/runtime/ui-events.ts +0 -46
- package/src/runtime/worktree/registry.ts +0 -252
- package/src/sessions/manager.ts +0 -14
- package/src/state/file-watcher.ts +0 -294
- package/src/state/index.ts +0 -56
- package/src/state/knowledge-injection.ts +0 -214
- package/src/state/memory-embedding-http.ts +0 -642
- package/src/state/memory-embeddings.ts +0 -312
- package/src/state/memory-ingest.ts +0 -132
- package/src/state/memory-registry.ts +0 -111
- package/src/state/memory-store-helpers.ts +0 -160
- package/src/state/memory-store.ts +0 -728
- package/src/state/memory-vector-store.ts +0 -418
- package/src/templates/manager.ts +0 -187
- package/src/tools/agent/index.ts +0 -610
- package/src/tools/agent/manager.ts +0 -476
- package/src/tools/analyze/git-modes.ts +0 -380
- package/src/tools/analyze/index.ts +0 -128
- package/src/tools/channel/agent-tools.ts +0 -16
- package/src/tools/channel/index.ts +0 -268
- package/src/tools/control/index.ts +0 -90
- package/src/tools/edit/core.ts +0 -619
- package/src/tools/edit/index.ts +0 -4
- package/src/tools/edit/phased.ts +0 -33
- package/src/tools/fetch/index.ts +0 -3
- package/src/tools/fetch/phased.ts +0 -34
- package/src/tools/fetch/runtime.ts +0 -499
- package/src/tools/mcp/index.ts +0 -190
- package/src/tools/remote-trigger/index.ts +0 -130
- package/src/tools/shared/auto-heal.ts +0 -282
- package/src/tools/state/index.ts +0 -688
- package/src/tools/web-search/index.ts +0 -38
- package/src/tools/write/index.ts +0 -604
- package/src/tools/write/phased.ts +0 -41
- package/src/types/generated/foundation-client-types.ts +0 -22
- package/src/watchers/index.ts +0 -11
- package/src/watchers/registry.ts +0 -517
- package/src/web-search/index.ts +0 -26
- package/src/web-search/provider-registry.ts +0 -64
- package/src/web-search/providers/brave.ts +0 -100
- package/src/web-search/providers/duckduckgo.ts +0 -270
- package/src/web-search/providers/exa.ts +0 -77
- package/src/web-search/providers/firecrawl.ts +0 -90
- package/src/web-search/providers/perplexity.ts +0 -86
- package/src/web-search/providers/searxng.ts +0 -88
- package/src/web-search/providers/shared.ts +0 -249
- package/src/web-search/providers/tavily.ts +0 -90
- package/src/web-search/service.ts +0 -142
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { createEventEnvelope } from '@pellux/goodvibes-sdk/platform/runtime/events/envelope';
|
|
2
|
-
import type { RuntimeEventBus } from '@pellux/goodvibes-sdk/platform/runtime/events/index';
|
|
3
|
-
import type { EmitterContext } from '@pellux/goodvibes-sdk/platform/runtime/emitters/index';
|
|
4
|
-
|
|
5
|
-
export function emitForensicsReportCreated(
|
|
6
|
-
bus: RuntimeEventBus,
|
|
7
|
-
ctx: EmitterContext,
|
|
8
|
-
data: {
|
|
9
|
-
reportId: string;
|
|
10
|
-
classification: string;
|
|
11
|
-
errorMessage?: string;
|
|
12
|
-
taskId?: string;
|
|
13
|
-
turnId?: string;
|
|
14
|
-
},
|
|
15
|
-
): void {
|
|
16
|
-
bus.emit('forensics', createEventEnvelope('FORENSICS_REPORT_CREATED', { type: 'FORENSICS_REPORT_CREATED', ...data }, ctx));
|
|
17
|
-
}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Emitters barrel — re-exports all typed emission wrappers and the EmitterContext.
|
|
3
|
-
*
|
|
4
|
-
* The EmitterContext is the minimal context required by all emitter functions.
|
|
5
|
-
* Construct one from the current session/turn/agent context and pass it through.
|
|
6
|
-
*
|
|
7
|
-
* Usage:
|
|
8
|
-
* ```ts
|
|
9
|
-
* import { emitTurnSubmitted } from '../runtime/emitters/index.ts';
|
|
10
|
-
* import { RuntimeEventBus } from '@pellux/goodvibes-sdk/platform/runtime/events/index';
|
|
11
|
-
*
|
|
12
|
-
* const bus = new RuntimeEventBus();
|
|
13
|
-
* const ctx: EmitterContext = { sessionId: '...', traceId: '...', source: 'orchestrator' };
|
|
14
|
-
* emitTurnSubmitted(bus, ctx, { turnId: '...', prompt: 'Hello' });
|
|
15
|
-
* ```
|
|
16
|
-
*/
|
|
17
|
-
import type { EnvelopeContext } from '@pellux/goodvibes-sdk/platform/runtime/events/envelope';
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* Emitter context passed to all emission wrapper functions.
|
|
21
|
-
*
|
|
22
|
-
* Extends EnvelopeContext by narrowing `traceId` from optional to required.
|
|
23
|
-
* Emitter callsites always possess a trace context (e.g. from the active turn
|
|
24
|
-
* or session), so requiring it here prevents accidental fallback to a generated
|
|
25
|
-
* UUID that breaks cross-boundary trace correlation. Compare to EnvelopeContext
|
|
26
|
-
* where `traceId` is optional to support low-level envelope construction without
|
|
27
|
-
* a pre-existing trace.
|
|
28
|
-
*/
|
|
29
|
-
export interface EmitterContext extends EnvelopeContext {
|
|
30
|
-
/** Required trace identifier — must be supplied by the caller at emission time. */
|
|
31
|
-
readonly traceId: string;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/session';
|
|
35
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/turn';
|
|
36
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/providers';
|
|
37
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/tools';
|
|
38
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/tasks';
|
|
39
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/agents';
|
|
40
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/workflows';
|
|
41
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/orchestration';
|
|
42
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/communication';
|
|
43
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/planner';
|
|
44
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/permissions';
|
|
45
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/plugins';
|
|
46
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/mcp';
|
|
47
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/transport';
|
|
48
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/compaction';
|
|
49
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/ui';
|
|
50
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/ops';
|
|
51
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/forensics';
|
|
52
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/security';
|
|
53
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/automation';
|
|
54
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/routes';
|
|
55
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/control-plane';
|
|
56
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/deliveries';
|
|
57
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/watchers';
|
|
58
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/surfaces';
|
|
59
|
-
export * from '@pellux/goodvibes-sdk/platform/runtime/emitters/knowledge';
|
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Knowledge emitters — typed wrappers for KnowledgeEvent domain.
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
import { createEventEnvelope } from '@pellux/goodvibes-sdk/platform/runtime/events/envelope';
|
|
6
|
-
import type { RuntimeEventEnvelope } from '@pellux/goodvibes-sdk/platform/runtime/events/envelope';
|
|
7
|
-
import type { RuntimeEventBus } from '@pellux/goodvibes-sdk/platform/runtime/events/index';
|
|
8
|
-
import type { KnowledgeEvent } from '@pellux/goodvibes-sdk/platform/runtime/events/knowledge';
|
|
9
|
-
import type { EmitterContext } from '@pellux/goodvibes-sdk/platform/runtime/emitters/index';
|
|
10
|
-
|
|
11
|
-
function knowledgeEvent<T extends KnowledgeEvent['type']>(
|
|
12
|
-
type: T,
|
|
13
|
-
data: Omit<Extract<KnowledgeEvent, { type: T }>, 'type'>,
|
|
14
|
-
ctx: EmitterContext,
|
|
15
|
-
): RuntimeEventEnvelope<T, Extract<KnowledgeEvent, { type: T }>> {
|
|
16
|
-
return createEventEnvelope(type, { type, ...data } as Extract<KnowledgeEvent, { type: T }>, ctx);
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
export function emitKnowledgeIngestStarted(
|
|
20
|
-
bus: RuntimeEventBus,
|
|
21
|
-
ctx: EmitterContext,
|
|
22
|
-
data: { sourceId: string; connectorId: string; sourceType: string; uri?: string },
|
|
23
|
-
): void {
|
|
24
|
-
bus.emit('knowledge', knowledgeEvent('KNOWLEDGE_INGEST_STARTED', data, ctx));
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
export function emitKnowledgeIngestCompleted(
|
|
28
|
-
bus: RuntimeEventBus,
|
|
29
|
-
ctx: EmitterContext,
|
|
30
|
-
data: { sourceId: string; status: string; artifactId?: string; title?: string },
|
|
31
|
-
): void {
|
|
32
|
-
bus.emit('knowledge', knowledgeEvent('KNOWLEDGE_INGEST_COMPLETED', data, ctx));
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
export function emitKnowledgeIngestFailed(
|
|
36
|
-
bus: RuntimeEventBus,
|
|
37
|
-
ctx: EmitterContext,
|
|
38
|
-
data: { sourceId: string; error: string },
|
|
39
|
-
): void {
|
|
40
|
-
bus.emit('knowledge', knowledgeEvent('KNOWLEDGE_INGEST_FAILED', data, ctx));
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
export function emitKnowledgeExtractionCompleted(
|
|
44
|
-
bus: RuntimeEventBus,
|
|
45
|
-
ctx: EmitterContext,
|
|
46
|
-
data: { sourceId: string; extractionId: string; format: string; estimatedTokens: number },
|
|
47
|
-
): void {
|
|
48
|
-
bus.emit('knowledge', knowledgeEvent('KNOWLEDGE_EXTRACTION_COMPLETED', data, ctx));
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
export function emitKnowledgeExtractionFailed(
|
|
52
|
-
bus: RuntimeEventBus,
|
|
53
|
-
ctx: EmitterContext,
|
|
54
|
-
data: { sourceId: string; error: string },
|
|
55
|
-
): void {
|
|
56
|
-
bus.emit('knowledge', knowledgeEvent('KNOWLEDGE_EXTRACTION_FAILED', data, ctx));
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
export function emitKnowledgeCompileCompleted(
|
|
60
|
-
bus: RuntimeEventBus,
|
|
61
|
-
ctx: EmitterContext,
|
|
62
|
-
data: { sourceId: string; nodeCount: number; edgeCount: number },
|
|
63
|
-
): void {
|
|
64
|
-
bus.emit('knowledge', knowledgeEvent('KNOWLEDGE_COMPILE_COMPLETED', data, ctx));
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
export function emitKnowledgeLintCompleted(
|
|
68
|
-
bus: RuntimeEventBus,
|
|
69
|
-
ctx: EmitterContext,
|
|
70
|
-
data: { issueCount: number },
|
|
71
|
-
): void {
|
|
72
|
-
bus.emit('knowledge', knowledgeEvent('KNOWLEDGE_LINT_COMPLETED', data, ctx));
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
export function emitKnowledgePacketBuilt(
|
|
76
|
-
bus: RuntimeEventBus,
|
|
77
|
-
ctx: EmitterContext,
|
|
78
|
-
data: { task: string; itemCount: number; estimatedTokens: number; detail: 'compact' | 'standard' | 'detailed' },
|
|
79
|
-
): void {
|
|
80
|
-
bus.emit('knowledge', knowledgeEvent('KNOWLEDGE_PACKET_BUILT', data, ctx));
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
export function emitKnowledgeProjectionRendered(
|
|
84
|
-
bus: RuntimeEventBus,
|
|
85
|
-
ctx: EmitterContext,
|
|
86
|
-
data: { targetId: string; pageCount: number },
|
|
87
|
-
): void {
|
|
88
|
-
bus.emit('knowledge', knowledgeEvent('KNOWLEDGE_PROJECTION_RENDERED', data, ctx));
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
export function emitKnowledgeProjectionMaterialized(
|
|
92
|
-
bus: RuntimeEventBus,
|
|
93
|
-
ctx: EmitterContext,
|
|
94
|
-
data: { targetId: string; artifactId: string; pageCount: number },
|
|
95
|
-
): void {
|
|
96
|
-
bus.emit('knowledge', knowledgeEvent('KNOWLEDGE_PROJECTION_MATERIALIZED', data, ctx));
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
export function emitKnowledgeJobQueued(
|
|
100
|
-
bus: RuntimeEventBus,
|
|
101
|
-
ctx: EmitterContext,
|
|
102
|
-
data: { jobId: string; runId: string; mode: 'inline' | 'background' },
|
|
103
|
-
): void {
|
|
104
|
-
bus.emit('knowledge', knowledgeEvent('KNOWLEDGE_JOB_QUEUED', data, ctx));
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
export function emitKnowledgeJobStarted(
|
|
108
|
-
bus: RuntimeEventBus,
|
|
109
|
-
ctx: EmitterContext,
|
|
110
|
-
data: { jobId: string; runId: string; mode: 'inline' | 'background' },
|
|
111
|
-
): void {
|
|
112
|
-
bus.emit('knowledge', knowledgeEvent('KNOWLEDGE_JOB_STARTED', data, ctx));
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
export function emitKnowledgeJobCompleted(
|
|
116
|
-
bus: RuntimeEventBus,
|
|
117
|
-
ctx: EmitterContext,
|
|
118
|
-
data: { jobId: string; runId: string; durationMs: number },
|
|
119
|
-
): void {
|
|
120
|
-
bus.emit('knowledge', knowledgeEvent('KNOWLEDGE_JOB_COMPLETED', data, ctx));
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
export function emitKnowledgeJobFailed(
|
|
124
|
-
bus: RuntimeEventBus,
|
|
125
|
-
ctx: EmitterContext,
|
|
126
|
-
data: { jobId: string; runId: string; error: string; durationMs: number },
|
|
127
|
-
): void {
|
|
128
|
-
bus.emit('knowledge', knowledgeEvent('KNOWLEDGE_JOB_FAILED', data, ctx));
|
|
129
|
-
}
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* MCP emitters — typed emission wrappers for McpEvent domain.
|
|
3
|
-
*/
|
|
4
|
-
import { createEventEnvelope } from '@pellux/goodvibes-sdk/platform/runtime/events/envelope';
|
|
5
|
-
import type { RuntimeEventBus } from '@pellux/goodvibes-sdk/platform/runtime/events/index';
|
|
6
|
-
import type { McpServerRole, McpTrustMode, QuarantineReason } from '@pellux/goodvibes-sdk/platform/runtime/mcp/types';
|
|
7
|
-
import type { EmitterContext } from '@pellux/goodvibes-sdk/platform/runtime/emitters/index';
|
|
8
|
-
|
|
9
|
-
/** Emit MCP_CONFIGURED when an MCP server config is parsed. */
|
|
10
|
-
export function emitMcpConfigured(
|
|
11
|
-
bus: RuntimeEventBus,
|
|
12
|
-
ctx: EmitterContext,
|
|
13
|
-
data: { serverId: string; transport: string; url?: string; role?: McpServerRole; trustMode?: McpTrustMode; allowedPaths?: string[]; allowedHosts?: string[] }
|
|
14
|
-
): void {
|
|
15
|
-
bus.emit('mcp', createEventEnvelope('MCP_CONFIGURED', { type: 'MCP_CONFIGURED', ...data }, ctx));
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
/** Emit MCP_CONNECTING when a connection attempt begins. */
|
|
19
|
-
export function emitMcpConnecting(
|
|
20
|
-
bus: RuntimeEventBus,
|
|
21
|
-
ctx: EmitterContext,
|
|
22
|
-
data: { serverId: string }
|
|
23
|
-
): void {
|
|
24
|
-
bus.emit('mcp', createEventEnvelope('MCP_CONNECTING', { type: 'MCP_CONNECTING', ...data }, ctx));
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
/** Emit MCP_CONNECTED when a connection is established. */
|
|
28
|
-
export function emitMcpConnected(
|
|
29
|
-
bus: RuntimeEventBus,
|
|
30
|
-
ctx: EmitterContext,
|
|
31
|
-
data: { serverId: string; toolCount: number; resourceCount: number }
|
|
32
|
-
): void {
|
|
33
|
-
bus.emit('mcp', createEventEnvelope('MCP_CONNECTED', { type: 'MCP_CONNECTED', ...data }, ctx));
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
/** Emit MCP_DEGRADED when partial tools are unavailable. */
|
|
37
|
-
export function emitMcpDegraded(
|
|
38
|
-
bus: RuntimeEventBus,
|
|
39
|
-
ctx: EmitterContext,
|
|
40
|
-
data: { serverId: string; reason: string; availableTools: string[] }
|
|
41
|
-
): void {
|
|
42
|
-
bus.emit('mcp', createEventEnvelope('MCP_DEGRADED', { type: 'MCP_DEGRADED', ...data }, ctx));
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
/** Emit MCP_AUTH_REQUIRED when auth is needed. */
|
|
46
|
-
export function emitMcpAuthRequired(
|
|
47
|
-
bus: RuntimeEventBus,
|
|
48
|
-
ctx: EmitterContext,
|
|
49
|
-
data: { serverId: string; authType: string }
|
|
50
|
-
): void {
|
|
51
|
-
bus.emit('mcp', createEventEnvelope('MCP_AUTH_REQUIRED', { type: 'MCP_AUTH_REQUIRED', ...data }, ctx));
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
/** Emit MCP_RECONNECTING when retrying a dropped connection. */
|
|
55
|
-
export function emitMcpReconnecting(
|
|
56
|
-
bus: RuntimeEventBus,
|
|
57
|
-
ctx: EmitterContext,
|
|
58
|
-
data: { serverId: string; attempt: number; maxAttempts: number }
|
|
59
|
-
): void {
|
|
60
|
-
bus.emit('mcp', createEventEnvelope('MCP_RECONNECTING', { type: 'MCP_RECONNECTING', ...data }, ctx));
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
/** Emit MCP_DISCONNECTED when a connection is closed. */
|
|
64
|
-
export function emitMcpDisconnected(
|
|
65
|
-
bus: RuntimeEventBus,
|
|
66
|
-
ctx: EmitterContext,
|
|
67
|
-
data: { serverId: string; reason?: string; willRetry: boolean }
|
|
68
|
-
): void {
|
|
69
|
-
bus.emit('mcp', createEventEnvelope('MCP_DISCONNECTED', { type: 'MCP_DISCONNECTED', ...data }, ctx));
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
/** Emit MCP_POLICY_UPDATED when server trust posture changes. */
|
|
73
|
-
export function emitMcpPolicyUpdated(
|
|
74
|
-
bus: RuntimeEventBus,
|
|
75
|
-
ctx: EmitterContext,
|
|
76
|
-
data: { serverId: string; role: McpServerRole; trustMode: McpTrustMode; allowedPaths: string[]; allowedHosts: string[] }
|
|
77
|
-
): void {
|
|
78
|
-
bus.emit('mcp', createEventEnvelope('MCP_POLICY_UPDATED', { type: 'MCP_POLICY_UPDATED', ...data }, ctx));
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
export function emitMcpSchemaQuarantined(
|
|
82
|
-
bus: RuntimeEventBus,
|
|
83
|
-
ctx: EmitterContext,
|
|
84
|
-
data: { serverId: string; reason: QuarantineReason; detail?: string }
|
|
85
|
-
): void {
|
|
86
|
-
bus.emit('mcp', createEventEnvelope('MCP_SCHEMA_QUARANTINED', { type: 'MCP_SCHEMA_QUARANTINED', ...data }, ctx));
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
export function emitMcpSchemaQuarantineApproved(
|
|
90
|
-
bus: RuntimeEventBus,
|
|
91
|
-
ctx: EmitterContext,
|
|
92
|
-
data: { serverId: string; operatorId: string }
|
|
93
|
-
): void {
|
|
94
|
-
bus.emit('mcp', createEventEnvelope('MCP_SCHEMA_QUARANTINE_APPROVED', { type: 'MCP_SCHEMA_QUARANTINE_APPROVED', ...data }, ctx));
|
|
95
|
-
}
|
|
@@ -1,163 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Ops emitters — typed emission wrappers for the OpsEvent domain.
|
|
3
|
-
*
|
|
4
|
-
* Every intervention emits both a specific action event AND an OPS_AUDIT
|
|
5
|
-
* entry with the reason code, as required by the Operator Control Plane spec.
|
|
6
|
-
*/
|
|
7
|
-
import { createEventEnvelope } from '@pellux/goodvibes-sdk/platform/runtime/events/envelope';
|
|
8
|
-
import type { RuntimeEventBus } from '@pellux/goodvibes-sdk/platform/runtime/events/index';
|
|
9
|
-
import type { EmitterContext } from '@pellux/goodvibes-sdk/platform/runtime/emitters/index';
|
|
10
|
-
import type { OpsInterventionReason } from '@pellux/goodvibes-sdk/platform/runtime/events/ops';
|
|
11
|
-
|
|
12
|
-
/** Emit OPS_CONTEXT_WARNING when context usage crosses a warning threshold. */
|
|
13
|
-
export function emitOpsContextWarning(
|
|
14
|
-
bus: RuntimeEventBus,
|
|
15
|
-
ctx: EmitterContext,
|
|
16
|
-
data: { usage: number; threshold: number }
|
|
17
|
-
): void {
|
|
18
|
-
bus.emit('ops', createEventEnvelope('OPS_CONTEXT_WARNING', {
|
|
19
|
-
type: 'OPS_CONTEXT_WARNING',
|
|
20
|
-
usage: data.usage,
|
|
21
|
-
threshold: data.threshold,
|
|
22
|
-
}, ctx));
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
/** Emit OPS_CACHE_METRICS for cache hit-rate and token accounting snapshots. */
|
|
26
|
-
export function emitOpsCacheMetrics(
|
|
27
|
-
bus: RuntimeEventBus,
|
|
28
|
-
ctx: EmitterContext,
|
|
29
|
-
data: {
|
|
30
|
-
hitRate: number;
|
|
31
|
-
cacheReadTokens: number;
|
|
32
|
-
cacheWriteTokens: number;
|
|
33
|
-
totalInputTokens: number;
|
|
34
|
-
turns: number;
|
|
35
|
-
}
|
|
36
|
-
): void {
|
|
37
|
-
bus.emit('ops', createEventEnvelope('OPS_CACHE_METRICS', {
|
|
38
|
-
type: 'OPS_CACHE_METRICS',
|
|
39
|
-
...data,
|
|
40
|
-
}, ctx));
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
/** Emit OPS_HELPER_USAGE for cumulative helper-model token/call snapshots. */
|
|
44
|
-
export function emitOpsHelperUsage(
|
|
45
|
-
bus: RuntimeEventBus,
|
|
46
|
-
ctx: EmitterContext,
|
|
47
|
-
data: { inputTokens: number; outputTokens: number; calls: number }
|
|
48
|
-
): void {
|
|
49
|
-
bus.emit('ops', createEventEnvelope('OPS_HELPER_USAGE', {
|
|
50
|
-
type: 'OPS_HELPER_USAGE',
|
|
51
|
-
...data,
|
|
52
|
-
}, ctx));
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
// ── Generic helper ───────────────────────────────────────────────────────────
|
|
56
|
-
|
|
57
|
-
type OpsAuditData = {
|
|
58
|
-
action: string;
|
|
59
|
-
targetId: string;
|
|
60
|
-
targetKind: 'task' | 'agent';
|
|
61
|
-
reason: OpsInterventionReason;
|
|
62
|
-
note?: string;
|
|
63
|
-
outcome: 'success' | 'rejected' | 'error';
|
|
64
|
-
errorMessage?: string;
|
|
65
|
-
taskId?: string;
|
|
66
|
-
agentId?: string;
|
|
67
|
-
};
|
|
68
|
-
|
|
69
|
-
function emitOpsAudit(
|
|
70
|
-
bus: RuntimeEventBus,
|
|
71
|
-
ctx: EmitterContext,
|
|
72
|
-
data: OpsAuditData
|
|
73
|
-
): void {
|
|
74
|
-
bus.emit('ops', createEventEnvelope('OPS_AUDIT', {
|
|
75
|
-
type: 'OPS_AUDIT',
|
|
76
|
-
action: data.action,
|
|
77
|
-
targetId: data.targetId,
|
|
78
|
-
targetKind: data.targetKind,
|
|
79
|
-
reason: data.reason,
|
|
80
|
-
note: data.note,
|
|
81
|
-
outcome: data.outcome,
|
|
82
|
-
errorMessage: data.errorMessage,
|
|
83
|
-
}, { ...ctx, ...(data.taskId !== undefined ? { taskId: data.taskId } : {}), ...(data.agentId !== undefined ? { agentId: data.agentId } : {}) }));
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
// ── Task emitters ─────────────────────────────────────────────────────────────
|
|
87
|
-
|
|
88
|
-
/** Emit OPS_TASK_CANCELLED and a paired OPS_AUDIT event. */
|
|
89
|
-
export function emitOpsTaskCancelled(
|
|
90
|
-
bus: RuntimeEventBus,
|
|
91
|
-
ctx: EmitterContext,
|
|
92
|
-
data: { taskId: string; reason: OpsInterventionReason; note?: string; outcome: 'success' | 'rejected' | 'error'; errorMessage?: string }
|
|
93
|
-
): void {
|
|
94
|
-
bus.emit('ops', createEventEnvelope('OPS_TASK_CANCELLED', {
|
|
95
|
-
type: 'OPS_TASK_CANCELLED',
|
|
96
|
-
taskId: data.taskId,
|
|
97
|
-
reason: data.reason,
|
|
98
|
-
note: data.note,
|
|
99
|
-
}, { ...ctx, taskId: data.taskId }));
|
|
100
|
-
emitOpsAudit(bus, ctx, { action: 'task.cancel', targetId: data.taskId, targetKind: 'task', ...data });
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
/** Emit OPS_TASK_PAUSED and a paired OPS_AUDIT event. */
|
|
104
|
-
export function emitOpsTaskPaused(
|
|
105
|
-
bus: RuntimeEventBus,
|
|
106
|
-
ctx: EmitterContext,
|
|
107
|
-
data: { taskId: string; reason: OpsInterventionReason; note?: string; outcome: 'success' | 'rejected' | 'error'; errorMessage?: string }
|
|
108
|
-
): void {
|
|
109
|
-
bus.emit('ops', createEventEnvelope('OPS_TASK_PAUSED', {
|
|
110
|
-
type: 'OPS_TASK_PAUSED',
|
|
111
|
-
taskId: data.taskId,
|
|
112
|
-
reason: data.reason,
|
|
113
|
-
note: data.note,
|
|
114
|
-
}, { ...ctx, taskId: data.taskId }));
|
|
115
|
-
emitOpsAudit(bus, ctx, { action: 'task.pause', targetId: data.taskId, targetKind: 'task', ...data });
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
/** Emit OPS_TASK_RESUMED and a paired OPS_AUDIT event. */
|
|
119
|
-
export function emitOpsTaskResumed(
|
|
120
|
-
bus: RuntimeEventBus,
|
|
121
|
-
ctx: EmitterContext,
|
|
122
|
-
data: { taskId: string; reason: OpsInterventionReason; note?: string; outcome: 'success' | 'rejected' | 'error'; errorMessage?: string }
|
|
123
|
-
): void {
|
|
124
|
-
bus.emit('ops', createEventEnvelope('OPS_TASK_RESUMED', {
|
|
125
|
-
type: 'OPS_TASK_RESUMED',
|
|
126
|
-
taskId: data.taskId,
|
|
127
|
-
reason: data.reason,
|
|
128
|
-
note: data.note,
|
|
129
|
-
}, { ...ctx, taskId: data.taskId }));
|
|
130
|
-
emitOpsAudit(bus, ctx, { action: 'task.resume', targetId: data.taskId, targetKind: 'task', ...data });
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
/** Emit OPS_TASK_RETRIED and a paired OPS_AUDIT event. */
|
|
134
|
-
export function emitOpsTaskRetried(
|
|
135
|
-
bus: RuntimeEventBus,
|
|
136
|
-
ctx: EmitterContext,
|
|
137
|
-
data: { taskId: string; reason: OpsInterventionReason; note?: string; outcome: 'success' | 'rejected' | 'error'; errorMessage?: string }
|
|
138
|
-
): void {
|
|
139
|
-
bus.emit('ops', createEventEnvelope('OPS_TASK_RETRIED', {
|
|
140
|
-
type: 'OPS_TASK_RETRIED',
|
|
141
|
-
taskId: data.taskId,
|
|
142
|
-
reason: data.reason,
|
|
143
|
-
note: data.note,
|
|
144
|
-
}, { ...ctx, taskId: data.taskId }));
|
|
145
|
-
emitOpsAudit(bus, ctx, { action: 'task.retry', targetId: data.taskId, targetKind: 'task', ...data });
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
// ── Agent emitters ────────────────────────────────────────────────────────────
|
|
149
|
-
|
|
150
|
-
/** Emit OPS_AGENT_CANCELLED and a paired OPS_AUDIT event. */
|
|
151
|
-
export function emitOpsAgentCancelled(
|
|
152
|
-
bus: RuntimeEventBus,
|
|
153
|
-
ctx: EmitterContext,
|
|
154
|
-
data: { agentId: string; reason: OpsInterventionReason; note?: string; outcome: 'success' | 'rejected' | 'error'; errorMessage?: string }
|
|
155
|
-
): void {
|
|
156
|
-
bus.emit('ops', createEventEnvelope('OPS_AGENT_CANCELLED', {
|
|
157
|
-
type: 'OPS_AGENT_CANCELLED',
|
|
158
|
-
agentId: data.agentId,
|
|
159
|
-
reason: data.reason,
|
|
160
|
-
note: data.note,
|
|
161
|
-
}, { ...ctx, agentId: data.agentId }));
|
|
162
|
-
emitOpsAudit(bus, ctx, { action: 'agent.cancel', targetId: data.agentId, targetKind: 'agent', ...data });
|
|
163
|
-
}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Orchestration emitters — typed emission wrappers for OrchestrationEvent domain.
|
|
3
|
-
*/
|
|
4
|
-
import { createEventEnvelope } from '@pellux/goodvibes-sdk/platform/runtime/events/envelope';
|
|
5
|
-
import type { RuntimeEventBus } from '@pellux/goodvibes-sdk/platform/runtime/events/index';
|
|
6
|
-
import type { OrchestrationTaskContract } from '@pellux/goodvibes-sdk/platform/runtime/events/orchestration';
|
|
7
|
-
import type { EmitterContext } from '@pellux/goodvibes-sdk/platform/runtime/emitters/index';
|
|
8
|
-
|
|
9
|
-
export function emitOrchestrationGraphCreated(
|
|
10
|
-
bus: RuntimeEventBus,
|
|
11
|
-
ctx: EmitterContext,
|
|
12
|
-
data: { graphId: string; title: string; mode: 'single-worker' | 'parallel-workers' | 'review-loop' | 'graph-execute' },
|
|
13
|
-
): void {
|
|
14
|
-
bus.emit('orchestration', createEventEnvelope('ORCHESTRATION_GRAPH_CREATED', { type: 'ORCHESTRATION_GRAPH_CREATED', ...data }, ctx));
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
export function emitOrchestrationNodeAdded(
|
|
18
|
-
bus: RuntimeEventBus,
|
|
19
|
-
ctx: EmitterContext,
|
|
20
|
-
data: { graphId: string; nodeId: string; title: string; role: 'planner' | 'engineer' | 'reviewer' | 'fixer' | 'verifier' | 'researcher' | 'integrator'; parentNodeId?: string; dependsOn?: string[]; taskId?: string; agentId?: string; contract?: OrchestrationTaskContract },
|
|
21
|
-
): void {
|
|
22
|
-
bus.emit('orchestration', createEventEnvelope('ORCHESTRATION_NODE_ADDED', { type: 'ORCHESTRATION_NODE_ADDED', ...data }, ctx));
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
export function emitOrchestrationNodeReady(
|
|
26
|
-
bus: RuntimeEventBus,
|
|
27
|
-
ctx: EmitterContext,
|
|
28
|
-
data: { graphId: string; nodeId: string },
|
|
29
|
-
): void {
|
|
30
|
-
bus.emit('orchestration', createEventEnvelope('ORCHESTRATION_NODE_READY', { type: 'ORCHESTRATION_NODE_READY', ...data }, ctx));
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
export function emitOrchestrationNodeStarted(
|
|
34
|
-
bus: RuntimeEventBus,
|
|
35
|
-
ctx: EmitterContext,
|
|
36
|
-
data: { graphId: string; nodeId: string; taskId?: string; agentId?: string },
|
|
37
|
-
): void {
|
|
38
|
-
bus.emit('orchestration', createEventEnvelope('ORCHESTRATION_NODE_STARTED', { type: 'ORCHESTRATION_NODE_STARTED', ...data }, ctx));
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
export function emitOrchestrationNodeProgress(
|
|
42
|
-
bus: RuntimeEventBus,
|
|
43
|
-
ctx: EmitterContext,
|
|
44
|
-
data: { graphId: string; nodeId: string; message: string },
|
|
45
|
-
): void {
|
|
46
|
-
bus.emit('orchestration', createEventEnvelope('ORCHESTRATION_NODE_PROGRESS', { type: 'ORCHESTRATION_NODE_PROGRESS', ...data }, ctx));
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
export function emitOrchestrationNodeBlocked(
|
|
50
|
-
bus: RuntimeEventBus,
|
|
51
|
-
ctx: EmitterContext,
|
|
52
|
-
data: { graphId: string; nodeId: string; reason: string },
|
|
53
|
-
): void {
|
|
54
|
-
bus.emit('orchestration', createEventEnvelope('ORCHESTRATION_NODE_BLOCKED', { type: 'ORCHESTRATION_NODE_BLOCKED', ...data }, ctx));
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
export function emitOrchestrationNodeCompleted(
|
|
58
|
-
bus: RuntimeEventBus,
|
|
59
|
-
ctx: EmitterContext,
|
|
60
|
-
data: { graphId: string; nodeId: string; summary?: string },
|
|
61
|
-
): void {
|
|
62
|
-
bus.emit('orchestration', createEventEnvelope('ORCHESTRATION_NODE_COMPLETED', { type: 'ORCHESTRATION_NODE_COMPLETED', ...data }, ctx));
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
export function emitOrchestrationNodeFailed(
|
|
66
|
-
bus: RuntimeEventBus,
|
|
67
|
-
ctx: EmitterContext,
|
|
68
|
-
data: { graphId: string; nodeId: string; error: string },
|
|
69
|
-
): void {
|
|
70
|
-
bus.emit('orchestration', createEventEnvelope('ORCHESTRATION_NODE_FAILED', { type: 'ORCHESTRATION_NODE_FAILED', ...data }, ctx));
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
export function emitOrchestrationNodeCancelled(
|
|
74
|
-
bus: RuntimeEventBus,
|
|
75
|
-
ctx: EmitterContext,
|
|
76
|
-
data: { graphId: string; nodeId: string; reason?: string },
|
|
77
|
-
): void {
|
|
78
|
-
bus.emit('orchestration', createEventEnvelope('ORCHESTRATION_NODE_CANCELLED', { type: 'ORCHESTRATION_NODE_CANCELLED', ...data }, ctx));
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
export function emitOrchestrationRecursionGuardTriggered(
|
|
82
|
-
bus: RuntimeEventBus,
|
|
83
|
-
ctx: EmitterContext,
|
|
84
|
-
data: { graphId: string; nodeId?: string; depth: number; activeAgents: number; reason: string },
|
|
85
|
-
): void {
|
|
86
|
-
bus.emit('orchestration', createEventEnvelope('ORCHESTRATION_RECURSION_GUARD_TRIGGERED', { type: 'ORCHESTRATION_RECURSION_GUARD_TRIGGERED', ...data }, ctx));
|
|
87
|
-
}
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Permission emitters — typed emission wrappers for PermissionEvent domain.
|
|
3
|
-
*/
|
|
4
|
-
import { createEventEnvelope } from '@pellux/goodvibes-sdk/platform/runtime/events/envelope';
|
|
5
|
-
import type { RuntimeEventBus } from '@pellux/goodvibes-sdk/platform/runtime/events/index';
|
|
6
|
-
import type { EmitterContext } from '@pellux/goodvibes-sdk/platform/runtime/emitters/index';
|
|
7
|
-
|
|
8
|
-
/** Emit PERMISSION_REQUESTED when a tool needs a permission decision. */
|
|
9
|
-
export function emitPermissionRequested(
|
|
10
|
-
bus: RuntimeEventBus,
|
|
11
|
-
ctx: EmitterContext,
|
|
12
|
-
data: {
|
|
13
|
-
callId: string;
|
|
14
|
-
tool: string;
|
|
15
|
-
args: Record<string, unknown>;
|
|
16
|
-
category: string;
|
|
17
|
-
classification?: string;
|
|
18
|
-
riskLevel?: string;
|
|
19
|
-
summary?: string;
|
|
20
|
-
reasons?: readonly string[];
|
|
21
|
-
}
|
|
22
|
-
): void {
|
|
23
|
-
bus.emit('permissions', createEventEnvelope('PERMISSION_REQUESTED', { type: 'PERMISSION_REQUESTED', ...data }, ctx));
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
/** Emit RULES_COLLECTED after all permission rules are gathered. */
|
|
27
|
-
export function emitRulesCollected(
|
|
28
|
-
bus: RuntimeEventBus,
|
|
29
|
-
ctx: EmitterContext,
|
|
30
|
-
data: { callId: string; tool: string; ruleCount: number }
|
|
31
|
-
): void {
|
|
32
|
-
bus.emit('permissions', createEventEnvelope('RULES_COLLECTED', { type: 'RULES_COLLECTED', ...data }, ctx));
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
/** Emit INPUT_NORMALIZED after tool args are normalised for policy evaluation. */
|
|
36
|
-
export function emitInputNormalized(
|
|
37
|
-
bus: RuntimeEventBus,
|
|
38
|
-
ctx: EmitterContext,
|
|
39
|
-
data: { callId: string; tool: string }
|
|
40
|
-
): void {
|
|
41
|
-
bus.emit('permissions', createEventEnvelope('INPUT_NORMALIZED', { type: 'INPUT_NORMALIZED', ...data }, ctx));
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
/** Emit POLICY_EVALUATED after static policy rules are checked. */
|
|
45
|
-
export function emitPolicyEvaluated(
|
|
46
|
-
bus: RuntimeEventBus,
|
|
47
|
-
ctx: EmitterContext,
|
|
48
|
-
data: { callId: string; tool: string; result: 'allow' | 'deny' | 'unknown' }
|
|
49
|
-
): void {
|
|
50
|
-
bus.emit('permissions', createEventEnvelope('POLICY_EVALUATED', { type: 'POLICY_EVALUATED', ...data }, ctx));
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
/** Emit MODE_EVALUATED after trust mode is checked. */
|
|
54
|
-
export function emitModeEvaluated(
|
|
55
|
-
bus: RuntimeEventBus,
|
|
56
|
-
ctx: EmitterContext,
|
|
57
|
-
data: { callId: string; tool: string; mode: string; result: 'allow' | 'deny' | 'unknown' }
|
|
58
|
-
): void {
|
|
59
|
-
bus.emit('permissions', createEventEnvelope('MODE_EVALUATED', { type: 'MODE_EVALUATED', ...data }, ctx));
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
/** Emit SESSION_OVERRIDE_EVALUATED after session always-allow list is checked. */
|
|
63
|
-
export function emitSessionOverrideEvaluated(
|
|
64
|
-
bus: RuntimeEventBus,
|
|
65
|
-
ctx: EmitterContext,
|
|
66
|
-
data: { callId: string; tool: string; overrideApplied: boolean }
|
|
67
|
-
): void {
|
|
68
|
-
bus.emit('permissions', createEventEnvelope('SESSION_OVERRIDE_EVALUATED', { type: 'SESSION_OVERRIDE_EVALUATED', ...data }, ctx));
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
/** Emit SAFETY_CHECKED after safety validation (path traversal, etc.) runs. */
|
|
72
|
-
export function emitSafetyChecked(
|
|
73
|
-
bus: RuntimeEventBus,
|
|
74
|
-
ctx: EmitterContext,
|
|
75
|
-
data: { callId: string; tool: string; safe: boolean; warnings: string[] }
|
|
76
|
-
): void {
|
|
77
|
-
bus.emit('permissions', createEventEnvelope('SAFETY_CHECKED', { type: 'SAFETY_CHECKED', ...data }, ctx));
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
/** Emit DECISION_EMITTED when the final permission decision is made. */
|
|
81
|
-
export function emitPermissionDecision(
|
|
82
|
-
bus: RuntimeEventBus,
|
|
83
|
-
ctx: EmitterContext,
|
|
84
|
-
data: {
|
|
85
|
-
callId: string;
|
|
86
|
-
tool: string;
|
|
87
|
-
approved: boolean;
|
|
88
|
-
source: string;
|
|
89
|
-
sourceLayer?: string;
|
|
90
|
-
persisted?: boolean;
|
|
91
|
-
reasonCode?: string;
|
|
92
|
-
classification?: string;
|
|
93
|
-
riskLevel?: string;
|
|
94
|
-
summary?: string;
|
|
95
|
-
}
|
|
96
|
-
): void {
|
|
97
|
-
bus.emit('permissions', createEventEnvelope('DECISION_EMITTED', { type: 'DECISION_EMITTED', ...data }, ctx));
|
|
98
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Planner emitters — typed emission wrappers for adaptive planner events.
|
|
3
|
-
*/
|
|
4
|
-
import { createEventEnvelope } from '@pellux/goodvibes-sdk/platform/runtime/events/envelope';
|
|
5
|
-
import type { RuntimeEventBus } from '@pellux/goodvibes-sdk/platform/runtime/events/index';
|
|
6
|
-
import type { EmitterContext } from '@pellux/goodvibes-sdk/platform/runtime/emitters/index';
|
|
7
|
-
import type { PlannerDecision, ExecutionStrategy } from '@pellux/goodvibes-sdk/platform/core/adaptive-planner';
|
|
8
|
-
|
|
9
|
-
export function emitPlanStrategySelected(
|
|
10
|
-
bus: RuntimeEventBus,
|
|
11
|
-
ctx: EmitterContext,
|
|
12
|
-
decision: PlannerDecision
|
|
13
|
-
): void {
|
|
14
|
-
bus.emit('planner', createEventEnvelope('PLAN_STRATEGY_SELECTED', { type: 'PLAN_STRATEGY_SELECTED', ...decision }, ctx));
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
export function emitPlanStrategyOverridden(
|
|
18
|
-
bus: RuntimeEventBus,
|
|
19
|
-
ctx: EmitterContext,
|
|
20
|
-
data: { strategy: ExecutionStrategy | null; clearedBy?: string }
|
|
21
|
-
): void {
|
|
22
|
-
bus.emit('planner', createEventEnvelope('PLAN_STRATEGY_OVERRIDDEN', { type: 'PLAN_STRATEGY_OVERRIDDEN', ...data }, ctx));
|
|
23
|
-
}
|