@cerbur/clutch-dsh-worktree 0.1.16 → 0.1.17

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 (358) hide show
  1. package/README.md +214 -15
  2. package/README.zh.md +175 -12
  3. package/assets/screenshots/screenshots-dashboard.png +0 -0
  4. package/assets/screenshots/screenshots-en.png +0 -0
  5. package/assets/screenshots/screenshots-git-reviewer.png +0 -0
  6. package/assets/screenshots/screenshots-import.png +0 -0
  7. package/assets/screenshots/screenshots-worktree-tool.png +0 -0
  8. package/assets/screenshots/screenshots-zh.png +0 -0
  9. package/cordis.patch.yml +6 -19
  10. package/lib/client/WorktreeSurface.d.ts.map +1 -1
  11. package/lib/client/WorktreeSurface.js +5 -4
  12. package/lib/client/WorktreeSurface.js.map +1 -1
  13. package/lib/client/command-activity.d.ts +11 -0
  14. package/lib/client/command-activity.d.ts.map +1 -0
  15. package/lib/client/command-activity.js +71 -0
  16. package/lib/client/command-activity.js.map +1 -0
  17. package/lib/client/dashboard/DashboardRequest.d.ts +2 -1
  18. package/lib/client/dashboard/DashboardRequest.d.ts.map +1 -1
  19. package/lib/client/dashboard/DashboardRequest.js +3 -3
  20. package/lib/client/dashboard/DashboardRequest.js.map +1 -1
  21. package/lib/client/dashboard/WorktreeDashboard.d.ts +2 -1
  22. package/lib/client/dashboard/WorktreeDashboard.d.ts.map +1 -1
  23. package/lib/client/dashboard/WorktreeDashboard.js +48 -24
  24. package/lib/client/dashboard/WorktreeDashboard.js.map +1 -1
  25. package/lib/client/dashboard/WorktreeInstructions.d.ts +2 -1
  26. package/lib/client/dashboard/WorktreeInstructions.d.ts.map +1 -1
  27. package/lib/client/dashboard/WorktreeInstructions.js +27 -8
  28. package/lib/client/dashboard/WorktreeInstructions.js.map +1 -1
  29. package/lib/client/dashboard/dashboard-overlay.d.ts.map +1 -1
  30. package/lib/client/dashboard/dashboard-overlay.js +38 -52
  31. package/lib/client/dashboard/dashboard-overlay.js.map +1 -1
  32. package/lib/client/dashboard/dashboard-selection.d.ts +1 -0
  33. package/lib/client/dashboard/dashboard-selection.d.ts.map +1 -1
  34. package/lib/client/dashboard/dashboard-selection.js.map +1 -1
  35. package/lib/client/dashboard/git/WorktreeGitPanel.d.ts +2 -1
  36. package/lib/client/dashboard/git/WorktreeGitPanel.d.ts.map +1 -1
  37. package/lib/client/dashboard/git/WorktreeGitPanel.js +54 -8
  38. package/lib/client/dashboard/git/WorktreeGitPanel.js.map +1 -1
  39. package/lib/client/dashboard/git/file-address.d.ts +2 -1
  40. package/lib/client/dashboard/git/file-address.d.ts.map +1 -1
  41. package/lib/client/dashboard/git/file-address.js +8 -13
  42. package/lib/client/dashboard/git/file-address.js.map +1 -1
  43. package/lib/client/dashboard/git/useWorktreeGitState.d.ts.map +1 -1
  44. package/lib/client/dashboard/git/useWorktreeGitState.js +4 -1
  45. package/lib/client/dashboard/git/useWorktreeGitState.js.map +1 -1
  46. package/lib/client/dsh-icons.d.ts +2 -0
  47. package/lib/client/dsh-icons.d.ts.map +1 -1
  48. package/lib/client/dsh-icons.js +3 -1
  49. package/lib/client/dsh-icons.js.map +1 -1
  50. package/lib/client/dsh-slot-contract.d.ts +9 -1
  51. package/lib/client/dsh-slot-contract.d.ts.map +1 -1
  52. package/lib/client/entry.d.ts.map +1 -1
  53. package/lib/client/entry.js +39 -2
  54. package/lib/client/entry.js.map +1 -1
  55. package/lib/client/layout/app-frame.d.ts +12 -0
  56. package/lib/client/layout/app-frame.d.ts.map +1 -0
  57. package/lib/client/layout/app-frame.js +82 -0
  58. package/lib/client/layout/app-frame.js.map +1 -0
  59. package/lib/client/locales.d.ts +144 -0
  60. package/lib/client/locales.d.ts.map +1 -1
  61. package/lib/client/locales.js +204 -60
  62. package/lib/client/locales.js.map +1 -1
  63. package/lib/client/overlay/overlay-bounds.d.ts.map +1 -1
  64. package/lib/client/overlay/overlay-bounds.js +8 -3
  65. package/lib/client/overlay/overlay-bounds.js.map +1 -1
  66. package/lib/client/overlay/sidebar-overlay-geometry.d.ts +3 -1
  67. package/lib/client/overlay/sidebar-overlay-geometry.d.ts.map +1 -1
  68. package/lib/client/overlay/sidebar-overlay-geometry.js +94 -34
  69. package/lib/client/overlay/sidebar-overlay-geometry.js.map +1 -1
  70. package/lib/client/restart-notice.d.ts +10 -3
  71. package/lib/client/restart-notice.d.ts.map +1 -1
  72. package/lib/client/restart-notice.js +44 -11
  73. package/lib/client/restart-notice.js.map +1 -1
  74. package/lib/client/session/session-view.d.ts +16 -2
  75. package/lib/client/session/session-view.d.ts.map +1 -1
  76. package/lib/client/session/session-view.js +24 -10
  77. package/lib/client/session/session-view.js.map +1 -1
  78. package/lib/client/session/worktree-session.d.ts +1 -0
  79. package/lib/client/session/worktree-session.d.ts.map +1 -1
  80. package/lib/client/session/worktree-session.js +3 -1
  81. package/lib/client/session/worktree-session.js.map +1 -1
  82. package/lib/client/settings/ToolSettings.d.ts +9 -0
  83. package/lib/client/settings/ToolSettings.d.ts.map +1 -0
  84. package/lib/client/settings/ToolSettings.js +77 -0
  85. package/lib/client/settings/ToolSettings.js.map +1 -0
  86. package/lib/client/settings/WorktreeSettings.d.ts +8 -0
  87. package/lib/client/settings/WorktreeSettings.d.ts.map +1 -0
  88. package/lib/client/settings/WorktreeSettings.js +46 -0
  89. package/lib/client/settings/WorktreeSettings.js.map +1 -0
  90. package/lib/client/settings/WorktreeSettingsNavIcon.d.ts +6 -0
  91. package/lib/client/settings/WorktreeSettingsNavIcon.d.ts.map +1 -0
  92. package/lib/client/settings/WorktreeSettingsNavIcon.js +51 -0
  93. package/lib/client/settings/WorktreeSettingsNavIcon.js.map +1 -0
  94. package/lib/client/settings/diagnostics.d.ts +24 -0
  95. package/lib/client/settings/diagnostics.d.ts.map +1 -0
  96. package/lib/client/settings/diagnostics.js +63 -0
  97. package/lib/client/settings/diagnostics.js.map +1 -0
  98. package/lib/client/settings/settings-navigation.d.ts +7 -0
  99. package/lib/client/settings/settings-navigation.d.ts.map +1 -0
  100. package/lib/client/settings/settings-navigation.js +12 -0
  101. package/lib/client/settings/settings-navigation.js.map +1 -0
  102. package/lib/client/surface/actions/useLifecycleActions.d.ts +2 -1
  103. package/lib/client/surface/actions/useLifecycleActions.d.ts.map +1 -1
  104. package/lib/client/surface/actions/useLifecycleActions.js +14 -5
  105. package/lib/client/surface/actions/useLifecycleActions.js.map +1 -1
  106. package/lib/client/surface/actions/useSessionActions.d.ts.map +1 -1
  107. package/lib/client/surface/actions/useSessionActions.js +6 -6
  108. package/lib/client/surface/actions/useSessionActions.js.map +1 -1
  109. package/lib/client/surface/actions/useWorktreeRegistration.d.ts.map +1 -1
  110. package/lib/client/surface/actions/useWorktreeRegistration.js +4 -2
  111. package/lib/client/surface/actions/useWorktreeRegistration.js.map +1 -1
  112. package/lib/client/surface/components/NotificationToasts.d.ts +19 -3
  113. package/lib/client/surface/components/NotificationToasts.d.ts.map +1 -1
  114. package/lib/client/surface/components/NotificationToasts.js +73 -7
  115. package/lib/client/surface/components/NotificationToasts.js.map +1 -1
  116. package/lib/client/surface/components/OverlayScrollbar.d.ts +6 -0
  117. package/lib/client/surface/components/OverlayScrollbar.d.ts.map +1 -0
  118. package/lib/client/surface/components/OverlayScrollbar.js +84 -0
  119. package/lib/client/surface/components/OverlayScrollbar.js.map +1 -0
  120. package/lib/client/surface/components/RestartToast.d.ts.map +1 -1
  121. package/lib/client/surface/components/RestartToast.js +4 -3
  122. package/lib/client/surface/components/RestartToast.js.map +1 -1
  123. package/lib/client/surface/components/SurfaceContent.d.ts.map +1 -1
  124. package/lib/client/surface/components/SurfaceContent.js +110 -39
  125. package/lib/client/surface/components/SurfaceContent.js.map +1 -1
  126. package/lib/client/surface/components/WorkspaceTree.d.ts.map +1 -1
  127. package/lib/client/surface/components/WorkspaceTree.js +2 -1
  128. package/lib/client/surface/components/WorkspaceTree.js.map +1 -1
  129. package/lib/client/surface/components/dialogs.d.ts.map +1 -1
  130. package/lib/client/surface/components/dialogs.js +14 -10
  131. package/lib/client/surface/components/dialogs.js.map +1 -1
  132. package/lib/client/surface/components/rows.d.ts +1 -1
  133. package/lib/client/surface/components/rows.d.ts.map +1 -1
  134. package/lib/client/surface/components/rows.js +15 -97
  135. package/lib/client/surface/components/rows.js.map +1 -1
  136. package/lib/client/surface/notification-queue.d.ts +15 -0
  137. package/lib/client/surface/notification-queue.d.ts.map +1 -1
  138. package/lib/client/surface/notification-queue.js +13 -2
  139. package/lib/client/surface/notification-queue.js.map +1 -1
  140. package/lib/client/surface/state/useSurfaceRefresh.d.ts +1 -1
  141. package/lib/client/surface/state/useSurfaceRefresh.d.ts.map +1 -1
  142. package/lib/client/surface/state/useSurfaceRefresh.js +13 -1
  143. package/lib/client/surface/state/useSurfaceRefresh.js.map +1 -1
  144. package/lib/client/surface/state/useSurfaceSources.d.ts +1 -1
  145. package/lib/client/surface/state/useSurfaceSources.d.ts.map +1 -1
  146. package/lib/client/surface/state/useSurfaceSources.js +4 -2
  147. package/lib/client/surface/state/useSurfaceSources.js.map +1 -1
  148. package/lib/client/surface/state/useTitleMarquee.d.ts +7 -0
  149. package/lib/client/surface/state/useTitleMarquee.d.ts.map +1 -0
  150. package/lib/client/surface/state/useTitleMarquee.js +60 -0
  151. package/lib/client/surface/state/useTitleMarquee.js.map +1 -0
  152. package/lib/client/surface/types.d.ts +8 -1
  153. package/lib/client/surface/types.d.ts.map +1 -1
  154. package/lib/client/view/worktree-error-copy.d.ts.map +1 -1
  155. package/lib/client/view/worktree-error-copy.js +69 -14
  156. package/lib/client/view/worktree-error-copy.js.map +1 -1
  157. package/lib/client/view/worktree-view-errors.d.ts.map +1 -1
  158. package/lib/client/view/worktree-view-errors.js +13 -5
  159. package/lib/client/view/worktree-view-errors.js.map +1 -1
  160. package/lib/client/worktree-connection.d.ts +6 -2
  161. package/lib/client/worktree-connection.d.ts.map +1 -1
  162. package/lib/client/worktree-connection.js +6 -0
  163. package/lib/client/worktree-connection.js.map +1 -1
  164. package/lib/client/worktree-tool-changes.d.ts +13 -0
  165. package/lib/client/worktree-tool-changes.d.ts.map +1 -0
  166. package/lib/client/worktree-tool-changes.js +64 -0
  167. package/lib/client/worktree-tool-changes.js.map +1 -0
  168. package/lib/client.js +2188 -947
  169. package/lib/client.js.map +1 -1
  170. package/lib/contract/index.d.ts +11 -1
  171. package/lib/contract/index.d.ts.map +1 -1
  172. package/lib/contract/index.js +9 -0
  173. package/lib/contract/index.js.map +1 -1
  174. package/lib/contract/tool-settings.d.ts +28 -0
  175. package/lib/contract/tool-settings.d.ts.map +1 -0
  176. package/lib/contract/tool-settings.js +10 -0
  177. package/lib/contract/tool-settings.js.map +1 -0
  178. package/lib/contract/worktree-tool-changes.d.ts +10 -0
  179. package/lib/contract/worktree-tool-changes.d.ts.map +1 -0
  180. package/lib/contract/worktree-tool-changes.js +2 -0
  181. package/lib/contract/worktree-tool-changes.js.map +1 -0
  182. package/lib/host/permission-preset-append.d.ts +15 -0
  183. package/lib/host/permission-preset-append.d.ts.map +1 -0
  184. package/lib/host/permission-preset-append.js +63 -0
  185. package/lib/host/permission-preset-append.js.map +1 -0
  186. package/lib/host/service.d.ts +17 -0
  187. package/lib/host/service.d.ts.map +1 -1
  188. package/lib/host/service.js +67 -11
  189. package/lib/host/service.js.map +1 -1
  190. package/lib/host/tool-settings.d.ts +14 -0
  191. package/lib/host/tool-settings.d.ts.map +1 -0
  192. package/lib/host/tool-settings.js +98 -0
  193. package/lib/host/tool-settings.js.map +1 -0
  194. package/lib/host/worktree-permission-manager.d.ts.map +1 -1
  195. package/lib/host/worktree-permission-manager.js +2 -4
  196. package/lib/host/worktree-permission-manager.js.map +1 -1
  197. package/lib/host/worktree-tool-changes.d.ts +12 -0
  198. package/lib/host/worktree-tool-changes.d.ts.map +1 -0
  199. package/lib/host/worktree-tool-changes.js +60 -0
  200. package/lib/host/worktree-tool-changes.js.map +1 -0
  201. package/lib/manage/manager-git-history.d.ts.map +1 -1
  202. package/lib/manage/manager-git-history.js +29 -28
  203. package/lib/manage/manager-git-history.js.map +1 -1
  204. package/lib/manage/manager-sessions.d.ts +5 -0
  205. package/lib/manage/manager-sessions.d.ts.map +1 -1
  206. package/lib/manage/manager-sessions.js +34 -11
  207. package/lib/manage/manager-sessions.js.map +1 -1
  208. package/lib/manage/manager-support.d.ts +3 -1
  209. package/lib/manage/manager-support.d.ts.map +1 -1
  210. package/lib/manage/manager-support.js +17 -0
  211. package/lib/manage/manager-support.js.map +1 -1
  212. package/lib/manage/manager-worktree-lifecycle.d.ts.map +1 -1
  213. package/lib/manage/manager-worktree-lifecycle.js +5 -4
  214. package/lib/manage/manager-worktree-lifecycle.js.map +1 -1
  215. package/lib/manage/manager-worktrees.d.ts +1 -0
  216. package/lib/manage/manager-worktrees.d.ts.map +1 -1
  217. package/lib/manage/manager-worktrees.js +74 -22
  218. package/lib/manage/manager-worktrees.js.map +1 -1
  219. package/lib/manage/manager.d.ts +10 -0
  220. package/lib/manage/manager.d.ts.map +1 -1
  221. package/lib/manage/manager.js +12 -1
  222. package/lib/manage/manager.js.map +1 -1
  223. package/lib/manage/types.d.ts +10 -1
  224. package/lib/manage/types.d.ts.map +1 -1
  225. package/lib/provider/generated-name.d.ts.map +1 -1
  226. package/lib/provider/generated-name.js +5 -4
  227. package/lib/provider/generated-name.js.map +1 -1
  228. package/lib/provider/git/adapter.d.ts.map +1 -1
  229. package/lib/provider/git/adapter.js +5 -2
  230. package/lib/provider/git/adapter.js.map +1 -1
  231. package/lib/provider/mutation-token.d.ts +1 -1
  232. package/lib/provider/mutation-token.d.ts.map +1 -1
  233. package/lib/provider/mutation-token.js +1 -0
  234. package/lib/provider/mutation-token.js.map +1 -1
  235. package/lib/provider/sidecar/repository.d.ts.map +1 -1
  236. package/lib/provider/sidecar/repository.js +1 -0
  237. package/lib/provider/sidecar/repository.js.map +1 -1
  238. package/lib/provider/sidecar/sidecar-schema.d.ts.map +1 -1
  239. package/lib/provider/sidecar/sidecar-schema.js +24 -4
  240. package/lib/provider/sidecar/sidecar-schema.js.map +1 -1
  241. package/lib/provider/transaction/operations/adopt-branch.d.ts.map +1 -1
  242. package/lib/provider/transaction/operations/adopt-branch.js +6 -5
  243. package/lib/provider/transaction/operations/adopt-branch.js.map +1 -1
  244. package/lib/provider/transaction/operations/clean.d.ts.map +1 -1
  245. package/lib/provider/transaction/operations/clean.js +20 -19
  246. package/lib/provider/transaction/operations/clean.js.map +1 -1
  247. package/lib/provider/transaction/operations/create.d.ts +1 -1
  248. package/lib/provider/transaction/operations/create.d.ts.map +1 -1
  249. package/lib/provider/transaction/operations/create.js +23 -13
  250. package/lib/provider/transaction/operations/create.js.map +1 -1
  251. package/lib/provider/transaction/operations/import.d.ts.map +1 -1
  252. package/lib/provider/transaction/operations/import.js +7 -1
  253. package/lib/provider/transaction/operations/import.js.map +1 -1
  254. package/lib/provider/transaction/operations/remove.d.ts.map +1 -1
  255. package/lib/provider/transaction/operations/remove.js +20 -19
  256. package/lib/provider/transaction/operations/remove.js.map +1 -1
  257. package/lib/provider/transaction/recovery/failure-recovery.d.ts.map +1 -1
  258. package/lib/provider/transaction/recovery/failure-recovery.js +19 -18
  259. package/lib/provider/transaction/recovery/failure-recovery.js.map +1 -1
  260. package/lib/provider/transaction/recovery/recover.d.ts.map +1 -1
  261. package/lib/provider/transaction/recovery/recover.js +6 -2
  262. package/lib/provider/transaction/recovery/recover.js.map +1 -1
  263. package/lib/provider/transaction/support/inspection.d.ts.map +1 -1
  264. package/lib/provider/transaction/support/inspection.js +3 -2
  265. package/lib/provider/transaction/support/inspection.js.map +1 -1
  266. package/lib/provider/transaction/support/journal.d.ts.map +1 -1
  267. package/lib/provider/transaction/support/journal.js +8 -5
  268. package/lib/provider/transaction/support/journal.js.map +1 -1
  269. package/lib/provider/transaction/support/path-safety.d.ts.map +1 -1
  270. package/lib/provider/transaction/support/path-safety.js +4 -3
  271. package/lib/provider/transaction/support/path-safety.js.map +1 -1
  272. package/lib/provider/transaction/types.d.ts +2 -1
  273. package/lib/provider/transaction/types.d.ts.map +1 -1
  274. package/lib/provider/types.d.ts +3 -1
  275. package/lib/provider/types.d.ts.map +1 -1
  276. package/lib/provider/types.js +1 -1
  277. package/lib/provider/types.js.map +1 -1
  278. package/lib/provider/worktree-path.d.ts +10 -0
  279. package/lib/provider/worktree-path.d.ts.map +1 -0
  280. package/lib/provider/worktree-path.js +47 -0
  281. package/lib/provider/worktree-path.js.map +1 -0
  282. package/lib/tool/context.d.ts +14 -0
  283. package/lib/tool/context.d.ts.map +1 -0
  284. package/lib/tool/context.js +95 -0
  285. package/lib/tool/context.js.map +1 -0
  286. package/lib/tool/delegation.d.ts +41 -0
  287. package/lib/tool/delegation.d.ts.map +1 -0
  288. package/lib/tool/delegation.js +196 -0
  289. package/lib/tool/delegation.js.map +1 -0
  290. package/lib/tool/errors.d.ts +3 -0
  291. package/lib/tool/errors.d.ts.map +1 -0
  292. package/lib/tool/errors.js +63 -0
  293. package/lib/tool/errors.js.map +1 -0
  294. package/lib/tool/guidance.d.ts +5 -0
  295. package/lib/tool/guidance.d.ts.map +1 -0
  296. package/lib/tool/guidance.js +48 -0
  297. package/lib/tool/guidance.js.map +1 -0
  298. package/lib/tool/history.d.ts +27 -0
  299. package/lib/tool/history.d.ts.map +1 -0
  300. package/lib/tool/history.js +157 -0
  301. package/lib/tool/history.js.map +1 -0
  302. package/lib/tool/index.d.ts +8 -0
  303. package/lib/tool/index.d.ts.map +1 -0
  304. package/lib/tool/index.js +296 -0
  305. package/lib/tool/index.js.map +1 -0
  306. package/lib/tool/inputs.d.ts +12 -0
  307. package/lib/tool/inputs.d.ts.map +1 -0
  308. package/lib/tool/inputs.js +24 -0
  309. package/lib/tool/inputs.js.map +1 -0
  310. package/lib/tool/list-models.d.ts +3 -0
  311. package/lib/tool/list-models.d.ts.map +1 -0
  312. package/lib/tool/list-models.js +38 -0
  313. package/lib/tool/list-models.js.map +1 -0
  314. package/lib/tool/list-sessions.d.ts +3 -0
  315. package/lib/tool/list-sessions.d.ts.map +1 -0
  316. package/lib/tool/list-sessions.js +70 -0
  317. package/lib/tool/list-sessions.js.map +1 -0
  318. package/lib/tool/list-worktrees.d.ts +3 -0
  319. package/lib/tool/list-worktrees.d.ts.map +1 -0
  320. package/lib/tool/list-worktrees.js +39 -0
  321. package/lib/tool/list-worktrees.js.map +1 -0
  322. package/lib/tool/native-session.d.ts +74 -0
  323. package/lib/tool/native-session.d.ts.map +1 -0
  324. package/lib/tool/native-session.js +248 -0
  325. package/lib/tool/native-session.js.map +1 -0
  326. package/lib/tool/new-worktree.d.ts +3 -0
  327. package/lib/tool/new-worktree.d.ts.map +1 -0
  328. package/lib/tool/new-worktree.js +81 -0
  329. package/lib/tool/new-worktree.js.map +1 -0
  330. package/lib/tool/outputs.d.ts +50 -0
  331. package/lib/tool/outputs.d.ts.map +1 -0
  332. package/lib/tool/outputs.js +65 -0
  333. package/lib/tool/outputs.js.map +1 -0
  334. package/lib/tool/report-result.d.ts +3 -0
  335. package/lib/tool/report-result.d.ts.map +1 -0
  336. package/lib/tool/report-result.js +83 -0
  337. package/lib/tool/report-result.js.map +1 -0
  338. package/lib/tool/schema.d.ts +7 -0
  339. package/lib/tool/schema.d.ts.map +1 -0
  340. package/lib/tool/schema.js +92 -0
  341. package/lib/tool/schema.js.map +1 -0
  342. package/lib/tool/send-message.d.ts +3 -0
  343. package/lib/tool/send-message.d.ts.map +1 -0
  344. package/lib/tool/send-message.js +64 -0
  345. package/lib/tool/send-message.js.map +1 -0
  346. package/lib/tool/span-worktree.d.ts +3 -0
  347. package/lib/tool/span-worktree.d.ts.map +1 -0
  348. package/lib/tool/span-worktree.js +114 -0
  349. package/lib/tool/span-worktree.js.map +1 -0
  350. package/lib/tool/types.d.ts +54 -0
  351. package/lib/tool/types.d.ts.map +1 -0
  352. package/lib/tool/types.js +2 -0
  353. package/lib/tool/types.js.map +1 -0
  354. package/lib/typert.host.js +215 -44
  355. package/lib/typert.remote-client.d.ts +7 -1
  356. package/lib/typert.remote-client.d.ts.map +1 -1
  357. package/lib/typert.remote-client.js +215 -44
  358. package/package.json +14 -2
@@ -1,3 +1,4 @@
1
+ import { resolveAppFrame, resolveFrameContent } from '../layout/app-frame.js';
1
2
  // Upstream AppFrame's 8px Sidebar handle is centered on the track boundary.
2
3
  // Keep its 4px right half outside this higher stacking-context overlay.
3
4
  const SIDEBAR_RESIZE_HANDLE_HALF_WIDTH = 4;
@@ -29,23 +30,11 @@ export function concealDashboardBackground(element) {
29
30
  };
30
31
  }
31
32
  export function isRightSidebarOpenFromDom(frame, rightbar) {
32
- if (typeof frame.querySelector === 'function') {
33
- if (frame.querySelector('[data-sidebar-right-open]') !== null) {
34
- return true;
35
- }
36
- if (frame.hasAttribute('data-rightbar-collapsed')) {
37
- return false;
38
- }
39
- }
40
- if (frame.getAttribute?.('data-rightbar-collapsed') !== null) {
41
- return false;
42
- }
43
- if (rightbar instanceof HTMLElement) {
44
- if (rightbar.getAttribute?.('data-sidebar-right-open') !== null) {
45
- return true;
46
- }
47
- }
48
- return false;
33
+ return (!frame.hasAttribute('data-rightbar-collapsed') &&
34
+ rightbar instanceof HTMLElement &&
35
+ frame.contains(rightbar) &&
36
+ (rightbar.hasAttribute('data-sidebar-right-open') ||
37
+ rightbar.querySelector('[data-sidebar-right-open]') !== null));
49
38
  }
50
39
  /** Layout seam shared with the existing Sidebar overlay; fail closed on frame/center loss. */
51
40
  export function mountDashboardOverlay(surface, onPlacement, options) {
@@ -78,27 +67,18 @@ export function mountDashboardOverlay(surface, onPlacement, options) {
78
67
  const update = () => {
79
68
  if (disposed)
80
69
  return;
81
- // AppFrame owns Sidebar | CenterColumn | [RightbarColumn] | shell.overlay.
82
- // The native rightbar is absent on a page with no current Session, but the
83
- // Dashboard still needs the same center-to-frame placement in that layout.
84
- // Do not depend on generated CSS class names or mutate slot registrations.
85
- const sidebar = frame.firstElementChild;
86
- const center = sidebar?.nextElementSibling;
87
- const rightbar = center?.nextElementSibling;
88
- const hasRightbar = rightbar instanceof HTMLElement &&
89
- rightbar !== overlay &&
90
- rightbar.nextElementSibling === overlay;
91
- const hasNoRightbar = rightbar === overlay;
92
- const valid = overlay.isConnected &&
93
- overlay.parentElement === frame &&
94
- sidebar instanceof HTMLElement &&
95
- center instanceof HTMLElement &&
96
- (hasRightbar || hasNoRightbar);
97
- const nextObserved = valid
98
- ? hasRightbar
99
- ? [overlay, sidebar, center, rightbar]
100
- : [overlay, sidebar, center]
101
- : [frame];
70
+ const anchors = resolveAppFrame(surface);
71
+ const content = anchors?.frame === frame && anchors.overlay === overlay
72
+ ? resolveFrameContent(frame, overlay, anchors.sidebar)
73
+ : undefined;
74
+ // Watch candidates even while geometry is invalid or a column is collapsed.
75
+ // A resize alone must be sufficient to recover after a zero-size transition.
76
+ const nextObserved = [
77
+ frame,
78
+ overlay,
79
+ ...Array.from(frame.children),
80
+ ...Array.from(frame.querySelectorAll('[data-rightbar-col]')),
81
+ ];
102
82
  for (const old of observed)
103
83
  if (!nextObserved.includes(old))
104
84
  resize?.unobserve(old);
@@ -106,7 +86,7 @@ export function mountDashboardOverlay(surface, onPlacement, options) {
106
86
  if (!observed.includes(next))
107
87
  resize?.observe(next);
108
88
  observed = nextObserved;
109
- if (!valid) {
89
+ if (!anchors || !content) {
110
90
  restore();
111
91
  onPlacement(undefined);
112
92
  if (lastRightSidebarOpen) {
@@ -115,11 +95,11 @@ export function mountDashboardOverlay(surface, onPlacement, options) {
115
95
  }
116
96
  return;
117
97
  }
98
+ const { sidebar } = anchors;
99
+ const { center, rightbar } = content;
118
100
  const box = overlay.getBoundingClientRect();
119
101
  const boundary = sidebar.getBoundingClientRect();
120
- const rightBoundary = hasRightbar && rightbar instanceof HTMLElement
121
- ? rightbar.getBoundingClientRect().left
122
- : box.right;
102
+ const rightBoundary = rightbar instanceof HTMLElement ? rightbar.getBoundingClientRect().left : box.right;
123
103
  const left = Math.max(0, boundary.right - box.left + SIDEBAR_RESIZE_HANDLE_HALF_WIDTH);
124
104
  const rightEdge = Math.min(box.right, rightBoundary);
125
105
  const width = rightEdge - box.left - left;
@@ -128,6 +108,14 @@ export function mountDashboardOverlay(surface, onPlacement, options) {
128
108
  onPlacement(undefined);
129
109
  return;
130
110
  }
111
+ const centerBox = center.getBoundingClientRect();
112
+ const top = Math.max(0, centerBox.top - box.top);
113
+ const height = Math.min(box.bottom, centerBox.bottom) - box.top - top;
114
+ if (height <= 0) {
115
+ restore();
116
+ onPlacement(undefined);
117
+ return;
118
+ }
131
119
  for (const [element, cleanup] of hidden) {
132
120
  if (element !== center) {
133
121
  cleanup();
@@ -136,18 +124,10 @@ export function mountDashboardOverlay(surface, onPlacement, options) {
136
124
  }
137
125
  if (!hidden.has(center))
138
126
  hidden.set(center, concealDashboardBackground(center));
139
- // The Windows caption strip is outside the native center. Never cover it;
140
- // macOS's hidden titlebar belongs to our own marked top bar instead.
141
- const top = Math.max(0, (center.getBoundingClientRect().top ?? 0) - (box.top ?? 0));
142
- if (top >= box.height) {
143
- restore();
144
- onPlacement(undefined);
145
- return;
146
- }
147
- onPlacement({ left, top, width, height: box.height - top });
127
+ onPlacement({ left, top, width, height });
148
128
  const isRightSidebarOpen = options?.isRightSidebarExpanded !== undefined
149
129
  ? options.isRightSidebarExpanded()
150
- : isRightSidebarOpenFromDom(frame, hasRightbar ? rightbar : undefined);
130
+ : isRightSidebarOpenFromDom(frame, rightbar);
151
131
  if (lastRightSidebarOpen !== isRightSidebarOpen) {
152
132
  lastRightSidebarOpen = isRightSidebarOpen;
153
133
  options?.onRightSidebarChange?.(isRightSidebarOpen);
@@ -163,6 +143,12 @@ export function mountDashboardOverlay(surface, onPlacement, options) {
163
143
  'data-rightbar-collapsed',
164
144
  'data-sidebar-right-open',
165
145
  'data-sidebar-right-panel',
146
+ 'data-rightbar-col',
147
+ 'data-worktree-mode-action',
148
+ 'data-pane',
149
+ 'data-window-drag',
150
+ 'data-shell-leading',
151
+ 'data-shell-overlay',
166
152
  ],
167
153
  });
168
154
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard-overlay.js","sourceRoot":"","sources":["../../../src/client/dashboard/dashboard-overlay.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dashboard-overlay.js","sourceRoot":"","sources":["../../../src/client/dashboard/dashboard-overlay.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ export interface DashboardSelection {
7
7
  }
8
8
  /** Browser-only Main projection; it is not a persisted WorktreeRecord. */
9
9
  export interface MainDashboardRecord {
10
+ readonly gitRootPath?: undefined;
10
11
  readonly worktreeId: string;
11
12
  readonly workspaceId: string;
12
13
  readonly branch: string;
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard-selection.d.ts","sourceRoot":"","sources":["../../../src/client/dashboard/dashboard-selection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE9D,wFAAwF;AACxF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CACxC;AAED,0EAA0E;AAC1E,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC;IAC7B,qFAAqF;IACrF,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC;IAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC;CAC7B;AAED,MAAM,MAAM,eAAe,GAAG,cAAc,GAAG,mBAAmB,CAAC;AAEnE,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,IAAI,cAAc,CAE1F;AAED,wBAAgB,wBAAwB,CACtC,SAAS,EAAE;IAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAClE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,EAC7B,YAAY,SAAK,GAChB,mBAAmB,CAYrB;AAED,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,kBAAkB,GAAG,SAAS,EACzC,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,YAAY,EAAE,SAAS,MAAM,EAAE,EAC/B,OAAO,EAAE,SAAS,cAAc,EAAE,GAAG,SAAS,EAC9C,UAAU,CAAC,EAAE,mBAAmB,GAC/B,eAAe,GAAG,SAAS,CAkB7B"}
1
+ {"version":3,"file":"dashboard-selection.d.ts","sourceRoot":"","sources":["../../../src/client/dashboard/dashboard-selection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE9D,wFAAwF;AACxF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CACxC;AAED,0EAA0E;AAC1E,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC;IACjC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC;IAC7B,qFAAqF;IACrF,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC;IAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC;CAC7B;AAED,MAAM,MAAM,eAAe,GAAG,cAAc,GAAG,mBAAmB,CAAC;AAEnE,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,IAAI,cAAc,CAE1F;AAED,wBAAgB,wBAAwB,CACtC,SAAS,EAAE;IAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAClE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,EAC7B,YAAY,SAAK,GAChB,mBAAmB,CAYrB;AAED,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,kBAAkB,GAAG,SAAS,EACzC,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,YAAY,EAAE,SAAS,MAAM,EAAE,EAC/B,OAAO,EAAE,SAAS,cAAc,EAAE,GAAG,SAAS,EAC9C,UAAU,CAAC,EAAE,mBAAmB,GAC/B,eAAe,GAAG,SAAS,CAkB7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard-selection.js","sourceRoot":"","sources":["../../../src/client/dashboard/dashboard-selection.ts"],"names":[],"mappings":"AA8BA,MAAM,UAAU,gBAAgB,CAAC,UAAkB;IACjD,OAAO,UAAU,KAAK,MAAM,IAAI,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,MAAuB;IAC9D,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,SAAkE,EAClE,aAA6B,EAC7B,YAAY,GAAG,EAAE;IAEjB,OAAO;QACL,UAAU,EAAE,QAAQ,SAAS,CAAC,WAAW,EAAE;QAC3C,WAAW,EAAE,SAAS,CAAC,WAAW;QAClC,0EAA0E;QAC1E,yEAAyE;QACzE,MAAM,EAAE,aAAa,IAAI,EAAE;QAC3B,aAAa;QACb,YAAY,EAAE,SAAS,CAAC,IAAI;QAC5B,MAAM,EAAE,QAAQ;QAChB,YAAY;KACb,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,SAAyC,EACzC,IAAY,EACZ,gBAAoC,EACpC,YAA+B,EAC/B,OAA8C,EAC9C,UAAgC;IAEhC,IACE,SAAS,KAAK,SAAS;QACvB,IAAI,KAAK,UAAU;QACnB,CAAC,SAAS,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,SAAS,KAAK,gBAAgB,CAAC;QAC/E,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,CAAC;QAE7C,OAAO,SAAS,CAAC;IACnB,IACE,UAAU,KAAK,SAAS;QACxB,CAAC,gBAAgB,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,SAAS,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU,CAAC,EAC1F,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,OAAO,OAAO,EAAE,IAAI,CAClB,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,WAAW,KAAK,SAAS,CAAC,WAAW,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC,UAAU,CAC7F,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"dashboard-selection.js","sourceRoot":"","sources":["../../../src/client/dashboard/dashboard-selection.ts"],"names":[],"mappings":"AA+BA,MAAM,UAAU,gBAAgB,CAAC,UAAkB;IACjD,OAAO,UAAU,KAAK,MAAM,IAAI,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,MAAuB;IAC9D,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,SAAkE,EAClE,aAA6B,EAC7B,YAAY,GAAG,EAAE;IAEjB,OAAO;QACL,UAAU,EAAE,QAAQ,SAAS,CAAC,WAAW,EAAE;QAC3C,WAAW,EAAE,SAAS,CAAC,WAAW;QAClC,0EAA0E;QAC1E,yEAAyE;QACzE,MAAM,EAAE,aAAa,IAAI,EAAE;QAC3B,aAAa;QACb,YAAY,EAAE,SAAS,CAAC,IAAI;QAC5B,MAAM,EAAE,QAAQ;QAChB,YAAY;KACb,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,SAAyC,EACzC,IAAY,EACZ,gBAAoC,EACpC,YAA+B,EAC/B,OAA8C,EAC9C,UAAgC;IAEhC,IACE,SAAS,KAAK,SAAS;QACvB,IAAI,KAAK,UAAU;QACnB,CAAC,SAAS,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,SAAS,KAAK,gBAAgB,CAAC;QAC/E,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,CAAC;QAE7C,OAAO,SAAS,CAAC;IACnB,IACE,UAAU,KAAK,SAAS;QACxB,CAAC,gBAAgB,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,SAAS,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU,CAAC,EAC1F,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,OAAO,OAAO,EAAE,IAAI,CAClB,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,WAAW,KAAK,SAAS,CAAC,WAAW,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC,UAAU,CAC7F,CAAC;AACJ,CAAC"}
@@ -6,11 +6,12 @@ export interface WorktreeGitPanelProps {
6
6
  readonly worktreeId: string;
7
7
  readonly defaultBaselineBranch?: string;
8
8
  readonly currentBranch?: string;
9
+ readonly context?: string;
9
10
  /** The record captured an acquisition commit the Manager can use implicitly. */
10
11
  readonly capturedBaseline?: boolean;
11
12
  readonly onOpenFile?: (path: string) => void;
12
13
  readonly t: WorktreeTranslate;
13
14
  }
14
15
  /** Git & Changes tab: read-only, on-demand history -> target files -> one-file diff. */
15
- export declare function WorktreeGitPanel({ manager, workspaceId, worktreeId, defaultBaselineBranch, currentBranch, capturedBaseline, onOpenFile, t, }: WorktreeGitPanelProps): import("react").JSX.Element;
16
+ export declare function WorktreeGitPanel({ manager, workspaceId, worktreeId, defaultBaselineBranch, currentBranch, context, capturedBaseline, onOpenFile, t, }: WorktreeGitPanelProps): import("react").JSX.Element;
16
17
  //# sourceMappingURL=WorktreeGitPanel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WorktreeGitPanel.d.ts","sourceRoot":"","sources":["../../../../src/client/dashboard/git/WorktreeGitPanel.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAIV,eAAe,EAChB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAkBhE,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,CACrB,eAAe,EACf,cAAc,GAAG,qBAAqB,GAAG,yBAAyB,GAAG,2BAA2B,CACjG,CAAC;IACF,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,gFAAgF;IAChF,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,QAAQ,CAAC,CAAC,EAAE,iBAAiB,CAAC;CAC/B;AAgED,wFAAwF;AACxF,wBAAgB,gBAAgB,CAAC,EAC/B,OAAO,EACP,WAAW,EACX,UAAU,EACV,qBAAqB,EACrB,aAAa,EACb,gBAAgB,EAChB,UAAU,EACV,CAAC,GACF,EAAE,qBAAqB,+BA+VvB"}
1
+ {"version":3,"file":"WorktreeGitPanel.d.ts","sourceRoot":"","sources":["../../../../src/client/dashboard/git/WorktreeGitPanel.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAIV,eAAe,EAChB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAkBhE,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,CACrB,eAAe,EACf,cAAc,GAAG,qBAAqB,GAAG,yBAAyB,GAAG,2BAA2B,CACjG,CAAC;IACF,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,gFAAgF;IAChF,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,QAAQ,CAAC,CAAC,EAAE,iBAAiB,CAAC;CAC/B;AAgED,wFAAwF;AACxF,wBAAgB,gBAAgB,CAAC,EAC/B,OAAO,EACP,WAAW,EACX,UAAU,EACV,qBAAqB,EACrB,aAAa,EACb,OAAO,EACP,gBAAgB,EAChB,UAAU,EACV,CAAC,GACF,EAAE,qBAAqB,+BAuXvB"}
@@ -1,4 +1,8 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { NotificationToasts } from '../../surface/components/NotificationToasts.js';
3
+ import { toWorktreeViewError } from '../../view/worktree-view.js';
4
+ import { formatWorktreeViewError } from '../../view/worktree-error-copy.js';
5
+ import { failureToastKey } from '../../surface/notification-queue.js';
2
6
  import { useRef } from 'react';
3
7
  import { isMainWorktreeId, normalizeBaselineBranch, sumLineTotals } from './git-facts.js';
4
8
  import { GitChangedFiles } from './GitChangedFiles.js';
@@ -48,7 +52,7 @@ function UnavailableNotice({ reason, t, }) {
48
52
  return (_jsxs("div", { className: styles.gitUnavailable, "data-dashboard-git-unavailable": true, children: [_jsx("strong", { children: t(UNAVAILABLE_COPY[reason].title) }), _jsx("p", { children: t(UNAVAILABLE_COPY[reason].description) })] }));
49
53
  }
50
54
  /** Git & Changes tab: read-only, on-demand history -> target files -> one-file diff. */
51
- export function WorktreeGitPanel({ manager, workspaceId, worktreeId, defaultBaselineBranch, currentBranch, capturedBaseline, onOpenFile, t, }) {
55
+ export function WorktreeGitPanel({ manager, workspaceId, worktreeId, defaultBaselineBranch, currentBranch, context, capturedBaseline, onOpenFile, t, }) {
52
56
  const isMain = isMainWorktreeId(worktreeId);
53
57
  const selectedDefaultBaseline = normalizeBaselineBranch(defaultBaselineBranch, currentBranch);
54
58
  const state = useWorktreeGitState({
@@ -98,19 +102,64 @@ export function WorktreeGitPanel({ manager, workspaceId, worktreeId, defaultBase
98
102
  : commitLabel(commit, t);
99
103
  const hasTarget = state.view === 'summary' || commit !== undefined;
100
104
  const lineTotals = state.files.status === 'ready' && hasTarget ? sumLineTotals(files) : undefined;
101
- return (_jsxs("section", { className: styles.gitPanel, "data-dashboard-git-panel": true, children: [_jsxs("header", { className: styles.gitPanelHeader, children: [_jsxs("div", { className: styles.gitPanelHeading, children: [_jsx("h2", { children: t('dashboard.git.title') }), !isMain && (_jsxs("label", { className: styles.gitBaselineSelector, children: [_jsx("span", { children: t('dashboard.git.baselineSelector') }), _jsxs("select", { value: state.baselineBranch ?? '', "data-dashboard-git-baseline": true, disabled: state.branches.status === 'loading', onChange: (event) => state.selectBaselineBranch(event.currentTarget.value || undefined), children: [_jsx("option", { value: "", children: t('dashboard.git.selectBaseline') }), state.baselineBranch !== undefined && !branchOptions.some((branch) => branch.name === state.baselineBranch) && (_jsx("option", { value: state.baselineBranch, children: state.baselineBranch })), branchOptions.map((branch) => (_jsx("option", { value: branch.name, children: branch.name }, branch.name)))] })] })), baselineCommit !== undefined && (_jsxs("dl", { className: styles.gitBaselineFacts, children: [_jsxs("div", { children: [_jsx("dt", { children: t('dashboard.git.base') }), _jsxs("dd", { children: [baselineRef !== undefined ? (_jsxs(_Fragment, { children: [baselineRef, _jsxs("code", { children: ["@ ", shortCommit(baselineCommit)] })] })) : (_jsx("code", { children: shortCommit(baselineCommit) })), historyValue?.baseline?.source === 'derived' && (_jsx("span", { className: styles.gitDerived, children: t('dashboard.git.derived') }))] })] }), historyValue !== undefined && (_jsxs(_Fragment, { children: [_jsxs("div", { children: [_jsx("dt", { children: t('dashboard.git.head') }), _jsx("dd", { children: _jsx("code", { children: shortCommit(historyValue.headCommit) }) })] }), _jsxs("div", { children: [_jsx("dt", { children: t('dashboard.git.commits') }), _jsx("dd", { children: commitCountLabel(historyValue, t) })] }), historyValue.ahead !== undefined && historyValue.behind !== undefined && (_jsxs("div", { children: [_jsx("dt", { children: t('dashboard.aheadBehind') }), _jsx("dd", { children: _jsx(GitLineStats, { additions: historyValue.ahead, deletions: historyValue.behind, ariaLabel: t('dashboard.git.aheadBehindStats', {
105
+ return (_jsxs("section", { className: styles.gitPanel, "data-dashboard-git-panel": true, children: [_jsx(NotificationToasts, { notices: [
106
+ ['branches', branchError],
107
+ [
108
+ 'history',
109
+ state.history.status === 'error' || state.history.status === 'ready'
110
+ ? state.history.error
111
+ : undefined,
112
+ ],
113
+ [
114
+ 'files',
115
+ state.files.status === 'error' || state.files.status === 'ready'
116
+ ? state.files.error
117
+ : undefined,
118
+ ],
119
+ ['diff', state.diff.status === 'error' ? state.diff.error : undefined],
120
+ ].flatMap(([scope, error]) => {
121
+ if (!(error instanceof Error))
122
+ return [];
123
+ const diagnostic = toWorktreeViewError(error);
124
+ const text = formatWorktreeViewError(diagnostic, t);
125
+ return [
126
+ {
127
+ key: JSON.stringify([workspaceId, worktreeId, scope, diagnostic.code, diagnostic.details]),
128
+ toastKey: failureToastKey(diagnostic, [workspaceId, worktreeId]),
129
+ error: toWorktreeViewError(error),
130
+ context: context ?? [currentBranch, workspaceId, worktreeId].filter(Boolean).join(' · '),
131
+ describe: (translate) => translate('settings.git', {
132
+ operation: translate(scope === 'branches' ? 'dashboard.base'
133
+ : scope === 'history' ? 'dashboard.git.commits'
134
+ : scope === 'files' ? 'dashboard.git.changedFiles' : 'dashboard.git.diff'),
135
+ }) + ' · ' + (context ?? [currentBranch, workspaceId, worktreeId].filter(Boolean).join(' · ')),
136
+ text,
137
+ actions: [
138
+ {
139
+ label: t('dashboard.git.retry'),
140
+ onClick: () => {
141
+ if (scope === 'branches')
142
+ void state.loadBranches();
143
+ else
144
+ void state.refresh();
145
+ },
146
+ },
147
+ ],
148
+ },
149
+ ];
150
+ }) }), _jsxs("header", { className: styles.gitPanelHeader, children: [_jsxs("div", { className: styles.gitPanelHeading, children: [_jsx("h2", { children: t('dashboard.git.title') }), !isMain && (_jsxs("label", { className: styles.gitBaselineSelector, children: [_jsx("span", { children: t('dashboard.git.baselineSelector') }), _jsxs("select", { value: state.baselineBranch ?? '', "data-dashboard-git-baseline": true, disabled: state.branches.status === 'loading', onChange: (event) => state.selectBaselineBranch(event.currentTarget.value || undefined), children: [_jsx("option", { value: "", children: t('dashboard.git.selectBaseline') }), state.baselineBranch !== undefined && !branchOptions.some((branch) => branch.name === state.baselineBranch) && (_jsx("option", { value: state.baselineBranch, children: state.baselineBranch })), branchOptions.map((branch) => (_jsx("option", { value: branch.name, children: branch.name }, branch.name)))] })] })), baselineCommit !== undefined && (_jsxs("dl", { className: styles.gitBaselineFacts, children: [_jsxs("div", { children: [_jsx("dt", { children: t('dashboard.git.base') }), _jsxs("dd", { children: [baselineRef !== undefined ? (_jsxs(_Fragment, { children: [baselineRef, _jsxs("code", { children: ["@ ", shortCommit(baselineCommit)] })] })) : (_jsx("code", { children: shortCommit(baselineCommit) })), historyValue?.baseline?.source === 'derived' && (_jsx("span", { className: styles.gitDerived, children: t('dashboard.git.derived') }))] })] }), historyValue !== undefined && (_jsxs(_Fragment, { children: [_jsxs("div", { children: [_jsx("dt", { children: t('dashboard.git.head') }), _jsx("dd", { children: _jsx("code", { children: shortCommit(historyValue.headCommit) }) })] }), _jsxs("div", { children: [_jsx("dt", { children: t('dashboard.git.commits') }), _jsx("dd", { children: commitCountLabel(historyValue, t) })] }), historyValue.ahead !== undefined && historyValue.behind !== undefined && (_jsxs("div", { children: [_jsx("dt", { children: t('dashboard.aheadBehind') }), _jsx("dd", { children: _jsx(GitLineStats, { additions: historyValue.ahead, deletions: historyValue.behind, ariaLabel: t('dashboard.git.aheadBehindStats', {
102
151
  ahead: historyValue.ahead,
103
152
  behind: historyValue.behind,
104
- }) }) })] }))] }))] })), isMain && historyValue !== undefined && (_jsxs("dl", { className: styles.gitBaselineFacts, children: [_jsxs("div", { children: [_jsx("dt", { children: t('dashboard.git.head') }), _jsx("dd", { children: _jsx("code", { children: shortCommit(historyValue.headCommit) }) })] }), _jsxs("div", { children: [_jsx("dt", { children: t('dashboard.git.commits') }), _jsx("dd", { children: commitCountLabel(historyValue, t) })] })] }))] }), _jsx("button", { type: "button", className: styles.gitRefresh, "data-dashboard-git-refresh": true, disabled: refreshing || state.history.status === 'loading', "aria-busy": refreshing || state.history.status === 'loading', onClick: () => void state.refresh(), children: refreshing ? t('dashboard.git.refreshing') : t('dashboard.git.refresh') })] }), branchError !== undefined && (_jsxs("div", { className: styles.gitError, role: "alert", children: [_jsx("p", { children: t('dashboard.git.loadFailed', { reason: errorText(branchError, t) }) }), _jsx("button", { type: "button", onClick: () => void state.loadBranches(), children: t('dashboard.git.retry') })] })), !isMain && unavailable === 'baseline-unselected' && (_jsxs("div", { className: styles.gitBaselinePrompt, "data-dashboard-git-baseline-prompt": true, children: [_jsx("strong", { children: t('dashboard.git.selectBaselineTitle') }), _jsx("p", { children: t('dashboard.git.selectBaselineDescription') })] })), state.history.status === 'loading' && (_jsx("div", { className: styles.gitLoading, role: "status", children: t('dashboard.git.loading') })), state.history.status === 'error' && (_jsxs("div", { className: styles.gitError, role: "alert", children: [_jsx("p", { children: t('dashboard.git.loadFailed', { reason: errorText(state.history.error, t) }) }), _jsx("button", { type: "button", onClick: () => void state.refresh(), children: t('dashboard.git.retry') })] })), state.history.status === 'ready' && state.history.error !== undefined && (_jsxs("div", { className: styles.gitError, role: "alert", children: [_jsx("p", { children: t('dashboard.git.refreshFailed', { reason: errorText(state.history.error, t) }) }), _jsx("button", { type: "button", onClick: () => void state.refresh(), children: t('dashboard.git.retry') })] })), state.history.status === 'ready' && historyValue !== undefined && unavailable !== undefined && (_jsx(UnavailableNotice, { reason: unavailable, t: t })), state.history.status === 'ready' && historyValue !== undefined && unavailable === undefined && (_jsxs("div", { className: styles.gitColumns, ref: gridRef, children: [_jsxs("section", { className: styles.gitColumn, "data-dashboard-git-pane": "commits", "aria-label": t('dashboard.git.commits'), children: [_jsxs("div", { className: styles.gitColumnHeader, children: [_jsx("h3", { children: t('dashboard.git.commits') }), _jsxs("div", { className: styles.gitColumnHeaderControls, children: [historyValue.truncated && _jsx("span", { children: t('dashboard.git.truncatedHistory') }), _jsxs("label", { className: styles.gitCommitMultiSelect, title: t('dashboard.git.multiSelectCommitsDescription'), children: [_jsx("input", { type: "checkbox", role: "switch", "data-dashboard-git-multi-select": true, "aria-describedby": "dashboard-git-commit-selection-hint", checked: state.commitMultiSelect, onChange: (event) => state.setCommitMultiSelect(event.currentTarget.checked) }), _jsx("span", { className: styles.gitCommitMultiSelectTrack, "aria-hidden": "true", children: _jsx("span", { className: styles.gitCommitMultiSelectThumb }) }), _jsx("span", { className: styles.gitCommitMultiSelectLabel, children: t('dashboard.git.multiSelectCommits') })] })] })] }), !isMain && (_jsxs("button", { type: "button", className: styles.gitSummaryButton, "data-dashboard-git-summary": true, "aria-pressed": state.view === 'summary', onClick: state.selectSummary, children: [_jsx("span", { children: t('dashboard.git.baselineSummary') }), _jsx("small", { children: t('dashboard.git.baselineSummaryDescription') })] })), !isMain && state.view === 'summary' && (_jsxs("label", { className: styles.gitSummaryToggle, "data-dashboard-git-include-working-tree": true, children: [_jsx("input", { type: "checkbox", checked: state.includeWorkingTree, disabled: state.files.status === 'loading', onChange: (event) => state.setIncludeWorkingTree(event.currentTarget.checked) }), _jsxs("span", { children: [_jsx("strong", { children: t('dashboard.git.includeWorkingTree') }), _jsx("small", { children: t('dashboard.git.includeWorkingTreeDescription') })] })] })), _jsx("span", { id: "dashboard-git-commit-selection-hint", className: styles.gitSrOnly, children: t('dashboard.git.commitSelectionHint') }), historyValue.commits.length === 0 && _jsx("div", { className: styles.gitEmpty, children: t('dashboard.git.noCommits') }), _jsx(GitCommitList, { commits: historyValue.commits, selectedCommit: state.selectedCommit, selectedCommits: state.selectedCommits, multiSelect: state.commitMultiSelect, onSelect: state.selectCommit, onToggle: state.toggleCommit, t: t })] }), _jsx(GitSplitter, { split: rows, orientation: "horizontal", axis: "rows", label: t('dashboard.git.resizeRows') }), _jsxs("section", { className: styles.gitColumn, "data-dashboard-git-pane": "changed-files", "aria-label": t('dashboard.git.changedFiles'), "aria-busy": state.files.status === 'loading', children: [_jsxs("div", { className: styles.gitColumnHeader, children: [_jsx("h3", { children: t('dashboard.git.changedFiles') }), _jsxs("div", { className: styles.gitColumnHeaderMeta, children: [targetLabel !== undefined && (state.selectedCommits.length > 1 || state.view === 'summary'
153
+ }) }) })] }))] }))] })), isMain && historyValue !== undefined && (_jsxs("dl", { className: styles.gitBaselineFacts, children: [_jsxs("div", { children: [_jsx("dt", { children: t('dashboard.git.head') }), _jsx("dd", { children: _jsx("code", { children: shortCommit(historyValue.headCommit) }) })] }), _jsxs("div", { children: [_jsx("dt", { children: t('dashboard.git.commits') }), _jsx("dd", { children: commitCountLabel(historyValue, t) })] })] }))] }), _jsx("button", { type: "button", className: styles.gitRefresh, "data-dashboard-git-refresh": true, disabled: refreshing || state.history.status === 'loading', "aria-busy": refreshing || state.history.status === 'loading', onClick: () => void state.refresh(), children: refreshing ? t('dashboard.git.refreshing') : t('dashboard.git.refresh') })] }), !isMain && unavailable === 'baseline-unselected' && (_jsxs("div", { className: styles.gitBaselinePrompt, "data-dashboard-git-baseline-prompt": true, children: [_jsx("strong", { children: t('dashboard.git.selectBaselineTitle') }), _jsx("p", { children: t('dashboard.git.selectBaselineDescription') })] })), state.history.status === 'loading' && (_jsx("div", { className: styles.gitLoading, role: "status", children: t('dashboard.git.loading') })), state.history.status === 'ready' && historyValue !== undefined && unavailable !== undefined && (_jsx(UnavailableNotice, { reason: unavailable, t: t })), state.history.status === 'ready' && historyValue !== undefined && unavailable === undefined && (_jsxs("div", { className: styles.gitColumns, ref: gridRef, children: [_jsxs("section", { className: styles.gitColumn, "data-dashboard-git-pane": "commits", "aria-label": t('dashboard.git.commits'), children: [_jsxs("div", { className: styles.gitColumnHeader, children: [_jsx("h3", { children: t('dashboard.git.commits') }), _jsxs("div", { className: styles.gitColumnHeaderControls, children: [historyValue.truncated && _jsx("span", { children: t('dashboard.git.truncatedHistory') }), _jsxs("label", { className: styles.gitCommitMultiSelect, title: t('dashboard.git.multiSelectCommitsDescription'), children: [_jsx("input", { type: "checkbox", role: "switch", "data-dashboard-git-multi-select": true, "aria-describedby": "dashboard-git-commit-selection-hint", checked: state.commitMultiSelect, onChange: (event) => state.setCommitMultiSelect(event.currentTarget.checked) }), _jsx("span", { className: styles.gitCommitMultiSelectTrack, "aria-hidden": "true", children: _jsx("span", { className: styles.gitCommitMultiSelectThumb }) }), _jsx("span", { className: styles.gitCommitMultiSelectLabel, children: t('dashboard.git.multiSelectCommits') })] })] })] }), !isMain && (_jsxs("button", { type: "button", className: styles.gitSummaryButton, "data-dashboard-git-summary": true, "aria-pressed": state.view === 'summary', onClick: state.selectSummary, children: [_jsx("span", { children: t('dashboard.git.baselineSummary') }), _jsx("small", { children: t('dashboard.git.baselineSummaryDescription') })] })), !isMain && state.view === 'summary' && (_jsxs("label", { className: styles.gitSummaryToggle, "data-dashboard-git-include-working-tree": true, children: [_jsx("input", { type: "checkbox", checked: state.includeWorkingTree, disabled: state.files.status === 'loading', onChange: (event) => state.setIncludeWorkingTree(event.currentTarget.checked) }), _jsxs("span", { children: [_jsx("strong", { children: t('dashboard.git.includeWorkingTree') }), _jsx("small", { children: t('dashboard.git.includeWorkingTreeDescription') })] })] })), _jsx("span", { id: "dashboard-git-commit-selection-hint", className: styles.gitSrOnly, children: t('dashboard.git.commitSelectionHint') }), historyValue.commits.length === 0 && _jsx("div", { className: styles.gitEmpty, children: t('dashboard.git.noCommits') }), _jsx(GitCommitList, { commits: historyValue.commits, selectedCommit: state.selectedCommit, selectedCommits: state.selectedCommits, multiSelect: state.commitMultiSelect, onSelect: state.selectCommit, onToggle: state.toggleCommit, t: t })] }), _jsx(GitSplitter, { split: rows, orientation: "horizontal", axis: "rows", label: t('dashboard.git.resizeRows') }), _jsxs("section", { className: styles.gitColumn, "data-dashboard-git-pane": "changed-files", "aria-label": t('dashboard.git.changedFiles'), "aria-busy": state.files.status === 'loading', children: [_jsxs("div", { className: styles.gitColumnHeader, children: [_jsx("h3", { children: t('dashboard.git.changedFiles') }), _jsxs("div", { className: styles.gitColumnHeaderMeta, children: [targetLabel !== undefined && (state.selectedCommits.length > 1 || state.view === 'summary'
105
154
  ? _jsx("span", { children: targetLabel })
106
155
  : _jsx("code", { children: targetLabel })), state.files.status === 'ready' && hasTarget && (lineTotals === undefined ? (_jsx("span", { className: styles.gitColumnHeaderUnknown, children: t('dashboard.unknown') })) : (_jsx(GitLineStats, { additions: lineTotals.additions, deletions: lineTotals.deletions, ariaLabel: t('dashboard.git.lineStats', {
107
156
  additions: lineTotals.additions,
108
157
  deletions: lineTotals.deletions,
109
- }) })))] })] }), state.commitMultiSelect && state.selectedCommits.length > 0 && state.view === 'commits' && (_jsxs("div", { className: styles.gitSelectionToolbar, children: [_jsx("span", { children: t('dashboard.git.selectedCommitCount', { n: state.selectedCommits.length }) }), _jsx("button", { type: "button", onClick: state.clearCommitSelection, children: t('dashboard.git.clearCommitSelection') })] })), !hasTarget ? (_jsx("div", { className: styles.gitEmpty, children: t('dashboard.git.selectCommit') })) : state.files.status === 'loading' ? (_jsx("div", { className: styles.gitLoading, role: "status", children: state.view === 'summary' ? t('dashboard.git.loadingSummaryFiles') : t('dashboard.git.loadingFiles') })) : state.files.status === 'error' ? (_jsx("div", { className: styles.gitError, role: "alert", children: errorText(state.files.error, t) })) : (_jsxs(_Fragment, { children: [state.files.status === 'ready' && state.files.error !== undefined && (_jsx("div", { className: styles.gitError, role: "alert", children: errorText(state.files.error, t) })), state.files.status === 'ready' && state.files.value.truncated === true && (_jsx("div", { className: styles.gitEmpty, role: "status", "data-dashboard-git-files-truncated": true, children: t('dashboard.git.truncatedFiles') })), files.length === 0 && !(state.files.status === 'ready' && state.files.value.truncated === true) ? (_jsx("div", { className: styles.gitEmpty, children: state.view === 'summary'
158
+ }) })))] })] }), state.commitMultiSelect && state.selectedCommits.length > 0 && state.view === 'commits' && (_jsxs("div", { className: styles.gitSelectionToolbar, children: [_jsx("span", { children: t('dashboard.git.selectedCommitCount', { n: state.selectedCommits.length }) }), _jsx("button", { type: "button", onClick: state.clearCommitSelection, children: t('dashboard.git.clearCommitSelection') })] })), !hasTarget ? (_jsx("div", { className: styles.gitEmpty, children: t('dashboard.git.selectCommit') })) : state.files.status === 'loading' ? (_jsx("div", { className: styles.gitLoading, role: "status", children: state.view === 'summary' ? t('dashboard.git.loadingSummaryFiles') : t('dashboard.git.loadingFiles') })) : state.files.status === 'error' ? (null) : (_jsxs(_Fragment, { children: [state.files.status === 'ready' && state.files.value.truncated === true && (_jsx("div", { className: styles.gitEmpty, role: "status", "data-dashboard-git-files-truncated": true, children: t('dashboard.git.truncatedFiles') })), files.length === 0 && !(state.files.status === 'ready' && state.files.value.truncated === true) ? (_jsx("div", { className: styles.gitEmpty, children: state.view === 'summary'
110
159
  ? state.includeWorkingTree
111
160
  ? t('dashboard.git.noLiveBaselineChanges')
112
161
  : t('dashboard.git.noBaselineChanges')
113
- : t('dashboard.git.noFiles') })) : (_jsx(GitChangedFiles, { files: files, selectedPath: state.selectedPath, onSelect: state.selectPath, t: t }))] }))] }), _jsx(GitSplitter, { split: columns, orientation: "vertical", axis: "columns", label: t('dashboard.git.resizeColumns') }), _jsxs("section", { className: styles.gitColumn, "data-dashboard-git-pane": "diff", "aria-label": t('dashboard.git.diff'), "aria-busy": state.diff.status === 'loading', children: [_jsxs("div", { className: styles.gitColumnHeader, children: [_jsx("h3", { children: state.view === 'summary' ? t('dashboard.git.summaryDiff') : t('dashboard.git.diff') }), state.selectedPath !== undefined && _jsx("code", { title: state.selectedPath, children: state.selectedPath })] }), state.diff.status === 'loading' ? (_jsx("div", { className: styles.gitLoading, role: "status", children: state.view === 'summary' ? t('dashboard.git.loadingSummaryDiff') : t('dashboard.git.loadingDiff') })) : state.diff.status === 'error' ? (_jsx("div", { className: styles.gitError, role: "alert", children: errorText(state.diff.error, t) })) : (_jsx(GitDiffView, { diff: diff, onOpenFile: onOpenFile, t: t }))] })] }))] }));
162
+ : t('dashboard.git.noFiles') })) : (_jsx(GitChangedFiles, { files: files, selectedPath: state.selectedPath, onSelect: state.selectPath, t: t }))] }))] }), _jsx(GitSplitter, { split: columns, orientation: "vertical", axis: "columns", label: t('dashboard.git.resizeColumns') }), _jsxs("section", { className: styles.gitColumn, "data-dashboard-git-pane": "diff", "aria-label": t('dashboard.git.diff'), "aria-busy": state.diff.status === 'loading', children: [_jsxs("div", { className: styles.gitColumnHeader, children: [_jsx("h3", { children: state.view === 'summary' ? t('dashboard.git.summaryDiff') : t('dashboard.git.diff') }), state.selectedPath !== undefined && _jsx("code", { title: state.selectedPath, children: state.selectedPath })] }), state.diff.status === 'loading' ? (_jsx("div", { className: styles.gitLoading, role: "status", children: state.view === 'summary' ? t('dashboard.git.loadingSummaryDiff') : t('dashboard.git.loadingDiff') })) : state.diff.status === 'error' ? (null) : (_jsx(GitDiffView, { diff: diff, onOpenFile: onOpenFile, t: t }))] })] }))] }));
114
163
  }
115
164
  /**
116
165
  * Draggable divider that resizes one axis of the Git grid. The wide layout puts
@@ -120,7 +169,4 @@ export function WorktreeGitPanel({ manager, workspaceId, worktreeId, defaultBase
120
169
  function GitSplitter({ split, orientation, axis, label }) {
121
170
  return (_jsx("div", { className: styles.gitColumnSplitter, "data-dashboard-git-splitter": axis, "data-dashboard-git-splitting": split.dragging ? 'true' : undefined, role: "separator", "aria-orientation": orientation, "aria-label": label, "aria-valuemin": 0, "aria-valuemax": 100, "aria-valuenow": Math.round(split.percent), title: label, tabIndex: 0, ref: split.splitterRef, onPointerDown: split.startDrag, onPointerMove: split.drag, onPointerUp: split.endDrag, onPointerCancel: split.endDrag, onLostPointerCapture: split.endDrag, onDoubleClick: split.reset, onKeyDown: split.onKeyDown }));
122
171
  }
123
- function errorText(error, t) {
124
- return error.message || t('dashboard.unknownError');
125
- }
126
172
  //# sourceMappingURL=WorktreeGitPanel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WorktreeGitPanel.js","sourceRoot":"","sources":["../../../../src/client/dashboard/git/WorktreeGitPanel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WorktreeGitPanel.js","sourceRoot":"","sources":["../../../../src/client/dashboard/git/WorktreeGitPanel.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
- export declare function buildSessionFileAddress(sessionId: string, path: string): string;
1
+ /** Resolve checkout-relative Git paths against the actual Session cwd. */
2
+ export declare function buildSessionFileAddress(sessionId: string, path: string, gitRootPath?: string, cwd?: string): string;
2
3
  //# sourceMappingURL=file-address.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-address.d.ts","sourceRoot":"","sources":["../../../../src/client/dashboard/git/file-address.ts"],"names":[],"mappings":"AAaA,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAG/E"}
1
+ {"version":3,"file":"file-address.d.ts","sourceRoot":"","sources":["../../../../src/client/dashboard/git/file-address.ts"],"names":[],"mappings":"AAEA,0EAA0E;AAC1E,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,MAAM,EACpB,GAAG,CAAC,EAAE,MAAM,GACX,MAAM,CAOR"}
@@ -1,16 +1,11 @@
1
- /**
2
- * Canonical DSH session file address constructor.
3
- * Equivalent to `sessionFileAddress` from `@deepseek-ai/dsh-util-workspace-path`.
4
- * Address grammar: `dsh-resource://file/session/<sessionId>/<encodedPath>`
5
- */
6
- function encodeSegment(segment) {
7
- return encodeURIComponent(segment).replace(/%3A/gi, ':');
8
- }
9
- function encodePath(path) {
10
- return path.split('/').map(encodeSegment).join('/');
11
- }
12
- export function buildSessionFileAddress(sessionId, path) {
1
+ import { fileAddressFor } from '@deepseek-ai/dsh-util-workspace-path';
2
+ /** Resolve checkout-relative Git paths against the actual Session cwd. */
3
+ export function buildSessionFileAddress(sessionId, path, gitRootPath, cwd) {
13
4
  const normalized = path.replace(/\\/g, '/').replace(/^(?:\.\/)+/, '');
14
- return `dsh-resource://file/session/${encodeSegment(sessionId)}/${encodePath(normalized)}`;
5
+ // Git paths remain checkout-relative even when the Session cwd is nested.
6
+ const target = gitRootPath === undefined
7
+ ? normalized
8
+ : gitRootPath.replace(/\\/g, '/').replace(/\/$/, '') + '/' + normalized;
9
+ return fileAddressFor(sessionId, cwd, target);
15
10
  }
16
11
  //# sourceMappingURL=file-address.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-address.js","sourceRoot":"","sources":["../../../../src/client/dashboard/git/file-address.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,SAAS,aAAa,CAAC,OAAe;IACpC,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,SAAiB,EAAE,IAAY;IACrE,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IACtE,OAAO,+BAA+B,aAAa,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;AAC7F,CAAC"}
1
+ {"version":3,"file":"file-address.js","sourceRoot":"","sources":["../../../../src/client/dashboard/git/file-address.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAEtE,0EAA0E;AAC1E,MAAM,UAAU,uBAAuB,CACrC,SAAiB,EACjB,IAAY,EACZ,WAAoB,EACpB,GAAY;IAEZ,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IACtE,0EAA0E;IAC1E,MAAM,MAAM,GAAG,WAAW,KAAK,SAAS;QACtC,CAAC,CAAC,UAAU;QACZ,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,UAAU,CAAC;IAC1E,OAAO,cAAc,CAAC,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;AAChD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useWorktreeGitState.d.ts","sourceRoot":"","sources":["../../../../src/client/dashboard/git/useWorktreeGitState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useWorktreeGitState.d.ts","sourceRoot":"","sources":["../../../../src/client/dashboard/git/useWorktreeGitState.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,12 @@
1
1
  import { useEffect, useMemo, useSyncExternalStore } from 'react';
2
+ import { toWorktreeViewError } from '../../view/worktree-view.js';
2
3
  import { WORKTREE_GIT_WORKING_TREE } from '../../../contract/index.js';
3
4
  import { isMainWorktreeId } from './git-facts.js';
4
5
  import { MAX_DIFF_CACHE, MAX_FILE_CACHE, canonicalizeCommits, diffCacheKey, fileForPath, gitCacheKey, isLiveCacheKey, isLiveTarget, sameTarget, summarySelection, trimCache, } from './git-state-cache.js';
5
6
  function asError(error) {
6
- return error instanceof Error ? error : new Error(String(error));
7
+ return error instanceof Error
8
+ ? error
9
+ : Object.assign(new Error(toWorktreeViewError(error).message), toWorktreeViewError(error));
7
10
  }
8
11
  function normalizeBranch(branch) {
9
12
  const normalized = branch?.trim();