atabey 0.0.37 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (513) hide show
  1. package/ATABEY.md +1 -1
  2. package/PRIVACY.md +2 -2
  3. package/README.md +58 -46
  4. package/bin/completion.sh +1 -1
  5. package/dist/atabey/src/cli/commands/api.d.ts +1 -0
  6. package/dist/atabey/src/cli/commands/api.js +90 -0
  7. package/dist/atabey/src/cli/commands/api.js.map +1 -0
  8. package/dist/atabey/src/cli/commands/audit.d.ts +9 -0
  9. package/dist/atabey/src/cli/commands/audit.js +73 -0
  10. package/dist/atabey/src/cli/commands/audit.js.map +1 -0
  11. package/dist/atabey/src/cli/commands/check.js +15 -6
  12. package/dist/atabey/src/cli/commands/check.js.map +1 -1
  13. package/dist/atabey/src/cli/commands/contract.js +51 -8
  14. package/dist/atabey/src/cli/commands/contract.js.map +1 -1
  15. package/dist/atabey/src/cli/commands/coverage.js +17 -12
  16. package/dist/atabey/src/cli/commands/coverage.js.map +1 -1
  17. package/dist/atabey/src/cli/commands/dashboard.js +101 -16
  18. package/dist/atabey/src/cli/commands/dashboard.js.map +1 -1
  19. package/dist/atabey/src/cli/commands/db.d.ts +1 -0
  20. package/dist/atabey/src/cli/commands/db.js +58 -0
  21. package/dist/atabey/src/cli/commands/db.js.map +1 -0
  22. package/dist/atabey/src/cli/commands/hitl.js +2 -1
  23. package/dist/atabey/src/cli/commands/hitl.js.map +1 -1
  24. package/dist/atabey/src/cli/commands/index-codebase.js +10 -0
  25. package/dist/atabey/src/cli/commands/index-codebase.js.map +1 -1
  26. package/dist/atabey/src/cli/commands/init/scaffold-app.js +82 -7
  27. package/dist/atabey/src/cli/commands/init/scaffold-app.js.map +1 -1
  28. package/dist/atabey/src/cli/commands/init/scaffold-core.js +3 -3
  29. package/dist/atabey/src/cli/commands/init/scaffold-core.js.map +1 -1
  30. package/dist/atabey/src/cli/commands/init/scaffold-docs.js +1 -1
  31. package/dist/atabey/src/cli/commands/init/scaffold-docs.js.map +1 -1
  32. package/dist/atabey/src/cli/commands/init/scaffold-ops.js +47 -7
  33. package/dist/atabey/src/cli/commands/init/scaffold-ops.js.map +1 -1
  34. package/dist/atabey/src/cli/commands/init/scaffold-standards.js +8 -15
  35. package/dist/atabey/src/cli/commands/init/scaffold-standards.js.map +1 -1
  36. package/dist/atabey/src/cli/commands/init.js +28 -62
  37. package/dist/atabey/src/cli/commands/init.js.map +1 -1
  38. package/dist/atabey/src/cli/commands/lint.d.ts +2 -1
  39. package/dist/atabey/src/cli/commands/lint.js +20 -1
  40. package/dist/atabey/src/cli/commands/lint.js.map +1 -1
  41. package/dist/atabey/src/cli/commands/mcp.js +71 -33
  42. package/dist/atabey/src/cli/commands/mcp.js.map +1 -1
  43. package/dist/atabey/src/cli/commands/orchestrate.d.ts +4 -4
  44. package/dist/atabey/src/cli/commands/orchestrate.js +1 -1
  45. package/dist/atabey/src/cli/commands/orchestrate.js.map +1 -1
  46. package/dist/atabey/src/cli/commands/plan.d.ts +1 -1
  47. package/dist/atabey/src/cli/commands/plan.js +10 -0
  48. package/dist/atabey/src/cli/commands/plan.js.map +1 -1
  49. package/dist/atabey/src/cli/commands/quickstart.js +1 -1
  50. package/dist/atabey/src/cli/commands/quickstart.js.map +1 -1
  51. package/dist/atabey/src/cli/commands/script.js +4 -0
  52. package/dist/atabey/src/cli/commands/script.js.map +1 -1
  53. package/dist/atabey/src/cli/commands/secrets.d.ts +1 -0
  54. package/dist/atabey/src/cli/commands/secrets.js +146 -0
  55. package/dist/atabey/src/cli/commands/secrets.js.map +1 -0
  56. package/dist/atabey/src/cli/commands/worktree.d.ts +10 -0
  57. package/dist/atabey/src/cli/commands/worktree.js +90 -0
  58. package/dist/atabey/src/cli/commands/worktree.js.map +1 -0
  59. package/dist/atabey/src/cli/index.js +75 -16
  60. package/dist/atabey/src/cli/index.js.map +1 -1
  61. package/dist/atabey/src/cli/platforms/core.d.ts +0 -1
  62. package/dist/atabey/src/cli/platforms/core.js +0 -14
  63. package/dist/atabey/src/cli/platforms/core.js.map +1 -1
  64. package/dist/atabey/src/cli/platforms/index.d.ts +2 -2
  65. package/dist/atabey/src/cli/platforms/index.js +1 -1
  66. package/dist/atabey/src/cli/platforms/index.js.map +1 -1
  67. package/dist/atabey/src/cli/platforms/paths.d.ts +0 -2
  68. package/dist/atabey/src/cli/platforms/paths.js +1 -8
  69. package/dist/atabey/src/cli/platforms/paths.js.map +1 -1
  70. package/dist/atabey/src/cli/platforms/scaffold.js +1 -1
  71. package/dist/atabey/src/cli/platforms/scaffold.js.map +1 -1
  72. package/dist/atabey/src/cli/utils/claude.js +6 -0
  73. package/dist/atabey/src/cli/utils/claude.js.map +1 -1
  74. package/dist/atabey/src/cli/utils/compliance.d.ts +1 -1
  75. package/dist/atabey/src/cli/utils/compliance.js +33 -20
  76. package/dist/atabey/src/cli/utils/compliance.js.map +1 -1
  77. package/dist/atabey/src/cli/utils/fs.js +1 -1
  78. package/dist/atabey/src/cli/utils/fs.js.map +1 -1
  79. package/dist/atabey/src/cli/utils/i18n.js +2 -2
  80. package/dist/atabey/src/cli/utils/i18n.js.map +1 -1
  81. package/dist/atabey/src/cli/utils/memory.js +27 -16
  82. package/dist/atabey/src/cli/utils/memory.js.map +1 -1
  83. package/dist/atabey/src/cli/utils/pkg.js +5 -2
  84. package/dist/atabey/src/cli/utils/pkg.js.map +1 -1
  85. package/dist/atabey/src/cli/utils/quality.d.ts +1 -1
  86. package/dist/atabey/src/cli/utils/ui.d.ts +1 -1
  87. package/dist/atabey/src/cli/utils/ui.js +1 -1
  88. package/dist/atabey/src/modules/agents/definitions.d.ts +1 -1
  89. package/dist/atabey/src/modules/agents/definitions.js +13 -9
  90. package/dist/atabey/src/modules/agents/definitions.js.map +1 -1
  91. package/dist/atabey/src/modules/agents/registry/analyst.js +0 -2
  92. package/dist/atabey/src/modules/agents/registry/analyst.js.map +1 -1
  93. package/dist/atabey/src/modules/agents/registry/architect.js +0 -2
  94. package/dist/atabey/src/modules/agents/registry/architect.js.map +1 -1
  95. package/dist/atabey/src/modules/agents/registry/backend.js +0 -2
  96. package/dist/atabey/src/modules/agents/registry/backend.js.map +1 -1
  97. package/dist/atabey/src/modules/agents/registry/database.js +0 -2
  98. package/dist/atabey/src/modules/agents/registry/database.js.map +1 -1
  99. package/dist/atabey/src/modules/agents/registry/devops.js +0 -2
  100. package/dist/atabey/src/modules/agents/registry/devops.js.map +1 -1
  101. package/dist/atabey/src/modules/agents/registry/explorer.js +0 -2
  102. package/dist/atabey/src/modules/agents/registry/explorer.js.map +1 -1
  103. package/dist/atabey/src/modules/agents/registry/frontend.js +0 -2
  104. package/dist/atabey/src/modules/agents/registry/frontend.js.map +1 -1
  105. package/dist/atabey/src/modules/agents/registry/git.js +0 -2
  106. package/dist/atabey/src/modules/agents/registry/git.js.map +1 -1
  107. package/dist/atabey/src/modules/agents/registry/manager.js +0 -3
  108. package/dist/atabey/src/modules/agents/registry/manager.js.map +1 -1
  109. package/dist/atabey/src/modules/agents/registry/mobile.js +0 -2
  110. package/dist/atabey/src/modules/agents/registry/mobile.js.map +1 -1
  111. package/dist/atabey/src/modules/agents/registry/native.js +0 -2
  112. package/dist/atabey/src/modules/agents/registry/native.js.map +1 -1
  113. package/dist/atabey/src/modules/agents/registry/quality.js +3 -5
  114. package/dist/atabey/src/modules/agents/registry/quality.js.map +1 -1
  115. package/dist/atabey/src/modules/agents/registry/security.js +0 -2
  116. package/dist/atabey/src/modules/agents/registry/security.js.map +1 -1
  117. package/dist/atabey/src/modules/agents/types.d.ts +0 -1
  118. package/dist/atabey/src/modules/audit/export.d.ts +22 -0
  119. package/dist/atabey/src/modules/audit/export.js +58 -0
  120. package/dist/atabey/src/modules/audit/export.js.map +1 -0
  121. package/dist/atabey/src/modules/contracts/api.d.ts +2 -2
  122. package/dist/atabey/src/modules/engines/agent-executor.js +37 -0
  123. package/dist/atabey/src/modules/engines/agent-executor.js.map +1 -1
  124. package/dist/atabey/src/modules/engines/evaluation-engine.js +10 -0
  125. package/dist/atabey/src/modules/engines/evaluation-engine.js.map +1 -1
  126. package/dist/atabey/src/modules/engines/quality-gate.js +2 -2
  127. package/dist/atabey/src/modules/engines/quality-gate.js.map +1 -1
  128. package/dist/atabey/src/modules/engines/routing-engine.js +1 -1
  129. package/dist/atabey/src/modules/engines/routing-engine.js.map +1 -1
  130. package/dist/atabey/src/modules/memory/code-graph.d.ts +44 -0
  131. package/dist/atabey/src/modules/memory/code-graph.js +180 -0
  132. package/dist/atabey/src/modules/memory/code-graph.js.map +1 -0
  133. package/dist/atabey/src/modules/memory/context-assembler.d.ts +50 -0
  134. package/dist/atabey/src/modules/memory/context-assembler.js +146 -0
  135. package/dist/atabey/src/modules/memory/context-assembler.js.map +1 -0
  136. package/dist/atabey/src/modules/providers/definitions.js +78 -41
  137. package/dist/atabey/src/modules/providers/definitions.js.map +1 -1
  138. package/dist/atabey/src/modules/providers/shared.d.ts +1 -1
  139. package/dist/atabey/src/modules/providers/shared.js +34 -15
  140. package/dist/atabey/src/modules/providers/shared.js.map +1 -1
  141. package/dist/atabey/src/modules/providers/types.d.ts +0 -4
  142. package/dist/atabey/src/modules/runtime/adapters/headless-cli.d.ts +35 -0
  143. package/dist/atabey/src/modules/runtime/adapters/headless-cli.js +115 -0
  144. package/dist/atabey/src/modules/runtime/adapters/headless-cli.js.map +1 -0
  145. package/dist/atabey/src/modules/runtime/adapters/index.d.ts +2 -0
  146. package/dist/atabey/src/modules/runtime/adapters/index.js +3 -0
  147. package/dist/atabey/src/modules/runtime/adapters/index.js.map +1 -0
  148. package/dist/atabey/src/modules/runtime/adapters/types.d.ts +48 -0
  149. package/dist/atabey/src/modules/runtime/adapters/types.js +12 -0
  150. package/dist/atabey/src/modules/runtime/adapters/types.js.map +1 -0
  151. package/dist/atabey/src/modules/runtime/agent-runtime.d.ts +54 -0
  152. package/dist/atabey/src/modules/runtime/agent-runtime.js +203 -0
  153. package/dist/atabey/src/modules/runtime/agent-runtime.js.map +1 -0
  154. package/dist/atabey/src/modules/runtime/dispatcher.d.ts +75 -0
  155. package/dist/atabey/src/modules/runtime/dispatcher.js +255 -0
  156. package/dist/atabey/src/modules/runtime/dispatcher.js.map +1 -0
  157. package/dist/atabey/src/modules/runtime/evidence.d.ts +39 -0
  158. package/dist/atabey/src/modules/runtime/evidence.js +53 -0
  159. package/dist/atabey/src/modules/runtime/evidence.js.map +1 -0
  160. package/dist/atabey/src/modules/runtime/worktree.d.ts +44 -0
  161. package/dist/atabey/src/modules/runtime/worktree.js +259 -0
  162. package/dist/atabey/src/modules/runtime/worktree.js.map +1 -0
  163. package/dist/atabey/src/modules/skills/adapter-skills.d.ts +0 -29
  164. package/dist/atabey/src/modules/skills/adapter-skills.js +0 -61
  165. package/dist/atabey/src/modules/skills/adapter-skills.js.map +1 -1
  166. package/dist/atabey/src/modules/skills/definitions.d.ts +1 -1
  167. package/dist/atabey/src/modules/skills/definitions.js +8 -8
  168. package/dist/atabey/src/schema/agent-lifecycle.d.ts +36 -0
  169. package/dist/atabey/src/schema/agent-lifecycle.js +96 -0
  170. package/dist/atabey/src/schema/agent-lifecycle.js.map +1 -0
  171. package/dist/atabey-mcp/src/mcp/utils/ast-scan.d.ts +21 -0
  172. package/dist/atabey-mcp/src/mcp/utils/ast-scan.js +64 -0
  173. package/dist/atabey-mcp/src/mcp/utils/ast-scan.js.map +1 -0
  174. package/dist/atabey-mcp/src/mcp/utils/auth.d.ts +73 -0
  175. package/dist/atabey-mcp/src/mcp/utils/auth.js +316 -0
  176. package/dist/atabey-mcp/src/mcp/utils/auth.js.map +1 -0
  177. package/dist/atabey-mcp/src/mcp/utils/auto-rollback.d.ts +83 -0
  178. package/dist/atabey-mcp/src/mcp/utils/auto-rollback.js +418 -0
  179. package/dist/atabey-mcp/src/mcp/utils/auto-rollback.js.map +1 -0
  180. package/dist/atabey-mcp/src/mcp/utils/context-optimizer.d.ts +85 -0
  181. package/dist/atabey-mcp/src/mcp/utils/context-optimizer.js +296 -0
  182. package/dist/atabey-mcp/src/mcp/utils/context-optimizer.js.map +1 -0
  183. package/dist/atabey-mcp/src/mcp/utils/discipline.d.ts +72 -0
  184. package/dist/atabey-mcp/src/mcp/utils/discipline.js +385 -0
  185. package/dist/atabey-mcp/src/mcp/utils/discipline.js.map +1 -0
  186. package/dist/atabey-mcp/src/mcp/utils/finops.d.ts +81 -0
  187. package/dist/atabey-mcp/src/mcp/utils/finops.js +274 -0
  188. package/dist/atabey-mcp/src/mcp/utils/finops.js.map +1 -0
  189. package/dist/atabey-mcp/src/mcp/utils/loop-detector.d.ts +106 -0
  190. package/dist/atabey-mcp/src/mcp/utils/loop-detector.js +419 -0
  191. package/dist/atabey-mcp/src/mcp/utils/loop-detector.js.map +1 -0
  192. package/dist/atabey-mcp/src/mcp/utils/rules-engine.d.ts +80 -0
  193. package/dist/atabey-mcp/src/mcp/utils/rules-engine.js +296 -0
  194. package/dist/atabey-mcp/src/mcp/utils/rules-engine.js.map +1 -0
  195. package/dist/atabey-mcp/src/mcp/utils/telemetry-streamer.d.ts +133 -0
  196. package/dist/atabey-mcp/src/mcp/utils/telemetry-streamer.js +400 -0
  197. package/dist/atabey-mcp/src/mcp/utils/telemetry-streamer.js.map +1 -0
  198. package/dist/atabey-mcp/src/shared/logger.d.ts +1 -0
  199. package/dist/atabey-mcp/src/shared/logger.js +2 -0
  200. package/dist/atabey-mcp/src/shared/logger.js.map +1 -0
  201. package/dist/atabey-mcp/src/shared/pii.d.ts +1 -0
  202. package/dist/atabey-mcp/src/shared/pii.js +2 -0
  203. package/dist/atabey-mcp/src/shared/pii.js.map +1 -0
  204. package/dist/atabey-mcp/src/shared/storage.d.ts +2 -0
  205. package/dist/atabey-mcp/src/shared/storage.js +3 -0
  206. package/dist/atabey-mcp/src/shared/storage.js.map +1 -0
  207. package/dist/shared/src/agent-identity.d.ts +1 -0
  208. package/dist/shared/src/agent-identity.js +2 -0
  209. package/dist/shared/src/agent-identity.js.map +1 -0
  210. package/dist/shared/src/api-catalog.d.ts +1 -0
  211. package/dist/shared/src/api-catalog.js +2 -0
  212. package/dist/shared/src/api-catalog.js.map +1 -0
  213. package/dist/shared/src/audit-chain.d.ts +1 -51
  214. package/dist/shared/src/audit-chain.js +1 -84
  215. package/dist/shared/src/audit-chain.js.map +1 -1
  216. package/dist/shared/src/audit.d.ts +1 -113
  217. package/dist/shared/src/audit.js +1 -284
  218. package/dist/shared/src/audit.js.map +1 -1
  219. package/dist/shared/src/constants.d.ts +1 -152
  220. package/dist/shared/src/constants.js +1 -215
  221. package/dist/shared/src/constants.js.map +1 -1
  222. package/dist/shared/src/database.d.ts +1 -5
  223. package/dist/shared/src/database.js +1 -12
  224. package/dist/shared/src/database.js.map +1 -1
  225. package/dist/shared/src/errors.d.ts +1 -46
  226. package/dist/shared/src/errors.js +1 -68
  227. package/dist/shared/src/errors.js.map +1 -1
  228. package/dist/shared/src/file-lock.d.ts +1 -88
  229. package/dist/shared/src/file-lock.js +1 -250
  230. package/dist/shared/src/file-lock.js.map +1 -1
  231. package/dist/shared/src/fs.d.ts +1 -9
  232. package/dist/shared/src/fs.js +1 -53
  233. package/dist/shared/src/fs.js.map +1 -1
  234. package/dist/shared/src/index.d.ts +2 -22
  235. package/dist/shared/src/index.js +2 -22
  236. package/dist/shared/src/index.js.map +1 -1
  237. package/dist/shared/src/job-queue.d.ts +1 -53
  238. package/dist/shared/src/job-queue.js +1 -126
  239. package/dist/shared/src/job-queue.js.map +1 -1
  240. package/dist/shared/src/lock.d.ts +1 -82
  241. package/dist/shared/src/lock.js +1 -158
  242. package/dist/shared/src/lock.js.map +1 -1
  243. package/dist/shared/src/logger.d.ts +1 -30
  244. package/dist/shared/src/logger.js +1 -126
  245. package/dist/shared/src/logger.js.map +1 -1
  246. package/dist/shared/src/memory-prune.d.ts +1 -0
  247. package/dist/shared/src/memory-prune.js +2 -0
  248. package/dist/shared/src/memory-prune.js.map +1 -0
  249. package/dist/shared/src/migrations.d.ts +1 -0
  250. package/dist/shared/src/migrations.js +2 -0
  251. package/dist/shared/src/migrations.js.map +1 -0
  252. package/dist/shared/src/modules/agent/agent-identity.d.ts +34 -0
  253. package/dist/shared/src/modules/agent/agent-identity.js +77 -0
  254. package/dist/shared/src/modules/agent/agent-identity.js.map +1 -0
  255. package/dist/shared/src/modules/agent/api-catalog.d.ts +57 -0
  256. package/dist/shared/src/modules/agent/api-catalog.js +254 -0
  257. package/dist/shared/src/modules/agent/api-catalog.js.map +1 -0
  258. package/dist/shared/src/modules/agent/index.d.ts +3 -0
  259. package/dist/shared/src/modules/agent/index.js +4 -0
  260. package/dist/shared/src/modules/agent/index.js.map +1 -0
  261. package/dist/shared/src/modules/agent/tokenizer.d.ts +54 -0
  262. package/dist/shared/src/modules/agent/tokenizer.js +272 -0
  263. package/dist/shared/src/modules/agent/tokenizer.js.map +1 -0
  264. package/dist/shared/src/modules/concurrency/file-lock.d.ts +93 -0
  265. package/dist/shared/src/modules/concurrency/file-lock.js +240 -0
  266. package/dist/shared/src/modules/concurrency/file-lock.js.map +1 -0
  267. package/dist/shared/src/modules/concurrency/index.d.ts +6 -0
  268. package/dist/shared/src/modules/concurrency/index.js +7 -0
  269. package/dist/shared/src/modules/concurrency/index.js.map +1 -0
  270. package/dist/shared/src/modules/concurrency/job-queue.d.ts +76 -0
  271. package/dist/shared/src/modules/concurrency/job-queue.js +200 -0
  272. package/dist/shared/src/modules/concurrency/job-queue.js.map +1 -0
  273. package/dist/shared/src/modules/concurrency/lock.d.ts +82 -0
  274. package/dist/shared/src/modules/concurrency/lock.js +159 -0
  275. package/dist/shared/src/modules/concurrency/lock.js.map +1 -0
  276. package/dist/shared/src/modules/concurrency/resilience.d.ts +84 -0
  277. package/dist/shared/src/modules/concurrency/resilience.js +217 -0
  278. package/dist/shared/src/modules/concurrency/resilience.js.map +1 -0
  279. package/dist/shared/src/modules/concurrency/worker-pool.d.ts +52 -0
  280. package/dist/shared/src/modules/concurrency/worker-pool.js +229 -0
  281. package/dist/shared/src/modules/concurrency/worker-pool.js.map +1 -0
  282. package/dist/shared/src/modules/concurrency/worker-thread.d.ts +21 -0
  283. package/dist/shared/src/modules/concurrency/worker-thread.js +67 -0
  284. package/dist/shared/src/modules/concurrency/worker-thread.js.map +1 -0
  285. package/dist/shared/src/modules/index.d.ts +14 -0
  286. package/dist/shared/src/modules/index.js +15 -0
  287. package/dist/shared/src/modules/index.js.map +1 -0
  288. package/dist/shared/src/modules/observability/audit-chain.d.ts +80 -0
  289. package/dist/shared/src/modules/observability/audit-chain.js +262 -0
  290. package/dist/shared/src/modules/observability/audit-chain.js.map +1 -0
  291. package/dist/shared/src/modules/observability/audit.d.ts +121 -0
  292. package/dist/shared/src/modules/observability/audit.js +322 -0
  293. package/dist/shared/src/modules/observability/audit.js.map +1 -0
  294. package/dist/shared/src/modules/observability/index.d.ts +4 -0
  295. package/dist/shared/src/modules/observability/index.js +5 -0
  296. package/dist/shared/src/modules/observability/index.js.map +1 -0
  297. package/dist/shared/src/modules/observability/logger.d.ts +31 -0
  298. package/dist/shared/src/modules/observability/logger.js +153 -0
  299. package/dist/shared/src/modules/observability/logger.js.map +1 -0
  300. package/dist/shared/src/modules/observability/otel.d.ts +39 -0
  301. package/dist/shared/src/modules/observability/otel.js +93 -0
  302. package/dist/shared/src/modules/observability/otel.js.map +1 -0
  303. package/dist/shared/src/modules/primitives/constants.d.ts +150 -0
  304. package/dist/shared/src/modules/primitives/constants.js +212 -0
  305. package/dist/shared/src/modules/primitives/constants.js.map +1 -0
  306. package/dist/shared/src/modules/primitives/errors.d.ts +46 -0
  307. package/dist/shared/src/modules/primitives/errors.js +69 -0
  308. package/dist/shared/src/modules/primitives/errors.js.map +1 -0
  309. package/dist/shared/src/modules/primitives/fs.d.ts +9 -0
  310. package/dist/shared/src/modules/primitives/fs.js +54 -0
  311. package/dist/shared/src/modules/primitives/fs.js.map +1 -0
  312. package/dist/shared/src/modules/primitives/index.d.ts +7 -0
  313. package/dist/shared/src/modules/primitives/index.js +8 -0
  314. package/dist/shared/src/modules/primitives/index.js.map +1 -0
  315. package/dist/shared/src/modules/primitives/outbound-http.d.ts +32 -0
  316. package/dist/shared/src/modules/primitives/outbound-http.js +88 -0
  317. package/dist/shared/src/modules/primitives/outbound-http.js.map +1 -0
  318. package/dist/shared/src/modules/primitives/string.d.ts +1 -0
  319. package/dist/shared/src/modules/primitives/string.js +30 -0
  320. package/dist/shared/src/modules/primitives/string.js.map +1 -0
  321. package/dist/shared/src/modules/primitives/time.d.ts +5 -0
  322. package/dist/shared/src/modules/primitives/time.js +35 -0
  323. package/dist/shared/src/modules/primitives/time.js.map +1 -0
  324. package/dist/shared/src/modules/primitives/types.d.ts +27 -0
  325. package/dist/shared/src/modules/primitives/types.js +17 -0
  326. package/dist/shared/src/modules/primitives/types.js.map +1 -0
  327. package/dist/shared/src/modules/sandbox/index.d.ts +3 -0
  328. package/dist/shared/src/modules/sandbox/index.js +4 -0
  329. package/dist/shared/src/modules/sandbox/index.js.map +1 -0
  330. package/dist/shared/src/modules/sandbox/sandbox-fs.d.ts +28 -0
  331. package/dist/shared/src/modules/sandbox/sandbox-fs.js +143 -0
  332. package/dist/shared/src/modules/sandbox/sandbox-fs.js.map +1 -0
  333. package/dist/shared/src/modules/sandbox/sandbox-runtime.d.ts +78 -0
  334. package/dist/shared/src/modules/sandbox/sandbox-runtime.js +282 -0
  335. package/dist/shared/src/modules/sandbox/sandbox-runtime.js.map +1 -0
  336. package/dist/shared/src/modules/sandbox/sandbox.d.ts +54 -0
  337. package/dist/shared/src/modules/sandbox/sandbox.js +179 -0
  338. package/dist/shared/src/modules/sandbox/sandbox.js.map +1 -0
  339. package/dist/shared/src/modules/security/index.d.ts +5 -0
  340. package/dist/shared/src/modules/security/index.js +6 -0
  341. package/dist/shared/src/modules/security/index.js.map +1 -0
  342. package/dist/shared/src/modules/security/pii.d.ts +70 -0
  343. package/dist/shared/src/modules/security/pii.js +276 -0
  344. package/dist/shared/src/modules/security/pii.js.map +1 -0
  345. package/dist/shared/src/modules/security/policy-gate.d.ts +42 -0
  346. package/dist/shared/src/modules/security/policy-gate.js +172 -0
  347. package/dist/shared/src/modules/security/policy-gate.js.map +1 -0
  348. package/dist/shared/src/modules/security/retention.d.ts +68 -0
  349. package/dist/shared/src/modules/security/retention.js +218 -0
  350. package/dist/shared/src/modules/security/retention.js.map +1 -0
  351. package/dist/shared/src/modules/security/secrets.d.ts +99 -0
  352. package/dist/shared/src/modules/security/secrets.js +371 -0
  353. package/dist/shared/src/modules/security/secrets.js.map +1 -0
  354. package/dist/shared/src/modules/security/tls.d.ts +87 -0
  355. package/dist/shared/src/modules/security/tls.js +154 -0
  356. package/dist/shared/src/modules/security/tls.js.map +1 -0
  357. package/dist/shared/src/modules/storage/database.d.ts +6 -0
  358. package/dist/shared/src/modules/storage/database.js +16 -0
  359. package/dist/shared/src/modules/storage/database.js.map +1 -0
  360. package/dist/shared/src/modules/storage/index.d.ts +4 -0
  361. package/dist/shared/src/modules/storage/index.js +5 -0
  362. package/dist/shared/src/modules/storage/index.js.map +1 -0
  363. package/dist/shared/src/modules/storage/memory-prune.d.ts +18 -0
  364. package/dist/shared/src/modules/storage/memory-prune.js +48 -0
  365. package/dist/shared/src/modules/storage/memory-prune.js.map +1 -0
  366. package/dist/shared/src/modules/storage/migrations.d.ts +69 -0
  367. package/dist/shared/src/modules/storage/migrations.js +394 -0
  368. package/dist/shared/src/modules/storage/migrations.js.map +1 -0
  369. package/dist/shared/src/modules/storage/storage.d.ts +341 -0
  370. package/dist/shared/src/modules/storage/storage.js +1004 -0
  371. package/dist/shared/src/modules/storage/storage.js.map +1 -0
  372. package/dist/shared/src/otel.d.ts +1 -0
  373. package/dist/shared/src/otel.js +2 -0
  374. package/dist/shared/src/otel.js.map +1 -0
  375. package/dist/shared/src/outbound-http.d.ts +1 -0
  376. package/dist/shared/src/outbound-http.js +2 -0
  377. package/dist/shared/src/outbound-http.js.map +1 -0
  378. package/dist/shared/src/pii.d.ts +1 -69
  379. package/dist/shared/src/pii.js +1 -219
  380. package/dist/shared/src/pii.js.map +1 -1
  381. package/dist/shared/src/policy-gate.d.ts +1 -42
  382. package/dist/shared/src/policy-gate.js +1 -147
  383. package/dist/shared/src/policy-gate.js.map +1 -1
  384. package/dist/shared/src/resilience.d.ts +1 -84
  385. package/dist/shared/src/resilience.js +1 -216
  386. package/dist/shared/src/resilience.js.map +1 -1
  387. package/dist/shared/src/retention.d.ts +1 -63
  388. package/dist/shared/src/retention.js +1 -170
  389. package/dist/shared/src/retention.js.map +1 -1
  390. package/dist/shared/src/sandbox-fs.d.ts +1 -28
  391. package/dist/shared/src/sandbox-fs.js +1 -149
  392. package/dist/shared/src/sandbox-fs.js.map +1 -1
  393. package/dist/shared/src/sandbox-runtime.d.ts +1 -85
  394. package/dist/shared/src/sandbox-runtime.js +1 -249
  395. package/dist/shared/src/sandbox-runtime.js.map +1 -1
  396. package/dist/shared/src/sandbox.d.ts +1 -54
  397. package/dist/shared/src/sandbox.js +1 -178
  398. package/dist/shared/src/sandbox.js.map +1 -1
  399. package/dist/shared/src/secrets.d.ts +1 -0
  400. package/dist/shared/src/secrets.js +2 -0
  401. package/dist/shared/src/secrets.js.map +1 -0
  402. package/dist/shared/src/storage.d.ts +1 -274
  403. package/dist/shared/src/storage.js +1 -723
  404. package/dist/shared/src/storage.js.map +1 -1
  405. package/dist/shared/src/string.d.ts +1 -1
  406. package/dist/shared/src/string.js +1 -29
  407. package/dist/shared/src/string.js.map +1 -1
  408. package/dist/shared/src/time.d.ts +1 -5
  409. package/dist/shared/src/time.js +1 -30
  410. package/dist/shared/src/time.js.map +1 -1
  411. package/dist/shared/src/tls.d.ts +1 -0
  412. package/dist/shared/src/tls.js +2 -0
  413. package/dist/shared/src/tls.js.map +1 -0
  414. package/dist/shared/src/tokenizer.d.ts +1 -0
  415. package/dist/shared/src/tokenizer.js +2 -0
  416. package/dist/shared/src/tokenizer.js.map +1 -0
  417. package/dist/shared/src/types.d.ts +1 -27
  418. package/dist/shared/src/types.js +1 -16
  419. package/dist/shared/src/types.js.map +1 -1
  420. package/dist/shared/src/worker-pool.d.ts +1 -52
  421. package/dist/shared/src/worker-pool.js +1 -209
  422. package/dist/shared/src/worker-pool.js.map +1 -1
  423. package/dist/shared/src/worker-thread.d.ts +1 -21
  424. package/dist/shared/src/worker-thread.js +1 -66
  425. package/dist/shared/src/worker-thread.js.map +1 -1
  426. package/package.json +4 -6
  427. package/templates/docs/tech-stack.md +21 -0
  428. package/templates/full/ATABEY_FULL.md +38 -50
  429. package/templates/prompts/security-audit-recipe.md +1 -1
  430. package/templates/standards/architecture-standards.md +6 -4
  431. package/templates/standards/crud-governance.md +1 -1
  432. package/templates/standards/deployment-standards.md +1 -1
  433. package/templates/standards/enterprise-systems-standards.md +5 -1
  434. package/templates/standards/eslint-standards.md +10 -0
  435. package/templates/standards/frontend-standards.md +2 -2
  436. package/templates/standards/governance-standards.md +2 -2
  437. package/templates/standards/i18n-standards.md +1 -1
  438. package/templates/standards/logging-and-secrets.md +1 -1
  439. package/templates/standards/native-standards.md +1 -1
  440. package/templates/standards/quality-standards.md +1 -1
  441. package/templates/standards/security-audit-standards.md +1 -1
  442. package/templates/standards/security-standards.md +1 -1
  443. package/templates/standards/testing-standards.md +1 -1
  444. package/templates/standards/token-economy.md +27 -0
  445. package/dist/atabey/src/cli/commands/init/create-agent.d.ts +0 -4
  446. package/dist/atabey/src/cli/commands/init/create-agent.js +0 -59
  447. package/dist/atabey/src/cli/commands/init/create-agent.js.map +0 -1
  448. package/dist/atabey/src/cli/utils/config-schema.d.ts +0 -213
  449. package/dist/atabey/src/cli/utils/config-schema.js +0 -58
  450. package/dist/atabey/src/cli/utils/config-schema.js.map +0 -1
  451. package/dist/atabey/src/cli/utils/schemas.d.ts +0 -49
  452. package/dist/atabey/src/cli/utils/schemas.js +0 -20
  453. package/dist/atabey/src/cli/utils/schemas.js.map +0 -1
  454. package/dist/atabey/src/contracts/index.d.ts +0 -1
  455. package/dist/atabey/src/contracts/index.js +0 -2
  456. package/dist/atabey/src/contracts/index.js.map +0 -1
  457. package/dist/atabey/src/contracts/tasks.d.ts +0 -44
  458. package/dist/atabey/src/contracts/tasks.js +0 -21
  459. package/dist/atabey/src/contracts/tasks.js.map +0 -1
  460. package/dist/atabey/src/modules/contracts/index.d.ts +0 -5
  461. package/dist/atabey/src/modules/contracts/index.js +0 -6
  462. package/dist/atabey/src/modules/contracts/index.js.map +0 -1
  463. package/dist/atabey/src/modules/engines/contract-engine.d.ts +0 -46
  464. package/dist/atabey/src/modules/engines/contract-engine.js +0 -116
  465. package/dist/atabey/src/modules/engines/contract-engine.js.map +0 -1
  466. package/dist/atabey/src/modules/engines/discovery-engine.d.ts +0 -42
  467. package/dist/atabey/src/modules/engines/discovery-engine.js +0 -161
  468. package/dist/atabey/src/modules/engines/discovery-engine.js.map +0 -1
  469. package/dist/atabey/src/modules/engines/file-lock.d.ts +0 -56
  470. package/dist/atabey/src/modules/engines/file-lock.js +0 -171
  471. package/dist/atabey/src/modules/engines/file-lock.js.map +0 -1
  472. package/dist/atabey/src/modules/engines/phase-engine.d.ts +0 -82
  473. package/dist/atabey/src/modules/engines/phase-engine.js +0 -204
  474. package/dist/atabey/src/modules/engines/phase-engine.js.map +0 -1
  475. package/dist/atabey/src/modules/engines/policy-engine.d.ts +0 -63
  476. package/dist/atabey/src/modules/engines/policy-engine.js +0 -188
  477. package/dist/atabey/src/modules/engines/policy-engine.js.map +0 -1
  478. package/dist/atabey/src/modules/engines/sandbox.d.ts +0 -31
  479. package/dist/atabey/src/modules/engines/sandbox.js +0 -57
  480. package/dist/atabey/src/modules/engines/sandbox.js.map +0 -1
  481. package/dist/atabey/src/modules/engines/session-engine.d.ts +0 -68
  482. package/dist/atabey/src/modules/engines/session-engine.js +0 -141
  483. package/dist/atabey/src/modules/engines/session-engine.js.map +0 -1
  484. package/dist/atabey/src/modules/engines/worker-pool.d.ts +0 -8
  485. package/dist/atabey/src/modules/engines/worker-pool.js +0 -9
  486. package/dist/atabey/src/modules/engines/worker-pool.js.map +0 -1
  487. package/dist/atabey/src/modules/providers/llm-provider.d.ts +0 -87
  488. package/dist/atabey/src/modules/providers/llm-provider.js +0 -242
  489. package/dist/atabey/src/modules/providers/llm-provider.js.map +0 -1
  490. package/dist/atabey/src/shared/file-lock.d.ts +0 -1
  491. package/dist/atabey/src/shared/file-lock.js +0 -2
  492. package/dist/atabey/src/shared/file-lock.js.map +0 -1
  493. package/dist/atabey/src/shared/job-queue.d.ts +0 -1
  494. package/dist/atabey/src/shared/job-queue.js +0 -2
  495. package/dist/atabey/src/shared/job-queue.js.map +0 -1
  496. package/dist/atabey/src/shared/lock.d.ts +0 -1
  497. package/dist/atabey/src/shared/lock.js +0 -2
  498. package/dist/atabey/src/shared/lock.js.map +0 -1
  499. package/dist/atabey/src/shared/resilience.d.ts +0 -1
  500. package/dist/atabey/src/shared/resilience.js +0 -2
  501. package/dist/atabey/src/shared/resilience.js.map +0 -1
  502. package/dist/atabey/src/shared/retention.d.ts +0 -1
  503. package/dist/atabey/src/shared/retention.js +0 -2
  504. package/dist/atabey/src/shared/retention.js.map +0 -1
  505. package/dist/atabey/src/shared/sandbox-runtime.d.ts +0 -1
  506. package/dist/atabey/src/shared/sandbox-runtime.js +0 -2
  507. package/dist/atabey/src/shared/sandbox-runtime.js.map +0 -1
  508. package/dist/atabey/src/shared/sandbox.d.ts +0 -1
  509. package/dist/atabey/src/shared/sandbox.js +0 -2
  510. package/dist/atabey/src/shared/sandbox.js.map +0 -1
  511. package/dist/atabey/src/shared/worker-pool.d.ts +0 -1
  512. package/dist/atabey/src/shared/worker-pool.js +0 -2
  513. package/dist/atabey/src/shared/worker-pool.js.map +0 -1
@@ -1,204 +0,0 @@
1
- /**
2
- * [ENGINE] Phase Engine — State Machine for Development Lifecycle
3
- *
4
- * Implements the PHASE_0 → PHASE_4 state machine from ATABEY.md.
5
- * Prevents phase skipping and enforces rollback when contracts break.
6
- *
7
- * Phases:
8
- * PHASE_0 (Discovery & Setup) → Requirements analysis, docs validation
9
- * PHASE_1 (Architecture & Contracts) → Data models, API schemas, types
10
- * PHASE_2 (Core Development) → Feature implementation
11
- * PHASE_3 (Integration & Testing) → System integration, QA
12
- * PHASE_4 (Optimization & Deployment) → Performance audit, deploy
13
- *
14
- * Rollback:
15
- * If contracts break during PHASE_2+ → auto rollback to PHASE_1
16
- */
17
- import { logger } from "../../shared/logger.js";
18
- import { AtabeyStorage } from "../../shared/storage.js";
19
- /**
20
- * Phase Engine — manages the development lifecycle state machine.
21
- * Stored in Storage metadata under "phase" key.
22
- * Transition history stored in `.atabey/logs/phase-transitions.json`.
23
- */
24
- export class PhaseEngine {
25
- static VALID_TRANSITIONS = {
26
- "PHASE_0": ["PHASE_1"],
27
- "PHASE_1": ["PHASE_2", "ROLLBACK_PHASE_1"],
28
- "PHASE_2": ["PHASE_3", "ROLLBACK_PHASE_1"],
29
- "PHASE_3": ["PHASE_4", "ROLLBACK_PHASE_1"],
30
- "PHASE_4": ["PHASE_0"], // Release → restart cycle
31
- "ROLLBACK_PHASE_1": ["PHASE_1"], // Rollback → fix → re-enter PHASE_1
32
- };
33
- static PHASE_DEFINITIONS = {
34
- "PHASE_0": {
35
- phase: "PHASE_0",
36
- name: "Discovery & Setup",
37
- allowedWork: ["Requirement analysis", "Documentation validation", "Environment setup", "Scaffolding"],
38
- successCriteria: ["docs/README.md validated", "Technology stack confirmed", "Target audience identified"],
39
- prohibitedWork: ["Any code implementation", "Database migrations", "API development"],
40
- },
41
- "PHASE_1": {
42
- phase: "PHASE_1",
43
- name: "Architecture & Contracts",
44
- allowedWork: ["Type definitions", "API schema design", "Interface design", "Contract versioning"],
45
- successCriteria: ["contract.version.json created", "All shared types defined", "Frontend + Backend approve schemas"],
46
- prohibitedWork: ["Business logic implementation", "Database queries", "UI components"],
47
- },
48
- "PHASE_2": {
49
- phase: "PHASE_2",
50
- name: "Core Development",
51
- allowedWork: ["Feature implementation", "Business logic", "API endpoints", "UI components", "Tests"],
52
- successCriteria: ["All features implemented", "Tests passing", "Contract hash verified"],
53
- prohibitedWork: ["Production deployment", "Schema changes without rollback"],
54
- },
55
- "PHASE_3": {
56
- phase: "PHASE_3",
57
- name: "Integration & Testing",
58
- allowedWork: ["System integration", "End-to-end testing", "Performance testing", "Security audit"],
59
- successCriteria: ["All integration tests pass", "No critical bugs", "Security scan clean"],
60
- prohibitedWork: ["New features", "Schema changes"],
61
- },
62
- "PHASE_4": {
63
- phase: "PHASE_4",
64
- name: "Optimization & Deployment",
65
- allowedWork: ["Performance optimization", "Deployment", "Post-release monitoring"],
66
- successCriteria: ["Deployment successful", "Health checks passing", "Rollback plan ready"],
67
- prohibitedWork: ["New features", "Schema changes"],
68
- },
69
- "ROLLBACK_PHASE_1": {
70
- phase: "ROLLBACK_PHASE_1",
71
- name: "Contract Rollback",
72
- allowedWork: ["Contract repair", "Type definition fixes", "Schema corrections"],
73
- successCriteria: ["Contracts fixed", "contract_hash recalculated"],
74
- prohibitedWork: ["New features", "Deployment"],
75
- },
76
- };
77
- /**
78
- * Returns the current phase from storage.
79
- */
80
- static getCurrentPhase() {
81
- const phase = AtabeyStorage.getMetadata("phase");
82
- return phase || "PHASE_0";
83
- }
84
- /**
85
- * Attempts to transition to a new phase.
86
- * Validates that the transition is allowed by the state machine.
87
- */
88
- static async transitionTo(targetPhase, reason, triggeredBy) {
89
- const currentPhase = PhaseEngine.getCurrentPhase();
90
- const allowedTransitions = PhaseEngine.VALID_TRANSITIONS[currentPhase];
91
- if (!allowedTransitions || !allowedTransitions.includes(targetPhase)) {
92
- const errorMsg = `Phase transition ${currentPhase} → ${targetPhase} is NOT ALLOWED. Allowed: ${allowedTransitions?.join(", ") || "none"}`;
93
- logger.warn(`[PHASE] ${errorMsg}`);
94
- AtabeyStorage.saveLog({
95
- agent: triggeredBy,
96
- action: "PHASE_TRANSITION_BLOCKED",
97
- trace_id: AtabeyStorage.getMetadata("traceId") || "N/A",
98
- status: "FAILED",
99
- summary: errorMsg
100
- });
101
- return {
102
- success: false,
103
- from: currentPhase,
104
- to: targetPhase,
105
- error: errorMsg,
106
- };
107
- }
108
- // Execute transition
109
- AtabeyStorage.setMetadata("phase", targetPhase);
110
- // Log transition
111
- AtabeyStorage.saveLog({
112
- agent: triggeredBy,
113
- action: "PHASE_TRANSITION",
114
- trace_id: AtabeyStorage.getMetadata("traceId") || "N/A",
115
- status: "SUCCESS",
116
- summary: `${currentPhase} → ${targetPhase}: ${reason}`
117
- });
118
- logger.info(`[PHASE] ${currentPhase} → ${targetPhase} (by ${triggeredBy}): ${reason}`);
119
- // If entering ROLLBACK, notify all agents to switch to WAITING
120
- if (targetPhase === "ROLLBACK_PHASE_1") {
121
- await PhaseEngine.notifyAgentsOfRollback();
122
- }
123
- return {
124
- success: true,
125
- from: currentPhase,
126
- to: targetPhase,
127
- };
128
- }
129
- /**
130
- * Checks if a given work type is allowed in the current phase.
131
- */
132
- static isWorkAllowed(work) {
133
- const currentPhase = PhaseEngine.getCurrentPhase();
134
- const phaseDef = PhaseEngine.PHASE_DEFINITIONS[currentPhase];
135
- if (!phaseDef)
136
- return false;
137
- const workLower = work.toLowerCase();
138
- return phaseDef.allowedWork.some(allowed => workLower.includes(allowed.toLowerCase()));
139
- }
140
- /**
141
- * Returns the requirements for the current phase.
142
- */
143
- static getCurrentPhaseRequirements() {
144
- const currentPhase = PhaseEngine.getCurrentPhase();
145
- return PhaseEngine.PHASE_DEFINITIONS[currentPhase] || PhaseEngine.PHASE_DEFINITIONS["PHASE_0"];
146
- }
147
- /**
148
- * Checks if all success criteria for the current phase are met.
149
- */
150
- static async checkPhaseCompletion() {
151
- const phaseDef = PhaseEngine.getCurrentPhaseRequirements();
152
- const missingCriteria = [];
153
- for (const criteria of phaseDef.successCriteria) {
154
- // Check if the criteria has been logged as completed
155
- const logs = AtabeyStorage.getLogs();
156
- const isCompleted = logs.some(l => l.action === "PHASE_CRITERIA_MET" &&
157
- l.summary.includes(criteria));
158
- if (!isCompleted) {
159
- missingCriteria.push(criteria);
160
- }
161
- }
162
- return {
163
- complete: missingCriteria.length === 0,
164
- missingCriteria,
165
- };
166
- }
167
- /**
168
- * Marks a success criterion as completed.
169
- */
170
- static async markCriteriaMet(criteria, agent) {
171
- AtabeyStorage.saveLog({
172
- agent,
173
- action: "PHASE_CRITERIA_MET",
174
- trace_id: AtabeyStorage.getMetadata("traceId") || "N/A",
175
- status: "SUCCESS",
176
- summary: criteria
177
- });
178
- logger.info(`[PHASE] Criteria met: ${criteria} (by ${agent})`);
179
- }
180
- /**
181
- * Detects if contracts are broken and auto-triggers rollback.
182
- * Called by ContractEngine when contract_hash changes unexpectedly.
183
- */
184
- static async detectBrokenContracts(triggeredBy) {
185
- const currentPhase = PhaseEngine.getCurrentPhase();
186
- if (currentPhase === "PHASE_2" || currentPhase === "PHASE_3" || currentPhase === "PHASE_4") {
187
- logger.warn(`[PHASE] Broken contracts detected in ${currentPhase}. Auto-rolling back to PHASE_1.`);
188
- await PhaseEngine.transitionTo("ROLLBACK_PHASE_1", "Contract hash mismatch detected — automatic rollback", triggeredBy);
189
- }
190
- }
191
- /**
192
- * Notifies all agents to switch to WAITING state during rollback.
193
- */
194
- static async notifyAgentsOfRollback() {
195
- const agents = AtabeyStorage.getAllAgents();
196
- for (const agent of agents) {
197
- if (agent.state === "EXECUTING" || agent.state === "COMPLETED") {
198
- AtabeyStorage.updateAgentStatus(agent.name, "WAITING", `Contract rollback in progress — phase reset to PHASE_1`);
199
- }
200
- }
201
- logger.info("[PHASE] All agents notified of rollback. Waiting for contract fixes.");
202
- }
203
- }
204
- //# sourceMappingURL=phase-engine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"phase-engine.js","sourceRoot":"","sources":["../../../../../src/modules/engines/phase-engine.ts"],"names":[],"mappings":"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"}
@@ -1,63 +0,0 @@
1
- /**
2
- * [ENGINE] Policy Engine — Language, CLI, Dashboard & Parallel Rules
3
- *
4
- * Combines remaining vision items:
5
- * 5. API Versioning Strategy — URL versioning enforcement
6
- * 7. Dashboard Live Features — WebSocket ApprovalCenter, CompliancePanel
7
- * 8. CLI Command Map — .atabey/cli-commands.json management
8
- * 9. Language Policy Enforcer — English-only comments/variables
9
- * 10. Parallel Execution Rules — dependency lock, ownership, commit logging
10
- */
11
- export interface CliCommandEntry {
12
- command: string;
13
- agent: string;
14
- description: string;
15
- outputFormat?: "json" | "text";
16
- }
17
- export interface LanguageViolation {
18
- file: string;
19
- line: number;
20
- type: "turkish_comment" | "non_english_variable" | "ui_text_not_english";
21
- content: string;
22
- }
23
- /**
24
- * Policy Engine — enforces language policy, manages CLI command map,
25
- * provides dashboard live data, and enforces parallel execution rules.
26
- */
27
- export declare class PolicyEngine {
28
- /**
29
- * Validates that API endpoints use versioned paths (/api/v{N}/...).
30
- */
31
- static validateApiVersioning(filePath: string, content: string): string[];
32
- /**
33
- * Returns dashboard live data for WebSocket broadcast.
34
- */
35
- static getDashboardData(): Record<string, unknown>;
36
- /**
37
- * Gets the CLI command map from .atabey/cli-commands.json.
38
- */
39
- static getCliCommands(): CliCommandEntry[];
40
- /**
41
- * Saves CLI command map.
42
- */
43
- static saveCliCommand(command: CliCommandEntry): void;
44
- private static getDefaultCommands;
45
- /**
46
- * Scans files for language policy violations.
47
- * Rules: comments in English, variable/function names in English, UI text in English.
48
- */
49
- static scanLanguagePolicy(filePath: string, content: string): LanguageViolation[];
50
- /**
51
- * Checks implicit dependency lock — if an agent's required output
52
- * is not ready, the dependent agent switches to WAITING state.
53
- */
54
- static checkImplicitDependency(agentName: string, requiredAgent: string): boolean;
55
- /**
56
- * Enforces file ownership — an agent cannot modify files outside its scope.
57
- */
58
- static enforceOwnership(agentName: string, filePath: string): boolean;
59
- /**
60
- * Logs commit-level information for traceability.
61
- */
62
- static logCommit(agentName: string, message: string, traceId: string): void;
63
- }
@@ -1,188 +0,0 @@
1
- /**
2
- * [ENGINE] Policy Engine — Language, CLI, Dashboard & Parallel Rules
3
- *
4
- * Combines remaining vision items:
5
- * 5. API Versioning Strategy — URL versioning enforcement
6
- * 7. Dashboard Live Features — WebSocket ApprovalCenter, CompliancePanel
7
- * 8. CLI Command Map — .atabey/cli-commands.json management
8
- * 9. Language Policy Enforcer — English-only comments/variables
9
- * 10. Parallel Execution Rules — dependency lock, ownership, commit logging
10
- */
11
- import fs from "fs";
12
- import path from "path";
13
- import { logger } from "../../shared/logger.js";
14
- import { AtabeyStorage } from "../../shared/storage.js";
15
- /**
16
- * Policy Engine — enforces language policy, manages CLI command map,
17
- * provides dashboard live data, and enforces parallel execution rules.
18
- */
19
- export class PolicyEngine {
20
- // ─── 5. API Versioning Strategy ──────────────────────────────────
21
- /**
22
- * Validates that API endpoints use versioned paths (/api/v{N}/...).
23
- */
24
- static validateApiVersioning(filePath, content) {
25
- const violations = [];
26
- const lines = content.split("\n");
27
- for (let i = 0; i < lines.length; i++) {
28
- const line = lines[i];
29
- // Check for route definitions without version prefix
30
- const routeMatch = line.match(/\.(get|post|put|delete|patch)\(['"`]\/api\/(?!v\d+\/)/i);
31
- if (routeMatch) {
32
- violations.push(`Line ${i + 1}: API route without version prefix: ${line.trim()}`);
33
- }
34
- }
35
- return violations;
36
- }
37
- // ─── 7. Dashboard Live Data ─────────────────────────────────────
38
- /**
39
- * Returns dashboard live data for WebSocket broadcast.
40
- */
41
- static getDashboardData() {
42
- return {
43
- agents: AtabeyStorage.getAllAgents().map(a => ({ name: a.name, state: a.state, task: a.task })),
44
- pendingApprovals: AtabeyStorage.getPendingMessages()
45
- .filter(m => m.category === "ALERT" || m.category === "ACTION")
46
- .map(m => ({ traceId: m.traceId, description: m.content?.substring(0, 100), status: m.status })),
47
- messageQueue: {
48
- pending: AtabeyStorage.getPendingMessages().length,
49
- categories: AtabeyStorage.getPendingMessages().reduce((acc, m) => {
50
- acc[m.category] = (acc[m.category] || 0) + 1;
51
- return acc;
52
- }, {}),
53
- },
54
- activeTraceId: AtabeyStorage.getMetadata("traceId") || "N/A",
55
- currentPhase: AtabeyStorage.getMetadata("phase") || "PHASE_0",
56
- };
57
- }
58
- // ─── 8. CLI Command Map Management ──────────────────────────────
59
- /**
60
- * Gets the CLI command map from .atabey/cli-commands.json.
61
- */
62
- static getCliCommands() {
63
- const cmdsPath = path.join(process.cwd(), ".atabey", "cli-commands.json");
64
- if (!fs.existsSync(cmdsPath))
65
- return PolicyEngine.getDefaultCommands();
66
- try {
67
- return JSON.parse(fs.readFileSync(cmdsPath, "utf8"));
68
- }
69
- catch {
70
- return PolicyEngine.getDefaultCommands();
71
- }
72
- }
73
- /**
74
- * Saves CLI command map.
75
- */
76
- static saveCliCommand(command) {
77
- const cmdsDir = path.join(process.cwd(), ".atabey");
78
- const cmdsPath = path.join(cmdsDir, "cli-commands.json");
79
- if (!fs.existsSync(cmdsDir))
80
- fs.mkdirSync(cmdsDir, { recursive: true });
81
- const commands = PolicyEngine.getCliCommands();
82
- const existing = commands.findIndex(c => c.command === command.command);
83
- if (existing >= 0) {
84
- commands[existing] = command;
85
- }
86
- else {
87
- commands.push(command);
88
- }
89
- fs.writeFileSync(cmdsPath, JSON.stringify(commands, null, 2));
90
- }
91
- static getDefaultCommands() {
92
- return [
93
- { command: "atabey status", agent: "@manager", description: "Show system status" },
94
- { command: "atabey approve", agent: "@human", description: "Approve a high-risk operation", outputFormat: "json" },
95
- { command: "atabey trace:new", agent: "@manager", description: "Create a new trace" },
96
- { command: "atabey verify-contract", agent: "@architect", description: "Verify contract integrity" },
97
- { command: "atabey mcp setup", agent: "@manager", description: "Setup MCP server" },
98
- ];
99
- }
100
- // ─── 9. Language Policy Enforcer ────────────────────────────────
101
- /**
102
- * Scans files for language policy violations.
103
- * Rules: comments in English, variable/function names in English, UI text in English.
104
- */
105
- static scanLanguagePolicy(filePath, content) {
106
- const violations = [];
107
- const lines = content.split("\n");
108
- // Detector data only: common non-English (TR) stop-words used to flag comments
109
- // that violate the English-only content policy. Not user-facing copy.
110
- const nonEnglishCommentPatterns = [
111
- /\b(bu|şu|o|ve|veya|ile|için|göre|kadar|sonra|önce|ama|fakat|çünkü|eğer|her|bir|daha|en|çok|az|yeni|eski|büyük|küçük|iyi|kötü|doğru|yanlış)\b/i,
112
- /\b(yap|et|git|gel|bak|ver|al|tut|koş|dur|otur|kalk|aç|kapa|çalış|oku|yaz|sil|ekle|güncelle|sil|temizle)\b/i,
113
- ];
114
- for (let i = 0; i < lines.length; i++) {
115
- const line = lines[i].trim();
116
- // Skip empty lines, pure code, and URLs
117
- if (!line || line.startsWith("// @") || line.startsWith("import") || line.startsWith("export") || line.includes("http"))
118
- continue;
119
- // Flag comments that look non-English (policy: product content is English)
120
- const commentMatch = line.match(/\/\/\s*(.+)/);
121
- if (commentMatch) {
122
- const comment = commentMatch[1];
123
- if (nonEnglishCommentPatterns.some(p => p.test(comment))) {
124
- violations.push({ file: filePath, line: i + 1, type: "turkish_comment", content: comment.substring(0, 80) });
125
- }
126
- }
127
- }
128
- return violations;
129
- }
130
- // ─── 10. Parallel Execution Rules ───────────────────────────────
131
- /**
132
- * Checks implicit dependency lock — if an agent's required output
133
- * is not ready, the dependent agent switches to WAITING state.
134
- */
135
- static checkImplicitDependency(agentName, requiredAgent) {
136
- const agents = AtabeyStorage.getAllAgents();
137
- const required = agents.find(a => a.name === requiredAgent);
138
- if (!required || required.state !== "COMPLETED") {
139
- AtabeyStorage.updateAgentStatus(agentName, "WAITING", `Waiting for ${requiredAgent} to complete`);
140
- logger.info(`[PARALLEL] ${agentName} → WAITING (dependency: ${requiredAgent} not ready)`);
141
- return false;
142
- }
143
- return true;
144
- }
145
- /**
146
- * Enforces file ownership — an agent cannot modify files outside its scope.
147
- */
148
- static enforceOwnership(agentName, filePath) {
149
- const ownershipMap = {
150
- "@backend": ["src/modules/", "src/contracts/", "apps/backend/"],
151
- "@frontend": ["apps/web/", "src/components/", "src/pages/"],
152
- "@database": ["src/database/", "migrations/"],
153
- "@devops": [".github/", "Dockerfile", "docker-compose", ".env"],
154
- "@architect": ["src/contracts/", "src/types/", "contract.version.json"],
155
- };
156
- const allowedPaths = ownershipMap[agentName];
157
- if (!allowedPaths)
158
- return true; // No restriction for this agent
159
- const relativePath = path.relative(process.cwd(), filePath);
160
- const isAllowed = allowedPaths.some(p => relativePath.startsWith(p) || relativePath.includes(p));
161
- if (!isAllowed) {
162
- logger.warn(`[OWNERSHIP] ${agentName} cannot modify ${filePath} — outside scope`);
163
- AtabeyStorage.saveLog({
164
- agent: agentName.replace("@", ""),
165
- action: "OWNERSHIP_VIOLATION",
166
- trace_id: AtabeyStorage.getMetadata("traceId") || "N/A",
167
- status: "BLOCKED",
168
- summary: `${agentName} attempted to modify ${filePath} — outside allowed scope: ${allowedPaths.join(", ")}`
169
- });
170
- return false;
171
- }
172
- return true;
173
- }
174
- /**
175
- * Logs commit-level information for traceability.
176
- */
177
- static logCommit(agentName, message, traceId) {
178
- AtabeyStorage.saveLog({
179
- agent: agentName.replace("@", ""),
180
- action: "COMMIT",
181
- trace_id: traceId,
182
- status: "SUCCESS",
183
- summary: `[${traceId}] ${message.substring(0, 200)}`
184
- });
185
- logger.info(`[COMMIT] ${agentName}: ${message} (trace: ${traceId})`);
186
- }
187
- }
188
- //# sourceMappingURL=policy-engine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"policy-engine.js","sourceRoot":"","sources":["../../../../../src/modules/engines/policy-engine.ts"],"names":[],"mappings":"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"}
@@ -1,31 +0,0 @@
1
- /**
2
- * [ENGINE] OS-Level Sandbox — thin adapter over atabey-shared/sandbox.
3
- *
4
- * Prefer importing from `atabey-shared/sandbox.js` in new code.
5
- * This class keeps a stable engine-facing API for callers inside packages/atabey.
6
- */
7
- import { sandboxSpawn } from "atabey-shared/sandbox.js";
8
- import type { SpawnOptions } from "child_process";
9
- export declare class Sandbox {
10
- /** Resolve and cache sandbox identity (uid/gid). */
11
- static resolve(): void;
12
- static spawn(command: string, args: string[], options?: SpawnOptions): ReturnType<typeof sandboxSpawn>;
13
- static isActive(): boolean;
14
- static getInfo(): {
15
- uid?: number;
16
- gid?: number;
17
- user?: string;
18
- active: boolean;
19
- reason?: string;
20
- };
21
- static clearCache(): void;
22
- static status(): {
23
- platform: string;
24
- identity: import("atabey-shared").SandboxIdentity;
25
- processUid: number | null;
26
- processGid: number | null;
27
- };
28
- static applyOptions(options?: SpawnOptions & {
29
- disableSandbox?: boolean;
30
- }): SpawnOptions;
31
- }
@@ -1,57 +0,0 @@
1
- /**
2
- * [ENGINE] OS-Level Sandbox — thin adapter over atabey-shared/sandbox.
3
- *
4
- * Prefer importing from `atabey-shared/sandbox.js` in new code.
5
- * This class keeps a stable engine-facing API for callers inside packages/atabey.
6
- */
7
- import { applySandboxToSpawnOptions, clearSandboxIdentityCache, getSandboxStatus, resolveSandboxIdentity, sandboxSpawn, } from "atabey-shared/sandbox.js";
8
- import { logger } from "../../shared/logger.js";
9
- export class Sandbox {
10
- /** Resolve and cache sandbox identity (uid/gid). */
11
- static resolve() {
12
- const id = resolveSandboxIdentity();
13
- if (id.enabled) {
14
- logger.info(`[SANDBOX] Active uid=${id.uid}${id.gid !== undefined ? ` gid=${id.gid}` : ""}${id.user ? ` user=${id.user}` : ""}`);
15
- }
16
- else if (id.reason) {
17
- logger.debug(`[SANDBOX] Inactive: ${id.reason}`);
18
- }
19
- }
20
- static spawn(command, args, options = {}) {
21
- const id = resolveSandboxIdentity();
22
- if (id.enabled) {
23
- logger.info(`[SANDBOX] Active uid=${id.uid}${id.gid !== undefined ? ` gid=${id.gid}` : ""}${id.user ? ` user=${id.user}` : ""}`);
24
- }
25
- else if (id.reason) {
26
- logger.debug(`[SANDBOX] Inactive: ${id.reason}`);
27
- }
28
- const child = sandboxSpawn(command, args, options);
29
- if (id.enabled) {
30
- logger.debug(`[SANDBOX] Spawning with uid=${id.uid}: ${command} ${args.join(" ")}`);
31
- }
32
- return child;
33
- }
34
- static isActive() {
35
- return resolveSandboxIdentity().enabled;
36
- }
37
- static getInfo() {
38
- const id = resolveSandboxIdentity();
39
- return {
40
- uid: id.uid,
41
- gid: id.gid,
42
- user: id.user,
43
- active: id.enabled,
44
- reason: id.reason,
45
- };
46
- }
47
- static clearCache() {
48
- clearSandboxIdentityCache();
49
- }
50
- static status() {
51
- return getSandboxStatus();
52
- }
53
- static applyOptions(options = {}) {
54
- return applySandboxToSpawnOptions(options);
55
- }
56
- }
57
- //# sourceMappingURL=sandbox.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../../../../../src/modules/engines/sandbox.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACH,0BAA0B,EAC1B,yBAAyB,EACzB,gBAAgB,EAChB,sBAAsB,EACtB,YAAY,GACf,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAEhD,MAAM,OAAO,OAAO;IAChB,oDAAoD;IAC7C,MAAM,CAAC,OAAO;QACjB,MAAM,EAAE,GAAG,sBAAsB,EAAE,CAAC;QACpC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CACP,wBAAwB,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,GACzE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EACnC,EAAE,CACL,CAAC;QACN,CAAC;aAAM,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;QACrD,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,KAAK,CACf,OAAe,EACf,IAAc,EACd,UAAwB,EAAE;QAE1B,MAAM,EAAE,GAAG,sBAAsB,EAAE,CAAC;QACpC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CACP,wBAAwB,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,GACzE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EACnC,EAAE,CACL,CAAC;QACN,CAAC;aAAM,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;QACrD,CAAC;QACD,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACnD,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CACR,+BAA+B,EAAE,CAAC,GAAG,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CACxE,CAAC;QACN,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,MAAM,CAAC,QAAQ;QAClB,OAAO,sBAAsB,EAAE,CAAC,OAAO,CAAC;IAC5C,CAAC;IAEM,MAAM,CAAC,OAAO;QAOjB,MAAM,EAAE,GAAG,sBAAsB,EAAE,CAAC;QACpC,OAAO;YACH,GAAG,EAAE,EAAE,CAAC,GAAG;YACX,GAAG,EAAE,EAAE,CAAC,GAAG;YACX,IAAI,EAAE,EAAE,CAAC,IAAI;YACb,MAAM,EAAE,EAAE,CAAC,OAAO;YAClB,MAAM,EAAE,EAAE,CAAC,MAAM;SACpB,CAAC;IACN,CAAC;IAEM,MAAM,CAAC,UAAU;QACpB,yBAAyB,EAAE,CAAC;IAChC,CAAC;IAEM,MAAM,CAAC,MAAM;QAChB,OAAO,gBAAgB,EAAE,CAAC;IAC9B,CAAC;IAEM,MAAM,CAAC,YAAY,CAAC,UAAuD,EAAE;QAChF,OAAO,0BAA0B,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;CACJ"}
@@ -1,68 +0,0 @@
1
- /**
2
- * [ENGINE] Session Engine — STEP 0 STARTUP Protocol
3
- *
4
- * Implements ATABEY_FULL.md STEP 0:
5
- * 1. Restore Session Memory & Load Role — read PROJECT_MEMORY.md, DECISIONS.md
6
- * 2. Read Platform Shim — detect Claude/Gemini/Cursor platform
7
- * 3. Respect Authority — report to @manager
8
- *
9
- * Integrates Token Economy Protocol and Output Flow Standards.
10
- */
11
- export interface SessionContext {
12
- projectMemory: string;
13
- decisions: string[];
14
- activeTraceId: string;
15
- currentPhase: string;
16
- platform: string;
17
- agentState: string;
18
- tokenBudget: {
19
- used: number;
20
- limit: number;
21
- };
22
- }
23
- export interface OutputFlow {
24
- assumptions: string[];
25
- problem: string;
26
- fileTree: string[];
27
- codeBlocks: number;
28
- auditLog: string;
29
- tests: string[];
30
- }
31
- /**
32
- * Session Engine — manages the STEP 0 startup protocol and enforces
33
- * token economy and output flow standards on every session.
34
- */
35
- export declare class SessionEngine {
36
- /**
37
- * STEP 0: STARTUP Protocol — runs at the beginning of every session.
38
- * Reads PROJECT_MEMORY.md, checks active decisions, detects platform.
39
- */
40
- static startup(): Promise<SessionContext>;
41
- /**
42
- * Token Economy Protocol — enforces:
43
- * - Search before read (never read_file entire directories)
44
- * - Surgical operations (replace instead of write)
45
- * - Output conciseness (minimum required data)
46
- * - Context compaction (retrieve only relevant history)
47
- */
48
- static checkTokenEconomy(operationType: "read" | "write" | "replace" | "search", estimatedTokens: number): Promise<{
49
- allowed: boolean;
50
- warning?: string;
51
- }>;
52
- /**
53
- * Output Flow Standard — validates that agent output follows the
54
- * mandatory format: Assumptions, Problem, File Tree, Code, Tests, Audit Log.
55
- */
56
- static validateOutputFlow(output: string): {
57
- passed: boolean;
58
- missing: string[];
59
- };
60
- /**
61
- * Checks session compliance with STEP 0 rules.
62
- * Logs a warning if rules are not followed.
63
- */
64
- static checkSessionCompliance(): Promise<{
65
- compliant: boolean;
66
- warnings: string[];
67
- }>;
68
- }