agentic-flow 2.0.7 → 2.0.8

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.
Files changed (316) hide show
  1. package/.claude/settings.json +133 -9
  2. package/.claude/skills/agentic-flow-quickstart/skill.md +69 -0
  3. package/.claude/skills/hooks-automation/skill.md +155 -0
  4. package/.claude/skills/memory-patterns/skill.md +110 -0
  5. package/.claude/skills/sparc-methodology/skill.md +137 -0
  6. package/.claude/skills/swarm-coordination/skill.md +94 -0
  7. package/.claude/skills/worker-benchmarks/skill.md +135 -0
  8. package/.claude/skills/worker-integration/skill.md +154 -0
  9. package/.claude/statusline.mjs +109 -0
  10. package/.claude/statusline.sh +71 -0
  11. package/README.md +1797 -624
  12. package/dist/.tsbuildinfo +1 -1
  13. package/dist/agentdb/index.d.ts +2 -0
  14. package/dist/agentdb/index.d.ts.map +1 -1
  15. package/dist/agentdb/index.js +5 -0
  16. package/dist/agentdb/index.js.map +1 -1
  17. package/dist/agentdb/prerequisites.d.ts +25 -0
  18. package/dist/agentdb/prerequisites.d.ts.map +1 -0
  19. package/dist/agentdb/prerequisites.js +180 -0
  20. package/dist/agentdb/prerequisites.js.map +1 -0
  21. package/dist/benchmarks/embeddings-benchmark.d.ts +38 -0
  22. package/dist/benchmarks/embeddings-benchmark.d.ts.map +1 -0
  23. package/dist/benchmarks/embeddings-benchmark.js +282 -0
  24. package/dist/benchmarks/embeddings-benchmark.js.map +1 -0
  25. package/dist/billing/mcp/tools.js +1 -0
  26. package/dist/billing/mcp/tools.js.map +1 -1
  27. package/dist/cli/commands/embeddings.d.ts +12 -0
  28. package/dist/cli/commands/embeddings.d.ts.map +1 -0
  29. package/dist/cli/commands/embeddings.js +386 -0
  30. package/dist/cli/commands/embeddings.js.map +1 -0
  31. package/dist/cli/commands/hooks.d.ts.map +1 -1
  32. package/dist/cli/commands/hooks.js +79 -4
  33. package/dist/cli/commands/hooks.js.map +1 -1
  34. package/dist/cli/commands/init.d.ts +8 -0
  35. package/dist/cli/commands/init.d.ts.map +1 -0
  36. package/dist/cli/commands/init.js +514 -0
  37. package/dist/cli/commands/init.js.map +1 -0
  38. package/dist/cli/commands/workers.d.ts +9 -0
  39. package/dist/cli/commands/workers.d.ts.map +1 -0
  40. package/dist/cli/commands/workers.js +991 -0
  41. package/dist/cli/commands/workers.js.map +1 -0
  42. package/dist/cli/config-wizard.d.ts.map +1 -1
  43. package/dist/cli/config-wizard.js +47 -25
  44. package/dist/cli/config-wizard.js.map +1 -1
  45. package/dist/cli-proxy.js +89 -1
  46. package/dist/cli-proxy.js.map +1 -1
  47. package/dist/core/agentdb-fast.js +3 -3
  48. package/dist/core/agentdb-fast.js.map +1 -1
  49. package/dist/core/agentdb-wrapper-enhanced.d.ts.map +1 -1
  50. package/dist/core/agentdb-wrapper-enhanced.js +37 -11
  51. package/dist/core/agentdb-wrapper-enhanced.js.map +1 -1
  52. package/dist/core/agentdb-wrapper.d.ts +3 -2
  53. package/dist/core/agentdb-wrapper.d.ts.map +1 -1
  54. package/dist/core/agentdb-wrapper.js +15 -1
  55. package/dist/core/agentdb-wrapper.js.map +1 -1
  56. package/dist/core/attention-native.d.ts +4 -0
  57. package/dist/core/attention-native.d.ts.map +1 -1
  58. package/dist/core/attention-native.js +14 -2
  59. package/dist/core/attention-native.js.map +1 -1
  60. package/dist/core/gnn-wrapper.d.ts.map +1 -1
  61. package/dist/core/gnn-wrapper.js +14 -0
  62. package/dist/core/gnn-wrapper.js.map +1 -1
  63. package/dist/embeddings/index.d.ts +17 -0
  64. package/dist/embeddings/index.d.ts.map +1 -0
  65. package/dist/embeddings/index.js +17 -0
  66. package/dist/embeddings/index.js.map +1 -0
  67. package/dist/embeddings/neural-substrate.d.ts +206 -0
  68. package/dist/embeddings/neural-substrate.d.ts.map +1 -0
  69. package/dist/embeddings/neural-substrate.js +629 -0
  70. package/dist/embeddings/neural-substrate.js.map +1 -0
  71. package/dist/embeddings/optimized-embedder.d.ts +103 -0
  72. package/dist/embeddings/optimized-embedder.d.ts.map +1 -0
  73. package/dist/embeddings/optimized-embedder.js +730 -0
  74. package/dist/embeddings/optimized-embedder.js.map +1 -0
  75. package/dist/examples/embedding-geometry.d.ts +105 -0
  76. package/dist/examples/embedding-geometry.d.ts.map +1 -0
  77. package/dist/examples/embedding-geometry.js +528 -0
  78. package/dist/examples/embedding-geometry.js.map +1 -0
  79. package/dist/federation/SecurityManager.d.ts +11 -2
  80. package/dist/federation/SecurityManager.d.ts.map +1 -1
  81. package/dist/federation/SecurityManager.js +50 -17
  82. package/dist/federation/SecurityManager.js.map +1 -1
  83. package/dist/federation/integrations/supabase-adapter-debug.js +3 -3
  84. package/dist/federation/integrations/supabase-adapter-debug.js.map +1 -1
  85. package/dist/hooks/swarm-learning-optimizer.js +5 -5
  86. package/dist/hooks/swarm-learning-optimizer.js.map +1 -1
  87. package/dist/index.d.ts +5 -3
  88. package/dist/index.d.ts.map +1 -1
  89. package/dist/index.js +89 -51
  90. package/dist/index.js.map +1 -1
  91. package/dist/intelligence/IntelligenceStore.d.ts +35 -26
  92. package/dist/intelligence/IntelligenceStore.d.ts.map +1 -1
  93. package/dist/intelligence/IntelligenceStore.js +308 -123
  94. package/dist/intelligence/IntelligenceStore.js.map +1 -1
  95. package/dist/intelligence/RuVectorIntelligence.d.ts +26 -1
  96. package/dist/intelligence/RuVectorIntelligence.d.ts.map +1 -1
  97. package/dist/intelligence/RuVectorIntelligence.js +49 -10
  98. package/dist/intelligence/RuVectorIntelligence.js.map +1 -1
  99. package/dist/intelligence/agent-booster-enhanced.d.ts +1 -0
  100. package/dist/intelligence/agent-booster-enhanced.d.ts.map +1 -1
  101. package/dist/intelligence/agent-booster-enhanced.js +24 -3
  102. package/dist/intelligence/agent-booster-enhanced.js.map +1 -1
  103. package/dist/intelligence/index.d.ts +29 -3
  104. package/dist/intelligence/index.d.ts.map +1 -1
  105. package/dist/intelligence/index.js +13 -3
  106. package/dist/intelligence/index.js.map +1 -1
  107. package/dist/mcp/claudeFlowSdkServer.d.ts.map +1 -1
  108. package/dist/mcp/claudeFlowSdkServer.js +162 -115
  109. package/dist/mcp/claudeFlowSdkServer.js.map +1 -1
  110. package/dist/mcp/fastmcp/tools/hooks/intelligence-bridge.js +5 -5
  111. package/dist/mcp/fastmcp/tools/hooks/intelligence-bridge.js.map +1 -1
  112. package/dist/mcp/fastmcp/tools/swarm/init.d.ts.map +1 -1
  113. package/dist/mcp/fastmcp/tools/swarm/init.js +36 -7
  114. package/dist/mcp/fastmcp/tools/swarm/init.js.map +1 -1
  115. package/dist/mcp/fastmcp/tools/swarm/spawn.d.ts.map +1 -1
  116. package/dist/mcp/fastmcp/tools/swarm/spawn.js +47 -8
  117. package/dist/mcp/fastmcp/tools/swarm/spawn.js.map +1 -1
  118. package/dist/mcp/tools/agent-booster-tools.d.ts +15 -1
  119. package/dist/mcp/tools/agent-booster-tools.d.ts.map +1 -1
  120. package/dist/mcp/tools/agent-booster-tools.js +79 -63
  121. package/dist/mcp/tools/agent-booster-tools.js.map +1 -1
  122. package/dist/mcp/tools/sona-tools.d.ts.map +1 -1
  123. package/dist/mcp/tools/sona-tools.js +6 -0
  124. package/dist/mcp/tools/sona-tools.js.map +1 -1
  125. package/dist/memory/SharedMemoryPool.d.ts +103 -0
  126. package/dist/memory/SharedMemoryPool.d.ts.map +1 -0
  127. package/dist/memory/SharedMemoryPool.js +263 -0
  128. package/dist/memory/SharedMemoryPool.js.map +1 -0
  129. package/dist/optimizations/agent-booster-migration.d.ts +2 -1
  130. package/dist/optimizations/agent-booster-migration.d.ts.map +1 -1
  131. package/dist/optimizations/agent-booster-migration.js +69 -45
  132. package/dist/optimizations/agent-booster-migration.js.map +1 -1
  133. package/dist/orchestration/index.d.ts +11 -0
  134. package/dist/orchestration/index.d.ts.map +1 -0
  135. package/dist/orchestration/index.js +10 -0
  136. package/dist/orchestration/index.js.map +1 -0
  137. package/dist/orchestration/memory-plane-types.d.ts +23 -0
  138. package/dist/orchestration/memory-plane-types.d.ts.map +1 -0
  139. package/dist/orchestration/memory-plane-types.js +5 -0
  140. package/dist/orchestration/memory-plane-types.js.map +1 -0
  141. package/dist/orchestration/memory-plane.d.ts +41 -0
  142. package/dist/orchestration/memory-plane.d.ts.map +1 -0
  143. package/dist/orchestration/memory-plane.js +84 -0
  144. package/dist/orchestration/memory-plane.js.map +1 -0
  145. package/dist/orchestration/orchestration-client.d.ts +104 -0
  146. package/dist/orchestration/orchestration-client.d.ts.map +1 -0
  147. package/dist/orchestration/orchestration-client.js +94 -0
  148. package/dist/orchestration/orchestration-client.js.map +1 -0
  149. package/dist/orchestration/orchestration-runtime.d.ts +26 -0
  150. package/dist/orchestration/orchestration-runtime.d.ts.map +1 -0
  151. package/dist/orchestration/orchestration-runtime.js +78 -0
  152. package/dist/orchestration/orchestration-runtime.js.map +1 -0
  153. package/dist/orchestration/orchestration-types.d.ts +124 -0
  154. package/dist/orchestration/orchestration-types.d.ts.map +1 -0
  155. package/dist/orchestration/orchestration-types.js +7 -0
  156. package/dist/orchestration/orchestration-types.js.map +1 -0
  157. package/dist/proxy/anthropic-to-openrouter.js.map +1 -1
  158. package/dist/proxy/anthropic-to-requesty.js.map +1 -1
  159. package/dist/proxy/quic-proxy.d.ts +0 -1
  160. package/dist/proxy/quic-proxy.d.ts.map +1 -1
  161. package/dist/proxy/quic-proxy.js +2 -2
  162. package/dist/proxy/quic-proxy.js.map +1 -1
  163. package/dist/reasoningbank/AdvancedMemory.js +1 -1
  164. package/dist/reasoningbank/AdvancedMemory.js.map +1 -1
  165. package/dist/reasoningbank/HybridBackend.d.ts.map +1 -1
  166. package/dist/reasoningbank/HybridBackend.js +2 -5
  167. package/dist/reasoningbank/HybridBackend.js.map +1 -1
  168. package/dist/reasoningbank/backend-selector.d.ts +10 -0
  169. package/dist/reasoningbank/backend-selector.d.ts.map +1 -1
  170. package/dist/reasoningbank/backend-selector.js +45 -5
  171. package/dist/reasoningbank/backend-selector.js.map +1 -1
  172. package/dist/reasoningbank/core/consolidate.d.ts.map +1 -1
  173. package/dist/reasoningbank/core/consolidate.js +113 -45
  174. package/dist/reasoningbank/core/consolidate.js.map +1 -1
  175. package/dist/reasoningbank/index-new.d.ts +1 -6
  176. package/dist/reasoningbank/index-new.d.ts.map +1 -1
  177. package/dist/reasoningbank/index-new.js +1 -6
  178. package/dist/reasoningbank/index-new.js.map +1 -1
  179. package/dist/reasoningbank/index.d.ts +6 -0
  180. package/dist/reasoningbank/index.d.ts.map +1 -1
  181. package/dist/reasoningbank/index.js +6 -13
  182. package/dist/reasoningbank/index.js.map +1 -1
  183. package/dist/reasoningbank/utils/embeddings.d.ts +1 -0
  184. package/dist/reasoningbank/utils/embeddings.d.ts.map +1 -1
  185. package/dist/reasoningbank/utils/embeddings.js +53 -26
  186. package/dist/reasoningbank/utils/embeddings.js.map +1 -1
  187. package/dist/router/index.d.ts +2 -1
  188. package/dist/router/index.d.ts.map +1 -1
  189. package/dist/router/index.js +1 -0
  190. package/dist/router/index.js.map +1 -1
  191. package/dist/router/providers/ollama.d.ts +20 -0
  192. package/dist/router/providers/ollama.d.ts.map +1 -0
  193. package/dist/router/providers/ollama.js +242 -0
  194. package/dist/router/providers/ollama.js.map +1 -0
  195. package/dist/router/providers/onnx-local-optimized.d.ts +2 -0
  196. package/dist/router/providers/onnx-local-optimized.d.ts.map +1 -1
  197. package/dist/router/providers/onnx-local-optimized.js +10 -0
  198. package/dist/router/providers/onnx-local-optimized.js.map +1 -1
  199. package/dist/router/providers/onnx-local.d.ts +1 -0
  200. package/dist/router/providers/onnx-local.d.ts.map +1 -1
  201. package/dist/router/providers/onnx-local.js +22 -5
  202. package/dist/router/providers/onnx-local.js.map +1 -1
  203. package/dist/router/router.d.ts.map +1 -1
  204. package/dist/router/router.js +39 -23
  205. package/dist/router/router.js.map +1 -1
  206. package/dist/sdk/index.d.ts +2 -1
  207. package/dist/sdk/index.d.ts.map +1 -1
  208. package/dist/sdk/index.js +3 -1
  209. package/dist/sdk/index.js.map +1 -1
  210. package/dist/services/embedding-service.js.map +1 -1
  211. package/dist/services/sona-agent-training.d.ts +1 -0
  212. package/dist/services/sona-agent-training.d.ts.map +1 -1
  213. package/dist/services/sona-agent-training.js.map +1 -1
  214. package/dist/services/sona-agentdb-integration.d.ts.map +1 -1
  215. package/dist/services/sona-agentdb-integration.js +9 -6
  216. package/dist/services/sona-agentdb-integration.js.map +1 -1
  217. package/dist/services/sona-service.d.ts.map +1 -1
  218. package/dist/services/sona-service.js +6 -5
  219. package/dist/services/sona-service.js.map +1 -1
  220. package/dist/utils/cli.d.ts +1 -1
  221. package/dist/utils/cli.d.ts.map +1 -1
  222. package/dist/utils/cli.js +21 -0
  223. package/dist/utils/cli.js.map +1 -1
  224. package/dist/utils/index.d.ts +6 -0
  225. package/dist/utils/index.d.ts.map +1 -0
  226. package/dist/utils/index.js +6 -0
  227. package/dist/utils/index.js.map +1 -0
  228. package/dist/utils/model-cache.d.ts +61 -0
  229. package/dist/utils/model-cache.d.ts.map +1 -0
  230. package/dist/utils/model-cache.js +176 -0
  231. package/dist/utils/model-cache.js.map +1 -0
  232. package/dist/utils/suppress-warnings.d.ts +19 -0
  233. package/dist/utils/suppress-warnings.d.ts.map +1 -0
  234. package/dist/utils/suppress-warnings.js +59 -0
  235. package/dist/utils/suppress-warnings.js.map +1 -0
  236. package/dist/workers/consolidated-phases.d.ts +40 -0
  237. package/dist/workers/consolidated-phases.d.ts.map +1 -0
  238. package/dist/workers/consolidated-phases.js +497 -0
  239. package/dist/workers/consolidated-phases.js.map +1 -0
  240. package/dist/workers/custom-worker-config.d.ts +133 -0
  241. package/dist/workers/custom-worker-config.d.ts.map +1 -0
  242. package/dist/workers/custom-worker-config.js +215 -0
  243. package/dist/workers/custom-worker-config.js.map +1 -0
  244. package/dist/workers/custom-worker-factory.d.ts +89 -0
  245. package/dist/workers/custom-worker-factory.d.ts.map +1 -0
  246. package/dist/workers/custom-worker-factory.js +404 -0
  247. package/dist/workers/custom-worker-factory.js.map +1 -0
  248. package/dist/workers/dispatch-service.d.ts +123 -0
  249. package/dist/workers/dispatch-service.d.ts.map +1 -0
  250. package/dist/workers/dispatch-service.js +1024 -0
  251. package/dist/workers/dispatch-service.js.map +1 -0
  252. package/dist/workers/hooks-integration.d.ts +79 -0
  253. package/dist/workers/hooks-integration.d.ts.map +1 -0
  254. package/dist/workers/hooks-integration.js +286 -0
  255. package/dist/workers/hooks-integration.js.map +1 -0
  256. package/dist/workers/index.d.ts +42 -0
  257. package/dist/workers/index.d.ts.map +1 -0
  258. package/dist/workers/index.js +52 -0
  259. package/dist/workers/index.js.map +1 -0
  260. package/dist/workers/mcp-tools.d.ts +56 -0
  261. package/dist/workers/mcp-tools.d.ts.map +1 -0
  262. package/dist/workers/mcp-tools.js +359 -0
  263. package/dist/workers/mcp-tools.js.map +1 -0
  264. package/dist/workers/phase-executors.d.ts +22 -0
  265. package/dist/workers/phase-executors.d.ts.map +1 -0
  266. package/dist/workers/phase-executors.js +445 -0
  267. package/dist/workers/phase-executors.js.map +1 -0
  268. package/dist/workers/resource-governor.d.ts +75 -0
  269. package/dist/workers/resource-governor.d.ts.map +1 -0
  270. package/dist/workers/resource-governor.js +187 -0
  271. package/dist/workers/resource-governor.js.map +1 -0
  272. package/dist/workers/ruvector-integration.d.ts +163 -0
  273. package/dist/workers/ruvector-integration.d.ts.map +1 -0
  274. package/dist/workers/ruvector-integration.js +543 -0
  275. package/dist/workers/ruvector-integration.js.map +1 -0
  276. package/dist/workers/ruvector-native-integration.d.ts +91 -0
  277. package/dist/workers/ruvector-native-integration.d.ts.map +1 -0
  278. package/dist/workers/ruvector-native-integration.js +254 -0
  279. package/dist/workers/ruvector-native-integration.js.map +1 -0
  280. package/dist/workers/trigger-detector.d.ts +68 -0
  281. package/dist/workers/trigger-detector.d.ts.map +1 -0
  282. package/dist/workers/trigger-detector.js +281 -0
  283. package/dist/workers/trigger-detector.js.map +1 -0
  284. package/dist/workers/types.d.ts +145 -0
  285. package/dist/workers/types.d.ts.map +1 -0
  286. package/dist/workers/types.js +6 -0
  287. package/dist/workers/types.js.map +1 -0
  288. package/dist/workers/worker-agent-integration.d.ts +140 -0
  289. package/dist/workers/worker-agent-integration.d.ts.map +1 -0
  290. package/dist/workers/worker-agent-integration.js +471 -0
  291. package/dist/workers/worker-agent-integration.js.map +1 -0
  292. package/dist/workers/worker-benchmarks.d.ts +88 -0
  293. package/dist/workers/worker-benchmarks.d.ts.map +1 -0
  294. package/dist/workers/worker-benchmarks.js +452 -0
  295. package/dist/workers/worker-benchmarks.js.map +1 -0
  296. package/dist/workers/worker-registry.d.ts +85 -0
  297. package/dist/workers/worker-registry.d.ts.map +1 -0
  298. package/dist/workers/worker-registry.js +547 -0
  299. package/dist/workers/worker-registry.js.map +1 -0
  300. package/docs/embeddings/EMBEDDING_GEOMETRY.md +935 -0
  301. package/package.json +27 -9
  302. package/scripts/postinstall.js +45 -4
  303. package/wasm/reasoningbank/reasoningbank_wasm.js +1 -1
  304. package/wasm/reasoningbank/reasoningbank_wasm_bg.js +54 -54
  305. package/wasm/reasoningbank/reasoningbank_wasm_bg.wasm +0 -0
  306. package/wasm/reasoningbank/reasoningbank_wasm_bg.wasm.d.ts +4 -3
  307. package/.claude/agents/test-neural.md +0 -14
  308. /package/.claude/agents/analysis/{code-review/analyze-code-quality.md → analyze-code-quality.md} +0 -0
  309. /package/.claude/agents/architecture/{system-design/arch-system-design.md → arch-system-design.md} +0 -0
  310. /package/.claude/agents/data/{ml/data-ml-model.md → data-ml-model.md} +0 -0
  311. /package/.claude/agents/development/{backend/dev-backend-api.md → dev-backend-api.md} +0 -0
  312. /package/.claude/agents/devops/{ci-cd/ops-cicd-github.md → ops-cicd-github.md} +0 -0
  313. /package/.claude/agents/documentation/{api-docs/docs-api-openapi.md → docs-api-openapi.md} +0 -0
  314. /package/.claude/agents/specialized/{mobile/spec-mobile-react-native.md → spec-mobile-react-native.md} +0 -0
  315. /package/.claude/agents/testing/{validation/production-validator.md → production-validator.md} +0 -0
  316. /package/.claude/agents/testing/{unit/tdd-london-swarm.md → tdd-london-swarm.md} +0 -0
@@ -0,0 +1,187 @@
1
+ /**
2
+ * ResourceGovernor - Prevents resource exhaustion for background workers
3
+ */
4
+ import { getWorkerRegistry } from './worker-registry.js';
5
+ import { TRIGGER_CONFIGS } from './trigger-detector.js';
6
+ const DEFAULT_LIMITS = {
7
+ maxConcurrentWorkers: 10,
8
+ maxPerTrigger: 3,
9
+ maxHeapMB: 1024,
10
+ workerTimeout: 600000 // 10 minutes
11
+ };
12
+ export class ResourceGovernor {
13
+ limits;
14
+ activeWorkers = new Map();
15
+ timeouts = new Map();
16
+ constructor(limits) {
17
+ this.limits = { ...DEFAULT_LIMITS, ...limits };
18
+ }
19
+ /**
20
+ * Check if a new worker can be spawned
21
+ */
22
+ canSpawn(trigger) {
23
+ // Check total worker count
24
+ if (this.activeWorkers.size >= this.limits.maxConcurrentWorkers) {
25
+ return {
26
+ allowed: false,
27
+ reason: `Max workers (${this.limits.maxConcurrentWorkers}) reached`
28
+ };
29
+ }
30
+ // Check workers of same type
31
+ const sameType = Array.from(this.activeWorkers.values())
32
+ .filter(w => w.trigger === trigger);
33
+ if (sameType.length >= this.limits.maxPerTrigger) {
34
+ return {
35
+ allowed: false,
36
+ reason: `Max ${trigger} workers (${this.limits.maxPerTrigger}) reached`
37
+ };
38
+ }
39
+ // Check memory usage
40
+ const memUsage = process.memoryUsage();
41
+ const heapUsedMB = memUsage.heapUsed / (1024 * 1024);
42
+ if (heapUsedMB > this.limits.maxHeapMB) {
43
+ return {
44
+ allowed: false,
45
+ reason: `Memory limit exceeded: ${heapUsedMB.toFixed(0)}MB > ${this.limits.maxHeapMB}MB`
46
+ };
47
+ }
48
+ return { allowed: true };
49
+ }
50
+ /**
51
+ * Register a new worker
52
+ */
53
+ register(worker) {
54
+ this.activeWorkers.set(worker.id, worker);
55
+ // Get timeout from trigger config or use default
56
+ const config = TRIGGER_CONFIGS.get(worker.trigger);
57
+ const timeout = config?.timeout || this.limits.workerTimeout;
58
+ // Set timeout for cleanup
59
+ const timer = setTimeout(() => {
60
+ const w = this.activeWorkers.get(worker.id);
61
+ if (w && w.status !== 'complete' && w.status !== 'failed') {
62
+ // Mark as timeout in registry
63
+ const registry = getWorkerRegistry();
64
+ registry.updateStatus(worker.id, 'timeout', {
65
+ error: `Worker exceeded timeout of ${timeout}ms`
66
+ });
67
+ this.unregister(worker.id);
68
+ }
69
+ }, timeout);
70
+ this.timeouts.set(worker.id, timer);
71
+ }
72
+ /**
73
+ * Update worker in tracking
74
+ */
75
+ update(workerId, updates) {
76
+ const worker = this.activeWorkers.get(workerId);
77
+ if (worker) {
78
+ this.activeWorkers.set(workerId, { ...worker, ...updates });
79
+ }
80
+ }
81
+ /**
82
+ * Unregister a worker
83
+ */
84
+ unregister(workerId) {
85
+ this.activeWorkers.delete(workerId);
86
+ const timer = this.timeouts.get(workerId);
87
+ if (timer) {
88
+ clearTimeout(timer);
89
+ this.timeouts.delete(workerId);
90
+ }
91
+ }
92
+ /**
93
+ * Get resource statistics
94
+ */
95
+ getStats() {
96
+ const workersByType = {};
97
+ for (const worker of this.activeWorkers.values()) {
98
+ workersByType[worker.trigger] = (workersByType[worker.trigger] || 0) + 1;
99
+ }
100
+ return {
101
+ activeWorkers: this.activeWorkers.size,
102
+ workersByType,
103
+ memoryUsage: process.memoryUsage(),
104
+ uptime: process.uptime()
105
+ };
106
+ }
107
+ /**
108
+ * Get all active workers
109
+ */
110
+ getActiveWorkers() {
111
+ return Array.from(this.activeWorkers.values());
112
+ }
113
+ /**
114
+ * Get a specific active worker
115
+ */
116
+ getWorker(workerId) {
117
+ return this.activeWorkers.get(workerId);
118
+ }
119
+ /**
120
+ * Check if a worker is active
121
+ */
122
+ isActive(workerId) {
123
+ return this.activeWorkers.has(workerId);
124
+ }
125
+ /**
126
+ * Get current limits
127
+ */
128
+ getLimits() {
129
+ return { ...this.limits };
130
+ }
131
+ /**
132
+ * Update limits
133
+ */
134
+ setLimits(limits) {
135
+ this.limits = { ...this.limits, ...limits };
136
+ }
137
+ /**
138
+ * Force cleanup of a worker
139
+ */
140
+ forceCleanup(workerId) {
141
+ if (!this.activeWorkers.has(workerId)) {
142
+ return false;
143
+ }
144
+ const registry = getWorkerRegistry();
145
+ registry.updateStatus(workerId, 'cancelled', {
146
+ error: 'Force cancelled by resource governor'
147
+ });
148
+ this.unregister(workerId);
149
+ return true;
150
+ }
151
+ /**
152
+ * Cleanup all workers (for shutdown)
153
+ */
154
+ cleanupAll() {
155
+ for (const workerId of this.activeWorkers.keys()) {
156
+ this.forceCleanup(workerId);
157
+ }
158
+ }
159
+ /**
160
+ * Get slot availability info
161
+ */
162
+ getAvailability() {
163
+ const stats = this.getStats();
164
+ const byTrigger = {};
165
+ for (const trigger of TRIGGER_CONFIGS.keys()) {
166
+ byTrigger[trigger] = {
167
+ used: stats.workersByType[trigger] || 0,
168
+ max: this.limits.maxPerTrigger
169
+ };
170
+ }
171
+ return {
172
+ totalSlots: this.limits.maxConcurrentWorkers,
173
+ usedSlots: stats.activeWorkers,
174
+ availableSlots: this.limits.maxConcurrentWorkers - stats.activeWorkers,
175
+ byTrigger
176
+ };
177
+ }
178
+ }
179
+ // Singleton instance
180
+ let instance = null;
181
+ export function getResourceGovernor() {
182
+ if (!instance) {
183
+ instance = new ResourceGovernor();
184
+ }
185
+ return instance;
186
+ }
187
+ //# sourceMappingURL=resource-governor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-governor.js","sourceRoot":"","sources":["../../src/workers/resource-governor.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * ResourceGovernor - Prevents resource exhaustion for background workers\n */\n\nimport { WorkerId, WorkerTrigger, WorkerInfo, ResourceLimits, ResourceStats } from './types.js';\nimport { getWorkerRegistry } from './worker-registry.js';\nimport { TRIGGER_CONFIGS } from './trigger-detector.js';\n\nconst DEFAULT_LIMITS: ResourceLimits = {\n maxConcurrentWorkers: 10,\n maxPerTrigger: 3,\n maxHeapMB: 1024,\n workerTimeout: 600000 // 10 minutes\n};\n\nexport class ResourceGovernor {\n private limits: ResourceLimits;\n private activeWorkers: Map<WorkerId, WorkerInfo> = new Map();\n private timeouts: Map<WorkerId, NodeJS.Timeout> = new Map();\n\n constructor(limits?: Partial<ResourceLimits>) {\n this.limits = { ...DEFAULT_LIMITS, ...limits };\n }\n\n /**\n * Check if a new worker can be spawned\n */\n canSpawn(trigger: WorkerTrigger): { allowed: boolean; reason?: string } {\n // Check total worker count\n if (this.activeWorkers.size >= this.limits.maxConcurrentWorkers) {\n return {\n allowed: false,\n reason: `Max workers (${this.limits.maxConcurrentWorkers}) reached`\n };\n }\n\n // Check workers of same type\n const sameType = Array.from(this.activeWorkers.values())\n .filter(w => w.trigger === trigger);\n\n if (sameType.length >= this.limits.maxPerTrigger) {\n return {\n allowed: false,\n reason: `Max ${trigger} workers (${this.limits.maxPerTrigger}) reached`\n };\n }\n\n // Check memory usage\n const memUsage = process.memoryUsage();\n const heapUsedMB = memUsage.heapUsed / (1024 * 1024);\n if (heapUsedMB > this.limits.maxHeapMB) {\n return {\n allowed: false,\n reason: `Memory limit exceeded: ${heapUsedMB.toFixed(0)}MB > ${this.limits.maxHeapMB}MB`\n };\n }\n\n return { allowed: true };\n }\n\n /**\n * Register a new worker\n */\n register(worker: WorkerInfo): void {\n this.activeWorkers.set(worker.id, worker);\n\n // Get timeout from trigger config or use default\n const config = TRIGGER_CONFIGS.get(worker.trigger);\n const timeout = config?.timeout || this.limits.workerTimeout;\n\n // Set timeout for cleanup\n const timer = setTimeout(() => {\n const w = this.activeWorkers.get(worker.id);\n if (w && w.status !== 'complete' && w.status !== 'failed') {\n // Mark as timeout in registry\n const registry = getWorkerRegistry();\n registry.updateStatus(worker.id, 'timeout', {\n error: `Worker exceeded timeout of ${timeout}ms`\n });\n this.unregister(worker.id);\n }\n }, timeout);\n\n this.timeouts.set(worker.id, timer);\n }\n\n /**\n * Update worker in tracking\n */\n update(workerId: WorkerId, updates: Partial<WorkerInfo>): void {\n const worker = this.activeWorkers.get(workerId);\n if (worker) {\n this.activeWorkers.set(workerId, { ...worker, ...updates });\n }\n }\n\n /**\n * Unregister a worker\n */\n unregister(workerId: WorkerId): void {\n this.activeWorkers.delete(workerId);\n\n const timer = this.timeouts.get(workerId);\n if (timer) {\n clearTimeout(timer);\n this.timeouts.delete(workerId);\n }\n }\n\n /**\n * Get resource statistics\n */\n getStats(): ResourceStats {\n const workersByType: Record<string, number> = {};\n\n for (const worker of this.activeWorkers.values()) {\n workersByType[worker.trigger] = (workersByType[worker.trigger] || 0) + 1;\n }\n\n return {\n activeWorkers: this.activeWorkers.size,\n workersByType,\n memoryUsage: process.memoryUsage(),\n uptime: process.uptime()\n };\n }\n\n /**\n * Get all active workers\n */\n getActiveWorkers(): WorkerInfo[] {\n return Array.from(this.activeWorkers.values());\n }\n\n /**\n * Get a specific active worker\n */\n getWorker(workerId: WorkerId): WorkerInfo | undefined {\n return this.activeWorkers.get(workerId);\n }\n\n /**\n * Check if a worker is active\n */\n isActive(workerId: WorkerId): boolean {\n return this.activeWorkers.has(workerId);\n }\n\n /**\n * Get current limits\n */\n getLimits(): ResourceLimits {\n return { ...this.limits };\n }\n\n /**\n * Update limits\n */\n setLimits(limits: Partial<ResourceLimits>): void {\n this.limits = { ...this.limits, ...limits };\n }\n\n /**\n * Force cleanup of a worker\n */\n forceCleanup(workerId: WorkerId): boolean {\n if (!this.activeWorkers.has(workerId)) {\n return false;\n }\n\n const registry = getWorkerRegistry();\n registry.updateStatus(workerId, 'cancelled', {\n error: 'Force cancelled by resource governor'\n });\n this.unregister(workerId);\n return true;\n }\n\n /**\n * Cleanup all workers (for shutdown)\n */\n cleanupAll(): void {\n for (const workerId of this.activeWorkers.keys()) {\n this.forceCleanup(workerId);\n }\n }\n\n /**\n * Get slot availability info\n */\n getAvailability(): {\n totalSlots: number;\n usedSlots: number;\n availableSlots: number;\n byTrigger: Record<string, { used: number; max: number }>;\n } {\n const stats = this.getStats();\n const byTrigger: Record<string, { used: number; max: number }> = {};\n\n for (const trigger of TRIGGER_CONFIGS.keys()) {\n byTrigger[trigger] = {\n used: stats.workersByType[trigger] || 0,\n max: this.limits.maxPerTrigger\n };\n }\n\n return {\n totalSlots: this.limits.maxConcurrentWorkers,\n usedSlots: stats.activeWorkers,\n availableSlots: this.limits.maxConcurrentWorkers - stats.activeWorkers,\n byTrigger\n };\n }\n}\n\n// Singleton instance\nlet instance: ResourceGovernor | null = null;\n\nexport function getResourceGovernor(): ResourceGovernor {\n if (!instance) {\n instance = new ResourceGovernor();\n }\n return instance;\n}\n"]}
@@ -0,0 +1,163 @@
1
+ /**
2
+ * RuVector Integration for Background Workers
3
+ *
4
+ * Connects workers to the full RuVector ecosystem:
5
+ * - SONA: Self-learning trajectory tracking
6
+ * - ReasoningBank: Pattern storage and memory retrieval
7
+ * - HNSW: Vector indexing for fast semantic search
8
+ * - Intelligence Layer: Unified pattern recognition
9
+ */
10
+ import { EventEmitter } from 'events';
11
+ import { WorkerContext, WorkerResults, WorkerTrigger } from './types.js';
12
+ /**
13
+ * RuVector integration configuration
14
+ */
15
+ export interface RuVectorWorkerConfig {
16
+ /** Enable SONA trajectory tracking (default: true) */
17
+ enableSona: boolean;
18
+ /** Enable ReasoningBank pattern storage (default: true) */
19
+ enableReasoningBank: boolean;
20
+ /** Enable HNSW vector indexing (default: true) */
21
+ enableHnsw: boolean;
22
+ /** SONA learning profile */
23
+ sonaProfile: 'real-time' | 'batch' | 'balanced';
24
+ /** Embedding dimension (default: 384) */
25
+ embeddingDim: number;
26
+ /** HNSW parameters */
27
+ hnswM: number;
28
+ hnswEfConstruction: number;
29
+ /** Quality threshold for pattern storage (0-1) */
30
+ qualityThreshold: number;
31
+ }
32
+ /**
33
+ * Worker trajectory step
34
+ */
35
+ export interface WorkerStep {
36
+ phase: string;
37
+ activations: number[];
38
+ duration: number;
39
+ memoryDeposits: number;
40
+ successRate: number;
41
+ }
42
+ /**
43
+ * Worker learning result
44
+ */
45
+ export interface WorkerLearningResult {
46
+ trajectoryId: string;
47
+ qualityScore: number;
48
+ patternsLearned: number;
49
+ memoryDeposits: string[];
50
+ sonaAdaptation: boolean;
51
+ }
52
+ /**
53
+ * RuVector Worker Integration Service
54
+ * Provides unified access to RuVector capabilities for background workers
55
+ */
56
+ export declare class RuVectorWorkerIntegration extends EventEmitter {
57
+ private config;
58
+ private sonaService;
59
+ private reasoningBank;
60
+ private ruvectorCore;
61
+ private intelligenceStore;
62
+ private onnxEmbeddings;
63
+ private initialized;
64
+ private activeTrajectories;
65
+ constructor(config?: Partial<RuVectorWorkerConfig>);
66
+ /**
67
+ * Initialize RuVector services lazily
68
+ * Uses unified 'ruvector' package which includes SONA, VectorDB, embeddings
69
+ * Falls back gracefully if native modules aren't available
70
+ */
71
+ initialize(): Promise<boolean>;
72
+ /**
73
+ * Start tracking a worker trajectory
74
+ */
75
+ startTrajectory(workerId: string, trigger: WorkerTrigger, topic: string | null): Promise<string>;
76
+ /**
77
+ * Record a worker phase step
78
+ */
79
+ recordStep(trajectoryId: string, phase: string, metrics: {
80
+ duration: number;
81
+ memoryDeposits: number;
82
+ successRate: number;
83
+ data?: Record<string, unknown>;
84
+ }): Promise<void>;
85
+ /**
86
+ * Complete trajectory and trigger learning
87
+ */
88
+ completeTrajectory(trajectoryId: string, results: WorkerResults): Promise<WorkerLearningResult>;
89
+ /**
90
+ * Find relevant patterns for a worker task
91
+ */
92
+ findRelevantPatterns(trigger: WorkerTrigger, topic: string | null, limit?: number): Promise<Array<{
93
+ key: string;
94
+ similarity: number;
95
+ pattern: Record<string, unknown>;
96
+ }>>;
97
+ /**
98
+ * Store pattern in ReasoningBank with distillation
99
+ */
100
+ private storePattern;
101
+ /**
102
+ * Index pattern in HNSW for semantic search
103
+ */
104
+ private indexPattern;
105
+ /**
106
+ * Search HNSW index
107
+ */
108
+ private searchHnsw;
109
+ /**
110
+ * Generate embedding for text using ONNX WASM (real semantic embeddings)
111
+ */
112
+ private generateEmbedding;
113
+ /**
114
+ * Simple hash-based embedding fallback
115
+ */
116
+ private simpleEmbedding;
117
+ /**
118
+ * Generate activations for a phase
119
+ */
120
+ private generateActivations;
121
+ /**
122
+ * Calculate quality score for a trajectory
123
+ */
124
+ private calculateQualityScore;
125
+ /**
126
+ * Get integration stats
127
+ */
128
+ getStats(): {
129
+ initialized: boolean;
130
+ modules: {
131
+ sona: boolean;
132
+ reasoningBank: boolean;
133
+ hnsw: boolean;
134
+ intelligence: boolean;
135
+ onnxEmbeddings: boolean;
136
+ };
137
+ activeTrajectories: number;
138
+ config: RuVectorWorkerConfig;
139
+ };
140
+ /**
141
+ * Cleanup resources
142
+ */
143
+ cleanup(): Promise<void>;
144
+ }
145
+ export declare function getRuVectorWorkerIntegration(config?: Partial<RuVectorWorkerConfig>): RuVectorWorkerIntegration;
146
+ /**
147
+ * Create worker context with RuVector integration
148
+ */
149
+ export declare function createRuVectorWorkerContext(context: WorkerContext): Promise<{
150
+ trajectoryId: string;
151
+ recordStep: (phase: string, metrics: {
152
+ duration: number;
153
+ memoryDeposits: number;
154
+ successRate: number;
155
+ }) => Promise<void>;
156
+ complete: (results: WorkerResults) => Promise<WorkerLearningResult>;
157
+ findPatterns: (limit?: number) => Promise<Array<{
158
+ key: string;
159
+ similarity: number;
160
+ pattern: Record<string, unknown>;
161
+ }>>;
162
+ }>;
163
+ //# sourceMappingURL=ruvector-integration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ruvector-integration.d.ts","sourceRoot":"","sources":["../../src/workers/ruvector-integration.ts"],"names":[],"mappings":"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"}