@stigmer/react 3.1.1 → 3.1.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 (483) hide show
  1. package/composer/SessionComposer.d.ts +25 -1
  2. package/composer/SessionComposer.d.ts.map +1 -1
  3. package/composer/SessionComposer.js +19 -8
  4. package/composer/SessionComposer.js.map +1 -1
  5. package/execution/ArtifactContentRenderer.d.ts +11 -1
  6. package/execution/ArtifactContentRenderer.d.ts.map +1 -1
  7. package/execution/ArtifactContentRenderer.js +39 -15
  8. package/execution/ArtifactContentRenderer.js.map +1 -1
  9. package/execution/ArtifactPreviewModal.d.ts +5 -5
  10. package/execution/ArtifactPreviewModal.js +4 -4
  11. package/execution/ArtifactPreviewModal.js.map +1 -1
  12. package/execution/FileChangeProgressBar.d.ts +47 -0
  13. package/execution/FileChangeProgressBar.d.ts.map +1 -0
  14. package/execution/FileChangeProgressBar.js +49 -0
  15. package/execution/FileChangeProgressBar.js.map +1 -0
  16. package/execution/FileChangesView.d.ts.map +1 -1
  17. package/execution/FileChangesView.js +19 -4
  18. package/execution/FileChangesView.js.map +1 -1
  19. package/execution/FilePathContext.d.ts +8 -1
  20. package/execution/FilePathContext.d.ts.map +1 -1
  21. package/execution/FilePathContext.js.map +1 -1
  22. package/execution/FilePathLink.d.ts.map +1 -1
  23. package/execution/FilePathLink.js +21 -6
  24. package/execution/FilePathLink.js.map +1 -1
  25. package/execution/FileReviewAtoms.d.ts +27 -0
  26. package/execution/FileReviewAtoms.d.ts.map +1 -0
  27. package/execution/FileReviewAtoms.js +64 -0
  28. package/execution/FileReviewAtoms.js.map +1 -0
  29. package/execution/FileReviewCard.d.ts +2 -2
  30. package/execution/FileReviewCard.d.ts.map +1 -1
  31. package/execution/FileReviewCard.js +32 -62
  32. package/execution/FileReviewCard.js.map +1 -1
  33. package/execution/MessageEntry.d.ts +20 -0
  34. package/execution/MessageEntry.d.ts.map +1 -1
  35. package/execution/MessageEntry.js +19 -5
  36. package/execution/MessageEntry.js.map +1 -1
  37. package/execution/MessageThread.d.ts +75 -13
  38. package/execution/MessageThread.d.ts.map +1 -1
  39. package/execution/MessageThread.js +195 -27
  40. package/execution/MessageThread.js.map +1 -1
  41. package/execution/PlanArtifactCard.d.ts +36 -21
  42. package/execution/PlanArtifactCard.d.ts.map +1 -1
  43. package/execution/PlanArtifactCard.js +39 -25
  44. package/execution/PlanArtifactCard.js.map +1 -1
  45. package/execution/PlanCompletionCard.d.ts +4 -4
  46. package/execution/PlanCompletionCard.d.ts.map +1 -1
  47. package/execution/PlanCompletionCard.js +4 -4
  48. package/execution/PlanCompletionCard.js.map +1 -1
  49. package/execution/PlanDocumentMessage.d.ts +32 -0
  50. package/execution/PlanDocumentMessage.d.ts.map +1 -0
  51. package/execution/PlanDocumentMessage.js +37 -0
  52. package/execution/PlanDocumentMessage.js.map +1 -0
  53. package/execution/PlanStreamingCard.d.ts +50 -0
  54. package/execution/PlanStreamingCard.d.ts.map +1 -0
  55. package/execution/PlanStreamingCard.js +40 -0
  56. package/execution/PlanStreamingCard.js.map +1 -0
  57. package/execution/index.d.ts +9 -1
  58. package/execution/index.d.ts.map +1 -1
  59. package/execution/index.js +4 -0
  60. package/execution/index.js.map +1 -1
  61. package/execution/use-build-from-plan-hotkey.d.ts +1 -1
  62. package/execution/use-build-from-plan-hotkey.js +1 -1
  63. package/execution/useArtifactCopy.d.ts +51 -0
  64. package/execution/useArtifactCopy.d.ts.map +1 -0
  65. package/execution/useArtifactCopy.js +75 -0
  66. package/execution/useArtifactCopy.js.map +1 -0
  67. package/execution/useArtifactDownload.d.ts.map +1 -1
  68. package/execution/useArtifactDownload.js +17 -5
  69. package/execution/useArtifactDownload.js.map +1 -1
  70. package/execution/useCreateAgentExecution.d.ts +12 -0
  71. package/execution/useCreateAgentExecution.d.ts.map +1 -1
  72. package/execution/useCreateAgentExecution.js +5 -1
  73. package/execution/useCreateAgentExecution.js.map +1 -1
  74. package/github/decodeGitHubContent.d.ts +29 -0
  75. package/github/decodeGitHubContent.d.ts.map +1 -0
  76. package/github/decodeGitHubContent.js +72 -0
  77. package/github/decodeGitHubContent.js.map +1 -0
  78. package/github/index.d.ts +1 -0
  79. package/github/index.d.ts.map +1 -1
  80. package/github/index.js +1 -0
  81. package/github/index.js.map +1 -1
  82. package/github/useGitHubFileReader.d.ts +26 -0
  83. package/github/useGitHubFileReader.d.ts.map +1 -0
  84. package/github/useGitHubFileReader.js +106 -0
  85. package/github/useGitHubFileReader.js.map +1 -0
  86. package/github/useGitHubTreeLister.d.ts.map +1 -1
  87. package/github/useGitHubTreeLister.js +6 -2
  88. package/github/useGitHubTreeLister.js.map +1 -1
  89. package/index.d.ts +9 -9
  90. package/index.d.ts.map +1 -1
  91. package/index.js +5 -5
  92. package/index.js.map +1 -1
  93. package/internal/ResizableSplit.d.ts +72 -22
  94. package/internal/ResizableSplit.d.ts.map +1 -1
  95. package/internal/ResizableSplit.js +96 -38
  96. package/internal/ResizableSplit.js.map +1 -1
  97. package/internal/VirtualizedThread.d.ts +5 -3
  98. package/internal/VirtualizedThread.d.ts.map +1 -1
  99. package/internal/VirtualizedThread.js +6 -4
  100. package/internal/VirtualizedThread.js.map +1 -1
  101. package/internal/file-icons/index.d.ts +17 -0
  102. package/internal/file-icons/index.d.ts.map +1 -0
  103. package/internal/file-icons/index.js +60 -0
  104. package/internal/file-icons/index.js.map +1 -0
  105. package/internal/file-tree/FileTreeNode.d.ts +18 -1
  106. package/internal/file-tree/FileTreeNode.d.ts.map +1 -1
  107. package/internal/file-tree/FileTreeNode.js +11 -2
  108. package/internal/file-tree/FileTreeNode.js.map +1 -1
  109. package/internal/markdown-components.d.ts +38 -1
  110. package/internal/markdown-components.d.ts.map +1 -1
  111. package/internal/markdown-components.js +86 -11
  112. package/internal/markdown-components.js.map +1 -1
  113. package/{workflow → internal}/motion-preference.d.ts +7 -4
  114. package/internal/motion-preference.d.ts.map +1 -0
  115. package/{workflow → internal}/motion-preference.js +7 -4
  116. package/internal/motion-preference.js.map +1 -0
  117. package/internal/store/index.d.ts +33 -0
  118. package/internal/store/index.d.ts.map +1 -1
  119. package/internal/store/index.js +59 -0
  120. package/internal/store/index.js.map +1 -1
  121. package/internal/store/workspace-editors-store.d.ts +145 -0
  122. package/internal/store/workspace-editors-store.d.ts.map +1 -0
  123. package/internal/store/workspace-editors-store.js +208 -0
  124. package/internal/store/workspace-editors-store.js.map +1 -0
  125. package/internal/store/workspace-file-selection-store.d.ts +38 -0
  126. package/internal/store/workspace-file-selection-store.d.ts.map +1 -0
  127. package/internal/store/workspace-file-selection-store.js +62 -0
  128. package/internal/store/workspace-file-selection-store.js.map +1 -0
  129. package/internal/useRevealLine.d.ts +49 -0
  130. package/internal/useRevealLine.d.ts.map +1 -0
  131. package/internal/useRevealLine.js +43 -0
  132. package/internal/useRevealLine.js.map +1 -0
  133. package/library/detect-plan-artifact.d.ts +43 -4
  134. package/library/detect-plan-artifact.d.ts.map +1 -1
  135. package/library/detect-plan-artifact.js +45 -5
  136. package/library/detect-plan-artifact.js.map +1 -1
  137. package/library/detect-streaming-plan.d.ts +45 -0
  138. package/library/detect-streaming-plan.d.ts.map +1 -0
  139. package/library/detect-streaming-plan.js +83 -0
  140. package/library/detect-streaming-plan.js.map +1 -0
  141. package/library/index.d.ts +4 -1
  142. package/library/index.d.ts.map +1 -1
  143. package/library/index.js +2 -1
  144. package/library/index.js.map +1 -1
  145. package/package.json +4 -4
  146. package/session/NewSessionViewer.d.ts +19 -4
  147. package/session/NewSessionViewer.d.ts.map +1 -1
  148. package/session/NewSessionViewer.js +52 -25
  149. package/session/NewSessionViewer.js.map +1 -1
  150. package/session/PlanEditor.d.ts +55 -0
  151. package/session/PlanEditor.d.ts.map +1 -0
  152. package/session/PlanEditor.js +88 -0
  153. package/session/PlanEditor.js.map +1 -0
  154. package/session/PlanStreamingDocument.d.ts +30 -0
  155. package/session/PlanStreamingDocument.d.ts.map +1 -0
  156. package/session/PlanStreamingDocument.js +37 -0
  157. package/session/PlanStreamingDocument.js.map +1 -0
  158. package/session/SessionPanelChip.d.ts +26 -0
  159. package/session/SessionPanelChip.d.ts.map +1 -0
  160. package/session/SessionPanelChip.js +40 -0
  161. package/session/SessionPanelChip.js.map +1 -0
  162. package/session/SessionViewer.d.ts +34 -7
  163. package/session/SessionViewer.d.ts.map +1 -1
  164. package/session/SessionViewer.js +334 -33
  165. package/session/SessionViewer.js.map +1 -1
  166. package/session/{inspector → facets}/ArtifactsTab.d.ts +10 -2
  167. package/session/facets/ArtifactsTab.d.ts.map +1 -0
  168. package/session/{inspector → facets}/ArtifactsTab.js +8 -3
  169. package/session/facets/ArtifactsTab.js.map +1 -0
  170. package/session/{inspector → facets}/ChangesTab.d.ts +3 -3
  171. package/session/facets/ChangesTab.d.ts.map +1 -0
  172. package/session/{inspector → facets}/ChangesTab.js +3 -3
  173. package/session/facets/ChangesTab.js.map +1 -0
  174. package/session/facets/InspectTab.d.ts.map +1 -0
  175. package/session/facets/InspectTab.js.map +1 -0
  176. package/session/{inspector → facets}/SetupTab.d.ts +11 -2
  177. package/session/facets/SetupTab.d.ts.map +1 -0
  178. package/session/{inspector → facets}/SetupTab.js +4 -3
  179. package/session/facets/SetupTab.js.map +1 -0
  180. package/session/{inspector → facets}/UsageTab.d.ts +1 -1
  181. package/session/facets/UsageTab.d.ts.map +1 -0
  182. package/session/{inspector → facets}/UsageTab.js +1 -1
  183. package/session/facets/UsageTab.js.map +1 -0
  184. package/session/{inspector → facets}/index.d.ts +0 -6
  185. package/session/facets/index.d.ts.map +1 -0
  186. package/session/{inspector → facets}/index.js +0 -3
  187. package/session/facets/index.js.map +1 -0
  188. package/session/index.d.ts +11 -2
  189. package/session/index.d.ts.map +1 -1
  190. package/session/index.js +15 -2
  191. package/session/index.js.map +1 -1
  192. package/session/plan-document.d.ts +21 -0
  193. package/session/plan-document.d.ts.map +1 -0
  194. package/session/plan-document.js +28 -0
  195. package/session/plan-document.js.map +1 -0
  196. package/session/useOpenFileChange.d.ts +20 -0
  197. package/session/useOpenFileChange.d.ts.map +1 -0
  198. package/session/useOpenFileChange.js +31 -0
  199. package/session/useOpenFileChange.js.map +1 -0
  200. package/session/usePlanDraft.d.ts +52 -0
  201. package/session/usePlanDraft.d.ts.map +1 -0
  202. package/session/usePlanDraft.js +63 -0
  203. package/session/usePlanDraft.js.map +1 -0
  204. package/session/useSessionConversation.d.ts +14 -1
  205. package/session/useSessionConversation.d.ts.map +1 -1
  206. package/session/useSessionConversation.js +20 -2
  207. package/session/useSessionConversation.js.map +1 -1
  208. package/session/useSessionPageFlow.d.ts.map +1 -1
  209. package/session/useSessionPageFlow.js +1 -0
  210. package/session/useSessionPageFlow.js.map +1 -1
  211. package/session/useSessionPanel.d.ts +120 -0
  212. package/session/useSessionPanel.d.ts.map +1 -0
  213. package/session/useSessionPanel.js +130 -0
  214. package/session/useSessionPanel.js.map +1 -0
  215. package/session/useSessionRailViews.d.ts +45 -0
  216. package/session/useSessionRailViews.d.ts.map +1 -0
  217. package/session/useSessionRailViews.js +105 -0
  218. package/session/useSessionRailViews.js.map +1 -0
  219. package/src/composer/SessionComposer.tsx +53 -10
  220. package/src/composer/__tests__/SessionComposer-contract.test.tsx +58 -4
  221. package/src/execution/ArtifactContentRenderer.tsx +101 -24
  222. package/src/execution/ArtifactPreviewModal.tsx +9 -9
  223. package/src/execution/FileChangeProgressBar.tsx +121 -0
  224. package/src/execution/FileChangesView.tsx +18 -4
  225. package/src/execution/FilePathContext.tsx +8 -1
  226. package/src/execution/FilePathLink.tsx +22 -6
  227. package/src/execution/FileReviewAtoms.tsx +89 -0
  228. package/src/execution/FileReviewCard.tsx +57 -90
  229. package/src/execution/MessageEntry.tsx +49 -1
  230. package/src/execution/MessageThread.tsx +308 -39
  231. package/src/execution/PlanArtifactCard.tsx +174 -64
  232. package/src/execution/PlanCompletionCard.tsx +5 -5
  233. package/src/execution/PlanDocumentMessage.tsx +96 -0
  234. package/src/execution/PlanStreamingCard.tsx +141 -0
  235. package/src/execution/__tests__/ArtifactContentRenderer.test.tsx +80 -1
  236. package/src/execution/__tests__/ArtifactPreviewModal.test.tsx +6 -6
  237. package/src/execution/__tests__/FileChangeProgressBar.test.tsx +125 -0
  238. package/src/execution/__tests__/FilePathLink.test.tsx +87 -0
  239. package/src/execution/__tests__/FileReviewCard.test.tsx +66 -7
  240. package/src/execution/__tests__/MessageThread.test.tsx +102 -1
  241. package/src/execution/__tests__/PlanArtifactCard.test.tsx +114 -26
  242. package/src/execution/__tests__/PlanCompletionCard.test.tsx +2 -2
  243. package/src/execution/__tests__/PlanDocumentMessage.test.tsx +55 -0
  244. package/src/execution/__tests__/PlanStreamingCard.test.tsx +56 -0
  245. package/src/execution/__tests__/buildThreadItems-plan-completion.test.ts +600 -22
  246. package/src/execution/__tests__/message-entry.test.tsx +17 -0
  247. package/src/execution/__tests__/useArtifactCopy.test.tsx +90 -0
  248. package/src/execution/__tests__/useArtifactDownload.test.tsx +2 -0
  249. package/src/execution/__tests__/useCreateAgentExecution.test.tsx +85 -0
  250. package/src/execution/index.ts +13 -1
  251. package/src/execution/use-build-from-plan-hotkey.ts +1 -1
  252. package/src/execution/useArtifactCopy.ts +109 -0
  253. package/src/execution/useArtifactDownload.ts +17 -5
  254. package/src/execution/useCreateAgentExecution.ts +18 -1
  255. package/src/github/__tests__/decodeGitHubContent.test.ts +102 -0
  256. package/src/github/__tests__/useGitHubFileReader.test.ts +183 -0
  257. package/src/github/decodeGitHubContent.ts +83 -0
  258. package/src/github/index.ts +1 -0
  259. package/src/github/useGitHubFileReader.ts +152 -0
  260. package/src/github/useGitHubTreeLister.ts +6 -2
  261. package/src/index.ts +69 -9
  262. package/src/internal/ResizableSplit.tsx +184 -51
  263. package/src/internal/VirtualizedThread.tsx +12 -4
  264. package/src/internal/__tests__/ResizableSplit.test.tsx +125 -3
  265. package/src/internal/__tests__/markdown-components.test.tsx +68 -0
  266. package/src/internal/__tests__/useRevealLine.test.tsx +97 -0
  267. package/src/internal/file-icons/__tests__/file-icons.test.tsx +35 -0
  268. package/src/internal/file-icons/index.tsx +137 -0
  269. package/src/internal/file-tree/FileTreeNode.tsx +56 -5
  270. package/src/internal/file-tree/__tests__/FileTreeNode-explorer.test.tsx +86 -0
  271. package/src/internal/markdown-components.tsx +116 -11
  272. package/src/{workflow → internal}/motion-preference.ts +7 -4
  273. package/src/internal/store/__tests__/workspace-editors-store.test.ts +216 -0
  274. package/src/internal/store/__tests__/workspace-file-selection-store.test.ts +118 -0
  275. package/src/internal/store/index.ts +94 -0
  276. package/src/internal/store/workspace-editors-store.ts +315 -0
  277. package/src/internal/store/workspace-file-selection-store.ts +88 -0
  278. package/src/internal/useRevealLine.ts +81 -0
  279. package/src/library/__tests__/detect-plan-artifact.test.ts +69 -0
  280. package/src/library/__tests__/detect-streaming-plan.test.ts +234 -0
  281. package/src/library/detect-plan-artifact.ts +62 -5
  282. package/src/library/detect-streaming-plan.ts +108 -0
  283. package/src/library/index.ts +7 -0
  284. package/src/session/NewSessionViewer.tsx +123 -55
  285. package/src/session/PlanEditor.tsx +361 -0
  286. package/src/session/PlanStreamingDocument.tsx +97 -0
  287. package/src/session/SessionPanelChip.tsx +103 -0
  288. package/src/session/SessionViewer.tsx +655 -96
  289. package/src/session/__tests__/NewSessionViewer.test.tsx +148 -0
  290. package/src/session/__tests__/PlanEditor.test.tsx +217 -0
  291. package/src/session/__tests__/PlanStreamingDocument.test.tsx +50 -0
  292. package/src/session/__tests__/SessionPanelChip.test.tsx +42 -0
  293. package/src/session/__tests__/SessionViewer-fileReviewDock.test.tsx +66 -4
  294. package/src/session/__tests__/SessionViewer-transcriptFileOpen.test.tsx +205 -0
  295. package/src/session/__tests__/audienceWiring.test.tsx +55 -19
  296. package/src/session/__tests__/useOpenFileChange.test.tsx +82 -0
  297. package/src/session/__tests__/usePlanDraft.test.ts +102 -0
  298. package/src/session/__tests__/useSessionConversation.test.tsx +44 -0
  299. package/src/session/__tests__/useSessionPanel.test.ts +298 -0
  300. package/src/session/__tests__/useSessionRailViews.test.tsx +124 -0
  301. package/src/session/{inspector → facets}/ArtifactsTab.tsx +27 -5
  302. package/src/session/{inspector → facets}/ChangesTab.tsx +3 -3
  303. package/src/session/{inspector → facets}/SetupTab.tsx +13 -1
  304. package/src/session/{inspector → facets}/UsageTab.tsx +1 -1
  305. package/src/session/{inspector → facets}/__tests__/ArtifactsTab.test.tsx +42 -8
  306. package/src/session/facets/__tests__/SetupTab.test.tsx +44 -0
  307. package/src/session/{inspector → facets}/index.ts +0 -16
  308. package/src/session/index.ts +30 -13
  309. package/src/session/plan-document.ts +30 -0
  310. package/src/session/useOpenFileChange.ts +53 -0
  311. package/src/session/usePlanDraft.ts +109 -0
  312. package/src/session/useSessionConversation.ts +38 -3
  313. package/src/session/useSessionPageFlow.ts +1 -0
  314. package/src/session/useSessionPanel.ts +288 -0
  315. package/src/session/useSessionRailViews.tsx +200 -0
  316. package/src/workflow/WorkflowExecutionGraph.tsx +1 -1
  317. package/src/workflow/index.ts +1 -1
  318. package/src/workflow/useFollowExecution.ts +1 -1
  319. package/src/workspace/EditorTabs.tsx +174 -0
  320. package/src/workspace/ExplorerTree.tsx +253 -0
  321. package/src/workspace/FileViewer.tsx +537 -0
  322. package/src/workspace/WorkspaceContentSearch.tsx +502 -0
  323. package/src/workspace/WorkspaceContentSearcher.ts +70 -0
  324. package/src/workspace/WorkspaceEditor.tsx +19 -16
  325. package/src/workspace/WorkspaceFileLister.ts +11 -0
  326. package/src/workspace/WorkspaceFileReader.ts +57 -0
  327. package/src/workspace/WorkspaceFileSearch.tsx +452 -0
  328. package/src/workspace/WorkspaceSurface.tsx +839 -0
  329. package/src/workspace/__tests__/EditorTabs.test.tsx +102 -0
  330. package/src/workspace/__tests__/ExplorerTree.test.tsx +204 -0
  331. package/src/workspace/__tests__/FileViewer.test.tsx +439 -0
  332. package/src/workspace/__tests__/WorkspaceContentSearch.test.tsx +229 -0
  333. package/src/workspace/__tests__/WorkspaceEditor-initialPanel.test.tsx +19 -0
  334. package/src/workspace/__tests__/WorkspaceFileSearch.test.tsx +227 -0
  335. package/src/workspace/__tests__/WorkspaceSurface.test.tsx +418 -0
  336. package/src/workspace/__tests__/a11y/harness.tsx +140 -0
  337. package/src/workspace/__tests__/a11y/mock-capabilities.ts +138 -0
  338. package/src/workspace/__tests__/a11y/workspace-editor.a11y.test.tsx +65 -0
  339. package/src/workspace/__tests__/a11y/workspace-explorer-search.a11y.test.tsx +112 -0
  340. package/src/workspace/__tests__/a11y/workspace-viewer-tabs.a11y.test.tsx +69 -0
  341. package/src/workspace/__tests__/findChangeForSelection.test.ts +132 -0
  342. package/src/workspace/__tests__/matchContentPreview.test.ts +55 -0
  343. package/src/workspace/__tests__/matchWorkspaceFiles.test.ts +104 -0
  344. package/src/workspace/__tests__/resolveWorkspaceFileSelection.test.ts +135 -0
  345. package/src/workspace/__tests__/useWorkspaceContentSearch.test.tsx +196 -0
  346. package/src/workspace/__tests__/useWorkspaceFileContent.test.tsx +190 -0
  347. package/src/workspace/__tests__/useWorkspaceFileSearch.test.tsx +162 -0
  348. package/src/workspace/findChangeForSelection.ts +61 -0
  349. package/src/workspace/index.ts +56 -2
  350. package/src/workspace/matchContentPreview.ts +51 -0
  351. package/src/workspace/matchWorkspaceFiles.ts +86 -0
  352. package/src/workspace/resolveWorkspaceFileSelection.ts +119 -0
  353. package/src/workspace/useWorkspaceContentSearch.ts +228 -0
  354. package/src/workspace/useWorkspaceFileContent.ts +129 -0
  355. package/src/workspace/useWorkspaceFileSearch.ts +184 -0
  356. package/src/workspace/useWorkspaceFiles.ts +27 -27
  357. package/src/workspace/workspaceListingCache.ts +93 -0
  358. package/styles.css +1 -1
  359. package/workflow/WorkflowExecutionGraph.js +1 -1
  360. package/workflow/WorkflowExecutionGraph.js.map +1 -1
  361. package/workflow/index.d.ts +1 -1
  362. package/workflow/index.d.ts.map +1 -1
  363. package/workflow/index.js +1 -1
  364. package/workflow/index.js.map +1 -1
  365. package/workflow/useFollowExecution.js +1 -1
  366. package/workflow/useFollowExecution.js.map +1 -1
  367. package/workspace/EditorTabs.d.ts +47 -0
  368. package/workspace/EditorTabs.d.ts.map +1 -0
  369. package/workspace/EditorTabs.js +78 -0
  370. package/workspace/EditorTabs.js.map +1 -0
  371. package/workspace/ExplorerTree.d.ts +32 -0
  372. package/workspace/ExplorerTree.d.ts.map +1 -0
  373. package/workspace/ExplorerTree.js +49 -0
  374. package/workspace/ExplorerTree.js.map +1 -0
  375. package/workspace/FileViewer.d.ts +93 -0
  376. package/workspace/FileViewer.d.ts.map +1 -0
  377. package/workspace/FileViewer.js +193 -0
  378. package/workspace/FileViewer.js.map +1 -0
  379. package/workspace/WorkspaceContentSearch.d.ts +41 -0
  380. package/workspace/WorkspaceContentSearch.d.ts.map +1 -0
  381. package/workspace/WorkspaceContentSearch.js +216 -0
  382. package/workspace/WorkspaceContentSearch.js.map +1 -0
  383. package/workspace/WorkspaceContentSearcher.d.ts +59 -0
  384. package/workspace/WorkspaceContentSearcher.d.ts.map +1 -0
  385. package/workspace/WorkspaceContentSearcher.js +7 -0
  386. package/workspace/WorkspaceContentSearcher.js.map +1 -0
  387. package/workspace/WorkspaceEditor.d.ts.map +1 -1
  388. package/workspace/WorkspaceEditor.js +8 -10
  389. package/workspace/WorkspaceEditor.js.map +1 -1
  390. package/workspace/WorkspaceFileLister.d.ts +11 -0
  391. package/workspace/WorkspaceFileLister.d.ts.map +1 -1
  392. package/workspace/WorkspaceFileReader.d.ts +48 -0
  393. package/workspace/WorkspaceFileReader.d.ts.map +1 -0
  394. package/workspace/WorkspaceFileReader.js +11 -0
  395. package/workspace/WorkspaceFileReader.js.map +1 -0
  396. package/workspace/WorkspaceFileSearch.d.ts +32 -0
  397. package/workspace/WorkspaceFileSearch.d.ts.map +1 -0
  398. package/workspace/WorkspaceFileSearch.js +175 -0
  399. package/workspace/WorkspaceFileSearch.js.map +1 -0
  400. package/workspace/WorkspaceSurface.d.ts +151 -0
  401. package/workspace/WorkspaceSurface.d.ts.map +1 -0
  402. package/workspace/WorkspaceSurface.js +220 -0
  403. package/workspace/WorkspaceSurface.js.map +1 -0
  404. package/workspace/findChangeForSelection.d.ts +19 -0
  405. package/workspace/findChangeForSelection.d.ts.map +1 -0
  406. package/workspace/findChangeForSelection.js +46 -0
  407. package/workspace/findChangeForSelection.js.map +1 -0
  408. package/workspace/index.d.ts +24 -2
  409. package/workspace/index.d.ts.map +1 -1
  410. package/workspace/index.js +13 -1
  411. package/workspace/index.js.map +1 -1
  412. package/workspace/matchContentPreview.d.ts +21 -0
  413. package/workspace/matchContentPreview.d.ts.map +1 -0
  414. package/workspace/matchContentPreview.js +36 -0
  415. package/workspace/matchContentPreview.js.map +1 -0
  416. package/workspace/matchWorkspaceFiles.d.ts +30 -0
  417. package/workspace/matchWorkspaceFiles.d.ts.map +1 -0
  418. package/workspace/matchWorkspaceFiles.js +58 -0
  419. package/workspace/matchWorkspaceFiles.js.map +1 -0
  420. package/workspace/resolveWorkspaceFileSelection.d.ts +19 -0
  421. package/workspace/resolveWorkspaceFileSelection.d.ts.map +1 -0
  422. package/workspace/resolveWorkspaceFileSelection.js +115 -0
  423. package/workspace/resolveWorkspaceFileSelection.js.map +1 -0
  424. package/workspace/useWorkspaceContentSearch.d.ts +69 -0
  425. package/workspace/useWorkspaceContentSearch.d.ts.map +1 -0
  426. package/workspace/useWorkspaceContentSearch.js +154 -0
  427. package/workspace/useWorkspaceContentSearch.js.map +1 -0
  428. package/workspace/useWorkspaceFileContent.d.ts +73 -0
  429. package/workspace/useWorkspaceFileContent.d.ts.map +1 -0
  430. package/workspace/useWorkspaceFileContent.js +57 -0
  431. package/workspace/useWorkspaceFileContent.js.map +1 -0
  432. package/workspace/useWorkspaceFileSearch.d.ts +61 -0
  433. package/workspace/useWorkspaceFileSearch.d.ts.map +1 -0
  434. package/workspace/useWorkspaceFileSearch.js +119 -0
  435. package/workspace/useWorkspaceFileSearch.js.map +1 -0
  436. package/workspace/useWorkspaceFiles.d.ts +13 -5
  437. package/workspace/useWorkspaceFiles.d.ts.map +1 -1
  438. package/workspace/useWorkspaceFiles.js +18 -19
  439. package/workspace/useWorkspaceFiles.js.map +1 -1
  440. package/workspace/workspaceListingCache.d.ts +47 -0
  441. package/workspace/workspaceListingCache.d.ts.map +1 -0
  442. package/workspace/workspaceListingCache.js +55 -0
  443. package/workspace/workspaceListingCache.js.map +1 -0
  444. package/session/inspector/ArtifactsTab.d.ts.map +0 -1
  445. package/session/inspector/ArtifactsTab.js.map +0 -1
  446. package/session/inspector/ChangesTab.d.ts.map +0 -1
  447. package/session/inspector/ChangesTab.js.map +0 -1
  448. package/session/inspector/InspectTab.d.ts.map +0 -1
  449. package/session/inspector/InspectTab.js.map +0 -1
  450. package/session/inspector/SessionInspector.d.ts +0 -64
  451. package/session/inspector/SessionInspector.d.ts.map +0 -1
  452. package/session/inspector/SessionInspector.js +0 -53
  453. package/session/inspector/SessionInspector.js.map +0 -1
  454. package/session/inspector/SetupTab.d.ts.map +0 -1
  455. package/session/inspector/SetupTab.js.map +0 -1
  456. package/session/inspector/UsageTab.d.ts.map +0 -1
  457. package/session/inspector/UsageTab.js.map +0 -1
  458. package/session/inspector/WorkspaceTab.d.ts +0 -35
  459. package/session/inspector/WorkspaceTab.d.ts.map +0 -1
  460. package/session/inspector/WorkspaceTab.js +0 -75
  461. package/session/inspector/WorkspaceTab.js.map +0 -1
  462. package/session/inspector/index.d.ts.map +0 -1
  463. package/session/inspector/index.js.map +0 -1
  464. package/session/inspector/useSessionInspector.d.ts +0 -49
  465. package/session/inspector/useSessionInspector.d.ts.map +0 -1
  466. package/session/inspector/useSessionInspector.js +0 -122
  467. package/session/inspector/useSessionInspector.js.map +0 -1
  468. package/src/session/inspector/SessionInspector.tsx +0 -162
  469. package/src/session/inspector/WorkspaceTab.tsx +0 -245
  470. package/src/session/inspector/__tests__/useSessionInspector.test.ts +0 -251
  471. package/src/session/inspector/useSessionInspector.ts +0 -178
  472. package/src/workspace/WorkspaceEntryFiles.tsx +0 -196
  473. package/workflow/motion-preference.d.ts.map +0 -1
  474. package/workflow/motion-preference.js.map +0 -1
  475. package/workspace/WorkspaceEntryFiles.d.ts +0 -22
  476. package/workspace/WorkspaceEntryFiles.d.ts.map +0 -1
  477. package/workspace/WorkspaceEntryFiles.js +0 -58
  478. package/workspace/WorkspaceEntryFiles.js.map +0 -1
  479. /package/session/{inspector → facets}/InspectTab.d.ts +0 -0
  480. /package/session/{inspector → facets}/InspectTab.js +0 -0
  481. /package/src/{workflow → internal}/__tests__/motion-preference.test.ts +0 -0
  482. /package/src/session/{inspector → facets}/InspectTab.tsx +0 -0
  483. /package/src/session/{inspector → facets}/__tests__/ChangesTab.test.tsx +0 -0
@@ -17,13 +17,16 @@ import { FileReviewCard } from "./FileReviewCard.js";
17
17
  import { SummarizationCard } from "./SummarizationCard.js";
18
18
  import { PlanCompletionCard } from "./PlanCompletionCard.js";
19
19
  import { PlanArtifactCard } from "./PlanArtifactCard.js";
20
+ import { PlanStreamingCard } from "./PlanStreamingCard.js";
20
21
  import { TodoCard } from "./TodoCard.js";
21
22
  import { findPlanArtifact } from "../library/detect-plan-artifact.js";
23
+ import { findStreamingPlan } from "../library/detect-streaming-plan.js";
22
24
  import { isInternalTool, isCollapsedToolCall } from "./tool-categories.js";
23
25
  import { FilePathContext } from "./FilePathContext.js";
24
26
  import { SandboxContext } from "./SandboxContext.js";
25
27
  import { ApprovalContext } from "./ApprovalContext.js";
26
28
  import { FileReviewContext } from "./FileReviewContext.js";
29
+ import { extractLeadingH1, unwrapEnclosingMarkdownFence, } from "../internal/markdown-components.js";
27
30
  import { useRenderTracer, useKeyStability, useDomNodeCount, DevProfiler } from "../internal/dev/index.js";
28
31
  import { useAutoScroll } from "../internal/useAutoScroll.js";
29
32
  import { JumpToLatestButton } from "../internal/JumpToLatestButton.js";
@@ -36,6 +39,16 @@ const LazyVirtualizedThread = lazy(() => import("../internal/VirtualizedThread.j
36
39
  const EMPTY_APPROVALS = [];
37
40
  const EMPTY_SUBMITTING_IDS = new Set();
38
41
  const EMPTY_APPROVAL_ERRORS = new Map();
42
+ /**
43
+ * Class set for the optional reading column — one definition shared by both
44
+ * render paths (non-virtualized and virtualized) so their geometry can never
45
+ * drift.
46
+ *
47
+ * @internal
48
+ */
49
+ export function threadContentColumnClass(column) {
50
+ return column != null && cn("w-full max-w-3xl px-4", column === "center" && "mx-auto");
51
+ }
39
52
  /**
40
53
  * True once the agent has produced any real, renderable response for this turn —
41
54
  * assistant text, a tool call (running or terminal), or streamed model thinking.
@@ -63,6 +76,40 @@ function hasStartedResponding(execution) {
63
76
  return false;
64
77
  });
65
78
  }
79
+ /**
80
+ * True for an execution that ran in Plan mode and completed — the only kind of
81
+ * execution that has a reviewable plan (streaming/failed/terminated Plan turns
82
+ * have nothing final to review or build from).
83
+ */
84
+ function isCompletedPlanExecution(execution) {
85
+ return (execution.status?.phase === ExecutionPhase.EXECUTION_COMPLETED &&
86
+ execution.spec?.executionConfig?.interactionMode === InteractionMode.PLAN);
87
+ }
88
+ /**
89
+ * Index of the message that IS the plan in a completed Plan execution: the
90
+ * last AI message with content — the SAME selection rule the runner's
91
+ * `extractFinalPlanText` uses to publish `plan.md`, so the message promoted to
92
+ * a document in the thread is byte-identical to the published artifact.
93
+ * Returns -1 when no such message exists.
94
+ */
95
+ function findPlanMessageIndex(messages) {
96
+ for (let i = messages.length - 1; i >= 0; i--) {
97
+ const msg = messages[i];
98
+ if (msg.type === MessageType.MESSAGE_AI && msg.content.trim().length > 0) {
99
+ return i;
100
+ }
101
+ }
102
+ return -1;
103
+ }
104
+ /**
105
+ * The plan's title for its compact card: the leading `# H1` of the plan
106
+ * message, after the same plan-scoped bare-fence unwrap the document renderers
107
+ * apply — so the card and the plan tab always agree on the title. `undefined`
108
+ * when the plan has no H1 (the card falls back to "Plan").
109
+ */
110
+ function extractPlanTitle(content) {
111
+ return extractLeadingH1(unwrapEnclosingMarkdownFence(content, true)).title ?? undefined;
112
+ }
66
113
  /**
67
114
  * Adds the tool-call ids that a sub-agent renders as nested rows (the same
68
115
  * non-internal AI tool calls {@link SubAgentSection} surfaces) to `target`,
@@ -146,7 +193,7 @@ function insertFileReviewItems(items, changeSets, anchorIndexBySetId, execTermin
146
193
  *
147
194
  * @internal Exported for testing — not part of the public API.
148
195
  */
149
- export function buildThreadItems(executions, activeStreamExecution, pendingUserMessage, includeApprovals, workspaceEntries, summarizationEvents, pendingMessageFailed = false, editableActiveTurn = false, includeFileReviewRecords = false) {
196
+ export function buildThreadItems(executions, activeStreamExecution, pendingUserMessage, includeApprovals, workspaceEntries, summarizationEvents, pendingMessageFailed = false, editableActiveTurn = false, includeFileReviewRecords = false, collapseStreamingPlan = false) {
150
197
  const items = [];
151
198
  // Tool-call ids that render as an inline-approval-capable ToolCallItem (a
152
199
  // regular parent tool, or a sub-agent's nested tool). Their approvals show
@@ -173,6 +220,16 @@ export function buildThreadItems(executions, activeStreamExecution, pendingUserM
173
220
  const activeStreamIndex = activeStreamExecution
174
221
  ? allExecutions.length - 1
175
222
  : -1;
223
+ // The most recent completed Plan execution owns the primary "Build" action;
224
+ // every earlier plan renders as a review-only record. Resolved up front so
225
+ // each segment can stamp its own card with the right authority.
226
+ let latestPlanExecutionId = null;
227
+ for (let i = allExecutions.length - 1; i >= 0; i--) {
228
+ if (isCompletedPlanExecution(allExecutions[i])) {
229
+ latestPlanExecutionId = allExecutions[i].metadata?.id ?? `_e${i}`;
230
+ break;
231
+ }
232
+ }
176
233
  // Build a queue of summarization events to interleave by timestamp.
177
234
  // Events are consumed as messages pass their timestamp.
178
235
  const pendingEvents = summarizationEvents?.length
@@ -200,6 +257,40 @@ export function buildThreadItems(executions, activeStreamExecution, pendingUserM
200
257
  const isActiveStreamExec = ei === activeStreamIndex;
201
258
  const messages = exec.status?.messages ?? [];
202
259
  const subAgents = exec.status?.subAgentExecutions ?? [];
260
+ // A completed Plan turn collapses its plan message into the compact plan
261
+ // card (the plan-completion item): the document lives in the panel's plan
262
+ // tab, not the thread. While the plan is still streaming, the same
263
+ // treatment applies live when the host has a plan surface (streamingPlan
264
+ // below): the in-flight plan message is suppressed behind a plan-writing
265
+ // card while the panel's plan tab renders it as it streams — the content
266
+ // moves, it doesn't disappear. Completion swaps the live card for the
267
+ // settled one (same key), and the paired auto-open (useSessionPanel's
268
+ // planKey trigger) keeps the document side-by-side. Collapse of a
269
+ // COMPLETED plan is gated on the ARTIFACT existing: a plan that never
270
+ // published (older executions, failed upload) exists only in the message,
271
+ // so that path keeps the inline document promotion (isPlanDocument) —
272
+ // collapsing it would orphan the plan behind a card with nothing to open.
273
+ const isCompletedPlanExec = isCompletedPlanExecution(exec);
274
+ const planMessageIndex = isCompletedPlanExec
275
+ ? findPlanMessageIndex(messages)
276
+ : -1;
277
+ const planArtifact = isCompletedPlanExec
278
+ ? findPlanArtifact(exec)
279
+ : undefined;
280
+ const collapsePlanMessage = planMessageIndex >= 0 && planArtifact !== undefined;
281
+ // The plan the active Plan-mode turn is writing RIGHT NOW (detected by
282
+ // the H1 convention — see findStreamingPlan). Its message is suppressed
283
+ // in favor of a live plan-writing card, mirroring the completed-turn
284
+ // collapse above, while the panel's plan tab renders the document live.
285
+ // Two gates: collapseStreamingPlan (the host wired onOpenPlan — without a
286
+ // document surface the plan must keep streaming inline, DD-011) and
287
+ // isActiveStreamExec (a stale non-terminal execution left in the
288
+ // completed list by the transient skew documented above must never
289
+ // sprout a live card). Mutually exclusive with collapsePlanMessage by
290
+ // construction: one requires a terminal phase, the other forbids it.
291
+ const streamingPlan = collapseStreamingPlan && isActiveStreamExec
292
+ ? findStreamingPlan(exec)
293
+ : undefined;
203
294
  // This execution's settled change sets render as read-only records inside
204
295
  // its own segment, anchored to the last stamped edit row of each set. The
205
296
  // display seam reads the server's live projection when present and folds
@@ -230,7 +321,13 @@ export function buildThreadItems(executions, activeStreamExecution, pendingUserM
230
321
  });
231
322
  }
232
323
  const specMessage = exec.spec?.message;
233
- if (specMessage && specMessage !== "execute") {
324
+ // A Build-from-plan turn synthesizes NO prompt item: its message is a
325
+ // machine-written label ("Build from plan"), not user prose — the real
326
+ // instruction is runner-injected from the same flag. The plan card
327
+ // directly above the turn is the visible cause; rendering the label as a
328
+ // user bubble would attribute words to the user they never typed.
329
+ const isBuildTurn = exec.spec?.executionConfig?.buildFromPlan === true;
330
+ if (specMessage && specMessage !== "execute" && !isBuildTurn) {
234
331
  const syntheticHumanMsg = create(AgentMessageSchema);
235
332
  syntheticHumanMsg.type = MessageType.MESSAGE_HUMAN;
236
333
  syntheticHumanMsg.content = specMessage;
@@ -247,6 +344,9 @@ export function buildThreadItems(executions, activeStreamExecution, pendingUserM
247
344
  // The active execution's prompt is the one a user can edit-and-resubmit
248
345
  // (stop + rephrase). Only mark it when the consumer enabled editing.
249
346
  isEditable: isActiveStreamExec && editableActiveTurn,
347
+ // The turn's mode marks the prompt bubble (a "Plan" pill on Plan
348
+ // turns) so the transcript reads unambiguously after mode switches.
349
+ interactionMode: exec.spec?.executionConfig?.interactionMode,
250
350
  });
251
351
  }
252
352
  for (let mi = 0; mi < messages.length; mi++) {
@@ -258,11 +358,22 @@ export function buildThreadItems(executions, activeStreamExecution, pendingUserM
258
358
  flushEventsUntil(msg.timestamp);
259
359
  const isEmptyAi = msg.type === MessageType.MESSAGE_AI && !msg.content.trim();
260
360
  if (!isEmptyAi) {
261
- items.push({
262
- kind: "message",
263
- message: msg,
264
- key: `${execId}-m${mi}`,
265
- });
361
+ // The collapsed plan message is not rendered — the plan-completion
362
+ // card at the segment's end is the turn's sole plan representation.
363
+ // Its tool calls (below) and the todo anchor still process normally.
364
+ // A STREAMING plan message is suppressed the same way: its stand-in
365
+ // is the plan-writing card at the segment's end, and the document
366
+ // renders live in the panel's plan tab.
367
+ const suppressAsPlan = (collapsePlanMessage && mi === planMessageIndex) ||
368
+ mi === streamingPlan?.messageIndex;
369
+ if (!suppressAsPlan) {
370
+ items.push({
371
+ kind: "message",
372
+ message: msg,
373
+ key: `${execId}-m${mi}`,
374
+ isPlanDocument: !collapsePlanMessage && mi === planMessageIndex,
375
+ });
376
+ }
266
377
  // Anchor (1): the plan sits right under the agent's opening narration.
267
378
  if (msg.type === MessageType.MESSAGE_AI ||
268
379
  msg.type === MessageType.MESSAGE_THINKING) {
@@ -335,6 +446,41 @@ export function buildThreadItems(executions, activeStreamExecution, pendingUserM
335
446
  }
336
447
  }
337
448
  }
449
+ // A completed Plan turn closes its segment with the plan card — the
450
+ // compact stand-in for the collapsed plan message, carrying the title the
451
+ // message would have shown. Every plan stays reviewable forever; only the
452
+ // latest carries the build authority (isLatestPlan). A superseded plan
453
+ // that never published an artifact is skipped — with no artifact and no
454
+ // build CTA it would render an empty shell.
455
+ if (isCompletedPlanExec) {
456
+ const isLatestPlan = execId === latestPlanExecutionId;
457
+ if (planArtifact || isLatestPlan) {
458
+ items.push({
459
+ kind: "plan-completion",
460
+ key: `${execId}-plan-completion`,
461
+ executionId: exec.metadata?.id ?? "",
462
+ planArtifact,
463
+ planTitle: collapsePlanMessage
464
+ ? extractPlanTitle(messages[planMessageIndex].content)
465
+ : undefined,
466
+ isLatestPlan,
467
+ });
468
+ }
469
+ }
470
+ else if (streamingPlan) {
471
+ // The live stand-in for the suppressed streaming plan message. It
472
+ // deliberately SHARES the completion item's key: on completion this
473
+ // item becomes the plan-completion item above (a kind change under a
474
+ // stable key), so the card holds one thread position and the handoff
475
+ // reads as the card settling rather than a new element appearing.
476
+ items.push({
477
+ kind: "plan-writing",
478
+ key: `${execId}-plan-completion`,
479
+ executionId: exec.metadata?.id ?? "",
480
+ planTitle: extractLeadingH1(streamingPlan.displayText).title ?? undefined,
481
+ planSize: streamingPlan.displayText.length,
482
+ });
483
+ }
338
484
  // Anchor (3): a plan that produced no rendered narration or work item still
339
485
  // surfaces — never silently dropped.
340
486
  emitTodos();
@@ -391,23 +537,24 @@ export function buildThreadItems(executions, activeStreamExecution, pendingUserM
391
537
  const reason = lastExec?.status?.error;
392
538
  if (reason) {
393
539
  const specMessage = lastExec?.spec?.message;
540
+ // A failed build turn offers no inline Retry: resending its label as an
541
+ // ordinary message would drop the buildFromPlan flag (no runner
542
+ // directive, no plan attachment). The plan card above the error is the
543
+ // fully-wired retry — its Build button re-runs the whole pipeline.
544
+ const isBuildTurn = lastExec?.spec?.executionConfig?.buildFromPlan === true;
394
545
  items.push({
395
546
  kind: "execution-error",
396
547
  error: reason,
397
- retryMessage: specMessage && specMessage !== "execute" ? specMessage : undefined,
548
+ retryMessage: specMessage && specMessage !== "execute" && !isBuildTurn
549
+ ? specMessage
550
+ : undefined,
398
551
  key: `execution-error-${lastExec?.metadata?.id ?? lastPhase}`,
399
552
  });
400
553
  }
401
554
  }
402
- if (lastPhase === ExecutionPhase.EXECUTION_COMPLETED &&
403
- lastExec?.spec?.executionConfig?.interactionMode === InteractionMode.PLAN) {
404
- items.push({
405
- kind: "plan-completion",
406
- key: "plan-completion",
407
- executionId: lastExec?.metadata?.id ?? "",
408
- planArtifact: findPlanArtifact(lastExec),
409
- });
410
- }
555
+ // Plan cards are emitted inside each execution's segment (see the
556
+ // isCompletedPlanExec block in the loop above) — attached to their plan
557
+ // document, persistent across later turns, never appended at the tail.
411
558
  if (includeApprovals) {
412
559
  // Backstop only: an approval whose tool call renders inline shows its gate
413
560
  // on that row (see ApprovalContext / ToolCallItem). We emit a bottom card
@@ -432,7 +579,12 @@ export function buildThreadItems(executions, activeStreamExecution, pendingUserM
432
579
  // edit row, never appended at the thread tail. Pending decision bars are
433
580
  // not thread items at all: they live in the composer-docked FileReviewDock.
434
581
  if (pendingUserMessage) {
435
- const alreadySynthesized = lastExec?.spec?.message === pendingUserMessage;
582
+ // A FAILED send never created an execution, so an existing execution with
583
+ // identical text (e.g. two build attempts of the same plan — both
584
+ // "Build from plan") must never swallow the failed bubble. Suppression
585
+ // only applies to the succeeded-send window where the stream has
586
+ // delivered the same turn but the pending state hasn't cleared yet.
587
+ const alreadySynthesized = !pendingMessageFailed && lastExec?.spec?.message === pendingUserMessage;
436
588
  if (!alreadySynthesized) {
437
589
  const syntheticPending = create(AgentMessageSchema);
438
590
  syntheticPending.type = MessageType.MESSAGE_HUMAN;
@@ -473,11 +625,15 @@ export function buildThreadItems(executions, activeStreamExecution, pendingUserM
473
625
  * />
474
626
  * ```
475
627
  */
476
- export function MessageThread({ executions, activeStreamExecution, pendingUserMessage, pendingMessageFailed = false, onRetrySend, onRetryExecution, onEditMessage, className, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, approvalErrors, showFileReviewRecords = false, workspaceEntries, onFilePathClick, sandboxWorkspaceRoot, summarizationEvents, virtualized = false, onBuildFromPlan, org, planActionsDisabled, centerContent = false, }) {
628
+ export function MessageThread({ executions, activeStreamExecution, pendingUserMessage, pendingMessageFailed = false, onRetrySend, onRetryExecution, onEditMessage, className, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, approvalErrors, showFileReviewRecords = false, workspaceEntries, onFilePathClick, sandboxWorkspaceRoot, summarizationEvents, virtualized = false, onBuildFromPlan, onOpenPlan, org, planActionsDisabled, planBuildPending, contentColumn, }) {
477
629
  useRenderTracer("MessageThread", { executions, activeStreamExecution });
478
630
  const includeApprovals = onApprovalSubmit != null;
479
631
  const editableActiveTurn = onEditMessage != null;
480
- const items = useMemo(() => buildThreadItems(executions, activeStreamExecution, pendingUserMessage, includeApprovals, workspaceEntries, summarizationEvents, pendingMessageFailed, editableActiveTurn, showFileReviewRecords), [executions, activeStreamExecution, pendingUserMessage, includeApprovals, workspaceEntries, summarizationEvents, pendingMessageFailed, editableActiveTurn, showFileReviewRecords]);
632
+ // A streaming plan is collapsed behind its live card only when the host can
633
+ // open the plan document surface — a panel-less host (no onOpenPlan) keeps
634
+ // the plan streaming inline, where it remains readable (DD-011).
635
+ const collapseStreamingPlan = onOpenPlan != null;
636
+ const items = useMemo(() => buildThreadItems(executions, activeStreamExecution, pendingUserMessage, includeApprovals, workspaceEntries, summarizationEvents, pendingMessageFailed, editableActiveTurn, showFileReviewRecords, collapseStreamingPlan), [executions, activeStreamExecution, pendingUserMessage, includeApprovals, workspaceEntries, summarizationEvents, pendingMessageFailed, editableActiveTurn, showFileReviewRecords, collapseStreamingPlan]);
481
637
  useKeyStability(items);
482
638
  const filePathCtx = useMemo(() => ({
483
639
  workspaceEntries: workspaceEntries ?? [],
@@ -529,14 +685,14 @@ export function MessageThread({ executions, activeStreamExecution, pendingUserMe
529
685
  // cards, so the bar reuses the existing scroll machine without a new observer.
530
686
  const unresolvedApprovalCount = pendingApprovals.length;
531
687
  if (virtualized) {
532
- return (_jsx("div", { className: cn("relative min-h-0", className), children: _jsx(Suspense, { fallback: null, children: _jsx(LazyVirtualizedThread, { items: items, formatToolCallSummary: formatToolCallSummary, onApprovalSubmit: onApprovalSubmit, submittingApprovalIds: submittingApprovalIds, approvalErrors: approvalErrors, filePathCtx: filePathCtx, sandboxCtx: sandboxCtx, approvalCtx: approvalCtx, fileReviewCtx: fileReviewCtx, unresolvedApprovalCount: unresolvedApprovalCount, onBuildFromPlan: onBuildFromPlan, org: org, planActionsDisabled: planActionsDisabled, centerContent: centerContent, onRetrySend: onRetrySend, onRetryExecution: onRetryExecution, onEditMessage: onEditMessage }) }) }));
688
+ return (_jsx("div", { className: cn("relative min-h-0", className), children: _jsx(Suspense, { fallback: null, children: _jsx(LazyVirtualizedThread, { items: items, formatToolCallSummary: formatToolCallSummary, onApprovalSubmit: onApprovalSubmit, submittingApprovalIds: submittingApprovalIds, approvalErrors: approvalErrors, filePathCtx: filePathCtx, sandboxCtx: sandboxCtx, approvalCtx: approvalCtx, fileReviewCtx: fileReviewCtx, unresolvedApprovalCount: unresolvedApprovalCount, onBuildFromPlan: onBuildFromPlan, onOpenPlan: onOpenPlan, org: org, planActionsDisabled: planActionsDisabled, planBuildPending: planBuildPending, contentColumn: contentColumn, onRetrySend: onRetrySend, onRetryExecution: onRetryExecution, onEditMessage: onEditMessage }) }) }));
533
689
  }
534
- return (_jsx(NonVirtualizedThread, { items: items, className: className, centerContent: centerContent, formatToolCallSummary: formatToolCallSummary, onApprovalSubmit: onApprovalSubmit, submittingApprovalIds: submittingApprovalIds, approvalErrors: approvalErrors, filePathCtx: filePathCtx, sandboxCtx: sandboxCtx, approvalCtx: approvalCtx, fileReviewCtx: fileReviewCtx, unresolvedApprovalCount: unresolvedApprovalCount, onBuildFromPlan: onBuildFromPlan, org: org, planActionsDisabled: planActionsDisabled, onRetrySend: onRetrySend, onRetryExecution: onRetryExecution, onEditMessage: onEditMessage }));
690
+ return (_jsx(NonVirtualizedThread, { items: items, className: className, contentColumn: contentColumn, formatToolCallSummary: formatToolCallSummary, onApprovalSubmit: onApprovalSubmit, submittingApprovalIds: submittingApprovalIds, approvalErrors: approvalErrors, filePathCtx: filePathCtx, sandboxCtx: sandboxCtx, approvalCtx: approvalCtx, fileReviewCtx: fileReviewCtx, unresolvedApprovalCount: unresolvedApprovalCount, onBuildFromPlan: onBuildFromPlan, onOpenPlan: onOpenPlan, org: org, planActionsDisabled: planActionsDisabled, planBuildPending: planBuildPending, onRetrySend: onRetrySend, onRetryExecution: onRetryExecution, onEditMessage: onEditMessage }));
535
691
  }
536
- function NonVirtualizedThread({ items, className, centerContent, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, approvalErrors, filePathCtx, sandboxCtx, approvalCtx, fileReviewCtx, unresolvedApprovalCount, onBuildFromPlan, org, planActionsDisabled, onRetrySend, onRetryExecution, onEditMessage, }) {
692
+ function NonVirtualizedThread({ items, className, contentColumn, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, approvalErrors, filePathCtx, sandboxCtx, approvalCtx, fileReviewCtx, unresolvedApprovalCount, onBuildFromPlan, onOpenPlan, org, planActionsDisabled, planBuildPending, onRetrySend, onRetryExecution, onEditMessage, }) {
537
693
  const { scrollRef, sentinelRef, contentRef, isFollowing, jumpToLatest } = useAutoScroll();
538
694
  useDomNodeCount(scrollRef, "MessageThread");
539
- return (_jsxs("div", { className: cn("relative min-h-0", className), children: [_jsxs("div", { ref: scrollRef, role: "log", "aria-live": "polite", "aria-relevant": "additions", className: cn("h-full overflow-y-auto pt-6 pb-4 [overflow-anchor:none]", "[scrollbar-width:thin] [scrollbar-color:var(--color-border)_transparent]", "[&::-webkit-scrollbar]:w-1.5", "[&::-webkit-scrollbar-track]:bg-transparent", "[&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-thumb]:bg-border/40"), children: [_jsx(SandboxContext.Provider, { value: sandboxCtx, children: _jsx(FilePathContext.Provider, { value: filePathCtx, children: _jsx(ApprovalContext.Provider, { value: approvalCtx, children: _jsx(FileReviewContext.Provider, { value: fileReviewCtx, children: _jsx(DevProfiler, { id: "MessageThread", children: _jsx("div", { ref: contentRef, className: cn("flex flex-col gap-4", centerContent && "mx-auto w-full max-w-3xl px-4"), children: items.map((item) => (_jsx(ThreadItemWrapper, { animate: true, children: _jsx(ThreadItemRenderer, { item: item, formatToolCallSummary: formatToolCallSummary, onApprovalSubmit: onApprovalSubmit, submittingApprovalIds: submittingApprovalIds, approvalErrors: approvalErrors, onBuildFromPlan: onBuildFromPlan, org: org, planActionsDisabled: planActionsDisabled, onRetrySend: onRetrySend, onRetryExecution: onRetryExecution, onEditMessage: onEditMessage }) }, item.key))) }) }) }) }) }) }), _jsx("div", { ref: sentinelRef, "aria-hidden": "true" })] }), _jsx(JumpToLatestButton, { onClick: jumpToLatest, visible: !isFollowing && unresolvedApprovalCount === 0 }), _jsx(ApprovalPeekBar, { visible: !isFollowing && unresolvedApprovalCount > 0, count: unresolvedApprovalCount, onClick: jumpToLatest })] }));
695
+ return (_jsxs("div", { className: cn("relative min-h-0", className), children: [_jsxs("div", { ref: scrollRef, role: "log", "aria-live": "polite", "aria-relevant": "additions", className: cn("h-full overflow-y-auto pt-6 pb-4 [overflow-anchor:none]", "[scrollbar-width:thin] [scrollbar-color:var(--color-border)_transparent]", "[&::-webkit-scrollbar]:w-1.5", "[&::-webkit-scrollbar-track]:bg-transparent", "[&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-thumb]:bg-border/40"), children: [_jsx(SandboxContext.Provider, { value: sandboxCtx, children: _jsx(FilePathContext.Provider, { value: filePathCtx, children: _jsx(ApprovalContext.Provider, { value: approvalCtx, children: _jsx(FileReviewContext.Provider, { value: fileReviewCtx, children: _jsx(DevProfiler, { id: "MessageThread", children: _jsx("div", { ref: contentRef, className: cn("flex flex-col gap-4", threadContentColumnClass(contentColumn)), children: items.map((item) => (_jsx(ThreadItemWrapper, { animate: true, children: _jsx(ThreadItemRenderer, { item: item, formatToolCallSummary: formatToolCallSummary, onApprovalSubmit: onApprovalSubmit, submittingApprovalIds: submittingApprovalIds, approvalErrors: approvalErrors, onBuildFromPlan: onBuildFromPlan, onOpenPlan: onOpenPlan, org: org, planActionsDisabled: planActionsDisabled, planBuildPending: planBuildPending, onRetrySend: onRetrySend, onRetryExecution: onRetryExecution, onEditMessage: onEditMessage }) }, item.key))) }) }) }) }) }) }), _jsx("div", { ref: sentinelRef, "aria-hidden": "true" })] }), _jsx(JumpToLatestButton, { onClick: jumpToLatest, visible: !isFollowing && unresolvedApprovalCount === 0 }), _jsx(ApprovalPeekBar, { visible: !isFollowing && unresolvedApprovalCount > 0, count: unresolvedApprovalCount, onClick: jumpToLatest })] }));
540
696
  }
541
697
  /**
542
698
  * Renders a single thread item by discriminated `kind`. Used by both
@@ -549,13 +705,13 @@ function NonVirtualizedThread({ items, className, centerContent, formatToolCallS
549
705
  * @internal Exported for internal use by `VirtualizedThread` — not
550
706
  * part of the public API.
551
707
  */
552
- export function ThreadItemRenderer({ item, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, approvalErrors, onBuildFromPlan, org, planActionsDisabled, onRetrySend, onRetryExecution, onEditMessage, }) {
708
+ export function ThreadItemRenderer({ item, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, approvalErrors, onBuildFromPlan, onOpenPlan, org, planActionsDisabled, planBuildPending, onRetrySend, onRetryExecution, onEditMessage, }) {
553
709
  switch (item.kind) {
554
710
  case "message":
555
711
  if (item.isFailed) {
556
712
  return (_jsx(FailedUserMessage, { message: item.message, onRetry: onRetrySend }));
557
713
  }
558
- return (_jsx(MessageEntry, { message: item.message, className: item.isPending ? "opacity-70" : undefined, onEdit: item.isEditable && onEditMessage
714
+ return (_jsx(MessageEntry, { message: item.message, className: item.isPending ? "opacity-70" : undefined, isPlanDocument: item.isPlanDocument, interactionMode: item.interactionMode, onEdit: item.isEditable && onEditMessage
559
715
  ? () => onEditMessage(item.message.content)
560
716
  : undefined }));
561
717
  case "tool-group":
@@ -580,7 +736,19 @@ export function ThreadItemRenderer({ item, formatToolCallSummary, onApprovalSubm
580
736
  // When the plan was published as an artifact, show the richer reviewable
581
737
  // card (preview / copy / download / implement). Otherwise fall back to the
582
738
  // bare Implement CTA (older executions, or a plan that failed to publish).
583
- return item.planArtifact && item.executionId ? (_jsx(PlanArtifactCard, { executionId: item.executionId, artifact: item.planArtifact, org: org, onImplement: onBuildFromPlan, disabled: planActionsDisabled })) : (_jsx(PlanCompletionCard, { onImplement: onBuildFromPlan, disabled: planActionsDisabled }));
739
+ // Only the latest plan receives the build action a superseded plan's
740
+ // card is review-only, so a stale plan can never be implemented from it.
741
+ return item.planArtifact && item.executionId ? (_jsx(PlanArtifactCard, { executionId: item.executionId, artifact: item.planArtifact, title: item.planTitle, org: org, onImplement: item.isLatestPlan ? onBuildFromPlan : undefined,
742
+ // Every card routes to the plan document tab — the host renders a
743
+ // superseded plan read-only there (it receives the execution id).
744
+ onOpenPlan: onOpenPlan
745
+ ? () => onOpenPlan(item.executionId)
746
+ : undefined, disabled: planActionsDisabled, buildPending: planBuildPending })) : (_jsx(PlanCompletionCard, { onImplement: item.isLatestPlan ? onBuildFromPlan : undefined, disabled: planActionsDisabled }));
747
+ case "plan-writing":
748
+ // The live stand-in for a plan the active turn is writing. Emitted only
749
+ // when onOpenPlan is wired (see buildThreadItems' collapseStreamingPlan
750
+ // gate), so the action is always available in practice.
751
+ return (_jsx(PlanStreamingCard, { title: item.planTitle, sizeBytes: item.planSize, onOpenPlan: onOpenPlan ? () => onOpenPlan(item.executionId) : undefined }));
584
752
  }
585
753
  }
586
754
  // ---------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"MessageThread.js","sourceRoot":"","sources":["../../src/execution/MessageThread.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MessageThread.js","sourceRoot":"","sources":["../../src/execution/MessageThread.tsx"],"names":[],"mappings":"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"}
@@ -6,40 +6,55 @@ export interface PlanArtifactCardProps {
6
6
  /** The published `plan.md` artifact (from `findPlanArtifact`). */
7
7
  readonly artifact: ExecutionArtifact;
8
8
  /**
9
- * Organization slug. Required for the "Open full" modal (the shared
9
+ * The plan's title (its leading `# H1`). The card is the plan's compact
10
+ * stand-in in the thread, so the title is what makes it recognizable.
11
+ * Falls back to "Plan" when omitted.
12
+ */
13
+ readonly title?: string;
14
+ /**
15
+ * Organization slug. Required for the open-in-modal fallback (the shared
10
16
  * {@link ArtifactPreviewModal} uses it for its detection/apply pipeline and
11
- * to fetch the content). When omitted, "Open full" is hidden — the prominent
12
- * "Build from plan" action and "Download" remain.
17
+ * to fetch the content). When omitted, that fallback is hidden — the
18
+ * prominent "Build" action and the download icon remain.
13
19
  */
14
20
  readonly org?: string;
15
- /** Called when the user clicks "Build from plan". Hidden when omitted. */
21
+ /** Called when the user clicks "Build". Hidden when omitted. */
16
22
  readonly onImplement?: () => void;
23
+ /**
24
+ * Opens the plan in the session panel's plan document tab — the
25
+ * side-by-side review/refine surface. When provided it REPLACES the
26
+ * modal-based open fallback (one review affordance, not two). When
27
+ * omitted (hosts without a session panel) the same "Open plan" icon
28
+ * opens the preview modal instead.
29
+ */
30
+ readonly onOpenPlan?: () => void;
17
31
  /** Disables the primary CTA (e.g., while an execution is active). */
18
32
  readonly disabled?: boolean;
33
+ /** When true, the primary button reads "Starting build…" (upload in flight). */
34
+ readonly buildPending?: boolean;
19
35
  /** Additional CSS classes for the root element. */
20
36
  readonly className?: string;
21
37
  }
22
38
  /**
23
- * Action surface for a plan that a completed Plan-mode execution published as a
24
- * `plan.md` artifact.
39
+ * The compact plan card a completed Plan turn's sole representation in the
40
+ * thread. The plan document itself lives in the session panel's plan tab
41
+ * (`PlanEditor`), Cursor-style: chat carries a recognizable, actionable card;
42
+ * the panel carries the document.
25
43
  *
26
- * It is rendered immediately below the plan message in the thread (which already
27
- * shows the plan as rich markdown the message renderer unwraps a model's
28
- * enclosing markdown fence), so this card deliberately holds **no** plan
29
- * content: the message is the document and this is its action bar. Rendering
30
- * the plan a second time here would duplicate the same text the message and the
31
- * "Open full" modal already show.
44
+ * Anatomy: a document-style identity block (plan icon, the plan's title, a
45
+ * `<name> · size` meta line) with the actions trailing open, copy, and
46
+ * download as icon-only secondaries (labelled via `aria-label`/`title`) and
47
+ * one prominent, themeable primary, **Build** so the next step is
48
+ * unmistakable.
32
49
  *
33
- * The hierarchy is the point: one prominent, themeable primary action —
34
- * **Build from plan** with **Open full** and **Download** as subdued
35
- * secondaries, so the next step is unmistakable. A small negative top margin
36
- * pulls the bar against the plan message so the two read as a single
37
- * first-class plan block.
50
+ * Action-label rule (shared with `PlanStreamingCard`, which keeps its
51
+ * labelled "Open plan"): a lone secondary keeps its text label; a row of
52
+ * secondaries competing with a primary collapses to icons, so the primary
53
+ * carries the card's one visible verb.
38
54
  *
39
- * Kept as its own thread item (not merged into the message) on purpose: merging
40
- * would change the streamed message item's identity at completion and remount
41
- * the just-streamed plan. Adjacent-and-attached gets the unified look with no
42
- * remount.
55
+ * Only the LATEST plan's card carries `onImplement`; a superseded plan's card
56
+ * is review-only (its `onOpenPlan` opens the document read-only), so a stale
57
+ * plan can never be implemented by accident.
43
58
  *
44
59
  * All visual properties flow through `--stgm-*` tokens; the component is
45
60
  * self-contained and embeddable.
@@ -1 +1 @@
1
- {"version":3,"file":"PlanArtifactCard.d.ts","sourceRoot":"","sources":["../../src/execution/PlanArtifactCard.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kEAAkE,CAAC;AAM1G,0CAA0C;AAC1C,MAAM,WAAW,qBAAqB;IACpC,yEAAyE;IACzE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,kEAAkE;IAClE,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC;;;;;OAKG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,0EAA0E;IAC1E,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IAClC,qEAAqE;IACrE,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,mDAAmD;IACnD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,gBAAgB,6DA2F3B,CAAC"}
1
+ {"version":3,"file":"PlanArtifactCard.d.ts","sourceRoot":"","sources":["../../src/execution/PlanArtifactCard.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kEAAkE,CAAC;AAO1G,0CAA0C;AAC1C,MAAM,WAAW,qBAAqB;IACpC,yEAAyE;IACzE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,kEAAkE;IAClE,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,gEAAgE;IAChE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IAClC;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACjC,qEAAqE;IACrE,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,gFAAgF;IAChF,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC,mDAAmD;IACnD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,gBAAgB,6DA4G3B,CAAC"}