monomind 1.11.13 → 1.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/agents/generated/channel-intelligence-director.md +87 -0
- package/.claude/agents/generated/chief-growth-officer.md +88 -0
- package/.claude/agents/generated/content-seo-strategist.md +90 -0
- package/.claude/agents/generated/developer-community-strategist.md +91 -0
- package/.claude/agents/generated/outreach-partnership-strategist.md +90 -0
- package/.claude/agents/generated/social-media-strategist.md +91 -0
- package/.claude/agents/generated/video-visual-strategist.md +90 -0
- package/.claude/commands/mastermind/idea.md +1 -1
- package/.claude/helpers/auto-memory-hook.mjs +13 -4
- package/.claude/helpers/control-start.cjs +5 -0
- package/.claude/helpers/event-logger.cjs +114 -0
- package/.claude/helpers/handlers/adr-draft-handler.cjs +19 -5
- package/.claude/helpers/handlers/agent-start-handler.cjs +13 -4
- package/.claude/helpers/handlers/compact-handler.cjs +2 -0
- package/.claude/helpers/handlers/edit-handler.cjs +1 -1
- package/.claude/helpers/handlers/gates-handler.cjs +3 -0
- package/.claude/helpers/handlers/graph-status-handler.cjs +14 -8
- package/.claude/helpers/handlers/loops-status-handler.cjs +5 -2
- package/.claude/helpers/handlers/route-handler.cjs +13 -6
- package/.claude/helpers/handlers/session-handler.cjs +11 -4
- package/.claude/helpers/handlers/session-restore-handler.cjs +21 -11
- package/.claude/helpers/handlers/task-handler.cjs +13 -5
- package/.claude/helpers/intelligence.cjs +7 -2
- package/.claude/helpers/loop-tracker.cjs +15 -3
- package/.claude/helpers/memory.cjs +6 -1
- package/.claude/helpers/router.cjs +5 -2
- package/.claude/helpers/session.cjs +2 -0
- package/.claude/helpers/statusline.cjs +10 -2
- package/.claude/helpers/utils/micro-agents.cjs +20 -4
- package/.claude/scheduled_tasks.lock +1 -1
- package/.claude/settings.json +92 -1
- package/.claude/skills/mastermind/_protocol.md +23 -13
- package/.claude/skills/mastermind/architect.md +6 -9
- package/.claude/skills/mastermind/build.md +3 -3
- package/.claude/skills/mastermind/content.md +3 -3
- package/.claude/skills/mastermind/createorg.md +2 -2
- package/.claude/skills/mastermind/finance.md +3 -3
- package/.claude/skills/mastermind/idea.md +5 -3
- package/.claude/skills/mastermind/marketing.md +3 -3
- package/.claude/skills/mastermind/monitor.md +2 -2
- package/.claude/skills/mastermind/release.md +3 -3
- package/.claude/skills/mastermind/research.md +3 -3
- package/.claude/skills/mastermind/review.md +3 -3
- package/.claude/skills/mastermind/runorg.md +153 -86
- package/.claude/skills/mastermind/sales.md +3 -3
- package/README.md +286 -129
- package/package.json +19 -2
- package/packages/@monomind/cli/README.md +286 -129
- package/packages/@monomind/cli/bundled-graph/dist/src/build.js +73 -0
- package/packages/@monomind/cli/bundled-graph/dist/src/cluster.js +120 -0
- package/packages/@monomind/cli/bundled-graph/package.json +57 -0
- package/packages/@monomind/cli/dist/src/agents/halt-signal.d.ts +25 -0
- package/packages/@monomind/cli/dist/src/agents/halt-signal.js +76 -0
- package/packages/@monomind/cli/dist/src/agents/index.d.ts +18 -0
- package/packages/@monomind/cli/dist/src/agents/index.js +13 -0
- package/packages/@monomind/cli/dist/src/agents/managed-agent.d.ts +41 -0
- package/packages/@monomind/cli/dist/src/agents/managed-agent.js +69 -0
- package/packages/@monomind/cli/dist/src/agents/prompt-experiment.d.ts +23 -0
- package/packages/@monomind/cli/dist/src/agents/prompt-experiment.js +49 -0
- package/packages/@monomind/cli/dist/src/agents/prompt-version-manager.d.ts +22 -0
- package/packages/@monomind/cli/dist/src/agents/prompt-version-manager.js +80 -0
- package/packages/@monomind/cli/dist/src/agents/registry-builder.js +2 -0
- package/packages/@monomind/cli/dist/src/agents/registry-query.d.ts +71 -0
- package/packages/@monomind/cli/dist/src/agents/registry-query.js +125 -0
- package/packages/@monomind/cli/dist/src/agents/score-decay.d.ts +19 -0
- package/packages/@monomind/cli/dist/src/agents/score-decay.js +22 -0
- package/packages/@monomind/cli/dist/src/agents/shared-instructions-loader.d.ts +13 -0
- package/packages/@monomind/cli/dist/src/agents/shared-instructions-loader.js +40 -0
- package/packages/@monomind/cli/dist/src/agents/specialization-scorer.d.ts +54 -0
- package/packages/@monomind/cli/dist/src/agents/specialization-scorer.js +212 -0
- package/packages/@monomind/cli/dist/src/agents/termination-watcher.d.ts +30 -0
- package/packages/@monomind/cli/dist/src/agents/termination-watcher.js +84 -0
- package/packages/@monomind/cli/dist/src/agents/trigger-index.d.ts +20 -0
- package/packages/@monomind/cli/dist/src/agents/trigger-index.js +38 -0
- package/packages/@monomind/cli/dist/src/agents/trigger-scanner.d.ts +64 -0
- package/packages/@monomind/cli/dist/src/agents/trigger-scanner.js +308 -0
- package/packages/@monomind/cli/dist/src/agents/version-diff.d.ts +18 -0
- package/packages/@monomind/cli/dist/src/agents/version-diff.js +64 -0
- package/packages/@monomind/cli/dist/src/agents/version-store.d.ts +60 -0
- package/packages/@monomind/cli/dist/src/agents/version-store.js +235 -0
- package/packages/@monomind/cli/dist/src/autopilot-state.js +10 -5
- package/packages/@monomind/cli/dist/src/benchmarks/benchmark-runner.js +13 -0
- package/packages/@monomind/cli/dist/src/benchmarks/metric-evaluators.js +20 -9
- package/packages/@monomind/cli/dist/src/benchmarks/pretrain/index.d.ts +45 -0
- package/packages/@monomind/cli/dist/src/benchmarks/pretrain/index.js +404 -0
- package/packages/@monomind/cli/dist/src/browser/actions.js +10 -3
- package/packages/@monomind/cli/dist/src/browser/browser.js +12 -2
- package/packages/@monomind/cli/dist/src/browser/cdp.js +21 -3
- package/packages/@monomind/cli/dist/src/browser/har.js +27 -5
- package/packages/@monomind/cli/dist/src/commands/agent-wasm.d.ts +14 -0
- package/packages/@monomind/cli/dist/src/commands/agent-wasm.js +333 -0
- package/packages/@monomind/cli/dist/src/commands/agent.js +11 -8
- package/packages/@monomind/cli/dist/src/commands/analyze.js +36 -21
- package/packages/@monomind/cli/dist/src/commands/autopilot.js +12 -4
- package/packages/@monomind/cli/dist/src/commands/benchmark.js +51 -8
- package/packages/@monomind/cli/dist/src/commands/browse.js +5 -2
- package/packages/@monomind/cli/dist/src/commands/claims.js +29 -11
- package/packages/@monomind/cli/dist/src/commands/cleanup.js +25 -5
- package/packages/@monomind/cli/dist/src/commands/config.js +15 -7
- package/packages/@monomind/cli/dist/src/commands/daemon.js +6 -0
- package/packages/@monomind/cli/dist/src/commands/deployment.js +34 -19
- package/packages/@monomind/cli/dist/src/commands/doctor.js +151 -20
- package/packages/@monomind/cli/dist/src/commands/guidance.js +15 -2
- package/packages/@monomind/cli/dist/src/commands/hive-mind.js +37 -14
- package/packages/@monomind/cli/dist/src/commands/hooks.js +42 -25
- package/packages/@monomind/cli/dist/src/commands/init.js +9 -4
- package/packages/@monomind/cli/dist/src/commands/issues.js +29 -26
- package/packages/@monomind/cli/dist/src/commands/mcp.js +11 -5
- package/packages/@monomind/cli/dist/src/commands/memory.js +10 -0
- package/packages/@monomind/cli/dist/src/commands/migrate.js +5 -5
- package/packages/@monomind/cli/dist/src/commands/monograph.js +18 -5
- package/packages/@monomind/cli/dist/src/commands/monovector/backup.js +8 -2
- package/packages/@monomind/cli/dist/src/commands/monovector/benchmark.js +20 -7
- package/packages/@monomind/cli/dist/src/commands/monovector/import.js +15 -0
- package/packages/@monomind/cli/dist/src/commands/monovector/migrate.js +4 -1
- package/packages/@monomind/cli/dist/src/commands/monovector/optimize.js +11 -0
- package/packages/@monomind/cli/dist/src/commands/monovector/setup.js +11 -1
- package/packages/@monomind/cli/dist/src/commands/neural.js +1 -1
- package/packages/@monomind/cli/dist/src/commands/performance.js +20 -7
- package/packages/@monomind/cli/dist/src/commands/platforms.js +90 -8
- package/packages/@monomind/cli/dist/src/commands/plugins.js +12 -5
- package/packages/@monomind/cli/dist/src/commands/process.js +33 -10
- package/packages/@monomind/cli/dist/src/commands/progress.js +5 -3
- package/packages/@monomind/cli/dist/src/commands/providers.js +5 -5
- package/packages/@monomind/cli/dist/src/commands/replay.js +8 -2
- package/packages/@monomind/cli/dist/src/commands/route.js +27 -7
- package/packages/@monomind/cli/dist/src/commands/security.js +4 -0
- package/packages/@monomind/cli/dist/src/commands/session.js +12 -1
- package/packages/@monomind/cli/dist/src/commands/start.js +11 -4
- package/packages/@monomind/cli/dist/src/commands/status.js +7 -4
- package/packages/@monomind/cli/dist/src/commands/swarm.js +27 -13
- package/packages/@monomind/cli/dist/src/commands/task.js +26 -11
- package/packages/@monomind/cli/dist/src/commands/tokens.js +7 -2
- package/packages/@monomind/cli/dist/src/commands/transfer-store.js +36 -22
- package/packages/@monomind/cli/dist/src/commands/ui.js +68 -0
- package/packages/@monomind/cli/dist/src/commands/update.js +15 -3
- package/packages/@monomind/cli/dist/src/commands/workflow.js +39 -6
- package/packages/@monomind/cli/dist/src/consensus/audit-writer.js +18 -7
- package/packages/@monomind/cli/dist/src/consensus/index.d.ts +7 -0
- package/packages/@monomind/cli/dist/src/consensus/index.js +6 -0
- package/packages/@monomind/cli/dist/src/consensus/vote-signer.js +25 -8
- package/packages/@monomind/cli/dist/src/context/context-provider.d.ts +44 -0
- package/packages/@monomind/cli/dist/src/context/context-provider.js +25 -0
- package/packages/@monomind/cli/dist/src/context/git-state-provider.d.ts +12 -0
- package/packages/@monomind/cli/dist/src/context/git-state-provider.js +34 -0
- package/packages/@monomind/cli/dist/src/context/index.d.ts +12 -0
- package/packages/@monomind/cli/dist/src/context/index.js +12 -0
- package/packages/@monomind/cli/dist/src/context/project-conventions-provider.d.ts +15 -0
- package/packages/@monomind/cli/dist/src/context/project-conventions-provider.js +19 -0
- package/packages/@monomind/cli/dist/src/context/prompt-assembler.d.ts +26 -0
- package/packages/@monomind/cli/dist/src/context/prompt-assembler.js +93 -0
- package/packages/@monomind/cli/dist/src/context/task-history-provider.d.ts +24 -0
- package/packages/@monomind/cli/dist/src/context/task-history-provider.js +32 -0
- package/packages/@monomind/cli/dist/src/context/user-preferences-provider.d.ts +14 -0
- package/packages/@monomind/cli/dist/src/context/user-preferences-provider.js +27 -0
- package/packages/@monomind/cli/dist/src/dlq/dlq-reader.d.ts +31 -0
- package/packages/@monomind/cli/dist/src/dlq/dlq-reader.js +81 -0
- package/packages/@monomind/cli/dist/src/dlq/dlq-writer.d.ts +24 -0
- package/packages/@monomind/cli/dist/src/dlq/dlq-writer.js +65 -0
- package/packages/@monomind/cli/dist/src/dlq/index.d.ts +10 -0
- package/packages/@monomind/cli/dist/src/dlq/index.js +7 -0
- package/packages/@monomind/cli/dist/src/eval/dataset-manager.d.ts +33 -0
- package/packages/@monomind/cli/dist/src/eval/dataset-manager.js +107 -0
- package/packages/@monomind/cli/dist/src/eval/dataset-runner.d.ts +23 -0
- package/packages/@monomind/cli/dist/src/eval/dataset-runner.js +59 -0
- package/packages/@monomind/cli/dist/src/eval/index.d.ts +10 -0
- package/packages/@monomind/cli/dist/src/eval/index.js +7 -0
- package/packages/@monomind/cli/dist/src/eval/trace-collector.d.ts +40 -0
- package/packages/@monomind/cli/dist/src/eval/trace-collector.js +102 -0
- package/packages/@monomind/cli/dist/src/index.js +7 -3
- package/packages/@monomind/cli/dist/src/infrastructure/in-memory-repositories.d.ts +68 -0
- package/packages/@monomind/cli/dist/src/infrastructure/in-memory-repositories.js +264 -0
- package/packages/@monomind/cli/dist/src/init/executor.js +14 -11
- package/packages/@monomind/cli/dist/src/init/shared-instructions-generator.js +20 -4
- package/packages/@monomind/cli/dist/src/init/statusline-generator.js +33 -12
- package/packages/@monomind/cli/dist/src/interactive/interrupt.d.ts +22 -0
- package/packages/@monomind/cli/dist/src/interactive/interrupt.js +71 -0
- package/packages/@monomind/cli/dist/src/mcp/deprecation-injector.d.ts +25 -0
- package/packages/@monomind/cli/dist/src/mcp/deprecation-injector.js +48 -0
- package/packages/@monomind/cli/dist/src/mcp/tool-registry.d.ts +61 -0
- package/packages/@monomind/cli/dist/src/mcp/tool-registry.js +246 -0
- package/packages/@monomind/cli/dist/src/mcp-tools/a2a-tools.js +98 -13
- package/packages/@monomind/cli/dist/src/mcp-tools/agent-tools.js +16 -3
- package/packages/@monomind/cli/dist/src/mcp-tools/analyze-tools.js +80 -17
- package/packages/@monomind/cli/dist/src/mcp-tools/browser-tools.js +84 -22
- package/packages/@monomind/cli/dist/src/mcp-tools/claims-tools.js +35 -7
- package/packages/@monomind/cli/dist/src/mcp-tools/config-tools.js +82 -17
- package/packages/@monomind/cli/dist/src/mcp-tools/coordination-tools.js +37 -4
- package/packages/@monomind/cli/dist/src/mcp-tools/daa-tools.js +49 -7
- package/packages/@monomind/cli/dist/src/mcp-tools/embeddings-tools.js +45 -18
- package/packages/@monomind/cli/dist/src/mcp-tools/github-tools.js +75 -25
- package/packages/@monomind/cli/dist/src/mcp-tools/guidance-tools.js +32 -10
- package/packages/@monomind/cli/dist/src/mcp-tools/hive-mind-tools.js +91 -20
- package/packages/@monomind/cli/dist/src/mcp-tools/hooks-tools.js +188 -29
- package/packages/@monomind/cli/dist/src/mcp-tools/memory-tools.js +25 -7
- package/packages/@monomind/cli/dist/src/mcp-tools/monograph-compat.js +11 -2
- package/packages/@monomind/cli/dist/src/mcp-tools/monograph-tools.js +148 -26
- package/packages/@monomind/cli/dist/src/mcp-tools/neural-tools.js +44 -9
- package/packages/@monomind/cli/dist/src/mcp-tools/performance-tools.js +45 -10
- package/packages/@monomind/cli/dist/src/mcp-tools/progress-tools.js +7 -4
- package/packages/@monomind/cli/dist/src/mcp-tools/request-tracker.js +15 -1
- package/packages/@monomind/cli/dist/src/mcp-tools/security-tools.js +61 -9
- package/packages/@monomind/cli/dist/src/mcp-tools/session-tools.js +45 -14
- package/packages/@monomind/cli/dist/src/mcp-tools/swarm-tools.js +15 -3
- package/packages/@monomind/cli/dist/src/mcp-tools/system-tools.js +14 -7
- package/packages/@monomind/cli/dist/src/mcp-tools/task-tools.js +52 -10
- package/packages/@monomind/cli/dist/src/mcp-tools/terminal-tools.js +40 -6
- package/packages/@monomind/cli/dist/src/mcp-tools/transfer-tools.js +37 -4
- package/packages/@monomind/cli/dist/src/mcp-tools/wasm-agent-tools.d.ts +9 -0
- package/packages/@monomind/cli/dist/src/mcp-tools/wasm-agent-tools.js +230 -0
- package/packages/@monomind/cli/dist/src/mcp-tools/workflow-tools.js +29 -6
- package/packages/@monomind/cli/dist/src/memory/ewc-consolidation.js +26 -10
- package/packages/@monomind/cli/dist/src/memory/intelligence.js +80 -19
- package/packages/@monomind/cli/dist/src/memory/memory-bridge.js +21 -2
- package/packages/@monomind/cli/dist/src/memory/memory-initializer.js +67 -3
- package/packages/@monomind/cli/dist/src/memory/sona-optimizer.js +14 -4
- package/packages/@monomind/cli/dist/src/model/complexity-scorer.d.ts +21 -0
- package/packages/@monomind/cli/dist/src/model/complexity-scorer.js +106 -0
- package/packages/@monomind/cli/dist/src/model/index.d.ts +4 -0
- package/packages/@monomind/cli/dist/src/model/index.js +4 -0
- package/packages/@monomind/cli/dist/src/model/model-settings.d.ts +22 -0
- package/packages/@monomind/cli/dist/src/model/model-settings.js +33 -0
- package/packages/@monomind/cli/dist/src/model/model-tier-resolver.d.ts +24 -0
- package/packages/@monomind/cli/dist/src/model/model-tier-resolver.js +65 -0
- package/packages/@monomind/cli/dist/src/monovector/capabilities.d.ts +34 -0
- package/packages/@monomind/cli/dist/src/monovector/capabilities.js +37 -0
- package/packages/@monomind/cli/dist/src/monovector/command-outcomes.js +43 -7
- package/packages/@monomind/cli/dist/src/monovector/coverage-router.js +8 -4
- package/packages/@monomind/cli/dist/src/monovector/coverage-tools.js +6 -3
- package/packages/@monomind/cli/dist/src/monovector/diff-classifier.js +13 -0
- package/packages/@monomind/cli/dist/src/monovector/route-outcomes.d.ts +2 -1
- package/packages/@monomind/cli/dist/src/monovector/route-outcomes.js +46 -4
- package/packages/@monomind/cli/dist/src/observability/replay-reader.d.ts +1 -1
- package/packages/@monomind/cli/dist/src/orchestration/index.d.ts +7 -0
- package/packages/@monomind/cli/dist/src/orchestration/index.js +6 -0
- package/packages/@monomind/cli/dist/src/orchestration/mode-dispatcher.d.ts +11 -0
- package/packages/@monomind/cli/dist/src/orchestration/mode-dispatcher.js +31 -0
- package/packages/@monomind/cli/dist/src/orchestration/routing-modes.d.ts +68 -0
- package/packages/@monomind/cli/dist/src/orchestration/routing-modes.js +180 -0
- package/packages/@monomind/cli/dist/src/plugins/manager.js +8 -3
- package/packages/@monomind/cli/dist/src/plugins/store/discovery.js +46 -2
- package/packages/@monomind/cli/dist/src/plugins/store/search.js +5 -4
- package/packages/@monomind/cli/dist/src/plugins/tests/demo-plugin-store.d.ts +7 -0
- package/packages/@monomind/cli/dist/src/plugins/tests/demo-plugin-store.js +126 -0
- package/packages/@monomind/cli/dist/src/plugins/tests/standalone-test.d.ts +12 -0
- package/packages/@monomind/cli/dist/src/plugins/tests/standalone-test.js +188 -0
- package/packages/@monomind/cli/dist/src/plugins/tests/test-plugin-store.d.ts +7 -0
- package/packages/@monomind/cli/dist/src/plugins/tests/test-plugin-store.js +206 -0
- package/packages/@monomind/cli/dist/src/production/circuit-breaker.js +17 -3
- package/packages/@monomind/cli/dist/src/production/error-handler.js +3 -0
- package/packages/@monomind/cli/dist/src/production/monitoring.js +20 -3
- package/packages/@monomind/cli/dist/src/production/rate-limiter.js +13 -4
- package/packages/@monomind/cli/dist/src/production/retry.js +17 -9
- package/packages/@monomind/cli/dist/src/routing/embed-worker.js +6 -2
- package/packages/@monomind/cli/dist/src/routing/embedder.js +0 -0
- package/packages/@monomind/cli/dist/src/routing/llm-caller.js +13 -2
- package/packages/@monomind/cli/dist/src/routing/route-layer-factory.js +18 -3
- package/packages/@monomind/cli/dist/src/runtime/headless.d.ts +60 -0
- package/packages/@monomind/cli/dist/src/runtime/headless.js +284 -0
- package/packages/@monomind/cli/dist/src/services/agentic-flow-bridge.d.ts +50 -0
- package/packages/@monomind/cli/dist/src/services/agentic-flow-bridge.js +95 -0
- package/packages/@monomind/cli/dist/src/services/claim-service.d.ts +1 -0
- package/packages/@monomind/cli/dist/src/services/claim-service.js +8 -0
- package/packages/@monomind/cli/dist/src/services/config-file-manager.js +14 -2
- package/packages/@monomind/cli/dist/src/services/container-worker-pool.d.ts +197 -0
- package/packages/@monomind/cli/dist/src/services/container-worker-pool.js +623 -0
- package/packages/@monomind/cli/dist/src/services/headless-worker-executor.js +18 -2
- package/packages/@monomind/cli/dist/src/services/index.d.ts +13 -0
- package/packages/@monomind/cli/dist/src/services/index.js +11 -0
- package/packages/@monomind/cli/dist/src/services/worker-daemon.js +53 -12
- package/packages/@monomind/cli/dist/src/services/worker-queue.d.ts +201 -0
- package/packages/@monomind/cli/dist/src/services/worker-queue.js +594 -0
- package/packages/@monomind/cli/dist/src/swarm/communication-graph.d.ts +25 -0
- package/packages/@monomind/cli/dist/src/swarm/communication-graph.js +77 -0
- package/packages/@monomind/cli/dist/src/swarm/flow-enforcer.d.ts +31 -0
- package/packages/@monomind/cli/dist/src/swarm/flow-enforcer.js +61 -0
- package/packages/@monomind/cli/dist/src/swarm/flow-visualizer.d.ts +19 -0
- package/packages/@monomind/cli/dist/src/swarm/flow-visualizer.js +68 -0
- package/packages/@monomind/cli/dist/src/transfer/anonymization/index.d.ts +0 -3
- package/packages/@monomind/cli/dist/src/transfer/anonymization/index.js +16 -1
- package/packages/@monomind/cli/dist/src/transfer/deploy-seraphine.d.ts +13 -0
- package/packages/@monomind/cli/dist/src/transfer/deploy-seraphine.js +205 -0
- package/packages/@monomind/cli/dist/src/transfer/export.js +8 -0
- package/packages/@monomind/cli/dist/src/transfer/ipfs/upload.js +33 -3
- package/packages/@monomind/cli/dist/src/transfer/serialization/cfp.js +9 -3
- package/packages/@monomind/cli/dist/src/transfer/storage/gcs.js +37 -3
- package/packages/@monomind/cli/dist/src/transfer/store/discovery.js +45 -3
- package/packages/@monomind/cli/dist/src/transfer/store/download.js +5 -0
- package/packages/@monomind/cli/dist/src/transfer/store/publish.js +13 -1
- package/packages/@monomind/cli/dist/src/transfer/store/registry.d.ts +8 -0
- package/packages/@monomind/cli/dist/src/transfer/store/registry.js +30 -5
- package/packages/@monomind/cli/dist/src/transfer/store/search.js +20 -5
- package/packages/@monomind/cli/dist/src/transfer/store/tests/standalone-test.d.ts +12 -0
- package/packages/@monomind/cli/dist/src/transfer/store/tests/standalone-test.js +190 -0
- package/packages/@monomind/cli/dist/src/transfer/test-seraphine.d.ts +6 -0
- package/packages/@monomind/cli/dist/src/transfer/test-seraphine.js +105 -0
- package/packages/@monomind/cli/dist/src/transfer/tests/test-store.d.ts +7 -0
- package/packages/@monomind/cli/dist/src/transfer/tests/test-store.js +214 -0
- package/packages/@monomind/cli/dist/src/update/checker.js +59 -7
- package/packages/@monomind/cli/dist/src/update/executor.js +50 -3
- package/packages/@monomind/cli/dist/src/update/index.js +18 -1
- package/packages/@monomind/cli/dist/src/update/rate-limiter.d.ts +6 -0
- package/packages/@monomind/cli/dist/src/update/rate-limiter.js +79 -7
- package/packages/@monomind/cli/dist/src/update/validator.js +52 -1
- package/packages/@monomind/cli/dist/src/workflow/condition-evaluator.d.ts +10 -0
- package/packages/@monomind/cli/dist/src/workflow/condition-evaluator.js +82 -0
- package/packages/@monomind/cli/dist/src/workflow/context-resolver.d.ts +12 -0
- package/packages/@monomind/cli/dist/src/workflow/context-resolver.js +23 -0
- package/packages/@monomind/cli/dist/src/workflow/dag-builder.d.ts +17 -0
- package/packages/@monomind/cli/dist/src/workflow/dag-builder.js +129 -0
- package/packages/@monomind/cli/dist/src/workflow/dag-executor.d.ts +9 -0
- package/packages/@monomind/cli/dist/src/workflow/dag-executor.js +116 -0
- package/packages/@monomind/cli/dist/src/workflow/dag-types.d.ts +41 -0
- package/packages/@monomind/cli/dist/src/workflow/dag-types.js +8 -0
- package/packages/@monomind/cli/dist/src/workflow/dsl-parser.d.ts +12 -0
- package/packages/@monomind/cli/dist/src/workflow/dsl-parser.js +20 -0
- package/packages/@monomind/cli/dist/src/workflow/dsl-schema.d.ts +165 -0
- package/packages/@monomind/cli/dist/src/workflow/dsl-schema.js +82 -0
- package/packages/@monomind/cli/dist/src/workflow/index.d.ts +13 -0
- package/packages/@monomind/cli/dist/src/workflow/index.js +11 -0
- package/packages/@monomind/cli/dist/src/workflow/template-engine.d.ts +11 -0
- package/packages/@monomind/cli/dist/src/workflow/template-engine.js +40 -0
- package/packages/@monomind/cli/dist/src/workflow/workflow-executor.d.ts +29 -0
- package/packages/@monomind/cli/dist/src/workflow/workflow-executor.js +227 -0
- package/packages/@monomind/cli/package.json +9 -10
- package/packages/@monomind/guidance/dist/adversarial.d.ts +284 -0
- package/packages/@monomind/guidance/dist/adversarial.js +572 -0
- package/packages/@monomind/guidance/dist/analyzer.d.ts +530 -0
- package/packages/@monomind/guidance/dist/analyzer.js +2518 -0
- package/packages/@monomind/guidance/dist/artifacts.d.ts +283 -0
- package/packages/@monomind/guidance/dist/artifacts.js +356 -0
- package/packages/@monomind/guidance/dist/authority.d.ts +290 -0
- package/packages/@monomind/guidance/dist/authority.js +558 -0
- package/packages/@monomind/guidance/dist/capabilities.d.ts +209 -0
- package/packages/@monomind/guidance/dist/capabilities.js +485 -0
- package/packages/@monomind/guidance/dist/coherence.d.ts +233 -0
- package/packages/@monomind/guidance/dist/coherence.js +372 -0
- package/packages/@monomind/guidance/dist/compiler.d.ts +87 -0
- package/packages/@monomind/guidance/dist/compiler.js +419 -0
- package/packages/@monomind/guidance/dist/conformance-kit.d.ts +225 -0
- package/packages/@monomind/guidance/dist/conformance-kit.js +629 -0
- package/packages/@monomind/guidance/dist/continue-gate.d.ts +214 -0
- package/packages/@monomind/guidance/dist/continue-gate.js +353 -0
- package/packages/@monomind/guidance/dist/crypto-utils.d.ts +17 -0
- package/packages/@monomind/guidance/dist/crypto-utils.js +24 -0
- package/packages/@monomind/guidance/dist/evolution.d.ts +282 -0
- package/packages/@monomind/guidance/dist/evolution.js +500 -0
- package/packages/@monomind/guidance/dist/gates.d.ts +79 -0
- package/packages/@monomind/guidance/dist/gates.js +302 -0
- package/packages/@monomind/guidance/dist/gateway.d.ts +206 -0
- package/packages/@monomind/guidance/dist/gateway.js +452 -0
- package/packages/@monomind/guidance/dist/generators.d.ts +153 -0
- package/packages/@monomind/guidance/dist/generators.js +682 -0
- package/packages/@monomind/guidance/dist/headless.d.ts +177 -0
- package/packages/@monomind/guidance/dist/headless.js +342 -0
- package/packages/@monomind/guidance/dist/hooks.d.ts +109 -0
- package/packages/@monomind/guidance/dist/hooks.js +347 -0
- package/packages/@monomind/guidance/dist/index.d.ts +205 -0
- package/packages/@monomind/guidance/dist/index.js +321 -0
- package/packages/@monomind/guidance/dist/ledger.d.ts +162 -0
- package/packages/@monomind/guidance/dist/ledger.js +375 -0
- package/packages/@monomind/guidance/dist/manifest-validator.d.ts +289 -0
- package/packages/@monomind/guidance/dist/manifest-validator.js +838 -0
- package/packages/@monomind/guidance/dist/memory-gate.d.ts +222 -0
- package/packages/@monomind/guidance/dist/memory-gate.js +382 -0
- package/packages/@monomind/guidance/dist/meta-governance.d.ts +265 -0
- package/packages/@monomind/guidance/dist/meta-governance.js +348 -0
- package/packages/@monomind/guidance/dist/optimizer.d.ts +104 -0
- package/packages/@monomind/guidance/dist/optimizer.js +329 -0
- package/packages/@monomind/guidance/dist/persistence.d.ts +189 -0
- package/packages/@monomind/guidance/dist/persistence.js +464 -0
- package/packages/@monomind/guidance/dist/proof.d.ts +185 -0
- package/packages/@monomind/guidance/dist/proof.js +238 -0
- package/packages/@monomind/guidance/dist/retriever.d.ts +116 -0
- package/packages/@monomind/guidance/dist/retriever.js +394 -0
- package/packages/@monomind/guidance/dist/ruvbot-integration.d.ts +370 -0
- package/packages/@monomind/guidance/dist/ruvbot-integration.js +738 -0
- package/packages/@monomind/guidance/dist/temporal.d.ts +426 -0
- package/packages/@monomind/guidance/dist/temporal.js +658 -0
- package/packages/@monomind/guidance/dist/trust.d.ts +283 -0
- package/packages/@monomind/guidance/dist/trust.js +473 -0
- package/packages/@monomind/guidance/dist/truth-anchors.d.ts +276 -0
- package/packages/@monomind/guidance/dist/truth-anchors.js +488 -0
- package/packages/@monomind/guidance/dist/types.d.ts +378 -0
- package/packages/@monomind/guidance/dist/types.js +10 -0
- package/packages/@monomind/guidance/dist/uncertainty.d.ts +372 -0
- package/packages/@monomind/guidance/dist/uncertainty.js +619 -0
- package/packages/@monomind/guidance/dist/wasm-kernel.d.ts +48 -0
- package/packages/@monomind/guidance/dist/wasm-kernel.js +158 -0
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* - testgaps: Test coverage analysis (20 min interval)
|
|
11
11
|
*/
|
|
12
12
|
import { EventEmitter } from 'events';
|
|
13
|
-
import { existsSync, mkdirSync, writeFileSync, renameSync, readFileSync, appendFileSync, unlinkSync } from 'fs';
|
|
13
|
+
import { existsSync, mkdirSync, writeFileSync, renameSync, readFileSync, appendFileSync, unlinkSync, statSync } from 'fs';
|
|
14
14
|
import { cpus } from 'os';
|
|
15
15
|
import { join, resolve } from 'path';
|
|
16
16
|
import { HeadlessWorkerExecutor, isHeadlessWorker, } from './headless-worker-executor.js';
|
|
@@ -106,14 +106,15 @@ export class WorkerDaemon extends EventEmitter {
|
|
|
106
106
|
this.headlessAvailable = await this.headlessExecutor.isAvailable();
|
|
107
107
|
if (this.headlessAvailable) {
|
|
108
108
|
this.log('info', 'Claude Code headless mode available - AI workers enabled');
|
|
109
|
-
// Forward headless executor events
|
|
110
|
-
|
|
109
|
+
// Forward headless executor events.
|
|
110
|
+
// The executor emits 'start', 'complete', 'error' (not 'execution:*').
|
|
111
|
+
this.headlessExecutor.on('start', (data) => {
|
|
111
112
|
this.emit('headless:start', data);
|
|
112
113
|
});
|
|
113
|
-
this.headlessExecutor.on('
|
|
114
|
+
this.headlessExecutor.on('complete', (data) => {
|
|
114
115
|
this.emit('headless:complete', data);
|
|
115
116
|
});
|
|
116
|
-
this.headlessExecutor.on('
|
|
117
|
+
this.headlessExecutor.on('error', (data) => {
|
|
117
118
|
this.emit('headless:error', data);
|
|
118
119
|
});
|
|
119
120
|
this.headlessExecutor.on('output', (data) => {
|
|
@@ -189,6 +190,12 @@ export class WorkerDaemon extends EventEmitter {
|
|
|
189
190
|
return {};
|
|
190
191
|
}
|
|
191
192
|
try {
|
|
193
|
+
// Guard against OOM from an oversized config file (tampered or corrupted).
|
|
194
|
+
const configSize = statSync(configPath).size;
|
|
195
|
+
if (configSize > 1_048_576 /* 1 MB */) {
|
|
196
|
+
this.log('warn', `config.json is unusually large (${configSize} bytes) — ignoring daemon config`);
|
|
197
|
+
return {};
|
|
198
|
+
}
|
|
192
199
|
const raw = JSON.parse(readFileSync(configPath, 'utf-8'));
|
|
193
200
|
// Support both flat keys at root and nested under scopes.project
|
|
194
201
|
const cfg = raw?.scopes?.project ?? raw;
|
|
@@ -271,6 +278,12 @@ export class WorkerDaemon extends EventEmitter {
|
|
|
271
278
|
// Try to restore state from file
|
|
272
279
|
if (existsSync(this.config.stateFile)) {
|
|
273
280
|
try {
|
|
281
|
+
// Guard against OOM from an oversized state file (tampered or corrupted).
|
|
282
|
+
const stateSize = statSync(this.config.stateFile).size;
|
|
283
|
+
if (stateSize > 5_242_880 /* 5 MB */) {
|
|
284
|
+
this.log('warn', `daemon-state.json is unusually large (${stateSize} bytes) — starting with fresh state`);
|
|
285
|
+
return;
|
|
286
|
+
}
|
|
274
287
|
const saved = JSON.parse(readFileSync(this.config.stateFile, 'utf-8'));
|
|
275
288
|
// CRITICAL: Restore worker config (including enabled flag) from saved state
|
|
276
289
|
// This fixes #950: daemon enable command not persisting worker state
|
|
@@ -555,6 +568,17 @@ export class WorkerDaemon extends EventEmitter {
|
|
|
555
568
|
const state = this.workers.get(workerConfig.type);
|
|
556
569
|
const workerId = `${workerConfig.type}_${Date.now()}`;
|
|
557
570
|
const startTime = Date.now();
|
|
571
|
+
// Track the headless executionId assigned by HeadlessWorkerExecutor so we
|
|
572
|
+
// can cancel it precisely on timeout. The executor generates its own ID
|
|
573
|
+
// (format: `${type}_${ts}_${random}`) which never matches workerId, so we
|
|
574
|
+
// capture it from the 'start' event instead.
|
|
575
|
+
let headlessExecutionId = null;
|
|
576
|
+
const onHeadlessStart = (data) => {
|
|
577
|
+
headlessExecutionId = data.executionId ?? null;
|
|
578
|
+
};
|
|
579
|
+
if (this.headlessExecutor) {
|
|
580
|
+
this.headlessExecutor.on('start', onHeadlessStart);
|
|
581
|
+
}
|
|
558
582
|
// Track running worker
|
|
559
583
|
this.runningWorkers.add(workerConfig.type);
|
|
560
584
|
state.isRunning = true;
|
|
@@ -566,11 +590,13 @@ export class WorkerDaemon extends EventEmitter {
|
|
|
566
590
|
// cancelAll() was too broad — it would kill concurrent healthy workers.
|
|
567
591
|
const output = await this.runWithTimeout(() => this.runWorkerLogic(workerConfig), this.config.workerTimeoutMs, `Worker ${workerConfig.type} timed out after ${this.config.workerTimeoutMs / 1000}s`, () => {
|
|
568
592
|
if (this.headlessExecutor) {
|
|
569
|
-
//
|
|
570
|
-
//
|
|
571
|
-
|
|
572
|
-
|
|
593
|
+
// Use the exact executionId captured from the 'start' event.
|
|
594
|
+
// Fall back to cancelByType only if we didn't capture an ID yet
|
|
595
|
+
// (e.g. timeout fired before the executor emitted 'start').
|
|
596
|
+
if (headlessExecutionId && this.headlessExecutor.cancel(headlessExecutionId)) {
|
|
597
|
+
return;
|
|
573
598
|
}
|
|
599
|
+
this.headlessExecutor.cancelByType(workerConfig.type);
|
|
574
600
|
}
|
|
575
601
|
});
|
|
576
602
|
const durationMs = Date.now() - startTime;
|
|
@@ -615,6 +641,10 @@ export class WorkerDaemon extends EventEmitter {
|
|
|
615
641
|
finally {
|
|
616
642
|
// Remove from running set and process queue
|
|
617
643
|
this.runningWorkers.delete(workerConfig.type);
|
|
644
|
+
// Unsubscribe the executionId capture listener regardless of outcome
|
|
645
|
+
if (this.headlessExecutor) {
|
|
646
|
+
this.headlessExecutor.off('start', onHeadlessStart);
|
|
647
|
+
}
|
|
618
648
|
this.processPendingWorkers();
|
|
619
649
|
}
|
|
620
650
|
}
|
|
@@ -752,7 +782,7 @@ export class WorkerDaemon extends EventEmitter {
|
|
|
752
782
|
checks: {
|
|
753
783
|
envFilesProtected: !existsSync(join(this.projectRoot, '.env.local')),
|
|
754
784
|
gitIgnoreExists: existsSync(join(this.projectRoot, '.gitignore')),
|
|
755
|
-
noHardcodedSecrets:
|
|
785
|
+
noHardcodedSecrets: null, // Not checked in local mode — requires AI-powered scan
|
|
756
786
|
},
|
|
757
787
|
riskLevel: 'low',
|
|
758
788
|
recommendations: [],
|
|
@@ -779,8 +809,8 @@ export class WorkerDaemon extends EventEmitter {
|
|
|
779
809
|
memoryUsage: process.memoryUsage(),
|
|
780
810
|
uptime: process.uptime(),
|
|
781
811
|
optimizations: {
|
|
782
|
-
cacheHitRate:
|
|
783
|
-
avgResponseTime:
|
|
812
|
+
cacheHitRate: null, // Not measured in local mode — requires AI-powered analysis
|
|
813
|
+
avgResponseTime: null, // Not measured in local mode — requires AI-powered analysis
|
|
784
814
|
},
|
|
785
815
|
note: 'Install Claude Code CLI for AI-powered optimization suggestions',
|
|
786
816
|
};
|
|
@@ -1042,6 +1072,17 @@ export class WorkerDaemon extends EventEmitter {
|
|
|
1042
1072
|
try {
|
|
1043
1073
|
const logFile = join(this.config.logDir, 'daemon.log');
|
|
1044
1074
|
appendFileSync(logFile, logMessage + '\n');
|
|
1075
|
+
// Opportunistic rotation: keep the log under 10 MB. When exceeded,
|
|
1076
|
+
// discard the oldest half so recent entries are always retained.
|
|
1077
|
+
const MAX_LOG_BYTES = 10 * 1024 * 1024;
|
|
1078
|
+
if (statSync(logFile).size > MAX_LOG_BYTES) {
|
|
1079
|
+
const content = readFileSync(logFile, 'utf-8');
|
|
1080
|
+
const lines = content.split('\n').filter(Boolean);
|
|
1081
|
+
const trimmed = lines.slice(Math.floor(lines.length / 2)).join('\n') + '\n';
|
|
1082
|
+
const tmp = `${logFile}.${process.pid}.${Date.now()}.tmp`;
|
|
1083
|
+
writeFileSync(tmp, trimmed);
|
|
1084
|
+
renameSync(tmp, logFile);
|
|
1085
|
+
}
|
|
1045
1086
|
}
|
|
1046
1087
|
catch {
|
|
1047
1088
|
// Ignore log write errors
|
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Worker Queue Service
|
|
3
|
+
* Redis-based task queue for distributed headless worker execution.
|
|
4
|
+
*
|
|
5
|
+
* ADR-020: Headless Worker Integration Architecture - Phase 4
|
|
6
|
+
* - Priority-based task scheduling
|
|
7
|
+
* - Result persistence and retrieval
|
|
8
|
+
* - Distributed locking for task assignment
|
|
9
|
+
* - Dead letter queue for failed tasks
|
|
10
|
+
* - Metrics and monitoring
|
|
11
|
+
*
|
|
12
|
+
* Key Features:
|
|
13
|
+
* - FIFO with priority levels (critical, high, normal, low)
|
|
14
|
+
* - Automatic retry with exponential backoff
|
|
15
|
+
* - Task timeout detection
|
|
16
|
+
* - Result caching with TTL
|
|
17
|
+
* - Worker heartbeat monitoring
|
|
18
|
+
*/
|
|
19
|
+
import { EventEmitter } from 'events';
|
|
20
|
+
import type { HeadlessWorkerType, HeadlessExecutionResult, WorkerPriority } from './headless-worker-executor.js';
|
|
21
|
+
/**
|
|
22
|
+
* Task status
|
|
23
|
+
*/
|
|
24
|
+
export type TaskStatus = 'pending' | 'processing' | 'completed' | 'failed' | 'timeout' | 'cancelled';
|
|
25
|
+
/**
|
|
26
|
+
* Queue task
|
|
27
|
+
*/
|
|
28
|
+
export interface QueueTask {
|
|
29
|
+
id: string;
|
|
30
|
+
workerType: HeadlessWorkerType;
|
|
31
|
+
priority: WorkerPriority;
|
|
32
|
+
payload: {
|
|
33
|
+
prompt?: string;
|
|
34
|
+
contextPatterns?: string[];
|
|
35
|
+
sandbox?: string;
|
|
36
|
+
model?: string;
|
|
37
|
+
timeoutMs?: number;
|
|
38
|
+
};
|
|
39
|
+
status: TaskStatus;
|
|
40
|
+
createdAt: Date;
|
|
41
|
+
startedAt?: Date;
|
|
42
|
+
completedAt?: Date;
|
|
43
|
+
workerId?: string;
|
|
44
|
+
retryCount: number;
|
|
45
|
+
maxRetries: number;
|
|
46
|
+
result?: HeadlessExecutionResult;
|
|
47
|
+
error?: string;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Queue configuration
|
|
51
|
+
*/
|
|
52
|
+
export interface WorkerQueueConfig {
|
|
53
|
+
/** Redis connection URL */
|
|
54
|
+
redisUrl: string;
|
|
55
|
+
/** Queue name prefix */
|
|
56
|
+
queuePrefix: string;
|
|
57
|
+
/** Default task timeout in ms */
|
|
58
|
+
defaultTimeoutMs: number;
|
|
59
|
+
/** Maximum retries for failed tasks */
|
|
60
|
+
maxRetries: number;
|
|
61
|
+
/** Task result TTL in seconds */
|
|
62
|
+
resultTtlSeconds: number;
|
|
63
|
+
/** Worker heartbeat interval in ms */
|
|
64
|
+
heartbeatIntervalMs: number;
|
|
65
|
+
/** Dead letter queue enabled */
|
|
66
|
+
deadLetterEnabled: boolean;
|
|
67
|
+
/** Visibility timeout in ms (task processing lock) */
|
|
68
|
+
visibilityTimeoutMs: number;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Queue statistics
|
|
72
|
+
*/
|
|
73
|
+
export interface QueueStats {
|
|
74
|
+
pending: number;
|
|
75
|
+
processing: number;
|
|
76
|
+
completed: number;
|
|
77
|
+
failed: number;
|
|
78
|
+
deadLetter: number;
|
|
79
|
+
byPriority: Record<WorkerPriority, number>;
|
|
80
|
+
byWorkerType: Partial<Record<HeadlessWorkerType, number>>;
|
|
81
|
+
averageWaitTimeMs: number;
|
|
82
|
+
averageProcessingTimeMs: number;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Worker registration info
|
|
86
|
+
*/
|
|
87
|
+
export interface WorkerRegistration {
|
|
88
|
+
workerId: string;
|
|
89
|
+
workerTypes: HeadlessWorkerType[];
|
|
90
|
+
maxConcurrent: number;
|
|
91
|
+
currentTasks: number;
|
|
92
|
+
lastHeartbeat: Date;
|
|
93
|
+
registeredAt: Date;
|
|
94
|
+
hostname?: string;
|
|
95
|
+
containerId?: string;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* WorkerQueue - Redis-based task queue for distributed worker execution
|
|
99
|
+
*/
|
|
100
|
+
export declare class WorkerQueue extends EventEmitter {
|
|
101
|
+
private config;
|
|
102
|
+
private store;
|
|
103
|
+
private workerId;
|
|
104
|
+
private heartbeatTimer?;
|
|
105
|
+
private visibilityTimer?;
|
|
106
|
+
private retryTimers;
|
|
107
|
+
private processingTasks;
|
|
108
|
+
private taskGenerations;
|
|
109
|
+
private isShuttingDown;
|
|
110
|
+
private maxConcurrent;
|
|
111
|
+
private initialized;
|
|
112
|
+
constructor(config?: Partial<WorkerQueueConfig>);
|
|
113
|
+
/**
|
|
114
|
+
* Initialize the queue (starts cleanup timers)
|
|
115
|
+
*/
|
|
116
|
+
initialize(): Promise<void>;
|
|
117
|
+
/**
|
|
118
|
+
* Requeue processing tasks that exceeded the visibility timeout (crashed workers).
|
|
119
|
+
*/
|
|
120
|
+
private startVisibilityReaper;
|
|
121
|
+
/**
|
|
122
|
+
* Enqueue a new task
|
|
123
|
+
*/
|
|
124
|
+
enqueue(workerType: HeadlessWorkerType, payload?: QueueTask['payload'], options?: {
|
|
125
|
+
priority?: WorkerPriority;
|
|
126
|
+
maxRetries?: number;
|
|
127
|
+
timeoutMs?: number;
|
|
128
|
+
}): Promise<string>;
|
|
129
|
+
/**
|
|
130
|
+
* Dequeue a task for processing
|
|
131
|
+
*/
|
|
132
|
+
dequeue(workerTypes: HeadlessWorkerType[]): Promise<QueueTask | null>;
|
|
133
|
+
/**
|
|
134
|
+
* Complete a task with result
|
|
135
|
+
*/
|
|
136
|
+
complete(taskId: string, result: HeadlessExecutionResult, leaseGen?: number): Promise<void>;
|
|
137
|
+
/**
|
|
138
|
+
* Fail a task with error
|
|
139
|
+
*/
|
|
140
|
+
fail(taskId: string, error: string, retryable?: boolean, leaseGen?: number): Promise<void>;
|
|
141
|
+
/**
|
|
142
|
+
* Get task status
|
|
143
|
+
*/
|
|
144
|
+
getTask(taskId: string): Promise<QueueTask | null>;
|
|
145
|
+
/**
|
|
146
|
+
* Get task result
|
|
147
|
+
*/
|
|
148
|
+
getResult(taskId: string): Promise<HeadlessExecutionResult | null>;
|
|
149
|
+
/**
|
|
150
|
+
* Cancel a pending task
|
|
151
|
+
*/
|
|
152
|
+
cancel(taskId: string): Promise<boolean>;
|
|
153
|
+
/**
|
|
154
|
+
* Register this instance as a worker
|
|
155
|
+
*/
|
|
156
|
+
registerWorker(workerTypes: HeadlessWorkerType[], options?: {
|
|
157
|
+
maxConcurrent?: number;
|
|
158
|
+
hostname?: string;
|
|
159
|
+
containerId?: string;
|
|
160
|
+
}): Promise<string>;
|
|
161
|
+
/**
|
|
162
|
+
* Unregister this worker
|
|
163
|
+
*/
|
|
164
|
+
unregisterWorker(): Promise<void>;
|
|
165
|
+
/**
|
|
166
|
+
* Get all registered workers
|
|
167
|
+
*/
|
|
168
|
+
getWorkers(): Promise<WorkerRegistration[]>;
|
|
169
|
+
/**
|
|
170
|
+
* Get queue statistics
|
|
171
|
+
*/
|
|
172
|
+
getStats(): Promise<QueueStats>;
|
|
173
|
+
/**
|
|
174
|
+
* Start processing tasks
|
|
175
|
+
*/
|
|
176
|
+
start(workerTypes: HeadlessWorkerType[], handler: (task: QueueTask) => Promise<HeadlessExecutionResult>, options?: {
|
|
177
|
+
maxConcurrent?: number;
|
|
178
|
+
}): Promise<void>;
|
|
179
|
+
/**
|
|
180
|
+
* Process a single task
|
|
181
|
+
*/
|
|
182
|
+
private processTask;
|
|
183
|
+
/**
|
|
184
|
+
* Shutdown the queue gracefully
|
|
185
|
+
*/
|
|
186
|
+
shutdown(): Promise<void>;
|
|
187
|
+
/**
|
|
188
|
+
* Get queue name for worker type
|
|
189
|
+
*/
|
|
190
|
+
private getQueueName;
|
|
191
|
+
/**
|
|
192
|
+
* Start heartbeat timer
|
|
193
|
+
*/
|
|
194
|
+
private startHeartbeat;
|
|
195
|
+
/**
|
|
196
|
+
* Stop heartbeat timer
|
|
197
|
+
*/
|
|
198
|
+
private stopHeartbeat;
|
|
199
|
+
}
|
|
200
|
+
export default WorkerQueue;
|
|
201
|
+
//# sourceMappingURL=worker-queue.d.ts.map
|