kynjal-cli 3.1.3 → 4.0.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.
Files changed (566) hide show
  1. package/.claude/agents/core/coder.md +1 -1
  2. package/.claude/agents/core/planner.md +2 -2
  3. package/.claude/agents/core/researcher.md +1 -1
  4. package/.claude/agents/core/reviewer.md +1 -1
  5. package/.claude/agents/core/tester.md +1 -1
  6. package/.claude/agents/data/data-ml-model.md +4 -4
  7. package/.claude/agents/development/dev-backend-api.md +4 -4
  8. package/.claude/agents/documentation/docs-api-openapi.md +4 -4
  9. package/.claude/agents/github/code-review-swarm.md +2 -2
  10. package/.claude/agents/github/issue-tracker.md +2 -2
  11. package/.claude/agents/github/pr-manager.md +2 -2
  12. package/.claude/agents/github/release-manager.md +2 -2
  13. package/.claude/agents/github/workflow-automation.md +2 -2
  14. package/.claude/agents/sparc/architecture.md +3 -3
  15. package/.claude/agents/sparc/pseudocode.md +2 -2
  16. package/.claude/agents/sparc/refinement.md +3 -3
  17. package/.claude/agents/sparc/specification.md +2 -2
  18. package/.claude/agents/swarm/adaptive-coordinator.md +1 -1
  19. package/.claude/agents/swarm/hierarchical-coordinator.md +1 -1
  20. package/.claude/agents/swarm/mesh-coordinator.md +1 -1
  21. package/.claude/agents/templates/base-template-generator.md +25 -4
  22. package/.claude/agents/templates/sparc-coordinator.md +3 -3
  23. package/.claude/helpers/auto-commit.sh +1 -1
  24. package/.claude/helpers/auto-memory-hook.mjs +27 -9
  25. package/.claude/helpers/hook-handler.cjs +58 -18
  26. package/.claude/helpers/statusline.cjs +14 -33
  27. package/.claude/helpers/statusline.js +3 -3
  28. package/.claude/settings.json +9 -9
  29. package/.claude/skills/reasoningbank-intelligence/SKILL.md +2 -2
  30. package/.claude/skills/swarm-orchestration/SKILL.md +1 -1
  31. package/README.md +383 -170
  32. package/bin/cli.js +6 -6
  33. package/bin/mcp-server.js +1 -1
  34. package/bin/preinstall.cjs +2 -0
  35. package/dist/src/appliance/gguf-engine.js +664 -0
  36. package/dist/src/appliance/gguf-engine.js.map +1 -0
  37. package/dist/src/appliance/ruvllm-bridge.js +492 -0
  38. package/dist/src/appliance/ruvllm-bridge.js.map +1 -0
  39. package/dist/src/appliance/rvfa-builder.js +383 -0
  40. package/dist/src/appliance/rvfa-builder.js.map +1 -0
  41. package/dist/src/appliance/rvfa-distribution.js +533 -0
  42. package/dist/src/appliance/rvfa-distribution.js.map +1 -0
  43. package/dist/src/appliance/rvfa-format.js +465 -0
  44. package/dist/src/appliance/rvfa-format.js.map +1 -0
  45. package/dist/src/appliance/rvfa-runner.js +373 -0
  46. package/dist/src/appliance/rvfa-runner.js.map +1 -0
  47. package/dist/src/appliance/rvfa-signing.js +469 -0
  48. package/dist/src/appliance/rvfa-signing.js.map +1 -0
  49. package/dist/src/benchmarks/pretrain/index.js +542 -331
  50. package/dist/src/benchmarks/pretrain/index.js.map +1 -1
  51. package/dist/src/commands/agent.d.ts.map +1 -1
  52. package/dist/src/commands/agent.js +725 -502
  53. package/dist/src/commands/agent.js.map +1 -1
  54. package/dist/src/commands/analyze.js +1548 -1218
  55. package/dist/src/commands/analyze.js.map +1 -1
  56. package/dist/src/commands/appliance-advanced.d.ts +9 -0
  57. package/dist/src/commands/appliance-advanced.d.ts.map +1 -0
  58. package/dist/src/commands/appliance-advanced.js +324 -0
  59. package/dist/src/commands/appliance-advanced.js.map +1 -0
  60. package/dist/src/commands/appliance.d.ts +8 -0
  61. package/dist/src/commands/appliance.d.ts.map +1 -0
  62. package/dist/src/commands/appliance.js +581 -0
  63. package/dist/src/commands/appliance.js.map +1 -0
  64. package/dist/src/commands/benchmark.js +523 -372
  65. package/dist/src/commands/benchmark.js.map +1 -1
  66. package/dist/src/commands/claims.js +364 -274
  67. package/dist/src/commands/claims.js.map +1 -1
  68. package/dist/src/commands/cleanup.d.ts +13 -0
  69. package/dist/src/commands/cleanup.d.ts.map +1 -0
  70. package/dist/src/commands/cleanup.js +262 -0
  71. package/dist/src/commands/cleanup.js.map +1 -0
  72. package/dist/src/commands/completions.js +118 -477
  73. package/dist/src/commands/completions.js.map +1 -1
  74. package/dist/src/commands/config.js +303 -237
  75. package/dist/src/commands/config.js.map +1 -1
  76. package/dist/src/commands/daemon.d.ts.map +1 -1
  77. package/dist/src/commands/daemon.js +597 -425
  78. package/dist/src/commands/daemon.js.map +1 -1
  79. package/dist/src/commands/deployment.js +275 -194
  80. package/dist/src/commands/deployment.js.map +1 -1
  81. package/dist/src/commands/doctor.d.ts.map +1 -1
  82. package/dist/src/commands/doctor.js +690 -460
  83. package/dist/src/commands/doctor.js.map +1 -1
  84. package/dist/src/commands/embeddings.js +1543 -1293
  85. package/dist/src/commands/embeddings.js.map +1 -1
  86. package/dist/src/commands/guidance.js +596 -449
  87. package/dist/src/commands/guidance.js.map +1 -1
  88. package/dist/src/commands/hive-mind.js +938 -854
  89. package/dist/src/commands/hive-mind.js.map +1 -1
  90. package/dist/src/commands/hooks.d.ts.map +1 -1
  91. package/dist/src/commands/hooks.js +3677 -2570
  92. package/dist/src/commands/hooks.js.map +1 -1
  93. package/dist/src/commands/index.js +322 -122
  94. package/dist/src/commands/index.js.map +1 -1
  95. package/dist/src/commands/init.d.ts +1 -1
  96. package/dist/src/commands/init.d.ts.map +1 -1
  97. package/dist/src/commands/init.js +943 -787
  98. package/dist/src/commands/init.js.map +1 -1
  99. package/dist/src/commands/issues.js +558 -383
  100. package/dist/src/commands/issues.js.map +1 -1
  101. package/dist/src/commands/mcp.d.ts.map +1 -1
  102. package/dist/src/commands/mcp.js +605 -475
  103. package/dist/src/commands/mcp.js.map +1 -1
  104. package/dist/src/commands/memory.d.ts.map +1 -1
  105. package/dist/src/commands/memory.js +1031 -814
  106. package/dist/src/commands/memory.js.map +1 -1
  107. package/dist/src/commands/migrate.js +347 -282
  108. package/dist/src/commands/migrate.js.map +1 -1
  109. package/dist/src/commands/neural.d.ts.map +1 -1
  110. package/dist/src/commands/neural.js +1563 -1283
  111. package/dist/src/commands/neural.js.map +1 -1
  112. package/dist/src/commands/performance.js +643 -497
  113. package/dist/src/commands/performance.js.map +1 -1
  114. package/dist/src/commands/plugins.js +841 -668
  115. package/dist/src/commands/plugins.js.map +1 -1
  116. package/dist/src/commands/process.js +447 -392
  117. package/dist/src/commands/process.js.map +1 -1
  118. package/dist/src/commands/progress.js +256 -162
  119. package/dist/src/commands/progress.js.map +1 -1
  120. package/dist/src/commands/providers.js +220 -150
  121. package/dist/src/commands/providers.js.map +1 -1
  122. package/dist/src/commands/route.js +665 -520
  123. package/dist/src/commands/route.js.map +1 -1
  124. package/dist/src/commands/ruvector/backup.js +651 -505
  125. package/dist/src/commands/ruvector/backup.js.map +1 -1
  126. package/dist/src/commands/ruvector/benchmark.js +401 -349
  127. package/dist/src/commands/ruvector/benchmark.js.map +1 -1
  128. package/dist/src/commands/ruvector/import.js +267 -225
  129. package/dist/src/commands/ruvector/import.js.map +1 -1
  130. package/dist/src/commands/ruvector/index.js +75 -37
  131. package/dist/src/commands/ruvector/index.js.map +1 -1
  132. package/dist/src/commands/ruvector/init.js +359 -336
  133. package/dist/src/commands/ruvector/init.js.map +1 -1
  134. package/dist/src/commands/ruvector/migrate.js +322 -335
  135. package/dist/src/commands/ruvector/migrate.js.map +1 -1
  136. package/dist/src/commands/ruvector/optimize.js +431 -375
  137. package/dist/src/commands/ruvector/optimize.js.map +1 -1
  138. package/dist/src/commands/ruvector/setup.js +117 -703
  139. package/dist/src/commands/ruvector/setup.js.map +1 -1
  140. package/dist/src/commands/ruvector/status.js +419 -364
  141. package/dist/src/commands/ruvector/status.js.map +1 -1
  142. package/dist/src/commands/security.d.ts.map +1 -1
  143. package/dist/src/commands/security.js +610 -456
  144. package/dist/src/commands/security.js.map +1 -1
  145. package/dist/src/commands/session.d.ts +1 -1
  146. package/dist/src/commands/session.js +627 -505
  147. package/dist/src/commands/session.js.map +1 -1
  148. package/dist/src/commands/start.d.ts +1 -1
  149. package/dist/src/commands/start.js +368 -271
  150. package/dist/src/commands/start.js.map +1 -1
  151. package/dist/src/commands/status.d.ts +1 -1
  152. package/dist/src/commands/status.d.ts.map +1 -1
  153. package/dist/src/commands/status.js +492 -379
  154. package/dist/src/commands/status.js.map +1 -1
  155. package/dist/src/commands/swarm.js +488 -408
  156. package/dist/src/commands/swarm.js.map +1 -1
  157. package/dist/src/commands/task.d.ts +1 -1
  158. package/dist/src/commands/task.js +539 -424
  159. package/dist/src/commands/task.js.map +1 -1
  160. package/dist/src/commands/transfer-store.js +412 -322
  161. package/dist/src/commands/transfer-store.js.map +1 -1
  162. package/dist/src/commands/update.js +291 -196
  163. package/dist/src/commands/update.js.map +1 -1
  164. package/dist/src/commands/workflow.js +486 -386
  165. package/dist/src/commands/workflow.js.map +1 -1
  166. package/dist/src/config-adapter.js +40 -39
  167. package/dist/src/config-adapter.js.map +1 -1
  168. package/dist/src/index.js +416 -312
  169. package/dist/src/index.js.map +1 -1
  170. package/dist/src/infrastructure/in-memory-repositories.js +507 -246
  171. package/dist/src/infrastructure/in-memory-repositories.js.map +1 -1
  172. package/dist/src/init/claudemd-generator.js +78 -368
  173. package/dist/src/init/claudemd-generator.js.map +1 -1
  174. package/dist/src/init/executor.js +1019 -1345
  175. package/dist/src/init/executor.js.map +1 -1
  176. package/dist/src/init/helpers-generator.js +60 -635
  177. package/dist/src/init/helpers-generator.js.map +1 -1
  178. package/dist/src/init/index.d.ts +1 -1
  179. package/dist/src/init/index.d.ts.map +1 -1
  180. package/dist/src/init/index.js +1 -1
  181. package/dist/src/init/index.js.map +1 -1
  182. package/dist/src/init/mcp-generator.d.ts +0 -1
  183. package/dist/src/init/mcp-generator.d.ts.map +1 -1
  184. package/dist/src/init/mcp-generator.js +62 -42
  185. package/dist/src/init/mcp-generator.js.map +1 -1
  186. package/dist/src/init/settings-generator.d.ts.map +1 -1
  187. package/dist/src/init/settings-generator.js +167 -100
  188. package/dist/src/init/settings-generator.js.map +1 -1
  189. package/dist/src/init/statusline-generator.d.ts +16 -8
  190. package/dist/src/init/statusline-generator.d.ts.map +1 -1
  191. package/dist/src/init/statusline-generator.js +20 -1300
  192. package/dist/src/init/statusline-generator.js.map +1 -1
  193. package/dist/src/init/types.d.ts +15 -5
  194. package/dist/src/init/types.d.ts.map +1 -1
  195. package/dist/src/init/types.js +66 -76
  196. package/dist/src/init/types.js.map +1 -1
  197. package/dist/src/mcp-client.js +130 -76
  198. package/dist/src/mcp-client.js.map +1 -1
  199. package/dist/src/mcp-server.js +758 -445
  200. package/dist/src/mcp-server.js.map +1 -1
  201. package/dist/src/mcp-tools/agent-tools.js +492 -391
  202. package/dist/src/mcp-tools/agent-tools.js.map +1 -1
  203. package/dist/src/mcp-tools/agentdb-tools.d.ts +30 -0
  204. package/dist/src/mcp-tools/agentdb-tools.d.ts.map +1 -0
  205. package/dist/src/mcp-tools/agentdb-tools.js +758 -0
  206. package/dist/src/mcp-tools/agentdb-tools.js.map +1 -0
  207. package/dist/src/mcp-tools/analyze-tools.js +236 -172
  208. package/dist/src/mcp-tools/analyze-tools.js.map +1 -1
  209. package/dist/src/mcp-tools/auto-install.js +142 -80
  210. package/dist/src/mcp-tools/auto-install.js.map +1 -1
  211. package/dist/src/mcp-tools/browser-tools.js +375 -252
  212. package/dist/src/mcp-tools/browser-tools.js.map +1 -1
  213. package/dist/src/mcp-tools/claims-tools.js +565 -473
  214. package/dist/src/mcp-tools/claims-tools.js.map +1 -1
  215. package/dist/src/mcp-tools/config-tools.d.ts.map +1 -1
  216. package/dist/src/mcp-tools/config-tools.js +284 -190
  217. package/dist/src/mcp-tools/config-tools.js.map +1 -1
  218. package/dist/src/mcp-tools/coordination-tools.d.ts.map +1 -1
  219. package/dist/src/mcp-tools/coordination-tools.js +600 -349
  220. package/dist/src/mcp-tools/coordination-tools.js.map +1 -1
  221. package/dist/src/mcp-tools/daa-tools.js +367 -289
  222. package/dist/src/mcp-tools/daa-tools.js.map +1 -1
  223. package/dist/src/mcp-tools/embeddings-tools.js +693 -582
  224. package/dist/src/mcp-tools/embeddings-tools.js.map +1 -1
  225. package/dist/src/mcp-tools/github-tools.js +312 -261
  226. package/dist/src/mcp-tools/github-tools.js.map +1 -1
  227. package/dist/src/mcp-tools/hive-mind-tools.d.ts.map +1 -1
  228. package/dist/src/mcp-tools/hive-mind-tools.js +718 -423
  229. package/dist/src/mcp-tools/hive-mind-tools.js.map +1 -1
  230. package/dist/src/mcp-tools/hooks-tools.d.ts.map +1 -1
  231. package/dist/src/mcp-tools/hooks-tools.js +2726 -1978
  232. package/dist/src/mcp-tools/hooks-tools.js.map +1 -1
  233. package/dist/src/mcp-tools/index.d.ts +2 -0
  234. package/dist/src/mcp-tools/index.d.ts.map +1 -1
  235. package/dist/src/mcp-tools/index.js +2 -0
  236. package/dist/src/mcp-tools/index.js.map +1 -1
  237. package/dist/src/mcp-tools/memory-tools.d.ts.map +1 -1
  238. package/dist/src/mcp-tools/memory-tools.js +514 -329
  239. package/dist/src/mcp-tools/memory-tools.js.map +1 -1
  240. package/dist/src/mcp-tools/neural-tools.d.ts.map +1 -1
  241. package/dist/src/mcp-tools/neural-tools.js +428 -326
  242. package/dist/src/mcp-tools/neural-tools.js.map +1 -1
  243. package/dist/src/mcp-tools/performance-tools.js +480 -420
  244. package/dist/src/mcp-tools/performance-tools.js.map +1 -1
  245. package/dist/src/mcp-tools/progress-tools.js +278 -204
  246. package/dist/src/mcp-tools/progress-tools.js.map +1 -1
  247. package/dist/src/mcp-tools/ruvllm-tools.d.ts +9 -0
  248. package/dist/src/mcp-tools/ruvllm-tools.d.ts.map +1 -0
  249. package/dist/src/mcp-tools/ruvllm-tools.js +399 -0
  250. package/dist/src/mcp-tools/ruvllm-tools.js.map +1 -0
  251. package/dist/src/mcp-tools/security-tools.js +429 -297
  252. package/dist/src/mcp-tools/security-tools.js.map +1 -1
  253. package/dist/src/mcp-tools/session-tools.js +234 -185
  254. package/dist/src/mcp-tools/session-tools.js.map +1 -1
  255. package/dist/src/mcp-tools/swarm-tools.d.ts +2 -1
  256. package/dist/src/mcp-tools/swarm-tools.d.ts.map +1 -1
  257. package/dist/src/mcp-tools/swarm-tools.js +303 -64
  258. package/dist/src/mcp-tools/swarm-tools.js.map +1 -1
  259. package/dist/src/mcp-tools/system-tools.d.ts.map +1 -1
  260. package/dist/src/mcp-tools/system-tools.js +352 -200
  261. package/dist/src/mcp-tools/system-tools.js.map +1 -1
  262. package/dist/src/mcp-tools/task-tools.d.ts.map +1 -1
  263. package/dist/src/mcp-tools/task-tools.js +357 -189
  264. package/dist/src/mcp-tools/task-tools.js.map +1 -1
  265. package/dist/src/mcp-tools/terminal-tools.js +196 -148
  266. package/dist/src/mcp-tools/terminal-tools.js.map +1 -1
  267. package/dist/src/mcp-tools/transfer-tools.js +333 -186
  268. package/dist/src/mcp-tools/transfer-tools.js.map +1 -1
  269. package/dist/src/mcp-tools/wasm-agent-tools.d.ts +9 -0
  270. package/dist/src/mcp-tools/wasm-agent-tools.d.ts.map +1 -0
  271. package/dist/src/mcp-tools/wasm-agent-tools.js +377 -0
  272. package/dist/src/mcp-tools/wasm-agent-tools.js.map +1 -0
  273. package/dist/src/mcp-tools/workflow-tools.d.ts.map +1 -1
  274. package/dist/src/mcp-tools/workflow-tools.js +471 -335
  275. package/dist/src/mcp-tools/workflow-tools.js.map +1 -1
  276. package/dist/src/memory/ewc-consolidation.js +345 -173
  277. package/dist/src/memory/ewc-consolidation.js.map +1 -1
  278. package/dist/src/memory/intelligence.js +841 -359
  279. package/dist/src/memory/intelligence.js.map +1 -1
  280. package/dist/src/memory/memory-bridge.js +1964 -0
  281. package/dist/src/memory/memory-bridge.js.map +1 -0
  282. package/dist/src/memory/memory-initializer.js +1895 -1602
  283. package/dist/src/memory/memory-initializer.js.map +1 -1
  284. package/dist/src/memory/sona-optimizer.js +329 -199
  285. package/dist/src/memory/sona-optimizer.js.map +1 -1
  286. package/dist/src/output.d.ts +2 -2
  287. package/dist/src/output.d.ts.map +1 -1
  288. package/dist/src/output.js +273 -242
  289. package/dist/src/output.js.map +1 -1
  290. package/dist/src/parser.js +217 -124
  291. package/dist/src/parser.js.map +1 -1
  292. package/dist/src/plugins/manager.js +531 -278
  293. package/dist/src/plugins/manager.js.map +1 -1
  294. package/dist/src/plugins/store/discovery.js +362 -275
  295. package/dist/src/plugins/store/discovery.js.map +1 -1
  296. package/dist/src/plugins/store/index.js +105 -48
  297. package/dist/src/plugins/store/index.js.map +1 -1
  298. package/dist/src/plugins/store/search.js +107 -69
  299. package/dist/src/plugins/store/search.js.map +1 -1
  300. package/dist/src/plugins/tests/demo-plugin-store.js +160 -113
  301. package/dist/src/plugins/tests/demo-plugin-store.js.map +1 -1
  302. package/dist/src/plugins/tests/standalone-test.js +223 -172
  303. package/dist/src/plugins/tests/standalone-test.js.map +1 -1
  304. package/dist/src/plugins/tests/test-plugin-store.js +228 -190
  305. package/dist/src/plugins/tests/test-plugin-store.js.map +1 -1
  306. package/dist/src/production/circuit-breaker.js +126 -62
  307. package/dist/src/production/circuit-breaker.js.map +1 -1
  308. package/dist/src/production/error-handler.js +156 -86
  309. package/dist/src/production/error-handler.js.map +1 -1
  310. package/dist/src/production/monitoring.js +220 -139
  311. package/dist/src/production/monitoring.js.map +1 -1
  312. package/dist/src/production/rate-limiter.js +93 -74
  313. package/dist/src/production/rate-limiter.js.map +1 -1
  314. package/dist/src/production/retry.js +167 -75
  315. package/dist/src/production/retry.js.map +1 -1
  316. package/dist/src/prompt.js +560 -436
  317. package/dist/src/prompt.js.map +1 -1
  318. package/dist/src/runtime/headless.js +289 -200
  319. package/dist/src/runtime/headless.js.map +1 -1
  320. package/dist/src/ruvector/agent-wasm.js +511 -0
  321. package/dist/src/ruvector/agent-wasm.js.map +1 -0
  322. package/dist/src/ruvector/ast-analyzer.js +232 -145
  323. package/dist/src/ruvector/ast-analyzer.js.map +1 -1
  324. package/dist/src/ruvector/coverage-router.js +419 -287
  325. package/dist/src/ruvector/coverage-router.js.map +1 -1
  326. package/dist/src/ruvector/coverage-tools.js +101 -56
  327. package/dist/src/ruvector/coverage-tools.js.map +1 -1
  328. package/dist/src/ruvector/diff-classifier.js +451 -324
  329. package/dist/src/ruvector/diff-classifier.js.map +1 -1
  330. package/dist/src/ruvector/enhanced-model-router.js +337 -251
  331. package/dist/src/ruvector/enhanced-model-router.js.map +1 -1
  332. package/dist/src/ruvector/flash-attention.js +254 -223
  333. package/dist/src/ruvector/flash-attention.js.map +1 -1
  334. package/dist/src/ruvector/graph-analyzer.js +680 -486
  335. package/dist/src/ruvector/graph-analyzer.js.map +1 -1
  336. package/dist/src/ruvector/index.js +113 -27
  337. package/dist/src/ruvector/index.js.map +1 -1
  338. package/dist/src/ruvector/lora-adapter.js +248 -155
  339. package/dist/src/ruvector/lora-adapter.js.map +1 -1
  340. package/dist/src/ruvector/model-router.js +248 -175
  341. package/dist/src/ruvector/model-router.js.map +1 -1
  342. package/dist/src/ruvector/moe-router.js +286 -228
  343. package/dist/src/ruvector/moe-router.js.map +1 -1
  344. package/dist/src/ruvector/q-learning-router.js +338 -257
  345. package/dist/src/ruvector/q-learning-router.js.map +1 -1
  346. package/dist/src/ruvector/ruvllm-wasm.js +527 -0
  347. package/dist/src/ruvector/ruvllm-wasm.js.map +1 -0
  348. package/dist/src/ruvector/semantic-router.js +67 -60
  349. package/dist/src/ruvector/semantic-router.js.map +1 -1
  350. package/dist/src/ruvector/vector-db.js +205 -119
  351. package/dist/src/ruvector/vector-db.js.map +1 -1
  352. package/dist/src/services/agentic-flow-bridge.js +168 -0
  353. package/dist/src/services/agentic-flow-bridge.js.map +1 -0
  354. package/dist/src/services/claim-service.js +940 -615
  355. package/dist/src/services/claim-service.js.map +1 -1
  356. package/dist/src/services/container-worker-pool.js +669 -399
  357. package/dist/src/services/container-worker-pool.js.map +1 -1
  358. package/dist/src/services/headless-worker-executor.js +467 -441
  359. package/dist/src/services/headless-worker-executor.js.map +1 -1
  360. package/dist/src/services/index.d.ts +5 -5
  361. package/dist/src/services/index.d.ts.map +1 -1
  362. package/dist/src/services/index.js +4 -4
  363. package/dist/src/services/index.js.map +1 -1
  364. package/dist/src/services/registry-api.js +201 -93
  365. package/dist/src/services/registry-api.js.map +1 -1
  366. package/dist/src/services/ruvector-training.js +414 -144
  367. package/dist/src/services/ruvector-training.js.map +1 -1
  368. package/dist/src/services/worker-daemon.js +928 -531
  369. package/dist/src/services/worker-daemon.js.map +1 -1
  370. package/dist/src/services/worker-queue.js +550 -331
  371. package/dist/src/services/worker-queue.js.map +1 -1
  372. package/dist/src/suggest.js +55 -45
  373. package/dist/src/suggest.js.map +1 -1
  374. package/dist/src/transfer/anonymization/index.js +37 -29
  375. package/dist/src/transfer/anonymization/index.js.map +1 -1
  376. package/dist/src/transfer/deploy-seraphine.d.ts +1 -1
  377. package/dist/src/transfer/deploy-seraphine.js +156 -129
  378. package/dist/src/transfer/deploy-seraphine.js.map +1 -1
  379. package/dist/src/transfer/export.js +142 -84
  380. package/dist/src/transfer/export.js.map +1 -1
  381. package/dist/src/transfer/index.d.ts +1 -1
  382. package/dist/src/transfer/index.d.ts.map +1 -1
  383. package/dist/src/transfer/index.js +2 -0
  384. package/dist/src/transfer/index.js.map +1 -1
  385. package/dist/src/transfer/ipfs/client.js +337 -179
  386. package/dist/src/transfer/ipfs/client.js.map +1 -1
  387. package/dist/src/transfer/ipfs/upload.js +434 -290
  388. package/dist/src/transfer/ipfs/upload.js.map +1 -1
  389. package/dist/src/transfer/models/seraphine.js +58 -58
  390. package/dist/src/transfer/models/seraphine.js.map +1 -1
  391. package/dist/src/transfer/serialization/cfp.js +37 -33
  392. package/dist/src/transfer/serialization/cfp.js.map +1 -1
  393. package/dist/src/transfer/storage/gcs.js +248 -139
  394. package/dist/src/transfer/storage/gcs.js.map +1 -1
  395. package/dist/src/transfer/store/discovery.js +353 -243
  396. package/dist/src/transfer/store/discovery.js.map +1 -1
  397. package/dist/src/transfer/store/download.js +365 -243
  398. package/dist/src/transfer/store/download.js.map +1 -1
  399. package/dist/src/transfer/store/index.js +130 -63
  400. package/dist/src/transfer/store/index.js.map +1 -1
  401. package/dist/src/transfer/store/publish.js +258 -184
  402. package/dist/src/transfer/store/publish.js.map +1 -1
  403. package/dist/src/transfer/store/registry.js +73 -51
  404. package/dist/src/transfer/store/registry.js.map +1 -1
  405. package/dist/src/transfer/store/search.js +96 -64
  406. package/dist/src/transfer/store/search.js.map +1 -1
  407. package/dist/src/transfer/store/tests/standalone-test.js +231 -174
  408. package/dist/src/transfer/store/tests/standalone-test.js.map +1 -1
  409. package/dist/src/transfer/test-seraphine.js +130 -95
  410. package/dist/src/transfer/test-seraphine.js.map +1 -1
  411. package/dist/src/transfer/tests/test-store.js +239 -194
  412. package/dist/src/transfer/tests/test-store.js.map +1 -1
  413. package/dist/src/types.js +56 -27
  414. package/dist/src/types.js.map +1 -1
  415. package/dist/src/update/checker.js +183 -106
  416. package/dist/src/update/checker.js.map +1 -1
  417. package/dist/src/update/executor.js +198 -135
  418. package/dist/src/update/executor.js.map +1 -1
  419. package/dist/src/update/index.js +85 -38
  420. package/dist/src/update/index.js.map +1 -1
  421. package/dist/src/update/rate-limiter.js +31 -19
  422. package/dist/src/update/rate-limiter.js.map +1 -1
  423. package/dist/src/update/validator.js +64 -38
  424. package/dist/src/update/validator.js.map +1 -1
  425. package/dist/tsconfig.tsbuildinfo +1 -1
  426. package/package.json +13 -10
  427. package/.claude/agents/custom/accessibility-auditor.yaml +0 -56
  428. package/.claude/agents/custom/design-architect.yaml +0 -48
  429. package/.claude/agents/custom/ui-developer.yaml +0 -46
  430. package/.claude/agents/custom/ux-researcher.yaml +0 -60
  431. package/dist/src/benchmarks/pretrain/index.d.ts +0 -58
  432. package/dist/src/benchmarks/pretrain/index.d.ts.map +0 -1
  433. package/dist/src/commands/index.d.ts +0 -108
  434. package/dist/src/commands/index.d.ts.map +0 -1
  435. package/dist/src/config-adapter.d.ts +0 -15
  436. package/dist/src/config-adapter.d.ts.map +0 -1
  437. package/dist/src/index.d.ts +0 -76
  438. package/dist/src/index.d.ts.map +0 -1
  439. package/dist/src/infrastructure/in-memory-repositories.d.ts +0 -68
  440. package/dist/src/infrastructure/in-memory-repositories.d.ts.map +0 -1
  441. package/dist/src/init/claudemd-generator.d.ts +0 -25
  442. package/dist/src/init/claudemd-generator.d.ts.map +0 -1
  443. package/dist/src/init/executor.d.ts +0 -41
  444. package/dist/src/init/executor.d.ts.map +0 -1
  445. package/dist/src/init/helpers-generator.d.ts +0 -60
  446. package/dist/src/init/helpers-generator.d.ts.map +0 -1
  447. package/dist/src/mcp-client.d.ts +0 -92
  448. package/dist/src/mcp-client.d.ts.map +0 -1
  449. package/dist/src/mcp-server.d.ts +0 -161
  450. package/dist/src/mcp-server.d.ts.map +0 -1
  451. package/dist/src/mcp-tools/auto-install.d.ts +0 -83
  452. package/dist/src/mcp-tools/auto-install.d.ts.map +0 -1
  453. package/dist/src/mcp-tools/types.d.ts +0 -31
  454. package/dist/src/mcp-tools/types.d.ts.map +0 -1
  455. package/dist/src/memory/ewc-consolidation.d.ts +0 -271
  456. package/dist/src/memory/ewc-consolidation.d.ts.map +0 -1
  457. package/dist/src/memory/intelligence.d.ts +0 -285
  458. package/dist/src/memory/intelligence.d.ts.map +0 -1
  459. package/dist/src/memory/memory-initializer.d.ts +0 -396
  460. package/dist/src/memory/memory-initializer.d.ts.map +0 -1
  461. package/dist/src/memory/sona-optimizer.d.ts +0 -227
  462. package/dist/src/memory/sona-optimizer.d.ts.map +0 -1
  463. package/dist/src/parser.d.ts +0 -41
  464. package/dist/src/parser.d.ts.map +0 -1
  465. package/dist/src/plugins/manager.d.ts +0 -133
  466. package/dist/src/plugins/manager.d.ts.map +0 -1
  467. package/dist/src/plugins/store/discovery.d.ts +0 -88
  468. package/dist/src/plugins/store/discovery.d.ts.map +0 -1
  469. package/dist/src/plugins/store/index.d.ts +0 -76
  470. package/dist/src/plugins/store/index.d.ts.map +0 -1
  471. package/dist/src/plugins/store/search.d.ts +0 -46
  472. package/dist/src/plugins/store/search.d.ts.map +0 -1
  473. package/dist/src/plugins/store/types.d.ts +0 -274
  474. package/dist/src/plugins/store/types.d.ts.map +0 -1
  475. package/dist/src/production/circuit-breaker.d.ts +0 -101
  476. package/dist/src/production/circuit-breaker.d.ts.map +0 -1
  477. package/dist/src/production/error-handler.d.ts +0 -92
  478. package/dist/src/production/error-handler.d.ts.map +0 -1
  479. package/dist/src/production/monitoring.d.ts +0 -161
  480. package/dist/src/production/monitoring.d.ts.map +0 -1
  481. package/dist/src/production/rate-limiter.d.ts +0 -80
  482. package/dist/src/production/rate-limiter.d.ts.map +0 -1
  483. package/dist/src/production/retry.d.ts +0 -48
  484. package/dist/src/production/retry.d.ts.map +0 -1
  485. package/dist/src/prompt.d.ts +0 -44
  486. package/dist/src/prompt.d.ts.map +0 -1
  487. package/dist/src/runtime/headless.d.ts +0 -60
  488. package/dist/src/runtime/headless.d.ts.map +0 -1
  489. package/dist/src/ruvector/ast-analyzer.d.ts +0 -67
  490. package/dist/src/ruvector/ast-analyzer.d.ts.map +0 -1
  491. package/dist/src/ruvector/coverage-router.d.ts +0 -160
  492. package/dist/src/ruvector/coverage-router.d.ts.map +0 -1
  493. package/dist/src/ruvector/diff-classifier.d.ts +0 -175
  494. package/dist/src/ruvector/diff-classifier.d.ts.map +0 -1
  495. package/dist/src/ruvector/enhanced-model-router.d.ts +0 -146
  496. package/dist/src/ruvector/enhanced-model-router.d.ts.map +0 -1
  497. package/dist/src/ruvector/flash-attention.d.ts +0 -195
  498. package/dist/src/ruvector/flash-attention.d.ts.map +0 -1
  499. package/dist/src/ruvector/graph-analyzer.d.ts +0 -187
  500. package/dist/src/ruvector/graph-analyzer.d.ts.map +0 -1
  501. package/dist/src/ruvector/index.d.ts +0 -34
  502. package/dist/src/ruvector/index.d.ts.map +0 -1
  503. package/dist/src/ruvector/lora-adapter.d.ts +0 -218
  504. package/dist/src/ruvector/lora-adapter.d.ts.map +0 -1
  505. package/dist/src/ruvector/model-router.d.ts +0 -220
  506. package/dist/src/ruvector/model-router.d.ts.map +0 -1
  507. package/dist/src/ruvector/moe-router.d.ts +0 -206
  508. package/dist/src/ruvector/moe-router.d.ts.map +0 -1
  509. package/dist/src/ruvector/q-learning-router.d.ts +0 -211
  510. package/dist/src/ruvector/q-learning-router.d.ts.map +0 -1
  511. package/dist/src/ruvector/semantic-router.d.ts +0 -77
  512. package/dist/src/ruvector/semantic-router.d.ts.map +0 -1
  513. package/dist/src/ruvector/vector-db.d.ts +0 -69
  514. package/dist/src/ruvector/vector-db.d.ts.map +0 -1
  515. package/dist/src/services/claim-service.d.ts +0 -204
  516. package/dist/src/services/claim-service.d.ts.map +0 -1
  517. package/dist/src/services/container-worker-pool.d.ts +0 -197
  518. package/dist/src/services/container-worker-pool.d.ts.map +0 -1
  519. package/dist/src/services/headless-worker-executor.d.ts +0 -304
  520. package/dist/src/services/headless-worker-executor.d.ts.map +0 -1
  521. package/dist/src/services/registry-api.d.ts +0 -58
  522. package/dist/src/services/registry-api.d.ts.map +0 -1
  523. package/dist/src/services/ruvector-training.d.ts +0 -213
  524. package/dist/src/services/ruvector-training.d.ts.map +0 -1
  525. package/dist/src/services/worker-daemon.d.ts +0 -203
  526. package/dist/src/services/worker-daemon.d.ts.map +0 -1
  527. package/dist/src/services/worker-queue.d.ts +0 -194
  528. package/dist/src/services/worker-queue.d.ts.map +0 -1
  529. package/dist/src/suggest.d.ts +0 -53
  530. package/dist/src/suggest.d.ts.map +0 -1
  531. package/dist/src/transfer/export.d.ts +0 -25
  532. package/dist/src/transfer/export.d.ts.map +0 -1
  533. package/dist/src/transfer/ipfs/client.d.ts +0 -109
  534. package/dist/src/transfer/ipfs/client.d.ts.map +0 -1
  535. package/dist/src/transfer/ipfs/upload.d.ts +0 -95
  536. package/dist/src/transfer/ipfs/upload.d.ts.map +0 -1
  537. package/dist/src/transfer/models/seraphine.d.ts +0 -72
  538. package/dist/src/transfer/models/seraphine.d.ts.map +0 -1
  539. package/dist/src/transfer/serialization/cfp.d.ts +0 -49
  540. package/dist/src/transfer/serialization/cfp.d.ts.map +0 -1
  541. package/dist/src/transfer/storage/gcs.d.ts +0 -82
  542. package/dist/src/transfer/storage/gcs.d.ts.map +0 -1
  543. package/dist/src/transfer/store/discovery.d.ts +0 -84
  544. package/dist/src/transfer/store/discovery.d.ts.map +0 -1
  545. package/dist/src/transfer/store/download.d.ts +0 -70
  546. package/dist/src/transfer/store/download.d.ts.map +0 -1
  547. package/dist/src/transfer/store/index.d.ts +0 -84
  548. package/dist/src/transfer/store/index.d.ts.map +0 -1
  549. package/dist/src/transfer/store/publish.d.ts +0 -76
  550. package/dist/src/transfer/store/publish.d.ts.map +0 -1
  551. package/dist/src/transfer/store/search.d.ts +0 -54
  552. package/dist/src/transfer/store/search.d.ts.map +0 -1
  553. package/dist/src/transfer/types.d.ts +0 -245
  554. package/dist/src/transfer/types.d.ts.map +0 -1
  555. package/dist/src/types.d.ts +0 -198
  556. package/dist/src/types.d.ts.map +0 -1
  557. package/dist/src/update/checker.d.ts +0 -34
  558. package/dist/src/update/checker.d.ts.map +0 -1
  559. package/dist/src/update/executor.d.ts +0 -32
  560. package/dist/src/update/executor.d.ts.map +0 -1
  561. package/dist/src/update/index.d.ts +0 -33
  562. package/dist/src/update/index.d.ts.map +0 -1
  563. package/dist/src/update/rate-limiter.d.ts +0 -20
  564. package/dist/src/update/rate-limiter.d.ts.map +0 -1
  565. package/dist/src/update/validator.d.ts +0 -17
  566. package/dist/src/update/validator.d.ts.map +0 -1
@@ -13,122 +13,376 @@
13
13
  *
14
14
  * Created with ❤️ by ruv.io
15
15
  */
16
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
17
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
18
+ return new (P || (P = Promise))(function (resolve, reject) {
19
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
20
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
21
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
22
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
23
+ });
24
+ };
25
+ var __generator = (this && this.__generator) || function (thisArg, body) {
26
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
27
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
28
+ function verb(n) { return function (v) { return step([n, v]); }; }
29
+ function step(op) {
30
+ if (f) throw new TypeError("Generator is already executing.");
31
+ while (_) try {
32
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
33
+ if (y = 0, t) op = [op[0] & 2, t.value];
34
+ switch (op[0]) {
35
+ case 0: case 1: t = op; break;
36
+ case 4: _.label++; return { value: op[1], done: false };
37
+ case 5: _.label++; y = op[1]; op = [0]; continue;
38
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
39
+ default:
40
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
41
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
42
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
43
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
44
+ if (t[2]) _.ops.pop();
45
+ _.trys.pop(); continue;
46
+ }
47
+ op = body.call(thisArg, _);
48
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
49
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
50
+ }
51
+ };
52
+ /**
53
+ * ESM/CJS interop helper — handles `.default` for CJS modules.
54
+ * Uses `'default' in mod` check which is safer than `mod.default || mod`.
55
+ */
56
+ function importWithInterop(packageName) {
57
+ return __awaiter(this, void 0, Promise, function () {
58
+ var mod;
59
+ return __generator(this, function (_a) {
60
+ switch (_a.label) {
61
+ case 0: return [4 /*yield*/, import(packageName)];
62
+ case 1:
63
+ mod = _a.sent();
64
+ return [2 /*return*/, ('default' in mod) ? mod["default"] : mod];
65
+ }
66
+ });
67
+ });
68
+ }
16
69
  // Lazy-loaded WASM modules
17
- let microLoRA = null;
18
- let scopedLoRA = null;
19
- let trajectoryBuffer = null;
20
- let flashAttention = null;
21
- let moeAttention = null;
22
- let hyperbolicAttention = null;
23
- let optimizer = null;
24
- let contrastiveLoss = null;
25
- let curriculum = null;
26
- let hardMiner = null;
70
+ var microLoRA = null;
71
+ var scopedLoRA = null;
72
+ var trajectoryBuffer = null;
73
+ var flashAttention = null;
74
+ var moeAttention = null;
75
+ var hyperbolicAttention = null;
76
+ var optimizer = null;
77
+ var contrastiveLoss = null;
78
+ var curriculum = null;
79
+ var hardMiner = null;
27
80
  // SONA engine (optional enhancement)
28
- let sonaEngine = null;
29
- let sonaAvailable = false;
81
+ var sonaEngine = null;
82
+ var sonaAvailable = false;
30
83
  // Training state
31
- let initialized = false;
32
- let totalAdaptations = 0;
33
- let totalForwards = 0;
34
- let totalSonaLearns = 0;
35
- let totalSonaSearches = 0;
36
- let lastBenchmark = null;
84
+ var initialized = false;
85
+ var totalAdaptations = 0;
86
+ var totalForwards = 0;
87
+ var totalSonaLearns = 0;
88
+ var totalSonaSearches = 0;
89
+ var lastBenchmark = null;
90
+ // Backend tracking
91
+ var activeBackend = 'js-fallback';
37
92
  /**
38
- * Initialize the RuVector training system
93
+ * Get which backend is active for training
39
94
  */
40
- export async function initializeTraining(config = {}) {
41
- const features = [];
42
- const dim = Math.min(config.dim || 256, 256); // Max 256 for WASM
43
- const lr = config.learningRate || 0.01;
44
- const alpha = config.alpha || 0.1;
45
- try {
46
- // Initialize MicroLoRA with direct WASM loading (Node.js compatible)
47
- const fs = await import('fs');
48
- const { createRequire } = await import('module');
49
- const require = createRequire(import.meta.url);
50
- // Load WASM file directly instead of using fetch
51
- const wasmPath = require.resolve('@ruvector/learning-wasm/ruvector_learning_wasm_bg.wasm');
52
- const wasmBuffer = fs.readFileSync(wasmPath);
53
- const learningWasm = await import('@ruvector/learning-wasm');
54
- learningWasm.initSync({ module: wasmBuffer });
55
- microLoRA = new learningWasm.WasmMicroLoRA(dim, alpha, lr);
56
- features.push(`MicroLoRA (${dim}-dim, <1μs adaptation)`);
57
- // Initialize ScopedLoRA for per-operator learning
58
- scopedLoRA = new learningWasm.WasmScopedLoRA(dim, alpha, lr);
59
- scopedLoRA.set_category_fallback(true);
60
- features.push('ScopedLoRA (17 operators)');
61
- // Initialize trajectory buffer
62
- trajectoryBuffer = new learningWasm.WasmTrajectoryBuffer(config.trajectoryCapacity || 10000, dim);
63
- features.push('TrajectoryBuffer');
64
- // Initialize attention mechanisms
65
- const attention = await import('@ruvector/attention');
66
- if (config.useFlashAttention !== false) {
67
- flashAttention = new attention.FlashAttention(dim, 64);
68
- features.push('FlashAttention');
95
+ export function getActiveBackend() {
96
+ return activeBackend;
97
+ }
98
+ /**
99
+ * Pure-JS fallback implementations for when WASM is unavailable.
100
+ * These provide the same API surface with basic linear algebra.
101
+ */
102
+ var JsMicroLoRA = /** @class */ (function () {
103
+ function JsMicroLoRA(dim, alpha, lr) {
104
+ this._adaptCount = 0n;
105
+ this._forwardCount = 0n;
106
+ this._deltaNorm = 0;
107
+ this.RANK = 2;
108
+ this._dim = dim;
109
+ this._alpha = alpha;
110
+ this._lr = lr;
111
+ this._A = new Float32Array(this.RANK * dim);
112
+ this._B = new Float32Array(dim * this.RANK);
113
+ // Xavier initialization
114
+ var scale = Math.sqrt(2 / (dim + this.RANK));
115
+ for (var i = 0; i < this._A.length; i++)
116
+ this._A[i] = (Math.random() - 0.5) * scale;
117
+ for (var i = 0; i < this._B.length; i++)
118
+ this._B[i] = (Math.random() - 0.5) * scale;
119
+ }
120
+ JsMicroLoRA.prototype.adapt_array = function (gradient) {
121
+ // Simple gradient update on low-rank matrices
122
+ var norm = 0;
123
+ for (var i = 0; i < Math.min(gradient.length, this._A.length); i++) {
124
+ var delta = -this._lr * gradient[i % gradient.length] * this._alpha;
125
+ this._A[i] += delta;
126
+ norm += delta * delta;
69
127
  }
70
- if (config.useMoE) {
71
- moeAttention = attention.MoEAttention.simple(dim, 8, 2);
72
- features.push('MoE (8 experts, top-2)');
128
+ this._deltaNorm = Math.sqrt(norm);
129
+ this._adaptCount++;
130
+ };
131
+ JsMicroLoRA.prototype.adapt_count = function () { return this._adaptCount; };
132
+ JsMicroLoRA.prototype.param_count = function () { return this._A.length + this._B.length; };
133
+ JsMicroLoRA.prototype.forward_array = function (input) {
134
+ var output = new Float32Array(this._dim);
135
+ // y = x + alpha * B @ A @ x (simplified low-rank)
136
+ for (var i = 0; i < this._dim; i++) {
137
+ output[i] = input[i];
138
+ var sum = 0;
139
+ for (var r = 0; r < this.RANK; r++) {
140
+ var dot = 0;
141
+ for (var j = 0; j < this._dim; j++) {
142
+ dot += this._A[r * this._dim + j] * input[j];
143
+ }
144
+ sum += this._B[i * this.RANK + r] * dot;
145
+ }
146
+ output[i] += this._alpha * sum;
73
147
  }
74
- if (config.useHyperbolic) {
75
- hyperbolicAttention = new attention.HyperbolicAttention(dim, 1.0);
76
- features.push('HyperbolicAttention');
148
+ this._forwardCount++;
149
+ return output;
150
+ };
151
+ JsMicroLoRA.prototype.forward_count = function () { return this._forwardCount; };
152
+ JsMicroLoRA.prototype.adapt_with_reward = function (improvement) {
153
+ var scale = improvement * this._lr * this._alpha;
154
+ var norm = 0;
155
+ for (var i = 0; i < this._A.length; i++) {
156
+ var delta = scale * (Math.random() - 0.5);
157
+ this._A[i] += delta;
158
+ norm += delta * delta;
77
159
  }
78
- // Initialize optimizer and loss
79
- optimizer = new attention.AdamWOptimizer(lr, 0.9, 0.999, 1e-8, 0.01);
80
- features.push('AdamW Optimizer');
81
- contrastiveLoss = new attention.InfoNceLoss(0.07);
82
- features.push('InfoNCE Loss');
83
- // Curriculum scheduler
84
- if (config.totalSteps) {
85
- curriculum = new attention.CurriculumScheduler(config.totalSteps, config.warmupSteps || Math.floor(config.totalSteps * 0.1));
86
- features.push('Curriculum Learning');
160
+ this._deltaNorm = Math.sqrt(norm);
161
+ this._adaptCount++;
162
+ };
163
+ JsMicroLoRA.prototype.delta_norm = function () { return this._deltaNorm; };
164
+ JsMicroLoRA.prototype.dim = function () { return this._dim; };
165
+ JsMicroLoRA.prototype.reset = function () {
166
+ this._A.fill(0);
167
+ this._B.fill(0);
168
+ this._adaptCount = 0n;
169
+ this._forwardCount = 0n;
170
+ this._deltaNorm = 0;
171
+ };
172
+ JsMicroLoRA.prototype.free = function () { };
173
+ return JsMicroLoRA;
174
+ }());
175
+ var JsScopedLoRA = /** @class */ (function () {
176
+ function JsScopedLoRA(dim, alpha, lr) {
177
+ this.adapters = new Map();
178
+ this._fallback = false;
179
+ this._dim = dim;
180
+ this._alpha = alpha;
181
+ this._lr = lr;
182
+ }
183
+ JsScopedLoRA.prototype.getAdapter = function (opType) {
184
+ if (!this.adapters.has(opType)) {
185
+ if (this._fallback && opType > 0 && this.adapters.has(0)) {
186
+ return this.adapters.get(0);
187
+ }
188
+ this.adapters.set(opType, new JsMicroLoRA(this._dim, this._alpha, this._lr));
87
189
  }
88
- // Hard negative mining - use string for MiningStrategy enum due to NAPI binding quirk
89
- try {
90
- // @ts-expect-error - MiningStrategy enum binding expects string not enum value
91
- hardMiner = new attention.HardNegativeMiner(5, 'semi_hard');
92
- features.push('Hard Negative Mining');
190
+ return this.adapters.get(opType);
191
+ };
192
+ JsScopedLoRA.prototype.adapt_array = function (opType, gradient) { this.getAdapter(opType).adapt_array(gradient); };
193
+ JsScopedLoRA.prototype.adapt_count = function (opType) { return this.getAdapter(opType).adapt_count(); };
194
+ JsScopedLoRA.prototype.forward_array = function (opType, input) { return this.getAdapter(opType).forward_array(input); };
195
+ JsScopedLoRA.prototype.forward_count = function (opType) { return this.getAdapter(opType).forward_count(); };
196
+ JsScopedLoRA.prototype.adapt_with_reward = function (opType, improvement) { this.getAdapter(opType).adapt_with_reward(improvement); };
197
+ JsScopedLoRA.prototype.delta_norm = function (opType) { return this.getAdapter(opType).delta_norm(); };
198
+ JsScopedLoRA.prototype.set_category_fallback = function (enabled) { this._fallback = enabled; };
199
+ JsScopedLoRA.prototype.total_adapt_count = function () {
200
+ var total = 0n;
201
+ for (var _i = 0, _a = this.adapters.values(); _i < _a.length; _i++) {
202
+ var a = _a[_i];
203
+ total += a.adapt_count();
93
204
  }
94
- catch {
95
- // Mining not available, continue without it
205
+ return total;
206
+ };
207
+ JsScopedLoRA.prototype.total_forward_count = function () {
208
+ var total = 0n;
209
+ for (var _i = 0, _a = this.adapters.values(); _i < _a.length; _i++) {
210
+ var a = _a[_i];
211
+ total += a.forward_count();
96
212
  }
97
- // Initialize SONA (optional, backward compatible)
98
- if (config.useSona !== false) {
99
- try {
100
- const sona = await import('@ruvector/sona');
101
- const sonaRank = config.sonaRank || 4;
102
- // SonaEngine constructor: (dim, rank, alpha, learningRate) - TypeScript types are wrong
103
- // @ts-expect-error - SonaEngine accepts 4 positional args but types say 1
104
- sonaEngine = new sona.SonaEngine(dim, sonaRank, alpha, lr);
105
- sonaAvailable = true;
106
- features.push(`SONA (${dim}-dim, rank-${sonaRank}, 624k learn/s)`);
107
- }
108
- catch (sonaError) {
109
- // SONA not available, continue without it (backward compatible)
110
- sonaAvailable = false;
111
- // Only log if explicitly requested
112
- if (config.useSona === true) {
113
- console.warn('SONA requested but not available:', sonaError);
114
- }
213
+ return total;
214
+ };
215
+ JsScopedLoRA.prototype.reset_all = function () { this.adapters.clear(); };
216
+ JsScopedLoRA.prototype.reset_scope = function (opType) { this.adapters["delete"](opType); };
217
+ JsScopedLoRA.prototype.free = function () { this.adapters.clear(); };
218
+ return JsScopedLoRA;
219
+ }());
220
+ var JsTrajectoryBuffer = /** @class */ (function () {
221
+ function JsTrajectoryBuffer(capacity, _dim) {
222
+ this.entries = [];
223
+ this.capacity = capacity;
224
+ }
225
+ JsTrajectoryBuffer.prototype.record = function (_embedding, _opType, _attType, executionMs, baselineMs) {
226
+ var improvement = baselineMs > 0 ? (baselineMs - executionMs) / baselineMs : 0;
227
+ if (this.entries.length >= this.capacity)
228
+ this.entries.shift();
229
+ this.entries.push({ improvement: improvement });
230
+ };
231
+ JsTrajectoryBuffer.prototype.is_empty = function () { return this.entries.length === 0; };
232
+ JsTrajectoryBuffer.prototype.total_count = function () { return BigInt(this.entries.length); };
233
+ JsTrajectoryBuffer.prototype.success_rate = function () {
234
+ if (this.entries.length === 0)
235
+ return 0;
236
+ return this.entries.filter(function (e) { return e.improvement > 0; }).length / this.entries.length;
237
+ };
238
+ JsTrajectoryBuffer.prototype.mean_improvement = function () {
239
+ if (this.entries.length === 0)
240
+ return 0;
241
+ return this.entries.reduce(function (s, e) { return s + e.improvement; }, 0) / this.entries.length;
242
+ };
243
+ JsTrajectoryBuffer.prototype.best_improvement = function () {
244
+ if (this.entries.length === 0)
245
+ return 0;
246
+ return Math.max.apply(Math, this.entries.map(function (e) { return e.improvement; }));
247
+ };
248
+ JsTrajectoryBuffer.prototype.high_quality_count = function (threshold) {
249
+ return this.entries.filter(function (e) { return e.improvement > threshold; }).length;
250
+ };
251
+ JsTrajectoryBuffer.prototype.variance = function () {
252
+ if (this.entries.length < 2)
253
+ return 0;
254
+ var mean = this.mean_improvement();
255
+ return this.entries.reduce(function (s, e) { return s + Math.pow((e.improvement - mean), 2); }, 0) / (this.entries.length - 1);
256
+ };
257
+ JsTrajectoryBuffer.prototype.reset = function () { this.entries = []; };
258
+ JsTrajectoryBuffer.prototype.free = function () { this.entries = []; };
259
+ return JsTrajectoryBuffer;
260
+ }());
261
+ /**
262
+ * Initialize the RuVector training system.
263
+ * Attempts to load @ruvector/learning-wasm for WASM-accelerated training.
264
+ * Falls back to a pure-JS implementation if WASM is unavailable.
265
+ */
266
+ export function initializeTraining(config) {
267
+ if (config === void 0) { config = {}; }
268
+ return __awaiter(this, void 0, Promise, function () {
269
+ var features, dim, lr, alpha, wasmLoaded, fs, createRequire, require, wasmPath, wasmBuffer, learningWasm, wasmError_1, reason, attention, attentionError_1, reason, sona, sonaRank, sonaError_1;
270
+ return __generator(this, function (_a) {
271
+ switch (_a.label) {
272
+ case 0:
273
+ features = [];
274
+ dim = Math.min(config.dim || 256, 256);
275
+ lr = config.learningRate || 0.01;
276
+ alpha = config.alpha || 0.1;
277
+ wasmLoaded = false;
278
+ _a.label = 1;
279
+ case 1:
280
+ _a.trys.push([1, 5, , 6]);
281
+ return [4 /*yield*/, import('fs')];
282
+ case 2:
283
+ fs = _a.sent();
284
+ return [4 /*yield*/, import('module')];
285
+ case 3:
286
+ createRequire = (_a.sent()).createRequire;
287
+ require = createRequire(import.meta.url);
288
+ wasmPath = require.resolve('@ruvector/learning-wasm/ruvector_learning_wasm_bg.wasm');
289
+ wasmBuffer = fs.readFileSync(wasmPath);
290
+ return [4 /*yield*/, import('@ruvector/learning-wasm')];
291
+ case 4:
292
+ learningWasm = _a.sent();
293
+ learningWasm.initSync({ module: wasmBuffer });
294
+ microLoRA = new learningWasm.WasmMicroLoRA(dim, alpha, lr);
295
+ features.push("MicroLoRA/WASM (" + dim + "-dim, <1\u03BCs adaptation)");
296
+ scopedLoRA = new learningWasm.WasmScopedLoRA(dim, alpha, lr);
297
+ scopedLoRA.set_category_fallback(true);
298
+ features.push('ScopedLoRA/WASM (17 operators)');
299
+ trajectoryBuffer = new learningWasm.WasmTrajectoryBuffer(config.trajectoryCapacity || 10000, dim);
300
+ features.push('TrajectoryBuffer/WASM');
301
+ activeBackend = 'wasm';
302
+ wasmLoaded = true;
303
+ return [3 /*break*/, 6];
304
+ case 5:
305
+ wasmError_1 = _a.sent();
306
+ reason = wasmError_1 instanceof Error ? wasmError_1.message : String(wasmError_1);
307
+ console.warn("[ruvector] WASM backend unavailable (" + reason + "), using JS fallback");
308
+ microLoRA = new JsMicroLoRA(dim, alpha, lr);
309
+ features.push("MicroLoRA/JS (" + dim + "-dim, JS fallback)");
310
+ scopedLoRA = new JsScopedLoRA(dim, alpha, lr);
311
+ scopedLoRA.set_category_fallback(true);
312
+ features.push('ScopedLoRA/JS (17 operators)');
313
+ trajectoryBuffer = new JsTrajectoryBuffer(config.trajectoryCapacity || 10000, dim);
314
+ features.push('TrajectoryBuffer/JS');
315
+ activeBackend = 'js-fallback';
316
+ return [3 /*break*/, 6];
317
+ case 6:
318
+ _a.trys.push([6, 8, , 9]);
319
+ return [4 /*yield*/, importWithInterop('@ruvector/attention')];
320
+ case 7:
321
+ attention = _a.sent();
322
+ if (config.useFlashAttention !== false) {
323
+ flashAttention = new attention.FlashAttention(dim, 64);
324
+ features.push('FlashAttention');
325
+ }
326
+ if (config.useMoE) {
327
+ moeAttention = attention.MoEAttention.simple(dim, 8, 2);
328
+ features.push('MoE (8 experts, top-2)');
329
+ }
330
+ if (config.useHyperbolic) {
331
+ hyperbolicAttention = new attention.HyperbolicAttention(dim, 1.0);
332
+ features.push('HyperbolicAttention');
333
+ }
334
+ optimizer = new attention.AdamWOptimizer(lr, 0.9, 0.999, 1e-8, 0.01);
335
+ features.push('AdamW Optimizer');
336
+ contrastiveLoss = new attention.InfoNceLoss(0.07);
337
+ features.push('InfoNCE Loss');
338
+ if (config.totalSteps) {
339
+ curriculum = new attention.CurriculumScheduler(config.totalSteps, config.warmupSteps || Math.floor(config.totalSteps * 0.1));
340
+ features.push('Curriculum Learning');
341
+ }
342
+ try {
343
+ hardMiner = new attention.HardNegativeMiner(5, 'semi_hard');
344
+ features.push('Hard Negative Mining');
345
+ }
346
+ catch (_b) {
347
+ // Mining not available, continue without it
348
+ }
349
+ return [3 /*break*/, 9];
350
+ case 8:
351
+ attentionError_1 = _a.sent();
352
+ reason = attentionError_1 instanceof Error ? attentionError_1.message : String(attentionError_1);
353
+ console.warn("[ruvector] @ruvector/attention unavailable (" + reason + "), attention features disabled");
354
+ return [3 /*break*/, 9];
355
+ case 9:
356
+ if (!(config.useSona !== false)) return [3 /*break*/, 13];
357
+ _a.label = 10;
358
+ case 10:
359
+ _a.trys.push([10, 12, , 13]);
360
+ return [4 /*yield*/, importWithInterop('@ruvector/sona')];
361
+ case 11:
362
+ sona = _a.sent();
363
+ sonaRank = config.sonaRank || 4;
364
+ sonaEngine = new sona.SonaEngine(dim, sonaRank, alpha, lr);
365
+ sonaAvailable = true;
366
+ features.push("SONA (" + dim + "-dim, rank-" + sonaRank + ", 624k learn/s)");
367
+ return [3 /*break*/, 13];
368
+ case 12:
369
+ sonaError_1 = _a.sent();
370
+ sonaAvailable = false;
371
+ if (config.useSona === true) {
372
+ console.warn('SONA requested but not available:', sonaError_1);
373
+ }
374
+ return [3 /*break*/, 13];
375
+ case 13:
376
+ initialized = true;
377
+ return [2 /*return*/, { success: true, features: features, backend: activeBackend }];
115
378
  }
116
- }
117
- initialized = true;
118
- return { success: true, features };
119
- }
120
- catch (error) {
121
- return {
122
- success: false,
123
- features,
124
- error: error instanceof Error ? error.message : String(error),
125
- };
126
- }
379
+ });
380
+ });
127
381
  }
128
382
  /**
129
383
  * Operator types for scoped LoRA (0-16)
130
384
  */
131
- export const OperatorType = {
385
+ export var OperatorType = {
132
386
  GENERAL: 0,
133
387
  ATTENTION: 1,
134
388
  MLP: 2,
@@ -145,30 +399,34 @@ export const OperatorType = {
145
399
  OPTIMIZATION: 13,
146
400
  SECURITY: 14,
147
401
  TESTING: 15,
148
- DEBUGGING: 16,
402
+ DEBUGGING: 16
149
403
  };
150
404
  /**
151
405
  * Train a pattern with MicroLoRA
152
406
  */
153
- export async function trainPattern(embedding, gradient, operatorType) {
154
- if (!initialized || !microLoRA) {
155
- throw new Error('Training system not initialized');
156
- }
157
- // Use scoped LoRA if operator type specified
158
- if (operatorType !== undefined && scopedLoRA) {
159
- scopedLoRA.adapt_array(operatorType, gradient);
160
- return {
161
- deltaNorm: scopedLoRA.delta_norm(operatorType),
162
- adaptCount: scopedLoRA.adapt_count(operatorType),
163
- };
164
- }
165
- // Standard MicroLoRA adaptation
166
- microLoRA.adapt_array(gradient);
167
- totalAdaptations++;
168
- return {
169
- deltaNorm: microLoRA.delta_norm(),
170
- adaptCount: microLoRA.adapt_count(),
171
- };
407
+ export function trainPattern(embedding, gradient, operatorType) {
408
+ return __awaiter(this, void 0, Promise, function () {
409
+ return __generator(this, function (_a) {
410
+ if (!initialized || !microLoRA) {
411
+ throw new Error('Training system not initialized');
412
+ }
413
+ // Use scoped LoRA if operator type specified
414
+ if (operatorType !== undefined && scopedLoRA) {
415
+ scopedLoRA.adapt_array(operatorType, gradient);
416
+ return [2 /*return*/, {
417
+ deltaNorm: scopedLoRA.delta_norm(operatorType),
418
+ adaptCount: scopedLoRA.adapt_count(operatorType)
419
+ }];
420
+ }
421
+ // Standard MicroLoRA adaptation
422
+ microLoRA.adapt_array(gradient);
423
+ totalAdaptations++;
424
+ return [2 /*return*/, {
425
+ deltaNorm: microLoRA.delta_norm(),
426
+ adaptCount: microLoRA.adapt_count()
427
+ }];
428
+ });
429
+ });
172
430
  }
173
431
  /**
174
432
  * Forward pass through LoRA
@@ -220,7 +478,7 @@ export function getTrajectoryStats() {
220
478
  bestImprovement: trajectoryBuffer.best_improvement(),
221
479
  totalCount: trajectoryBuffer.total_count(),
222
480
  highQualityCount: trajectoryBuffer.high_quality_count(0.1),
223
- variance: trajectoryBuffer.variance(),
481
+ variance: trajectoryBuffer.variance()
224
482
  };
225
483
  }
226
484
  /**
@@ -257,9 +515,9 @@ export function computeContrastiveLoss(anchor, positives, negatives) {
257
515
  if (!contrastiveLoss) {
258
516
  throw new Error('Contrastive loss not initialized');
259
517
  }
260
- const loss = contrastiveLoss.compute(anchor, positives, negatives);
261
- const gradient = contrastiveLoss.backward(anchor, positives, negatives);
262
- return { loss, gradient };
518
+ var loss = contrastiveLoss.compute(anchor, positives, negatives);
519
+ var gradient = contrastiveLoss.backward(anchor, positives, negatives);
520
+ return { loss: loss, gradient: gradient };
263
521
  }
264
522
  /**
265
523
  * Optimizer step
@@ -291,10 +549,19 @@ export function mineHardNegatives(anchor, candidates) {
291
549
  /**
292
550
  * Benchmark the training system
293
551
  */
294
- export async function benchmarkTraining(dim, iterations) {
295
- const attention = await import('@ruvector/attention');
296
- lastBenchmark = attention.benchmarkAttention(dim || 256, 100, iterations || 1000);
297
- return lastBenchmark;
552
+ export function benchmarkTraining(dim, iterations) {
553
+ return __awaiter(this, void 0, Promise, function () {
554
+ var attention;
555
+ return __generator(this, function (_a) {
556
+ switch (_a.label) {
557
+ case 0: return [4 /*yield*/, importWithInterop('@ruvector/attention')];
558
+ case 1:
559
+ attention = _a.sent();
560
+ lastBenchmark = attention.benchmarkAttention(dim || 256, 100, iterations || 1000);
561
+ return [2 /*return*/, lastBenchmark !== null && lastBenchmark !== void 0 ? lastBenchmark : []];
562
+ }
563
+ });
564
+ });
298
565
  }
299
566
  // ============================================
300
567
  // SONA Functions (v2 enhancement, optional)
@@ -320,12 +587,13 @@ export function sonaForceLearn(embedding, reward) {
320
587
  * Search for similar patterns with SONA (16.7μs, 60k searches/s)
321
588
  * Returns the k most similar patterns from the pattern bank
322
589
  */
323
- export function sonaFindPatterns(embedding, k = 5) {
590
+ export function sonaFindPatterns(embedding, k) {
591
+ if (k === void 0) { k = 5; }
324
592
  if (!sonaEngine) {
325
593
  throw new Error('SONA not initialized. Call initializeTraining with useSona: true');
326
594
  }
327
595
  // SONA requires Array, not Float32Array
328
- const embeddingArray = Array.from(embedding);
596
+ var embeddingArray = Array.from(embedding);
329
597
  totalSonaSearches++;
330
598
  return sonaEngine.findPatterns(embeddingArray, k);
331
599
  }
@@ -349,27 +617,27 @@ export function getSonaStats() {
349
617
  enabled: false,
350
618
  stats: null,
351
619
  totalLearns: totalSonaLearns,
352
- totalSearches: totalSonaSearches,
620
+ totalSearches: totalSonaSearches
353
621
  };
354
622
  }
355
623
  try {
356
- const statsJson = sonaEngine.getStats();
357
- const stats = JSON.parse(statsJson);
624
+ var statsJson = sonaEngine.getStats();
625
+ var stats = JSON.parse(statsJson);
358
626
  return {
359
627
  available: true,
360
628
  enabled: sonaEngine.isEnabled(),
361
- stats,
629
+ stats: stats,
362
630
  totalLearns: totalSonaLearns,
363
- totalSearches: totalSonaSearches,
631
+ totalSearches: totalSonaSearches
364
632
  };
365
633
  }
366
- catch {
634
+ catch (_a) {
367
635
  return {
368
636
  available: true,
369
637
  enabled: false,
370
638
  stats: null,
371
639
  totalLearns: totalSonaLearns,
372
- totalSearches: totalSonaSearches,
640
+ totalSearches: totalSonaSearches
373
641
  };
374
642
  }
375
643
  }
@@ -395,23 +663,24 @@ export function sonaFlush() {
395
663
  * Get training statistics
396
664
  */
397
665
  export function getTrainingStats() {
398
- const stats = {
399
- initialized,
400
- totalAdaptations,
401
- totalForwards,
666
+ var stats = {
667
+ initialized: initialized,
668
+ backend: activeBackend,
669
+ totalAdaptations: totalAdaptations,
670
+ totalForwards: totalForwards
402
671
  };
403
672
  if (microLoRA) {
404
673
  stats.microLoraStats = {
405
674
  paramCount: microLoRA.param_count(),
406
675
  adaptCount: microLoRA.adapt_count(),
407
676
  forwardCount: microLoRA.forward_count(),
408
- deltaNorm: microLoRA.delta_norm(),
677
+ deltaNorm: microLoRA.delta_norm()
409
678
  };
410
679
  }
411
680
  if (scopedLoRA) {
412
681
  stats.scopedLoraStats = {
413
682
  totalAdaptCount: scopedLoRA.total_adapt_count(),
414
- totalForwardCount: scopedLoRA.total_forward_count(),
683
+ totalForwardCount: scopedLoRA.total_forward_count()
415
684
  };
416
685
  }
417
686
  if (trajectoryBuffer && !trajectoryBuffer.is_empty()) {
@@ -444,6 +713,7 @@ export function resetTraining() {
444
713
  totalForwards = 0;
445
714
  totalSonaLearns = 0;
446
715
  totalSonaSearches = 0;
716
+ activeBackend = 'js-fallback';
447
717
  }
448
718
  /**
449
719
  * Export trained weights
@@ -456,7 +726,7 @@ export function exportWeights() {
456
726
  dim: microLoRA.dim(),
457
727
  deltaNorm: microLoRA.delta_norm(),
458
728
  adaptCount: microLoRA.adapt_count(),
459
- trajectoryStats: getTrajectoryStats(),
729
+ trajectoryStats: getTrajectoryStats()
460
730
  };
461
731
  }
462
732
  /**