atabey 0.0.18 → 0.0.19

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 (555) hide show
  1. package/bin/cli.js +14 -2
  2. package/dist/atabey/src/cli/commands/check.js +2 -3
  3. package/dist/atabey/src/cli/commands/check.js.map +1 -1
  4. package/dist/atabey/src/cli/commands/explorer.js.map +1 -1
  5. package/dist/atabey/src/cli/commands/index-codebase.js +13 -2
  6. package/dist/atabey/src/cli/commands/index-codebase.js.map +1 -1
  7. package/dist/atabey/src/cli/commands/init/scaffold-core.js +22 -0
  8. package/dist/atabey/src/cli/commands/init/scaffold-core.js.map +1 -1
  9. package/dist/atabey/src/cli/commands/orchestrate.d.ts +11 -10
  10. package/dist/atabey/src/cli/commands/orchestrate.js +49 -24
  11. package/dist/atabey/src/cli/commands/orchestrate.js.map +1 -1
  12. package/dist/atabey/src/cli/index.js +7 -0
  13. package/dist/atabey/src/cli/index.js.map +1 -1
  14. package/dist/atabey/src/cli/utils/config-schema.d.ts +28 -0
  15. package/dist/atabey/src/cli/utils/config-schema.js +6 -1
  16. package/dist/atabey/src/cli/utils/config-schema.js.map +1 -1
  17. package/dist/atabey/src/cli/utils/memory.js +26 -0
  18. package/dist/atabey/src/cli/utils/memory.js.map +1 -1
  19. package/dist/atabey/src/cli/utils/quality.js +2 -7
  20. package/dist/atabey/src/cli/utils/quality.js.map +1 -1
  21. package/dist/atabey/src/cli/utils/schemas.d.ts +8 -8
  22. package/dist/atabey/src/contracts/tasks.d.ts +6 -6
  23. package/dist/atabey/src/modules/agents/definitions.js +9 -14
  24. package/dist/atabey/src/modules/agents/definitions.js.map +1 -1
  25. package/dist/atabey/src/modules/agents/registry/manager.js +1 -1
  26. package/dist/atabey/src/modules/agents/registry/manager.js.map +1 -1
  27. package/dist/atabey/src/modules/engines/crud-governance.d.ts +4 -2
  28. package/dist/atabey/src/modules/engines/crud-governance.js +41 -6
  29. package/dist/atabey/src/modules/engines/crud-governance.js.map +1 -1
  30. package/dist/atabey/src/modules/skills/adapter-skills.d.ts +2 -0
  31. package/dist/atabey/src/modules/skills/adapter-skills.js.map +1 -1
  32. package/dist/atabey/src/shared/audit.d.ts +1 -105
  33. package/dist/atabey/src/shared/audit.js +1 -220
  34. package/dist/atabey/src/shared/audit.js.map +1 -1
  35. package/dist/atabey/src/shared/constants.d.ts +1 -120
  36. package/dist/atabey/src/shared/constants.js +1 -187
  37. package/dist/atabey/src/shared/constants.js.map +1 -1
  38. package/dist/atabey/src/shared/errors.d.ts +1 -46
  39. package/dist/atabey/src/shared/errors.js +1 -68
  40. package/dist/atabey/src/shared/errors.js.map +1 -1
  41. package/dist/atabey/src/shared/fs.d.ts +1 -9
  42. package/dist/atabey/src/shared/fs.js +1 -53
  43. package/dist/atabey/src/shared/fs.js.map +1 -1
  44. package/dist/atabey/src/shared/lock.d.ts +1 -82
  45. package/dist/atabey/src/shared/lock.js +1 -159
  46. package/dist/atabey/src/shared/lock.js.map +1 -1
  47. package/dist/atabey/src/shared/logger.d.ts +1 -30
  48. package/dist/atabey/src/shared/logger.js +1 -126
  49. package/dist/atabey/src/shared/logger.js.map +1 -1
  50. package/dist/atabey/src/shared/pii.d.ts +1 -69
  51. package/dist/atabey/src/shared/pii.js +1 -212
  52. package/dist/atabey/src/shared/pii.js.map +1 -1
  53. package/dist/atabey/src/shared/retention.d.ts +1 -63
  54. package/dist/atabey/src/shared/retention.js +1 -170
  55. package/dist/atabey/src/shared/retention.js.map +1 -1
  56. package/dist/atabey/src/shared/storage.js +7 -3
  57. package/dist/atabey/src/shared/storage.js.map +1 -1
  58. package/dist/atabey/src/shared/string.d.ts +1 -1
  59. package/dist/atabey/src/shared/string.js +1 -29
  60. package/dist/atabey/src/shared/string.js.map +1 -1
  61. package/dist/atabey/src/shared/types.d.ts +1 -27
  62. package/dist/atabey/src/shared/types.js +1 -16
  63. package/dist/atabey/src/shared/types.js.map +1 -1
  64. package/dist/atabey-mcp/src/mcp/utils/context-optimizer.js +1 -1
  65. package/dist/atabey-mcp/src/mcp/utils/context-optimizer.js.map +1 -1
  66. package/dist/atabey-mcp/src/shared/logger.d.ts +1 -30
  67. package/dist/atabey-mcp/src/shared/logger.js +1 -126
  68. package/dist/atabey-mcp/src/shared/logger.js.map +1 -1
  69. package/dist/atabey-mcp/src/shared/pii.d.ts +1 -69
  70. package/dist/atabey-mcp/src/shared/pii.js +1 -212
  71. package/dist/atabey-mcp/src/shared/pii.js.map +1 -1
  72. package/dist/atabey-mcp/src/shared/storage.js +3 -1
  73. package/dist/atabey-mcp/src/shared/storage.js.map +1 -1
  74. package/dist/atabey-mcp/src/shared/types.d.ts +1 -27
  75. package/dist/atabey-mcp/src/shared/types.js +1 -16
  76. package/dist/atabey-mcp/src/shared/types.js.map +1 -1
  77. package/dist/{src/shared → shared/src}/audit.js +8 -8
  78. package/dist/shared/src/audit.js.map +1 -0
  79. package/dist/shared/src/constants.js.map +1 -0
  80. package/dist/shared/src/database.d.ts +5 -0
  81. package/dist/shared/src/database.js +13 -0
  82. package/dist/shared/src/database.js.map +1 -0
  83. package/dist/shared/src/errors.js.map +1 -0
  84. package/dist/shared/src/fs.js.map +1 -0
  85. package/dist/shared/src/index.d.ts +11 -0
  86. package/dist/shared/src/index.js +12 -0
  87. package/dist/shared/src/index.js.map +1 -0
  88. package/dist/{src/shared → shared/src}/lock.js +22 -26
  89. package/dist/shared/src/lock.js.map +1 -0
  90. package/dist/shared/src/logger.js.map +1 -0
  91. package/dist/{src/shared → shared/src}/pii.js +4 -1
  92. package/dist/shared/src/pii.js.map +1 -0
  93. package/dist/{src/shared → shared/src}/retention.js +6 -6
  94. package/dist/shared/src/retention.js.map +1 -0
  95. package/dist/shared/src/string.js.map +1 -0
  96. package/dist/shared/src/types.js.map +1 -0
  97. package/package.json +7 -2
  98. package/dist/atabey-mcp/src/mcp/utils/quality.d.ts +0 -19
  99. package/dist/atabey-mcp/src/mcp/utils/quality.js +0 -125
  100. package/dist/atabey-mcp/src/mcp/utils/quality.js.map +0 -1
  101. package/dist/atabey-mcp/src/shared/fs.js.map +0 -1
  102. package/dist/src/cli/commands/approve.d.ts +0 -1
  103. package/dist/src/cli/commands/approve.js +0 -64
  104. package/dist/src/cli/commands/approve.js.map +0 -1
  105. package/dist/src/cli/commands/check.d.ts +0 -1
  106. package/dist/src/cli/commands/check.js +0 -197
  107. package/dist/src/cli/commands/check.js.map +0 -1
  108. package/dist/src/cli/commands/compliance.d.ts +0 -5
  109. package/dist/src/cli/commands/compliance.js +0 -43
  110. package/dist/src/cli/commands/compliance.js.map +0 -1
  111. package/dist/src/cli/commands/contract.d.ts +0 -10
  112. package/dist/src/cli/commands/contract.js +0 -52
  113. package/dist/src/cli/commands/contract.js.map +0 -1
  114. package/dist/src/cli/commands/coverage.d.ts +0 -1
  115. package/dist/src/cli/commands/coverage.js +0 -121
  116. package/dist/src/cli/commands/coverage.js.map +0 -1
  117. package/dist/src/cli/commands/dashboard.d.ts +0 -5
  118. package/dist/src/cli/commands/dashboard.js +0 -753
  119. package/dist/src/cli/commands/dashboard.js.map +0 -1
  120. package/dist/src/cli/commands/explorer.d.ts +0 -2
  121. package/dist/src/cli/commands/explorer.js +0 -44
  122. package/dist/src/cli/commands/explorer.js.map +0 -1
  123. package/dist/src/cli/commands/git.d.ts +0 -2
  124. package/dist/src/cli/commands/git.js +0 -40
  125. package/dist/src/cli/commands/git.js.map +0 -1
  126. package/dist/src/cli/commands/index-codebase.d.ts +0 -4
  127. package/dist/src/cli/commands/index-codebase.js +0 -52
  128. package/dist/src/cli/commands/index-codebase.js.map +0 -1
  129. package/dist/src/cli/commands/init/create-agent.d.ts +0 -4
  130. package/dist/src/cli/commands/init/create-agent.js +0 -59
  131. package/dist/src/cli/commands/init/create-agent.js.map +0 -1
  132. package/dist/src/cli/commands/init/scaffold-core.d.ts +0 -13
  133. package/dist/src/cli/commands/init/scaffold-core.js +0 -129
  134. package/dist/src/cli/commands/init/scaffold-core.js.map +0 -1
  135. package/dist/src/cli/commands/init/scaffold-docs.d.ts +0 -4
  136. package/dist/src/cli/commands/init/scaffold-docs.js +0 -36
  137. package/dist/src/cli/commands/init/scaffold-docs.js.map +0 -1
  138. package/dist/src/cli/commands/init/scaffold-ops.d.ts +0 -1
  139. package/dist/src/cli/commands/init/scaffold-ops.js +0 -81
  140. package/dist/src/cli/commands/init/scaffold-ops.js.map +0 -1
  141. package/dist/src/cli/commands/init/scaffold-standards.d.ts +0 -2
  142. package/dist/src/cli/commands/init/scaffold-standards.js +0 -84
  143. package/dist/src/cli/commands/init/scaffold-standards.js.map +0 -1
  144. package/dist/src/cli/commands/init.d.ts +0 -11
  145. package/dist/src/cli/commands/init.js +0 -362
  146. package/dist/src/cli/commands/init.js.map +0 -1
  147. package/dist/src/cli/commands/knowledge.d.ts +0 -2
  148. package/dist/src/cli/commands/knowledge.js +0 -16
  149. package/dist/src/cli/commands/knowledge.js.map +0 -1
  150. package/dist/src/cli/commands/lint.d.ts +0 -4
  151. package/dist/src/cli/commands/lint.js +0 -24
  152. package/dist/src/cli/commands/lint.js.map +0 -1
  153. package/dist/src/cli/commands/log.d.ts +0 -10
  154. package/dist/src/cli/commands/log.js +0 -14
  155. package/dist/src/cli/commands/log.js.map +0 -1
  156. package/dist/src/cli/commands/mcp.d.ts +0 -11
  157. package/dist/src/cli/commands/mcp.js +0 -132
  158. package/dist/src/cli/commands/mcp.js.map +0 -1
  159. package/dist/src/cli/commands/memory.d.ts +0 -1
  160. package/dist/src/cli/commands/memory.js +0 -5
  161. package/dist/src/cli/commands/memory.js.map +0 -1
  162. package/dist/src/cli/commands/orchestrate.d.ts +0 -61
  163. package/dist/src/cli/commands/orchestrate.js +0 -238
  164. package/dist/src/cli/commands/orchestrate.js.map +0 -1
  165. package/dist/src/cli/commands/plan.d.ts +0 -11
  166. package/dist/src/cli/commands/plan.js +0 -120
  167. package/dist/src/cli/commands/plan.js.map +0 -1
  168. package/dist/src/cli/commands/quickstart.d.ts +0 -9
  169. package/dist/src/cli/commands/quickstart.js +0 -60
  170. package/dist/src/cli/commands/quickstart.js.map +0 -1
  171. package/dist/src/cli/commands/script.d.ts +0 -1
  172. package/dist/src/cli/commands/script.js +0 -28
  173. package/dist/src/cli/commands/script.js.map +0 -1
  174. package/dist/src/cli/commands/security.d.ts +0 -1
  175. package/dist/src/cli/commands/security.js +0 -34
  176. package/dist/src/cli/commands/security.js.map +0 -1
  177. package/dist/src/cli/commands/status.d.ts +0 -4
  178. package/dist/src/cli/commands/status.js +0 -122
  179. package/dist/src/cli/commands/status.js.map +0 -1
  180. package/dist/src/cli/commands/trace.d.ts +0 -10
  181. package/dist/src/cli/commands/trace.js +0 -108
  182. package/dist/src/cli/commands/trace.js.map +0 -1
  183. package/dist/src/cli/index.d.ts +0 -2
  184. package/dist/src/cli/index.js +0 -282
  185. package/dist/src/cli/index.js.map +0 -1
  186. package/dist/src/cli/platforms/core.d.ts +0 -12
  187. package/dist/src/cli/platforms/core.js +0 -73
  188. package/dist/src/cli/platforms/core.js.map +0 -1
  189. package/dist/src/cli/platforms/index.d.ts +0 -5
  190. package/dist/src/cli/platforms/index.js +0 -6
  191. package/dist/src/cli/platforms/index.js.map +0 -1
  192. package/dist/src/cli/platforms/paths.d.ts +0 -15
  193. package/dist/src/cli/platforms/paths.js +0 -102
  194. package/dist/src/cli/platforms/paths.js.map +0 -1
  195. package/dist/src/cli/platforms/scaffold.d.ts +0 -2
  196. package/dist/src/cli/platforms/scaffold.js +0 -73
  197. package/dist/src/cli/platforms/scaffold.js.map +0 -1
  198. package/dist/src/cli/platforms/utils.d.ts +0 -4
  199. package/dist/src/cli/platforms/utils.js +0 -76
  200. package/dist/src/cli/platforms/utils.js.map +0 -1
  201. package/dist/src/cli/shims.d.ts +0 -1
  202. package/dist/src/cli/shims.js +0 -67
  203. package/dist/src/cli/shims.js.map +0 -1
  204. package/dist/src/cli/utils/claude.d.ts +0 -8
  205. package/dist/src/cli/utils/claude.js +0 -58
  206. package/dist/src/cli/utils/claude.js.map +0 -1
  207. package/dist/src/cli/utils/compliance.d.ts +0 -42
  208. package/dist/src/cli/utils/compliance.js +0 -150
  209. package/dist/src/cli/utils/compliance.js.map +0 -1
  210. package/dist/src/cli/utils/config-schema.d.ts +0 -139
  211. package/dist/src/cli/utils/config-schema.js +0 -43
  212. package/dist/src/cli/utils/config-schema.js.map +0 -1
  213. package/dist/src/cli/utils/fs.d.ts +0 -10
  214. package/dist/src/cli/utils/fs.js +0 -139
  215. package/dist/src/cli/utils/fs.js.map +0 -1
  216. package/dist/src/cli/utils/i18n.d.ts +0 -21
  217. package/dist/src/cli/utils/i18n.js +0 -36
  218. package/dist/src/cli/utils/i18n.js.map +0 -1
  219. package/dist/src/cli/utils/memory.d.ts +0 -39
  220. package/dist/src/cli/utils/memory.js +0 -281
  221. package/dist/src/cli/utils/memory.js.map +0 -1
  222. package/dist/src/cli/utils/pkg.d.ts +0 -43
  223. package/dist/src/cli/utils/pkg.js +0 -283
  224. package/dist/src/cli/utils/pkg.js.map +0 -1
  225. package/dist/src/cli/utils/quality.d.ts +0 -8
  226. package/dist/src/cli/utils/quality.js +0 -8
  227. package/dist/src/cli/utils/quality.js.map +0 -1
  228. package/dist/src/cli/utils/schemas.d.ts +0 -49
  229. package/dist/src/cli/utils/schemas.js +0 -20
  230. package/dist/src/cli/utils/schemas.js.map +0 -1
  231. package/dist/src/cli/utils/string.d.ts +0 -7
  232. package/dist/src/cli/utils/string.js +0 -50
  233. package/dist/src/cli/utils/string.js.map +0 -1
  234. package/dist/src/cli/utils/time.d.ts +0 -2
  235. package/dist/src/cli/utils/time.js +0 -28
  236. package/dist/src/cli/utils/time.js.map +0 -1
  237. package/dist/src/cli/utils/ui.d.ts +0 -53
  238. package/dist/src/cli/utils/ui.js +0 -101
  239. package/dist/src/cli/utils/ui.js.map +0 -1
  240. package/dist/src/contracts/index.d.ts +0 -1
  241. package/dist/src/contracts/index.js +0 -2
  242. package/dist/src/contracts/index.js.map +0 -1
  243. package/dist/src/contracts/tasks.d.ts +0 -44
  244. package/dist/src/contracts/tasks.js +0 -21
  245. package/dist/src/contracts/tasks.js.map +0 -1
  246. package/dist/src/modules/agents/definitions.d.ts +0 -26
  247. package/dist/src/modules/agents/definitions.js +0 -564
  248. package/dist/src/modules/agents/definitions.js.map +0 -1
  249. package/dist/src/modules/agents/registry/analyst.d.ts +0 -2
  250. package/dist/src/modules/agents/registry/analyst.js +0 -40
  251. package/dist/src/modules/agents/registry/analyst.js.map +0 -1
  252. package/dist/src/modules/agents/registry/architect.d.ts +0 -2
  253. package/dist/src/modules/agents/registry/architect.js +0 -43
  254. package/dist/src/modules/agents/registry/architect.js.map +0 -1
  255. package/dist/src/modules/agents/registry/backend.d.ts +0 -2
  256. package/dist/src/modules/agents/registry/backend.js +0 -51
  257. package/dist/src/modules/agents/registry/backend.js.map +0 -1
  258. package/dist/src/modules/agents/registry/database.d.ts +0 -2
  259. package/dist/src/modules/agents/registry/database.js +0 -46
  260. package/dist/src/modules/agents/registry/database.js.map +0 -1
  261. package/dist/src/modules/agents/registry/devops.d.ts +0 -2
  262. package/dist/src/modules/agents/registry/devops.js +0 -46
  263. package/dist/src/modules/agents/registry/devops.js.map +0 -1
  264. package/dist/src/modules/agents/registry/explorer.d.ts +0 -2
  265. package/dist/src/modules/agents/registry/explorer.js +0 -38
  266. package/dist/src/modules/agents/registry/explorer.js.map +0 -1
  267. package/dist/src/modules/agents/registry/frontend.d.ts +0 -2
  268. package/dist/src/modules/agents/registry/frontend.js +0 -53
  269. package/dist/src/modules/agents/registry/frontend.js.map +0 -1
  270. package/dist/src/modules/agents/registry/git.d.ts +0 -2
  271. package/dist/src/modules/agents/registry/git.js +0 -37
  272. package/dist/src/modules/agents/registry/git.js.map +0 -1
  273. package/dist/src/modules/agents/registry/manager.d.ts +0 -2
  274. package/dist/src/modules/agents/registry/manager.js +0 -65
  275. package/dist/src/modules/agents/registry/manager.js.map +0 -1
  276. package/dist/src/modules/agents/registry/mobile.d.ts +0 -2
  277. package/dist/src/modules/agents/registry/mobile.js +0 -42
  278. package/dist/src/modules/agents/registry/mobile.js.map +0 -1
  279. package/dist/src/modules/agents/registry/native.d.ts +0 -2
  280. package/dist/src/modules/agents/registry/native.js +0 -42
  281. package/dist/src/modules/agents/registry/native.js.map +0 -1
  282. package/dist/src/modules/agents/registry/quality.d.ts +0 -2
  283. package/dist/src/modules/agents/registry/quality.js +0 -44
  284. package/dist/src/modules/agents/registry/quality.js.map +0 -1
  285. package/dist/src/modules/agents/registry/security.d.ts +0 -2
  286. package/dist/src/modules/agents/registry/security.js +0 -43
  287. package/dist/src/modules/agents/registry/security.js.map +0 -1
  288. package/dist/src/modules/agents/types.d.ts +0 -33
  289. package/dist/src/modules/agents/types.js +0 -2
  290. package/dist/src/modules/agents/types.js.map +0 -1
  291. package/dist/src/modules/contracts/api.d.ts +0 -178
  292. package/dist/src/modules/contracts/api.js +0 -56
  293. package/dist/src/modules/contracts/api.js.map +0 -1
  294. package/dist/src/modules/contracts/index.d.ts +0 -5
  295. package/dist/src/modules/contracts/index.js +0 -6
  296. package/dist/src/modules/contracts/index.js.map +0 -1
  297. package/dist/src/modules/engines/agent-executor.d.ts +0 -46
  298. package/dist/src/modules/engines/agent-executor.js +0 -241
  299. package/dist/src/modules/engines/agent-executor.js.map +0 -1
  300. package/dist/src/modules/engines/agent-loop.d.ts +0 -34
  301. package/dist/src/modules/engines/agent-loop.js +0 -102
  302. package/dist/src/modules/engines/agent-loop.js.map +0 -1
  303. package/dist/src/modules/engines/contract-engine.d.ts +0 -46
  304. package/dist/src/modules/engines/contract-engine.js +0 -116
  305. package/dist/src/modules/engines/contract-engine.js.map +0 -1
  306. package/dist/src/modules/engines/crud-governance.d.ts +0 -64
  307. package/dist/src/modules/engines/crud-governance.js +0 -184
  308. package/dist/src/modules/engines/crud-governance.js.map +0 -1
  309. package/dist/src/modules/engines/discovery-engine.d.ts +0 -42
  310. package/dist/src/modules/engines/discovery-engine.js +0 -161
  311. package/dist/src/modules/engines/discovery-engine.js.map +0 -1
  312. package/dist/src/modules/engines/evaluation-engine.d.ts +0 -18
  313. package/dist/src/modules/engines/evaluation-engine.js +0 -171
  314. package/dist/src/modules/engines/evaluation-engine.js.map +0 -1
  315. package/dist/src/modules/engines/file-lock.d.ts +0 -41
  316. package/dist/src/modules/engines/file-lock.js +0 -168
  317. package/dist/src/modules/engines/file-lock.js.map +0 -1
  318. package/dist/src/modules/engines/health-engine.d.ts +0 -22
  319. package/dist/src/modules/engines/health-engine.js +0 -127
  320. package/dist/src/modules/engines/health-engine.js.map +0 -1
  321. package/dist/src/modules/engines/phase-engine.d.ts +0 -82
  322. package/dist/src/modules/engines/phase-engine.js +0 -211
  323. package/dist/src/modules/engines/phase-engine.js.map +0 -1
  324. package/dist/src/modules/engines/planning-engine.d.ts +0 -25
  325. package/dist/src/modules/engines/planning-engine.js +0 -80
  326. package/dist/src/modules/engines/planning-engine.js.map +0 -1
  327. package/dist/src/modules/engines/policy-engine.d.ts +0 -63
  328. package/dist/src/modules/engines/policy-engine.js +0 -186
  329. package/dist/src/modules/engines/policy-engine.js.map +0 -1
  330. package/dist/src/modules/engines/quality-gate.d.ts +0 -31
  331. package/dist/src/modules/engines/quality-gate.js +0 -95
  332. package/dist/src/modules/engines/quality-gate.js.map +0 -1
  333. package/dist/src/modules/engines/risk-engine.d.ts +0 -34
  334. package/dist/src/modules/engines/risk-engine.js +0 -201
  335. package/dist/src/modules/engines/risk-engine.js.map +0 -1
  336. package/dist/src/modules/engines/routing-engine.d.ts +0 -96
  337. package/dist/src/modules/engines/routing-engine.js +0 -505
  338. package/dist/src/modules/engines/routing-engine.js.map +0 -1
  339. package/dist/src/modules/engines/session-engine.d.ts +0 -68
  340. package/dist/src/modules/engines/session-engine.js +0 -141
  341. package/dist/src/modules/engines/session-engine.js.map +0 -1
  342. package/dist/src/modules/engines/types.d.ts +0 -51
  343. package/dist/src/modules/engines/types.js +0 -2
  344. package/dist/src/modules/engines/types.js.map +0 -1
  345. package/dist/src/modules/memory/core.d.ts +0 -42
  346. package/dist/src/modules/memory/core.js +0 -100
  347. package/dist/src/modules/memory/core.js.map +0 -1
  348. package/dist/src/modules/memory/embedding.d.ts +0 -28
  349. package/dist/src/modules/memory/embedding.js +0 -131
  350. package/dist/src/modules/memory/embedding.js.map +0 -1
  351. package/dist/src/modules/memory/types.d.ts +0 -18
  352. package/dist/src/modules/memory/types.js +0 -2
  353. package/dist/src/modules/memory/types.js.map +0 -1
  354. package/dist/src/modules/memory/vector-store.d.ts +0 -13
  355. package/dist/src/modules/memory/vector-store.js +0 -75
  356. package/dist/src/modules/memory/vector-store.js.map +0 -1
  357. package/dist/src/modules/providers/definitions.d.ts +0 -9
  358. package/dist/src/modules/providers/definitions.js +0 -141
  359. package/dist/src/modules/providers/definitions.js.map +0 -1
  360. package/dist/src/modules/providers/llm-provider.d.ts +0 -87
  361. package/dist/src/modules/providers/llm-provider.js +0 -242
  362. package/dist/src/modules/providers/llm-provider.js.map +0 -1
  363. package/dist/src/modules/providers/registry.d.ts +0 -12
  364. package/dist/src/modules/providers/registry.js +0 -19
  365. package/dist/src/modules/providers/registry.js.map +0 -1
  366. package/dist/src/modules/providers/shared.d.ts +0 -1
  367. package/dist/src/modules/providers/shared.js +0 -104
  368. package/dist/src/modules/providers/shared.js.map +0 -1
  369. package/dist/src/modules/providers/types.d.ts +0 -14
  370. package/dist/src/modules/providers/types.js +0 -2
  371. package/dist/src/modules/providers/types.js.map +0 -1
  372. package/dist/src/modules/skills/adapter-skills.d.ts +0 -68
  373. package/dist/src/modules/skills/adapter-skills.js +0 -450
  374. package/dist/src/modules/skills/adapter-skills.js.map +0 -1
  375. package/dist/src/modules/skills/definitions.d.ts +0 -48
  376. package/dist/src/modules/skills/definitions.js +0 -71
  377. package/dist/src/modules/skills/definitions.js.map +0 -1
  378. package/dist/src/shared/audit.js.map +0 -1
  379. package/dist/src/shared/constants.js.map +0 -1
  380. package/dist/src/shared/errors.js.map +0 -1
  381. package/dist/src/shared/fs.d.ts +0 -9
  382. package/dist/src/shared/fs.js +0 -54
  383. package/dist/src/shared/fs.js.map +0 -1
  384. package/dist/src/shared/lock.js.map +0 -1
  385. package/dist/src/shared/logger.js.map +0 -1
  386. package/dist/src/shared/pii.js.map +0 -1
  387. package/dist/src/shared/retention.js.map +0 -1
  388. package/dist/src/shared/storage.d.ts +0 -141
  389. package/dist/src/shared/storage.js +0 -326
  390. package/dist/src/shared/storage.js.map +0 -1
  391. package/dist/src/shared/string.js.map +0 -1
  392. package/dist/src/shared/types.js.map +0 -1
  393. package/dist/tests/adapter.test.d.ts +0 -1
  394. package/dist/tests/adapter.test.js +0 -130
  395. package/dist/tests/adapter.test.js.map +0 -1
  396. package/dist/tests/adapters/paths.test.d.ts +0 -1
  397. package/dist/tests/adapters/paths.test.js +0 -63
  398. package/dist/tests/adapters/paths.test.js.map +0 -1
  399. package/dist/tests/agent-memory-v2.test.d.ts +0 -1
  400. package/dist/tests/agent-memory-v2.test.js +0 -68
  401. package/dist/tests/agent-memory-v2.test.js.map +0 -1
  402. package/dist/tests/agents-definitions.test.d.ts +0 -1
  403. package/dist/tests/agents-definitions.test.js +0 -103
  404. package/dist/tests/agents-definitions.test.js.map +0 -1
  405. package/dist/tests/approve.test.d.ts +0 -1
  406. package/dist/tests/approve.test.js +0 -52
  407. package/dist/tests/approve.test.js.map +0 -1
  408. package/dist/tests/cli/commands/check.test.d.ts +0 -1
  409. package/dist/tests/cli/commands/check.test.js +0 -9
  410. package/dist/tests/cli/commands/check.test.js.map +0 -1
  411. package/dist/tests/cli/commands/coverage.test.d.ts +0 -1
  412. package/dist/tests/cli/commands/coverage.test.js +0 -9
  413. package/dist/tests/cli/commands/coverage.test.js.map +0 -1
  414. package/dist/tests/cli/commands/dashboard-coverage.test.d.ts +0 -1
  415. package/dist/tests/cli/commands/dashboard-coverage.test.js +0 -90
  416. package/dist/tests/cli/commands/dashboard-coverage.test.js.map +0 -1
  417. package/dist/tests/cli/commands/exports.test.d.ts +0 -1
  418. package/dist/tests/cli/commands/exports.test.js +0 -61
  419. package/dist/tests/cli/commands/exports.test.js.map +0 -1
  420. package/dist/tests/cli/commands/lint.test.d.ts +0 -1
  421. package/dist/tests/cli/commands/lint.test.js +0 -9
  422. package/dist/tests/cli/commands/lint.test.js.map +0 -1
  423. package/dist/tests/cli/init/adapter_init.test.d.ts +0 -1
  424. package/dist/tests/cli/init/adapter_init.test.js +0 -49
  425. package/dist/tests/cli/init/adapter_init.test.js.map +0 -1
  426. package/dist/tests/cli/init/unified_init.test.d.ts +0 -1
  427. package/dist/tests/cli/init/unified_init.test.js +0 -56
  428. package/dist/tests/cli/init/unified_init.test.js.map +0 -1
  429. package/dist/tests/core-memory.test.d.ts +0 -1
  430. package/dist/tests/core-memory.test.js +0 -78
  431. package/dist/tests/core-memory.test.js.map +0 -1
  432. package/dist/tests/embedding.test.d.ts +0 -1
  433. package/dist/tests/embedding.test.js +0 -82
  434. package/dist/tests/embedding.test.js.map +0 -1
  435. package/dist/tests/engines/evaluation-engine.test.d.ts +0 -1
  436. package/dist/tests/engines/evaluation-engine.test.js +0 -71
  437. package/dist/tests/engines/evaluation-engine.test.js.map +0 -1
  438. package/dist/tests/engines/planning-engine.test.d.ts +0 -1
  439. package/dist/tests/engines/planning-engine.test.js +0 -100
  440. package/dist/tests/engines/planning-engine.test.js.map +0 -1
  441. package/dist/tests/engines/quality-gate.test.d.ts +0 -1
  442. package/dist/tests/engines/quality-gate.test.js +0 -59
  443. package/dist/tests/engines/quality-gate.test.js.map +0 -1
  444. package/dist/tests/engines/risk-engine.test.d.ts +0 -1
  445. package/dist/tests/engines/risk-engine.test.js +0 -80
  446. package/dist/tests/engines/risk-engine.test.js.map +0 -1
  447. package/dist/tests/engines/routing-engine.test.d.ts +0 -1
  448. package/dist/tests/engines/routing-engine.test.js +0 -78
  449. package/dist/tests/engines/routing-engine.test.js.map +0 -1
  450. package/dist/tests/errors.test.d.ts +0 -1
  451. package/dist/tests/errors.test.js +0 -64
  452. package/dist/tests/errors.test.js.map +0 -1
  453. package/dist/tests/fs-utils.test.d.ts +0 -1
  454. package/dist/tests/fs-utils.test.js +0 -101
  455. package/dist/tests/fs-utils.test.js.map +0 -1
  456. package/dist/tests/integration/agent_flow.test.d.ts +0 -1
  457. package/dist/tests/integration/agent_flow.test.js +0 -69
  458. package/dist/tests/integration/agent_flow.test.js.map +0 -1
  459. package/dist/tests/integration/hermes_locking.test.d.ts +0 -1
  460. package/dist/tests/integration/hermes_locking.test.js +0 -62
  461. package/dist/tests/integration/hermes_locking.test.js.map +0 -1
  462. package/dist/tests/logger.test.d.ts +0 -1
  463. package/dist/tests/logger.test.js +0 -81
  464. package/dist/tests/logger.test.js.map +0 -1
  465. package/dist/tests/memory-utils.test.d.ts +0 -1
  466. package/dist/tests/memory-utils.test.js +0 -59
  467. package/dist/tests/memory-utils.test.js.map +0 -1
  468. package/dist/tests/modules/adapters/adapters.test.d.ts +0 -1
  469. package/dist/tests/modules/adapters/adapters.test.js +0 -30
  470. package/dist/tests/modules/adapters/adapters.test.js.map +0 -1
  471. package/dist/tests/modules/contracts/contracts.test.d.ts +0 -1
  472. package/dist/tests/modules/contracts/contracts.test.js +0 -73
  473. package/dist/tests/modules/contracts/contracts.test.js.map +0 -1
  474. package/dist/tests/modules/engines/agent-executor.test.d.ts +0 -1
  475. package/dist/tests/modules/engines/agent-executor.test.js +0 -61
  476. package/dist/tests/modules/engines/agent-executor.test.js.map +0 -1
  477. package/dist/tests/modules/engines/evaluation-engine.test.d.ts +0 -1
  478. package/dist/tests/modules/engines/evaluation-engine.test.js +0 -45
  479. package/dist/tests/modules/engines/evaluation-engine.test.js.map +0 -1
  480. package/dist/tests/modules/engines/health-engine.test.d.ts +0 -1
  481. package/dist/tests/modules/engines/health-engine.test.js +0 -56
  482. package/dist/tests/modules/engines/health-engine.test.js.map +0 -1
  483. package/dist/tests/modules/engines/planning-engine.test.d.ts +0 -1
  484. package/dist/tests/modules/engines/planning-engine.test.js +0 -75
  485. package/dist/tests/modules/engines/planning-engine.test.js.map +0 -1
  486. package/dist/tests/modules/engines/risk-engine.test.d.ts +0 -1
  487. package/dist/tests/modules/engines/risk-engine.test.js +0 -61
  488. package/dist/tests/modules/engines/risk-engine.test.js.map +0 -1
  489. package/dist/tests/modules/engines/routing-engine.test.d.ts +0 -1
  490. package/dist/tests/modules/engines/routing-engine.test.js +0 -56
  491. package/dist/tests/modules/engines/routing-engine.test.js.map +0 -1
  492. package/dist/tests/modules/memory/vector-store.test.d.ts +0 -1
  493. package/dist/tests/modules/memory/vector-store.test.js +0 -109
  494. package/dist/tests/modules/memory/vector-store.test.js.map +0 -1
  495. package/dist/tests/orchestrate.test.d.ts +0 -1
  496. package/dist/tests/orchestrate.test.js +0 -71
  497. package/dist/tests/orchestrate.test.js.map +0 -1
  498. package/dist/tests/orchestrator-dependencies.test.d.ts +0 -1
  499. package/dist/tests/orchestrator-dependencies.test.js +0 -70
  500. package/dist/tests/orchestrator-dependencies.test.js.map +0 -1
  501. package/dist/tests/plan.test.d.ts +0 -1
  502. package/dist/tests/plan.test.js +0 -63
  503. package/dist/tests/plan.test.js.map +0 -1
  504. package/dist/tests/shared/audit.test.d.ts +0 -1
  505. package/dist/tests/shared/audit.test.js +0 -53
  506. package/dist/tests/shared/audit.test.js.map +0 -1
  507. package/dist/tests/shared/constants.test.d.ts +0 -1
  508. package/dist/tests/shared/constants.test.js +0 -17
  509. package/dist/tests/shared/constants.test.js.map +0 -1
  510. package/dist/tests/shared/lock.test.d.ts +0 -1
  511. package/dist/tests/shared/lock.test.js +0 -95
  512. package/dist/tests/shared/lock.test.js.map +0 -1
  513. package/dist/tests/shared/pii.test.d.ts +0 -1
  514. package/dist/tests/shared/pii.test.js +0 -183
  515. package/dist/tests/shared/pii.test.js.map +0 -1
  516. package/dist/tests/skills-definitions.test.d.ts +0 -1
  517. package/dist/tests/skills-definitions.test.js +0 -34
  518. package/dist/tests/skills-definitions.test.js.map +0 -1
  519. package/dist/tests/status-cost.test.d.ts +0 -1
  520. package/dist/tests/status-cost.test.js +0 -47
  521. package/dist/tests/status-cost.test.js.map +0 -1
  522. package/dist/tests/status.test.d.ts +0 -1
  523. package/dist/tests/status.test.js +0 -49
  524. package/dist/tests/status.test.js.map +0 -1
  525. package/dist/tests/storage-operations.test.d.ts +0 -1
  526. package/dist/tests/storage-operations.test.js +0 -143
  527. package/dist/tests/storage-operations.test.js.map +0 -1
  528. package/dist/tests/string.test.d.ts +0 -1
  529. package/dist/tests/string.test.js +0 -89
  530. package/dist/tests/string.test.js.map +0 -1
  531. package/dist/tests/time.test.d.ts +0 -1
  532. package/dist/tests/time.test.js +0 -48
  533. package/dist/tests/time.test.js.map +0 -1
  534. package/dist/tests/trace-replay.test.d.ts +0 -1
  535. package/dist/tests/trace-replay.test.js +0 -59
  536. package/dist/tests/trace-replay.test.js.map +0 -1
  537. package/dist/tests/trace.test.d.ts +0 -1
  538. package/dist/tests/trace.test.js +0 -35
  539. package/dist/tests/trace.test.js.map +0 -1
  540. /package/dist/{src/shared → shared/src}/audit.d.ts +0 -0
  541. /package/dist/{src/shared → shared/src}/constants.d.ts +0 -0
  542. /package/dist/{src/shared → shared/src}/constants.js +0 -0
  543. /package/dist/{src/shared → shared/src}/errors.d.ts +0 -0
  544. /package/dist/{src/shared → shared/src}/errors.js +0 -0
  545. /package/dist/{atabey-mcp/src/shared → shared/src}/fs.d.ts +0 -0
  546. /package/dist/{atabey-mcp/src/shared → shared/src}/fs.js +0 -0
  547. /package/dist/{src/shared → shared/src}/lock.d.ts +0 -0
  548. /package/dist/{src/shared → shared/src}/logger.d.ts +0 -0
  549. /package/dist/{src/shared → shared/src}/logger.js +0 -0
  550. /package/dist/{src/shared → shared/src}/pii.d.ts +0 -0
  551. /package/dist/{src/shared → shared/src}/retention.d.ts +0 -0
  552. /package/dist/{src/shared → shared/src}/string.d.ts +0 -0
  553. /package/dist/{src/shared → shared/src}/string.js +0 -0
  554. /package/dist/{src/shared → shared/src}/types.d.ts +0 -0
  555. /package/dist/{src/shared → shared/src}/types.js +0 -0
@@ -1,78 +0,0 @@
1
- import fs from "fs";
2
- import os from "os";
3
- import path from "path";
4
- import { afterAll, beforeAll, describe, expect, it } from "vitest";
5
- import { CoreMemory } from "../src/modules/memory/core.js";
6
- import { Storage } from "../src/shared/storage.js";
7
- describe("CoreMemory", () => {
8
- let testDbDir;
9
- beforeAll(async () => {
10
- // Use a temporary test database
11
- testDbDir = fs.mkdtempSync(path.join(os.tmpdir(), "atabey-core-memory-test-"));
12
- process.env.ATABEY_TEST_DIR = testDbDir;
13
- await CoreMemory.init();
14
- });
15
- afterAll(() => {
16
- delete process.env.ATABEY_TEST_DIR;
17
- Storage.reset();
18
- try {
19
- fs.rmSync(testDbDir, { recursive: true, force: true });
20
- }
21
- catch { /* ignore */ }
22
- });
23
- it("should store and recall information", async () => {
24
- const content = "The project uses Vitest for testing and TypeScript for coding.";
25
- const id = await CoreMemory.remember({
26
- content,
27
- category: "ARCHITECTURE",
28
- tags: ["test", "ts"]
29
- });
30
- expect(id).toBeDefined();
31
- const results = await CoreMemory.recall("How is testing handled?", {
32
- category: "ARCHITECTURE",
33
- limit: 1
34
- });
35
- expect(results.length).toBe(1);
36
- expect(results[0].entry.content).toBe(content);
37
- // TF-IDF embedding produces positive similarity for relevant content
38
- expect(results[0].score).toBeGreaterThan(0);
39
- expect(results[0].score).toBeLessThanOrEqual(1);
40
- });
41
- it("should filter by category", async () => {
42
- await CoreMemory.remember({
43
- content: "Rule 1: No any type.",
44
- category: "RULE"
45
- });
46
- const results = await CoreMemory.recall("any type", {
47
- category: "ARCHITECTURE" // Searching in wrong category
48
- });
49
- expect(results.length).toBe(1);
50
- expect(results[0].entry.metadata.category).toBe("ARCHITECTURE");
51
- expect(results[0].entry.content).not.toContain("Rule 1");
52
- });
53
- it("should generate consistent embedding for similar texts", async () => {
54
- const text1 = "backend API endpoint for user authentication";
55
- const text2 = "user login API authentication service";
56
- const text3 = "frontend button color and styling";
57
- const vec1 = CoreMemory.generateEmbedding(text1);
58
- const vec2 = CoreMemory.generateEmbedding(text2);
59
- const vec3 = CoreMemory.generateEmbedding(text3);
60
- // Similar texts should have higher cosine similarity than dissimilar ones
61
- const sim12 = cosineSimilarity(vec1, vec2);
62
- const sim13 = cosineSimilarity(vec1, vec3);
63
- expect(sim12).toBeGreaterThan(sim13);
64
- expect(vec1.length).toBe(384);
65
- });
66
- });
67
- function cosineSimilarity(vecA, vecB) {
68
- let dotProduct = 0;
69
- let normA = 0;
70
- let normB = 0;
71
- for (let i = 0; i < vecA.length; i++) {
72
- dotProduct += vecA[i] * vecB[i];
73
- normA += vecA[i] * vecA[i];
74
- normB += vecB[i] * vecB[i];
75
- }
76
- return dotProduct / (Math.sqrt(normA) * Math.sqrt(normB));
77
- }
78
- //# sourceMappingURL=core-memory.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"core-memory.test.js","sourceRoot":"","sources":["../../tests/core-memory.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,82 +0,0 @@
1
- import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
2
- import { generateEmbedding, generateEmbeddings, isOpenAIEmbedding } from "../src/modules/memory/embedding.js";
3
- describe("Embedding Service", () => {
4
- const originalEnv = process.env;
5
- beforeEach(() => {
6
- process.env = { ...originalEnv };
7
- vi.stubGlobal("fetch", vi.fn());
8
- });
9
- afterEach(() => {
10
- process.env = originalEnv;
11
- vi.unstubAllGlobals();
12
- vi.restoreAllMocks();
13
- });
14
- it("should correctly identify OpenAI embeddings by dimension", () => {
15
- const openAIVector = new Array(1536).fill(0.1);
16
- const tfidfVector = new Array(384).fill(0.1);
17
- const invalidVector = new Array(100).fill(0.1);
18
- expect(isOpenAIEmbedding(openAIVector)).toBe(true);
19
- expect(isOpenAIEmbedding(tfidfVector)).toBe(false);
20
- expect(isOpenAIEmbedding(invalidVector)).toBe(false);
21
- });
22
- it("should fallback to TF-IDF (padded to 1536) when no API key is provided", async () => {
23
- delete process.env.OPENAI_API_KEY;
24
- const text = "sample query text";
25
- const vector = await generateEmbedding(text);
26
- expect(vector).toBeDefined();
27
- expect(vector.length).toBe(1536);
28
- // Padded part (dimensions 384 to 1535) should be all 0
29
- const paddedPart = vector.slice(384);
30
- expect(paddedPart.every(val => val === 0)).toBe(true);
31
- });
32
- it("should use OpenAI API when API key is set and call succeeds", async () => {
33
- process.env.OPENAI_API_KEY = "sk-test-key-12345";
34
- const mockEmbedding = new Array(1536).fill(0.5);
35
- const mockFetch = vi.mocked(fetch).mockResolvedValue({
36
- ok: true,
37
- status: 200,
38
- json: async () => ({
39
- data: [{ embedding: mockEmbedding }]
40
- })
41
- });
42
- const vector = await generateEmbedding("hello world");
43
- expect(mockFetch).toHaveBeenCalled();
44
- expect(vector).toEqual(mockEmbedding);
45
- });
46
- it("should fallback to TF-IDF when OpenAI API call fails", async () => {
47
- process.env.OPENAI_API_KEY = "sk-test-key-12345";
48
- // Mock API failure
49
- const mockFetch = vi.mocked(fetch).mockResolvedValue({
50
- ok: false,
51
- status: 500,
52
- json: async () => ({ error: "Internal Server Error" })
53
- });
54
- const vector = await generateEmbedding("hello world");
55
- expect(mockFetch).toHaveBeenCalled();
56
- expect(vector.length).toBe(1536);
57
- // Should have fallen back to TF-IDF (first 384 dimensions contain non-zero data, rest are 0)
58
- const paddedPart = vector.slice(384);
59
- expect(paddedPart.every(val => val === 0)).toBe(true);
60
- });
61
- it("should support batch embedding generation", async () => {
62
- process.env.OPENAI_API_KEY = "sk-test-key-12345";
63
- const mockEmbeddings = [
64
- new Array(1536).fill(0.1),
65
- new Array(1536).fill(0.2)
66
- ];
67
- const mockFetch = vi.mocked(fetch).mockResolvedValue({
68
- ok: true,
69
- status: 200,
70
- json: async () => ({
71
- data: [
72
- { embedding: mockEmbeddings[0] },
73
- { embedding: mockEmbeddings[1] }
74
- ]
75
- })
76
- });
77
- const vectors = await generateEmbeddings(["doc1", "doc2"]);
78
- expect(mockFetch).toHaveBeenCalled();
79
- expect(vectors).toEqual(mockEmbeddings);
80
- });
81
- });
82
- //# sourceMappingURL=embedding.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"embedding.test.js","sourceRoot":"","sources":["../../tests/embedding.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,71 +0,0 @@
1
- import { beforeEach, describe, expect, it, vi } from "vitest";
2
- import * as memoryUtils from "../../src/cli/utils/memory.js";
3
- import { EvaluationEngine } from "../../src/modules/engines/evaluation-engine.js";
4
- import * as fsUtils from "../../src/shared/fs.js";
5
- // Mock fs to prevent real command execution
6
- vi.mock("fs", () => ({
7
- default: {
8
- existsSync: vi.fn().mockReturnValue(false),
9
- readFileSync: vi.fn().mockReturnValue(""),
10
- writeFileSync: vi.fn(),
11
- mkdirSync: vi.fn(),
12
- readdirSync: vi.fn().mockReturnValue([]),
13
- statSync: vi.fn(),
14
- },
15
- existsSync: vi.fn().mockReturnValue(false),
16
- readFileSync: vi.fn().mockReturnValue(""),
17
- writeFileSync: vi.fn(),
18
- mkdirSync: vi.fn(),
19
- readdirSync: vi.fn().mockReturnValue([]),
20
- statSync: vi.fn(),
21
- }));
22
- describe("EvaluationEngine", () => {
23
- beforeEach(() => {
24
- vi.spyOn(memoryUtils, "getFrameworkDir").mockReturnValue("/tmp/test-atabey");
25
- vi.spyOn(fsUtils, "ensureDir").mockImplementation(() => { });
26
- vi.spyOn(fsUtils, "writeTextFile").mockImplementation(() => { });
27
- vi.spyOn(fsUtils, "appendFile").mockImplementation(() => { });
28
- vi.spyOn(fsUtils, "runCommandQuiet").mockImplementation(() => { });
29
- });
30
- describe("evaluateTask", () => {
31
- it("should return an EvaluationResult with correct structure", () => {
32
- const result = EvaluationEngine.evaluateTask("T-001", "@backend", 1000);
33
- expect(result).toHaveProperty("traceId");
34
- expect(result).toHaveProperty("agent");
35
- expect(result).toHaveProperty("score");
36
- expect(result).toHaveProperty("metrics");
37
- expect(result).toHaveProperty("durationMs");
38
- expect(result).toHaveProperty("timestamp");
39
- });
40
- it("should set agent name without @ prefix", () => {
41
- const result = EvaluationEngine.evaluateTask("T-001", "@backend", 1000);
42
- expect(result.agent).toBe("backend");
43
- });
44
- it("should return a score between 0 and 100", () => {
45
- const result = EvaluationEngine.evaluateTask("T-001", "@backend", 1000);
46
- expect(result.score).toBeGreaterThanOrEqual(0);
47
- expect(result.score).toBeLessThanOrEqual(100);
48
- });
49
- it("should record durationMs correctly", () => {
50
- const result = EvaluationEngine.evaluateTask("T-001", "@backend", 5000);
51
- expect(result.durationMs).toBe(5000);
52
- });
53
- it("should have metrics object with all required fields", () => {
54
- const result = EvaluationEngine.evaluateTask("T-001", "@backend", 1000);
55
- expect(result.metrics).toHaveProperty("compilation");
56
- expect(result.metrics).toHaveProperty("lint");
57
- expect(result.metrics).toHaveProperty("tests");
58
- expect(result.metrics).toHaveProperty("compliance");
59
- });
60
- it("should penalize long-running tasks", () => {
61
- const fastResult = EvaluationEngine.evaluateTask("T-001", "@backend", 1000);
62
- const slowResult = EvaluationEngine.evaluateTask("T-002", "@backend", 130000);
63
- expect(slowResult.score).toBeLessThanOrEqual(fastResult.score);
64
- });
65
- it("should handle different agent names", () => {
66
- const result = EvaluationEngine.evaluateTask("T-003", "@frontend", 2000);
67
- expect(result.agent).toBe("frontend");
68
- });
69
- });
70
- });
71
- //# sourceMappingURL=evaluation-engine.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"evaluation-engine.test.js","sourceRoot":"","sources":["../../../tests/engines/evaluation-engine.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,100 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { PlanningEngine } from "../../src/modules/engines/planning-engine.js";
3
- describe("PlanningEngine", () => {
4
- describe("createPlan", () => {
5
- it("should create a plan with valid structure", () => {
6
- const plan = PlanningEngine.createPlan([
7
- { task: "Create login API", agent: "@backend" },
8
- { task: "Create login page", agent: "@frontend" },
9
- ]);
10
- expect(plan).toHaveProperty("planId");
11
- expect(plan).toHaveProperty("tasks");
12
- expect(plan.tasks).toHaveLength(2);
13
- });
14
- it("should assign planId as a non-empty string", () => {
15
- const plan = PlanningEngine.createPlan([
16
- { task: "Test task" },
17
- ]);
18
- expect(plan.planId).toBeTruthy();
19
- expect(typeof plan.planId).toBe("string");
20
- });
21
- it("should auto-assign agent via RoutingEngine if not provided", () => {
22
- const plan = PlanningEngine.createPlan([
23
- { task: "Create a backend REST API" },
24
- ]);
25
- expect(plan.tasks[0].agent).toBeTruthy();
26
- });
27
- it("should use provided task IDs", () => {
28
- const plan = PlanningEngine.createPlan([
29
- { id: "TASK_01", task: "Test", agent: "@backend" },
30
- ]);
31
- expect(plan.tasks[0].id).toBe("TASK_01");
32
- });
33
- it("should auto-generate task IDs if not provided", () => {
34
- const plan = PlanningEngine.createPlan([
35
- { task: "Test", agent: "@backend" },
36
- { task: "Test 2", agent: "@frontend" },
37
- ]);
38
- expect(plan.tasks[0].id).toBeTruthy();
39
- expect(plan.tasks[1].id).toBeTruthy();
40
- });
41
- it("should include dependencies if provided", () => {
42
- const plan = PlanningEngine.createPlan([
43
- { id: "TASK_01", task: "Setup DB", agent: "@backend" },
44
- { id: "TASK_02", task: "Create API", agent: "@backend", dependencies: ["TASK_01"] },
45
- ]);
46
- expect(plan.tasks[1].dependencies).toContain("TASK_01");
47
- });
48
- });
49
- describe("validatePlan", () => {
50
- it("should validate a correct plan", () => {
51
- const plan = PlanningEngine.createPlan([
52
- { id: "TASK_01", task: "Setup DB", agent: "@backend" },
53
- { id: "TASK_02", task: "Create API", agent: "@backend", dependencies: ["TASK_01"] },
54
- ]);
55
- const result = PlanningEngine.validatePlan(plan);
56
- expect(result.valid).toBe(true);
57
- expect(result.errors).toHaveLength(0);
58
- });
59
- it("should detect non-existent dependencies", () => {
60
- const plan = PlanningEngine.createPlan([
61
- { id: "TASK_01", task: "Create API", agent: "@backend", dependencies: ["TASK_99"] },
62
- ]);
63
- const result = PlanningEngine.validatePlan(plan);
64
- expect(result.valid).toBe(false);
65
- expect(result.errors.some(e => e.includes("non-existent"))).toBe(true);
66
- });
67
- it("should detect self-dependency", () => {
68
- // Manually create a plan with self-dependency
69
- const manualPlan = {
70
- planId: "PLAN_TEST",
71
- tasks: [
72
- { id: "TASK_01", agent: "@backend", task: "Task", dependencies: ["TASK_01"] },
73
- ],
74
- };
75
- const result = PlanningEngine.validatePlan(manualPlan);
76
- expect(result.valid).toBe(false);
77
- expect(result.errors.some(e => e.includes("cannot depend on itself"))).toBe(true);
78
- });
79
- it("should detect circular dependencies", () => {
80
- const circularPlan = {
81
- planId: "PLAN_CIRCULAR",
82
- tasks: [
83
- { id: "TASK_01", agent: "@backend", task: "Task 1", dependencies: ["TASK_02"] },
84
- { id: "TASK_02", agent: "@backend", task: "Task 2", dependencies: ["TASK_01"] },
85
- ],
86
- };
87
- const result = PlanningEngine.validatePlan(circularPlan);
88
- expect(result.valid).toBe(false);
89
- expect(result.errors.some(e => e.includes("Circular"))).toBe(true);
90
- });
91
- it("should validate a single task plan with no dependencies", () => {
92
- const plan = PlanningEngine.createPlan([
93
- { id: "TASK_01", task: "Single task", agent: "@backend" },
94
- ]);
95
- const result = PlanningEngine.validatePlan(plan);
96
- expect(result.valid).toBe(true);
97
- });
98
- });
99
- });
100
- //# sourceMappingURL=planning-engine.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"planning-engine.test.js","sourceRoot":"","sources":["../../../tests/engines/planning-engine.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,59 +0,0 @@
1
- import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
2
- import { QualityGate } from "../../src/modules/engines/quality-gate.js";
3
- describe("QualityGate", () => {
4
- const originalEnv = process.env;
5
- beforeEach(() => {
6
- vi.resetModules();
7
- process.env = { ...originalEnv, VITEST: "true" };
8
- });
9
- afterEach(() => {
10
- process.env = originalEnv;
11
- });
12
- describe("check", () => {
13
- it("should pass valid output", async () => {
14
- const result = await QualityGate.check("@backend", "function add(a: number, b: number): number { return a + b; }", "Create an add function");
15
- expect(result.passed).toBe(true);
16
- expect(result.reason).toContain("passed");
17
- });
18
- it("should fail empty output", async () => {
19
- const result = await QualityGate.check("@backend", "", "Do something");
20
- expect(result.passed).toBe(false);
21
- expect(result.reason).toContain("empty");
22
- });
23
- it("should fail short output", async () => {
24
- const result = await QualityGate.check("@backend", "short", "Do something");
25
- expect(result.passed).toBe(false);
26
- expect(result.reason).toContain("short");
27
- });
28
- it("should fail output containing ERROR", async () => {
29
- const result = await QualityGate.check("@backend", "This is a long enough output but contains ERROR in it", "Do something");
30
- expect(result.passed).toBe(false);
31
- expect(result.reason).toContain("ERROR");
32
- });
33
- it("should fail output containing FAILED", async () => {
34
- const result = await QualityGate.check("@backend", "This is a long enough output but the task FAILED", "Do something");
35
- expect(result.passed).toBe(false);
36
- expect(result.reason).toContain("FAILED");
37
- });
38
- it("should fail output containing TIMEOUT", async () => {
39
- const result = await QualityGate.check("@backend", "This is a long enough output but it TIMEOUT", "Do something");
40
- expect(result.passed).toBe(false);
41
- expect(result.reason).toContain("TIMEOUT");
42
- });
43
- it("should fail output with `any` type violation", async () => {
44
- const result = await QualityGate.check("@backend", "function process(data: any): any { return data; }", "Create a process function");
45
- expect(result.passed).toBe(false);
46
- expect(result.reason).toContain("any");
47
- });
48
- it("should pass output with proper TypeScript types", async () => {
49
- const result = await QualityGate.check("@backend", "function process(data: string): Record<string, unknown> { return { result: data }; }", "Create a process function");
50
- expect(result.passed).toBe(true);
51
- });
52
- it("should handle CRASHED indicator", async () => {
53
- const result = await QualityGate.check("@backend", "The application CRASHED during execution of this long enough output", "Run application");
54
- expect(result.passed).toBe(false);
55
- expect(result.reason).toContain("CRASHED");
56
- });
57
- });
58
- });
59
- //# sourceMappingURL=quality-gate.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"quality-gate.test.js","sourceRoot":"","sources":["../../../tests/engines/quality-gate.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AAExE,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IACzB,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC;IAEhC,UAAU,CAAC,GAAG,EAAE;QACZ,EAAE,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,CAAC,GAAG,GAAG,EAAE,GAAG,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACX,OAAO,CAAC,GAAG,GAAG,WAAW,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;QACnB,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;YACtC,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,KAAK,CAClC,UAAU,EACV,8DAA8D,EAC9D,wBAAwB,CAC3B,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;YACtC,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,KAAK,CAClC,UAAU,EACV,EAAE,EACF,cAAc,CACjB,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;YACtC,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,KAAK,CAClC,UAAU,EACV,OAAO,EACP,cAAc,CACjB,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;YACjD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,KAAK,CAClC,UAAU,EACV,uDAAuD,EACvD,cAAc,CACjB,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;YAClD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,KAAK,CAClC,UAAU,EACV,kDAAkD,EAClD,cAAc,CACjB,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;YACnD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,KAAK,CAClC,UAAU,EACV,6CAA6C,EAC7C,cAAc,CACjB,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC1D,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,KAAK,CAClC,UAAU,EACV,mDAAmD,EACnD,2BAA2B,CAC9B,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;YAC7D,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,KAAK,CAClC,UAAU,EACV,sFAAsF,EACtF,2BAA2B,CAC9B,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;YAC7C,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,KAAK,CAClC,UAAU,EACV,qEAAqE,EACrE,iBAAiB,CACpB,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,80 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { RiskEngine } from "../../src/modules/engines/risk-engine.js";
3
- describe("RiskEngine", () => {
4
- describe("assessTaskRisk", () => {
5
- it("should return LOW risk for safe tasks", () => {
6
- const result = RiskEngine.assessTaskRisk("Create a new user endpoint");
7
- expect(result.severity).toBe("LOW");
8
- expect(result.requiresApproval).toBe(false);
9
- expect(result.totalScore).toBeLessThan(20);
10
- });
11
- it("should detect DELETE keyword as high risk", () => {
12
- const result = RiskEngine.assessTaskRisk("Delete all records from the users table");
13
- expect(result.factors.some(f => f.factor.includes("delete"))).toBe(true);
14
- expect(result.totalScore).toBeGreaterThanOrEqual(40);
15
- });
16
- it("should detect DROP keyword as high risk", () => {
17
- const result = RiskEngine.assessTaskRisk("DROP the old table");
18
- expect(result.factors.some(f => f.factor.includes("drop"))).toBe(true);
19
- });
20
- it("should detect TRUNCATE keyword as high risk", () => {
21
- const result = RiskEngine.assessTaskRisk("TRUNCATE the logs table");
22
- expect(result.factors.some(f => f.factor.includes("truncate"))).toBe(true);
23
- });
24
- it("should detect rm -rf as high risk", () => {
25
- const result = RiskEngine.assessTaskRisk("Run rm -rf / to clean up");
26
- expect(result.factors.some(f => f.factor.includes("rm -rf"))).toBe(true);
27
- expect(result.severity).toBe("HIGH");
28
- });
29
- it("should detect sensitive paths in task", () => {
30
- const result = RiskEngine.assessTaskRisk("Modify the .env configuration file");
31
- expect(result.factors.some(f => f.factor.includes(".env"))).toBe(true);
32
- });
33
- it("should require approval for score >= 60", () => {
34
- const result = RiskEngine.assessTaskRisk("Delete all records, DROP the table, and purge the cache");
35
- expect(result.requiresApproval).toBe(true);
36
- expect(result.totalScore).toBeGreaterThanOrEqual(60);
37
- });
38
- it("should add complexity risk for long tasks", () => {
39
- const longTask = "a".repeat(301);
40
- const result = RiskEngine.assessTaskRisk(longTask);
41
- expect(result.factors.some(f => f.factor.includes("Complexity"))).toBe(true);
42
- });
43
- it("should not exceed max score of 100", () => {
44
- const result = RiskEngine.assessTaskRisk("delete drop truncate rm -rf purge format force");
45
- expect(result.totalScore).toBeLessThanOrEqual(100);
46
- });
47
- it("should detect PURGE keyword", () => {
48
- const result = RiskEngine.assessTaskRisk("Purge all old records");
49
- expect(result.factors.some(f => f.factor.includes("purge"))).toBe(true);
50
- });
51
- it("should detect FORCE keyword", () => {
52
- const result = RiskEngine.assessTaskRisk("Force delete the directory");
53
- expect(result.factors.some(f => f.factor.includes("force"))).toBe(true);
54
- });
55
- });
56
- describe("assessChangeRisk", () => {
57
- it("should assess write operations as higher risk", () => {
58
- const result = RiskEngine.assessChangeRisk("src/file.ts", "write");
59
- expect(result.factors.some(f => f.factor.includes("write"))).toBe(true);
60
- });
61
- it("should assess replace operations as lower risk", () => {
62
- const writeResult = RiskEngine.assessChangeRisk("src/file.ts", "write");
63
- const replaceResult = RiskEngine.assessChangeRisk("src/file.ts", "replace");
64
- expect(writeResult.totalScore).toBeGreaterThan(replaceResult.totalScore);
65
- });
66
- it("should detect sensitive file paths", () => {
67
- const result = RiskEngine.assessChangeRisk(".env", "write");
68
- expect(result.factors.some(f => f.factor.includes(".env"))).toBe(true);
69
- });
70
- it("should detect config file changes", () => {
71
- const result = RiskEngine.assessChangeRisk("src/config/database.ts", "write");
72
- expect(result.factors.some(f => f.factor.includes("config"))).toBe(true);
73
- });
74
- it("should detect atabey framework file changes", () => {
75
- const result = RiskEngine.assessChangeRisk(".atabey/config.json", "write");
76
- expect(result.factors.some(f => f.factor.includes("atabey"))).toBe(true);
77
- });
78
- });
79
- });
80
- //# sourceMappingURL=risk-engine.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"risk-engine.test.js","sourceRoot":"","sources":["../../../tests/engines/risk-engine.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,78 +0,0 @@
1
- import { beforeEach, describe, expect, it, vi } from "vitest";
2
- import * as memoryUtils from "../../src/cli/utils/memory.js";
3
- import { RoutingEngine } from "../../src/modules/engines/routing-engine.js";
4
- describe("RoutingEngine", () => {
5
- beforeEach(() => {
6
- vi.spyOn(memoryUtils, "getFrameworkDir").mockReturnValue("/tmp/test-atabey");
7
- });
8
- describe("resolveAgent", () => {
9
- it("should route backend tasks to @backend", () => {
10
- const agent = RoutingEngine.resolveAgent("Create a REST API for user management with CRUD operations");
11
- expect(agent).toBe("@backend");
12
- });
13
- it("should route frontend tasks to @frontend", () => {
14
- const agent = RoutingEngine.resolveAgent("Build a React login page with Tailwind CSS");
15
- expect(agent).toBe("@frontend");
16
- });
17
- it("should route security tasks to @security", () => {
18
- const agent = RoutingEngine.resolveAgent("Audit the authentication middleware for vulnerabilities");
19
- expect(agent).toBe("@security");
20
- });
21
- it("should route database tasks to @database", () => {
22
- const agent = RoutingEngine.resolveAgent("Create a migration for the users table");
23
- expect(agent).toBe("@database");
24
- });
25
- it("should route devops tasks to @devops", () => {
26
- const agent = RoutingEngine.resolveAgent("Set up Docker and CI/CD pipeline");
27
- expect(agent).toBe("@devops");
28
- });
29
- it("should route mobile tasks to @mobile", () => {
30
- const agent = RoutingEngine.resolveAgent("Build a React Native screen for user profile");
31
- // TF-IDF may route to @frontend due to "React" keyword weight
32
- expect(["@mobile", "@frontend"]).toContain(agent);
33
- });
34
- it("should route architecture tasks to @architect", () => {
35
- const agent = RoutingEngine.resolveAgent("Design the system architecture for microservices");
36
- expect(agent).toBe("@architect");
37
- });
38
- it("should default to @backend for unknown tasks", () => {
39
- const agent = RoutingEngine.resolveAgent("Do something random");
40
- // TF-IDF may route to various agents based on keyword matching
41
- expect(agent).toBeTruthy();
42
- expect(agent.startsWith("@")).toBe(true);
43
- });
44
- });
45
- describe("resolveWithDetails", () => {
46
- it("should return routing details with score and confidence", () => {
47
- const result = RoutingEngine.resolveWithDetails("Create a Node.js backend API");
48
- expect(result).toHaveProperty("agent");
49
- expect(result).toHaveProperty("score");
50
- expect(result).toHaveProperty("confidence");
51
- expect(result).toHaveProperty("reasoning");
52
- expect(result).toHaveProperty("subTasks");
53
- expect(["high", "medium", "low"]).toContain(result.confidence);
54
- });
55
- it("should return subtasks array", () => {
56
- const result = RoutingEngine.resolveWithDetails("Build a React frontend");
57
- expect(Array.isArray(result.subTasks)).toBe(true);
58
- expect(result.subTasks.length).toBeGreaterThan(0);
59
- });
60
- it("should return high confidence for clear backend tasks", () => {
61
- const result = RoutingEngine.resolveWithDetails("Create a backend API endpoint for user authentication with JWT tokens and database queries");
62
- expect(result.confidence).toBe("high");
63
- });
64
- });
65
- describe("planTask", () => {
66
- it("should return a structured plan array", () => {
67
- const plan = RoutingEngine.planTask("Create login page");
68
- expect(Array.isArray(plan)).toBe(true);
69
- expect(plan.length).toBeGreaterThan(0);
70
- expect(plan[0]).toContain("Task:");
71
- });
72
- it("should include subtask steps in the plan", () => {
73
- const plan = RoutingEngine.planTask("Create a database migration");
74
- expect(plan.some(line => line.includes("Subtasks"))).toBe(true);
75
- });
76
- });
77
- });
78
- //# sourceMappingURL=routing-engine.test.js.map