agent-tower 0.7.2 → 0.7.3

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 (277) hide show
  1. package/dist/executors/__tests__/providers.test.js +53 -0
  2. package/dist/executors/__tests__/providers.test.js.map +1 -1
  3. package/dist/executors/providers.d.ts +2 -0
  4. package/dist/executors/providers.d.ts.map +1 -1
  5. package/dist/executors/providers.js +3 -2
  6. package/dist/executors/providers.js.map +1 -1
  7. package/dist/git/base-branch.d.ts +3 -0
  8. package/dist/git/base-branch.d.ts.map +1 -0
  9. package/dist/git/base-branch.js +17 -0
  10. package/dist/git/base-branch.js.map +1 -0
  11. package/dist/mcp/http-client.d.ts +2 -6
  12. package/dist/mcp/http-client.d.ts.map +1 -1
  13. package/dist/mcp/http-client.js.map +1 -1
  14. package/dist/mcp/tools/__tests__/providers.test.d.ts +2 -0
  15. package/dist/mcp/tools/__tests__/providers.test.d.ts.map +1 -0
  16. package/dist/mcp/tools/__tests__/providers.test.js +22 -0
  17. package/dist/mcp/tools/__tests__/providers.test.js.map +1 -0
  18. package/dist/mcp/tools/__tests__/tasks.test.d.ts +2 -0
  19. package/dist/mcp/tools/__tests__/tasks.test.d.ts.map +1 -0
  20. package/dist/mcp/tools/__tests__/tasks.test.js +17 -0
  21. package/dist/mcp/tools/__tests__/tasks.test.js.map +1 -0
  22. package/dist/mcp/tools/providers.d.ts.map +1 -1
  23. package/dist/mcp/tools/providers.js +3 -2
  24. package/dist/mcp/tools/providers.js.map +1 -1
  25. package/dist/mcp/tools/tasks.d.ts.map +1 -1
  26. package/dist/mcp/tools/tasks.js +1 -0
  27. package/dist/mcp/tools/tasks.js.map +1 -1
  28. package/dist/mcp/types.d.ts +3 -0
  29. package/dist/mcp/types.d.ts.map +1 -1
  30. package/dist/mcp/types.js +2 -0
  31. package/dist/mcp/types.js.map +1 -1
  32. package/dist/output/__tests__/text-block-lifecycle.test.js +37 -0
  33. package/dist/output/__tests__/text-block-lifecycle.test.js.map +1 -1
  34. package/dist/output/text-block-tracker.d.ts.map +1 -1
  35. package/dist/output/text-block-tracker.js +24 -1
  36. package/dist/output/text-block-tracker.js.map +1 -1
  37. package/dist/routes/__tests__/providers.test.js +67 -0
  38. package/dist/routes/__tests__/providers.test.js.map +1 -1
  39. package/dist/routes/__tests__/tasks.test.js +23 -0
  40. package/dist/routes/__tests__/tasks.test.js.map +1 -1
  41. package/dist/routes/providers.d.ts.map +1 -1
  42. package/dist/routes/providers.js +8 -0
  43. package/dist/routes/providers.js.map +1 -1
  44. package/dist/routes/tasks.d.ts.map +1 -1
  45. package/dist/routes/tasks.js +1 -0
  46. package/dist/routes/tasks.js.map +1 -1
  47. package/dist/runtime/acp/history-reconciler.js +1 -1
  48. package/dist/runtime/acp/history-reconciler.js.map +1 -1
  49. package/dist/services/__tests__/task.service.test.js +43 -0
  50. package/dist/services/__tests__/task.service.test.js.map +1 -1
  51. package/dist/services/__tests__/translation-protection.test.js +48 -18
  52. package/dist/services/__tests__/translation-protection.test.js.map +1 -1
  53. package/dist/services/__tests__/translation-session-blocks.test.js +66 -2
  54. package/dist/services/__tests__/translation-session-blocks.test.js.map +1 -1
  55. package/dist/services/__tests__/workspace.service.test.js +34 -0
  56. package/dist/services/__tests__/workspace.service.test.js.map +1 -1
  57. package/dist/services/message-delivery.service.d.ts +2 -1
  58. package/dist/services/message-delivery.service.d.ts.map +1 -1
  59. package/dist/services/project.service.d.ts +1 -0
  60. package/dist/services/project.service.d.ts.map +1 -1
  61. package/dist/services/provider-config.service.d.ts.map +1 -1
  62. package/dist/services/provider-config.service.js +1 -0
  63. package/dist/services/provider-config.service.js.map +1 -1
  64. package/dist/services/session-manager.d.ts +7 -4
  65. package/dist/services/session-manager.d.ts.map +1 -1
  66. package/dist/services/session-manager.js +1 -1
  67. package/dist/services/session-manager.js.map +1 -1
  68. package/dist/services/task.service.d.ts +10 -8
  69. package/dist/services/task.service.d.ts.map +1 -1
  70. package/dist/services/task.service.js +14 -1
  71. package/dist/services/task.service.js.map +1 -1
  72. package/dist/services/team-run.service.d.ts +1 -0
  73. package/dist/services/team-run.service.d.ts.map +1 -1
  74. package/dist/services/team-task-input.service.d.ts +1 -0
  75. package/dist/services/team-task-input.service.d.ts.map +1 -1
  76. package/dist/services/translation-protection.d.ts +3 -1
  77. package/dist/services/translation-protection.d.ts.map +1 -1
  78. package/dist/services/translation-protection.js +21 -67
  79. package/dist/services/translation-protection.js.map +1 -1
  80. package/dist/services/translation-settings.service.d.ts +4 -4
  81. package/dist/services/translation.service.d.ts.map +1 -1
  82. package/dist/services/translation.service.js +44 -20
  83. package/dist/services/translation.service.js.map +1 -1
  84. package/dist/services/workspace.service.d.ts +11 -6
  85. package/dist/services/workspace.service.d.ts.map +1 -1
  86. package/dist/services/workspace.service.js +6 -4
  87. package/dist/services/workspace.service.js.map +1 -1
  88. package/dist/web/assets/{AgentDemoPage-BfXkNCdN.js → AgentDemoPage-Dwux6TyV.js} +1 -1
  89. package/dist/web/assets/{AgentEnvironmentSettingsPage-GHjKIWpb.js → AgentEnvironmentSettingsPage-CvvkMKT1.js} +1 -1
  90. package/dist/web/assets/AttachmentPreview-CFJ6MZ1f.js +2 -0
  91. package/dist/web/assets/BranchSelect-Cv92vEjG.js +1 -0
  92. package/dist/web/assets/BrandLogo-H4nCbVzs.js +1 -0
  93. package/dist/web/assets/ConversationPage-CZzGME21.js +1 -0
  94. package/dist/web/assets/CreateTaskInput-BM2tx4hJ.js +1 -0
  95. package/dist/web/assets/{DemoPage-DK-ikg1_.js → DemoPage-CpYNBQhA.js} +1 -1
  96. package/dist/web/assets/DesignSystemPage-DLeH6DnV.js +12 -0
  97. package/dist/web/assets/EditableTaskTitle-BEsiULnD.js +70 -0
  98. package/dist/web/assets/{ExecutionPermissionSelector-B8befbxJ.js → ExecutionPermissionSelector-IoWR9YLb.js} +1 -1
  99. package/dist/web/assets/GeneralSettingsPage-BAYgxCqx.js +1 -0
  100. package/dist/web/assets/{LoadingPreviewPage-BDlf89rJ.js → LoadingPreviewPage-CumrzyxW.js} +1 -1
  101. package/dist/web/assets/McpSettingsPage-CFNwxT9Y.js +1 -0
  102. package/dist/web/assets/{MemberAvatar-YVr_erAr.js → MemberAvatar-BVXD0jTy.js} +1 -1
  103. package/dist/web/assets/{MobileTaskDetail-QNUHMq7u.js → MobileTaskDetail-IOQ1WnS8.js} +3 -3
  104. package/dist/web/assets/NotificationSettingsPage-B0s5YbG3.js +1 -0
  105. package/dist/web/assets/{ProfileSettingsPage-CHe4LlRp.js → ProfileSettingsPage-BuhoF-mL.js} +1 -1
  106. package/dist/web/assets/{ProjectKanbanPage-Bt_01giW.js → ProjectKanbanPage-DMtv15rq.js} +7 -7
  107. package/dist/web/assets/ProjectSettingsPage-DDMg6axy.js +2 -0
  108. package/dist/web/assets/ProviderSettingsPage-DRt9m4mF.js +67 -0
  109. package/dist/web/assets/{SettingsMasterDetail-DjWR9Sqk.js → SettingsMasterDetail-D7vStQjR.js} +1 -1
  110. package/dist/web/assets/TaskDetail-DzKbs5Jt.js +1 -0
  111. package/dist/web/assets/TeamSettingsPage-fjlaqaLo.js +1 -0
  112. package/dist/web/assets/{TranslationSettingsPage-Cod9c4Ug.js → TranslationSettingsPage-D2oks6OM.js} +1 -1
  113. package/dist/web/assets/{arc-DEy33vTc.js → arc-vYWCZsE_.js} +1 -1
  114. package/dist/web/assets/{architectureDiagram-3BPJPVTR-Ky1D1LBk.js → architectureDiagram-3BPJPVTR-Cu1VIpcJ.js} +1 -1
  115. package/dist/web/assets/{at-sign-C48_y345.js → at-sign-BhSPafOS.js} +1 -1
  116. package/dist/web/assets/{blockDiagram-GPEHLZMM-BNgB7kNT.js → blockDiagram-GPEHLZMM-C4x_nj5S.js} +1 -1
  117. package/dist/web/assets/{c4Diagram-AAUBKEIU-4GMrPMgQ.js → c4Diagram-AAUBKEIU-jHOo5lal.js} +1 -1
  118. package/dist/web/assets/channel-D1cEj22-.js +1 -0
  119. package/dist/web/assets/check-D_VFGpIy.js +1 -0
  120. package/dist/web/assets/{chevron-down-3y5Aiolp.js → chevron-down-BoS08pMa.js} +1 -1
  121. package/dist/web/assets/{chevron-up-DqaYcjpq.js → chevron-up-BWtKfdKT.js} +1 -1
  122. package/dist/web/assets/chip-Ck4dqxR3.js +1 -0
  123. package/dist/web/assets/{chunk-2J33WTMH-C439hRe_.js → chunk-2J33WTMH-BZcpjmfm.js} +1 -1
  124. package/dist/web/assets/{chunk-4BX2VUAB-D8GK3M3t.js → chunk-4BX2VUAB-DZGB3q-I.js} +1 -1
  125. package/dist/web/assets/{chunk-55IACEB6-Dl4UhJ8X.js → chunk-55IACEB6-CcNrOmyy.js} +1 -1
  126. package/dist/web/assets/{chunk-727SXJPM-BSEeayBq.js → chunk-727SXJPM-dWrxio8O.js} +1 -1
  127. package/dist/web/assets/{chunk-AQP2D5EJ-B6chbZfT.js → chunk-AQP2D5EJ-K4gkVzqE.js} +1 -1
  128. package/dist/web/assets/{chunk-FMBD7UC4-DaLkiLdQ.js → chunk-FMBD7UC4-CnHyY4qD.js} +1 -1
  129. package/dist/web/assets/{chunk-ND2GUHAM-DeQwZAAT.js → chunk-ND2GUHAM-CHUmcyDv.js} +1 -1
  130. package/dist/web/assets/{chunk-QZHKN3VN-CLRr4YRM.js → chunk-QZHKN3VN-Bzzjd-Qt.js} +1 -1
  131. package/dist/web/assets/classDiagram-4FO5ZUOK-DIrDMefa.js +1 -0
  132. package/dist/web/assets/classDiagram-v2-Q7XG4LA2-DIrDMefa.js +1 -0
  133. package/dist/web/assets/{code-block-OCS4YCEC-CnoxUpOx.js → code-block-OCS4YCEC-B2hHBO_G.js} +1 -1
  134. package/dist/web/assets/{confirm-dialog-ltNBFYCs.js → confirm-dialog-CL_1pF4K.js} +1 -1
  135. package/dist/web/assets/content-D0qmHfHK.js +2 -0
  136. package/dist/web/assets/{copy-HRMhTkIG.js → copy-C4WnOY6Y.js} +1 -1
  137. package/dist/web/assets/{cose-bilkent-S5V4N54A-C1UiYzfk.js → cose-bilkent-S5V4N54A-Dcn8tOhb.js} +1 -1
  138. package/dist/web/assets/cssMode-CXBMyfYY.js +1 -0
  139. package/dist/web/assets/{dagre-BM42HDAG-CTJpBgye.js → dagre-BM42HDAG-DWBV4UfP.js} +1 -1
  140. package/dist/web/assets/{diagram-2AECGRRQ-Dj1_TEYp.js → diagram-2AECGRRQ-CnNTJQ3q.js} +1 -1
  141. package/dist/web/assets/{diagram-5GNKFQAL-V-KUpwqh.js → diagram-5GNKFQAL-DlXJFzDF.js} +1 -1
  142. package/dist/web/assets/{diagram-KO2AKTUF-CXG1ZIeX.js → diagram-KO2AKTUF-DZ22YV4n.js} +1 -1
  143. package/dist/web/assets/{diagram-LMA3HP47-BZSJUwk9.js → diagram-LMA3HP47-B4pQJjG9.js} +1 -1
  144. package/dist/web/assets/{diagram-OG6HWLK6-CCr4gq4u.js → diagram-OG6HWLK6-DJBLjtgL.js} +1 -1
  145. package/dist/web/assets/dialog-1o8KQWoQ.js +5 -0
  146. package/dist/web/assets/{erDiagram-TEJ5UH35-Djtyzh6z.js → erDiagram-TEJ5UH35-CDsfoJUT.js} +1 -1
  147. package/dist/web/assets/file-6qwbIga1.js +1 -0
  148. package/dist/web/assets/{flowDiagram-I6XJVG4X-BmSVSiXJ.js → flowDiagram-I6XJVG4X-CuGOAYmY.js} +1 -1
  149. package/dist/web/assets/folder-picker-Cj1VZOZU.js +1 -0
  150. package/dist/web/assets/{freemarker2-DdptX5f1.js → freemarker2-BG8VyI2V.js} +1 -1
  151. package/dist/web/assets/{ganttDiagram-6RSMTGT7-r5vQX-b5.js → ganttDiagram-6RSMTGT7-BjrSOqAM.js} +1 -1
  152. package/dist/web/assets/{gitGraphDiagram-PVQCEYII-Zj9aloh9.js → gitGraphDiagram-PVQCEYII-4VVr4F8_.js} +1 -1
  153. package/dist/web/assets/{globe-B9I-jHBB.js → globe-CxeM27yy.js} +1 -1
  154. package/dist/web/assets/handlebars-Ci38FPsA.js +1 -0
  155. package/dist/web/assets/html-5hdYEgVF.js +1 -0
  156. package/dist/web/assets/htmlMode-BzU9qsw0.js +1 -0
  157. package/dist/web/assets/{icon-button-CYiKa-7C.js → icon-button-BmrJtYFC.js} +1 -1
  158. package/dist/web/assets/{index-BJObbxud.js → index-BR3Wg2fS.js} +3 -3
  159. package/dist/web/assets/{index-CThFsQNP.js → index-C1lMEjmZ.js} +1 -1
  160. package/dist/web/assets/{index-DkRy6eNX.js → index-CrKx8Yaz.js} +4 -4
  161. package/dist/web/assets/{index-DZLnTISJ.js → index-DSy5JLC1.js} +1 -1
  162. package/dist/web/assets/{index-Bhvt-E6d.js → index-DVdiOmqt.js} +2 -2
  163. package/dist/web/assets/index-DZLg4-xM.css +1 -0
  164. package/dist/web/assets/{index-DcOU2m2F.js → index-Da2mWAtm.js} +1 -1
  165. package/dist/web/assets/{index-BtUQYU5l.js → index-Db28hRe8.js} +1 -1
  166. package/dist/web/assets/{index-Dk3bRQAK.js → index-cu8sedJH.js} +1 -1
  167. package/dist/web/assets/{index-B1oVmCie.js → index-hHrknzh7.js} +1 -1
  168. package/dist/web/assets/{infoDiagram-5YYISTIA-BHtVaxZx.js → infoDiagram-5YYISTIA-Cy9ntb6t.js} +1 -1
  169. package/dist/web/assets/{ishikawaDiagram-YF4QCWOH-BYmwjkbC.js → ishikawaDiagram-YF4QCWOH-D6UiVzRz.js} +1 -1
  170. package/dist/web/assets/javascript-Ib060GQ8.js +1 -0
  171. package/dist/web/assets/{journeyDiagram-JHISSGLW-c8BBqqRS.js → journeyDiagram-JHISSGLW-owdKzZoh.js} +1 -1
  172. package/dist/web/assets/{jsonMode-BJGOUeaV.js → jsonMode-CLmu6gzc.js} +1 -1
  173. package/dist/web/assets/{kanban-definition-UN3LZRKU-D4Vr-oFT.js → kanban-definition-UN3LZRKU-v5TBnyp0.js} +1 -1
  174. package/dist/web/assets/{kbd-C88ut3t9.js → kbd-Cl4AzzJp.js} +1 -1
  175. package/dist/web/assets/{key-round-Cjbj2qNa.js → key-round-CnYjSrCz.js} +1 -1
  176. package/dist/web/assets/{layers-eaHAVcc3.js → layers-XImbMX-P.js} +1 -1
  177. package/dist/web/assets/{linear-opi90s0L.js → linear-DNlKYt8R.js} +1 -1
  178. package/dist/web/assets/{link-BSGb85gq.js → link-DQk-Vapq.js} +1 -1
  179. package/dist/web/assets/liquid-Bc7OSAPR.js +1 -0
  180. package/dist/web/assets/{lspLanguageFeatures-DWu2Ubf0.js → lspLanguageFeatures-DD_y1bZa.js} +1 -1
  181. package/dist/web/assets/mdx-CxJNHHTn.js +1 -0
  182. package/dist/web/assets/{menu--sjyisSg.js → menu-DXF6iUsq.js} +1 -1
  183. package/dist/web/assets/{mermaid-NOHMQCX5-BSNbBj78.js → mermaid-NOHMQCX5-CG_LpwAI.js} +59 -59
  184. package/dist/web/assets/{message-square-BLEJN6p7.js → message-square-BviHdb67.js} +1 -1
  185. package/dist/web/assets/{mindmap-definition-RKZ34NQL-BN3ZjBh-.js → mindmap-definition-RKZ34NQL-Bn_rnnGT.js} +1 -1
  186. package/dist/web/assets/{modal-CSGOqphK.js → modal-D496f1fE.js} +1 -1
  187. package/dist/web/assets/{monaco-BkuNyOkP.js → monaco-yuGji-2E.js} +3 -3
  188. package/dist/web/assets/{paperclip-CTNoXpUW.js → paperclip-D9ka2IAB.js} +1 -1
  189. package/dist/web/assets/{pencil-Cp70ZwtG.js → pencil-isP1rXC-.js} +1 -1
  190. package/dist/web/assets/{people-DT78SebR.js → people-CbmH8m4i.js} +1 -1
  191. package/dist/web/assets/{pieDiagram-4H26LBE5-CfmFHpPI.js → pieDiagram-4H26LBE5-DIE_f9W_.js} +1 -1
  192. package/dist/web/assets/popover-D8VtO5qF.js +1 -0
  193. package/dist/web/assets/provider-selection-DSu7SCI7.js +1 -0
  194. package/dist/web/assets/python-C0E43gUo.js +1 -0
  195. package/dist/web/assets/{quadrantDiagram-W4KKPZXB-CeaumJAa.js → quadrantDiagram-W4KKPZXB-CavFxJCk.js} +1 -1
  196. package/dist/web/assets/razor-xarhYR9V.js +1 -0
  197. package/dist/web/assets/{requirementDiagram-4Y6WPE33-BWWCDXCE.js → requirementDiagram-4Y6WPE33-Dm1FwUUh.js} +1 -1
  198. package/dist/web/assets/{sankeyDiagram-5OEKKPKP-DAJut743.js → sankeyDiagram-5OEKKPKP-qeqcO27M.js} +1 -1
  199. package/dist/web/assets/{search-DniD_AGC.js → search-DOMr5jPS.js} +1 -1
  200. package/dist/web/assets/{select-B5RYunTs.js → select-Cw5BaOLQ.js} +1 -1
  201. package/dist/web/assets/{select-BPdJrr5M.js → select-CzZNbe1Z.js} +1 -1
  202. package/dist/web/assets/{sequenceDiagram-3UESZ5HK-CynjRGW4.js → sequenceDiagram-3UESZ5HK-Dqtb3BYG.js} +1 -1
  203. package/dist/web/assets/{server-xswxWpKD.js → server-u-PC-CcX.js} +1 -1
  204. package/dist/web/assets/{stateDiagram-AJRCARHV-amAtpx9w.js → stateDiagram-AJRCARHV-C_MqF9Fy.js} +1 -1
  205. package/dist/web/assets/stateDiagram-v2-BHNVJYJU-BxmbGAhh.js +1 -0
  206. package/dist/web/assets/{textarea-BVyPl9rM.js → textarea-xt2hLb-d.js} +1 -1
  207. package/dist/web/assets/{timeline-definition-PNZ67QCA-DZ9W7WlP.js → timeline-definition-PNZ67QCA-Bzov6t31.js} +1 -1
  208. package/dist/web/assets/{toggles-QcIz43DP.js → toggles-B6E1UBYN.js} +1 -1
  209. package/dist/web/assets/{tooltip-CPqGK_WZ.js → tooltip-C8--8CNX.js} +1 -1
  210. package/dist/web/assets/{track-Ckye0-tt.js → track-BeqaPopG.js} +1 -1
  211. package/dist/web/assets/{trash-2-CvUJsbtT.js → trash-2-5jI3_KHh.js} +1 -1
  212. package/dist/web/assets/{tsMode-c5x0d47n.js → tsMode-uT3sMVHt.js} +1 -1
  213. package/dist/web/assets/typescript-Dkdj2ks0.js +1 -0
  214. package/dist/web/assets/{upload-CsXAmAun.js → upload-DUteazR7.js} +1 -1
  215. package/dist/web/assets/{use-profiles-DuXaBRju.js → use-profiles-T3saKiBg.js} +1 -1
  216. package/dist/web/assets/{use-providers-Td1-gyrN.js → use-providers-CQwBj9hp.js} +1 -1
  217. package/dist/web/assets/{use-translation-settings-NYM0lmBx.js → use-translation-settings-DBzFqP-d.js} +1 -1
  218. package/dist/web/assets/useNormalizedLogs-DsdwmfS7.js +1 -0
  219. package/dist/web/assets/useTokenUsage-Drh3v3kx.js +1 -0
  220. package/dist/web/assets/{vennDiagram-CIIHVFJN-CB2Ubvy9.js → vennDiagram-CIIHVFJN-BqxICvT_.js} +1 -1
  221. package/dist/web/assets/{wardley-L42UT6IY-BXOkk77I.js → wardley-L42UT6IY-BTdLPFcA.js} +1 -1
  222. package/dist/web/assets/{wardleyDiagram-YWT4CUSO-VA6ywdQQ.js → wardleyDiagram-YWT4CUSO-icnFsFn4.js} +1 -1
  223. package/dist/web/assets/xml-BO8gYu0L.js +1 -0
  224. package/dist/web/assets/{xychartDiagram-2RQKCTM6-FNcvDj5G.js → xychartDiagram-2RQKCTM6-BN2_ducK.js} +1 -1
  225. package/dist/web/assets/yaml-DlovbQzw.js +1 -0
  226. package/dist/web/index.html +2 -2
  227. package/node_modules/@agent-tower/shared/dist/translation.d.ts +12 -0
  228. package/node_modules/@agent-tower/shared/dist/translation.d.ts.map +1 -1
  229. package/node_modules/@agent-tower/shared/dist/translation.js +19 -0
  230. package/node_modules/@agent-tower/shared/dist/translation.js.map +1 -1
  231. package/node_modules/@agent-tower/shared/dist/types.d.ts +13 -1
  232. package/node_modules/@agent-tower/shared/dist/types.d.ts.map +1 -1
  233. package/node_modules/@agent-tower/shared/dist/types.js.map +1 -1
  234. package/package.json +1 -1
  235. package/prisma/migrations/20261023000000_add_task_base_branch/migration.sql +2 -0
  236. package/prisma/schema.prisma +1 -0
  237. package/dist/web/assets/AttachmentPreview-CLN1lnLe.js +0 -2
  238. package/dist/web/assets/BranchSelect-Cofp8vYf.js +0 -1
  239. package/dist/web/assets/BrandLogo-BUimEX-9.js +0 -1
  240. package/dist/web/assets/ConversationPage-R7vNaOQv.js +0 -1
  241. package/dist/web/assets/CreateTaskInput-CasITF8y.js +0 -1
  242. package/dist/web/assets/DesignSystemPage-BhjNs2vP.js +0 -12
  243. package/dist/web/assets/EditableTaskTitle-BJ9Rxggf.js +0 -70
  244. package/dist/web/assets/GeneralSettingsPage-RMN2al8I.js +0 -1
  245. package/dist/web/assets/McpSettingsPage-CPNxFF67.js +0 -1
  246. package/dist/web/assets/NotificationSettingsPage-BEyuyu3Z.js +0 -1
  247. package/dist/web/assets/ProjectSettingsPage-cus6Ns97.js +0 -2
  248. package/dist/web/assets/ProviderSettingsPage-DqA_B1Ey.js +0 -67
  249. package/dist/web/assets/TaskDetail-rEXNe2h3.js +0 -1
  250. package/dist/web/assets/TeamSettingsPage-DwWROtW6.js +0 -1
  251. package/dist/web/assets/channel-DTP-syjA.js +0 -1
  252. package/dist/web/assets/check-BmiJ7qMY.js +0 -1
  253. package/dist/web/assets/classDiagram-4FO5ZUOK-CUKgurLa.js +0 -1
  254. package/dist/web/assets/classDiagram-v2-Q7XG4LA2-CUKgurLa.js +0 -1
  255. package/dist/web/assets/content-DPQMfMae.js +0 -2
  256. package/dist/web/assets/cssMode-DkuSsGeg.js +0 -1
  257. package/dist/web/assets/dialog-CuFEdqLg.js +0 -5
  258. package/dist/web/assets/handlebars-B34f-LAf.js +0 -1
  259. package/dist/web/assets/hooks-BLxb16IA.js +0 -1
  260. package/dist/web/assets/html-CnvOQ63o.js +0 -1
  261. package/dist/web/assets/htmlMode-RdxZ8Svp.js +0 -1
  262. package/dist/web/assets/index-0XPZayUU.css +0 -1
  263. package/dist/web/assets/javascript-BhombDEO.js +0 -1
  264. package/dist/web/assets/liquid-Czy1WpPz.js +0 -1
  265. package/dist/web/assets/mdx-DhXfoSnM.js +0 -1
  266. package/dist/web/assets/popover-BiVxGGgp.js +0 -1
  267. package/dist/web/assets/python-DIcQDjcf.js +0 -1
  268. package/dist/web/assets/razor-DYK6Rxer.js +0 -1
  269. package/dist/web/assets/search-field-CQLDXLeA.js +0 -1
  270. package/dist/web/assets/stateDiagram-v2-BHNVJYJU-V-lSceg1.js +0 -1
  271. package/dist/web/assets/typescript-i7eYblLt.js +0 -1
  272. package/dist/web/assets/use-projects-Ddz0knyr.js +0 -1
  273. package/dist/web/assets/use-workspaces-CdJZLmGh.js +0 -1
  274. package/dist/web/assets/useNormalizedLogs--RbVywYa.js +0 -1
  275. package/dist/web/assets/useTokenUsage-DDXf7E4p.js +0 -1
  276. package/dist/web/assets/xml-D2EGActB.js +0 -1
  277. package/dist/web/assets/yaml-jeiIZSL4.js +0 -1
@@ -8,6 +8,7 @@ import { AcpProjector } from '../../runtime/acp/projector.js';
8
8
  import { CodexCliProjector } from '../../runtime/codex-cli-projector.js';
9
9
  import { addNormalizedEntry, replaceNormalizedEntry, updateEntryContent } from '../utils/patch.js';
10
10
  import { createAssistantMessage } from '../types.js';
11
+ import { getTranslationTextBlocks } from '@agent-tower/shared';
11
12
  function setup() {
12
13
  const store = new MsgStore();
13
14
  const sealed = [];
@@ -22,6 +23,42 @@ const bodies = (store) => store.getSnapshot().entries.filter(e => e.entryType ==
22
23
  // Shapes verified against Claude stream-json, Codex exec/app-server v2,
23
24
  // Gemini CLI 0.27.0 nonInteractiveCli/core output types, ACP SDK 1.4.0.
24
25
  describe('canonical assistant block lifecycle protocol fixtures', () => {
26
+ it('seals paragraph sources during streaming without splitting the provider entry or retranslating its prefix', () => {
27
+ const { store } = setup();
28
+ const events = vi.fn();
29
+ store.onTextBlock(events);
30
+ const first = 'A completed paragraph. '.repeat(20) + '\n\n';
31
+ store.pushPatch(addNormalizedEntry(0, createAssistantMessage(first + 'tail')));
32
+ const entry = bodies(store)[0];
33
+ const block = entry.metadata.textBlock;
34
+ expect(block.state).toBe('OPEN');
35
+ expect(block.paragraphs).toEqual([{ end: first.length, translationEpoch: 7 }]);
36
+ expect(getTranslationTextBlocks(entry.content, block)).toMatchObject([
37
+ { blockId: `${block.blockId}:p0`, state: 'SEALED', content: first },
38
+ { blockId: `${block.blockId}:p1`, state: 'OPEN', content: 'tail' },
39
+ ]);
40
+ events.mockClear();
41
+ store.pushPatch(updateEntryContent(0, first + 'tail continued'));
42
+ expect(events).not.toHaveBeenCalled();
43
+ expect(bodies(store)).toHaveLength(1);
44
+ expect(bodies(store)[0].id).toBe(entry.id);
45
+ store.textBlocks.end(true);
46
+ expect(getTranslationTextBlocks(bodies(store)[0].content, bodies(store)[0].metadata.textBlock)).toMatchObject([
47
+ { state: 'SEALED', content: first }, { state: 'ABORTED', content: 'tail continued' },
48
+ ]);
49
+ });
50
+ it('invalidates paragraph identities by revision when a provider rewrites the sealed prefix', () => {
51
+ const { store } = setup();
52
+ const prefix = 'First paragraph. '.repeat(20) + '\n\n';
53
+ store.pushPatch(addNormalizedEntry(0, createAssistantMessage(prefix + 'tail')));
54
+ const initial = bodies(store)[0].metadata.textBlock;
55
+ store.pushPatch(updateEntryContent(0, 'Revised short body'));
56
+ expect(bodies(store)[0].metadata.textBlock).toMatchObject({ blockId: initial.blockId, sourceRevision: 2, state: 'OPEN' });
57
+ expect(bodies(store)[0].metadata.textBlock.paragraphs).toBeUndefined();
58
+ store.pushPatch(updateEntryContent(0, prefix.replace('First', 'Revised') + 'tail'));
59
+ expect(bodies(store)[0].metadata.textBlock.paragraphs).toHaveLength(1);
60
+ expect(bodies(store)[0].metadata.textBlock.sourceRevision).toBe(2);
61
+ });
25
62
  it('Claude seals at tool block start before its summary, isolates child streams, and versions final summaries', () => {
26
63
  const { store, sealed } = setup();
27
64
  const parser = new ClaudeCodeParser(store);
@@ -1 +1 @@
1
- {"version":3,"file":"text-block-lifecycle.test.js","sourceRoot":"","sources":["../../../src/output/__tests__/text-block-lifecycle.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"text-block-lifecycle.test.js","sourceRoot":"","sources":["../../../src/output/__tests__/text-block-lifecycle.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"text-block-tracker.d.ts","sourceRoot":"","sources":["../../src/output/text-block-tracker.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAmB,MAAM,YAAY,CAAC;AAE7D,6EAA6E;AAC7E,qBAAa,gBAAgB;IAaf,OAAO,CAAC,QAAQ,CAAC,KAAK;IAZlC,OAAO,CAAC,IAAI,CAAC,CAAqC;IAClD,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,OAAO,CAAsC;IACrD,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,WAAW,CAAS;IAC5B,IAAI,gBAAgB,IAAI,OAAO,CAA0B;IACzD,MAAM,IAAI,IAAI;IACd,SAAS,EAAE,MAAM,MAAM,GAAG,SAAS,CAAmB;gBAEzB,KAAK,EAAE,QAAQ;IAE5C,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAQ3B,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC;IAMjD,yFAAyF;IACzF,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC;IAMhC,QAAQ,CAAC,QAAQ,SAAc,GAAG,IAAI;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAE7B,GAAG,CAAC,SAAS,UAAQ,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAS7C,OAAO,CAAC,IAAI;IAcZ,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAyChC,SAAS,IAAI,IAAI;CASlB"}
1
+ {"version":3,"file":"text-block-tracker.d.ts","sourceRoot":"","sources":["../../src/output/text-block-tracker.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAmB,MAAM,YAAY,CAAC;AAG7D,6EAA6E;AAC7E,qBAAa,gBAAgB;IAaf,OAAO,CAAC,QAAQ,CAAC,KAAK;IAZlC,OAAO,CAAC,IAAI,CAAC,CAAqC;IAClD,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,OAAO,CAAsC;IACrD,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,WAAW,CAAS;IAC5B,IAAI,gBAAgB,IAAI,OAAO,CAA0B;IACzD,MAAM,IAAI,IAAI;IACd,SAAS,EAAE,MAAM,MAAM,GAAG,SAAS,CAAmB;gBAEzB,KAAK,EAAE,QAAQ;IAE5C,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAQ3B,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC;IAMjD,yFAAyF;IACzF,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC;IAMhC,QAAQ,CAAC,QAAQ,SAAc,GAAG,IAAI;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAE7B,GAAG,CAAC,SAAS,UAAQ,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAS7C,OAAO,CAAC,IAAI;IAcZ,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IA8DhC,SAAS,IAAI,IAAI;CASlB"}
@@ -1,4 +1,5 @@
1
1
  import { randomUUID } from 'node:crypto';
2
+ import { findTranslationParagraphEnds } from '../services/translation-protection.js';
2
3
  /** Per-turn semantic streams at the canonical transcript commit boundary. */
3
4
  export class TextBlockTracker {
4
5
  store;
@@ -113,10 +114,17 @@ export class TextBlockTracker {
113
114
  this.changed.add(index);
114
115
  }
115
116
  else if (contentChanged && block.state !== 'OPEN') {
116
- const { sealedReason: _reason, ...open } = block;
117
+ const { sealedReason: _reason, paragraphs: _paragraphs, ...open } = block;
117
118
  block = { ...open, sourceRevision: block.sourceRevision + 1, state: 'OPEN' };
118
119
  this.changed.add(index);
119
120
  }
121
+ else if (contentChanged && block.paragraphs?.length
122
+ && !entry.content.startsWith(previous.content.slice(0, block.paragraphs.at(-1).end))) {
123
+ // A provider correction invalidates every previously sealed paragraph immediately.
124
+ const { paragraphs: _paragraphs, ...open } = block;
125
+ block = { ...open, sourceRevision: block.sourceRevision + 1 };
126
+ this.changed.add(index);
127
+ }
120
128
  let epoch;
121
129
  try {
122
130
  epoch = this.admission();
@@ -124,6 +132,21 @@ export class TextBlockTracker {
124
132
  catch { /* Translation configuration is an optional observer. */ }
125
133
  if (contentChanged && epoch !== undefined && block.translationEpoch !== epoch)
126
134
  block = { ...block, translationEpoch: epoch };
135
+ if (contentChanged && epoch !== undefined && !this.cancelling) {
136
+ const start = block.paragraphs?.at(-1)?.end ?? 0;
137
+ const appending = previous && entry.content.startsWith(previous.content);
138
+ const appended = appending ? entry.content.slice(previous.content.length) : entry.content;
139
+ const previousLineEnd = appending && /[\r\n]/.test(appended) ? previous.content.match(/[\r\n][ \t\r]*$/)?.[0] ?? '' : '';
140
+ // Most deltas (including ordinary code lines) cannot finish a paragraph.
141
+ // Rescan only when a new blank line appears, and only the unsealed tail.
142
+ if (entry.content.length - start >= 240 && /(?:\r\n|\n|\r(?!\n))[ \t]*(?:\r\n|\n|\r(?!\n))/.test(previousLineEnd + appended)) {
143
+ const ends = findTranslationParagraphEnds(entry.content.slice(start));
144
+ if (ends.length) {
145
+ block = { ...block, paragraphs: [...block.paragraphs ?? [], ...ends.map(end => ({ end: start + end, translationEpoch: epoch }))] };
146
+ this.changed.add(index);
147
+ }
148
+ }
149
+ }
127
150
  entry = { ...entry, id: previous?.id ?? randomUUID(), timestamp: previous?.timestamp ?? entry.timestamp, metadata: { ...entry.metadata, textBlock: block } };
128
151
  this.entries.set(index, entry);
129
152
  if (!this.reconciling && block.state === 'OPEN' && (!this.active.has(block.streamId) || this.active.get(block.streamId) === index))
@@ -1 +1 @@
1
- {"version":3,"file":"text-block-tracker.js","sourceRoot":"","sources":["../../src/output/text-block-tracker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"text-block-tracker.js","sourceRoot":"","sources":["../../src/output/text-block-tracker.ts"],"names":[],"mappings":"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"}
@@ -1384,6 +1384,73 @@ describe('provider routes', () => {
1384
1384
  }
1385
1385
  await app.close();
1386
1386
  });
1387
+ it('keeps disabled configurations in management reads and preserves their status across edits and backup imports', async () => {
1388
+ const app = await createApp();
1389
+ try {
1390
+ const created = await app.inject({ method: 'POST', url: '/api/providers', payload: {
1391
+ name: 'Disabled Codex', agentType: AgentType.CODEX, runtimeType: RuntimeType.ACP,
1392
+ executionPermission: 'ASK', enabled: false,
1393
+ env: { OPENAI_API_KEY: { action: 'replace', value: 'disabled-provider-key' } },
1394
+ } });
1395
+ expect(created.statusCode, created.body).toBe(201);
1396
+ const id = created.json().id;
1397
+ expect(created.json().enabled).toBe(false);
1398
+ expect(created.body).not.toContain('disabled-provider-key');
1399
+ const edited = await app.inject({ method: 'PUT', url: `/api/providers/${id}`, payload: { name: 'Renamed disabled Codex' } });
1400
+ expect(edited.statusCode, edited.body).toBe(200);
1401
+ expect(edited.json().enabled).toBe(false);
1402
+ const list = await app.inject({ method: 'GET', url: '/api/providers' });
1403
+ expect(list.json()).toContainEqual(expect.objectContaining({ provider: expect.objectContaining({ id, enabled: false }) }));
1404
+ const reloaded = await app.inject({ method: 'POST', url: '/api/providers/reload' });
1405
+ expect(reloaded.json().providers).toContainEqual(expect.objectContaining({ id, enabled: false }));
1406
+ expect(reloaded.body).not.toContain('disabled-provider-key');
1407
+ const backup = (await app.inject({ method: 'GET', url: '/api/providers/backup' })).json();
1408
+ expect(backup.providers).toContainEqual(expect.objectContaining({ id, enabled: false, env: { OPENAI_API_KEY: 'disabled-provider-key' } }));
1409
+ expect((await app.inject({ method: 'PUT', url: `/api/providers/${id}`, payload: { enabled: true } })).json().enabled).toBe(true);
1410
+ const preview = await app.inject({ method: 'POST', url: '/api/providers/import/preview', payload: backup });
1411
+ expect(preview.statusCode, preview.body).toBe(200);
1412
+ expect(preview.json().items).toContainEqual(expect.objectContaining({
1413
+ action: 'OVERWRITE', incoming: expect.objectContaining({ id, enabled: false }), existing: expect.objectContaining({ enabled: true }),
1414
+ }));
1415
+ const imported = await app.inject({ method: 'POST', url: '/api/providers/import', payload: backup });
1416
+ expect(imported.statusCode, imported.body).toBe(200);
1417
+ expect(imported.json().providers).toContainEqual(expect.objectContaining({ id, enabled: false }));
1418
+ expect(imported.body).not.toContain('disabled-provider-key');
1419
+ reloadProviders();
1420
+ expect(getProviderById(id)).toMatchObject({ enabled: false, env: { OPENAI_API_KEY: 'disabled-provider-key' } });
1421
+ const invalid = await app.inject({ method: 'PUT', url: `/api/providers/${id}`, payload: { enabled: 'false' } });
1422
+ expect(invalid.statusCode).toBe(400);
1423
+ }
1424
+ finally {
1425
+ await app.close();
1426
+ }
1427
+ });
1428
+ it('toggles visibility without validating or changing configurations that need repair', async () => {
1429
+ const id = 'legacy-invalid-provider';
1430
+ const settings = '{ malformed native settings';
1431
+ fs.writeFileSync(path.join(dataDir, 'providers.json'), JSON.stringify({ providers: [{
1432
+ id, name: 'Needs repair', agentType: AgentType.CLAUDE_CODE, runtimeType: RuntimeType.CLI,
1433
+ env: { ANTHROPIC_API_KEY: 'legacy-disabled-key' }, config: { dangerouslySkipPermissions: false }, settings, isDefault: false,
1434
+ }] }));
1435
+ reloadProviders();
1436
+ const before = structuredClone(getProviderById(id));
1437
+ const app = await createApp();
1438
+ try {
1439
+ const normalEdit = await app.inject({ method: 'PUT', url: `/api/providers/${id}`, payload: { name: 'Still needs repair' } });
1440
+ expect(normalEdit.statusCode).toBe(400);
1441
+ for (const enabled of [false, true]) {
1442
+ const updated = await app.inject({ method: 'PUT', url: `/api/providers/${id}`, payload: { enabled } });
1443
+ expect(updated.statusCode, updated.body).toBe(200);
1444
+ expect(updated.json().enabled).toBe(enabled);
1445
+ expect(updated.body).not.toContain('legacy-disabled-key');
1446
+ reloadProviders();
1447
+ expect(getProviderById(id)).toEqual({ ...before, enabled });
1448
+ }
1449
+ }
1450
+ finally {
1451
+ await app.close();
1452
+ }
1453
+ });
1387
1454
  it('redacts structured secrets from every non-backup provider response', async () => {
1388
1455
  const app = await createApp();
1389
1456
  const secrets = [