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,161 +0,0 @@
1
- /**
2
- * [ENGINE] Architecture Discovery Protocol (ADP)
3
- *
4
- * Implements the ADP from ATABEY_FULL.md:
5
- * 1. Entry Point Hunt — find main entry points (index.ts, main.ts, server.ts)
6
- * 2. Business Logic Mapping — search for service/repository/controller patterns
7
- * 3. Contract Analysis — locate type definitions and API schemas
8
- * 4. Adaptive Scaffolding — propose architectural improvements before coding
9
- */
10
- import fs from "fs";
11
- import path from "path";
12
- import { logger } from "../../shared/logger.js";
13
- import { AtabeyStorage } from "../../shared/storage.js";
14
- export class DiscoveryEngine {
15
- /**
16
- * Runs the full Architecture Discovery Protocol on a project.
17
- */
18
- static async discover(projectRoot) {
19
- logger.info(`[ADP] Starting Architecture Discovery Protocol for ${projectRoot}`);
20
- const entryPoints = DiscoveryEngine.findEntryPoints(projectRoot);
21
- const businessLogic = DiscoveryEngine.mapBusinessLogic(projectRoot);
22
- const contracts = DiscoveryEngine.analyzeContracts(projectRoot);
23
- const architecture = DiscoveryEngine.detectArchitecture(projectRoot);
24
- const recommendations = DiscoveryEngine.generateRecommendations(entryPoints, businessLogic, contracts, architecture);
25
- // Log discovery results
26
- AtabeyStorage.saveLog({
27
- agent: "@explorer",
28
- action: "ARCHITECTURE_DISCOVERY",
29
- trace_id: AtabeyStorage.getMetadata("traceId") || "N/A",
30
- status: "SUCCESS",
31
- summary: `ADP complete: ${entryPoints.length} entry points, ${businessLogic.length} logic files, ${contracts.length} contracts`
32
- });
33
- return { entryPoints, businessLogic, contracts, architecture, recommendations };
34
- }
35
- /**
36
- * Step 1: Entry Point Hunt — find main entry points.
37
- */
38
- static findEntryPoints(projectRoot) {
39
- const entryPoints = [];
40
- const patterns = ["index.ts", "main.ts", "server.ts", "app.ts", "index.js", "main.js", "server.js"];
41
- const searchDir = (dir, depth) => {
42
- if (depth > 3)
43
- return; // Limit depth
44
- try {
45
- const entries = fs.readdirSync(dir, { withFileTypes: true });
46
- for (const entry of entries) {
47
- if (entry.isDirectory() && !entry.name.startsWith(".") && entry.name !== "node_modules") {
48
- searchDir(path.join(dir, entry.name), depth + 1);
49
- }
50
- else if (patterns.includes(entry.name)) {
51
- entryPoints.push(path.relative(projectRoot, path.join(dir, entry.name)));
52
- }
53
- }
54
- }
55
- catch { /* skip unreadable */ }
56
- };
57
- searchDir(projectRoot, 0);
58
- return entryPoints;
59
- }
60
- /**
61
- * Step 2: Business Logic Mapping — find service/repository/controller patterns.
62
- */
63
- static mapBusinessLogic(projectRoot) {
64
- const logicFiles = [];
65
- const patterns = ["service", "repository", "controller", "handler", "use-case", "domain"];
66
- const searchDir = (dir) => {
67
- try {
68
- const entries = fs.readdirSync(dir, { withFileTypes: true });
69
- for (const entry of entries) {
70
- const fullPath = path.join(dir, entry.name);
71
- if (entry.isDirectory() && !entry.name.startsWith(".") && entry.name !== "node_modules") {
72
- searchDir(fullPath);
73
- }
74
- else if (entry.isFile() && (entry.name.endsWith(".ts") || entry.name.endsWith(".js"))) {
75
- const lower = entry.name.toLowerCase();
76
- if (patterns.some(p => lower.includes(p))) {
77
- logicFiles.push(path.relative(projectRoot, fullPath));
78
- }
79
- }
80
- }
81
- }
82
- catch { /* skip unreadable */ }
83
- };
84
- searchDir(projectRoot);
85
- return logicFiles;
86
- }
87
- /**
88
- * Step 3: Contract Analysis — find type definitions and API schemas.
89
- */
90
- static analyzeContracts(projectRoot) {
91
- const contractFiles = [];
92
- const patterns = ["types.ts", "schema.ts", "contract.ts", "interface.ts", "dto.ts", "api.ts"];
93
- const searchDir = (dir) => {
94
- try {
95
- const entries = fs.readdirSync(dir, { withFileTypes: true });
96
- for (const entry of entries) {
97
- const fullPath = path.join(dir, entry.name);
98
- if (entry.isDirectory() && !entry.name.startsWith(".") && entry.name !== "node_modules") {
99
- searchDir(fullPath);
100
- }
101
- else if (entry.isFile() && (entry.name.endsWith(".ts") || entry.name.endsWith(".d.ts"))) {
102
- const lower = entry.name.toLowerCase();
103
- if (patterns.some(p => lower.includes(p))) {
104
- contractFiles.push(path.relative(projectRoot, fullPath));
105
- }
106
- }
107
- }
108
- }
109
- catch { /* skip unreadable */ }
110
- };
111
- searchDir(projectRoot);
112
- return contractFiles;
113
- }
114
- /**
115
- * Detects the project architecture type.
116
- */
117
- static detectArchitecture(projectRoot) {
118
- const hasSrc = fs.existsSync(path.join(projectRoot, "src"));
119
- const hasApps = fs.existsSync(path.join(projectRoot, "apps"));
120
- const hasPackages = fs.existsSync(path.join(projectRoot, "packages"));
121
- const hasBackend = fs.existsSync(path.join(projectRoot, "backend")) || fs.existsSync(path.join(projectRoot, "server"));
122
- const hasFrontend = fs.existsSync(path.join(projectRoot, "frontend")) || fs.existsSync(path.join(projectRoot, "web"));
123
- const hasPackageJson = fs.existsSync(path.join(projectRoot, "package.json"));
124
- if (hasApps || hasPackages)
125
- return "monorepo";
126
- if (hasSrc && hasBackend && hasFrontend)
127
- return "fullstack-src";
128
- if (hasBackend && hasFrontend)
129
- return "fullstack";
130
- if (hasBackend)
131
- return "backend-only";
132
- if (hasFrontend)
133
- return "frontend-only";
134
- if (hasSrc)
135
- return "src-based";
136
- if (hasPackageJson)
137
- return "simple-node";
138
- return "unknown";
139
- }
140
- /**
141
- * Generates recommendations based on discovery results.
142
- */
143
- static generateRecommendations(entryPoints, businessLogic, contracts, architecture) {
144
- const recommendations = [];
145
- if (entryPoints.length === 0) {
146
- recommendations.push("No entry point found. Consider creating a standard entry point (index.ts, main.ts).");
147
- }
148
- if (businessLogic.length === 0) {
149
- recommendations.push("No business logic files found. Consider using service/repository pattern.");
150
- }
151
- if (contracts.length === 0) {
152
- recommendations.push("No contract/type files found. Define shared types before implementation.");
153
- }
154
- if (architecture === "unknown") {
155
- recommendations.push("Architecture type undetected. Run `atabey init` to scaffold project structure.");
156
- }
157
- recommendations.push(`Detected architecture: ${architecture}`);
158
- return recommendations;
159
- }
160
- }
161
- //# sourceMappingURL=discovery-engine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"discovery-engine.js","sourceRoot":"","sources":["../../../../src/modules/engines/discovery-engine.ts"],"names":[],"mappings":"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"}
@@ -1,18 +0,0 @@
1
- import { EvaluationResult } from "./types.js";
2
- export declare class EvaluationEngine {
3
- /**
4
- * Evaluates a completed task, calculates a score, and updates Specialty Memory.
5
- * Saves lessons from both failures AND successes.
6
- */
7
- static evaluateTask(traceIdStr: string, agentName: string, durationMs: number, taskDescription?: string): EvaluationResult;
8
- private static extractSuccessLesson;
9
- /**
10
- * Reads learned conventions from an agent's specialty memory.
11
- * Used by silent-router to inject context into AI calls.
12
- */
13
- static readLearnedConventions(agentName: string): string;
14
- /**
15
- * Appends learned lessons to the agent's specialty memory.
16
- */
17
- private static updateSpecialtyMemory;
18
- }
@@ -1,171 +0,0 @@
1
- import fs from "fs";
2
- import path from "path";
3
- import { scanProjectCompliance } from "../../cli/utils/compliance.js";
4
- import { getFrameworkDir } from "../../cli/utils/memory.js";
5
- import { appendFile, ensureDir, runCommandQuiet, writeTextFile } from "../../shared/fs.js";
6
- import { logger } from "../../shared/logger.js";
7
- import { asTraceID } from "../../shared/types.js";
8
- export class EvaluationEngine {
9
- /**
10
- * Evaluates a completed task, calculates a score, and updates Specialty Memory.
11
- * Saves lessons from both failures AND successes.
12
- */
13
- static evaluateTask(traceIdStr, agentName, durationMs, taskDescription) {
14
- const traceId = asTraceID(traceIdStr);
15
- logger.debug(`Starting evaluation for Trace ${traceId} by ${agentName}`);
16
- let score = 100;
17
- const metrics = {
18
- compilation: true,
19
- lint: true,
20
- tests: true,
21
- compliance: 0
22
- };
23
- const projectRoot = process.cwd();
24
- const lessons = [];
25
- // 1. Compliance Check (AST-based discipline check)
26
- try {
27
- const issues = scanProjectCompliance("src");
28
- metrics.compliance = issues.length;
29
- if (issues.length > 0) {
30
- score -= Math.min(issues.length * 5, 40);
31
- lessons.push("Compliance Violations Detected: Ensure strict adherence to zero-any, zero-console.log policies.");
32
- }
33
- else {
34
- lessons.push("Compliance check passed: No any types or console.log violations found.");
35
- }
36
- }
37
- catch (e) {
38
- logger.debug("Compliance check failed during evaluation", e);
39
- }
40
- // 2. Compilation Check
41
- try {
42
- if (fs.existsSync(path.join(projectRoot, "tsconfig.json"))) {
43
- runCommandQuiet("npx", ["tsc", "--noEmit"], projectRoot);
44
- lessons.push("TypeScript compilation succeeded. Project is type-safe.");
45
- }
46
- }
47
- catch {
48
- metrics.compilation = false;
49
- score -= 20;
50
- lessons.push("Compilation Error: Always run 'npx tsc --noEmit' to verify type safety before completing a task.");
51
- }
52
- // 3. Lint Check
53
- try {
54
- if (fs.existsSync(path.join(projectRoot, "eslint.config.js"))) {
55
- runCommandQuiet("npx", ["eslint", ".", "--max-warnings", "0"], projectRoot);
56
- lessons.push("Lint check passed. Code follows project style guidelines.");
57
- }
58
- }
59
- catch {
60
- metrics.lint = false;
61
- score -= 10;
62
- }
63
- // 4. Test Check
64
- try {
65
- if (fs.existsSync(path.join(projectRoot, "vitest.config.ts"))) {
66
- runCommandQuiet("npx", ["vitest", "run", "--passWithNoTests"], projectRoot);
67
- lessons.push("All tests passed. Changes are verified.");
68
- }
69
- }
70
- catch {
71
- metrics.tests = false;
72
- score -= 20;
73
- lessons.push("Test Failure: Ensure all unit tests pass before marking a task as COMPLETED.");
74
- }
75
- // 5. Efficiency Check
76
- if (durationMs > 120000) {
77
- score -= 10;
78
- lessons.push("Task took longer than 2 minutes. Consider breaking large tasks into smaller steps.");
79
- }
80
- else if (score >= 80) {
81
- lessons.push("Task completed efficiently within expected timeframe.");
82
- }
83
- // 6. Success Lesson — if score is high and no critical errors
84
- if (score >= 80 && taskDescription) {
85
- const successLesson = this.extractSuccessLesson(agentName, taskDescription);
86
- if (successLesson) {
87
- lessons.push(successLesson);
88
- }
89
- }
90
- // Save all lessons to specialty memory
91
- for (const lesson of lessons) {
92
- this.updateSpecialtyMemory(agentName, lesson);
93
- }
94
- const result = {
95
- traceId,
96
- agent: agentName.replace("@", ""),
97
- score: Math.max(0, score),
98
- metrics,
99
- durationMs,
100
- timestamp: new Date().toISOString()
101
- };
102
- logger.debug(`Evaluation completed for ${agentName}: Score ${result.score}/100`);
103
- return result;
104
- }
105
- static extractSuccessLesson(agentName, taskDescription) {
106
- const patterns = [
107
- { keywords: ["api", "endpoint", "route", "rest"], category: "REST API pattern" },
108
- { keywords: ["auth", "login", "jwt", "token"], category: "Authentication/authorization/JWT pattern" },
109
- { keywords: ["test", "spec", "vitest"], category: "Test-driven development approach" },
110
- { keywords: ["migration", "schema", "database", "sql"], category: "Database schema/migration pattern" },
111
- { keywords: ["component", "react", "ui", "page"], category: "UI component design pattern" },
112
- { keywords: ["middleware", "guard", "interceptor"], category: "Middleware/guard pipeline pattern" },
113
- { keywords: ["service", "repository", "inject"], category: "Service/repository architecture pattern" },
114
- { keywords: ["error", "exception", "catch", "try"], category: "Robust error handling pattern" },
115
- { keywords: ["config", "env", "environment"], category: "Configuration and environment control pattern" },
116
- ];
117
- const lower = taskDescription.toLowerCase();
118
- let categoryStr = "";
119
- for (const { keywords, category } of patterns) {
120
- if (keywords.some(k => lower.includes(k))) {
121
- categoryStr = ` using ${category}`;
122
- break;
123
- }
124
- }
125
- const cleanedTask = taskDescription.replace(/\r?\n/g, " ").trim();
126
- const truncatedTask = cleanedTask.length > 120 ? cleanedTask.substring(0, 117) + "..." : cleanedTask;
127
- const capitalizedTask = truncatedTask.charAt(0).toUpperCase() + truncatedTask.slice(1);
128
- return `Successfully completed task: "${capitalizedTask}"${categoryStr}.`;
129
- }
130
- /**
131
- * Reads learned conventions from an agent's specialty memory.
132
- * Used by silent-router to inject context into AI calls.
133
- */
134
- static readLearnedConventions(agentName) {
135
- const cleanName = agentName.replace("@", "");
136
- const fwDir = getFrameworkDir();
137
- const filePath = path.join(fwDir, "memory", "specialties", `${cleanName}.md`);
138
- try {
139
- if (fs.existsSync(filePath)) {
140
- const content = fs.readFileSync(filePath, "utf8").trim();
141
- if (content)
142
- return content;
143
- }
144
- }
145
- catch {
146
- // File might not exist yet
147
- }
148
- return "";
149
- }
150
- /**
151
- * Appends learned lessons to the agent's specialty memory.
152
- */
153
- static updateSpecialtyMemory(agentName, lesson) {
154
- const cleanName = agentName.replace("@", "");
155
- const fwDir = getFrameworkDir();
156
- const specialtiesDir = path.join(fwDir, "memory", "specialties");
157
- ensureDir(specialtiesDir);
158
- const filePath = path.join(specialtiesDir, `${cleanName}.md`);
159
- const timestamp = new Date().toISOString().split("T")[0];
160
- const entry = `- **[${timestamp}]**: ${lesson}\n`;
161
- if (!fs.existsSync(filePath)) {
162
- writeTextFile(filePath, `# Learned Conventions for @${cleanName}\n\n`);
163
- }
164
- // Avoid duplicate lessons on the same day
165
- const currentContent = fs.readFileSync(filePath, "utf8");
166
- if (!currentContent.includes(lesson)) {
167
- appendFile(filePath, entry);
168
- }
169
- }
170
- }
171
- //# sourceMappingURL=evaluation-engine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"evaluation-engine.js","sourceRoot":"","sources":["../../../../src/modules/engines/evaluation-engine.ts"],"names":[],"mappings":"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"}
@@ -1,41 +0,0 @@
1
- /**
2
- * [ENGINE] File Lock — Conflict Resolution for Multi-Agent File Access
3
- *
4
- * Prevents two agents from writing to the same file simultaneously.
5
- * Uses .atabey/locks/ directory with per-file lock files.
6
- *
7
- * Flow:
8
- * 1. Agent A acquires lock on src/file.ts → writes .atabey/locks/src/file.ts.lock
9
- * 2. Agent B tries to write src/file.ts → lock exists → WAITING state
10
- * 3. Agent A releases lock → Agent B can proceed
11
- *
12
- * Stale lock detection: locks older than 5 minutes are auto-released.
13
- */
14
- export declare class FileLock {
15
- private static LOCKS_DIR;
16
- private static STALE_TIMEOUT_MS;
17
- /**
18
- * Attempts to acquire a lock for a file on behalf of an agent.
19
- * Returns true if lock acquired, false if another agent holds it.
20
- */
21
- static acquire(agentName: string, filePath: string): boolean;
22
- /**
23
- * Releases a lock held by an agent.
24
- * Only the lock-owning agent can release (others get warning).
25
- */
26
- static release(agentName: string, filePath: string): boolean;
27
- /**
28
- * Checks if a file is currently locked.
29
- * Returns the locking agent name or null.
30
- */
31
- static isLocked(filePath: string): string | null;
32
- /**
33
- * Lists all currently active locks.
34
- */
35
- static listLocks(): Array<{
36
- agent: string;
37
- file: string;
38
- acquiredAt: string;
39
- }>;
40
- private static getLockPath;
41
- }
@@ -1,168 +0,0 @@
1
- import fs from "fs";
2
- import path from "path";
3
- import { logger } from "../../shared/logger.js";
4
- import { AtabeyStorage } from "../../shared/storage.js";
5
- /**
6
- * [ENGINE] File Lock — Conflict Resolution for Multi-Agent File Access
7
- *
8
- * Prevents two agents from writing to the same file simultaneously.
9
- * Uses .atabey/locks/ directory with per-file lock files.
10
- *
11
- * Flow:
12
- * 1. Agent A acquires lock on src/file.ts → writes .atabey/locks/src/file.ts.lock
13
- * 2. Agent B tries to write src/file.ts → lock exists → WAITING state
14
- * 3. Agent A releases lock → Agent B can proceed
15
- *
16
- * Stale lock detection: locks older than 5 minutes are auto-released.
17
- */
18
- export class FileLock {
19
- static LOCKS_DIR = ".atabey/locks";
20
- static STALE_TIMEOUT_MS = 5 * 60 * 1000; // 5 minutes
21
- /**
22
- * Attempts to acquire a lock for a file on behalf of an agent.
23
- * Returns true if lock acquired, false if another agent holds it.
24
- */
25
- static acquire(agentName, filePath) {
26
- const lockFile = FileLock.getLockPath(filePath);
27
- const lockDir = path.dirname(lockFile);
28
- // Ensure locks directory exists
29
- if (!fs.existsSync(lockDir)) {
30
- fs.mkdirSync(lockDir, { recursive: true });
31
- }
32
- // Check if lock already exists
33
- if (fs.existsSync(lockFile)) {
34
- try {
35
- const lockData = JSON.parse(fs.readFileSync(lockFile, "utf8"));
36
- // Check if lock is stale (older than 5 min)
37
- const lockAge = Date.now() - new Date(lockData.acquiredAt).getTime();
38
- if (lockAge > FileLock.STALE_TIMEOUT_MS) {
39
- logger.warn(`[FILE_LOCK] Stale lock detected for ${filePath} (age: ${Math.round(lockAge / 1000)}s). Overriding.`);
40
- fs.unlinkSync(lockFile);
41
- }
42
- else {
43
- // Lock is held by another agent — conflict
44
- logger.warn(`[FILE_LOCK] CONFLICT: ${agentName} cannot write ${filePath} — locked by ${lockData.agent}`);
45
- AtabeyStorage.saveLog({
46
- agent: agentName,
47
- action: "FILE_LOCK_CONFLICT",
48
- trace_id: AtabeyStorage.getMetadata("traceId") || "N/A",
49
- status: "BLOCKED",
50
- summary: `File ${filePath} is locked by ${lockData.agent}. Waiting for release.`
51
- });
52
- return false;
53
- }
54
- }
55
- catch {
56
- // Corrupted lock file — remove and retry
57
- fs.unlinkSync(lockFile);
58
- }
59
- }
60
- // Acquire lock
61
- fs.writeFileSync(lockFile, JSON.stringify({
62
- agent: agentName,
63
- file: filePath,
64
- acquiredAt: new Date().toISOString(),
65
- traceId: AtabeyStorage.getMetadata("traceId") || "N/A"
66
- }, null, 2));
67
- logger.debug(`[FILE_LOCK] ${agentName} acquired lock on ${filePath}`);
68
- return true;
69
- }
70
- /**
71
- * Releases a lock held by an agent.
72
- * Only the lock-owning agent can release (others get warning).
73
- */
74
- static release(agentName, filePath) {
75
- const lockFile = FileLock.getLockPath(filePath);
76
- if (!fs.existsSync(lockFile)) {
77
- return true; // No lock to release
78
- }
79
- try {
80
- const lockData = JSON.parse(fs.readFileSync(lockFile, "utf8"));
81
- if (lockData.agent !== agentName) {
82
- logger.warn(`[FILE_LOCK] ${agentName} tried to release lock held by ${lockData.agent} on ${filePath}`);
83
- return false;
84
- }
85
- fs.unlinkSync(lockFile);
86
- logger.debug(`[FILE_LOCK] ${agentName} released lock on ${filePath}`);
87
- return true;
88
- }
89
- catch {
90
- // Corrupted lock file — just remove it
91
- try {
92
- fs.unlinkSync(lockFile);
93
- }
94
- catch { /* ignore */ }
95
- return true;
96
- }
97
- }
98
- /**
99
- * Checks if a file is currently locked.
100
- * Returns the locking agent name or null.
101
- */
102
- static isLocked(filePath) {
103
- const lockFile = FileLock.getLockPath(filePath);
104
- if (!fs.existsSync(lockFile))
105
- return null;
106
- try {
107
- const lockData = JSON.parse(fs.readFileSync(lockFile, "utf8"));
108
- // Check for stale lock
109
- const lockAge = Date.now() - new Date(lockData.acquiredAt).getTime();
110
- if (lockAge > FileLock.STALE_TIMEOUT_MS) {
111
- fs.unlinkSync(lockFile);
112
- return null;
113
- }
114
- return lockData.agent;
115
- }
116
- catch {
117
- try {
118
- fs.unlinkSync(lockFile);
119
- }
120
- catch { /* ignore */ }
121
- return null;
122
- }
123
- }
124
- /**
125
- * Lists all currently active locks.
126
- */
127
- static listLocks() {
128
- const locksDir = path.join(process.cwd(), FileLock.LOCKS_DIR);
129
- if (!fs.existsSync(locksDir))
130
- return [];
131
- const locks = [];
132
- const walkDir = (dir) => {
133
- const entries = fs.readdirSync(dir, { withFileTypes: true });
134
- for (const entry of entries) {
135
- const fullPath = path.join(dir, entry.name);
136
- if (entry.isDirectory()) {
137
- walkDir(fullPath);
138
- }
139
- else if (entry.name.endsWith(".lock")) {
140
- try {
141
- const data = JSON.parse(fs.readFileSync(fullPath, "utf8"));
142
- const lockAge = Date.now() - new Date(data.acquiredAt).getTime();
143
- if (lockAge <= FileLock.STALE_TIMEOUT_MS) {
144
- locks.push(data);
145
- }
146
- else {
147
- fs.unlinkSync(fullPath); // Clean stale
148
- }
149
- }
150
- catch {
151
- try {
152
- fs.unlinkSync(fullPath);
153
- }
154
- catch { /* ignore */ }
155
- }
156
- }
157
- }
158
- };
159
- walkDir(locksDir);
160
- return locks;
161
- }
162
- static getLockPath(filePath) {
163
- // Convert absolute/relative path to lock file path
164
- const relativePath = path.relative(process.cwd(), filePath).replace(/^\.\.\//, "");
165
- return path.join(process.cwd(), FileLock.LOCKS_DIR, `${relativePath}.lock`);
166
- }
167
- }
168
- //# sourceMappingURL=file-lock.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-lock.js","sourceRoot":"","sources":["../../../../src/modules/engines/file-lock.ts"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- import { EvaluationResult, ProjectHealth } from "./types.js";
2
- /**
3
- * [DATA] Evaluation & Health Engine
4
- * Rates agent performance and tracks overall project stability.
5
- * Now uses real metrics from SQLite, compliance scans, and agent states.
6
- */
7
- export declare class HealthEngine {
8
- /**
9
- * Records a post-task evaluation.
10
- */
11
- static recordEvaluation(result: EvaluationResult): Promise<void>;
12
- /**
13
- * Aggregates real data to calculate the overall Project Health.
14
- * Uses actual metrics from:
15
- * - Agent success rates from SQLite logs
16
- * - Compliance violations from AST scanning
17
- * - Agent state distribution (blocked/ready ratio)
18
- * - Test results from recent evaluations
19
- */
20
- static updateProjectHealth(): Promise<ProjectHealth>;
21
- static getHealth(): ProjectHealth | null;
22
- }