devchain-cli 0.21.0 → 0.22.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 (377) hide show
  1. package/README.md +1 -0
  2. package/dist/drizzle/0073_integration_storage.sql +27 -0
  3. package/dist/drizzle/0074_black_drax.sql +7 -0
  4. package/dist/drizzle/0075_misty_franklin_richards.sql +37 -0
  5. package/dist/drizzle/0076_epic_time_accounting.sql +48 -0
  6. package/dist/drizzle/meta/0073_snapshot.json +6247 -0
  7. package/dist/drizzle/meta/0074_snapshot.json +6299 -0
  8. package/dist/drizzle/meta/0075_snapshot.json +6563 -0
  9. package/dist/drizzle/meta/0076_snapshot.json +6913 -0
  10. package/dist/drizzle/meta/_journal.json +28 -0
  11. package/dist/node_modules/@devchain/shared/mobile-rpc-contract/index.d.ts +27 -1
  12. package/dist/node_modules/@devchain/shared/mobile-rpc-contract/index.d.ts.map +1 -1
  13. package/dist/node_modules/@devchain/shared/mobile-rpc-contract/index.js +15 -0
  14. package/dist/node_modules/@devchain/shared/mobile-rpc-contract/index.js.map +1 -1
  15. package/dist/node_modules/@devchain/shared/schemas/export-schema.d.ts +52 -52
  16. package/dist/node_modules/@devchain/shared/tsconfig.tsbuildinfo +1 -1
  17. package/dist/server/app.main.module.js +4 -0
  18. package/dist/server/app.main.module.js.map +1 -1
  19. package/dist/server/app.normal.module.js +2 -0
  20. package/dist/server/app.normal.module.js.map +1 -1
  21. package/dist/server/common/config/container-scope.d.ts +11 -0
  22. package/dist/server/common/config/container-scope.js +37 -0
  23. package/dist/server/common/config/container-scope.js.map +1 -1
  24. package/dist/server/common/constants/terminal.d.ts +1 -0
  25. package/dist/server/common/constants/terminal.js +2 -1
  26. package/dist/server/common/constants/terminal.js.map +1 -1
  27. package/dist/server/common/filters/http-exception.filter.js +3 -4
  28. package/dist/server/common/filters/http-exception.filter.js.map +1 -1
  29. package/dist/server/common/guards/integration-admission.guard.d.ts +4 -0
  30. package/dist/server/common/guards/integration-admission.guard.js +22 -0
  31. package/dist/server/common/guards/integration-admission.guard.js.map +1 -0
  32. package/dist/server/common/test/app-bootstrap.helper.js +1 -1
  33. package/dist/server/common/test/app-bootstrap.helper.js.map +1 -1
  34. package/dist/server/modules/agent-message-delivery/agent-message-delivery.service.js +4 -0
  35. package/dist/server/modules/agent-message-delivery/agent-message-delivery.service.js.map +1 -1
  36. package/dist/server/modules/cloud/cloud.module.js +5 -1
  37. package/dist/server/modules/cloud/cloud.module.js.map +1 -1
  38. package/dist/server/modules/cloud/services/cloud-egress-bridge.service.d.ts +3 -1
  39. package/dist/server/modules/cloud/services/cloud-egress-bridge.service.js +19 -3
  40. package/dist/server/modules/cloud/services/cloud-egress-bridge.service.js.map +1 -1
  41. package/dist/server/modules/cloud/services/egress-queue.service.d.ts +2 -0
  42. package/dist/server/modules/cloud/services/egress-queue.service.js +35 -17
  43. package/dist/server/modules/cloud/services/egress-queue.service.js.map +1 -1
  44. package/dist/server/modules/cloud/services/event-mapper.service.d.ts +1 -0
  45. package/dist/server/modules/cloud/services/event-mapper.service.js.map +1 -1
  46. package/dist/server/modules/cloud/services/notification-recipient-resolver.service.d.ts +10 -0
  47. package/dist/server/modules/cloud/services/notification-recipient-resolver.service.js +55 -0
  48. package/dist/server/modules/cloud/services/notification-recipient-resolver.service.js.map +1 -0
  49. package/dist/server/modules/cloud-tunnel/services/mobile-rpc-contract.generated.d.ts +31 -5
  50. package/dist/server/modules/cloud-tunnel/services/mobile-rpc-contract.generated.js +15 -0
  51. package/dist/server/modules/cloud-tunnel/services/mobile-rpc-contract.generated.js.map +1 -1
  52. package/dist/server/modules/cloud-tunnel/services/mobile-rpc-workspace-access.service.js +5 -2
  53. package/dist/server/modules/cloud-tunnel/services/mobile-rpc-workspace-access.service.js.map +1 -1
  54. package/dist/server/modules/cloud-tunnel/services/tunnel-handler.service.d.ts +1 -0
  55. package/dist/server/modules/cloud-tunnel/services/tunnel-handler.service.js +8 -0
  56. package/dist/server/modules/cloud-tunnel/services/tunnel-handler.service.js.map +1 -1
  57. package/dist/server/modules/core/controllers/runtime.controller.d.ts +1 -0
  58. package/dist/server/modules/core/controllers/runtime.controller.js +2 -0
  59. package/dist/server/modules/core/controllers/runtime.controller.js.map +1 -1
  60. package/dist/server/modules/e2ee/services/e2ee-device-store.service.d.ts +2 -0
  61. package/dist/server/modules/e2ee/services/e2ee-device-store.service.js +26 -0
  62. package/dist/server/modules/e2ee/services/e2ee-device-store.service.js.map +1 -1
  63. package/dist/server/modules/e2ee/services/e2ee-trust.service.d.ts +5 -0
  64. package/dist/server/modules/e2ee/services/e2ee-trust.service.js +11 -0
  65. package/dist/server/modules/e2ee/services/e2ee-trust.service.js.map +1 -1
  66. package/dist/server/modules/e2ee/services/paired-device-workspace-access.service.d.ts +1 -0
  67. package/dist/server/modules/e2ee/services/paired-device-workspace-access.service.js +4 -0
  68. package/dist/server/modules/e2ee/services/paired-device-workspace-access.service.js.map +1 -1
  69. package/dist/server/modules/epic-time/controllers/epic-time.controller.d.ts +8 -0
  70. package/dist/server/modules/epic-time/controllers/epic-time.controller.js +70 -0
  71. package/dist/server/modules/epic-time/controllers/epic-time.controller.js.map +1 -0
  72. package/dist/server/modules/epic-time/epic-time.module.d.ts +2 -0
  73. package/dist/server/modules/epic-time/epic-time.module.js +28 -0
  74. package/dist/server/modules/epic-time/epic-time.module.js.map +1 -0
  75. package/dist/server/modules/epic-time/models/epic-time.models.d.ts +26 -0
  76. package/dist/server/modules/epic-time/models/epic-time.models.js +3 -0
  77. package/dist/server/modules/epic-time/models/epic-time.models.js.map +1 -0
  78. package/dist/server/modules/epic-time/services/agent-time-accounting.service.d.ts +32 -0
  79. package/dist/server/modules/epic-time/services/agent-time-accounting.service.js +159 -0
  80. package/dist/server/modules/epic-time/services/agent-time-accounting.service.js.map +1 -0
  81. package/dist/server/modules/epic-time/services/epic-time.service.d.ts +15 -0
  82. package/dist/server/modules/epic-time/services/epic-time.service.js +224 -0
  83. package/dist/server/modules/epic-time/services/epic-time.service.js.map +1 -0
  84. package/dist/server/modules/epic-time/services/epic-time.store.d.ts +75 -0
  85. package/dist/server/modules/epic-time/services/epic-time.store.js +453 -0
  86. package/dist/server/modules/epic-time/services/epic-time.store.js.map +1 -0
  87. package/dist/server/modules/epics/controllers/epics.controller.d.ts +10 -0
  88. package/dist/server/modules/epics/controllers/epics.controller.js +92 -0
  89. package/dist/server/modules/epics/controllers/epics.controller.js.map +1 -1
  90. package/dist/server/modules/epics/services/epics.service.d.ts +32 -2
  91. package/dist/server/modules/epics/services/epics.service.js +243 -96
  92. package/dist/server/modules/epics/services/epics.service.js.map +1 -1
  93. package/dist/server/modules/events/catalog/agent.created.d.ts +4 -4
  94. package/dist/server/modules/events/catalog/agent.deleted.d.ts +2 -2
  95. package/dist/server/modules/events/catalog/agent.message.sent.d.ts +40 -40
  96. package/dist/server/modules/events/catalog/broadcast-registry.js +1 -0
  97. package/dist/server/modules/events/catalog/broadcast-registry.js.map +1 -1
  98. package/dist/server/modules/events/catalog/claude.hooks.ask_user_question.pending.d.ts +4 -4
  99. package/dist/server/modules/events/catalog/claude.hooks.session.started.d.ts +10 -10
  100. package/dist/server/modules/events/catalog/epic.comment.created.d.ts +6 -6
  101. package/dist/server/modules/events/catalog/epic.created.d.ts +8 -8
  102. package/dist/server/modules/events/catalog/epic.deleted.d.ts +4 -4
  103. package/dist/server/modules/events/catalog/epic.updated.d.ts +68 -42
  104. package/dist/server/modules/events/catalog/epic.updated.js +5 -0
  105. package/dist/server/modules/events/catalog/epic.updated.js.map +1 -1
  106. package/dist/server/modules/events/catalog/guest.registered.d.ts +2 -2
  107. package/dist/server/modules/events/catalog/guest.unregistered.d.ts +4 -4
  108. package/dist/server/modules/events/catalog/index.d.ts +370 -228
  109. package/dist/server/modules/events/catalog/index.js +11 -1
  110. package/dist/server/modules/events/catalog/index.js.map +1 -1
  111. package/dist/server/modules/events/catalog/integration.connection.created.d.ts +30 -0
  112. package/dist/server/modules/events/catalog/integration.connection.created.js +17 -0
  113. package/dist/server/modules/events/catalog/integration.connection.created.js.map +1 -0
  114. package/dist/server/modules/events/catalog/integration.connection.deleted.d.ts +27 -0
  115. package/dist/server/modules/events/catalog/integration.connection.deleted.js +16 -0
  116. package/dist/server/modules/events/catalog/integration.connection.deleted.js.map +1 -0
  117. package/dist/server/modules/events/catalog/integration.connection.updated.d.ts +39 -0
  118. package/dist/server/modules/events/catalog/integration.connection.updated.js +20 -0
  119. package/dist/server/modules/events/catalog/integration.connection.updated.js.map +1 -0
  120. package/dist/server/modules/events/catalog/review.comment.created.d.ts +16 -16
  121. package/dist/server/modules/events/catalog/review.comment.deleted.d.ts +2 -2
  122. package/dist/server/modules/events/catalog/review.comment.resolved.d.ts +2 -2
  123. package/dist/server/modules/events/catalog/review.comment.updated.d.ts +4 -4
  124. package/dist/server/modules/events/catalog/review.created.d.ts +12 -12
  125. package/dist/server/modules/events/catalog/review.updated.d.ts +22 -22
  126. package/dist/server/modules/events/catalog/scheduled-epic.executed.d.ts +12 -12
  127. package/dist/server/modules/events/catalog/session.human-prompt-state-changed.d.ts +77 -0
  128. package/dist/server/modules/events/catalog/session.human-prompt-state-changed.js +25 -0
  129. package/dist/server/modules/events/catalog/session.human-prompt-state-changed.js.map +1 -0
  130. package/dist/server/modules/events/catalog/session.provider-session-id.discovered.d.ts +2 -2
  131. package/dist/server/modules/events/catalog/session.recommendation.d.ts +4 -4
  132. package/dist/server/modules/events/catalog/session.restored.d.ts +2 -2
  133. package/dist/server/modules/events/catalog/session.started.d.ts +2 -2
  134. package/dist/server/modules/events/catalog/session.starting.d.ts +2 -2
  135. package/dist/server/modules/events/catalog/session.stopped.d.ts +2 -2
  136. package/dist/server/modules/events/catalog/session.transcript.discovered.d.ts +4 -4
  137. package/dist/server/modules/events/catalog/team.config.updated.d.ts +6 -6
  138. package/dist/server/modules/events/catalog/team.member.added.d.ts +2 -2
  139. package/dist/server/modules/events/catalog/team.member.removed.d.ts +2 -2
  140. package/dist/server/modules/events/catalog/terminal.watcher.triggered.d.ts +4 -4
  141. package/dist/server/modules/events/events-core.module.js +8 -1
  142. package/dist/server/modules/events/events-core.module.js.map +1 -1
  143. package/dist/server/modules/events/events-infra.module.js +6 -1
  144. package/dist/server/modules/events/events-infra.module.js.map +1 -1
  145. package/dist/server/modules/events/services/committed-event.store.d.ts +23 -0
  146. package/dist/server/modules/events/services/committed-event.store.js +169 -0
  147. package/dist/server/modules/events/services/committed-event.store.js.map +1 -0
  148. package/dist/server/modules/events/services/durable-event-dispatcher.service.d.ts +16 -0
  149. package/dist/server/modules/events/services/durable-event-dispatcher.service.js +97 -0
  150. package/dist/server/modules/events/services/durable-event-dispatcher.service.js.map +1 -0
  151. package/dist/server/modules/events/services/durable-event-registry.service.d.ts +25 -0
  152. package/dist/server/modules/events/services/durable-event-registry.service.js +59 -0
  153. package/dist/server/modules/events/services/durable-event-registry.service.js.map +1 -0
  154. package/dist/server/modules/events/services/event-log.service.d.ts +6 -1
  155. package/dist/server/modules/events/services/event-log.service.js +32 -18
  156. package/dist/server/modules/events/services/event-log.service.js.map +1 -1
  157. package/dist/server/modules/events/services/events.service.d.ts +11 -1
  158. package/dist/server/modules/events/services/events.service.js +50 -7
  159. package/dist/server/modules/events/services/events.service.js.map +1 -1
  160. package/dist/server/modules/external-integrations/adapters/clickup-external-task.provider.d.ts +97 -0
  161. package/dist/server/modules/external-integrations/adapters/clickup-external-task.provider.js +1404 -0
  162. package/dist/server/modules/external-integrations/adapters/clickup-external-task.provider.js.map +1 -0
  163. package/dist/server/modules/external-integrations/adapters/jira-external-task.provider.d.ts +113 -0
  164. package/dist/server/modules/external-integrations/adapters/jira-external-task.provider.js +1790 -0
  165. package/dist/server/modules/external-integrations/adapters/jira-external-task.provider.js.map +1 -0
  166. package/dist/server/modules/external-integrations/adapters/rich/clickup-comment-converter.d.ts +10 -0
  167. package/dist/server/modules/external-integrations/adapters/rich/clickup-comment-converter.js +97 -0
  168. package/dist/server/modules/external-integrations/adapters/rich/clickup-comment-converter.js.map +1 -0
  169. package/dist/server/modules/external-integrations/adapters/rich/clickup-markdown-converter.d.ts +16 -0
  170. package/dist/server/modules/external-integrations/adapters/rich/clickup-markdown-converter.js +386 -0
  171. package/dist/server/modules/external-integrations/adapters/rich/clickup-markdown-converter.js.map +1 -0
  172. package/dist/server/modules/external-integrations/adapters/rich/jira-adf-converter.d.ts +5 -0
  173. package/dist/server/modules/external-integrations/adapters/rich/jira-adf-converter.js +229 -0
  174. package/dist/server/modules/external-integrations/adapters/rich/jira-adf-converter.js.map +1 -0
  175. package/dist/server/modules/external-integrations/adapters/vendor-shared.d.ts +42 -0
  176. package/dist/server/modules/external-integrations/adapters/vendor-shared.js +182 -0
  177. package/dist/server/modules/external-integrations/adapters/vendor-shared.js.map +1 -0
  178. package/dist/server/modules/external-integrations/connections/integration-connections.controller.d.ts +11 -0
  179. package/dist/server/modules/external-integrations/connections/integration-connections.controller.js +121 -0
  180. package/dist/server/modules/external-integrations/connections/integration-connections.controller.js.map +1 -0
  181. package/dist/server/modules/external-integrations/connections/integration-connections.service.d.ts +46 -0
  182. package/dist/server/modules/external-integrations/connections/integration-connections.service.js +193 -0
  183. package/dist/server/modules/external-integrations/connections/integration-connections.service.js.map +1 -0
  184. package/dist/server/modules/external-integrations/connections/managed-subtask-sync.controller.d.ts +8 -0
  185. package/dist/server/modules/external-integrations/connections/managed-subtask-sync.controller.js +73 -0
  186. package/dist/server/modules/external-integrations/connections/managed-subtask-sync.controller.js.map +1 -0
  187. package/dist/server/modules/external-integrations/errors/external-provider.errors.d.ts +23 -0
  188. package/dist/server/modules/external-integrations/errors/external-provider.errors.js +105 -0
  189. package/dist/server/modules/external-integrations/errors/external-provider.errors.js.map +1 -0
  190. package/dist/server/modules/external-integrations/external-integrations.module.d.ts +2 -0
  191. package/dist/server/modules/external-integrations/external-integrations.module.js +72 -0
  192. package/dist/server/modules/external-integrations/external-integrations.module.js.map +1 -0
  193. package/dist/server/modules/external-integrations/external-task-provider.registry.d.ts +12 -0
  194. package/dist/server/modules/external-integrations/external-task-provider.registry.js +65 -0
  195. package/dist/server/modules/external-integrations/external-task-provider.registry.js.map +1 -0
  196. package/dist/server/modules/external-integrations/models/external-comment-lookup-token.d.ts +12 -0
  197. package/dist/server/modules/external-integrations/models/external-comment-lookup-token.js +49 -0
  198. package/dist/server/modules/external-integrations/models/external-comment-lookup-token.js.map +1 -0
  199. package/dist/server/modules/external-integrations/models/external-edit-session.models.d.ts +94 -0
  200. package/dist/server/modules/external-integrations/models/external-edit-session.models.js +10 -0
  201. package/dist/server/modules/external-integrations/models/external-edit-session.models.js.map +1 -0
  202. package/dist/server/modules/external-integrations/models/external-provider.models.d.ts +341 -0
  203. package/dist/server/modules/external-integrations/models/external-provider.models.js +21 -0
  204. package/dist/server/modules/external-integrations/models/external-provider.models.js.map +1 -0
  205. package/dist/server/modules/external-integrations/models/external-rich-capabilities.d.ts +6 -0
  206. package/dist/server/modules/external-integrations/models/external-rich-capabilities.js +9 -0
  207. package/dist/server/modules/external-integrations/models/external-rich-capabilities.js.map +1 -0
  208. package/dist/server/modules/external-integrations/models/external-rich-document.d.ts +59 -0
  209. package/dist/server/modules/external-integrations/models/external-rich-document.js +233 -0
  210. package/dist/server/modules/external-integrations/models/external-rich-document.js.map +1 -0
  211. package/dist/server/modules/external-integrations/models/external-task-source.d.ts +4 -0
  212. package/dist/server/modules/external-integrations/models/external-task-source.js +71 -0
  213. package/dist/server/modules/external-integrations/models/external-task-source.js.map +1 -0
  214. package/dist/server/modules/external-integrations/models/external-time-mutation.models.d.ts +74 -0
  215. package/dist/server/modules/external-integrations/models/external-time-mutation.models.js +19 -0
  216. package/dist/server/modules/external-integrations/models/external-time-mutation.models.js.map +1 -0
  217. package/dist/server/modules/external-integrations/my-work/external-edit-session.service.d.ts +57 -0
  218. package/dist/server/modules/external-integrations/my-work/external-edit-session.service.js +776 -0
  219. package/dist/server/modules/external-integrations/my-work/external-edit-session.service.js.map +1 -0
  220. package/dist/server/modules/external-integrations/my-work/external-my-work.controller.d.ts +37 -0
  221. package/dist/server/modules/external-integrations/my-work/external-my-work.controller.js +626 -0
  222. package/dist/server/modules/external-integrations/my-work/external-my-work.controller.js.map +1 -0
  223. package/dist/server/modules/external-integrations/my-work/external-my-work.openapi.d.ts +29 -0
  224. package/dist/server/modules/external-integrations/my-work/external-my-work.openapi.js +847 -0
  225. package/dist/server/modules/external-integrations/my-work/external-my-work.openapi.js.map +1 -0
  226. package/dist/server/modules/external-integrations/my-work/external-my-work.service.d.ts +34 -0
  227. package/dist/server/modules/external-integrations/my-work/external-my-work.service.js +330 -0
  228. package/dist/server/modules/external-integrations/my-work/external-my-work.service.js.map +1 -0
  229. package/dist/server/modules/external-integrations/my-work/external-time-mutation.service.d.ts +27 -0
  230. package/dist/server/modules/external-integrations/my-work/external-time-mutation.service.js +412 -0
  231. package/dist/server/modules/external-integrations/my-work/external-time-mutation.service.js.map +1 -0
  232. package/dist/server/modules/external-integrations/ports/external-task-provider.d.ts +13 -0
  233. package/dist/server/modules/external-integrations/ports/external-task-provider.js +5 -0
  234. package/dist/server/modules/external-integrations/ports/external-task-provider.js.map +1 -0
  235. package/dist/server/modules/external-integrations/request-validation.d.ts +2 -0
  236. package/dist/server/modules/external-integrations/request-validation.js +14 -0
  237. package/dist/server/modules/external-integrations/request-validation.js.map +1 -0
  238. package/dist/server/modules/external-integrations/sessions/external-edit-session.store.d.ts +59 -0
  239. package/dist/server/modules/external-integrations/sessions/external-edit-session.store.js +329 -0
  240. package/dist/server/modules/external-integrations/sessions/external-edit-session.store.js.map +1 -0
  241. package/dist/server/modules/external-integrations/sessions/external-time-mutation.store.d.ts +44 -0
  242. package/dist/server/modules/external-integrations/sessions/external-time-mutation.store.js +171 -0
  243. package/dist/server/modules/external-integrations/sessions/external-time-mutation.store.js.map +1 -0
  244. package/dist/server/modules/external-integrations/sessions/provider-operation-gate.d.ts +7 -0
  245. package/dist/server/modules/external-integrations/sessions/provider-operation-gate.js +33 -0
  246. package/dist/server/modules/external-integrations/sessions/provider-operation-gate.js.map +1 -0
  247. package/dist/server/modules/external-integrations/subscribers/external-subtask-sync.subscriber.d.ts +69 -0
  248. package/dist/server/modules/external-integrations/subscribers/external-subtask-sync.subscriber.js +1092 -0
  249. package/dist/server/modules/external-integrations/subscribers/external-subtask-sync.subscriber.js.map +1 -0
  250. package/dist/server/modules/external-integrations/subscribers/managed-subtask-content.d.ts +8 -0
  251. package/dist/server/modules/external-integrations/subscribers/managed-subtask-content.js +23 -0
  252. package/dist/server/modules/external-integrations/subscribers/managed-subtask-content.js.map +1 -0
  253. package/dist/server/modules/external-integrations/subscribers/managed-subtask-recovery-policy.d.ts +7 -0
  254. package/dist/server/modules/external-integrations/subscribers/managed-subtask-recovery-policy.js +30 -0
  255. package/dist/server/modules/external-integrations/subscribers/managed-subtask-recovery-policy.js.map +1 -0
  256. package/dist/server/modules/external-integrations/subscribers/managed-subtask-sync-health.service.d.ts +44 -0
  257. package/dist/server/modules/external-integrations/subscribers/managed-subtask-sync-health.service.js +135 -0
  258. package/dist/server/modules/external-integrations/subscribers/managed-subtask-sync-health.service.js.map +1 -0
  259. package/dist/server/modules/external-integrations/transport/safe-vendor-http-client.d.ts +47 -0
  260. package/dist/server/modules/external-integrations/transport/safe-vendor-http-client.js +294 -0
  261. package/dist/server/modules/external-integrations/transport/safe-vendor-http-client.js.map +1 -0
  262. package/dist/server/modules/hooks/dtos/hook-event.dto.d.ts +64 -64
  263. package/dist/server/modules/mcp/dtos/mcp.dto.d.ts +36 -36
  264. package/dist/server/modules/orchestrator/docker/services/seed-preparation.service.d.ts +5 -0
  265. package/dist/server/modules/orchestrator/docker/services/seed-preparation.service.js +51 -1
  266. package/dist/server/modules/orchestrator/docker/services/seed-preparation.service.js.map +1 -1
  267. package/dist/server/modules/orchestrator/sync/services/task-merge.service.d.ts +0 -2
  268. package/dist/server/modules/orchestrator/sync/services/task-merge.service.js +9 -48
  269. package/dist/server/modules/orchestrator/sync/services/task-merge.service.js.map +1 -1
  270. package/dist/server/modules/profiles/dto.d.ts +11 -11
  271. package/dist/server/modules/projects/controllers/projects.controller.d.ts +2 -2
  272. package/dist/server/modules/projects/dtos/export.dto.d.ts +6 -6
  273. package/dist/server/modules/projects/helpers/project-export.d.ts +1 -1
  274. package/dist/server/modules/projects/services/projects.service.d.ts +1 -1
  275. package/dist/server/modules/projects/template-codec/codecs/watchers.codec.d.ts +1 -1
  276. package/dist/server/modules/registry/controllers/templates.controller.d.ts +7 -7
  277. package/dist/server/modules/reviews/dtos/review.dto.d.ts +10 -10
  278. package/dist/server/modules/scheduled-epics/dtos/scheduled-epic.dto.d.ts +1 -1
  279. package/dist/server/modules/session-reader/adapters/antigravity-session-reader.adapter.d.ts +1 -1
  280. package/dist/server/modules/session-reader/adapters/opencode-session-reader.adapter.d.ts +1 -1
  281. package/dist/server/modules/session-reader/data/pricing.json +128 -39
  282. package/dist/server/modules/session-terminal-runtime/session-terminal-runtime.service.d.ts +2 -0
  283. package/dist/server/modules/session-terminal-runtime/session-terminal-runtime.service.js +18 -12
  284. package/dist/server/modules/session-terminal-runtime/session-terminal-runtime.service.js.map +1 -1
  285. package/dist/server/modules/sessions/controllers/sessions.controller.d.ts +3 -0
  286. package/dist/server/modules/sessions/controllers/sessions.controller.js +30 -0
  287. package/dist/server/modules/sessions/controllers/sessions.controller.js.map +1 -1
  288. package/dist/server/modules/sessions/dtos/sessions.dto.d.ts +2 -2
  289. package/dist/server/modules/sessions/services/message-enqueue.service.d.ts +2 -0
  290. package/dist/server/modules/sessions/services/message-enqueue.service.js +2 -0
  291. package/dist/server/modules/sessions/services/message-enqueue.service.js.map +1 -1
  292. package/dist/server/modules/sessions/services/message-pool.types.d.ts +8 -1
  293. package/dist/server/modules/sessions/services/sessions-message-pool.service.d.ts +50 -6
  294. package/dist/server/modules/sessions/services/sessions-message-pool.service.js +828 -190
  295. package/dist/server/modules/sessions/services/sessions-message-pool.service.js.map +1 -1
  296. package/dist/server/modules/settings/dtos/settings.dto.d.ts +8 -0
  297. package/dist/server/modules/settings/dtos/settings.dto.js +1 -0
  298. package/dist/server/modules/settings/dtos/settings.dto.js.map +1 -1
  299. package/dist/server/modules/settings/local/delegates/core-settings.delegate.js +12 -0
  300. package/dist/server/modules/settings/local/delegates/core-settings.delegate.js.map +1 -1
  301. package/dist/server/modules/settings/services/settings.constants.d.ts +1 -1
  302. package/dist/server/modules/settings/services/settings.constants.js +2 -1
  303. package/dist/server/modules/settings/services/settings.constants.js.map +1 -1
  304. package/dist/server/modules/settings/services/settings.service.d.ts +1 -1
  305. package/dist/server/modules/settings/services/settings.service.js +2 -1
  306. package/dist/server/modules/settings/services/settings.service.js.map +1 -1
  307. package/dist/server/modules/skills/dtos/skill.dto.d.ts +2 -2
  308. package/dist/server/modules/storage/db/schema.d.ts +2420 -958
  309. package/dist/server/modules/storage/db/schema.js +144 -2
  310. package/dist/server/modules/storage/db/schema.js.map +1 -1
  311. package/dist/server/modules/storage/interfaces/storage.interface.d.ts +34 -6
  312. package/dist/server/modules/storage/interfaces/storage.interface.js.map +1 -1
  313. package/dist/server/modules/storage/local/delegates/epic.delegate.d.ts +9 -5
  314. package/dist/server/modules/storage/local/delegates/epic.delegate.js +67 -30
  315. package/dist/server/modules/storage/local/delegates/epic.delegate.js.map +1 -1
  316. package/dist/server/modules/storage/local/delegates/external-managed-subtask.delegate.d.ts +18 -0
  317. package/dist/server/modules/storage/local/delegates/external-managed-subtask.delegate.js +320 -0
  318. package/dist/server/modules/storage/local/delegates/external-managed-subtask.delegate.js.map +1 -0
  319. package/dist/server/modules/storage/local/delegates/integration.delegate.d.ts +37 -0
  320. package/dist/server/modules/storage/local/delegates/integration.delegate.js +308 -0
  321. package/dist/server/modules/storage/local/delegates/integration.delegate.js.map +1 -0
  322. package/dist/server/modules/storage/local/integration-credential-cipher.d.ts +18 -0
  323. package/dist/server/modules/storage/local/integration-credential-cipher.js +138 -0
  324. package/dist/server/modules/storage/local/integration-credential-cipher.js.map +1 -0
  325. package/dist/server/modules/storage/local/local-storage.service.d.ts +36 -7
  326. package/dist/server/modules/storage/local/local-storage.service.js +93 -10
  327. package/dist/server/modules/storage/local/local-storage.service.js.map +1 -1
  328. package/dist/server/modules/storage/models/domain.models.d.ts +127 -0
  329. package/dist/server/modules/storage/models/domain.models.js +15 -0
  330. package/dist/server/modules/storage/models/domain.models.js.map +1 -1
  331. package/dist/server/modules/storage/storage.module.js +2 -1
  332. package/dist/server/modules/storage/storage.module.js.map +1 -1
  333. package/dist/server/modules/subscribers/dtos/subscriber.dto.d.ts +1 -1
  334. package/dist/server/modules/terminal/dtos/ws-envelope.dto.d.ts +2 -2
  335. package/dist/server/modules/terminal/gateways/terminal.gateway.d.ts +9 -1
  336. package/dist/server/modules/terminal/gateways/terminal.gateway.js +79 -3
  337. package/dist/server/modules/terminal/gateways/terminal.gateway.js.map +1 -1
  338. package/dist/server/modules/terminal/services/human-prompt-state.service.d.ts +58 -0
  339. package/dist/server/modules/terminal/services/human-prompt-state.service.js +206 -0
  340. package/dist/server/modules/terminal/services/human-prompt-state.service.js.map +1 -0
  341. package/dist/server/modules/terminal/services/terminal-activity.service.js +7 -18
  342. package/dist/server/modules/terminal/services/terminal-activity.service.js.map +1 -1
  343. package/dist/server/modules/terminal/services/terminal-io/delivery.d.ts +2 -1
  344. package/dist/server/modules/terminal/services/terminal-io/delivery.js +77 -33
  345. package/dist/server/modules/terminal/services/terminal-io/delivery.js.map +1 -1
  346. package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.d.ts +14 -5
  347. package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.js +64 -8
  348. package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.js.map +1 -1
  349. package/dist/server/modules/terminal/services/terminal-io/types.d.ts +8 -0
  350. package/dist/server/modules/terminal/services/terminal-key-input/terminal-key-input.facade.d.ts +5 -1
  351. package/dist/server/modules/terminal/services/terminal-key-input/terminal-key-input.facade.js +39 -2
  352. package/dist/server/modules/terminal/services/terminal-key-input/terminal-key-input.facade.js.map +1 -1
  353. package/dist/server/modules/terminal/services/terminal-session/terminal-session-registry.d.ts +3 -1
  354. package/dist/server/modules/terminal/services/terminal-session/terminal-session-registry.js +7 -2
  355. package/dist/server/modules/terminal/services/terminal-session/terminal-session-registry.js.map +1 -1
  356. package/dist/server/modules/terminal/services/terminal-session/terminal-session.d.ts +4 -0
  357. package/dist/server/modules/terminal/services/terminal-session/terminal-session.js +8 -0
  358. package/dist/server/modules/terminal/services/terminal-session/terminal-session.js.map +1 -1
  359. package/dist/server/modules/terminal/terminal-delivery.module.js +13 -2
  360. package/dist/server/modules/terminal/terminal-delivery.module.js.map +1 -1
  361. package/dist/server/modules/terminal/terminal.module.js +4 -3
  362. package/dist/server/modules/terminal/terminal.module.js.map +1 -1
  363. package/dist/server/modules/terminal/utils/terminal-activity.d.ts +4 -0
  364. package/dist/server/modules/terminal/utils/terminal-activity.js +86 -0
  365. package/dist/server/modules/terminal/utils/terminal-activity.js.map +1 -0
  366. package/dist/server/modules/watchers/dtos/watcher.dto.d.ts +8 -8
  367. package/dist/server/tsconfig.tsbuildinfo +1 -1
  368. package/dist/server/ui/assets/ExternalRichEditor-DMtnZIMZ.js +113 -0
  369. package/dist/server/ui/assets/{ReviewDetailPage-CNffXKv8.js → ReviewDetailPage-BmyiM5IR.js} +1 -1
  370. package/dist/server/ui/assets/{ReviewsPage-DAcufZ3r.js → ReviewsPage-CQ87BMwT.js} +1 -1
  371. package/dist/server/ui/assets/index-BX6Yze-A.js +1177 -0
  372. package/dist/server/ui/assets/index-qoQEv_u4.css +32 -0
  373. package/dist/server/ui/assets/{useReviewSubscription-DD29I7uU.js → useReviewSubscription-DjbEUzt4.js} +1 -1
  374. package/dist/server/ui/index.html +2 -2
  375. package/package.json +12 -4
  376. package/dist/server/ui/assets/index-7iCs8Dxj.js +0 -1153
  377. package/dist/server/ui/assets/index-CLXZjL_B.css +0 -32
@@ -35,6 +35,7 @@ var __importStar = (this && this.__importStar) || (function () {
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.EpicStorageDelegate = void 0;
37
37
  const drizzle_orm_1 = require("drizzle-orm");
38
+ const node_crypto_1 = require("node:crypto");
38
39
  const error_types_1 = require("../../../../common/errors/error-types");
39
40
  const logger_1 = require("../../../../common/logging/logger");
40
41
  const schema_1 = require("../../db/schema");
@@ -47,11 +48,18 @@ class EpicStorageDelegate extends base_storage_delegate_1.BaseStorageDelegate {
47
48
  super(context);
48
49
  this.dependencies = dependencies;
49
50
  }
50
- async createEpic(data) {
51
- const { randomUUID } = await Promise.resolve().then(() => __importStar(require('crypto')));
51
+ async createEpic(data, eventFactory) {
52
+ return this.txRunner.runImmediateQueued(() => this.insertEpic(data, eventFactory));
53
+ }
54
+ async createEpicInCurrentTransaction(data, eventFactory) {
55
+ if (!this.rawClient.inTransaction) {
56
+ throw new error_types_1.StorageError('Epic transaction insert requires an active storage transaction.');
57
+ }
58
+ return this.insertEpic(data, eventFactory);
59
+ }
60
+ insertEpic(data, eventFactory) {
52
61
  const now = new Date().toISOString();
53
- const { epics, epicTags, tags } = await Promise.resolve().then(() => __importStar(require('../../db/schema')));
54
- const epicId = randomUUID();
62
+ const epicId = (0, node_crypto_1.randomUUID)();
55
63
  this.ensureValidEpicParentSync(data.projectId, data.parentId ?? null, epicId);
56
64
  this.ensureValidAgentSync(data.projectId, data.agentId ?? null);
57
65
  const epic = {
@@ -70,7 +78,9 @@ class EpicStorageDelegate extends base_storage_delegate_1.BaseStorageDelegate {
70
78
  createdAt: now,
71
79
  updatedAt: now,
72
80
  };
73
- await this.db.insert(epics).values({
81
+ this.db
82
+ .insert(schema_1.epics)
83
+ .values({
74
84
  id: epic.id,
75
85
  projectId: epic.projectId,
76
86
  title: epic.title,
@@ -80,33 +90,41 @@ class EpicStorageDelegate extends base_storage_delegate_1.BaseStorageDelegate {
80
90
  agentId: epic.agentId,
81
91
  createdBy: epic.createdBy,
82
92
  version: epic.version,
83
- data: epic.data ? JSON.stringify(epic.data) : null,
93
+ data: epic.data,
84
94
  skillsRequired: (0, storage_helpers_1.serializeSkillsRequired)(epic.skillsRequired),
85
95
  createdAt: epic.createdAt,
86
96
  updatedAt: epic.updatedAt,
87
- });
97
+ })
98
+ .run();
88
99
  if (epic.tags.length) {
89
100
  for (const tagName of epic.tags) {
90
- const { eq, and, or, isNull } = await Promise.resolve().then(() => __importStar(require('drizzle-orm')));
91
- let tag = await this.db
101
+ let tag = this.db
92
102
  .select()
93
- .from(tags)
94
- .where(and(eq(tags.name, tagName), or(eq(tags.projectId, data.projectId), isNull(tags.projectId))))
95
- .limit(1);
103
+ .from(schema_1.tags)
104
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema_1.tags.name, tagName), (0, drizzle_orm_1.or)((0, drizzle_orm_1.eq)(schema_1.tags.projectId, data.projectId), (0, drizzle_orm_1.isNull)(schema_1.tags.projectId))))
105
+ .limit(1)
106
+ .all();
96
107
  if (!tag[0]) {
97
- const newTag = await this.dependencies.createTag({
108
+ const newTag = this.dependencies.createTag({
98
109
  projectId: data.projectId,
99
110
  name: tagName,
100
111
  });
101
112
  tag = [newTag];
102
113
  }
103
- await this.db.insert(epicTags).values({
114
+ this.db
115
+ .insert(schema_1.epicTags)
116
+ .values({
104
117
  epicId: epic.id,
105
118
  tagId: tag[0].id,
106
119
  createdAt: now,
107
- });
120
+ })
121
+ .run();
108
122
  }
109
123
  }
124
+ const event = eventFactory?.(epic);
125
+ if (event) {
126
+ this.dependencies.appendEvent(event);
127
+ }
110
128
  return epic;
111
129
  }
112
130
  async getEpic(id) {
@@ -298,7 +316,7 @@ class EpicStorageDelegate extends base_storage_delegate_1.BaseStorageDelegate {
298
316
  offset,
299
317
  };
300
318
  }
301
- async createEpicForProject(projectId, input) {
319
+ async createEpicForProject(projectId, input, eventFactory) {
302
320
  const { statuses } = await Promise.resolve().then(() => __importStar(require('../../db/schema')));
303
321
  const { eq, asc } = await Promise.resolve().then(() => __importStar(require('drizzle-orm')));
304
322
  let statusId = input.statusId ?? null;
@@ -343,9 +361,9 @@ class EpicStorageDelegate extends base_storage_delegate_1.BaseStorageDelegate {
343
361
  skillsRequired: input.skillsRequired ?? null,
344
362
  tags: input.tags ?? [],
345
363
  data: null,
346
- });
364
+ }, eventFactory);
347
365
  }
348
- async updateEpic(id, data, expectedVersion) {
366
+ async updateEpic(id, data, expectedVersion, eventFactory) {
349
367
  return this.versionedMutationExecutor.execute({
350
368
  resource: 'Epic',
351
369
  id,
@@ -395,22 +413,41 @@ class EpicStorageDelegate extends base_storage_delegate_1.BaseStorageDelegate {
395
413
  if (state.requestedTags !== undefined) {
396
414
  this.setEpicTagsSync(id, state.requestedTags, current.projectId, state.now);
397
415
  }
416
+ const event = eventFactory?.(this.getEpicSync(id), current);
417
+ if (event) {
418
+ this.dependencies.appendEvent(event);
419
+ }
398
420
  },
399
421
  loadResult: () => this.getEpicSync(id),
400
422
  });
401
423
  }
402
- async deleteEpic(id) {
403
- const { epics } = await Promise.resolve().then(() => __importStar(require('../../db/schema')));
404
- const { eq } = await Promise.resolve().then(() => __importStar(require('drizzle-orm')));
405
- const subEpics = await this.db
406
- .select({ id: epics.id })
407
- .from(epics)
408
- .where(eq(epics.parentId, id));
409
- for (const subEpic of subEpics) {
410
- await this.deleteEpic(subEpic.id);
411
- }
412
- await this.db.delete(epics).where(eq(epics.id, id));
413
- logger.info({ epicId: id, deletedSubEpics: subEpics.length }, 'Deleted epic and sub-epics');
424
+ async deleteEpic(id, eventFactory) {
425
+ return this.txRunner.runImmediateQueued(() => {
426
+ const rows = this.rawClient
427
+ .prepare(`WITH RECURSIVE tree(id, depth) AS (
428
+ SELECT id, 0 FROM epics WHERE id = ?
429
+ UNION ALL
430
+ SELECT e.id, tree.depth + 1
431
+ FROM epics e
432
+ INNER JOIN tree ON e.parent_id = tree.id
433
+ )
434
+ SELECT id, depth FROM tree ORDER BY depth DESC, id`)
435
+ .all(id);
436
+ if (rows.length === 0) {
437
+ throw new error_types_1.NotFoundError('Epic', id);
438
+ }
439
+ for (const row of rows) {
440
+ const event = eventFactory?.(this.getEpicSync(row.id));
441
+ if (event) {
442
+ this.dependencies.appendEvent(event);
443
+ }
444
+ }
445
+ const deleteRow = this.rawClient.prepare('DELETE FROM epics WHERE id = ?');
446
+ for (const row of rows) {
447
+ deleteRow.run(row.id);
448
+ }
449
+ logger.info({ epicId: id, deletedSubEpics: rows.length - 1 }, 'Deleted epic and sub-epics');
450
+ });
414
451
  }
415
452
  async listSubEpics(parentId, options = {}) {
416
453
  await this.getEpic(parentId);
@@ -1 +1 @@
1
- {"version":3,"file":"epic.delegate.js","sourceRoot":"","sources":["../../../../../src/modules/storage/local/delegates/epic.delegate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"epic.delegate.js","sourceRoot":"","sources":["../../../../../src/modules/storage/local/delegates/epic.delegate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import type { ConfirmExternalManagedSubtaskLink, ConfirmExternalManagedSubtaskLinkResult, CreateExternalManagedSubtaskLink, ExternalManagedSubtaskLink, IntegrationProvider, UpdateExternalManagedSubtaskLink } from '../../models/domain.models';
2
+ import { BaseStorageDelegate, type StorageDelegateContext } from './base-storage.delegate';
3
+ export declare class ExternalManagedSubtaskStorageDelegate extends BaseStorageDelegate {
4
+ constructor(context: StorageDelegateContext);
5
+ create(data: CreateExternalManagedSubtaskLink): Promise<ExternalManagedSubtaskLink>;
6
+ get(id: string): Promise<ExternalManagedSubtaskLink>;
7
+ listByProvider(provider: IntegrationProvider): Promise<ExternalManagedSubtaskLink[]>;
8
+ listForEpicSnapshot(epicIdSnapshot: string): Promise<ExternalManagedSubtaskLink[]>;
9
+ update(id: string, data: UpdateExternalManagedSubtaskLink): Promise<ExternalManagedSubtaskLink>;
10
+ findRecognition(epicId: string, provider: IntegrationProvider, remoteScopeKey: string, remoteTaskId: string): Promise<ExternalManagedSubtaskLink | null>;
11
+ confirm(data: ConfirmExternalManagedSubtaskLink): Promise<ConfirmExternalManagedSubtaskLinkResult>;
12
+ remove(id: string): Promise<boolean>;
13
+ handleProviderConnectionMutationSync(provider: IntegrationProvider, acknowledgeOrphanRisk: boolean): void;
14
+ private getSync;
15
+ private validateCreateSync;
16
+ private normalizeUpdate;
17
+ private assertExactOwnershipProof;
18
+ }
@@ -0,0 +1,320 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExternalManagedSubtaskStorageDelegate = void 0;
4
+ const node_crypto_1 = require("node:crypto");
5
+ const drizzle_orm_1 = require("drizzle-orm");
6
+ const error_types_1 = require("../../../../common/errors/error-types");
7
+ const schema_1 = require("../../db/schema");
8
+ const storage_helpers_1 = require("../helpers/storage-helpers");
9
+ const base_storage_delegate_1 = require("./base-storage.delegate");
10
+ class ExternalManagedSubtaskStorageDelegate extends base_storage_delegate_1.BaseStorageDelegate {
11
+ constructor(context) {
12
+ super(context);
13
+ }
14
+ async create(data) {
15
+ return this.txRunner.runImmediateQueued(() => {
16
+ const normalized = this.validateCreateSync(data);
17
+ const now = new Date().toISOString();
18
+ const row = {
19
+ ...normalized,
20
+ id: (0, node_crypto_1.randomUUID)(),
21
+ remoteTaskId: null,
22
+ remoteKey: null,
23
+ confirmedVersion: null,
24
+ confirmedFingerprint: null,
25
+ operationPhase: normalized.operationPhase ?? 'pre_dispatch',
26
+ safeErrorCode: null,
27
+ retryAt: null,
28
+ tombstoneState: normalized.tombstoneState ?? 'active',
29
+ tombstonedAt: null,
30
+ createdAt: now,
31
+ updatedAt: now,
32
+ };
33
+ try {
34
+ this.db.insert(schema_1.externalManagedSubtaskLinks).values(row).run();
35
+ }
36
+ catch (error) {
37
+ if ((0, storage_helpers_1.isSqliteUniqueConstraint)(error)) {
38
+ throw new error_types_1.ConflictError('Managed subtask projection already exists.', {
39
+ epicIdSnapshot: row.epicIdSnapshot,
40
+ parentSourceLinkIdSnapshot: row.parentSourceLinkIdSnapshot,
41
+ });
42
+ }
43
+ throw error;
44
+ }
45
+ return row;
46
+ });
47
+ }
48
+ async get(id) {
49
+ return this.getSync(id);
50
+ }
51
+ async listByProvider(provider) {
52
+ return this.db
53
+ .select()
54
+ .from(schema_1.externalManagedSubtaskLinks)
55
+ .where((0, drizzle_orm_1.eq)(schema_1.externalManagedSubtaskLinks.provider, provider))
56
+ .orderBy((0, drizzle_orm_1.asc)(schema_1.externalManagedSubtaskLinks.createdAt), (0, drizzle_orm_1.asc)(schema_1.externalManagedSubtaskLinks.id));
57
+ }
58
+ async listForEpicSnapshot(epicIdSnapshot) {
59
+ return this.db
60
+ .select()
61
+ .from(schema_1.externalManagedSubtaskLinks)
62
+ .where((0, drizzle_orm_1.eq)(schema_1.externalManagedSubtaskLinks.epicIdSnapshot, epicIdSnapshot))
63
+ .orderBy((0, drizzle_orm_1.asc)(schema_1.externalManagedSubtaskLinks.createdAt), (0, drizzle_orm_1.asc)(schema_1.externalManagedSubtaskLinks.id));
64
+ }
65
+ async update(id, data) {
66
+ return this.txRunner.runImmediateQueued(() => {
67
+ this.getSync(id);
68
+ const update = this.normalizeUpdate(data);
69
+ this.db
70
+ .update(schema_1.externalManagedSubtaskLinks)
71
+ .set({ ...update, updatedAt: new Date().toISOString() })
72
+ .where((0, drizzle_orm_1.eq)(schema_1.externalManagedSubtaskLinks.id, id))
73
+ .run();
74
+ return this.getSync(id);
75
+ });
76
+ }
77
+ async findRecognition(epicId, provider, remoteScopeKey, remoteTaskId) {
78
+ const row = this.db
79
+ .select({ managed: schema_1.externalManagedSubtaskLinks })
80
+ .from(schema_1.externalTaskLinks)
81
+ .innerJoin(schema_1.externalManagedSubtaskLinks, (0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema_1.externalManagedSubtaskLinks.epicIdSnapshot, schema_1.externalTaskLinks.epicId), (0, drizzle_orm_1.eq)(schema_1.externalManagedSubtaskLinks.provider, schema_1.externalTaskLinks.provider), (0, drizzle_orm_1.eq)(schema_1.externalManagedSubtaskLinks.remoteScopeKey, schema_1.externalTaskLinks.remoteScopeKey), (0, drizzle_orm_1.eq)(schema_1.externalManagedSubtaskLinks.remoteTaskId, schema_1.externalTaskLinks.remoteTaskId)))
82
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema_1.externalTaskLinks.epicId, epicId), (0, drizzle_orm_1.eq)(schema_1.externalTaskLinks.provider, provider), (0, drizzle_orm_1.eq)(schema_1.externalTaskLinks.remoteScopeKey, remoteScopeKey), (0, drizzle_orm_1.eq)(schema_1.externalTaskLinks.remoteTaskId, remoteTaskId), (0, drizzle_orm_1.eq)(schema_1.externalManagedSubtaskLinks.epicId, epicId), (0, drizzle_orm_1.eq)(schema_1.externalManagedSubtaskLinks.operationPhase, 'confirmed'), (0, drizzle_orm_1.eq)(schema_1.externalManagedSubtaskLinks.tombstoneState, 'active')))
83
+ .limit(1)
84
+ .get();
85
+ return row?.managed ?? null;
86
+ }
87
+ async confirm(data) {
88
+ return this.txRunner.runImmediateQueued(() => {
89
+ const managed = this.getSync(data.managedLinkId);
90
+ if (!managed.epicId || managed.tombstoneState !== 'active') {
91
+ throw new error_types_1.ConflictError('Managed subtask no longer has a live local Epic.', {
92
+ managedLinkId: managed.id,
93
+ tombstoneState: managed.tombstoneState,
94
+ });
95
+ }
96
+ const remoteTaskId = data.remoteTaskId.trim();
97
+ const remoteKey = data.remoteKey.trim();
98
+ const confirmedFingerprint = data.confirmedFingerprint.trim();
99
+ if (!remoteTaskId ||
100
+ !remoteKey ||
101
+ !confirmedFingerprint ||
102
+ data.confirmedVersion < 1 ||
103
+ !data.sourceSnapshot ||
104
+ typeof data.sourceSnapshot !== 'object' ||
105
+ Array.isArray(data.sourceSnapshot)) {
106
+ throw new error_types_1.ValidationError('Confirmed remote identity and version are required.');
107
+ }
108
+ this.assertExactOwnershipProof(managed, data.sourceSnapshot);
109
+ let externalTaskLink = this.db
110
+ .select()
111
+ .from(schema_1.externalTaskLinks)
112
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema_1.externalTaskLinks.provider, managed.provider), (0, drizzle_orm_1.eq)(schema_1.externalTaskLinks.remoteScopeKey, managed.remoteScopeKey), (0, drizzle_orm_1.eq)(schema_1.externalTaskLinks.remoteTaskId, remoteTaskId)))
113
+ .limit(1)
114
+ .get();
115
+ if (externalTaskLink && externalTaskLink.epicId !== managed.epicIdSnapshot) {
116
+ throw new error_types_1.ConflictError('Remote task identity is already linked to another Epic.', {
117
+ managedLinkId: managed.id,
118
+ linkedEpicId: externalTaskLink.epicId,
119
+ });
120
+ }
121
+ const now = new Date().toISOString();
122
+ if (!externalTaskLink) {
123
+ externalTaskLink = {
124
+ id: (0, node_crypto_1.randomUUID)(),
125
+ epicId: managed.epicIdSnapshot,
126
+ connectionId: managed.connectionIdSnapshot,
127
+ provider: managed.provider,
128
+ remoteScopeKey: managed.remoteScopeKey,
129
+ remoteTaskId,
130
+ sourceSnapshot: {
131
+ ...data.sourceSnapshot,
132
+ managedProjectionId: managed.id,
133
+ ownershipToken: managed.ownershipToken,
134
+ },
135
+ createdAt: now,
136
+ updatedAt: now,
137
+ };
138
+ this.db.insert(schema_1.externalTaskLinks).values(externalTaskLink).run();
139
+ }
140
+ this.db
141
+ .update(schema_1.externalManagedSubtaskLinks)
142
+ .set({
143
+ remoteTaskId,
144
+ remoteKey,
145
+ confirmedVersion: data.confirmedVersion,
146
+ confirmedFingerprint,
147
+ operationPhase: 'confirmed',
148
+ safeErrorCode: null,
149
+ retryAt: null,
150
+ updatedAt: now,
151
+ })
152
+ .where((0, drizzle_orm_1.eq)(schema_1.externalManagedSubtaskLinks.id, managed.id))
153
+ .run();
154
+ return {
155
+ managedLink: this.getSync(managed.id),
156
+ externalTaskLink: externalTaskLink,
157
+ };
158
+ });
159
+ }
160
+ async remove(id) {
161
+ return this.txRunner.runImmediateQueued(() => {
162
+ const managed = this.db
163
+ .select()
164
+ .from(schema_1.externalManagedSubtaskLinks)
165
+ .where((0, drizzle_orm_1.eq)(schema_1.externalManagedSubtaskLinks.id, id))
166
+ .limit(1)
167
+ .get();
168
+ if (!managed) {
169
+ return false;
170
+ }
171
+ if (managed.remoteTaskId) {
172
+ this.db
173
+ .delete(schema_1.externalTaskLinks)
174
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema_1.externalTaskLinks.epicId, managed.epicIdSnapshot), (0, drizzle_orm_1.eq)(schema_1.externalTaskLinks.provider, managed.provider), (0, drizzle_orm_1.eq)(schema_1.externalTaskLinks.remoteScopeKey, managed.remoteScopeKey), (0, drizzle_orm_1.eq)(schema_1.externalTaskLinks.remoteTaskId, managed.remoteTaskId)))
175
+ .run();
176
+ }
177
+ this.db
178
+ .delete(schema_1.externalManagedSubtaskLinks)
179
+ .where((0, drizzle_orm_1.eq)(schema_1.externalManagedSubtaskLinks.id, managed.id))
180
+ .run();
181
+ return true;
182
+ });
183
+ }
184
+ handleProviderConnectionMutationSync(provider, acknowledgeOrphanRisk) {
185
+ const risky = this.db
186
+ .select({ id: schema_1.externalManagedSubtaskLinks.id })
187
+ .from(schema_1.externalManagedSubtaskLinks)
188
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(schema_1.externalManagedSubtaskLinks.provider, provider), (0, drizzle_orm_1.inArray)(schema_1.externalManagedSubtaskLinks.operationPhase, [
189
+ 'dispatch_admitted',
190
+ 'outcome_unknown',
191
+ ])))
192
+ .all();
193
+ if (risky.length === 0) {
194
+ return;
195
+ }
196
+ if (!acknowledgeOrphanRisk) {
197
+ throw new error_types_1.ConflictError('Connection change requires acknowledgement of unresolved managed-subtask outcomes.', { provider, reason: 'orphan_risk_ack_required', affectedCount: risky.length });
198
+ }
199
+ const now = new Date().toISOString();
200
+ this.db
201
+ .update(schema_1.externalManagedSubtaskLinks)
202
+ .set({
203
+ tombstoneState: 'orphan_risk',
204
+ tombstonedAt: now,
205
+ safeErrorCode: 'connection_changed_with_unresolved_outcome',
206
+ updatedAt: now,
207
+ })
208
+ .where((0, drizzle_orm_1.inArray)(schema_1.externalManagedSubtaskLinks.id, risky.map((row) => row.id)))
209
+ .run();
210
+ }
211
+ getSync(id) {
212
+ const row = this.db
213
+ .select()
214
+ .from(schema_1.externalManagedSubtaskLinks)
215
+ .where((0, drizzle_orm_1.eq)(schema_1.externalManagedSubtaskLinks.id, id))
216
+ .limit(1)
217
+ .get();
218
+ if (!row) {
219
+ throw new error_types_1.NotFoundError('Managed subtask link', id);
220
+ }
221
+ return row;
222
+ }
223
+ validateCreateSync(data) {
224
+ const required = {
225
+ epicId: data.epicId.trim(),
226
+ epicIdSnapshot: data.epicIdSnapshot.trim(),
227
+ parentEpicIdSnapshot: data.parentEpicIdSnapshot.trim(),
228
+ parentSourceLinkIdSnapshot: data.parentSourceLinkIdSnapshot.trim(),
229
+ connectionIdSnapshot: data.connectionIdSnapshot.trim(),
230
+ remoteScopeKey: data.remoteScopeKey.trim(),
231
+ workAreaRemoteId: data.workAreaRemoteId.trim(),
232
+ parentRemoteTaskId: data.parentRemoteTaskId.trim(),
233
+ ownershipToken: data.ownershipToken.trim(),
234
+ desiredFingerprint: data.desiredFingerprint.trim(),
235
+ };
236
+ if (Object.values(required).some((value) => !value)) {
237
+ throw new error_types_1.ValidationError('Managed subtask ownership and desired-state fields are required.');
238
+ }
239
+ if (required.epicId !== required.epicIdSnapshot) {
240
+ throw new error_types_1.ValidationError('Managed subtask Epic identity snapshot must match its live Epic.');
241
+ }
242
+ if (data.connectionGeneration < 1 || data.syncSettingRevision < 1 || data.desiredVersion < 1) {
243
+ throw new error_types_1.ValidationError('Managed subtask generations and versions must be positive.');
244
+ }
245
+ const epic = this.db
246
+ .select({ id: schema_1.epics.id, parentId: schema_1.epics.parentId })
247
+ .from(schema_1.epics)
248
+ .where((0, drizzle_orm_1.eq)(schema_1.epics.id, required.epicId))
249
+ .get();
250
+ if (!epic) {
251
+ throw new error_types_1.NotFoundError('Epic', required.epicId);
252
+ }
253
+ if (epic.parentId !== required.parentEpicIdSnapshot) {
254
+ throw new error_types_1.ValidationError('Managed subtask parent Epic proof does not match current state.');
255
+ }
256
+ const parentLink = this.db
257
+ .select()
258
+ .from(schema_1.externalTaskLinks)
259
+ .where((0, drizzle_orm_1.eq)(schema_1.externalTaskLinks.id, required.parentSourceLinkIdSnapshot))
260
+ .get();
261
+ if (!parentLink ||
262
+ parentLink.epicId !== required.parentEpicIdSnapshot ||
263
+ parentLink.provider !== data.provider ||
264
+ parentLink.remoteScopeKey !== required.remoteScopeKey ||
265
+ parentLink.remoteTaskId !== required.parentRemoteTaskId ||
266
+ parentLink.sourceSnapshot.workAreaId !==
267
+ required.workAreaRemoteId) {
268
+ throw new error_types_1.ValidationError('Managed subtask parent source proof does not match the stored link.');
269
+ }
270
+ const connection = this.db
271
+ .select()
272
+ .from(schema_1.integrationConnections)
273
+ .where((0, drizzle_orm_1.eq)(schema_1.integrationConnections.id, required.connectionIdSnapshot))
274
+ .get();
275
+ if (!connection ||
276
+ connection.provider !== data.provider ||
277
+ connection.generation !== data.connectionGeneration ||
278
+ connection.syncSettingRevision !== data.syncSettingRevision ||
279
+ !connection.subtaskSyncEnabled) {
280
+ throw new error_types_1.ValidationError('Managed subtask connection fence does not match current state.');
281
+ }
282
+ return { ...data, ...required };
283
+ }
284
+ normalizeUpdate(data) {
285
+ const update = { ...data };
286
+ for (const key of [
287
+ 'connectionIdSnapshot',
288
+ 'remoteTaskId',
289
+ 'remoteKey',
290
+ 'desiredFingerprint',
291
+ 'confirmedFingerprint',
292
+ 'safeErrorCode',
293
+ ]) {
294
+ if (typeof update[key] === 'string') {
295
+ const value = update[key].trim();
296
+ if (!value) {
297
+ throw new error_types_1.ValidationError(`Managed subtask ${key} cannot be empty.`);
298
+ }
299
+ update[key] = value;
300
+ }
301
+ }
302
+ if (typeof update.safeErrorCode === 'string' &&
303
+ !/^[a-z0-9_]{1,128}$/.test(update.safeErrorCode)) {
304
+ throw new error_types_1.ValidationError('Managed subtask safeErrorCode must be a bounded error code.');
305
+ }
306
+ return update;
307
+ }
308
+ assertExactOwnershipProof(managed, sourceSnapshot) {
309
+ if (sourceSnapshot.ownershipToken !== managed.ownershipToken ||
310
+ sourceSnapshot.parentRemoteTaskId !== managed.parentRemoteTaskId ||
311
+ sourceSnapshot.workAreaRemoteId !== managed.workAreaRemoteId) {
312
+ throw new error_types_1.ConflictError('Remote subtask ownership proof does not match managed state.', {
313
+ managedLinkId: managed.id,
314
+ reason: 'ownership_mismatch',
315
+ });
316
+ }
317
+ }
318
+ }
319
+ exports.ExternalManagedSubtaskStorageDelegate = ExternalManagedSubtaskStorageDelegate;
320
+ //# sourceMappingURL=external-managed-subtask.delegate.js.map