@overlordai/server 1.0.175 → 1.0.177

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 (289) hide show
  1. package/database/migrations/020-connectors.sql +48 -0
  2. package/database/migrations/021-task-design-context.sql +17 -0
  3. package/dist/adapters/command-parser.utils.d.ts +1 -0
  4. package/dist/adapters/command-parser.utils.d.ts.map +1 -1
  5. package/dist/adapters/command-parser.utils.js +9 -0
  6. package/dist/adapters/command-parser.utils.js.map +1 -1
  7. package/dist/adapters/nlu.service.d.ts.map +1 -1
  8. package/dist/adapters/nlu.service.js +4 -1
  9. package/dist/adapters/nlu.service.js.map +1 -1
  10. package/dist/app.module.d.ts.map +1 -1
  11. package/dist/app.module.js +2 -0
  12. package/dist/app.module.js.map +1 -1
  13. package/dist/connectors/connector-closure.service.d.ts +16 -0
  14. package/dist/connectors/connector-closure.service.d.ts.map +1 -0
  15. package/dist/connectors/connector-closure.service.js +97 -0
  16. package/dist/connectors/connector-closure.service.js.map +1 -0
  17. package/dist/connectors/connector-dispatch.service.d.ts +30 -0
  18. package/dist/connectors/connector-dispatch.service.d.ts.map +1 -0
  19. package/dist/connectors/connector-dispatch.service.js +226 -0
  20. package/dist/connectors/connector-dispatch.service.js.map +1 -0
  21. package/dist/connectors/connector.constants.d.ts +4 -0
  22. package/dist/connectors/connector.constants.d.ts.map +1 -0
  23. package/dist/connectors/connector.constants.js +12 -0
  24. package/dist/connectors/connector.constants.js.map +1 -0
  25. package/dist/connectors/connector.controller.d.ts +20 -0
  26. package/dist/connectors/connector.controller.d.ts.map +1 -0
  27. package/dist/connectors/connector.controller.js +166 -0
  28. package/dist/connectors/connector.controller.js.map +1 -0
  29. package/dist/connectors/connector.interface.d.ts +61 -0
  30. package/dist/connectors/connector.interface.d.ts.map +1 -0
  31. package/dist/connectors/connector.interface.js +3 -0
  32. package/dist/connectors/connector.interface.js.map +1 -0
  33. package/dist/connectors/connector.module.d.ts +3 -0
  34. package/dist/connectors/connector.module.d.ts.map +1 -0
  35. package/dist/connectors/connector.module.js +50 -0
  36. package/dist/connectors/connector.module.js.map +1 -0
  37. package/dist/connectors/connector.registry.d.ts +15 -0
  38. package/dist/connectors/connector.registry.d.ts.map +1 -0
  39. package/dist/connectors/connector.registry.js +48 -0
  40. package/dist/connectors/connector.registry.js.map +1 -0
  41. package/dist/connectors/design-context.service.d.ts +21 -0
  42. package/dist/connectors/design-context.service.d.ts.map +1 -0
  43. package/dist/connectors/design-context.service.js +77 -0
  44. package/dist/connectors/design-context.service.js.map +1 -0
  45. package/dist/connectors/design-review-trigger.service.d.ts +15 -0
  46. package/dist/connectors/design-review-trigger.service.d.ts.map +1 -0
  47. package/dist/connectors/design-review-trigger.service.js +98 -0
  48. package/dist/connectors/design-review-trigger.service.js.map +1 -0
  49. package/dist/connectors/figma/figma-url-parser.d.ts +12 -0
  50. package/dist/connectors/figma/figma-url-parser.d.ts.map +1 -0
  51. package/dist/connectors/figma/figma-url-parser.js +28 -0
  52. package/dist/connectors/figma/figma-url-parser.js.map +1 -0
  53. package/dist/connectors/figma/figma.client.d.ts +67 -0
  54. package/dist/connectors/figma/figma.client.d.ts.map +1 -0
  55. package/dist/connectors/figma/figma.client.js +67 -0
  56. package/dist/connectors/figma/figma.client.js.map +1 -0
  57. package/dist/connectors/figma/figma.connector.d.ts +29 -0
  58. package/dist/connectors/figma/figma.connector.d.ts.map +1 -0
  59. package/dist/connectors/figma/figma.connector.js +223 -0
  60. package/dist/connectors/figma/figma.connector.js.map +1 -0
  61. package/dist/connectors/figma/index.d.ts +4 -0
  62. package/dist/connectors/figma/index.d.ts.map +1 -0
  63. package/dist/connectors/figma/index.js +10 -0
  64. package/dist/connectors/figma/index.js.map +1 -0
  65. package/dist/connectors/issue-ref-helpers.d.ts +10 -0
  66. package/dist/connectors/issue-ref-helpers.d.ts.map +1 -0
  67. package/dist/connectors/issue-ref-helpers.js +24 -0
  68. package/dist/connectors/issue-ref-helpers.js.map +1 -0
  69. package/dist/connectors/issue-ref-parser.d.ts +22 -0
  70. package/dist/connectors/issue-ref-parser.d.ts.map +1 -0
  71. package/dist/connectors/issue-ref-parser.js +35 -0
  72. package/dist/connectors/issue-ref-parser.js.map +1 -0
  73. package/dist/connectors/issue-ref-resolver.service.d.ts +44 -0
  74. package/dist/connectors/issue-ref-resolver.service.d.ts.map +1 -0
  75. package/dist/connectors/issue-ref-resolver.service.js +226 -0
  76. package/dist/connectors/issue-ref-resolver.service.js.map +1 -0
  77. package/dist/connectors/jira/jira.client.d.ts +58 -0
  78. package/dist/connectors/jira/jira.client.d.ts.map +1 -0
  79. package/dist/connectors/jira/jira.client.js +70 -0
  80. package/dist/connectors/jira/jira.client.js.map +1 -0
  81. package/dist/connectors/jira/jira.connector.d.ts +17 -0
  82. package/dist/connectors/jira/jira.connector.d.ts.map +1 -0
  83. package/dist/connectors/jira/jira.connector.js +141 -0
  84. package/dist/connectors/jira/jira.connector.js.map +1 -0
  85. package/dist/connectors/sentry/sentry.client.d.ts +54 -0
  86. package/dist/connectors/sentry/sentry.client.d.ts.map +1 -0
  87. package/dist/connectors/sentry/sentry.client.js +69 -0
  88. package/dist/connectors/sentry/sentry.client.js.map +1 -0
  89. package/dist/connectors/sentry/sentry.connector.d.ts +17 -0
  90. package/dist/connectors/sentry/sentry.connector.d.ts.map +1 -0
  91. package/dist/connectors/sentry/sentry.connector.js +173 -0
  92. package/dist/connectors/sentry/sentry.connector.js.map +1 -0
  93. package/dist/connectors/webhook-comment-parser.d.ts +18 -0
  94. package/dist/connectors/webhook-comment-parser.d.ts.map +1 -0
  95. package/dist/connectors/webhook-comment-parser.js +28 -0
  96. package/dist/connectors/webhook-comment-parser.js.map +1 -0
  97. package/dist/database/repositories/connector.repository.d.ts +84 -0
  98. package/dist/database/repositories/connector.repository.d.ts.map +1 -0
  99. package/dist/database/repositories/connector.repository.js +222 -0
  100. package/dist/database/repositories/connector.repository.js.map +1 -0
  101. package/dist/database/repositories/developer.repository.d.ts +6 -1
  102. package/dist/database/repositories/developer.repository.d.ts.map +1 -1
  103. package/dist/database/repositories/developer.repository.js +19 -1
  104. package/dist/database/repositories/developer.repository.js.map +1 -1
  105. package/dist/database/repositories/external-issue-link.repository.d.ts +27 -0
  106. package/dist/database/repositories/external-issue-link.repository.d.ts.map +1 -0
  107. package/dist/database/repositories/external-issue-link.repository.js +85 -0
  108. package/dist/database/repositories/external-issue-link.repository.js.map +1 -0
  109. package/dist/database/repositories/task-design-context.repository.d.ts +33 -0
  110. package/dist/database/repositories/task-design-context.repository.d.ts.map +1 -0
  111. package/dist/database/repositories/task-design-context.repository.js +76 -0
  112. package/dist/database/repositories/task-design-context.repository.js.map +1 -0
  113. package/dist/database/repository.module.d.ts.map +1 -1
  114. package/dist/database/repository.module.js +6 -0
  115. package/dist/database/repository.module.js.map +1 -1
  116. package/dist/dispatcher/dedup.service.d.ts +1 -1
  117. package/dist/dispatcher/dedup.service.d.ts.map +1 -1
  118. package/dist/dispatcher/dedup.service.js +2 -2
  119. package/dist/dispatcher/dedup.service.js.map +1 -1
  120. package/dist/dispatcher/dispatcher.module.d.ts.map +1 -1
  121. package/dist/dispatcher/dispatcher.module.js +2 -1
  122. package/dist/dispatcher/dispatcher.module.js.map +1 -1
  123. package/dist/dispatcher/dispatcher.service.d.ts +7 -1
  124. package/dist/dispatcher/dispatcher.service.d.ts.map +1 -1
  125. package/dist/dispatcher/dispatcher.service.js +79 -8
  126. package/dist/dispatcher/dispatcher.service.js.map +1 -1
  127. package/dist/dispatcher/dispatcher.types.d.ts +26 -0
  128. package/dist/dispatcher/dispatcher.types.d.ts.map +1 -1
  129. package/dist/dispatcher/scheduler.service.d.ts +3 -1
  130. package/dist/dispatcher/scheduler.service.d.ts.map +1 -1
  131. package/dist/dispatcher/scheduler.service.js +16 -2
  132. package/dist/dispatcher/scheduler.service.js.map +1 -1
  133. package/dist/dispatcher/task-creation.service.d.ts +47 -3
  134. package/dist/dispatcher/task-creation.service.d.ts.map +1 -1
  135. package/dist/dispatcher/task-creation.service.js +26 -9
  136. package/dist/dispatcher/task-creation.service.js.map +1 -1
  137. package/dist/dispatcher/task-lifecycle.service.d.ts +5 -1
  138. package/dist/dispatcher/task-lifecycle.service.d.ts.map +1 -1
  139. package/dist/dispatcher/task-lifecycle.service.js +32 -3
  140. package/dist/dispatcher/task-lifecycle.service.js.map +1 -1
  141. package/dist/notifier/notification-consumer.d.ts +3 -1
  142. package/dist/notifier/notification-consumer.d.ts.map +1 -1
  143. package/dist/notifier/notification-consumer.js +26 -5
  144. package/dist/notifier/notification-consumer.js.map +1 -1
  145. package/dist/notifier/template.service.d.ts +6 -0
  146. package/dist/notifier/template.service.d.ts.map +1 -1
  147. package/dist/notifier/template.service.js +12 -0
  148. package/dist/notifier/template.service.js.map +1 -1
  149. package/dist/web/admin/admin-connector.controller.d.ts +58 -0
  150. package/dist/web/admin/admin-connector.controller.d.ts.map +1 -0
  151. package/dist/web/admin/admin-connector.controller.js +327 -0
  152. package/dist/web/admin/admin-connector.controller.js.map +1 -0
  153. package/dist/web/admin/admin-developer.controller.d.ts +1 -1
  154. package/dist/web/admin/admin-developer.controller.d.ts.map +1 -1
  155. package/dist/web/admin/admin-developer.controller.js +16 -5
  156. package/dist/web/admin/admin-developer.controller.js.map +1 -1
  157. package/dist/web/dashboard.controller.d.ts +1 -1
  158. package/dist/web/dashboard.service.d.ts +2 -7
  159. package/dist/web/dashboard.service.d.ts.map +1 -1
  160. package/dist/web/dashboard.service.js +16 -21
  161. package/dist/web/dashboard.service.js.map +1 -1
  162. package/dist/web/frame-handlers/review-report.handler.d.ts +3 -1
  163. package/dist/web/frame-handlers/review-report.handler.d.ts.map +1 -1
  164. package/dist/web/frame-handlers/review-report.handler.js +8 -3
  165. package/dist/web/frame-handlers/review-report.handler.js.map +1 -1
  166. package/dist/web/task.controller.d.ts +11 -1
  167. package/dist/web/task.controller.d.ts.map +1 -1
  168. package/dist/web/task.controller.js +118 -4
  169. package/dist/web/task.controller.js.map +1 -1
  170. package/dist/web/web.module.d.ts.map +1 -1
  171. package/dist/web/web.module.js +4 -1
  172. package/dist/web/web.module.js.map +1 -1
  173. package/dist/web/worker-channel.gateway.d.ts +3 -1
  174. package/dist/web/worker-channel.gateway.d.ts.map +1 -1
  175. package/dist/web/worker-channel.gateway.js +6 -3
  176. package/dist/web/worker-channel.gateway.js.map +1 -1
  177. package/package.json +4 -4
  178. package/public/assets/{AccessTokensPage-BlZBgj0-.js → AccessTokensPage-BhRmma33.js} +1 -1
  179. package/public/assets/{AdminPage-C0OFG0LC.js → AdminPage-ByfD-Bj7.js} +1 -1
  180. package/public/assets/{AgentCliPage-Ci2XVaN8.js → AgentCliPage-DyJnRmFm.js} +1 -1
  181. package/public/assets/{ApiReferencePage-Dm9y-zCM.js → ApiReferencePage-Wcyoo5XT.js} +1 -1
  182. package/public/assets/{ArchitecturePage-BetPO5Ws.js → ArchitecturePage-DgwFpJ3c.js} +1 -1
  183. package/public/assets/{AuditLogPage-Dbd27v1s.js → AuditLogPage-ByFVvlFb.js} +1 -1
  184. package/public/assets/{AutomationCreatePage-BvSw8KoZ.js → AutomationCreatePage-Cx-FCZEr.js} +1 -1
  185. package/public/assets/{AutomationDetailPage-1Y2tp1KP.js → AutomationDetailPage-BDh7SFeh.js} +1 -1
  186. package/public/assets/{AutomationEditPage-C9UO1XrW.js → AutomationEditPage-D76Ybtpz.js} +1 -1
  187. package/public/assets/{AutomationListPage-CJk8o3Vp.js → AutomationListPage-bNDDFN0Y.js} +1 -1
  188. package/public/assets/{AutomationRunDetailPage-h7T4V9Yq.js → AutomationRunDetailPage-BEWaGMai.js} +1 -1
  189. package/public/assets/{BindPlatformPage-DpzV1bpB.js → BindPlatformPage-CgfAbUal.js} +1 -1
  190. package/public/assets/{BotIntegrationPage-9kAG4BIL.js → BotIntegrationPage-D1A10L4d.js} +1 -1
  191. package/public/assets/{BotManage-BanZ5a5-.js → BotManage-IJm4jT-7.js} +1 -1
  192. package/public/assets/{BotSetupPage-BZIfJYqL.js → BotSetupPage-DIUSFgGv.js} +1 -1
  193. package/public/assets/{ChangelogPage-Da8n7_T3.js → ChangelogPage-D3R17QQT.js} +1 -1
  194. package/public/assets/{Checkbox-Dsj1BuTd.js → Checkbox-Drx9oKpj.js} +1 -1
  195. package/public/assets/{CliReferencePage-BDFsLYmx.js → CliReferencePage-BQ6Eyq2_.js} +1 -1
  196. package/public/assets/{ConfirmStageDialog-BUTA9YZ1.js → ConfirmStageDialog-BjjJNcLJ.js} +1 -1
  197. package/public/assets/ConnectorsPage-BgBXQlwq.js +48 -0
  198. package/public/assets/{DeploymentPage-B5TlN0FI.js → DeploymentPage-Cbmb8KKs.js} +1 -1
  199. package/public/assets/{DevWorkflowPage-Abvhng0F.js → DevWorkflowPage-Dur0zn7L.js} +1 -1
  200. package/public/assets/DeveloperManage-BmFhmcbZ.js +16 -0
  201. package/public/assets/{DeveloperSetupPage-QipfVSjp.js → DeveloperSetupPage-G9amle-q.js} +1 -1
  202. package/public/assets/{DocsIndexPage-Dw-saIXq.js → DocsIndexPage-CAPCKH_C.js} +11 -6
  203. package/public/assets/{DocsLayout-BsGaDVp1.js → DocsLayout-gVsQBlHm.js} +1 -1
  204. package/public/assets/{DocsPrimitives-Bv8TQpkc.js → DocsPrimitives-VBA7lZhS.js} +1 -1
  205. package/public/assets/{EditProjectPage-CtNCwK-z.js → EditProjectPage-Dn-MgU4f.js} +1 -1
  206. package/public/assets/{EmptyState-BpbqIJyG.js → EmptyState-B0pdsOsA.js} +1 -1
  207. package/public/assets/{EnvVariablesPage-D5Cn_E5P.js → EnvVariablesPage-DXaJ3Ejc.js} +1 -1
  208. package/public/assets/HomePage-B4ION8nK.js +1 -0
  209. package/public/assets/{InfoRow-BCDb21nt.js → InfoRow-DTHohr5Y.js} +1 -1
  210. package/public/assets/{InstallationPage-DLW6MXhs.js → InstallationPage-BVY5fIOG.js} +1 -1
  211. package/public/assets/{LandingPage-BLcQBvuD.js → LandingPage-DAP65IzR.js} +1 -1
  212. package/public/assets/{LocalDevelopmentPage-BnbdovKe.js → LocalDevelopmentPage-C9pD5y0c.js} +1 -1
  213. package/public/assets/{LoginPage-Bh-p4hP9.js → LoginPage-BToTW-qz.js} +1 -1
  214. package/public/assets/{MetricBar-DLR15rum.js → MetricBar-DA42IEeN.js} +1 -1
  215. package/public/assets/{MultiSelect-BKtGWYgt.js → MultiSelect-5hKAHK2N.js} +1 -1
  216. package/public/assets/{NotFoundPage-BpUwim1l.js → NotFoundPage-BQbQRjCC.js} +1 -1
  217. package/public/assets/{OnboardingGuide-BTsSW7Mq.js → OnboardingGuide-or_CwmfY.js} +1 -1
  218. package/public/assets/{PermissionsPage-A828G2ih.js → PermissionsPage-D867c8K5.js} +1 -1
  219. package/public/assets/{PipelineConfigPage-Cw1OxgKV.js → PipelineConfigPage-DYL-Eg8a.js} +1 -1
  220. package/public/assets/{PipelineEditorPage-tewviYrj.js → PipelineEditorPage-D6EpDvPI.js} +1 -1
  221. package/public/assets/{PlanPage-Bidp5iEn.js → PlanPage-Bfgn9hdf.js} +1 -1
  222. package/public/assets/{ProfilePage-DgFxZS6i.js → ProfilePage-DydZ_JO_.js} +1 -1
  223. package/public/assets/{ProjectDetailPage-BoIU1U3V.js → ProjectDetailPage-BLSkZmV0.js} +1 -1
  224. package/public/assets/{ProjectListPage-DMoN7Ghc.js → ProjectListPage-KWBq3v71.js} +1 -1
  225. package/public/assets/{PtyTerminal-QdM0LGge.js → PtyTerminal-DZ-tRh7i.js} +1 -1
  226. package/public/assets/{QuickAuth-CGnZQLaj.js → QuickAuth-D_2JnzxW.js} +1 -1
  227. package/public/assets/{RemoveMemberConfirmDialog-uFuATit4.js → RemoveMemberConfirmDialog-B1T8FRls.js} +1 -1
  228. package/public/assets/ReviewAggregatePage-D-sgcTHd.js +6 -0
  229. package/public/assets/ReviewPage-DLXr5nmf.js +1 -0
  230. package/public/assets/{Select-CC0FnszM.js → Select-PNbJCK1d.js} +1 -1
  231. package/public/assets/{SettingsPage-DiecpWAG.js → SettingsPage-DgNCPUzP.js} +1 -1
  232. package/public/assets/{Skeleton-WCDZdltv.js → Skeleton-C9OmZNVj.js} +1 -1
  233. package/public/assets/{SkillPage-ABYkJSop.js → SkillPage-jXi2VAvG.js} +1 -1
  234. package/public/assets/TaskDetailPage-Dy0CSg-i.js +21 -0
  235. package/public/assets/{TaskGuidePage-CFzoePPd.js → TaskGuidePage-C2VJEOGp.js} +1 -1
  236. package/public/assets/TaskListPage-63cj9-Gf.js +1 -0
  237. package/public/assets/{TaskStatusBadge-CzUIb3QQ.js → TaskStatusBadge-Ieecwysj.js} +1 -1
  238. package/public/assets/{TerminalHomePage-DP-gqkiq.js → TerminalHomePage-wxZHwphZ.js} +1 -1
  239. package/public/assets/{TokenManage-CbLsJbR9.js → TokenManage-D_fRhfSC.js} +1 -1
  240. package/public/assets/{Tooltip-Ds3lc4sS.js → Tooltip-hO7lE45q.js} +1 -1
  241. package/public/assets/{TotpSetupPage-Bakhx3kM.js → TotpSetupPage-DPv5zEkr.js} +1 -1
  242. package/public/assets/{WorkerDetailPage-W_1tf-Ng.js → WorkerDetailPage-BNHh3G4i.js} +1 -1
  243. package/public/assets/{WorkerListPage-DAgJojBW.js → WorkerListPage-CnUaksv5.js} +1 -1
  244. package/public/assets/{WorkerOperationsPage-BE8gDr3P.js → WorkerOperationsPage-BF-j3TGV.js} +1 -1
  245. package/public/assets/{WorkerSetupGuidePage-Cjwu7yCO.js → WorkerSetupGuidePage-CgoXTtvB.js} +1 -1
  246. package/public/assets/{WorkerSetupPage-C4F2PDWx.js → WorkerSetupPage-C9FJdEtx.js} +1 -1
  247. package/public/assets/{agent-type-options-BTd_pbKQ.js → agent-type-options-DPcGCrTV.js} +1 -1
  248. package/public/assets/{arrow-left-Czit8jGK.js → arrow-left-CMC8xPNU.js} +1 -1
  249. package/public/assets/{arrow-right-DUvU3ZSE.js → arrow-right-CzgMaKkq.js} +1 -1
  250. package/public/assets/{bot-xYitrdXz.js → bot-DZNbJaal.js} +1 -1
  251. package/public/assets/{chevron-down-DwSdaR46.js → chevron-down-Byw_H7qa.js} +1 -1
  252. package/public/assets/{chevron-left-DMFdbT8q.js → chevron-left-B9OwsObK.js} +1 -1
  253. package/public/assets/{chevron-right-BqoEBUXc.js → chevron-right-BDxmkY05.js} +1 -1
  254. package/public/assets/{chevron-up-4jZShvn6.js → chevron-up-qpQChOEd.js} +1 -1
  255. package/public/assets/{circle-alert-gAYg5DQY.js → circle-alert-qjGQBuvk.js} +1 -1
  256. package/public/assets/{clock-Bn8CRcdc.js → clock-RH0F7m7Y.js} +1 -1
  257. package/public/assets/{copy-_C7txolK.js → copy-sq8YNzps.js} +1 -1
  258. package/public/assets/{download-CGR9pdGa.js → download-BILbhyFl.js} +1 -1
  259. package/public/assets/{external-link-DGEar13h.js → external-link-6-aTSDMz.js} +1 -1
  260. package/public/assets/{git-fork-bd2vu3ng.js → git-fork-Tz0-ma48.js} +1 -1
  261. package/public/assets/{index-DAwsREkq.js → index-CqgRY3L6.js} +13 -13
  262. package/public/assets/{key-b6kn-A1T.js → key-D8a2ymYq.js} +1 -1
  263. package/public/assets/{loader-circle-vH-Hp_AS.js → loader-circle-CRxnDWNg.js} +1 -1
  264. package/public/assets/{pencil-Cxzh8oiw.js → pencil-BB-LZCT2.js} +1 -1
  265. package/public/assets/{play-bFi1k4eQ.js → play-DP6MNxNf.js} +1 -1
  266. package/public/assets/{plus-DJTaWh3N.js → plus-DSLmbw91.js} +1 -1
  267. package/public/assets/{rotate-ccw-CXFQ7046.js → rotate-ccw-DkPBqmSU.js} +1 -1
  268. package/public/assets/{scroll-text-UIbwyc0E.js → scroll-text-Cn9LA-xo.js} +1 -1
  269. package/public/assets/{settings-DA_C9Znv.js → settings-DQCRnFRi.js} +1 -1
  270. package/public/assets/{skip-forward-C71GgwGt.js → skip-forward-ZkknEL37.js} +1 -1
  271. package/public/assets/{status-colors-C14ffr9M.js → status-colors-CpKIU449.js} +1 -1
  272. package/public/assets/{task-agent-BasiQZ0L.js → task-agent-knUib-IL.js} +1 -1
  273. package/public/assets/{task-constants-DihuKtBw.js → task-constants-DiU1z_dP.js} +1 -1
  274. package/public/assets/{task.store-MpV9TV7z.js → task.store-BfdxbFUg.js} +1 -1
  275. package/public/assets/{timer-COkLkLUF.js → timer-BJw0BmGT.js} +1 -1
  276. package/public/assets/{trash-2-CDhJihtl.js → trash-2-DLdIg5hq.js} +1 -1
  277. package/public/assets/{useFetch-CgkGfhaP.js → useFetch-cT1ib8kh.js} +1 -1
  278. package/public/assets/{users-BwpIig9c.js → users-D2JV7gxB.js} +1 -1
  279. package/public/assets/{wifi-D5o6IWuC.js → wifi-Jy12B8KN.js} +1 -1
  280. package/public/assets/{workflow-DXTOpHef.js → workflow-BmBIBEn9.js} +1 -1
  281. package/public/assets/{zap-CEUF2oJs.js → zap-oNjSxQ6J.js} +1 -1
  282. package/public/index.html +1 -1
  283. package/public/sw.js +1 -1
  284. package/public/assets/DeveloperManage-DPSHCC6K.js +0 -16
  285. package/public/assets/HomePage-BFNO_Hk6.js +0 -1
  286. package/public/assets/ReviewAggregatePage-D5S57j51.js +0 -6
  287. package/public/assets/ReviewPage-tkUY7vrY.js +0 -1
  288. package/public/assets/TaskDetailPage-D6qSqsm0.js +0 -21
  289. package/public/assets/TaskListPage-rDPMfjmN.js +0 -1
@@ -0,0 +1,27 @@
1
+ import { DatabaseService } from '../database.service';
2
+ export interface ExternalIssueLinkRow {
3
+ id: number;
4
+ taskId: number;
5
+ connectorInstanceId: number;
6
+ connectorPlatform: string;
7
+ externalIssueId: string;
8
+ externalIssueUrl: string;
9
+ externalProjectKey: string | null;
10
+ createdAt: string;
11
+ }
12
+ export declare class ExternalIssueLinkRepository {
13
+ private readonly database;
14
+ constructor(database: DatabaseService);
15
+ findByTaskId(taskId: number): ExternalIssueLinkRow[];
16
+ findByExternalIssue(platform: string, externalIssueId: string, connectorInstanceId?: number): ExternalIssueLinkRow[];
17
+ create(data: {
18
+ taskId: number;
19
+ connectorInstanceId: number;
20
+ connectorPlatform: string;
21
+ externalIssueId: string;
22
+ externalIssueUrl: string;
23
+ externalProjectKey?: string;
24
+ }): ExternalIssueLinkRow;
25
+ deleteByTaskId(taskId: number): number;
26
+ }
27
+ //# sourceMappingURL=external-issue-link.repository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"external-issue-link.repository.d.ts","sourceRoot":"","sources":["../../../src/database/repositories/external-issue-link.repository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AActD,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,mBAAmB,EAAE,MAAM,CAAC;IAC5B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;CACnB;AAMD,qBACa,2BAA2B;IAC1B,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAAR,QAAQ,EAAE,eAAe;IAEtD,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,oBAAoB,EAAE;IAQpD,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,mBAAmB,CAAC,EAAE,MAAM,GAAG,oBAAoB,EAAE;IAmBpH,MAAM,CAAC,IAAI,EAAE;QACX,MAAM,EAAE,MAAM,CAAC;QACf,mBAAmB,EAAE,MAAM,CAAC;QAC5B,iBAAiB,EAAE,MAAM,CAAC;QAC1B,eAAe,EAAE,MAAM,CAAC;QACxB,gBAAgB,EAAE,MAAM,CAAC;QACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B,GAAG,oBAAoB;IAoCxB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;CAGvC"}
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ExternalIssueLinkRepository = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const database_service_1 = require("../database.service");
15
+ const base_repository_1 = require("../base.repository");
16
+ const COLUMN_SCHEMA = {
17
+ id: { column: 'id', type: 'number' },
18
+ taskId: { column: 'task_id', type: 'number' },
19
+ connectorInstanceId: { column: 'connector_instance_id', type: 'number' },
20
+ connectorPlatform: { column: 'connector_platform', type: 'string' },
21
+ externalIssueId: { column: 'external_issue_id', type: 'string' },
22
+ externalIssueUrl: { column: 'external_issue_url', type: 'string' },
23
+ externalProjectKey: { column: 'external_project_key', type: 'string', nullable: true },
24
+ createdAt: { column: 'created_at', type: 'string' },
25
+ };
26
+ function mapLinkRow(row) {
27
+ return (0, base_repository_1.mapRow)(row, COLUMN_SCHEMA);
28
+ }
29
+ let ExternalIssueLinkRepository = class ExternalIssueLinkRepository {
30
+ constructor(database) {
31
+ this.database = database;
32
+ }
33
+ findByTaskId(taskId) {
34
+ const rows = this.database
35
+ .getDb()
36
+ .prepare('SELECT * FROM external_issue_links WHERE task_id = ? ORDER BY created_at ASC')
37
+ .all(taskId);
38
+ return rows.map(mapLinkRow);
39
+ }
40
+ findByExternalIssue(platform, externalIssueId, connectorInstanceId) {
41
+ if (connectorInstanceId != null) {
42
+ const rows = this.database
43
+ .getDb()
44
+ .prepare('SELECT * FROM external_issue_links WHERE connector_platform = ? AND external_issue_id = ? AND connector_instance_id = ? ORDER BY created_at DESC')
45
+ .all(platform, externalIssueId, connectorInstanceId);
46
+ return rows.map(mapLinkRow);
47
+ }
48
+ const rows = this.database
49
+ .getDb()
50
+ .prepare('SELECT * FROM external_issue_links WHERE connector_platform = ? AND external_issue_id = ? ORDER BY created_at DESC')
51
+ .all(platform, externalIssueId);
52
+ return rows.map(mapLinkRow);
53
+ }
54
+ create(data) {
55
+ const result = this.database
56
+ .getDb()
57
+ .prepare(`INSERT OR IGNORE INTO external_issue_links
58
+ (task_id, connector_instance_id, connector_platform, external_issue_id, external_issue_url, external_project_key)
59
+ VALUES (?, ?, ?, ?, ?, ?)`)
60
+ .run(data.taskId, data.connectorInstanceId, data.connectorPlatform, data.externalIssueId, data.externalIssueUrl, data.externalProjectKey ?? null);
61
+ if (result.changes === 0) {
62
+ // Already exists (UNIQUE constraint), find and return it
63
+ const existing = this.database
64
+ .getDb()
65
+ .prepare(`SELECT * FROM external_issue_links
66
+ WHERE task_id = ? AND connector_instance_id = ? AND external_issue_id = ?`)
67
+ .get(data.taskId, data.connectorInstanceId, data.externalIssueId);
68
+ return mapLinkRow(existing);
69
+ }
70
+ const row = this.database
71
+ .getDb()
72
+ .prepare('SELECT * FROM external_issue_links WHERE id = ?')
73
+ .get(Number(result.lastInsertRowid));
74
+ return mapLinkRow(row);
75
+ }
76
+ deleteByTaskId(taskId) {
77
+ return this.database.getDb().prepare('DELETE FROM external_issue_links WHERE task_id = ?').run(taskId).changes;
78
+ }
79
+ };
80
+ exports.ExternalIssueLinkRepository = ExternalIssueLinkRepository;
81
+ exports.ExternalIssueLinkRepository = ExternalIssueLinkRepository = __decorate([
82
+ (0, common_1.Injectable)(),
83
+ __metadata("design:paramtypes", [database_service_1.DatabaseService])
84
+ ], ExternalIssueLinkRepository);
85
+ //# sourceMappingURL=external-issue-link.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"external-issue-link.repository.js","sourceRoot":"","sources":["../../../src/database/repositories/external-issue-link.repository.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import { DatabaseService } from '../database.service';
2
+ export interface TaskDesignContextRow {
3
+ id: number;
4
+ taskId: number;
5
+ connectorInstanceId: number | null;
6
+ platform: string;
7
+ fileKey: string;
8
+ fileUrl: string;
9
+ nodeIds: string | null;
10
+ images: string;
11
+ commentId: string | null;
12
+ createdAt: string;
13
+ updatedAt: string;
14
+ }
15
+ export declare class TaskDesignContextRepository {
16
+ private readonly database;
17
+ constructor(database: DatabaseService);
18
+ findByTaskId(taskId: number): TaskDesignContextRow[];
19
+ create(data: {
20
+ taskId: number;
21
+ connectorInstanceId?: number | null;
22
+ platform: string;
23
+ fileKey: string;
24
+ fileUrl: string;
25
+ nodeIds?: string | null;
26
+ images: string;
27
+ commentId?: string | null;
28
+ }): TaskDesignContextRow;
29
+ updateImages(id: number, images: string): boolean;
30
+ deleteByTaskId(taskId: number): number;
31
+ private findById;
32
+ }
33
+ //# sourceMappingURL=task-design-context.repository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-design-context.repository.d.ts","sourceRoot":"","sources":["../../../src/database/repositories/task-design-context.repository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAiBtD,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAMD,qBACa,2BAA2B;IAC1B,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAAR,QAAQ,EAAE,eAAe;IAEtD,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,oBAAoB,EAAE;IAQpD,MAAM,CAAC,IAAI,EAAE;QACX,MAAM,EAAE,MAAM,CAAC;QACf,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACpC,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACxB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KAC3B,GAAG,oBAAoB;IAoBxB,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;IASjD,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAOtC,OAAO,CAAC,QAAQ;CAOjB"}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.TaskDesignContextRepository = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const database_service_1 = require("../database.service");
15
+ const base_repository_1 = require("../base.repository");
16
+ const COLUMN_SCHEMA = {
17
+ id: { column: 'id', type: 'number' },
18
+ taskId: { column: 'task_id', type: 'number' },
19
+ connectorInstanceId: { column: 'connector_instance_id', type: 'number', nullable: true },
20
+ platform: { column: 'platform', type: 'string' },
21
+ fileKey: { column: 'file_key', type: 'string' },
22
+ fileUrl: { column: 'file_url', type: 'string' },
23
+ nodeIds: { column: 'node_ids', type: 'string', nullable: true },
24
+ images: { column: 'images', type: 'string' },
25
+ commentId: { column: 'comment_id', type: 'string', nullable: true },
26
+ createdAt: { column: 'created_at', type: 'string' },
27
+ updatedAt: { column: 'updated_at', type: 'string' },
28
+ };
29
+ function mapContextRow(row) {
30
+ return (0, base_repository_1.mapRow)(row, COLUMN_SCHEMA);
31
+ }
32
+ let TaskDesignContextRepository = class TaskDesignContextRepository {
33
+ constructor(database) {
34
+ this.database = database;
35
+ }
36
+ findByTaskId(taskId) {
37
+ const rows = this.database
38
+ .getDb()
39
+ .prepare('SELECT * FROM task_design_context WHERE task_id = ? ORDER BY id ASC')
40
+ .all(taskId);
41
+ return rows.map(mapContextRow);
42
+ }
43
+ create(data) {
44
+ const result = this.database
45
+ .getDb()
46
+ .prepare(`INSERT INTO task_design_context (task_id, connector_instance_id, platform, file_key, file_url, node_ids, images, comment_id)
47
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?)`)
48
+ .run(data.taskId, data.connectorInstanceId ?? null, data.platform, data.fileKey, data.fileUrl, data.nodeIds ?? null, data.images, data.commentId ?? null);
49
+ return this.findById(Number(result.lastInsertRowid));
50
+ }
51
+ updateImages(id, images) {
52
+ return this.database
53
+ .getDb()
54
+ .prepare(`UPDATE task_design_context SET images = ?, updated_at = strftime('%Y-%m-%dT%H:%M:%SZ', 'now') WHERE id = ?`)
55
+ .run(images, id).changes > 0;
56
+ }
57
+ deleteByTaskId(taskId) {
58
+ return this.database
59
+ .getDb()
60
+ .prepare('DELETE FROM task_design_context WHERE task_id = ?')
61
+ .run(taskId).changes;
62
+ }
63
+ findById(id) {
64
+ const row = this.database
65
+ .getDb()
66
+ .prepare('SELECT * FROM task_design_context WHERE id = ?')
67
+ .get(id);
68
+ return row ? mapContextRow(row) : null;
69
+ }
70
+ };
71
+ exports.TaskDesignContextRepository = TaskDesignContextRepository;
72
+ exports.TaskDesignContextRepository = TaskDesignContextRepository = __decorate([
73
+ (0, common_1.Injectable)(),
74
+ __metadata("design:paramtypes", [database_service_1.DatabaseService])
75
+ ], TaskDesignContextRepository);
76
+ //# sourceMappingURL=task-design-context.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-design-context.repository.js","sourceRoot":"","sources":["../../../src/database/repositories/task-design-context.repository.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"repository.module.d.ts","sourceRoot":"","sources":["../../src/database/repository.module.ts"],"names":[],"mappings":"AA6BA,qBAKa,gBAAgB;CAAG"}
1
+ {"version":3,"file":"repository.module.d.ts","sourceRoot":"","sources":["../../src/database/repository.module.ts"],"names":[],"mappings":"AAmCA,qBAKa,gBAAgB;CAAG"}
@@ -20,6 +20,9 @@ const notification_repository_1 = require("./repositories/notification.repositor
20
20
  const workspace_repository_1 = require("./repositories/workspace.repository");
21
21
  const bot_repository_1 = require("./repositories/bot.repository");
22
22
  const automation_repository_1 = require("./repositories/automation.repository");
23
+ const connector_repository_1 = require("./repositories/connector.repository");
24
+ const external_issue_link_repository_1 = require("./repositories/external-issue-link.repository");
25
+ const task_design_context_repository_1 = require("./repositories/task-design-context.repository");
23
26
  const repositories = [
24
27
  task_repository_1.TaskRepository,
25
28
  worker_repository_1.WorkerRepository,
@@ -33,6 +36,9 @@ const repositories = [
33
36
  workspace_repository_1.WorkspaceRepository,
34
37
  bot_repository_1.BotRepository,
35
38
  automation_repository_1.AutomationRepository,
39
+ connector_repository_1.ConnectorRepository,
40
+ external_issue_link_repository_1.ExternalIssueLinkRepository,
41
+ task_design_context_repository_1.TaskDesignContextRepository,
36
42
  ];
37
43
  let RepositoryModule = class RepositoryModule {
38
44
  };
@@ -1 +1 @@
1
- {"version":3,"file":"repository.module.js","sourceRoot":"","sources":["../../src/database/repository.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAgD;AAChD,oEAAgE;AAChE,wEAAoE;AACpE,0EAAsE;AACtE,wFAAmF;AACnF,8EAA0E;AAC1E,0FAAqF;AACrF,oFAA+E;AAC/E,8EAAyE;AACzE,oFAAgF;AAChF,8EAA0E;AAC1E,kEAA8D;AAC9D,gFAA4E;AAE5E,MAAM,YAAY,GAAG;IACnB,gCAAc;IACd,oCAAgB;IAChB,sCAAiB;IACjB,mDAAuB;IACvB,0CAAmB;IACnB,qDAAwB;IACxB,+CAAqB;IACrB,yCAAkB;IAClB,gDAAsB;IACtB,0CAAmB;IACnB,8BAAa;IACb,4CAAoB;CACrB,CAAC;AAOK,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;CAAG,CAAA;AAAnB,4CAAgB;2BAAhB,gBAAgB;IAL5B,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC;QACN,SAAS,EAAE,YAAY;QACvB,OAAO,EAAE,YAAY;KACtB,CAAC;GACW,gBAAgB,CAAG"}
1
+ {"version":3,"file":"repository.module.js","sourceRoot":"","sources":["../../src/database/repository.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAgD;AAChD,oEAAgE;AAChE,wEAAoE;AACpE,0EAAsE;AACtE,wFAAmF;AACnF,8EAA0E;AAC1E,0FAAqF;AACrF,oFAA+E;AAC/E,8EAAyE;AACzE,oFAAgF;AAChF,8EAA0E;AAC1E,kEAA8D;AAC9D,gFAA4E;AAC5E,8EAA0E;AAC1E,kGAA4F;AAC5F,kGAA4F;AAE5F,MAAM,YAAY,GAAG;IACnB,gCAAc;IACd,oCAAgB;IAChB,sCAAiB;IACjB,mDAAuB;IACvB,0CAAmB;IACnB,qDAAwB;IACxB,+CAAqB;IACrB,yCAAkB;IAClB,gDAAsB;IACtB,0CAAmB;IACnB,8BAAa;IACb,4CAAoB;IACpB,0CAAmB;IACnB,4DAA2B;IAC3B,4DAA2B;CAC5B,CAAC;AAOK,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;CAAG,CAAA;AAAnB,4CAAgB;2BAAhB,gBAAgB;IAL5B,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC;QACN,SAAS,EAAE,YAAY;QACvB,OAAO,EAAE,YAAY;KACtB,CAAC;GACW,gBAAgB,CAAG"}
@@ -13,7 +13,7 @@ export declare class DedupService {
13
13
  * Compute a deterministic fingerprint for a task based on project key and description.
14
14
  * Returns the first 16 hex characters of the SHA-256 hash.
15
15
  */
16
- computeFingerprint(projectKey: string, description: string): string;
16
+ computeFingerprint(projectKey: string, description: string, issueRef?: string): string;
17
17
  /**
18
18
  * Store a pending confirmation payload in Redis with a TTL.
19
19
  * Used for interactive stage confirmations.
@@ -1 +1 @@
1
- {"version":3,"file":"dedup.service.d.ts","sourceRoot":"","sources":["../../src/dispatcher/dedup.service.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,qBACa,YAAY;IACX,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,YAAY;IAEhD,OAAO,CAAC,oBAAoB;IAO5B;;;;OAIG;IACG,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQxD;;;OAGG;IACH,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM;IAMnE;;;OAGG;IACG,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKnE;;;OAGG;IACG,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAS5D;;;;OAIG;IACG,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAgDtE;;OAEG;IACG,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtD;;;;OAIG;IACG,qBAAqB,CACzB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAexE,mEAAmE;IAC7D,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1D,wEAAwE;IAClE,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUxE;;;OAGG;IACG,aAAa,CACjB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC;QACT,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,IAAI,CAAC;CA2BV"}
1
+ {"version":3,"file":"dedup.service.d.ts","sourceRoot":"","sources":["../../src/dispatcher/dedup.service.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,qBACa,YAAY;IACX,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,YAAY;IAEhD,OAAO,CAAC,oBAAoB;IAO5B;;;;OAIG;IACG,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQxD;;;OAGG;IACH,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM;IAMtF;;;OAGG;IACG,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKnE;;;OAGG;IACG,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAS5D;;;;OAIG;IACG,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAgDtE;;OAEG;IACG,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtD;;;;OAIG;IACG,qBAAqB,CACzB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAexE,mEAAmE;IAC7D,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1D,wEAAwE;IAClE,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUxE;;;OAGG;IACG,aAAa,CACjB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC;QACT,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,IAAI,CAAC;CA2BV"}
@@ -40,9 +40,9 @@ let DedupService = class DedupService {
40
40
  * Compute a deterministic fingerprint for a task based on project key and description.
41
41
  * Returns the first 16 hex characters of the SHA-256 hash.
42
42
  */
43
- computeFingerprint(projectKey, description) {
43
+ computeFingerprint(projectKey, description, issueRef) {
44
44
  const hash = (0, node_crypto_1.createHash)('sha256');
45
- hash.update(projectKey + '\0' + description);
45
+ hash.update(projectKey + '\0' + description + '\0' + (issueRef ?? ''));
46
46
  return hash.digest('hex').slice(0, 16);
47
47
  }
48
48
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"dedup.service.js","sourceRoot":"","sources":["../../src/dispatcher/dedup.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dedup.service.js","sourceRoot":"","sources":["../../src/dispatcher/dedup.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,6CAAyC;AACzC,mDAG8B;AAC9B,0DAAsD;AAG/C,IAAM,YAAY,GAAlB,MAAM,YAAY;IACvB,YAA6B,KAAmB;QAAnB,UAAK,GAAL,KAAK,CAAc;IAAG,CAAC;IAE5C,oBAAoB,CAAC,IAAY;QACvC,MAAM,OAAO,GAAI,IAA8B,CAAC,OAAO,CAAC;QACxD,OAAO,OAAO,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC;YAC3E,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,kCAAuB,CAAC;IAC9B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,eAAe,CAAC,OAAe;QACnC,MAAM,GAAG,GAAG,WAAW,OAAO,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QACtC,sFAAsF;QACtF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,8BAAmB,EAAE,IAAI,CAAC,CAAC;QAC3E,OAAO,MAAM,KAAK,IAAI,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,kBAAkB,CAAC,UAAkB,EAAE,WAAmB,EAAE,QAAiB;QAC3E,MAAM,IAAI,GAAG,IAAA,wBAAU,EAAC,QAAQ,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,GAAG,WAAW,GAAG,IAAI,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC;QACvE,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACzC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,mBAAmB,CAAC,GAAW,EAAE,IAAY;QACjD,MAAM,QAAQ,GAAG,WAAW,GAAG,EAAE,CAAC;QAClC,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1F,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,iBAAiB,CAAC,GAAW;QACjC,MAAM,QAAQ,GAAG,WAAW,GAAG,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC7C,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAW,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,wBAAwB,CAAC,MAAc;QAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,OAAO,GAAG,iBAAiB,MAAM,IAAI,CAAC;QAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;QAEjE,OAAO,IAAI,OAAO,CAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACpD,IAAI,QAAQ,GAAG,KAAK,CAAC;YAErB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAc,EAAE,EAAE;gBACnC,IAAI,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO;gBAC1C,MAAM,CAAC,KAAK,EAAE,CAAC;gBAEf,oDAAoD;gBACpD,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;oBACnC,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;wBACzB,IAAI,QAAQ;4BAAE,MAAM;wBACpB,IAAI,CAAC,GAAG;4BAAE,SAAS;wBACnB,IAAI,CAAC;4BACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAW,CAAC;4BACvC,QAAQ,GAAG,IAAI,CAAC;4BAChB,MAAM,CAAC,OAAO,EAAE,CAAC;4BACjB,OAAO,CAAC,IAAI,CAAC,CAAC;4BACd,OAAO;wBACT,CAAC;wBAAC,MAAM,CAAC;4BACP,SAAS;wBACX,CAAC;oBACH,CAAC;oBAED,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;oBACtB,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,QAAQ,GAAG,IAAI,CAAC;wBAChB,MAAM,CAAC,OAAO,EAAE,CAAC;wBACjB,MAAM,CAAC,GAAG,CAAC,CAAC;oBACd,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;gBACpB,IAAI,CAAC,QAAQ;oBAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE;gBAChC,IAAI,CAAC,QAAQ;oBAAE,MAAM,CAAC,GAAG,CAAC,CAAC;YAC7B,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,oBAAoB,CAAC,GAAW;QACpC,MAAM,QAAQ,GAAG,WAAW,GAAG,EAAE,CAAC;QAClC,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,qBAAqB,CACzB,MAAc;QAEd,MAAM,QAAQ,GAAG,4BAA4B,MAAM,EAAE,CAAC;QACtD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAClD,IAAI,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC;QAE7B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAChD,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,iDAAiD;YACjD,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC/B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;IACvC,CAAC;IAED,mEAAmE;IACnE,KAAK,CAAC,mBAAmB,CAAC,QAAgB;QACxC,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IAED,wEAAwE;IACxE,KAAK,CAAC,kBAAkB,CAAC,UAAkB,EAAE,GAAW;QACtD,IAAI,GAAG,GAAG,kCAAuB,CAAC;QAClC,IAAI,CAAC;YACH,GAAG,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAW,CAAC,CAAC;QAC7D,CAAC;QAAC,MAAM,CAAC;YACP,mDAAmD;QACrD,CAAC;QACD,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC/C,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,aAAa,CACjB,MAAc,EACd,MAAc,EACd,MAAe;QAQf,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAE3B,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAA4B,CAAC;YACjE,MAAM,SAAS,GAAI,IAAI,CAAC,WAAW,CAAY,IAAI,MAAM,CAAC;YAE1D,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;gBACzB,oDAAoD;gBACpD,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;gBACjE,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAElD,OAAO;gBACL,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAW;gBAChC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAuB;gBAC9C,SAAS;gBACT,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAuB;gBAC5C,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAuB;aAC7C,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;CACF,CAAA;AAnMY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,mBAAU,GAAE;qCAEyB,4BAAY;GADrC,YAAY,CAmMxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"dispatcher.module.d.ts","sourceRoot":"","sources":["../../src/dispatcher/dispatcher.module.ts"],"names":[],"mappings":"AAuBA,qBAsCa,gBAAgB;CAAG"}
1
+ {"version":3,"file":"dispatcher.module.d.ts","sourceRoot":"","sources":["../../src/dispatcher/dispatcher.module.ts"],"names":[],"mappings":"AAwBA,qBAsCa,gBAAgB;CAAG"}
@@ -29,12 +29,13 @@ const reconciler_1 = require("./reconciler");
29
29
  const worker_auth_service_1 = require("./worker-auth.service");
30
30
  const stage_confirm_timeout_service_1 = require("./stage-confirm-timeout.service");
31
31
  const task_name_service_1 = require("./task-name.service");
32
+ const connector_module_1 = require("../connectors/connector.module");
32
33
  let DispatcherModule = class DispatcherModule {
33
34
  };
34
35
  exports.DispatcherModule = DispatcherModule;
35
36
  exports.DispatcherModule = DispatcherModule = __decorate([
36
37
  (0, common_1.Module)({
37
- imports: [database_module_1.DatabaseModule, auth_module_1.AuthModule, notifier_module_1.NotifierModule],
38
+ imports: [database_module_1.DatabaseModule, auth_module_1.AuthModule, notifier_module_1.NotifierModule, (0, common_1.forwardRef)(() => connector_module_1.ConnectorModule)],
38
39
  providers: [
39
40
  crypto_service_1.CryptoService,
40
41
  search_service_1.SearchService,
@@ -1 +1 @@
1
- {"version":3,"file":"dispatcher.module.js","sourceRoot":"","sources":["../../src/dispatcher/dispatcher.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,iEAA6D;AAC7D,qDAAiD;AACjD,iEAA6D;AAC7D,6DAAyD;AACzD,0DAAsD;AACtD,mDAA+C;AAC/C,uDAAmD;AACnD,2DAAuD;AACvD,6DAAyD;AACzD,mEAA8D;AAC9D,qEAAgE;AAChE,2EAAsE;AACtE,2DAAuD;AACvD,6DAAyD;AACzD,2DAAsD;AACtD,uDAAmD;AACnD,yDAAoD;AACpD,6CAA0C;AAC1C,+DAA0D;AAC1D,mFAA6E;AAC7E,2DAAsD;AAwC/C,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;CAAG,CAAA;AAAnB,4CAAgB;2BAAhB,gBAAgB;IAtC5B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,gCAAc,EAAE,wBAAU,EAAE,gCAAc,CAAC;QACrD,SAAS,EAAE;YACT,8BAAa;YACb,8BAAa;YACb,4BAAY;YACZ,gCAAc;YACd,oCAAgB;YAChB,2CAAmB;YACnB,6CAAoB;YACpB,uCAAiB;YACjB,sCAAiB;YACjB,mDAAuB;YACvB,oCAAgB;YAChB,sCAAiB;YACjB,mCAAe;YACf,gCAAc;YACd,iCAAc;YACd,uBAAU;YACV,0DAA0B;YAC1B,mCAAe;SAChB;QACD,OAAO,EAAE;YACP,gCAAc;YACd,4BAAY;YACZ,uCAAiB;YACjB,sCAAiB;YACjB,2CAAmB;YACnB,6CAAoB;YACpB,mDAAuB;YACvB,oCAAgB;YAChB,sCAAiB;YACjB,mCAAe;YACf,gCAAc;YACd,iCAAc;YACd,uBAAU;SACX;KACF,CAAC;GACW,gBAAgB,CAAG"}
1
+ {"version":3,"file":"dispatcher.module.js","sourceRoot":"","sources":["../../src/dispatcher/dispatcher.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAoD;AACpD,iEAA6D;AAC7D,qDAAiD;AACjD,iEAA6D;AAC7D,6DAAyD;AACzD,0DAAsD;AACtD,mDAA+C;AAC/C,uDAAmD;AACnD,2DAAuD;AACvD,6DAAyD;AACzD,mEAA8D;AAC9D,qEAAgE;AAChE,2EAAsE;AACtE,2DAAuD;AACvD,6DAAyD;AACzD,2DAAsD;AACtD,uDAAmD;AACnD,yDAAoD;AACpD,6CAA0C;AAC1C,+DAA0D;AAC1D,mFAA6E;AAC7E,2DAAsD;AACtD,qEAAiE;AAwC1D,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;CAAG,CAAA;AAAnB,4CAAgB;2BAAhB,gBAAgB;IAtC5B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,gCAAc,EAAE,wBAAU,EAAE,gCAAc,EAAE,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,kCAAe,CAAC,CAAC;QACxF,SAAS,EAAE;YACT,8BAAa;YACb,8BAAa;YACb,4BAAY;YACZ,gCAAc;YACd,oCAAgB;YAChB,2CAAmB;YACnB,6CAAoB;YACpB,uCAAiB;YACjB,sCAAiB;YACjB,mDAAuB;YACvB,oCAAgB;YAChB,sCAAiB;YACjB,mCAAe;YACf,gCAAc;YACd,iCAAc;YACd,uBAAU;YACV,0DAA0B;YAC1B,mCAAe;SAChB;QACD,OAAO,EAAE;YACP,gCAAc;YACd,4BAAY;YACZ,uCAAiB;YACjB,sCAAiB;YACjB,2CAAmB;YACnB,6CAAoB;YACpB,mDAAuB;YACvB,oCAAgB;YAChB,sCAAiB;YACjB,mCAAe;YACf,gCAAc;YACd,iCAAc;YACd,uBAAU;SACX;KACF,CAAC;GACW,gBAAgB,CAAG"}
@@ -11,6 +11,9 @@ import { TaskCreationService } from './task-creation.service';
11
11
  import { TaskLifecycleService } from './task-lifecycle.service';
12
12
  import type { CommandResult } from './dispatcher.types';
13
13
  import { RedisService } from '../redis/redis.service';
14
+ import { IssueRefResolverService } from '../connectors/issue-ref-resolver.service';
15
+ import { DesignContextService } from '../connectors/design-context.service';
16
+ import { ExternalIssueLinkRepository } from '../database/repositories/external-issue-link.repository';
14
17
  export type { CommandResult } from './dispatcher.types';
15
18
  export type { TaskSource, PendingConfirmData } from './dispatcher.types';
16
19
  export declare class DispatcherService {
@@ -25,8 +28,11 @@ export declare class DispatcherService {
25
28
  private readonly taskCreationService;
26
29
  private readonly taskLifecycleService;
27
30
  private readonly redis;
31
+ private readonly externalIssueLinkRepo;
32
+ private readonly issueRefResolver?;
33
+ private readonly designContextService?;
28
34
  private readonly logger;
29
- constructor(taskRepo: TaskRepository, workerRepo: WorkerRepository, auditLogRepo: AuditLogRepository, developerRepo: DeveloperRepository, projectRepo: ProjectRepository, projectMemberRepo: ProjectMemberRepository, searchService: SearchService, dedupService: DedupService, taskCreationService: TaskCreationService, taskLifecycleService: TaskLifecycleService, redis: RedisService);
35
+ constructor(taskRepo: TaskRepository, workerRepo: WorkerRepository, auditLogRepo: AuditLogRepository, developerRepo: DeveloperRepository, projectRepo: ProjectRepository, projectMemberRepo: ProjectMemberRepository, searchService: SearchService, dedupService: DedupService, taskCreationService: TaskCreationService, taskLifecycleService: TaskLifecycleService, redis: RedisService, externalIssueLinkRepo: ExternalIssueLinkRepository, issueRefResolver?: IssueRefResolverService | undefined, designContextService?: DesignContextService | undefined);
30
36
  handleCommand(command: Command): Promise<CommandResult>;
31
37
  private dispatchCommand;
32
38
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"dispatcher.service.d.ts","sourceRoot":"","sources":["../../src/dispatcher/dispatcher.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dispatcher.service.d.ts","sourceRoot":"","sources":["../../src/dispatcher/dispatcher.service.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
11
14
  var DispatcherService_1;
12
15
  Object.defineProperty(exports, "__esModule", { value: true });
13
16
  exports.DispatcherService = void 0;
@@ -27,8 +30,13 @@ const task_lifecycle_service_1 = require("./task-lifecycle.service");
27
30
  const command_parser_utils_1 = require("../adapters/command-parser.utils");
28
31
  const confirm_required_utils_1 = require("../adapters/confirm-required.utils");
29
32
  const redis_service_1 = require("../redis/redis.service");
33
+ const issue_ref_resolver_service_1 = require("../connectors/issue-ref-resolver.service");
34
+ const design_context_service_1 = require("../connectors/design-context.service");
35
+ const external_issue_link_repository_1 = require("../database/repositories/external-issue-link.repository");
36
+ const figma_url_parser_1 = require("../connectors/figma/figma-url-parser");
37
+ const issue_ref_helpers_1 = require("../connectors/issue-ref-helpers");
30
38
  let DispatcherService = DispatcherService_1 = class DispatcherService {
31
- constructor(taskRepo, workerRepo, auditLogRepo, developerRepo, projectRepo, projectMemberRepo, searchService, dedupService, taskCreationService, taskLifecycleService, redis) {
39
+ constructor(taskRepo, workerRepo, auditLogRepo, developerRepo, projectRepo, projectMemberRepo, searchService, dedupService, taskCreationService, taskLifecycleService, redis, externalIssueLinkRepo, issueRefResolver, designContextService) {
32
40
  this.taskRepo = taskRepo;
33
41
  this.workerRepo = workerRepo;
34
42
  this.auditLogRepo = auditLogRepo;
@@ -40,6 +48,9 @@ let DispatcherService = DispatcherService_1 = class DispatcherService {
40
48
  this.taskCreationService = taskCreationService;
41
49
  this.taskLifecycleService = taskLifecycleService;
42
50
  this.redis = redis;
51
+ this.externalIssueLinkRepo = externalIssueLinkRepo;
52
+ this.issueRefResolver = issueRefResolver;
53
+ this.designContextService = designContextService;
43
54
  this.logger = new common_1.Logger(DispatcherService_1.name);
44
55
  }
45
56
  // ---------------------------------------------------------------------------
@@ -180,21 +191,54 @@ let DispatcherService = DispatcherService_1 = class DispatcherService {
180
191
  agentType: command.args.agentType,
181
192
  branchSlug: command.args.branchSlug,
182
193
  targetBranch: command.args.targetBranch,
194
+ issueRef: command.args.issueRef,
183
195
  ...(taskMode ? { taskMode } : {}),
184
196
  };
185
197
  try {
186
198
  const source = command.source;
199
+ // Resolve external issue reference (Figma/Jira/Sentry URL)
200
+ const issueRef = request.issueRef?.trim();
201
+ let configSnapshotOverrides;
202
+ let resolvedIssue = null;
203
+ let figmaData = null;
204
+ // Phase 1: resolve before createTask when projectKey is known
205
+ if (issueRef && this.issueRefResolver && request.projectKey) {
206
+ resolvedIssue = this.issueRefResolver.resolve(issueRef, request.projectKey);
207
+ if (resolvedIssue) {
208
+ configSnapshotOverrides = { externalRefs: (0, issue_ref_helpers_1.buildExternalRefs)(resolvedIssue) };
209
+ // Figma pre-fetch must happen in Phase 1
210
+ if (resolvedIssue.ref.platform === 'figma' && this.designContextService) {
211
+ figmaData = await this.designContextService.fetch(resolvedIssue.ref.issueId, resolvedIssue.nodeId ? [resolvedIssue.nodeId] : undefined, request.projectKey, resolvedIssue.instance.id);
212
+ }
213
+ }
214
+ }
215
+ // Figma ref requires projectKey in Phase 1
216
+ if (issueRef && !resolvedIssue && (0, figma_url_parser_1.parseFigmaUrl)(issueRef)) {
217
+ return { success: false, message: 'Figma design ref requires --project to be specified' };
218
+ }
187
219
  const task = await this.taskCreationService.createTask(request, command.user.id, {
188
220
  platform: command.platform,
189
221
  msgId: source.msgId,
190
222
  chatId: source.chatId,
191
223
  chatType: source.chatType,
192
224
  appId: source.appId,
193
- });
194
- // Skip the immediate chat card when creator === executor — the task_created
195
- // notification will deliver a card with full details. But for delegated tasks
196
- // (creator @mentions another developer), keep the immediate ack so the
197
- // requester sees confirmation in the source chat.
225
+ }, undefined, configSnapshotOverrides, figmaData
226
+ ? (t) => {
227
+ this.designContextService.store(t.id, figmaData.instance.id, figmaData.context);
228
+ }
229
+ : undefined, figmaData
230
+ ? { instanceId: figmaData.instance.id, context: figmaData.context }
231
+ : undefined, resolvedIssue
232
+ ? { instanceId: resolvedIssue.instance.id, ref: resolvedIssue.ref }
233
+ : undefined);
234
+ // Phase 2: resolve after createTask for non-Figma refs
235
+ if (issueRef && !resolvedIssue && this.issueRefResolver && task.projectKey) {
236
+ resolvedIssue = this.issueRefResolver.resolve(issueRef, task.projectKey);
237
+ }
238
+ // Create external issue link
239
+ if (resolvedIssue) {
240
+ (0, issue_ref_helpers_1.createExternalIssueLink)(this.externalIssueLinkRepo, task.id, resolvedIssue);
241
+ }
198
242
  const isDelegated = command.args.developer && command.args.developer !== command.user.id;
199
243
  return { success: true, task, skipChatResponse: !isDelegated };
200
244
  }
@@ -282,7 +326,27 @@ let DispatcherService = DispatcherService_1 = class DispatcherService {
282
326
  }
283
327
  if (pendingData.action === 'create_task' && pendingData.request) {
284
328
  // Confirmed dedup override — create the task anyway
285
- const createdTask = await this.taskCreationService.createTaskInternal(pendingData.request, pendingData.createdBy, pendingData.source, true);
329
+ const figmaCtx = pendingData.figmaContextData;
330
+ const createdTask = await this.taskCreationService.createTaskInternal(pendingData.request, pendingData.createdBy, pendingData.source, true, // skip dedup
331
+ undefined, undefined, undefined, pendingData.configSnapshotOverrides, figmaCtx && this.designContextService
332
+ ? (t) => {
333
+ this.designContextService.store(t.id, figmaCtx.instanceId, figmaCtx.context);
334
+ }
335
+ : undefined, pendingData.figmaContextData, pendingData.resolvedIssueData);
336
+ // Create external issue link from saved data
337
+ if (pendingData.resolvedIssueData) {
338
+ const rid = pendingData.resolvedIssueData;
339
+ this.externalIssueLinkRepo.create({
340
+ taskId: createdTask.id,
341
+ connectorInstanceId: rid.instanceId,
342
+ connectorPlatform: rid.ref.platform,
343
+ externalIssueId: rid.ref.issueId,
344
+ externalIssueUrl: rid.ref.issueUrl,
345
+ externalProjectKey: rid.ref.projectKey,
346
+ });
347
+ // Note: can't use createExternalIssueLink here because rid is serialized
348
+ // data from Redis, not a live ResolvedIssue object.
349
+ }
286
350
  return { success: true, task: createdTask, message: 'Task created (dedup override)' };
287
351
  }
288
352
  if (pendingData.action === 'retry' && pendingData.taskId) {
@@ -478,6 +542,10 @@ let DispatcherService = DispatcherService_1 = class DispatcherService {
478
542
  exports.DispatcherService = DispatcherService;
479
543
  exports.DispatcherService = DispatcherService = DispatcherService_1 = __decorate([
480
544
  (0, common_1.Injectable)(),
545
+ __param(12, (0, common_1.Optional)()),
546
+ __param(12, (0, common_1.Inject)((0, common_1.forwardRef)(() => issue_ref_resolver_service_1.IssueRefResolverService))),
547
+ __param(13, (0, common_1.Optional)()),
548
+ __param(13, (0, common_1.Inject)((0, common_1.forwardRef)(() => design_context_service_1.DesignContextService))),
481
549
  __metadata("design:paramtypes", [task_repository_1.TaskRepository,
482
550
  worker_repository_1.WorkerRepository,
483
551
  audit_log_repository_1.AuditLogRepository,
@@ -488,6 +556,9 @@ exports.DispatcherService = DispatcherService = DispatcherService_1 = __decorate
488
556
  dedup_service_1.DedupService,
489
557
  task_creation_service_1.TaskCreationService,
490
558
  task_lifecycle_service_1.TaskLifecycleService,
491
- redis_service_1.RedisService])
559
+ redis_service_1.RedisService,
560
+ external_issue_link_repository_1.ExternalIssueLinkRepository,
561
+ issue_ref_resolver_service_1.IssueRefResolverService,
562
+ design_context_service_1.DesignContextService])
492
563
  ], DispatcherService);
493
564
  //# sourceMappingURL=dispatcher.service.js.map