@openscout/scout 0.2.78 → 0.2.80

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 (428) hide show
  1. package/README.md +19 -0
  2. package/bin/scoutd +0 -0
  3. package/dist/build-manifest.json +3 -3
  4. package/dist/client/assets/ActivityScreen-BXm6nJ6L.js +1 -0
  5. package/dist/client/assets/{AddProjectForm-DMnobKch.js → AddProjectForm-CtEiLQnm.js} +1 -1
  6. package/dist/client/assets/{AgentAvatar-D90c1Rzk.js → AgentAvatar-CszU5eaU.js} +1 -1
  7. package/dist/client/assets/AgentConfigurationScreen-CfBXxrsD.js +1 -0
  8. package/dist/client/assets/AgentDefinitionsWorkspace-4Z0aN8AR.js +1 -0
  9. package/dist/client/assets/{AgentDetailCard-BcRBRp88.js → AgentDetailCard-sZuHl1de.js} +1 -1
  10. package/dist/client/assets/AgentFloorView-DMivAYHU.js +1 -0
  11. package/dist/client/assets/AgentInfoScreen-CPkLg1pK.js +1 -0
  12. package/dist/client/assets/{AgentLaneCard-RrNnDZu8.js → AgentLaneCard-nB68f2CI.js} +1 -1
  13. package/dist/client/assets/{AgentLaneChrome-D9ZwUKrl.js → AgentLaneChrome-O9Yf0uR-.js} +1 -1
  14. package/dist/client/assets/AgentLaneDetailSheet-BfhpaEQ3.js +4 -0
  15. package/dist/client/assets/{AgentLaneSummaryResize-BhFmGNzT.js → AgentLaneSummaryResize-Ct3b0TQR.js} +1 -1
  16. package/dist/client/assets/AgentLanesEmbedScreen-CjHMvy3v.js +1 -0
  17. package/dist/client/assets/{AgentLanesPreflight-eSAoDsPi.js → AgentLanesPreflight-DNGvZvjd.js} +1 -1
  18. package/dist/client/assets/AgentLanesView-DqRK5-d2.js +2 -0
  19. package/dist/client/assets/{AgentLiveActions-DBtnD0qE.js → AgentLiveActions-DI4ooSHW.js} +1 -1
  20. package/dist/client/assets/{AgentSessions-DyqOf4nG.js → AgentSessions-BxWIPkWh.js} +2 -2
  21. package/dist/client/assets/AgentsConsole-D6VHSCfZ.js +1 -0
  22. package/dist/client/assets/AgentsScreen-zR6b2bUL.js +1 -0
  23. package/dist/client/assets/AgentsSubnav-q0xcZi6C.js +1 -0
  24. package/dist/client/assets/{AtopView-BCkae3e1.js → AtopView-VZkk40v0.js} +1 -1
  25. package/dist/client/assets/BackToPicker-DZg_4nHL.js +1 -0
  26. package/dist/client/assets/{BriefingDetailScreen-BwFyysT8.js → BriefingDetailScreen-BZU4qMwE.js} +1 -1
  27. package/dist/client/assets/{BriefingsScreen-BQEevztH.js → BriefingsScreen-Bfc3tqPp.js} +1 -1
  28. package/dist/client/assets/{BrokerMetadataPanel-7UjcuNjd.js → BrokerMetadataPanel-CaFe6kdh.js} +1 -1
  29. package/dist/client/assets/BrokerScreen-Chh8sGen.js +5 -0
  30. package/dist/client/assets/{ChatCollapsedStrip-CQSYSd8s.js → ChatCollapsedStrip-Cov54p9V.js} +1 -1
  31. package/dist/client/assets/CodeDiffPane-C1ebFt-Y.js +1 -0
  32. package/dist/client/assets/{CodeProjectPicker-DqKFCpLU.js → CodeProjectPicker-tsCly-f3.js} +1 -1
  33. package/dist/client/assets/CodeScreen-D0hpZNLP.js +1 -0
  34. package/dist/client/assets/{ContextMenu-bARZqTzD.js → ContextMenu-N-Z6X0Z1.js} +1 -1
  35. package/dist/client/assets/ConversationComposer-CiEF7dhd.js +1 -0
  36. package/dist/client/assets/ConversationFeedRows-5it6QNBV.js +1 -0
  37. package/dist/client/assets/ConversationHeader-BGgbITvr.js +1 -0
  38. package/dist/client/assets/ConversationPanels-vI9YuQJh.js +2 -0
  39. package/dist/client/assets/ConversationScreen-C-PrCRz1.js +1 -0
  40. package/dist/client/assets/ConversationScreen-yIKEsm-8.css +1 -0
  41. package/dist/client/assets/ConversationStatus-COEj5loj.js +1 -0
  42. package/dist/client/assets/{DataTable-E8s_MmoA.js → DataTable-BoofV-_4.js} +1 -1
  43. package/dist/client/assets/{DispatchAftermath-Dpe88DFX.js → DispatchAftermath-OXYlMbT1.js} +1 -1
  44. package/dist/client/assets/{DocumentFocusViewer-BeVwwl26.js → DocumentFocusViewer-BCG2kOmd.js} +1 -1
  45. package/dist/client/assets/{EmbeddableSurfacesLab-BQqFQVnI.js → EmbeddableSurfacesLab-C2SZvrHJ.js} +1 -1
  46. package/dist/client/assets/{EmptyState-4F9XDFQm.js → EmptyState-DypEjx0V.js} +1 -1
  47. package/dist/client/assets/{FileViewerPane-CLgUhSm4.js → FileViewerPane-CXCq-oKj.js} +1 -1
  48. package/dist/client/assets/{FleetSearch-Dz5euQJe.js → FleetSearch-Dj7-CfNi.js} +1 -1
  49. package/dist/client/assets/FlightObserveScreen-Yq5NtQQJ.js +1 -0
  50. package/dist/client/assets/FollowScreen-DRgYuAvp.js +1 -0
  51. package/dist/client/assets/HarnessMark-BE-YSyci.js +1 -0
  52. package/dist/client/assets/HarnessesScreen-L-emPcXd.js +1 -0
  53. package/dist/client/assets/HerdrSession-DKFCJMst.js +4 -0
  54. package/dist/client/assets/{HomeHero-B3uYd-pP.js → HomeHero-CAEg8Yg5.js} +1 -1
  55. package/dist/client/assets/KnowledgeSearchInspector-C2EZsQ5i.js +1 -0
  56. package/dist/client/assets/KnowledgeSearchScreen-DvdOFh-b.js +1 -0
  57. package/dist/client/assets/{LaneToolHoverCard-Bla0gBdm.js → LaneToolHoverCard-DrPXYZvQ.js} +1 -1
  58. package/dist/client/assets/LaneTraceDetailSheet-Dl7foF88.js +1 -0
  59. package/dist/client/assets/{LaneTraceEventFocus-BF9ERP5O.js → LaneTraceEventFocus-X4-DDFEo.js} +1 -1
  60. package/dist/client/assets/{MeshCanvas-DFEPkpqY.js → MeshCanvas-rtCBD7s6.js} +2 -2
  61. package/dist/client/assets/{MeshCanvasMinimap-CyVFYixr.js → MeshCanvasMinimap-CuvXOkc7.js} +1 -1
  62. package/dist/client/assets/MeshScreen-D5zzTn0o.js +1 -0
  63. package/dist/client/assets/{MeshTopologyView-CalkZghg.js → MeshTopologyView-CeTShs-U.js} +2 -2
  64. package/dist/client/assets/{MessageComposerSuggestions-DpxN9WiB.js → MessageComposerSuggestions-Cs9u-F_3.js} +1 -1
  65. package/dist/client/assets/MessagesScreen-BhOJ7_tj.js +1 -0
  66. package/dist/client/assets/MissionContextRail-0O-Zu1Tn.js +1 -0
  67. package/dist/client/assets/MissionControlView-D2JO9u-y.js +1 -0
  68. package/dist/client/assets/{MissionFocusOverlay-wlCmWDCT.js → MissionFocusOverlay-LnjmqBiW.js} +1 -1
  69. package/dist/client/assets/MissionLeftAgentRow-nc1Jyq3D.js +1 -0
  70. package/dist/client/assets/MissionLogPane-lZ9vUftY.js +1 -0
  71. package/dist/client/assets/{NewAgentModal-Bg-eWHpY.js → NewAgentModal-K1cvdmZr.js} +1 -1
  72. package/dist/client/assets/NewChatComposer-C5LT7MF7.css +1 -0
  73. package/dist/client/assets/NewChatComposer-DXDxV2Mh.js +19 -0
  74. package/dist/client/assets/{NewChatOrigin-Bk2OyVjI.js → NewChatOrigin-CnjoswTG.js} +1 -1
  75. package/dist/client/assets/ObserveEmbedScreen-CRpzYf0Y.js +2 -0
  76. package/dist/client/assets/{ObserveTextFlow-rsFj_rVo.js → ObserveTextFlow-DJxQc2H6.js} +2 -2
  77. package/dist/client/assets/{ObservedTopologyPanel-DyUeV98H.js → ObservedTopologyPanel-C1AQM0Mq.js} +1 -1
  78. package/dist/client/assets/OpenScoutAppShell-DrHYD_pd.js +87 -0
  79. package/dist/client/assets/OpsAgentsView-BnMX0vEY.js +1 -0
  80. package/dist/client/assets/OpsScreen-BeC0lieE.js +1 -0
  81. package/dist/client/assets/OpsSubnav-D5Bpowtk.js +1 -0
  82. package/dist/client/assets/{PlanView-C1CjH3PG.js → PlanView-DDXdC19M.js} +1 -1
  83. package/dist/client/assets/ProjectAgentProfile-zE1cApxw.js +1 -0
  84. package/dist/client/assets/{ProjectAgentProfileBar-CtTpj6fU.js → ProjectAgentProfileBar-MODhG0P6.js} +1 -1
  85. package/dist/client/assets/ProjectAgentProfileHero-C1ImgGDu.js +1 -0
  86. package/dist/client/assets/ProjectsInbox-C3Jd6JTk.js +2 -0
  87. package/dist/client/assets/{ProjectsRail-BgiuV4LR.js → ProjectsRail-B1zrQLZe.js} +1 -1
  88. package/dist/client/assets/ProjectsScreen-PW_NH5VK.js +1 -0
  89. package/dist/client/assets/ProjectsThreadAside-DaCEUWN1.js +1 -0
  90. package/dist/client/assets/Provider-DSsb2gLR.js +1 -0
  91. package/dist/client/assets/{RailRow-BoGxAHNF.js → RailRow-DerXOXQS.js} +1 -1
  92. package/dist/client/assets/RawSessionsTable-LWEvXJzj.js +1 -0
  93. package/dist/client/assets/RealtimeVoiceScreen-XtxbCjOs.js +1 -0
  94. package/dist/client/assets/{RepoDiffEmbedScreen-C0rumUME.js → RepoDiffEmbedScreen-C9oLCcZX.js} +1 -1
  95. package/dist/client/assets/{RepoDiffPageScreen-DMv6DioL.js → RepoDiffPageScreen-CGEMAv2Z.js} +1 -1
  96. package/dist/client/assets/RepoDiffViewer-CB8PSVey.js +7 -0
  97. package/dist/client/assets/RepoDiffViewerLazy-DIxkiMto.js +2 -0
  98. package/dist/client/assets/{ReposScreen-CB_YBWYf.js → ReposScreen-BN1lVjOj.js} +2 -2
  99. package/dist/client/assets/{ScoutDeckSurface-CxIYFyWx.js → ScoutDeckSurface-BCpl0QCx.js} +1 -1
  100. package/dist/client/assets/{ScoutSurface-CYz_TcWC.js → ScoutSurface-BEnDlynn.js} +1 -1
  101. package/dist/client/assets/{ScoutbotBroadcastChip-L_R9atj0.js → ScoutbotBroadcastChip-z9R_pC_U.js} +1 -1
  102. package/dist/client/assets/{ScoutbotFxLab-CgiZMDMW.js → ScoutbotFxLab-fAROyIfz.js} +1 -1
  103. package/dist/client/assets/{ScoutbotRealtimeVoiceCall-FMQOr1Np.js → ScoutbotRealtimeVoiceCall-CDyFJX8m.js} +1 -1
  104. package/dist/client/assets/{SecondaryNav-B3-nh5dM.js → SecondaryNav-Hv5AJ3Fv.js} +1 -1
  105. package/dist/client/assets/SessionEmbedScreen-CDRpQc3g.js +1 -0
  106. package/dist/client/assets/SessionObserve-BmmJ8dEh.js +12 -0
  107. package/dist/client/assets/SessionObserve-CLrHfAKZ.css +1 -0
  108. package/dist/client/assets/SessionObserveEvidence-CEedIk2a.js +1 -0
  109. package/dist/client/assets/SessionRefScreen-Dk-O4OVt.js +1 -0
  110. package/dist/client/assets/SessionsScreen-BJEjuo2X.js +1 -0
  111. package/dist/client/assets/{SettingsDrawer-XfdAa_nD.js → SettingsDrawer-DL-SVLdd.js} +3 -3
  112. package/dist/client/assets/SettingsDrawer-UX7pFJU_.css +1 -0
  113. package/dist/client/assets/SettingsScreen-DJ-BhBwR.js +1 -0
  114. package/dist/client/assets/{ShikiPane-Ap1iPxYb.js → ShikiPane-B7O4if20.js} +1 -1
  115. package/dist/client/assets/{SlidePanel-COwtoJqR.js → SlidePanel-B3gc5HnM.js} +1 -1
  116. package/dist/client/assets/SpriteAvatar-BpQDpOkq.js +1 -0
  117. package/dist/client/assets/{StatusPill-DhBL__p8.js → StatusPill-B33sQinT.js} +1 -1
  118. package/dist/client/assets/{TailView-DGj_5HA9.js → TailView-DL3YZkzE.js} +2 -2
  119. package/dist/client/assets/Terminal-Dp1FSGIS.js +1 -0
  120. package/dist/client/assets/TerminalEmbedScreen-DP9IM4xf.js +1 -0
  121. package/dist/client/assets/{TextDocumentSurface-BpAw4eQS.js → TextDocumentSurface-DRjctOIt.js} +1 -1
  122. package/dist/client/assets/{TmuxPeek-m1osv33Q.js → TmuxPeek-DNC4uWky.js} +1 -1
  123. package/dist/client/assets/{VoicePermissionsPanel-DsK53ar4.js → VoicePermissionsPanel-WLN0V-Xv.js} +1 -1
  124. package/dist/client/assets/{WorkDetailScreen-Bx0JimPC.js → WorkDetailScreen-D2Yl0mYZ.js} +3 -3
  125. package/dist/client/assets/{WorkFilesViewer-Btl6C2Q1.js → WorkFilesViewer-BbVfcUN-.js} +1 -1
  126. package/dist/client/assets/{activity-CA8qS6PI.js → activity-BxwKkT8z.js} +1 -1
  127. package/dist/client/assets/{addon-fit-BZ-kXjeN.js → addon-fit-B9O2vJoh.js} +1 -1
  128. package/dist/client/assets/{addon-webgl-D9-EQVEK.js → addon-webgl-BhRZFDcn.js} +1 -1
  129. package/dist/client/assets/{agent-essentials-BSY1o46q.js → agent-essentials-SrzMYEXV.js} +1 -1
  130. package/dist/client/assets/agent-identity-BxCsXnDp.js +1 -0
  131. package/dist/client/assets/agent-lane-card-BkWVDYM8.css +1 -0
  132. package/dist/client/assets/{agent-lane-card-model-r2frk57c.js → agent-lane-card-model-DSWdGu-v.js} +1 -1
  133. package/dist/client/assets/agent-lane-detail-BNNm6FNu.js +2 -0
  134. package/dist/client/assets/{agent-lane-preview-CmHVe3dU.js → agent-lane-preview-C33Dwpn7.js} +1 -1
  135. package/dist/client/assets/{agent-lanes-model-B4YTt4OF.js → agent-lanes-model-CPgQRenB.js} +2 -2
  136. package/dist/client/assets/{arc.es-CQBb-dVu.js → arc.es-NlJw-19N.js} +1 -1
  137. package/dist/client/assets/{arrow-down-BPLe0am9.js → arrow-down-D3-IbArq.js} +1 -1
  138. package/dist/client/assets/{arrow-left-DEZzHiPS.js → arrow-left-_vS7itsV.js} +1 -1
  139. package/dist/client/assets/{arrow-up-right-ClxBnsi7.js → arrow-up-right-CcrWONpD.js} +1 -1
  140. package/dist/client/assets/{bot-eu8pBNvI.js → bot-BRINYlC6.js} +1 -1
  141. package/dist/client/assets/{check-DjgFiBxb.js → check-COxArFXG.js} +1 -1
  142. package/dist/client/assets/{chevron-down-BGk5qoEw.js → chevron-down-DRCbnzyY.js} +1 -1
  143. package/dist/client/assets/{chevron-right-XiIHsk4m.js → chevron-right-CNE6QAVr.js} +1 -1
  144. package/dist/client/assets/chunk-HRAB3GC3-CAeEKaf5.js +1 -0
  145. package/dist/client/assets/chunk-JTPDIGGW-s6WbxdjC.js +46 -0
  146. package/dist/client/assets/{chunk-T65CQEWV-CrzwSeEt.js → chunk-T65CQEWV-CiZ_ICHW.js} +1 -1
  147. package/dist/client/assets/chunk-YOZR3KYS-DLOc92uD.js +2 -0
  148. package/dist/client/assets/clock-CyfvRmj6.js +1 -0
  149. package/dist/client/assets/{code-xml-B6jOCM4V.js → code-xml--LjSM4Mv.js} +1 -1
  150. package/dist/client/assets/content-7ZeCPAEt.js +1 -0
  151. package/dist/client/assets/content-BHUcUCH5.js +1 -0
  152. package/dist/client/assets/content-BUhvLPkv.js +1 -0
  153. package/dist/client/assets/content-BomQ5YWo.js +1 -0
  154. package/dist/client/assets/content-C39ELNgC.js +1 -0
  155. package/dist/client/assets/content-C4RYKHut.js +1 -0
  156. package/dist/client/assets/content-CCiZfG4H.js +1 -0
  157. package/dist/client/assets/content-CDpDtVI-.js +1 -0
  158. package/dist/client/assets/content-CO-9CeFd.js +1 -0
  159. package/dist/client/assets/content-CuOLxp1x.js +1 -0
  160. package/dist/client/assets/content-CvtLIjXS.js +1 -0
  161. package/dist/client/assets/content-CzwTUb9n.js +1 -0
  162. package/dist/client/assets/content-DQXbo2RO.js +1 -0
  163. package/dist/client/assets/content-DRTQ9QQb.js +1 -0
  164. package/dist/client/assets/content-LCELs6zg.js +1 -0
  165. package/dist/client/assets/content-Uqt8AG-s.css +1 -0
  166. package/dist/client/assets/content-qsDjA4Au.js +1 -0
  167. package/dist/client/assets/{context-budget-CbB4BDcO.js → context-budget-DX_fwUs3.js} +1 -1
  168. package/dist/client/assets/{conversation-icons-IIG5ha6D.js → conversation-icons-c-hXv7hY.js} +1 -1
  169. package/dist/client/assets/conversation-model-CHwHZNw-.js +1 -0
  170. package/dist/client/assets/conversation-motion-features-T8vF9zED.js +1 -0
  171. package/dist/client/assets/{copy-CQGYbxdu.js → copy-4LfKIdQJ.js} +1 -1
  172. package/dist/client/assets/{createLucideIcon-OpA4Amw5.js → createLucideIcon-ClCdc3F9.js} +1 -1
  173. package/dist/client/assets/discover-7Ks00w-M.js +2 -0
  174. package/dist/client/assets/embed-entry-n2ThmSSX.js +2 -0
  175. package/dist/client/assets/{external-link-CXBytO9o.js → external-link-CnaI1QFS.js} +1 -1
  176. package/dist/client/assets/{eye-0PvebX_a.js → eye-BFlhMzQL.js} +1 -1
  177. package/dist/client/assets/{file-text-BODxCjcz.js → file-text-DG-pufl1.js} +1 -1
  178. package/dist/client/assets/{gestures-CcwOTu8C.js → gestures-CxG3Dphs.js} +1 -1
  179. package/dist/client/assets/home-live-action-BkqGLVRY.js +1 -0
  180. package/dist/client/assets/home-moving-signal-aNJusIzL.js +1 -0
  181. package/dist/client/assets/home-now-card-BQK4EFHx.js +1 -0
  182. package/dist/client/assets/{home-now-card-nano-BcjnOU9H.js → home-now-card-nano-CdtzqSIF.js} +1 -1
  183. package/dist/client/assets/hooks-Dst1TH7n.js +2 -0
  184. package/dist/client/assets/inbox-thread-redesign-B_1ocqaX.css +1 -0
  185. package/dist/client/assets/index-9as_JTUs.css +1 -0
  186. package/dist/client/assets/index-CU9dtwJk.js +1 -0
  187. package/dist/client/assets/{index-DMiGbrBt.js → index-CzVeWScw.js} +6 -6
  188. package/dist/client/assets/index-Dewd56RX.js +1 -0
  189. package/dist/client/assets/index-_YQXKEhb.js +1 -0
  190. package/dist/client/assets/{inspector-panel-DPoCWxKs.js → inspector-panel-DgOM8nCo.js} +2 -2
  191. package/dist/client/assets/keyboard-nav-BJnFoFDP.js +1 -0
  192. package/dist/client/assets/knowledge-search-D_bLoYtC.css +1 -0
  193. package/dist/client/assets/{lane-observe-D0rfKDnU.js → lane-observe-BA3g9aVd.js} +1 -1
  194. package/dist/client/assets/{lane-roster-store-D8x1jac2.js → lane-roster-store-pR4ZaYQm.js} +1 -1
  195. package/dist/client/assets/left-BhzPp-_E.js +1 -0
  196. package/dist/client/assets/left-CN1MABD0.js +2 -0
  197. package/dist/client/assets/left-DDgbsio7.js +1 -0
  198. package/dist/client/assets/left-Dpf2R9uD.js +1 -0
  199. package/dist/client/assets/left-HwwbMVtl.js +2 -0
  200. package/dist/client/assets/left-YfH0daht.js +1 -0
  201. package/dist/client/assets/left-agents-CYUwAy2Z.js +1 -0
  202. package/dist/client/assets/left-default-vEGZALPv.js +1 -0
  203. package/dist/client/assets/left-lanes-bphF-vlX.js +1 -0
  204. package/dist/client/assets/left-mission-B54-c3hq.js +1 -0
  205. package/dist/client/assets/left-np5USKqG.js +1 -0
  206. package/dist/client/assets/left-plan-BNBuDoPQ.js +2 -0
  207. package/dist/client/assets/library-DbCVJG_O.js +1 -0
  208. package/dist/client/assets/{loader-circle-CbHjZsz1.js → loader-circle-Byb9kSFx.js} +1 -1
  209. package/dist/client/assets/{local-agents--00gLMqr.js → local-agents-DBaUbP-_.js} +1 -1
  210. package/dist/client/assets/{mentions-jSuTGeet.js → mentions-fbQJ2mBI.js} +1 -1
  211. package/dist/client/assets/mesh-ops-B1kDjizF.css +1 -0
  212. package/dist/client/assets/mesh-ops-Cnw3vwAu.js +1 -0
  213. package/dist/client/assets/{mesh-view-store-CWidRbTE.js → mesh-view-store-Btlyc7rW.js} +1 -1
  214. package/dist/client/assets/{message-circle-CG-96zts.js → message-circle-aGOfQWm2.js} +1 -1
  215. package/dist/client/assets/{message-markup-3J9pi3nx.js → message-markup-mGF07emJ.js} +1 -1
  216. package/dist/client/assets/{message-square-DSaGpjFU.js → message-square-CIXda-Y7.js} +1 -1
  217. package/dist/client/assets/mission-control-m3BTDQ9l.css +1 -0
  218. package/dist/client/assets/{mission-control-store-BlnEhiCq.js → mission-control-store-CcoNeQHG.js} +1 -1
  219. package/dist/client/assets/mission-wall-CocIM1cF.js +1 -0
  220. package/dist/client/assets/{model-CpAxGuis.js → model-IGCUEsMy.js} +1 -1
  221. package/dist/client/assets/{observe-CuLGD9Zp.js → observe-BNFzh-7B.js} +1 -1
  222. package/dist/client/assets/openAgent-Dbv5wfuL.js +1 -0
  223. package/dist/client/assets/{page-status-DpkedE1F.js → page-status-DDvNdA8s.js} +1 -1
  224. package/dist/client/assets/paperclip-DfpJkR4s.js +1 -0
  225. package/dist/client/assets/{plus--b1raV_O.js → plus-CmFQp9Uj.js} +1 -1
  226. package/dist/client/assets/profile-s3KRbip1.js +1 -0
  227. package/dist/client/assets/{projects-inbox-CHyUFQ6w.js → projects-inbox-Diddml6e.js} +1 -1
  228. package/dist/client/assets/{radio-Bz8ZePxj.js → radio-PauJIekM.js} +1 -1
  229. package/dist/client/assets/{refresh-cw-BBmAnCB7.js → refresh-cw-4oeFn1Jn.js} +1 -1
  230. package/dist/client/assets/repo-diff-DyYmQMSA.css +1 -0
  231. package/dist/client/assets/resolve-panes-cp6eNewO.js +1 -0
  232. package/dist/client/assets/resolve-sidebar-context-Dbo-5PWx.js +1 -0
  233. package/dist/client/assets/right-09W2JJFg.js +1 -0
  234. package/dist/client/assets/right-B-MKhiJ6.js +1 -0
  235. package/dist/client/assets/right-B91Zl8lQ.js +1 -0
  236. package/dist/client/assets/{right-DjRXbnRP.js → right-BcFnuse9.js} +1 -1
  237. package/dist/client/assets/right-BdtMzn35.js +1 -0
  238. package/dist/client/assets/right-BqmKXLtf.js +1 -0
  239. package/dist/client/assets/right-BzeB-Dpt.js +1 -0
  240. package/dist/client/assets/right-CkGOs-sq.js +1 -0
  241. package/dist/client/assets/right-CzGiNBzB.js +1 -0
  242. package/dist/client/assets/right-Dc7uqv7l.js +1 -0
  243. package/dist/client/assets/{rocket-BSNS_rLs.js → rocket-C-AskjZH.js} +1 -1
  244. package/dist/client/assets/router-B-K15T7B.js +1 -0
  245. package/dist/client/assets/{runtime-picker-Bcl5iIX5.js → runtime-picker-BCQD7d4K.js} +1 -1
  246. package/dist/client/assets/{scope-views-U-ucT9m0.js → scope-views-BhkbIFPY.js} +1 -1
  247. package/dist/client/assets/{scout-voice-CU5c0LGi.js → scout-voice-S5_YZ2v8.js} +1 -1
  248. package/dist/client/assets/{scroll-text-D6Pdnar7.js → scroll-text-BV-BB7v-.js} +1 -1
  249. package/dist/client/assets/{search-CWfZtOt2.js → search-C3bSJluv.js} +1 -1
  250. package/dist/client/assets/secondaryNavConfig-Bg4Tc0gT.js +1 -0
  251. package/dist/client/assets/{selection-bridge-16pk1qyG.js → selection-bridge-B1dmkX3P.js} +1 -1
  252. package/dist/client/assets/{send-horizontal-Bg5-QggH.js → send-horizontal-CqogPmbY.js} +1 -1
  253. package/dist/client/assets/{server-CPp4ZJhZ.js → server-Brw5Y1Gh.js} +1 -1
  254. package/dist/client/assets/{session-catalog-BmoyVTJ_.js → session-catalog-9FqXmjBw.js} +1 -1
  255. package/dist/client/assets/session-table-1xdSxSXq.js +1 -0
  256. package/dist/client/assets/{sliders-horizontal-1oW76Xc9.js → sliders-horizontal-CUiOH26y.js} +1 -1
  257. package/dist/client/assets/sparkles-BjCA3Evu.js +1 -0
  258. package/dist/client/assets/{sse-CjIkKo46.js → sse-QcU9bikk.js} +1 -1
  259. package/dist/client/assets/synthetic-agent-routing-aduMYO7P.js +1 -0
  260. package/dist/client/assets/system-surfaces-redesign-B7GQhfpw.css +1 -0
  261. package/dist/client/assets/{tail-display-BdyoLvzY.js → tail-display-BRcJltQa.js} +2 -2
  262. package/dist/client/assets/{tail-events-D19uAGe3.js → tail-events-C6K7bCWB.js} +1 -1
  263. package/dist/client/assets/{terminal-B9AOZQKR.js → terminal-DrTkVXIj.js} +1 -1
  264. package/dist/client/assets/{terminal-relay-CWbJ1RCW.js → terminal-relay-BkXjjSkq.js} +1 -1
  265. package/dist/client/assets/{terminal-screen-19jAI0Cw.css → terminal-screen-BqVnCwl0.css} +1 -1
  266. package/dist/client/assets/terminal-sessions-C3qU8tnY.js +1 -0
  267. package/dist/client/assets/{terminal-takeover-B8UeD9OX.js → terminal-takeover-KvmTwABa.js} +1 -1
  268. package/dist/client/assets/{time-DltNTpLl.js → time-Dhsh_2EG.js} +1 -1
  269. package/dist/client/assets/{use-conversation-list-Byab41G6.js → use-conversation-list-C5sF6WBR.js} +1 -1
  270. package/dist/client/assets/{use-fleet-active-asks-BIbQx5AS.js → use-fleet-active-asks-BOMPW0nl.js} +1 -1
  271. package/dist/client/assets/use-mesh-ops-items-Co05vcTV.js +1 -0
  272. package/dist/client/assets/{use-reduced-motion-RRBkmVkk.js → use-reduced-motion-Dla-G_Jz.js} +1 -1
  273. package/dist/client/assets/use-scout-dev-flags-BOQF3fW2.js +1 -0
  274. package/dist/client/assets/{useAgentHoverCard-DMrbBif0.js → useAgentHoverCard-FtCmY-b9.js} +1 -1
  275. package/dist/client/assets/useContentSecondaryNav-BX7Sq7vy.js +1 -0
  276. package/dist/client/assets/usePierreRuntime-Bo4lD7Ui.js +50 -0
  277. package/dist/client/assets/{wrench-Bkc_0lKF.js → wrench-CeCdjiPF.js} +1 -1
  278. package/dist/client/assets/{x-D3GElQbe.js → x-D4X_y1j_.js} +1 -1
  279. package/dist/client/assets/{xterm-BKR8oAkR.js → xterm-D2a5wrkJ.js} +1 -1
  280. package/dist/client/index.html +2 -2
  281. package/dist/drizzle/0007_lean_venus.sql +26 -0
  282. package/dist/drizzle/0008_luxuriant_ted_forrester.sql +1 -0
  283. package/dist/drizzle/meta/0007_snapshot.json +5767 -0
  284. package/dist/drizzle/meta/0008_snapshot.json +5774 -0
  285. package/dist/drizzle/meta/_journal.json +14 -0
  286. package/dist/main.mjs +29271 -4824
  287. package/dist/node/main.mjs +31635 -11915
  288. package/dist/openscout-terminal-relay.mjs +16 -4
  289. package/dist/pairing-runtime-controller.mjs +37812 -16924
  290. package/dist/runtime/base-daemon.mjs +109 -18
  291. package/dist/runtime/broker-daemon.mjs +22247 -2746
  292. package/dist/runtime/broker-process-manager.mjs +122 -12
  293. package/dist/runtime/mesh-discover.mjs +90 -13
  294. package/dist/scout-control-plane-web.mjs +23083 -3481
  295. package/dist/scout-web-server.mjs +23083 -3481
  296. package/dist/statusline.mjs +2 -0
  297. package/package.json +3 -1
  298. package/dist/client/assets/ActivityScreen-Cu_1V4bq.js +0 -1
  299. package/dist/client/assets/AgentConfigurationScreen-BqfOz90D.js +0 -1
  300. package/dist/client/assets/AgentDefinitionsWorkspace-CUpUrY57.js +0 -1
  301. package/dist/client/assets/AgentFloorView-8LoAEBwS.js +0 -1
  302. package/dist/client/assets/AgentInfoScreen-DZs2_ibL.js +0 -1
  303. package/dist/client/assets/AgentLaneDetailSheet-BXbPls9N.js +0 -5
  304. package/dist/client/assets/AgentLanesEmbedScreen-W3qs022h.js +0 -1
  305. package/dist/client/assets/AgentLanesView-B9vuEEmZ.js +0 -2
  306. package/dist/client/assets/AgentsConsole-BgiYP2wR.js +0 -1
  307. package/dist/client/assets/AgentsScreen-DBi8x4MB.js +0 -1
  308. package/dist/client/assets/AgentsSubnav-DIEO4NPx.js +0 -1
  309. package/dist/client/assets/BackToPicker-BRvfostO.js +0 -1
  310. package/dist/client/assets/BrokerScreen-7ekklu88.js +0 -5
  311. package/dist/client/assets/CodeDiffPane-DDPt6KPh.js +0 -1
  312. package/dist/client/assets/CodeScreen-BxCrpRHd.js +0 -1
  313. package/dist/client/assets/ConversationComposer-Bla3DDvM.js +0 -1
  314. package/dist/client/assets/ConversationFeedRows-B_gPxcqA.js +0 -1
  315. package/dist/client/assets/ConversationHeader-DE3FC0m-.js +0 -1
  316. package/dist/client/assets/ConversationPanels-DLek4H6A.js +0 -2
  317. package/dist/client/assets/ConversationScreen-BDRhx-RU.js +0 -1
  318. package/dist/client/assets/ConversationScreen-C9yMAMYF.css +0 -1
  319. package/dist/client/assets/ConversationStatus-BwVLiiO4.js +0 -1
  320. package/dist/client/assets/FlightObserveScreen-6RpZYwVz.js +0 -1
  321. package/dist/client/assets/FollowScreen-DZ4qfYOY.js +0 -1
  322. package/dist/client/assets/HarnessMark-Cbv3Ib0c.js +0 -1
  323. package/dist/client/assets/HarnessesScreen-CznAImej.js +0 -1
  324. package/dist/client/assets/KnowledgeSearchInspector-Dgdkfvvz.js +0 -1
  325. package/dist/client/assets/KnowledgeSearchScreen-DJDGGaqC.js +0 -1
  326. package/dist/client/assets/LaneTraceDetailSheet-D1CspRbl.js +0 -1
  327. package/dist/client/assets/MeshScreen-DFgevn8N.js +0 -1
  328. package/dist/client/assets/MessagesScreen-C8YKW10Y.js +0 -1
  329. package/dist/client/assets/MissionControlView-lUeAiSVg.js +0 -1
  330. package/dist/client/assets/MissionLeftAgentRow-BpZWntfl.js +0 -1
  331. package/dist/client/assets/MissionLogPane-__MVtEl9.js +0 -1
  332. package/dist/client/assets/NewChatComposer-Cs6OsxK6.js +0 -19
  333. package/dist/client/assets/NewChatComposer-W-t-L4oV.css +0 -1
  334. package/dist/client/assets/ObserveEmbedScreen-y2EpuqRZ.js +0 -2
  335. package/dist/client/assets/OpenScoutAppShell-C_URc8sV.js +0 -87
  336. package/dist/client/assets/OpsAgentsView-UN7iOscs.js +0 -1
  337. package/dist/client/assets/OpsScreen-Buf3LKjb.js +0 -1
  338. package/dist/client/assets/OpsSubnav-DsuXzHah.js +0 -1
  339. package/dist/client/assets/ProjectAgentProfile-DJusrAV-.js +0 -1
  340. package/dist/client/assets/ProjectAgentProfileHero-BFwNJo_N.js +0 -1
  341. package/dist/client/assets/ProjectsInbox-GhVMxOhw.js +0 -2
  342. package/dist/client/assets/ProjectsScreen-eNUBy4YU.js +0 -1
  343. package/dist/client/assets/ProjectsThreadAside-CoBgnHmr.js +0 -1
  344. package/dist/client/assets/Provider-C7UKGHQy.js +0 -1
  345. package/dist/client/assets/RawSessionsTable-DL8y_eEy.js +0 -1
  346. package/dist/client/assets/RealtimeVoiceScreen-ffS-39zy.js +0 -1
  347. package/dist/client/assets/RepoDiffViewer-D_exm6xK.js +0 -7
  348. package/dist/client/assets/RepoDiffViewerLazy-BPgF92Bg.js +0 -2
  349. package/dist/client/assets/SessionEmbedScreen-BVC7yvWF.js +0 -1
  350. package/dist/client/assets/SessionObserve-BpggNO_M.css +0 -1
  351. package/dist/client/assets/SessionObserve-yfXFafp8.js +0 -12
  352. package/dist/client/assets/SessionRefScreen-DRgJu7Jo.js +0 -1
  353. package/dist/client/assets/SessionsScreen-D6XUsZfA.js +0 -1
  354. package/dist/client/assets/SettingsDrawer-CmJt72ww.css +0 -1
  355. package/dist/client/assets/SettingsScreen-Cy8z-EuR.js +0 -1
  356. package/dist/client/assets/SpriteAvatar-DyaGuhik.js +0 -1
  357. package/dist/client/assets/Terminal-CqvGbjXU.js +0 -1
  358. package/dist/client/assets/TerminalEmbedScreen-DuZZFFzW.js +0 -1
  359. package/dist/client/assets/agent-chat-Bfjd9y6c.js +0 -1
  360. package/dist/client/assets/agent-lane-card-Dm7YWoew.css +0 -1
  361. package/dist/client/assets/agent-lane-detail-Djm3YJEa.js +0 -1
  362. package/dist/client/assets/chunk-YOZR3KYS-Bet8khjg.js +0 -47
  363. package/dist/client/assets/content-BDt9VBPk.js +0 -1
  364. package/dist/client/assets/content-BIXf4cKR.js +0 -1
  365. package/dist/client/assets/content-BLm0NBJM.js +0 -1
  366. package/dist/client/assets/content-C2EwTb2y.js +0 -1
  367. package/dist/client/assets/content-C5UbLsDF.js +0 -1
  368. package/dist/client/assets/content-CHU0wwA3.css +0 -1
  369. package/dist/client/assets/content-CR3vdrYY.js +0 -1
  370. package/dist/client/assets/content-CSPVmo2s.js +0 -1
  371. package/dist/client/assets/content-C_FGqx1X.js +0 -1
  372. package/dist/client/assets/content-CvlVUOG8.js +0 -1
  373. package/dist/client/assets/content-D5kJmfgl.js +0 -1
  374. package/dist/client/assets/content-DTpQsomG.js +0 -1
  375. package/dist/client/assets/content-DikVsqLf.js +0 -1
  376. package/dist/client/assets/content-DlUe5Ono.js +0 -1
  377. package/dist/client/assets/content-GIBv_55n.js +0 -1
  378. package/dist/client/assets/content-Q2oclDzi.js +0 -1
  379. package/dist/client/assets/conversation-model-B47vYmWN.js +0 -1
  380. package/dist/client/assets/conversation-motion-features-BdAONVls.js +0 -1
  381. package/dist/client/assets/discover-C1YwpBDE.js +0 -2
  382. package/dist/client/assets/embed-entry-BAcGL3g9.js +0 -2
  383. package/dist/client/assets/home-live-action-B22u89j7.js +0 -1
  384. package/dist/client/assets/home-moving-signal-CK147hxn.js +0 -1
  385. package/dist/client/assets/home-now-card-BgvNWuea.js +0 -1
  386. package/dist/client/assets/hooks-B6y_O2FB.js +0 -2
  387. package/dist/client/assets/inbox-thread-redesign-Bz4FjWzr.css +0 -1
  388. package/dist/client/assets/index-BcuhqXLe.js +0 -1
  389. package/dist/client/assets/index-CJXzfjo9.js +0 -1
  390. package/dist/client/assets/index-DQPvraRS.js +0 -1
  391. package/dist/client/assets/index-DxGoC5l5.css +0 -1
  392. package/dist/client/assets/keyboard-nav-2kv_tGUS.js +0 -1
  393. package/dist/client/assets/knowledge-search-CVxQwxPn.js +0 -1
  394. package/dist/client/assets/knowledge-search-DjrQdiiW.css +0 -1
  395. package/dist/client/assets/left-C--GiIh8.js +0 -2
  396. package/dist/client/assets/left-Cj7Rt89X.js +0 -1
  397. package/dist/client/assets/left-CpNEtFEg.js +0 -1
  398. package/dist/client/assets/left-CzXAuK_t.js +0 -2
  399. package/dist/client/assets/left-agents-Bo9sO1by.js +0 -1
  400. package/dist/client/assets/left-bN4PCAXa.js +0 -1
  401. package/dist/client/assets/left-default-DV9GdvYi.js +0 -1
  402. package/dist/client/assets/left-jYYGAOYD.js +0 -1
  403. package/dist/client/assets/left-lanes-D0l_Co7V.js +0 -1
  404. package/dist/client/assets/left-mission-Ci7zREkQ.js +0 -1
  405. package/dist/client/assets/left-plan-D4U1uflW.js +0 -2
  406. package/dist/client/assets/library-D-RxGiCw.js +0 -1
  407. package/dist/client/assets/mission-control-D3ikEPND.css +0 -1
  408. package/dist/client/assets/openAgent-Bjt57GdM.js +0 -1
  409. package/dist/client/assets/profile-CVRziEDA.js +0 -1
  410. package/dist/client/assets/repo-diff-C9Qs-bEn.css +0 -1
  411. package/dist/client/assets/resolve-panes-r9B3mpW7.js +0 -1
  412. package/dist/client/assets/resolve-sidebar-context-DcG8xGaB.js +0 -1
  413. package/dist/client/assets/right-BHeiIaty.js +0 -1
  414. package/dist/client/assets/right-BkgKo9VT.js +0 -1
  415. package/dist/client/assets/right-BpEU5jWE.js +0 -1
  416. package/dist/client/assets/right-CRZXoy-X.js +0 -1
  417. package/dist/client/assets/right-ChF_pbPy.js +0 -1
  418. package/dist/client/assets/right-DMoUT3KN.js +0 -1
  419. package/dist/client/assets/right-T4Ue6EqM.js +0 -1
  420. package/dist/client/assets/right-wzrLXKur.js +0 -1
  421. package/dist/client/assets/router-Bq5dwf78.js +0 -1
  422. package/dist/client/assets/secondaryNavConfig-DqUIp0Es.js +0 -1
  423. package/dist/client/assets/session-table-DZcrKoIH.js +0 -1
  424. package/dist/client/assets/sparkles-ClfRJQ6w.js +0 -1
  425. package/dist/client/assets/system-surfaces-redesign-CD26LFc0.css +0 -1
  426. package/dist/client/assets/terminal-sessions-D5CIR2OL.js +0 -1
  427. package/dist/client/assets/useContentSecondaryNav-DMl1WNm7.js +0 -1
  428. package/dist/client/assets/usePierreRuntime-wC-yMtBb.js +0 -50
@@ -1 +0,0 @@
1
- import{r as t,j as s}from"./index-DMiGbrBt.js";import{a as b}from"./api-h5zurxmi.js";import{u as p}from"./sse-CjIkKo46.js";import{ConversationScreen as S}from"./ConversationScreen-BDRhx-RU.js";import{SessionObserve as h}from"./SessionObserve-yfXFafp8.js";const j=2500;function x(r){return r?r.length>18?`${r.slice(0,8)}...${r.slice(-6)}`:r:"no session"}function l({children:r}){return s.jsx("div",{className:"s-observe-embed-page",children:r})}function a({title:r,detail:e}){return s.jsx(l,{children:s.jsxs("div",{className:"s-observe-embed-empty",children:[s.jsx("div",{className:"s-observe-embed-empty-title",children:r}),e&&s.jsx("div",{className:"s-observe-embed-empty-detail",children:e})]})})}function c(){const r=typeof window>"u"?"":new URLSearchParams(window.location.search).get("ref")?.trim()??"",[e,u]=t.useState(null),[f,d]=t.useState(!0),[m,v]=t.useState(null),o=t.useCallback(async(i=!1)=>{if(!r){d(!1);return}i||d(!0),v(null);try{const n=await b(`/api/session-ref/${encodeURIComponent(r)}`);u(n)}catch(n){i||u(null),v(n instanceof Error?n.message:String(n))}finally{d(!1)}},[r]);return t.useEffect(()=>{o();const i=window.setInterval(()=>{o(!0)},j);return()=>window.clearInterval(i)},[o]),p(()=>{o(!0)}),r?m&&!e?s.jsx(a,{title:"Session unavailable",detail:m}):f&&!e?s.jsx(a,{title:"Resolving session",detail:r}):e?e.kind==="conversation"?s.jsx(l,{children:s.jsx(S,{conversationId:e.conversationId,navigate:()=>{},embedded:!0,showBackNav:!1})}):s.jsxs(l,{children:[s.jsxs("div",{className:"s-observe-embed-status",children:[s.jsx("span",{className:"s-observe-embed-status-source",children:e.observe.source}),s.jsx("span",{children:e.observe.fidelity}),s.jsx("span",{title:e.observe.sessionId??void 0,children:x(e.observe.sessionId??e.observe.refId)}),s.jsxs("span",{children:[e.observe.data.events.length," events"]}),e.observe.data.live&&s.jsx("span",{className:"s-observe-embed-status-live",children:"Live"})]}),s.jsx(h,{data:e.observe.data,agentId:e.observe.agentId??e.session?.agentId??void 0,sessionId:e.observe.sessionId??e.observe.refId,showRail:!1})]}):s.jsx(a,{title:"Session not found",detail:"This session may have ended or its archive is not on this machine."}):s.jsx(a,{title:"No session reference",detail:"This embed needs a ?ref=<sessionId> query parameter."})}const N=Object.freeze(Object.defineProperty({__proto__:null,SessionEmbedScreen:c,default:c},Symbol.toStringTag,{value:"Module"})),_=Object.freeze(Object.defineProperty({__proto__:null,SessionEmbedScreen:c},Symbol.toStringTag,{value:"Module"}));export{N as S,_ as a};
@@ -1 +0,0 @@
1
- .s-observe{display:grid;grid-template-columns:1fr 320px;grid-template-rows:1fr auto;flex:1;min-height:0;height:100%;overflow:hidden;background:var(--bg);color:var(--ink)}.s-observe--content-only{grid-template-columns:1fr}.s-observe--content-only .s-observe-stream{max-width:min(1040px,100%)}.s-observe--lane{--lane-glyph-size: var(--text-xl);--lane-glyph-width: 18px;--lane-glyph-color: color-mix(in srgb, var(--accent) 62%, var(--dim));grid-template-rows:1fr;height:100%;min-height:0;background:transparent}.s-observe--lane .s-observe-main{--lane-time-col: 62px;--lane-spine-x: 64px;padding:0 var(--space-lg) var(--space-lg);overflow-x:hidden;scrollbar-width:none!important;-ms-overflow-style:none}.s-observe--lane .s-observe-main::-webkit-scrollbar{display:none;width:0;height:0}.s-observe-lane-trace-meta{position:sticky;top:0;z-index:7;flex:none;display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);min-height:32px;margin:0 calc(-1 * var(--space-lg)) var(--space-xs);padding:var(--space-xs) var(--space-lg);border-bottom:1px solid color-mix(in srgb,var(--ink) 6%,transparent);background:color-mix(in srgb,var(--bg) 97%,var(--surface) 3%);box-shadow:0 1px color-mix(in srgb,var(--ink) 3%,transparent)}.s-observe-lane-trace-meta-leading{display:inline-flex;align-items:center;gap:var(--space-sm);min-width:0;flex:none}.s-observe-lane-trace-meta-label{flex:none;font-family:var(--font-sans);font-size:var(--text-2xs);font-weight:600;letter-spacing:.1em;line-height:var(--leading-none);text-transform:uppercase;color:var(--dim)}.s-observe-lane-trace-mode{position:relative;display:inline-flex;align-items:center;gap:4px;min-height:20px;padding:2px 7px;border:1px solid color-mix(in srgb,var(--ink) 8%,transparent);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface) 44%,transparent);color:var(--dim);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-xs);line-height:1;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .14s ease,border-color .14s ease,color .14s ease}.s-observe-lane-trace-mode:hover{color:var(--ink);border-color:color-mix(in srgb,var(--ink) 16%,transparent);background:color-mix(in srgb,var(--surface) 72%,transparent)}.s-observe-lane-trace-mode--concise{color:color-mix(in srgb,var(--accent) 78%,var(--dim));border-color:color-mix(in srgb,var(--accent) 20%,transparent);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.s-observe-lane-trace-mode input{position:absolute;inset:0;margin:0;opacity:0;cursor:pointer}.s-observe-lane-trace-mode svg{flex:none;opacity:.9}.s-observe-lane-trace-mode:has(input:focus-visible){outline:2px solid color-mix(in srgb,var(--accent) 48%,transparent);outline-offset:2px}.s-observe-lane-trace-meta-stats{display:flex;align-items:baseline;gap:.35rem;min-width:0;overflow:hidden;white-space:nowrap;font-family:var(--font-mono);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;letter-spacing:var(--tracking-xs);color:var(--dim)}.s-observe-lane-trace-meta-window{color:var(--muted)}.s-observe-lane-trace-meta-sep{opacity:.5}.s-observe-lane-trace-meta-tag{flex:none;margin-left:var(--space-2xs);padding:0 var(--space-xs);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--ink) 6%,transparent);color:var(--dim);text-transform:lowercase;letter-spacing:var(--tracking-xs);cursor:default}.s-observe--lane .s-observe-stream{max-width:100%;padding:var(--space-xs) var(--space-md) var(--space-lg) calc(var(--lane-time-col) + var(--space-xl))}.s-observe--lane .s-observe-spine{left:var(--lane-spine-x);width:1px;background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--accent) 22%,transparent) 8%,color-mix(in srgb,var(--accent) 38%,transparent) 50%,color-mix(in srgb,var(--accent) 22%,transparent) 92%,transparent 100%);opacity:1}.s-observe--lane .s-observe-row--selectable{cursor:pointer}.s-observe--lane .s-observe-row--selectable:hover .s-observe-row-bead{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.s-observe--lane .s-observe-row--selectable:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:2px}.s-observe-row--highlighted>.s-observe-row-bead{box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 28%,transparent)}.s-observe-row--highlighted>.s-observe-block{background:color-mix(in srgb,var(--accent) 6%,transparent);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md)}.s-observe-row--highlighted>.s-observe-tool{padding:0}.s-lane-trace-sheet-body .s-observe-row--highlighted{z-index:1}.s-lane-trace-sheet-body .s-observe-row--highlighted>.s-observe-row-bead{background:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 34%,transparent),0 0 14px color-mix(in srgb,var(--accent) 45%,transparent)}.s-lane-trace-sheet-body .s-observe-row--highlighted>.s-observe-block{background:color-mix(in srgb,var(--accent) 12%,var(--surface, oklch(.178 .005 260)));outline:1px solid color-mix(in srgb,var(--accent) 36%,transparent);outline-offset:0;border-radius:var(--radius-sm);padding:var(--space-md) var(--space-lg);animation:s-observe-row-focus-pulse 1.4s ease-out 1}.s-lane-trace-sheet-body .s-observe-row--highlighted>.s-observe-tool{padding:0}.s-observe-focus-group{position:relative}.s-observe-focus-group--active{margin-bottom:var(--space-lg)}.s-observe-focus-group--active .s-observe-row--focus-anchor{padding-bottom:var(--space-xs);z-index:1}.s-observe-focus-group--active .s-observe-row--focus-anchor>.s-observe-row-bead{background:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 34%,transparent),0 0 16px color-mix(in srgb,var(--accent) 50%,transparent)}.s-observe-focus-group--active .s-observe-row--focus-anchor>.s-observe-block{background:color-mix(in srgb,var(--accent) 10%,var(--surface, oklch(.178 .005 260)));border-radius:var(--radius-sm) var(--radius-sm) 0 0;outline:1px solid color-mix(in srgb,var(--accent) 34%,transparent);outline-offset:0;padding:var(--space-md) var(--space-lg);animation:none}.s-observe-focus-group--active .s-observe-row--focus-anchor>.s-observe-tool{padding:0}.s-observe-focus-connector{position:relative;left:-14px;width:18px;height:10px;margin-top:-2px;margin-bottom:-1px;border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);border-bottom-left-radius:6px;pointer-events:none}.s-observe-focus-detail{position:relative}@keyframes s-observe-row-focus-pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--accent) 42%,transparent)}40%{box-shadow:0 0 0 6px color-mix(in srgb,var(--accent) 0%,transparent)}to{box-shadow:none}}.s-observe--lane .s-observe-row{padding-bottom:var(--space-md);padding-left:var(--space-sm)}.s-observe--lane .s-observe-row:before{content:"";position:absolute;left:calc(var(--lane-spine-x) + 1px - var(--lane-time-col) - var(--space-lg));top:9px;width:10px;height:1px;background:color-mix(in srgb,var(--accent) 36%,transparent)}@keyframes s-observe-row-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes s-observe-row-tick-enter{0%{width:0;opacity:0}to{width:10px;opacity:1}}.s-observe--lane .s-observe-row--enter{animation:s-observe-row-enter .34s cubic-bezier(.22,1,.36,1) both}.s-observe--lane .s-observe-row--enter:before{animation:s-observe-row-tick-enter .26s cubic-bezier(.22,1,.36,1) both}@media(prefers-reduced-motion:reduce){.s-observe--lane .s-observe-row--enter,.s-observe--lane .s-observe-row--enter:before{animation:none}}.s-observe--lane .s-observe-row:last-child{padding-bottom:var(--space-sm)}.s-observe--lane .s-observe-row--tool-simple{padding-bottom:0}.s-observe--lane .s-observe-row--tool-stacked{margin-top:-3px}.s-observe--lane .s-observe-row--tool-stacked:before{display:none}.s-observe--lane .s-observe-row--tool-stacked .s-observe-row-time{visibility:hidden}.s-observe--lane .s-observe-row--tool-simple>.s-observe-block{margin-top:0}.s-observe--lane .s-observe-row--tool-simple.s-observe-row--selectable{cursor:pointer}.s-observe--lane .s-observe-row--tool-simple.s-observe-row--selectable:hover .s-observe-tool--simple{color:var(--ink)}.s-observe-tool-hover-anchor,.s-observe-row-hover-target{display:block;width:100%;min-width:0}.s-observe--lane .s-observe-row--hover-preview{z-index:2}.s-observe--lane .s-observe-row--hover-preview .s-observe-tool{border-radius:var(--radius-sm);background:color-mix(in srgb,var(--accent) 9%,var(--surface, oklch(.178 .005 260)));outline:1px solid color-mix(in srgb,var(--accent) 28%,transparent);outline-offset:0}.s-observe--lane .s-observe-row--hover-preview .s-observe-tool-cmd-name,.s-observe--lane .s-observe-row--hover-preview .s-observe-tool-cmd-arg{color:var(--ink)}.s-observe-tool-hover-card{--hover-caret-top: 14px;z-index:10050;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--border, oklch(.34 .008 260)) 92%,var(--ink, oklch(.965 .006 260)));background:var(--surface, oklch(.178 .005 260));color:var(--ink, oklch(.965 .006 260));box-shadow:0 12px 28px #00000094,0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent);pointer-events:auto;isolation:isolate}.s-observe-tool-hover-card:before,.s-observe-tool-hover-card:after{content:"";position:absolute;top:var(--hover-caret-top);width:0;height:0;transform:translateY(-50%);pointer-events:none}.s-observe-tool-hover-card:after{height:1px;width:10px;border:none;background:color-mix(in srgb,var(--accent) 42%,var(--border, oklch(.34 .012 80)));transform:translateY(-50%)}.s-observe-tool-hover-card--side-right:before{left:-7px;border-top:7px solid transparent;border-bottom:7px solid transparent;border-right:7px solid var(--surface, oklch(.178 .005 260));filter:drop-shadow(-1px 0 0 color-mix(in srgb,var(--accent) 30%,transparent))}.s-observe-tool-hover-card--side-right:after{left:-11px}.s-observe-tool-hover-card--side-left:before{right:-7px;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:7px solid var(--surface, oklch(.178 .005 260));filter:drop-shadow(1px 0 0 color-mix(in srgb,var(--accent) 30%,transparent))}.s-observe-tool-hover-card--side-left:after{right:-11px}.s-observe-tool-hover-card-cmd{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;color:var(--ink);line-height:1.35;word-break:break-word}.s-observe-tool-hover-card-meta{margin-top:var(--space-3xs);font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--muted)}.s-observe-tool-hover-card-line{margin-top:var(--space-2xs);font-family:var(--font-mono);font-size:var(--text-2xs);line-height:1.4;color:color-mix(in srgb,var(--ink) 72%,var(--muted));white-space:pre-wrap;word-break:break-word}.s-observe-tool-hover-card-hint{margin-top:var(--space-sm);padding-top:var(--space-2xs);border-top:1px solid color-mix(in srgb,var(--ink) 14%,transparent);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-xs);color:color-mix(in srgb,var(--muted) 55%,var(--accent) 45%)}.s-observe--lane .s-observe-row-time{position:absolute;left:calc(-1 * var(--lane-time-col) - var(--space-lg));top:4px;width:var(--lane-time-col);min-width:var(--lane-time-col);max-width:var(--lane-time-col);display:flex;flex-direction:column;align-items:flex-end;font-family:var(--font-mono);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;letter-spacing:.01em;color:color-mix(in srgb,var(--dim) 84%,var(--accent) 16%);text-align:right;white-space:nowrap;padding-right:var(--space-sm)}.s-observe--lane .s-observe-row-clock{font-size:var(--text-2xs);line-height:1.3;letter-spacing:.015em;color:color-mix(in srgb,var(--dim) 90%,transparent)}.s-observe--lane.s-observe--lane-gutter-label{--lane-time-col: 84px;--lane-spine-x: 86px}.s-observe--lane.s-observe--lane-gutter-label .s-observe-row-time{gap:1px}.s-observe--lane.s-observe--lane-gutter-label .s-observe-row-kind{max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:var(--text-xs);font-weight:600;line-height:1.25;letter-spacing:.01em;color:color-mix(in srgb,var(--dim) 82%,var(--accent) 18%)}.s-observe--lane.s-observe--lane-gutter-label .s-observe-row-clock{font-size:var(--text-2xs);line-height:1.25;color:color-mix(in srgb,var(--dim) 78%,transparent)}.s-observe--lane .s-observe-row-repeat{font-size:var(--text-2xs);letter-spacing:.02em;color:color-mix(in srgb,var(--dim) 72%,var(--accent) 28%)}.s-observe--lane .s-observe-row-gap{left:calc(var(--lane-spine-x) + 1px - var(--lane-time-col) - var(--space-lg));top:-1px;transform:translate(-50%);font-size:var(--text-2xs);letter-spacing:.02em;color:color-mix(in srgb,var(--dim) 80%,var(--accent) 20%);opacity:.92}.s-observe--lane .s-observe-row-bead{display:none}.s-observe--lane .s-observe-row>.s-observe-block{margin-top:1px;min-width:0;max-width:100%;overflow:hidden}.s-observe--lane .s-observe-note--lane{display:flex;align-items:center;gap:var(--space-sm);margin:var(--space-2xs) 0;padding:0;border:0;border-radius:0;background:transparent;line-height:1.35;max-width:100%}.s-observe--lane .s-observe-note--lane .s-observe-note-text{flex:none;font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:500;letter-spacing:var(--tracking-xs);text-transform:lowercase;color:var(--dim);word-break:break-word}.s-observe--lane .s-observe-note--lane:after{content:"";flex:1;height:1px;min-width:var(--space-lg);background:color-mix(in srgb,var(--ink) 8%,transparent)}.s-observe--lane .s-observe-row--tech-summary{padding-bottom:var(--space-xs)}.s-observe--lane .s-observe-row--tech-summary:before{width:6px;opacity:.6;background:color-mix(in srgb,var(--dim) 42%,transparent)}.s-observe--lane .s-observe-tech-summary{display:inline-flex;align-items:baseline;gap:var(--space-sm);max-width:100%;min-width:0;padding:2px 8px;border:1px solid color-mix(in srgb,var(--ink) 8%,transparent);border-radius:6px;background:color-mix(in srgb,var(--surface) 34%,transparent);font-family:var(--font-mono);font-size:var(--text-2xs);line-height:1.4;color:var(--dim)}.s-observe--lane .s-observe-tech-summary--toggle{cursor:pointer;text-align:left;transition:border-color .12s ease,background-color .12s ease,color .12s ease}.s-observe--lane .s-observe-tech-summary--toggle:hover,.s-observe--lane .s-observe-tech-summary--toggle:focus-visible{border-color:color-mix(in srgb,var(--accent) 28%,transparent);background:color-mix(in srgb,var(--accent) 8%,var(--surface) 34%);color:color-mix(in srgb,var(--ink) 72%,var(--accent) 28%);outline:none}.s-observe--lane .s-observe-tech-summary--toggle.is-expanded{border-color:color-mix(in srgb,var(--accent) 22%,transparent);background:color-mix(in srgb,var(--accent) 6%,var(--surface) 34%)}.s-observe--lane .s-observe-tech-summary-chevron{flex:none;align-self:center;opacity:.72}.s-observe--lane .s-observe-tech-rollup-details{display:flex;flex-direction:column;gap:0;margin:0 0 var(--space-xs) calc(var(--space-md) + 6px);padding-left:var(--space-md);border-left:1px solid color-mix(in srgb,var(--ink) 10%,transparent)}.s-observe--lane .s-observe-tech-summary-count{flex:none;color:color-mix(in srgb,var(--dim) 72%,var(--accent) 28%);font-weight:600}.s-observe--lane .s-observe-tech-summary-detail{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:color-mix(in srgb,var(--dim) 82%,transparent)}.s-observe--lane .s-observe-system--lane{display:flex;flex-direction:column;gap:var(--space-2xs);margin:0;font-family:var(--font-mono);font-size:var(--text-xs);line-height:1.45;letter-spacing:.01em;color:var(--muted)}.s-observe--lane .s-observe-system--lane .s-observe-system-line{display:block;min-width:0}.s-observe--lane .s-observe-system--lane .s-observe-system-text{color:var(--muted);word-break:break-word}.s-observe--lane .s-observe-grok-permission{display:inline-flex;align-items:center;gap:var(--space-sm);max-width:100%;padding:2px 8px;border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:6px;background:color-mix(in srgb,var(--surface) 55%,transparent);line-height:1.35}.s-observe--lane .s-observe-grok-permission-decision{flex:none;font-size:var(--text-xs);font-weight:700;letter-spacing:.04em;text-transform:lowercase;color:color-mix(in srgb,var(--dim) 82%,var(--accent) 18%)}.s-observe--lane .s-observe-grok-permission-decision.is-allow{color:color-mix(in srgb,var(--accent) 72%,var(--ink) 28%)}.s-observe--lane .s-observe-grok-permission-tool{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs);color:var(--ink)}.s-observe--lane .s-observe-grok-phase{display:inline-flex;align-items:center;max-width:100%;padding:1px 7px;border-radius:999px;background:color-mix(in srgb,var(--ink) 5%,transparent);line-height:1.35}.s-observe--lane .s-observe-grok-phase-label{font-size:var(--text-2xs);letter-spacing:.02em;text-transform:lowercase;color:color-mix(in srgb,var(--dim) 88%,var(--accent) 12%)}.s-observe--lane .s-observe-grok-turn{display:inline-flex;align-items:baseline;gap:var(--space-sm);max-width:100%;line-height:1.35}.s-observe--lane .s-observe-grok-turn-num{flex:none;font-size:var(--text-2xs);font-weight:600;letter-spacing:.04em;text-transform:lowercase;color:color-mix(in srgb,var(--dim) 80%,var(--accent) 20%)}.s-observe--lane .s-observe-grok-turn-model{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-2xs);color:var(--muted)}.s-observe--lane .s-observe-system--lane .s-observe-system-detail{margin:0;padding-left:0;font-size:var(--text-2xs);line-height:1.4;color:var(--dim);font-style:normal;word-break:break-word}.s-observe--lane .s-observe-live-sticky{margin:0 0 var(--space-md);padding-left:calc(var(--lane-time-col) + var(--space-lg) + var(--space-sm))}.s-observe--lane .s-observe-follow-btn{font-family:var(--font-sans);font-size:var(--text-xs);font-weight:500;letter-spacing:.02em;padding:var(--space-2xs) var(--space-md);border-radius:var(--radius-sm);border:0;background:color-mix(in srgb,var(--surface) 72%,transparent)}.s-observe--lane .s-observe-follow-btn--on{color:var(--green);background:color-mix(in srgb,var(--green) 7%,var(--bg))}.s-observe--lane .s-observe-follow-btn--on:hover{color:var(--green);background:color-mix(in srgb,var(--green) 11%,var(--bg))}.s-observe--lane .s-observe-follow-btn:hover{background:color-mix(in srgb,var(--surface) 96%,transparent)}.s-observe--lane .s-observe-copy-btn{display:none}.s-observe--lane .s-observe-message-label{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-accent-title, var(--font-sans));font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb,var(--dim) 78%,var(--accent) 22%)}.s-observe--lane .s-observe-message-label:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.85}.s-observe--lane .s-observe-row--kind-ask{padding-top:var(--space-sm);padding-bottom:var(--space-xl)}.s-observe--lane .s-observe-row--kind-ask:before{left:calc(var(--lane-spine-x) + 1px - var(--lane-time-col) - var(--space-lg) - 3px);top:calc(var(--space-sm) + 17px);width:7px;height:7px;border-radius:50%;background:color-mix(in srgb,var(--accent) 62%,var(--dim));box-shadow:0 0 0 4px var(--bg)}.s-observe--lane .s-observe-row.s-observe-row--kind-ask>.s-observe-ask--lane{width:calc(100% + var(--space-sm) + var(--space-md));max-width:none;margin-left:calc(-1 * var(--space-sm));margin-right:calc(-1 * var(--space-md));border-block:1px solid color-mix(in srgb,var(--accent) 18%,transparent);border-inline:0;border-radius:0;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 7%,transparent),transparent 58%),color-mix(in srgb,var(--surface) 55%,var(--bg));box-shadow:inset 0 1px color-mix(in srgb,var(--ink) 4%,transparent),inset 0 -1px color-mix(in srgb,var(--bg) 60%,transparent);padding:var(--space-lg) var(--space-xl)}.s-observe--lane .s-observe-ask-head{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm)}.s-observe--lane .s-observe-ask-avatar{width:22px;height:22px;flex:none;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-family:var(--font-sans);font-size:var(--text-xs);font-weight:700;color:var(--scout-chrome-avatar-ink)}.s-observe--lane .s-observe-ask-author{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:650;letter-spacing:.01em;color:color-mix(in srgb,var(--ink) 88%,var(--muted))}.s-observe--lane .s-observe-ask-time{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--dim)}.s-observe--lane .s-observe-ask--lane .s-observe-ask-title{display:-webkit-box;margin-bottom:var(--space-2xs);font-family:var(--font-sans);font-size:var(--text-lg);font-weight:620;line-height:1.42;letter-spacing:0;color:color-mix(in srgb,var(--ink) 94%,var(--muted));-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.s-observe--lane .s-observe-ask--lane .s-observe-ask-text{font-family:var(--font-sans);font-size:var(--text-md);font-weight:400;line-height:1.58;color:color-mix(in srgb,var(--ink) 82%,var(--muted));word-break:break-word}.s-observe--lane .s-observe-ask--lane .s-observe-ask-answer{margin-top:var(--space-xs);padding-top:var(--space-xs);gap:var(--space-sm)}.s-observe--lane .s-observe-ask--lane .s-observe-ask-answer-meta{font-size:var(--text-2xs)}.s-observe--lane .s-observe-ask--lane .s-observe-ask-answer-text{font-size:var(--text-xs);line-height:1.5}.s-observe--lane .s-observe-message--lane{position:relative;overflow:hidden;padding:var(--space-sm) var(--space-md) var(--space-sm) var(--space-lg);border-radius:7px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 55%,transparent),color-mix(in srgb,var(--surface) 32%,transparent));border:1px solid color-mix(in srgb,var(--ink) 8%,transparent);box-shadow:inset 0 1px color-mix(in srgb,var(--ink) 5%,transparent)}.s-observe--lane .s-observe-message--lane .s-observe-message-label{margin-bottom:var(--space-xs);color:color-mix(in srgb,var(--dim) 70%,var(--accent) 30%)}.s-observe--lane.s-observe--lane-gutter-label .s-observe-message--lane .s-observe-message-label{display:none}.s-observe--lane .s-observe-message--lane .s-observe-message-text{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:400;line-height:1.5;color:color-mix(in srgb,var(--ink) 84%,var(--muted))}.s-observe--lane .s-observe-message--thinking{border-style:dashed;border-color:color-mix(in srgb,var(--accent) 16%,var(--ink) 7%);background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--surface) 28%,transparent) 0,color-mix(in srgb,var(--surface) 28%,transparent) 8px,transparent 8px,transparent 16px),color-mix(in srgb,var(--surface) 24%,transparent);box-shadow:none}.s-observe--lane .s-observe-message--thinking .s-observe-message-label{color:color-mix(in srgb,var(--dim) 78%,var(--accent) 22%)}.s-observe--lane .s-observe-message--thinking .s-observe-message-text{font-family:var(--font-accent-title, var(--font-sans));font-size:var(--text-base, 15px);font-weight:500;font-style:normal;letter-spacing:-.015em;line-height:1.45;color:color-mix(in srgb,var(--ink) 68%,var(--muted))}@media(prefers-reduced-motion:no-preference){.s-observe--lane .s-observe-message--thinking{animation:s-observe-thinking-card 1.8s ease-in-out infinite}}@keyframes s-observe-thinking-card{0%,to{border-color:color-mix(in srgb,var(--accent) 12%,var(--ink) 7%)}50%{border-color:color-mix(in srgb,var(--accent) 24%,var(--ink) 8%)}}.s-observe--lane .s-observe-message--lane .s-observe-lane-expandable-body{align-items:flex-start;gap:var(--space-sm)}.s-observe-lane-expandable{min-width:0}.s-observe-lane-expandable-body{display:flex;align-items:flex-end;gap:var(--space-sm);min-width:0}.s-observe-lane-expandable-text{flex:1;min-width:0}.s-observe-lane-expand{appearance:none;border:0;padding:0;background:transparent;display:inline-flex;flex:none;align-items:center;gap:3px;font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:500;letter-spacing:.02em;line-height:1;text-transform:lowercase;color:var(--dim);cursor:pointer;opacity:.82}.s-observe-lane-expand:hover,.s-observe-lane-expand:focus-visible{color:var(--muted);opacity:1}.s-observe--lane .s-observe-lane-expandable{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2xs);min-width:0}.s-observe--lane .s-observe-lane-expandable-body{flex-direction:column;align-items:flex-start;width:100%}.s-observe--lane .s-observe-lane-expandable-body .s-observe-lane-expand{align-self:flex-end}.s-observe--lane .s-observe-lane-expandable--open .s-observe-message-text,.s-observe--lane .s-observe-lane-expandable--open .s-observe-ask-text{max-height:min(42vh,360px);overflow:auto}.s-observe-tool-header .s-observe-lane-expand{margin-left:auto;flex:none;align-self:center}.s-observe-tool-stream-preview{margin:0;padding:var(--space-xs) var(--space-lg) var(--space-sm);border-top:1px solid color-mix(in srgb,var(--border) 55%,transparent);font-family:var(--font-mono);font-size:var(--text-xs);line-height:1.4;color:var(--dim);white-space:pre-wrap;word-break:break-word;max-height:3.6rem;overflow:hidden}.s-observe--lane .s-observe-tool-diff-inline{display:inline-flex;align-items:baseline;gap:var(--space-2xs);margin-left:var(--space-xs);font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:.01em}.s-observe--lane .s-observe-tool-stream--lane{margin-top:var(--space-2xs);max-height:min(36vh,280px);overflow:auto;white-space:pre-wrap;word-break:break-word}.s-observe--lane .s-observe-tool-result{font-family:var(--font-mono);font-size:var(--text-xs);line-height:1.45}.s-observe--lane .s-observe-row--kind-tool>.s-observe-row-hover-target,.s-observe--lane .s-observe-row--kind-think>.s-observe-block,.s-observe--lane .s-observe-row--kind-system>.s-observe-block,.s-observe--lane .s-observe-row--kind-boot>.s-observe-block,.s-observe--lane .s-observe-row--tech-summary>.s-observe-block{margin-left:var(--space-lg);max-width:calc(100% - var(--space-lg))}.s-observe--lane .s-observe-tool{border:0;border-radius:0;min-width:0;max-width:100%;overflow:hidden;background:color-mix(in srgb,var(--surface) 62%,transparent);transition:background .14s ease,border-color .14s ease}.s-observe--lane .s-observe-tool:hover{border-color:color-mix(in srgb,var(--ink) 14%,transparent);background:color-mix(in srgb,var(--surface) 78%,transparent)}.s-observe--lane .s-observe-tool-header{padding:var(--space-2xs) var(--space-sm);gap:var(--space-sm);align-items:center;min-width:0;overflow:hidden;background:color-mix(in srgb,var(--bg) 35%,transparent)}.s-observe--lane .s-observe-tool-glyph{font-size:var(--lane-glyph-size);width:var(--lane-glyph-width);min-width:var(--lane-glyph-width);flex:none;text-align:center;line-height:1.35;color:var(--lane-glyph-color)}.s-observe--lane .s-observe-tool-cmd-name{color:var(--muted)}.s-observe--lane .s-observe-tool-diff-add,.s-observe--lane .s-observe-diff-line--add{color:color-mix(in srgb,var(--ink) 58%,var(--muted))}.s-observe--lane .s-observe-tool-diff-del,.s-observe--lane .s-observe-diff-line--del{color:color-mix(in srgb,var(--muted) 74%,var(--red) 26%)}.s-observe--lane .s-observe-tool-header--has-body{border-bottom:0}.s-observe--lane .s-observe-tool-diff-preview,.s-observe--lane .s-observe-tool-stream{max-height:3.25rem;overflow:hidden;border-radius:0;background:color-mix(in srgb,var(--bg) 50%,transparent);border:none}.s-observe--lane .s-observe-tool-cmd{flex:1;min-width:0;max-width:100%;font-size:var(--text-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:normal}.s-observe--lane .s-observe-tool--simple,.s-observe--lane .s-observe-tool--simple .s-observe-tool-header{background:transparent;border-left:0;padding:0}.s-observe--lane .s-observe-tool--simple .s-observe-tool-header{gap:var(--space-2xs);line-height:1.2;min-height:0}.s-observe--lane .s-observe-tool--simple .s-observe-tool-glyph{font-size:var(--text-lg);width:16px;min-width:16px;line-height:1.25}.s-observe--lane .s-observe-tool--simple .s-observe-tool-cmd{line-height:1.2}.s-observe--lane .s-observe-tool--simple .s-observe-tool-cmd-name{color:var(--ink)}.s-observe--lane .s-observe-tool--simple:hover{background:transparent;border-color:transparent}.s-observe--lane .s-observe-tool--fam-bash,.s-observe--lane .s-observe-tool--fam-bash .s-observe-tool-header{background:transparent;border-left:0;padding:0}.s-observe--lane .s-observe-row:has(.s-observe-tool--fam-bash),.s-observe--lane .s-observe-row:has(.s-observe-tool--fam-code),.s-observe--lane .s-observe-row:has(.s-observe-bash){background:color-mix(in srgb,var(--ink) 3.5%,transparent);border-radius:var(--radius-sm)}.s-observe--lane .s-observe-tool--fam-bash .s-observe-tool-header,.s-observe--lane .s-observe-tool--fam-bash .s-observe-tool-cmd{display:block;min-width:0;max-width:100%;overflow:hidden}.s-observe--lane .s-observe-bash{--bash-bg: color-mix(in srgb, #000 22%, var(--bg));--bash-seg: color-mix(in srgb, var(--ink) 9%, color-mix(in srgb, #000 22%, var(--bg)));--bash-edge: color-mix(in srgb, var(--ink) 16%, transparent);display:flex;align-items:baseline;width:100%;max-width:100%;padding:1px 8px;border-radius:6px;background:var(--bash-bg);border:1px solid var(--bash-edge);box-shadow:inset 0 1px color-mix(in srgb,var(--ink) 4%,transparent),0 1px 2px #0006;font-family:var(--font-mono);font-size:var(--text-md);white-space:nowrap;overflow:hidden;cursor:default}.s-observe--lane .s-observe-bash-prompt{flex:none;margin-right:8px;font-size:var(--lane-glyph-size);font-weight:700;-webkit-user-select:none;user-select:none;color:color-mix(in srgb,var(--accent) 78%,var(--muted))}.s-observe--lane .s-observe-bash-pl{flex:none;display:inline-flex;align-items:center;margin-right:8px}.s-observe--lane .s-observe-bash-seg{display:inline-flex;align-items:center;padding:1px 5px 1px 7px;background:var(--bash-seg);color:var(--muted);border:1px solid var(--bash-edge);border-right:0;border-radius:3px 0 0 3px;font-size:var(--text-2xs);letter-spacing:var(--tracking-xs)}.s-observe--lane .s-observe-bash-sep{display:inline-block;width:11px;height:11px;flex:none;background:var(--bash-seg);border-top:1px solid var(--bash-edge);border-right:1px solid var(--bash-edge);border-top-right-radius:2px;transform:rotate(45deg);margin-left:-8px}.s-observe--lane .s-observe-bash-cmd{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-observe--lane .s-observe-bash-prog{color:var(--ink);font-weight:600}.s-observe--lane .s-observe-bash-arg{color:var(--muted)}.s-observe--lane .s-observe-bash-flag{color:color-mix(in srgb,var(--muted) 72%,var(--dim))}.s-observe--lane .s-observe-bash-dim{color:var(--dim)}.s-observe--lane .s-observe-bash-dir{color:var(--muted)}.s-observe--lane .s-observe-bash-dir-prefix{color:var(--dim)}.s-observe--lane .s-observe-bash-out{color:var(--s-observe-muted, rgba(255, 255, 255, .52));font-family:var(--s-observe-mono, ui-monospace, monospace);font-size:.92em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(42ch,100%)}.s-observe--lane .s-observe-bash-ok{flex:none;margin-left:9px;color:var(--dim)}.s-observe--lane .s-observe-bash-prog--known{color:var(--ink)}@supports ((-webkit-background-clip: text) or (background-clip: text)){.s-observe--lane .s-observe-bash-prog--known{background:linear-gradient(100deg,var(--ink) 0%,var(--ink) 40%,var(--accent) 50%,var(--ink) 60%,var(--ink) 100%);background-size:240% 100%;background-position:120% 0;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:s-observe-bash-shimmer 1.1s ease-out .2s both}}@keyframes s-observe-bash-shimmer{0%{background-position:120% 0}to{background-position:-40% 0}}@media(prefers-reduced-motion:reduce){.s-observe--lane .s-observe-bash-prog--known{animation:none;-webkit-text-fill-color:var(--ink)}}.s-observe--lane .s-observe-tool-path{display:inline-flex;align-items:baseline;max-width:100%;min-width:0}.s-observe--lane .s-observe-tool-path-dir{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--dim)}.s-observe--lane .s-observe-tool-path-base--file{flex:none;white-space:nowrap;color:var(--ink);font-weight:600}.s-observe--lane .s-observe-tool-path-base--read{flex:none;white-space:nowrap;color:var(--muted)}.s-observe--lane .s-observe-tool-needle{color:var(--ink)}.s-observe--lane .s-observe-tool-needle-q{color:var(--dim)}.s-observe--lane .s-observe-tool-count{margin-left:var(--space-2xs);color:var(--dim)}.s-observe--lane .s-observe-tool-host{color:var(--ink)}.s-observe--lane .s-observe-tool-host-path{margin-left:1px;color:var(--dim)}.s-observe--lane .s-observe-tool-agent-name{color:var(--ink)}.s-observe--lane .s-observe-tool--fam-read{background:color-mix(in srgb,var(--surface) 42%,transparent)}.s-observe--lane .s-observe-tool--fam-read .s-observe-tool-glyph{color:color-mix(in srgb,var(--dim) 55%,var(--accent) 20%)}.s-observe--lane .s-observe-tool--fam-file .s-observe-tool-glyph{color:color-mix(in srgb,var(--accent) 70%,var(--ink) 30%)}.s-observe-embed-page{display:flex;flex-direction:column;height:100vh;min-height:0;overflow:hidden;background:var(--bg);color:var(--ink)}.s-observe-embed-page>.s-observe{flex:1;min-height:0}.s-observe-embed-status{display:flex;align-items:center;gap:var(--space-sm);min-height:28px;padding:0 var(--space-xl);border-bottom:1px solid color-mix(in srgb,var(--ink) 8%,transparent);background:color-mix(in srgb,var(--bg) 92%,black);color:var(--dim);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:600;letter-spacing:0;text-transform:uppercase}.s-observe-embed-status span{min-width:0;max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-observe-embed-status-source{color:var(--accent)}.s-observe-embed-status-live{margin-left:auto;color:var(--green)}.s-observe-embed-ask{flex:none;padding:var(--space-xl) var(--space-3xl) var(--space-lg);border-bottom:1px solid color-mix(in srgb,var(--ink) 9%,transparent);background:color-mix(in srgb,var(--surface) 56%,var(--bg))}.s-observe-embed-ask-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-xl)}.s-observe-embed-ask-kicker{color:var(--accent);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;letter-spacing:var(--tracking-lg);text-transform:uppercase}.s-observe-embed-ask-byline,.s-observe-embed-ask-unknown{display:flex;gap:var(--space-xs);margin-top:3px;color:var(--dim);font-family:var(--font-mono);font-size:var(--text-2xs)}.s-observe-embed-ask-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-sm)}.s-observe-embed-ask-links a{display:inline-flex;align-items:center;gap:4px;color:var(--dim);font-family:var(--font-mono);font-size:var(--text-2xs);text-decoration:none}.s-observe-embed-ask-links a:hover{color:var(--accent)}.s-observe-embed-ask-body{display:-webkit-box;max-width:960px;margin-top:var(--space-md);overflow:hidden;color:var(--ink);font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--leading-relaxed);white-space:pre-wrap;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:5}.s-observe-embed-ask-body.is-expanded{display:block;max-height:min(42vh,420px);overflow-y:auto;-webkit-line-clamp:unset}.s-observe-embed-ask-toggle{margin-top:var(--space-sm);padding:0;border:0;background:transparent;color:var(--dim);cursor:pointer;font-family:var(--font-mono);font-size:var(--text-2xs)}.s-observe-embed-ask-toggle:hover{color:var(--accent)}.s-observe-embed-ask--unknown{padding-block:var(--space-md)}@media(max-width:680px){.s-observe-embed-ask{padding-inline:var(--space-xl)}.s-observe-embed-ask-head{flex-direction:column;gap:var(--space-md)}.s-observe-embed-ask-links{justify-content:flex-start}}.s-observe-embed-page .s-observe-main{padding:var(--space-3xl) var(--space-3xl) var(--space-5xl)}.s-observe-embed-page .s-observe-stream{max-width:100%;padding-left:58px}.s-observe-embed-empty{height:100%;display:grid;place-content:center;gap:var(--space-sm);padding:var(--space-4xl);text-align:center}.s-observe-embed-empty-title{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:700;letter-spacing:var(--tracking-lg);text-transform:uppercase;color:var(--ink)}.s-observe-embed-empty-detail{max-width:320px;font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-normal);color:var(--dim);word-break:break-word}.s-observe-main{grid-column:1;grid-row:1;position:relative;overflow-y:auto;overflow-y:overlay;padding:var(--space-4xl) var(--space-4xl) var(--space-6xl);scrollbar-width:thin;scrollbar-color:transparent transparent}.s-observe-main:hover{scrollbar-color:color-mix(in srgb,var(--ink) 12%,transparent) transparent}.s-observe-evidence-banner,.s-observe-evidence-card{display:flex;align-items:flex-start;gap:var(--space-sm);border:1px solid color-mix(in srgb,var(--border) 84%,transparent);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--surface) 72%,var(--bg));color:var(--muted)}.s-observe-evidence-banner{max-width:min(790px,calc(100% - 68px));margin:calc(-1 * var(--space-lg)) 0 var(--space-xl) 68px;padding:var(--space-md) var(--space-lg)}.s-observe-evidence-card{padding:var(--space-md)}.s-observe-evidence-banner>span:last-child,.s-observe-evidence-card>span:last-child{display:flex;flex-direction:column;gap:var(--space-3xs);min-width:0}.s-observe-evidence-banner strong,.s-observe-evidence-card strong{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;color:var(--ink)}.s-observe-evidence-banner small,.s-observe-evidence-card small{font-family:var(--font-mono);font-size:var(--text-2xs);line-height:var(--leading-normal);color:var(--dim)}.s-observe-evidence-dot{flex:none;width:7px;height:7px;margin-top:.34em;border-radius:50%;background:var(--dim)}[data-tone=live]>.s-observe-evidence-dot{background:var(--green);box-shadow:0 0 0 3px color-mix(in srgb,var(--green) 12%,transparent)}[data-tone=recorded]>.s-observe-evidence-dot{background:var(--accent)}[data-tone=unavailable]>.s-observe-evidence-dot{background:var(--amber)}.s-observe-source{display:inline-flex;align-items:center;max-width:min(100%,860px);gap:var(--space-sm);margin:-4px 0 var(--space-lg) 68px;font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--leading-tight)}.s-observe-source-label{color:var(--dim);letter-spacing:var(--tracking-lg);text-transform:uppercase}.s-observe-source-link{min-width:0;max-width:min(520px,60vw);padding:0;border:0;background:transparent;color:var(--green);cursor:pointer;font:inherit;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.s-observe-source-link:hover{color:var(--ink);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--green) 60%,transparent);text-underline-offset:3px}.s-observe-stream{position:relative;padding-left:68px;max-width:860px;-webkit-user-select:text;user-select:text}.s-observe-block{position:relative}.s-observe-block--inline{padding-right:32px}.s-observe-copy-btn{position:absolute;top:4px;right:4px;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;padding:0;border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--border) 70%,transparent);background:color-mix(in srgb,var(--bg) 85%,transparent);color:var(--muted);cursor:pointer;opacity:0;transition:opacity .12s,color .12s,border-color .12s,background .12s;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.s-observe-block:hover .s-observe-copy-btn,.s-observe-copy-btn:focus-visible{opacity:1}.s-observe-copy-btn:hover{color:var(--ink);border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:color-mix(in srgb,var(--bg) 95%,transparent)}.s-observe-copy-btn--copied{opacity:1;color:var(--green);border-color:color-mix(in srgb,var(--green) 50%,var(--border));background:color-mix(in srgb,var(--green) 8%,var(--bg))}.s-observe-copy-btn--inline{position:static;width:18px;height:18px;flex-shrink:0}.s-observe-spine{position:absolute;left:56px;top:0;bottom:0;width:1px;background:var(--border)}.s-observe-row{position:relative;padding-bottom:var(--space-3xl)}.s-observe-row-gap{position:absolute;left:-42px;top:0;font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--dim);letter-spacing:var(--tracking-sm);opacity:.6}.s-observe-row-time{position:absolute;left:-68px;top:2px;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--dim);letter-spacing:var(--tracking-sm)}.s-observe-row-bead{position:absolute;left:-14px;top:6px;width:9px;height:9px;border-radius:50%;box-shadow:0 0 0 3px var(--bg)}.s-observe-reasoning{min-width:0;max-width:100%}.s-observe-reasoning-header{display:flex;width:100%;min-width:0;min-height:26px;align-items:center;gap:var(--space-sm);padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--dim);font:inherit;text-align:left}.s-observe-reasoning-header--button{cursor:pointer}.s-observe-reasoning-header--button:hover{color:var(--ink)}.s-observe-reasoning-header--button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.s-observe-reasoning-state{display:inline-flex;flex:none;align-items:center;gap:var(--space-xs);color:currentColor;font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:600;letter-spacing:var(--tracking-md);text-transform:uppercase}.s-observe-reasoning-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.s-observe-reasoning--live .s-observe-reasoning-state{color:color-mix(in srgb,var(--accent) 66%,var(--dim))}.s-observe-reasoning--live .s-observe-reasoning-dot{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 10%,transparent)}.s-observe-reasoning-preview{min-width:0;flex:1;overflow:hidden;color:color-mix(in srgb,var(--ink) 56%,var(--muted));font-size:var(--text-lg);line-height:var(--leading-normal);text-overflow:ellipsis;white-space:nowrap}.s-observe-reasoning-chevron{flex:none;margin-left:auto;transition:transform .15s cubic-bezier(.2,.7,.2,1)}.s-observe-reasoning--open .s-observe-reasoning-chevron{transform:rotate(180deg)}.s-observe-reasoning-body{display:grid;grid-template-rows:0fr;overflow:hidden;opacity:0;transition:grid-template-rows .22s cubic-bezier(.2,.7,.2,1),opacity .15s cubic-bezier(.2,.7,.2,1)}.s-observe-reasoning--open .s-observe-reasoning-body{grid-template-rows:1fr;opacity:1}.s-observe-reasoning-body-clip{min-height:0;overflow:hidden}.s-observe-reasoning-body-inner{display:flex;min-width:0;align-items:flex-end;gap:var(--space-sm);padding:var(--space-xs) 0 var(--space-sm) calc(6px + var(--space-sm))}.s-observe-reasoning-text{min-width:0;flex:1;color:color-mix(in srgb,var(--ink) 72%,var(--muted));font-family:var(--font-sans);font-size:var(--text-xl);font-weight:450;line-height:1.5;letter-spacing:-.012em;white-space:pre-wrap;word-break:break-word}.s-observe-reasoning-tools{flex:none;padding-bottom:var(--space-2xs)}.s-observe-reasoning-tools .s-observe-copy-btn{opacity:.72}.s-observe-stream-cursor{display:inline-block;width:2px;height:1.05em;margin-left:var(--space-2xs);background:var(--dim);transform-origin:center;vertical-align:-.16em}.s-observe-stream-cursor[data-receiving]{background:var(--accent)}.s-observe-message--streaming .s-observe-message-text{color:color-mix(in srgb,var(--ink) 90%,var(--muted))}.s-observe-reasoning--compact{padding:var(--space-2xs) 0 var(--space-xs)}.s-observe-reasoning--compact .s-observe-reasoning-header{min-height:22px}.s-observe-reasoning--compact .s-observe-reasoning-preview,.s-observe-reasoning--compact .s-observe-reasoning-text{font-size:var(--text-sm);line-height:1.45}.s-observe-reasoning--compact:not(.s-observe-reasoning--live) .s-observe-reasoning-body-inner{max-height:min(42vh,360px);overflow:auto}@media(prefers-reduced-motion:reduce){.s-observe-reasoning-body,.s-observe-reasoning-chevron{transition:none}}.s-observe-cursor{display:inline-block;width:7px;height:14px;background:var(--dim);margin-left:var(--space-2xs);vertical-align:-2px;animation:s-profile-blink 1s steps(1) infinite}.s-observe-tool{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.s-observe-tool-header{padding:var(--space-sm) var(--space-lg);display:flex;align-items:center;gap:var(--space-md);background:color-mix(in srgb,var(--bg) 50%,var(--surface));min-width:0}.s-observe-tool-header .s-observe-tool-cmd{flex:1;min-width:0}.s-observe-tool-header--has-body{border-bottom:1px solid var(--border)}.s-observe-tool-glyph{font-family:var(--font-mono);font-weight:600;color:var(--accent);font-size:var(--text-lg);width:14px;text-align:center}.s-observe-tool-cmd{font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:var(--tracking-xs);color:var(--ink)}.s-observe-tool-cmd-name{color:var(--dim)}.s-observe-tool-cmd-arg{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere}.s-observe-tool-outcome{margin-left:var(--space-sm);font-size:var(--text-2xs);letter-spacing:var(--tracking-md);text-transform:uppercase}.s-observe-tool-outcome--success{color:var(--green)}.s-observe-tool-result{padding:var(--space-sm) var(--space-xl);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--dim)}.s-observe-tool-diff{padding:var(--space-sm) var(--space-xl);font-family:var(--font-mono);font-size:var(--text-sm)}.s-observe-tool-diff-stats{color:var(--dim);margin-bottom:var(--space-xs)}.s-observe-tool-diff-add{color:var(--green)}.s-observe-tool-diff-del{color:var(--red)}.s-observe-tool-diff-preview{margin:0;padding:var(--space-sm) var(--space-md);background:color-mix(in srgb,var(--bg) 70%,black);border-radius:var(--radius-sm);color:var(--ink);font-size:var(--text-sm);line-height:var(--leading-normal);white-space:pre-wrap;font-family:var(--font-mono)}.s-observe-diff-line--add{color:var(--green)}.s-observe-diff-line--del{color:var(--red)}.s-observe-diff-line--hunk{color:var(--dim)}.s-observe-tool-stream{margin:0;padding:var(--space-sm) var(--space-xl);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--muted);line-height:var(--leading-normal);white-space:pre-wrap}.s-observe-ask{border:1px solid color-mix(in srgb,var(--ink) 12%,var(--border));border-radius:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--ink) 4%,transparent),transparent 56%),color-mix(in srgb,var(--surface) 78%,var(--bg));box-shadow:inset 0 1px color-mix(in srgb,var(--ink) 5%,transparent);padding:var(--space-lg) var(--space-xl)}.s-observe-ask-label{display:flex;align-items:center;gap:var(--space-xs);font-family:var(--font-sans);font-size:var(--text-xs);font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb,var(--ink) 58%,var(--dim));margin-bottom:var(--space-sm)}.s-observe-ask-label:before{content:"";width:6px;height:6px;flex:none;border-radius:50%;background:currentColor;opacity:.8}.s-observe-ask-tags{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-bottom:var(--space-sm)}.s-observe-ask-tag{display:inline-flex;align-items:center;gap:5px;max-width:100%;padding:2px 8px;border:1px solid color-mix(in srgb,var(--ink) 13%,transparent);border-radius:999px;background:color-mix(in srgb,var(--ink) 4%,transparent);font-family:var(--font-mono);font-size:var(--text-2xs);line-height:1.5;color:color-mix(in srgb,var(--dim) 84%,var(--muted))}.s-observe-ask-tag svg{flex:none;opacity:.7}.s-observe-ask-tag-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-observe-ask-tag-detail{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:color-mix(in srgb,var(--ink) 62%,var(--dim))}.s-observe-ask-tag-detail:before{content:"·";margin-right:5px;opacity:.6}.s-observe-ask-title{font-family:var(--font-sans);font-size:var(--text-xl);font-weight:620;line-height:1.42;color:color-mix(in srgb,var(--ink) 94%,var(--muted));margin-bottom:var(--space-sm)}.s-observe-ask-text{font-family:var(--font-sans);font-size:var(--text-md);line-height:1.58;color:color-mix(in srgb,var(--ink) 82%,var(--muted))}.s-observe-ask-answer{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px dashed var(--border);display:flex;gap:var(--space-md);align-items:flex-start}.s-observe-ask-answer-meta{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--dim);flex-shrink:0}.s-observe-ask-answer-text{font-size:var(--text-lg);color:var(--muted);line-height:var(--leading-snug);flex:1}.s-observe-message-label{font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:var(--tracking-lg);text-transform:uppercase;color:var(--dim);margin-bottom:var(--space-2xs)}.s-observe-message-text{font-size:var(--text-lg);line-height:var(--leading-normal);color:var(--ink)}.s-observe-note{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-2xs) var(--space-md);background:color-mix(in srgb,var(--green) 8%,transparent);border-radius:var(--radius-2xl)}.s-observe-note-icon{color:var(--green);font-size:var(--text-sm)}.s-observe-note-text{font-size:var(--text-md);color:var(--muted)}.s-observe-system{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--dim);letter-spacing:var(--tracking-sm)}.s-observe-system-line{display:inline}.s-observe-system-text{color:inherit}.s-observe-system-arrow{color:color-mix(in srgb,var(--dim) 60%,transparent)}.s-observe-system-detail{margin-top:var(--space-2xs);color:var(--muted);font-style:italic}.s-observe-live-sticky{position:sticky;top:10px;z-index:5;display:flex;justify-content:flex-end;pointer-events:none;margin:-2px -10px var(--space-sm) 0;padding:0}.s-observe-follow-btn{pointer-events:auto;display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-2xs) var(--space-md) var(--space-2xs) var(--space-sm);border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--border) 70%,transparent);background:color-mix(in srgb,var(--bg) 80%,transparent);color:var(--muted);font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:var(--tracking-sm);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:color .15s,border-color .15s,background .15s}.s-observe-follow-btn:hover{color:var(--ink);border-color:color-mix(in srgb,var(--border) 100%,transparent);background:color-mix(in srgb,var(--bg) 92%,transparent)}.s-observe-follow-btn--on{color:var(--green);border-color:color-mix(in srgb,var(--green) 35%,var(--border));background:color-mix(in srgb,var(--green) 6%,var(--bg))}.s-observe-follow-btn--on:hover{color:var(--green);border-color:color-mix(in srgb,var(--green) 50%,var(--border));background:color-mix(in srgb,var(--green) 10%,var(--bg))}.s-observe-rail{grid-column:2;grid-row:1;border-left:1px solid var(--border);overflow-y:auto;overflow-y:overlay;padding:var(--space-4xl) var(--space-3xl) var(--space-4xl);display:flex;flex-direction:column;gap:var(--space-4xl);scrollbar-width:thin;scrollbar-color:transparent transparent}.s-observe-rail--context{grid-column:auto;grid-row:auto;height:100%;min-height:0;border-left:0;padding:var(--space-3xl) var(--space-2xl) var(--space-4xl);background:color-mix(in srgb,var(--bg) 96%,black)}.s-observe-rail:hover{scrollbar-color:color-mix(in srgb,var(--ink) 12%,transparent) transparent}.s-observe-rail-label{display:flex;align-items:baseline;gap:var(--space-sm);font-family:var(--font-mono);font-size:var(--text-sm);font-variant:small-caps;font-weight:500;letter-spacing:var(--tracking-sm);text-transform:none;color:color-mix(in srgb,var(--muted) 62%,var(--dim));margin-bottom:var(--space-md)}.s-observe-ctx-detail{font-family:var(--font-mono);font-size:var(--text-xs);color:color-mix(in srgb,var(--dim) 86%,transparent);margin-top:var(--space-sm);line-height:var(--leading-normal)}.s-observe-empty{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0;font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-normal);color:color-mix(in srgb,var(--dim) 78%,transparent)}.s-observe-empty:before{content:"";flex-shrink:0;width:12px;height:1px;background:color-mix(in srgb,var(--dim) 45%,transparent)}.s-observe-detail-list{display:flex;flex-direction:column;gap:1px;border:1px solid color-mix(in srgb,var(--border) 88%,var(--surface));border-radius:var(--radius-lg);overflow:hidden;background:color-mix(in srgb,var(--surface) 90%,var(--bg));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-bottom:var(--space-md)}.s-observe-detail-row{display:grid;grid-template-columns:minmax(84px,108px) minmax(0,1fr);gap:var(--space-lg);align-items:start;padding:var(--space-md) var(--space-lg);background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 2%,transparent),transparent 28%),color-mix(in srgb,var(--surface) 94%,transparent)}.s-observe-detail-value-wrap{display:flex;align-items:center;gap:var(--space-sm);min-width:0;justify-content:end}.s-observe-detail-value-wrap>.s-observe-detail-value,.s-observe-detail-value-wrap>.s-observe-detail-link{flex:1 1 auto;min-width:0}.s-observe-detail-value-wrap .s-observe-copy-btn--inline{opacity:0}.s-observe-detail-row:hover .s-observe-copy-btn--inline,.s-observe-detail-value-wrap .s-observe-copy-btn--inline:focus-visible,.s-observe-detail-value-wrap .s-observe-copy-btn--inline.s-observe-copy-btn--copied{opacity:1}.s-observe-detail-row+.s-observe-detail-row{border-top:1px solid color-mix(in srgb,var(--border) 82%,var(--surface))}.s-observe-detail-label{font-family:var(--font-mono);font-size:var(--text-2xs);font-variant:small-caps;letter-spacing:var(--tracking-sm);text-transform:none;line-height:var(--leading-snug);color:var(--dim)}.s-observe-detail-value{min-width:0;justify-self:end;text-align:right;font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--leading-snug);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-observe-detail-value--wrap{overflow:visible;text-overflow:clip;white-space:normal;word-break:break-word}.s-observe-detail-link{border:0;background:transparent;cursor:pointer;padding:0}.s-observe-detail-link:hover{color:var(--green);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--green) 55%,transparent);text-underline-offset:3px}.s-observe-path-link-group{display:inline-flex;align-items:baseline;gap:var(--space-2xs)}.s-observe-path-link-external{display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--muted);cursor:pointer;padding:0 var(--space-3xs);border-radius:var(--radius-sm);transition:color .15s ease,background .15s ease}.s-observe-path-link-external:hover{color:var(--ink);background:color-mix(in srgb,var(--ink) 6%,transparent)}.s-observe-detail-value--accent{color:var(--accent)}.s-observe-detail-value--good{color:var(--green)}.s-observe-detail-value--warn{color:var(--amber)}.s-observe-files{display:flex;flex-direction:column;gap:var(--space-2xs)}.s-observe-file{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md)}.s-observe-file--visible{background:var(--surface)}.s-observe-file--hidden{opacity:.35}.s-observe-file-glyph{width:14px;height:14px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:var(--text-xs);flex-shrink:0}.s-observe-file-path{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--muted);flex:1;min-width:0;padding:0;border:0;background:transparent;cursor:pointer;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.s-observe-file-path:hover{color:var(--ink);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--green) 45%,transparent);text-underline-offset:3px}.s-observe-file-touches{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--dim)}.s-observe-stats{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm)}.s-observe-stats--usage{margin-bottom:var(--space-md)}.s-observe-stat{display:flex;flex-direction:column;gap:var(--space-3xs);padding:var(--space-md) var(--space-lg);border:1px solid color-mix(in srgb,var(--border) 88%,transparent);border-radius:var(--radius-lg);background:radial-gradient(circle at top right,color-mix(in srgb,var(--accent) 5%,transparent),transparent 42%),color-mix(in srgb,var(--surface) 92%,var(--bg));box-shadow:inset 0 1px color-mix(in srgb,white 4%,transparent),0 6px 16px -20px color-mix(in srgb,black 70%,transparent)}.s-observe-stat--quiet{background:color-mix(in srgb,var(--surface) 42%,transparent);border-color:color-mix(in srgb,var(--border) 48%,transparent);box-shadow:none}.s-observe-stat-value{font-family:var(--font-accent-title);font-size:var(--text-4xl);font-variant-numeric:tabular-nums;letter-spacing:0;line-height:var(--leading-none);color:var(--ink)}.s-observe-stat--quiet .s-observe-stat-value{color:color-mix(in srgb,var(--dim) 70%,transparent)}.s-observe-stat-label{font-family:var(--font-mono);font-size:var(--text-2xs);font-variant:small-caps;letter-spacing:var(--tracking-sm);text-transform:none;color:var(--dim)}.s-observe-stat-detail{margin-top:var(--space-2xs);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-snug);color:var(--dim)}.s-observe-compose{width:100%;max-width:none;margin:0;padding:0}.s-observe-compose-shell{width:100%;border:1px solid color-mix(in srgb,var(--border) 72%,var(--surface));border-radius:var(--radius-xl);background:var(--surface);box-shadow:0 0 0 1px color-mix(in srgb,var(--ink) 2%,transparent);transition:border-color .15s ease,box-shadow .15s ease}.s-observe-compose-shell:focus-within{border-color:color-mix(in srgb,var(--accent) 32%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 6%,transparent)}.s-observe-compose-row{display:grid;grid-template-columns:minmax(0,1fr) repeat(3,34px);grid-template-rows:minmax(74px,auto) 34px;align-items:end;column-gap:var(--space-sm);row-gap:var(--space-xs);min-width:0;padding:var(--space-sm)}.s-observe-compose-input{display:block;grid-column:1 / -1;grid-row:1;flex:1;width:100%;min-width:0;min-height:74px;max-height:180px;resize:none;overflow-y:auto;padding:var(--space-sm) var(--space-2xs) var(--space-sm) var(--space-md);border:0;border-radius:0;background:transparent;color:var(--ink);font-family:var(--font-sans);font-size:var(--text-md);line-height:var(--leading-normal);outline:none}.s-observe-compose-input:focus{box-shadow:none}.s-observe-compose-input::placeholder{color:var(--dim)}.s-observe-compose-input:disabled{cursor:not-allowed;opacity:.58}.s-observe-compose-tool{grid-column:2;grid-row:2;justify-self:end;width:34px;height:34px;border:1px solid color-mix(in srgb,var(--border) 82%,var(--surface));border-radius:50%;background:color-mix(in srgb,var(--bg) 65%,transparent);color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;align-self:flex-end;transition:border-color .12s ease,color .12s ease,background .12s ease,transform .12s ease}.s-observe-compose-row .s-dictation-mic{grid-column:3;grid-row:2;justify-self:end}.s-observe-compose-tool:hover{color:var(--ink);border-color:color-mix(in srgb,var(--ink) 28%,transparent);background:color-mix(in srgb,var(--ink) 6%,transparent)}.s-observe-compose-tool:disabled{cursor:default;opacity:.35}.s-observe-compose-send{grid-column:4;grid-row:2;justify-self:end;width:34px;height:34px;border:0;border-radius:50%;background:var(--ink);color:var(--bg);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;align-self:flex-end;transition:opacity .12s ease,transform .12s ease}.s-observe-compose-send:not(:disabled):hover{transform:scale(1.05)}.s-observe-compose-send:disabled{cursor:default;opacity:.25}.s-observe-compose-status{margin-top:var(--space-sm);color:var(--green);font-family:var(--font-mono);font-size:var(--text-xs)}.s-observe-compose-status--error{color:var(--red)}.s-observe-compose-status--muted{color:var(--dim)}.s-observe-scrubber{grid-column:1 / -1;grid-row:2;border-top:1px solid var(--border);background:color-mix(in srgb,var(--bg) 80%,black);display:flex;flex-direction:column;align-items:stretch;gap:var(--space-sm);padding:var(--space-md) var(--space-3xl) var(--space-lg)}.s-observe-transport{display:flex;align-items:center;gap:var(--space-lg);width:100%}.s-observe-static-evidence{display:flex;align-items:center;gap:var(--space-sm);min-height:32px;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--muted)}.s-observe-static-evidence .s-observe-evidence-dot{margin-top:0}.s-observe-static-evidence small{color:var(--dim)}.s-observe-transport[data-snap] .s-observe-track{background:color-mix(in srgb,var(--ink) 13%,transparent)}.s-observe-play-btn{width:32px;height:32px;border-radius:50%;border:1px solid var(--border);background:var(--bg);color:var(--ink);cursor:pointer;font-size:var(--text-md);display:flex;align-items:center;justify-content:center;flex-shrink:0;padding-left:var(--space-3xs);transition:border-color .12s ease,background .12s ease,color .12s ease,box-shadow .12s ease,transform .12s ease}.s-observe-play-btn:hover{border-color:var(--accent)}.s-observe-play-btn[data-state=tail]{border-color:color-mix(in srgb,var(--accent) 82%,var(--border));background:var(--accent);color:#000;box-shadow:inset 0 2px 4px #00000047,0 0 0 2px color-mix(in srgb,var(--accent) 16%,transparent);transform:translateY(1px)}.s-observe-play-btn[data-state=playing]{border-color:color-mix(in srgb,var(--accent) 72%,var(--border));background:color-mix(in srgb,var(--accent) 18%,var(--bg));color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 8%,transparent)}.s-observe-play-btn[data-state=paused]{background:color-mix(in srgb,var(--ink) 5%,var(--bg));color:color-mix(in srgb,var(--muted) 82%,var(--ink))}.s-observe-rewind-btn{padding:var(--space-2xs) var(--space-sm);border:1px solid var(--border);border-radius:var(--radius-md);background:transparent;color:var(--muted);cursor:pointer;font-size:var(--text-md);flex-shrink:0}.s-observe-rewind-btn:hover{color:var(--ink);border-color:color-mix(in srgb,var(--ink) 30%,transparent)}.s-observe-track-wrap{flex:1;position:relative;height:54px;min-width:0}.s-observe-track-barsHead{position:absolute;left:0;right:0;top:0;display:flex;justify-content:space-between;gap:var(--space-sm);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-md);text-transform:uppercase;color:color-mix(in srgb,var(--muted) 72%,var(--dim));pointer-events:none}.s-observe-track-bars{position:absolute;left:0;right:0;top:15px;height:20px;display:grid;grid-template-columns:repeat(48,minmax(1px,1fr));align-items:end;gap:2px;pointer-events:none}.s-observe-track-bar{min-height:0;border-radius:2px 2px 0 0;background:color-mix(in srgb,var(--accent) 42%,transparent);opacity:0}.s-observe-track-bar[data-active]{background:color-mix(in srgb,var(--accent) 68%,transparent)}.s-observe-track-bar[style]{opacity:1}.s-observe-track{position:absolute;left:0;right:0;top:39px;height:8px;background:color-mix(in srgb,var(--ink) 10%,transparent);border-radius:var(--radius-sm);cursor:pointer}.s-observe-track:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.s-observe-track-tick{position:absolute;width:1.5px;opacity:.7}.s-observe-track-played{position:absolute;left:0;top:0;bottom:0;background:var(--accent);border-radius:var(--radius-xs)}.s-observe-track-cursor{position:absolute;top:-4px;transform:translate(-50%);width:3px;height:16px;background:var(--accent);border-radius:var(--radius-xs)}.s-observe-speed-group{display:flex;gap:var(--space-2xs);flex-shrink:0}.s-observe-speed-btn{padding:var(--space-2xs) var(--space-sm);border:1px solid var(--border);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--text-sm);cursor:pointer;background:transparent;color:var(--muted)}.s-observe-speed-btn--active{background:var(--accent);color:#000;border-color:var(--accent)}@media(max-width:1080px){.s-observe{grid-template-columns:1fr;grid-template-rows:1fr auto auto}.s-observe-rail{grid-column:1;grid-row:2;border-left:0;border-top:1px solid var(--border);padding:var(--space-3xl);gap:var(--space-3xl)}.s-observe-scrubber{grid-column:1;grid-row:3}.s-observe-compose{margin-left:0}.s-observe-transport{gap:var(--space-sm)}.s-observe-detail-row{grid-template-columns:1fr;gap:var(--space-xs)}.s-observe-detail-value{justify-self:start;text-align:left;white-space:normal}.s-observe-stats{grid-template-columns:1fr 1fr}}.s-observe-session-header{display:flex;flex-direction:column;gap:var(--space-sm)}.s-observe-session-active{display:flex;flex-direction:column;gap:var(--space-2xs)}.s-observe-session-row{display:flex;align-items:center;gap:var(--space-sm)}.s-observe-session-id{font-family:var(--mono);font-size:var(--text-sm);letter-spacing:var(--tracking-sm);color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);padding:var(--space-3xs) var(--space-xs);border-radius:var(--radius-sm)}.s-observe-session-time{font-size:var(--text-sm);color:var(--dim)}.s-observe-takeover-btn{margin-left:auto;font-family:var(--mono);font-size:var(--text-xs);letter-spacing:var(--tracking-md);text-transform:uppercase;color:var(--green);background:color-mix(in srgb,var(--green) 8%,transparent);border:1px solid color-mix(in srgb,var(--green) 20%,transparent);padding:var(--space-2xs) var(--space-md);border-radius:var(--radius-sm);cursor:pointer;transition:background .15s,border-color .15s}.s-observe-takeover-btn:hover{background:color-mix(in srgb,var(--green) 16%,transparent);border-color:color-mix(in srgb,var(--green) 35%,transparent)}.s-observe-pair-btn{margin-left:auto;font-family:var(--mono);font-size:var(--text-xs);letter-spacing:var(--tracking-md);text-transform:uppercase;color:var(--ink);background:transparent;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);padding:var(--space-2xs) var(--space-md);border-radius:var(--radius-sm);cursor:pointer;transition:background .15s,border-color .15s,color .15s}.s-observe-pair-btn+.s-observe-takeover-btn{margin-left:0}.s-observe-pair-btn:hover{color:var(--green);background:color-mix(in srgb,var(--green) 6%,transparent);border-color:color-mix(in srgb,var(--green) 25%,transparent)}.s-observe-session-history{display:flex;flex-direction:column;gap:var(--space-2xs);padding-top:var(--space-2xs);border-top:1px solid var(--border)}.s-observe-session-history-label{font-size:var(--text-xs);letter-spacing:var(--tracking-md);text-transform:uppercase;color:var(--dim);margin-bottom:var(--space-3xs)}.s-observe-session-past{display:flex;align-items:center;gap:var(--space-sm);opacity:.6}.s-observe-session-past .s-observe-session-id{color:var(--dim);background:color-mix(in srgb,var(--ink) 5%,transparent)}
@@ -1,12 +0,0 @@
1
- import{r as h,j as t}from"./index-DMiGbrBt.js";import{f as ge}from"./bash-format-BRV5C6Gv.js";import{j as gs,p as He,k as js}from"./tail-display-BdyoLvzY.js";import{l as ks}from"./lane-edit-display-C_Aujldz.js";import{f as ys}from"./lane-tool-detail-0WhMf4Vj.js";import{useLaneToolHoverCard as Ns}from"./LaneToolHoverCard-Bla0gBdm.js";import{e as ws,L as Le,g as Cs,h as Ss,j as Re,o as Ts,b as Pe,f as $s,k as Ls,m as je,l as Ge,a as qe}from"./lane-observe-D0rfKDnU.js";import{b as Rs}from"./lane-ask-display-B6iCAVcd.js";import{d as Ps}from"./colors-BtO5_zlx.js";import{a as ke}from"./api-h5zurxmi.js";import{r as Ue}from"./mentions-jSuTGeet.js";import{d as Es,g as Ve,t as As,a as Is,b as Os,n as Ee}from"./time-DltNTpLl.js";import{M as Ke}from"./message-markup-3J9pi3nx.js";import{q as Bs}from"./terminal-takeover-B8UeD9OX.js";import{j as Fs,k as _s,m as Ds}from"./NewChatComposer-Cs6OsxK6.js";import{u as ye,C as Je}from"./Provider-C7UKGHQy.js";import{o as Ws}from"./openContent-C6XO6kr5.js";import{O as Ms}from"./ObservedTopologyPanel-DyUeV98H.js";import{M as zs}from"./runtime-picker-Bcl5iIX5.js";import"./index-CJXzfjo9.js";import{ObserveReasoningDisclosure as Hs,ObserveStreamCursor as Ae}from"./ObserveTextFlow-rsFj_rVo.js";import{M as Gs}from"./message-circle-CG-96zts.js";import{W as qs}from"./wrench-Bkc_0lKF.js";import{E as Us}from"./external-link-CXBytO9o.js";import{C as Ye}from"./chevron-down-BGk5qoEw.js";import{c as Vs}from"./createLucideIcon-OpA4Amw5.js";import"./AgentDetailCard-BcRBRp88.js";import"./AgentLiveActions-DBtnD0qE.js";import"./eye-0PvebX_a.js";import"./terminal-B9AOZQKR.js";import"./MessageComposerSuggestions-DpxN9WiB.js";import"./HarnessMark-Cbv3Ib0c.js";import"./conversation-model-B47vYmWN.js";import"./NewChatOrigin-Bk2OyVjI.js";import"./keyboard-nav-2kv_tGUS.js";import"./agent-chat-Bfjd9y6c.js";import"./model-Co0zkMIc.js";import"./text-DsBWV_4k.js";import"./x-D3GElQbe.js";import"./search-CWfZtOt2.js";import"./loader-circle-CbHjZsz1.js";import"./file-text-BODxCjcz.js";import"./router-Bq5dwf78.js";import"./terminal-sessions-D5CIR2OL.js";import"./sse-CjIkKo46.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-BTIErYHo.js";import"./ContextMenu-bARZqTzD.js";import"./DocumentFocusViewer-BeVwwl26.js";import"./TextDocumentSurface-BpAw4eQS.js";/* empty css */import"./chevron-right-XiIHsk4m.js";import"./code-xml-B6jOCM4V.js";import"./arrow-left-DEZzHiPS.js";import"./scout-voice-CU5c0LGi.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./use-reduced-motion-RRBkmVkk.js";const Ks=[["path",{d:"M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z",key:"vktsd0"}],["circle",{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor",key:"kqv944"}]],Js=Vs("tag",Ks),Ne=new Set(["bash","shell","terminal","exec","run","command","exec_command","shell_command","local_shell","container_exec","container.exec"]);function I(e){return(e??"").trim()}function G(e){return[e.kind,I(e.tool),I(e.arg),I(e.text),I(e.detail)].join("|")}function Ys(e){if(e.kind!=="tool"||!e.tool||e.result)return!1;const s=I(e.arg).toLowerCase();return s==="started"||s.length>0&&s!=="completed"}function Xs(e){return e.kind!=="tool"||!e.tool?!1:I(e.arg).toLowerCase()==="completed"||!!e.result?.outcome}const Xe=/^permission requested · ([A-Za-z][\w-]*)$/i,Ze=/^permission ([a-z_]+) · ([A-Za-z][\w-]*)$/i;function Qe(e){return e.kind==="system"&&Xe.test(e.text.trim())}function es(e){return e.kind==="system"&&Ze.test(e.text.trim())}function Ie(e){const s=e.text.trim(),n=s.match(Xe);if(n?.[1])return n[1];const a=s.match(Ze);return a?.[2]?a[2]:null}function Zs(e,s){const n=e.text.trim();return{...e,text:s>1?`${n}
2
-
3
- (${s} reasoning updates)`:n}}function Qs(e,s){const n=s.tool??e.tool,a=s.result?.outcome,r=e.arg&&e.arg!=="started"&&e.arg!=="completed"?e.arg:s.arg&&s.arg!=="completed"?s.arg:void 0,o=s.stream?.join(`
4
- `)??"",l=r?o.trim()?`${n} · ${r} · ${o}`:a?`${n} · ${r} · ${a}`:`${n} · ${r}`:s.text.trim()||(a?`${n} completed · ${a}`:`${n} completed`);return{...s,tool:n,arg:r??"completed",text:l,stream:s.stream??e.stream,diff:s.diff??e.diff,detail:s.detail??e.detail,live:s.live??e.live}}function et(e){if(e.kind!=="tool"||!e.tool)return!1;const s=I(e.tool).toLowerCase();if(!Ne.has(s))return!1;const n=I(e.arg);return n.length>0&&n!=="started"&&n!=="completed"}function st(e){if(e.kind!=="tool")return!1;const s=I(e.tool).toLowerCase();return s==="res"?!!(I(e.arg)||(e.stream?.length??0)>0):Ne.has(s)?(e.stream?.length??0)>0:!1}function tt(e){return(e.stream?.length??0)>0?e.stream.join(`
5
- `):I(e.tool).toLowerCase()==="res"?e.arg??"":""}function nt(e,s){const n=tt(s),a=I(e.arg),r=e.tool??s.tool,o=n.trim()?`${r} · ${a} · ${n}`:e.text;return{...e,id:s.id,t:s.t,at:s.at,result:s.result??e.result,stream:n.trim()?[n]:s.stream??e.stream,diff:s.diff??e.diff,detail:s.detail??e.detail,text:o,live:s.live??e.live}}function Oe(e){if(e.kind!=="tool"||e.diff||(e.stream?.length??0)>0)return!1;const s=(e.tool??"").trim(),n=(e.arg??"").trim();if(!s||n==="started"||n==="completed")return!1;const a=e.result?.outcome;if(a!=null&&a!=="success"&&a!==0||e.result&&Object.keys(e.result).length>1)return!1;const r=s.toLowerCase();if(Ne.has(r)){if(!n||n.startsWith("{")||n.startsWith("["))return!1;const{dir:o,spans:l}=ge(n);if(o)return!1;const u=l.filter(c=>c.tier==="prog");return u.length===1&&l.length===1&&u[0].text.length<=64}return n&&n!==s||/\s/u.test(s)?!1:s.length<=64}function at(e){return Math.max(1,e.repeatCount)}function rt(e){const s=e.result?.outcome;if(s==null)return!1;if(typeof s=="number")return s!==0;const n=s.trim().toLowerCase();return n.length>0&&n!=="0"&&n!=="ok"&&n!=="success"&&n!=="succeeded"&&n!=="completed"}function ot(e){if(e.live||e.kind==="boot")return!0;if(e.kind==="tool")return!!e.diff||rt(e);if(e.kind==="note"){const s=e.text.trim().toLowerCase();return s==="turn started"||s==="turn complete"||s==="turn ended"||s==="[turn_started]"||s==="[turn_ended]"||/^turn \d+\b/u.test(s)}if(e.kind==="system"){const s=e.text.trim();return Qe(e)||es(e)||/\b(?:approval|permission|denied|failed|failure|error|exception|aborted|blocked)\b/i.test(s)}return!1}function lt(e){return e.kind==="ask"||e.kind==="message"?!1:!ot(e)}function ae(e,s,n=`${s}s`){return`${e} ${e===1?s:n}`}function it(e){const s={totalCount:0,toolCount:0,thinkCount:0,noteCount:0,systemCount:0};for(const a of e){const r=at(a);switch(s.totalCount+=r,a.event.kind){case"tool":s.toolCount+=r;break;case"think":s.thinkCount+=r;break;case"note":s.noteCount+=r;break;case"system":case"boot":s.systemCount+=r;break}}const n=[s.toolCount>0?ae(s.toolCount,"tool"):null,s.thinkCount>0?ae(s.thinkCount,"reasoning update"):null,s.noteCount>0?ae(s.noteCount,"turn marker"):null,s.systemCount>0?ae(s.systemCount,"system event"):null].filter(a=>!!a);return{...s,labels:n}}function ct(e){return e.labels.length>0?e.labels.join(" · "):ae(e.totalCount,"technical event")}function ut(e){const s=e[0].event,n=e[e.length-1].event,a=it(e),r=ct(a);return{event:{...n,id:`technical-rollup:${s.id}:${n.id}:${a.totalCount}`,kind:"note",text:r,detail:r,tool:void 0,arg:void 0,diff:void 0,result:void 0,stream:void 0,answer:void 0,answerT:void 0,to:void 0,live:e.some(o=>o.event.live)},repeatCount:1,technicalSummary:a,technicalSourceRows:e}}function dt(e){const s=[];let n=[];const a=()=>{n.length!==0&&(s.push(ut(n)),n=[])};for(const r of e){if(lt(r.event)){n.push(r);continue}a(),s.push(r)}return a(),s}function mt(e){const s=[];for(let n=0;n<e.length;n+=1){const a=e[n];if(!a)continue;const r=e[n+1];if(r&&Qe(a)&&es(r)&&I(Ie(a)).toLowerCase()===I(Ie(r)).toLowerCase()){const o={...r,live:r.live??a.live},l=G(o),u=s[s.length-1];u&&G(u.event)===l?(u.repeatCount+=1,u.event=o):s.push({event:o,repeatCount:1}),n+=1;continue}if(r&&Ys(a)&&Xs(r)&&I(a.tool).toLowerCase()===I(r.tool).toLowerCase()){const o=Qs(a,r),l=G(o),u=s[s.length-1];u&&G(u.event)===l?(u.repeatCount+=1,u.event=o):s.push({event:o,repeatCount:1}),n+=1;continue}if(r&&et(a)&&st(r)&&(a.stream?.length??0)===0){const o=nt(a,r),l=G(o),u=s[s.length-1];u&&G(u.event)===l?(u.repeatCount+=1,u.event=o):s.push({event:o,repeatCount:1}),n+=1;continue}if(a.kind==="think"){let o=a,l=1;for(;e[n+l]?.kind==="think";){const c=e[n+l];if(!c)break;o=c,l+=1}const u=Zs(o,l);s.push({event:u,repeatCount:l}),n+=l-1;continue}if(a.kind!=="message"&&a.kind!=="ask"){const o=G(a),l=s[s.length-1];if(l&&G(l.event)===o){l.repeatCount+=1,l.event=a;continue}}s.push({event:a,repeatCount:1})}return s}function ss(e){return e.source==="unavailable"?{label:"Trace unavailable",detail:"The session is known to the broker, but no readable event trace was captured.",tone:"unavailable",replayable:!1}:e.fidelity==="timestamped"&&e.source==="live"&&e.live?{label:"Live observed events",detail:"New timestamped events will appear here while the session runs.",tone:"live",replayable:e.eventCount>1}:e.fidelity==="timestamped"?{label:"Recorded event history",detail:"This timeline is replayed from timestamped session history.",tone:"recorded",replayable:e.eventCount>1}:{label:"Reconstructed session evidence",detail:"Lifecycle and session attachment are available; fine-grained activity may be missing.",tone:"reconstructed",replayable:!1}}async function ht(e){await ke("/api/local-path/reveal",{method:"POST",body:JSON.stringify({path:e.path,...e.basePath?{basePath:e.basePath}:{},...e.agentId?{agentId:e.agentId}:{},...e.sessionId?{sessionId:e.sessionId}:{}})})}const ts={think:"var(--dim)",tool:"var(--accent)",ask:"var(--amber)",message:"var(--muted)",note:"var(--green)",system:"var(--dim)",boot:"var(--dim)"},ft={read:"◎",edit:"✎",bash:"$",grep:"⌕",write:"✎",think:"∿"},bt=20,ns=new Intl.NumberFormat("en-US"),pt=new Intl.NumberFormat("en-US",{notation:"compact",maximumFractionDigits:1});function de(e){if(!Number.isFinite(e)||e<=0)return"0s";const s=Math.floor(e);if(s<60)return`${s}s`;if(s<3600)return`${Math.floor(s/60)}m`;const n=Math.floor(s/3600),a=Math.floor(s%3600/60);return a>0?`${n}h${a}m`:`${n}h`}function vt(e){return Ve(e*1e3)||"0:00"}function xt(e){return!Number.isFinite(e)||e<=0?"0s":de(e)}function me(e,s){return Ts(e,s)}function gt(e,s,n,a=!1){const r=me(e,s);return r!==null?a?{label:$s(r,n),title:Pe(r)}:{label:As(r,n),title:Pe(r)}:a?{label:""}:{label:de(e.t)}}function jt(e,s){const n=me(e,s),a=vt(e.t);return n!==null?{label:Os(n)||de(e.t),title:`${Is(n)} · elapsed ${a}`}:{label:de(e.t),title:`Elapsed ${a} from session start`}}function Be(e,s){return e>=Math.max(0,s-bt)}function te(e){return typeof e!="number"||!Number.isFinite(e)?null:ns.format(e)}function q(e){return typeof e!="number"||!Number.isFinite(e)?"—":Math.abs(e)<1e3?ns.format(e):pt.format(e).toLowerCase()}function kt(e){if(!Number.isFinite(e)||e<=0)return"0s";if(e<60)return`${Math.round(e)}s`;const s=Math.round(e),n=Math.floor(s/3600),a=Math.floor(s%3600/60),r=s%60;return n>0?`${n}h ${a}m`:a>=10||r===0?`${a}m`:`${a}m ${r}s`}function Fe(e){return!!e&&Object.keys(e).length>0}function be(e){return e.filter(s=>!!s)}function xe(e){const n=e.replace(/[\\/]+$/,"").split(/[\\/]/).filter(Boolean);return n[n.length-1]??e}function yt(e){ht(e).catch(s=>{console.warn("Failed to reveal local path",s)})}function U({text:e,label:s="Copy",className:n}){const[a,r]=h.useState(!1),o=h.useRef(null);h.useEffect(()=>()=>{o.current&&clearTimeout(o.current)},[]);const l=h.useCallback(u=>{u.preventDefault(),u.stopPropagation();const c=e,f=()=>{r(!0),o.current&&clearTimeout(o.current),o.current=setTimeout(()=>r(!1),1100)};navigator.clipboard?.writeText?navigator.clipboard.writeText(c).then(f).catch(()=>{_e(c),f()}):(_e(c),f())},[e]);return t.jsx("button",{type:"button",className:`s-observe-copy-btn${a?" s-observe-copy-btn--copied":""}${n?` ${n}`:""}`,onClick:l,"aria-label":s,title:a?"Copied":s,children:a?t.jsx("svg",{width:"11",height:"11",viewBox:"0 0 11 11",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:t.jsx("path",{d:"M2 5.5l2.4 2.4L9 3.4"})}):t.jsxs("svg",{width:"11",height:"11",viewBox:"0 0 11 11",fill:"none",stroke:"currentColor",strokeWidth:"1.2",strokeLinejoin:"round","aria-hidden":"true",children:[t.jsx("rect",{x:"3.4",y:"3.4",width:"6.1",height:"6.1",rx:"1.2"}),t.jsx("path",{d:"M7.6 3.4V2.2a.8.8 0 0 0-.8-.8H2.2a.8.8 0 0 0-.8.8v4.6a.8.8 0 0 0 .8.8h1.2"})]})})}function _e(e){try{const s=document.createElement("textarea");s.value=e,s.style.position="fixed",s.style.opacity="0",s.style.pointerEvents="none",document.body.appendChild(s),s.select(),document.execCommand("copy"),document.body.removeChild(s)}catch(s){console.warn("Clipboard copy failed",s)}}function Nt(e){const s=[],n=[e.tool,e.arg].filter(Boolean).join(" ");return n&&s.push(n),e.result&&s.push(Object.entries(e.result).map(([a,r])=>`${a}: ${r}`).join(" · ")),e.diff&&(s.push(`+${e.diff.add}${e.diff.del>0?` -${e.diff.del}`:""}`),e.diff.preview&&s.push(e.diff.preview)),e.stream&&e.stream.length>0&&s.push(e.stream.join(`
6
- `)),s.join(`
7
- `)}function as({expanded:e,onToggle:s,label:n}){const a=e?"less":n??"more";return t.jsxs("button",{type:"button",className:"s-observe-lane-expand",onClick:s,"aria-expanded":e,"aria-label":e?"Show less":"Show more",children:[e?t.jsx(Je,{size:11,strokeWidth:2,"aria-hidden":"true"}):t.jsx(Ye,{size:11,strokeWidth:2,"aria-hidden":"true"}),t.jsx("span",{children:a})]})}function rs({text:e,className:s,laneMode:n=!1,live:a=!1,renderExpanded:r,renderCollapsed:o}){const[l,u]=h.useState(!1),c=e.trim();if(!n)return t.jsxs("div",{className:s,children:[r?r(c):c,a&&t.jsx(Ae,{text:c})]});const f=je(c),v=Ge(c),y=l?r?r(c):c:o?o(v):v;return t.jsx("div",{className:`s-observe-lane-expandable${l?" s-observe-lane-expandable--open":""}`,children:t.jsxs("div",{className:`${s} s-observe-lane-expandable-body`,children:[t.jsxs("span",{className:"s-observe-lane-expandable-text",children:[y,a&&t.jsx(Ae,{text:c})]}),f&&t.jsx(as,{expanded:l,onToggle:()=>u(m=>!m)})]})})}function wt({event:e,laneMode:s=!1}){const n=e.text??"";return t.jsx(Hs,{text:n,live:!!e.live,compact:s,copyControl:s?void 0:t.jsx(U,{text:n,label:"Copy reasoning",className:"s-observe-copy-btn--inline"})})}function Ct({preview:e}){const s=e.split(`
8
- `);return t.jsx("pre",{className:"s-observe-tool-diff-preview",children:s.map((n,a)=>{const r=n[0],o=r==="+"?"add":r==="-"||r==="−"?"del":n.startsWith("@@")?"hunk":"ctx";return t.jsxs("span",{className:`s-observe-diff-line s-observe-diff-line--${o}`,children:[n,a<s.length-1?`
9
- `:null]},a)})})}function St(e){const s=(e??"").toLowerCase();return s==="shell"?"bash":s}function Tt(e){const s=e.arg?.trim();if(!(!s||s==="started"||s==="completed"))return s}const $t={bash:["bash","shell","terminal","exec","run","command","exec_command","shell_command","local_shell","container_exec","container.exec"],read:["read","view","cat","readfile","open","open_file"],file:["write","writefile","create","edit","multiedit","str_replace","strreplace","str_replace_editor","apply_patch","applypatch","patch","patch_apply","update","delete"],search:["grep","glob","search","rg","ripgrep","find","codebase_search","file_search"],fetch:["webfetch","web_fetch","fetch","websearch","web_search","browse","url"],agent:["agent","task","dispatch","subagent"],generic:[]},Lt={bash:"$",read:"◎",file:"✎",search:"⌕",fetch:"⤓",agent:"◇",generic:"▸"};function Rt(e){const s=(e??"").trim().toLowerCase();if(!s)return"generic";for(const n of["bash","read","file","search","fetch","agent"])if($t[n].includes(s))return n;return"generic"}function os(e){return!e||e==="started"||e==="completed"}function Pt(e){const s=e.trim().replace(/\/+$/u,""),n=s.lastIndexOf("/");return n<0?{dir:"",base:s}:{dir:s.slice(0,n+1),base:s.slice(n+1)}}function Et(e,s=2){const n=e.split("/").filter(Boolean);return n.length===0?"":n.length<=s?`${n.join("/")}/`:`…/${n.slice(-s).join("/")}/`}function At(e){if(!e)return null;for(const s of["matches","count","results","hits"]){const n=e[s];if(typeof n=="number"&&Number.isFinite(n))return n;if(typeof n=="string"&&/^\d+$/u.test(n.trim()))return Number(n.trim())}return null}function It(e){try{const s=new URL(e);return{host:s.host,path:s.pathname+s.search}}catch{return{host:e,path:""}}}function Ot(e){return e.length>=3&&/^(?:ba|z)?sh$/u.test(e[0])&&/^-[a-z]*c$/u.test(e[1])?e.slice(2).join(" "):e.join(" ")}function ne(e,s){const n=e.trim();if(!n.startsWith("{")&&!n.startsWith("["))return null;try{const a=JSON.parse(n);if(a&&typeof a=="object"&&!Array.isArray(a)){const r=a;for(const o of s){const l=r[o];if(typeof l=="string"&&l.trim())return l;if(Array.isArray(l)&&l.every(u=>typeof u=="string"))return Ot(l)}}}catch{}for(const a of s){const r=n.match(new RegExp(`"${a}"\\s*:\\s*"((?:[^"\\\\]|\\\\.)*)`,"u"));if(r?.[1])try{return JSON.parse(`"${r[1]}"`)}catch{return r[1]}}return null}function ls(e){const s=e.match(/\*\*\*\s+(?:Update|Add|Delete|Move|Rename)\s+File:\s*(.+)/u);return s&&s[1].trim().split(/\s*(?:->|=>)\s*/u)[0]?.trim()||null}function is(e,s){const n=s?.trim();if(!n)return"";switch(e){case"bash":return ne(n,["cmd","command","script","input","code"])??n;case"file":return n.includes("*** ")?ls(n)??n:ne(n,["file_path","path","filename","file"])??n;case"read":return ne(n,["file_path","path","filename","file"])??n;case"search":return ne(n,["pattern","query","glob","regex","q","search"])??n;case"fetch":return ne(n,["url","href","uri"])??n;default:return n}}function De({path:e,tone:s}){const n=ks(e),{dir:a,base:r}=Pt(n);return t.jsxs("span",{className:"s-observe-tool-path",title:e,children:[a&&t.jsx("span",{className:"s-observe-tool-path-dir",children:Et(a)}),t.jsx("span",{className:`s-observe-tool-path-base s-observe-tool-path-base--${s}`,children:r})]})}function Bt({path:e}){const s=e.lastIndexOf("/"),n=s>=0?e.slice(0,s+1):"",a=s>=0?e.slice(s+1):e;return t.jsxs("span",{className:"s-observe-bash-dir",children:[n&&t.jsx("span",{className:"s-observe-bash-dir-prefix",children:n}),a]})}function Ft({command:e,title:s,outcome:n,outputPreview:a,cwd:r,powerline:o}){const{dir:l,spans:u}=ge(e,{cwd:r,powerline:o});return t.jsxs("span",{className:"s-observe-bash",title:s??e,children:[l&&t.jsxs("span",{className:"s-observe-bash-pl",children:[t.jsx("span",{className:"s-observe-bash-seg",children:l}),t.jsx("span",{className:"s-observe-bash-sep","aria-hidden":!0})]}),t.jsx("span",{className:"s-observe-bash-prompt","aria-hidden":!0,children:"❯"}),u.length>0?t.jsx("span",{className:"s-observe-bash-cmd",children:u.map((c,f)=>{const v=f>0?" ":"";return c.tier==="dir"?t.jsxs("span",{children:[v,t.jsx(Bt,{path:c.text})]},f):t.jsxs("span",{className:`s-observe-bash-${c.tier}${c.known?" s-observe-bash-prog--known":""}${c.flag?" s-observe-bash-flag":""}`,children:[v,c.text]},f)})}):!l&&t.jsx("span",{className:"s-observe-bash-arg",children:"shell"}),a&&t.jsxs("span",{className:"s-observe-bash-out",title:a,children:[" → ",qe(a,88)]}),n&&t.jsx("span",{className:"s-observe-bash-ok",children:n})]})}function _t({family:e,event:s}){const n=is(e,s.arg),a=n.startsWith("{")||n.startsWith("["),r=!!n&&!os(n)&&!a;switch(e){case"read":return r?t.jsx(De,{path:n,tone:"read"}):t.jsx("span",{className:"s-observe-tool-cmd-name",children:"read"});case"file":{const o=r&&n!=="patch"?n:ls(s.detail??"")??"";return o?t.jsx(De,{path:o,tone:"file"}):t.jsx("span",{className:"s-observe-tool-cmd-name",children:s.tool??"edit"})}case"search":{if(!r)return t.jsx("span",{className:"s-observe-tool-cmd-name",children:"search"});const o=At(s.result);return t.jsxs(t.Fragment,{children:[t.jsxs("span",{className:"s-observe-tool-needle",children:[t.jsx("span",{className:"s-observe-tool-needle-q",children:'"'}),n,t.jsx("span",{className:"s-observe-tool-needle-q",children:'"'})]}),o!=null&&t.jsxs("span",{className:"s-observe-tool-count",children:["· ",o," ",o===1?"match":"matches"]})]})}case"fetch":{if(!r)return t.jsx("span",{className:"s-observe-tool-cmd-name",children:"fetch"});const{host:o,path:l}=It(n);return t.jsxs("span",{className:"s-observe-tool-url",title:n,children:[t.jsx("span",{className:"s-observe-tool-host",children:o}),l&&l!=="/"&&t.jsx("span",{className:"s-observe-tool-host-path",children:qe(l,40)})]})}case"agent":return t.jsx("span",{className:"s-observe-tool-agent-name",children:r?n:s.tool??"agent"});default:return t.jsxs(t.Fragment,{children:[t.jsx("span",{className:"s-observe-tool-cmd-name",children:s.tool}),r?t.jsxs(t.Fragment,{children:[" ",t.jsx("span",{className:"s-observe-tool-cmd-arg",children:n})]}):null]})}}function Dt({event:e,laneMode:s=!1,simple:n=!1,wallLabel:a,wallTitle:r}){const[o,l]=h.useState(!1),u=Rt(e.tool),c=s?Lt[u]:ft[St(e.tool)]??"▸",f=s&&u==="bash",v=f?is("bash",e.arg):"",y=!!v&&!os(v)&&!v.startsWith("{")&&!v.startsWith("["),m=f&&!n,i=y?ge(v).spans.find(k=>k.tier==="prog")?.text??v:"",g=Tt(e)??e.arg?.trim()??"",E=typeof e.result?.outcome=="string"?e.result.outcome.trim():typeof e.result?.outcome=="number"?String(e.result.outcome):void 0,_=s?void 0:e.stream?.[0]?.trim()||void 0,L=!!(E&&E!=="success"),O=!!(L||e.diff||e.stream),R=!s&&(O||je(g,120,2)),B=!R||o,W=!s&&R&&!o&&e.stream?Ge(e.stream.join(`
10
- `),180,2):null;return t.jsxs("div",{className:`s-observe-tool s-observe-block${s?` s-observe-tool--lane s-observe-tool--fam-${u}`:""}${s&&n?" s-observe-tool--simple":""}`,children:[t.jsxs("div",{className:`s-observe-tool-header${O&&!s?" s-observe-tool-header--has-body":""}`,children:[(!f||n)&&t.jsx("span",{className:"s-observe-tool-glyph",children:c}),t.jsxs("span",{className:"s-observe-tool-cmd",title:s&&!m?f&&y?v:`${e.tool??""} ${g}`.trim()||void 0:void 0,children:[m?t.jsx(Ft,{command:y?v:"",title:y?v:void 0,outputPreview:_}):f&&n?t.jsx("span",{className:"s-observe-tool-cmd-name",children:i||"shell"}):s?t.jsx(_t,{family:u,event:e}):t.jsxs(t.Fragment,{children:[t.jsx("span",{className:"s-observe-tool-cmd-name",children:e.tool}),g?t.jsxs(t.Fragment,{children:[" ",t.jsx("span",{className:"s-observe-tool-cmd-arg",children:g})]}):null]}),E==="success"&&t.jsx("span",{className:"s-observe-tool-outcome s-observe-tool-outcome--success",children:"ok"}),!s&&e.diff&&t.jsxs("span",{className:"s-observe-tool-diff-inline","aria-label":`${e.diff.add} additions, ${e.diff.del} deletions`,children:[t.jsxs("span",{className:"s-observe-tool-diff-add",children:["+",e.diff.add]}),t.jsxs("span",{className:"s-observe-tool-diff-del",children:["−",e.diff.del]})]})]}),R&&t.jsx(as,{expanded:o,onToggle:()=>l(k=>!k),label:e.stream?"output":"details"})]}),W&&t.jsx("pre",{className:"s-observe-tool-stream-preview",children:W}),L&&(s||B)&&e.result&&t.jsx("div",{className:"s-observe-tool-result",children:Object.entries(e.result).map(([k,$])=>`${k}: ${$}`).join(" · ")}),!s&&e.diff&&B&&t.jsxs("div",{className:"s-observe-tool-diff",children:[t.jsxs("div",{className:"s-observe-tool-diff-stats",children:[t.jsxs("span",{className:"s-observe-tool-diff-add",children:["+",e.diff.add]}),e.diff.del>0&&t.jsxs(t.Fragment,{children:[" ",t.jsxs("span",{className:"s-observe-tool-diff-del",children:["−",e.diff.del]})]})]}),t.jsx(Ct,{preview:e.diff.preview})]}),!s&&e.stream&&B&&t.jsx("pre",{className:"s-observe-tool-stream",children:e.stream.join(`
11
- `)}),!s&&t.jsx(U,{text:Nt(e),label:"Copy tool call"})]})}function Wt({event:e,laneMode:s=!1,operatorName:n="you",wallLabel:a,wallTitle:r}){const o=Rs(e),l=o.preview===o.title?"":o.preview,u=(n.trim()[0]??"y").toUpperCase();return t.jsxs("div",{className:`s-observe-ask s-observe-block${s?" s-observe-ask--lane":""}`,children:[s?t.jsxs("div",{className:"s-observe-ask-head",children:[t.jsx("span",{className:"s-observe-ask-avatar",style:{background:Ps(n)},"aria-hidden":"true",children:u}),t.jsx("span",{className:"s-observe-ask-author",children:n}),a?t.jsx("span",{className:"s-observe-ask-time",title:r,children:a}):null]}):t.jsx("div",{className:"s-observe-ask-label",children:o.label}),o.contextTags.length>0&&t.jsx("div",{className:"s-observe-ask-tags","aria-label":"Attached context",children:o.contextTags.map(c=>t.jsxs("span",{className:"s-observe-ask-tag",title:c.raw,children:[t.jsx(Js,{size:10,strokeWidth:2,"aria-hidden":"true"}),t.jsx("span",{className:"s-observe-ask-tag-name",children:c.name}),c.detail?t.jsx("span",{className:"s-observe-ask-tag-detail",children:c.detail}):null]},c.name))}),t.jsx("div",{className:"s-observe-ask-title",children:o.title}),l?t.jsx(rs,{text:l,className:"s-observe-ask-text",laneMode:s,live:e.live,renderCollapsed:c=>Ue(c),renderExpanded:c=>t.jsx(Ke,{text:c})}):e.live?t.jsx("span",{className:"s-observe-cursor"}):null,o.answer&&(!s||je(o.answer.text))&&t.jsxs("div",{className:"s-observe-ask-answer",children:[t.jsxs("span",{className:"s-observe-ask-answer-meta",children:["↳ ",o.answer.label]}),t.jsx("div",{className:"s-observe-ask-answer-text",children:o.answer.text})]}),!s&&t.jsx(U,{text:o.copyText,label:"Copy request"})]})}function Mt(e){const s=e.to?.trim();return s?s==="human"?"→ you":`→ ${s}`:null}function cs(e){return e.kind==="message"&&(e.text??"").trim().toLowerCase()==="[thinking]"}function zt({event:e,laneMode:s=!1}){const n=e.text??"",a=s&&cs(e),r=a?"Thinking...":n,o=a?"Agent thinking":Mt(e);return t.jsxs("div",{className:["s-observe-block",s&&"s-observe-message--lane",a&&"s-observe-message--thinking",e.live&&"s-observe-message--streaming"].filter(Boolean).join(" "),"aria-busy":e.live||void 0,children:[o?t.jsx("div",{className:"s-observe-message-label",children:o}):null,t.jsx(rs,{text:r,className:"s-observe-message-text",laneMode:s,live:e.live,renderCollapsed:l=>Ue(l),renderExpanded:l=>t.jsx(Ke,{text:l})}),!s&&t.jsx(U,{text:n,label:"Copy message"})]})}function Ht({summary:e,expanded:s=!1,onToggle:n}){const a=e.totalCount===1?"technical event":"technical events",r=t.jsxs(t.Fragment,{children:[t.jsxs("span",{className:"s-observe-tech-summary-count",children:[e.totalCount," ",a]}),e.labels.length>0?t.jsx("span",{className:"s-observe-tech-summary-detail",children:e.labels.join(" · ")}):null,n?s?t.jsx(Je,{size:12,strokeWidth:1.8,className:"s-observe-tech-summary-chevron","aria-hidden":!0}):t.jsx(Ye,{size:12,strokeWidth:1.8,className:"s-observe-tech-summary-chevron","aria-hidden":!0}):null]});return n?t.jsx("button",{type:"button",className:`s-observe-tech-summary s-observe-tech-summary--toggle s-observe-block s-observe-block--inline${s?" is-expanded":""}`,onClick:o=>{o.stopPropagation(),n()},"aria-expanded":s,"aria-label":s?`Collapse ${e.totalCount} ${a}`:`Expand ${e.totalCount} ${a}`,children:r}):t.jsx("div",{className:"s-observe-tech-summary s-observe-block s-observe-block--inline",children:r})}function Gt({collapseTechnicalEvents:e,onChange:s}){if(!s)return null;const n=e?"Concise":"Details",a=e?"Show detailed trace events":"Show concise trace summaries",r=e?Gs:qs;return t.jsxs("label",{className:`s-observe-lane-trace-mode${e?" s-observe-lane-trace-mode--concise":" s-observe-lane-trace-mode--details"}`,title:a,children:[t.jsx("input",{type:"checkbox",checked:e,onChange:o=>s(o.currentTarget.checked),"aria-label":a}),t.jsx(r,{size:12,strokeWidth:1.8,"aria-hidden":"true"}),t.jsx("span",{children:n})]})}function qt(e,s){return e?.trim()?s?!/^[a-z0-9._-]+ · [a-z0-9._-]+$/i.test(e.trim()):!0:!1}const Ut={turn_ended:"Turn complete",turn_started:"Turn started"};function Vt(e){const s=e.trim(),a=s.match(/^\[(.+)\]$/)?.[1]??s;return Ut[a]??a.replace(/_/g," ")}function Kt({turn:e,model:s}){return t.jsxs("div",{className:"s-observe-grok-turn s-observe-block s-observe-block--inline",children:[t.jsxs("span",{className:"s-observe-grok-turn-num",children:["turn ",e]}),s?t.jsx("span",{className:"s-observe-grok-turn-model",children:s}):null]})}function Jt({tool:e,decision:s}){return t.jsxs("div",{className:"s-observe-grok-permission s-observe-block s-observe-block--inline",children:[t.jsx("span",{className:`s-observe-grok-permission-decision is-${s}`,children:s}),t.jsx("span",{className:"s-observe-grok-permission-tool",children:e})]})}function Yt({phase:e}){return t.jsx("div",{className:"s-observe-grok-phase s-observe-block s-observe-block--inline",children:t.jsx("span",{className:"s-observe-grok-phase-label",children:js(e)})})}function Xt({event:e,laneMode:s=!1}){if(s){const n=He(e.text??"");return n?.kind==="turn"&&typeof n.turn=="number"?t.jsx(Kt,{turn:n.turn,model:n.model}):t.jsx("div",{className:"s-observe-note s-observe-block s-observe-block--inline s-observe-note--lane",children:t.jsx("span",{className:"s-observe-note-text",children:Vt(e.text)})})}return t.jsxs("div",{className:"s-observe-note s-observe-block s-observe-block--inline",children:[t.jsx("span",{className:"s-observe-note-icon","aria-hidden":"true",children:"✓"}),t.jsx("span",{className:"s-observe-note-text",children:e.text}),t.jsx(U,{text:e.text??"",label:"Copy note"})]})}function Zt({event:e,laneMode:s=!1}){const n=s?He(e.text??""):null;if(n?.kind==="permission"&&n.tool&&n.decision)return t.jsx(Jt,{tool:n.tool,decision:n.decision});if(n?.kind==="phase"&&n.phase)return t.jsx(Yt,{phase:n.phase});const a=qt(e.detail,s),r=a&&e.detail?`${e.text}
12
- ${e.detail}`:e.text??"";return t.jsxs("div",{className:`s-observe-system s-observe-block${s?" s-observe-system--lane":""}`,children:[t.jsxs("div",{className:"s-observe-system-line",children:[!s&&t.jsx("span",{className:"s-observe-system-arrow","aria-hidden":"true",children:"▸ "}),t.jsx("span",{className:"s-observe-system-text",children:e.text})]}),a&&e.detail&&t.jsx("div",{className:"s-observe-system-detail",children:e.detail}),t.jsx(U,{text:r,label:"Copy system event"})]})}const Qt={think:"think",tool:"tool",ask:"ask",message:"message",note:"note",system:"system",boot:"boot"};function en(e){const s=gs(e);return s||(e.kind==="tool"?e.tool==="res"?"result":e.tool?.trim()||"tool":Qt[e.kind]??e.kind)}function We(e){return!!e?.closest("button, a, input, textarea, select, [role='slider'], [contenteditable='true']")}function sn({event:e,prevT:s,prevWallMs:n,laneMode:a=!1,entering:r=!1,repeatCount:o=1,sessionStartMs:l,nowMs:u=Date.now(),preferWallAge:c=!1,highlighted:f=!1,focusAnchor:v=!1,simpleTool:y=!1,stackedTool:m=!1,laneGutter:i="time",laneOperatorName:d,onLaneEventSelect:g,laneToolHover:E,hoverPreviewActive:_=!1,technicalSummary:L,technicalExpanded:O=!1,onTechnicalToggle:R}){const B=e.t-s,W=L?"var(--dim)":ts[e.kind]??"var(--dim)",b=a?gt(e,l,u,c):jt(e,l),k=me(e,l),$=c&&typeof n=="number"&&k!==null?Ls(k-n):null,p=!c&&B>15?`${xt(B)} gap`:null,w=$??p,j=a&&!!g&&!L,N=["s-observe-row",`s-observe-row--kind-${e.kind}`,r?"s-observe-row--enter":"",j?"s-observe-row--selectable":"",f?"s-observe-row--highlighted":"",v?"s-observe-row--focus-anchor":"",y?"s-observe-row--tool-simple":"",m?"s-observe-row--tool-stacked":"",_?"s-observe-row--hover-preview":"",L?"s-observe-row--tech-summary":""].filter(Boolean).join(" "),T=t.jsxs(t.Fragment,{children:[w?t.jsx("div",{className:"s-observe-row-gap",children:w}):null,t.jsxs("div",{className:"s-observe-row-time",title:b.title,children:[i==="label-time"&&!m?t.jsx("span",{className:"s-observe-row-kind",children:en(e)}):null,t.jsx("span",{className:"s-observe-row-clock",children:b.label}),o>1&&t.jsxs("span",{className:"s-observe-row-repeat",title:`${o} similar events merged`,children:["×",o]})]}),t.jsx("span",{className:"s-observe-row-bead",style:{background:W}}),L?t.jsx(Ht,{summary:L,expanded:O,onToggle:R}):t.jsxs(t.Fragment,{children:[e.kind==="think"&&t.jsx(wt,{event:e,laneMode:a}),e.kind==="tool"&&t.jsx(Dt,{event:e,laneMode:a,simple:y,wallLabel:y?b.label:void 0,wallTitle:y?b.title:void 0}),e.kind==="ask"&&t.jsx(Wt,{event:e,laneMode:a,operatorName:d,wallLabel:a?b.label:void 0,wallTitle:a?b.title:void 0}),e.kind==="message"&&t.jsx(zt,{event:e,laneMode:a}),e.kind==="note"&&t.jsx(Xt,{event:e,laneMode:a}),(e.kind==="system"||e.kind==="boot")&&t.jsx(Zt,{event:e,laneMode:a})]})]}),D=a&&e.kind==="tool"&&E?E(e,{wallLabel:b.label,wallTitle:b.title,sessionOffset:ys(e.t)}):null,A=D?t.jsx("div",{ref:D.ref,className:"s-observe-row-hover-target",onMouseEnter:D.onMouseEnter,onMouseLeave:D.onMouseLeave,onFocus:D.onFocus,onBlur:D.onBlur,children:T}):T;return t.jsx("div",{className:N,"data-event-id":e.id,onClick:j?C=>{We(C.target)||g?.(e)}:void 0,onKeyDown:j?C=>{C.key!=="Enter"&&C.key!==" "||We(C.target)||(C.preventDefault(),g?.(e))}:void 0,role:j?"button":void 0,tabIndex:j?0:void 0,"aria-label":j?e.kind==="tool"?"Open command detail at this step":"Open session detail at this step":void 0,children:A})}function tn(e,s){if(!e)return;const n=e.closest(".s-observe-main");if(n){const a=n.scrollHeight-n.clientHeight;n.scrollTo({top:a,left:n.scrollLeft,behavior:s});return}e.scrollIntoView({behavior:s,block:"end",inline:"nearest"})}function nn({events:e,followEnd:s,laneMode:n=!1,sessionStartMs:a,nowMs:r=Date.now(),preferWallAge:o=!1,focusEventId:l,inlineFocusEventId:u,inlineFocusContent:c,onLaneEventSelect:f,laneGutter:v="time",richSimpleTools:y=!1,collapseTechnicalEvents:m=!1,laneOperatorName:i}){const d=h.useRef(null),g=h.useRef(s),E=h.useRef(new Set),_=h.useRef(!1),[L,O]=h.useState(()=>new Set),[R,B]=h.useState(()=>new Set),W=h.useCallback(p=>{B(w=>{const j=new Set(w);return j.has(p)?j.delete(p):j.add(p),j})},[]);h.useEffect(()=>{m||B(new Set)},[m]);const b=h.useMemo(()=>{const p=n?mt(e):e.map(j=>({event:j,repeatCount:1}));if(!n)return p;const w=p.filter(j=>j.event.live||!cs(j.event));return m?dt(w):w},[e,n,m]);h.useEffect(()=>{if(!n){_.current=!0;return}const p=E.current;if(!_.current){for(const T of b)p.add(T.event.id);_.current=!0;return}const w=[];for(const T of b)p.has(T.event.id)||(p.add(T.event.id),w.push(T.event.id));if(w.length===0)return;const j=new Set(w);O(j);const N=window.setTimeout(()=>{O(new Set)},380);return()=>window.clearTimeout(N)},[b,s,n]),h.useLayoutEffect(()=>{if(!s){g.current=!1;return}const p=!g.current;g.current=!0,tn(d.current,n||p?"instant":"smooth")},[b.length,s,n]);const k=Ns(n),$=(p,w,j,N={})=>{const T=j?.event??null,D=T?me(T,a):null,A=n&&!p.technicalSummary&&!y&&Oe(p.event),C=A&&T!=null&&!j?.technicalSummary&&Oe(T),x=!N.suppressInlineFocus&&u===p.event.id&&!!c,Y=t.jsx(sn,{event:p.event,prevT:T?.t??0,prevWallMs:D,laneMode:n,simpleTool:A,stackedTool:C,laneGutter:v,entering:n&&L.has(p.event.id),repeatCount:p.repeatCount,sessionStartMs:a,nowMs:r,preferWallAge:o,highlighted:!n&&l===p.event.id,focusAnchor:x,laneOperatorName:i,onLaneEventSelect:f,laneToolHover:n?k.bind:void 0,hoverPreviewActive:n&&k.hoveredEventId===p.event.id,technicalSummary:p.technicalSummary,technicalExpanded:N.technicalExpanded,onTechnicalToggle:N.onTechnicalToggle});return t.jsxs("div",{className:`s-observe-focus-group${x?" s-observe-focus-group--active":""}`,"data-focus-group":x?"true":void 0,children:[Y,x?t.jsxs(t.Fragment,{children:[t.jsx("div",{className:"s-observe-focus-connector","aria-hidden":!0}),t.jsx("div",{className:"s-observe-focus-detail",children:c})]}):null]},`${p.event.id}:${p.repeatCount}:${w}${N.keySuffix??""}`)};return t.jsxs("div",{className:"s-observe-stream",children:[t.jsx("div",{className:"s-observe-spine"}),b.map((p,w)=>{const j=w>0?b[w-1]:null,N=p.technicalSourceRows,T=!!(p.technicalSummary&&N&&N.length>0),D=T&&R.has(p.event.id);return T&&D?t.jsxs("div",{className:"s-observe-tech-rollup s-observe-tech-rollup--expanded",children:[$(p,w,j,{technicalExpanded:!0,onTechnicalToggle:()=>W(p.event.id),suppressInlineFocus:!0}),t.jsx("div",{className:"s-observe-tech-rollup-details",children:N.map((A,C)=>{const x=C>0?N[C-1]:null;return $(A,C,x,{keySuffix:`:rollup:${p.event.id}:detail`,suppressInlineFocus:!0})})})]},`${p.event.id}:${p.repeatCount}:${w}:rollup`):$(p,w,j,{onTechnicalToggle:T?()=>W(p.event.id):void 0})}),t.jsx("div",{ref:d}),k.card]})}function an({data:e,cursor:s}){const r=e.length;if(r<2)return null;const o=276/(r-1),l=e.map((c,f)=>`${f===0?"M":"L"} ${(f*o).toFixed(1)} ${((1-c)*44).toFixed(1)}`).join(" "),u=s*276;return t.jsxs("svg",{viewBox:"0 0 276 44",style:{width:"100%",height:44,display:"block"},children:[t.jsx("defs",{children:t.jsxs("linearGradient",{id:"observeCtxFill",x1:"0",y1:"0",x2:"0",y2:"1",children:[t.jsx("stop",{offset:"0%",stopColor:"var(--accent)",stopOpacity:.25}),t.jsx("stop",{offset:"100%",stopColor:"var(--accent)",stopOpacity:0})]})}),t.jsx("path",{d:`${l} L 276 44 L 0 44 Z`,fill:"url(#observeCtxFill)"}),t.jsx("path",{d:l,fill:"none",stroke:"var(--accent)",strokeWidth:1.2}),t.jsx("line",{x1:u,y1:0,x2:u,y2:44,stroke:"var(--accent)",strokeWidth:1,opacity:.6,strokeDasharray:"2 3"})]})}function rn({state:e}){const s=e==="created"?"var(--green)":e==="modified"?"var(--accent)":"var(--dim)",n=e==="created"?"+":e==="modified"?"~":"◎";return t.jsx("span",{className:"s-observe-file-glyph",style:{background:"color-mix(in srgb, var(--bg) 70%, black)",border:`1px solid color-mix(in srgb, ${s} 40%, var(--border))`,color:s},children:n})}function z({label:e,value:s,detail:n}){const a=s==="0"||s==="—"||s==="";return t.jsxs("div",{className:`s-observe-stat${a?" s-observe-stat--quiet":""}`,children:[t.jsx("div",{className:"s-observe-stat-value",children:s}),t.jsx("div",{className:"s-observe-stat-label",children:e}),n&&t.jsx("div",{className:"s-observe-stat-detail",children:n})]})}function pe({children:e="Not captured for this session"}){return t.jsx("div",{className:"s-observe-empty",children:e})}function we({path:e,basePath:s,agentId:n,sessionId:a,className:r,children:o}){const{openFilePreview:l}=ye(),u=e.startsWith("/")||e.startsWith("~/")?e:s?`${s.replace(/\/$/,"")}/${e}`:e;return t.jsxs("span",{className:"s-observe-path-link-group",children:[t.jsx("button",{type:"button",className:r,title:`Preview ${e} in Scout`,onClick:()=>l(u),children:o}),t.jsx("button",{type:"button",className:"s-observe-path-link-external",title:`Reveal ${e} in OS`,"aria-label":"Reveal in OS",onClick:()=>yt({path:e,basePath:s,agentId:n,sessionId:a}),children:t.jsx(Us,{size:11,strokeWidth:1.6})})]})}function on({path:e,basePath:s,agentId:n,sessionId:a}){return t.jsxs("div",{className:"s-observe-source",children:[t.jsx("span",{className:"s-observe-source-label",children:"Source"}),t.jsx(we,{path:e,basePath:s,agentId:n,sessionId:a,className:"s-observe-source-link",children:xe(e)})]})}function ve({rows:e,agentId:s,sessionId:n}){return e.length===0?null:t.jsx("div",{className:"s-observe-detail-list",children:e.map(a=>{const r=`s-observe-detail-value s-observe-detail-value--${a.tone??"default"}${a.wrap?" s-observe-detail-value--wrap":""}`,o=a.display??a.value;return t.jsxs("div",{className:"s-observe-detail-row",children:[t.jsx("div",{className:"s-observe-detail-label",children:a.label}),t.jsxs("div",{className:"s-observe-detail-value-wrap",children:[a.actionPath?t.jsx(we,{path:a.actionPath,basePath:a.actionBasePath,agentId:s,sessionId:n,className:`${r} s-observe-detail-link`,children:o}):t.jsx("div",{className:r,title:a.title??(o!==a.value?a.value:void 0),children:o}),t.jsx(U,{text:a.actionPath??a.value,label:`Copy ${a.label.toLowerCase()}`,className:"s-observe-copy-btn--inline"})]})]},a.label)})})}function ln({events:e,duration:s,cursor:n,onCursor:a,snapTimes:r=[]}){const o=h.useRef(null),l=h.useMemo(()=>dn(e,s,48),[e,s]),u=l.some(m=>m.count>0),c=l.reduce((m,i)=>m+i.count,0),f=u?`${c} message turn anchors. Click the timeline or use arrow keys to snap between turns.`:"Session timeline",v=h.useCallback(m=>{const i=o.current.getBoundingClientRect(),d=m.clientX-i.left,g=Math.max(0,Math.min(s,d/i.width*s));a(Me(g,s,r))},[s,a,r]),y=h.useCallback(m=>{if(s<=0)return;const i=s*.01,d=s*.05;let g=n;switch(m.key){case"ArrowLeft":g=r.length?un(n,r):n-(m.shiftKey?d:i);break;case"ArrowRight":g=r.length?ds(n,r,s):n+(m.shiftKey?d:i);break;case"PageDown":g=n-d;break;case"PageUp":g=n+d;break;case"Home":g=0;break;case"End":g=s;break;default:return}m.preventDefault(),a(r.length&&(m.key==="PageDown"||m.key==="PageUp")?Me(g,s,r):Math.max(0,Math.min(s,g)))},[n,s,a,r]);return t.jsxs("div",{className:"s-observe-track-wrap",title:f,children:[u?t.jsxs(t.Fragment,{children:[t.jsxs("div",{className:"s-observe-track-barsHead","aria-hidden":!0,children:[t.jsx("span",{children:"Turns"}),t.jsx("span",{children:c})]}),t.jsx("div",{className:"s-observe-track-bars","aria-hidden":!0,children:l.map(m=>t.jsx("span",{className:"s-observe-track-bar","data-active":m.start<=n||void 0,style:{height:`${mn(m.count,l)}%`}},m.index))})]}):null,t.jsxs("div",{ref:o,className:"s-observe-track",onClick:v,onKeyDown:y,role:"slider",tabIndex:s>0?0:-1,"aria-label":"Session timeline","aria-valuemin":0,"aria-valuemax":s,"aria-valuenow":Math.max(0,Math.min(s,n)),children:[e.map(m=>{const i=m.kind==="tool"?6:m.kind==="think"?4:5;return t.jsx("span",{className:"s-observe-track-tick",style:{left:`${s>0?m.t/s*100:0}%`,top:i===6?-2:-1,height:i,background:ts[m.kind]??"var(--dim)"}},m.id)}),t.jsx("div",{className:"s-observe-track-played",style:{width:`${s>0?n/s*100:0}%`}}),t.jsx("span",{className:"s-observe-track-cursor",style:{left:`${s>0?n/s*100:0}%`}})]})]})}function us(e){return e.kind==="message"||e.kind==="ask"}function cn(e,s){const n=e.filter(us).map(a=>Math.max(0,Math.min(s,a.t))).sort((a,r)=>a-r);return Array.from(new Set(n))}function Me(e,s,n){const a=Math.max(0,Math.min(s,e));if(n.length===0)return a;let r=n[0],o=Math.abs(r-a);for(const l of n){const u=Math.abs(l-a);u<o&&(r=l,o=u)}return r}function ds(e,s,n){return s.find(r=>r>e+.01)??n}function un(e,s){for(let n=s.length-1;n>=0;n-=1){const a=s[n];if(a<e-.01)return a}return 0}function dn(e,s,n){const a=Math.max(1,s),r=Array.from({length:n},(o,l)=>({index:l,count:0,start:l/n*a}));for(const o of e){if(!us(o))continue;const l=Math.min(n-1,Math.max(0,Math.floor(o.t/a*n)));r[l].count+=1}return r}function mn(e,s){if(e<=0)return 0;const n=Math.max(1,...s.map(a=>a.count));return Math.max(18,e/n*100)}function hn({events:e,duration:s,cursor:n,mode:a,speed:r,snapTimes:o,onCursor:l,onPlayToggle:u,onSpeedChange:c}){const f=a==="tail"?"Following latest":a==="playing"?"Pause replay":"Play turns";return t.jsxs("div",{className:"s-observe-transport","data-snap":o.length>0||void 0,"data-mode":a,children:[t.jsx("button",{type:"button",className:"s-observe-play-btn","data-state":a,onClick:u,"aria-pressed":a==="tail"||a==="playing","aria-label":f,title:f,children:a==="playing"?"❚❚":"▶"}),t.jsx("button",{type:"button",className:"s-observe-rewind-btn",onClick:()=>{l(0)},"aria-label":"Jump to start",title:"Jump to start",children:"⏮"}),t.jsx(ln,{events:e,duration:s,cursor:n,onCursor:l,snapTimes:o}),t.jsx("div",{className:"s-observe-speed-group",children:[.5,1,2,4].map(v=>t.jsxs("button",{type:"button",className:`s-observe-speed-btn${r===v?" s-observe-speed-btn--active":""}`,onClick:()=>c(v),children:[v,"×"]},v))})]})}function ze(e){return Es(e)||"unknown"}function fn(e,s){const n=Ee(e),a=Ee(s);return n===null||a===null?"0:00":Ve(a-n)||"0:00"}function bn({catalog:e,sessionId:s,agentId:n}){const{navigate:a,route:r}=ye(),[o,l]=h.useState(!1),u=e.sessions.find(d=>d.id===e.activeSessionId),c=e.sessions.filter(d=>d.id!==e.activeSessionId&&d.endedAt).sort((d,g)=>(g.endedAt??0)-(d.endedAt??0)).slice(0,5),f=e.activeSessionId??s,v=f?f.slice(0,8):null,y=!!(u?.canTakeover&&e.resumeCommand),m=h.useCallback(()=>{!y||!e.resumeCommand||(Bs({command:e.resumeCommand,cwd:e.resumeCwd,agentId:n}).then(()=>{Ws(a,{view:"terminal",agentId:n},{returnTo:r})}),l(!0))},[y,e.resumeCommand,e.resumeCwd,a,r,n]),i=h.useCallback(()=>{a({view:"agents-v2",agentId:n,tab:"message"})},[a,n]);return t.jsxs("div",{className:"s-observe-session-header",children:[t.jsx("div",{className:"s-observe-session-active",children:t.jsxs("div",{className:"s-observe-session-row",children:[v&&t.jsx("span",{className:"s-observe-session-id",title:f??void 0,children:v}),u&&t.jsxs("span",{className:"s-observe-session-time",children:["started ",ze(u.startedAt)]}),t.jsx("button",{className:"s-observe-pair-btn",onClick:i,title:"Send messages into the live session without taking the terminal",children:"Pair"}),y&&t.jsx("button",{className:"s-observe-takeover-btn",onClick:m,title:e.resumeCommand??void 0,children:o?"Sent":"Takeover"})]})}),c.length>0&&t.jsxs("div",{className:"s-observe-session-history",children:[t.jsxs("div",{className:"s-observe-session-history-label",children:[e.sessions.length," session",e.sessions.length!==1?"s":""," total"]}),c.map(d=>t.jsxs("div",{className:"s-observe-session-past",children:[t.jsx("span",{className:"s-observe-session-id",children:d.id.slice(0,8)}),t.jsxs("span",{className:"s-observe-session-time",children:[ze(d.startedAt),d.endedAt?` · ${fn(d.startedAt,d.endedAt)}`:""]})]},d.id))]})]})}const ms={events:[{id:"observe:empty",t:0,kind:"system",text:"No session trace is available for this agent yet.",detail:"Waiting for a live session or readable history file."}],files:[],contextUsage:[],live:!1};function pn({data:e=ms,agentId:s,sessionId:n,cursor:a,duration:r,surface:o="embedded",observeSource:l,observeFidelity:u}){const{events:c,files:f}=e,[v,y]=h.useState(null);h.useEffect(()=>{if(!s)return;let x=!1;return ke(`/api/agents/${encodeURIComponent(s)}/session-catalog`).then(Y=>{x||y(Y)}).catch(()=>{}),()=>{x=!0}},[s]);const m=e.metadata,i=m?.session,d=m?.usage,g=typeof r=="number"&&Number.isFinite(r)&&r>0?r:c.length>0?c[c.length-1].t+30:60,E=typeof a=="number"&&Number.isFinite(a)?a:g,_=c.filter(x=>x.kind==="tool").length,L=c.filter(x=>x.kind==="think").length,O=c.filter(x=>x.kind==="ask").length,R=c.filter(x=>x.kind==="tool"&&x.tool==="read").length,B=c.filter(x=>x.kind==="tool"&&(x.tool==="edit"||x.tool==="write")).length,W=c.length>0?c[c.length-1].t:0,b=typeof d?.contextInputTokens=="number"&&typeof d.contextWindowTokens=="number"&&d.contextWindowTokens>0?Math.max(0,Math.min(100,Math.round(d.contextInputTokens/d.contextWindowTokens*100))):null,k=[{label:"Context input",value:d?.contextInputTokens},{label:"Input",value:d?.inputTokens},{label:"Output",value:d?.outputTokens},{label:"Cache hit",value:d?.cacheReadInputTokens},{label:"Cache write",value:d?.cacheCreationInputTokens},{label:"Total",value:d?.totalTokens},{label:"Reasoning",value:d?.reasoningOutputTokens}].filter(x=>typeof x.value=="number"),$=be([typeof d?.assistantMessages=="number"?{label:"Assistant msgs",value:te(d.assistantMessages)??"0",tone:"accent"}:null,typeof d?.webSearchRequests=="number"?{label:"Web search",value:te(d.webSearchRequests)??"0"}:null,typeof d?.webFetchRequests=="number"?{label:"Web fetch",value:te(d.webFetchRequests)??"0"}:null,d?.serviceTier?{label:"Service tier",value:d.serviceTier,tone:"good"}:null,d?.speed?{label:"Speed",value:d.speed}:null,d?.planType?{label:"Plan",value:d.planType}:null]),p=be([typeof d?.contextWindowTokens=="number"?{label:"Model window",value:`${te(d.contextWindowTokens)} tokens`,title:te(d.contextWindowTokens)??void 0,tone:"accent"}:null,b!==null?{label:"Window load",value:`${b}%`,tone:b>=80?"warn":"default"}:null]),w=be([i?.model?{label:"Model",value:i.model,tone:"accent"}:null,i?.adapterType?{label:"Adapter",value:i.adapterType}:null,i?.gitBranch?{label:"Branch",value:i.gitBranch}:null,i?.cwd?{label:"Workspace",value:i.cwd,display:xe(i.cwd),title:i.cwd,actionPath:i.cwd}:null,i?.entrypoint?{label:"Entrypoint",value:i.entrypoint}:null,i?.cliVersion?{label:"CLI",value:i.cliVersion}:null,i?.permissionMode?{label:"Permissions",value:i.permissionMode}:null,i?.approvalPolicy?{label:"Approval",value:i.approvalPolicy}:null,i?.sandbox?{label:"Sandbox",value:i.sandbox}:null,i?.userType?{label:"User type",value:i.userType}:null,i?.originator?{label:"Originator",value:i.originator}:null,i?.modelProvider?{label:"Provider",value:i.modelProvider}:null,i?.effort?{label:"Effort",value:i.effort}:null,i?.timezone?{label:"Timezone",value:i.timezone}:null,i?.externalSessionId?{label:"External session",value:i.externalSessionId,title:i.externalSessionId}:null,i?.threadId?{label:"Thread",value:i.threadId,title:i.threadId}:null,i?.threadPath?{label:"Thread path",value:i.threadPath,display:xe(i.threadPath),title:i.threadPath,actionPath:i.threadPath,actionBasePath:i.cwd??null}:null,i?.source?{label:"Runtime source",value:i.source}:null]),j=Fe(d),N=Fe(i),T=l??(e.live?"live":"history"),D=u??"timestamped",A=ss({source:T,fidelity:D,live:e.live,eventCount:c.length}),C=D==="timestamped";return t.jsxs("aside",{className:`s-observe-rail${o==="context"?" s-observe-rail--context":""}`,children:[t.jsxs("div",{children:[t.jsx("div",{className:"s-observe-rail-label",children:"Evidence"}),t.jsxs("div",{className:"s-observe-evidence-card","data-tone":A.tone,children:[t.jsx("span",{className:"s-observe-evidence-dot","aria-hidden":"true"}),t.jsxs("span",{children:[t.jsx("strong",{children:A.label}),t.jsx("small",{children:A.detail})]})]})]}),v&&v.sessions.length>0&&t.jsxs("div",{children:[t.jsx("div",{className:"s-observe-rail-label",children:"Session"}),t.jsx(bn,{catalog:v,sessionId:n??null,agentId:s})]}),t.jsxs("div",{children:[t.jsx("div",{className:"s-observe-rail-label",children:"Trace stats"}),t.jsxs("div",{className:"s-observe-stats",children:[t.jsx(z,{label:"Turns",value:q(i?.turnCount)}),t.jsx(z,{label:"Tools",value:q(C?_:void 0)}),t.jsx(z,{label:"Thinks",value:q(C?L:void 0)}),t.jsx(z,{label:"Requests",value:q(C?O:void 0)}),t.jsx(z,{label:"Reads",value:q(C?R:void 0)}),t.jsx(z,{label:"Edits",value:q(C?B:void 0)}),t.jsx(z,{label:"Files",value:q(f.length)}),t.jsx(z,{label:"Window",value:C?kt(W):"—"})]})]}),t.jsxs("div",{children:[t.jsx("div",{className:"s-observe-rail-label",children:"Interacted agents"}),t.jsx(Ms,{topology:m?.topology??null,sessionId:n??m?.session?.externalSessionId??null,size:"rail",maxAgents:4})]}),t.jsxs("div",{children:[t.jsx("div",{className:"s-observe-rail-label",children:"Context window"}),t.jsx(ve,{rows:p,agentId:s??null,sessionId:n??null}),b!==null?t.jsxs(t.Fragment,{children:[t.jsx(an,{data:[b/100,b/100],cursor:E/g}),t.jsx("div",{className:"s-observe-ctx-detail",children:"Meter uses latest context input divided by the model window."})]}):p.length===0?t.jsx(pe,{}):t.jsx("div",{className:"s-observe-ctx-detail",children:"No derived load trace captured."})]}),t.jsxs("div",{children:[t.jsxs("div",{className:"s-observe-rail-label",children:["Files touched · ",f.length]}),t.jsx("div",{className:"s-observe-files",children:f.map(x=>t.jsxs("div",{className:`s-observe-file${x.lastT<=E?" s-observe-file--visible":" s-observe-file--hidden"}`,children:[t.jsx(rn,{state:x.state}),t.jsx(we,{path:x.path,basePath:i?.cwd??null,agentId:s??null,sessionId:n??null,className:"s-observe-file-path",children:x.path}),t.jsxs("span",{className:"s-observe-file-touches",children:["×",x.touches]})]},x.path))})]}),t.jsxs("div",{children:[t.jsx("div",{className:"s-observe-rail-label",children:"Usage"}),k.length>0&&t.jsx("div",{className:"s-observe-stats s-observe-stats--usage",children:k.map(x=>t.jsx(z,{label:x.label,value:q(x.value)},x.label))}),$.length>0?t.jsx(ve,{rows:$,agentId:s??null,sessionId:n??null}):!j&&k.length===0?t.jsx(pe,{}):null]}),t.jsxs("div",{children:[t.jsx("div",{className:"s-observe-rail-label",children:"Metadata"}),w.length>0?t.jsx(ve,{rows:w,agentId:s??null,sessionId:n??null}):N?null:t.jsx(pe,{})]})]})}function vn({conversationId:e,agentId:s,sessionId:n,invoke:a}){const{navigate:r}=ye(),[o,l]=h.useState(""),[u,c]=h.useState(!1),[f,v]=h.useState(null),[y,m]=h.useState(null),[i,d]=h.useState(()=>e?.trim()||null),g=h.useRef(null);h.useEffect(()=>{d(e?.trim()||null)},[e]);const E=s?.trim()||null,_=n?.trim()||null,L=!!(E&&_),O=!!(a?.projectPath&&a?.sessionId),R=!!(i||L||O),B=R&&o.trim().length>0&&!u,W=async()=>{const b=o.trim();if(!(!b||u)){if(!i&&!L&&!O){m("No writable session target is attached yet.");return}c(!0),v(null),m(null);try{if(i)await ke("/api/send",{method:"POST",body:JSON.stringify({body:b,conversationId:i,intent:"steer"})}),l(""),v("Sent into this session."),g.current?.focus();else if(L){const $=(await _s({agentId:E,sessionId:_,instructions:b})).conversationId?.trim();$&&d($),l(""),v("Sent into this session."),g.current?.focus()}else{const $=(await Ds({projectPath:a.projectPath,sessionId:a.sessionId,...a.harness?{harness:a.harness}:{},...a.model?{model:a.model}:{},...a.reasoningEffort?{reasoningEffort:a.reasoningEffort}:{},instructions:b})).conversationId?.trim();l(""),$?(d($),v("Session invoked — opening conversation."),r({view:"conversation",conversationId:$})):(v("Session invoked."),g.current?.focus())}}catch(k){m(k instanceof Error?k.message:String(k))}finally{c(!1)}}};return t.jsx("div",{className:"s-observe-compose",children:t.jsx(zs,{density:"panel",value:o,onChange:l,onSend:()=>{W()},sending:u,disabled:!R||u,canSend:B,placeholder:R?!i&&!L&&O?"Message this session to invoke it…":"Write into this session…":"This trace is read-only",textareaRef:g,rows:3,showAttach:R,onAttach:()=>g.current?.focus(),attachTitle:"Add context",attachAriaLabel:"Add context",sendTitle:"Send into this session (Cmd+Enter)",sendAriaLabel:"Send into this session",tools:R?y?t.jsx("span",{className:"s-observe-compose-status s-observe-compose-status--error",children:y}):f?t.jsx("span",{className:"s-observe-compose-status",children:f}):null:t.jsx("span",{className:"s-observe-compose-status s-observe-compose-status--muted",children:"No broker conversation or resumable agent session is attached to this trace."})})})}function Ca({data:e,agentId:s,sessionId:n,conversationId:a,observeSource:r,observeFidelity:o,showRail:l=!0,variant:u="default",traceLimit:c,traceWindowMs:f,traceWindowLabel:v,nowMs:y,initialCursorT:m,focusEventId:i,inlineFocusEventId:d,inlineFocusContent:g,onLaneEventSelect:E,surface:_="scout",laneGutter:L,richSimpleTools:O,laneCollapseTechnicalEvents:R,onLaneCollapseTechnicalEventsChange:B,laneOperatorName:W}){const b=u==="lane",k=_==="scope",$=L??(k?"label-time":"time"),p=O??k,w=l&&!k,j=e??ms,{events:N}=j,T=r??(j.live?"live":"history"),A=ss({source:T,fidelity:o??"timestamped",live:j.live,eventCount:N.length}),C=j.metadata?.session?.sessionStart,[x,Y]=h.useState(Date.now),X=typeof y=="number"?y:x;h.useEffect(()=>{if(!b||typeof y=="number")return;const S=setInterval(()=>Y(Date.now()),1e4);return()=>clearInterval(S)},[b,y]);const P=N.length>0?N[N.length-1].t+30:60,Z=typeof m=="number"?Math.max(0,Math.min(P,m)):null,[re,oe]=h.useState(()=>Z??P),[he,V]=h.useState(!1),[le,hs]=h.useState(1),[fe,K]=h.useState(Z==null),Ce=h.useRef(P),Se=h.useRef(null),Q=h.useMemo(()=>cn(N,P),[N,P]);h.useEffect(()=>{Z!=null&&(oe(Z),K(!1),V(!1))},[Z,i]),h.useEffect(()=>{oe(S=>{const F=Ce.current;Ce.current=P;const M=Be(S,F);return S>P||M&&fe?P:S})},[P,fe]),h.useEffect(()=>{if(!he)return;const S=Q.length>0?Math.max(220,700/le):100,F=setInterval(()=>{oe(M=>{if(Q.length>0){const ue=ds(M,Q,P);return ue>=P?(K(!0),V(!1),P):ue}const ce=M+le;return ce>=P?(K(!0),V(!1),P):ce})},S);return()=>clearInterval(F)},[he,P,Q,le]);const ee=b&&!!(f&&f>0),se=(()=>{let S=N.filter(F=>F.t<=re);if(ee&&f){const F=ws(S,C,X,f);S=F.length>=Le?F:S.slice(-Le)}else b&&c&&c>0&&(S=S.slice(-c));return S})(),J=h.useMemo(()=>{if(!ee||!f)return null;const S=se[0]?.id,F=S===void 0?Cs(N,C,X,f):Math.max(0,N.findIndex(M=>M.id===S));return Ss(se,C,X,f,F)},[N,X,C,f,ee,se]);h.useLayoutEffect(()=>{if(b||!i)return;const S=Se.current;if(!S)return;const F=S.querySelector('[data-focus-group="true"]')??S.querySelector(`[data-event-id="${i}"]`),M=F?.closest(".s-observe-main");if(F&&M){const ce=M.getBoundingClientRect(),ue=F.getBoundingClientRect(),xs=M.scrollTop+(ue.top-ce.top)-16;M.scrollTo({top:Math.max(0,xs),behavior:"instant"});return}F?.scrollIntoView({block:"start",behavior:"instant"})},[i,d,b,se.length]);const ie=Be(re,P)&&fe,fs=ie?"tail":he?"playing":"paused",bs=h.useCallback(S=>{K(!1),V(!1),oe(S)},[]),ps=h.useCallback(()=>{ie?(K(!1),V(!1)):(K(!1),V(S=>!S))},[ie]),H=j.metadata?.session,Te=H?.threadPath??null,$e=n?.trim()||H?.externalSessionId?.trim()||null,vs=!s&&H?.cwd&&$e?{projectPath:H.cwd,sessionId:$e,harness:Fs(H.adapterType),model:H.model,reasoningEffort:H.effort}:null;return t.jsxs("div",{ref:Se,className:["s-observe",(!w||b)&&"s-observe--content-only",b&&"s-observe--lane",b&&$==="label-time"&&"s-observe--lane-gutter-label",k&&"s-observe--scope"].filter(Boolean).join(" "),children:[t.jsxs("main",{className:"s-observe-main",children:[!b&&!k&&t.jsxs("div",{className:"s-observe-evidence-banner","data-tone":A.tone,children:[t.jsx("span",{className:"s-observe-evidence-dot","aria-hidden":"true"}),t.jsxs("span",{children:[t.jsx("strong",{children:A.label}),t.jsx("small",{children:A.detail})]})]}),Te&&!b&&t.jsx(on,{path:Te,basePath:H?.cwd??null,agentId:s??null,sessionId:n??null}),!k&&ee&&J?t.jsxs("div",{className:"s-observe-lane-trace-meta",children:[t.jsxs("span",{className:"s-observe-lane-trace-meta-leading",children:[t.jsx("span",{className:"s-observe-lane-trace-meta-label",children:"Trace"}),t.jsx(Gt,{collapseTechnicalEvents:!!R,onChange:B})]}),t.jsxs("span",{className:"s-observe-lane-trace-meta-stats",children:[t.jsxs("span",{className:"s-observe-lane-trace-meta-window",children:["last ",v??Re(f??0)]}),t.jsx("span",{className:"s-observe-lane-trace-meta-sep","aria-hidden":"true",children:"·"}),t.jsxs("span",{children:[J.eventCount," event",J.eventCount===1?"":"s"]}),J.spanMs>0?t.jsxs(t.Fragment,{children:[t.jsx("span",{className:"s-observe-lane-trace-meta-sep","aria-hidden":"true",children:"·"}),t.jsxs("span",{children:[Re(J.spanMs)," span"]})]}):null,J.truncatedBefore?t.jsx("span",{className:"s-observe-lane-trace-meta-tag",title:"Earlier activity in this window may not be loaded",children:"partial"}):null]})]}):null,t.jsx(nn,{events:se,followEnd:ie,laneMode:b,sessionStartMs:C,nowMs:X,preferWallAge:ee,focusEventId:i,inlineFocusEventId:d,inlineFocusContent:g,onLaneEventSelect:E,laneGutter:$,richSimpleTools:p,collapseTechnicalEvents:b&&!!R,laneOperatorName:W})]}),w&&!b&&t.jsx(pn,{data:j,agentId:s,sessionId:n,cursor:re,duration:P,observeSource:r,observeFidelity:o}),!k&&!b&&t.jsxs("footer",{className:"s-observe-scrubber",children:[A.replayable?t.jsx(hn,{events:N,duration:P,cursor:re,mode:fs,speed:le,snapTimes:Q,onCursor:bs,onPlayToggle:ps,onSpeedChange:hs}):t.jsxs("div",{className:"s-observe-static-evidence",children:[t.jsx("span",{className:"s-observe-evidence-dot","aria-hidden":"true"}),t.jsx("span",{children:A.label}),t.jsx("small",{children:"No timestamped replay is available."})]}),t.jsx(vn,{conversationId:a,agentId:s,sessionId:n,invoke:vs})]})]})}export{Ca as SessionObserve,pn as SessionObserveContextRail};
@@ -1 +0,0 @@
1
- import{r as n,j as e}from"./index-DMiGbrBt.js";import{a as j}from"./api-h5zurxmi.js";import{u as g}from"./sse-CjIkKo46.js";import{u as N}from"./tail-events-D19uAGe3.js";import{B as I}from"./BackToPicker-BRvfostO.js";import{ConversationScreen as S}from"./ConversationScreen-BDRhx-RU.js";import{SessionObserve as k,SessionObserveContextRail as y}from"./SessionObserve-yfXFafp8.js";/* empty css */import"./index-BWHgHrtv.js";import"./router-Bq5dwf78.js";import"./terminal-sessions-D5CIR2OL.js";import"./NewChatComposer-Cs6OsxK6.js";import"./runtime-picker-Bcl5iIX5.js";import"./scout-voice-CU5c0LGi.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-CbHjZsz1.js";import"./createLucideIcon-OpA4Amw5.js";import"./MessageComposerSuggestions-DpxN9WiB.js";import"./index-CJXzfjo9.js";import"./HarnessMark-Cbv3Ib0c.js";import"./conversation-model-B47vYmWN.js";import"./colors-BtO5_zlx.js";import"./time-DltNTpLl.js";import"./NewChatOrigin-Bk2OyVjI.js";import"./keyboard-nav-2kv_tGUS.js";import"./agent-chat-Bfjd9y6c.js";import"./model-Co0zkMIc.js";import"./text-DsBWV_4k.js";import"./x-D3GElQbe.js";import"./chevron-down-BGk5qoEw.js";import"./search-CWfZtOt2.js";import"./file-text-BODxCjcz.js";import"./ConversationComposer-Bla3DDvM.js";import"./Provider-C7UKGHQy.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-BTIErYHo.js";import"./ContextMenu-bARZqTzD.js";import"./DocumentFocusViewer-BeVwwl26.js";import"./TextDocumentSurface-BpAw4eQS.js";/* empty css */import"./chevron-right-XiIHsk4m.js";import"./code-xml-B6jOCM4V.js";import"./arrow-left-DEZzHiPS.js";import"./message-markup-3J9pi3nx.js";import"./mentions-jSuTGeet.js";import"./AgentDetailCard-BcRBRp88.js";import"./AgentLiveActions-DBtnD0qE.js";import"./terminal-takeover-B8UeD9OX.js";import"./openContent-C6XO6kr5.js";import"./eye-0PvebX_a.js";import"./terminal-B9AOZQKR.js";import"./message-visibility-kJM8XcSG.js";import"./sessionRead-CvFz2RHv.js";import"./clipboard-e3fSpeo7.js";import"./AgentAvatar-D90c1Rzk.js";import"./SpriteAvatar-DyaGuhik.js";import"./types-B0PlfpKc.js";/* empty css */import"./ConversationHeader-DE3FC0m-.js";import"./ConversationFeedRows-B_gPxcqA.js";import"./ConversationPanels-DLek4H6A.js";import"./use-reduced-motion-RRBkmVkk.js";import"./activity-CA8qS6PI.js";import"./message-circle-CG-96zts.js";import"./tail-display-BdyoLvzY.js";import"./lane-edit-display-C_Aujldz.js";import"./ConversationStatus-BwVLiiO4.js";import"./conversation-icons-IIG5ha6D.js";import"./bash-format-BRV5C6Gv.js";import"./lane-tool-detail-0WhMf4Vj.js";import"./LaneToolHoverCard-Bla0gBdm.js";import"./lane-observe-D0rfKDnU.js";import"./lane-ask-display-B6iCAVcd.js";import"./ObservedTopologyPanel-DyUeV98H.js";import"./ObserveTextFlow-rsFj_rVo.js";import"./wrench-Bkc_0lKF.js";import"./external-link-CXBytO9o.js";function p(o){const s=o?.trim()??"",i=s.split(/[\\/]/).filter(Boolean).at(-1)??s;return i.endsWith(".jsonl")?i.slice(0,-6):i}function R(o){return o.startsWith("native:process:")}function x(o){const[s,i]=n.useState(null),[c,l]=n.useState(!0),[r,d]=n.useState(null),t=n.useRef(null),a=n.useCallback(async()=>{d(null);try{const m=await j(`/api/session-ref/${encodeURIComponent(o)}`);i(m)}catch(m){i(null),d(m instanceof Error?m.message:String(m))}finally{l(!1)}},[o]);n.useEffect(()=>{l(!0),a()},[a]);const u=n.useCallback(()=>{t.current&&clearTimeout(t.current),t.current=setTimeout(()=>{t.current=null,a()},150)},[a]);return g(u),N(m=>{const v=p(m.sessionId),b=p(o),h=s?.kind==="observe"?p(s.observe.sessionId??s.observe.refId):"",f=s?.kind==="observe"?p(s.observe.data.metadata?.session?.externalSessionId):"";v!==b&&(!h||v!==h)&&(!f||v!==f)||u()}),n.useEffect(()=>()=>{t.current&&clearTimeout(t.current)},[]),{lookup:s,loading:c,error:r}}function Ye({sessionRef:o}){const{lookup:s,loading:i,error:c}=x(o);return s?.kind==="observe"?e.jsx(y,{data:s.observe.data,agentId:s.observe.agentId??s.session?.agentId??void 0,sessionId:s.observe.sessionId??s.observe.refId,surface:"context",observeSource:s.observe.source,observeFidelity:s.observe.fidelity}):e.jsx("aside",{className:"s-observe-rail s-observe-rail--context",children:e.jsxs("div",{children:[e.jsx("div",{className:"s-observe-rail-label",children:s?.kind==="conversation"?"Conversation":"Session context"}),e.jsx("div",{className:"s-observe-empty",children:i?"Resolving session reference":c?"Session context unavailable":"No observe context captured for this session"})]})})}function Ze({sessionRef:o,navigate:s,renderBeforeContent:i,showObserveRail:c=!0,onLookup:l}){const{lookup:r,loading:d,error:t}=x(o);if(n.useEffect(()=>{r&&l?.(r)},[r,l]),r?.kind==="conversation")return e.jsxs(e.Fragment,{children:[i?.(r),e.jsx(S,{conversationId:r.conversationId,navigate:s})]});if(r?.kind==="observe")return e.jsxs(e.Fragment,{children:[i?.(r),e.jsx(k,{data:r.observe.data,agentId:r.observe.agentId??r.session?.agentId??void 0,sessionId:r.observe.sessionId??r.observe.refId,conversationId:r.session?.id??null,showRail:c,observeSource:r.observe.source,observeFidelity:r.observe.fidelity})]});if(d)return e.jsx("div",{className:"s-sessions-screen s-inbox-thread-redesign",children:e.jsx("section",{className:"s-thread-overview",children:e.jsxs("div",{className:"s-thread-overview-copy",children:[e.jsxs("div",{className:"s-sessions-header s-thread-overview-heading",children:[e.jsx("h2",{className:"s-page-title",children:"Session"}),e.jsx("span",{className:"s-meta s-tabular",children:o.slice(0,8)})]}),e.jsxs("p",{className:"s-thread-overview-summary s-session-ref-loading",children:[e.jsx("span",{className:"s-session-ref-loading-dot"}),e.jsx("span",{className:"s-session-ref-loading-dot"}),e.jsx("span",{className:"s-session-ref-loading-dot"}),"Resolving session reference"]})]})})});const a=R(o);return e.jsx("div",{className:"s-sessions-screen s-inbox-thread-redesign",children:e.jsx("section",{className:"s-thread-overview",children:e.jsxs("div",{className:"s-thread-overview-copy",children:[e.jsxs("div",{className:"s-sessions-header s-thread-overview-heading",children:[e.jsx("h2",{className:"s-page-title",children:a?"Process trace unavailable":"Session not found"}),e.jsx("span",{className:"s-meta s-tabular",children:o.slice(0,8)})]}),e.jsx("p",{className:"s-thread-overview-summary",children:a?"This is a live process handle, not a transcript session. No replayable session archive is attached yet.":"This session may have ended or the archive is not available on this machine."}),t&&e.jsx("p",{className:"s-session-ref-error-detail",children:t}),e.jsx("div",{className:"s-session-ref-nav-hint",children:e.jsx(I,{slot:"sessions",fallback:{view:"sessions"},navigate:s})})]})})})}export{Ye as SessionRefContextRail,Ze as SessionRefScreen};
@@ -1 +0,0 @@
1
- import{j as r}from"./index-DMiGbrBt.js";import{RawSessionsTable as t}from"./RawSessionsTable-DL8y_eEy.js";/* empty css */import"./DataTable-E8s_MmoA.js";/* empty css */import"./api-h5zurxmi.js";import"./time-DltNTpLl.js";import"./tail-events-D19uAGe3.js";import"./index-BWHgHrtv.js";import"./openContent-C6XO6kr5.js";import"./Provider-C7UKGHQy.js";import"./router-Bq5dwf78.js";import"./terminal-sessions-D5CIR2OL.js";import"./sse-CjIkKo46.js";import"./surface-activity-B1rgWB1i.js";import"./colors-BtO5_zlx.js";import"./scoutbot-BTIErYHo.js";import"./ContextMenu-bARZqTzD.js";import"./DocumentFocusViewer-BeVwwl26.js";import"./createLucideIcon-OpA4Amw5.js";import"./TextDocumentSurface-BpAw4eQS.js";/* empty css */import"./file-text-BODxCjcz.js";import"./x-D3GElQbe.js";import"./chevron-right-XiIHsk4m.js";import"./code-xml-B6jOCM4V.js";import"./arrow-left-DEZzHiPS.js";import"./scout-voice-CU5c0LGi.js";import"./fx-z37u1o2z.js";import"./keyboard-nav-2kv_tGUS.js";import"./MessageComposerSuggestions-DpxN9WiB.js";import"./NewChatComposer-Cs6OsxK6.js";import"./runtime-picker-Bcl5iIX5.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-CbHjZsz1.js";import"./index-CJXzfjo9.js";import"./HarnessMark-Cbv3Ib0c.js";import"./conversation-model-B47vYmWN.js";import"./NewChatOrigin-Bk2OyVjI.js";import"./agent-chat-Bfjd9y6c.js";import"./model-Co0zkMIc.js";import"./text-DsBWV_4k.js";import"./chevron-down-BGk5qoEw.js";import"./search-CWfZtOt2.js";function V({navigate:o}){return r.jsx(t,{navigate:o})}export{V as SessionsScreen};
@@ -1 +0,0 @@
1
- .s-settings-page{height:100%;min-height:0;overflow:auto;background:var(--bg);color:var(--ink);scrollbar-gutter:stable}.s-settings-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4xl);max-width:1320px;margin:0 auto;padding:var(--space-5xl) var(--space-5xl) var(--space-4xl);border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent)}.s-settings-page-kicker{margin-bottom:var(--space-sm);color:var(--accent);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:650;letter-spacing:var(--tracking-lg);text-transform:uppercase}.s-settings-page-header h1{margin:0;color:var(--ink);font-family:var(--font-accent-title);font-size:clamp(var(--text-4xl),3vw,var(--text-6xl));font-weight:620;letter-spacing:-.025em;line-height:var(--leading-tight)}.s-settings-page-header p{max-width:64ch;margin:var(--space-sm) 0 0;color:var(--muted);font-size:var(--text-md);line-height:var(--leading-normal)}.s-settings-page-save-state{display:inline-flex;align-items:center;gap:var(--space-sm);flex:none;margin-top:var(--space-xl);color:var(--dim);font-family:var(--font-mono);font-size:var(--text-xs)}.s-settings-page-save-state>span{width:6px;height:6px;border-radius:50%;background:var(--green)}.s-settings-page-save-state[data-state=saving]>span{background:var(--accent)}.s-settings-page-save-state[data-state=neutral]>span{background:var(--dim)}.s-settings-page-save-state[data-state=error]{color:var(--red)}.s-settings-page-save-state[data-state=error]>span{background:var(--red)}.s-settings-page-layout{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:start;gap:var(--space-5xl);max-width:1320px;margin:0 auto;padding:var(--space-4xl) var(--space-5xl) var(--space-7xl)}.s-settings-page .s-settings-rail{position:sticky;top:var(--space-4xl);grid-column:auto;grid-row:auto;padding:0;border-right:0;background:transparent}.s-settings-page .s-settings-rail-btn{border-left-width:1px;padding:var(--space-md) var(--space-xl)}.s-settings-page .s-settings-rail-btn:hover{background:color-mix(in srgb,var(--ink) 4%,transparent)}.s-settings-page .s-settings-rail-btn--active{background:color-mix(in srgb,var(--accent) 7%,transparent)}.s-settings-page .s-settings-content{grid-column:auto;grid-row:auto;min-width:0;overflow:visible;padding:0 0 var(--space-6xl);scroll-margin-top:var(--space-4xl)}.s-settings-page .s-settings-content:not([data-settings-section=appearance]){max-width:820px}.s-settings-loading,.s-settings-inline-note{color:var(--dim);font-family:var(--font-mono);font-size:var(--text-sm)}.s-settings-theme-mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-sm)}.s-settings-theme-mode,.s-settings-palette-choice,.s-settings-interface-choice,.s-settings-contrast-choice,.s-settings-accent-choice{position:relative;display:flex;min-width:0;border:1px solid var(--border);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--surface) 88%,var(--bg));color:var(--muted);cursor:pointer;text-align:left;transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s cubic-bezier(.2,.8,.2,1)}.s-settings-theme-mode{align-items:center;gap:var(--space-md);min-height:68px;padding:var(--space-lg)}.s-settings-theme-mode:hover,.s-settings-palette-choice:hover,.s-settings-interface-choice:hover,.s-settings-contrast-choice:hover,.s-settings-accent-choice:hover{border-color:color-mix(in srgb,var(--ink) 26%,var(--border));background:color-mix(in srgb,var(--ink) 4%,var(--surface))}.s-settings-theme-mode:focus-visible,.s-settings-palette-choice:focus-visible,.s-settings-interface-choice:focus-visible,.s-settings-contrast-choice:focus-visible,.s-settings-accent-choice:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:none}.s-settings-theme-mode:active,.s-settings-palette-choice:active,.s-settings-interface-choice:active,.s-settings-contrast-choice:active,.s-settings-accent-choice:active{transform:scale(.985)}.s-settings-theme-mode[data-active],.s-settings-palette-choice[data-active],.s-settings-interface-choice[data-active],.s-settings-contrast-choice[data-active],.s-settings-accent-choice[data-active]{border-color:color-mix(in srgb,var(--ink) 58%,var(--border));background:var(--surface);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 20%,transparent);color:var(--ink)}.s-settings-theme-mode>span:not(.s-settings-theme-check){display:flex;flex-direction:column;gap:var(--space-3xs);min-width:0}.s-settings-theme-mode strong{color:var(--ink);font-size:var(--text-md);font-weight:620}.s-settings-theme-mode small{color:var(--dim);font-family:var(--font-mono);font-size:var(--text-2xs);line-height:var(--leading-snug)}.s-settings-theme-check{flex:none;margin-left:auto;color:var(--accent)}.s-settings-appearance-workbench{display:grid;grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:var(--space-5xl)}.s-settings-appearance-controls,.s-settings-preview-column{min-width:0}.s-settings-appearance-controls{display:flex;flex-direction:column;gap:var(--space-4xl)}.s-settings-palette-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm)}.s-settings-palette-choice{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:var(--space-lg);min-height:98px;padding:var(--space-md)}.s-settings-palette-sample{display:grid;grid-template-columns:18px 32px minmax(0,1fr);gap:4px;height:72px;padding:5px;overflow:hidden;border:1px solid var(--hud-chrome-border);border-radius:var(--hud-radius);background:var(--hud-bg)}.s-settings-palette-rail,.s-settings-palette-list,.s-settings-palette-detail{display:flex;min-width:0;flex-direction:column;gap:4px;padding:5px;border:1px solid var(--hud-border);border-radius:calc(var(--hud-radius) * .72);background:var(--hud-surface)}.s-settings-palette-rail{align-items:center}.s-settings-palette-rail i,.s-settings-palette-list i,.s-settings-palette-detail i{display:block;width:100%;height:4px;border-radius:calc(var(--hud-radius) * .35);background:color-mix(in srgb,var(--hud-ink) 18%,transparent)}.s-settings-palette-rail i[data-active],.s-settings-palette-detail i[data-action]{background:var(--hud-accent)}.s-settings-palette-list i{flex:1;height:auto;border:1px solid var(--hud-border);background:color-mix(in srgb,var(--hud-bg) 62%,var(--hud-surface))}.s-settings-palette-list i[data-selected]{border-color:var(--hud-accent-line);background:var(--hud-accent-soft)}.s-settings-palette-detail i[data-title]{width:58%;height:5px;margin-bottom:2px;background:color-mix(in srgb,var(--hud-ink) 48%,transparent)}.s-settings-palette-detail i[data-action]{width:42%;height:7px;margin-top:auto}.s-settings-choice-copy{display:flex;min-width:0;flex-direction:column;gap:var(--space-3xs)}.s-settings-choice-title{display:flex;align-items:center;gap:var(--space-sm)}.s-settings-choice-title strong{color:var(--ink);font-size:var(--text-md);font-weight:620}.s-settings-choice-title .s-settings-theme-check{margin-left:auto}.s-settings-choice-copy small{color:var(--muted);font-family:var(--font-sans);font-size:var(--text-xs);line-height:var(--leading-snug)}.s-settings-choice-copy>span:last-child:not(.s-settings-choice-title){color:var(--muted);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-sm)}.s-settings-interface-grid,.s-settings-contrast-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-sm)}.s-settings-interface-choice{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:var(--space-md);min-height:82px;padding:var(--space-md)}.s-settings-shape-sample{display:grid;width:42px;height:42px;place-items:center;border:1px solid var(--hud-chrome-border);border-radius:var(--hud-radius);background:var(--hud-bg)}.s-settings-shape-sample>i{display:grid;width:28px;height:28px;place-items:center;border:1px solid var(--hud-border);border-radius:calc(var(--hud-radius) * .72);background:var(--hud-surface)}.s-settings-shape-sample>i>i{display:block;width:14px;height:4px;border-radius:calc(var(--hud-radius) * .4);background:var(--hud-accent)}.s-settings-contrast-choice{display:grid;grid-template-columns:30px minmax(0,1fr);gap:0 var(--space-md);align-items:center;min-height:64px;padding:var(--space-md)}.s-settings-contrast-choice strong,.s-settings-contrast-choice small{grid-column:2}.s-settings-contrast-choice strong{align-self:end;color:var(--ink);font-size:var(--text-md);font-weight:620}.s-settings-contrast-choice small{align-self:start;color:var(--muted);font-family:var(--font-mono);font-size:var(--text-2xs)}.s-settings-contrast-lines{grid-row:1 / span 2;display:flex;width:30px;height:36px;flex-direction:column;justify-content:center;gap:5px}.s-settings-contrast-lines i{height:1px;background:var(--ink)}.s-settings-contrast-lines[data-level=soft] i{opacity:.18}.s-settings-contrast-lines[data-level=balanced] i{opacity:.42}.s-settings-contrast-lines[data-level=strong] i{opacity:.78}.s-settings-accent-row{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.s-settings-accent-choice{align-items:center;gap:var(--space-sm);min-height:38px;padding:var(--space-sm) var(--space-md);color:var(--muted);font-family:var(--font-mono);font-size:var(--text-xs)}.s-settings-accent-choice>svg{margin-left:var(--space-2xs);color:var(--ink)}.s-settings-accent-dot{display:grid;width:16px;height:16px;place-items:center;border:1px solid var(--hud-chrome-border);border-radius:50%;background:var(--hud-bg)}.s-settings-accent-dot i{display:block;width:8px;height:8px;border-radius:50%;background:var(--hud-accent)}.s-settings-preview-column{position:sticky;top:var(--space-4xl)}.s-settings-live-preview{overflow:hidden;border:1px solid var(--hud-chrome-border);border-radius:var(--hud-radius);background:var(--hud-bg);color:var(--hud-ink)}.s-settings-live-preview-bar{display:flex;align-items:center;justify-content:space-between;height:34px;padding:0 var(--space-md);border-bottom:1px solid var(--hud-border);background:color-mix(in srgb,var(--hud-surface) 78%,var(--hud-bg));color:var(--hud-muted);font-family:var(--hud-font-mono);font-size:var(--text-3xs);letter-spacing:.12em}.s-settings-live-preview-bar>span,.s-settings-live-preview-state{display:inline-flex;align-items:center;gap:5px}.s-settings-live-preview-bar i,.s-settings-live-preview-event i{display:block;width:6px;height:6px;border-radius:50%;background:var(--hud-accent)}.s-settings-live-preview-shell{display:grid;grid-template-columns:28px 104px minmax(0,1fr);min-height:294px}.s-settings-live-preview-rail,.s-settings-live-preview-list{border-right:1px solid var(--hud-border);background:color-mix(in srgb,var(--hud-surface) 74%,var(--hud-bg))}.s-settings-live-preview-rail{display:flex;align-items:center;gap:12px;padding:14px 7px;flex-direction:column}.s-settings-live-preview-rail i{display:block;width:10px;height:10px;border:1px solid var(--hud-border);border-radius:calc(var(--hud-radius) * .45)}.s-settings-live-preview-rail i[data-active]{border-color:var(--hud-accent-line);background:var(--hud-accent-soft)}.s-settings-live-preview-list{padding:13px 7px}.s-settings-live-preview-kicker{display:block;margin-bottom:9px;color:var(--hud-muted);font-family:var(--hud-font-mono);font-size:var(--text-3xs);letter-spacing:.11em}.s-settings-live-preview-row{display:grid;grid-template-columns:6px 1fr auto;align-items:center;gap:5px;min-height:29px;padding:0 5px;border:1px solid transparent;border-radius:calc(var(--hud-radius) * .55);color:var(--hud-muted);font-size:var(--text-3xs)}.s-settings-live-preview-row[data-selected]{border-color:var(--hud-accent-line);background:var(--hud-accent-soft);color:var(--hud-ink)}.s-settings-live-preview-row>i{width:5px;height:5px;border-radius:50%;background:var(--hud-accent)}.s-settings-live-preview-row b{overflow:hidden;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.s-settings-live-preview-row small{color:var(--hud-muted);font-family:var(--hud-font-mono);font-size:var(--text-3xs)}.s-settings-live-preview-detail{display:flex;min-width:0;flex-direction:column;padding:18px 14px}.s-settings-live-preview-detail strong{color:var(--hud-ink);font-size:var(--text-lg);font-weight:620}.s-settings-live-preview-detail p{margin:7px 0 14px;color:var(--hud-muted);font-size:var(--text-2xs);line-height:1.5}.s-settings-live-preview-event{display:flex;align-items:center;gap:6px;padding:8px;border:1px solid var(--hud-border);border-radius:calc(var(--hud-radius) * .65);background:var(--hud-surface);color:var(--hud-muted);font-family:var(--hud-font-mono);font-size:var(--text-3xs);line-height:1.45}.s-settings-live-preview-detail button{align-self:flex-start;margin-top:auto;padding:5px 8px;border:1px solid var(--hud-accent-line);border-radius:calc(var(--hud-radius) * .65);background:var(--hud-accent-soft);color:var(--hud-accent);font-family:var(--hud-font-mono);font-size:var(--text-3xs)}.s-settings-theme-readout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:var(--space-md) 0 0;border-top:1px solid var(--border);border-left:1px solid var(--border)}.s-settings-theme-readout>div{padding:var(--space-md);border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.s-settings-theme-readout dt,.s-settings-theme-readout dd{margin:0}.s-settings-theme-readout dt{color:var(--dim);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-md);text-transform:uppercase}.s-settings-theme-readout dd{margin-top:var(--space-2xs);color:var(--ink);font-size:var(--text-sm)}.s-settings-preview-note{margin:var(--space-md) 0 0;color:var(--muted);font-size:var(--text-xs);line-height:var(--leading-normal)}.s-settings-appearance-note{display:grid;grid-template-columns:minmax(140px,.4fr) 1fr;gap:var(--space-2xl);padding:var(--space-xl) 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.s-settings-appearance-note strong{color:var(--ink);font-size:var(--text-sm);font-weight:620}.s-settings-appearance-note span{color:var(--muted);font-size:var(--text-sm);line-height:var(--leading-normal)}.s-settings-scrim{position:fixed;inset:0;z-index:90;background:color-mix(in srgb,var(--bg) 55%,transparent);transition:opacity .18s ease}.s-settings-scrim--open{opacity:1;pointer-events:auto;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.s-settings-scrim--closed{opacity:0;pointer-events:none;backdrop-filter:none;-webkit-backdrop-filter:none}.s-settings-drawer{position:fixed;left:0;top:0;bottom:0;width:720px;z-index:100;background:var(--bg);color:var(--ink);border-right:1px solid var(--border);box-shadow:0 0 60px color-mix(in srgb,var(--bg) 60%,transparent);display:grid;grid-template-columns:200px 1fr;grid-template-rows:52px 1fr 48px;transition:transform .24s cubic-bezier(.2,.8,.2,1)}.s-settings-drawer--open{transform:translate(0)}.s-settings-drawer--closed{transform:translate(-100%)}.s-settings-header{grid-column:1 / -1;grid-row:1;display:flex;align-items:center;gap:var(--space-xl);padding:0 var(--space-4xl);border-bottom:1px solid var(--border);background:var(--surface)}.s-settings-header-title{font-family:var(--font-mono);font-size:var(--text-md);letter-spacing:.24em;font-weight:600}.s-settings-header-sep{color:var(--dim)}.s-settings-header-section{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--dim);letter-spacing:var(--tracking-md);text-transform:uppercase}.s-settings-header-hint{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--dim)}.s-settings-close{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:var(--text-3xl);padding:var(--space-2xs);line-height:var(--leading-none)}.s-settings-rail{grid-column:1;grid-row:2;border-right:1px solid var(--border);padding:var(--space-3xl) 0;background:var(--surface)}.s-settings-rail-btn{display:flex;flex-direction:column;gap:var(--space-3xs);width:100%;padding:var(--space-md) var(--space-3xl);text-align:left;border:0;background:transparent;border-left:2px solid transparent;cursor:pointer;color:inherit;text-decoration:none}.s-settings-rail-btn--active{background:var(--bg);border-left-color:var(--accent)}.s-settings-rail-label{font-size:var(--text-lg);font-weight:500;color:var(--muted)}.s-settings-rail-btn--active .s-settings-rail-label{color:var(--ink)}.s-settings-rail-sub{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--dim);letter-spacing:var(--tracking-sm)}.s-settings-content{grid-column:2;grid-row:2;overflow:auto;padding:var(--space-5xl)}.s-settings-footer{grid-column:1 / -1;grid-row:3;display:flex;align-items:center;gap:var(--space-md);padding:0 var(--space-4xl);border-top:1px solid var(--border);background:var(--surface);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--dim);letter-spacing:var(--tracking-md)}.s-settings-footer-sync{color:var(--green)}.s-settings-section-rule{display:flex;align-items:center;gap:var(--space-lg);padding:var(--space-2xs) 0;margin-bottom:var(--space-2xl)}.s-settings-section-label{font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:var(--tracking-lg);text-transform:uppercase;color:var(--dim);flex-shrink:0}.s-settings-section-line{flex:1;height:1px;background:var(--border)}.s-settings-section-right{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--dim);flex-shrink:0}.s-settings-field{display:flex;flex-direction:column;gap:var(--space-xs)}.s-settings-field-label{font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:var(--tracking-lg);text-transform:uppercase;color:var(--muted)}.s-settings-field-hint{font-size:var(--text-sm);color:var(--dim);line-height:var(--leading-snug)}.s-settings-input{padding:var(--space-md) var(--space-lg);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);font-family:var(--font-sans);font-size:var(--text-lg);outline:none}.s-settings-input:focus{border-color:var(--accent)}.s-settings-input--mono{font-family:var(--font-mono);font-size:var(--text-md)}.s-settings-textarea{padding:var(--space-md) var(--space-lg);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);font-family:var(--font-sans);font-size:var(--text-lg);line-height:var(--leading-normal);outline:none;resize:vertical}.s-settings-textarea:focus{border-color:var(--accent)}.s-settings-option-grid{display:grid;gap:var(--space-xs)}.s-settings-option-stacked{display:flex;flex-direction:column;gap:var(--space-xs)}.s-settings-option-btn{padding:var(--space-md) var(--space-lg);text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-md);cursor:pointer;display:flex;flex-direction:column;gap:var(--space-3xs);color:inherit}.s-settings-option-btn--active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.s-settings-option-label{font-size:var(--text-md);font-weight:500;color:var(--muted)}.s-settings-option-btn--active .s-settings-option-label{color:var(--ink)}.s-settings-option-sub{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--dim);letter-spacing:var(--tracking-sm)}.s-settings-slider-wrap{display:flex;align-items:center;gap:var(--space-lg)}.s-settings-slider-wrap input[type=range]{flex:1;accent-color:var(--accent)}.s-settings-slider-value{font-family:var(--font-mono);font-size:var(--text-md);color:var(--ink);padding:var(--space-2xs) var(--space-md);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);min-width:70px;text-align:center}.s-settings-identity-card{display:flex;gap:var(--space-3xl);align-items:center;padding:var(--space-3xl);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.s-settings-identity-dot{width:56px;height:56px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:var(--text-5xl);font-weight:600;flex-shrink:0}.s-settings-identity-name{font-size:var(--text-5xl);font-weight:500;line-height:var(--leading-none)}.s-settings-identity-meta{font-family:var(--font-mono);font-size:var(--text-md);color:var(--dim);margin-top:var(--space-2xs)}.s-settings-hue-wrap{display:flex;flex-direction:column;gap:var(--space-xs)}.s-settings-hue-row{display:flex;gap:var(--space-2xs)}.s-settings-hue-dot{width:22px;height:22px;border-radius:50%;border:1px solid var(--border);cursor:pointer;padding:0}.s-settings-hue-dot--active{border:2px solid var(--accent)}.s-settings-two-col{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2xl)}.s-settings-col-gap{display:flex;flex-direction:column;gap:var(--space-4xl)}.s-settings-button-row{display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap}.s-settings-device-row{display:grid;grid-template-columns:40px 1fr auto auto;align-items:center;gap:var(--space-xl);padding:var(--space-xl) var(--space-2xl);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.s-settings-device-icon{width:36px;height:36px;border-radius:var(--radius-md);background:var(--bg);border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-3xl);color:var(--muted)}.s-settings-device-name{font-size:var(--text-lg);font-weight:500}.s-settings-device-meta{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--dim);letter-spacing:var(--tracking-sm)}.s-settings-device-status{font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:var(--tracking-md);text-transform:uppercase}.s-settings-relay-card{padding:var(--space-2xl);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);display:grid;grid-template-columns:1fr auto;gap:var(--space-2xl);align-items:center}.s-settings-relay-title{font-size:var(--text-lg);font-weight:500;margin-bottom:var(--space-2xs)}.s-settings-relay-meta{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--dim);letter-spacing:var(--tracking-sm)}.s-settings-relay-desc{font-size:var(--text-md);color:var(--muted);margin-top:var(--space-xs);line-height:var(--leading-normal)}.s-settings-about{display:flex;flex-direction:column;gap:var(--space-4xl)}.s-settings-about-summary{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-3xl);padding:var(--space-3xl);border:1px solid color-mix(in srgb,var(--ink) 6%,transparent);border-radius:var(--radius-xl);background:color-mix(in srgb,var(--surface) 96%,transparent)}.s-settings-about-summary>div:first-child{display:grid;gap:var(--space-xs);min-width:0}.s-settings-about-product{color:var(--accent);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:650;letter-spacing:var(--tracking-md);text-transform:uppercase}.s-settings-about-summary strong{color:var(--ink);font-family:var(--font-accent-title);font-size:clamp(var(--text-4xl),4vw,var(--text-6xl));font-weight:620;letter-spacing:-.025em;line-height:var(--leading-tight)}.s-settings-about-source{color:var(--muted);font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--leading-normal);overflow-wrap:anywhere}.s-settings-about-collected{color:var(--dim);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-normal)}.s-settings-about-actions{display:flex;flex:none;flex-wrap:wrap;gap:var(--space-sm)}.s-settings-about-actions .s-btn{display:inline-flex;align-items:center;gap:var(--space-xs)}.s-settings-about-copy{color:var(--accent)}.s-settings-about-warning{margin-top:calc(-1 * var(--space-md));padding:var(--space-lg) var(--space-xl);border:1px solid color-mix(in srgb,var(--amber) 28%,var(--border));border-radius:var(--radius-md);background:color-mix(in srgb,var(--amber) 7%,transparent);color:color-mix(in srgb,var(--amber) 78%,var(--ink));font-size:var(--text-sm);line-height:var(--leading-normal)}.s-settings-about-copy-fallback{display:grid;gap:var(--space-sm);margin-top:calc(-1 * var(--space-md));padding:var(--space-lg) var(--space-xl);border:1px solid color-mix(in srgb,var(--red) 26%,var(--border));border-radius:var(--radius-md);background:color-mix(in srgb,var(--red) 5%,transparent);color:var(--ink);font-size:var(--text-sm)}.s-settings-about-copy-fallback>span{color:var(--muted)}.s-settings-about-copy-fallback textarea{width:100%;min-height:180px;padding:var(--space-md);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-normal);resize:vertical}.s-settings-about-ledger{margin:calc(-1 * var(--space-2xl)) 0 0;border-top:1px solid var(--border)}.s-settings-about-fact{display:grid;grid-template-columns:minmax(140px,.34fr) minmax(0,1fr);gap:var(--space-2xl);padding:var(--space-lg) 0;border-bottom:1px solid var(--border)}.s-settings-about-fact dt{color:var(--dim);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;letter-spacing:var(--tracking-sm);line-height:var(--leading-normal);text-transform:uppercase}.s-settings-about-fact dd{display:grid;gap:var(--space-2xs);min-width:0;margin:0}.s-settings-about-fact code{color:var(--ink);font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--leading-normal);overflow-wrap:anywhere;white-space:normal}.s-settings-about-fact dd>span{max-width:68ch;color:var(--muted);font-size:var(--text-sm);line-height:var(--leading-normal)}.s-settings-about-note{max-width:70ch;margin:0;color:var(--muted);font-size:var(--text-sm);line-height:var(--leading-normal)}@media(max-width:800px){.s-settings-drawer{width:100%;grid-template-columns:1fr;grid-template-rows:52px auto 1fr 48px}.s-settings-rail{grid-column:1;grid-row:2;border-right:none;border-bottom:1px solid var(--border);display:flex;padding:var(--space-sm) var(--space-lg);gap:var(--space-2xs);overflow-x:auto}.s-settings-rail-btn{flex-direction:row;gap:var(--space-sm);padding:var(--space-xs) var(--space-lg);white-space:nowrap}.s-settings-content{grid-column:1;grid-row:3}.s-settings-footer{grid-column:1;grid-row:4}}.s-settings-realtime-voice{display:flex;align-items:flex-start;gap:var(--space-md);padding:var(--space-md);border:1px solid color-mix(in srgb,var(--border) 68%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface) 70%,transparent)}.s-settings-realtime-voice[data-enabled=true]{border-color:color-mix(in srgb,var(--green) 36%,var(--border));background:color-mix(in srgb,var(--green) 6%,var(--surface))}.s-settings-realtime-voice[data-unavailable=true]{opacity:.7}.s-settings-realtime-voice-copy{display:grid;gap:var(--space-2xs);min-width:0}.s-settings-realtime-voice-copy strong{color:var(--ink);font-size:var(--text-sm);font-weight:650}.s-settings-realtime-voice-copy>span{color:var(--muted);font-size:var(--text-xs);line-height:var(--leading-normal)}.s-settings-realtime-voice-copy em{color:var(--dim);font-family:var(--font-mono);font-size:var(--text-2xs);font-style:normal}@media(max-width:1180px){.s-settings-page-layout{grid-template-columns:190px minmax(0,1fr);gap:var(--space-3xl)}.s-settings-appearance-workbench{grid-template-columns:1fr}.s-settings-preview-column{position:static}.s-settings-live-preview-shell{min-height:250px}}@media(max-width:760px){.s-settings-page-header{flex-direction:column;gap:var(--space-xl);padding:var(--space-3xl) var(--space-2xl)}.s-settings-page-save-state{margin-top:0}.s-settings-page-layout{display:block;padding:0 var(--space-2xl) var(--space-6xl)}.s-settings-page .s-settings-rail{position:sticky;top:0;z-index:5;display:flex;gap:var(--space-2xs);margin:0 calc(-1 * var(--space-2xl)) var(--space-3xl);padding:var(--space-sm) var(--space-2xl);overflow-x:auto;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg) 96%,transparent)}.s-settings-page .s-settings-rail-btn{flex:none;width:auto;min-height:42px;padding:var(--space-sm) var(--space-lg);border:1px solid transparent;border-radius:var(--radius-md);white-space:nowrap}.s-settings-page .s-settings-rail-btn--active{border-color:color-mix(in srgb,var(--accent) 36%,var(--border))}.s-settings-page .s-settings-rail-sub{display:none}.s-settings-theme-mode-grid,.s-settings-palette-grid,.s-settings-interface-grid,.s-settings-contrast-grid{grid-template-columns:1fr}.s-settings-palette-choice{grid-template-columns:112px minmax(0,1fr)}.s-settings-live-preview-shell{grid-template-columns:28px 96px minmax(0,1fr)}.s-settings-appearance-note{grid-template-columns:1fr;gap:var(--space-sm)}.s-settings-two-col{grid-template-columns:1fr}.s-settings-about-summary{align-items:stretch;flex-direction:column}.s-settings-about-actions .s-btn{justify-content:center;min-height:42px}.s-settings-about-fact{grid-template-columns:1fr;gap:var(--space-2xs)}}@media(prefers-reduced-motion:reduce){.s-settings-theme-mode,.s-settings-palette-choice,.s-settings-interface-choice,.s-settings-contrast-choice,.s-settings-accent-choice{transition:none}.s-settings-theme-mode:active,.s-settings-palette-choice:active,.s-settings-interface-choice:active,.s-settings-contrast-choice:active,.s-settings-accent-choice:active{transform:none}}
@@ -1 +0,0 @@
1
- import{j as i,r as d}from"./index-DMiGbrBt.js";import{E as it}from"./EmptyState-4F9XDFQm.js";import{S as B}from"./StatusPill-DhBL__p8.js";import{a as M}from"./api-h5zurxmi.js";import{p as Rt}from"./status-tone-BM_zuRy1.js";import{t as ot}from"./time-DltNTpLl.js";import{AgentConfigurationScreen as Mt}from"./AgentConfigurationScreen-BqfOz90D.js";import{S as At}from"./SettingsDrawer-XfdAa_nD.js";/* empty css */import"./agent-chat-Bfjd9y6c.js";import"./Provider-C7UKGHQy.js";import"./router-Bq5dwf78.js";import"./terminal-sessions-D5CIR2OL.js";import"./sse-CjIkKo46.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./colors-BtO5_zlx.js";import"./scoutbot-BTIErYHo.js";import"./ContextMenu-bARZqTzD.js";import"./DocumentFocusViewer-BeVwwl26.js";import"./createLucideIcon-OpA4Amw5.js";import"./TextDocumentSurface-BpAw4eQS.js";/* empty css */import"./file-text-BODxCjcz.js";import"./x-D3GElQbe.js";import"./chevron-right-XiIHsk4m.js";import"./code-xml-B6jOCM4V.js";import"./arrow-left-DEZzHiPS.js";import"./scout-voice-CU5c0LGi.js";import"./fx-z37u1o2z.js";import"./keyboard-nav-2kv_tGUS.js";import"./MessageComposerSuggestions-DpxN9WiB.js";import"./NewChatComposer-Cs6OsxK6.js";import"./runtime-picker-Bcl5iIX5.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-CbHjZsz1.js";import"./index-CJXzfjo9.js";import"./HarnessMark-Cbv3Ib0c.js";import"./conversation-model-B47vYmWN.js";import"./NewChatOrigin-Bk2OyVjI.js";import"./model-Co0zkMIc.js";import"./text-DsBWV_4k.js";import"./chevron-down-BGk5qoEw.js";import"./search-CWfZtOt2.js";import"./openContent-C6XO6kr5.js";import"./AgentsSubnav-DIEO4NPx.js";import"./SecondaryNav-B3-nh5dM.js";import"./secondaryNavConfig-DqUIp0Es.js";import"./message-square-DSaGpjFU.js";import"./terminal-B9AOZQKR.js";import"./scroll-text-D6Pdnar7.js";import"./refresh-cw-BBmAnCB7.js";import"./bot-eu8pBNvI.js";import"./wrench-Bkc_0lKF.js";import"./server-CPp4ZJhZ.js";import"./VoicePermissionsPanel-DsK53ar4.js";import"./check-DjgFiBxb.js";import"./copy-CQGYbxdu.js";var k=(t=>(t[t.Border=-1]="Border",t[t.Data=0]="Data",t[t.Function=1]="Function",t[t.Position=2]="Position",t[t.Timing=3]="Timing",t[t.Alignment=4]="Alignment",t))(k||{});const Ct=[0,1],dt=[1,0],ht=[2,3],ft=[3,2],It={L:Ct,M:dt,Q:ht,H:ft},zt=/^\d*$/,Ft=/^[A-Z0-9 $%*+./:-]*$/,L="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:",T=1,q=40,at=3,Bt=3,I=40,Lt=10,mt=[[-1,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],[-1,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]],pt=[[-1,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],[-1,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],[-1,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],[-1,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]];class _t{constructor(e,s,n,r){if(this.version=e,this.ecc=s,e<T||e>q)throw new RangeError("Version value out of range");if(r<-1||r>7)throw new RangeError("Mask value out of range");this.size=e*4+17;const o=Array.from({length:this.size}).fill(!1);for(let c=0;c<this.size;c++)this.modules.push(o.slice()),this.types.push(o.map(()=>0));this.drawFunctionPatterns();const a=this.addEccAndInterleave(n);if(this.drawCodewords(a),r===-1){let c=1e9;for(let u=0;u<8;u++){this.applyMask(u),this.drawFormatBits(u);const h=this.getPenaltyScore();h<c&&(r=u,c=h),this.applyMask(u)}}this.mask=r,this.applyMask(r),this.drawFormatBits(r)}size;mask;modules=[];types=[];getModule(e,s){return e>=0&&e<this.size&&s>=0&&s<this.size&&this.modules[s][e]}drawFunctionPatterns(){for(let n=0;n<this.size;n++)this.setFunctionModule(6,n,n%2===0,k.Timing),this.setFunctionModule(n,6,n%2===0,k.Timing);this.drawFinderPattern(3,3),this.drawFinderPattern(this.size-4,3),this.drawFinderPattern(3,this.size-4);const e=this.getAlignmentPatternPositions(),s=e.length;for(let n=0;n<s;n++)for(let r=0;r<s;r++)n===0&&r===0||n===0&&r===s-1||n===s-1&&r===0||this.drawAlignmentPattern(e[n],e[r]);this.drawFormatBits(0),this.drawVersion()}drawFormatBits(e){const s=this.ecc[1]<<3|e;let n=s;for(let o=0;o<10;o++)n=n<<1^(n>>>9)*1335;const r=(s<<10|n)^21522;for(let o=0;o<=5;o++)this.setFunctionModule(8,o,x(r,o));this.setFunctionModule(8,7,x(r,6)),this.setFunctionModule(8,8,x(r,7)),this.setFunctionModule(7,8,x(r,8));for(let o=9;o<15;o++)this.setFunctionModule(14-o,8,x(r,o));for(let o=0;o<8;o++)this.setFunctionModule(this.size-1-o,8,x(r,o));for(let o=8;o<15;o++)this.setFunctionModule(8,this.size-15+o,x(r,o));this.setFunctionModule(8,this.size-8,!0)}drawVersion(){if(this.version<7)return;let e=this.version;for(let n=0;n<12;n++)e=e<<1^(e>>>11)*7973;const s=this.version<<12|e;for(let n=0;n<18;n++){const r=x(s,n),o=this.size-11+n%3,a=Math.floor(n/3);this.setFunctionModule(o,a,r),this.setFunctionModule(a,o,r)}}drawFinderPattern(e,s){for(let n=-4;n<=4;n++)for(let r=-4;r<=4;r++){const o=Math.max(Math.abs(r),Math.abs(n)),a=e+r,c=s+n;a>=0&&a<this.size&&c>=0&&c<this.size&&this.setFunctionModule(a,c,o!==2&&o!==4,k.Position)}}drawAlignmentPattern(e,s){for(let n=-2;n<=2;n++)for(let r=-2;r<=2;r++)this.setFunctionModule(e+r,s+n,Math.max(Math.abs(r),Math.abs(n))!==1,k.Alignment)}setFunctionModule(e,s,n,r=k.Function){this.modules[s][e]=n,this.types[s][e]=r}addEccAndInterleave(e){const s=this.version,n=this.ecc;if(e.length!==z(s,n))throw new RangeError("Invalid argument");const r=pt[n[0]][s],o=mt[n[0]][s],a=Math.floor(O(s)/8),c=r-a%r,u=Math.floor(a/r),h=[],p=Yt(o);for(let f=0,b=0;f<r;f++){const g=e.slice(b,b+u-o+(f<c?0:1));b+=g.length;const E=Gt(g,p);f<c&&g.push(0),h.push(g.concat(E))}const m=[];for(let f=0;f<h[0].length;f++)h.forEach((b,g)=>{(f!==u-o||g>=c)&&m.push(b[f])});return m}drawCodewords(e){if(e.length!==Math.floor(O(this.version)/8))throw new RangeError("Invalid argument");let s=0;for(let n=this.size-1;n>=1;n-=2){n===6&&(n=5);for(let r=0;r<this.size;r++)for(let o=0;o<2;o++){const a=n-o,u=(n+1&2)===0?this.size-1-r:r;!this.types[u][a]&&s<e.length*8&&(this.modules[u][a]=x(e[s>>>3],7-(s&7)),s++)}}}applyMask(e){if(e<0||e>7)throw new RangeError("Mask value out of range");for(let s=0;s<this.size;s++)for(let n=0;n<this.size;n++){let r;switch(e){case 0:r=(n+s)%2===0;break;case 1:r=s%2===0;break;case 2:r=n%3===0;break;case 3:r=(n+s)%3===0;break;case 4:r=(Math.floor(n/3)+Math.floor(s/2))%2===0;break;case 5:r=n*s%2+n*s%3===0;break;case 6:r=(n*s%2+n*s%3)%2===0;break;case 7:r=((n+s)%2+n*s%3)%2===0;break;default:throw new Error("Unreachable")}!this.types[s][n]&&r&&(this.modules[s][n]=!this.modules[s][n])}}getPenaltyScore(){let e=0;for(let o=0;o<this.size;o++){let a=!1,c=0;const u=[0,0,0,0,0,0,0];for(let h=0;h<this.size;h++)this.modules[o][h]===a?(c++,c===5?e+=at:c>5&&e++):(this.finderPenaltyAddHistory(c,u),a||(e+=this.finderPenaltyCountPatterns(u)*I),a=this.modules[o][h],c=1);e+=this.finderPenaltyTerminateAndCount(a,c,u)*I}for(let o=0;o<this.size;o++){let a=!1,c=0;const u=[0,0,0,0,0,0,0];for(let h=0;h<this.size;h++)this.modules[h][o]===a?(c++,c===5?e+=at:c>5&&e++):(this.finderPenaltyAddHistory(c,u),a||(e+=this.finderPenaltyCountPatterns(u)*I),a=this.modules[h][o],c=1);e+=this.finderPenaltyTerminateAndCount(a,c,u)*I}for(let o=0;o<this.size-1;o++)for(let a=0;a<this.size-1;a++){const c=this.modules[o][a];c===this.modules[o][a+1]&&c===this.modules[o+1][a]&&c===this.modules[o+1][a+1]&&(e+=Bt)}let s=0;for(const o of this.modules)s=o.reduce((a,c)=>a+(c?1:0),s);const n=this.size*this.size,r=Math.ceil(Math.abs(s*20-n*10)/n)-1;return e+=r*Lt,e}getAlignmentPatternPositions(){if(this.version===1)return[];{const e=Math.floor(this.version/7)+2,s=this.version===32?26:Math.ceil((this.version*4+4)/(e*2-2))*2,n=[6];for(let r=this.size-7;n.length<e;r-=s)n.splice(1,0,r);return n}}finderPenaltyCountPatterns(e){const s=e[1],n=s>0&&e[2]===s&&e[3]===s*3&&e[4]===s&&e[5]===s;return(n&&e[0]>=s*4&&e[6]>=s?1:0)+(n&&e[6]>=s*4&&e[0]>=s?1:0)}finderPenaltyTerminateAndCount(e,s,n){return e&&(this.finderPenaltyAddHistory(s,n),s=0),s+=this.size,this.finderPenaltyAddHistory(s,n),this.finderPenaltyCountPatterns(n)}finderPenaltyAddHistory(e,s){s[0]===0&&(e+=this.size),s.pop(),s.unshift(e)}}function N(t,e,s){if(e<0||e>31||t>>>e)throw new RangeError("Value out of range");for(let n=e-1;n>=0;n--)s.push(t>>>n&1)}function x(t,e){return(t>>>e&1)!==0}class V{constructor(e,s,n){if(this.mode=e,this.numChars=s,this.bitData=n,s<0)throw new RangeError("Invalid argument");this.bitData=n.slice()}getData(){return this.bitData.slice()}}const $t=[1,10,12,14],Ot=[2,9,11,13],Ut=[4,8,16,16];function gt(t,e){return t[Math.floor((e+7)/17)+1]}function yt(t){const e=[];for(const s of t)N(s,8,e);return new V(Ut,t.length,e)}function Dt(t){if(!bt(t))throw new RangeError("String contains non-numeric characters");const e=[];for(let s=0;s<t.length;){const n=Math.min(t.length-s,3);N(Number.parseInt(t.substring(s,s+n),10),n*3+1,e),s+=n}return new V($t,t.length,e)}function Tt(t){if(!vt(t))throw new RangeError("String contains unencodable characters in alphanumeric mode");const e=[];let s;for(s=0;s+2<=t.length;s+=2){let n=L.indexOf(t.charAt(s))*45;n+=L.indexOf(t.charAt(s+1)),N(n,11,e)}return s<t.length&&N(L.indexOf(t.charAt(s)),6,e),new V(Ot,t.length,e)}function qt(t){return t===""?[]:bt(t)?[Dt(t)]:vt(t)?[Tt(t)]:[yt(Ht(t))]}function bt(t){return zt.test(t)}function vt(t){return Ft.test(t)}function Vt(t,e){let s=0;for(const n of t){const r=gt(n.mode,e);if(n.numChars>=1<<r)return Number.POSITIVE_INFINITY;s+=4+r+n.bitData.length}return s}function Ht(t){t=encodeURI(t);const e=[];for(let s=0;s<t.length;s++)t.charAt(s)!=="%"?e.push(t.charCodeAt(s)):(e.push(Number.parseInt(t.substring(s+1,s+3),16)),s+=2);return e}function O(t){if(t<T||t>q)throw new RangeError("Version number out of range");let e=(16*t+128)*t+64;if(t>=2){const s=Math.floor(t/7)+2;e-=(25*s-10)*s-55,t>=7&&(e-=36)}return e}function z(t,e){return Math.floor(O(t)/8)-mt[e[0]][t]*pt[e[0]][t]}function Yt(t){if(t<1||t>255)throw new RangeError("Degree out of range");const e=[];for(let n=0;n<t-1;n++)e.push(0);e.push(1);let s=1;for(let n=0;n<t;n++){for(let r=0;r<e.length;r++)e[r]=U(e[r],s),r+1<e.length&&(e[r]^=e[r+1]);s=U(s,2)}return e}function Gt(t,e){const s=e.map(n=>0);for(const n of t){const r=n^s.shift();s.push(0),e.forEach((o,a)=>s[a]^=U(o,r))}return s}function U(t,e){if(t>>>8||e>>>8)throw new RangeError("Byte out of range");let s=0;for(let n=7;n>=0;n--)s=s<<1^(s>>>7)*285,s^=(e>>>n&1)*t;return s}function Wt(t,e,s=1,n=40,r=-1,o=!0){if(!(T<=s&&s<=n&&n<=q)||r<-1||r>7)throw new RangeError("Invalid value");let a,c;for(a=s;;a++){const m=z(a,e)*8,f=Vt(t,a);if(f<=m){c=f;break}if(a>=n)throw new RangeError("Data too long")}for(const m of[dt,ht,ft])o&&c<=z(a,m)*8&&(e=m);const u=[];for(const m of t){N(m.mode[0],4,u),N(m.numChars,gt(m.mode,a),u);for(const f of m.getData())u.push(f)}const h=z(a,e)*8;N(0,Math.min(4,h-u.length),u),N(0,(8-u.length%8)%8,u);for(let m=236;u.length<h;m^=253)N(m,8,u);const p=Array.from({length:Math.ceil(u.length/8)},()=>0);return u.forEach((m,f)=>p[f>>>3]|=m<<7-(f&7)),new _t(a,e,p,r)}function Xt(t,e){const{ecc:s="L",boostEcc:n=!1,minVersion:r=1,maxVersion:o=40,maskPattern:a=-1,border:c=1}=e||{},u=typeof t=="string"?qt(t):Array.isArray(t)?[yt(t)]:void 0;if(!u)throw new Error(`uqr only supports encoding string and binary data, but got: ${typeof t}`);const h=Wt(u,It[s],r,o,a,n),p=Jt({version:h.version,maskPattern:h.mask,size:h.size,data:h.modules,types:h.types},c);return e?.invert&&(p.data=p.data.map(m=>m.map(f=>!f))),e?.onEncoded?.(p),p}function Jt(t,e=1){if(!e)return t;const{size:s}=t,n=s+e*2;t.size=n,t.data.forEach(o=>{for(let a=0;a<e;a++)o.unshift(!1),o.push(!1)});for(let o=0;o<e;o++)t.data.unshift(Array.from({length:n},a=>!1)),t.data.push(Array.from({length:n},a=>!1));const r=k.Border;t.types.forEach(o=>{for(let a=0;a<e;a++)o.unshift(r),o.push(r)});for(let o=0;o<e;o++)t.types.unshift(Array.from({length:n},a=>r)),t.types.push(Array.from({length:n},a=>r));return t}function lt(t){return t.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function Kt(t,e={}){const s=Xt(t,e),{pixelSize:n=10,whiteColor:r="white",blackColor:o="black"}=e,a=s.size*n,c=s.size*n;let u=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 ${c} ${a}">`;const h=[];for(let p=0;p<s.size;p++)for(let m=0;m<s.size;m++){const f=m*n,b=p*n;s.data[p][m]&&h.push(`M${f},${b}h${n}v${n}h-${n}z`)}return u+=`<rect fill="${lt(r)}" width="${c}" height="${a}"/>`,u+=`<path fill="${lt(o)}" d="${h.join("")}"/>`,u+="</svg>",u}const Zt="scout",Qt="pair";function _(t){const e=typeof t=="string"?t.trim():"";return e?`${Zt}://${Qt}?payload=${encodeURIComponent(e)}`:null}function te(t){const e=ee(t),s=_(t);if(!e)return{default:s,lan:null,tailnet:null};const n=xt(e.relay,e.fallbackRelays??[]),r=n.find(se),o=n.find(ne);return{default:s,lan:r?_(JSON.stringify(ct(e,r))):null,tailnet:o?_(JSON.stringify(ct(e,o))):null}}function ee(t){const e=typeof t=="string"?t.trim():"";if(!e)return null;try{const s=JSON.parse(e);return!s||typeof s!="object"||typeof s.relay!="string"?null:s}catch{return null}}function ct(t,e){const s=xt(e,[t.relay,...Array.isArray(t.fallbackRelays)?t.fallbackRelays:[]]),n={...t,relay:s[0]};return s.length>1?n.fallbackRelays=s.slice(1):delete n.fallbackRelays,n}function xt(t,e){const s=[],n=new Set;for(const r of[t,...e]){if(typeof r!="string")continue;const o=r.trim();!o||n.has(o)||(n.add(o),s.push(o))}return s}function se(t){const e=Nt(t);if(!e)return!1;if(e.endsWith(".local"))return!0;const s=wt(e);if(!s)return!1;const[n,r]=s;return n===10||n===192&&r===168||n===172&&r>=16&&r<=31||n===169&&r===254}function ne(t){const e=Nt(t);if(!e)return!1;if(e.endsWith(".ts.net"))return!0;const s=wt(e);if(!s)return!1;const[n,r]=s;return n===100&&r>=64&&r<=127}function Nt(t){try{return new URL(t).hostname.toLowerCase()}catch{return""}}function wt(t){const e=t.split(".");if(e.length!==4)return null;const s=e.map(n=>{if(!/^\d+$/.test(n))return Number.NaN;const r=Number(n);return r>=0&&r<=255?r:Number.NaN});return s.every(Number.isFinite)?s:null}function re(t){return t?t.replace(/^wss?:\/\//,"").replace(/:\d+$/,""):null}function ut(t){return t?t.length<=18?t:`${t.slice(0,10)}...${t.slice(-6)}`:null}function ie(t,e){if(!t)return null;const s=Math.max(0,Math.floor((t-e)/1e3));if(s===0)return null;if(s<60)return`${s}s`;const n=Math.floor(s/60),r=s%60;return r>0?`${n}m ${r}s`:`${n}m`}function D({value:t}){const[e,s]=d.useState(!1),n=d.useCallback(()=>{navigator.clipboard.writeText(t).then(()=>{s(!0),setTimeout(()=>s(!1),1500)})},[t]);return i.jsx("button",{type:"button",className:"sys-copy-btn",onClick:n,title:"Copy",children:e?i.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:i.jsx("polyline",{points:"20 6 9 17 4 12"})}):i.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[i.jsx("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2"}),i.jsx("path",{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"})]})})}function $({label:t,value:e}){return i.jsxs("span",{className:"sys-settings-route-link",children:[i.jsx("a",{className:"sys-settings-link",href:e,title:e,"aria-label":`Open Scout ${t} pairing link`,children:i.jsx("code",{children:t})}),i.jsx(D,{value:e})]})}function oe({agentId:t,navigate:e}){return d.useEffect(()=>{e({view:"agents-v2",agentId:t,tab:"config"})},[t,e]),null}function fs({navigate:t,section:e,agentId:s}){if(e==="agents"&&s)return i.jsx(oe,{agentId:s,navigate:t});if(e==="agents")return i.jsx(Mt,{navigate:t,selectedAgentId:s});if(e===void 0||e==="appearance"||e==="operator"||e==="comms"||e==="credentials"||e==="voice"||e==="devices"||e==="about"){const n=e??"appearance";return i.jsx(At,{section:n,onSectionChange:r=>t({view:"settings",section:r})})}return i.jsx(ae,{})}function ae(){const[t,e]=d.useState(null),[s,n]=d.useState(""),[r,o]=d.useState(""),[a,c]=d.useState(!0),[u,h]=d.useState(!1),[p,m]=d.useState(!1),[f,b]=d.useState(null),[g,E]=d.useState(null),[H,A]=d.useState(null),[C,Y]=d.useState(null),[jt,G]=d.useState(()=>Date.now()),[W,X]=d.useState(null),J=d.useRef(null),w=d.useRef(0),K=d.useRef(null);d.useEffect(()=>{J.current=t},[t]),d.useEffect(()=>{K.current=f},[f]),d.useEffect(()=>{!t||window.location.hash!=="#trusted-peers"||window.requestAnimationFrame(()=>{document.getElementById("trusted-peers")?.scrollIntoView({block:"start"})})},[t]);const j=d.useCallback(async(l="initial")=>{if(l==="background"&&K.current)return;const v=++w.current;!(J.current!==null)&&l!=="background"?(c(!0),E(null)):h(!0);try{const R=await M(l==="manual"?"/api/pairing-state/refresh":"/api/pairing-state");if(v!==w.current)return;e(R),E(null),Y(Date.now())}catch(R){if(v!==w.current)return;E(R instanceof Error?R.message:String(R))}finally{v===w.current&&(c(!1),h(!1))}},[]),Z=d.useCallback(async()=>{try{const l=await M("/api/user");o(l.name),n(l.name),A(null)}catch(l){A(l instanceof Error?l.message:String(l))}},[]),Q=d.useRef(!1);d.useEffect(()=>{j("initial"),Z()},[j,Z]),d.useEffect(()=>{const l=setInterval(()=>{j("background")},1e4);return()=>clearInterval(l)},[j]),d.useEffect(()=>{if(!t?.pairing?.expiresAt)return;G(Date.now());const l=setInterval(()=>{G(Date.now())},1e3);return()=>clearInterval(l)},[t?.pairing?.expiresAt]);const tt=d.useCallback(async()=>{m(!0),A(null);try{const l=await M("/api/user",{method:"POST",body:JSON.stringify({name:s})});o(l.name),n(l.name)}catch(l){A(l instanceof Error?l.message:String(l))}finally{m(!1)}},[s]),S=d.useCallback(async l=>{const v=++w.current;b(l),E(null);try{const P=await M("/api/pairing/control",{method:"POST",body:JSON.stringify({action:l})});if(v!==w.current)return;e(P),Y(Date.now())}catch(P){if(v!==w.current)return;E(P instanceof Error?P.message:String(P))}finally{v===w.current&&b(null)}},[]);d.useEffect(()=>{!t||t.isRunning||Q.current||(Q.current=!0,S("start"))},[t,S]);const Et=d.useCallback(async l=>{X(l);try{await M(`/api/pairing/peers/${encodeURIComponent(l)}`,{method:"DELETE"}),j("manual")}catch{}finally{X(null)}},[j]),et=d.useMemo(()=>{const l=t?.pairing?.qrValue?.trim();return l?Kt(l,{border:2,ecc:"M",pixelSize:8}):null},[t?.pairing?.qrValue]),y=d.useMemo(()=>te(t?.pairing?.qrValue),[t?.pairing?.qrValue]),kt=!!(y.lan||y.tailnet||y.default),F=re(t?.pairing?.relay??t?.relay??null),st=ie(t?.pairing?.expiresAt,jt),nt=(t?.trustedPeers.find(l=>l.fingerprint===t.connectedPeerFingerprint)??null)?.name??ut(t?.connectedPeerFingerprint??null),Pt=Rt(t),rt=s.trim()!==r,St=!a&&!t&&!!g;return i.jsxs("div",{className:"sys-surface-page sys-settings-page",children:[i.jsxs("div",{className:"sys-page-head",children:[i.jsxs("div",{className:"sys-page-title-group",children:[i.jsx("h2",{className:"sys-page-title",children:"Settings"}),i.jsx("p",{className:"sys-page-subtitle",children:"Identity, pairing, and trusted devices."})]}),i.jsxs("div",{className:"sys-page-actions",children:[t&&i.jsx(B,{tone:Pt,children:t.statusLabel}),i.jsx("div",{className:"sys-sync-note",children:a?"Loading...":g&&t?`Snapshot from ${C?ot(C):"earlier"}`:C?`Updated ${ot(C)}`:""}),i.jsx("button",{type:"button",className:"s-btn",disabled:a||u||!!f,onClick:()=>{j("manual")},children:u?"Refreshing...":"Refresh"})]})]}),g&&t&&i.jsxs("div",{className:"sys-banner sys-banner-warning",children:[i.jsx("strong",{children:"Refresh failed."}),i.jsx("span",{children:g})]}),H&&i.jsxs("div",{className:"sys-banner sys-banner-warning",children:[i.jsx("strong",{children:"Identity error."}),i.jsx("span",{children:H})]}),a&&!t&&i.jsx(it,{title:"Loading settings",body:"Checking relay status and trusted peers."}),St&&i.jsx(it,{className:"sys-state-card-error",title:"Pairing unavailable",body:g,action:i.jsx("button",{type:"button",className:"s-btn",onClick:()=>{j("manual")},children:"Try again"})}),i.jsxs("div",{className:"sys-settings-hero",children:[i.jsx("div",{className:"sys-settings-qr-col",children:et?i.jsxs("div",{className:"sys-settings-qr-frame",children:[i.jsx("div",{className:"s-qr",dangerouslySetInnerHTML:{__html:et}}),st&&i.jsxs("span",{className:"sys-settings-qr-expires",children:["Expires in ",st]})]}):i.jsx("div",{className:"sys-settings-qr-empty",children:i.jsx("span",{className:"sys-settings-qr-empty-label",children:"Generating QR..."})})}),i.jsxs("div",{className:"sys-settings-info-col",children:[i.jsxs("div",{className:"sys-input-row",children:[i.jsx("input",{className:"sys-input",type:"text",placeholder:"Your name",value:s,onChange:l=>n(l.target.value),onKeyDown:l=>{l.key==="Enter"&&rt&&!p&&tt()}}),i.jsx("button",{type:"button",className:"s-btn s-btn-primary",disabled:!rt||p,onClick:()=>{tt()},children:p?"Saving...":"Save"})]}),i.jsxs("div",{className:"sys-settings-kv-list",children:[t?.identityFingerprint&&i.jsxs("div",{className:"sys-settings-kv",children:[i.jsx("span",{className:"sys-settings-kv-label",children:"Fingerprint"}),i.jsxs("span",{className:"sys-settings-kv-value",children:[i.jsx("code",{children:t.identityFingerprint}),i.jsx(D,{value:t.identityFingerprint})]})]}),F&&i.jsxs("div",{className:"sys-settings-kv",children:[i.jsx("span",{className:"sys-settings-kv-label",children:"Relay"}),i.jsxs("span",{className:"sys-settings-kv-value",children:[i.jsx("code",{children:F}),i.jsx(D,{value:F})]})]}),kt&&i.jsxs("div",{className:"sys-settings-kv",children:[i.jsx("span",{className:"sys-settings-kv-label",children:"Links"}),i.jsxs("span",{className:"sys-settings-kv-value sys-settings-link-list",children:[y.lan&&i.jsx($,{label:"LAN",value:y.lan}),y.tailnet&&i.jsx($,{label:"TSN",value:y.tailnet}),!y.lan&&!y.tailnet&&y.default&&i.jsx($,{label:"PAIR",value:y.default})]})]}),t?.statusDetail&&i.jsxs("div",{className:"sys-settings-kv",children:[i.jsx("span",{className:"sys-settings-kv-label",children:"Status"}),i.jsx("span",{className:"sys-settings-kv-value sys-settings-kv-nowrap",children:t.statusDetail})]}),nt&&i.jsxs("div",{className:"sys-settings-kv",children:[i.jsx("span",{className:"sys-settings-kv-label",children:"Connected"}),i.jsx("span",{className:"sys-settings-kv-value",children:nt})]}),t?.secure&&i.jsxs("div",{className:"sys-settings-kv",children:[i.jsx("span",{className:"sys-settings-kv-label",children:"Security"}),i.jsx("span",{className:"sys-settings-kv-value",children:i.jsx(B,{tone:"success",children:"Noise XX"})})]})]}),t&&i.jsx("div",{className:"sys-inline-actions sys-settings-controls",children:t.isRunning?i.jsxs(i.Fragment,{children:[i.jsx("button",{type:"button",className:"s-btn",disabled:!!f,onClick:()=>{S("restart")},children:f==="restart"?"Restarting...":"Restart"}),i.jsx("button",{type:"button",className:"s-btn",disabled:!!f,onClick:()=>{S("stop")},children:f==="stop"?"Stopping...":"Stop"})]}):i.jsx("button",{type:"button",className:"s-btn s-btn-primary",disabled:!!f,onClick:()=>{S("start")},children:f==="start"?"Starting...":"Start pairing"})})]})]}),t&&i.jsxs("section",{className:"sys-settings-peers",id:"trusted-peers",children:[i.jsx("div",{className:"sys-section-head",children:i.jsxs("div",{children:[i.jsx("h3",{className:"sys-section-title",children:"Trusted peers"}),i.jsxs("p",{className:"sys-section-subtitle",children:[t.trustedPeers.length," device",t.trustedPeers.length!==1?"s":""," paired with this broker."]})]})}),t.trustedPeers.length===0?i.jsxs("div",{className:"sys-list-empty",children:[i.jsx("h3",{children:"No trusted peers"}),i.jsx("p",{children:"Devices appear here after completing pairing."})]}):i.jsxs("table",{className:"sys-peers-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Device"}),i.jsx("th",{children:"Fingerprint"}),i.jsx("th",{children:"Paired"}),i.jsx("th",{children:"Last seen"}),i.jsx("th",{})]})}),i.jsx("tbody",{children:t.trustedPeers.map(l=>{const v=l.fingerprint===t.connectedPeerFingerprint;return i.jsxs("tr",{className:v?"sys-peers-row-connected":"",children:[i.jsx("td",{children:i.jsxs("span",{className:"sys-peers-name",children:[l.name??ut(l.fingerprint)??"Peer",v&&i.jsx(B,{tone:"success",className:"sys-peers-badge",children:"Connected"})]})}),i.jsx("td",{children:i.jsx("code",{className:"sys-peers-fp",children:l.fingerprint})}),i.jsx("td",{children:l.pairedAtLabel??"—"}),i.jsx("td",{children:l.lastSeenLabel??"—"}),i.jsx("td",{children:i.jsx("button",{type:"button",className:"sys-peers-remove",disabled:W===l.fingerprint,onClick:()=>{Et(l.fingerprint)},title:"Remove peer",children:W===l.fingerprint?"...":"Remove"})})]},l.fingerprint)})})]})]})]})}export{fs as SettingsScreen};
@@ -1 +0,0 @@
1
- import{r as v,j as m}from"./index-DMiGbrBt.js";import{n as M}from"./colors-BtO5_zlx.js";function E(e){let o=1779033703^e.length;for(let t=0;t<e.length;t++)o=Math.imul(o^e.charCodeAt(t),3432918353),o=o<<13|o>>>19;return()=>(o=Math.imul(o^o>>>16,2246822507),o=Math.imul(o^o>>>13,3266489909),o^=o>>>16,o>>>0)}function R(e){let o=e>>>0;return()=>{o|=0,o=o+1831565813|0;let t=Math.imul(o^o>>>15,1|o);return t=t+Math.imul(t^t>>>7,61|t)^t,((t^t>>>14)>>>0)/4294967296}}function j(e){const o=E(e.trim().toLowerCase())(),t=R(o);return{seed:o,next:t,float:(n,s)=>n+(s-n)*t(),int:(n,s)=>Math.floor(n+(s-n+1)*t()),bool:(n=.5)=>t()<n}}function A(e,o={}){const t=(e%360+360)%360,n=o.l??.72,s=o.c??.15,l=(t+38)%360,d=Math.max(.18,n-.12),f=Math.min(.92,n+.1);return{hue:t,body:`oklch(${n} ${s} ${t})`,bodyDim:`oklch(${d} ${Math.max(0,s-.02)} ${t})`,accent:`oklch(${f} ${s+.01} ${l})`,ink:`oklch(0.34 0.07 ${t})`,sclera:`oklch(0.96 0.02 ${t})`,glow:`oklch(${n} ${s} ${t} / 0.45)`,soft:`oklch(${n} ${s} ${t} / 0.12)`}}const w=[25,45,95,125,158,188,212,238,266,292,320,345];function H(e,o=!1){const t=e.next();return o?Math.floor(t*360):w[Math.floor(t*w.length)]}const _=7;function C(e,o={}){const t=j(e+(o.salt?"#"+o.salt:"")),n=H(t,o.spectrum),s=A(o.hue??n,o.tone),l=t.float(.42,.62),d=t.float(.14,.34),f=t.bool(.5),p=t.bool(.62),x=t.bool(.5),r=t.bool(.5)?2:3,b=t.bool(.6),c=_,i=(c-1)/2,g=Array.from({length:c},()=>Array.from({length:c},()=>"off")),a=(h,y,k)=>{g[h][y]=k,g[h][c-1-y]=k};for(let h=1;h<=5;h++)for(let y=0;y<=i;y++)(y===i?t.next()<.85:t.next()<l)&&a(h,y,t.next()<d?"accent":"body");for(let h=1;h<=i;h++)a(r,h,"body");if(a(r,x?1:2,"eye"),b&&r+2<c&&(a(r+2,i,"mouth"),t.bool(.4)&&a(r+2,i-1,"mouth")),f){const h=t.bool()?1:2;a(0,h,"body")}return p&&(a(c-1,1,"body"),t.bool(.5)&&a(c-1,i,"body")),{size:c,cells:g,palette:s,traits:{antennae:f,legs:p,wideEyes:x,eyeRow:r,mouth:b}}}const I=7,u=10,S=I*u;function L({name:e,size:o,hue:t,tone:n,salt:s,spectrum:l,tile:d=!1,glow:f,corner:p,cornerPulse:x,className:r,title:b}){const c=v.useMemo(()=>C(e,{hue:t,salt:s,spectrum:l,tone:n}),[e,t,s,l,n?.l,n?.c]),i=f??(o!=null&&o>=40),a={position:"relative",display:"inline-grid",placeItems:"center",...o!=null?{width:o,height:o}:{width:"100%",height:"100%"},borderRadius:d?"26%":void 0,background:d?c.palette.soft:void 0,boxSizing:"border-box"};return m.jsxs("span",{className:r,style:a,title:b,children:[m.jsx(T,{sprite:c,glow:i,inset:d}),p&&m.jsx("span",{"aria-hidden":!0,style:{position:"absolute",right:"-4%",bottom:"-4%",width:"28%",height:"28%",minWidth:6,minHeight:6,borderRadius:"999px",background:p,boxShadow:x?`0 0 0 2px var(--scout-chrome-surface, var(--hud-bg, #000)), 0 0 0 4px color-mix(in oklab, ${p} 32%, transparent)`:"0 0 0 2px var(--scout-chrome-surface, var(--hud-bg, #000))"}})]})}function T({sprite:e,glow:o=!1,inset:t=!1}){const{cells:n,palette:s}=e,l=u*.07,d=u*.2,f=u*.24;return m.jsx("svg",{viewBox:`0 0 ${S} ${S}`,shapeRendering:"geometricPrecision",style:{display:"block",width:t?"72%":"100%",height:"auto",aspectRatio:"1 / 1",overflow:"visible",filter:o?`drop-shadow(0 1.6px 5px ${s.glow})`:void 0},children:n.flatMap((p,x)=>p.map((r,b)=>{if(r==="off")return null;const c=b*u,i=x*u,g=`${x}-${b}`;if(r==="eye")return m.jsxs("g",{className:"sprite-cell sprite-cell--eye",children:[m.jsx("rect",{x:c+l,y:i+l,width:u-l*2,height:u-l*2,rx:d,fill:s.sclera}),m.jsx("circle",{cx:c+u/2,cy:i+u*.52,r:f,fill:s.ink})]},g);const a=r==="accent"?s.accent:r==="mouth"?s.ink:s.body,$=r==="accent"?"sprite-cell sprite-cell--accent":"sprite-cell";return m.jsx("rect",{className:$,x:c+l,y:i+l,width:u-l*2,height:u-l*2,rx:d,fill:a},g)}))})}const N={claude:25,codex:135,cursor:235,native:280,worker:195,pi:330},P={in_turn:{l:.75,c:.16},in_flight:{l:.72,c:.14},needs_attention:{l:.78,c:.16},callable:{l:.73,c:.13},blocked:{l:.5,c:.02}};function Z(e){const o=e.harness?.trim().toLowerCase();return{hue:o?N[o]:void 0,tone:P[M(e.state??null)]}}export{L as S,Z as a};