claude-flow-novice 1.6.4 → 1.6.5
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/.claude/commands/parse-epic.js +180 -0
- package/.claude/settings.local.json +2 -1
- package/.claude-flow-novice/dist/mcp/mcp-server-novice.js +37 -2
- package/.claude-flow-novice/dist/mcp/transports/base.js +5 -0
- package/.claude-flow-novice/dist/mcp/transports/base.js.map +1 -0
- package/.claude-flow-novice/dist/mcp/transports/http.js +414 -0
- package/.claude-flow-novice/dist/mcp/transports/http.js.map +1 -0
- package/.claude-flow-novice/dist/mcp/transports/stdio.js +217 -0
- package/.claude-flow-novice/dist/mcp/transports/stdio.js.map +1 -0
- package/.claude-flow-novice/dist/src/cli/commands/parse-epic.js +129 -0
- package/.claude-flow-novice/dist/src/cli/commands/parse-epic.js.map +1 -0
- package/.claude-flow-novice/dist/src/cli/index.js +3 -0
- package/.claude-flow-novice/dist/src/cli/index.js.map +1 -1
- package/.claude-flow-novice/dist/src/cli/utils/epic-parser.js +266 -0
- package/.claude-flow-novice/dist/src/cli/utils/epic-parser.js.map +1 -0
- package/.claude-flow-novice/dist/src/communication/message-bus.js +105 -2
- package/.claude-flow-novice/dist/src/communication/message-bus.js.map +1 -1
- package/.claude-flow-novice/dist/src/coordination/adapters/v1-coordinator-adapter.js +1 -1
- package/.claude-flow-novice/dist/src/coordination/adapters/v1-coordinator-adapter.js.map +1 -1
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/cache/artifact-cache-optimizer.js +632 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/cache/artifact-cache-optimizer.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/cache/index.js +11 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/cache/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/checkpoints/checkpoint-compressor.js +318 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/checkpoints/checkpoint-compressor.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/completion-detector.js +234 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/completion-detector.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/hierarchical-detector.js +347 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/hierarchical-detector.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/index.js +13 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/lamport-clock.js +173 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/lamport-clock.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/mesh-detector.js +526 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/mesh-detector.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/sdk-completion-detector.js +443 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/sdk-completion-detector.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/swarm-shutdown.js +366 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/completion/swarm-shutdown.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinator-factory.js +287 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinator-factory.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/cascading-shutdown.example.js +364 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/cascading-shutdown.example.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/cascading-shutdown.js +492 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/cascading-shutdown.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/hierarchical-coordinator.js +786 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/hierarchical-coordinator.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/index.js +16 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/parent-child-manager.js +342 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/parent-child-manager.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/swarm-coordinator-v2.js +601 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/coordinators/swarm-coordinator-v2.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/agent-state.js +9 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/agent-state.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/dead-letter-queue.js +413 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/dead-letter-queue.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/dependency-graph.js +471 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/dependency-graph.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/dependency-node.js +379 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/dependency-node.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/dependency-resolver.js +335 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/dependency-resolver.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/help-request-metrics.js +211 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/help-request-metrics.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/index.js +33 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/message-broker.js +920 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/message-broker.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/message-router.js +385 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/message-router.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/message.js +138 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/message.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/resource-manager-safe.js +478 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/resource-manager-safe.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/state-machine-config.js +358 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/state-machine-config.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/state-machine.js +588 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/state-machine.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/state-transition.js +153 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/state-transition.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/task-scheduler.js +360 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/task-scheduler.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/topic-manager.js +337 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/core/topic-manager.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/deadlock/deadlock-detector.js +424 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/deadlock/deadlock-detector.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/deadlock/index.js +9 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/deadlock/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/deadlock/resource-manager.js +669 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/deadlock/resource-manager.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/artifact-storage.js +451 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/artifact-storage.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/cycle-detector.js +271 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/cycle-detector.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/dependency-graph.js +335 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/dependency-graph.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/dependency-manager.js +439 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/dependency-manager.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/dependency-request.js +92 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/dependency-request.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/index.js +21 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/topological-sort.js +223 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/dependency/topological-sort.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/help-coordinator.js +436 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/help-coordinator.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/help-matcher.js +278 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/help-matcher.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/help-request-handler.js +317 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/help-request-handler.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/help-request.js +273 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/help-request.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/index.js +15 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/waiting-agent-pool.js +512 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/help-system/waiting-agent-pool.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/index.js +67 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/help-deadlock-integration.js +557 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/help-deadlock-integration.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/index.js +14 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/message-bus-completion-integration.example.js +212 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/message-bus-completion-integration.example.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/message-bus-completion-integration.js +552 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/message-bus-completion-integration.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/state-machine-integration.js +635 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/integration/state-machine-integration.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/interfaces/IArtifactStorage.js +28 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/interfaces/IArtifactStorage.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/interfaces/ICoordinator.js +9 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/interfaces/ICoordinator.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/interfaces/ISessionStore.js +25 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/interfaces/ISessionStore.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/interfaces/index.js +14 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/interfaces/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/artifact-adapter.js +308 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/artifact-adapter.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/completion-storage.js +439 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/completion-storage.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/dependency-graph-storage.js +540 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/dependency-graph-storage.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/dependency-storage.js +367 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/dependency-storage.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/index.js +14 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/message-storage.js +518 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/message-storage.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/state-storage.js +377 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/memory/state-storage.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channel.js +371 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channel.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/dependency-channel.js +355 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/dependency-channel.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/help-channel.js +424 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/help-channel.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/index.js +16 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/state-channel.js +295 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/state-channel.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/task-channel.js +411 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/channels/task-channel.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/index.js +14 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/message-bus.js +387 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/message-bus.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/message-persistence.js +589 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/message-persistence.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/message-router.js +444 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/messaging/message-router.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/artifact-storage.js +560 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/artifact-storage.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/background-orchestrator.js +335 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/background-orchestrator.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/bash-output-monitor.js +104 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/bash-output-monitor.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/checkpoint-manager.js +847 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/checkpoint-manager.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/help-coordinator.js +470 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/help-coordinator.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/hierarchical-background-integration.js +450 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/hierarchical-background-integration.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/index.js +13 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/message-bus-integration.js +625 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/message-bus-integration.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/multi-level-control.js +545 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/multi-level-control.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/query-controller.js +740 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/query-controller.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/query-message-integration.js +415 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/query-message-integration.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/session-pool-optimizer.js +615 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/session-pool-optimizer.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/state-machine-integration.js +547 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/state-machine-integration.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/state-sdk-integration.js +342 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/sdk/state-sdk-integration.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/security/payload-validator.js +259 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/security/payload-validator.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/truth/framework-registry.js +273 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/truth/framework-registry.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/truth/index.js +8 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/truth/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/truth/truth-config-manager.js +310 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/truth/truth-config-manager.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/truth/truth-validator.js +218 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/truth/truth-validator.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/types/sdk.js +9 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/types/sdk.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/utils/index.js +6 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/utils/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/utils/priority-queue.js +145 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/utils/priority-queue.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/utils/sdk-helpers.js +122 -0
- package/.claude-flow-novice/dist/src/coordination/archives/v2-sdk-typescript/v2/utils/sdk-helpers.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/config-translator.js +17 -43
- package/.claude-flow-novice/dist/src/coordination/config-translator.js.map +1 -1
- package/.claude-flow-novice/dist/src/coordination/coordination-toggle.js +34 -76
- package/.claude-flow-novice/dist/src/coordination/coordination-toggle.js.map +1 -1
- package/.claude-flow-novice/dist/src/coordination/shared/core/agent-state.js +172 -0
- package/.claude-flow-novice/dist/src/coordination/shared/core/agent-state.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/shared/core/index.js +7 -0
- package/.claude-flow-novice/dist/src/coordination/shared/core/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/shared/index.js +19 -0
- package/.claude-flow-novice/dist/src/coordination/shared/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/shared/interfaces/ICoordinator.js +24 -0
- package/.claude-flow-novice/dist/src/coordination/shared/interfaces/ICoordinator.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/shared/interfaces/index.js +7 -0
- package/.claude-flow-novice/dist/src/coordination/shared/interfaces/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/shared/message-broker.js +920 -0
- package/.claude-flow-novice/dist/src/coordination/shared/message-broker.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/shared/message.js +138 -0
- package/.claude-flow-novice/dist/src/coordination/shared/message.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/shared/security/payload-validator.js +259 -0
- package/.claude-flow-novice/dist/src/coordination/shared/security/payload-validator.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/shared/transparency/index.js +17 -0
- package/.claude-flow-novice/dist/src/coordination/shared/transparency/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/shared/transparency/interfaces/transparency-system.js +19 -0
- package/.claude-flow-novice/dist/src/coordination/shared/transparency/interfaces/transparency-system.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/shared/transparency/transparency-integration.js +357 -0
- package/.claude-flow-novice/dist/src/coordination/shared/transparency/transparency-integration.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/shared/transparency/transparency-system.js +679 -0
- package/.claude-flow-novice/dist/src/coordination/shared/transparency/transparency-system.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/shared/types/index.js +7 -0
- package/.claude-flow-novice/dist/src/coordination/shared/types/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/shared/types/sdk.js +10 -0
- package/.claude-flow-novice/dist/src/coordination/shared/types/sdk.js.map +1 -0
- package/.claude-flow-novice/dist/src/feature-flags/core/FeatureFlagManager.js +52 -2
- package/.claude-flow-novice/dist/src/feature-flags/core/FeatureFlagManager.js.map +1 -1
- package/.claude-flow-novice/dist/src/mcp/mcp-server-novice.js +37 -2
- package/.claude-flow-novice/dist/src/mcp/session-manager.js +3 -1
- package/.claude-flow-novice/dist/src/mcp/session-manager.js.map +1 -1
- package/.claude-flow-novice/dist/src/providers/provider-manager.js +36 -3
- package/.claude-flow-novice/dist/src/providers/provider-manager.js.map +1 -1
- package/.claude-flow-novice/dist/src/utils/markdown-sanitizer.js +65 -41
- package/.claude-flow-novice/dist/src/utils/markdown-sanitizer.js.map +1 -1
- package/.claude-flow-novice/dist/src/web/api/server.js +1 -1
- package/.claude-flow-novice/dist/src/web/api/server.js.map +1 -1
- package/.claude-flow-novice/dist/src/workflows/progressive-rollout-manager.js +30 -0
- package/.claude-flow-novice/dist/src/workflows/progressive-rollout-manager.js.map +1 -1
- package/.claude-flow-novice/metrics.db-shm +0 -0
- package/.claude-flow-novice/metrics.db-wal +0 -0
- package/package.json +2 -2
- package/scripts/monitoring/alert-monitor.sh +220 -0
- package/scripts/monitoring/view-alerts.sh +307 -0
- package/scripts/test-zai-api.cjs +2 -2
- package/src/slash-commands/parse-epic.js +1 -1
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI Epic Parser Utility
|
|
3
|
+
*
|
|
4
|
+
* Lightweight wrapper around the core epic parser for CLI-specific use cases.
|
|
5
|
+
* Converts markdown epic files to JSON configuration with validation.
|
|
6
|
+
*
|
|
7
|
+
* Features:
|
|
8
|
+
* - Parse OVERVIEW.md for epic metadata
|
|
9
|
+
* - Parse phase-*.md files for phase details and sprints
|
|
10
|
+
* - Parse dependencies.md for cross-phase requirements
|
|
11
|
+
* - Validate structure and dependencies
|
|
12
|
+
* - Generate JSON output
|
|
13
|
+
*/ import * as fs from "fs";
|
|
14
|
+
import * as path from "path";
|
|
15
|
+
import { EpicParser } from "../../parsers/epic-parser.js";
|
|
16
|
+
// ============================================================================
|
|
17
|
+
// CLI Parser Functions
|
|
18
|
+
// ============================================================================
|
|
19
|
+
/**
|
|
20
|
+
* Parse epic markdown files to JSON configuration
|
|
21
|
+
*
|
|
22
|
+
* @param options - Parser configuration options
|
|
23
|
+
* @returns Parsing result with config, errors, warnings, and stats
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* const result = await parseEpic({
|
|
28
|
+
* epicDirectory: './planning/example-epic',
|
|
29
|
+
* outputFile: './epic-config.json',
|
|
30
|
+
* verbose: true
|
|
31
|
+
* });
|
|
32
|
+
*
|
|
33
|
+
* if (result.success) {
|
|
34
|
+
* console.log(`Parsed ${result.stats.totalPhases} phases`);
|
|
35
|
+
* }
|
|
36
|
+
* ```
|
|
37
|
+
*/ export async function parseEpic(options) {
|
|
38
|
+
try {
|
|
39
|
+
const parser = new EpicParser({
|
|
40
|
+
epicDirectory: options.epicDirectory,
|
|
41
|
+
overviewFile: options.overviewFile
|
|
42
|
+
});
|
|
43
|
+
// Parse epic configuration
|
|
44
|
+
const config = parser.parse();
|
|
45
|
+
const validation = parser.getValidationResult();
|
|
46
|
+
// Log verbose output if requested
|
|
47
|
+
if (options.verbose) {
|
|
48
|
+
logParsingProgress(validation);
|
|
49
|
+
}
|
|
50
|
+
// Write output file if requested and parsing succeeded
|
|
51
|
+
if (options.outputFile && validation.valid) {
|
|
52
|
+
const absolutePath = path.resolve(options.outputFile);
|
|
53
|
+
fs.writeFileSync(absolutePath, JSON.stringify(config, null, 2), "utf-8");
|
|
54
|
+
if (options.verbose) {
|
|
55
|
+
console.log(`✅ Epic configuration saved: ${absolutePath}`);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return {
|
|
59
|
+
success: validation.valid,
|
|
60
|
+
config: validation.valid ? config : undefined,
|
|
61
|
+
errors: validation.errors,
|
|
62
|
+
warnings: validation.warnings,
|
|
63
|
+
stats: validation.stats
|
|
64
|
+
};
|
|
65
|
+
} catch (error) {
|
|
66
|
+
const parseError = {
|
|
67
|
+
type: "parsing_error",
|
|
68
|
+
message: `Failed to parse epic: ${error instanceof Error ? error.message : String(error)}`,
|
|
69
|
+
severity: "error",
|
|
70
|
+
details: error
|
|
71
|
+
};
|
|
72
|
+
return {
|
|
73
|
+
success: false,
|
|
74
|
+
errors: [
|
|
75
|
+
parseError
|
|
76
|
+
],
|
|
77
|
+
warnings: []
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Validate epic markdown structure without generating config
|
|
83
|
+
*
|
|
84
|
+
* @param epicDirectory - Path to epic directory
|
|
85
|
+
* @param verbose - Enable verbose logging
|
|
86
|
+
* @returns Validation result
|
|
87
|
+
*
|
|
88
|
+
* @example
|
|
89
|
+
* ```typescript
|
|
90
|
+
* const result = await validateEpic('./planning/example-epic', true);
|
|
91
|
+
* if (!result.success) {
|
|
92
|
+
* console.error('Validation errors:', result.errors);
|
|
93
|
+
* }
|
|
94
|
+
* ```
|
|
95
|
+
*/ export async function validateEpic(epicDirectory, verbose = false) {
|
|
96
|
+
return parseEpic({
|
|
97
|
+
epicDirectory,
|
|
98
|
+
validateOnly: true,
|
|
99
|
+
verbose
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Generate epic configuration JSON from markdown files
|
|
104
|
+
*
|
|
105
|
+
* @param epicDirectory - Path to epic directory
|
|
106
|
+
* @param outputPath - Optional output file path (defaults to epic-config.json in epic directory)
|
|
107
|
+
* @returns Parsing result
|
|
108
|
+
*
|
|
109
|
+
* @example
|
|
110
|
+
* ```typescript
|
|
111
|
+
* const result = await generateEpicConfig(
|
|
112
|
+
* './planning/example-epic',
|
|
113
|
+
* './config/epic.json'
|
|
114
|
+
* );
|
|
115
|
+
* ```
|
|
116
|
+
*/ export async function generateEpicConfig(epicDirectory, outputPath) {
|
|
117
|
+
const outputFile = outputPath || path.join(epicDirectory, "epic-config.json");
|
|
118
|
+
return parseEpic({
|
|
119
|
+
epicDirectory,
|
|
120
|
+
outputFile,
|
|
121
|
+
verbose: true
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Quick parse - returns config or throws error
|
|
126
|
+
*
|
|
127
|
+
* @param epicDirectory - Path to epic directory
|
|
128
|
+
* @returns Epic configuration
|
|
129
|
+
* @throws Error if parsing fails
|
|
130
|
+
*
|
|
131
|
+
* @example
|
|
132
|
+
* ```typescript
|
|
133
|
+
* try {
|
|
134
|
+
* const config = await parseEpicOrThrow('./planning/example-epic');
|
|
135
|
+
* console.log(`Epic: ${config.name}`);
|
|
136
|
+
* } catch (error) {
|
|
137
|
+
* console.error('Parse failed:', error);
|
|
138
|
+
* }
|
|
139
|
+
* ```
|
|
140
|
+
*/ export async function parseEpicOrThrow(epicDirectory) {
|
|
141
|
+
const result = await parseEpic({
|
|
142
|
+
epicDirectory
|
|
143
|
+
});
|
|
144
|
+
if (!result.success || !result.config) {
|
|
145
|
+
const errorMessages = result.errors.map((e)=>`[${e.type}] ${e.message}`).join("\n");
|
|
146
|
+
throw new Error(`Epic parsing failed:\n${errorMessages}`);
|
|
147
|
+
}
|
|
148
|
+
return result.config;
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Get epic summary statistics without full parsing
|
|
152
|
+
*
|
|
153
|
+
* @param epicDirectory - Path to epic directory
|
|
154
|
+
* @returns Quick stats about the epic
|
|
155
|
+
*/ export async function getEpicStats(epicDirectory) {
|
|
156
|
+
const result = await parseEpic({
|
|
157
|
+
epicDirectory,
|
|
158
|
+
validateOnly: true
|
|
159
|
+
});
|
|
160
|
+
if (!result.success || !result.config) {
|
|
161
|
+
throw new Error("Failed to get epic stats");
|
|
162
|
+
}
|
|
163
|
+
const totalSprints = result.stats?.totalSprints || 0;
|
|
164
|
+
const completedSprints = result.stats?.completedSprints || 0;
|
|
165
|
+
const completionPercentage = totalSprints > 0 ? completedSprints / totalSprints * 100 : 0;
|
|
166
|
+
return {
|
|
167
|
+
name: result.config.name,
|
|
168
|
+
phaseCount: result.stats?.totalPhases || 0,
|
|
169
|
+
sprintCount: totalSprints,
|
|
170
|
+
completionPercentage: Math.round(completionPercentage)
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
// ============================================================================
|
|
174
|
+
// Helper Functions
|
|
175
|
+
// ============================================================================
|
|
176
|
+
/**
|
|
177
|
+
* Log parsing progress and results
|
|
178
|
+
*/ function logParsingProgress(validation) {
|
|
179
|
+
if (validation.valid) {
|
|
180
|
+
console.log("✅ Epic parsing completed successfully");
|
|
181
|
+
} else {
|
|
182
|
+
console.error(`❌ Epic parsing failed with ${validation.errors.length} error(s)`);
|
|
183
|
+
validation.errors.forEach((err)=>{
|
|
184
|
+
const location = err.location ? ` at ${err.location.file}${err.location.line ? `:${err.location.line}` : ""}` : "";
|
|
185
|
+
console.error(` - [${err.type}] ${err.message}${location}`);
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
// Display warnings
|
|
189
|
+
if (validation.warnings.length > 0) {
|
|
190
|
+
console.warn(`⚠️ ${validation.warnings.length} warning(s):`);
|
|
191
|
+
validation.warnings.forEach((warn)=>{
|
|
192
|
+
const location = warn.location ? ` at ${warn.location.file}${warn.location.line ? `:${warn.location.line}` : ""}` : "";
|
|
193
|
+
console.warn(` - [${warn.type}] ${warn.message}${location}`);
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
// Display stats
|
|
197
|
+
if (validation.stats) {
|
|
198
|
+
console.log("\n📊 Epic Statistics:");
|
|
199
|
+
console.log(` - Phases: ${validation.stats.totalPhases}`);
|
|
200
|
+
console.log(` - Sprints: ${validation.stats.totalSprints}`);
|
|
201
|
+
console.log(` - Completed: ${validation.stats.completedSprints}/${validation.stats.totalSprints} (${Math.round(validation.stats.completedSprints / validation.stats.totalSprints * 100)}%)`);
|
|
202
|
+
console.log(` - Dependencies: ${validation.stats.dependencyCount}`);
|
|
203
|
+
if (validation.stats.cyclesDetected > 0) {
|
|
204
|
+
console.warn(` - ⚠️ Dependency cycles detected: ${validation.stats.cyclesDetected}`);
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Format errors for CLI display
|
|
210
|
+
*/ export function formatErrors(errors) {
|
|
211
|
+
return errors.map((err)=>{
|
|
212
|
+
const location = err.location ? ` at ${err.location.file}${err.location.line ? `:${err.location.line}` : ""}` : "";
|
|
213
|
+
return `[${err.severity.toUpperCase()}] [${err.type}] ${err.message}${location}`;
|
|
214
|
+
}).join("\n");
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* Check if epic directory exists and has required files
|
|
218
|
+
*/ export function validateEpicDirectory(epicDirectory) {
|
|
219
|
+
const errors = [];
|
|
220
|
+
// Check if directory exists
|
|
221
|
+
if (!fs.existsSync(epicDirectory)) {
|
|
222
|
+
errors.push(`Epic directory not found: ${epicDirectory}`);
|
|
223
|
+
return {
|
|
224
|
+
valid: false,
|
|
225
|
+
errors
|
|
226
|
+
};
|
|
227
|
+
}
|
|
228
|
+
// Check if it's a directory
|
|
229
|
+
const stat = fs.statSync(epicDirectory);
|
|
230
|
+
if (!stat.isDirectory()) {
|
|
231
|
+
errors.push(`Path is not a directory: ${epicDirectory}`);
|
|
232
|
+
return {
|
|
233
|
+
valid: false,
|
|
234
|
+
errors
|
|
235
|
+
};
|
|
236
|
+
}
|
|
237
|
+
// Check for EPIC_OVERVIEW.md
|
|
238
|
+
const overviewPath = path.join(epicDirectory, "EPIC_OVERVIEW.md");
|
|
239
|
+
if (!fs.existsSync(overviewPath)) {
|
|
240
|
+
errors.push(`Missing EPIC_OVERVIEW.md in ${epicDirectory}`);
|
|
241
|
+
}
|
|
242
|
+
// Check for at least one phase file
|
|
243
|
+
const files = fs.readdirSync(epicDirectory);
|
|
244
|
+
const phaseFiles = files.filter((f)=>f.startsWith("phase-") && f.endsWith(".md"));
|
|
245
|
+
if (phaseFiles.length === 0) {
|
|
246
|
+
errors.push(`No phase-*.md files found in ${epicDirectory}`);
|
|
247
|
+
}
|
|
248
|
+
return {
|
|
249
|
+
valid: errors.length === 0,
|
|
250
|
+
errors
|
|
251
|
+
};
|
|
252
|
+
}
|
|
253
|
+
// ============================================================================
|
|
254
|
+
// Default Export
|
|
255
|
+
// ============================================================================
|
|
256
|
+
export default {
|
|
257
|
+
parseEpic,
|
|
258
|
+
validateEpic,
|
|
259
|
+
generateEpicConfig,
|
|
260
|
+
parseEpicOrThrow,
|
|
261
|
+
getEpicStats,
|
|
262
|
+
validateEpicDirectory,
|
|
263
|
+
formatErrors
|
|
264
|
+
};
|
|
265
|
+
|
|
266
|
+
//# sourceMappingURL=epic-parser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cli/utils/epic-parser.ts"],"names":["fs","path","EpicParser","parseEpic","options","parser","epicDirectory","overviewFile","config","parse","validation","getValidationResult","verbose","logParsingProgress","outputFile","valid","absolutePath","resolve","writeFileSync","JSON","stringify","console","log","success","undefined","errors","warnings","stats","error","parseError","type","message","Error","String","severity","details","validateEpic","validateOnly","generateEpicConfig","outputPath","join","parseEpicOrThrow","result","errorMessages","map","e","getEpicStats","totalSprints","completedSprints","completionPercentage","name","phaseCount","totalPhases","sprintCount","Math","round","length","forEach","err","location","file","line","warn","dependencyCount","cyclesDetected","formatErrors","toUpperCase","validateEpicDirectory","existsSync","push","stat","statSync","isDirectory","overviewPath","files","readdirSync","phaseFiles","filter","f","startsWith","endsWith"],"mappings":"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"}
|
|
@@ -24,6 +24,8 @@ import { generateId } from '../utils/helpers.js';
|
|
|
24
24
|
// Performance monitoring
|
|
25
25
|
metrics;
|
|
26
26
|
metricsInterval;
|
|
27
|
+
// Shutdown control
|
|
28
|
+
isShutdown = false;
|
|
27
29
|
constructor(config, logger, eventBus){
|
|
28
30
|
super();
|
|
29
31
|
this.logger = logger;
|
|
@@ -51,6 +53,41 @@ import { generateId } from '../utils/helpers.js';
|
|
|
51
53
|
this.retryManager = new RetryManager(this.config, this.logger);
|
|
52
54
|
this.metrics = new MessageBusMetrics();
|
|
53
55
|
this.setupEventHandlers();
|
|
56
|
+
this.registerProcessSignalHandlers();
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Register process signal handlers for graceful shutdown
|
|
60
|
+
*/ registerProcessSignalHandlers() {
|
|
61
|
+
const handleSignal = ()=>{
|
|
62
|
+
this.destroy();
|
|
63
|
+
};
|
|
64
|
+
process.on('SIGTERM', handleSignal);
|
|
65
|
+
process.on('SIGINT', handleSignal);
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Destroy and cleanup MessageBus resources
|
|
69
|
+
* Idempotent - safe to call multiple times
|
|
70
|
+
*/ destroy() {
|
|
71
|
+
if (this.isShutdown) {
|
|
72
|
+
return; // Already destroyed
|
|
73
|
+
}
|
|
74
|
+
this.isShutdown = true;
|
|
75
|
+
// Clear metrics collection interval
|
|
76
|
+
if (this.metricsInterval) {
|
|
77
|
+
clearInterval(this.metricsInterval);
|
|
78
|
+
this.metricsInterval = undefined;
|
|
79
|
+
}
|
|
80
|
+
// Remove all event listeners
|
|
81
|
+
this.removeAllListeners();
|
|
82
|
+
// Clear all data structures
|
|
83
|
+
this.channels.clear();
|
|
84
|
+
this.queues.clear();
|
|
85
|
+
this.subscriptions.clear();
|
|
86
|
+
this.routingRules.clear();
|
|
87
|
+
this.messageStore.clear();
|
|
88
|
+
this.deliveryReceipts.clear();
|
|
89
|
+
this.acknowledgments.clear();
|
|
90
|
+
this.logger.info('MessageBus cleanup completed');
|
|
54
91
|
}
|
|
55
92
|
setupEventHandlers() {
|
|
56
93
|
this.eventBus.on('agent:connected', (data)=>{
|
|
@@ -109,6 +146,9 @@ import { generateId } from '../utils/helpers.js';
|
|
|
109
146
|
}
|
|
110
147
|
// === MESSAGE OPERATIONS ===
|
|
111
148
|
async sendMessage(type, content, sender, receivers, options = {}) {
|
|
149
|
+
if (this.isShutdown) {
|
|
150
|
+
throw new Error('MessageBus is shutdown');
|
|
151
|
+
}
|
|
112
152
|
const messageId = generateId('msg');
|
|
113
153
|
const now = new Date();
|
|
114
154
|
const receiversArray = Array.isArray(receivers) ? receivers : [
|
|
@@ -160,6 +200,9 @@ import { generateId } from '../utils/helpers.js';
|
|
|
160
200
|
return messageId;
|
|
161
201
|
}
|
|
162
202
|
async broadcastMessage(type, content, sender, options = {}) {
|
|
203
|
+
if (this.isShutdown) {
|
|
204
|
+
throw new Error('MessageBus is shutdown');
|
|
205
|
+
}
|
|
163
206
|
const channel = options.channel ? this.channels.get(options.channel) : this.getDefaultBroadcastChannel();
|
|
164
207
|
if (!channel) {
|
|
165
208
|
throw new Error('No broadcast channel available');
|
|
@@ -180,6 +223,9 @@ import { generateId } from '../utils/helpers.js';
|
|
|
180
223
|
});
|
|
181
224
|
}
|
|
182
225
|
async subscribeToTopic(topic, subscriber, options = {}) {
|
|
226
|
+
if (this.isShutdown) {
|
|
227
|
+
throw new Error('MessageBus is shutdown');
|
|
228
|
+
}
|
|
183
229
|
const subscriptionId = generateId('sub');
|
|
184
230
|
const subscription = {
|
|
185
231
|
id: subscriptionId,
|
|
@@ -203,6 +249,9 @@ import { generateId } from '../utils/helpers.js';
|
|
|
203
249
|
return subscriptionId;
|
|
204
250
|
}
|
|
205
251
|
async unsubscribeFromTopic(subscriptionId) {
|
|
252
|
+
if (this.isShutdown) {
|
|
253
|
+
throw new Error('MessageBus is shutdown');
|
|
254
|
+
}
|
|
206
255
|
const subscription = this.subscriptions.get(subscriptionId);
|
|
207
256
|
if (!subscription) {
|
|
208
257
|
throw new Error(`Subscription ${subscriptionId} not found`);
|
|
@@ -218,6 +267,9 @@ import { generateId } from '../utils/helpers.js';
|
|
|
218
267
|
});
|
|
219
268
|
}
|
|
220
269
|
async acknowledgeMessage(messageId, agentId) {
|
|
270
|
+
if (this.isShutdown) {
|
|
271
|
+
throw new Error('MessageBus is shutdown');
|
|
272
|
+
}
|
|
221
273
|
const message = this.messageStore.get(messageId);
|
|
222
274
|
if (!message) {
|
|
223
275
|
throw new Error(`Message ${messageId} not found`);
|
|
@@ -242,6 +294,9 @@ import { generateId } from '../utils/helpers.js';
|
|
|
242
294
|
}
|
|
243
295
|
// === CHANNEL MANAGEMENT ===
|
|
244
296
|
async createChannel(name, type, config = {}) {
|
|
297
|
+
if (this.isShutdown) {
|
|
298
|
+
throw new Error('MessageBus is shutdown');
|
|
299
|
+
}
|
|
245
300
|
const channelId = generateId('channel');
|
|
246
301
|
const channel = {
|
|
247
302
|
id: channelId,
|
|
@@ -283,6 +338,9 @@ import { generateId } from '../utils/helpers.js';
|
|
|
283
338
|
return channelId;
|
|
284
339
|
}
|
|
285
340
|
async joinChannel(channelId, agentId) {
|
|
341
|
+
if (this.isShutdown) {
|
|
342
|
+
throw new Error('MessageBus is shutdown');
|
|
343
|
+
}
|
|
286
344
|
const channel = this.channels.get(channelId);
|
|
287
345
|
if (!channel) {
|
|
288
346
|
throw new Error(`Channel ${channelId} not found`);
|
|
@@ -311,6 +369,9 @@ import { generateId } from '../utils/helpers.js';
|
|
|
311
369
|
});
|
|
312
370
|
}
|
|
313
371
|
async leaveChannel(channelId, agentId) {
|
|
372
|
+
if (this.isShutdown) {
|
|
373
|
+
throw new Error('MessageBus is shutdown');
|
|
374
|
+
}
|
|
314
375
|
const channel = this.channels.get(channelId);
|
|
315
376
|
if (!channel) {
|
|
316
377
|
throw new Error(`Channel ${channelId} not found`);
|
|
@@ -330,6 +391,9 @@ import { generateId } from '../utils/helpers.js';
|
|
|
330
391
|
}
|
|
331
392
|
// === QUEUE MANAGEMENT ===
|
|
332
393
|
async createQueue(name, type, config = {}) {
|
|
394
|
+
if (this.isShutdown) {
|
|
395
|
+
throw new Error('MessageBus is shutdown');
|
|
396
|
+
}
|
|
333
397
|
const queueId = generateId('queue');
|
|
334
398
|
const queue = {
|
|
335
399
|
id: queueId,
|
|
@@ -367,6 +431,9 @@ import { generateId } from '../utils/helpers.js';
|
|
|
367
431
|
return queueId;
|
|
368
432
|
}
|
|
369
433
|
async enqueueMessage(queueId, message) {
|
|
434
|
+
if (this.isShutdown) {
|
|
435
|
+
throw new Error('MessageBus is shutdown');
|
|
436
|
+
}
|
|
370
437
|
const queue = this.queues.get(queueId);
|
|
371
438
|
if (!queue) {
|
|
372
439
|
throw new Error(`Queue ${queueId} not found`);
|
|
@@ -397,6 +464,9 @@ import { generateId } from '../utils/helpers.js';
|
|
|
397
464
|
await this.processQueue(queue);
|
|
398
465
|
}
|
|
399
466
|
async dequeueMessage(queueId, subscriberId) {
|
|
467
|
+
if (this.isShutdown) {
|
|
468
|
+
throw new Error('MessageBus is shutdown');
|
|
469
|
+
}
|
|
400
470
|
const queue = this.queues.get(queueId);
|
|
401
471
|
if (!queue) {
|
|
402
472
|
throw new Error(`Queue ${queueId} not found`);
|
|
@@ -869,16 +939,31 @@ let MessageRouter = class MessageRouter {
|
|
|
869
939
|
let DeliveryManager = class DeliveryManager extends EventEmitter {
|
|
870
940
|
config;
|
|
871
941
|
logger;
|
|
942
|
+
isShutdown = false;
|
|
872
943
|
constructor(config, logger){
|
|
873
944
|
super(), this.config = config, this.logger = logger;
|
|
945
|
+
// Register automatic cleanup on process termination
|
|
946
|
+
process.on('SIGTERM', ()=>this.shutdown());
|
|
947
|
+
process.on('SIGINT', ()=>this.shutdown());
|
|
948
|
+
process.on('beforeExit', ()=>this.shutdown());
|
|
874
949
|
}
|
|
875
950
|
async initialize() {
|
|
951
|
+
if (this.isShutdown) {
|
|
952
|
+
throw new Error('DeliveryManager is shutdown');
|
|
953
|
+
}
|
|
876
954
|
this.logger.debug('Delivery manager initialized');
|
|
877
955
|
}
|
|
878
956
|
async shutdown() {
|
|
879
|
-
this.
|
|
957
|
+
if (this.isShutdown) return; // Idempotent guard
|
|
958
|
+
this.isShutdown = true;
|
|
959
|
+
// Clean up event listeners
|
|
960
|
+
this.removeAllListeners();
|
|
961
|
+
this.logger.debug('DeliveryManager cleanup completed');
|
|
880
962
|
}
|
|
881
963
|
async deliver(message, target) {
|
|
964
|
+
if (this.isShutdown) {
|
|
965
|
+
throw new Error('DeliveryManager is shutdown');
|
|
966
|
+
}
|
|
882
967
|
// Simulate delivery
|
|
883
968
|
this.logger.debug('Delivering message', {
|
|
884
969
|
messageId: message.id,
|
|
@@ -897,20 +982,38 @@ let RetryManager = class RetryManager extends EventEmitter {
|
|
|
897
982
|
logger;
|
|
898
983
|
retryQueue = [];
|
|
899
984
|
retryInterval;
|
|
985
|
+
isShutdown = false;
|
|
900
986
|
constructor(config, logger){
|
|
901
987
|
super(), this.config = config, this.logger = logger;
|
|
988
|
+
// Register automatic cleanup on process termination
|
|
989
|
+
process.on('SIGTERM', ()=>this.shutdown());
|
|
990
|
+
process.on('SIGINT', ()=>this.shutdown());
|
|
991
|
+
process.on('beforeExit', ()=>this.shutdown());
|
|
902
992
|
}
|
|
903
993
|
async initialize() {
|
|
994
|
+
if (this.isShutdown) {
|
|
995
|
+
throw new Error('RetryManager is shutdown');
|
|
996
|
+
}
|
|
904
997
|
this.startRetryProcessor();
|
|
905
998
|
this.logger.debug('Retry manager initialized');
|
|
906
999
|
}
|
|
907
1000
|
async shutdown() {
|
|
1001
|
+
if (this.isShutdown) return; // Idempotent guard
|
|
1002
|
+
this.isShutdown = true;
|
|
908
1003
|
if (this.retryInterval) {
|
|
909
1004
|
clearInterval(this.retryInterval);
|
|
1005
|
+
this.retryInterval = undefined;
|
|
910
1006
|
}
|
|
911
|
-
|
|
1007
|
+
// Clean up event listeners
|
|
1008
|
+
this.removeAllListeners();
|
|
1009
|
+
// Clear retry queue
|
|
1010
|
+
this.retryQueue = [];
|
|
1011
|
+
this.logger.debug('RetryManager cleanup completed');
|
|
912
1012
|
}
|
|
913
1013
|
async scheduleRetry(message, target, error) {
|
|
1014
|
+
if (this.isShutdown) {
|
|
1015
|
+
throw new Error('RetryManager is shutdown');
|
|
1016
|
+
}
|
|
914
1017
|
const existingEntry = this.retryQueue.find((entry)=>entry.message.id === message.id && entry.target.id === target.id);
|
|
915
1018
|
if (existingEntry) {
|
|
916
1019
|
existingEntry.attempts++;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/communication/message-bus.ts"],"names":["EventEmitter","generateId","MessageBus","logger","eventBus","config","channels","Map","queues","subscriptions","routingRules","messageStore","deliveryReceipts","acknowledgments","router","deliveryManager","retryManager","metrics","metricsInterval","strategy","enablePersistence","enableReliability","enableOrdering","enableFiltering","maxMessageSize","maxQueueSize","messageRetention","acknowledgmentTimeout","retryAttempts","backoffMultiplier","compressionEnabled","encryptionEnabled","metricsEnabled","debugMode","MessageRouter","DeliveryManager","RetryManager","MessageBusMetrics","setupEventHandlers","on","data","hasAgentId","handleAgentConnected","agentId","handleAgentDisconnected","handleDeliverySuccess","handleDeliveryFailure","handleRetryExhausted","initialize","info","persistence","reliability","createDefaultChannels","startMetricsCollection","emit","shutdown","clearInterval","persistMessages","sendMessage","type","content","sender","receivers","options","messageId","now","Date","receiversArray","Array","isArray","message","id","processContent","metadata","correlationId","replyTo","ttl","compressed","encrypted","size","calculateSize","contentType","detectContentType","encoding","route","timestamp","expiresAt","getTime","undefined","priority","validateMessage","set","routeMessage","channel","recordMessageSent","debug","map","r","broadcastMessage","get","getDefaultBroadcastChannel","Error","participants","filter","p","filterReceivers","subscribeToTopic","topic","subscriber","subscriptionId","subscription","ackRequired","qos","createdAt","unsubscribeFromTopic","delete","acknowledgeMessage","ack","status","checkAllAcknowledgments","createChannel","name","channelId","persistent","ordered","reliable","maxParticipants","maxQueueDepth","retentionPeriod","accessControl","readPermission","writePermission","adminPermission","allowedSenders","allowedReceivers","bannedAgents","statistics","createChannelStatistics","filters","middleware","joinChannel","canJoinChannel","length","some","push","participantCount","leaveChannel","createQueue","queueId","queue","messages","maxSize","durability","deliveryMode","retryPolicy","maxAttempts","initialDelay","maxDelay","jitter","subscribers","createQueueStatistics","enqueueMessage","deadLetterQueue","sendToDeadLetterQueue","insertMessageInQueue","depth","enqueueRate","queueDepth","processQueue","dequeueMessage","subscriberId","find","s","messageIndex","i","msg","matchesFilter","splice","dequeueRate","lastActivity","preferredChannel","calculateRoute","hops","target","targets","deliverMessage","deliver","recordDeliverySuccess","error","recordDeliveryFailure","scheduleRetry","processed","compress","encrypt","JSON","stringify","Buffer","isBuffer","context","acl","banned","allowed","conditions","every","condition","fieldValue","getFieldValue","field","evaluateCondition","operator","value","parts","split","part","compareValue","String","includes","RegExp","test","unshift","insertByPriority","insertByTimestamp","priorityOrder","critical","high","normal","low","messagePriority","insertIndex","currentPriority","targetTime","currentTime","prefetchCount","deliverMessageToSubscriber","agent","ackMode","requiredAcks","receivedAcks","receiver","has","forEach","from","values","messagesTotal","messagesDelivered","messagesFailed","bytesTransferred","averageLatency","throughput","errorRate","averageWaitTime","subscriberCount","deadLetterCount","setInterval","updateMetrics","updateChannelStatistics","updateQueueStatistics","getMetrics","subId","reason","deadLetterReason","deadLetterTimestamp","count","getChannel","getAllChannels","getQueue","getAllQueues","getSubscription","getAllSubscriptions","storedMessages","busMetrics","getMessage","addChannelFilter","sort","a","b","addChannelMiddleware","order","cost","retryQueue","retryInterval","startRetryProcessor","existingEntry","entry","attempts","processRetries","toRetry","delay","calculateDelay","attempt","warn","baseDelay","Math","min","pow","messagesSent","deliveryLatencies","latency","shift","avgLatency","reduce","sum","lat","successRate"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/communication/message-bus.ts"],"names":["EventEmitter","generateId","MessageBus","logger","eventBus","config","channels","Map","queues","subscriptions","routingRules","messageStore","deliveryReceipts","acknowledgments","router","deliveryManager","retryManager","metrics","metricsInterval","isShutdown","strategy","enablePersistence","enableReliability","enableOrdering","enableFiltering","maxMessageSize","maxQueueSize","messageRetention","acknowledgmentTimeout","retryAttempts","backoffMultiplier","compressionEnabled","encryptionEnabled","metricsEnabled","debugMode","MessageRouter","DeliveryManager","RetryManager","MessageBusMetrics","setupEventHandlers","registerProcessSignalHandlers","handleSignal","destroy","process","on","clearInterval","undefined","removeAllListeners","clear","info","data","hasAgentId","handleAgentConnected","agentId","handleAgentDisconnected","handleDeliverySuccess","handleDeliveryFailure","handleRetryExhausted","initialize","persistence","reliability","createDefaultChannels","startMetricsCollection","emit","shutdown","persistMessages","sendMessage","type","content","sender","receivers","options","Error","messageId","now","Date","receiversArray","Array","isArray","message","id","processContent","metadata","correlationId","replyTo","ttl","compressed","encrypted","size","calculateSize","contentType","detectContentType","encoding","route","timestamp","expiresAt","getTime","priority","validateMessage","set","routeMessage","channel","recordMessageSent","debug","map","r","broadcastMessage","get","getDefaultBroadcastChannel","participants","filter","p","filterReceivers","subscribeToTopic","topic","subscriber","subscriptionId","subscription","ackRequired","qos","createdAt","unsubscribeFromTopic","delete","acknowledgeMessage","ack","status","checkAllAcknowledgments","createChannel","name","channelId","persistent","ordered","reliable","maxParticipants","maxQueueDepth","retentionPeriod","accessControl","readPermission","writePermission","adminPermission","allowedSenders","allowedReceivers","bannedAgents","statistics","createChannelStatistics","filters","middleware","joinChannel","canJoinChannel","length","some","push","participantCount","leaveChannel","createQueue","queueId","queue","messages","maxSize","durability","deliveryMode","retryPolicy","maxAttempts","initialDelay","maxDelay","jitter","subscribers","createQueueStatistics","enqueueMessage","deadLetterQueue","sendToDeadLetterQueue","insertMessageInQueue","depth","enqueueRate","queueDepth","processQueue","dequeueMessage","subscriberId","find","s","messageIndex","i","msg","matchesFilter","splice","dequeueRate","lastActivity","preferredChannel","calculateRoute","hops","target","targets","deliverMessage","deliver","recordDeliverySuccess","error","recordDeliveryFailure","scheduleRetry","processed","compress","encrypt","JSON","stringify","Buffer","isBuffer","context","acl","banned","allowed","conditions","every","condition","fieldValue","getFieldValue","field","evaluateCondition","operator","value","parts","split","part","compareValue","String","includes","RegExp","test","unshift","insertByPriority","insertByTimestamp","priorityOrder","critical","high","normal","low","messagePriority","insertIndex","currentPriority","targetTime","currentTime","prefetchCount","deliverMessageToSubscriber","agent","ackMode","requiredAcks","receivedAcks","receiver","has","forEach","from","values","messagesTotal","messagesDelivered","messagesFailed","bytesTransferred","averageLatency","throughput","errorRate","averageWaitTime","subscriberCount","deadLetterCount","setInterval","updateMetrics","updateChannelStatistics","updateQueueStatistics","getMetrics","subId","reason","deadLetterReason","deadLetterTimestamp","count","getChannel","getAllChannels","getQueue","getAllQueues","getSubscription","getAllSubscriptions","storedMessages","busMetrics","getMessage","addChannelFilter","sort","a","b","addChannelMiddleware","order","cost","retryQueue","retryInterval","startRetryProcessor","existingEntry","entry","attempts","processRetries","toRetry","delay","calculateDelay","attempt","warn","baseDelay","Math","min","pow","messagesSent","deliveryLatencies","latency","shift","avgLatency","reduce","sum","lat","successRate"],"mappings":"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"}
|