@opengeni/react 4.5.0 → 4.6.1

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 (530) hide show
  1. package/dist/app/app-state.js +25 -25
  2. package/dist/app/components/Composer.js +25 -25
  3. package/dist/app/components/agent/agent-capability-picker.js +4 -4
  4. package/dist/app/components/artifacts/artifact-library.js +17 -17
  5. package/dist/app/components/artifacts/chat-interactive-block.js +16 -16
  6. package/dist/app/components/artifacts/inline-chat-image.js +29 -29
  7. package/dist/app/components/artifacts/retained-file-preview.js +33 -33
  8. package/dist/app/components/artifacts/retained-text-preview.js +5 -5
  9. package/dist/app/components/artifacts/site-audience.js +4 -4
  10. package/dist/app/components/artifacts/site-conversations.js +20 -20
  11. package/dist/app/components/artifacts/site-data.js +22 -20
  12. package/dist/app/components/artifacts/site-publishing.js +38 -38
  13. package/dist/app/components/artifacts/site-settings.js +47 -47
  14. package/dist/app/components/billing-class-mark.js +5 -5
  15. package/dist/app/components/capabilities/capability-detail-sheet.js +8 -8
  16. package/dist/app/components/capabilities/capability-logo-source.js +12 -12
  17. package/dist/app/components/capabilities/connector-tool-permissions.js +3 -3
  18. package/dist/app/components/capabilities/native-connect-setup.js +15 -15
  19. package/dist/app/components/capabilities/perform-capability-action.js +1 -1
  20. package/dist/app/components/capabilities/prepared-mcp-setup-card.js +15 -15
  21. package/dist/app/components/capabilities/session-capability-card.js +75 -75
  22. package/dist/app/components/capabilities/session-chrome-card.js +36 -36
  23. package/dist/app/components/capabilities/session-custom-mcp-card.js +20 -20
  24. package/dist/app/components/capabilities/session-github-card.js +24 -24
  25. package/dist/app/components/capabilities/session-machine-card.js +35 -35
  26. package/dist/app/components/capabilities/use-capabilities-catalog.js +3 -3
  27. package/dist/app/components/capabilities/use-connection-accounts.js +1 -1
  28. package/dist/app/components/command-menu/chat-status.js +19 -18
  29. package/dist/app/components/command-menu/chat-switcher.js +23 -22
  30. package/dist/app/components/command-menu/chat-switcher.js.map +1 -1
  31. package/dist/app/components/command-menu/command-menu.js +35 -34
  32. package/dist/app/components/command-menu/command-menu.js.map +1 -1
  33. package/dist/app/components/command-menu/shortcut-sheet.js +16 -16
  34. package/dist/app/components/composer-capabilities-menu-body.js +3 -3
  35. package/dist/app/components/composer-mobile-plus-panel.js +20 -20
  36. package/dist/app/components/composer-mobile-plus.js +1 -1
  37. package/dist/app/components/credit-required-gate.js +1 -1
  38. package/dist/app/components/credit-required-prompt.js +15 -13
  39. package/dist/app/components/credit-required-prompt.js.map +1 -1
  40. package/dist/app/components/credits/credit-refusal-notice.js +5 -3
  41. package/dist/app/components/desktop/app-shots.js +6 -6
  42. package/dist/app/components/desktop/this-computer.js +4 -4
  43. package/dist/app/components/feedback.js +4 -4
  44. package/dist/app/components/follow-up-repository-menu-body.js +8 -6
  45. package/dist/app/components/follow-up-repository-menu-body.js.map +1 -1
  46. package/dist/app/components/follow-up-repository-picker.js +4 -2
  47. package/dist/app/components/github-app-connect-launcher.js +1 -1
  48. package/dist/app/components/knowledge/agent-learning-settings.js +3 -3
  49. package/dist/app/components/machines/connect-machine-dialog.js +18 -18
  50. package/dist/app/components/markdown.js +9 -9
  51. package/dist/app/components/message-context-pills.js +2 -2
  52. package/dist/app/components/models/models-ui.js +8 -8
  53. package/dist/app/components/pickers.js +9 -9
  54. package/dist/app/components/rail/rail-context.js +2 -2
  55. package/dist/app/components/rail/rail-sections.js +63 -62
  56. package/dist/app/components/rail/session-header.js +48 -48
  57. package/dist/app/components/rail/session-list.js +62 -61
  58. package/dist/app/components/rail/session-row-content.js +4 -2
  59. package/dist/app/components/rail/session-row-hover-details.js +25 -24
  60. package/dist/app/components/rail/session-shell.js +100 -99
  61. package/dist/app/components/rail/site-session-group-heading.js +13 -12
  62. package/dist/app/components/repository-picker.js +8 -6
  63. package/dist/app/components/secrets/session-secrets-panel.js +3 -3
  64. package/dist/app/components/session/agent-configuration-panel.js +35 -35
  65. package/dist/app/components/session/artifact-session-page.js +2 -2
  66. package/dist/app/components/session/banners.js +14 -12
  67. package/dist/app/components/session/codex-account-indicator.js +10 -10
  68. package/dist/app/components/session/editable-artifacts-workspace.js +43 -43
  69. package/dist/app/components/session/failed-session-banner.js +10 -10
  70. package/dist/app/components/session/human-input.js +56 -56
  71. package/dist/app/components/session/inspector.js +90 -89
  72. package/dist/app/components/session/inspector.js.map +1 -1
  73. package/dist/app/components/session/message-actions.js +4 -4
  74. package/dist/app/components/session/message-resource-attachments.js +20 -20
  75. package/dist/app/components/session/model-account-indicator.js +9 -9
  76. package/dist/app/components/session/model-context-inspector.js +2 -2
  77. package/dist/app/components/session/model-recovery-notice.js +3 -3
  78. package/dist/app/components/session/new-session-settings-menu.js +11 -11
  79. package/dist/app/components/session/sandbox-switcher.js +14 -14
  80. package/dist/app/components/session/sandbox-workspace.js +73 -73
  81. package/dist/app/components/session/search-markdown-highlight.js +10 -10
  82. package/dist/app/components/session/search-results-view.js +11 -11
  83. package/dist/app/components/session/session-admin-access.js +9 -9
  84. package/dist/app/components/session/session-admission-notice.js +5 -5
  85. package/dist/app/components/session/session-machine-access-notice.js +5 -5
  86. package/dist/app/components/session/session-retention.js +4 -4
  87. package/dist/app/components/session/session-search-dialog.js +11 -11
  88. package/dist/app/components/session/session-skill-reviews.js +1 -1
  89. package/dist/app/components/session/session-tenancy-control.js +22 -22
  90. package/dist/app/components/session/session-usage-limit-section.js +10 -10
  91. package/dist/app/components/session/session-wait-status.js +9 -9
  92. package/dist/app/components/session/subagents.js +16 -16
  93. package/dist/app/components/session-connectors-menu-body.js +5 -5
  94. package/dist/app/components/settings/row-select.js +1 -1
  95. package/dist/app/components/transcription-settings.js +2 -2
  96. package/dist/app/components/ui/destructive-confirm.js +6 -6
  97. package/dist/app/components/usage/usage-entry.js +6 -6
  98. package/dist/app/components/workspace-composer-plus.js +21 -21
  99. package/dist/app/embed/session-app.js +265 -265
  100. package/dist/app/lib/actions/actions-provider.js +13 -13
  101. package/dist/app/lib/codex-usage-query.js +3 -3
  102. package/dist/app/lib/composer-connectors.js +13 -13
  103. package/dist/app/lib/console-text.js +2 -2
  104. package/dist/app/lib/credit-coverage.js +4 -2
  105. package/dist/app/lib/events.js +17 -17
  106. package/dist/app/lib/failed-session-copy.js +3 -3
  107. package/dist/app/lib/format.d.ts +2 -7
  108. package/dist/app/lib/format.js +5 -2
  109. package/dist/app/lib/model-access-onboarding.js +3 -3
  110. package/dist/app/lib/move-chat-to-machine.js +3 -3
  111. package/dist/app/lib/session-branch-cache.js +15 -14
  112. package/dist/app/lib/session-create.js +2 -2
  113. package/dist/app/lib/session-group-pagination.js +15 -14
  114. package/dist/app/lib/session-hover-facts.js +16 -15
  115. package/dist/app/lib/session-model.js +3 -3
  116. package/dist/app/lib/session-rail.js +9 -9
  117. package/dist/app/lib/session-rename.js +3 -3
  118. package/dist/app/lib/sessions-group.js +15 -14
  119. package/dist/app/lib/turn-failure-analytics.js +5 -5
  120. package/dist/app/lib/use-duplicate-site.js +2 -2
  121. package/dist/app/lib/use-follow-up-repositories.js +3 -3
  122. package/dist/app/lib/use-workspace-machines.js +5 -5
  123. package/dist/app/lib/use-workspace-model-catalog.js +5 -5
  124. package/dist/app/lib/use-workspace-rigs.js +4 -4
  125. package/dist/app/lib/workspace-navigation-preference.js +5 -5
  126. package/dist/app/lib/workspace-scope-context.js +4 -4
  127. package/dist/app/routes/artifacts.js +128 -127
  128. package/dist/app/routes/artifacts.js.map +1 -1
  129. package/dist/app/routes/retained-artifact.js +67 -67
  130. package/dist/app/routes/session-unavailable.js +3 -3
  131. package/dist/app/routes/session.js +169 -169
  132. package/dist/app/routes/sessions-index-hydration.js +3 -3
  133. package/dist/app/routes/sessions-index.js +121 -120
  134. package/dist/app/routes/site-view.js +89 -88
  135. package/dist/app/routes/site-view.js.map +1 -1
  136. package/dist/artifacts-document.js +4 -4
  137. package/dist/artifacts-presentation.js +4 -4
  138. package/dist/artifacts-spreadsheet.js +4 -4
  139. package/dist/artifacts.js +39 -39
  140. package/dist/{browser-viewer-QMCNV4RI.js → browser-viewer-YQC6BFMS.js} +7 -7
  141. package/dist/{chat-interactive-block-PMIAUXSO.js → chat-interactive-block-Z22YHDRU.js} +6 -6
  142. package/dist/{chunk-YJPKDRI2.js → chunk-24POWVUY.js} +15 -15
  143. package/dist/{chunk-35BC2FU2.js → chunk-26P7B46A.js} +19 -19
  144. package/dist/{chunk-ZVVT72MT.js → chunk-27EORKJ4.js} +2 -2
  145. package/dist/{chunk-2NC7NZCE.js → chunk-2K27S6LK.js} +6 -6
  146. package/dist/{chunk-2QBYDGWO.js → chunk-2LUO22FR.js} +9 -9
  147. package/dist/{chunk-FSP334UU.js → chunk-2SZ3KC5S.js} +2 -2
  148. package/dist/{chunk-3X5FKDYQ.js → chunk-32HA7DXJ.js} +26 -26
  149. package/dist/{chunk-CFFNT2OY.js → chunk-3GLAPCVI.js} +8 -8
  150. package/dist/{chunk-PCJLH45G.js → chunk-3MQM4ZOC.js} +3 -3
  151. package/dist/{chunk-BXQYAAVE.js → chunk-3XOISKZC.js} +4 -4
  152. package/dist/{chunk-IDXTASGN.js → chunk-3ZZOE4SN.js} +4 -4
  153. package/dist/{chunk-N3ZP4IDU.js → chunk-45WYYFP6.js} +2 -2
  154. package/dist/{chunk-NEK4WB5P.js → chunk-467VRP4E.js} +3 -3
  155. package/dist/{chunk-PCFK7HKD.js → chunk-4BF3DD6R.js} +18 -18
  156. package/dist/{chunk-552UYIQ7.js → chunk-4ICPJZAB.js} +20 -20
  157. package/dist/{chunk-ITX2TB4K.js → chunk-4PC7LIQK.js} +6 -6
  158. package/dist/{chunk-D5OWJZQR.js → chunk-4RY64KQY.js} +2 -2
  159. package/dist/{chunk-PUTS4DYW.js → chunk-4VJOZJDV.js} +2 -2
  160. package/dist/{chunk-7P4AQMGA.js → chunk-4XKT4ENZ.js} +12 -12
  161. package/dist/{chunk-4VK2R5QC.js → chunk-4XO346BW.js} +3 -3
  162. package/dist/{chunk-IBA5FMRE.js → chunk-65K5LV4L.js} +136 -136
  163. package/dist/{chunk-S2U4CDAC.js → chunk-6AFSZKZA.js} +149 -149
  164. package/dist/chunk-6AFSZKZA.js.map +1 -0
  165. package/dist/{chunk-5Y2FPLZE.js → chunk-6JF7C3U3.js} +8 -8
  166. package/dist/{chunk-LQ47YL6E.js → chunk-6K3WNTRI.js} +2 -2
  167. package/dist/{chunk-UUGR3X5I.js → chunk-6MRY2RUZ.js} +5 -5
  168. package/dist/{chunk-CCR33J7L.js → chunk-6N7W3TOV.js} +2 -2
  169. package/dist/chunk-6NXQCOLD.js +71 -0
  170. package/dist/chunk-6NXQCOLD.js.map +1 -0
  171. package/dist/{chunk-ILDOW2IQ.js → chunk-6PQBKMUL.js} +3 -3
  172. package/dist/{chunk-SY2AAZNB.js → chunk-6VITVQ23.js} +4 -4
  173. package/dist/{chunk-AIEXYO2X.js → chunk-6YDXUE5H.js} +2 -2
  174. package/dist/{chunk-GXW2I2M2.js → chunk-72XEFLMD.js} +2 -2
  175. package/dist/{chunk-KEXYBG7Q.js → chunk-74NIHMAT.js} +3 -3
  176. package/dist/{chunk-FTX5CNHA.js → chunk-767WCGAX.js} +4 -4
  177. package/dist/{chunk-5MJHH72T.js → chunk-7EGWIME2.js} +4 -4
  178. package/dist/{chunk-Z7IGO5EA.js → chunk-7H2D4VNU.js} +2 -2
  179. package/dist/{chunk-EJ7WARW7.js → chunk-7J7PZB4S.js} +2 -2
  180. package/dist/{chunk-4SAGYEVB.js → chunk-7JZSFJHB.js} +2 -2
  181. package/dist/{chunk-AJPW3SV4.js → chunk-7OIBLMDP.js} +2 -2
  182. package/dist/{chunk-SM5QX6UK.js → chunk-A2EWJQXX.js} +4 -4
  183. package/dist/{chunk-5YFY4SFC.js → chunk-AJ7PY4FJ.js} +2 -2
  184. package/dist/{chunk-RFLYID6H.js → chunk-AT4K4F6S.js} +4 -4
  185. package/dist/{chunk-YV56F4UP.js → chunk-AW3QEFOF.js} +179 -179
  186. package/dist/chunk-AW3QEFOF.js.map +1 -0
  187. package/dist/{chunk-3ABPIUCK.js → chunk-B254JG72.js} +2 -2
  188. package/dist/{chunk-7TCT7KPQ.js → chunk-BCFHMBMK.js} +228 -228
  189. package/dist/chunk-BCFHMBMK.js.map +1 -0
  190. package/dist/{chunk-TJQDL3JH.js → chunk-BPD4IJBG.js} +2 -2
  191. package/dist/{chunk-S37GP7LX.js → chunk-BQWUXC55.js} +21 -21
  192. package/dist/{chunk-DGLRZMXL.js → chunk-BWKZEW6K.js} +3 -3
  193. package/dist/{chunk-LF5CBAOS.js → chunk-C535KSTY.js} +4 -4
  194. package/dist/{chunk-MOKYT3X3.js → chunk-C6JL6PBL.js} +3 -3
  195. package/dist/{chunk-4XQC7VLT.js → chunk-CA64OZLZ.js} +13 -13
  196. package/dist/{chunk-EQE3MNQN.js → chunk-CEQUNJJY.js} +5 -5
  197. package/dist/{chunk-JO6R5EXF.js → chunk-CKA4SJRK.js} +5 -5
  198. package/dist/{chunk-LHLK7FUA.js → chunk-CPKD2YGK.js} +6 -6
  199. package/dist/{chunk-4GLLWX33.js → chunk-CYO5HL4C.js} +17 -33
  200. package/dist/chunk-CYO5HL4C.js.map +1 -0
  201. package/dist/{chunk-5FEN3KYH.js → chunk-D4QOZXPM.js} +11 -11
  202. package/dist/{chunk-UP7I3W6O.js → chunk-DAQG3C4W.js} +55 -55
  203. package/dist/{chunk-RIYZFKIM.js → chunk-DNLXQUBX.js} +36 -36
  204. package/dist/{chunk-UYNCMZX5.js → chunk-DNWBLT4U.js} +4 -4
  205. package/dist/{chunk-MXLKI7BI.js → chunk-DNYD7AUG.js} +3 -3
  206. package/dist/{chunk-7KIENXRE.js → chunk-DZH2HTTB.js} +1 -1
  207. package/dist/{chunk-CD3MO3IC.js → chunk-E36IC3LU.js} +2 -2
  208. package/dist/{chunk-Z6E6TUAE.js → chunk-EURDMOXZ.js} +2 -2
  209. package/dist/{chunk-22JFMNMF.js → chunk-F2RMKGDQ.js} +4 -4
  210. package/dist/{chunk-62VER7O4.js → chunk-F3NERYBQ.js} +6 -6
  211. package/dist/{chunk-YXA2EKV3.js → chunk-F4B2YYCN.js} +3 -3
  212. package/dist/{chunk-ENS6E4RZ.js → chunk-FH75NNLB.js} +2 -2
  213. package/dist/{chunk-GGV4NSG3.js → chunk-FMATVQFW.js} +8 -8
  214. package/dist/{chunk-7XO7YKPC.js → chunk-FVCLVASD.js} +73 -73
  215. package/dist/{chunk-3RQUWFZT.js → chunk-G3FU2IF7.js} +67 -67
  216. package/dist/{chunk-3RQUWFZT.js.map → chunk-G3FU2IF7.js.map} +1 -1
  217. package/dist/{chunk-HU6JTNWF.js → chunk-GMVKCEBG.js} +2 -2
  218. package/dist/{chunk-SWCLN6JE.js → chunk-GRNE5ANU.js} +2 -2
  219. package/dist/{chunk-FWOBNL2A.js → chunk-GTR2WUBA.js} +1 -1
  220. package/dist/{chunk-BT2MVGHT.js → chunk-GTR5NLVP.js} +2 -2
  221. package/dist/{chunk-J22HD2PB.js → chunk-GUIZDI5T.js} +6 -6
  222. package/dist/{chunk-ULJAOMJA.js → chunk-GXK4CUAB.js} +4 -4
  223. package/dist/{chunk-XN7NSPE6.js → chunk-HCCSAECI.js} +2 -2
  224. package/dist/{chunk-22FFOHPT.js → chunk-HJTTDLF6.js} +11 -11
  225. package/dist/{chunk-YEROLKOA.js → chunk-HSQRYJ4P.js} +15 -15
  226. package/dist/{chunk-73WI7FL2.js → chunk-HTKVYEVB.js} +19 -19
  227. package/dist/{chunk-4RMN4E2Y.js → chunk-HXZIX7MR.js} +11 -11
  228. package/dist/{chunk-DJFTH2DI.js → chunk-I57HZMMA.js} +2 -2
  229. package/dist/{chunk-3GU7AWG7.js → chunk-I74J2UZ2.js} +19 -19
  230. package/dist/{chunk-FDAV72IX.js → chunk-IC7KNOBB.js} +7 -7
  231. package/dist/{chunk-5TLEWXAB.js → chunk-IKQMSROV.js} +1 -13
  232. package/dist/chunk-IKQMSROV.js.map +1 -0
  233. package/dist/{chunk-TIQPKOFW.js → chunk-IWIMIRV3.js} +4 -4
  234. package/dist/{chunk-U6MPB3K6.js → chunk-JI6WPLZB.js} +9 -9
  235. package/dist/{chunk-GT7JFQ4E.js → chunk-JJ7VMIEQ.js} +119 -119
  236. package/dist/{chunk-GDLDBR6B.js → chunk-JQKURO3S.js} +2 -2
  237. package/dist/{chunk-O2SBHS2N.js → chunk-K4FDZVMQ.js} +2 -2
  238. package/dist/{chunk-JXT5QDJC.js → chunk-KNFDWNCH.js} +5 -5
  239. package/dist/{chunk-TLL22FFO.js → chunk-KUO5WFXG.js} +2 -2
  240. package/dist/{chunk-KUNFUSZ7.js → chunk-KVMFT6FN.js} +2 -2
  241. package/dist/{chunk-5W6ZDKRR.js → chunk-KW53DBY7.js} +5 -5
  242. package/dist/{chunk-5DSKMG2I.js → chunk-LEXPBQ56.js} +4 -4
  243. package/dist/{chunk-3RMKPHBL.js → chunk-LG67ZNRU.js} +3 -3
  244. package/dist/{chunk-WKHUZIOW.js → chunk-LJZNHDKI.js} +2 -2
  245. package/dist/{chunk-4YXAQMTD.js → chunk-LR7U3HCD.js} +12 -12
  246. package/dist/{chunk-2FPS5H2D.js → chunk-M5E3CKSE.js} +2 -2
  247. package/dist/{chunk-3PEXVG4D.js → chunk-M7A226EQ.js} +2 -2
  248. package/dist/{chunk-PO3BH3KQ.js → chunk-M7YEZR6X.js} +2 -2
  249. package/dist/{chunk-YYCOSTUU.js → chunk-MB2DTUEG.js} +17 -17
  250. package/dist/{chunk-HQWVDQXW.js → chunk-MDRLP5DO.js} +7 -7
  251. package/dist/{chunk-ACL2V2KE.js → chunk-MHIYYHCL.js} +23 -23
  252. package/dist/{chunk-JQCGPTZ6.js → chunk-MM7OKOTE.js} +9 -9
  253. package/dist/{chunk-5W7KJ5NQ.js → chunk-MY6VZVCP.js} +37 -37
  254. package/dist/{chunk-CMLJSF2F.js → chunk-NF6Q4XTN.js} +11 -11
  255. package/dist/{chunk-EYS4ZOF5.js → chunk-NML44AW2.js} +2 -2
  256. package/dist/{chunk-QFMLAT7L.js → chunk-NPDL4W4Y.js} +183 -183
  257. package/dist/{chunk-TL7BOFFL.js → chunk-NURA4KUR.js} +3 -3
  258. package/dist/{chunk-3STBLX4O.js → chunk-NV5OYV3G.js} +8 -8
  259. package/dist/{chunk-MIECLOQC.js → chunk-NZMQDUOD.js} +7 -7
  260. package/dist/{chunk-SSOO4GWN.js → chunk-O4AWXTZQ.js} +116 -116
  261. package/dist/{chunk-SSOO4GWN.js.map → chunk-O4AWXTZQ.js.map} +1 -1
  262. package/dist/{chunk-CP7ZQHBW.js → chunk-O4DYOSOL.js} +13 -13
  263. package/dist/{chunk-VH5EGTH2.js → chunk-O5UOCMH4.js} +3 -3
  264. package/dist/{chunk-Y5BSA3I7.js → chunk-O73DRA77.js} +5 -5
  265. package/dist/{chunk-GRSODLVO.js → chunk-OANSIX34.js} +4 -4
  266. package/dist/{chunk-RQNZDTKT.js → chunk-OHG2UQ2O.js} +16 -16
  267. package/dist/{chunk-5JHRMUAZ.js → chunk-OLUG4IFF.js} +12 -12
  268. package/dist/{chunk-EPWD4KRA.js → chunk-OOEO4MKY.js} +2 -2
  269. package/dist/{chunk-7NPCEBZE.js → chunk-OWJD3V4V.js} +5 -5
  270. package/dist/{chunk-4HEXNAFI.js → chunk-PEGNFZ3F.js} +19 -19
  271. package/dist/chunk-PEGNFZ3F.js.map +1 -0
  272. package/dist/{chunk-CDEXRJB6.js → chunk-PEKPWK5M.js} +4 -4
  273. package/dist/{chunk-FWYEZ3LE.js → chunk-PQCFW2KT.js} +35 -35
  274. package/dist/{chunk-LMPTC4CX.js → chunk-QLDMF7MH.js} +2 -2
  275. package/dist/{chunk-JM4HQPAI.js → chunk-QZRDCFHI.js} +5 -5
  276. package/dist/{chunk-DYJGYGPB.js → chunk-R5YZ3ROM.js} +2 -2
  277. package/dist/{chunk-I6KIQKU6.js → chunk-RABKQFTA.js} +3 -3
  278. package/dist/{chunk-7FJMRJDG.js → chunk-RNBH5TSM.js} +2 -2
  279. package/dist/{chunk-J7FBBLHF.js → chunk-RXMIXKB3.js} +37 -37
  280. package/dist/{chunk-JFK7NTEA.js → chunk-S6WJ6TUT.js} +7 -1
  281. package/dist/{chunk-JFK7NTEA.js.map → chunk-S6WJ6TUT.js.map} +1 -1
  282. package/dist/{chunk-A4BD4ZVB.js → chunk-S7PVL7XH.js} +4 -4
  283. package/dist/{chunk-4LPA25NQ.js → chunk-SD2K5ZN5.js} +4 -4
  284. package/dist/{chunk-UXXFMF4X.js → chunk-SJPAKWWP.js} +2 -2
  285. package/dist/{chunk-FRP64DEK.js → chunk-SK57RWSA.js} +2 -2
  286. package/dist/{chunk-ZS2UQ3DV.js → chunk-SOXZ4LGS.js} +4 -4
  287. package/dist/{chunk-WSZQNTVN.js → chunk-SSZROOOI.js} +2 -2
  288. package/dist/{chunk-MCTTONOW.js → chunk-TM2ZLY3Q.js} +26 -26
  289. package/dist/{chunk-J5MEDX7C.js → chunk-U47YDYLQ.js} +8 -8
  290. package/dist/{chunk-TV6BWONY.js → chunk-UHMMRQGU.js} +3 -3
  291. package/dist/{chunk-YVBHGMKC.js → chunk-VAIESMPY.js} +4 -4
  292. package/dist/{chunk-WCMG4HYI.js → chunk-W57QFLQD.js} +10 -10
  293. package/dist/{chunk-RYSRFAHN.js → chunk-WLZVXCPZ.js} +20 -20
  294. package/dist/{chunk-PFAUGEV5.js → chunk-WN2MIB4Q.js} +2 -2
  295. package/dist/{chunk-5FA455GR.js → chunk-WNG757ID.js} +4 -4
  296. package/dist/{chunk-G4HQUBO4.js → chunk-WSLPZ43N.js} +12 -12
  297. package/dist/{chunk-QXEDIDBZ.js → chunk-WWM7WVD2.js} +2 -2
  298. package/dist/{chunk-V4QZ7UBK.js → chunk-WYEPUXGL.js} +2 -2
  299. package/dist/{chunk-AX6YJA5U.js → chunk-X7Z4B5GK.js} +2 -2
  300. package/dist/{chunk-GZS37O3G.js → chunk-XDCZBOEY.js} +1 -1
  301. package/dist/{chunk-52WK2GGK.js → chunk-XGE75VPK.js} +8 -8
  302. package/dist/{chunk-XMNUZUUA.js → chunk-Z2DAWUO3.js} +6 -6
  303. package/dist/{chunk-BCM7C3MJ.js → chunk-Z4GJB24B.js} +8 -8
  304. package/dist/{chunk-LT4J7RHI.js → chunk-ZPZYYSHW.js} +12 -12
  305. package/dist/{chunk-GHHM6WN4.js → chunk-ZRB4M3GG.js} +4 -4
  306. package/dist/{chunk-FFNPUSVO.js → chunk-ZWACUOU5.js} +7 -7
  307. package/dist/{chunk-ZEIFJ6PX.js → chunk-ZZUKJ5HQ.js} +7 -7
  308. package/dist/composer.js +13 -13
  309. package/dist/{computer-viewer-25AJIDYA.js → computer-viewer-BWVNDFTO.js} +8 -8
  310. package/dist/connect.js +11 -11
  311. package/dist/desktop.js +2 -2
  312. package/dist/editor.js +2 -2
  313. package/dist/{embedded-new-voice-RZZEJT6M.js → embedded-new-voice-GBXSZ3TO.js} +8 -8
  314. package/dist/{embedded-voice-6OKSSPLW.js → embedded-voice-MGI7EK7C.js} +8 -8
  315. package/dist/{fleet-decision-row-NN2HXDX3.js → fleet-decision-row-35S3GAUN.js} +2 -2
  316. package/dist/index.js +220 -220
  317. package/dist/interaction.js +9 -9
  318. package/dist/{latest-question-2PFWQSSG.js → latest-question-4WDBECXB.js} +2 -2
  319. package/dist/machines.js +4 -4
  320. package/dist/messages/en.d.ts +6 -0
  321. package/dist/messages.js +1 -1
  322. package/dist/{model-policy-picker-menu-VVFGGAI6.js → model-policy-picker-menu-KP53N6UJ.js} +6 -6
  323. package/dist/native-previews.js +3 -3
  324. package/dist/{platform-activity-row-ENQVIFTL.js → platform-activity-row-ISMXR7NJ.js} +2 -2
  325. package/dist/{queue-surface-implementation-4SHOQPQQ.js → queue-surface-implementation-ULW7DDJA.js} +7 -7
  326. package/dist/realtime.js +7 -7
  327. package/dist/{sandbox-files-CCOTGXXA.js → sandbox-files-QYSD4XCZ.js} +10 -10
  328. package/dist/session-agents-model.d.ts +23 -1
  329. package/dist/session-agents-model.js +6 -1
  330. package/dist/session-app.js +265 -265
  331. package/dist/session-list-model.js +2 -2
  332. package/dist/{session-realtime-JNKDSGH7.js → session-realtime-JXRLPNUH.js} +3 -3
  333. package/dist/session-realtime.js +2 -2
  334. package/dist/session-ui.js +68 -68
  335. package/dist/session.js +22 -22
  336. package/dist/sites.js +2 -2
  337. package/dist/terminal.js +2 -2
  338. package/dist/this-computer.js +3 -3
  339. package/dist/{timeline-annotation-markers-KHNYNY2J.js → timeline-annotation-markers-OJYKHBEO.js} +5 -5
  340. package/dist/{timeline-annotation-selection-AXEDJHBP.js → timeline-annotation-selection-6OAZLXFU.js} +7 -7
  341. package/dist/{timeline-annotations-dialog-AV4ZBXRC.js → timeline-annotations-dialog-5M6DP5FX.js} +9 -9
  342. package/dist/timeline-model.js +27 -27
  343. package/dist/ui/access-list.js +20 -20
  344. package/dist/ui/choice-cards.js +2 -2
  345. package/dist/ui/detail-page.js +2 -2
  346. package/dist/ui/detail-sheet.js +2 -2
  347. package/dist/ui/diff-view.js +2 -2
  348. package/dist/ui/disclosure.js +4 -4
  349. package/dist/ui/flush-form-page.js +3 -3
  350. package/dist/ui/form-dialog.js +2 -2
  351. package/dist/ui/list-row.js +5 -5
  352. package/dist/ui/revision-history.js +11 -11
  353. package/dist/ui/role-select.js +6 -6
  354. package/dist/ui/settings-nav.js +3 -3
  355. package/dist/usage.js +2 -2
  356. package/dist/workbench.js +11 -11
  357. package/package.json +4 -4
  358. package/src/app/components/session/subagents.tsx +6 -28
  359. package/src/app/lib/format.tsx +2 -17
  360. package/src/messages/en.ts +6 -0
  361. package/src/session-agents-model.ts +75 -1
  362. package/dist/chunk-4GLLWX33.js.map +0 -1
  363. package/dist/chunk-4HEXNAFI.js.map +0 -1
  364. package/dist/chunk-5TLEWXAB.js.map +0 -1
  365. package/dist/chunk-7TCT7KPQ.js.map +0 -1
  366. package/dist/chunk-IE5YUCOT.js +0 -26
  367. package/dist/chunk-IE5YUCOT.js.map +0 -1
  368. package/dist/chunk-S2U4CDAC.js.map +0 -1
  369. package/dist/chunk-YV56F4UP.js.map +0 -1
  370. /package/dist/{browser-viewer-QMCNV4RI.js.map → browser-viewer-YQC6BFMS.js.map} +0 -0
  371. /package/dist/{chat-interactive-block-PMIAUXSO.js.map → chat-interactive-block-Z22YHDRU.js.map} +0 -0
  372. /package/dist/{chunk-YJPKDRI2.js.map → chunk-24POWVUY.js.map} +0 -0
  373. /package/dist/{chunk-35BC2FU2.js.map → chunk-26P7B46A.js.map} +0 -0
  374. /package/dist/{chunk-ZVVT72MT.js.map → chunk-27EORKJ4.js.map} +0 -0
  375. /package/dist/{chunk-2NC7NZCE.js.map → chunk-2K27S6LK.js.map} +0 -0
  376. /package/dist/{chunk-2QBYDGWO.js.map → chunk-2LUO22FR.js.map} +0 -0
  377. /package/dist/{chunk-FSP334UU.js.map → chunk-2SZ3KC5S.js.map} +0 -0
  378. /package/dist/{chunk-3X5FKDYQ.js.map → chunk-32HA7DXJ.js.map} +0 -0
  379. /package/dist/{chunk-CFFNT2OY.js.map → chunk-3GLAPCVI.js.map} +0 -0
  380. /package/dist/{chunk-PCJLH45G.js.map → chunk-3MQM4ZOC.js.map} +0 -0
  381. /package/dist/{chunk-BXQYAAVE.js.map → chunk-3XOISKZC.js.map} +0 -0
  382. /package/dist/{chunk-IDXTASGN.js.map → chunk-3ZZOE4SN.js.map} +0 -0
  383. /package/dist/{chunk-N3ZP4IDU.js.map → chunk-45WYYFP6.js.map} +0 -0
  384. /package/dist/{chunk-NEK4WB5P.js.map → chunk-467VRP4E.js.map} +0 -0
  385. /package/dist/{chunk-PCFK7HKD.js.map → chunk-4BF3DD6R.js.map} +0 -0
  386. /package/dist/{chunk-552UYIQ7.js.map → chunk-4ICPJZAB.js.map} +0 -0
  387. /package/dist/{chunk-ITX2TB4K.js.map → chunk-4PC7LIQK.js.map} +0 -0
  388. /package/dist/{chunk-D5OWJZQR.js.map → chunk-4RY64KQY.js.map} +0 -0
  389. /package/dist/{chunk-PUTS4DYW.js.map → chunk-4VJOZJDV.js.map} +0 -0
  390. /package/dist/{chunk-7P4AQMGA.js.map → chunk-4XKT4ENZ.js.map} +0 -0
  391. /package/dist/{chunk-4VK2R5QC.js.map → chunk-4XO346BW.js.map} +0 -0
  392. /package/dist/{chunk-IBA5FMRE.js.map → chunk-65K5LV4L.js.map} +0 -0
  393. /package/dist/{chunk-5Y2FPLZE.js.map → chunk-6JF7C3U3.js.map} +0 -0
  394. /package/dist/{chunk-LQ47YL6E.js.map → chunk-6K3WNTRI.js.map} +0 -0
  395. /package/dist/{chunk-UUGR3X5I.js.map → chunk-6MRY2RUZ.js.map} +0 -0
  396. /package/dist/{chunk-CCR33J7L.js.map → chunk-6N7W3TOV.js.map} +0 -0
  397. /package/dist/{chunk-ILDOW2IQ.js.map → chunk-6PQBKMUL.js.map} +0 -0
  398. /package/dist/{chunk-SY2AAZNB.js.map → chunk-6VITVQ23.js.map} +0 -0
  399. /package/dist/{chunk-AIEXYO2X.js.map → chunk-6YDXUE5H.js.map} +0 -0
  400. /package/dist/{chunk-GXW2I2M2.js.map → chunk-72XEFLMD.js.map} +0 -0
  401. /package/dist/{chunk-KEXYBG7Q.js.map → chunk-74NIHMAT.js.map} +0 -0
  402. /package/dist/{chunk-FTX5CNHA.js.map → chunk-767WCGAX.js.map} +0 -0
  403. /package/dist/{chunk-5MJHH72T.js.map → chunk-7EGWIME2.js.map} +0 -0
  404. /package/dist/{chunk-Z7IGO5EA.js.map → chunk-7H2D4VNU.js.map} +0 -0
  405. /package/dist/{chunk-EJ7WARW7.js.map → chunk-7J7PZB4S.js.map} +0 -0
  406. /package/dist/{chunk-4SAGYEVB.js.map → chunk-7JZSFJHB.js.map} +0 -0
  407. /package/dist/{chunk-AJPW3SV4.js.map → chunk-7OIBLMDP.js.map} +0 -0
  408. /package/dist/{chunk-SM5QX6UK.js.map → chunk-A2EWJQXX.js.map} +0 -0
  409. /package/dist/{chunk-5YFY4SFC.js.map → chunk-AJ7PY4FJ.js.map} +0 -0
  410. /package/dist/{chunk-RFLYID6H.js.map → chunk-AT4K4F6S.js.map} +0 -0
  411. /package/dist/{chunk-3ABPIUCK.js.map → chunk-B254JG72.js.map} +0 -0
  412. /package/dist/{chunk-TJQDL3JH.js.map → chunk-BPD4IJBG.js.map} +0 -0
  413. /package/dist/{chunk-S37GP7LX.js.map → chunk-BQWUXC55.js.map} +0 -0
  414. /package/dist/{chunk-DGLRZMXL.js.map → chunk-BWKZEW6K.js.map} +0 -0
  415. /package/dist/{chunk-LF5CBAOS.js.map → chunk-C535KSTY.js.map} +0 -0
  416. /package/dist/{chunk-MOKYT3X3.js.map → chunk-C6JL6PBL.js.map} +0 -0
  417. /package/dist/{chunk-4XQC7VLT.js.map → chunk-CA64OZLZ.js.map} +0 -0
  418. /package/dist/{chunk-EQE3MNQN.js.map → chunk-CEQUNJJY.js.map} +0 -0
  419. /package/dist/{chunk-JO6R5EXF.js.map → chunk-CKA4SJRK.js.map} +0 -0
  420. /package/dist/{chunk-LHLK7FUA.js.map → chunk-CPKD2YGK.js.map} +0 -0
  421. /package/dist/{chunk-5FEN3KYH.js.map → chunk-D4QOZXPM.js.map} +0 -0
  422. /package/dist/{chunk-UP7I3W6O.js.map → chunk-DAQG3C4W.js.map} +0 -0
  423. /package/dist/{chunk-RIYZFKIM.js.map → chunk-DNLXQUBX.js.map} +0 -0
  424. /package/dist/{chunk-UYNCMZX5.js.map → chunk-DNWBLT4U.js.map} +0 -0
  425. /package/dist/{chunk-MXLKI7BI.js.map → chunk-DNYD7AUG.js.map} +0 -0
  426. /package/dist/{chunk-7KIENXRE.js.map → chunk-DZH2HTTB.js.map} +0 -0
  427. /package/dist/{chunk-CD3MO3IC.js.map → chunk-E36IC3LU.js.map} +0 -0
  428. /package/dist/{chunk-Z6E6TUAE.js.map → chunk-EURDMOXZ.js.map} +0 -0
  429. /package/dist/{chunk-22JFMNMF.js.map → chunk-F2RMKGDQ.js.map} +0 -0
  430. /package/dist/{chunk-62VER7O4.js.map → chunk-F3NERYBQ.js.map} +0 -0
  431. /package/dist/{chunk-YXA2EKV3.js.map → chunk-F4B2YYCN.js.map} +0 -0
  432. /package/dist/{chunk-ENS6E4RZ.js.map → chunk-FH75NNLB.js.map} +0 -0
  433. /package/dist/{chunk-GGV4NSG3.js.map → chunk-FMATVQFW.js.map} +0 -0
  434. /package/dist/{chunk-7XO7YKPC.js.map → chunk-FVCLVASD.js.map} +0 -0
  435. /package/dist/{chunk-HU6JTNWF.js.map → chunk-GMVKCEBG.js.map} +0 -0
  436. /package/dist/{chunk-SWCLN6JE.js.map → chunk-GRNE5ANU.js.map} +0 -0
  437. /package/dist/{chunk-FWOBNL2A.js.map → chunk-GTR2WUBA.js.map} +0 -0
  438. /package/dist/{chunk-BT2MVGHT.js.map → chunk-GTR5NLVP.js.map} +0 -0
  439. /package/dist/{chunk-J22HD2PB.js.map → chunk-GUIZDI5T.js.map} +0 -0
  440. /package/dist/{chunk-ULJAOMJA.js.map → chunk-GXK4CUAB.js.map} +0 -0
  441. /package/dist/{chunk-XN7NSPE6.js.map → chunk-HCCSAECI.js.map} +0 -0
  442. /package/dist/{chunk-22FFOHPT.js.map → chunk-HJTTDLF6.js.map} +0 -0
  443. /package/dist/{chunk-YEROLKOA.js.map → chunk-HSQRYJ4P.js.map} +0 -0
  444. /package/dist/{chunk-73WI7FL2.js.map → chunk-HTKVYEVB.js.map} +0 -0
  445. /package/dist/{chunk-4RMN4E2Y.js.map → chunk-HXZIX7MR.js.map} +0 -0
  446. /package/dist/{chunk-DJFTH2DI.js.map → chunk-I57HZMMA.js.map} +0 -0
  447. /package/dist/{chunk-3GU7AWG7.js.map → chunk-I74J2UZ2.js.map} +0 -0
  448. /package/dist/{chunk-FDAV72IX.js.map → chunk-IC7KNOBB.js.map} +0 -0
  449. /package/dist/{chunk-TIQPKOFW.js.map → chunk-IWIMIRV3.js.map} +0 -0
  450. /package/dist/{chunk-U6MPB3K6.js.map → chunk-JI6WPLZB.js.map} +0 -0
  451. /package/dist/{chunk-GT7JFQ4E.js.map → chunk-JJ7VMIEQ.js.map} +0 -0
  452. /package/dist/{chunk-GDLDBR6B.js.map → chunk-JQKURO3S.js.map} +0 -0
  453. /package/dist/{chunk-O2SBHS2N.js.map → chunk-K4FDZVMQ.js.map} +0 -0
  454. /package/dist/{chunk-JXT5QDJC.js.map → chunk-KNFDWNCH.js.map} +0 -0
  455. /package/dist/{chunk-TLL22FFO.js.map → chunk-KUO5WFXG.js.map} +0 -0
  456. /package/dist/{chunk-KUNFUSZ7.js.map → chunk-KVMFT6FN.js.map} +0 -0
  457. /package/dist/{chunk-5W6ZDKRR.js.map → chunk-KW53DBY7.js.map} +0 -0
  458. /package/dist/{chunk-5DSKMG2I.js.map → chunk-LEXPBQ56.js.map} +0 -0
  459. /package/dist/{chunk-3RMKPHBL.js.map → chunk-LG67ZNRU.js.map} +0 -0
  460. /package/dist/{chunk-WKHUZIOW.js.map → chunk-LJZNHDKI.js.map} +0 -0
  461. /package/dist/{chunk-4YXAQMTD.js.map → chunk-LR7U3HCD.js.map} +0 -0
  462. /package/dist/{chunk-2FPS5H2D.js.map → chunk-M5E3CKSE.js.map} +0 -0
  463. /package/dist/{chunk-3PEXVG4D.js.map → chunk-M7A226EQ.js.map} +0 -0
  464. /package/dist/{chunk-PO3BH3KQ.js.map → chunk-M7YEZR6X.js.map} +0 -0
  465. /package/dist/{chunk-YYCOSTUU.js.map → chunk-MB2DTUEG.js.map} +0 -0
  466. /package/dist/{chunk-HQWVDQXW.js.map → chunk-MDRLP5DO.js.map} +0 -0
  467. /package/dist/{chunk-ACL2V2KE.js.map → chunk-MHIYYHCL.js.map} +0 -0
  468. /package/dist/{chunk-JQCGPTZ6.js.map → chunk-MM7OKOTE.js.map} +0 -0
  469. /package/dist/{chunk-5W7KJ5NQ.js.map → chunk-MY6VZVCP.js.map} +0 -0
  470. /package/dist/{chunk-CMLJSF2F.js.map → chunk-NF6Q4XTN.js.map} +0 -0
  471. /package/dist/{chunk-EYS4ZOF5.js.map → chunk-NML44AW2.js.map} +0 -0
  472. /package/dist/{chunk-QFMLAT7L.js.map → chunk-NPDL4W4Y.js.map} +0 -0
  473. /package/dist/{chunk-TL7BOFFL.js.map → chunk-NURA4KUR.js.map} +0 -0
  474. /package/dist/{chunk-3STBLX4O.js.map → chunk-NV5OYV3G.js.map} +0 -0
  475. /package/dist/{chunk-MIECLOQC.js.map → chunk-NZMQDUOD.js.map} +0 -0
  476. /package/dist/{chunk-CP7ZQHBW.js.map → chunk-O4DYOSOL.js.map} +0 -0
  477. /package/dist/{chunk-VH5EGTH2.js.map → chunk-O5UOCMH4.js.map} +0 -0
  478. /package/dist/{chunk-Y5BSA3I7.js.map → chunk-O73DRA77.js.map} +0 -0
  479. /package/dist/{chunk-GRSODLVO.js.map → chunk-OANSIX34.js.map} +0 -0
  480. /package/dist/{chunk-RQNZDTKT.js.map → chunk-OHG2UQ2O.js.map} +0 -0
  481. /package/dist/{chunk-5JHRMUAZ.js.map → chunk-OLUG4IFF.js.map} +0 -0
  482. /package/dist/{chunk-EPWD4KRA.js.map → chunk-OOEO4MKY.js.map} +0 -0
  483. /package/dist/{chunk-7NPCEBZE.js.map → chunk-OWJD3V4V.js.map} +0 -0
  484. /package/dist/{chunk-CDEXRJB6.js.map → chunk-PEKPWK5M.js.map} +0 -0
  485. /package/dist/{chunk-FWYEZ3LE.js.map → chunk-PQCFW2KT.js.map} +0 -0
  486. /package/dist/{chunk-LMPTC4CX.js.map → chunk-QLDMF7MH.js.map} +0 -0
  487. /package/dist/{chunk-JM4HQPAI.js.map → chunk-QZRDCFHI.js.map} +0 -0
  488. /package/dist/{chunk-DYJGYGPB.js.map → chunk-R5YZ3ROM.js.map} +0 -0
  489. /package/dist/{chunk-I6KIQKU6.js.map → chunk-RABKQFTA.js.map} +0 -0
  490. /package/dist/{chunk-7FJMRJDG.js.map → chunk-RNBH5TSM.js.map} +0 -0
  491. /package/dist/{chunk-J7FBBLHF.js.map → chunk-RXMIXKB3.js.map} +0 -0
  492. /package/dist/{chunk-A4BD4ZVB.js.map → chunk-S7PVL7XH.js.map} +0 -0
  493. /package/dist/{chunk-4LPA25NQ.js.map → chunk-SD2K5ZN5.js.map} +0 -0
  494. /package/dist/{chunk-UXXFMF4X.js.map → chunk-SJPAKWWP.js.map} +0 -0
  495. /package/dist/{chunk-FRP64DEK.js.map → chunk-SK57RWSA.js.map} +0 -0
  496. /package/dist/{chunk-ZS2UQ3DV.js.map → chunk-SOXZ4LGS.js.map} +0 -0
  497. /package/dist/{chunk-WSZQNTVN.js.map → chunk-SSZROOOI.js.map} +0 -0
  498. /package/dist/{chunk-MCTTONOW.js.map → chunk-TM2ZLY3Q.js.map} +0 -0
  499. /package/dist/{chunk-J5MEDX7C.js.map → chunk-U47YDYLQ.js.map} +0 -0
  500. /package/dist/{chunk-TV6BWONY.js.map → chunk-UHMMRQGU.js.map} +0 -0
  501. /package/dist/{chunk-YVBHGMKC.js.map → chunk-VAIESMPY.js.map} +0 -0
  502. /package/dist/{chunk-WCMG4HYI.js.map → chunk-W57QFLQD.js.map} +0 -0
  503. /package/dist/{chunk-RYSRFAHN.js.map → chunk-WLZVXCPZ.js.map} +0 -0
  504. /package/dist/{chunk-PFAUGEV5.js.map → chunk-WN2MIB4Q.js.map} +0 -0
  505. /package/dist/{chunk-5FA455GR.js.map → chunk-WNG757ID.js.map} +0 -0
  506. /package/dist/{chunk-G4HQUBO4.js.map → chunk-WSLPZ43N.js.map} +0 -0
  507. /package/dist/{chunk-QXEDIDBZ.js.map → chunk-WWM7WVD2.js.map} +0 -0
  508. /package/dist/{chunk-V4QZ7UBK.js.map → chunk-WYEPUXGL.js.map} +0 -0
  509. /package/dist/{chunk-AX6YJA5U.js.map → chunk-X7Z4B5GK.js.map} +0 -0
  510. /package/dist/{chunk-GZS37O3G.js.map → chunk-XDCZBOEY.js.map} +0 -0
  511. /package/dist/{chunk-52WK2GGK.js.map → chunk-XGE75VPK.js.map} +0 -0
  512. /package/dist/{chunk-XMNUZUUA.js.map → chunk-Z2DAWUO3.js.map} +0 -0
  513. /package/dist/{chunk-BCM7C3MJ.js.map → chunk-Z4GJB24B.js.map} +0 -0
  514. /package/dist/{chunk-LT4J7RHI.js.map → chunk-ZPZYYSHW.js.map} +0 -0
  515. /package/dist/{chunk-GHHM6WN4.js.map → chunk-ZRB4M3GG.js.map} +0 -0
  516. /package/dist/{chunk-FFNPUSVO.js.map → chunk-ZWACUOU5.js.map} +0 -0
  517. /package/dist/{chunk-ZEIFJ6PX.js.map → chunk-ZZUKJ5HQ.js.map} +0 -0
  518. /package/dist/{computer-viewer-25AJIDYA.js.map → computer-viewer-BWVNDFTO.js.map} +0 -0
  519. /package/dist/{embedded-new-voice-RZZEJT6M.js.map → embedded-new-voice-GBXSZ3TO.js.map} +0 -0
  520. /package/dist/{embedded-voice-6OKSSPLW.js.map → embedded-voice-MGI7EK7C.js.map} +0 -0
  521. /package/dist/{fleet-decision-row-NN2HXDX3.js.map → fleet-decision-row-35S3GAUN.js.map} +0 -0
  522. /package/dist/{latest-question-2PFWQSSG.js.map → latest-question-4WDBECXB.js.map} +0 -0
  523. /package/dist/{model-policy-picker-menu-VVFGGAI6.js.map → model-policy-picker-menu-KP53N6UJ.js.map} +0 -0
  524. /package/dist/{platform-activity-row-ENQVIFTL.js.map → platform-activity-row-ISMXR7NJ.js.map} +0 -0
  525. /package/dist/{queue-surface-implementation-4SHOQPQQ.js.map → queue-surface-implementation-ULW7DDJA.js.map} +0 -0
  526. /package/dist/{sandbox-files-CCOTGXXA.js.map → sandbox-files-QYSD4XCZ.js.map} +0 -0
  527. /package/dist/{session-realtime-JNKDSGH7.js.map → session-realtime-JXRLPNUH.js.map} +0 -0
  528. /package/dist/{timeline-annotation-markers-KHNYNY2J.js.map → timeline-annotation-markers-OJYKHBEO.js.map} +0 -0
  529. /package/dist/{timeline-annotation-selection-AXEDJHBP.js.map → timeline-annotation-selection-6OAZLXFU.js.map} +0 -0
  530. /package/dist/{timeline-annotations-dialog-AV4ZBXRC.js.map → timeline-annotations-dialog-5M6DP5FX.js.map} +0 -0
@@ -5,7 +5,17 @@ import {
5
5
  import {
6
6
  PatchApplyCommand,
7
7
  useRetainedImageObjectUrl
8
- } from "./chunk-LQ47YL6E.js";
8
+ } from "./chunk-6K3WNTRI.js";
9
+ import {
10
+ approvalsFromRequiresAction
11
+ } from "./chunk-UD2PSIIX.js";
12
+ import {
13
+ learningRefusalBody,
14
+ learningRefusalPlace,
15
+ learningRefusalPlaceLabel,
16
+ learningRefusalTitle,
17
+ presentTurnFailureText
18
+ } from "./chunk-6MRY2RUZ.js";
9
19
  import {
10
20
  ActivityDisclosure,
11
21
  BodyNote,
@@ -24,7 +34,7 @@ import {
24
34
  ToolOutputPreviewProvider,
25
35
  useForcedDefaultOpen,
26
36
  useTimelineSearchReveal
27
- } from "./chunk-35BC2FU2.js";
37
+ } from "./chunk-26P7B46A.js";
28
38
  import {
29
39
  useToolDetails
30
40
  } from "./chunk-RZLBICR5.js";
@@ -36,19 +46,6 @@ import {
36
46
  pierreDiffsRevision,
37
47
  subscribePierreDiffs
38
48
  } from "./chunk-YSRBFJMQ.js";
39
- import {
40
- ShimmerText
41
- } from "./chunk-UYNCMZX5.js";
42
- import {
43
- approvalsFromRequiresAction
44
- } from "./chunk-UD2PSIIX.js";
45
- import {
46
- learningRefusalBody,
47
- learningRefusalPlace,
48
- learningRefusalPlaceLabel,
49
- learningRefusalTitle,
50
- presentTurnFailureText
51
- } from "./chunk-UUGR3X5I.js";
52
49
  import {
53
50
  GENIE_PREPARING_PHRASES,
54
51
  GENIE_WAITING_PHRASES,
@@ -77,7 +74,7 @@ import {
77
74
  turnSummaryFallbackLabel,
78
75
  webSearchPresentation,
79
76
  writeStdinPresentation
80
- } from "./chunk-YV56F4UP.js";
77
+ } from "./chunk-AW3QEFOF.js";
81
78
  import {
82
79
  workerRowTitleParts
83
80
  } from "./chunk-HEVQKE27.js";
@@ -99,6 +96,9 @@ import {
99
96
  mcpToolLeaf,
100
97
  toolDisplayName
101
98
  } from "./chunk-LEKBNKLD.js";
99
+ import {
100
+ ShimmerText
101
+ } from "./chunk-DNWBLT4U.js";
102
102
  import {
103
103
  formatBytes,
104
104
  truncate,
@@ -109,7 +109,95 @@ import {
109
109
  } from "./chunk-TXS65BB2.js";
110
110
  import {
111
111
  useOpenGeniText
112
- } from "./chunk-JFK7NTEA.js";
112
+ } from "./chunk-S6WJ6TUT.js";
113
+
114
+ // src/timeline/retained-loaders.ts
115
+ function createWorkspaceRetainedArtifactLoader(client, workspaceId) {
116
+ return async (artifact, signal, options) => {
117
+ if (artifact.kind === "file" && options?.prefer !== "url") {
118
+ const download2 = await client.downloadRetainedArtifact(workspaceId, artifact, { signal });
119
+ return download2.bytes;
120
+ }
121
+ const download = await client.createRetainedArtifactDownloadUrl(workspaceId, artifact, {
122
+ signal
123
+ });
124
+ return { url: download.url, expiresAt: download.expiresAt };
125
+ };
126
+ }
127
+ function createSessionRetainedScreenshotLoader(client, workspaceId, sessionId) {
128
+ return async (artifact, signal) => {
129
+ const download = await client.downloadRetainedScreenshot(
130
+ workspaceId,
131
+ sessionId,
132
+ artifact.artifactId,
133
+ { signal }
134
+ );
135
+ if (!download.metadata.available || !download.bytes) return null;
136
+ if (download.metadata.artifactId !== artifact.artifactId || download.metadata.kind !== artifact.kind || download.metadata.contentType !== artifact.contentType || download.metadata.originalBytes !== artifact.originalBytes || download.metadata.sha256 !== artifact.sha256 || download.metadata.dimensions?.width !== artifact.dimensions?.width || download.metadata.dimensions?.height !== artifact.dimensions?.height) {
137
+ throw new Error("Retained screenshot receipt verification failed");
138
+ }
139
+ return download.bytes;
140
+ };
141
+ }
142
+ function createWorkspaceRetainedVideoLoader(client, workspaceId) {
143
+ return async (artifactId, signal) => await client.createVideoArtifactPlaybackSource(workspaceId, artifactId, { signal });
144
+ }
145
+
146
+ // src/components/tool-review-history.tsx
147
+ import { createContext, useContext, useEffect, useMemo, useState } from "react";
148
+ import { jsx } from "react/jsx-runtime";
149
+ var History = createContext(null);
150
+ function ToolReviewHistoryProvider({
151
+ events,
152
+ load,
153
+ onViewDetails,
154
+ children
155
+ }) {
156
+ const value = useMemo(
157
+ () => ({
158
+ approvalIds: new Set(
159
+ events.flatMap(
160
+ (event) => event.type === "session.requiresAction" ? approvalsFromRequiresAction(event.payload).map((approval) => approval.id) : []
161
+ )
162
+ ),
163
+ revision: [...events].reverse().find(
164
+ (event) => event.type === "session.requiresAction" || event.type === "agent.toolCall.output" || event.type.startsWith("turn.") || event.type === "user.approvalDecision" || event.type.startsWith("session.control.")
165
+ )?.sequence ?? 0,
166
+ load,
167
+ onViewDetails
168
+ }),
169
+ [events, load, onViewDetails]
170
+ );
171
+ return /* @__PURE__ */ jsx(History.Provider, { value, children });
172
+ }
173
+ function useHasToolReview(approvalId) {
174
+ const history = useContext(History);
175
+ return Boolean(approvalId && history?.approvalIds.has(approvalId));
176
+ }
177
+ function useRecordedToolReview(approvalId) {
178
+ const history = useContext(History);
179
+ const [review, setReview] = useState(null);
180
+ const load = history?.load;
181
+ const revision = history?.revision;
182
+ useEffect(() => {
183
+ if (!load || !approvalId) return;
184
+ let active = true;
185
+ void load(approvalId).then(
186
+ (value) => {
187
+ if (active && value.id === approvalId) setReview(value);
188
+ },
189
+ () => void 0
190
+ );
191
+ return () => {
192
+ active = false;
193
+ };
194
+ }, [approvalId, load, revision]);
195
+ const onViewDetails = history?.onViewDetails;
196
+ return {
197
+ review: review && review.id === approvalId ? review : null,
198
+ onViewDetails: review && onViewDetails ? (path) => onViewDetails(review, path) : void 0
199
+ };
200
+ }
113
201
 
114
202
  // src/components/tool-action-review.tsx
115
203
  import {
@@ -121,8 +209,8 @@ import {
121
209
  LoaderCircleIcon,
122
210
  ShieldCheckIcon
123
211
  } from "lucide-react";
124
- import { useEffect, useId, useRef, useState } from "react";
125
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
212
+ import { useEffect as useEffect2, useId, useRef, useState as useState2 } from "react";
213
+ import { Fragment, jsx as jsx2, jsxs } from "react/jsx-runtime";
126
214
  var statusText = (t) => ({
127
215
  pending: t("toolActionReview.approvalNeeded"),
128
216
  approved: t("toolActionReview.approved"),
@@ -184,12 +272,12 @@ var VISIBLE_FIELDS = 6;
184
272
  function StatusIcon({ status, busy }) {
185
273
  const className = "size-4";
186
274
  if (busy || status === "executing" || status === "approved")
187
- return /* @__PURE__ */ jsx(LoaderCircleIcon, { "aria-hidden": "true", className: cn(className, "animate-spin") });
188
- if (status === "pending") return /* @__PURE__ */ jsx(ShieldCheckIcon, { "aria-hidden": "true", className });
189
- if (status === "completed") return /* @__PURE__ */ jsx(CheckIcon, { "aria-hidden": "true", className });
275
+ return /* @__PURE__ */ jsx2(LoaderCircleIcon, { "aria-hidden": "true", className: cn(className, "animate-spin") });
276
+ if (status === "pending") return /* @__PURE__ */ jsx2(ShieldCheckIcon, { "aria-hidden": "true", className });
277
+ if (status === "completed") return /* @__PURE__ */ jsx2(CheckIcon, { "aria-hidden": "true", className });
190
278
  if (statusTone[status] === "failed")
191
- return /* @__PURE__ */ jsx(CircleAlertIcon, { "aria-hidden": "true", className });
192
- return /* @__PURE__ */ jsx(CircleSlashIcon, { "aria-hidden": "true", className });
279
+ return /* @__PURE__ */ jsx2(CircleAlertIcon, { "aria-hidden": "true", className });
280
+ return /* @__PURE__ */ jsx2(CircleSlashIcon, { "aria-hidden": "true", className });
193
281
  }
194
282
  function ToolReviewFrame({
195
283
  tone,
@@ -216,7 +304,7 @@ function ToolReviewFrame({
216
304
  ),
217
305
  children: [
218
306
  /* @__PURE__ */ jsxs("header", { className: cn("flex min-w-0 items-start gap-3", bare ? "pb-1" : "px-4 py-3"), children: [
219
- /* @__PURE__ */ jsx(
307
+ /* @__PURE__ */ jsx2(
220
308
  "span",
221
309
  {
222
310
  className: cn(
@@ -227,7 +315,7 @@ function ToolReviewFrame({
227
315
  }
228
316
  ),
229
317
  /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
230
- /* @__PURE__ */ jsx(
318
+ /* @__PURE__ */ jsx2(
231
319
  "p",
232
320
  {
233
321
  className: cn("m-0 text-og-xs font-medium", toneText[tone]),
@@ -236,7 +324,7 @@ function ToolReviewFrame({
236
324
  children: eyebrow
237
325
  }
238
326
  ),
239
- /* @__PURE__ */ jsx(
327
+ /* @__PURE__ */ jsx2(
240
328
  "h3",
241
329
  {
242
330
  tabIndex: -1,
@@ -245,10 +333,10 @@ function ToolReviewFrame({
245
333
  children: title
246
334
  }
247
335
  ),
248
- subtitle ? /* @__PURE__ */ jsx("p", { className: "m-0 mt-0.5 break-words text-og-xs text-og-fg-muted [overflow-wrap:anywhere]", children: subtitle }) : null
336
+ subtitle ? /* @__PURE__ */ jsx2("p", { className: "m-0 mt-0.5 break-words text-og-xs text-og-fg-muted [overflow-wrap:anywhere]", children: subtitle }) : null
249
337
  ] })
250
338
  ] }),
251
- children ? /* @__PURE__ */ jsx(
339
+ children ? /* @__PURE__ */ jsx2(
252
340
  "div",
253
341
  {
254
342
  className: cn(
@@ -260,7 +348,7 @@ function ToolReviewFrame({
260
348
  children
261
349
  }
262
350
  ) : null,
263
- footer ? /* @__PURE__ */ jsx(
351
+ footer ? /* @__PURE__ */ jsx2(
264
352
  "footer",
265
353
  {
266
354
  className: cn(
@@ -300,24 +388,24 @@ function ReviewFacts({
300
388
  const hasContent = note || effects.length || selection || shown.length || hiddenFields > 0 || samples.length;
301
389
  if (!hasContent) return null;
302
390
  return /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-col gap-3 text-og-sm", children: [
303
- note ? /* @__PURE__ */ jsx("p", { className: "m-0 leading-relaxed text-og-fg-muted", children: note }) : null,
304
- effects.length > 0 ? /* @__PURE__ */ jsx("ul", { className: "m-0 list-none space-y-1 p-0", "aria-label": t("toolActionReview.alsoChanges"), children: effects.map((effect) => /* @__PURE__ */ jsxs("li", { className: "flex items-start gap-2 text-og-fg", children: [
305
- /* @__PURE__ */ jsx(
391
+ note ? /* @__PURE__ */ jsx2("p", { className: "m-0 leading-relaxed text-og-fg-muted", children: note }) : null,
392
+ effects.length > 0 ? /* @__PURE__ */ jsx2("ul", { className: "m-0 list-none space-y-1 p-0", "aria-label": t("toolActionReview.alsoChanges"), children: effects.map((effect) => /* @__PURE__ */ jsxs("li", { className: "flex items-start gap-2 text-og-fg", children: [
393
+ /* @__PURE__ */ jsx2(
306
394
  "span",
307
395
  {
308
396
  "aria-hidden": "true",
309
397
  className: "mt-[0.55em] size-1 shrink-0 rounded-full bg-og-fg-muted"
310
398
  }
311
399
  ),
312
- /* @__PURE__ */ jsx("span", { className: "min-w-0 break-words", children: effect })
400
+ /* @__PURE__ */ jsx2("span", { className: "min-w-0 break-words", children: effect })
313
401
  ] }, effect)) }) : null,
314
402
  selection ? /* @__PURE__ */ jsxs("div", { className: "min-w-0", children: [
315
403
  samples.length > 0 ? /* @__PURE__ */ jsxs(Fragment, { children: [
316
- /* @__PURE__ */ jsx("p", { className: "m-0 mb-1 text-og-xs text-og-fg-muted", children: t("toolActionReview.includes") }),
404
+ /* @__PURE__ */ jsx2("p", { className: "m-0 mb-1 text-og-xs text-og-fg-muted", children: t("toolActionReview.includes") }),
317
405
  /* @__PURE__ */ jsxs("ul", { className: "m-0 list-none divide-y divide-og-border rounded-og-md border border-og-border bg-og-surface-1 p-0", children: [
318
406
  samples.map((sample) => /* @__PURE__ */ jsxs("li", { className: "min-w-0 px-3 py-2", children: [
319
- /* @__PURE__ */ jsx("p", { className: "m-0 truncate text-og-sm text-og-fg", children: sample.title }),
320
- sample.subtitle ? /* @__PURE__ */ jsx("p", { className: "m-0 mt-0.5 truncate text-og-xs text-og-fg-muted", children: sample.subtitle }) : null
407
+ /* @__PURE__ */ jsx2("p", { className: "m-0 truncate text-og-sm text-og-fg", children: sample.title }),
408
+ sample.subtitle ? /* @__PURE__ */ jsx2("p", { className: "m-0 mt-0.5 truncate text-og-xs text-og-fg-muted", children: sample.subtitle }) : null
321
409
  ] }, sample.id)),
322
410
  count > samples.length ? /* @__PURE__ */ jsxs("li", { className: "px-3 py-2 text-og-xs text-og-fg-muted", children: [
323
411
  t("toolActionReview.and"),
@@ -340,18 +428,18 @@ function ReviewFacts({
340
428
  localeString: count.toLocaleString(t.locale),
341
429
  noun
342
430
  }),
343
- /* @__PURE__ */ jsx(ChevronRightIcon, { className: "size-3.5 shrink-0", "aria-hidden": "true" })
431
+ /* @__PURE__ */ jsx2(ChevronRightIcon, { className: "size-3.5 shrink-0", "aria-hidden": "true" })
344
432
  ]
345
433
  }
346
434
  ) : null
347
435
  ] }) : null,
348
- shown.length > 0 ? /* @__PURE__ */ jsx("dl", { className: "m-0 min-w-0 space-y-2", children: shown.map((field) => /* @__PURE__ */ jsxs(
436
+ shown.length > 0 ? /* @__PURE__ */ jsx2("dl", { className: "m-0 min-w-0 space-y-2", children: shown.map((field) => /* @__PURE__ */ jsxs(
349
437
  "div",
350
438
  {
351
439
  className: "grid min-w-0 gap-x-4 gap-y-0.5 sm:grid-cols-[minmax(0,9rem)_minmax(0,1fr)]",
352
440
  children: [
353
- /* @__PURE__ */ jsx("dt", { className: "m-0 break-words text-og-xs text-og-fg-muted sm:pt-px sm:text-og-sm", children: field.label }),
354
- /* @__PURE__ */ jsx("dd", { className: "m-0 min-w-0 whitespace-pre-wrap break-words text-og-fg [overflow-wrap:anywhere]", children: field.protected ? /* @__PURE__ */ jsx("span", { className: "text-og-fg-muted", children: t("toolActionReview.hidden") }) : field.truncated && canOpen ? /* @__PURE__ */ jsxs(
441
+ /* @__PURE__ */ jsx2("dt", { className: "m-0 break-words text-og-xs text-og-fg-muted sm:pt-px sm:text-og-sm", children: field.label }),
442
+ /* @__PURE__ */ jsx2("dd", { className: "m-0 min-w-0 whitespace-pre-wrap break-words text-og-fg [overflow-wrap:anywhere]", children: field.protected ? /* @__PURE__ */ jsx2("span", { className: "text-og-fg-muted", children: t("toolActionReview.hidden") }) : field.truncated && canOpen ? /* @__PURE__ */ jsxs(
355
443
  "button",
356
444
  {
357
445
  type: "button",
@@ -363,11 +451,11 @@ function ReviewFacts({
363
451
  onClick: () => onViewDetails(field.path),
364
452
  className: cn(linkButton, "max-w-full"),
365
453
  children: [
366
- /* @__PURE__ */ jsx("span", { className: "line-clamp-4 min-w-0 break-words [overflow-wrap:anywhere]", children: /* @__PURE__ */ jsx(SecretRefText, { text: field.preview, linkable: false }) }),
367
- /* @__PURE__ */ jsx(ChevronRightIcon, { className: "size-3.5 shrink-0", "aria-hidden": "true" })
454
+ /* @__PURE__ */ jsx2("span", { className: "line-clamp-4 min-w-0 break-words [overflow-wrap:anywhere]", children: /* @__PURE__ */ jsx2(SecretRefText, { text: field.preview, linkable: false }) }),
455
+ /* @__PURE__ */ jsx2(ChevronRightIcon, { className: "size-3.5 shrink-0", "aria-hidden": "true" })
368
456
  ]
369
457
  }
370
- ) : /* @__PURE__ */ jsx(SecretRefText, { text: field.preview }) })
458
+ ) : /* @__PURE__ */ jsx2(SecretRefText, { text: field.preview }) })
371
459
  ]
372
460
  },
373
461
  field.path
@@ -386,7 +474,7 @@ function DeclineButton({
386
474
  onClick
387
475
  }) {
388
476
  const t = useOpenGeniText();
389
- return /* @__PURE__ */ jsx(
477
+ return /* @__PURE__ */ jsx2(
390
478
  "button",
391
479
  {
392
480
  type: "button",
@@ -416,7 +504,7 @@ function ToolActionReviewCard({
416
504
  const busy = Boolean(disabled || submitting);
417
505
  const tone = statusTone[review.status];
418
506
  const eyebrow = submitting ? submitting === "approve" ? t("toolActionReview.approving") : t("toolActionReview.declining") : review.status === "pending" ? pendingLabel ?? statusText(t).pending : statusText(t)[review.status];
419
- const detailsLink = review.detailsAvailable && onViewDetails ? /* @__PURE__ */ jsx(
507
+ const detailsLink = review.detailsAvailable && onViewDetails ? /* @__PURE__ */ jsx2(
420
508
  "button",
421
509
  {
422
510
  type: "button",
@@ -431,7 +519,7 @@ function ToolActionReviewCard({
431
519
  ToolReviewFrame,
432
520
  {
433
521
  tone,
434
- icon: /* @__PURE__ */ jsx(StatusIcon, { status: review.status, busy: Boolean(submitting) }),
522
+ icon: /* @__PURE__ */ jsx2(StatusIcon, { status: review.status, busy: Boolean(submitting) }),
435
523
  eyebrow,
436
524
  title: review.title,
437
525
  titleId,
@@ -443,10 +531,10 @@ function ToolActionReviewCard({
443
531
  footer: actionable ? /* @__PURE__ */ jsxs(Fragment, { children: [
444
532
  /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 basis-48 flex-wrap items-center gap-x-3 gap-y-1", children: [
445
533
  detailsLink,
446
- reason ? /* @__PURE__ */ jsx("span", { className: "min-w-0 text-og-xs leading-relaxed text-og-fg-subtle", children: reason }) : null
534
+ reason ? /* @__PURE__ */ jsx2("span", { className: "min-w-0 text-og-xs leading-relaxed text-og-fg-subtle", children: reason }) : null
447
535
  ] }),
448
536
  /* @__PURE__ */ jsxs("div", { className: "ml-auto flex shrink-0 flex-wrap items-center justify-end gap-2", children: [
449
- canReject ? /* @__PURE__ */ jsx(
537
+ canReject ? /* @__PURE__ */ jsx2(
450
538
  DeclineButton,
451
539
  {
452
540
  busy,
@@ -463,7 +551,7 @@ function ToolActionReviewCard({
463
551
  onClick: onApprove,
464
552
  className: "inline-flex min-h-9 items-center justify-center gap-2 rounded-og-md border border-og-primary-border bg-og-primary px-3.5 py-1.5 text-og-sm font-medium text-og-primary-fg transition-colors hover:bg-og-primary-hover disabled:opacity-60 [@media(pointer:coarse)]:min-h-11 focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-og-accent/40",
465
553
  children: [
466
- submitting === "approve" ? /* @__PURE__ */ jsx(LoaderCircleIcon, { className: "size-3.5 animate-spin", "aria-hidden": "true" }) : null,
554
+ submitting === "approve" ? /* @__PURE__ */ jsx2(LoaderCircleIcon, { className: "size-3.5 animate-spin", "aria-hidden": "true" }) : null,
467
555
  submitting === "approve" ? t("toolActionReview.approving") : review.approveLabel
468
556
  ]
469
557
  }
@@ -471,8 +559,8 @@ function ToolActionReviewCard({
471
559
  ] })
472
560
  ] }) : void 0,
473
561
  children: [
474
- actionable && !canApprove ? /* @__PURE__ */ jsx("p", { className: "m-0 mb-3 text-og-sm leading-relaxed text-og-fg", children: UNRECOVERABLE_TEXT(t) }) : null,
475
- /* @__PURE__ */ jsx(
562
+ actionable && !canApprove ? /* @__PURE__ */ jsx2("p", { className: "m-0 mb-3 text-og-sm leading-relaxed text-og-fg", children: UNRECOVERABLE_TEXT(t) }) : null,
563
+ /* @__PURE__ */ jsx2(
476
564
  ReviewFacts,
477
565
  {
478
566
  review,
@@ -480,7 +568,7 @@ function ToolActionReviewCard({
480
568
  showStatusDetail: review.status !== "pending"
481
569
  }
482
570
  ),
483
- !actionable && detailsLink ? /* @__PURE__ */ jsx("div", { className: "mt-2", children: detailsLink }) : null
571
+ !actionable && detailsLink ? /* @__PURE__ */ jsx2("div", { className: "mt-2", children: detailsLink }) : null
484
572
  ]
485
573
  }
486
574
  );
@@ -493,22 +581,22 @@ function ToolActionReviewDetails({
493
581
  manageFocus = true
494
582
  }) {
495
583
  const t = useOpenGeniText();
496
- const [path, setPath] = useState(initialPath);
497
- const [trail, setTrail] = useState([]);
498
- const [offset, setOffset] = useState(0);
499
- const [page, setPage] = useState(null);
500
- const [error, setError] = useState(false);
501
- const [retry, setRetry] = useState(0);
584
+ const [path, setPath] = useState2(initialPath);
585
+ const [trail, setTrail] = useState2([]);
586
+ const [offset, setOffset] = useState2(0);
587
+ const [page, setPage] = useState2(null);
588
+ const [error, setError] = useState2(false);
589
+ const [retry, setRetry] = useState2(0);
502
590
  const heading = useRef(null);
503
591
  const focusedOnce = useRef(false);
504
- useEffect(() => {
592
+ useEffect2(() => {
505
593
  if (page && manageFocus && !focusedOnce.current) {
506
594
  focusedOnce.current = true;
507
595
  heading.current?.focus({ preventScroll: true });
508
596
  heading.current?.scrollIntoView({ block: "start" });
509
597
  }
510
598
  }, [page, manageFocus]);
511
- useEffect(() => {
599
+ useEffect2(() => {
512
600
  let active = true;
513
601
  setPage(null);
514
602
  setError(false);
@@ -553,12 +641,12 @@ function ToolActionReviewDetails({
553
641
  onClick: onBack,
554
642
  className: "mb-4 inline-flex min-h-11 items-center gap-2 rounded-og-md pr-2 text-og-sm text-og-fg-muted hover:text-og-fg focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-og-accent/40",
555
643
  children: [
556
- /* @__PURE__ */ jsx(ArrowLeftIcon, { className: "size-4", "aria-hidden": "true" }),
644
+ /* @__PURE__ */ jsx2(ArrowLeftIcon, { className: "size-4", "aria-hidden": "true" }),
557
645
  t("toolActionReview.backToReview")
558
646
  ]
559
647
  }
560
648
  ),
561
- /* @__PURE__ */ jsx(
649
+ /* @__PURE__ */ jsx2(
562
650
  "h2",
563
651
  {
564
652
  ref: heading,
@@ -567,8 +655,8 @@ function ToolActionReviewDetails({
567
655
  children: review.title
568
656
  }
569
657
  ),
570
- review.accountLabel ? /* @__PURE__ */ jsx("p", { className: "m-0 mt-1 text-og-sm text-og-fg-muted", children: review.accountLabel }) : null,
571
- /* @__PURE__ */ jsx("p", { className: "m-0 mt-2 text-og-xs text-og-fg-subtle", children: t("toolActionReview.theExactValuesSavedFor") }),
658
+ review.accountLabel ? /* @__PURE__ */ jsx2("p", { className: "m-0 mt-1 text-og-sm text-og-fg-muted", children: review.accountLabel }) : null,
659
+ /* @__PURE__ */ jsx2("p", { className: "m-0 mt-2 text-og-xs text-og-fg-subtle", children: t("toolActionReview.theExactValuesSavedFor") }),
572
660
  trail.length > 0 ? /* @__PURE__ */ jsxs(
573
661
  "button",
574
662
  {
@@ -576,7 +664,7 @@ function ToolActionReviewDetails({
576
664
  className: "mt-3 inline-flex min-h-11 items-center gap-1.5 text-og-sm text-og-fg-muted underline underline-offset-4 hover:text-og-fg focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-og-accent/40",
577
665
  onClick: up,
578
666
  children: [
579
- /* @__PURE__ */ jsx(ArrowLeftIcon, { className: "size-3.5", "aria-hidden": "true" }),
667
+ /* @__PURE__ */ jsx2(ArrowLeftIcon, { className: "size-3.5", "aria-hidden": "true" }),
580
668
  t("toolActionReview.backTo"),
581
669
  " ",
582
670
  trail.at(-1)?.label ?? t("toolActionReview.allValues")
@@ -586,7 +674,7 @@ function ToolActionReviewDetails({
586
674
  error ? /* @__PURE__ */ jsxs("div", { role: "alert", className: "mt-4 py-4 text-og-sm", children: [
587
675
  t("toolActionReview.couldnTLoadTheseDetails"),
588
676
  " ",
589
- /* @__PURE__ */ jsx(
677
+ /* @__PURE__ */ jsx2(
590
678
  "button",
591
679
  {
592
680
  type: "button",
@@ -595,9 +683,9 @@ function ToolActionReviewDetails({
595
683
  children: t("toolActionReview.tryAgain")
596
684
  }
597
685
  )
598
- ] }) : !page ? /* @__PURE__ */ jsx("p", { role: "status", className: "mt-4 py-4 text-og-sm text-og-fg-muted", children: t("toolActionReview.loadingDetails") }) : /* @__PURE__ */ jsxs(Fragment, { children: [
599
- /* @__PURE__ */ jsx("dl", { className: "m-0 mt-4 divide-y divide-og-border border-y border-og-border", children: page.items.map((item) => /* @__PURE__ */ jsxs("div", { className: "py-3", children: [
600
- /* @__PURE__ */ jsx("dt", { className: "m-0 text-og-xs text-og-fg-muted", children: item.label }),
686
+ ] }) : !page ? /* @__PURE__ */ jsx2("p", { role: "status", className: "mt-4 py-4 text-og-sm text-og-fg-muted", children: t("toolActionReview.loadingDetails") }) : /* @__PURE__ */ jsxs(Fragment, { children: [
687
+ /* @__PURE__ */ jsx2("dl", { className: "m-0 mt-4 divide-y divide-og-border border-y border-og-border", children: page.items.map((item) => /* @__PURE__ */ jsxs("div", { className: "py-3", children: [
688
+ /* @__PURE__ */ jsx2("dt", { className: "m-0 text-og-xs text-og-fg-muted", children: item.label }),
601
689
  /* @__PURE__ */ jsxs("dd", { className: "m-0 mt-1 whitespace-pre-wrap break-words text-og-sm leading-relaxed [overflow-wrap:anywhere]", children: [
602
690
  item.truncated && item.path ? /* @__PURE__ */ jsxs(
603
691
  "button",
@@ -607,12 +695,12 @@ function ToolActionReviewDetails({
607
695
  className: cn(linkButton, "max-w-full"),
608
696
  onClick: () => open(item.path, item.label),
609
697
  children: [
610
- /* @__PURE__ */ jsx("span", { className: "min-w-0 break-words focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-og-accent/40", children: /* @__PURE__ */ jsx(SecretRefText, { text: item.value, linkable: false }) }),
611
- /* @__PURE__ */ jsx(ChevronRightIcon, { className: "size-3.5 shrink-0", "aria-hidden": "true" })
698
+ /* @__PURE__ */ jsx2("span", { className: "min-w-0 break-words focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-og-accent/40", children: /* @__PURE__ */ jsx2(SecretRefText, { text: item.value, linkable: false }) }),
699
+ /* @__PURE__ */ jsx2(ChevronRightIcon, { className: "size-3.5 shrink-0", "aria-hidden": "true" })
612
700
  ]
613
701
  }
614
- ) : /* @__PURE__ */ jsx(SecretRefText, { text: item.value }),
615
- item.detail ? /* @__PURE__ */ jsx("span", { className: "mt-0.5 block text-og-xs text-og-fg-muted", children: /* @__PURE__ */ jsx(SecretRefText, { text: item.detail, linkable: false }) }) : null
702
+ ) : /* @__PURE__ */ jsx2(SecretRefText, { text: item.value }),
703
+ item.detail ? /* @__PURE__ */ jsx2("span", { className: "mt-0.5 block text-og-xs text-og-fg-muted", children: /* @__PURE__ */ jsx2(SecretRefText, { text: item.detail, linkable: false }) }) : null
616
704
  ] })
617
705
  ] }, `${page.path}:${item.label}`)) }),
618
706
  page.total > page.items.length || offset > 0 ? /* @__PURE__ */ jsxs(
@@ -621,7 +709,7 @@ function ToolActionReviewDetails({
621
709
  "aria-label": t("toolActionReview.detailPages"),
622
710
  className: "mt-4 flex flex-wrap items-center justify-between gap-3 text-og-sm",
623
711
  children: [
624
- /* @__PURE__ */ jsx(
712
+ /* @__PURE__ */ jsx2(
625
713
  "button",
626
714
  {
627
715
  type: "button",
@@ -631,8 +719,8 @@ function ToolActionReviewDetails({
631
719
  children: t("toolActionReview.previous")
632
720
  }
633
721
  ),
634
- /* @__PURE__ */ jsx("span", { className: "text-og-fg-muted tabular-nums", children: page.total === 0 ? t("toolActionReview.noItems") : `${(offset + 1).toLocaleString(t.locale)}\u2013${(offset + page.items.length).toLocaleString(t.locale)} of ${page.total.toLocaleString(t.locale)}` }),
635
- /* @__PURE__ */ jsx(
722
+ /* @__PURE__ */ jsx2("span", { className: "text-og-fg-muted tabular-nums", children: page.total === 0 ? t("toolActionReview.noItems") : `${(offset + 1).toLocaleString(t.locale)}\u2013${(offset + page.items.length).toLocaleString(t.locale)} of ${page.total.toLocaleString(t.locale)}` }),
723
+ /* @__PURE__ */ jsx2(
636
724
  "button",
637
725
  {
638
726
  type: "button",
@@ -652,36 +740,36 @@ function ToolActionReviewDetails({
652
740
  }
653
741
 
654
742
  // src/timeline/knowledge-receipt.tsx
655
- import { createContext, useContext, useState as useState2 } from "react";
743
+ import { createContext as createContext2, useContext as useContext2, useState as useState3 } from "react";
656
744
  import { BrainCircuitIcon } from "lucide-react";
657
- import { jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
658
- var KnowledgeActions = createContext({});
745
+ import { jsx as jsx3, jsxs as jsxs2 } from "react/jsx-runtime";
746
+ var KnowledgeActions = createContext2({});
659
747
  function KnowledgeActivityProvider({
660
748
  children,
661
749
  ...actions
662
750
  }) {
663
- return /* @__PURE__ */ jsx2(KnowledgeActions.Provider, { value: actions, children });
751
+ return /* @__PURE__ */ jsx3(KnowledgeActions.Provider, { value: actions, children });
664
752
  }
665
753
  function KnowledgeReceiptRow(props) {
666
754
  const t = useOpenGeniText();
667
- const actions = useContext(KnowledgeActions);
668
- const [retrying, setRetrying] = useState2(false);
669
- const [retrySent, setRetrySent] = useState2(false);
670
- const [error, setError] = useState2(null);
755
+ const actions = useContext2(KnowledgeActions);
756
+ const [retrying, setRetrying] = useState3(false);
757
+ const [retrySent, setRetrySent] = useState3(false);
758
+ const [error, setError] = useState3(null);
671
759
  const label = props.outcome === "pending" ? t("timeline.knowledgeReceipt.knowledgeSavedForReview") : props.outcome === "failed" ? t("timeline.knowledgeReceipt.sourcePreparationFailed") : props.outcome === "rejected" ? t("timeline.knowledgeReceipt.sourceRemainsRejected") : props.outcome === "archived" ? t("timeline.knowledgeReceipt.knowledgeArchived") : props.source ? t("timeline.knowledgeReceipt.sourceSavedToKnowledge") : t("timeline.knowledgeReceipt.savedToKnowledge");
672
760
  const actionClass = "rounded-og-sm px-1 py-0.5 text-og-sm text-og-fg-muted hover:text-og-fg focus-visible:outline-2 focus-visible:outline-og-accent disabled:opacity-50";
673
761
  return /* @__PURE__ */ jsxs2(
674
762
  ActivityDisclosure,
675
763
  {
676
- icon: /* @__PURE__ */ jsx2(BrainCircuitIcon, { className: "size-3.5" }),
764
+ icon: /* @__PURE__ */ jsx3(BrainCircuitIcon, { className: "size-3.5" }),
677
765
  iconTone: "muted",
678
766
  title: label,
679
767
  preview: props.title,
680
768
  children: [
681
- props.outcome === "pending" ? /* @__PURE__ */ jsx2(BodyNote, { children: t("timeline.knowledgeReceipt.savedInNeedsReviewThis") }) : null,
682
- props.outcome === "failed" ? /* @__PURE__ */ jsx2(BodyNote, { children: t("timeline.knowledgeReceipt.theOriginalFileRemainsAttached") }) : null,
683
- props.outcome === "rejected" ? /* @__PURE__ */ jsx2(BodyNote, { children: t("timeline.knowledgeReceipt.processingTheFileAgainLeaves") }) : null,
684
- props.entryId && actions.onInspect ? /* @__PURE__ */ jsx2(
769
+ props.outcome === "pending" ? /* @__PURE__ */ jsx3(BodyNote, { children: t("timeline.knowledgeReceipt.savedInNeedsReviewThis") }) : null,
770
+ props.outcome === "failed" ? /* @__PURE__ */ jsx3(BodyNote, { children: t("timeline.knowledgeReceipt.theOriginalFileRemainsAttached") }) : null,
771
+ props.outcome === "rejected" ? /* @__PURE__ */ jsx3(BodyNote, { children: t("timeline.knowledgeReceipt.processingTheFileAgainLeaves") }) : null,
772
+ props.entryId && actions.onInspect ? /* @__PURE__ */ jsx3(
685
773
  "button",
686
774
  {
687
775
  className: actionClass,
@@ -690,7 +778,7 @@ function KnowledgeReceiptRow(props) {
690
778
  children: props.outcome === "pending" ? t("timeline.knowledgeReceipt.reviewInKnowledge") : t("timeline.knowledgeReceipt.viewInKnowledge")
691
779
  }
692
780
  ) : null,
693
- props.outcome === "failed" && props.fileId && actions.onRetryFile ? /* @__PURE__ */ jsx2(
781
+ props.outcome === "failed" && props.fileId && actions.onRetryFile ? /* @__PURE__ */ jsx3(
694
782
  "button",
695
783
  {
696
784
  className: actionClass,
@@ -707,100 +795,12 @@ function KnowledgeReceiptRow(props) {
707
795
  children: retrying ? t("timeline.knowledgeReceipt.startingRetry") : retrySent ? t("timeline.knowledgeReceipt.retryRequested") : t("timeline.knowledgeReceipt.retryPreparation")
708
796
  }
709
797
  ) : null,
710
- error ? /* @__PURE__ */ jsx2("p", { role: "alert", className: "text-og-sm", children: error }) : null
798
+ error ? /* @__PURE__ */ jsx3("p", { role: "alert", className: "text-og-sm", children: error }) : null
711
799
  ]
712
800
  }
713
801
  );
714
802
  }
715
803
 
716
- // src/timeline/startup-preference.ts
717
- import { useSyncExternalStore } from "react";
718
- var KEY = "opengeni:startup-details:v1";
719
- var EVENT = "opengeni:startup-details-changed";
720
- var fallback = false;
721
- function snapshot() {
722
- try {
723
- return window.localStorage.getItem(KEY) === "true";
724
- } catch {
725
- return fallback;
726
- }
727
- }
728
- function subscribe(listener) {
729
- window.addEventListener(EVENT, listener);
730
- window.addEventListener("storage", listener);
731
- return () => {
732
- window.removeEventListener(EVENT, listener);
733
- window.removeEventListener("storage", listener);
734
- };
735
- }
736
- function setStartupDetails(value) {
737
- fallback = value;
738
- try {
739
- window.localStorage.setItem(KEY, String(value));
740
- } catch {
741
- }
742
- window.dispatchEvent(new Event(EVENT));
743
- }
744
- function useStartupDetails() {
745
- return useSyncExternalStore(subscribe, snapshot, () => false);
746
- }
747
-
748
- // src/components/tool-review-history.tsx
749
- import { createContext as createContext2, useContext as useContext2, useEffect as useEffect2, useMemo, useState as useState3 } from "react";
750
- import { jsx as jsx3 } from "react/jsx-runtime";
751
- var History = createContext2(null);
752
- function ToolReviewHistoryProvider({
753
- events,
754
- load,
755
- onViewDetails,
756
- children
757
- }) {
758
- const value = useMemo(
759
- () => ({
760
- approvalIds: new Set(
761
- events.flatMap(
762
- (event) => event.type === "session.requiresAction" ? approvalsFromRequiresAction(event.payload).map((approval) => approval.id) : []
763
- )
764
- ),
765
- revision: [...events].reverse().find(
766
- (event) => event.type === "session.requiresAction" || event.type === "agent.toolCall.output" || event.type.startsWith("turn.") || event.type === "user.approvalDecision" || event.type.startsWith("session.control.")
767
- )?.sequence ?? 0,
768
- load,
769
- onViewDetails
770
- }),
771
- [events, load, onViewDetails]
772
- );
773
- return /* @__PURE__ */ jsx3(History.Provider, { value, children });
774
- }
775
- function useHasToolReview(approvalId) {
776
- const history = useContext2(History);
777
- return Boolean(approvalId && history?.approvalIds.has(approvalId));
778
- }
779
- function useRecordedToolReview(approvalId) {
780
- const history = useContext2(History);
781
- const [review, setReview] = useState3(null);
782
- const load = history?.load;
783
- const revision = history?.revision;
784
- useEffect2(() => {
785
- if (!load || !approvalId) return;
786
- let active = true;
787
- void load(approvalId).then(
788
- (value) => {
789
- if (active && value.id === approvalId) setReview(value);
790
- },
791
- () => void 0
792
- );
793
- return () => {
794
- active = false;
795
- };
796
- }, [approvalId, load, revision]);
797
- const onViewDetails = history?.onViewDetails;
798
- return {
799
- review: review && review.id === approvalId ? review : null,
800
- onViewDetails: review && onViewDetails ? (path) => onViewDetails(review, path) : void 0
801
- };
802
- }
803
-
804
804
  // src/lib/git-patch.ts
805
805
  function gitFileDiffToPatch(file) {
806
806
  const oldPath = file.oldPath ?? file.path;
@@ -836,7 +836,7 @@ import {
836
836
  Suspense,
837
837
  useEffect as useEffect3,
838
838
  useState as useState4,
839
- useSyncExternalStore as useSyncExternalStore2
839
+ useSyncExternalStore
840
840
  } from "react";
841
841
  import { jsx as jsx4 } from "react/jsx-runtime";
842
842
  var LazyPatchDiff = lazy(async () => {
@@ -866,7 +866,7 @@ function PierreDiff({
866
866
  query.addEventListener?.("change", update);
867
867
  return () => query.removeEventListener?.("change", update);
868
868
  }, []);
869
- const loaderRevision = useSyncExternalStore2(
869
+ const loaderRevision = useSyncExternalStore(
870
870
  subscribePierreDiffs,
871
871
  pierreDiffsRevision,
872
872
  pierreDiffsRevision
@@ -2867,6 +2867,38 @@ function createDefaultToolRegistry(options = {}) {
2867
2867
  return createToolRegistry(BASE_ENTRIES, GenericRenderer, options);
2868
2868
  }
2869
2869
 
2870
+ // src/timeline/startup-preference.ts
2871
+ import { useSyncExternalStore as useSyncExternalStore2 } from "react";
2872
+ var KEY = "opengeni:startup-details:v1";
2873
+ var EVENT = "opengeni:startup-details-changed";
2874
+ var fallback = false;
2875
+ function snapshot() {
2876
+ try {
2877
+ return window.localStorage.getItem(KEY) === "true";
2878
+ } catch {
2879
+ return fallback;
2880
+ }
2881
+ }
2882
+ function subscribe(listener) {
2883
+ window.addEventListener(EVENT, listener);
2884
+ window.addEventListener("storage", listener);
2885
+ return () => {
2886
+ window.removeEventListener(EVENT, listener);
2887
+ window.removeEventListener("storage", listener);
2888
+ };
2889
+ }
2890
+ function setStartupDetails(value) {
2891
+ fallback = value;
2892
+ try {
2893
+ window.localStorage.setItem(KEY, String(value));
2894
+ } catch {
2895
+ }
2896
+ window.dispatchEvent(new Event(EVENT));
2897
+ }
2898
+ function useStartupDetails() {
2899
+ return useSyncExternalStore2(subscribe, snapshot, () => false);
2900
+ }
2901
+
2870
2902
  // src/timeline/agent-row.tsx
2871
2903
  import { ArrowUpRightIcon, ChevronRightIcon as ChevronRightIcon2 } from "lucide-react";
2872
2904
  import { useContext as useContext6, useState as useState8 } from "react";
@@ -3236,8 +3268,8 @@ function useSeenActivityIds() {
3236
3268
 
3237
3269
  // src/timeline/activity-rail.tsx
3238
3270
  import { Fragment as Fragment5, jsx as jsx14, jsxs as jsxs8 } from "react/jsx-runtime";
3239
- var LazyFleetDecisionRow = lazy2(() => import("./fleet-decision-row-NN2HXDX3.js"));
3240
- var LazyPlatformActivityRow = lazy2(() => import("./platform-activity-row-ENQVIFTL.js"));
3271
+ var LazyFleetDecisionRow = lazy2(() => import("./fleet-decision-row-35S3GAUN.js"));
3272
+ var LazyPlatformActivityRow = lazy2(() => import("./platform-activity-row-ISMXR7NJ.js"));
3241
3273
  function familyOf(item) {
3242
3274
  if (item.kind === "tool-call") {
3243
3275
  return item.name === "exec_command" || item.name === "write_stdin" ? "terminal" : item.name;
@@ -4029,38 +4061,6 @@ var FacetRenderBoundary = class extends Component2 {
4029
4061
  }
4030
4062
  };
4031
4063
 
4032
- // src/timeline/retained-loaders.ts
4033
- function createWorkspaceRetainedArtifactLoader(client, workspaceId) {
4034
- return async (artifact, signal, options) => {
4035
- if (artifact.kind === "file" && options?.prefer !== "url") {
4036
- const download2 = await client.downloadRetainedArtifact(workspaceId, artifact, { signal });
4037
- return download2.bytes;
4038
- }
4039
- const download = await client.createRetainedArtifactDownloadUrl(workspaceId, artifact, {
4040
- signal
4041
- });
4042
- return { url: download.url, expiresAt: download.expiresAt };
4043
- };
4044
- }
4045
- function createSessionRetainedScreenshotLoader(client, workspaceId, sessionId) {
4046
- return async (artifact, signal) => {
4047
- const download = await client.downloadRetainedScreenshot(
4048
- workspaceId,
4049
- sessionId,
4050
- artifact.artifactId,
4051
- { signal }
4052
- );
4053
- if (!download.metadata.available || !download.bytes) return null;
4054
- if (download.metadata.artifactId !== artifact.artifactId || download.metadata.kind !== artifact.kind || download.metadata.contentType !== artifact.contentType || download.metadata.originalBytes !== artifact.originalBytes || download.metadata.sha256 !== artifact.sha256 || download.metadata.dimensions?.width !== artifact.dimensions?.width || download.metadata.dimensions?.height !== artifact.dimensions?.height) {
4055
- throw new Error("Retained screenshot receipt verification failed");
4056
- }
4057
- return download.bytes;
4058
- };
4059
- }
4060
- function createWorkspaceRetainedVideoLoader(client, workspaceId) {
4061
- return async (artifactId, signal) => await client.createVideoArtifactPlaybackSource(workspaceId, artifactId, { signal });
4062
- }
4063
-
4064
4064
  // src/timeline/learning-refusal-row.tsx
4065
4065
  import { BrainCircuitIcon as BrainCircuitIcon5 } from "lucide-react";
4066
4066
  import { createContext as createContext12, useContext as useContext14 } from "react";
@@ -4107,12 +4107,23 @@ function LearningRefusalRow({ refusal }) {
4107
4107
  }
4108
4108
 
4109
4109
  export {
4110
+ createWorkspaceRetainedArtifactLoader,
4111
+ createSessionRetainedScreenshotLoader,
4112
+ createWorkspaceRetainedVideoLoader,
4113
+ ToolReviewHistoryProvider,
4110
4114
  UNRECOVERABLE_TEXT,
4111
4115
  ToolReviewFrame,
4112
4116
  DeclineButton,
4113
4117
  ToolActionReviewCard,
4114
4118
  ToolActionReviewDetails,
4115
4119
  KnowledgeActivityProvider,
4120
+ TimelineComputeLabelProvider,
4121
+ ProviderLogoProvider,
4122
+ ToolKindIcon,
4123
+ gitFileDiffToPatch,
4124
+ PierreDiff,
4125
+ defaultToolRegistry,
4126
+ createDefaultToolRegistry,
4116
4127
  AgentRow,
4117
4128
  AgentRowText,
4118
4129
  AgentRowSection,
@@ -4123,14 +4134,6 @@ export {
4123
4134
  EMBEDDED_GENIE_LOADING,
4124
4135
  setStartupDetails,
4125
4136
  useStartupDetails,
4126
- ToolReviewHistoryProvider,
4127
- TimelineComputeLabelProvider,
4128
- ProviderLogoProvider,
4129
- ToolKindIcon,
4130
- gitFileDiffToPatch,
4131
- PierreDiff,
4132
- defaultToolRegistry,
4133
- createDefaultToolRegistry,
4134
4137
  EntranceAnimationProvider,
4135
4138
  useEntranceAnimation,
4136
4139
  SeenActivityIdsProvider,
@@ -4142,10 +4145,7 @@ export {
4142
4145
  inheritFoldRestingState,
4143
4146
  useTurnSettleOpen,
4144
4147
  TurnSummary,
4145
- createWorkspaceRetainedArtifactLoader,
4146
- createSessionRetainedScreenshotLoader,
4147
- createWorkspaceRetainedVideoLoader,
4148
4148
  LearningRefusalActionsProvider,
4149
4149
  LearningRefusalRow
4150
4150
  };
4151
- //# sourceMappingURL=chunk-7TCT7KPQ.js.map
4151
+ //# sourceMappingURL=chunk-BCFHMBMK.js.map