@mc1global/opencode-jarvis 0.13.0 → 0.14.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 (832) hide show
  1. package/CHANGELOG.md +391 -0
  2. package/README.md +55 -29
  3. package/dist/application/agent-registry/dtos.d.ts.map +1 -1
  4. package/dist/application/agent-registry/use-cases.d.ts +0 -14
  5. package/dist/application/agent-registry/use-cases.d.ts.map +1 -1
  6. package/dist/application/agent-registry/use-cases.js +1 -0
  7. package/dist/application/agent-registry/use-cases.js.map +1 -1
  8. package/dist/application/azure-sync/comment-intent-service.d.ts +73 -0
  9. package/dist/application/azure-sync/comment-intent-service.d.ts.map +1 -0
  10. package/dist/application/azure-sync/comment-intent-service.js +105 -0
  11. package/dist/application/azure-sync/comment-intent-service.js.map +1 -0
  12. package/dist/application/azure-sync/dtos.d.ts.map +1 -1
  13. package/dist/application/azure-sync/field-builders.d.ts +2 -2
  14. package/dist/application/azure-sync/field-builders.d.ts.map +1 -1
  15. package/dist/application/azure-sync/field-builders.js +1 -1
  16. package/dist/application/azure-sync/field-builders.js.map +1 -1
  17. package/dist/application/azure-sync/intent-executor.d.ts +54 -0
  18. package/dist/application/azure-sync/intent-executor.d.ts.map +1 -0
  19. package/dist/application/azure-sync/intent-executor.js +130 -0
  20. package/dist/application/azure-sync/intent-executor.js.map +1 -0
  21. package/dist/application/azure-sync/intent-reply-builder.d.ts +41 -0
  22. package/dist/application/azure-sync/intent-reply-builder.d.ts.map +1 -0
  23. package/dist/application/azure-sync/intent-reply-builder.js +57 -0
  24. package/dist/application/azure-sync/intent-reply-builder.js.map +1 -0
  25. package/dist/application/azure-sync/kanban-card-sync-adapter.d.ts +39 -0
  26. package/dist/application/azure-sync/kanban-card-sync-adapter.d.ts.map +1 -0
  27. package/dist/application/azure-sync/kanban-card-sync-adapter.js +74 -0
  28. package/dist/application/azure-sync/kanban-card-sync-adapter.js.map +1 -0
  29. package/dist/application/azure-sync/kanban-sync-ports.d.ts +60 -0
  30. package/dist/application/azure-sync/kanban-sync-ports.d.ts.map +1 -0
  31. package/dist/application/azure-sync/kanban-sync-ports.js +17 -0
  32. package/dist/application/azure-sync/kanban-sync-ports.js.map +1 -0
  33. package/dist/application/azure-sync/poll-service.d.ts +2 -0
  34. package/dist/application/azure-sync/poll-service.d.ts.map +1 -1
  35. package/dist/application/azure-sync/poll-service.js +64 -18
  36. package/dist/application/azure-sync/poll-service.js.map +1 -1
  37. package/dist/application/azure-sync/pr-use-cases.d.ts +1 -4
  38. package/dist/application/azure-sync/pr-use-cases.d.ts.map +1 -1
  39. package/dist/application/azure-sync/pr-use-cases.js +2 -7
  40. package/dist/application/azure-sync/pr-use-cases.js.map +1 -1
  41. package/dist/application/azure-sync/pull-use-cases.d.ts.map +1 -1
  42. package/dist/application/azure-sync/pull-use-cases.js +47 -14
  43. package/dist/application/azure-sync/pull-use-cases.js.map +1 -1
  44. package/dist/application/azure-sync/push-entity-use-cases.d.ts +40 -0
  45. package/dist/application/azure-sync/push-entity-use-cases.d.ts.map +1 -0
  46. package/dist/application/azure-sync/push-entity-use-cases.js +266 -0
  47. package/dist/application/azure-sync/push-entity-use-cases.js.map +1 -0
  48. package/dist/application/azure-sync/push-use-cases.d.ts +9 -21
  49. package/dist/application/azure-sync/push-use-cases.d.ts.map +1 -1
  50. package/dist/application/azure-sync/push-use-cases.js +14 -229
  51. package/dist/application/azure-sync/push-use-cases.js.map +1 -1
  52. package/dist/application/azure-sync/reverse-field-builder.d.ts.map +1 -1
  53. package/dist/application/azure-sync/reverse-field-builder.js +1 -1
  54. package/dist/application/azure-sync/reverse-field-builder.js.map +1 -1
  55. package/dist/application/azure-sync/task-push-use-cases.d.ts +13 -13
  56. package/dist/application/azure-sync/task-push-use-cases.d.ts.map +1 -1
  57. package/dist/application/azure-sync/task-push-use-cases.js +5 -22
  58. package/dist/application/azure-sync/task-push-use-cases.js.map +1 -1
  59. package/dist/application/bootstrap/healthcheck-use-cases.d.ts +13 -0
  60. package/dist/application/bootstrap/healthcheck-use-cases.d.ts.map +1 -1
  61. package/dist/application/bootstrap/healthcheck-use-cases.js +4 -5
  62. package/dist/application/bootstrap/healthcheck-use-cases.js.map +1 -1
  63. package/dist/application/bootstrap/index.d.ts.map +1 -1
  64. package/dist/application/bootstrap/index.js.map +1 -1
  65. package/dist/application/bootstrap/ports.d.ts +29 -0
  66. package/dist/application/bootstrap/ports.d.ts.map +1 -0
  67. package/dist/application/bootstrap/ports.js +12 -0
  68. package/dist/application/bootstrap/ports.js.map +1 -0
  69. package/dist/application/bootstrap/terminal-commands-use-cases.d.ts.map +1 -1
  70. package/dist/application/bootstrap/terminal-commands-use-cases.js +1 -1
  71. package/dist/application/bootstrap/terminal-commands-use-cases.js.map +1 -1
  72. package/dist/application/bootstrap/use-cases.d.ts +29 -30
  73. package/dist/application/bootstrap/use-cases.d.ts.map +1 -1
  74. package/dist/application/bootstrap/use-cases.js +84 -81
  75. package/dist/application/bootstrap/use-cases.js.map +1 -1
  76. package/dist/application/config/config-service.d.ts +7 -21
  77. package/dist/application/config/config-service.d.ts.map +1 -1
  78. package/dist/application/config/config-service.js +8 -5
  79. package/dist/application/config/config-service.js.map +1 -1
  80. package/dist/application/config/config-write-service.d.ts +4 -23
  81. package/dist/application/config/config-write-service.d.ts.map +1 -1
  82. package/dist/application/config/config-write-service.js +2 -1
  83. package/dist/application/config/config-write-service.js.map +1 -1
  84. package/dist/application/context-memory/execution-journal-use-cases.d.ts.map +1 -1
  85. package/dist/application/context-memory/execution-journal-use-cases.js +10 -0
  86. package/dist/application/context-memory/execution-journal-use-cases.js.map +1 -1
  87. package/dist/application/context-memory/note-use-cases.d.ts.map +1 -1
  88. package/dist/application/context-memory/note-use-cases.js +10 -0
  89. package/dist/application/context-memory/note-use-cases.js.map +1 -1
  90. package/dist/application/context-memory/session-use-cases.d.ts.map +1 -1
  91. package/dist/application/context-memory/session-use-cases.js +10 -0
  92. package/dist/application/context-memory/session-use-cases.js.map +1 -1
  93. package/dist/application/context-memory/todo-use-cases.d.ts.map +1 -1
  94. package/dist/application/context-memory/todo-use-cases.js +10 -0
  95. package/dist/application/context-memory/todo-use-cases.js.map +1 -1
  96. package/dist/application/domain-map/dtos.d.ts.map +1 -1
  97. package/dist/application/domain-map/use-cases.d.ts +3 -23
  98. package/dist/application/domain-map/use-cases.d.ts.map +1 -1
  99. package/dist/application/domain-map/use-cases.js +5 -5
  100. package/dist/application/domain-map/use-cases.js.map +1 -1
  101. package/dist/application/environment/use-cases.d.ts +73 -4
  102. package/dist/application/environment/use-cases.d.ts.map +1 -1
  103. package/dist/application/environment/use-cases.js +5 -1
  104. package/dist/application/environment/use-cases.js.map +1 -1
  105. package/dist/application/governance/dtos.d.ts +29 -0
  106. package/dist/application/governance/dtos.d.ts.map +1 -0
  107. package/dist/application/governance/dtos.js +11 -0
  108. package/dist/application/governance/dtos.js.map +1 -0
  109. package/dist/application/governance/validation-use-cases.d.ts +1 -19
  110. package/dist/application/governance/validation-use-cases.d.ts.map +1 -1
  111. package/dist/application/governance/validation-use-cases.js +11 -0
  112. package/dist/application/governance/validation-use-cases.js.map +1 -1
  113. package/dist/application/kanban/board-use-cases.d.ts +12 -18
  114. package/dist/application/kanban/board-use-cases.d.ts.map +1 -1
  115. package/dist/application/kanban/board-use-cases.js +11 -38
  116. package/dist/application/kanban/board-use-cases.js.map +1 -1
  117. package/dist/application/kanban/card-gate-use-cases.d.ts +24 -0
  118. package/dist/application/kanban/card-gate-use-cases.d.ts.map +1 -0
  119. package/dist/application/kanban/card-gate-use-cases.js +71 -0
  120. package/dist/application/kanban/card-gate-use-cases.js.map +1 -0
  121. package/dist/application/kanban/card-use-cases.d.ts +7 -9
  122. package/dist/application/kanban/card-use-cases.d.ts.map +1 -1
  123. package/dist/application/kanban/card-use-cases.js +60 -92
  124. package/dist/application/kanban/card-use-cases.js.map +1 -1
  125. package/dist/application/kanban/dtos.d.ts +14 -0
  126. package/dist/application/kanban/dtos.d.ts.map +1 -1
  127. package/dist/application/kanban/dtos.js +38 -1
  128. package/dist/application/kanban/dtos.js.map +1 -1
  129. package/dist/application/kanban/sprint-use-cases.d.ts +2 -2
  130. package/dist/application/kanban/sprint-use-cases.d.ts.map +1 -1
  131. package/dist/application/kanban/sprint-use-cases.js +10 -0
  132. package/dist/application/kanban/sprint-use-cases.js.map +1 -1
  133. package/dist/application/pipeline/dtos.d.ts +157 -73
  134. package/dist/application/pipeline/dtos.d.ts.map +1 -1
  135. package/dist/application/pipeline/dtos.js +5 -5
  136. package/dist/application/pipeline/use-cases.d.ts +10 -13
  137. package/dist/application/pipeline/use-cases.d.ts.map +1 -1
  138. package/dist/application/pipeline/use-cases.js +1 -0
  139. package/dist/application/pipeline/use-cases.js.map +1 -1
  140. package/dist/application/rag/dtos.d.ts.map +1 -1
  141. package/dist/application/rag/oracle-use-cases.d.ts.map +1 -1
  142. package/dist/application/rag/oracle-use-cases.js +11 -1
  143. package/dist/application/rag/oracle-use-cases.js.map +1 -1
  144. package/dist/application/rag/rag-mutation-use-cases.d.ts +61 -0
  145. package/dist/application/rag/rag-mutation-use-cases.d.ts.map +1 -0
  146. package/dist/application/rag/rag-mutation-use-cases.js +155 -0
  147. package/dist/application/rag/rag-mutation-use-cases.js.map +1 -0
  148. package/dist/application/rag/use-cases.d.ts +10 -5
  149. package/dist/application/rag/use-cases.d.ts.map +1 -1
  150. package/dist/application/rag/use-cases.js +97 -191
  151. package/dist/application/rag/use-cases.js.map +1 -1
  152. package/dist/application/token-metrics/dtos.d.ts.map +1 -1
  153. package/dist/application/token-metrics/tracking-use-cases.d.ts.map +1 -1
  154. package/dist/application/token-metrics/tracking-use-cases.js +13 -3
  155. package/dist/application/token-metrics/tracking-use-cases.js.map +1 -1
  156. package/dist/application/vault/dtos.d.ts.map +1 -1
  157. package/dist/application/vault/use-cases.d.ts +1 -1
  158. package/dist/application/vault/use-cases.d.ts.map +1 -1
  159. package/dist/application/vault/use-cases.js +11 -0
  160. package/dist/application/vault/use-cases.js.map +1 -1
  161. package/dist/application/vault/vault-manager.d.ts +1 -1
  162. package/dist/application/vault/vault-manager.d.ts.map +1 -1
  163. package/dist/application/vault/vault-manager.js +26 -6
  164. package/dist/application/vault/vault-manager.js.map +1 -1
  165. package/dist/application/workspace-registry/dtos.d.ts.map +1 -1
  166. package/dist/application/workspace-registry/use-cases.d.ts +65 -15
  167. package/dist/application/workspace-registry/use-cases.d.ts.map +1 -1
  168. package/dist/application/workspace-registry/use-cases.js +5 -4
  169. package/dist/application/workspace-registry/use-cases.js.map +1 -1
  170. package/dist/composition/hooks.d.ts +15 -0
  171. package/dist/composition/hooks.d.ts.map +1 -0
  172. package/dist/composition/hooks.js +113 -0
  173. package/dist/composition/hooks.js.map +1 -0
  174. package/dist/composition/infrastructure.d.ts +84 -0
  175. package/dist/composition/infrastructure.d.ts.map +1 -0
  176. package/dist/composition/infrastructure.js +140 -0
  177. package/dist/composition/infrastructure.js.map +1 -0
  178. package/dist/composition/services.d.ts +78 -0
  179. package/dist/composition/services.d.ts.map +1 -0
  180. package/dist/composition/services.js +335 -0
  181. package/dist/composition/services.js.map +1 -0
  182. package/dist/composition/tools.d.ts +15 -0
  183. package/dist/composition/tools.d.ts.map +1 -0
  184. package/dist/composition/tools.js +136 -0
  185. package/dist/composition/tools.js.map +1 -0
  186. package/dist/domain/agent-registry/entities.d.ts.map +1 -1
  187. package/dist/domain/agent-registry/entities.js +1 -1
  188. package/dist/domain/agent-registry/entities.js.map +1 -1
  189. package/dist/domain/agent-registry/enum-values.d.ts +15 -0
  190. package/dist/domain/agent-registry/enum-values.d.ts.map +1 -0
  191. package/dist/domain/agent-registry/enum-values.js +15 -0
  192. package/dist/domain/agent-registry/enum-values.js.map +1 -0
  193. package/dist/domain/agent-registry/repositories.d.ts.map +1 -1
  194. package/dist/domain/agent-registry/services.d.ts.map +1 -1
  195. package/dist/domain/agent-registry/services.js +1 -1
  196. package/dist/domain/agent-registry/services.js.map +1 -1
  197. package/dist/domain/agent-registry/value-objects.d.ts.map +1 -1
  198. package/dist/domain/agent-registry/value-objects.js +1 -1
  199. package/dist/domain/agent-registry/value-objects.js.map +1 -1
  200. package/dist/domain/azure-sync/entities.d.ts +30 -112
  201. package/dist/domain/azure-sync/entities.d.ts.map +1 -1
  202. package/dist/domain/azure-sync/entities.js +31 -120
  203. package/dist/domain/azure-sync/entities.js.map +1 -1
  204. package/dist/domain/azure-sync/enum-values.d.ts +25 -0
  205. package/dist/domain/azure-sync/enum-values.d.ts.map +1 -0
  206. package/dist/domain/azure-sync/enum-values.js +33 -0
  207. package/dist/domain/azure-sync/enum-values.js.map +1 -0
  208. package/dist/domain/azure-sync/llm-port.d.ts +85 -0
  209. package/dist/domain/azure-sync/llm-port.d.ts.map +1 -0
  210. package/dist/domain/azure-sync/llm-port.js +12 -0
  211. package/dist/domain/azure-sync/llm-port.js.map +1 -0
  212. package/dist/domain/azure-sync/ports.d.ts +12 -3
  213. package/dist/domain/azure-sync/ports.d.ts.map +1 -1
  214. package/dist/domain/azure-sync/repositories.d.ts.map +1 -1
  215. package/dist/domain/azure-sync/services.d.ts.map +1 -1
  216. package/dist/domain/azure-sync/services.js.map +1 -1
  217. package/dist/domain/azure-sync/sync-log-entities.d.ts +124 -0
  218. package/dist/domain/azure-sync/sync-log-entities.d.ts.map +1 -0
  219. package/dist/domain/azure-sync/sync-log-entities.js +129 -0
  220. package/dist/domain/azure-sync/sync-log-entities.js.map +1 -0
  221. package/dist/domain/azure-sync/sync-state-maps.d.ts +44 -0
  222. package/dist/domain/azure-sync/sync-state-maps.d.ts.map +1 -0
  223. package/dist/domain/azure-sync/sync-state-maps.js +134 -0
  224. package/dist/domain/azure-sync/sync-state-maps.js.map +1 -0
  225. package/dist/domain/azure-sync/value-objects.d.ts +6 -35
  226. package/dist/domain/azure-sync/value-objects.d.ts.map +1 -1
  227. package/dist/domain/azure-sync/value-objects.js +4 -120
  228. package/dist/domain/azure-sync/value-objects.js.map +1 -1
  229. package/dist/domain/config/value-objects.d.ts +1 -28
  230. package/dist/domain/config/value-objects.d.ts.map +1 -1
  231. package/dist/domain/config/value-objects.js +37 -19
  232. package/dist/domain/config/value-objects.js.map +1 -1
  233. package/dist/domain/context-memory/entities.d.ts +4 -170
  234. package/dist/domain/context-memory/entities.d.ts.map +1 -1
  235. package/dist/domain/context-memory/entities.js +5 -318
  236. package/dist/domain/context-memory/entities.js.map +1 -1
  237. package/dist/domain/context-memory/enum-values.d.ts +22 -0
  238. package/dist/domain/context-memory/enum-values.d.ts.map +1 -0
  239. package/dist/domain/context-memory/enum-values.js +23 -0
  240. package/dist/domain/context-memory/enum-values.js.map +1 -0
  241. package/dist/domain/context-memory/execution-entry.d.ts +41 -0
  242. package/dist/domain/context-memory/execution-entry.d.ts.map +1 -0
  243. package/dist/domain/context-memory/execution-entry.js +82 -0
  244. package/dist/domain/context-memory/execution-entry.js.map +1 -0
  245. package/dist/domain/context-memory/note.d.ts +31 -0
  246. package/dist/domain/context-memory/note.d.ts.map +1 -0
  247. package/dist/domain/context-memory/note.js +42 -0
  248. package/dist/domain/context-memory/note.js.map +1 -0
  249. package/dist/domain/context-memory/repositories.d.ts.map +1 -1
  250. package/dist/domain/context-memory/repositories.js +7 -0
  251. package/dist/domain/context-memory/repositories.js.map +1 -1
  252. package/dist/domain/context-memory/services.d.ts.map +1 -1
  253. package/dist/domain/context-memory/services.js +15 -1
  254. package/dist/domain/context-memory/services.js.map +1 -1
  255. package/dist/domain/context-memory/session.d.ts +39 -0
  256. package/dist/domain/context-memory/session.d.ts.map +1 -0
  257. package/dist/domain/context-memory/session.js +81 -0
  258. package/dist/domain/context-memory/session.js.map +1 -0
  259. package/dist/domain/context-memory/todo.d.ts +46 -0
  260. package/dist/domain/context-memory/todo.d.ts.map +1 -0
  261. package/dist/domain/context-memory/todo.js +96 -0
  262. package/dist/domain/context-memory/todo.js.map +1 -0
  263. package/dist/domain/context-memory/value-objects.d.ts.map +1 -1
  264. package/dist/domain/context-memory/value-objects.js +1 -1
  265. package/dist/domain/context-memory/value-objects.js.map +1 -1
  266. package/dist/domain/data/ports.d.ts +18 -0
  267. package/dist/domain/data/ports.d.ts.map +1 -0
  268. package/dist/domain/data/ports.js +11 -0
  269. package/dist/domain/data/ports.js.map +1 -0
  270. package/dist/domain/domain-map/ports.d.ts +106 -0
  271. package/dist/domain/domain-map/ports.d.ts.map +1 -0
  272. package/dist/domain/domain-map/ports.js +12 -0
  273. package/dist/domain/domain-map/ports.js.map +1 -0
  274. package/dist/domain/domain-map/services.d.ts.map +1 -1
  275. package/dist/domain/domain-map/services.js +17 -2
  276. package/dist/domain/domain-map/services.js.map +1 -1
  277. package/dist/domain/domain-map/value-objects.d.ts.map +1 -1
  278. package/dist/domain/domain-map/value-objects.js +1 -1
  279. package/dist/domain/domain-map/value-objects.js.map +1 -1
  280. package/dist/domain/environment/entities.d.ts +1 -1
  281. package/dist/domain/environment/entities.d.ts.map +1 -1
  282. package/dist/domain/environment/entities.js +1 -1
  283. package/dist/domain/environment/entities.js.map +1 -1
  284. package/dist/domain/environment/enum-values.d.ts +23 -0
  285. package/dist/domain/environment/enum-values.d.ts.map +1 -0
  286. package/dist/domain/environment/enum-values.js +31 -0
  287. package/dist/domain/environment/enum-values.js.map +1 -0
  288. package/dist/domain/environment/ports.d.ts +41 -0
  289. package/dist/domain/environment/ports.d.ts.map +1 -0
  290. package/dist/domain/environment/ports.js +12 -0
  291. package/dist/domain/environment/ports.js.map +1 -0
  292. package/dist/domain/environment/renderers.d.ts.map +1 -1
  293. package/dist/domain/environment/renderers.js.map +1 -1
  294. package/dist/domain/environment/repositories.d.ts.map +1 -1
  295. package/dist/domain/environment/services.d.ts.map +1 -1
  296. package/dist/domain/environment/services.js.map +1 -1
  297. package/dist/domain/environment/value-objects.d.ts.map +1 -1
  298. package/dist/domain/environment/value-objects.js +1 -1
  299. package/dist/domain/environment/value-objects.js.map +1 -1
  300. package/dist/domain/governance/policies.d.ts.map +1 -1
  301. package/dist/domain/governance/policies.js +3 -42
  302. package/dist/domain/governance/policies.js.map +1 -1
  303. package/dist/domain/governance/services.d.ts.map +1 -1
  304. package/dist/domain/governance/services.js +11 -0
  305. package/dist/domain/governance/services.js.map +1 -1
  306. package/dist/domain/kanban/card-props.d.ts +39 -0
  307. package/dist/domain/kanban/card-props.d.ts.map +1 -0
  308. package/dist/domain/kanban/card-props.js +9 -0
  309. package/dist/domain/kanban/card-props.js.map +1 -0
  310. package/dist/domain/kanban/entities.d.ts +19 -42
  311. package/dist/domain/kanban/entities.d.ts.map +1 -1
  312. package/dist/domain/kanban/entities.js +32 -11
  313. package/dist/domain/kanban/entities.js.map +1 -1
  314. package/dist/domain/kanban/enum-values.d.ts +53 -0
  315. package/dist/domain/kanban/enum-values.d.ts.map +1 -0
  316. package/dist/domain/kanban/enum-values.js +62 -0
  317. package/dist/domain/kanban/enum-values.js.map +1 -0
  318. package/dist/domain/kanban/grooming.d.ts.map +1 -1
  319. package/dist/domain/kanban/grooming.js +27 -2
  320. package/dist/domain/kanban/grooming.js.map +1 -1
  321. package/dist/domain/kanban/repositories.d.ts.map +1 -1
  322. package/dist/domain/kanban/repositories.js +7 -0
  323. package/dist/domain/kanban/repositories.js.map +1 -1
  324. package/dist/domain/kanban/services.d.ts.map +1 -1
  325. package/dist/domain/kanban/services.js +11 -0
  326. package/dist/domain/kanban/services.js.map +1 -1
  327. package/dist/domain/kanban/sprint.d.ts +7 -7
  328. package/dist/domain/kanban/sprint.d.ts.map +1 -1
  329. package/dist/domain/kanban/sprint.js.map +1 -1
  330. package/dist/domain/kanban/value-objects.d.ts +13 -2
  331. package/dist/domain/kanban/value-objects.d.ts.map +1 -1
  332. package/dist/domain/kanban/value-objects.js.map +1 -1
  333. package/dist/domain/pipeline/enum-values.d.ts +30 -0
  334. package/dist/domain/pipeline/enum-values.d.ts.map +1 -0
  335. package/dist/domain/pipeline/enum-values.js +41 -0
  336. package/dist/domain/pipeline/enum-values.js.map +1 -0
  337. package/dist/domain/pipeline/gate.d.ts.map +1 -1
  338. package/dist/domain/pipeline/gate.js +1 -1
  339. package/dist/domain/pipeline/gate.js.map +1 -1
  340. package/dist/domain/pipeline/index.d.ts.map +1 -1
  341. package/dist/domain/pipeline/index.js +0 -3
  342. package/dist/domain/pipeline/index.js.map +1 -1
  343. package/dist/domain/pipeline/pipeline.d.ts.map +1 -1
  344. package/dist/domain/pipeline/pipeline.js +11 -6
  345. package/dist/domain/pipeline/pipeline.js.map +1 -1
  346. package/dist/domain/pipeline/ports.d.ts.map +1 -1
  347. package/dist/domain/pipeline/repositories.d.ts +3 -3
  348. package/dist/domain/pipeline/repositories.d.ts.map +1 -1
  349. package/dist/domain/pipeline/services.d.ts.map +1 -1
  350. package/dist/domain/pipeline/services.js +2 -0
  351. package/dist/domain/pipeline/services.js.map +1 -1
  352. package/dist/domain/pipeline/value-objects.d.ts.map +1 -1
  353. package/dist/domain/pipeline/value-objects.js +1 -2
  354. package/dist/domain/pipeline/value-objects.js.map +1 -1
  355. package/dist/domain/rag/enum-values.d.ts +19 -0
  356. package/dist/domain/rag/enum-values.d.ts.map +1 -0
  357. package/dist/domain/rag/enum-values.js +24 -0
  358. package/dist/domain/rag/enum-values.js.map +1 -0
  359. package/dist/domain/rag/repositories.d.ts.map +1 -1
  360. package/dist/domain/rag/repositories.js +10 -0
  361. package/dist/domain/rag/repositories.js.map +1 -1
  362. package/dist/domain/rag/services.d.ts.map +1 -1
  363. package/dist/domain/rag/services.js +4 -4
  364. package/dist/domain/rag/services.js.map +1 -1
  365. package/dist/domain/rag/value-objects.d.ts.map +1 -1
  366. package/dist/domain/rag/value-objects.js.map +1 -1
  367. package/dist/domain/shared/value-objects.d.ts.map +1 -1
  368. package/dist/domain/shared/value-objects.js.map +1 -1
  369. package/dist/domain/token-metrics/entities.d.ts.map +1 -1
  370. package/dist/domain/token-metrics/entities.js +2 -3
  371. package/dist/domain/token-metrics/entities.js.map +1 -1
  372. package/dist/domain/token-metrics/ports.d.ts.map +1 -1
  373. package/dist/domain/token-metrics/ports.js.map +1 -1
  374. package/dist/domain/token-metrics/repositories.d.ts.map +1 -1
  375. package/dist/domain/token-metrics/repositories.js +10 -0
  376. package/dist/domain/token-metrics/repositories.js.map +1 -1
  377. package/dist/domain/token-metrics/value-objects.d.ts.map +1 -1
  378. package/dist/domain/token-metrics/value-objects.js.map +1 -1
  379. package/dist/domain/vault/document.d.ts.map +1 -1
  380. package/dist/domain/vault/document.js +39 -15
  381. package/dist/domain/vault/document.js.map +1 -1
  382. package/dist/domain/vault/repositories.d.ts.map +1 -1
  383. package/dist/domain/vault/repositories.js +10 -0
  384. package/dist/domain/vault/repositories.js.map +1 -1
  385. package/dist/domain/vault/section.d.ts.map +1 -1
  386. package/dist/domain/vault/section.js +10 -0
  387. package/dist/domain/vault/section.js.map +1 -1
  388. package/dist/domain/vault/services.d.ts +11 -0
  389. package/dist/domain/vault/services.d.ts.map +1 -1
  390. package/dist/domain/vault/services.js +45 -20
  391. package/dist/domain/vault/services.js.map +1 -1
  392. package/dist/domain/vault/table.d.ts +1 -0
  393. package/dist/domain/vault/table.d.ts.map +1 -1
  394. package/dist/domain/vault/table.js +12 -10
  395. package/dist/domain/vault/table.js.map +1 -1
  396. package/dist/domain/vault/value-objects.d.ts +5 -5
  397. package/dist/domain/vault/value-objects.d.ts.map +1 -1
  398. package/dist/domain/vault/value-objects.js +4 -2
  399. package/dist/domain/vault/value-objects.js.map +1 -1
  400. package/dist/domain/workspace-registry/entities.d.ts +24 -3
  401. package/dist/domain/workspace-registry/entities.d.ts.map +1 -1
  402. package/dist/domain/workspace-registry/entities.js +1 -1
  403. package/dist/domain/workspace-registry/entities.js.map +1 -1
  404. package/dist/domain/workspace-registry/enum-values.d.ts +19 -0
  405. package/dist/domain/workspace-registry/enum-values.d.ts.map +1 -0
  406. package/dist/domain/workspace-registry/enum-values.js +23 -0
  407. package/dist/domain/workspace-registry/enum-values.js.map +1 -0
  408. package/dist/domain/workspace-registry/ports.d.ts +16 -0
  409. package/dist/domain/workspace-registry/ports.d.ts.map +1 -0
  410. package/dist/domain/workspace-registry/ports.js +16 -0
  411. package/dist/domain/workspace-registry/ports.js.map +1 -0
  412. package/dist/domain/workspace-registry/repositories.d.ts.map +1 -1
  413. package/dist/domain/workspace-registry/services.d.ts +2 -1
  414. package/dist/domain/workspace-registry/services.d.ts.map +1 -1
  415. package/dist/domain/workspace-registry/services.js.map +1 -1
  416. package/dist/domain/workspace-registry/value-objects.d.ts +2 -33
  417. package/dist/domain/workspace-registry/value-objects.d.ts.map +1 -1
  418. package/dist/domain/workspace-registry/value-objects.js +0 -1
  419. package/dist/domain/workspace-registry/value-objects.js.map +1 -1
  420. package/dist/hooks/config-command.d.ts.map +1 -1
  421. package/dist/hooks/config-command.js.map +1 -1
  422. package/dist/hooks/context-compacting.d.ts.map +1 -1
  423. package/dist/hooks/context-compacting.js +14 -0
  424. package/dist/hooks/context-compacting.js.map +1 -1
  425. package/dist/hooks/event-handlers.d.ts.map +1 -1
  426. package/dist/hooks/event-handlers.js +19 -3
  427. package/dist/hooks/event-handlers.js.map +1 -1
  428. package/dist/hooks/execution-journal.d.ts.map +1 -1
  429. package/dist/hooks/execution-journal.js +16 -0
  430. package/dist/hooks/execution-journal.js.map +1 -1
  431. package/dist/hooks/first-run-guide.d.ts.map +1 -1
  432. package/dist/hooks/first-run-guide.js +7 -8
  433. package/dist/hooks/first-run-guide.js.map +1 -1
  434. package/dist/hooks/guardrails.d.ts.map +1 -1
  435. package/dist/hooks/guardrails.js +16 -0
  436. package/dist/hooks/guardrails.js.map +1 -1
  437. package/dist/hooks/logger.d.ts.map +1 -1
  438. package/dist/hooks/logger.js +2 -0
  439. package/dist/hooks/logger.js.map +1 -1
  440. package/dist/hooks/shell-env.d.ts.map +1 -1
  441. package/dist/hooks/shell-env.js +12 -0
  442. package/dist/hooks/shell-env.js.map +1 -1
  443. package/dist/hooks/slash-commands.d.ts +3 -3
  444. package/dist/hooks/slash-commands.d.ts.map +1 -1
  445. package/dist/hooks/slash-commands.js +43 -16
  446. package/dist/hooks/slash-commands.js.map +1 -1
  447. package/dist/index.d.ts +3 -3
  448. package/dist/index.d.ts.map +1 -1
  449. package/dist/index.js +56 -600
  450. package/dist/index.js.map +1 -1
  451. package/dist/infrastructure/agent-registry/agent-profile-repository.d.ts +11 -27
  452. package/dist/infrastructure/agent-registry/agent-profile-repository.d.ts.map +1 -1
  453. package/dist/infrastructure/agent-registry/agent-profile-repository.js +1 -0
  454. package/dist/infrastructure/agent-registry/agent-profile-repository.js.map +1 -1
  455. package/dist/infrastructure/agent-registry/agent-session-adapter.d.ts +9 -26
  456. package/dist/infrastructure/agent-registry/agent-session-adapter.d.ts.map +1 -1
  457. package/dist/infrastructure/agent-registry/agent-session-adapter.js +1 -0
  458. package/dist/infrastructure/agent-registry/agent-session-adapter.js.map +1 -1
  459. package/dist/infrastructure/agent-registry/built-in-profiles.d.ts +11 -2
  460. package/dist/infrastructure/agent-registry/built-in-profiles.d.ts.map +1 -1
  461. package/dist/infrastructure/agent-registry/built-in-profiles.js +1 -0
  462. package/dist/infrastructure/agent-registry/built-in-profiles.js.map +1 -1
  463. package/dist/infrastructure/azure-sync/azure-auth.d.ts.map +1 -1
  464. package/dist/infrastructure/azure-sync/azure-auth.js.map +1 -1
  465. package/dist/infrastructure/azure-sync/azure-devops-client.d.ts +4 -3
  466. package/dist/infrastructure/azure-sync/azure-devops-client.d.ts.map +1 -1
  467. package/dist/infrastructure/azure-sync/azure-devops-client.js +47 -14
  468. package/dist/infrastructure/azure-sync/azure-devops-client.js.map +1 -1
  469. package/dist/infrastructure/azure-sync/ollama-llm-adapter.d.ts +30 -0
  470. package/dist/infrastructure/azure-sync/ollama-llm-adapter.d.ts.map +1 -0
  471. package/dist/infrastructure/azure-sync/ollama-llm-adapter.js +162 -0
  472. package/dist/infrastructure/azure-sync/ollama-llm-adapter.js.map +1 -0
  473. package/dist/infrastructure/azure-sync/sqlite-event-repository.d.ts.map +1 -1
  474. package/dist/infrastructure/azure-sync/sqlite-event-repository.js +24 -9
  475. package/dist/infrastructure/azure-sync/sqlite-event-repository.js.map +1 -1
  476. package/dist/infrastructure/azure-sync/sqlite-sync-repository.d.ts.map +1 -1
  477. package/dist/infrastructure/azure-sync/sqlite-sync-repository.js +12 -4
  478. package/dist/infrastructure/azure-sync/sqlite-sync-repository.js.map +1 -1
  479. package/dist/infrastructure/bootstrap/bootstrap-fs-adapter.d.ts +19 -0
  480. package/dist/infrastructure/bootstrap/bootstrap-fs-adapter.d.ts.map +1 -0
  481. package/dist/infrastructure/bootstrap/bootstrap-fs-adapter.js +41 -0
  482. package/dist/infrastructure/bootstrap/bootstrap-fs-adapter.js.map +1 -0
  483. package/dist/infrastructure/config/yaml-config-repository.d.ts +9 -7
  484. package/dist/infrastructure/config/yaml-config-repository.d.ts.map +1 -1
  485. package/dist/infrastructure/config/yaml-config-repository.js +1 -0
  486. package/dist/infrastructure/config/yaml-config-repository.js.map +1 -1
  487. package/dist/infrastructure/config/yaml-config-writer.d.ts +3 -4
  488. package/dist/infrastructure/config/yaml-config-writer.d.ts.map +1 -1
  489. package/dist/infrastructure/config/yaml-config-writer.js +1 -0
  490. package/dist/infrastructure/config/yaml-config-writer.js.map +1 -1
  491. package/dist/infrastructure/context-memory/execution-journal-repository.d.ts.map +1 -1
  492. package/dist/infrastructure/context-memory/execution-journal-repository.js +13 -1
  493. package/dist/infrastructure/context-memory/execution-journal-repository.js.map +1 -1
  494. package/dist/infrastructure/context-memory/note-repository.d.ts.map +1 -1
  495. package/dist/infrastructure/context-memory/note-repository.js +11 -1
  496. package/dist/infrastructure/context-memory/note-repository.js.map +1 -1
  497. package/dist/infrastructure/context-memory/search-repository.d.ts.map +1 -1
  498. package/dist/infrastructure/context-memory/session-repository.d.ts.map +1 -1
  499. package/dist/infrastructure/context-memory/session-repository.js +11 -1
  500. package/dist/infrastructure/context-memory/session-repository.js.map +1 -1
  501. package/dist/infrastructure/context-memory/todo-repository.d.ts.map +1 -1
  502. package/dist/infrastructure/context-memory/todo-repository.js +10 -1
  503. package/dist/infrastructure/context-memory/todo-repository.js.map +1 -1
  504. package/dist/infrastructure/data/data-file-adapter.d.ts +15 -0
  505. package/dist/infrastructure/data/data-file-adapter.d.ts.map +1 -0
  506. package/dist/infrastructure/data/data-file-adapter.js +27 -0
  507. package/dist/infrastructure/data/data-file-adapter.js.map +1 -0
  508. package/dist/infrastructure/database/sqlite-adapter.d.ts +14 -0
  509. package/dist/infrastructure/database/sqlite-adapter.d.ts.map +1 -1
  510. package/dist/infrastructure/database/sqlite-adapter.js.map +1 -1
  511. package/dist/infrastructure/domain-map/llm-analyzer.d.ts +38 -32
  512. package/dist/infrastructure/domain-map/llm-analyzer.d.ts.map +1 -1
  513. package/dist/infrastructure/domain-map/llm-analyzer.js +2 -1
  514. package/dist/infrastructure/domain-map/llm-analyzer.js.map +1 -1
  515. package/dist/infrastructure/domain-map/llm-prompt-factory.d.ts +1 -16
  516. package/dist/infrastructure/domain-map/llm-prompt-factory.d.ts.map +1 -1
  517. package/dist/infrastructure/domain-map/llm-prompt-factory.js +1 -0
  518. package/dist/infrastructure/domain-map/llm-prompt-factory.js.map +1 -1
  519. package/dist/infrastructure/domain-map/lsp-adapter.d.ts +53 -35
  520. package/dist/infrastructure/domain-map/lsp-adapter.d.ts.map +1 -1
  521. package/dist/infrastructure/domain-map/lsp-adapter.js +2 -1
  522. package/dist/infrastructure/domain-map/lsp-adapter.js.map +1 -1
  523. package/dist/infrastructure/domain-map/lsp-configs.d.ts +47 -37
  524. package/dist/infrastructure/domain-map/lsp-configs.d.ts.map +1 -1
  525. package/dist/infrastructure/domain-map/lsp-configs.js +1 -0
  526. package/dist/infrastructure/domain-map/lsp-configs.js.map +1 -1
  527. package/dist/infrastructure/domain-map/lsp-json-rpc.d.ts +18 -58
  528. package/dist/infrastructure/domain-map/lsp-json-rpc.d.ts.map +1 -1
  529. package/dist/infrastructure/domain-map/lsp-json-rpc.js +2 -1
  530. package/dist/infrastructure/domain-map/lsp-json-rpc.js.map +1 -1
  531. package/dist/infrastructure/domain-map/project-scanner.d.ts +8 -7
  532. package/dist/infrastructure/domain-map/project-scanner.d.ts.map +1 -1
  533. package/dist/infrastructure/domain-map/project-scanner.js +2 -1
  534. package/dist/infrastructure/domain-map/project-scanner.js.map +1 -1
  535. package/dist/infrastructure/environment/environment-repository.d.ts +16 -31
  536. package/dist/infrastructure/environment/environment-repository.d.ts.map +1 -1
  537. package/dist/infrastructure/environment/environment-repository.js +2 -1
  538. package/dist/infrastructure/environment/environment-repository.js.map +1 -1
  539. package/dist/infrastructure/environment/scanner-adapter.d.ts +2 -13
  540. package/dist/infrastructure/environment/scanner-adapter.d.ts.map +1 -1
  541. package/dist/infrastructure/environment/scanner-adapter.js +1 -0
  542. package/dist/infrastructure/environment/scanner-adapter.js.map +1 -1
  543. package/dist/infrastructure/kanban/card-repository.d.ts +2 -2
  544. package/dist/infrastructure/kanban/card-repository.d.ts.map +1 -1
  545. package/dist/infrastructure/kanban/card-repository.js +45 -22
  546. package/dist/infrastructure/kanban/card-repository.js.map +1 -1
  547. package/dist/infrastructure/kanban/sprint-repository.d.ts.map +1 -1
  548. package/dist/infrastructure/kanban/sprint-repository.js +14 -1
  549. package/dist/infrastructure/kanban/sprint-repository.js.map +1 -1
  550. package/dist/infrastructure/pipeline/dagger-adapter.d.ts +10 -43
  551. package/dist/infrastructure/pipeline/dagger-adapter.d.ts.map +1 -1
  552. package/dist/infrastructure/pipeline/dagger-adapter.js +1 -0
  553. package/dist/infrastructure/pipeline/dagger-adapter.js.map +1 -1
  554. package/dist/infrastructure/pipeline/dagger-scaffold-generator.d.ts +27 -23
  555. package/dist/infrastructure/pipeline/dagger-scaffold-generator.d.ts.map +1 -1
  556. package/dist/infrastructure/pipeline/dagger-scaffold-generator.js +1 -0
  557. package/dist/infrastructure/pipeline/dagger-scaffold-generator.js.map +1 -1
  558. package/dist/infrastructure/pipeline/index.d.ts +0 -1
  559. package/dist/infrastructure/pipeline/index.d.ts.map +1 -1
  560. package/dist/infrastructure/pipeline/index.js.map +1 -1
  561. package/dist/infrastructure/pipeline/pipeline-template-registry.d.ts +5 -20
  562. package/dist/infrastructure/pipeline/pipeline-template-registry.d.ts.map +1 -1
  563. package/dist/infrastructure/pipeline/pipeline-template-registry.js +1 -0
  564. package/dist/infrastructure/pipeline/pipeline-template-registry.js.map +1 -1
  565. package/dist/infrastructure/pipeline/scaffold-templates-extra.d.ts +0 -8
  566. package/dist/infrastructure/pipeline/scaffold-templates-extra.d.ts.map +1 -1
  567. package/dist/infrastructure/pipeline/scaffold-templates-extra.js +1 -0
  568. package/dist/infrastructure/pipeline/scaffold-templates-extra.js.map +1 -1
  569. package/dist/infrastructure/pipeline/scaffold-templates.d.ts.map +1 -1
  570. package/dist/infrastructure/pipeline/scaffold-templates.js +1 -0
  571. package/dist/infrastructure/pipeline/scaffold-templates.js.map +1 -1
  572. package/dist/infrastructure/pipeline/sqlite-pipeline-repository.d.ts +13 -30
  573. package/dist/infrastructure/pipeline/sqlite-pipeline-repository.d.ts.map +1 -1
  574. package/dist/infrastructure/pipeline/sqlite-pipeline-repository.js +3 -2
  575. package/dist/infrastructure/pipeline/sqlite-pipeline-repository.js.map +1 -1
  576. package/dist/infrastructure/rag/file-discovery.d.ts +11 -0
  577. package/dist/infrastructure/rag/file-discovery.d.ts.map +1 -1
  578. package/dist/infrastructure/rag/file-discovery.js +2 -1
  579. package/dist/infrastructure/rag/file-discovery.js.map +1 -1
  580. package/dist/infrastructure/rag/file-index-registry.d.ts +13 -0
  581. package/dist/infrastructure/rag/file-index-registry.d.ts.map +1 -1
  582. package/dist/infrastructure/rag/file-index-registry.js.map +1 -1
  583. package/dist/infrastructure/rag/ollama-embeddings.d.ts +10 -0
  584. package/dist/infrastructure/rag/ollama-embeddings.d.ts.map +1 -1
  585. package/dist/infrastructure/rag/ollama-embeddings.js.map +1 -1
  586. package/dist/infrastructure/rag/text-splitter.d.ts +10 -0
  587. package/dist/infrastructure/rag/text-splitter.d.ts.map +1 -1
  588. package/dist/infrastructure/rag/text-splitter.js +4 -1
  589. package/dist/infrastructure/rag/text-splitter.js.map +1 -1
  590. package/dist/infrastructure/rag/vectra-adapter.d.ts +10 -0
  591. package/dist/infrastructure/rag/vectra-adapter.d.ts.map +1 -1
  592. package/dist/infrastructure/rag/vectra-adapter.js.map +1 -1
  593. package/dist/infrastructure/token-metrics/token-metrics-repository.d.ts.map +1 -1
  594. package/dist/infrastructure/token-metrics/token-metrics-repository.js +11 -0
  595. package/dist/infrastructure/token-metrics/token-metrics-repository.js.map +1 -1
  596. package/dist/infrastructure/vault/markdown-parser.d.ts +10 -0
  597. package/dist/infrastructure/vault/markdown-parser.d.ts.map +1 -1
  598. package/dist/infrastructure/vault/markdown-parser.js +9 -9
  599. package/dist/infrastructure/vault/markdown-parser.js.map +1 -1
  600. package/dist/infrastructure/vault/vault-fs-adapter.d.ts +11 -0
  601. package/dist/infrastructure/vault/vault-fs-adapter.d.ts.map +1 -1
  602. package/dist/infrastructure/vault/vault-fs-adapter.js.map +1 -1
  603. package/dist/infrastructure/workspace-registry/dependency-repository.d.ts +11 -25
  604. package/dist/infrastructure/workspace-registry/dependency-repository.d.ts.map +1 -1
  605. package/dist/infrastructure/workspace-registry/dependency-repository.js +1 -0
  606. package/dist/infrastructure/workspace-registry/dependency-repository.js.map +1 -1
  607. package/dist/infrastructure/workspace-registry/workspace-repository.d.ts +11 -26
  608. package/dist/infrastructure/workspace-registry/workspace-repository.d.ts.map +1 -1
  609. package/dist/infrastructure/workspace-registry/workspace-repository.js +1 -0
  610. package/dist/infrastructure/workspace-registry/workspace-repository.js.map +1 -1
  611. package/dist/tools/agent-registry-tools.d.ts +16 -0
  612. package/dist/tools/agent-registry-tools.d.ts.map +1 -1
  613. package/dist/tools/agent-registry-tools.js +2 -1
  614. package/dist/tools/agent-registry-tools.js.map +1 -1
  615. package/dist/tools/agent-tools.d.ts +17 -7
  616. package/dist/tools/agent-tools.d.ts.map +1 -1
  617. package/dist/tools/agent-tools.js +158 -206
  618. package/dist/tools/agent-tools.js.map +1 -1
  619. package/dist/tools/azure-sync-event-tools.d.ts +23 -7
  620. package/dist/tools/azure-sync-event-tools.d.ts.map +1 -1
  621. package/dist/tools/azure-sync-event-tools.js +255 -66
  622. package/dist/tools/azure-sync-event-tools.js.map +1 -1
  623. package/dist/tools/azure-sync-pr-tools.d.ts +21 -0
  624. package/dist/tools/azure-sync-pr-tools.d.ts.map +1 -0
  625. package/dist/tools/azure-sync-pr-tools.js +146 -0
  626. package/dist/tools/azure-sync-pr-tools.js.map +1 -0
  627. package/dist/tools/azure-sync-tools.d.ts +22 -8
  628. package/dist/tools/azure-sync-tools.d.ts.map +1 -1
  629. package/dist/tools/azure-sync-tools.js +248 -267
  630. package/dist/tools/azure-sync-tools.js.map +1 -1
  631. package/dist/tools/bootstrap-tools.d.ts +16 -6
  632. package/dist/tools/bootstrap-tools.d.ts.map +1 -1
  633. package/dist/tools/bootstrap-tools.js +123 -143
  634. package/dist/tools/bootstrap-tools.js.map +1 -1
  635. package/dist/tools/config-tools.d.ts +16 -1
  636. package/dist/tools/config-tools.d.ts.map +1 -1
  637. package/dist/tools/config-tools.js +32 -2
  638. package/dist/tools/config-tools.js.map +1 -1
  639. package/dist/tools/context-memory-tools.d.ts +15 -0
  640. package/dist/tools/context-memory-tools.d.ts.map +1 -1
  641. package/dist/tools/context-memory-tools.js +4 -3
  642. package/dist/tools/context-memory-tools.js.map +1 -1
  643. package/dist/tools/data-tools.d.ts +15 -1
  644. package/dist/tools/data-tools.d.ts.map +1 -1
  645. package/dist/tools/data-tools.js +262 -308
  646. package/dist/tools/data-tools.js.map +1 -1
  647. package/dist/tools/data-write-tools.d.ts +20 -0
  648. package/dist/tools/data-write-tools.d.ts.map +1 -0
  649. package/dist/tools/data-write-tools.js +144 -0
  650. package/dist/tools/data-write-tools.js.map +1 -0
  651. package/dist/tools/domain-map-tools.d.ts +19 -36
  652. package/dist/tools/domain-map-tools.d.ts.map +1 -1
  653. package/dist/tools/domain-map-tools.js +81 -85
  654. package/dist/tools/domain-map-tools.js.map +1 -1
  655. package/dist/tools/environment-tools.d.ts +23 -80
  656. package/dist/tools/environment-tools.d.ts.map +1 -1
  657. package/dist/tools/environment-tools.js +109 -97
  658. package/dist/tools/environment-tools.js.map +1 -1
  659. package/dist/tools/governance-tools.d.ts +13 -0
  660. package/dist/tools/governance-tools.d.ts.map +1 -1
  661. package/dist/tools/governance-tools.js.map +1 -1
  662. package/dist/tools/kanban-board-tools.d.ts +12 -3
  663. package/dist/tools/kanban-board-tools.d.ts.map +1 -1
  664. package/dist/tools/kanban-board-tools.js +92 -302
  665. package/dist/tools/kanban-board-tools.js.map +1 -1
  666. package/dist/tools/kanban-card-mutation-tools.d.ts +16 -0
  667. package/dist/tools/kanban-card-mutation-tools.d.ts.map +1 -0
  668. package/dist/tools/kanban-card-mutation-tools.js +168 -0
  669. package/dist/tools/kanban-card-mutation-tools.js.map +1 -0
  670. package/dist/tools/kanban-card-query-tools.d.ts +25 -0
  671. package/dist/tools/kanban-card-query-tools.d.ts.map +1 -0
  672. package/dist/tools/kanban-card-query-tools.js +191 -0
  673. package/dist/tools/kanban-card-query-tools.js.map +1 -0
  674. package/dist/tools/kanban-card-tools.d.ts +13 -0
  675. package/dist/tools/kanban-card-tools.d.ts.map +1 -1
  676. package/dist/tools/kanban-card-tools.js +24 -182
  677. package/dist/tools/kanban-card-tools.js.map +1 -1
  678. package/dist/tools/kanban-gate-tools.d.ts +14 -2
  679. package/dist/tools/kanban-gate-tools.d.ts.map +1 -1
  680. package/dist/tools/kanban-gate-tools.js +78 -77
  681. package/dist/tools/kanban-gate-tools.js.map +1 -1
  682. package/dist/tools/kanban-grooming-tools.d.ts +12 -0
  683. package/dist/tools/kanban-grooming-tools.d.ts.map +1 -1
  684. package/dist/tools/kanban-grooming-tools.js +58 -137
  685. package/dist/tools/kanban-grooming-tools.js.map +1 -1
  686. package/dist/tools/kanban-sprint-tools.d.ts +35 -0
  687. package/dist/tools/kanban-sprint-tools.d.ts.map +1 -0
  688. package/dist/tools/kanban-sprint-tools.js +295 -0
  689. package/dist/tools/kanban-sprint-tools.js.map +1 -0
  690. package/dist/tools/pipeline-tools.d.ts +22 -6
  691. package/dist/tools/pipeline-tools.d.ts.map +1 -1
  692. package/dist/tools/pipeline-tools.js +306 -324
  693. package/dist/tools/pipeline-tools.js.map +1 -1
  694. package/dist/tools/rag-tools.d.ts +19 -0
  695. package/dist/tools/rag-tools.d.ts.map +1 -1
  696. package/dist/tools/rag-tools.js +79 -22
  697. package/dist/tools/rag-tools.js.map +1 -1
  698. package/dist/tools/token-metrics-tools.d.ts +23 -93
  699. package/dist/tools/token-metrics-tools.d.ts.map +1 -1
  700. package/dist/tools/token-metrics-tools.js +249 -199
  701. package/dist/tools/token-metrics-tools.js.map +1 -1
  702. package/dist/tools/vault-manage-tool.d.ts +18 -0
  703. package/dist/tools/vault-manage-tool.d.ts.map +1 -1
  704. package/dist/tools/vault-manage-tool.js +83 -156
  705. package/dist/tools/vault-manage-tool.js.map +1 -1
  706. package/dist/tools/vault-tools.d.ts +25 -0
  707. package/dist/tools/vault-tools.d.ts.map +1 -1
  708. package/dist/tools/vault-tools.js +218 -161
  709. package/dist/tools/vault-tools.js.map +1 -1
  710. package/dist/tools/workspace-registry-tools.d.ts +20 -88
  711. package/dist/tools/workspace-registry-tools.d.ts.map +1 -1
  712. package/dist/tools/workspace-registry-tools.js +78 -83
  713. package/dist/tools/workspace-registry-tools.js.map +1 -1
  714. package/package.json +11 -8
  715. package/scripts/setup/link-local.js +120 -0
  716. package/scripts/setup/setup-linux.sh +16 -6
  717. package/scripts/setup/setup-macos.sh +16 -6
  718. package/scripts/setup/setup-wsl.sh +23 -9
  719. package/templates/agents-md.template.md +130 -237
  720. package/templates/commands/jarvis-agents-md-file.md +7 -0
  721. package/dist/application/azure-sync/index.d.ts +0 -18
  722. package/dist/application/azure-sync/index.d.ts.map +0 -1
  723. package/dist/application/azure-sync/index.js +0 -11
  724. package/dist/application/azure-sync/index.js.map +0 -1
  725. package/dist/application/config/index.d.ts +0 -7
  726. package/dist/application/config/index.d.ts.map +0 -1
  727. package/dist/application/config/index.js +0 -6
  728. package/dist/application/config/index.js.map +0 -1
  729. package/dist/application/environment/dtos.d.ts +0 -74
  730. package/dist/application/environment/dtos.d.ts.map +0 -1
  731. package/dist/application/environment/dtos.js +0 -10
  732. package/dist/application/environment/dtos.js.map +0 -1
  733. package/dist/application/mcp/index.d.ts +0 -10
  734. package/dist/application/mcp/index.d.ts.map +0 -1
  735. package/dist/application/mcp/index.js +0 -8
  736. package/dist/application/mcp/index.js.map +0 -1
  737. package/dist/application/mcp/middleware.d.ts +0 -91
  738. package/dist/application/mcp/middleware.d.ts.map +0 -1
  739. package/dist/application/mcp/middleware.js +0 -84
  740. package/dist/application/mcp/middleware.js.map +0 -1
  741. package/dist/application/mcp/tool-adapter.d.ts +0 -72
  742. package/dist/application/mcp/tool-adapter.d.ts.map +0 -1
  743. package/dist/application/mcp/tool-adapter.js +0 -132
  744. package/dist/application/mcp/tool-adapter.js.map +0 -1
  745. package/dist/application/pipeline/index.d.ts +0 -8
  746. package/dist/application/pipeline/index.d.ts.map +0 -1
  747. package/dist/application/pipeline/index.js +0 -7
  748. package/dist/application/pipeline/index.js.map +0 -1
  749. package/dist/application/wiki-feedback/poll-service.d.ts +0 -56
  750. package/dist/application/wiki-feedback/poll-service.d.ts.map +0 -1
  751. package/dist/application/wiki-feedback/poll-service.js +0 -87
  752. package/dist/application/wiki-feedback/poll-service.js.map +0 -1
  753. package/dist/application/wiki-feedback/use-cases.d.ts +0 -115
  754. package/dist/application/wiki-feedback/use-cases.d.ts.map +0 -1
  755. package/dist/application/wiki-feedback/use-cases.js +0 -271
  756. package/dist/application/wiki-feedback/use-cases.js.map +0 -1
  757. package/dist/cli/config-wizard.d.ts +0 -14
  758. package/dist/cli/config-wizard.d.ts.map +0 -1
  759. package/dist/cli/config-wizard.js +0 -120
  760. package/dist/cli/config-wizard.js.map +0 -1
  761. package/dist/cli/section-editors.d.ts +0 -33
  762. package/dist/cli/section-editors.d.ts.map +0 -1
  763. package/dist/cli/section-editors.js +0 -286
  764. package/dist/cli/section-editors.js.map +0 -1
  765. package/dist/cli/wizard-prompts.d.ts +0 -76
  766. package/dist/cli/wizard-prompts.d.ts.map +0 -1
  767. package/dist/cli/wizard-prompts.js +0 -98
  768. package/dist/cli/wizard-prompts.js.map +0 -1
  769. package/dist/domain/azure-sync/index.d.ts +0 -16
  770. package/dist/domain/azure-sync/index.d.ts.map +0 -1
  771. package/dist/domain/azure-sync/index.js +0 -14
  772. package/dist/domain/azure-sync/index.js.map +0 -1
  773. package/dist/domain/config/index.d.ts +0 -9
  774. package/dist/domain/config/index.d.ts.map +0 -1
  775. package/dist/domain/config/index.js +0 -7
  776. package/dist/domain/config/index.js.map +0 -1
  777. package/dist/domain/domain-map/repositories.d.ts +0 -126
  778. package/dist/domain/domain-map/repositories.d.ts.map +0 -1
  779. package/dist/domain/domain-map/repositories.js +0 -2
  780. package/dist/domain/domain-map/repositories.js.map +0 -1
  781. package/dist/domain/vault/canvas.d.ts +0 -70
  782. package/dist/domain/vault/canvas.d.ts.map +0 -1
  783. package/dist/domain/vault/canvas.js +0 -70
  784. package/dist/domain/vault/canvas.js.map +0 -1
  785. package/dist/domain/vault/timeline.d.ts +0 -53
  786. package/dist/domain/vault/timeline.d.ts.map +0 -1
  787. package/dist/domain/vault/timeline.js +0 -214
  788. package/dist/domain/vault/timeline.js.map +0 -1
  789. package/dist/domain/wiki-feedback/entities.d.ts +0 -101
  790. package/dist/domain/wiki-feedback/entities.d.ts.map +0 -1
  791. package/dist/domain/wiki-feedback/entities.js +0 -154
  792. package/dist/domain/wiki-feedback/entities.js.map +0 -1
  793. package/dist/domain/wiki-feedback/index.d.ts +0 -13
  794. package/dist/domain/wiki-feedback/index.d.ts.map +0 -1
  795. package/dist/domain/wiki-feedback/index.js +0 -11
  796. package/dist/domain/wiki-feedback/index.js.map +0 -1
  797. package/dist/domain/wiki-feedback/ports.d.ts +0 -47
  798. package/dist/domain/wiki-feedback/ports.d.ts.map +0 -1
  799. package/dist/domain/wiki-feedback/ports.js +0 -13
  800. package/dist/domain/wiki-feedback/ports.js.map +0 -1
  801. package/dist/domain/wiki-feedback/repositories.d.ts +0 -33
  802. package/dist/domain/wiki-feedback/repositories.d.ts.map +0 -1
  803. package/dist/domain/wiki-feedback/repositories.js +0 -12
  804. package/dist/domain/wiki-feedback/repositories.js.map +0 -1
  805. package/dist/domain/wiki-feedback/value-objects.d.ts +0 -74
  806. package/dist/domain/wiki-feedback/value-objects.d.ts.map +0 -1
  807. package/dist/domain/wiki-feedback/value-objects.js +0 -144
  808. package/dist/domain/wiki-feedback/value-objects.js.map +0 -1
  809. package/dist/infrastructure/azure-sync/index.d.ts +0 -10
  810. package/dist/infrastructure/azure-sync/index.d.ts.map +0 -1
  811. package/dist/infrastructure/azure-sync/index.js +0 -13
  812. package/dist/infrastructure/azure-sync/index.js.map +0 -1
  813. package/dist/infrastructure/config/index.d.ts +0 -6
  814. package/dist/infrastructure/config/index.d.ts.map +0 -1
  815. package/dist/infrastructure/config/index.js +0 -6
  816. package/dist/infrastructure/config/index.js.map +0 -1
  817. package/dist/infrastructure/wiki-feedback/azure-wiki-client.d.ts +0 -36
  818. package/dist/infrastructure/wiki-feedback/azure-wiki-client.d.ts.map +0 -1
  819. package/dist/infrastructure/wiki-feedback/azure-wiki-client.js +0 -106
  820. package/dist/infrastructure/wiki-feedback/azure-wiki-client.js.map +0 -1
  821. package/dist/infrastructure/wiki-feedback/sqlite-feedback-repository.d.ts +0 -31
  822. package/dist/infrastructure/wiki-feedback/sqlite-feedback-repository.d.ts.map +0 -1
  823. package/dist/infrastructure/wiki-feedback/sqlite-feedback-repository.js +0 -149
  824. package/dist/infrastructure/wiki-feedback/sqlite-feedback-repository.js.map +0 -1
  825. package/dist/mcp-server.d.ts +0 -3
  826. package/dist/mcp-server.d.ts.map +0 -1
  827. package/dist/mcp-server.js +0 -373
  828. package/dist/mcp-server.js.map +0 -1
  829. package/dist/tools/wiki-feedback-tools.d.ts +0 -9
  830. package/dist/tools/wiki-feedback-tools.d.ts.map +0 -1
  831. package/dist/tools/wiki-feedback-tools.js +0 -189
  832. package/dist/tools/wiki-feedback-tools.js.map +0 -1
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Governance DTOs (Data Transfer Objects)
3
+ *
4
+ * Plain objects for crossing layer boundaries in the governance context.
5
+ * Tools -> Use Cases (request DTOs), Use Cases -> Tools (response DTOs).
6
+ *
7
+ * SOLID: SRP - DTOs carry data, no logic
8
+ * DDD: Application layer boundary objects
9
+ */
10
+ export interface ValidateToolRequest {
11
+ readonly toolName: string;
12
+ readonly args: Record<string, unknown>;
13
+ }
14
+ export interface ViolationResponse {
15
+ readonly rule: string;
16
+ readonly message: string;
17
+ readonly severity: string;
18
+ }
19
+ export interface ValidationResponse {
20
+ readonly allowed: boolean;
21
+ readonly violations: readonly ViolationResponse[];
22
+ readonly errorCount: number;
23
+ readonly warningCount: number;
24
+ }
25
+ export interface PolicyListResponse {
26
+ readonly policyIds: readonly string[];
27
+ readonly totalPolicies: number;
28
+ }
29
+ //# sourceMappingURL=dtos.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dtos.d.ts","sourceRoot":"","sources":["../../../src/application/governance/dtos.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxC;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAClD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Governance DTOs (Data Transfer Objects)
3
+ *
4
+ * Plain objects for crossing layer boundaries in the governance context.
5
+ * Tools -> Use Cases (request DTOs), Use Cases -> Tools (response DTOs).
6
+ *
7
+ * SOLID: SRP - DTOs carry data, no logic
8
+ * DDD: Application layer boundary objects
9
+ */
10
+ export {};
11
+ //# sourceMappingURL=dtos.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dtos.js","sourceRoot":"","sources":["../../../src/application/governance/dtos.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG"}
@@ -11,25 +11,7 @@
11
11
  */
12
12
  import type { Result } from "../../domain/shared/value-objects.js";
13
13
  import type { PolicyValidationService } from "../../domain/governance/services.js";
14
- export interface ValidateToolRequest {
15
- readonly toolName: string;
16
- readonly args: Record<string, unknown>;
17
- }
18
- export interface ViolationResponse {
19
- readonly rule: string;
20
- readonly message: string;
21
- readonly severity: string;
22
- }
23
- export interface ValidationResponse {
24
- readonly allowed: boolean;
25
- readonly violations: readonly ViolationResponse[];
26
- readonly errorCount: number;
27
- readonly warningCount: number;
28
- }
29
- export interface PolicyListResponse {
30
- readonly policyIds: readonly string[];
31
- readonly totalPolicies: number;
32
- }
14
+ import type { ValidateToolRequest, ValidationResponse, PolicyListResponse } from "./dtos.js";
33
15
  export declare class GovernanceUseCases {
34
16
  private readonly validationService;
35
17
  constructor(validationService: PolicyValidationService);
@@ -1 +1 @@
1
- {"version":3,"file":"validation-use-cases.d.ts","sourceRoot":"","sources":["../../../src/application/governance/validation-use-cases.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sCAAsC,CAAC;AAEnE,OAAO,KAAK,EAAE,uBAAuB,EAAoB,MAAM,qCAAqC,CAAC;AAKrG,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxC;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAClD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAID,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;gBAAjB,iBAAiB,EAAE,uBAAuB;IAG7D;;OAEG;IACG,YAAY,CAChB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAatC;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;CAU1D"}
1
+ {"version":3,"file":"validation-use-cases.d.ts","sourceRoot":"","sources":["../../../src/application/governance/validation-use-cases.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sCAAsC,CAAC;AACnE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AACnF,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAK7F,qBAAa,kBAAkB;IACjB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;gBAAjB,iBAAiB,EAAE,uBAAuB;IAEvE;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAcrF;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;CAU1D"}
@@ -1,3 +1,14 @@
1
+ /**
2
+ * Governance Validation Use Cases
3
+ *
4
+ * Application layer orchestration for governance operations.
5
+ * Provides a clean interface for tools and hooks to validate
6
+ * tool invocations against governance policies.
7
+ *
8
+ * SOLID: SRP - governance validation only
9
+ * SOLID: DIP - depends on domain service interface
10
+ * DDD: Application Service pattern
11
+ */
1
12
  import { ok, fail } from "../../domain/shared/value-objects.js";
2
13
  // ── Use Cases ─────────────────────────────────────────────────────────
3
14
  export class GovernanceUseCases {
@@ -1 +1 @@
1
- {"version":3,"file":"validation-use-cases.js","sourceRoot":"","sources":["../../../src/application/governance/validation-use-cases.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,sCAAsC,CAAC;AA6BhE,yEAAyE;AAEzE,MAAM,OAAO,kBAAkB;IAEV;IADnB,YACmB,iBAA0C;QAA1C,sBAAiB,GAAjB,iBAAiB,CAAyB;IAC1D,CAAC;IAEJ;;OAEG;IACH,KAAK,CAAC,YAAY,CAChB,OAA4B;QAE5B,IAAI,CAAC;YACH,MAAM,GAAG,GAA0B;gBACjC,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;aACnB,CAAC;YACF,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YACpD,OAAO,EAAE,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,sBAAsB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY;QAChB,IAAI,CAAC;YACH,OAAO,EAAE,CAAC;gBACR,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAAC,SAAS;gBAC3C,aAAa,EAAE,IAAI,CAAC,iBAAiB,CAAC,WAAW;aAClD,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,4BAA4B,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;CACF;AAED,SAAS,oBAAoB,CAAC,MAAwB;IACpD,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACxC,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,QAAQ,EAAE,CAAC,CAAC,QAAQ;SACrB,CAAC,CAAC;QACH,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM;QAChC,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;KACrC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"validation-use-cases.js","sourceRoot":"","sources":["../../../src/application/governance/validation-use-cases.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,sCAAsC,CAAC;AAEhE,yEAAyE;AAEzE,MAAM,OAAO,kBAAkB;IACA;IAA7B,YAA6B,iBAA0C;QAA1C,sBAAiB,GAAjB,iBAAiB,CAAyB;IAAG,CAAC;IAE3E;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,OAA4B;QAC7C,IAAI,CAAC;YACH,MAAM,GAAG,GAAG;gBACV,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;aACnB,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YACpD,OAAO,EAAE,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,sBAAsB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY;QAChB,IAAI,CAAC;YACH,OAAO,EAAE,CAAC;gBACR,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAAC,SAAS;gBAC3C,aAAa,EAAE,IAAI,CAAC,iBAAiB,CAAC,WAAW;aAClD,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,4BAA4B,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;CACF;AAED,SAAS,oBAAoB,CAAC,MAAuD;IACnF,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACxC,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,QAAQ,EAAE,CAAC,CAAC,QAAQ;SACrB,CAAC,CAAC;QACH,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM;QAChC,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;KACrC,CAAC;AACJ,CAAC"}
@@ -1,21 +1,17 @@
1
1
  /**
2
2
  * Board Use Cases
3
3
  *
4
- * Application layer orchestration for board-level operations:
5
- * - Full board view (all columns with cards)
6
- * - Board statistics (card counts per status)
7
- * - WIP limit checking
4
+ * Application layer for Kanban board view operations.
5
+ * Provides full board view, statistics, and WIP limit monitoring.
8
6
  *
9
- * These are read-heavy use cases that compose data from multiple
10
- * sources (CardRepository + CardDomainService).
11
- *
12
- * SOLID: SRP - board view and stats only
13
- * SOLID: DIP - depends on repository and domain service interfaces
14
- * DDD: Application Service - read model composition
7
+ * SOLID: SRP - board view operations only
8
+ * SOLID: DIP - depends on repository and service interfaces
9
+ * DDD: Application Service pattern
15
10
  */
16
11
  import type { Result } from "../../domain/shared/value-objects.js";
17
12
  import type { CardRepository } from "../../domain/kanban/repositories.js";
18
13
  import type { CardDomainService } from "../../domain/kanban/services.js";
14
+ import { CardStatus } from "../../domain/kanban/value-objects.js";
19
15
  import type { GetBoardRequest, BoardResponse, BoardStatsResponse } from "./dtos.js";
20
16
  export declare class BoardUseCases {
21
17
  private readonly cardRepo;
@@ -33,13 +29,11 @@ export declare class BoardUseCases {
33
29
  /**
34
30
  * Check WIP limits for the board. Returns columns that are at or over limit.
35
31
  */
36
- checkWipLimits(request: GetBoardRequest): Promise<Result<readonly WipViolation[]>>;
37
- }
38
- /** WIP limit violation info. */
39
- export interface WipViolation {
40
- readonly status: string;
41
- readonly count: number;
42
- readonly limit: number;
43
- readonly overBy: number;
32
+ checkWipLimits(request: GetBoardRequest): Promise<Result<readonly {
33
+ status: CardStatus;
34
+ count: number;
35
+ limit: number;
36
+ overBy: number;
37
+ }[]>>;
44
38
  }
45
39
  //# sourceMappingURL=board-use-cases.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"board-use-cases.d.ts","sourceRoot":"","sources":["../../../src/application/kanban/board-use-cases.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sCAAsC,CAAC;AAInE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,KAAK,EACV,eAAe,EACf,aAAa,EAEb,kBAAkB,EAEnB,MAAM,WAAW,CAAC;AAyCnB,qBAAa,aAAa;IAEtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,WAAW;gBADX,QAAQ,EAAE,cAAc,EACxB,WAAW,EAAE,iBAAiB;IAGjD;;;OAGG;IACG,QAAQ,CACZ,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IA0CjC;;OAEG;IACG,aAAa,CACjB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAsBtC;;OAEG;IACG,cAAc,CAClB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,MAAM,CAAC,SAAS,YAAY,EAAE,CAAC,CAAC;CAyB5C;AAED,gCAAgC;AAChC,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB"}
1
+ {"version":3,"file":"board-use-cases.d.ts","sourceRoot":"","sources":["../../../src/application/kanban/board-use-cases.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sCAAsC,CAAC;AAEnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEzE,OAAO,EAAE,UAAU,EAAsB,MAAM,sCAAsC,CAAC;AACtF,OAAO,KAAK,EACV,eAAe,EACf,aAAa,EACb,kBAAkB,EACnB,MAAM,WAAW,CAAC;AAGnB,qBAAa,aAAa;IAEtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,WAAW;gBADX,QAAQ,EAAE,cAAc,EACxB,WAAW,EAAE,iBAAiB;IAGjD;;;OAGG;IACG,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IA0CxE;;OAEG;IACG,aAAa,CACjB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAsBtC;;OAEG;IACG,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CACrD,MAAM,CACJ,SAAS;QACP,MAAM,EAAE,UAAU,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,EAAE,CACJ,CACF;CAyBF"}
@@ -1,43 +1,16 @@
1
+ /**
2
+ * Board Use Cases
3
+ *
4
+ * Application layer for Kanban board view operations.
5
+ * Provides full board view, statistics, and WIP limit monitoring.
6
+ *
7
+ * SOLID: SRP - board view operations only
8
+ * SOLID: DIP - depends on repository and service interfaces
9
+ * DDD: Application Service pattern
10
+ */
1
11
  import { WorkspaceId, ok, fail } from "../../domain/shared/value-objects.js";
2
12
  import { CardStatus, DEFAULT_WIP_LIMITS } from "../../domain/kanban/value-objects.js";
3
- /** Maps a Card entity to a CardResponse DTO. */
4
- function toCardResponse(card) {
5
- return {
6
- id: card.id.value,
7
- workspace: card.workspace.value,
8
- title: card.title,
9
- status: card.status,
10
- priority: card.priority,
11
- description: card.description,
12
- epicId: card.epicId?.value,
13
- sprintId: card.sprintId?.value,
14
- storyPoints: card.storyPoints,
15
- assignedAgent: card.assignedAgent,
16
- acceptanceCriteria: card.acceptanceCriteria.map((ac) => ({
17
- description: ac.description,
18
- met: ac.met,
19
- })),
20
- dependsOn: card.dependsOn.map((id) => id.value),
21
- blockedBy: card.blockedBy.map((id) => id.value),
22
- scopeDocPath: card.scopeDocPath?.value,
23
- reviewIterations: card.reviewIterations,
24
- groomingCompleted: card.groomingCompleted,
25
- createdAt: card.createdAt.toISO(),
26
- startedAt: card.startedAt?.toISO(),
27
- completedAt: card.completedAt?.toISO(),
28
- pipelineId: card.pipelineId,
29
- gateTasks: card.gateTasks.map((gt) => ({
30
- description: gt.description,
31
- phase: gt.phase,
32
- required: gt.required,
33
- autoVerify: gt.autoVerify,
34
- met: gt.met,
35
- evidence: gt.evidence,
36
- metAt: gt.metAt,
37
- })),
38
- lastTransitionAt: card.lastTransitionAt?.toISO(),
39
- };
40
- }
13
+ import { toCardResponse } from "./dtos.js";
41
14
  export class BoardUseCases {
42
15
  cardRepo;
43
16
  cardService;
@@ -1 +1 @@
1
- {"version":3,"file":"board-use-cases.js","sourceRoot":"","sources":["../../../src/application/kanban/board-use-cases.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"board-use-cases.js","sourceRoot":"","sources":["../../../src/application/kanban/board-use-cases.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Card Gate & Pipeline Use Cases
3
+ *
4
+ * Application layer operations for gate task management and pipeline linking.
5
+ * SRP split from card-use-cases.ts.
6
+ *
7
+ * SOLID: SRP — gate/pipeline operations only
8
+ * SOLID: DIP — depends on repository interface
9
+ * DDD: Application Service pattern
10
+ */
11
+ import type { Result } from "../../domain/shared/value-objects.js";
12
+ import type { CardRepository } from "../../domain/kanban/repositories.js";
13
+ import type { CardResponse, MeetGateTaskRequest, ListGateTasksRequest, GateTaskResponse, LinkPipelineRequest } from "./dtos.js";
14
+ export declare class CardGateUseCases {
15
+ private readonly cardRepo;
16
+ constructor(cardRepo: CardRepository);
17
+ /** Meet a gate task with evidence. */
18
+ meetGateTask(request: MeetGateTaskRequest): Promise<Result<CardResponse>>;
19
+ /** List gate tasks for a card. */
20
+ listGateTasks(request: ListGateTasksRequest): Promise<Result<readonly GateTaskResponse[]>>;
21
+ /** Link a card to a pipeline run. */
22
+ linkPipeline(request: LinkPipelineRequest): Promise<Result<CardResponse>>;
23
+ }
24
+ //# sourceMappingURL=card-gate-use-cases.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"card-gate-use-cases.d.ts","sourceRoot":"","sources":["../../../src/application/kanban/card-gate-use-cases.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sCAAsC,CAAC;AAEnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAE1E,OAAO,KAAK,EACV,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,WAAW,CAAC;AAGnB,qBAAa,gBAAgB;IACf,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAAR,QAAQ,EAAE,cAAc;IAErD,sCAAsC;IAChC,YAAY,CAChB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAchC,kCAAkC;IAC5B,aAAa,CACjB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,MAAM,CAAC,SAAS,gBAAgB,EAAE,CAAC,CAAC;IAsB/C,qCAAqC;IAC/B,YAAY,CAChB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;CAajC"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Card Gate & Pipeline Use Cases
3
+ *
4
+ * Application layer operations for gate task management and pipeline linking.
5
+ * SRP split from card-use-cases.ts.
6
+ *
7
+ * SOLID: SRP — gate/pipeline operations only
8
+ * SOLID: DIP — depends on repository interface
9
+ * DDD: Application Service pattern
10
+ */
11
+ import { ok, fail } from "../../domain/shared/value-objects.js";
12
+ import { CardId } from "../../domain/kanban/value-objects.js";
13
+ import { toCardResponse } from "./dtos.js";
14
+ export class CardGateUseCases {
15
+ cardRepo;
16
+ constructor(cardRepo) {
17
+ this.cardRepo = cardRepo;
18
+ }
19
+ /** Meet a gate task with evidence. */
20
+ async meetGateTask(request) {
21
+ try {
22
+ const cardId = CardId.from(request.cardId);
23
+ const card = await this.cardRepo.findById(cardId);
24
+ if (card === null)
25
+ return fail(`Card not found: ${request.cardId}`);
26
+ card.meetGateTask(request.index, request.evidence);
27
+ await this.cardRepo.save(card);
28
+ return ok(toCardResponse(card));
29
+ }
30
+ catch (error) {
31
+ return fail(`Failed to meet gate task: ${String(error)}`);
32
+ }
33
+ }
34
+ /** List gate tasks for a card. */
35
+ async listGateTasks(request) {
36
+ try {
37
+ const cardId = CardId.from(request.cardId);
38
+ const card = await this.cardRepo.findById(cardId);
39
+ if (card === null)
40
+ return fail(`Card not found: ${request.cardId}`);
41
+ return ok(card.gateTasks.map((gt) => ({
42
+ description: gt.description,
43
+ phase: gt.phase,
44
+ required: gt.required,
45
+ autoVerify: gt.autoVerify,
46
+ met: gt.met,
47
+ evidence: gt.evidence,
48
+ metAt: gt.metAt,
49
+ })));
50
+ }
51
+ catch (error) {
52
+ return fail(`Failed to list gate tasks: ${String(error)}`);
53
+ }
54
+ }
55
+ /** Link a card to a pipeline run. */
56
+ async linkPipeline(request) {
57
+ try {
58
+ const cardId = CardId.from(request.cardId);
59
+ const card = await this.cardRepo.findById(cardId);
60
+ if (card === null)
61
+ return fail(`Card not found: ${request.cardId}`);
62
+ card.linkPipeline(request.pipelineId);
63
+ await this.cardRepo.save(card);
64
+ return ok(toCardResponse(card));
65
+ }
66
+ catch (error) {
67
+ return fail(`Failed to link pipeline: ${String(error)}`);
68
+ }
69
+ }
70
+ }
71
+ //# sourceMappingURL=card-gate-use-cases.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"card-gate-use-cases.js","sourceRoot":"","sources":["../../../src/application/kanban/card-gate-use-cases.ts"],"names":[],"mappings":"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"}
@@ -10,9 +10,10 @@
10
10
  * DDD: Application Service pattern
11
11
  */
12
12
  import type { Result } from "../../domain/shared/value-objects.js";
13
- import type { CardRepository } from "../../domain/kanban/repositories.js";
13
+ import type { CardRepository, SprintRepository, EpicRepository } from "../../domain/kanban/repositories.js";
14
14
  import type { CardDomainService } from "../../domain/kanban/services.js";
15
- import type { CreateCardRequest, MoveCardRequest, GetCardRequest, ListCardsRequest, AssignCardAgentRequest, AssignCardSprintRequest, AssignCardEpicRequest, SetStoryPointsRequest, AddAcceptanceCriterionRequest, MeetAcceptanceCriterionRequest, DeleteCardRequest, SetScopeDocPathRequest, AddDependencyRequest, RemoveDependencyRequest, ValidateGroomingRequest, GroomingValidationResponse, CardResponse, LinkPipelineRequest, MeetGateTaskRequest, ListGateTasksRequest, GateTaskResponse } from "./dtos.js";
15
+ import type { CreateCardRequest, MoveCardRequest, GetCardRequest, ListCardsRequest, AssignCardAgentRequest, AssignCardSprintRequest, AssignCardEpicRequest, SetStoryPointsRequest, AddAcceptanceCriterionRequest, MeetAcceptanceCriterionRequest, DeleteCardRequest, SetScopeDocPathRequest, AddDependencyRequest, RemoveDependencyRequest, ValidateGroomingRequest, GroomingValidationResponse, CardResponse, UpdateCardRequest } from "./dtos.js";
16
+ export { CardGateUseCases } from "./card-gate-use-cases.js";
16
17
  /**
17
18
  * Callback to look up pipeline status by ID.
18
19
  * Returns the pipeline status string, or undefined if not found.
@@ -38,7 +39,9 @@ export declare class CardUseCases {
38
39
  private readonly cardService;
39
40
  private readonly pipelineStatusProvider?;
40
41
  private readonly onCardDone?;
41
- constructor(cardRepo: CardRepository, cardService: CardDomainService, pipelineStatusProvider?: PipelineStatusProvider | undefined, onCardDone?: CardDoneCallback | undefined);
42
+ private readonly sprintRepo?;
43
+ private readonly epicRepo?;
44
+ constructor(cardRepo: CardRepository, cardService: CardDomainService, pipelineStatusProvider?: PipelineStatusProvider | undefined, onCardDone?: CardDoneCallback | undefined, sprintRepo?: SprintRepository | undefined, epicRepo?: EpicRepository | undefined);
42
45
  createCard(request: CreateCardRequest): Promise<Result<CardResponse>>;
43
46
  moveCard(request: MoveCardRequest): Promise<Result<CardResponse>>;
44
47
  getCard(request: GetCardRequest): Promise<Result<CardResponse | null>>;
@@ -50,17 +53,12 @@ export declare class CardUseCases {
50
53
  addAcceptanceCriterion(request: AddAcceptanceCriterionRequest): Promise<Result<CardResponse>>;
51
54
  meetAcceptanceCriterion(request: MeetAcceptanceCriterionRequest): Promise<Result<CardResponse>>;
52
55
  setScopeDocPath(request: SetScopeDocPathRequest): Promise<Result<CardResponse>>;
56
+ updateCard(request: UpdateCardRequest): Promise<Result<CardResponse>>;
53
57
  addDependsOn(request: AddDependencyRequest): Promise<Result<CardResponse>>;
54
58
  removeDependsOn(request: RemoveDependencyRequest): Promise<Result<CardResponse>>;
55
59
  addBlockedBy(request: AddDependencyRequest): Promise<Result<CardResponse>>;
56
60
  removeBlockedBy(request: RemoveDependencyRequest): Promise<Result<CardResponse>>;
57
61
  validateGrooming(request: ValidateGroomingRequest): Promise<Result<GroomingValidationResponse>>;
58
62
  deleteCard(request: DeleteCardRequest): Promise<Result<string>>;
59
- /** Meet a gate task with evidence. */
60
- meetGateTask(request: MeetGateTaskRequest): Promise<Result<CardResponse>>;
61
- /** List gate tasks for a card. */
62
- listGateTasks(request: ListGateTasksRequest): Promise<Result<readonly GateTaskResponse[]>>;
63
- /** Link a card to a pipeline run. */
64
- linkPipeline(request: LinkPipelineRequest): Promise<Result<CardResponse>>;
65
63
  }
66
64
  //# sourceMappingURL=card-use-cases.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"card-use-cases.d.ts","sourceRoot":"","sources":["../../../src/application/kanban/card-use-cases.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"card-use-cases.d.ts","sourceRoot":"","sources":["../../../src/application/kanban/card-use-cases.ts"],"names":[],"mappings":"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"}
@@ -1,47 +1,23 @@
1
+ /**
2
+ * Card Use Cases
3
+ *
4
+ * Application layer orchestration for card lifecycle operations.
5
+ * Converts DTOs <-> domain types, delegates to CardDomainService
6
+ * and CardRepository for creation.
7
+ *
8
+ * SOLID: SRP - card operations only
9
+ * SOLID: DIP - depends on domain service + repository interfaces
10
+ * DDD: Application Service pattern
11
+ */
1
12
  import { WorkspaceId, ok, fail } from "../../domain/shared/value-objects.js";
2
13
  import { Card } from "../../domain/kanban/entities.js";
3
14
  import { CardId, CardStatus, Priority, EpicId, SprintId, } from "../../domain/kanban/value-objects.js";
4
15
  import { isValidStoryPoints } from "../../domain/kanban/value-objects.js";
5
16
  import { ScopeDocPath } from "../../domain/kanban/value-objects.js";
6
17
  import { GroomingValidator } from "../../domain/kanban/grooming.js";
7
- /** Maps a Card entity to a CardResponse DTO. */
8
- function toCardResponse(card) {
9
- return {
10
- id: card.id.value,
11
- workspace: card.workspace.value,
12
- title: card.title,
13
- status: card.status,
14
- priority: card.priority,
15
- description: card.description,
16
- epicId: card.epicId?.value,
17
- sprintId: card.sprintId?.value,
18
- storyPoints: card.storyPoints,
19
- assignedAgent: card.assignedAgent,
20
- acceptanceCriteria: card.acceptanceCriteria.map((ac) => ({
21
- description: ac.description,
22
- met: ac.met,
23
- })),
24
- dependsOn: card.dependsOn.map((id) => id.value),
25
- blockedBy: card.blockedBy.map((id) => id.value),
26
- scopeDocPath: card.scopeDocPath?.value,
27
- reviewIterations: card.reviewIterations,
28
- groomingCompleted: card.groomingCompleted,
29
- createdAt: card.createdAt.toISO(),
30
- startedAt: card.startedAt?.toISO(),
31
- completedAt: card.completedAt?.toISO(),
32
- pipelineId: card.pipelineId,
33
- gateTasks: card.gateTasks.map((gt) => ({
34
- description: gt.description,
35
- phase: gt.phase,
36
- required: gt.required,
37
- autoVerify: gt.autoVerify,
38
- met: gt.met,
39
- evidence: gt.evidence,
40
- metAt: gt.metAt,
41
- })),
42
- lastTransitionAt: card.lastTransitionAt?.toISO(),
43
- };
44
- }
18
+ import { toCardResponse } from "./dtos.js";
19
+ // Re-export gate use cases for backwards compatibility
20
+ export { CardGateUseCases } from "./card-gate-use-cases.js";
45
21
  /** Validate CardStatus string. */
46
22
  function parseCardStatus(value) {
47
23
  const valid = Object.values(CardStatus);
@@ -57,11 +33,15 @@ export class CardUseCases {
57
33
  cardService;
58
34
  pipelineStatusProvider;
59
35
  onCardDone;
60
- constructor(cardRepo, cardService, pipelineStatusProvider, onCardDone) {
36
+ sprintRepo;
37
+ epicRepo;
38
+ constructor(cardRepo, cardService, pipelineStatusProvider, onCardDone, sprintRepo, epicRepo) {
61
39
  this.cardRepo = cardRepo;
62
40
  this.cardService = cardService;
63
41
  this.pipelineStatusProvider = pipelineStatusProvider;
64
42
  this.onCardDone = onCardDone;
43
+ this.sprintRepo = sprintRepo;
44
+ this.epicRepo = epicRepo;
65
45
  }
66
46
  async createCard(request) {
67
47
  try {
@@ -179,6 +159,13 @@ export class CardUseCases {
179
159
  async assignSprint(request) {
180
160
  const cardId = CardId.from(request.cardId);
181
161
  const sprintId = SprintId.from(request.sprintId);
162
+ // Validate sprint exists if repo is available
163
+ if (this.sprintRepo !== undefined) {
164
+ const sprint = await this.sprintRepo.findById(sprintId);
165
+ if (sprint === null) {
166
+ return fail(`Sprint not found: ${request.sprintId}`);
167
+ }
168
+ }
182
169
  const result = await this.cardService.assignToSprint(cardId, sprintId);
183
170
  if (!result.success)
184
171
  return fail(result.error);
@@ -187,6 +174,13 @@ export class CardUseCases {
187
174
  async assignEpic(request) {
188
175
  const cardId = CardId.from(request.cardId);
189
176
  const epicId = EpicId.from(request.epicId);
177
+ // Validate epic exists if repo is available
178
+ if (this.epicRepo !== undefined) {
179
+ const epic = await this.epicRepo.findById(epicId);
180
+ if (epic === null) {
181
+ return fail(`Epic not found: ${request.epicId}`);
182
+ }
183
+ }
190
184
  const result = await this.cardService.assignToEpic(cardId, epicId);
191
185
  if (!result.success)
192
186
  return fail(result.error);
@@ -246,6 +240,33 @@ export class CardUseCases {
246
240
  return fail(`Failed to set scope doc path: ${String(error)}`);
247
241
  }
248
242
  }
243
+ async updateCard(request) {
244
+ try {
245
+ const cardId = CardId.from(request.cardId);
246
+ const card = await this.cardRepo.findById(cardId);
247
+ if (card === null)
248
+ return fail(`Card not found: ${request.cardId}`);
249
+ if (request.title !== undefined) {
250
+ card.setTitle(request.title);
251
+ }
252
+ if (request.description !== undefined) {
253
+ card.setDescription(request.description);
254
+ }
255
+ if (request.priority !== undefined) {
256
+ const parsed = parsePriority(request.priority);
257
+ if (parsed === null) {
258
+ return fail(`Invalid priority: "${request.priority}". ` +
259
+ `Valid: ${Object.values(Priority).join(", ")}`);
260
+ }
261
+ card.setPriority(parsed);
262
+ }
263
+ await this.cardRepo.save(card);
264
+ return ok(toCardResponse(card));
265
+ }
266
+ catch (error) {
267
+ return fail(`Failed to update card: ${String(error)}`);
268
+ }
269
+ }
249
270
  async addDependsOn(request) {
250
271
  try {
251
272
  const cardId = CardId.from(request.cardId);
@@ -339,58 +360,5 @@ export class CardUseCases {
339
360
  return fail(`Failed to delete card: ${String(error)}`);
340
361
  }
341
362
  }
342
- // ── Gate Task Operations ──────────────────────────────────────────
343
- /** Meet a gate task with evidence. */
344
- async meetGateTask(request) {
345
- try {
346
- const cardId = CardId.from(request.cardId);
347
- const card = await this.cardRepo.findById(cardId);
348
- if (card === null)
349
- return fail(`Card not found: ${request.cardId}`);
350
- card.meetGateTask(request.index, request.evidence);
351
- await this.cardRepo.save(card);
352
- return ok(toCardResponse(card));
353
- }
354
- catch (error) {
355
- return fail(`Failed to meet gate task: ${String(error)}`);
356
- }
357
- }
358
- /** List gate tasks for a card. */
359
- async listGateTasks(request) {
360
- try {
361
- const cardId = CardId.from(request.cardId);
362
- const card = await this.cardRepo.findById(cardId);
363
- if (card === null)
364
- return fail(`Card not found: ${request.cardId}`);
365
- return ok(card.gateTasks.map((gt) => ({
366
- description: gt.description,
367
- phase: gt.phase,
368
- required: gt.required,
369
- autoVerify: gt.autoVerify,
370
- met: gt.met,
371
- evidence: gt.evidence,
372
- metAt: gt.metAt,
373
- })));
374
- }
375
- catch (error) {
376
- return fail(`Failed to list gate tasks: ${String(error)}`);
377
- }
378
- }
379
- // ── Pipeline Linking ──────────────────────────────────────────────
380
- /** Link a card to a pipeline run. */
381
- async linkPipeline(request) {
382
- try {
383
- const cardId = CardId.from(request.cardId);
384
- const card = await this.cardRepo.findById(cardId);
385
- if (card === null)
386
- return fail(`Card not found: ${request.cardId}`);
387
- card.linkPipeline(request.pipelineId);
388
- await this.cardRepo.save(card);
389
- return ok(toCardResponse(card));
390
- }
391
- catch (error) {
392
- return fail(`Failed to link pipeline: ${String(error)}`);
393
- }
394
- }
395
363
  }
396
364
  //# sourceMappingURL=card-use-cases.js.map