fivocell 1.0.0 → 1.0.2

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 (568) hide show
  1. package/LICENSE +202 -98
  2. package/README.md +418 -180
  3. package/dist/cli.js +698 -80
  4. package/dist/cli.js.map +1 -1
  5. package/dist/core/__tests__/ab-test-framework.test.d.ts +2 -0
  6. package/dist/core/__tests__/ab-test-framework.test.d.ts.map +1 -0
  7. package/dist/core/__tests__/ab-test-framework.test.js +43 -0
  8. package/dist/core/__tests__/ab-test-framework.test.js.map +1 -0
  9. package/dist/core/__tests__/ai-memory.test.d.ts +2 -0
  10. package/dist/core/__tests__/ai-memory.test.d.ts.map +1 -0
  11. package/dist/core/__tests__/ai-memory.test.js +143 -0
  12. package/dist/core/__tests__/ai-memory.test.js.map +1 -0
  13. package/dist/core/__tests__/ast-extractor.test.d.ts +2 -0
  14. package/dist/core/__tests__/ast-extractor.test.d.ts.map +1 -0
  15. package/dist/core/__tests__/ast-extractor.test.js +30 -0
  16. package/dist/core/__tests__/ast-extractor.test.js.map +1 -0
  17. package/dist/core/__tests__/build-failure-predictor.test.d.ts +2 -0
  18. package/dist/core/__tests__/build-failure-predictor.test.d.ts.map +1 -0
  19. package/dist/core/__tests__/build-failure-predictor.test.js +76 -0
  20. package/dist/core/__tests__/build-failure-predictor.test.js.map +1 -0
  21. package/dist/core/__tests__/chapter3-verify.test.d.ts +2 -0
  22. package/dist/core/__tests__/chapter3-verify.test.d.ts.map +1 -0
  23. package/dist/core/__tests__/chapter3-verify.test.js +315 -0
  24. package/dist/core/__tests__/chapter3-verify.test.js.map +1 -0
  25. package/dist/core/__tests__/chapter4-hostile.test.d.ts +11 -0
  26. package/dist/core/__tests__/chapter4-hostile.test.d.ts.map +1 -0
  27. package/dist/core/__tests__/chapter4-hostile.test.js +269 -0
  28. package/dist/core/__tests__/chapter4-hostile.test.js.map +1 -0
  29. package/dist/core/__tests__/chapter4-verify.test.d.ts +2 -0
  30. package/dist/core/__tests__/chapter4-verify.test.d.ts.map +1 -0
  31. package/dist/core/__tests__/chapter4-verify.test.js +349 -0
  32. package/dist/core/__tests__/chapter4-verify.test.js.map +1 -0
  33. package/dist/core/__tests__/chapter8-hostile.test.d.ts +2 -0
  34. package/dist/core/__tests__/chapter8-hostile.test.d.ts.map +1 -0
  35. package/dist/core/__tests__/chapter8-hostile.test.js +445 -0
  36. package/dist/core/__tests__/chapter8-hostile.test.js.map +1 -0
  37. package/dist/core/__tests__/chapter9-hostile.test.d.ts +2 -0
  38. package/dist/core/__tests__/chapter9-hostile.test.d.ts.map +1 -0
  39. package/dist/core/__tests__/chapter9-hostile.test.js +783 -0
  40. package/dist/core/__tests__/chapter9-hostile.test.js.map +1 -0
  41. package/dist/core/__tests__/circular-dependency-detector.test.d.ts +2 -0
  42. package/dist/core/__tests__/circular-dependency-detector.test.d.ts.map +1 -0
  43. package/dist/core/__tests__/circular-dependency-detector.test.js +55 -0
  44. package/dist/core/__tests__/circular-dependency-detector.test.js.map +1 -0
  45. package/dist/core/__tests__/community-full.test.d.ts +2 -0
  46. package/dist/core/__tests__/community-full.test.d.ts.map +1 -0
  47. package/dist/core/__tests__/community-full.test.js +70 -0
  48. package/dist/core/__tests__/community-full.test.js.map +1 -0
  49. package/dist/core/__tests__/community-live.test.d.ts +2 -0
  50. package/dist/core/__tests__/community-live.test.d.ts.map +1 -0
  51. package/dist/core/__tests__/community-live.test.js +67 -0
  52. package/dist/core/__tests__/community-live.test.js.map +1 -0
  53. package/dist/core/__tests__/complexity-analyzer.test.d.ts +2 -0
  54. package/dist/core/__tests__/complexity-analyzer.test.d.ts.map +1 -0
  55. package/dist/core/__tests__/complexity-analyzer.test.js +54 -0
  56. package/dist/core/__tests__/complexity-analyzer.test.js.map +1 -0
  57. package/dist/core/__tests__/config-attribution.test.d.ts +2 -0
  58. package/dist/core/__tests__/config-attribution.test.d.ts.map +1 -0
  59. package/dist/core/__tests__/config-attribution.test.js +45 -0
  60. package/dist/core/__tests__/config-attribution.test.js.map +1 -0
  61. package/dist/core/__tests__/conflict-detector.test.d.ts +2 -0
  62. package/dist/core/__tests__/conflict-detector.test.d.ts.map +1 -0
  63. package/dist/core/__tests__/conflict-detector.test.js +120 -0
  64. package/dist/core/__tests__/conflict-detector.test.js.map +1 -0
  65. package/dist/core/__tests__/context-restore.test.d.ts +2 -0
  66. package/dist/core/__tests__/context-restore.test.d.ts.map +1 -0
  67. package/dist/core/__tests__/context-restore.test.js +75 -0
  68. package/dist/core/__tests__/context-restore.test.js.map +1 -0
  69. package/dist/core/__tests__/convention-detector.test.d.ts +2 -0
  70. package/dist/core/__tests__/convention-detector.test.d.ts.map +1 -0
  71. package/dist/core/__tests__/convention-detector.test.js +97 -0
  72. package/dist/core/__tests__/convention-detector.test.js.map +1 -0
  73. package/dist/core/__tests__/cost-optimizer.test.d.ts +1 -0
  74. package/dist/core/__tests__/cost-optimizer.test.d.ts.map +1 -0
  75. package/dist/core/__tests__/cost-optimizer.test.js +92 -0
  76. package/dist/core/__tests__/cost-optimizer.test.js.map +1 -0
  77. package/dist/core/__tests__/cross-domain-projections.test.d.ts +2 -0
  78. package/dist/core/__tests__/cross-domain-projections.test.d.ts.map +1 -0
  79. package/dist/core/__tests__/cross-domain-projections.test.js +36 -0
  80. package/dist/core/__tests__/cross-domain-projections.test.js.map +1 -0
  81. package/dist/core/__tests__/cross-project-sync.test.d.ts +2 -0
  82. package/dist/core/__tests__/cross-project-sync.test.d.ts.map +1 -0
  83. package/dist/core/__tests__/cross-project-sync.test.js +67 -0
  84. package/dist/core/__tests__/cross-project-sync.test.js.map +1 -0
  85. package/dist/core/__tests__/dead-code-detector.test.d.ts +2 -0
  86. package/dist/core/__tests__/dead-code-detector.test.d.ts.map +1 -0
  87. package/dist/core/__tests__/dead-code-detector.test.js +41 -0
  88. package/dist/core/__tests__/dead-code-detector.test.js.map +1 -0
  89. package/dist/core/__tests__/dependency-health-checker.test.d.ts +2 -0
  90. package/dist/core/__tests__/dependency-health-checker.test.d.ts.map +1 -0
  91. package/dist/core/__tests__/dependency-health-checker.test.js +50 -0
  92. package/dist/core/__tests__/dependency-health-checker.test.js.map +1 -0
  93. package/dist/core/__tests__/duplication-detector.test.d.ts +2 -0
  94. package/dist/core/__tests__/duplication-detector.test.d.ts.map +1 -0
  95. package/dist/core/__tests__/duplication-detector.test.js +46 -0
  96. package/dist/core/__tests__/duplication-detector.test.js.map +1 -0
  97. package/dist/core/__tests__/error-predictor.test.d.ts +2 -0
  98. package/dist/core/__tests__/error-predictor.test.d.ts.map +1 -0
  99. package/dist/core/__tests__/error-predictor.test.js +65 -0
  100. package/dist/core/__tests__/error-predictor.test.js.map +1 -0
  101. package/dist/core/__tests__/explainability.test.d.ts +2 -0
  102. package/dist/core/__tests__/explainability.test.d.ts.map +1 -0
  103. package/dist/core/__tests__/explainability.test.js +112 -0
  104. package/dist/core/__tests__/explainability.test.js.map +1 -0
  105. package/dist/core/__tests__/failure-memory.test.d.ts +2 -0
  106. package/dist/core/__tests__/failure-memory.test.d.ts.map +1 -0
  107. package/dist/core/__tests__/failure-memory.test.js +124 -0
  108. package/dist/core/__tests__/failure-memory.test.js.map +1 -0
  109. package/dist/core/__tests__/git-branch-pregenerator.test.d.ts +2 -0
  110. package/dist/core/__tests__/git-branch-pregenerator.test.d.ts.map +1 -0
  111. package/dist/core/__tests__/git-branch-pregenerator.test.js +44 -0
  112. package/dist/core/__tests__/git-branch-pregenerator.test.js.map +1 -0
  113. package/dist/core/__tests__/handoff-detector.test.d.ts +2 -0
  114. package/dist/core/__tests__/handoff-detector.test.d.ts.map +1 -0
  115. package/dist/core/__tests__/handoff-detector.test.js +71 -0
  116. package/dist/core/__tests__/handoff-detector.test.js.map +1 -0
  117. package/dist/core/__tests__/interruption-recovery.test.d.ts +2 -0
  118. package/dist/core/__tests__/interruption-recovery.test.d.ts.map +1 -0
  119. package/dist/core/__tests__/interruption-recovery.test.js +66 -0
  120. package/dist/core/__tests__/interruption-recovery.test.js.map +1 -0
  121. package/dist/core/__tests__/knowledge-graph.test.d.ts +1 -0
  122. package/dist/core/__tests__/knowledge-graph.test.d.ts.map +1 -0
  123. package/dist/core/__tests__/knowledge-graph.test.js +124 -0
  124. package/dist/core/__tests__/knowledge-graph.test.js.map +1 -0
  125. package/dist/core/__tests__/knowledge-silo-detector.test.d.ts +2 -0
  126. package/dist/core/__tests__/knowledge-silo-detector.test.d.ts.map +1 -0
  127. package/dist/core/__tests__/knowledge-silo-detector.test.js +77 -0
  128. package/dist/core/__tests__/knowledge-silo-detector.test.js.map +1 -0
  129. package/dist/core/__tests__/language-switch-assistant.test.d.ts +2 -0
  130. package/dist/core/__tests__/language-switch-assistant.test.d.ts.map +1 -0
  131. package/dist/core/__tests__/language-switch-assistant.test.js +34 -0
  132. package/dist/core/__tests__/language-switch-assistant.test.js.map +1 -0
  133. package/dist/core/__tests__/marketplace.test.d.ts +2 -0
  134. package/dist/core/__tests__/marketplace.test.d.ts.map +1 -0
  135. package/dist/core/__tests__/marketplace.test.js +96 -0
  136. package/dist/core/__tests__/marketplace.test.js.map +1 -0
  137. package/dist/core/__tests__/merge-conflict-predictor.test.d.ts +2 -0
  138. package/dist/core/__tests__/merge-conflict-predictor.test.d.ts.map +1 -0
  139. package/dist/core/__tests__/merge-conflict-predictor.test.js +36 -0
  140. package/dist/core/__tests__/merge-conflict-predictor.test.js.map +1 -0
  141. package/dist/core/__tests__/next-action-predictor.test.d.ts +2 -0
  142. package/dist/core/__tests__/next-action-predictor.test.d.ts.map +1 -0
  143. package/dist/core/__tests__/next-action-predictor.test.js +57 -0
  144. package/dist/core/__tests__/next-action-predictor.test.js.map +1 -0
  145. package/dist/core/__tests__/offline-queue.test.d.ts +2 -0
  146. package/dist/core/__tests__/offline-queue.test.d.ts.map +1 -0
  147. package/dist/core/__tests__/offline-queue.test.js +84 -0
  148. package/dist/core/__tests__/offline-queue.test.js.map +1 -0
  149. package/dist/core/__tests__/organization-memory.test.d.ts +2 -0
  150. package/dist/core/__tests__/organization-memory.test.d.ts.map +1 -0
  151. package/dist/core/__tests__/organization-memory.test.js +89 -0
  152. package/dist/core/__tests__/organization-memory.test.js.map +1 -0
  153. package/dist/core/__tests__/pattern-utils.test.d.ts +2 -0
  154. package/dist/core/__tests__/pattern-utils.test.d.ts.map +1 -0
  155. package/dist/core/__tests__/pattern-utils.test.js +52 -0
  156. package/dist/core/__tests__/pattern-utils.test.js.map +1 -0
  157. package/dist/core/__tests__/performance-predictor.test.d.ts +2 -0
  158. package/dist/core/__tests__/performance-predictor.test.d.ts.map +1 -0
  159. package/dist/core/__tests__/performance-predictor.test.js +60 -0
  160. package/dist/core/__tests__/performance-predictor.test.js.map +1 -0
  161. package/dist/core/__tests__/playbook-generator.test.d.ts +2 -0
  162. package/dist/core/__tests__/playbook-generator.test.d.ts.map +1 -0
  163. package/dist/core/__tests__/playbook-generator.test.js +94 -0
  164. package/dist/core/__tests__/playbook-generator.test.js.map +1 -0
  165. package/dist/core/__tests__/pr-review-assistant.test.d.ts +2 -0
  166. package/dist/core/__tests__/pr-review-assistant.test.d.ts.map +1 -0
  167. package/dist/core/__tests__/pr-review-assistant.test.js +35 -0
  168. package/dist/core/__tests__/pr-review-assistant.test.js.map +1 -0
  169. package/dist/core/__tests__/privacy-manager.test.d.ts +2 -0
  170. package/dist/core/__tests__/privacy-manager.test.d.ts.map +1 -0
  171. package/dist/core/__tests__/privacy-manager.test.js +97 -0
  172. package/dist/core/__tests__/privacy-manager.test.js.map +1 -0
  173. package/dist/core/__tests__/project-dna.test.d.ts +2 -0
  174. package/dist/core/__tests__/project-dna.test.d.ts.map +1 -0
  175. package/dist/core/__tests__/project-dna.test.js +135 -0
  176. package/dist/core/__tests__/project-dna.test.js.map +1 -0
  177. package/dist/core/__tests__/regex-extractor.test.d.ts +2 -0
  178. package/dist/core/__tests__/regex-extractor.test.d.ts.map +1 -0
  179. package/dist/core/__tests__/regex-extractor.test.js +49 -0
  180. package/dist/core/__tests__/regex-extractor.test.js.map +1 -0
  181. package/dist/core/__tests__/reputation.test.d.ts +2 -0
  182. package/dist/core/__tests__/reputation.test.d.ts.map +1 -0
  183. package/dist/core/__tests__/reputation.test.js +100 -0
  184. package/dist/core/__tests__/reputation.test.js.map +1 -0
  185. package/dist/core/__tests__/security-predictor.test.d.ts +2 -0
  186. package/dist/core/__tests__/security-predictor.test.d.ts.map +1 -0
  187. package/dist/core/__tests__/security-predictor.test.js +60 -0
  188. package/dist/core/__tests__/security-predictor.test.js.map +1 -0
  189. package/dist/core/__tests__/signal-capture.test.d.ts +2 -0
  190. package/dist/core/__tests__/signal-capture.test.d.ts.map +1 -0
  191. package/dist/core/__tests__/signal-capture.test.js +98 -0
  192. package/dist/core/__tests__/signal-capture.test.js.map +1 -0
  193. package/dist/core/__tests__/solution-index.test.d.ts +2 -0
  194. package/dist/core/__tests__/solution-index.test.d.ts.map +1 -0
  195. package/dist/core/__tests__/solution-index.test.js +78 -0
  196. package/dist/core/__tests__/solution-index.test.js.map +1 -0
  197. package/dist/core/__tests__/standup-generator.test.d.ts +2 -0
  198. package/dist/core/__tests__/standup-generator.test.d.ts.map +1 -0
  199. package/dist/core/__tests__/standup-generator.test.js +46 -0
  200. package/dist/core/__tests__/standup-generator.test.js.map +1 -0
  201. package/dist/core/__tests__/team-composer.test.d.ts +2 -0
  202. package/dist/core/__tests__/team-composer.test.d.ts.map +1 -0
  203. package/dist/core/__tests__/team-composer.test.js +113 -0
  204. package/dist/core/__tests__/team-composer.test.js.map +1 -0
  205. package/dist/core/__tests__/test-anticipator.test.d.ts +2 -0
  206. package/dist/core/__tests__/test-anticipator.test.d.ts.map +1 -0
  207. package/dist/core/__tests__/test-anticipator.test.js +41 -0
  208. package/dist/core/__tests__/test-anticipator.test.js.map +1 -0
  209. package/dist/core/__tests__/time-saved.test.d.ts +1 -0
  210. package/dist/core/__tests__/time-saved.test.d.ts.map +1 -0
  211. package/dist/core/__tests__/time-saved.test.js +93 -0
  212. package/dist/core/__tests__/time-saved.test.js.map +1 -0
  213. package/dist/core/__tests__/validation-run.test.d.ts +7 -0
  214. package/dist/core/__tests__/validation-run.test.d.ts.map +1 -0
  215. package/dist/core/__tests__/validation-run.test.js +510 -0
  216. package/dist/core/__tests__/validation-run.test.js.map +1 -0
  217. package/dist/core/__tests__/workflow-outcome-graph.test.d.ts +2 -0
  218. package/dist/core/__tests__/workflow-outcome-graph.test.d.ts.map +1 -0
  219. package/dist/core/__tests__/workflow-outcome-graph.test.js +89 -0
  220. package/dist/core/__tests__/workflow-outcome-graph.test.js.map +1 -0
  221. package/dist/core/ai-memory.d.ts +84 -0
  222. package/dist/core/ai-memory.d.ts.map +1 -0
  223. package/dist/core/ai-memory.js +238 -0
  224. package/dist/core/ai-memory.js.map +1 -0
  225. package/dist/core/architecture-engine.d.ts +104 -0
  226. package/dist/core/architecture-engine.d.ts.map +1 -0
  227. package/dist/core/architecture-engine.js +216 -0
  228. package/dist/core/architecture-engine.js.map +1 -0
  229. package/dist/core/ast-differ.d.ts +15 -0
  230. package/dist/core/ast-differ.d.ts.map +1 -0
  231. package/dist/core/ast-differ.js +528 -0
  232. package/dist/core/ast-differ.js.map +1 -0
  233. package/dist/core/ast-extractor.d.ts +1 -1
  234. package/dist/core/ast-extractor.d.ts.map +1 -1
  235. package/dist/core/ast-extractor.js +7 -5
  236. package/dist/core/ast-extractor.js.map +1 -1
  237. package/dist/core/backend-engine.d.ts +40 -0
  238. package/dist/core/backend-engine.d.ts.map +1 -0
  239. package/dist/core/backend-engine.js +131 -0
  240. package/dist/core/backend-engine.js.map +1 -0
  241. package/dist/core/blind-spot-engine.d.ts +29 -0
  242. package/dist/core/blind-spot-engine.d.ts.map +1 -0
  243. package/dist/core/blind-spot-engine.js +579 -0
  244. package/dist/core/blind-spot-engine.js.map +1 -0
  245. package/dist/core/build-failure-predictor.d.ts +4 -0
  246. package/dist/core/build-failure-predictor.d.ts.map +1 -1
  247. package/dist/core/build-failure-predictor.js +111 -58
  248. package/dist/core/build-failure-predictor.js.map +1 -1
  249. package/dist/core/cell-store.d.ts +72 -0
  250. package/dist/core/cell-store.d.ts.map +1 -0
  251. package/dist/core/cell-store.js +171 -0
  252. package/dist/core/cell-store.js.map +1 -0
  253. package/dist/core/community-advanced-engine.d.ts +30 -0
  254. package/dist/core/community-advanced-engine.d.ts.map +1 -0
  255. package/dist/core/community-advanced-engine.js +103 -0
  256. package/dist/core/community-advanced-engine.js.map +1 -0
  257. package/dist/core/community-engine.d.ts +62 -0
  258. package/dist/core/community-engine.d.ts.map +1 -0
  259. package/dist/core/community-engine.js +194 -0
  260. package/dist/core/community-engine.js.map +1 -0
  261. package/dist/core/community-full.d.ts +2 -3
  262. package/dist/core/community-full.d.ts.map +1 -1
  263. package/dist/core/community-full.js +2 -5
  264. package/dist/core/community-full.js.map +1 -1
  265. package/dist/core/community-intelligence.d.ts +169 -0
  266. package/dist/core/community-intelligence.d.ts.map +1 -0
  267. package/dist/core/community-intelligence.js +527 -0
  268. package/dist/core/community-intelligence.js.map +1 -0
  269. package/dist/core/community-live.d.ts +1 -0
  270. package/dist/core/community-live.d.ts.map +1 -1
  271. package/dist/core/community-live.js +9 -6
  272. package/dist/core/community-live.js.map +1 -1
  273. package/dist/core/community-prior.d.ts +1 -0
  274. package/dist/core/community-prior.d.ts.map +1 -1
  275. package/dist/core/community-prior.js +18 -10
  276. package/dist/core/community-prior.js.map +1 -1
  277. package/dist/core/confidence-engine.d.ts +2 -3
  278. package/dist/core/confidence-engine.d.ts.map +1 -1
  279. package/dist/core/confidence-engine.js +29 -32
  280. package/dist/core/confidence-engine.js.map +1 -1
  281. package/dist/core/conflict-detector.js +1 -1
  282. package/dist/core/conflict-detector.js.map +1 -1
  283. package/dist/core/convention-detector.d.ts +37 -0
  284. package/dist/core/convention-detector.d.ts.map +1 -0
  285. package/dist/core/convention-detector.js +189 -0
  286. package/dist/core/convention-detector.js.map +1 -0
  287. package/dist/core/cost-optimizer.d.ts +78 -0
  288. package/dist/core/cost-optimizer.d.ts.map +1 -0
  289. package/dist/core/cost-optimizer.js +257 -0
  290. package/dist/core/cost-optimizer.js.map +1 -0
  291. package/dist/core/cross-domain-projections.js +2 -2
  292. package/dist/core/cross-layer-intelligence.d.ts +375 -0
  293. package/dist/core/cross-layer-intelligence.d.ts.map +1 -0
  294. package/dist/core/cross-layer-intelligence.js +690 -0
  295. package/dist/core/cross-layer-intelligence.js.map +1 -0
  296. package/dist/core/developer-profile.d.ts +6 -0
  297. package/dist/core/developer-profile.d.ts.map +1 -0
  298. package/dist/core/developer-profile.js +78 -0
  299. package/dist/core/developer-profile.js.map +1 -0
  300. package/dist/core/error-predictor.d.ts +5 -2
  301. package/dist/core/error-predictor.d.ts.map +1 -1
  302. package/dist/core/error-predictor.js +124 -40
  303. package/dist/core/error-predictor.js.map +1 -1
  304. package/dist/core/explainability.d.ts +33 -0
  305. package/dist/core/explainability.d.ts.map +1 -0
  306. package/dist/core/explainability.js +131 -0
  307. package/dist/core/explainability.js.map +1 -0
  308. package/dist/core/extraction-cascade.d.ts +19 -5
  309. package/dist/core/extraction-cascade.d.ts.map +1 -1
  310. package/dist/core/extraction-cascade.js +86 -15
  311. package/dist/core/extraction-cascade.js.map +1 -1
  312. package/dist/core/failure-memory.d.ts +38 -0
  313. package/dist/core/failure-memory.d.ts.map +1 -0
  314. package/dist/core/failure-memory.js +113 -0
  315. package/dist/core/failure-memory.js.map +1 -0
  316. package/dist/core/frontend-engine.d.ts +40 -0
  317. package/dist/core/frontend-engine.d.ts.map +1 -0
  318. package/dist/core/frontend-engine.js +129 -0
  319. package/dist/core/frontend-engine.js.map +1 -0
  320. package/dist/core/go-extractor.d.ts +5 -0
  321. package/dist/core/go-extractor.d.ts.map +1 -0
  322. package/dist/core/go-extractor.js +68 -0
  323. package/dist/core/go-extractor.js.map +1 -0
  324. package/dist/core/identity-resolver.d.ts.map +1 -1
  325. package/dist/core/identity-resolver.js +16 -31
  326. package/dist/core/identity-resolver.js.map +1 -1
  327. package/dist/core/knowledge-graph-engine.d.ts +62 -0
  328. package/dist/core/knowledge-graph-engine.d.ts.map +1 -0
  329. package/dist/core/knowledge-graph-engine.js +176 -0
  330. package/dist/core/knowledge-graph-engine.js.map +1 -0
  331. package/dist/core/knowledge-graph.d.ts +229 -0
  332. package/dist/core/knowledge-graph.d.ts.map +1 -0
  333. package/dist/core/knowledge-graph.js +713 -0
  334. package/dist/core/knowledge-graph.js.map +1 -0
  335. package/dist/core/language-switch-assistant.d.ts.map +1 -1
  336. package/dist/core/language-switch-assistant.js +4 -1
  337. package/dist/core/language-switch-assistant.js.map +1 -1
  338. package/dist/core/learning-layer.d.ts +11 -0
  339. package/dist/core/learning-layer.d.ts.map +1 -0
  340. package/dist/core/learning-layer.js +25 -0
  341. package/dist/core/learning-layer.js.map +1 -0
  342. package/dist/core/marketplace.d.ts +43 -0
  343. package/dist/core/marketplace.d.ts.map +1 -0
  344. package/dist/core/marketplace.js +133 -0
  345. package/dist/core/marketplace.js.map +1 -0
  346. package/dist/core/memory-store.d.ts +59 -0
  347. package/dist/core/memory-store.d.ts.map +1 -0
  348. package/dist/core/memory-store.js +151 -0
  349. package/dist/core/memory-store.js.map +1 -0
  350. package/dist/core/naming-engine.d.ts +43 -0
  351. package/dist/core/naming-engine.d.ts.map +1 -0
  352. package/dist/core/naming-engine.js +120 -0
  353. package/dist/core/naming-engine.js.map +1 -0
  354. package/dist/core/org-intelligence.d.ts +151 -0
  355. package/dist/core/org-intelligence.d.ts.map +1 -0
  356. package/dist/core/org-intelligence.js +490 -0
  357. package/dist/core/org-intelligence.js.map +1 -0
  358. package/dist/core/organization-memory.d.ts +34 -0
  359. package/dist/core/organization-memory.d.ts.map +1 -0
  360. package/dist/core/organization-memory.js +148 -0
  361. package/dist/core/organization-memory.js.map +1 -0
  362. package/dist/core/outcome-engine.d.ts +21 -0
  363. package/dist/core/outcome-engine.d.ts.map +1 -0
  364. package/dist/core/outcome-engine.js +220 -0
  365. package/dist/core/outcome-engine.js.map +1 -0
  366. package/dist/core/outcome-recorder.d.ts +34 -0
  367. package/dist/core/outcome-recorder.d.ts.map +1 -0
  368. package/dist/core/outcome-recorder.js +109 -0
  369. package/dist/core/outcome-recorder.js.map +1 -0
  370. package/dist/core/outcome-store.d.ts +21 -0
  371. package/dist/core/outcome-store.d.ts.map +1 -0
  372. package/dist/core/outcome-store.js +120 -0
  373. package/dist/core/outcome-store.js.map +1 -0
  374. package/dist/core/outcome-types.d.ts +64 -0
  375. package/dist/core/outcome-types.d.ts.map +1 -0
  376. package/dist/core/outcome-types.js +20 -0
  377. package/dist/core/outcome-types.js.map +1 -0
  378. package/dist/core/pattern-classifier.d.ts +11 -0
  379. package/dist/core/pattern-classifier.d.ts.map +1 -0
  380. package/dist/core/pattern-classifier.js +82 -0
  381. package/dist/core/pattern-classifier.js.map +1 -0
  382. package/dist/core/pattern-lifecycle.d.ts +8 -0
  383. package/dist/core/pattern-lifecycle.d.ts.map +1 -0
  384. package/dist/core/pattern-lifecycle.js +25 -0
  385. package/dist/core/pattern-lifecycle.js.map +1 -0
  386. package/dist/core/pattern-quality.d.ts +6 -0
  387. package/dist/core/pattern-quality.d.ts.map +1 -0
  388. package/dist/core/pattern-quality.js +45 -0
  389. package/dist/core/pattern-quality.js.map +1 -0
  390. package/dist/core/pattern-ranking.d.ts +8 -0
  391. package/dist/core/pattern-ranking.d.ts.map +1 -0
  392. package/dist/core/pattern-ranking.js +40 -0
  393. package/dist/core/pattern-ranking.js.map +1 -0
  394. package/dist/core/pattern-relationships.d.ts +16 -0
  395. package/dist/core/pattern-relationships.d.ts.map +1 -0
  396. package/dist/core/pattern-relationships.js +66 -0
  397. package/dist/core/pattern-relationships.js.map +1 -0
  398. package/dist/core/pattern-search.d.ts +25 -0
  399. package/dist/core/pattern-search.d.ts.map +1 -0
  400. package/dist/core/pattern-search.js +82 -0
  401. package/dist/core/pattern-search.js.map +1 -0
  402. package/dist/core/pattern-store.d.ts +18 -3
  403. package/dist/core/pattern-store.d.ts.map +1 -1
  404. package/dist/core/pattern-store.js +155 -54
  405. package/dist/core/pattern-store.js.map +1 -1
  406. package/dist/core/{enterprise-features.d.ts → pattern-utils.d.ts} +2 -4
  407. package/dist/core/pattern-utils.d.ts.map +1 -0
  408. package/dist/core/{enterprise-features.js → pattern-utils.js} +4 -24
  409. package/dist/core/pattern-utils.js.map +1 -0
  410. package/dist/core/pattern-validator.d.ts +14 -0
  411. package/dist/core/pattern-validator.d.ts.map +1 -0
  412. package/dist/core/pattern-validator.js +47 -0
  413. package/dist/core/pattern-validator.js.map +1 -0
  414. package/dist/core/performance-predictor.d.ts +4 -0
  415. package/dist/core/performance-predictor.d.ts.map +1 -1
  416. package/dist/core/performance-predictor.js +143 -38
  417. package/dist/core/performance-predictor.js.map +1 -1
  418. package/dist/core/platt-calibration.d.ts.map +1 -1
  419. package/dist/core/platt-calibration.js +5 -3
  420. package/dist/core/platt-calibration.js.map +1 -1
  421. package/dist/core/playbook-generator.d.ts +21 -0
  422. package/dist/core/playbook-generator.d.ts.map +1 -0
  423. package/dist/core/playbook-generator.js +161 -0
  424. package/dist/core/playbook-generator.js.map +1 -0
  425. package/dist/core/privacy-manager.d.ts +43 -0
  426. package/dist/core/privacy-manager.d.ts.map +1 -0
  427. package/dist/core/privacy-manager.js +131 -0
  428. package/dist/core/privacy-manager.js.map +1 -0
  429. package/dist/core/productivity-engine.d.ts +57 -0
  430. package/dist/core/productivity-engine.d.ts.map +1 -0
  431. package/dist/core/productivity-engine.js +138 -0
  432. package/dist/core/productivity-engine.js.map +1 -0
  433. package/dist/core/project-dna-types.d.ts +150 -0
  434. package/dist/core/project-dna-types.d.ts.map +1 -0
  435. package/dist/core/project-dna-types.js +3 -0
  436. package/dist/core/project-dna-types.js.map +1 -0
  437. package/dist/core/project-dna.d.ts +122 -0
  438. package/dist/core/project-dna.d.ts.map +1 -0
  439. package/dist/core/project-dna.js +922 -0
  440. package/dist/core/project-dna.js.map +1 -0
  441. package/dist/core/python-extractor.d.ts +5 -0
  442. package/dist/core/python-extractor.d.ts.map +1 -0
  443. package/dist/core/python-extractor.js +68 -0
  444. package/dist/core/python-extractor.js.map +1 -0
  445. package/dist/core/realtime-guardian.d.ts.map +1 -1
  446. package/dist/core/realtime-guardian.js +1 -3
  447. package/dist/core/realtime-guardian.js.map +1 -1
  448. package/dist/core/recommendation-engine.d.ts +9 -0
  449. package/dist/core/recommendation-engine.d.ts.map +1 -0
  450. package/dist/core/recommendation-engine.js +152 -0
  451. package/dist/core/recommendation-engine.js.map +1 -0
  452. package/dist/core/recommendation-store.d.ts +21 -0
  453. package/dist/core/recommendation-store.d.ts.map +1 -0
  454. package/dist/core/recommendation-store.js +125 -0
  455. package/dist/core/recommendation-store.js.map +1 -0
  456. package/dist/core/recommendation-types.d.ts +54 -0
  457. package/dist/core/recommendation-types.d.ts.map +1 -0
  458. package/dist/core/recommendation-types.js +3 -0
  459. package/dist/core/recommendation-types.js.map +1 -0
  460. package/dist/core/regex-extractor.js +1 -1
  461. package/dist/core/regex-extractor.js.map +1 -1
  462. package/dist/core/reputation.d.ts +42 -0
  463. package/dist/core/reputation.d.ts.map +1 -0
  464. package/dist/core/reputation.js +173 -0
  465. package/dist/core/reputation.js.map +1 -0
  466. package/dist/core/scale-tester.d.ts +2 -2
  467. package/dist/core/scale-tester.d.ts.map +1 -1
  468. package/dist/core/scale-tester.js +12 -1
  469. package/dist/core/scale-tester.js.map +1 -1
  470. package/dist/core/search-engine.d.ts +37 -0
  471. package/dist/core/search-engine.d.ts.map +1 -0
  472. package/dist/core/search-engine.js +223 -0
  473. package/dist/core/search-engine.js.map +1 -0
  474. package/dist/core/security-predictor.d.ts +2 -1
  475. package/dist/core/security-predictor.d.ts.map +1 -1
  476. package/dist/core/security-predictor.js +80 -30
  477. package/dist/core/security-predictor.js.map +1 -1
  478. package/dist/core/session-recovery.js +8 -8
  479. package/dist/core/session-recovery.js.map +1 -1
  480. package/dist/core/similarity-engine.d.ts +8 -0
  481. package/dist/core/similarity-engine.d.ts.map +1 -0
  482. package/dist/core/similarity-engine.js +74 -0
  483. package/dist/core/similarity-engine.js.map +1 -0
  484. package/dist/core/structure-engine.d.ts +34 -0
  485. package/dist/core/structure-engine.d.ts.map +1 -0
  486. package/dist/core/structure-engine.js +114 -0
  487. package/dist/core/structure-engine.js.map +1 -0
  488. package/dist/core/syntax-engine.d.ts +101 -0
  489. package/dist/core/syntax-engine.d.ts.map +1 -0
  490. package/dist/core/syntax-engine.js +342 -0
  491. package/dist/core/syntax-engine.js.map +1 -0
  492. package/dist/core/team-advanced-engine.d.ts +19 -0
  493. package/dist/core/team-advanced-engine.d.ts.map +1 -0
  494. package/dist/core/team-advanced-engine.js +91 -0
  495. package/dist/core/team-advanced-engine.js.map +1 -0
  496. package/dist/core/team-engine.d.ts +59 -0
  497. package/dist/core/team-engine.d.ts.map +1 -0
  498. package/dist/core/team-engine.js +141 -0
  499. package/dist/core/team-engine.js.map +1 -0
  500. package/dist/core/time-saved.d.ts +51 -0
  501. package/dist/core/time-saved.d.ts.map +1 -0
  502. package/dist/core/time-saved.js +97 -0
  503. package/dist/core/time-saved.js.map +1 -0
  504. package/dist/core/workflow-outcome-graph.d.ts +46 -0
  505. package/dist/core/workflow-outcome-graph.d.ts.map +1 -0
  506. package/dist/core/workflow-outcome-graph.js +168 -0
  507. package/dist/core/workflow-outcome-graph.js.map +1 -0
  508. package/dist/core/workflow-tracker.d.ts +36 -0
  509. package/dist/core/workflow-tracker.d.ts.map +1 -0
  510. package/dist/core/workflow-tracker.js +99 -0
  511. package/dist/core/workflow-tracker.js.map +1 -0
  512. package/dist/core/ws-client.d.ts +24 -0
  513. package/dist/core/ws-client.d.ts.map +1 -0
  514. package/dist/core/ws-client.js +203 -0
  515. package/dist/core/ws-client.js.map +1 -0
  516. package/dist/daemon/lifecycle.d.ts.map +1 -1
  517. package/dist/daemon/lifecycle.js +9 -10
  518. package/dist/daemon/lifecycle.js.map +1 -1
  519. package/dist/daemon/server.d.ts +4 -2
  520. package/dist/daemon/server.d.ts.map +1 -1
  521. package/dist/daemon/server.js +886 -73
  522. package/dist/daemon/server.js.map +1 -1
  523. package/dist/daemon/watchdog.js +2 -1
  524. package/dist/daemon/watchdog.js.map +1 -1
  525. package/dist/index.d.ts +21 -2
  526. package/dist/index.d.ts.map +1 -1
  527. package/dist/index.js +37 -4
  528. package/dist/index.js.map +1 -1
  529. package/dist/store.d.ts +4 -0
  530. package/dist/store.d.ts.map +1 -0
  531. package/dist/store.js +47 -0
  532. package/dist/store.js.map +1 -0
  533. package/dist/types.d.ts +60 -1
  534. package/dist/types.d.ts.map +1 -1
  535. package/dist/types.js +13 -2
  536. package/dist/types.js.map +1 -1
  537. package/dist/validation/quick-run.d.ts +7 -0
  538. package/dist/validation/quick-run.d.ts.map +1 -0
  539. package/dist/validation/quick-run.js +404 -0
  540. package/dist/validation/quick-run.js.map +1 -0
  541. package/package.json +87 -53
  542. package/CHANGELOG.md +0 -32
  543. package/CONTRIBUTING.md +0 -60
  544. package/dist/core/cell-pro.d.ts +0 -28
  545. package/dist/core/cell-pro.d.ts.map +0 -1
  546. package/dist/core/cell-pro.js +0 -70
  547. package/dist/core/cell-pro.js.map +0 -1
  548. package/dist/core/enterprise-features.d.ts.map +0 -1
  549. package/dist/core/enterprise-features.js.map +0 -1
  550. package/dist/core/enterprise.d.ts +0 -27
  551. package/dist/core/enterprise.d.ts.map +0 -1
  552. package/dist/core/enterprise.js +0 -41
  553. package/dist/core/enterprise.js.map +0 -1
  554. package/extensions/jetbrains/plugin.json +0 -9
  555. package/extensions/shell/copilot-sync.js +0 -59
  556. package/extensions/shell/install.sh +0 -38
  557. package/extensions/shell/watcher.js +0 -113
  558. package/extensions/vscode/.vscodeignore +0 -5
  559. package/extensions/vscode/dist/daemon-client.js +0 -94
  560. package/extensions/vscode/dist/diff-tracker.js +0 -94
  561. package/extensions/vscode/dist/extension.js +0 -100
  562. package/extensions/vscode/dist/status-bar.js +0 -70
  563. package/extensions/vscode/package-lock.json +0 -40
  564. package/extensions/vscode/package.json +0 -27
  565. package/packages/mcp-server/dist/server.d.ts +0 -2
  566. package/packages/mcp-server/dist/server.js +0 -213
  567. package/packages/mcp-server/package-lock.json +0 -970
  568. package/packages/mcp-server/package.json +0 -19
@@ -0,0 +1,124 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ describe('KnowledgeGraph', () => {
36
+ let module;
37
+ beforeEach(async () => {
38
+ module = await Promise.resolve().then(() => __importStar(require('../knowledge-graph')));
39
+ // Build with empty to reset
40
+ module.buildKnowledgeGraph([]);
41
+ });
42
+ test('buildKnowledgeGraph creates nodes and edges', () => {
43
+ const patterns = [
44
+ { patternId: 'p1', category: 'variable_declaration', description: 'use const', from: 'var x', to: 'const x', language: 'typescript', framework: 'react' },
45
+ { patternId: 'p2', category: 'function_declaration', description: 'use arrow', from: 'function f', to: 'const f = ()', language: 'typescript', framework: 'react' },
46
+ ];
47
+ const g = module.buildKnowledgeGraph(patterns);
48
+ expect(g.nodes.length).toBeGreaterThanOrEqual(5); // 2 patterns + cat + lang + fw
49
+ expect(g.edges.length).toBeGreaterThanOrEqual(2); // category_of edges
50
+ });
51
+ test('getNodeNeighbors returns edges for a node', () => {
52
+ const patterns = [
53
+ { patternId: 'p1', category: 'a', description: 'p1', from: 'x', to: 'y', language: 'ts' },
54
+ ];
55
+ module.buildKnowledgeGraph(patterns);
56
+ const neighbors = module.getNodeNeighbors('p1');
57
+ expect(neighbors).not.toBeNull();
58
+ expect(neighbors.edges.length).toBeGreaterThanOrEqual(1);
59
+ });
60
+ test('getNodeNeighbors returns null for missing node', () => {
61
+ expect(module.getNodeNeighbors('nonexistent')).toBeNull();
62
+ });
63
+ test('findRelatedPatterns returns similar patterns', () => {
64
+ const patterns = [
65
+ { patternId: 'p1', category: 'a', description: 'use const', from: 'var x = 1', to: 'const x = 1', language: 'ts' },
66
+ { patternId: 'p2', category: 'a', description: 'use const', from: 'var y = 2', to: 'const y = 2', language: 'ts' },
67
+ { patternId: 'p3', category: 'b', description: 'use let', from: 'function f', to: '() =>', language: 'ts' },
68
+ ];
69
+ module.buildKnowledgeGraph(patterns);
70
+ const related = module.findRelatedPatterns('p1');
71
+ expect(related.length).toBeGreaterThan(0);
72
+ // p1 should be similar to p2 (both use const pattern)
73
+ const p2Rel = related.find((r) => r.patternId === 'p2');
74
+ expect(p2Rel).toBeDefined();
75
+ expect(p2Rel.relationship).toBe('similar');
76
+ });
77
+ test('getGraphStats returns correct counts', () => {
78
+ const patterns = [
79
+ { patternId: 'p1', category: 'a', description: 'p1', from: 'x', to: 'y', language: 'ts' },
80
+ { patternId: 'p2', category: 'b', description: 'p2', from: 'x', to: 'y', language: 'ts' },
81
+ ];
82
+ module.buildKnowledgeGraph(patterns);
83
+ const stats = module.getGraphStats();
84
+ expect(stats.nodes).toBeGreaterThan(0);
85
+ expect(stats.edges).toBeGreaterThan(0);
86
+ expect(stats.patternNodes).toBe(2);
87
+ });
88
+ test('similar patterns get similarity edges', () => {
89
+ const patterns = [
90
+ { patternId: 'p1', category: 'a', description: 'one', from: 'let x = 1', to: 'const x = 1', language: 'ts' },
91
+ { patternId: 'p2', category: 'a', description: 'two', from: 'let y = 2', to: 'const y = 2', language: 'ts' },
92
+ ];
93
+ const g = module.buildKnowledgeGraph(patterns);
94
+ const similarEdge = g.edges.find((e) => e.type === 'similar');
95
+ expect(similarEdge).toBeDefined();
96
+ expect(similarEdge.weight).toBeGreaterThanOrEqual(0.3);
97
+ });
98
+ test('extractEntities extracts classes and frameworks', () => {
99
+ const patterns = [
100
+ { patternId: 'p1', from: 'MyComponent', to: 'AnotherClass', description: 'React component', category: 'react' },
101
+ { patternId: 'p2', from: 'OldApi', to: 'NewApi', description: 'useEffect cleanup', category: 'react' },
102
+ ];
103
+ const entities = module.extractEntities(patterns);
104
+ expect(entities.length).toBeGreaterThanOrEqual(1);
105
+ });
106
+ test('inferRelationships finds category relationships', () => {
107
+ const patterns = [
108
+ { patternId: 'p1', from: 'a', to: 'b', description: 'A to B', category: 'react' },
109
+ { patternId: 'p2', from: 'a', to: 'c', description: 'A to C', category: 'react' },
110
+ ];
111
+ const rels = module.inferRelationships(patterns);
112
+ expect(rels.some((r) => r.type === 'alternative_to')).toBe(true);
113
+ });
114
+ test('findPaths returns traversal paths', () => {
115
+ const patterns = [
116
+ { patternId: 'p1', category: 'a', description: 'one', from: 'let x', to: 'const x', language: 'ts' },
117
+ { patternId: 'p2', category: 'a', description: 'two', from: 'const x', to: 'let y', language: 'ts' },
118
+ ];
119
+ module.buildKnowledgeGraph(patterns);
120
+ const paths = module.findPaths('p1', 'p2');
121
+ expect(paths).toBeDefined();
122
+ });
123
+ });
124
+ //# sourceMappingURL=knowledge-graph.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"knowledge-graph.test.js","sourceRoot":"","sources":["../../../src/core/__tests__/knowledge-graph.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=knowledge-silo-detector.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"knowledge-silo-detector.test.d.ts","sourceRoot":"","sources":["../../../src/core/__tests__/knowledge-silo-detector.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ const knowledge_silo_detector_1 = require("../knowledge-silo-detector");
37
+ const path = __importStar(require("path"));
38
+ describe('KnowledgeSiloDetector', () => {
39
+ let detector;
40
+ const testDir = path.join(process.cwd(), '.fivo/cell');
41
+ beforeEach(() => {
42
+ detector = new knowledge_silo_detector_1.KnowledgeSiloDetector(testDir);
43
+ });
44
+ test('analyzes single-contributor module as high risk', () => {
45
+ const report = detector.analyzeModule('auth', ['alice'], 10);
46
+ expect(report.riskScore).toBeGreaterThanOrEqual(0.7);
47
+ expect(report.busFactor).toBe(1);
48
+ });
49
+ test('analyzes multi-contributor module as low risk', () => {
50
+ const report = detector.analyzeModule('utils', ['alice', 'bob', 'carol', 'dave', 'eve'], 5);
51
+ expect(report.riskScore).toBeLessThan(0.5);
52
+ });
53
+ test('analyzeProject returns sorted reports', () => {
54
+ const reports = detector.analyzeProject({
55
+ auth: ['alice'],
56
+ api: ['alice', 'bob', 'carol'],
57
+ utils: ['alice', 'bob', 'carol', 'dave', 'eve'],
58
+ });
59
+ expect(reports.length).toBe(3);
60
+ expect(reports[0].riskScore).toBeGreaterThanOrEqual(reports[1].riskScore);
61
+ });
62
+ test('getTopRisks filters by threshold', () => {
63
+ const reports = detector.analyzeProject({
64
+ auth: ['alice'],
65
+ api: ['alice', 'bob', 'carol', 'dave'],
66
+ });
67
+ const risks = detector.getTopRisks(reports, 0.5);
68
+ expect(risks.length).toBeGreaterThan(0);
69
+ });
70
+ test('getGenerateDocsAction returns string', () => {
71
+ expect(detector.getGenerateDocsAction('auth')).toContain('auth');
72
+ });
73
+ test('getPairProgrammingAction returns string', () => {
74
+ expect(detector.getPairProgrammingAction('auth')).toContain('auth');
75
+ });
76
+ });
77
+ //# sourceMappingURL=knowledge-silo-detector.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"knowledge-silo-detector.test.js","sourceRoot":"","sources":["../../../src/core/__tests__/knowledge-silo-detector.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wEAAmE;AACnE,2CAA6B;AAE7B,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,IAAI,QAA+B,CAAC;IACpC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC;IAEvD,UAAU,CAAC,GAAG,EAAE;QACd,QAAQ,GAAG,IAAI,+CAAqB,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,iDAAiD,EAAE,GAAG,EAAE;QAC3D,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7D,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;QACrD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACzD,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5F,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uCAAuC,EAAE,GAAG,EAAE;QACjD,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC;YACtC,IAAI,EAAE,CAAC,OAAO,CAAC;YACf,GAAG,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC;YAC9B,KAAK,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC;SAChD,CAAC,CAAC;QACH,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC5C,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC;YACtC,IAAI,EAAE,CAAC,OAAO,CAAC;YACf,GAAG,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC;SACvC,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACjD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAChD,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACnD,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=language-switch-assistant.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"language-switch-assistant.test.d.ts","sourceRoot":"","sources":["../../../src/core/__tests__/language-switch-assistant.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const language_switch_assistant_1 = require("../language-switch-assistant");
4
+ describe('LanguageSwitchAssistant', () => {
5
+ let assistant;
6
+ beforeEach(() => {
7
+ assistant = new language_switch_assistant_1.LanguageSwitchAssistant();
8
+ });
9
+ test('returns guide for typescript→python', () => {
10
+ const guide = assistant.getGuide('typescript', 'python');
11
+ expect(guide).not.toBeNull();
12
+ expect(guide.gotchas.length).toBeGreaterThan(0);
13
+ });
14
+ test('returns guide for typescript→rust', () => {
15
+ const guide = assistant.getGuide('typescript', 'rust');
16
+ expect(guide).not.toBeNull();
17
+ });
18
+ test('returns null for unknown transition', () => {
19
+ expect(assistant.getGuide('haskell', 'cobol')).toBeNull();
20
+ });
21
+ test('getAvailableTransitions returns list', () => {
22
+ const transitions = assistant.getAvailableTransitions();
23
+ expect(transitions.length).toBeGreaterThan(0);
24
+ });
25
+ test('translates style patterns', () => {
26
+ const translated = assistant.translateStyle('const x = 1;', 'typescript', 'python');
27
+ expect(translated).not.toContain('const');
28
+ });
29
+ test('getStyleTips returns tips', () => {
30
+ const tips = assistant.getStyleTips('typescript', 'python');
31
+ expect(tips.length).toBeGreaterThan(0);
32
+ });
33
+ });
34
+ //# sourceMappingURL=language-switch-assistant.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"language-switch-assistant.test.js","sourceRoot":"","sources":["../../../src/core/__tests__/language-switch-assistant.test.ts"],"names":[],"mappings":";;AAAA,4EAAuE;AAEvE,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACvC,IAAI,SAAkC,CAAC;IAEvC,UAAU,CAAC,GAAG,EAAE;QACd,SAAS,GAAG,IAAI,mDAAuB,EAAE,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC/C,MAAM,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;QACzD,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC7B,MAAM,CAAC,KAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC7C,MAAM,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QACvD,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC/C,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAChD,MAAM,WAAW,GAAG,SAAS,CAAC,uBAAuB,EAAE,CAAC;QACxD,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACrC,MAAM,UAAU,GAAG,SAAS,CAAC,cAAc,CAAC,cAAc,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;QACpF,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACrC,MAAM,IAAI,GAAG,SAAS,CAAC,YAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;QAC5D,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=marketplace.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"marketplace.test.d.ts","sourceRoot":"","sources":["../../../src/core/__tests__/marketplace.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ const path = __importStar(require("path"));
37
+ const os = __importStar(require("os"));
38
+ const PKG_DIR = path.join(os.homedir(), '.fivo', 'cell', 'marketplace');
39
+ describe('Marketplace', () => {
40
+ let module;
41
+ beforeAll(async () => {
42
+ module = await Promise.resolve().then(() => __importStar(require('../marketplace')));
43
+ });
44
+ beforeEach(() => {
45
+ // Clean test dir
46
+ const fs = require('fs');
47
+ if (fs.existsSync(PKG_DIR)) {
48
+ for (const f of fs.readdirSync(PKG_DIR).filter((n) => n.endsWith('.json'))) {
49
+ fs.unlinkSync(path.join(PKG_DIR, f));
50
+ }
51
+ }
52
+ });
53
+ test('createPackage returns package with id and version', () => {
54
+ const pkg = module.createPackage({ name: 'test-pkg', description: 'Test', author: 'dev1', patterns: [{ category: 'a', description: 'b', from: 'x', to: 'y' }], tags: ['test'] });
55
+ expect(pkg.id).toBe('test-pkg');
56
+ expect(pkg.version).toBe(1);
57
+ expect(pkg.author).toBe('dev1');
58
+ });
59
+ test('getPackage returns null for missing', () => {
60
+ expect(module.getPackage('nonexistent')).toBeNull();
61
+ });
62
+ test('searchPackages finds by name, description, and tags', () => {
63
+ module.createPackage({ name: 'react-hook', description: 'React hook for X', author: 'dev1', patterns: [], tags: ['react', 'hook'] });
64
+ expect(module.searchPackages('react').length).toBeGreaterThanOrEqual(1);
65
+ expect(module.searchPackages('hook').length).toBeGreaterThanOrEqual(1);
66
+ expect(module.searchPackages('X').length).toBeGreaterThanOrEqual(1);
67
+ });
68
+ test('downloadPackage increments download count', () => {
69
+ module.createPackage({ name: 'dl-pkg', description: 'Test DL', author: 'dev1', patterns: [], tags: [] });
70
+ const before = module.getPackage('dl-pkg');
71
+ module.downloadPackage('dl-pkg');
72
+ const after = module.getPackage('dl-pkg');
73
+ expect(after.downloads).toBe(before.downloads + 1);
74
+ });
75
+ test('ratePackage updates rating', () => {
76
+ module.createPackage({ name: 'rate-pkg', description: 'Test Rate', author: 'dev1', patterns: [], tags: [] });
77
+ module.ratePackage('rate-pkg', 'dev2', 5, 'Great!');
78
+ module.ratePackage('rate-pkg', 'dev3', 3);
79
+ const pkg = module.getPackage('rate-pkg');
80
+ expect(pkg.ratingCount).toBe(2);
81
+ expect(pkg.rating).toBe(4);
82
+ });
83
+ test('ratePackage rejects invalid rating', () => {
84
+ module.createPackage({ name: 'bad-rate', description: 'Test', author: 'dev1', patterns: [], tags: [] });
85
+ expect(module.ratePackage('bad-rate', 'dev2', 0)).toBeNull();
86
+ expect(module.ratePackage('bad-rate', 'dev2', 6)).toBeNull();
87
+ });
88
+ test('getReviews returns reviews for a package', () => {
89
+ module.createPackage({ name: 'rev-pkg', description: 'Test Rev', author: 'dev1', patterns: [], tags: [] });
90
+ module.ratePackage('rev-pkg', 'dev2', 4, 'Nice!');
91
+ const reviews = module.getReviews('rev-pkg');
92
+ expect(reviews.length).toBe(1);
93
+ expect(reviews[0].comment).toBe('Nice!');
94
+ });
95
+ });
96
+ //# sourceMappingURL=marketplace.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"marketplace.test.js","sourceRoot":"","sources":["../../../src/core/__tests__/marketplace.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA6B;AAC7B,uCAAyB;AAEzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;AAExE,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,IAAI,MAAuC,CAAC;IAE5C,SAAS,CAAC,KAAK,IAAI,EAAE;QACnB,MAAM,GAAG,wDAAa,gBAAgB,GAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,GAAG,EAAE;QACd,iBAAiB;QACjB,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;gBACnF,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC7D,MAAM,GAAG,GAAG,MAAM,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACjL,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAChC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC/C,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC/D,MAAM,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QACrI,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;QACvE,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACrD,MAAM,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QACzG,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAE,CAAC;QAC5C,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QACjC,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAE,CAAC;QAC3C,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACtC,MAAM,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAC7G,MAAM,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;QACpD,MAAM,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAC1C,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,UAAU,CAAE,CAAC;QAC3C,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC9C,MAAM,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QACxG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC7D,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,0CAA0C,EAAE,GAAG,EAAE;QACpD,MAAM,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAC3G,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;QAClD,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC7C,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=merge-conflict-predictor.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge-conflict-predictor.test.d.ts","sourceRoot":"","sources":["../../../src/core/__tests__/merge-conflict-predictor.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const merge_conflict_predictor_1 = require("../merge-conflict-predictor");
4
+ describe('MergeConflictPredictor', () => {
5
+ let predictor;
6
+ beforeEach(() => {
7
+ predictor = new merge_conflict_predictor_1.MergeConflictPredictor();
8
+ });
9
+ test('detects same line edit conflict', () => {
10
+ const diffA = '+++ b/src/app.ts\n@@ -1,1 +1,1 @@\n+const x = 1;';
11
+ const diffB = '+++ b/src/app.ts\n@@ -1,1 +1,1 @@\n+const x = 2;';
12
+ const conflicts = predictor.predictConflicts(diffA, diffB);
13
+ expect(conflicts.length).toBeGreaterThan(0);
14
+ });
15
+ test('returns empty for non-overlapping diffs', () => {
16
+ const diffA = '+++ b/src/a.ts\n@@ -1,1 +1,1 @@\n+const a = 1;';
17
+ const diffB = '+++ b/src/b.ts\n@@ -1,1 +1,1 @@\n+const b = 2;';
18
+ const conflicts = predictor.predictConflicts(diffA, diffB);
19
+ expect(conflicts).toHaveLength(0);
20
+ });
21
+ test('applies user preference with low observation count', () => {
22
+ const diffA = '+++ b/src/app.ts\n@@ -1,1 +1,1 @@\n+const x = 1;';
23
+ const diffB = '+++ b/src/app.ts\n@@ -1,1 +1,1 @@\n+const x = 2;';
24
+ const conflicts = predictor.predictConflicts(diffA, diffB, { preferBranchA: true });
25
+ const adjusted = predictor.getUserPreferenceConfidence(conflicts, { preferBranchA: true }, 5);
26
+ expect(adjusted[0].confidence).toBeLessThan(conflicts[0].confidence);
27
+ });
28
+ test('applies user preference with sufficient observations', () => {
29
+ const diffA = '+++ b/src/app.ts\n@@ -1,1 +1,1 @@\n+const x = 1;';
30
+ const diffB = '+++ b/src/app.ts\n@@ -1,1 +1,1 @@\n+const x = 2;';
31
+ const conflicts = predictor.predictConflicts(diffA, diffB, { preferBranchA: true });
32
+ const adjusted = predictor.getUserPreferenceConfidence(conflicts, { preferBranchA: true }, 10);
33
+ expect(adjusted[0].suggestion).toContain('Branch A');
34
+ });
35
+ });
36
+ //# sourceMappingURL=merge-conflict-predictor.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge-conflict-predictor.test.js","sourceRoot":"","sources":["../../../src/core/__tests__/merge-conflict-predictor.test.ts"],"names":[],"mappings":";;AAAA,0EAAqE;AAErE,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACtC,IAAI,SAAiC,CAAC;IAEtC,UAAU,CAAC,GAAG,EAAE;QACd,SAAS,GAAG,IAAI,iDAAsB,EAAE,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;QAC3C,MAAM,KAAK,GAAG,kDAAkD,CAAC;QACjE,MAAM,KAAK,GAAG,kDAAkD,CAAC;QACjE,MAAM,SAAS,GAAG,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC3D,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACnD,MAAM,KAAK,GAAG,gDAAgD,CAAC;QAC/D,MAAM,KAAK,GAAG,gDAAgD,CAAC;QAC/D,MAAM,SAAS,GAAG,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC3D,MAAM,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC9D,MAAM,KAAK,GAAG,kDAAkD,CAAC;QACjE,MAAM,KAAK,GAAG,kDAAkD,CAAC;QACjE,MAAM,SAAS,GAAG,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACpF,MAAM,QAAQ,GAAG,SAAS,CAAC,2BAA2B,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;QAC9F,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,sDAAsD,EAAE,GAAG,EAAE;QAChE,MAAM,KAAK,GAAG,kDAAkD,CAAC;QACjE,MAAM,KAAK,GAAG,kDAAkD,CAAC;QACjE,MAAM,SAAS,GAAG,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACpF,MAAM,QAAQ,GAAG,SAAS,CAAC,2BAA2B,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAC/F,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=next-action-predictor.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"next-action-predictor.test.d.ts","sourceRoot":"","sources":["../../../src/core/__tests__/next-action-predictor.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const next_action_predictor_1 = require("../next-action-predictor");
4
+ describe('NextActionPredictor', () => {
5
+ let predictor;
6
+ beforeEach(() => {
7
+ predictor = new next_action_predictor_1.NextActionPredictor();
8
+ });
9
+ test('returns default suggestions when no history', () => {
10
+ const predictions = predictor.predictNext([]);
11
+ expect(predictions.length).toBeGreaterThan(0);
12
+ expect(predictions.some((p) => p.action === 'model')).toBe(true);
13
+ });
14
+ test('records action and predicts next', () => {
15
+ predictor.recordAction('model');
16
+ const predictions = predictor.predictNext([]);
17
+ expect(predictions.length).toBeGreaterThan(0);
18
+ });
19
+ test('learns transitions from repeated sequences', () => {
20
+ predictor.recordAction('model');
21
+ predictor.recordAction('validation');
22
+ predictor.recordAction('model');
23
+ predictor.recordAction('routes');
24
+ const predictions = predictor.predictNext([]);
25
+ expect(predictions.length).toBeGreaterThan(0);
26
+ });
27
+ test('getBulkSuggestion returns null for single prediction', () => {
28
+ predictor.recordAction('model');
29
+ const predictions = predictor.predictNext([]);
30
+ const bulk = predictor.getBulkSuggestion(predictions.slice(0, 1));
31
+ expect(bulk).toBeNull();
32
+ });
33
+ test('getBulkSuggestion returns bulk for multiple predictions', () => {
34
+ predictor.recordAction('model');
35
+ const predictions = predictor.predictNext([]);
36
+ if (predictions.length >= 2) {
37
+ const bulk = predictor.getBulkSuggestion(predictions);
38
+ expect(bulk).not.toBeNull();
39
+ expect(bulk.isBulk).toBe(true);
40
+ }
41
+ });
42
+ test('records and retrieves feedback', () => {
43
+ predictor.recordFeedback('model', true);
44
+ predictor.recordFeedback('model', false);
45
+ const score = predictor.getFeedbackScore('model');
46
+ expect(score).toBe(0.5);
47
+ });
48
+ test('getStats returns correct structure', () => {
49
+ predictor.recordAction('model');
50
+ predictor.recordAction('validation');
51
+ const stats = predictor.getStats();
52
+ expect(stats.transitions).toBeGreaterThanOrEqual(0);
53
+ expect(stats.sequences).toBeGreaterThan(0);
54
+ expect(stats.feedbackEntries).toBe(0);
55
+ });
56
+ });
57
+ //# sourceMappingURL=next-action-predictor.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"next-action-predictor.test.js","sourceRoot":"","sources":["../../../src/core/__tests__/next-action-predictor.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=offline-queue.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offline-queue.test.d.ts","sourceRoot":"","sources":["../../../src/core/__tests__/offline-queue.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ const offline_queue_1 = require("../offline-queue");
37
+ const path = __importStar(require("path"));
38
+ describe('OfflineQueue', () => {
39
+ let queue;
40
+ const testDir = path.join(process.cwd(), '.fivo/cell');
41
+ beforeEach(() => {
42
+ queue = new offline_queue_1.OfflineQueue(testDir);
43
+ queue.clearQueue();
44
+ });
45
+ test('enqueues and dequeues signals', () => {
46
+ queue.enqueue('edit_diff', { code: 'test' });
47
+ expect(queue.getQueueSize()).toBe(1);
48
+ const signal = queue.dequeue();
49
+ expect(signal).not.toBeNull();
50
+ expect(signal.type).toBe('edit_diff');
51
+ expect(queue.getQueueSize()).toBe(0);
52
+ });
53
+ test('peek returns first without removing', () => {
54
+ queue.enqueue('accept', {});
55
+ queue.enqueue('reject', {});
56
+ const peeked = queue.peek();
57
+ expect(peeked).not.toBeNull();
58
+ expect(peeked.type).toBe('accept');
59
+ expect(queue.getQueueSize()).toBe(2);
60
+ });
61
+ test('syncOnReconnect processes queue', async () => {
62
+ queue.enqueue('edit_diff', {});
63
+ queue.enqueue('accept', {});
64
+ const result = await queue.syncOnReconnect(async () => true);
65
+ expect(result.synced).toBe(2);
66
+ expect(result.failed).toBe(0);
67
+ });
68
+ test('checkEngineHealth returns ONLINE after heartbeat', () => {
69
+ queue.heartbeat();
70
+ const status = queue.checkEngineHealth();
71
+ expect(status.state).toBe('ONLINE');
72
+ });
73
+ test('checkEngineHealth returns ONLINE by default', () => {
74
+ const status = queue.checkEngineHealth();
75
+ expect(status.state).toBe('ONLINE');
76
+ });
77
+ test('getDegradedMessage returns appropriate message', () => {
78
+ const onlineMsg = queue.getDegradedMessage({ state: 'ONLINE', lastHeartbeat: '', consecutiveFailures: 0 });
79
+ expect(onlineMsg).toContain('online');
80
+ const offlineMsg = queue.getDegradedMessage({ state: 'OFFLINE', lastHeartbeat: '', consecutiveFailures: 3 });
81
+ expect(offlineMsg).toContain('OFFLINE');
82
+ });
83
+ });
84
+ //# sourceMappingURL=offline-queue.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offline-queue.test.js","sourceRoot":"","sources":["../../../src/core/__tests__/offline-queue.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=organization-memory.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"organization-memory.test.d.ts","sourceRoot":"","sources":["../../../src/core/__tests__/organization-memory.test.ts"],"names":[],"mappings":""}