agent-tower 0.4.16-beta.0 → 0.4.16-beta.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 (211) hide show
  1. package/dist/app.test.js +2 -0
  2. package/dist/app.test.js.map +1 -1
  3. package/dist/git/git-cli.d.ts +18 -1
  4. package/dist/git/git-cli.d.ts.map +1 -1
  5. package/dist/git/git-cli.js +17 -1
  6. package/dist/git/git-cli.js.map +1 -1
  7. package/dist/git/worktree.manager.d.ts +29 -2
  8. package/dist/git/worktree.manager.d.ts.map +1 -1
  9. package/dist/git/worktree.manager.js +137 -16
  10. package/dist/git/worktree.manager.js.map +1 -1
  11. package/dist/git/worktree.manager.test.d.ts +2 -0
  12. package/dist/git/worktree.manager.test.d.ts.map +1 -0
  13. package/dist/git/worktree.manager.test.js +104 -0
  14. package/dist/git/worktree.manager.test.js.map +1 -0
  15. package/dist/mcp/http-client.d.ts.map +1 -1
  16. package/dist/mcp/http-client.js +8 -1
  17. package/dist/mcp/http-client.js.map +1 -1
  18. package/dist/middleware/tunnel-auth.d.ts.map +1 -1
  19. package/dist/middleware/tunnel-auth.js +2 -0
  20. package/dist/middleware/tunnel-auth.js.map +1 -1
  21. package/dist/output/__tests__/codex-parser.test.d.ts +2 -0
  22. package/dist/output/__tests__/codex-parser.test.d.ts.map +1 -0
  23. package/dist/output/__tests__/codex-parser.test.js +148 -0
  24. package/dist/output/__tests__/codex-parser.test.js.map +1 -0
  25. package/dist/output/codex-parser.d.ts +12 -0
  26. package/dist/output/codex-parser.d.ts.map +1 -1
  27. package/dist/output/codex-parser.js +129 -12
  28. package/dist/output/codex-parser.js.map +1 -1
  29. package/dist/routes/__tests__/attachments.test.d.ts +2 -0
  30. package/dist/routes/__tests__/attachments.test.d.ts.map +1 -0
  31. package/dist/routes/__tests__/attachments.test.js +86 -0
  32. package/dist/routes/__tests__/attachments.test.js.map +1 -0
  33. package/dist/routes/__tests__/filesystem.test.d.ts +2 -0
  34. package/dist/routes/__tests__/filesystem.test.d.ts.map +1 -0
  35. package/dist/routes/__tests__/filesystem.test.js +80 -0
  36. package/dist/routes/__tests__/filesystem.test.js.map +1 -0
  37. package/dist/routes/__tests__/previews.test.d.ts +2 -0
  38. package/dist/routes/__tests__/previews.test.d.ts.map +1 -0
  39. package/dist/routes/__tests__/previews.test.js +89 -0
  40. package/dist/routes/__tests__/previews.test.js.map +1 -0
  41. package/dist/routes/__tests__/tasks.test.d.ts +2 -0
  42. package/dist/routes/__tests__/tasks.test.d.ts.map +1 -0
  43. package/dist/routes/__tests__/tasks.test.js +72 -0
  44. package/dist/routes/__tests__/tasks.test.js.map +1 -0
  45. package/dist/routes/attachments.d.ts.map +1 -1
  46. package/dist/routes/attachments.js +36 -16
  47. package/dist/routes/attachments.js.map +1 -1
  48. package/dist/routes/filesystem.d.ts.map +1 -1
  49. package/dist/routes/filesystem.js +24 -3
  50. package/dist/routes/filesystem.js.map +1 -1
  51. package/dist/routes/index.d.ts.map +1 -1
  52. package/dist/routes/index.js +3 -0
  53. package/dist/routes/index.js.map +1 -1
  54. package/dist/routes/previews.d.ts +6 -0
  55. package/dist/routes/previews.d.ts.map +1 -0
  56. package/dist/routes/previews.js +413 -0
  57. package/dist/routes/previews.js.map +1 -0
  58. package/dist/routes/projects.d.ts.map +1 -1
  59. package/dist/routes/projects.js +1 -0
  60. package/dist/routes/projects.js.map +1 -1
  61. package/dist/routes/tasks.js +2 -2
  62. package/dist/routes/tasks.js.map +1 -1
  63. package/dist/routes/team-runs.d.ts.map +1 -1
  64. package/dist/routes/team-runs.js +18 -8
  65. package/dist/routes/team-runs.js.map +1 -1
  66. package/dist/routes/tunnel.d.ts.map +1 -1
  67. package/dist/routes/tunnel.js +20 -0
  68. package/dist/routes/tunnel.js.map +1 -1
  69. package/dist/routes/workspaces.d.ts.map +1 -1
  70. package/dist/routes/workspaces.js +15 -1
  71. package/dist/routes/workspaces.js.map +1 -1
  72. package/dist/services/__tests__/preview.service.test.d.ts +2 -0
  73. package/dist/services/__tests__/preview.service.test.d.ts.map +1 -0
  74. package/dist/services/__tests__/preview.service.test.js +29 -0
  75. package/dist/services/__tests__/preview.service.test.js.map +1 -0
  76. package/dist/services/__tests__/task.service.test.d.ts +2 -0
  77. package/dist/services/__tests__/task.service.test.d.ts.map +1 -0
  78. package/dist/services/__tests__/task.service.test.js +65 -0
  79. package/dist/services/__tests__/task.service.test.js.map +1 -0
  80. package/dist/services/__tests__/team-reconciler.service.test.js +525 -27
  81. package/dist/services/__tests__/team-reconciler.service.test.js.map +1 -1
  82. package/dist/services/__tests__/team-run.service.test.js +252 -0
  83. package/dist/services/__tests__/team-run.service.test.js.map +1 -1
  84. package/dist/services/__tests__/team-scheduler.service.test.js +551 -21
  85. package/dist/services/__tests__/team-scheduler.service.test.js.map +1 -1
  86. package/dist/services/__tests__/tunnel.service.test.d.ts +2 -0
  87. package/dist/services/__tests__/tunnel.service.test.d.ts.map +1 -0
  88. package/dist/services/__tests__/tunnel.service.test.js +138 -0
  89. package/dist/services/__tests__/tunnel.service.test.js.map +1 -0
  90. package/dist/services/__tests__/workspace.service.test.d.ts +2 -0
  91. package/dist/services/__tests__/workspace.service.test.d.ts.map +1 -0
  92. package/dist/services/__tests__/workspace.service.test.js +695 -0
  93. package/dist/services/__tests__/workspace.service.test.js.map +1 -0
  94. package/dist/services/attachment-context.d.ts +3 -0
  95. package/dist/services/attachment-context.d.ts.map +1 -0
  96. package/dist/services/attachment-context.js +34 -0
  97. package/dist/services/attachment-context.js.map +1 -0
  98. package/dist/services/preview.service.d.ts +19 -0
  99. package/dist/services/preview.service.d.ts.map +1 -0
  100. package/dist/services/preview.service.js +147 -0
  101. package/dist/services/preview.service.js.map +1 -0
  102. package/dist/services/project.service.d.ts +2 -0
  103. package/dist/services/project.service.d.ts.map +1 -1
  104. package/dist/services/project.service.js +87 -18
  105. package/dist/services/project.service.js.map +1 -1
  106. package/dist/services/session-manager.d.ts +12 -0
  107. package/dist/services/session-manager.d.ts.map +1 -1
  108. package/dist/services/task.service.d.ts +6 -0
  109. package/dist/services/task.service.d.ts.map +1 -1
  110. package/dist/services/task.service.js +15 -3
  111. package/dist/services/task.service.js.map +1 -1
  112. package/dist/services/team-lock.service.d.ts +3 -0
  113. package/dist/services/team-lock.service.d.ts.map +1 -1
  114. package/dist/services/team-lock.service.js +11 -0
  115. package/dist/services/team-lock.service.js.map +1 -1
  116. package/dist/services/team-run.service.d.ts +3 -0
  117. package/dist/services/team-run.service.d.ts.map +1 -1
  118. package/dist/services/team-run.service.js +288 -30
  119. package/dist/services/team-run.service.js.map +1 -1
  120. package/dist/services/team-scheduler.service.d.ts +15 -0
  121. package/dist/services/team-scheduler.service.d.ts.map +1 -1
  122. package/dist/services/team-scheduler.service.js +125 -32
  123. package/dist/services/team-scheduler.service.js.map +1 -1
  124. package/dist/services/tunnel.service.d.ts +31 -5
  125. package/dist/services/tunnel.service.d.ts.map +1 -1
  126. package/dist/services/tunnel.service.js +293 -32
  127. package/dist/services/tunnel.service.js.map +1 -1
  128. package/dist/services/workspace.service.d.ts +161 -7
  129. package/dist/services/workspace.service.d.ts.map +1 -1
  130. package/dist/services/workspace.service.js +396 -51
  131. package/dist/services/workspace.service.js.map +1 -1
  132. package/dist/web/assets/{AgentDemoPage-p9YI4_l4.js → AgentDemoPage-Bf6labVB.js} +1 -1
  133. package/dist/web/assets/{DemoPage-B5DTSEbS.js → DemoPage-DlfG47rV.js} +1 -1
  134. package/dist/web/assets/{GeneralSettingsPage-Cspr7Vol.js → GeneralSettingsPage-DefqwzVn.js} +1 -1
  135. package/dist/web/assets/MemberAvatar-DVw_TedB.js +1 -0
  136. package/dist/web/assets/NotificationSettingsPage-C9h1U1Za.js +1 -0
  137. package/dist/web/assets/{ProfileSettingsPage-CNugU40a.js → ProfileSettingsPage-BkZE2yVP.js} +1 -1
  138. package/dist/web/assets/ProjectKanbanPage-B1Ckl1uY.js +89 -0
  139. package/dist/web/assets/ProjectSettingsPage-ByZ13awb.js +2 -0
  140. package/dist/web/assets/{ProviderSettingsPage-D_KWkgRM.js → ProviderSettingsPage-DSQYe8B6.js} +12 -12
  141. package/dist/web/assets/TeamSettingsPage-DUukJ_Ih.js +1 -0
  142. package/dist/web/assets/agent-tower-logo-COx9gy77.png +0 -0
  143. package/dist/web/assets/{button-B6JaSbDB.js → button-Bpm98eOV.js} +1 -1
  144. package/dist/web/assets/{chevron-down-CACy4UFq.js → chevron-down-DSKKXCi8.js} +1 -1
  145. package/dist/web/assets/{chevron-right-DFWfnDJY.js → chevron-right-CZdDV9GU.js} +1 -1
  146. package/dist/web/assets/{chevron-up-CGlf6jzw.js → chevron-up-gnnlwvYe.js} +1 -1
  147. package/dist/web/assets/{circle-check-DMK8auwb.js → circle-check-DeD_VuLK.js} +1 -1
  148. package/dist/web/assets/{code-block-OCS4YCEC-Hn75KHRK.js → code-block-OCS4YCEC-BrGjkdjS.js} +1 -1
  149. package/dist/web/assets/{confirm-dialog-DHI2f7Ni.js → confirm-dialog-CEVVvAcE.js} +1 -1
  150. package/dist/web/assets/folder-picker-ZBQlFEWL.js +1 -0
  151. package/dist/web/assets/{index-BFAA3PTl.js → index-B5g4V0NU.js} +6 -6
  152. package/dist/web/assets/index-ltjI8o6A.css +1 -0
  153. package/dist/web/assets/loader-circle-GMfBClX0.js +1 -0
  154. package/dist/web/assets/{log-adapter-CeKrvZcz.js → log-adapter-DKKM3sxS.js} +1 -1
  155. package/dist/web/assets/{mermaid-NOHMQCX5-DJFgrXPd.js → mermaid-NOHMQCX5-D5USvUiZ.js} +4 -4
  156. package/dist/web/assets/{modal-B5IRN7QI.js → modal-JMpuh-LG.js} +1 -1
  157. package/dist/web/assets/{pencil-CJY6Ahn7.js → pencil-QrCW47nn.js} +1 -1
  158. package/dist/web/assets/{select-BPZZlla1.js → select-CINRzLiE.js} +1 -1
  159. package/dist/web/assets/upload-vFxZxKHo.js +1 -0
  160. package/dist/web/assets/{use-profiles-C2k04ICZ.js → use-profiles-SrVWPYv0.js} +1 -1
  161. package/dist/web/assets/{use-providers-C7fIDWzP.js → use-providers-BihMydl0.js} +1 -1
  162. package/dist/web/avatars/presets/avatar-preset-01-developer.png +0 -0
  163. package/dist/web/avatars/presets/avatar-preset-02-architect.png +0 -0
  164. package/dist/web/avatars/presets/avatar-preset-03-tester.png +0 -0
  165. package/dist/web/avatars/presets/avatar-preset-04-devops.png +0 -0
  166. package/dist/web/avatars/presets/avatar-preset-05-data-scientist.png +0 -0
  167. package/dist/web/avatars/presets/avatar-preset-06-frontend.png +0 -0
  168. package/dist/web/avatars/presets/avatar-preset-07-backend.png +0 -0
  169. package/dist/web/avatars/presets/avatar-preset-08-security.png +0 -0
  170. package/dist/web/avatars/presets/avatar-preset-09-project-manager.png +0 -0
  171. package/dist/web/avatars/presets/avatar-preset-10-product-manager.png +0 -0
  172. package/dist/web/avatars/presets/avatar-preset-11-scrum-master.png +0 -0
  173. package/dist/web/avatars/presets/avatar-preset-12-tech-lead.png +0 -0
  174. package/dist/web/avatars/presets/avatar-preset-13-coordinator.png +0 -0
  175. package/dist/web/avatars/presets/avatar-preset-14-mentor.png +0 -0
  176. package/dist/web/avatars/presets/avatar-preset-15-reviewer.png +0 -0
  177. package/dist/web/avatars/presets/avatar-preset-16-ui-designer.png +0 -0
  178. package/dist/web/avatars/presets/avatar-preset-17-ux-researcher.png +0 -0
  179. package/dist/web/avatars/presets/avatar-preset-18-documenter.png +0 -0
  180. package/dist/web/avatars/presets/avatar-preset-19-translator.png +0 -0
  181. package/dist/web/avatars/presets/avatar-preset-20-analyst.png +0 -0
  182. package/dist/web/avatars/presets/avatar-preset-21-consultant.png +0 -0
  183. package/dist/web/avatars/presets/avatar-preset-22-creative-director.png +0 -0
  184. package/dist/web/avatars/presets/avatar-preset-23-support.png +0 -0
  185. package/dist/web/avatars/presets/avatar-preset-24-assistant.png +0 -0
  186. package/dist/web/avatars/presets/avatar-preset-25-robot.png +0 -0
  187. package/dist/web/avatars/presets/avatar-preset-grid.png +0 -0
  188. package/dist/web/index.html +2 -2
  189. package/node_modules/@agent-tower/shared/dist/types.d.ts +9 -1
  190. package/node_modules/@agent-tower/shared/dist/types.d.ts.map +1 -1
  191. package/node_modules/@agent-tower/shared/dist/types.js.map +1 -1
  192. package/node_modules/@prisma/client/.prisma/client/edge.js +9 -5
  193. package/node_modules/@prisma/client/.prisma/client/index-browser.js +4 -0
  194. package/node_modules/@prisma/client/.prisma/client/index.d.ts +1242 -14
  195. package/node_modules/@prisma/client/.prisma/client/index.js +9 -5
  196. package/node_modules/@prisma/client/.prisma/client/package.json +1 -1
  197. package/node_modules/@prisma/client/.prisma/client/schema.prisma +47 -31
  198. package/node_modules/@prisma/client/.prisma/client/wasm.js +4 -0
  199. package/package.json +1 -1
  200. package/prisma/migrations/20260515000000_add_workspace_preview_target/migration.sql +2 -0
  201. package/prisma/migrations/20260526000000_add_team_run_main_and_dedicated_workspaces/migration.sql +21 -0
  202. package/prisma/schema.prisma +27 -11
  203. package/dist/web/assets/NotificationSettingsPage-C9VfrRr-.js +0 -1
  204. package/dist/web/assets/ProjectKanbanPage-CkGNuqxq.js +0 -87
  205. package/dist/web/assets/ProjectSettingsPage-f1dg0XMf.js +0 -2
  206. package/dist/web/assets/TeamSettingsPage-B6WciZyi.js +0 -1
  207. package/dist/web/assets/circle-alert-BSAUEd9O.js +0 -1
  208. package/dist/web/assets/folder-picker-CtQkbWfa.js +0 -1
  209. package/dist/web/assets/index-mBCb67dB.css +0 -1
  210. package/dist/web/assets/loader-circle-CkDnf8ST.js +0 -1
  211. package/dist/web/assets/use-projects-BxuE-ulT.js +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace.service.test.js","sourceRoot":"","sources":["../../../src/services/__tests__/workspace.service.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare function buildAttachmentMarkdownContext(attachmentIds: string[] | null | undefined, existingContent?: string): Promise<string>;
2
+ export declare function appendAttachmentMarkdownContext(content: string, attachmentIds: string[] | null | undefined): Promise<string>;
3
+ //# sourceMappingURL=attachment-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attachment-context.d.ts","sourceRoot":"","sources":["../../src/services/attachment-context.ts"],"names":[],"mappings":"AAkBA,wBAAsB,8BAA8B,CAClD,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,EAC1C,eAAe,SAAK,GACnB,OAAO,CAAC,MAAM,CAAC,CAoBjB;AAED,wBAAsB,+BAA+B,CACnD,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,GACzC,OAAO,CAAC,MAAM,CAAC,CAGjB"}
@@ -0,0 +1,34 @@
1
+ import { prisma } from '../utils/index.js';
2
+ function uniqueIds(ids) {
3
+ return Array.from(new Set((ids ?? []).map((id) => id.trim()).filter(Boolean)));
4
+ }
5
+ function formatAttachmentMarkdown(attachment) {
6
+ const prefix = attachment.mimeType.startsWith('image/') ? '!' : '';
7
+ return `${prefix}[${attachment.originalName}](${attachment.storagePath})`;
8
+ }
9
+ export async function buildAttachmentMarkdownContext(attachmentIds, existingContent = '') {
10
+ const ids = uniqueIds(attachmentIds);
11
+ if (ids.length === 0)
12
+ return '';
13
+ const attachments = await prisma.attachment.findMany({
14
+ where: { id: { in: ids } },
15
+ });
16
+ const attachmentById = new Map(attachments.map((attachment) => [attachment.id, attachment]));
17
+ const lines = [];
18
+ for (const id of ids) {
19
+ const attachment = attachmentById.get(id);
20
+ if (!attachment)
21
+ continue;
22
+ if (existingContent.includes(attachment.storagePath))
23
+ continue;
24
+ lines.push(formatAttachmentMarkdown(attachment));
25
+ }
26
+ if (lines.length === 0)
27
+ return '';
28
+ return ['Attachments:', ...lines].join('\n');
29
+ }
30
+ export async function appendAttachmentMarkdownContext(content, attachmentIds) {
31
+ const attachmentContext = await buildAttachmentMarkdownContext(attachmentIds, content);
32
+ return [content.trim(), attachmentContext].filter(Boolean).join('\n\n');
33
+ }
34
+ //# sourceMappingURL=attachment-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attachment-context.js","sourceRoot":"","sources":["../../src/services/attachment-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAS3C,SAAS,SAAS,CAAC,GAAgC;IACjD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACjF,CAAC;AAED,SAAS,wBAAwB,CAAC,UAAiC;IACjE,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACnE,OAAO,GAAG,MAAM,IAAI,UAAU,CAAC,YAAY,KAAK,UAAU,CAAC,WAAW,GAAG,CAAC;AAC5E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,aAA0C,EAC1C,eAAe,GAAG,EAAE;IAEpB,MAAM,GAAG,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC;IACrC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAEhC,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC;QACnD,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE;KAC3B,CAAC,CAAC;IACH,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IAE7F,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;QACrB,MAAM,UAAU,GAAG,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1C,IAAI,CAAC,UAAU;YAAE,SAAS;QAC1B,IAAI,eAAe,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC;YAAE,SAAS;QAC/D,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC,CAAC;IACnD,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAElC,OAAO,CAAC,cAAc,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACnD,OAAe,EACf,aAA0C;IAE1C,MAAM,iBAAiB,GAAG,MAAM,8BAA8B,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IACvF,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,iBAAiB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC1E,CAAC"}
@@ -0,0 +1,19 @@
1
+ export interface NormalizedPreviewTarget {
2
+ target: string;
3
+ origin: string;
4
+ basePath: string;
5
+ }
6
+ export interface PreviewStatus {
7
+ configured: boolean;
8
+ ready: boolean;
9
+ target: string | null;
10
+ viewUrl: string | null;
11
+ error: string | null;
12
+ }
13
+ export declare function normalizePreviewTarget(input: string): NormalizedPreviewTarget;
14
+ export declare class PreviewService {
15
+ getTarget(workspaceId: string): Promise<NormalizedPreviewTarget | null>;
16
+ setTarget(workspaceId: string, targetInput: string | null): Promise<NormalizedPreviewTarget | null>;
17
+ getStatus(workspaceId: string): Promise<PreviewStatus>;
18
+ }
19
+ //# sourceMappingURL=preview.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preview.service.d.ts","sourceRoot":"","sources":["../../src/services/preview.service.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAoDD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,uBAAuB,CA0B7E;AAqBD,qBAAa,cAAc;IACnB,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC;IAcvE,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC;IA0BnG,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;CAsB7D"}
@@ -0,0 +1,147 @@
1
+ import net from 'node:net';
2
+ import { prisma } from '../utils/index.js';
3
+ import { NotFoundError, ServiceError } from '../errors.js';
4
+ const DEFAULT_SCHEME = 'http';
5
+ const LOOPBACK_HOSTS = new Set(['localhost', '127.0.0.1', '[::1]', '::1']);
6
+ const CONNECTION_TIMEOUT_MS = 1500;
7
+ function stripTrailingSlash(value) {
8
+ return value.endsWith('/') && value.length > 1 ? value.slice(0, -1) : value;
9
+ }
10
+ function withDefaultScheme(input) {
11
+ const trimmed = input.trim();
12
+ if (/^\d+$/.test(trimmed))
13
+ return `${DEFAULT_SCHEME}://127.0.0.1:${trimmed}`;
14
+ if (/^[a-zA-Z][a-zA-Z\d+\-.]*:\/\//.test(trimmed))
15
+ return trimmed;
16
+ return `${DEFAULT_SCHEME}://${trimmed}`;
17
+ }
18
+ function normalizeHostname(hostname) {
19
+ const lower = hostname.toLowerCase();
20
+ if (lower === '::1' || lower === '[::1]')
21
+ return '[::1]';
22
+ if (lower === 'localhost')
23
+ return '127.0.0.1';
24
+ return lower;
25
+ }
26
+ function parsePort(url) {
27
+ if (!url.port) {
28
+ return url.protocol === 'https:' ? 443 : 80;
29
+ }
30
+ const port = Number(url.port);
31
+ if (!Number.isInteger(port) || port < 1 || port > 65535) {
32
+ throw new ServiceError('Preview target port must be between 1 and 65535', 'INVALID_PREVIEW_TARGET', 400);
33
+ }
34
+ return port;
35
+ }
36
+ function ensureLoopbackTarget(url) {
37
+ if (url.protocol !== 'http:' && url.protocol !== 'https:') {
38
+ throw new ServiceError('Preview target must use http or https', 'INVALID_PREVIEW_TARGET', 400);
39
+ }
40
+ if (url.username || url.password) {
41
+ throw new ServiceError('Preview target must not include credentials', 'INVALID_PREVIEW_TARGET', 400);
42
+ }
43
+ const hostname = url.hostname.toLowerCase();
44
+ if (hostname === '0.0.0.0') {
45
+ url.hostname = '127.0.0.1';
46
+ return;
47
+ }
48
+ if (!LOOPBACK_HOSTS.has(hostname)) {
49
+ throw new ServiceError('Preview target host must be localhost, 127.0.0.1, or ::1', 'INVALID_PREVIEW_TARGET', 400);
50
+ }
51
+ }
52
+ export function normalizePreviewTarget(input) {
53
+ const value = input.trim();
54
+ if (!value) {
55
+ throw new ServiceError('Preview target is required', 'INVALID_PREVIEW_TARGET', 400);
56
+ }
57
+ let url;
58
+ try {
59
+ url = new URL(withDefaultScheme(value));
60
+ }
61
+ catch {
62
+ throw new ServiceError('Preview target is not a valid URL', 'INVALID_PREVIEW_TARGET', 400);
63
+ }
64
+ ensureLoopbackTarget(url);
65
+ parsePort(url);
66
+ url.hash = '';
67
+ url.search = '';
68
+ const hostname = normalizeHostname(url.hostname);
69
+ url.hostname = hostname;
70
+ const target = stripTrailingSlash(url.toString());
71
+ const origin = url.origin;
72
+ const basePath = url.pathname === '/' ? '' : stripTrailingSlash(url.pathname);
73
+ return { target, origin, basePath };
74
+ }
75
+ async function canConnect(url) {
76
+ const port = parsePort(url);
77
+ const host = url.hostname === '[::1]' ? '::1' : url.hostname;
78
+ return new Promise((resolve) => {
79
+ const socket = net.createConnection({ host, port });
80
+ const done = (ready, error) => {
81
+ socket.removeAllListeners();
82
+ socket.destroy();
83
+ resolve({ ready, error });
84
+ };
85
+ socket.setTimeout(CONNECTION_TIMEOUT_MS);
86
+ socket.once('connect', () => done(true, null));
87
+ socket.once('timeout', () => done(false, `Connection timed out after ${CONNECTION_TIMEOUT_MS}ms`));
88
+ socket.once('error', (err) => done(false, err.message));
89
+ });
90
+ }
91
+ export class PreviewService {
92
+ async getTarget(workspaceId) {
93
+ const workspace = await prisma.workspace.findUnique({
94
+ where: { id: workspaceId },
95
+ select: { id: true, previewTarget: true },
96
+ });
97
+ if (!workspace) {
98
+ throw new NotFoundError('Workspace', workspaceId);
99
+ }
100
+ if (!workspace.previewTarget)
101
+ return null;
102
+ return normalizePreviewTarget(workspace.previewTarget);
103
+ }
104
+ async setTarget(workspaceId, targetInput) {
105
+ const workspace = await prisma.workspace.findUnique({
106
+ where: { id: workspaceId },
107
+ select: { id: true },
108
+ });
109
+ if (!workspace) {
110
+ throw new NotFoundError('Workspace', workspaceId);
111
+ }
112
+ if (targetInput === null || targetInput.trim() === '') {
113
+ await prisma.workspace.update({
114
+ where: { id: workspaceId },
115
+ data: { previewTarget: null },
116
+ });
117
+ return null;
118
+ }
119
+ const normalized = normalizePreviewTarget(targetInput);
120
+ await prisma.workspace.update({
121
+ where: { id: workspaceId },
122
+ data: { previewTarget: normalized.target },
123
+ });
124
+ return normalized;
125
+ }
126
+ async getStatus(workspaceId) {
127
+ const target = await this.getTarget(workspaceId);
128
+ if (!target) {
129
+ return {
130
+ configured: false,
131
+ ready: false,
132
+ target: null,
133
+ viewUrl: null,
134
+ error: null,
135
+ };
136
+ }
137
+ const result = await canConnect(new URL(target.origin));
138
+ return {
139
+ configured: true,
140
+ ready: result.ready,
141
+ target: target.target,
142
+ viewUrl: `/view/${workspaceId}/`,
143
+ error: result.error,
144
+ };
145
+ }
146
+ }
147
+ //# sourceMappingURL=preview.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preview.service.js","sourceRoot":"","sources":["../../src/services/preview.service.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ interface CreateProjectInput {
3
3
  description?: string;
4
4
  repoPath: string;
5
5
  mainBranch?: string;
6
+ initEmptyRepo?: boolean;
6
7
  copyFiles?: string;
7
8
  setupScript?: string;
8
9
  quickCommands?: string;
@@ -83,6 +84,7 @@ export declare class ProjectService {
83
84
  /**
84
85
  * 创建项目
85
86
  * - 校验 repoPath 是否存在且为有效的 Git 仓库
87
+ * - 允许对空目录执行 Git 初始化
86
88
  */
87
89
  create(input: CreateProjectInput): Promise<{
88
90
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"project.service.d.ts","sourceRoot":"","sources":["../../src/services/project.service.ts"],"names":[],"mappings":"AAaA,UAAU,kBAAkB;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,UAAU,kBAAkB;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,UAAU,gBAAgB;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,UAAU,eAAe,CAAC,CAAC;IACzB,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,iBAAiB;AACjB,UAAU,SAAS;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,mBAAmB;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,UAAU,mBAAmB;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,oBAAoB,CAAC,CAAC;IAC9B,OAAO,EAAE,CAAC,CAAC;IACX,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAwGD,qBAAa,cAAc;IACzB;;OAEG;IACG,OAAO,CAAC,MAAM,GAAE,gBAAqB,GAAG,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IAyB3E;;OAEG;IACG,QAAQ,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;IAuCzB;;;OAGG;IACG,MAAM,CAAC,KAAK,EAAE,kBAAkB;;;;;;;;;;;;;;;IA8BtC;;OAEG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB;;;;;;;;;;;;;;;IA0BlD;;OAEG;IACG,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,GAAE,mBAAwB;;;;;;;;;;;;;;;IAgFnD,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,GAAE,mBAAwB,GAAG,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;IA6C9F;;OAEG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM;CAIxB"}
1
+ {"version":3,"file":"project.service.d.ts","sourceRoot":"","sources":["../../src/services/project.service.ts"],"names":[],"mappings":"AAaA,UAAU,kBAAkB;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,UAAU,kBAAkB;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,UAAU,gBAAgB;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,UAAU,eAAe,CAAC,CAAC;IACzB,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,iBAAiB;AACjB,UAAU,SAAS;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,mBAAmB;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,UAAU,mBAAmB;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,oBAAoB,CAAC,CAAC;IAC9B,OAAO,EAAE,CAAC,CAAC;IACX,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAyLD,qBAAa,cAAc;IACzB;;OAEG;IACG,OAAO,CAAC,MAAM,GAAE,gBAAqB,GAAG,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IAyB3E;;OAEG;IACG,QAAQ,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;IAuCzB;;;;OAIG;IACG,MAAM,CAAC,KAAK,EAAE,kBAAkB;;;;;;;;;;;;;;;IAqCtC;;OAEG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB;;;;;;;;;;;;;;;IA0BlD;;OAEG;IACG,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,GAAE,mBAAwB;;;;;;;;;;;;;;;IAgFnD,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,GAAE,mBAAwB,GAAG,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;IA6C9F;;OAEG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM;CAIxB"}
@@ -16,7 +16,7 @@ async function getRepoRemoteUrl(repoPath) {
16
16
  return null;
17
17
  }
18
18
  }
19
- function assertRepoPathExists(resolvedPath) {
19
+ function assertDirectoryPathExists(resolvedPath) {
20
20
  if (!fs.existsSync(resolvedPath)) {
21
21
  throw new ValidationError(`repoPath does not exist: ${resolvedPath}`);
22
22
  }
@@ -24,11 +24,23 @@ function assertRepoPathExists(resolvedPath) {
24
24
  if (!stat.isDirectory()) {
25
25
  throw new ValidationError(`repoPath is not a directory: ${resolvedPath}`);
26
26
  }
27
+ }
28
+ function hasGitMetadata(resolvedPath) {
27
29
  const gitPath = path.join(resolvedPath, '.git');
28
- if (!fs.existsSync(gitPath)) {
30
+ return fs.existsSync(gitPath);
31
+ }
32
+ function assertRepoPathExists(resolvedPath) {
33
+ assertDirectoryPathExists(resolvedPath);
34
+ if (!hasGitMetadata(resolvedPath)) {
29
35
  throw new ValidationError(`repoPath is not a valid Git repository (no .git found): ${resolvedPath}`);
30
36
  }
31
37
  }
38
+ async function assertDirectoryIsEmpty(resolvedPath) {
39
+ const entries = await fsPromises.readdir(resolvedPath);
40
+ if (entries.length > 0) {
41
+ throw new ValidationError(`repoPath is not a Git repository and is not empty: ${resolvedPath}`);
42
+ }
43
+ }
32
44
  /**
33
45
  * 若仓库无任何提交,自动执行一次空提交作为初始基准。
34
46
  * git worktree 依赖 HEAD 指向有效 commit,空仓库无法创建 worktree。
@@ -39,7 +51,17 @@ async function ensureRepoHasCommit(repoPath) {
39
51
  }
40
52
  catch {
41
53
  try {
42
- await execGit(repoPath, ['commit', '--allow-empty', '-m', 'chore: initial commit']);
54
+ await execGit(repoPath, [
55
+ '-c',
56
+ 'user.name=Agent Tower',
57
+ '-c',
58
+ 'user.email=agent-tower@local',
59
+ 'commit',
60
+ '--allow-empty',
61
+ '--no-gpg-sign',
62
+ '-m',
63
+ 'chore: initial commit',
64
+ ]);
43
65
  }
44
66
  catch (err) {
45
67
  const msg = err instanceof Error ? err.message : String(err);
@@ -47,6 +69,13 @@ async function ensureRepoHasCommit(repoPath) {
47
69
  }
48
70
  }
49
71
  }
72
+ async function initializeEmptyRepository(repoPath) {
73
+ await execGit(repoPath, ['init']);
74
+ await execGit(repoPath, ['symbolic-ref', 'HEAD', 'refs/heads/main']);
75
+ }
76
+ async function removeGitMetadata(repoPath) {
77
+ await fsPromises.rm(path.join(repoPath, '.git'), { recursive: true, force: true }).catch(() => { });
78
+ }
50
79
  async function resolveAndValidateRepoPath(repoPath) {
51
80
  const resolvedPath = path.resolve(repoPath);
52
81
  assertRepoPathExists(resolvedPath);
@@ -55,6 +84,39 @@ async function resolveAndValidateRepoPath(repoPath) {
55
84
  repoRemoteUrl: await getRepoRemoteUrl(resolvedPath),
56
85
  };
57
86
  }
87
+ async function prepareRepoForProjectCreate(repoPath, initEmptyRepo) {
88
+ const resolvedPath = path.resolve(repoPath);
89
+ assertDirectoryPathExists(resolvedPath);
90
+ let initialized = false;
91
+ if (!hasGitMetadata(resolvedPath)) {
92
+ if (!initEmptyRepo) {
93
+ throw new ValidationError(`repoPath is not a valid Git repository (no .git found): ${resolvedPath}`);
94
+ }
95
+ await assertDirectoryIsEmpty(resolvedPath);
96
+ try {
97
+ await initializeEmptyRepository(resolvedPath);
98
+ initialized = true;
99
+ }
100
+ catch (error) {
101
+ await removeGitMetadata(resolvedPath);
102
+ throw error;
103
+ }
104
+ }
105
+ try {
106
+ await ensureRepoHasCommit(resolvedPath);
107
+ }
108
+ catch (error) {
109
+ if (initialized) {
110
+ await removeGitMetadata(resolvedPath);
111
+ }
112
+ throw error;
113
+ }
114
+ return {
115
+ resolvedPath,
116
+ repoRemoteUrl: await getRepoRemoteUrl(resolvedPath),
117
+ initialized,
118
+ };
119
+ }
58
120
  async function isValidGitRepo(repoPath) {
59
121
  try {
60
122
  assertRepoPathExists(path.resolve(repoPath));
@@ -147,11 +209,9 @@ export class ProjectService {
147
209
  /**
148
210
  * 创建项目
149
211
  * - 校验 repoPath 是否存在且为有效的 Git 仓库
212
+ * - 允许对空目录执行 Git 初始化
150
213
  */
151
214
  async create(input) {
152
- const { resolvedPath, repoRemoteUrl } = await resolveAndValidateRepoPath(input.repoPath);
153
- // 空仓库(无任何 commit)自动创建初始提交,否则 worktree 无法工作
154
- await ensureRepoHasCommit(resolvedPath);
155
215
  // 检查同名项目
156
216
  const existing = await prisma.project.findFirst({
157
217
  where: { name: input.name },
@@ -159,18 +219,27 @@ export class ProjectService {
159
219
  if (existing) {
160
220
  throw new ValidationError(`A project with name "${input.name}" already exists`);
161
221
  }
162
- return prisma.project.create({
163
- data: {
164
- name: input.name,
165
- description: input.description,
166
- repoPath: resolvedPath,
167
- repoRemoteUrl,
168
- mainBranch: input.mainBranch || 'main',
169
- copyFiles: input.copyFiles,
170
- setupScript: input.setupScript,
171
- quickCommands: input.quickCommands,
172
- },
173
- });
222
+ const { resolvedPath, repoRemoteUrl, initialized } = await prepareRepoForProjectCreate(input.repoPath, input.initEmptyRepo ?? false);
223
+ try {
224
+ return await prisma.project.create({
225
+ data: {
226
+ name: input.name,
227
+ description: input.description,
228
+ repoPath: resolvedPath,
229
+ repoRemoteUrl,
230
+ mainBranch: input.mainBranch || 'main',
231
+ copyFiles: input.copyFiles,
232
+ setupScript: input.setupScript,
233
+ quickCommands: input.quickCommands,
234
+ },
235
+ });
236
+ }
237
+ catch (error) {
238
+ if (initialized) {
239
+ await removeGitMetadata(resolvedPath);
240
+ }
241
+ throw error;
242
+ }
174
243
  }
175
244
  /**
176
245
  * 更新项目
@@ -1 +1 @@
1
- {"version":3,"file":"project.service.js","sourceRoot":"","sources":["../../src/services/project.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project.service.js","sourceRoot":"","sources":["../../src/services/project.service.ts"],"names":[],"mappings":"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"}
@@ -18,10 +18,13 @@ export declare class SessionManager {
18
18
  updatedAt: Date;
19
19
  status: string;
20
20
  taskId: string;
21
+ parentWorkspaceId: string | null;
22
+ ownerMemberId: string | null;
21
23
  branchName: string;
22
24
  baseBranch: string | null;
23
25
  worktreePath: string;
24
26
  commitMessage: string | null;
27
+ previewTarget: string | null;
25
28
  hibernatedAt: Date | null;
26
29
  };
27
30
  processes: {
@@ -67,10 +70,13 @@ export declare class SessionManager {
67
70
  updatedAt: Date;
68
71
  status: string;
69
72
  taskId: string;
73
+ parentWorkspaceId: string | null;
74
+ ownerMemberId: string | null;
70
75
  branchName: string;
71
76
  baseBranch: string | null;
72
77
  worktreePath: string;
73
78
  commitMessage: string | null;
79
+ previewTarget: string | null;
74
80
  hibernatedAt: Date | null;
75
81
  };
76
82
  } & {
@@ -94,10 +100,13 @@ export declare class SessionManager {
94
100
  updatedAt: Date;
95
101
  status: string;
96
102
  taskId: string;
103
+ parentWorkspaceId: string | null;
104
+ ownerMemberId: string | null;
97
105
  branchName: string;
98
106
  baseBranch: string | null;
99
107
  worktreePath: string;
100
108
  commitMessage: string | null;
109
+ previewTarget: string | null;
101
110
  hibernatedAt: Date | null;
102
111
  };
103
112
  } & {
@@ -121,10 +130,13 @@ export declare class SessionManager {
121
130
  updatedAt: Date;
122
131
  status: string;
123
132
  taskId: string;
133
+ parentWorkspaceId: string | null;
134
+ ownerMemberId: string | null;
124
135
  branchName: string;
125
136
  baseBranch: string | null;
126
137
  worktreePath: string;
127
138
  commitMessage: string | null;
139
+ previewTarget: string | null;
128
140
  hibernatedAt: Date | null;
129
141
  };
130
142
  } & {
@@ -1 +1 @@
1
- {"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../src/services/session-manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAA6C,MAAM,mBAAmB,CAAC;AAczF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAIrE,qBAAa,cAAc;IASb,OAAO,CAAC,QAAQ,CAAC,QAAQ;IARrC,OAAO,CAAC,SAAS,CAAoC;IACrD,OAAO,CAAC,YAAY,CAAwC;IAC5D,OAAO,CAAC,mBAAmB,CAAoD;IAC/E,OAAO,CAAC,mBAAmB,CAAoC;IAC/D,OAAO,CAAC,qBAAqB,CAAoC;IACjE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwB;IACvD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAQ;gBAEvB,QAAQ,EAAE,QAAQ,EAAE,cAAc,CAAC,EAAE,qBAAqB;IA4CjF,QAAQ,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAOnB,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,MAAkB,EAAE,UAAU,CAAC,EAAE,MAAM;;;;;;;;;;;;;;IAalH,KAAK,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;IAoEhB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;IA2FrD,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;IAqJ5D,IAAI,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;IAwCrB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAMjD,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAM3D;;OAEG;IACH,UAAU,IAAI,IAAI;IAclB,OAAO,CAAC,qBAAqB;IAkB7B,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,YAAY;YAaN,0BAA0B;IAsBxC;;;;OAIG;YACW,iBAAiB;YA6BjB,wBAAwB;IAItC,OAAO,CAAC,uBAAuB;YAyBjB,oBAAoB;IA8FlC,OAAO,CAAC,6BAA6B;IAUrC;;;;;;;OAOG;YACW,oBAAoB;IA2ClC;;OAEG;IACH,OAAO,CAAC,8BAA8B;IAUtC;;;;;;;OAOG;YACW,mBAAmB;IAuCjC;;;;OAIG;YACW,iBAAiB;CAyDhC"}
1
+ {"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../src/services/session-manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAA6C,MAAM,mBAAmB,CAAC;AAczF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAIrE,qBAAa,cAAc;IASb,OAAO,CAAC,QAAQ,CAAC,QAAQ;IARrC,OAAO,CAAC,SAAS,CAAoC;IACrD,OAAO,CAAC,YAAY,CAAwC;IAC5D,OAAO,CAAC,mBAAmB,CAAoD;IAC/E,OAAO,CAAC,mBAAmB,CAAoC;IAC/D,OAAO,CAAC,qBAAqB,CAAoC;IACjE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwB;IACvD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAQ;gBAEvB,QAAQ,EAAE,QAAQ,EAAE,cAAc,CAAC,EAAE,qBAAqB;IA4CjF,QAAQ,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAOnB,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,MAAkB,EAAE,UAAU,CAAC,EAAE,MAAM;;;;;;;;;;;;;;IAalH,KAAK,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAoEhB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA2FrD,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAqJ5D,IAAI,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;IAwCrB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAMjD,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAM3D;;OAEG;IACH,UAAU,IAAI,IAAI;IAclB,OAAO,CAAC,qBAAqB;IAkB7B,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,YAAY;YAaN,0BAA0B;IAsBxC;;;;OAIG;YACW,iBAAiB;YA6BjB,wBAAwB;IAItC,OAAO,CAAC,uBAAuB;YAyBjB,oBAAoB;IA8FlC,OAAO,CAAC,6BAA6B;IAUrC;;;;;;;OAOG;YACW,oBAAoB;IA2ClC;;OAEG;IACH,OAAO,CAAC,8BAA8B;IAUtC;;;;;;;OAOG;YACW,mBAAmB;IAuCjC;;;;OAIG;YACW,iBAAiB;CAyDhC"}
@@ -46,10 +46,13 @@ export declare class TaskService {
46
46
  updatedAt: Date;
47
47
  status: string;
48
48
  taskId: string;
49
+ parentWorkspaceId: string | null;
50
+ ownerMemberId: string | null;
49
51
  branchName: string;
50
52
  baseBranch: string | null;
51
53
  worktreePath: string;
52
54
  commitMessage: string | null;
55
+ previewTarget: string | null;
53
56
  hibernatedAt: Date | null;
54
57
  }[];
55
58
  } & {
@@ -93,10 +96,13 @@ export declare class TaskService {
93
96
  updatedAt: Date;
94
97
  status: string;
95
98
  taskId: string;
99
+ parentWorkspaceId: string | null;
100
+ ownerMemberId: string | null;
96
101
  branchName: string;
97
102
  baseBranch: string | null;
98
103
  worktreePath: string;
99
104
  commitMessage: string | null;
105
+ previewTarget: string | null;
100
106
  hibernatedAt: Date | null;
101
107
  })[];
102
108
  } & {
@@ -1 +1 @@
1
- {"version":3,"file":"task.service.d.ts","sourceRoot":"","sources":["../../src/services/task.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAkD,MAAM,mBAAmB,CAAC;AAM/F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAI3D,UAAU,eAAe;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,eAAe;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,eAAe;IACvB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAcD,qBAAa,WAAW;IAEpB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,cAAc;gBADd,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,cAAc;IAGjD;;OAEG;IACG,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,GAAE,eAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAuDrE;;OAEG;IACG,QAAQ,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAazB;;;;OAIG;IACG,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe;;;;;;;;;;;IA2BtD;;OAEG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe;;;;;;;;;;;IAgB/C;;;OAGG;IACG,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU;;;;;;;;;;;IA2CjD;;;OAGG;IACG,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU;;;;;;;;;;;IAgCtE;;;;;;;OAOG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM;IAsDvB;;OAEG;IACG,mBAAmB,CAAC,SAAS,EAAE,MAAM;;;;;;;;IAgD3C;;;;;;;OAOG;IACG,KAAK,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;IA+CtB;;OAEG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;CAGzE"}
1
+ {"version":3,"file":"task.service.d.ts","sourceRoot":"","sources":["../../src/services/task.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAkD,MAAM,mBAAmB,CAAC;AAM/F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAI3D,UAAU,eAAe;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,eAAe;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,eAAe;IACvB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAsBD,qBAAa,WAAW;IAEpB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,cAAc;gBADd,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,cAAc;IAGjD;;OAEG;IACG,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,GAAE,eAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAuDrE;;OAEG;IACG,QAAQ,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAazB;;;;OAIG;IACG,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe;;;;;;;;;;;IA6BtD;;OAEG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe;;;;;;;;;;;IAoB/C;;;OAGG;IACG,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU;;;;;;;;;;;IA2CjD;;;OAGG;IACG,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU;;;;;;;;;;;IAgCtE;;;;;;;OAOG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM;IAsDvB;;OAEG;IACG,mBAAmB,CAAC,SAAS,EAAE,MAAM;;;;;;;;IAgD3C;;;;;;;OAOG;IACG,KAAK,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;IA+CtB;;OAEG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;CAGzE"}