claude-flow-novice 1.6.1 → 1.6.3
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/agents/cfn-loop/product-owner.md +54 -4
- package/.claude/commands/cfn-claude-sync.md +303 -0
- package/.claude/commands/cfn-loop-epic.md +290 -0
- package/.claude/commands/cfn-loop-single.md +168 -0
- package/.claude/commands/cfn-loop-sprints.md +384 -0
- package/.claude/commands/cfn-loop.md +180 -0
- package/.claude/commands/metrics-summary.md +58 -0
- package/.claude/commands/parse-epic.md +357 -0
- package/.claude/settings.json +5 -4
- package/.claude/settings.local.json +9 -2
- package/.claude-flow-novice/.claude/agents/cfn-loop/product-owner.md +792 -0
- package/.claude-flow-novice/dist/mcp/server.js +21 -2
- package/.claude-flow-novice/dist/src/api/auth-service.js +84 -38
- package/.claude-flow-novice/dist/src/api/auth-service.js.map +1 -1
- package/.claude-flow-novice/dist/src/api/claude-client.js +138 -3
- package/.claude-flow-novice/dist/src/api/claude-client.js.map +1 -1
- package/.claude-flow-novice/dist/src/cfn-loop/phase-orchestrator-example.js +1 -1
- package/.claude-flow-novice/dist/src/cfn-loop/scope-control.js +247 -0
- package/.claude-flow-novice/dist/src/cfn-loop/scope-control.js.map +1 -0
- package/.claude-flow-novice/dist/src/cli/commands/swarm.js +32 -15
- package/.claude-flow-novice/dist/src/cli/commands/swarm.js.map +1 -1
- package/.claude-flow-novice/dist/src/cli/commands/transparency.js +455 -0
- package/.claude-flow-novice/dist/src/cli/commands/transparency.js.map +1 -0
- package/.claude-flow-novice/dist/src/cli/simple-commands/init/templates/CLAUDE.md +129 -13
- package/.claude-flow-novice/dist/src/components/visualizations/index.js +9 -0
- package/.claude-flow-novice/dist/src/components/visualizations/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/adapters/v1-coordinator-adapter.js +462 -0
- package/.claude-flow-novice/dist/src/coordination/adapters/v1-coordinator-adapter.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/config-translator.js +248 -0
- package/.claude-flow-novice/dist/src/coordination/config-translator.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/coordination-toggle.js +287 -0
- package/.claude-flow-novice/dist/src/coordination/coordination-toggle.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/distributed-consensus.js +68 -9
- package/.claude-flow-novice/dist/src/coordination/distributed-consensus.js.map +1 -1
- package/.claude-flow-novice/dist/src/coordination/feature-flags.js +166 -0
- package/.claude-flow-novice/dist/src/coordination/feature-flags.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/queen-agent.js +18 -4
- package/.claude-flow-novice/dist/src/coordination/queen-agent.js.map +1 -1
- package/.claude-flow-novice/dist/src/coordination/role-assignment.js +6 -110
- package/.claude-flow-novice/dist/src/coordination/role-assignment.js.map +1 -1
- package/.claude-flow-novice/dist/src/coordination/v2/cache/artifact-cache-optimizer.js +632 -0
- package/.claude-flow-novice/dist/src/coordination/v2/cache/artifact-cache-optimizer.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/cache/index.js +11 -0
- package/.claude-flow-novice/dist/src/coordination/v2/cache/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/checkpoints/checkpoint-compressor.js +318 -0
- package/.claude-flow-novice/dist/src/coordination/v2/checkpoints/checkpoint-compressor.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/coordinators/cascading-shutdown.example.js +364 -0
- package/.claude-flow-novice/dist/src/coordination/v2/coordinators/cascading-shutdown.example.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/coordinators/cascading-shutdown.js +492 -0
- package/.claude-flow-novice/dist/src/coordination/v2/coordinators/cascading-shutdown.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/coordinators/hierarchical-coordinator.js +786 -0
- package/.claude-flow-novice/dist/src/coordination/v2/coordinators/hierarchical-coordinator.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/coordinators/index.js +16 -0
- package/.claude-flow-novice/dist/src/coordination/v2/coordinators/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/coordinators/parent-child-manager.js +342 -0
- package/.claude-flow-novice/dist/src/coordination/v2/coordinators/parent-child-manager.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/coordinators/swarm-coordinator-v2.js +601 -0
- package/.claude-flow-novice/dist/src/coordination/v2/coordinators/swarm-coordinator-v2.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/core/help-request-metrics.js +211 -0
- package/.claude-flow-novice/dist/src/coordination/v2/core/help-request-metrics.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/core/index.js +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/core/index.js.map +1 -1
- package/.claude-flow-novice/dist/src/coordination/v2/core/message-broker.js +365 -6
- package/.claude-flow-novice/dist/src/coordination/v2/core/message-broker.js.map +1 -1
- package/.claude-flow-novice/dist/src/coordination/v2/core/resource-manager-safe.js +478 -0
- package/.claude-flow-novice/dist/src/coordination/v2/core/resource-manager-safe.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/core/state-machine-config.js +5 -2
- package/.claude-flow-novice/dist/src/coordination/v2/core/state-machine-config.js.map +1 -1
- package/.claude-flow-novice/dist/src/coordination/v2/core/state-machine.js +189 -0
- package/.claude-flow-novice/dist/src/coordination/v2/core/state-machine.js.map +1 -1
- package/.claude-flow-novice/dist/src/coordination/v2/deadlock/deadlock-detector.js +424 -0
- package/.claude-flow-novice/dist/src/coordination/v2/deadlock/deadlock-detector.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/deadlock/index.js +9 -0
- package/.claude-flow-novice/dist/src/coordination/v2/deadlock/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/deadlock/resource-manager.js +669 -0
- package/.claude-flow-novice/dist/src/coordination/v2/deadlock/resource-manager.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/dependency/artifact-storage.js +451 -0
- package/.claude-flow-novice/dist/src/coordination/v2/dependency/artifact-storage.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/dependency/cycle-detector.js +271 -0
- package/.claude-flow-novice/dist/src/coordination/v2/dependency/cycle-detector.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/dependency/dependency-graph.js +335 -0
- package/.claude-flow-novice/dist/src/coordination/v2/dependency/dependency-graph.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/dependency/dependency-manager.js +439 -0
- package/.claude-flow-novice/dist/src/coordination/v2/dependency/dependency-manager.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/dependency/dependency-request.js +92 -0
- package/.claude-flow-novice/dist/src/coordination/v2/dependency/dependency-request.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/dependency/index.js +21 -0
- package/.claude-flow-novice/dist/src/coordination/v2/dependency/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/dependency/topological-sort.js +223 -0
- package/.claude-flow-novice/dist/src/coordination/v2/dependency/topological-sort.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/help-system/help-coordinator.js +436 -0
- package/.claude-flow-novice/dist/src/coordination/v2/help-system/help-coordinator.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/help-system/help-matcher.js +278 -0
- package/.claude-flow-novice/dist/src/coordination/v2/help-system/help-matcher.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/help-system/help-request-handler.js +317 -0
- package/.claude-flow-novice/dist/src/coordination/v2/help-system/help-request-handler.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/help-system/help-request.js +273 -0
- package/.claude-flow-novice/dist/src/coordination/v2/help-system/help-request.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/help-system/index.js +15 -0
- package/.claude-flow-novice/dist/src/coordination/v2/help-system/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/help-system/waiting-agent-pool.js +512 -0
- package/.claude-flow-novice/dist/src/coordination/v2/help-system/waiting-agent-pool.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/index.js +6 -0
- package/.claude-flow-novice/dist/src/coordination/v2/index.js.map +1 -1
- package/.claude-flow-novice/dist/src/coordination/v2/integration/help-deadlock-integration.js +557 -0
- package/.claude-flow-novice/dist/src/coordination/v2/integration/help-deadlock-integration.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/integration/index.js +14 -0
- package/.claude-flow-novice/dist/src/coordination/v2/integration/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/integration/message-bus-completion-integration.example.js +212 -0
- package/.claude-flow-novice/dist/src/coordination/v2/integration/message-bus-completion-integration.example.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/integration/message-bus-completion-integration.js +552 -0
- package/.claude-flow-novice/dist/src/coordination/v2/integration/message-bus-completion-integration.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/memory/dependency-storage.js +367 -0
- package/.claude-flow-novice/dist/src/coordination/v2/memory/dependency-storage.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/memory/index.js +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/memory/index.js.map +1 -1
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/channel.js +371 -0
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/channel.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/dependency-channel.js +355 -0
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/dependency-channel.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/help-channel.js +424 -0
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/help-channel.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/index.js +16 -0
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/state-channel.js +295 -0
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/state-channel.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/task-channel.js +411 -0
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/channels/task-channel.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/index.js +14 -0
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/message-bus.js +387 -0
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/message-bus.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/message-persistence.js +589 -0
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/message-persistence.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/message-router.js +444 -0
- package/.claude-flow-novice/dist/src/coordination/v2/messaging/message-router.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/sdk/checkpoint-manager.js +29 -8
- package/.claude-flow-novice/dist/src/coordination/v2/sdk/checkpoint-manager.js.map +1 -1
- package/.claude-flow-novice/dist/src/coordination/v2/sdk/help-coordinator.js +470 -0
- package/.claude-flow-novice/dist/src/coordination/v2/sdk/help-coordinator.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/sdk/hierarchical-background-integration.js +450 -0
- package/.claude-flow-novice/dist/src/coordination/v2/sdk/hierarchical-background-integration.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/sdk/index.js +5 -0
- package/.claude-flow-novice/dist/src/coordination/v2/sdk/index.js.map +1 -1
- package/.claude-flow-novice/dist/src/coordination/v2/sdk/multi-level-control.js +545 -0
- package/.claude-flow-novice/dist/src/coordination/v2/sdk/multi-level-control.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/sdk/query-controller.js +44 -0
- package/.claude-flow-novice/dist/src/coordination/v2/sdk/query-controller.js.map +1 -1
- package/.claude-flow-novice/dist/src/coordination/v2/sdk/query-message-integration.js +415 -0
- package/.claude-flow-novice/dist/src/coordination/v2/sdk/query-message-integration.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/sdk/session-pool-optimizer.js +615 -0
- package/.claude-flow-novice/dist/src/coordination/v2/sdk/session-pool-optimizer.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/security/payload-validator.js +259 -0
- package/.claude-flow-novice/dist/src/coordination/v2/security/payload-validator.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/transparency/index.js +17 -0
- package/.claude-flow-novice/dist/src/coordination/v2/transparency/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/transparency/transparency-integration.js +357 -0
- package/.claude-flow-novice/dist/src/coordination/v2/transparency/transparency-integration.js.map +1 -0
- package/.claude-flow-novice/dist/src/coordination/v2/transparency/transparency-system.js +679 -0
- package/.claude-flow-novice/dist/src/coordination/v2/transparency/transparency-system.js.map +1 -0
- package/.claude-flow-novice/dist/src/core/agent-manager.js +30 -0
- package/.claude-flow-novice/dist/src/core/agent-manager.js.map +1 -1
- package/.claude-flow-novice/dist/src/mcp/server.js +21 -2
- package/.claude-flow-novice/dist/src/mcp/server.js.map +1 -1
- package/.claude-flow-novice/dist/src/monitoring/apm/apm-integration.js +719 -0
- package/.claude-flow-novice/dist/src/monitoring/apm/apm-integration.js.map +1 -0
- package/.claude-flow-novice/dist/src/monitoring/apm/datadog-collector.js +363 -0
- package/.claude-flow-novice/dist/src/monitoring/apm/datadog-collector.js.map +1 -0
- package/.claude-flow-novice/dist/src/monitoring/apm/index.js +97 -0
- package/.claude-flow-novice/dist/src/monitoring/apm/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/monitoring/apm/newrelic-collector.js +384 -0
- package/.claude-flow-novice/dist/src/monitoring/apm/newrelic-collector.js.map +1 -0
- package/.claude-flow-novice/dist/src/monitoring/apm/performance-optimizer.js +612 -0
- package/.claude-flow-novice/dist/src/monitoring/apm/performance-optimizer.js.map +1 -0
- package/.claude-flow-novice/dist/src/monitoring/metrics-collector.js +282 -0
- package/.claude-flow-novice/dist/src/monitoring/metrics-collector.js.map +1 -0
- package/.claude-flow-novice/dist/src/observability/metrics-counter.js +268 -0
- package/.claude-flow-novice/dist/src/observability/metrics-counter.js.map +1 -0
- package/.claude-flow-novice/dist/src/observability/metrics-storage.js +265 -0
- package/.claude-flow-novice/dist/src/observability/metrics-storage.js.map +1 -0
- package/.claude-flow-novice/dist/src/observability/telemetry.js +26 -0
- package/.claude-flow-novice/dist/src/observability/telemetry.js.map +1 -1
- package/.claude-flow-novice/dist/src/providers/tiered-router.js +64 -10
- package/.claude-flow-novice/dist/src/providers/tiered-router.js.map +1 -1
- package/.claude-flow-novice/dist/src/providers/zai-provider.js +196 -97
- package/.claude-flow-novice/dist/src/providers/zai-provider.js.map +1 -1
- package/.claude-flow-novice/dist/src/slash-commands/cfn-claude-sync.js +533 -0
- package/.claude-flow-novice/dist/src/slash-commands/index.js +5 -0
- package/.claude-flow-novice/dist/src/slash-commands/metrics-summary-class.js +74 -0
- package/.claude-flow-novice/dist/src/slash-commands/metrics-summary.js +335 -0
- package/.claude-flow-novice/dist/src/slash-commands/register-all-commands.js +12 -0
- package/.claude-flow-novice/dist/src/verification/checkpoint-compression-demo.js +96 -0
- package/.claude-flow-novice/dist/src/verification/checkpoint-compression-demo.js.map +1 -0
- package/.claude-flow-novice/dist/src/verification/checkpoint-compression.js +406 -0
- package/.claude-flow-novice/dist/src/verification/checkpoint-compression.js.map +1 -0
- package/.claude-flow-novice/dist/src/verification/checkpoint-manager.js +35 -5
- package/.claude-flow-novice/dist/src/verification/checkpoint-manager.js.map +1 -1
- package/.claude-flow-novice/dist/src/web/api/apm-routes.js +355 -0
- package/.claude-flow-novice/dist/src/web/api/apm-routes.js.map +1 -0
- package/.claude-flow-novice/dist/src/web/api/config/api-config.js +186 -0
- package/.claude-flow-novice/dist/src/web/api/config/api-config.js.map +1 -0
- package/.claude-flow-novice/dist/src/web/api/middleware/auth.js +205 -0
- package/.claude-flow-novice/dist/src/web/api/middleware/auth.js.map +1 -0
- package/.claude-flow-novice/dist/src/web/api/middleware/cache.js +262 -0
- package/.claude-flow-novice/dist/src/web/api/middleware/cache.js.map +1 -0
- package/.claude-flow-novice/dist/src/web/api/middleware/error-handler.js +250 -0
- package/.claude-flow-novice/dist/src/web/api/middleware/error-handler.js.map +1 -0
- package/.claude-flow-novice/dist/src/web/api/middleware/request-logger.js +217 -0
- package/.claude-flow-novice/dist/src/web/api/middleware/request-logger.js.map +1 -0
- package/.claude-flow-novice/dist/src/web/api/middleware/validation.js +325 -0
- package/.claude-flow-novice/dist/src/web/api/middleware/validation.js.map +1 -0
- package/.claude-flow-novice/dist/src/web/api/routes/events.js +465 -0
- package/.claude-flow-novice/dist/src/web/api/routes/events.js.map +1 -0
- package/.claude-flow-novice/dist/src/web/api/routes/hierarchy.js +302 -0
- package/.claude-flow-novice/dist/src/web/api/routes/hierarchy.js.map +1 -0
- package/.claude-flow-novice/dist/src/web/api/routes/index.js +14 -0
- package/.claude-flow-novice/dist/src/web/api/routes/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/web/api/routes/metrics.js +561 -0
- package/.claude-flow-novice/dist/src/web/api/routes/metrics.js.map +1 -0
- package/.claude-flow-novice/dist/src/web/api/routes/status.js +450 -0
- package/.claude-flow-novice/dist/src/web/api/routes/status.js.map +1 -0
- package/.claude-flow-novice/dist/src/web/api/server.js +451 -0
- package/.claude-flow-novice/dist/src/web/api/server.js.map +1 -0
- package/.claude-flow-novice/dist/src/web/dashboard/hooks/useWebSocket.js +385 -0
- package/.claude-flow-novice/dist/src/web/dashboard/hooks/useWebSocket.js.map +1 -0
- package/.claude-flow-novice/dist/src/web/dashboard/index.js +87 -0
- package/.claude-flow-novice/dist/src/web/dashboard/index.js.map +1 -0
- package/.claude-flow-novice/dist/src/web/dashboard/types.js +6 -0
- package/.claude-flow-novice/dist/src/web/dashboard/types.js.map +1 -0
- package/.claude-flow-novice/dist/src/web/frontend/src/utils/security.js +425 -0
- package/.claude-flow-novice/dist/src/web/frontend/src/utils/security.js.map +1 -0
- package/.claude-flow-novice/dist/src/web/security/security-middleware.js +379 -0
- package/.claude-flow-novice/dist/src/web/security/security-middleware.js.map +1 -0
- package/.claude-flow-novice/dist/src/web/websocket/apm-websocket-handler.js +441 -0
- package/.claude-flow-novice/dist/src/web/websocket/apm-websocket-handler.js.map +1 -0
- package/.claude-flow-novice/dist/src/web/websocket/websocket-manager.js +255 -1
- package/.claude-flow-novice/dist/src/web/websocket/websocket-manager.js.map +1 -1
- package/.claude-flow-novice/metrics.db +0 -0
- package/.claude-flow-novice/metrics.db-shm +0 -0
- package/.claude-flow-novice/metrics.db-wal +0 -0
- package/AGENT_PERFORMANCE_GUIDELINES.md +88 -0
- package/CLAUDE.md +60 -3
- package/MEMORY_LEAK_ROOT_CAUSE.md +149 -0
- package/README.md +27 -0
- package/config/hooks/post-edit-pipeline.js +36 -2
- package/examples/metrics-counter-demo.ts +106 -0
- package/examples/persistent-metrics-demo.ts +83 -0
- package/examples/phase-5-multi-level-control.ts +282 -0
- package/examples/session-pool-optimizer-example.ts +311 -0
- package/package.json +18 -4
- package/scripts/check-routing-stats.cjs +122 -0
- package/scripts/monitor-loop.sh +65 -0
- package/scripts/monitor-memory.sh +47 -0
- package/scripts/monitor.py +43 -0
- package/scripts/pre-publish-validation.cjs +212 -0
- package/scripts/test-provider-routing.cjs +228 -0
- package/scripts/test-routing-telemetry.cjs +147 -0
- package/scripts/test-zai-10k.cjs +81 -0
- package/scripts/test-zai-api.cjs +191 -0
- package/scripts/test-zai-diagnostic.cjs +151 -0
- package/scripts/test-zai-final.cjs +128 -0
- package/scripts/test-zai-with-env.cjs +85 -0
- package/scripts/validate-coordination-cli.js +69 -0
- package/scripts/validate-coordination-toggle-integration.cjs +501 -0
- package/src/cli/simple-commands/init/templates/CLAUDE.md +29 -0
- package/src/observability/metrics-counter.ts +347 -0
- package/src/observability/metrics-storage.ts +356 -0
- package/src/observability/telemetry.ts +658 -0
- package/src/slash-commands/cfn-claude-sync.js +533 -0
- package/src/slash-commands/index.js +5 -0
- package/src/slash-commands/metrics-summary-class.js +74 -0
- package/src/slash-commands/metrics-summary.js +335 -0
- package/src/slash-commands/register-all-commands.js +12 -0
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* Based on PBFT (Practical Byzantine Fault Tolerance) adapted for mesh coordination.
|
|
12
12
|
*/ import { EventEmitter } from 'node:events';
|
|
13
13
|
import { performance } from 'perf_hooks';
|
|
14
|
-
import crypto from 'crypto';
|
|
14
|
+
import * as crypto from 'crypto';
|
|
15
15
|
// ============================================================================
|
|
16
16
|
// Distributed Consensus Manager
|
|
17
17
|
// ============================================================================
|
|
@@ -21,6 +21,7 @@ export class DistributedConsensusManager extends EventEmitter {
|
|
|
21
21
|
agentStakes;
|
|
22
22
|
consensusHistory;
|
|
23
23
|
activeProposals;
|
|
24
|
+
agentKeyPairs;
|
|
24
25
|
constructor(config = {}){
|
|
25
26
|
super();
|
|
26
27
|
this.config = {
|
|
@@ -37,6 +38,7 @@ export class DistributedConsensusManager extends EventEmitter {
|
|
|
37
38
|
this.agentStakes = new Map();
|
|
38
39
|
this.consensusHistory = [];
|
|
39
40
|
this.activeProposals = new Map();
|
|
41
|
+
this.agentKeyPairs = new Map();
|
|
40
42
|
}
|
|
41
43
|
/**
|
|
42
44
|
* Register agent with proof-of-work verification
|
|
@@ -202,6 +204,8 @@ export class DistributedConsensusManager extends EventEmitter {
|
|
|
202
204
|
/**
|
|
203
205
|
* Request vote from a specific peer
|
|
204
206
|
*/ async requestVoteFromPeer(agentId, proposal) {
|
|
207
|
+
// Ensure agent has RSA keypair
|
|
208
|
+
this.ensureAgentKeypair(agentId);
|
|
205
209
|
// Simulate network latency
|
|
206
210
|
await new Promise((resolve)=>setTimeout(resolve, Math.random() * 100));
|
|
207
211
|
// Simulate agent validation
|
|
@@ -218,13 +222,14 @@ export class DistributedConsensusManager extends EventEmitter {
|
|
|
218
222
|
return vote;
|
|
219
223
|
}
|
|
220
224
|
/**
|
|
221
|
-
* Validate votes for cryptographic integrity
|
|
225
|
+
* Validate votes for cryptographic integrity using RSA public key verification
|
|
222
226
|
*/ validateVotes(votes, agents) {
|
|
223
227
|
const validVotes = [];
|
|
224
228
|
for (const vote of votes){
|
|
225
|
-
// Verify signature
|
|
226
|
-
const
|
|
227
|
-
|
|
229
|
+
// Verify RSA signature using agent's public key
|
|
230
|
+
const voteData = `${vote.voterId}:${vote.proposalId}:${vote.validations.overallScore}:${vote.validations.nonce}`;
|
|
231
|
+
const isValid = this.verifySignature(vote.voterId, voteData, vote.signature);
|
|
232
|
+
if (isValid) {
|
|
228
233
|
validVotes.push(vote);
|
|
229
234
|
} else {
|
|
230
235
|
this.emit('vote:invalid_signature', {
|
|
@@ -511,21 +516,75 @@ export class DistributedConsensusManager extends EventEmitter {
|
|
|
511
516
|
return validation;
|
|
512
517
|
}
|
|
513
518
|
/**
|
|
514
|
-
*
|
|
519
|
+
* Ensure agent has RSA keypair (2048-bit)
|
|
520
|
+
*/ ensureAgentKeypair(agentId) {
|
|
521
|
+
if (!this.agentKeyPairs.has(agentId)) {
|
|
522
|
+
const { publicKey, privateKey } = crypto.generateKeyPairSync('rsa', {
|
|
523
|
+
modulusLength: 2048,
|
|
524
|
+
publicKeyEncoding: {
|
|
525
|
+
type: 'spki',
|
|
526
|
+
format: 'pem'
|
|
527
|
+
},
|
|
528
|
+
privateKeyEncoding: {
|
|
529
|
+
type: 'pkcs8',
|
|
530
|
+
format: 'pem'
|
|
531
|
+
}
|
|
532
|
+
});
|
|
533
|
+
this.agentKeyPairs.set(agentId, {
|
|
534
|
+
publicKey,
|
|
535
|
+
privateKey
|
|
536
|
+
});
|
|
537
|
+
}
|
|
538
|
+
}
|
|
539
|
+
/**
|
|
540
|
+
* Sign validation with agent's RSA private key
|
|
515
541
|
*/ signValidation(validation) {
|
|
542
|
+
this.ensureAgentKeypair(validation.agentId);
|
|
516
543
|
const data = JSON.stringify({
|
|
517
544
|
agentId: validation.agentId,
|
|
518
545
|
timestamp: validation.timestamp,
|
|
519
546
|
dimensions: validation.dimensions,
|
|
520
547
|
nonce: validation.nonce
|
|
521
548
|
});
|
|
522
|
-
|
|
549
|
+
const keypair = this.agentKeyPairs.get(validation.agentId);
|
|
550
|
+
const signature = crypto.sign('sha256', Buffer.from(data), {
|
|
551
|
+
key: keypair.privateKey,
|
|
552
|
+
padding: crypto.constants.RSA_PKCS1_PSS_PADDING
|
|
553
|
+
});
|
|
554
|
+
return signature.toString('base64');
|
|
523
555
|
}
|
|
524
556
|
/**
|
|
525
|
-
* Sign vote with agent's private key
|
|
557
|
+
* Sign vote with agent's RSA private key
|
|
526
558
|
*/ signVote(agentId, proposalId, validation) {
|
|
559
|
+
this.ensureAgentKeypair(agentId);
|
|
527
560
|
const data = `${agentId}:${proposalId}:${validation.overallScore}:${validation.nonce}`;
|
|
528
|
-
|
|
561
|
+
const keypair = this.agentKeyPairs.get(agentId);
|
|
562
|
+
const signature = crypto.sign('sha256', Buffer.from(data), {
|
|
563
|
+
key: keypair.privateKey,
|
|
564
|
+
padding: crypto.constants.RSA_PKCS1_PSS_PADDING
|
|
565
|
+
});
|
|
566
|
+
return signature.toString('base64');
|
|
567
|
+
}
|
|
568
|
+
/**
|
|
569
|
+
* Verify RSA signature using agent's public key
|
|
570
|
+
*/ verifySignature(agentId, data, signature) {
|
|
571
|
+
const keypair = this.agentKeyPairs.get(agentId);
|
|
572
|
+
if (!keypair) {
|
|
573
|
+
return false;
|
|
574
|
+
}
|
|
575
|
+
try {
|
|
576
|
+
const isValid = crypto.verify('sha256', Buffer.from(data), {
|
|
577
|
+
key: keypair.publicKey,
|
|
578
|
+
padding: crypto.constants.RSA_PKCS1_PSS_PADDING
|
|
579
|
+
}, Buffer.from(signature, 'base64'));
|
|
580
|
+
return isValid;
|
|
581
|
+
} catch (error) {
|
|
582
|
+
this.emit('signature:verification_failed', {
|
|
583
|
+
agentId,
|
|
584
|
+
error: error instanceof Error ? error.message : String(error)
|
|
585
|
+
});
|
|
586
|
+
return false;
|
|
587
|
+
}
|
|
529
588
|
}
|
|
530
589
|
/**
|
|
531
590
|
* Generate cryptographic hash
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/coordination/distributed-consensus.ts"],"names":["EventEmitter","performance","crypto","DistributedConsensusManager","config","agentReputations","agentStakes","consensusHistory","activeProposals","approvalThreshold","byzantineTolerance","sybilDetectionEnabled","reputationDecayFactor","minParticipationRate","timeout","proofOfWorkDifficulty","proofOfWorkEnabled","Map","registerAgent","agentId","proofOfWork","nonce","set","stake","registeredAt","Date","now","difficulty","expectedHash","hash","emit","reason","expected","received","countLeadingZeros","required","difficultyBonus","Math","min","agentStake","count","char","generateProofOfWork","leadingZeros","Error","executeConsensus","proposal","agents","startTime","proposalId","agentCount","length","votes","collectVotes","validVotes","validateVotes","byzantineAgents","detectByzantineAgents","trustedVotes","filter","v","includes","voterId","dimensionScores","aggregateDimensions","consensusScore","calculateConsensusScore","approved","proof","generateConsensusProof","updateReputations","duration","result","participatingAgents","byzantineAgentsDetected","timestamp","push","delete","deadline","vote","requestVoteFromPeer","error","message","String","Promise","resolve","setTimeout","random","validation","simulateAgentValidation","voteId","generateId","overallScore","validations","signature","signVote","expectedSignature","Set","outliers","detectOutliers","forEach","add","inconsistent","detectInconsistentVoting","lowReputation","detectLowReputationAgents","replayAttackers","detectReplayAttacks","Array","from","scores","map","mean","reduce","a","b","variance","sum","score","pow","stdDev","sqrt","zScore","abs","reputation","get","reputationScore","suspicious","seenNonces","has","agentNonces","dimensions","dimension","flatMap","d","confidence","avgScore","approvals","totalStake","approvalStake","proposalHash","JSON","stringify","voteHashes","merkleRoot","buildMerkleRoot","signatureChain","participationRate","hashes","paired","i","left","right","totalVotes","consistentVotes","inconsistentVotes","lastVote","evidence","blockers","overallConfidence","signValidation","data","createHash","update","digest","prefix","toString","substring","getAgentReputation","getAgentStake","getAllAgentStakes","values","getConsensusHistory","getMetrics","totalConsensus","r","avgConsensusScore","avgDuration","stakes","avgStake","s","avgDifficulty","rejected","byzantineDetections","registeredAgents","size","requiredDifficulty","shutdown","clear","removeAllListeners"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/coordination/distributed-consensus.ts"],"names":["EventEmitter","performance","crypto","DistributedConsensusManager","config","agentReputations","agentStakes","consensusHistory","activeProposals","agentKeyPairs","approvalThreshold","byzantineTolerance","sybilDetectionEnabled","reputationDecayFactor","minParticipationRate","timeout","proofOfWorkDifficulty","proofOfWorkEnabled","Map","registerAgent","agentId","proofOfWork","nonce","set","stake","registeredAt","Date","now","difficulty","expectedHash","hash","emit","reason","expected","received","countLeadingZeros","required","difficultyBonus","Math","min","agentStake","count","char","generateProofOfWork","leadingZeros","Error","executeConsensus","proposal","agents","startTime","proposalId","agentCount","length","votes","collectVotes","validVotes","validateVotes","byzantineAgents","detectByzantineAgents","trustedVotes","filter","v","includes","voterId","dimensionScores","aggregateDimensions","consensusScore","calculateConsensusScore","approved","proof","generateConsensusProof","updateReputations","duration","result","participatingAgents","byzantineAgentsDetected","timestamp","push","delete","deadline","vote","requestVoteFromPeer","error","message","String","ensureAgentKeypair","Promise","resolve","setTimeout","random","validation","simulateAgentValidation","voteId","generateId","overallScore","validations","signature","signVote","voteData","isValid","verifySignature","Set","outliers","detectOutliers","forEach","add","inconsistent","detectInconsistentVoting","lowReputation","detectLowReputationAgents","replayAttackers","detectReplayAttacks","Array","from","scores","map","mean","reduce","a","b","variance","sum","score","pow","stdDev","sqrt","zScore","abs","reputation","get","reputationScore","suspicious","seenNonces","has","agentNonces","dimensions","dimension","flatMap","d","confidence","avgScore","approvals","totalStake","approvalStake","proposalHash","JSON","stringify","voteHashes","merkleRoot","buildMerkleRoot","signatureChain","participationRate","hashes","paired","i","left","right","totalVotes","consistentVotes","inconsistentVotes","lastVote","evidence","blockers","overallConfidence","signValidation","publicKey","privateKey","generateKeyPairSync","modulusLength","publicKeyEncoding","type","format","privateKeyEncoding","data","keypair","sign","Buffer","key","padding","constants","RSA_PKCS1_PSS_PADDING","toString","verify","createHash","update","digest","prefix","substring","getAgentReputation","getAgentStake","getAllAgentStakes","values","getConsensusHistory","getMetrics","totalConsensus","r","avgConsensusScore","avgDuration","stakes","avgStake","s","avgDifficulty","rejected","byzantineDetections","registeredAgents","size","requiredDifficulty","shutdown","clear","removeAllListeners"],"mappings":"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"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Feature Flags System for Gradual V2 Rollout
|
|
3
|
+
*
|
|
4
|
+
* Provides controlled migration from V1 to V2 coordination system with:
|
|
5
|
+
* - Hash-based consistent user assignment (same user always gets same version)
|
|
6
|
+
* - Environment-based rollout percentage control (0-100%)
|
|
7
|
+
* - Explicit version override via COORDINATION_VERSION env var
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* // 100% V2 rollout (default)
|
|
11
|
+
* FeatureFlags.shouldUseV2() // true
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* // 50% gradual rollout
|
|
15
|
+
* process.env.V2_ROLLOUT_PERCENT = '50';
|
|
16
|
+
* FeatureFlags.shouldUseV2('user123') // Deterministic hash-based assignment
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* // Explicit V1 override
|
|
20
|
+
* process.env.COORDINATION_VERSION = 'v1';
|
|
21
|
+
* FeatureFlags.getCoordinationVersion() // 'v1' regardless of rollout %
|
|
22
|
+
*/ import crypto from 'crypto';
|
|
23
|
+
export class FeatureFlags {
|
|
24
|
+
/**
|
|
25
|
+
* Get rollout percentage from environment
|
|
26
|
+
* Default: 100% (all users get V2)
|
|
27
|
+
* Range: 0-100
|
|
28
|
+
*
|
|
29
|
+
* Set via V2_ROLLOUT_PERCENT environment variable:
|
|
30
|
+
* - 0%: All users get V1
|
|
31
|
+
* - 25%: 25% of users get V2 (hash-based assignment)
|
|
32
|
+
* - 50%: 50% of users get V2 (hash-based assignment)
|
|
33
|
+
* - 100%: All users get V2
|
|
34
|
+
*
|
|
35
|
+
* @returns Rollout percentage (0-100)
|
|
36
|
+
*/ static getRolloutConfig() {
|
|
37
|
+
const rawValue = process.env.V2_ROLLOUT_PERCENT || '100';
|
|
38
|
+
// VUL-3 FIX: Strict validation for rollout percentage
|
|
39
|
+
if (!/^\d+$/.test(rawValue)) {
|
|
40
|
+
throw new Error(`Invalid V2_ROLLOUT_PERCENT: "${rawValue}". Must be numeric string (0-100).`);
|
|
41
|
+
}
|
|
42
|
+
const parsed = parseInt(rawValue, 10);
|
|
43
|
+
// VUL-3 FIX: Validate range
|
|
44
|
+
if (isNaN(parsed) || parsed < 0 || parsed > 100) {
|
|
45
|
+
throw new Error(`Invalid V2_ROLLOUT_PERCENT: "${rawValue}". Must be between 0 and 100.`);
|
|
46
|
+
}
|
|
47
|
+
return parsed;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Determine if V2 coordination should be used for a given user
|
|
51
|
+
*
|
|
52
|
+
* Logic:
|
|
53
|
+
* 1. If rollout is 0%, return false (all V1)
|
|
54
|
+
* 2. If rollout is 100%, return true (all V2)
|
|
55
|
+
* 3. Otherwise, use hash-based assignment for consistent user experience
|
|
56
|
+
*
|
|
57
|
+
* @param userId - Optional user identifier for consistent assignment
|
|
58
|
+
* @returns true if V2 should be used, false for V1
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* // 100% rollout
|
|
62
|
+
* FeatureFlags.shouldUseV2() // true
|
|
63
|
+
*
|
|
64
|
+
* @example
|
|
65
|
+
* // 50% rollout with user ID
|
|
66
|
+
* FeatureFlags.shouldUseV2('user123') // Deterministic hash-based assignment
|
|
67
|
+
*/ static shouldUseV2(userId) {
|
|
68
|
+
// Validate rollout percentage range
|
|
69
|
+
const rollout = Math.max(0, Math.min(100, this.getRolloutConfig()));
|
|
70
|
+
// Edge cases: 0% and 100% rollout
|
|
71
|
+
if (rollout === 0) return false;
|
|
72
|
+
if (rollout === 100) return true;
|
|
73
|
+
// Hash-based assignment for gradual rollout
|
|
74
|
+
// If no userId provided or empty string, use random assignment (non-persistent)
|
|
75
|
+
const hash = userId && userId.length > 0 ? this.hashUserId(userId) : Math.random() * 100;
|
|
76
|
+
return hash < rollout;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Get the coordination version to use for a given user
|
|
80
|
+
*
|
|
81
|
+
* Priority:
|
|
82
|
+
* 1. COORDINATION_VERSION env var (explicit override)
|
|
83
|
+
* 2. Gradual rollout via shouldUseV2()
|
|
84
|
+
*
|
|
85
|
+
* @param userId - Optional user identifier for consistent assignment
|
|
86
|
+
* @returns 'v1' or 'v2'
|
|
87
|
+
*
|
|
88
|
+
* @example
|
|
89
|
+
* // Explicit override
|
|
90
|
+
* process.env.COORDINATION_VERSION = 'v1';
|
|
91
|
+
* FeatureFlags.getCoordinationVersion() // 'v1'
|
|
92
|
+
*
|
|
93
|
+
* @example
|
|
94
|
+
* // Gradual rollout
|
|
95
|
+
* delete process.env.COORDINATION_VERSION;
|
|
96
|
+
* process.env.V2_ROLLOUT_PERCENT = '50';
|
|
97
|
+
* FeatureFlags.getCoordinationVersion('user123') // 'v1' or 'v2' based on hash
|
|
98
|
+
*/ static getCoordinationVersion(userId) {
|
|
99
|
+
// VUL-1 FIX: Explicit override with strict validation
|
|
100
|
+
if (process.env.COORDINATION_VERSION) {
|
|
101
|
+
const version = process.env.COORDINATION_VERSION;
|
|
102
|
+
// Strict regex validation to prevent injection
|
|
103
|
+
if (!/^v[12]$/.test(version)) {
|
|
104
|
+
throw new Error(`Invalid COORDINATION_VERSION: "${version}". Must be exactly 'v1' or 'v2'.`);
|
|
105
|
+
}
|
|
106
|
+
return version;
|
|
107
|
+
}
|
|
108
|
+
// Gradual rollout based on percentage
|
|
109
|
+
return this.shouldUseV2(userId) ? 'v2' : 'v1';
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Hash a user ID to a deterministic value in range [0, 100)
|
|
113
|
+
*
|
|
114
|
+
* VUL-2 FIX: Uses crypto.createHash for collision resistance
|
|
115
|
+
* - Deterministic assignment (same user ID always produces same hash)
|
|
116
|
+
* - Even distribution across user population
|
|
117
|
+
* - Consistent rollout experience per user
|
|
118
|
+
* - Resistant to hash collision attacks
|
|
119
|
+
*
|
|
120
|
+
* @param userId - User identifier to hash
|
|
121
|
+
* @returns Integer in range [0, 100)
|
|
122
|
+
*
|
|
123
|
+
* @example
|
|
124
|
+
* FeatureFlags['hashUserId']('user123') // Always returns same value
|
|
125
|
+
*/ static hashUserId(userId) {
|
|
126
|
+
// VUL-2 FIX: Validate userId input
|
|
127
|
+
if (typeof userId !== 'string') {
|
|
128
|
+
throw new Error(`Invalid userId type: ${typeof userId}. Must be string.`);
|
|
129
|
+
}
|
|
130
|
+
if (userId.length === 0) {
|
|
131
|
+
throw new Error('userId cannot be empty string');
|
|
132
|
+
}
|
|
133
|
+
// VUL-2 FIX: Length limit to prevent DoS
|
|
134
|
+
if (userId.length > 256) {
|
|
135
|
+
throw new Error(`userId too long: ${userId.length} chars. Maximum 256 characters.`);
|
|
136
|
+
}
|
|
137
|
+
// VUL-2 FIX: Use crypto.createHash for collision resistance
|
|
138
|
+
const hash = crypto.createHash('sha256').update(userId, 'utf8').digest('hex');
|
|
139
|
+
// Convert first 8 hex chars to integer and modulo 100
|
|
140
|
+
const hashInt = parseInt(hash.substring(0, 8), 16);
|
|
141
|
+
return hashInt % 100;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Get current rollout percentage for monitoring
|
|
145
|
+
*
|
|
146
|
+
* @returns Current V2 rollout percentage (0-100)
|
|
147
|
+
*
|
|
148
|
+
* @example
|
|
149
|
+
* FeatureFlags.getRolloutPercentage() // 100
|
|
150
|
+
*/ static getRolloutPercentage() {
|
|
151
|
+
return Math.max(0, Math.min(100, this.getRolloutConfig()));
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Check if explicit version override is active
|
|
155
|
+
*
|
|
156
|
+
* @returns true if COORDINATION_VERSION env var is set
|
|
157
|
+
*
|
|
158
|
+
* @example
|
|
159
|
+
* process.env.COORDINATION_VERSION = 'v1';
|
|
160
|
+
* FeatureFlags.hasExplicitOverride() // true
|
|
161
|
+
*/ static hasExplicitOverride() {
|
|
162
|
+
return !!process.env.COORDINATION_VERSION;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
//# sourceMappingURL=feature-flags.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/coordination/feature-flags.ts"],"names":["crypto","FeatureFlags","getRolloutConfig","rawValue","process","env","V2_ROLLOUT_PERCENT","test","Error","parsed","parseInt","isNaN","shouldUseV2","userId","rollout","Math","max","min","hash","length","hashUserId","random","getCoordinationVersion","COORDINATION_VERSION","version","createHash","update","digest","hashInt","substring","getRolloutPercentage","hasExplicitOverride"],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;CAqBC,GACD,OAAOA,YAAY,SAAS;AAE5B,OAAO,MAAMC;IACX;;;;;;;;;;;;GAYC,GACD,OAAeC,mBAA2B;QACxC,MAAMC,WAAWC,QAAQC,GAAG,CAACC,kBAAkB,IAAI;QAEnD,sDAAsD;QACtD,IAAI,CAAC,QAAQC,IAAI,CAACJ,WAAW;YAC3B,MAAM,IAAIK,MACR,CAAC,6BAA6B,EAAEL,SAAS,kCAAkC,CAAC;QAEhF;QAEA,MAAMM,SAASC,SAASP,UAAU;QAElC,4BAA4B;QAC5B,IAAIQ,MAAMF,WAAWA,SAAS,KAAKA,SAAS,KAAK;YAC/C,MAAM,IAAID,MACR,CAAC,6BAA6B,EAAEL,SAAS,6BAA6B,CAAC;QAE3E;QAEA,OAAOM;IACT;IAEA;;;;;;;;;;;;;;;;;;GAkBC,GACD,OAAOG,YAAYC,MAAe,EAAW;QAC3C,oCAAoC;QACpC,MAAMC,UAAUC,KAAKC,GAAG,CAAC,GAAGD,KAAKE,GAAG,CAAC,KAAK,IAAI,CAACf,gBAAgB;QAE/D,kCAAkC;QAClC,IAAIY,YAAY,GAAG,OAAO;QAC1B,IAAIA,YAAY,KAAK,OAAO;QAE5B,4CAA4C;QAC5C,gFAAgF;QAChF,MAAMI,OAAOL,UAAUA,OAAOM,MAAM,GAAG,IAAI,IAAI,CAACC,UAAU,CAACP,UAAUE,KAAKM,MAAM,KAAK;QACrF,OAAOH,OAAOJ;IAChB;IAEA;;;;;;;;;;;;;;;;;;;;GAoBC,GACD,OAAOQ,uBAAuBT,MAAe,EAAe;QAC1D,sDAAsD;QACtD,IAAIT,QAAQC,GAAG,CAACkB,oBAAoB,EAAE;YACpC,MAAMC,UAAUpB,QAAQC,GAAG,CAACkB,oBAAoB;YAEhD,+CAA+C;YAC/C,IAAI,CAAC,UAAUhB,IAAI,CAACiB,UAAU;gBAC5B,MAAM,IAAIhB,MACR,CAAC,+BAA+B,EAAEgB,QAAQ,gCAAgC,CAAC;YAE/E;YAEA,OAAOA;QACT;QAEA,sCAAsC;QACtC,OAAO,IAAI,CAACZ,WAAW,CAACC,UAAU,OAAO;IAC3C;IAEA;;;;;;;;;;;;;;GAcC,GACD,OAAeO,WAAWP,MAAc,EAAU;QAChD,mCAAmC;QACnC,IAAI,OAAOA,WAAW,UAAU;YAC9B,MAAM,IAAIL,MAAM,CAAC,qBAAqB,EAAE,OAAOK,OAAO,iBAAiB,CAAC;QAC1E;QAEA,IAAIA,OAAOM,MAAM,KAAK,GAAG;YACvB,MAAM,IAAIX,MAAM;QAClB;QAEA,yCAAyC;QACzC,IAAIK,OAAOM,MAAM,GAAG,KAAK;YACvB,MAAM,IAAIX,MAAM,CAAC,iBAAiB,EAAEK,OAAOM,MAAM,CAAC,+BAA+B,CAAC;QACpF;QAEA,4DAA4D;QAC5D,MAAMD,OAAOlB,OAAOyB,UAAU,CAAC,UAAUC,MAAM,CAACb,QAAQ,QAAQc,MAAM,CAAC;QAEvE,sDAAsD;QACtD,MAAMC,UAAUlB,SAASQ,KAAKW,SAAS,CAAC,GAAG,IAAI;QAC/C,OAAOD,UAAU;IACnB;IAEA;;;;;;;GAOC,GACD,OAAOE,uBAA+B;QACpC,OAAOf,KAAKC,GAAG,CAAC,GAAGD,KAAKE,GAAG,CAAC,KAAK,IAAI,CAACf,gBAAgB;IACxD;IAEA;;;;;;;;GAQC,GACD,OAAO6B,sBAA+B;QACpC,OAAO,CAAC,CAAC3B,QAAQC,GAAG,CAACkB,oBAAoB;IAC3C;AACF"}
|
|
@@ -698,11 +698,18 @@ import { createEventPayload } from '../utils/event-payload-helper.js';
|
|
|
698
698
|
// Release rate limit for task queue
|
|
699
699
|
this.rateLimiter.releaseTask();
|
|
700
700
|
}
|
|
701
|
-
|
|
701
|
+
// Emit standardized event with system caller
|
|
702
|
+
this.emit('task:completed', createEventPayload({
|
|
702
703
|
workerId,
|
|
703
704
|
taskId,
|
|
704
705
|
result
|
|
705
|
-
}
|
|
706
|
+
}, {
|
|
707
|
+
id: 'system',
|
|
708
|
+
type: 'system',
|
|
709
|
+
roles: [
|
|
710
|
+
'system'
|
|
711
|
+
]
|
|
712
|
+
}));
|
|
706
713
|
}
|
|
707
714
|
/**
|
|
708
715
|
* Handle task failure from worker
|
|
@@ -723,11 +730,18 @@ import { createEventPayload } from '../utils/event-payload-helper.js';
|
|
|
723
730
|
// Release rate limit for task queue
|
|
724
731
|
this.rateLimiter.releaseTask();
|
|
725
732
|
}
|
|
726
|
-
|
|
733
|
+
// Emit standardized event with system caller
|
|
734
|
+
this.emit('task:failed', createEventPayload({
|
|
727
735
|
workerId,
|
|
728
736
|
taskId,
|
|
729
737
|
error
|
|
730
|
-
}
|
|
738
|
+
}, {
|
|
739
|
+
id: 'system',
|
|
740
|
+
type: 'system',
|
|
741
|
+
roles: [
|
|
742
|
+
'system'
|
|
743
|
+
]
|
|
744
|
+
}));
|
|
731
745
|
}
|
|
732
746
|
/**
|
|
733
747
|
* Handle health update from worker
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/coordination/queen-agent.ts"],"names":["EventEmitter","generateId","RBACManager","RateLimiter","RateLimitError","validateWorkerCapabilities","validateTask","validateWorkerId","validateCallerIdentity","validateWorkerResults","PMFailoverManager","createEventPayload","QueenAgent","workers","taskAssignments","workerTasks","healthCheckTimer","isInitialized","config","workerSubscription","rbacManager","rateLimiter","failoverManager","memory","broker","dependencyGraph","logger","Map","minWorkers","maxWorkers","healthCheckInterval","taskTimeout","workerRetryAttempts","autoScale","scalingThreshold","maxConcurrentWorkers","maxTaskQueueSize","workerSpawnWindowMs","maxWorkerSpawnsPerWindow","taskDelegationWindowMs","maxTaskDelegationsPerWindow","failureThreshold","inactivityTimeout","heartbeatTimeout","confidenceWeight","uptimeWeight","capacityWeight","initialize","warn","info","subscribe","topic","handler","message","handleWorkerMessage","priority","startHealthMonitoring","on","newPMId","emit","remember","initialized","timestamp","Date","tags","shareLevel","spawnWorker","type","capabilities","caller","Error","validatedCaller","id","roles","requirePermission","workerType","checkWorkerSpawn","error","validatedCapabilities","size","releaseWorker","workerId","worker","status","currentTasks","completedTasks","failedTasks","health","successRate","averageResponseTime","errorCount","consecutiveFailures","lastHealthCheck","spawnedAt","lastActivity","set","Set","broadcast","payload","action","delegateTask","task","taskId","taskType","checkTaskDelegation","validatedTask","addTask","selectBestWorker","get","releaseTask","length","maxConcurrentTasks","delegatedAt","push","add","publish","queenId","correlationId","debug","aggregateResults","workerResults","validatedResults","completedWorkers","failedWorkers","results","result","Object","entries","success","data","totalWorkers","successCount","confidence","aggregatedData","mergeWorkerResults","aggregation","workerCount","toFixed","monitorWorkerHealth","healthMap","totalTasks","reason","inactiveMs","now","getTime","Math","floor","healthStats","Array","from","map","scaleWorkers","targetCount","currentCount","toSpawn","i","skills","undefined","toTerminate","idleWorkers","values","filter","w","sort","a","b","slice","terminateWorker","to","getWorkerStats","idle","busy","degraded","offline","totalSuccessRate","totalTasksCompleted","totalTasksFailed","total","averageSuccessRate","otherWorkers","newWorkerId","newWorker","markFailed","delete","availableWorkers","scoredWorkers","healthScore","loadScore","priorityScore","totalScore","score","handleTaskCompletion","handleTaskFailure","handleHealthUpdate","markCompleted","setInterval","stats","busyRatio","min","max","merged","assign","shutdown","clearInterval","unsubscribe","keys","clear","removeAllListeners"],"mappings":"AAAA;;;;;;;;;;;CAWC,GAED,SAASA,YAAY,QAAQ,SAAS;AAMtC,SAASC,UAAU,QAAQ,sBAAsB;AACjD,SAASC,WAAW,QAAQ,oBAAoB;AAChD,SAASC,WAAW,EAAEC,cAAc,QAAQ,oBAAoB;AAChE,SACEC,0BAA0B,EAC1BC,YAAY,EACZC,gBAAgB,EAChBC,sBAAsB,EACtBC,qBAAqB,QAEhB,0BAA0B;AACjC,SAASC,iBAAiB,QAAQ,mBAAmB;AACrD,SAASC,kBAAkB,QAAQ,mCAAmC;AA4EtE;;;;;;;;;;;;;;;;;;;;;;CAsBC,GACD,OAAO,MAAMC,mBAAmBZ;;;;;IACtBa,QAAkC;IAClCC,gBAAqC;IACrCC,YAAsC;IACtCC,iBAAkC;IAClCC,cAAuB;IACvBC,OAAyB;IACzBC,mBAAiD;IACjDC,YAAyB;IACzBC,YAAyB;IACzBC,gBAAoC;IAE5C,YACEJ,MAAiC,EACjC,AAAQK,MAA0B,EAClC,AAAQC,MAAqB,EAC7B,AAAQC,eAAgC,EACxC,AAAQC,MAAc,EACtBN,WAAyB,CACzB;QACA,KAAK,SANGG,SAAAA,aACAC,SAAAA,aACAC,kBAAAA,sBACAC,SAAAA;QAIR,IAAI,CAACb,OAAO,GAAG,IAAIc;QACnB,IAAI,CAACb,eAAe,GAAG,IAAIa;QAC3B,IAAI,CAACZ,WAAW,GAAG,IAAIY;QACvB,IAAI,CAACV,aAAa,GAAG;QAErB,IAAI,CAACC,MAAM,GAAG;YACZU,YAAYV,OAAOU,UAAU,IAAI;YACjCC,YAAYX,OAAOW,UAAU,IAAI;YACjCC,qBAAqBZ,OAAOY,mBAAmB,IAAI;YACnDC,aAAab,OAAOa,WAAW,IAAI;YACnCC,qBAAqBd,OAAOc,mBAAmB,IAAI;YACnDC,WAAWf,OAAOe,SAAS,IAAI;YAC/BC,kBAAkBhB,OAAOgB,gBAAgB,IAAI;QAC/C;QAEA,sEAAsE;QACtE,IAAI,CAACd,WAAW,GAAGA,eAAe,IAAIlB,YAAYwB;QAClD,IAAI,CAACL,WAAW,GAAG,IAAIlB,YACrB;YACEgC,sBAAsB,IAAI,CAACjB,MAAM,CAACW,UAAU;YAC5CO,kBAAkB;YAClBC,qBAAqB;YACrBC,0BAA0B;YAC1BC,wBAAwB;YACxBC,6BAA6B;QAC/B,GACAd;QAGF,iCAAiC;QACjC,IAAI,CAACJ,eAAe,GAAG,IAAIZ,kBACzB;YACEoB,qBAAqB,IAAI,CAACZ,MAAM,CAACY,mBAAmB;YACpDW,kBAAkB;YAClBC,mBAAmB;YACnBC,kBAAkB;YAClBC,kBAAkB;YAClBC,cAAc;YACdC,gBAAgB;QAClB,GACAvB,QACAC,QACAE;IAEJ;IAEA;;GAEC,GACD,MAAMqB,aAA4B;QAChC,IAAI,IAAI,CAAC9B,aAAa,EAAE;YACtB,IAAI,CAACS,MAAM,CAACsB,IAAI,CAAC;YACjB;QACF;QAEA,IAAI,CAACtB,MAAM,CAACuB,IAAI,CAAC;QAEjB,8BAA8B;QAC9B,IAAI,CAAC,IAAI,CAAC1B,MAAM,CAAC,gBAAgB,EAAE;YACjC,MAAM,IAAI,CAACA,MAAM,CAACwB,UAAU;QAC9B;QAEA,+BAA+B;QAC/B,IAAI,CAAC5B,kBAAkB,GAAG,MAAM,IAAI,CAACK,MAAM,CAAC0B,SAAS,CAAC;YACpDC,OAAO;YACPC,SAAS,OAAOC;gBACd,MAAM,IAAI,CAACC,mBAAmB,CAACD;YACjC;YACAE,UAAU;QACZ;QAEA,0BAA0B;QAC1B,IAAI,CAACC,qBAAqB;QAE1B,8BAA8B;QAC9B,IAAI,IAAI,CAAClC,eAAe,EAAE;YACxB,MAAM,IAAI,CAACA,eAAe,CAACyB,UAAU;YAErC,6BAA6B;YAC7B,IAAI,CAACzB,eAAe,CAACmC,EAAE,CAAC,qBAAqB,CAAC,EAAEC,OAAO,EAAE;gBACvD,IAAI,CAAChC,MAAM,CAACuB,IAAI,CAAC,CAAC,gCAAgC,EAAES,SAAS;gBAC7D,IAAI,CAACC,IAAI,CAAC,eAAe;oBAAED;gBAAQ;YACrC;QACF;QAEA,iCAAiC;QACjC,MAAM,IAAI,CAACnC,MAAM,CAACqC,QAAQ,CAAC,eAAe,SAAS;YACjDC,aAAa;YACbC,WAAW,IAAIC;QACjB,GAAG;YACDC,MAAM;gBAAC;gBAAS;aAAiB;YACjCC,YAAY;QACd;QAEA,IAAI,CAAChD,aAAa,GAAG;QACrB,IAAI,CAAC0C,IAAI,CAAC;QACV,IAAI,CAACjC,MAAM,CAACuB,IAAI,CAAC;IACnB;IAEA;;GAEC,GACD,MAAMiB,YACJC,IAAY,EACZC,YAA8C,EAC9CC,MAA4B,EACX;QACjB,IAAI,CAAC,IAAI,CAACpD,aAAa,EAAE;YACvB,MAAM,IAAIqD,MAAM;QAClB;QAEA,8DAA8D;QAC9D,IAAIC;QACJ,IAAI,CAACF,QAAQ;YACX,mDAAmD;YACnDE,kBAAkB;gBAAEC,IAAI;gBAAUL,MAAM;gBAAUM,OAAO;oBAAC;iBAAQ;YAAC;QACrE,OAAO;YACLF,kBAAkB/D,uBAAuB6D;QAC3C;QAEA,+DAA+D;QAC/D,IAAI,CAACjD,WAAW,CAACsD,iBAAiB,CAACH,iBAAiB,SAAS,gBAAgB;YAC3EI,YAAYR;QACd;QAEA,2CAA2C;QAC3C,IAAI;YACF,IAAI,CAAC9C,WAAW,CAACuD,gBAAgB;QACnC,EAAE,OAAOC,OAAO;YACd,IAAIA,iBAAiBzE,gBAAgB;gBACnC,IAAI,CAACsB,MAAM,CAACsB,IAAI,CAAC,CAAC,qCAAqC,EAAEuB,gBAAgBC,EAAE,CAAC,EAAE,EAAEK,MAAMxB,OAAO,EAAE;gBAC/F,MAAMwB;YACR;YACA,MAAMA;QACR;QAEA,mBAAmB;QACnB,MAAMC,wBAAwBzE,2BAA2B;YAAE8D;YAAM,GAAGC,YAAY;QAAC;QAEjF,IAAI,IAAI,CAACvD,OAAO,CAACkE,IAAI,IAAI,IAAI,CAAC7D,MAAM,CAACW,UAAU,EAAE;YAC/C,uDAAuD;YACvD,IAAI,CAACR,WAAW,CAAC2D,aAAa;YAC9B,MAAM,IAAIV,MAAM,CAAC,sBAAsB,EAAE,IAAI,CAACpD,MAAM,CAACW,UAAU,EAAE;QACnE;QAEA,MAAMoD,WAAWhF,WAAW,CAAC,OAAO,EAAEkE,MAAM;QAE5C,MAAMe,SAAsB;YAC1BV,IAAIS;YACJd,MAAMW,sBAAsBX,IAAI;YAChCC,cAAcU;YACdK,QAAQ;YACRC,cAAc,EAAE;YAChBC,gBAAgB;YAChBC,aAAa;YACbC,QAAQ;gBACNC,aAAa;gBACbC,qBAAqB;gBACrBC,YAAY;gBACZC,qBAAqB;gBACrBC,iBAAiB,IAAI7B;YACvB;YACA8B,WAAW,IAAI9B;YACf+B,cAAc,IAAI/B;QACpB;QAEA,IAAI,CAAClD,OAAO,CAACkF,GAAG,CAACd,UAAUC;QAC3B,IAAI,CAACnE,WAAW,CAACgF,GAAG,CAACd,UAAU,IAAIe;QAEnC,wDAAwD;QACxD,MAAM,IAAI,CAACxE,MAAM,CAACyE,SAAS,CAAC;YAC1B9C,OAAO;YACP+C,SAASvF,mBACP;gBAAEsE;gBAAUd,MAAMW,sBAAsBX,IAAI;gBAAEC,cAAcU;YAAsB,GAClFP;YAEFhB,UAAU;QACZ;QAEA,kBAAkB;QAClB,MAAM,IAAI,CAAChC,MAAM,CAACqC,QAAQ,CAAC,eAAe,SAAS;YACjDuC,QAAQ;YACRlB;YACAd,MAAMW,sBAAsBX,IAAI;YAChCC,cAAcU;YACdT,QAAQE,gBAAgBC,EAAE;QAC5B,GAAG;YACDR,MAAM;gBAAC;gBAAS;gBAAU;aAAQ;YAClCC,YAAY;QACd;QAEA,IAAI,CAACN,IAAI,CAAC,kBAAkBhD,mBAC1B;YAAEsE;YAAUd,MAAMW,sBAAsBX,IAAI;QAAC,GAC7CI;QAEF,IAAI,CAAC7C,MAAM,CAACuB,IAAI,CAAC,CAAC,gBAAgB,EAAEgC,SAAS,EAAE,EAAEH,sBAAsBX,IAAI,CAAC,aAAa,EAAEI,gBAAgBC,EAAE,EAAE;QAE/G,OAAOS;IACT;IAEA;;GAEC,GACD,MAAMmB,aACJC,IAAU,EACVhC,MAA4B,EAC5BY,QAAiB,EACU;QAC3B,IAAI,CAAC,IAAI,CAAChE,aAAa,EAAE;YACvB,MAAM,IAAIqD,MAAM;QAClB;QAEA,8DAA8D;QAC9D,IAAIC;QACJ,IAAI,CAACF,QAAQ;YACX,mDAAmD;YACnDE,kBAAkB;gBAAEC,IAAI;gBAAUL,MAAM;gBAAUM,OAAO;oBAAC;iBAAQ;YAAC;QACrE,OAAO;YACLF,kBAAkB/D,uBAAuB6D;QAC3C;QAEA,+DAA+D;QAC/D,IAAI,CAACjD,WAAW,CAACsD,iBAAiB,CAACH,iBAAiB,SAAS,iBAAiB;YAC5E+B,QAAQD,KAAK7B,EAAE;YACf+B,UAAUF,KAAKlC,IAAI;QACrB;QAEA,gDAAgD;QAChD,IAAI;YACF,IAAI,CAAC9C,WAAW,CAACmF,mBAAmB;QACtC,EAAE,OAAO3B,OAAO;YACd,IAAIA,iBAAiBzE,gBAAgB;gBACnC,IAAI,CAACsB,MAAM,CAACsB,IAAI,CAAC,CAAC,wCAAwC,EAAEuB,gBAAgBC,EAAE,CAAC,EAAE,EAAEK,MAAMxB,OAAO,EAAE;gBAClG,MAAMwB;YACR;YACA,MAAMA;QACR;QAEA,mBAAmB;QACnB,MAAM4B,gBAAgBnG,aAAa+F;QAEnC,+BAA+B;QAC/B,IAAI,CAAC5E,eAAe,CAACiF,OAAO,CAACD;QAE7B,qCAAqC;QACrC,IAAI,CAACxB,UAAU;YACbA,WAAW,MAAM,IAAI,CAAC0B,gBAAgB,CAACF;QACzC,OAAO;YACL,kCAAkC;YAClCxB,WAAW1E,iBAAiB0E;QAC9B;QAEA,MAAMC,SAAS,IAAI,CAACrE,OAAO,CAAC+F,GAAG,CAAC3B;QAChC,IAAI,CAACC,QAAQ;YACX,yDAAyD;YACzD,IAAI,CAAC7D,WAAW,CAACwF,WAAW;YAC5B,MAAM,IAAIvC,MAAM,CAAC,kBAAkB,EAAEW,UAAU;QACjD;QAEA,wBAAwB;QACxB,IAAIC,OAAOE,YAAY,CAAC0B,MAAM,IAAI5B,OAAOd,YAAY,CAAC2C,kBAAkB,EAAE;YACxE,yDAAyD;YACzD,IAAI,CAAC1F,WAAW,CAACwF,WAAW;YAC5B,OAAO;gBACL5B;gBACAqB,QAAQG,cAAcjC,EAAE;gBACxBwC,aAAa,IAAIjD;gBACjBoB,QAAQ;YACV;QACF;QAEA,wBAAwB;QACxBD,OAAOE,YAAY,CAAC6B,IAAI,CAACR,cAAcjC,EAAE;QACzCU,OAAOC,MAAM,GAAG;QAChBD,OAAOY,YAAY,GAAG,IAAI/B;QAE1B,IAAI,CAACjD,eAAe,CAACiF,GAAG,CAACU,cAAcjC,EAAE,EAAES;QAC3C,IAAI,CAAClE,WAAW,CAAC6F,GAAG,CAAC3B,UAAWiC,GAAG,CAACT,cAAcjC,EAAE;QAEpD,yCAAyC;QACzC,MAAM,IAAI,CAAChD,MAAM,CAAC2F,OAAO,CAAC;YACxBhE,OAAO,CAAC,OAAO,EAAE8B,SAAS,KAAK,CAAC;YAChCiB,SAAS;gBACPG,MAAMI;gBACNW,SAAS;gBACTJ,aAAa,IAAIjD;YACnB;YACAR,UAAUkD,cAAclD,QAAQ;YAChC8D,eAAeZ,cAAcjC,EAAE;QACjC;QAEA,6BAA6B;QAC7B,MAAM,IAAI,CAACjD,MAAM,CAACqC,QAAQ,CAAC,eAAe,SAAS;YACjDuC,QAAQ;YACRG,QAAQG,cAAcjC,EAAE;YACxBS;YACAsB,UAAUE,cAActC,IAAI;YAC5BE,QAAQE,gBAAgBC,EAAE;QAC5B,GAAG;YACDR,MAAM;gBAAC;gBAAS;gBAAcyC,cAActC,IAAI;aAAC;YACjDF,YAAY;QACd;QAEA,IAAI,CAACN,IAAI,CAAC,kBAAkBhD,mBAC1B;YAAE2F,QAAQG,cAAcjC,EAAE;YAAES;QAAS,GACrCV;QAEF,IAAI,CAAC7C,MAAM,CAAC4F,KAAK,CAAC,CAAC,eAAe,EAAEb,cAAcjC,EAAE,CAAC,WAAW,EAAES,SAAS,YAAY,EAAEV,gBAAgBC,EAAE,EAAE;QAE7G,OAAO;YACLS;YACAqB,QAAQG,cAAcjC,EAAE;YACxBwC,aAAa,IAAIjD;YACjBoB,QAAQ;QACV;IACF;IAEA;;GAEC,GACD,MAAMoC,iBACJjB,MAAc,EACdkB,aAA+B,EAC/BnD,MAA4B,EACD;QAC3B,8DAA8D;QAC9D,IAAIE;QACJ,IAAI,CAACF,QAAQ;YACX,mDAAmD;YACnDE,kBAAkB;gBAAEC,IAAI;gBAAUL,MAAM;gBAAUM,OAAO;oBAAC;iBAAQ;YAAC;QACrE,OAAO;YACLF,kBAAkB/D,uBAAuB6D;QAC3C;QAEA,+DAA+D;QAC/D,IAAI,CAACjD,WAAW,CAACsD,iBAAiB,CAACH,iBAAiB,SAAS,qBAAqB;YAChF+B;QACF;QAEA,kDAAkD;QAClD,MAAMmB,mBAAmBhH,sBAAsB+G;QAE/C,MAAME,mBAA6B,EAAE;QACrC,MAAMC,gBAA0B,EAAE;QAClC,MAAMC,UAAU,IAAIjG;QAEpB,wEAAwE;QACxE,KAAK,MAAM,CAACsD,UAAU4C,OAAO,IAAIC,OAAOC,OAAO,CAACN,kBAAmB;YACjE,IAAII,OAAOG,OAAO,EAAE;gBAClBN,iBAAiBT,IAAI,CAAChC;gBACtB2C,QAAQ7B,GAAG,CAACd,UAAU4C,OAAOI,IAAI;YACnC,OAAO;gBACLN,cAAcV,IAAI,CAAChC;gBACnB,IAAI,CAACvD,MAAM,CAACsB,IAAI,CAAC,CAAC,OAAO,EAAEiC,SAAS,iBAAiB,EAAEqB,OAAO,CAAC,CAAC,EAAEuB,OAAOhD,KAAK;YAChF;QACF;QAEA,6CAA6C;QAC7C,MAAMqD,eAAeV,cAAczC,IAAI;QACvC,MAAMoD,eAAeT,iBAAiBZ,MAAM;QAC5C,MAAMsB,aAAaD,eAAeD;QAElC,uEAAuE;QACvE,MAAMG,iBAAiB,IAAI,CAACC,kBAAkB,CAACV;QAE/C,MAAMW,cAAgC;YACpCjC;YACAsB;YACAF;YACAC;YACAU;YACAD;YACAtE,WAAW,IAAIC;QACjB;QAEA,8BAA8B;QAC9B,MAAM,IAAI,CAACxC,MAAM,CAACqC,QAAQ,CAAC,eAAe,UAAU;YAClD0C;YACAiC;YACAC,aAAaN;YACbC;YACAC;YACA/D,QAAQE,gBAAgBC,EAAE;QAC5B,GAAG;YACDR,MAAM;gBAAC;gBAAS;gBAAe;aAAU;YACzCC,YAAY;QACd;QAEA,IAAI,CAACN,IAAI,CAAC,sBAAsBhD,mBAC9B;YAAE2F;YAAQiC;YAAaC,aAAaN;YAAcC;YAAcC;QAAW,GAC3E7D;QAEF,IAAI,CAAC7C,MAAM,CAACuB,IAAI,CAAC,CAAC,4BAA4B,EAAEqD,OAAO,EAAE,EAAE6B,aAAa,CAAC,EAAED,aAAa,gCAAgC,EAAEE,WAAWK,OAAO,CAAC,GAAG,aAAa,EAAElE,gBAAgBC,EAAE,EAAE;QAEnL,OAAO+D;IACT;IAEA;;GAEC,GACD,MAAMG,sBAA0D;QAC9D,MAAMC,YAAY,IAAIhH;QAEtB,KAAK,MAAM,CAACsD,UAAUC,OAAO,IAAI,IAAI,CAACrE,OAAO,CAACkH,OAAO,GAAI;YACvD,yBAAyB;YACzB,MAAMa,aAAa1D,OAAOG,cAAc,GAAGH,OAAOI,WAAW;YAC7D,MAAME,cAAcoD,aAAa,IAAI1D,OAAOG,cAAc,GAAGuD,aAAa;YAE1E,wBAAwB;YACxB1D,OAAOK,MAAM,CAACC,WAAW,GAAGA;YAC5BN,OAAOK,MAAM,CAACK,eAAe,GAAG,IAAI7B;YAEpC,2BAA2B;YAC3B,IAAImB,OAAOK,MAAM,CAACI,mBAAmB,IAAI,KAAKH,cAAc,KAAK;gBAC/DN,OAAOC,MAAM,GAAG;gBAChB,IAAI,CAACzD,MAAM,CAACsB,IAAI,CAAC,CAAC,OAAO,EAAEiC,SAAS,cAAc,EAAEC,OAAOK,MAAM,CAACI,mBAAmB,CAAC,qBAAqB,CAAC;gBAE5G,gDAAgD;gBAChD,IAAI,CAAChC,IAAI,CAAC,mBAAmBhD,mBAC3B;oBACEsE;oBACAU,qBAAqBT,OAAOK,MAAM,CAACI,mBAAmB;oBACtDH;oBACAqD,QAAQ3D,OAAOK,MAAM,CAACI,mBAAmB,IAAI,IAAI,yBAAyB;gBAC5E,GACA;oBAAEnB,IAAI;oBAAeL,MAAM;oBAAUM,OAAO;wBAAC;qBAAU;gBAAC;YAE5D;YAEA,qDAAqD;YACrD,MAAMqE,aAAa/E,KAAKgF,GAAG,KAAK7D,OAAOY,YAAY,CAACkD,OAAO;YAC3D,IAAIF,aAAa,QAAQ;gBACvB5D,OAAOC,MAAM,GAAG;gBAChB,IAAI,CAACzD,MAAM,CAACsB,IAAI,CAAC,CAAC,OAAO,EAAEiC,SAAS,iBAAiB,EAAEgE,KAAKC,KAAK,CAACJ,aAAa,MAAM,UAAU,CAAC;YAClG;YAEAH,UAAU5C,GAAG,CAACd,UAAU;gBAAE,GAAGC,OAAOK,MAAM;YAAC;QAC7C;QAEA,kCAAkC;QAClC,MAAM,IAAI,CAAChE,MAAM,CAACqC,QAAQ,CAAC,eAAe,SAAS;YACjDuC,QAAQ;YACRrC,WAAW,IAAIC;YACfyE,aAAa,IAAI,CAAC3H,OAAO,CAACkE,IAAI;YAC9BoE,aAAaC,MAAMC,IAAI,CAACV,UAAUZ,OAAO,IAAIuB,GAAG,CAAC,CAAC,CAAC9E,IAAIe,OAAO,GAAM,CAAA;oBAClEN,UAAUT;oBACV,GAAGe,MAAM;gBACX,CAAA;QACF,GAAG;YACDvB,MAAM;gBAAC;gBAAS;gBAAU;aAAa;YACvCC,YAAY;QACd;QAEA,IAAI,CAACN,IAAI,CAAC,kBAAkBhD,mBAC1B;YAAEgI;YAAWH,aAAa,IAAI,CAAC3H,OAAO,CAACkE,IAAI;QAAC,GAC5C;YAAEP,IAAI;YAAeL,MAAM;YAAUM,OAAO;gBAAC;aAAU;QAAC;QAE1D,OAAOkE;IACT;IAEA;;GAEC,GACD,MAAMY,aAAaC,WAAmB,EAAiB;QACrD,IAAIA,cAAc,IAAI,CAACtI,MAAM,CAACU,UAAU,IAAI4H,cAAc,IAAI,CAACtI,MAAM,CAACW,UAAU,EAAE;YAChF,MAAM,IAAIyC,MAAM,CAAC,6BAA6B,EAAE,IAAI,CAACpD,MAAM,CAACU,UAAU,CAAC,KAAK,EAAE,IAAI,CAACV,MAAM,CAACW,UAAU,EAAE;QACxG;QAEA,MAAM4H,eAAe,IAAI,CAAC5I,OAAO,CAACkE,IAAI;QAEtC,IAAIyE,cAAcC,cAAc;YAC9B,+BAA+B;YAC/B,MAAMC,UAAUF,cAAcC;YAC9B,IAAI,CAAC/H,MAAM,CAACuB,IAAI,CAAC,CAAC,qBAAqB,EAAEyG,QAAQ,QAAQ,CAAC;YAE1D,IAAK,IAAIC,IAAI,GAAGA,IAAID,SAASC,IAAK;gBAChC,MAAM,IAAI,CAACzF,WAAW,CAAC,WAAW;oBAChC0F,QAAQ;wBAAC;qBAAU;oBACnB7C,oBAAoB;oBACpBxD,UAAU;gBACZ,GAAGsG,YAAY,uCAAuC;YACxD;QACF,OAAO,IAAIL,cAAcC,cAAc;YACrC,sCAAsC;YACtC,MAAMK,cAAcL,eAAeD;YACnC,IAAI,CAAC9H,MAAM,CAACuB,IAAI,CAAC,CAAC,0BAA0B,EAAE6G,YAAY,QAAQ,CAAC;YAEnE,MAAMC,cAAcX,MAAMC,IAAI,CAAC,IAAI,CAACxI,OAAO,CAACmJ,MAAM,IAC/CC,MAAM,CAACC,CAAAA,IAAKA,EAAE/E,MAAM,KAAK,QACzBgF,IAAI,CAAC,CAACC,GAAGC,IAAMD,EAAEvE,SAAS,CAACmD,OAAO,KAAKqB,EAAExE,SAAS,CAACmD,OAAO,IAC1DsB,KAAK,CAAC,GAAGR;YAEZ,KAAK,MAAM5E,UAAU6E,YAAa;gBAChC,MAAM,IAAI,CAACQ,eAAe,CAACrF,OAAOV,EAAE;YACtC;QACF;QAEA,gCAAgC;QAChC,MAAM,IAAI,CAACjD,MAAM,CAACqC,QAAQ,CAAC,eAAe,SAAS;YACjDuC,QAAQ;YACRkD,MAAMI;YACNe,IAAIhB;YACJ1F,WAAW,IAAIC;QACjB,GAAG;YACDC,MAAM;gBAAC;gBAAS;aAAU;YAC1BC,YAAY;QACd;QAEA,IAAI,CAACN,IAAI,CAAC,kBAAkB;YAAE0F,MAAMI;YAAce,IAAIhB;QAAY;IACpE;IAEA;;GAEC,GACDiB,iBASE;QACA,IAAIC,OAAO;QACX,IAAIC,OAAO;QACX,IAAIC,WAAW;QACf,IAAIC,UAAU;QACd,IAAIC,mBAAmB;QACvB,IAAIC,sBAAsB;QAC1B,IAAIC,mBAAmB;QAEvB,KAAK,MAAM9F,UAAU,IAAI,CAACrE,OAAO,CAACmJ,MAAM,GAAI;YAC1C,OAAQ9E,OAAOC,MAAM;gBACnB,KAAK;oBACHuF;oBACA;gBACF,KAAK;oBACHC;oBACA;gBACF,KAAK;oBACHC;oBACA;gBACF,KAAK;oBACHC;oBACA;YACJ;YAEAC,oBAAoB5F,OAAOK,MAAM,CAACC,WAAW;YAC7CuF,uBAAuB7F,OAAOG,cAAc;YAC5C2F,oBAAoB9F,OAAOI,WAAW;QACxC;QAEA,OAAO;YACL2F,OAAO,IAAI,CAACpK,OAAO,CAACkE,IAAI;YACxB2F;YACAC;YACAC;YACAC;YACAK,oBAAoB,IAAI,CAACrK,OAAO,CAACkE,IAAI,GAAG,IAAI+F,mBAAmB,IAAI,CAACjK,OAAO,CAACkE,IAAI,GAAG;YACnFgG;YACAC;QACF;IACF;IAEA;;GAEC,GACD,MAAcT,gBAAgBtF,QAAgB,EAAiB;QAC7D,MAAMC,SAAS,IAAI,CAACrE,OAAO,CAAC+F,GAAG,CAAC3B;QAChC,IAAI,CAACC,QAAQ;YACX;QACF;QAEA,sCAAsC;QACtC,IAAI,CAAC7D,WAAW,CAAC2D,aAAa;QAE9B,mDAAmD;QACnD,IAAIE,OAAOE,YAAY,CAAC0B,MAAM,GAAG,GAAG;YAClC,IAAI,CAACpF,MAAM,CAACsB,IAAI,CAAC,CAAC,mBAAmB,EAAEiC,SAAS,MAAM,EAAEC,OAAOE,YAAY,CAAC0B,MAAM,CAAC,aAAa,CAAC;YAEjG,mEAAmE;YACnE,MAAMqE,eAAe/B,MAAMC,IAAI,CAAC,IAAI,CAACxI,OAAO,CAACmJ,MAAM,IAAIC,MAAM,CAACC,CAAAA,IAAKA,EAAE1F,EAAE,KAAKS;YAE5E,IAAIkG,aAAarE,MAAM,GAAG,GAAG;gBAC3B,KAAK,MAAMR,UAAUpB,OAAOE,YAAY,CAAE;oBACxC,IAAI;wBACF,sBAAsB;wBACtB,MAAMgG,cAAc,MAAM,IAAI,CAACzE,gBAAgB,CAAC;4BAAEnC,IAAI8B;wBAAO;wBAC7D,IAAI8E,eAAeA,gBAAgBnG,UAAU;4BAC3C,gBAAgB;4BAChB,IAAI,CAACnE,eAAe,CAACiF,GAAG,CAACO,QAAQ8E;4BACjC,MAAMC,YAAY,IAAI,CAACxK,OAAO,CAAC+F,GAAG,CAACwE;4BACnCC,UAAUjG,YAAY,CAAC6B,IAAI,CAACX;4BAC5B,IAAI,CAACvF,WAAW,CAAC6F,GAAG,CAACwE,aAAclE,GAAG,CAACZ;wBACzC;oBACF,EAAE,OAAOzB,OAAO;wBACd,+CAA+C;wBAC/C,IAAI,CAACnD,MAAM,CAACsB,IAAI,CAAC,CAAC,wBAAwB,EAAEsD,OAAO,uBAAuB,CAAC;wBAC3E,IAAI,CAAC7E,eAAe,CAAC6J,UAAU,CAAChF;oBAClC;gBACF;YACF,OAAO;gBACL,8CAA8C;gBAC9C,KAAK,MAAMA,UAAUpB,OAAOE,YAAY,CAAE;oBACxC,IAAI,CAAC3D,eAAe,CAAC6J,UAAU,CAAChF;gBAClC;YACF;QACF;QAEA,WAAW;QACX,IAAI,CAACzF,OAAO,CAAC0K,MAAM,CAACtG;QACpB,IAAI,CAAClE,WAAW,CAACwK,MAAM,CAACtG;QAExB,mCAAmC;QACnC,MAAM,IAAI,CAACzD,MAAM,CAACyE,SAAS,CAAC;YAC1B9C,OAAO;YACP+C,SAASvF,mBACP;gBAAEsE;YAAS,GACX;gBAAET,IAAI;gBAAeL,MAAM;gBAAUM,OAAO;oBAAC;iBAAc;YAAC;YAE9DlB,UAAU;QACZ;QAEA,IAAI,CAACI,IAAI,CAAC,qBAAqBhD,mBAC7B;YAAEsE;QAAS,GACX;YAAET,IAAI;YAAeL,MAAM;YAAUM,OAAO;gBAAC;aAAc;QAAC;QAE9D,IAAI,CAAC/C,MAAM,CAACuB,IAAI,CAAC,CAAC,mBAAmB,EAAEgC,UAAU;IACnD;IAEA;;GAEC,GACD,MAAc0B,iBAAiBN,IAAU,EAAmB;QAC1D,2BAA2B;QAC3B,MAAMmF,mBAAmBpC,MAAMC,IAAI,CAAC,IAAI,CAACxI,OAAO,CAACmJ,MAAM,IAAIC,MAAM,CAC/DC,CAAAA,IAAKA,EAAE/E,MAAM,KAAK,UAAW+E,EAAE/E,MAAM,KAAK,UAAU+E,EAAE9E,YAAY,CAAC0B,MAAM,GAAGoD,EAAE9F,YAAY,CAAC2C,kBAAkB;QAG/G,IAAIyE,iBAAiB1E,MAAM,KAAK,GAAG;YACjC,MAAM,IAAIxC,MAAM;QAClB;QAEA,0BAA0B;QAC1B,0BAA0B;QAC1B,iBAAiB;QACjB,qBAAqB;QACrB,MAAMmH,gBAAgBD,iBAAiBlC,GAAG,CAACpE,CAAAA;YACzC,MAAMwG,cAAcxG,OAAOK,MAAM,CAACC,WAAW;YAC7C,MAAMmG,YAAY,IAAKzG,OAAOE,YAAY,CAAC0B,MAAM,GAAG5B,OAAOd,YAAY,CAAC2C,kBAAkB;YAC1F,MAAM6E,gBAAgB1G,OAAOd,YAAY,CAACb,QAAQ,GAAG;YAErD,MAAMsI,aAAaH,cAAc,MAAMC,YAAY,MAAMC,gBAAgB;YAEzE,OAAO;gBAAE1G;gBAAQ4G,OAAOD;YAAW;QACrC;QAEA,gCAAgC;QAChCJ,cAActB,IAAI,CAAC,CAACC,GAAGC,IAAMA,EAAEyB,KAAK,GAAG1B,EAAE0B,KAAK;QAE9C,OAAOL,aAAa,CAAC,EAAE,CAACvG,MAAM,CAACV,EAAE;IACnC;IAEA;;GAEC,GACD,MAAclB,oBAAoBD,OAAY,EAAiB;QAC7D,MAAM,EAAE6C,OAAO,EAAE,GAAG7C;QAEpB,IAAI6C,QAAQ/B,IAAI,KAAK,kBAAkB;YACrC,MAAM,IAAI,CAAC4H,oBAAoB,CAAC7F;QAClC,OAAO,IAAIA,QAAQ/B,IAAI,KAAK,eAAe;YACzC,MAAM,IAAI,CAAC6H,iBAAiB,CAAC9F;QAC/B,OAAO,IAAIA,QAAQ/B,IAAI,KAAK,iBAAiB;YAC3C,MAAM,IAAI,CAAC8H,kBAAkB,CAAC/F;QAChC;IACF;IAEA;;GAEC,GACD,MAAc6F,qBAAqB7F,OAAY,EAAiB;QAC9D,MAAM,EAAEjB,QAAQ,EAAEqB,MAAM,EAAEuB,MAAM,EAAE,GAAG3B;QACrC,MAAMhB,SAAS,IAAI,CAACrE,OAAO,CAAC+F,GAAG,CAAC3B;QAEhC,IAAIC,QAAQ;YACVA,OAAOG,cAAc;YACrBH,OAAOE,YAAY,GAAGF,OAAOE,YAAY,CAAC6E,MAAM,CAACzF,CAAAA,KAAMA,OAAO8B;YAC9DpB,OAAOK,MAAM,CAACI,mBAAmB,GAAG;YACpCT,OAAOY,YAAY,GAAG,IAAI/B;YAE1B,IAAImB,OAAOE,YAAY,CAAC0B,MAAM,KAAK,GAAG;gBACpC5B,OAAOC,MAAM,GAAG;YAClB;YAEA,6CAA6C;YAC7C,IAAI,CAAC1D,eAAe,CAACyK,aAAa,CAAC5F;YAEnC,oCAAoC;YACpC,IAAI,CAACjF,WAAW,CAACwF,WAAW;QAC9B;QAEA,IAAI,CAAClD,IAAI,CAAC,kBAAkB;YAAEsB;YAAUqB;YAAQuB;QAAO;IACzD;IAEA;;GAEC,GACD,MAAcmE,kBAAkB9F,OAAY,EAAiB;QAC3D,MAAM,EAAEjB,QAAQ,EAAEqB,MAAM,EAAEzB,KAAK,EAAE,GAAGqB;QACpC,MAAMhB,SAAS,IAAI,CAACrE,OAAO,CAAC+F,GAAG,CAAC3B;QAEhC,IAAIC,QAAQ;YACVA,OAAOI,WAAW;YAClBJ,OAAOE,YAAY,GAAGF,OAAOE,YAAY,CAAC6E,MAAM,CAACzF,CAAAA,KAAMA,OAAO8B;YAC9DpB,OAAOK,MAAM,CAACG,UAAU;YACxBR,OAAOK,MAAM,CAACI,mBAAmB;YACjCT,OAAOY,YAAY,GAAG,IAAI/B;YAE1B,IAAImB,OAAOE,YAAY,CAAC0B,MAAM,KAAK,GAAG;gBACpC5B,OAAOC,MAAM,GAAG;YAClB;YAEA,0CAA0C;YAC1C,IAAI,CAAC1D,eAAe,CAAC6J,UAAU,CAAChF;YAEhC,oCAAoC;YACpC,IAAI,CAACjF,WAAW,CAACwF,WAAW;QAC9B;QAEA,IAAI,CAAClD,IAAI,CAAC,eAAe;YAAEsB;YAAUqB;YAAQzB;QAAM;IACrD;IAEA;;GAEC,GACD,MAAcoH,mBAAmB/F,OAAY,EAAiB;QAC5D,MAAM,EAAEjB,QAAQ,EAAEM,MAAM,EAAE,GAAGW;QAC7B,MAAMhB,SAAS,IAAI,CAACrE,OAAO,CAAC+F,GAAG,CAAC3B;QAEhC,IAAIC,QAAQ;YACVA,OAAOK,MAAM,GAAG;gBAAE,GAAGL,OAAOK,MAAM;gBAAE,GAAGA,MAAM;YAAC;YAC9CL,OAAOY,YAAY,GAAG,IAAI/B;QAC5B;IACF;IAEA;;GAEC,GACD,AAAQP,wBAA8B;QACpC,IAAI,CAACxC,gBAAgB,GAAGmL,YAAY;YAClC,IAAI;gBACF,MAAM,IAAI,CAACzD,mBAAmB;gBAE9B,wBAAwB;gBACxB,IAAI,IAAI,CAACxH,MAAM,CAACe,SAAS,EAAE;oBACzB,MAAM,IAAI,CAACA,SAAS;gBACtB;YACF,EAAE,OAAO4C,OAAO;gBACd,IAAI,CAACnD,MAAM,CAACmD,KAAK,CAAC,4BAA4BA;YAChD;QACF,GAAG,IAAI,CAAC3D,MAAM,CAACY,mBAAmB;IACpC;IAEA;;GAEC,GACD,MAAcG,YAA2B;QACvC,MAAMmK,QAAQ,IAAI,CAAC3B,cAAc;QACjC,MAAM4B,YAAYD,MAAMzB,IAAI,GAAGyB,MAAMnB,KAAK;QAE1C,IAAIoB,YAAY,IAAI,CAACnL,MAAM,CAACgB,gBAAgB,IAAIkK,MAAMnB,KAAK,GAAG,IAAI,CAAC/J,MAAM,CAACW,UAAU,EAAE;YACpF,WAAW;YACX,MAAM2H,cAAcP,KAAKqD,GAAG,CAACF,MAAMnB,KAAK,GAAG,GAAG,IAAI,CAAC/J,MAAM,CAACW,UAAU;YACpE,MAAM,IAAI,CAAC0H,YAAY,CAACC;QAC1B,OAAO,IAAI6C,YAAY,OAAOD,MAAMnB,KAAK,GAAG,IAAI,CAAC/J,MAAM,CAACU,UAAU,EAAE;YAClE,aAAa;YACb,MAAM4H,cAAcP,KAAKsD,GAAG,CAACH,MAAMnB,KAAK,GAAG,GAAG,IAAI,CAAC/J,MAAM,CAACU,UAAU;YACpE,MAAM,IAAI,CAAC2H,YAAY,CAACC;QAC1B;IACF;IAEA;;GAEC,GACD,AAAQlB,mBAAmBV,OAAyB,EAAO;QACzD,IAAIA,QAAQ7C,IAAI,KAAK,GAAG;YACtB,OAAO;QACT;QAEA,IAAI6C,QAAQ7C,IAAI,KAAK,GAAG;YACtB,OAAOqE,MAAMC,IAAI,CAACzB,QAAQoC,MAAM,GAAG,CAAC,EAAE;QACxC;QAEA,wDAAwD;QACxD,MAAMwC,SAAc,CAAC;QAErB,KAAK,MAAM3E,UAAUD,QAAQoC,MAAM,GAAI;YACrC,IAAI,OAAOnC,WAAW,YAAYA,WAAW,MAAM;gBACjDC,OAAO2E,MAAM,CAACD,QAAQ3E;YACxB;QACF;QAEA,OAAO2E;IACT;IAEA;;GAEC,GACD,MAAME,WAA0B;QAC9B,IAAI,CAAChL,MAAM,CAACuB,IAAI,CAAC;QAEjB,yBAAyB;QACzB,IAAI,IAAI,CAACjC,gBAAgB,EAAE;YACzB2L,cAAc,IAAI,CAAC3L,gBAAgB;YACnC,IAAI,CAACA,gBAAgB,GAAG6I;QAC1B;QAEA,kCAAkC;QAClC,IAAI,IAAI,CAAC1I,kBAAkB,EAAE;YAC3B,IAAI;gBACF,IAAI,CAACA,kBAAkB,CAACyL,WAAW;gBACnC,IAAI,CAACzL,kBAAkB,GAAG0I;YAC5B,EAAE,OAAOhF,OAAO;gBACd,IAAI,CAACnD,MAAM,CAACsB,IAAI,CAAC,sCAAsC6B;YACzD;QACF;QAEA,4BAA4B;QAC5B,IAAI,IAAI,CAACvD,eAAe,EAAE;YACxB,MAAM,IAAI,CAACA,eAAe,CAACoL,QAAQ;QACrC;QAEA,wBAAwB;QACxB,KAAK,MAAMzH,YAAY,IAAI,CAACpE,OAAO,CAACgM,IAAI,GAAI;YAC1C,MAAM,IAAI,CAACtC,eAAe,CAACtF;QAC7B;QAEA,cAAc;QACd,IAAI,CAACpE,OAAO,CAACiM,KAAK;QAClB,IAAI,CAAChM,eAAe,CAACgM,KAAK;QAC1B,IAAI,CAAC/L,WAAW,CAAC+L,KAAK;QAEtB,kCAAkC;QAClC,IAAI,CAACC,kBAAkB;QAEvB,IAAI,CAAC9L,aAAa,GAAG;QACrB,IAAI,CAAC0C,IAAI,CAAC;QACV,IAAI,CAACjC,MAAM,CAACuB,IAAI,CAAC;IACnB;AACF"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/coordination/queen-agent.ts"],"names":["EventEmitter","generateId","RBACManager","RateLimiter","RateLimitError","validateWorkerCapabilities","validateTask","validateWorkerId","validateCallerIdentity","validateWorkerResults","PMFailoverManager","createEventPayload","QueenAgent","workers","taskAssignments","workerTasks","healthCheckTimer","isInitialized","config","workerSubscription","rbacManager","rateLimiter","failoverManager","memory","broker","dependencyGraph","logger","Map","minWorkers","maxWorkers","healthCheckInterval","taskTimeout","workerRetryAttempts","autoScale","scalingThreshold","maxConcurrentWorkers","maxTaskQueueSize","workerSpawnWindowMs","maxWorkerSpawnsPerWindow","taskDelegationWindowMs","maxTaskDelegationsPerWindow","failureThreshold","inactivityTimeout","heartbeatTimeout","confidenceWeight","uptimeWeight","capacityWeight","initialize","warn","info","subscribe","topic","handler","message","handleWorkerMessage","priority","startHealthMonitoring","on","newPMId","emit","remember","initialized","timestamp","Date","tags","shareLevel","spawnWorker","type","capabilities","caller","Error","validatedCaller","id","roles","requirePermission","workerType","checkWorkerSpawn","error","validatedCapabilities","size","releaseWorker","workerId","worker","status","currentTasks","completedTasks","failedTasks","health","successRate","averageResponseTime","errorCount","consecutiveFailures","lastHealthCheck","spawnedAt","lastActivity","set","Set","broadcast","payload","action","delegateTask","task","taskId","taskType","checkTaskDelegation","validatedTask","addTask","selectBestWorker","get","releaseTask","length","maxConcurrentTasks","delegatedAt","push","add","publish","queenId","correlationId","debug","aggregateResults","workerResults","validatedResults","completedWorkers","failedWorkers","results","result","Object","entries","success","data","totalWorkers","successCount","confidence","aggregatedData","mergeWorkerResults","aggregation","workerCount","toFixed","monitorWorkerHealth","healthMap","totalTasks","reason","inactiveMs","now","getTime","Math","floor","healthStats","Array","from","map","scaleWorkers","targetCount","currentCount","toSpawn","i","skills","undefined","toTerminate","idleWorkers","values","filter","w","sort","a","b","slice","terminateWorker","to","getWorkerStats","idle","busy","degraded","offline","totalSuccessRate","totalTasksCompleted","totalTasksFailed","total","averageSuccessRate","otherWorkers","newWorkerId","newWorker","markFailed","delete","availableWorkers","scoredWorkers","healthScore","loadScore","priorityScore","totalScore","score","handleTaskCompletion","handleTaskFailure","handleHealthUpdate","markCompleted","setInterval","stats","busyRatio","min","max","merged","assign","shutdown","clearInterval","unsubscribe","keys","clear","removeAllListeners"],"mappings":"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"}
|