@openscout/scout 0.2.84 → 0.2.86

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 (451) hide show
  1. package/README.md +1 -1
  2. package/bin/scoutd +0 -0
  3. package/dist/build-manifest.json +3 -3
  4. package/dist/client/assets/ActivityScreen-C7AwUogt.js +1 -0
  5. package/dist/client/assets/{AddProjectForm-Czb5uwou.js → AddProjectForm-BNRpRPod.js} +1 -1
  6. package/dist/client/assets/AgentAvatar-B1xvQ7ej.js +1 -0
  7. package/dist/client/assets/AgentConfigurationScreen-BoBQpyz5.js +1 -0
  8. package/dist/client/assets/AgentDefinitionsWorkspace-rw3vh8Lm.js +1 -0
  9. package/dist/client/assets/{AgentDetailCard-Biq8b2gv.js → AgentDetailCard-FelCxQrT.js} +1 -1
  10. package/dist/client/assets/AgentFloorView-Crdw8Uo5.js +1 -0
  11. package/dist/client/assets/AgentInfoScreen-Cge7HHbV.js +1 -0
  12. package/dist/client/assets/{AgentLaneCard-C4DMQR-c.js → AgentLaneCard-CRDG74C1.js} +1 -1
  13. package/dist/client/assets/{AgentLaneChrome-D1xNNf7A.js → AgentLaneChrome-CWFqUdch.js} +1 -1
  14. package/dist/client/assets/AgentLaneDetailSheet-DCIIg3Zp.js +4 -0
  15. package/dist/client/assets/{AgentLaneSummaryResize-C9loK-st.js → AgentLaneSummaryResize-yTM4GQAJ.js} +1 -1
  16. package/dist/client/assets/AgentLanesEmbedScreen-BJLwXSNp.js +1 -0
  17. package/dist/client/assets/{AgentLanesPreflight-M7iDXdP2.js → AgentLanesPreflight-DJeDRTAN.js} +1 -1
  18. package/dist/client/assets/AgentLanesView-CbY9qD0z.js +2 -0
  19. package/dist/client/assets/{AgentLiveActions-0iy8QZ1T.js → AgentLiveActions-Bn3zeZBN.js} +1 -1
  20. package/dist/client/assets/AgentSessions-czl5zT7A.js +6 -0
  21. package/dist/client/assets/AgentsConsole-CoT2crwq.js +1 -0
  22. package/dist/client/assets/{AgentsScreen-Bww6HgFs.js → AgentsScreen-BcPM-z1T.js} +1 -1
  23. package/dist/client/assets/AgentsSubnav-3_vpn2bT.js +1 -0
  24. package/dist/client/assets/AstronautSuit-BADl7m8x.js +1 -0
  25. package/dist/client/assets/{AtopView-h_aFoNkP.js → AtopView-DymBCiXv.js} +1 -1
  26. package/dist/client/assets/{BackToPicker-BXp5E2ck.js → BackToPicker-CqYhOaLB.js} +1 -1
  27. package/dist/client/assets/BriefingDetailScreen-DDfZ8ci1.js +1 -0
  28. package/dist/client/assets/{BriefingsScreen-BTsvr5fv.js → BriefingsScreen-CLvSOJjy.js} +1 -1
  29. package/dist/client/assets/{BrokerMetadataPanel-jg7odHQp.js → BrokerMetadataPanel-DFAH-NO6.js} +1 -1
  30. package/dist/client/assets/BrokerScreen-Bkvu92jk.js +5 -0
  31. package/dist/client/assets/{Canvas-BePL08RR.js → Canvas-KyTsDJlB.js} +1 -1
  32. package/dist/client/assets/ChatCollapsedStrip-Bjjqa30K.js +1 -0
  33. package/dist/client/assets/{CodeDiffPane-86odpBSt.js → CodeDiffPane-C9HT1dCT.js} +1 -1
  34. package/dist/client/assets/{CodeProjectPicker-8svr_S_A.js → CodeProjectPicker-5Y3GvXkM.js} +1 -1
  35. package/dist/client/assets/{CodeScreen-CJ2RgB32.js → CodeScreen-DpN9kQvm.js} +1 -1
  36. package/dist/client/assets/ConversationComposer-Ce7Byw48.js +1 -0
  37. package/dist/client/assets/ConversationFeedRows-DygDfQn_.js +1 -0
  38. package/dist/client/assets/ConversationHeader-C3sg0ULI.js +1 -0
  39. package/dist/client/assets/ConversationPanels-Dg4Y2GgX.js +6 -0
  40. package/dist/client/assets/ConversationScreen-BP5tdz2k.css +1 -0
  41. package/dist/client/assets/ConversationScreen-CjWWmuuh.js +1 -0
  42. package/dist/client/assets/ConversationStatus-BhVIYQza.js +1 -0
  43. package/dist/client/assets/CrewWorkspaces-B6YIyw1z.css +1 -0
  44. package/dist/client/assets/CrewWorkspaces-CDU-wy1Y.js +1 -0
  45. package/dist/client/assets/{DataTable-CGw5CECG.js → DataTable-oJP339bX.js} +1 -1
  46. package/dist/client/assets/{DispatchAftermath-DowTb7uO.js → DispatchAftermath-CH02HAVw.js} +1 -1
  47. package/dist/client/assets/DocumentFocusViewer-DmtFisY9.js +1 -0
  48. package/dist/client/assets/{EmbeddableSurfacesLab-CxfJXS2g.js → EmbeddableSurfacesLab-84b9I3fy.js} +1 -1
  49. package/dist/client/assets/{EmptyState-BUvllvA6.js → EmptyState-BnDda92b.js} +1 -1
  50. package/dist/client/assets/{FileViewerPane-BM4AD_bo.js → FileViewerPane-Dg7_88pv.js} +1 -1
  51. package/dist/client/assets/FlightObserveScreen-DL3Xhl0h.js +1 -0
  52. package/dist/client/assets/{FollowScreen-DG0osbUp.js → FollowScreen-DcFBqr6l.js} +1 -1
  53. package/dist/client/assets/{HarnessMark-MztYnrGK.js → HarnessMark-DGZ6o6Ct.js} +1 -1
  54. package/dist/client/assets/{HarnessesScreen-BWqirBjK.js → HarnessesScreen-DTDL-XaA.js} +1 -1
  55. package/dist/client/assets/{HerdrSession-6sFln7WX.js → HerdrSession-DV2hD6Yh.js} +1 -1
  56. package/dist/client/assets/HomeHero-7JwycwFY.css +1 -0
  57. package/dist/client/assets/HomeHero-CENwVZ45.js +1 -0
  58. package/dist/client/assets/HostAdvisorView-PgiZUkd_.js +1 -0
  59. package/dist/client/assets/{KnowledgeSearchInspector-BOIhFWd2.js → KnowledgeSearchInspector-DNQjeWZO.js} +1 -1
  60. package/dist/client/assets/KnowledgeSearchScreen-Bj80IgR0.js +1 -0
  61. package/dist/client/assets/{LaneToolHoverCard-CcEiQC6B.js → LaneToolHoverCard-197xYmRp.js} +1 -1
  62. package/dist/client/assets/LaneTraceDetailSheet-BztwvOv9.js +1 -0
  63. package/dist/client/assets/{LaneTraceEventFocus-Bl9L0EYb.js → LaneTraceEventFocus-C9cmqxnK.js} +1 -1
  64. package/dist/client/assets/{MeshCanvas-ZjIuMiRo.js → MeshCanvas-C3_2p9B6.js} +2 -2
  65. package/dist/client/assets/{MeshCanvasMinimap-C-LQtiX6.js → MeshCanvasMinimap-ZTjYWXTZ.js} +1 -1
  66. package/dist/client/assets/{MeshScreen-Bs3soujg.js → MeshScreen-lJKaOyGB.js} +1 -1
  67. package/dist/client/assets/{MeshTopologyView-C0LUyT3K.js → MeshTopologyView-CBjHbAZw.js} +2 -2
  68. package/dist/client/assets/MessagesScreen-D6MVLvdg.js +1 -0
  69. package/dist/client/assets/{MissionContextRail-CjGAEGu8.js → MissionContextRail-DXkrbcnZ.js} +1 -1
  70. package/dist/client/assets/MissionControlView-BCH-Zsp4.js +1 -0
  71. package/dist/client/assets/MissionFocusOverlay-DbAliOSF.js +1 -0
  72. package/dist/client/assets/MissionLeftAgentRow-Bx6Pg8_O.js +1 -0
  73. package/dist/client/assets/MissionLogPane-D06c29Y8.js +1 -0
  74. package/dist/client/assets/{NewAgentModal-D5e0YUAo.js → NewAgentModal-C18Ajovd.js} +1 -1
  75. package/dist/client/assets/NewChatComposer-Bgqes0UQ.js +19 -0
  76. package/dist/client/assets/{NewChatOrigin-BEz6jyqf.js → NewChatOrigin-DpHS2Wmt.js} +1 -1
  77. package/dist/client/assets/ObserveEmbedScreen-Cmhwai4X.js +2 -0
  78. package/dist/client/assets/ObserveTextFlow-C1f5oize.js +2 -0
  79. package/dist/client/assets/ObservedTopologyPanel-D85P6RAk.js +2 -0
  80. package/dist/client/assets/OpenScoutAppShell-IDI4fuUE.js +88 -0
  81. package/dist/client/assets/OpsAgentsView-yt0JavoB.js +1 -0
  82. package/dist/client/assets/OpsScreen-C3yNQqJE.js +1 -0
  83. package/dist/client/assets/OpsSubnav-BijKI3yG.js +1 -0
  84. package/dist/client/assets/ProjectAgentProfile-DnIeC16r.js +1 -0
  85. package/dist/client/assets/{ProjectAgentProfileBar-B1VpwzGD.js → ProjectAgentProfileBar-IDEpKZvI.js} +1 -1
  86. package/dist/client/assets/ProjectAgentProfileHero-Bh_aISs-.js +1 -0
  87. package/dist/client/assets/ProjectsInbox-B8Srlklk.js +2 -0
  88. package/dist/client/assets/ProjectsRail-DqAbdvCf.js +1 -0
  89. package/dist/client/assets/ProjectsScreen-DKHQ2iEv.js +1 -0
  90. package/dist/client/assets/ProjectsThreadAside-DpkjYLL2.js +1 -0
  91. package/dist/client/assets/Provider-Ve8yXaWR.js +1 -0
  92. package/dist/client/assets/RailRow-B0sRaJc6.css +1 -0
  93. package/dist/client/assets/RailRow-C4GNGR80.js +1 -0
  94. package/dist/client/assets/RawSessionsTable-Co3vzwsf.js +1 -0
  95. package/dist/client/assets/RealtimeVoiceScreen-DMd1CBAf.js +9 -0
  96. package/dist/client/assets/{RepoDiffEmbedScreen-VLg4caej.js → RepoDiffEmbedScreen-C97Euf4s.js} +1 -1
  97. package/dist/client/assets/{RepoDiffPageScreen-BelnvgnP.js → RepoDiffPageScreen-DUKLzkrW.js} +1 -1
  98. package/dist/client/assets/RepoDiffViewer-CovKjSgb.js +7 -0
  99. package/dist/client/assets/RepoDiffViewerLazy-zIiEmh-e.js +2 -0
  100. package/dist/client/assets/{ReposScreen-IINK-CFn.js → ReposScreen-BR1LqTf1.js} +6 -6
  101. package/dist/client/assets/ScoutDeckSurface-BGsVicc2.js +1 -0
  102. package/dist/client/assets/{ScoutSurface-x_QbcRyk.js → ScoutSurface-BMKW7hSu.js} +1 -1
  103. package/dist/client/assets/{ScoutbotFxLab-7t9JVvZg.js → ScoutbotFxLab-0O2iDRrF.js} +1 -1
  104. package/dist/client/assets/{SecondaryNav-Dj30epYF.js → SecondaryNav-cYTw2p39.js} +1 -1
  105. package/dist/client/assets/{SessionEmbedScreen-s2mJ5Fg9.js → SessionEmbedScreen-mNjT0R6j.js} +1 -1
  106. package/dist/client/assets/{SessionObserve-DaUrJCMq.js → SessionObserve-zAlFbwFn.js} +1 -1
  107. package/dist/client/assets/{SessionObserveEvidence-ClUW8jpV.js → SessionObserveEvidence-BVawzqoE.js} +1 -1
  108. package/dist/client/assets/SessionRefScreen-BmKhf29o.js +1 -0
  109. package/dist/client/assets/SessionsScreen-CsSqjIY2.js +1 -0
  110. package/dist/client/assets/SettingsDrawer-Dsj-On_x.css +1 -0
  111. package/dist/client/assets/SettingsDrawer-DwYQTGi8.js +3 -0
  112. package/dist/client/assets/SettingsScreen-Btaku7YM.js +1 -0
  113. package/dist/client/assets/{ShikiPane-Dkwyx--r.js → ShikiPane-DyEJdcvb.js} +1 -1
  114. package/dist/client/assets/{SlidePanel-CuTeirnk.js → SlidePanel-Dg8_styW.js} +1 -1
  115. package/dist/client/assets/{SpriteAvatar-DQ3PTb8L.js → SpriteAvatar-DMrSssNZ.js} +1 -1
  116. package/dist/client/assets/{StatusPill-BJ1ierIR.js → StatusPill-NFFnphtx.js} +1 -1
  117. package/dist/client/assets/{TailView-CufWcrvf.js → TailView-BfObcZu3.js} +2 -2
  118. package/dist/client/assets/Terminal-Dr-M9U4u.js +1 -0
  119. package/dist/client/assets/TerminalEmbedScreen-BmyZkonh.js +1 -0
  120. package/dist/client/assets/{TerminalRelay-rvUzI9Ek.js → TerminalRelay-lJ2KdMCW.js} +3 -3
  121. package/dist/client/assets/{TextDocumentSurface-Bc-kHPgG.js → TextDocumentSurface-C7fGlzY8.js} +1 -1
  122. package/dist/client/assets/{TmuxPeek-DLyDkq_D.js → TmuxPeek-BSeKIjnX.js} +1 -1
  123. package/dist/client/assets/{VoicePermissionsPanel-CD903y9K.js → VoicePermissionsPanel-BkIGTzgw.js} +1 -1
  124. package/dist/client/assets/{WorkDetailScreen-D51oI0dH.js → WorkDetailScreen-Cwe-KWK4.js} +3 -3
  125. package/dist/client/assets/WorkFilesViewer-BBtKRBPv.js +1 -0
  126. package/dist/client/assets/{activity-BvGruxWG.js → activity-D4W2XZY2.js} +1 -1
  127. package/dist/client/assets/{addon-fit-Cfq4Ayjd.js → addon-fit-Celjj2yn.js} +1 -1
  128. package/dist/client/assets/{addon-webgl-B8sIf9-s.js → addon-webgl-Cu4tJ21-.js} +1 -1
  129. package/dist/client/assets/{ScoutbotBroadcastChip-CxtYZWPZ.css → agent-autocomplete-C7xwIcwd.css} +1 -1
  130. package/dist/client/assets/agent-autocomplete-Dv-_9dAw.js +2 -0
  131. package/dist/client/assets/{agent-essentials-yb4wIJlX.js → agent-essentials-CngjUhQj.js} +1 -1
  132. package/dist/client/assets/agent-identity-DzHGhLdJ.js +1 -0
  133. package/dist/client/assets/{agent-lane-card-model-q4cwzLX4.js → agent-lane-card-model-CSugZCdy.js} +1 -1
  134. package/dist/client/assets/{agent-lane-detail-BNNm6FNu.js → agent-lane-detail-D5EIlX7_.js} +1 -1
  135. package/dist/client/assets/{agent-lane-preview-C33Dwpn7.js → agent-lane-preview-BhplDYGf.js} +1 -1
  136. package/dist/client/assets/{agent-lanes-BDNktFBZ.css → agent-lanes-DlqcEf0l.css} +1 -1
  137. package/dist/client/assets/{agent-lanes-model-VYQ5a68i.js → agent-lanes-model-BKOs_32K.js} +2 -2
  138. package/dist/client/assets/agent-specialization-CNrsRbKA.js +1 -0
  139. package/dist/client/assets/{api-BkjHJfgJ.js → api-BHHEUSS3.js} +1 -1
  140. package/dist/client/assets/api-DEHEgJ9m.js +1 -0
  141. package/dist/client/assets/{arc.es-BBTfhvLE.js → arc.es-DNT50Y-_.js} +1 -1
  142. package/dist/client/assets/archive-DH49QqFG.js +1 -0
  143. package/dist/client/assets/{arrow-left-BOht-YQu.js → arrow-left-i-h6JAgs.js} +1 -1
  144. package/dist/client/assets/arrow-right-B0Yi01Zr.js +1 -0
  145. package/dist/client/assets/{arrow-up-right-hoR8_oUz.js → arrow-up-right-RBC6k8nn.js} +1 -1
  146. package/dist/client/assets/{bot-BUK7dOPS.js → bot-r2IuAuJd.js} +1 -1
  147. package/dist/client/assets/broker-display-Q75fupqG.js +2 -0
  148. package/dist/client/assets/{cache-Dr0why2k.js → cache-BO2Bd_LV.js} +1 -1
  149. package/dist/client/assets/{check--esHw52j.js → check-Bfs7hMb1.js} +1 -1
  150. package/dist/client/assets/{chevron-down-NAhBUkFd.js → chevron-down-Da5tV19_.js} +1 -1
  151. package/dist/client/assets/{chevron-right-C10o7t_X.js → chevron-right-BMqtBds_.js} +1 -1
  152. package/dist/client/assets/{chunk-HRAB3GC3-DF8R9rPv.js → chunk-HRAB3GC3-BUVYXXAp.js} +1 -1
  153. package/dist/client/assets/{clock-of01sAB6.js → clock-DaKLp6Xd.js} +1 -1
  154. package/dist/client/assets/{code-xml-CLn3TDWF.js → code-xml-ByQsfOI_.js} +1 -1
  155. package/dist/client/assets/collapsed-strip-raJWthAH.css +1 -0
  156. package/dist/client/assets/compass-BepM5iWH.js +1 -0
  157. package/dist/client/assets/{content-Cgj5AWqT.js → content-5hnDC9WE.js} +1 -1
  158. package/dist/client/assets/content-BRFZ-a6m.js +1 -0
  159. package/dist/client/assets/content-BYykncDo.js +1 -0
  160. package/dist/client/assets/content-Be6yyWbJ.js +1 -0
  161. package/dist/client/assets/content-Bgl_X3ao.js +1 -0
  162. package/dist/client/assets/content-BopJW1Zx.js +1 -0
  163. package/dist/client/assets/content-Bv2sfg0w.js +1 -0
  164. package/dist/client/assets/content-CMBiIZTg.js +1 -0
  165. package/dist/client/assets/content-CPVqvf5o.js +1 -0
  166. package/dist/client/assets/content-CbwyFqdI.js +1 -0
  167. package/dist/client/assets/content-ClQjAWYi.js +1 -0
  168. package/dist/client/assets/content-Cv2tSAbv.js +1 -0
  169. package/dist/client/assets/content-DFFe3-Ot.js +1 -0
  170. package/dist/client/assets/content-DY5hwBmm.js +1 -0
  171. package/dist/client/assets/content-_IXoxGno.js +1 -0
  172. package/dist/client/assets/content-j_tewJdE.js +1 -0
  173. package/dist/client/assets/{conversation-icons-ClBJi21l.js → conversation-icons-C4amK8Sa.js} +1 -1
  174. package/dist/client/assets/conversation-model-CigSPlKA.js +1 -0
  175. package/dist/client/assets/conversation-motion-features-_95aZx_1.js +1 -0
  176. package/dist/client/assets/{copy-Dty8ZYsM.js → copy-De4s38o2.js} +1 -1
  177. package/dist/client/assets/cpu-Bc268H9Q.js +1 -0
  178. package/dist/client/assets/{createLucideIcon-Bt67PWH-.js → createLucideIcon-DLlxGjKt.js} +1 -1
  179. package/dist/client/assets/credentials-qwds23lv.js +1 -0
  180. package/dist/client/assets/ctx-panel-D_HJ3nhb.css +1 -0
  181. package/dist/client/assets/discover-DOlk1hG7.js +2 -0
  182. package/dist/client/assets/embed-entry-BqDJfa87.js +2 -0
  183. package/dist/client/assets/{external-link-Dem738OJ.js → external-link-BGHC_naA.js} +1 -1
  184. package/dist/client/assets/{eye-B3lBIwJZ.js → eye-BeCSqJn1.js} +1 -1
  185. package/dist/client/assets/file-code-corner-CX53Cd9y.js +1 -0
  186. package/dist/client/assets/{file-text-iF0hyVyU.js → file-text-BVhkMWyC.js} +1 -1
  187. package/dist/client/assets/gauge-CPcEPmNt.js +1 -0
  188. package/dist/client/assets/gestures-BXIGYk_p.js +1 -0
  189. package/dist/client/assets/git-branch-q8Ayc8py.js +1 -0
  190. package/dist/client/assets/home-moving-signal-DMguaRWR.css +1 -0
  191. package/dist/client/assets/home-moving-signal-Dm2Z2x0p.js +1 -0
  192. package/dist/client/assets/{home-now-card-nano-hZl9klbP.js → home-now-card-nano-Djhy6ax0.js} +1 -1
  193. package/dist/client/assets/home-now-card-xU5LGP7q.js +1 -0
  194. package/dist/client/assets/hooks-CdKx1CxP.js +2 -0
  195. package/dist/client/assets/host-advisor-B2Fqs5Dd.css +1 -0
  196. package/dist/client/assets/index-Bli6bTLU.js +10 -0
  197. package/dist/client/assets/index-D7UEHxaY.js +1 -0
  198. package/dist/client/assets/index-DFdlQs_c.js +1 -0
  199. package/dist/client/assets/index-DhfOMK0D.js +1 -0
  200. package/dist/client/assets/index-DzlEgstl.css +1 -0
  201. package/dist/client/assets/index-wLwc74Pu.css +1 -0
  202. package/dist/client/assets/inspector-panel-B8pigRsg.js +2 -0
  203. package/dist/client/assets/{keyboard-nav-Chf51dns.js → keyboard-nav-7iEtvu9P.js} +1 -1
  204. package/dist/client/assets/{lane-observe-BA3g9aVd.js → lane-observe-vfyACHi0.js} +1 -1
  205. package/dist/client/assets/{lane-roster-store-BiIVlYmG.js → lane-roster-store-pHT3TAVs.js} +1 -1
  206. package/dist/client/assets/layers-BiZA-Clc.js +1 -0
  207. package/dist/client/assets/layout-grid-DMpv9CZM.js +1 -0
  208. package/dist/client/assets/left-BayK4ocL.js +1 -0
  209. package/dist/client/assets/left-BhZhSrS2.js +1 -0
  210. package/dist/client/assets/left-BhgU6NOA.js +1 -0
  211. package/dist/client/assets/left-CY_FGnN7.js +1 -0
  212. package/dist/client/assets/left-Cq8mjamr.js +1 -0
  213. package/dist/client/assets/left-DH44V4I_.css +1 -0
  214. package/dist/client/assets/left-Dnqla0b5.js +2 -0
  215. package/dist/client/assets/left-Dy403II2.js +2 -0
  216. package/dist/client/assets/left-R2OOE7VG.css +1 -0
  217. package/dist/client/assets/left-advisor-oOAtJ9YE.js +1 -0
  218. package/dist/client/assets/left-agents-TIKe8vW8.js +1 -0
  219. package/dist/client/assets/left-default-owH0Lwxo.js +1 -0
  220. package/dist/client/assets/left-lanes-BE_co2lP.js +1 -0
  221. package/dist/client/assets/left-mission-C_nWUtfA.js +1 -0
  222. package/dist/client/assets/library-BSVrjn_m.js +1 -0
  223. package/dist/client/assets/{loader-circle-4LDsy4Ke.js → loader-circle-DoT8gpw6.js} +1 -1
  224. package/dist/client/assets/{local-agents-DIi2EacM.js → local-agents-BMadXuP1.js} +1 -1
  225. package/dist/client/assets/mentions-Cd6XticV.js +1 -0
  226. package/dist/client/assets/{mesh-ops-JZwGuAPn.js → mesh-ops-C0zCLTR8.js} +1 -1
  227. package/dist/client/assets/{mesh-view-store-Du7VqIT_.js → mesh-view-store-Cpqil_2D.js} +1 -1
  228. package/dist/client/assets/{message-circle-BM3XgevU.js → message-circle-44KSmbvQ.js} +1 -1
  229. package/dist/client/assets/{message-markup-BcY1lShv.js → message-markup-DAnnGpWr.js} +1 -1
  230. package/dist/client/assets/{message-square-ER1_q2pe.js → message-square-DlY4EneU.js} +1 -1
  231. package/dist/client/assets/mission-control-CnU7dNt1.css +1 -0
  232. package/dist/client/assets/{mission-control-store-C6w5iVfg.js → mission-control-store-DtjtRs9Z.js} +1 -1
  233. package/dist/client/assets/{observe-3-jn4SXb.js → observe-DL5_8-Zj.js} +1 -1
  234. package/dist/client/assets/{operator-attention-BwSPeheT.js → operator-attention-BqoWAlhp.js} +1 -1
  235. package/dist/client/assets/{page-status-0LPfBC8S.js → page-status-CW8co39E.js} +1 -1
  236. package/dist/client/assets/persistent-state-DYjP8lqN.js +1 -0
  237. package/dist/client/assets/{plus-C-2gTcPK.js → plus-64n9qucr.js} +1 -1
  238. package/dist/client/assets/profile-BkmuseW7.js +1 -0
  239. package/dist/client/assets/projects-inbox-C0umZMSY.js +1 -0
  240. package/dist/client/assets/{provider-BvAxRQfE.js → provider-CX9EWecp.js} +1 -1
  241. package/dist/client/assets/proxy-C35W-YHZ.js +1 -0
  242. package/dist/client/assets/{radio-v7UAMZGh.js → radio-BjpQTKT0.js} +1 -1
  243. package/dist/client/assets/{refresh-cw-B5To7b6B.js → refresh-cw-IgN2fZLM.js} +1 -1
  244. package/dist/client/assets/resolve-panes-CCqRkQdM.js +1 -0
  245. package/dist/client/assets/resolve-sidebar-context-JkxY8qsV.js +1 -0
  246. package/dist/client/assets/right-B3PQUHd5.js +1 -0
  247. package/dist/client/assets/right-B96CBzrV.js +1 -0
  248. package/dist/client/assets/right-BPirlFC8.js +1 -0
  249. package/dist/client/assets/right-BUP2Ro_M.js +1 -0
  250. package/dist/client/assets/right-BVWYPIFX.js +1 -0
  251. package/dist/client/assets/right-BoAJxwA3.js +1 -0
  252. package/dist/client/assets/right-C2aOC2li.js +1 -0
  253. package/dist/client/assets/right-CtPJjgOV.js +1 -0
  254. package/dist/client/assets/{right-BvoGOUKH.js → right-DqiVyo8v.js} +1 -1
  255. package/dist/client/assets/right-SfSu0zHC.js +1 -0
  256. package/dist/client/assets/{rocket-BQQQv2L5.js → rocket-DnmN_YOD.js} +1 -1
  257. package/dist/client/assets/{router-C65cZYPn.js → router-B0YclXYg.js} +1 -1
  258. package/dist/client/assets/{scope-views-BOOmgmwx.js → scope-views-Z8aoAmtU.js} +1 -1
  259. package/dist/client/assets/scout-voice-DvG_3stJ.js +1 -0
  260. package/dist/client/assets/{scoutbot-BTIErYHo.js → scoutbot-D4vuKzOL.js} +2 -2
  261. package/dist/client/assets/scoutbot-markdown-BJJyaPu2.js +6 -0
  262. package/dist/client/assets/{scroll-text-BuneRiAD.js → scroll-text-DRidbcse.js} +1 -1
  263. package/dist/client/assets/{search-7_n7CxWl.js → search-BbgsEMXa.js} +1 -1
  264. package/dist/client/assets/secondaryNavConfig-DyC_P9Wx.js +1 -0
  265. package/dist/client/assets/{selection-bridge-SlGsgHw2.js → selection-bridge-CpzFGx3-.js} +1 -1
  266. package/dist/client/assets/{send-horizontal-DP16OOIW.js → send-horizontal-BXo2uz3Z.js} +1 -1
  267. package/dist/client/assets/{server-pYOMFjrT.js → server-Dt3tpiBj.js} +1 -1
  268. package/dist/client/assets/{session-catalog-_QfQ7fhZ.js → session-catalog-CUQ8LUJY.js} +1 -1
  269. package/dist/client/assets/{session-table-CYN8e4s3.js → session-table-B4JOKevn.js} +1 -1
  270. package/dist/client/assets/settings-BzWCF3NF.js +1 -0
  271. package/dist/client/assets/{sliders-horizontal-D2Z8gz6J.js → sliders-horizontal-7V8B3xsf.js} +1 -1
  272. package/dist/client/assets/{sparkles-Bth2iK7t.js → sparkles-ytTwpCbZ.js} +1 -1
  273. package/dist/client/assets/{sse-CL6gctHY.js → sse-CSozY6mp.js} +1 -1
  274. package/dist/client/assets/system-surfaces-redesign-QVXNeGYw.css +1 -0
  275. package/dist/client/assets/{tail-display-BRcJltQa.js → tail-display-DcliDVkW.js} +1 -1
  276. package/dist/client/assets/{tail-events-NLIWLq27.js → tail-events-CrN-Rmxj.js} +1 -1
  277. package/dist/client/assets/{terminal-By1Lw2i2.js → terminal-BiNIXhna.js} +1 -1
  278. package/dist/client/assets/{terminal-relay-CjkI5aUy.js → terminal-relay-pSm7_An6.js} +1 -1
  279. package/dist/client/assets/{terminal-sessions-AmSgHklm.js → terminal-sessions-D4dHTRkt.js} +1 -1
  280. package/dist/client/assets/{terminal-takeover-7AvNpnkC.js → terminal-takeover-CtA3wcXh.js} +1 -1
  281. package/dist/client/assets/{runtime-picker-eDEvx2Mz.js → text-BR9Bap0E.js} +1 -1
  282. package/dist/client/assets/text-rLpBg4_z.css +1 -0
  283. package/dist/client/assets/{use-conversation-list-BCzY032j.js → use-conversation-list-C0bEXFeH.js} +1 -1
  284. package/dist/client/assets/{use-fleet-active-asks-CJ6-oj5k.js → use-fleet-active-asks-CK4aw-3G.js} +1 -1
  285. package/dist/client/assets/{use-mesh-ops-items-D5L-CKe_.js → use-mesh-ops-items-QixBijmT.js} +1 -1
  286. package/dist/client/assets/use-reduced-motion-BLn59zLn.js +1 -0
  287. package/dist/client/assets/{use-scout-dev-flags-BohC8seq.js → use-scout-dev-flags-JKb1EhFh.js} +1 -1
  288. package/dist/client/assets/{useAgentHoverCard-RsLUYyeh.js → useAgentHoverCard-6N8b7qsU.js} +1 -1
  289. package/dist/client/assets/useContentSecondaryNav-D-hVKzM9.js +1 -0
  290. package/dist/client/assets/{usePersistentState-D3M4m2Ou.js → usePersistentState-DOEahRlt.js} +1 -1
  291. package/dist/client/assets/{usePierreRuntime-B4hbNWTz.js → usePierreRuntime-Bq6mXrgd.js} +1 -1
  292. package/dist/client/assets/{wrench-M4G7WtYB.js → wrench-CQvdf7KT.js} +1 -1
  293. package/dist/client/assets/{x-ynOfVadO.js → x-BJyPzFnn.js} +1 -1
  294. package/dist/client/assets/{xterm-DZHyijPp.js → xterm-D6dE_wMr.js} +1 -1
  295. package/dist/client/assets/zap-rw7uwZht.js +1 -0
  296. package/dist/client/index.html +2 -2
  297. package/dist/main.mjs +629 -167
  298. package/dist/node/main.mjs +454 -270
  299. package/dist/pairing-runtime-controller.mjs +607 -357
  300. package/dist/runtime/base-daemon.mjs +384 -21
  301. package/dist/runtime/broker-daemon.mjs +11024 -10023
  302. package/dist/runtime/broker-process-manager.mjs +9 -3
  303. package/dist/runtime/mesh-discover.mjs +9 -3
  304. package/dist/scout-control-plane-web.mjs +1590 -984
  305. package/dist/scout-web-server.mjs +1590 -984
  306. package/package.json +4 -4
  307. package/dist/client/assets/ActivityScreen-aewI4Ul1.js +0 -1
  308. package/dist/client/assets/AgentAvatar-DMov24_o.js +0 -1
  309. package/dist/client/assets/AgentConfigurationScreen-BjG6ECjl.js +0 -1
  310. package/dist/client/assets/AgentDefinitionsWorkspace-D4MbSMXp.js +0 -1
  311. package/dist/client/assets/AgentFloorView-h9KDJdw0.js +0 -1
  312. package/dist/client/assets/AgentInfoScreen-SjhK_SBh.js +0 -1
  313. package/dist/client/assets/AgentLaneDetailSheet-DnAKe4e3.js +0 -4
  314. package/dist/client/assets/AgentLanesEmbedScreen-BNOYF16R.js +0 -1
  315. package/dist/client/assets/AgentLanesView-Ct-Gz5WD.js +0 -2
  316. package/dist/client/assets/AgentSessions-CDfSfNiE.js +0 -6
  317. package/dist/client/assets/AgentsConsole-BVxhBqRa.js +0 -1
  318. package/dist/client/assets/AgentsSubnav-CiIuzxnZ.js +0 -1
  319. package/dist/client/assets/BriefingDetailScreen-C83o2YfN.js +0 -6
  320. package/dist/client/assets/BrokerScreen-DplF8d_X.js +0 -5
  321. package/dist/client/assets/ChatCollapsedStrip-BRljIymi.js +0 -1
  322. package/dist/client/assets/ContextMenu-CxkmFQcN.js +0 -1
  323. package/dist/client/assets/ConversationComposer-CWohCCmn.js +0 -1
  324. package/dist/client/assets/ConversationFeedRows-IWh0JSIL.js +0 -1
  325. package/dist/client/assets/ConversationHeader-BxTzXl8e.js +0 -1
  326. package/dist/client/assets/ConversationPanels-D9UCwNkS.js +0 -2
  327. package/dist/client/assets/ConversationScreen-oZSitVtX.js +0 -1
  328. package/dist/client/assets/ConversationScreen-yIKEsm-8.css +0 -1
  329. package/dist/client/assets/ConversationStatus-B6pAbo2w.js +0 -1
  330. package/dist/client/assets/DocumentFocusViewer-DRKjNG9s.js +0 -1
  331. package/dist/client/assets/FleetSearch-CYeWn85V.js +0 -1
  332. package/dist/client/assets/FleetSearch-EXOe8ulE.css +0 -1
  333. package/dist/client/assets/FlightObserveScreen-DYJJ3Z2B.js +0 -1
  334. package/dist/client/assets/HomeHero-BPBArHXa.js +0 -1
  335. package/dist/client/assets/HomeHero-DEl-WBsT.css +0 -1
  336. package/dist/client/assets/KnowledgeSearchScreen-BP8tD-Bh.js +0 -1
  337. package/dist/client/assets/LaneTraceDetailSheet-B4i1Ut4R.js +0 -1
  338. package/dist/client/assets/MessageComposerSuggestions-Dfc3PH2y.js +0 -1
  339. package/dist/client/assets/MessagesScreen-TgSL5KMc.js +0 -1
  340. package/dist/client/assets/MissionControlView-D629w2A8.js +0 -1
  341. package/dist/client/assets/MissionFocusOverlay-Bubrr8Gc.js +0 -1
  342. package/dist/client/assets/MissionLeftAgentRow-DokImu4Y.js +0 -1
  343. package/dist/client/assets/MissionLogPane-Cs0LuIkn.js +0 -1
  344. package/dist/client/assets/NewChatComposer-S08F6_La.js +0 -19
  345. package/dist/client/assets/ObserveEmbedScreen-CHx2sEAA.js +0 -2
  346. package/dist/client/assets/ObserveTextFlow-_ApDwRCO.js +0 -2
  347. package/dist/client/assets/ObservedTopologyPanel-ByW7Ar7p.js +0 -2
  348. package/dist/client/assets/OpenScoutAppShell-DTmnbG-h.js +0 -88
  349. package/dist/client/assets/OpsAgentsView-DiFuHcJs.js +0 -1
  350. package/dist/client/assets/OpsScreen-CCR3U_9P.js +0 -1
  351. package/dist/client/assets/OpsSubnav-CZs_OL2N.js +0 -1
  352. package/dist/client/assets/PlanView-C54eAzig.js +0 -1
  353. package/dist/client/assets/ProjectAgentProfile-BEfYOaxc.js +0 -1
  354. package/dist/client/assets/ProjectAgentProfileHero-B4f_AoCr.js +0 -1
  355. package/dist/client/assets/ProjectsInbox-DoPZ17FC.js +0 -2
  356. package/dist/client/assets/ProjectsRail-CWOkZjsY.js +0 -1
  357. package/dist/client/assets/ProjectsScreen-Dse0Q6p6.js +0 -1
  358. package/dist/client/assets/ProjectsThreadAside-DMnfyPLE.js +0 -1
  359. package/dist/client/assets/Provider-DKZWuzSR.js +0 -1
  360. package/dist/client/assets/RailRow-Cf9LOiEj.css +0 -1
  361. package/dist/client/assets/RailRow-DIGd3MMM.js +0 -1
  362. package/dist/client/assets/RawSessionsTable-Zkl4YDvz.js +0 -1
  363. package/dist/client/assets/RealtimeVoiceScreen-B_PMJxY_.js +0 -1
  364. package/dist/client/assets/RepoDiffViewer-VrUJw33u.js +0 -7
  365. package/dist/client/assets/RepoDiffViewerLazy-BPg_JkYW.js +0 -2
  366. package/dist/client/assets/ScoutDeckSurface-MbwGp6Ab.js +0 -1
  367. package/dist/client/assets/ScoutbotBroadcastChip-DAKQKB25.js +0 -2
  368. package/dist/client/assets/ScoutbotRealtimeVoiceCall-Br4bYVAx.js +0 -1
  369. package/dist/client/assets/SessionRefScreen-DLZNFZFK.js +0 -1
  370. package/dist/client/assets/SessionsScreen-D-hN1n4k.js +0 -1
  371. package/dist/client/assets/SettingsDrawer-BFsnww-k.js +0 -3
  372. package/dist/client/assets/SettingsDrawer-UX7pFJU_.css +0 -1
  373. package/dist/client/assets/SettingsScreen-Bc3Xtv5V.js +0 -1
  374. package/dist/client/assets/Terminal-D_OmdFmr.js +0 -1
  375. package/dist/client/assets/TerminalEmbedScreen-D21ytNXW.js +0 -1
  376. package/dist/client/assets/WorkFilesViewer-BDMNbxE4.js +0 -1
  377. package/dist/client/assets/agent-identity-BxCsXnDp.js +0 -1
  378. package/dist/client/assets/api-h5zurxmi.js +0 -1
  379. package/dist/client/assets/broker-display-pp33bLsu.js +0 -2
  380. package/dist/client/assets/collapsed-strip-Dz-of2SM.css +0 -1
  381. package/dist/client/assets/content-B-SUUhXj.js +0 -1
  382. package/dist/client/assets/content-BRY2vo1_.js +0 -1
  383. package/dist/client/assets/content-BTm0mVyD.js +0 -1
  384. package/dist/client/assets/content-BTqvyb5E.js +0 -1
  385. package/dist/client/assets/content-BjDaXmSD.js +0 -1
  386. package/dist/client/assets/content-BrR6deGh.js +0 -1
  387. package/dist/client/assets/content-C5yvBEMy.js +0 -1
  388. package/dist/client/assets/content-CkhG__-v.js +0 -1
  389. package/dist/client/assets/content-CudIBsiP.js +0 -1
  390. package/dist/client/assets/content-DBb7ppd5.js +0 -1
  391. package/dist/client/assets/content-DEw_kGyK.js +0 -1
  392. package/dist/client/assets/content-DIy0DCzK.js +0 -1
  393. package/dist/client/assets/content-THl9hRAo.js +0 -1
  394. package/dist/client/assets/content-vi9FbmV9.js +0 -1
  395. package/dist/client/assets/content-wcgPMGVf.js +0 -1
  396. package/dist/client/assets/conversation-model-CHwHZNw-.js +0 -1
  397. package/dist/client/assets/conversation-motion-features-zU0k3Agz.js +0 -1
  398. package/dist/client/assets/ctx-panel-B4s49N9e.css +0 -1
  399. package/dist/client/assets/discover-NDAqNvKt.js +0 -2
  400. package/dist/client/assets/embed-entry-BVR09F6e.js +0 -2
  401. package/dist/client/assets/home-moving-signal-C8dTXieA.js +0 -1
  402. package/dist/client/assets/home-moving-signal-CAa0V91u.css +0 -1
  403. package/dist/client/assets/home-now-card-BgvVcE83.js +0 -1
  404. package/dist/client/assets/hooks-DBIezYS2.js +0 -2
  405. package/dist/client/assets/index-BMwKgdz_.js +0 -1
  406. package/dist/client/assets/index-Bu-fckyR.css +0 -1
  407. package/dist/client/assets/index-BxoufAPA.js +0 -1
  408. package/dist/client/assets/index-Cj7NnSxI.js +0 -1
  409. package/dist/client/assets/index-CvF09yvf.css +0 -1
  410. package/dist/client/assets/index-o4FKpU7Z.js +0 -10
  411. package/dist/client/assets/inspector-panel-Dy2cVTCi.js +0 -2
  412. package/dist/client/assets/left-BC7p5QbT.js +0 -1
  413. package/dist/client/assets/left-BCSGqccQ.js +0 -1
  414. package/dist/client/assets/left-BSyj8PuJ.js +0 -2
  415. package/dist/client/assets/left-Bk3XnxPD.css +0 -1
  416. package/dist/client/assets/left-CCoobxPS.css +0 -1
  417. package/dist/client/assets/left-DDnxNUxd.js +0 -1
  418. package/dist/client/assets/left-DLoDKxT5.js +0 -2
  419. package/dist/client/assets/left-O-TBH7JB.js +0 -1
  420. package/dist/client/assets/left-agents-Dk9Y89lb.js +0 -1
  421. package/dist/client/assets/left-default-B3JBRQNJ.js +0 -1
  422. package/dist/client/assets/left-lanes-30Oe_3RM.js +0 -1
  423. package/dist/client/assets/left-mission-DEl4-7xu.js +0 -1
  424. package/dist/client/assets/left-plan-B4qdm4Gn.js +0 -2
  425. package/dist/client/assets/left-rvUOB14X.js +0 -1
  426. package/dist/client/assets/library-DDKSLFJ_.js +0 -1
  427. package/dist/client/assets/mentions-CvDaviLJ.js +0 -1
  428. package/dist/client/assets/mission-control-m3BTDQ9l.css +0 -1
  429. package/dist/client/assets/model-Co0zkMIc.js +0 -1
  430. package/dist/client/assets/plan-view-D56fneVF.css +0 -1
  431. package/dist/client/assets/profile-DW80Gn5k.js +0 -1
  432. package/dist/client/assets/projects-inbox-DCeD3FfV.js +0 -1
  433. package/dist/client/assets/resolve-panes-BDi9Qx4R.js +0 -1
  434. package/dist/client/assets/resolve-sidebar-context-HE-5eZYa.js +0 -1
  435. package/dist/client/assets/right-BDf_yTv6.js +0 -1
  436. package/dist/client/assets/right-C-bgjYg-.js +0 -1
  437. package/dist/client/assets/right-C3JdEfYQ.js +0 -1
  438. package/dist/client/assets/right-CYIs2tEe.js +0 -1
  439. package/dist/client/assets/right-CyRCv6Up.js +0 -1
  440. package/dist/client/assets/right-DBYGtoRv.js +0 -1
  441. package/dist/client/assets/right-o3LHMiKa.js +0 -1
  442. package/dist/client/assets/right-oPrcx9MX.js +0 -1
  443. package/dist/client/assets/right-sSvBUK-j.js +0 -1
  444. package/dist/client/assets/runtime-picker-vhm0gtLs.css +0 -1
  445. package/dist/client/assets/scout-voice-B7kXlkcl.js +0 -1
  446. package/dist/client/assets/secondaryNavConfig-CSFDCQAf.js +0 -1
  447. package/dist/client/assets/system-surfaces-redesign-B7GQhfpw.css +0 -1
  448. package/dist/client/assets/text-DsBWV_4k.js +0 -1
  449. package/dist/client/assets/use-reduced-motion-CqXpVXv-.js +0 -1
  450. package/dist/client/assets/useContentSecondaryNav-DOr5yHbT.js +0 -1
  451. /package/dist/client/assets/{document-focus-viewer-BSC_JwVE.css → DocumentFocusViewer-BSC_JwVE.css} +0 -0
@@ -0,0 +1 @@
1
+ import{c as e}from"./createLucideIcon-DLlxGjKt.js";const c=[["rect",{width:"20",height:"5",x:"2",y:"3",rx:"1",key:"1wp1u1"}],["path",{d:"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8",key:"1s80jp"}],["path",{d:"M10 12h4",key:"a56b0p"}]],a=e("archive",c);export{a as A};
@@ -1 +1 @@
1
- import{c as o}from"./createLucideIcon-Bt67PWH-.js";const e=[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]],r=o("arrow-left",e);export{r as A};
1
+ import{c as o}from"./createLucideIcon-DLlxGjKt.js";const e=[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]],r=o("arrow-left",e);export{r as A};
@@ -0,0 +1 @@
1
+ import{c as o}from"./createLucideIcon-DLlxGjKt.js";const r=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]],c=o("arrow-right",r);export{c as A};
@@ -1 +1 @@
1
- import{c as o}from"./createLucideIcon-Bt67PWH-.js";const t=[["path",{d:"M7 7h10v10",key:"1tivn9"}],["path",{d:"M7 17 17 7",key:"1vkiza"}]],a=o("arrow-up-right",t);export{a as A};
1
+ import{c as o}from"./createLucideIcon-DLlxGjKt.js";const t=[["path",{d:"M7 7h10v10",key:"1tivn9"}],["path",{d:"M7 17 17 7",key:"1vkiza"}]],a=o("arrow-up-right",t);export{a as A};
@@ -1 +1 @@
1
- import{c as t}from"./createLucideIcon-Bt67PWH-.js";const e=[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]],a=t("bot",e);export{a as B};
1
+ import{c as t}from"./createLucideIcon-DLlxGjKt.js";const e=[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]],a=t("bot",e);export{a as B};
@@ -0,0 +1,2 @@
1
+ import{b}from"./status-tone-BM_zuRy1.js";function c(e){return e===null||["string","number","boolean"].includes(typeof e)}function a(e){if(typeof e!="string")return null;const r=e.trim();return r.length>0?r:null}function u(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:null}function l(e){return e.trim().replace(/^@/,"").toLowerCase()}function p(e,r){const i=l(r);return[e.id,e.name,e.handle,e.selector,e.defaultSelector,e.conversationId,e.harnessSessionId].some(t=>t&&l(t)===i)}function d(e,r){if(typeof r=="string"&&r.trim()){e.push(r);return}if(Array.isArray(r))for(const i of r)d(e,i)}function _(e,r){const i=e.metadata??{},t=u(i.raw),n=[];d(n,e.target);for(const o of["targetAgentId","targetId","targetSessionId","relayTarget","relayTargetIds"])d(n,i[o]);if(t)for(const o of["targetAgentId","targetSessionId","relayTarget","relayTargetIds","targetId"])d(n,t[o]);for(const o of["targetDisplayName","targetLabel"])d(n,i[o]),t&&d(n,t[o]);for(const o of new Set(n.map(l))){const f=r.find(k=>p(k,o));if(f)return f}return null}function I(e){return e.replace(/\s+/g," ").trim().slice(0,220)}function s(e,...r){for(const i of r){const t=a(e?.[i]);if(t)return t}return null}function m(e){const r=e.metadata??{},i=u(r.raw),t=u(i?.delivery);return u(t?.metadata)}function M(e,r){return e.length<=r?e:`${e.slice(0,Math.max(0,r-3)).trimEnd()}...`}function y(e){return b(e.kind,e.status)==="danger"||e.status==="error"}function h(e){if(e.kind==="failed_query")switch(s(e.metadata,"dispatchKind")){case"unknown":return"Target not found";case"ambiguous":return"Target is ambiguous";case"unparseable":return"Invalid target";default:return"Route not resolved"}const r=s(e.metadata,"failureReason","reconciledReason","reason");return r==="agent_offline"||r==="agent_unreachable"?"Agent unavailable":r==="peer_unreachable"||r==="local_socket_unreachable"?"Route unavailable":r==="peer_rejected"?"Delivery rejected":"Delivery failed"}function $(e){const r=new Map,i=new Map;for(const n of e)if(n.messageId){if(n.kind==="success")r.has(n.messageId)||r.set(n.messageId,n);else if(n.kind==="failed_delivery"){const o=i.get(n.messageId);(!o||n.ts>o.ts)&&i.set(n.messageId,n)}}const t=[];for(const n of e)if(n.kind!=="delivery_attempt"&&!(n.kind==="failed_delivery"&&n.messageId&&r.has(n.messageId))){if(n.kind==="success"&&n.messageId){const o=i.get(n.messageId);if(o){t.push({...o,id:n.id,ts:n.ts,actorName:n.actorName,target:n.target??o.target,route:n.route??o.route,detail:n.detail,conversationId:n.conversationId??o.conversationId,messageId:n.messageId,invocationId:n.invocationId??o.invocationId,metadata:{...o.metadata??{},message:n.metadata??null}});continue}}t.push(n)}return t.sort((n,o)=>o.ts-n.ts||n.id.localeCompare(o.id))}function j(e){if(!y(e))return null;if(e.kind==="failed_query")return h(e);const r=e.metadata??{},i=a(r.reason),t=a(r.failureDetail)??a(r.failureReason)??(e.kind==="failed_delivery"&&["direct_message","mention"].includes(i??"")?null:i)??a(r.error),n=a(r.requestedLabel),o=[];return e.status&&e.status!=="failed"&&e.status!=="error"&&o.push(e.status),t&&t!==e.detail.trim()&&o.push(t),n&&!e.detail.includes(n)&&o.push(`asked ${n}`),o.length>0?[...new Set(o)].join(" · "):null}function g(e){return e==null?"—":typeof e=="string"?e:typeof e=="number"||typeof e=="boolean"?String(e):JSON.stringify(e)}const w=["source","deliveryId","messageId","conversationId","invocationId","dispatchKind","reason","error","requestedLabel","requesterId","targetId","transport","failureReason","failureDetail","reconciledReason","attempt","class","actorId","dispatchId","attemptId"];function D(e){if(!e)return[];const r=[],i=new Set;for(const t of w)!(t in e)||!c(e[t])||(r.push({key:t,value:g(e[t])}),i.add(t));for(const[t,n]of Object.entries(e))t==="raw"||i.has(t)||!c(n)||r.push({key:t,value:g(n)});return r}function A(e){const r=e.metadata??{},i=e.messageId??s(r,"messageId"),t=e.target??s(r,"targetId"),n=e.route??s(r,"transport");return e.kind==="failed_delivery"&&i&&t&&n?["failed_delivery",i,t,n].join("|"):[e.kind,i??e.deliveryId??e.invocationId??e.id,t,n,s(r,"failureReason","reconciledReason","reason","error")??e.detail].filter(o=>!!(o&&o.trim())).map(I).join("|")}function S(e){const r=e.metadata??{},i=m(e);return[e.kind,e.target??s(r,"targetId"),e.route??s(r,"transport"),s(r,"failureReason","reconciledReason","error")??s(i,"failureReason","reconciledReason","error")??e.status,s(r,"failureDetail")??s(i,"failureDetail")??s(r,"reason")??e.detail].filter(t=>!!(t&&t.trim())).map(t=>I(t).toLowerCase()).join("|")}function v(e){return{copiedAt:new Date().toISOString(),dedupeFingerprint:A(e),rootCauseFingerprint:S(e),sourceEndpoint:"/api/broker?limit=160",reviewEndpoint:"/api/broker/dispatch-review",attempt:e}}function F(e){const r=v(e);return[y(e)?"OpenScout dispatch failure context":"OpenScout dispatch context","",`id: ${e.id}`,`kind: ${e.kind}`,`status: ${e.status}`,`time: ${new Date(e.ts).toISOString()}`,`target: ${e.target??"none"}`,`transport/route: ${e.route??"none"}`,`messageId: ${e.messageId??"none"}`,`deliveryId: ${e.deliveryId??"none"}`,`invocationId: ${e.invocationId??"none"}`,`conversationId: ${e.conversationId??"none"}`,`detail: ${e.detail}`,`dedupeFingerprint: ${r.dedupeFingerprint}`,`rootCauseFingerprint: ${r.rootCauseFingerprint}`,"","Full JSON:",JSON.stringify(r,null,2)].join(`
2
+ `)}function O(e){return{attemptId:e.id,attempt:e}}function T(e){if(!e)return null;if(e.raw!==void 0&&e.raw!==null)return e.raw;const r=Object.fromEntries(Object.entries(e).filter(([i,t])=>i!=="raw"&&!c(t)));return Object.keys(r).length>0?r:null}function C(e){return!e||Object.keys(e).length===0?"{}":JSON.stringify(e,null,2)}export{D as a,y as b,T as c,C as d,M as e,g as f,$ as g,j as h,F as i,_ as j,O as k,h as l};
@@ -1,2 +1,2 @@
1
- import{a as $}from"./api-h5zurxmi.js";const o=["branch","unstaged","staged"],g=3e4,y=24,w=12,i=new Map,f=new Map,h=new Set;let m=Promise.resolve();function A(s,r=o,e={}){const t=new URLSearchParams;if(e.session){const n=e.session.sessionId?.trim(),c=e.session.agentId?.trim();n&&t.set("sessionId",n),c&&t.set("agentId",c),e.session.include&&t.set("include",e.session.include)}else{t.set("path",s);for(const n of e.files??[]){const c=n.trim();c&&t.append("file",c)}}for(const n of r)t.append("layer",n);return e.cache&&t.set("cache",e.cache),e.rehydrate&&t.set("rehydrate","1"),e.tier&&t.set("tier",e.tier),`/api/repo-diff/${e.session?"session":"worktree"}?${t.toString()}`}function d(s,r,e={}){const t=e.session?`session:${e.session.sessionId??""}:${e.session.agentId??""}:${e.session.include??"changed"}`:`worktree:${(e.files??[]).join(`
1
+ import{a as $}from"./api-DEHEgJ9m.js";const o=["branch","unstaged","staged"],g=3e4,y=24,w=12,i=new Map,f=new Map,h=new Set;let m=Promise.resolve();function A(s,r=o,e={}){const t=new URLSearchParams;if(e.session){const n=e.session.sessionId?.trim(),c=e.session.agentId?.trim();n&&t.set("sessionId",n),c&&t.set("agentId",c),e.session.include&&t.set("include",e.session.include)}else{t.set("path",s);for(const n of e.files??[]){const c=n.trim();c&&t.append("file",c)}}for(const n of r)t.append("layer",n);return e.cache&&t.set("cache",e.cache),e.rehydrate&&t.set("rehydrate","1"),e.tier&&t.set("tier",e.tier),`/api/repo-diff/${e.session?"session":"worktree"}?${t.toString()}`}function d(s,r,e={}){const t=e.session?`session:${e.session.sessionId??""}:${e.session.agentId??""}:${e.session.include??"changed"}`:`worktree:${(e.files??[]).join(`
2
2
  `)}`;return`${s}\0${r.join(",")}\0${e.tier??"summary"}\0${e.cacheScope??""}\0${t}`}function D(){for(;i.size>y;){const s=i.keys().next().value;if(!s)break;i.delete(s)}}function M(s,r=o,e={},t=g){const n=i.get(d(s,r,e));if(!n)return null;const c=Math.max(0,Date.now()-n.fetchedAt);return{...n,ageMs:c,fresh:c<=t}}async function I(s,r=o,e={}){const t=d(s,r,e),n=f.get(t);if(n&&(!e.force||n.force))return n.request;if(!e.force){const a=i.get(t);if(a&&Date.now()-a.fetchedAt<=g)return{...a,cacheHit:!0}}const c=A(s,r,{...e.force?{cache:"reload"}:{cache:"prefer",rehydrate:!0},files:e.files,session:e.session,tier:e.tier??"summary"}),u=$(c).then(a=>{const l={snapshot:a,fetchedAt:Date.now()};return i.delete(t),i.set(t,l),D(),{...l,cacheHit:!1}});f.set(t,{force:e.force===!0,request:u});try{return await u}finally{f.get(t)?.request===u&&f.delete(t)}}function E(s,r=o){const e=d(s,r,{tier:"summary"});M(s,r,{tier:"summary"})?.fresh||f.has(e)||h.has(e)||(h.add(e),m=m.catch(()=>{}).then(()=>I(s,r).then(()=>{},()=>{})).finally(()=>{h.delete(e)}))}function R(s,r=o,e={}){const t=Math.max(0,Math.min(e.limit??w,y));for(const n of s.slice(0,t))E(n,r)}function _(s){if(s<5e3)return"just now";const r=Math.round(s/1e3);if(r<60)return`${r}s ago`;const e=Math.round(r/60);return e<60?`${e}m ago`:`${Math.round(e/60)}h ago`}export{M as a,I as f,R as p,_ as r};
@@ -1 +1 @@
1
- import{c}from"./createLucideIcon-Bt67PWH-.js";const e=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],t=c("check",e);export{t as C};
1
+ import{c}from"./createLucideIcon-DLlxGjKt.js";const e=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],t=c("check",e);export{t as C};
@@ -1 +1 @@
1
- import{c as o}from"./createLucideIcon-Bt67PWH-.js";const n=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],e=o("chevron-down",n);export{e as C};
1
+ import{c as o}from"./createLucideIcon-DLlxGjKt.js";const n=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],e=o("chevron-down",n);export{e as C};
@@ -1 +1 @@
1
- import{c as o}from"./createLucideIcon-Bt67PWH-.js";const t=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],e=o("chevron-right",t);export{e as C};
1
+ import{c as o}from"./createLucideIcon-DLlxGjKt.js";const t=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],e=o("chevron-right",t);export{e as C};
@@ -1 +1 @@
1
- import{r as s,j as S}from"./index-o4FKpU7Z.js";var O="hudson.theme",M="system",R="hudson",p=s.createContext(null);function T(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function L(){if(typeof window>"u")return{};try{const e=new URLSearchParams(window.location.search),t=e.get("theme"),n=e.get("template");return{theme:t==="light"||t==="dark"||t==="system"?t:void 0,template:n&&/^[a-z][a-z0-9-]{1,64}$/.test(n)?n:void 0}}catch{return{}}}function j(){const e=L();return!!(e.theme||e.template)}function l(e,t,n){if(typeof window>"u")return{theme:t,template:n};const r=L();try{const c=JSON.parse(window.localStorage.getItem(e)||"{}");return{theme:r.theme??c.theme??t,template:r.template??c.template??n}}catch{return{theme:r.theme??t,template:r.template??n}}}var H=()=>()=>{},U=()=>!0,b=()=>!1;function C(){return s.useSyncExternalStore(H,U,b)}function P(e){return e==="system"?typeof window<"u"?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":"dark":e}function _(e){return e==="system"?"dark":e}function F(e,t,n){const r=n??document.documentElement;r.dataset.hudsonTheme=e,r.dataset.hudsonTemplate=t}function I(e,t,n){if(!j())try{const r=JSON.parse(window.localStorage.getItem(e)||"{}"),c=T(r)?{...r,theme:t,template:n}:{theme:t,template:n};window.localStorage.setItem(e,JSON.stringify(c))}catch{}}function D({children:e,defaultTheme:t=M,defaultTemplate:n=R,storageKey:r=O,rootElement:c}){const o=s.useContext(p),[d,m]=s.useState(t),[u,h]=s.useState(n),[v,g]=s.useState(()=>_(t)),[w,k]=s.useState(!1),x=C();s.useEffect(()=>{if(o)return;let a=!1;return queueMicrotask(()=>{if(a)return;const i=l(r,t,n);m(i.theme??t),h(i.template??n),k(!0)}),()=>{a=!0}},[n,t,o,r]),s.useEffect(()=>{if(o)return;const a=window.matchMedia("(prefers-color-scheme: dark)"),i=()=>{g(P(d))};return i(),a.addEventListener("change",i),()=>a.removeEventListener("change",i)},[o,d]),s.useEffect(()=>{o||!w||F(v,u,c)},[w,o,v,c,u]),s.useEffect(()=>{o||!w||I(r,d,u)},[w,o,r,u,d]),s.useEffect(()=>{if(o)return;const a=f=>{if(f.key!==r)return;const E=l(r,t,n);m(E.theme??t),h(E.template??n)},i=f=>{if(f.detail?.key!==r)return;const y=l(r,t,n);m(y.theme??t),h(y.template??n)};return window.addEventListener("storage",a),window.addEventListener("hudson:saved",i),()=>{window.removeEventListener("storage",a),window.removeEventListener("hudson:saved",i)}},[n,t,o,r]);const A=s.useMemo(()=>({theme:d,resolvedTheme:x?v:void 0,template:u,setTheme:m,setTemplate:h}),[x,v,u,d]);return o?S.jsx(S.Fragment,{children:e}):S.jsx(p.Provider,{value:A,children:e})}function J(){return s.useContext(p)}export{D as T,J as u};
1
+ import{r as s,j as S}from"./index-Bli6bTLU.js";var O="hudson.theme",M="system",R="hudson",p=s.createContext(null);function T(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function L(){if(typeof window>"u")return{};try{const e=new URLSearchParams(window.location.search),t=e.get("theme"),n=e.get("template");return{theme:t==="light"||t==="dark"||t==="system"?t:void 0,template:n&&/^[a-z][a-z0-9-]{1,64}$/.test(n)?n:void 0}}catch{return{}}}function j(){const e=L();return!!(e.theme||e.template)}function l(e,t,n){if(typeof window>"u")return{theme:t,template:n};const r=L();try{const c=JSON.parse(window.localStorage.getItem(e)||"{}");return{theme:r.theme??c.theme??t,template:r.template??c.template??n}}catch{return{theme:r.theme??t,template:r.template??n}}}var H=()=>()=>{},U=()=>!0,b=()=>!1;function C(){return s.useSyncExternalStore(H,U,b)}function P(e){return e==="system"?typeof window<"u"?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":"dark":e}function _(e){return e==="system"?"dark":e}function F(e,t,n){const r=n??document.documentElement;r.dataset.hudsonTheme=e,r.dataset.hudsonTemplate=t}function I(e,t,n){if(!j())try{const r=JSON.parse(window.localStorage.getItem(e)||"{}"),c=T(r)?{...r,theme:t,template:n}:{theme:t,template:n};window.localStorage.setItem(e,JSON.stringify(c))}catch{}}function D({children:e,defaultTheme:t=M,defaultTemplate:n=R,storageKey:r=O,rootElement:c}){const o=s.useContext(p),[d,m]=s.useState(t),[u,h]=s.useState(n),[v,g]=s.useState(()=>_(t)),[w,k]=s.useState(!1),x=C();s.useEffect(()=>{if(o)return;let a=!1;return queueMicrotask(()=>{if(a)return;const i=l(r,t,n);m(i.theme??t),h(i.template??n),k(!0)}),()=>{a=!0}},[n,t,o,r]),s.useEffect(()=>{if(o)return;const a=window.matchMedia("(prefers-color-scheme: dark)"),i=()=>{g(P(d))};return i(),a.addEventListener("change",i),()=>a.removeEventListener("change",i)},[o,d]),s.useEffect(()=>{o||!w||F(v,u,c)},[w,o,v,c,u]),s.useEffect(()=>{o||!w||I(r,d,u)},[w,o,r,u,d]),s.useEffect(()=>{if(o)return;const a=f=>{if(f.key!==r)return;const E=l(r,t,n);m(E.theme??t),h(E.template??n)},i=f=>{if(f.detail?.key!==r)return;const y=l(r,t,n);m(y.theme??t),h(y.template??n)};return window.addEventListener("storage",a),window.addEventListener("hudson:saved",i),()=>{window.removeEventListener("storage",a),window.removeEventListener("hudson:saved",i)}},[n,t,o,r]);const A=s.useMemo(()=>({theme:d,resolvedTheme:x?v:void 0,template:u,setTheme:m,setTemplate:h}),[x,v,u,d]);return o?S.jsx(S.Fragment,{children:e}):S.jsx(p.Provider,{value:A,children:e})}function J(){return s.useContext(p)}export{D as T,J as u};
@@ -1 +1 @@
1
- import{c}from"./createLucideIcon-Bt67PWH-.js";const o=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]],r=c("clock",o);export{r as C};
1
+ import{c}from"./createLucideIcon-DLlxGjKt.js";const o=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]],r=c("clock",o);export{r as C};
@@ -1 +1 @@
1
- import{c as e}from"./createLucideIcon-Bt67PWH-.js";const o=[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]],m=e("code-xml",o);export{m as C};
1
+ import{c as e}from"./createLucideIcon-DLlxGjKt.js";const o=[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]],m=e("code-xml",o);export{m as C};
@@ -0,0 +1 @@
1
+ .collapsed-strip{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;padding:4px 0 10px;box-sizing:border-box}.collapsed-strip-label{--csl-ink: color-mix(in srgb, var(--hud-ink, var(--ink)) 62%, transparent);--csl-dim: color-mix(in srgb, var(--hud-ink, var(--ink)) 42%, transparent);--csl-mark: color-mix(in srgb, var(--hud-ink, var(--ink)) 30%, transparent);flex:none;display:flex;flex-direction:column;align-items:center;gap:3px;margin:0;padding:0;border:0;background:none;box-sizing:border-box;-webkit-user-select:none;user-select:none}.collapsed-strip-label-mark{flex:none;width:10px;height:2px;border-radius:999px;background:var(--csl-mark)}button.collapsed-strip-label{appearance:none;font:inherit;cursor:pointer}.collapsed-strip-label-expand{display:none;flex:none;height:11px;font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-xs);font-weight:700;line-height:1;color:var(--csl-ink)}button.collapsed-strip-label .collapsed-strip-label-mark{position:relative;height:11px;background:none}button.collapsed-strip-label .collapsed-strip-label-mark:before{content:"";position:absolute;left:0;right:0;top:50%;height:2px;margin-top:-1px;border-radius:999px;background:var(--csl-mark)}button.collapsed-strip-label:hover,button.collapsed-strip-label:focus-visible{--csl-ink: var(--hud-ink, var(--ink));--csl-dim: color-mix(in srgb, var(--hud-ink, var(--ink)) 60%, transparent)}button.collapsed-strip-label:hover .collapsed-strip-label-mark,button.collapsed-strip-label:focus-visible .collapsed-strip-label-mark{display:none}button.collapsed-strip-label:hover .collapsed-strip-label-expand,button.collapsed-strip-label:focus-visible .collapsed-strip-label-expand{display:block}.collapsed-strip-label-text{display:block;max-width:100%;font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-3xs);font-weight:700;letter-spacing:.12em;text-transform:uppercase;text-align:center;color:var(--csl-ink);line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collapsed-strip-label-count{font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-3xs);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:0;color:var(--csl-dim);line-height:1}.collapsed-strip-label--accent{--csl-ink: color-mix(in srgb, var(--hud-accent, var(--accent)) 88%, var(--hud-ink, var(--ink)));--csl-dim: color-mix(in srgb, var(--hud-accent, var(--accent)) 55%, var(--hud-ink, var(--ink)));--csl-mark: var(--hud-accent, var(--accent))}.collapsed-strip-label--attention{--csl-ink: color-mix(in srgb, var(--amber, #e6b84d) 80%, var(--hud-ink, var(--ink)));--csl-dim: color-mix(in srgb, var(--amber, #e6b84d) 52%, var(--hud-ink, var(--ink)));--csl-mark: var(--amber, #e6b84d)}.collapsed-strip-label--live{--csl-ink: color-mix(in srgb, var(--green, #4ade80) 78%, var(--hud-ink, var(--ink)));--csl-dim: color-mix(in srgb, var(--green, #4ade80) 50%, var(--hud-ink, var(--ink)));--csl-mark: var(--green, #4ade80)}.collapsed-strip--empty{opacity:.9;padding-top:8px}.collapsed-strip-empty-mark{font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-md);font-weight:600;color:color-mix(in srgb,var(--hud-ink, var(--ink)) 50%,transparent);-webkit-user-select:none;user-select:none}.collapsed-strip-rule{width:18px;height:1px;margin:2px 0;background:color-mix(in srgb,var(--hud-ink, var(--ink)) 12%,transparent);flex:none}.collapsed-strip-section{display:flex;flex-direction:column;align-items:center;gap:5px;width:100%}.collapsed-strip-section-mark{flex:none;display:flex;flex-direction:row;align-items:baseline;justify-content:center;gap:3px;min-width:28px;padding:0 2px;-webkit-user-select:none;user-select:none}.collapsed-strip-section-mark-text{font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-3xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb,var(--hud-ink, var(--ink)) 50%,transparent);line-height:1.1}.collapsed-strip-section-mark-count{font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-3xs);font-weight:700;font-variant-numeric:tabular-nums;color:color-mix(in srgb,var(--hud-ink, var(--ink)) 40%,transparent);line-height:1}html[data-scout-sidebar-chrome] .collapsed-strip{padding-top:0;gap:var(--scout-rail-gap)}html[data-scout-sidebar-chrome] .collapsed-chip{width:var(--scout-rail-slot);height:var(--scout-rail-slot)}html[data-scout-sidebar-chrome] .collapsed-strip-label{display:none}html[data-scout-sidebar-chrome] .collapsed-strip-section{gap:var(--scout-rail-gap);display:flex;flex-direction:column;align-items:center;width:100%}html[data-scout-sidebar-chrome] .collapsed-strip-section-mark{height:var(--scout-rail-slot);display:flex;align-items:center;justify-content:center;box-sizing:border-box}html[data-scout-sidebar-chrome] .collapsed-strip-rule{height:var(--scout-rail-slot);margin:0;background:none;display:flex;align-items:center;justify-content:center;width:100%}html[data-scout-sidebar-chrome] .collapsed-strip-rule:before{content:"";display:block;position:relative;width:24px;height:1px;background:color-mix(in srgb,var(--hud-ink, var(--ink)) 14%,transparent)}.collapsed-chip{position:relative;display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:8px;background:none;color:color-mix(in srgb,var(--hud-ink, var(--ink)) 60%,transparent);cursor:pointer;flex:none;transition:color .12s,transform .12s}.collapsed-chip:hover{color:var(--hud-ink, var(--ink))}.collapsed-chip:hover .collapsed-chip-ava{background:color-mix(in srgb,var(--ava-color, var(--hud-ink, var(--ink))) 20%,transparent);border-color:color-mix(in srgb,var(--ava-color, var(--hud-ink, var(--ink))) 30%,transparent);transform:scale(1.04)}.collapsed-chip--active{color:var(--hud-accent, var(--accent))}.collapsed-chip--active .collapsed-chip-ava{box-shadow:0 0 0 1px var(--hud-accent, var(--accent));border-color:var(--hud-accent, var(--accent))}.collapsed-chip--unread .collapsed-chip-ava{box-shadow:0 0 0 1px color-mix(in srgb,var(--hud-accent, var(--accent)) 50%,transparent)}.collapsed-chip--attention .collapsed-chip-ava{box-shadow:0 0 0 1px var(--amber, #e6b84d);border-color:var(--amber, #e6b84d)}.collapsed-chip-avatar-wrap{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;transition:transform .12s,box-shadow .12s}.collapsed-chip:hover .collapsed-chip-avatar-wrap{transform:scale(1.04)}.collapsed-chip--active .collapsed-chip-avatar-wrap{box-shadow:0 0 0 1px var(--hud-accent, var(--accent)),0 0 4px color-mix(in srgb,var(--hud-accent, var(--accent)) 25%,transparent)}.collapsed-chip--unread .collapsed-chip-avatar-wrap{box-shadow:0 0 0 1px var(--hud-accent, var(--accent))}.collapsed-chip--attention .collapsed-chip-avatar-wrap{box-shadow:0 0 0 1px var(--amber, #e6b84d)}.collapsed-chip-channel-badge{width:28px;height:28px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--hud-ink, var(--ink)) 6%,transparent);border:1px solid color-mix(in srgb,var(--hud-ink, var(--ink)) 12%,transparent);font-family:var(--font-mono, ui-monospace, monospace);font-size:12px;font-weight:700;color:color-mix(in srgb,var(--hud-ink, var(--ink)) 75%,transparent);transition:transform .12s,background-color .12s,border-color .12s,box-shadow .12s,color .12s;-webkit-user-select:none;user-select:none}.collapsed-chip-channel-hash{font-size:10px;font-weight:500;opacity:.45;margin-right:1px}.collapsed-chip-channel-text{text-transform:lowercase}.collapsed-chip:hover .collapsed-chip-channel-badge{transform:scale(1.04);background:color-mix(in srgb,var(--hud-ink, var(--ink)) 10%,transparent);border-color:color-mix(in srgb,var(--hud-ink, var(--ink)) 22%,transparent);color:var(--hud-ink, var(--ink))}.collapsed-chip--active .collapsed-chip-channel-badge{background:color-mix(in srgb,var(--hud-accent, var(--accent)) 12%,transparent);border-color:color-mix(in srgb,var(--hud-accent, var(--accent)) 65%,transparent);color:var(--hud-accent, var(--accent));box-shadow:0 0 0 1px color-mix(in srgb,var(--hud-accent, var(--accent)) 35%,transparent)}.collapsed-chip--channel,.collapsed-chip--neutral{color:color-mix(in srgb,var(--hud-ink, var(--ink)) 62%,transparent)}.collapsed-chip-ava{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-family:var(--font-mono, ui-monospace, monospace);font-size:12px;font-weight:700;color:color-mix(in srgb,var(--ava-color, var(--hud-ink, var(--ink))) 85%,var(--hud-ink, var(--ink)));background:color-mix(in srgb,var(--ava-color, var(--hud-ink, var(--ink))) 12%,transparent);border:1px solid color-mix(in srgb,var(--ava-color, var(--hud-ink, var(--ink))) 18%,transparent);text-transform:uppercase;-webkit-user-select:none;user-select:none;transition:transform .12s,background-color .12s,box-shadow .12s}.collapsed-chip-glyph{display:grid;place-items:center;font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-md);font-weight:650;-webkit-user-select:none;user-select:none;line-height:1}.collapsed-chip-dot{position:absolute;top:1px;right:1px;width:6px;height:6px;border-radius:50%;background:var(--hud-accent, var(--accent));box-shadow:0 0 0 1.5px var(--hud-surface, var(--surface, #000));z-index:2}.collapsed-chip-dot--attention{background:var(--amber, #e6b84d)}.collapsed-chip-dot--live{background:var(--green, #4ade80)}.collapsed-chip-pin{position:absolute;bottom:1px;right:1px;width:5px;height:5px;border-radius:1px;background:var(--hud-accent, var(--accent));opacity:.85;transform:rotate(45deg);z-index:2}
@@ -0,0 +1 @@
1
+ import{c}from"./createLucideIcon-DLlxGjKt.js";const o=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m16.24 7.76-1.804 5.411a2 2 0 0 1-1.265 1.265L7.76 16.24l1.804-5.411a2 2 0 0 1 1.265-1.265z",key:"9ktpf1"}]],e=c("compass",o);export{e as C};
@@ -1 +1 @@
1
- import{j as e,r as d}from"./index-o4FKpU7Z.js";import{d as os,e as F,s as as}from"./router-C65cZYPn.js";import{t as B}from"./time-Dhsh_2EG.js";import{H as ns}from"./agent-identity-BxCsXnDp.js";import{i as ls}from"./use-scout-dev-flags-BohC8seq.js";import{u as is,r as rs,a as E,b as ds,f as _,c as y,i as D,t as C,M as P,d as A,e as cs,g as ms,h as hs,s as U}from"./mesh-ops-JZwGuAPn.js";import{u as ps}from"./use-mesh-ops-items-D5L-CKe_.js";/* empty css */import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-AmSgHklm.js";import"./api-h5zurxmi.js";import"./provider-BvAxRQfE.js";import"./sse-CL6gctHY.js";import"./index-BWHgHrtv.js";const us=[{id:"family",label:"family"},{id:"host",label:"host"}],bs=[{key:"lastLook",label:"last-look divider"},{key:"routeStrip",label:"route strip"},{key:"compact",label:"compact rows"},{key:"relays",label:"relay sessions"},{key:"simulateHosts",label:"simulate hosts"}],$=[{nodeId:"sim:studio-tower",label:"studio-tower"},{nodeId:"sim:gpu-box",label:"gpu-box"},{nodeId:"sim:cloud-eu-1",label:"cloud-eu-1"}];function xs(t){let i=0;for(let p=0;p<t.length;p++)i=i*31+t.charCodeAt(p)|0;return Math.abs(i)%($.length+1)}function Ns(t,i,p){return i==="family"?_(t):i==="host"?t.hostLabel??"unattributed":A[C(t,p)]}function fs(t){const i=ns[t.trim().toLowerCase()];return i===void 0?"var(--dim)":`oklch(0.65 0.14 ${i})`}function vs({item:t,selected:i,fresh:p,showHost:f,onSelect:x}){const m=t.attention,b=t.kind==="session"&&t.session?.live===!0,n=m==="interrupt"?"blocked":t.kind==="session"?b?"working":"ended":t.state,u=m==="interrupt"?"danger":m==="badge"||t.state==="review"?"warning":b||t.state==="working"?"accent":"faint",H=m==="interrupt"?" dot--danger dot--pulse":m==="badge"?" dot--warning":b?" dot--working dot--pulse":"",k=m==="silent"&&!b;return e.jsxs("button",{type:"button",className:`mesh-ops-row${i?" mesh-ops-row--selected":""}`,"data-kind":t.kind,"data-fresh":p||void 0,onClick:x,children:[e.jsx("span",{className:`dot${H}`,"data-quiet":k||void 0,"data-hollow":k||void 0,"aria-hidden":!0}),e.jsxs("span",{className:"mesh-ops-row-main",children:[e.jsx("span",{className:"mesh-ops-row-title",children:t.title}),e.jsxs("span",{className:"mesh-ops-row-sub",children:[t.kind," · ",_(t)]})]}),e.jsxs("span",{className:"mesh-ops-row-owner",children:[t.session&&e.jsx("span",{className:"mesh-ops-row-harness",style:{background:fs(t.session.harness)},title:t.session.harness,"aria-hidden":!0}),t.ownerName&&e.jsxs("span",{children:["@",t.ownerName]})]}),e.jsx("span",{className:"mesh-ops-row-route",children:f?t.hostLabel??"—":""}),e.jsxs("span",{className:"mesh-ops-row-state",children:[e.jsx("span",{className:"mesh-ops-row-state-word","data-tone":u,children:m==="badge"&&t.state!=="review"?"flagged":n}),e.jsx("span",{className:"mesh-ops-row-age",children:B(y(t))})]})]})}function ks({hosts:t,newCounts:i,unattributedCount:p,activeHostId:f,unattributedActive:x,onSelect:m,onSelectUnattributed:b}){return e.jsxs("div",{className:"mesh-ops-hosts",role:"group","aria-label":"Hosts",children:[e.jsx("span",{className:"mesh-ops-groupby-label",children:"hosts"}),e.jsx("button",{type:"button",className:`mesh-ops-host${f===null&&!x?" mesh-ops-host--active":""}`,onClick:()=>m(null),title:"Show items across all hosts",children:"all"}),t.map(n=>{const u=i.get(n.nodeId)??0;return e.jsxs("button",{type:"button",className:`mesh-ops-host${f===n.nodeId?" mesh-ops-host--active":""}`,onClick:()=>m(f===n.nodeId?null:n.nodeId),title:n.hostName??n.label,children:[e.jsx("span",{className:`dot${u>0?" dot--warning":n.liveSessionCount>0?" dot--working":""}`,"data-quiet":u===0&&n.liveSessionCount===0?!0:void 0,"aria-hidden":!0}),e.jsx("span",{className:"mesh-ops-host-name",children:n.label}),u>0&&e.jsxs("span",{className:"mesh-ops-host-new",children:[u," new"]}),e.jsxs("span",{className:"mesh-ops-host-meta",children:[n.liveSessionCount>0?`${n.liveSessionCount} live · `:"",n.sessionCount]}),n.lastActivityAt!==null&&e.jsx("span",{className:"mesh-ops-host-age",children:B(n.lastActivityAt)})]},n.nodeId)}),p>0&&e.jsxs("button",{type:"button",className:`mesh-ops-host${x?" mesh-ops-host--active":""}`,onClick:b,title:"Items with no venue host",children:[e.jsx("span",{className:"mesh-ops-host-name",children:"unattributed"}),e.jsx("span",{className:"mesh-ops-host-meta",children:p})]})]})}function js({route:t,navigate:i}){const p=os(t),{loading:f,error:x}=ps(p),{items:m,hosts:b,selectedItemId:n,groupBy:u,attnFilter:H,unattributedOnly:k,lab:l}=is(),[G]=d.useState(()=>ls()),[M]=d.useState(()=>rs()),[j,q]=d.useState(()=>Date.now()),[K,z]=d.useState({}),[S,T]=d.useState(null);d.useEffect(()=>{t.itemId&&t.itemId!==n?E(t.itemId):!t.itemId&&n!==null&&E(null)},[t.itemId]),d.useEffect(()=>{const s=window.setInterval(()=>q(Date.now()),3e4);return()=>window.clearInterval(s)},[]),d.useEffect(()=>()=>ds(),[]);const N=d.useMemo(()=>{const s=l.relays?m:m.filter(o=>o.kind!=="session"||o.session?.relay!==!0),c=l.simulateHosts?s.map(o=>{const a=xs(_(o));if(a===0)return o;const h=$[a-1];return{...o,hostNodeId:h.nodeId,hostLabel:h.label}}):s;return k?c.filter(o=>o.hostNodeId===null):c},[m,k,l.relays,l.simulateHosts]),V=l.simulateHosts?S:p,O=d.useMemo(()=>l.simulateHosts&&S?N.filter(s=>s.hostNodeId===S):N,[l.simulateHosts,S,N]),W=d.useMemo(()=>{if(!l.simulateHosts)return b;const s=$.map(c=>{const o=N.filter(a=>a.hostNodeId===c.nodeId);return{nodeId:c.nodeId,label:c.label,hostName:null,brokerUrl:null,tailnetName:null,lastSeenAt:null,registeredAt:null,sessionCount:o.filter(a=>a.kind==="session").length,liveSessionCount:o.filter(a=>a.kind==="session"&&a.session?.live).length,lastActivityAt:o.length>0?Math.max(...o.map(y)):null}});return[...b,...s]},[l.simulateHosts,b,N]),Y=d.useMemo(()=>N.filter(s=>s.hostNodeId===null).length,[N]),J=d.useMemo(()=>{const s=new Map;if(!l.lastLook)return s;for(const c of N)!D(c,M)||!c.hostNodeId||s.set(c.hostNodeId,(s.get(c.hostNodeId)??0)+1);return s},[N,l.lastLook,M]),Q=d.useMemo(()=>{const s={active:0,moving:0,done:0,archive:0};for(const c of O)s[C(c,j)]+=1;return s},[O,j]),v=H??"active",g=d.useMemo(()=>O.filter(s=>C(s,j)===v),[O,v,j]),X=d.useMemo(()=>new Set(g.map(s=>s.hostLabel).filter(Boolean)).size>1,[g]),w=d.useMemo(()=>l.lastLook?s=>D(s,M):()=>!1,[l.lastLook,M]),Z=d.useMemo(()=>{const s=new Map;for(const o of g){const a=Ns(o,u,j),h=s.get(a);h?h.push(o):s.set(a,[o])}return(u==="attention"?P.map(o=>A[o]).filter(o=>s.has(o)):[...s.entries()].sort((o,a)=>{const h=r=>r.some(w)?0:r.some(I=>C(I,j)==="moving")?1:2,L=h(o[1])-h(a[1]);return L!==0?L:Math.max(...a[1].map(y))-Math.max(...o[1].map(y))}).map(([o])=>o)).map(o=>({key:o,items:(s.get(o)??[]).sort((a,h)=>y(h)-y(a))}))},[g,u,w,j]),ss=s=>{E(s.id),i({...t,itemId:s.id})},R=s=>{if(l.simulateHosts){T(s);return}U(!1),i(s?as(t,s):F(t))},es=()=>{if(k){R(null);return}l.simulateHosts&&T(null),i(F(t)),U(!0)};return e.jsxs("div",{className:`mesh-ops-list${l.compact?" mesh-ops-list--compact":""}${l.lastLook?" mesh-ops-list--lastlook":""}`,children:[e.jsxs("div",{className:"mesh-ops-summary",children:[e.jsx("div",{className:"mesh-ops-tabs",role:"tablist","aria-label":"Triage tabs",children:P.map(s=>e.jsxs("button",{type:"button",role:"tab","aria-selected":v===s,className:`mesh-ops-tab${v===s?" mesh-ops-tab--active":""}`,onClick:()=>cs(v===s?null:s),children:[e.jsx("span",{className:`dot${s==="active"||s==="moving"?" dot--working":""}`,"data-quiet":s==="done"||s==="archive"?!0:void 0,"aria-hidden":!0}),A[s],e.jsx("span",{className:"mesh-ops-tab-count",children:Q[s]})]},s))}),e.jsx("span",{className:"mesh-ops-summary-spacer"}),e.jsxs("span",{className:"mesh-ops-groupby",role:"group","aria-label":"Group items by",children:[e.jsx("span",{className:"mesh-ops-groupby-label",children:"group"}),us.map(s=>e.jsx("button",{type:"button",className:`mesh-ops-groupby-option${u===s.id?" mesh-ops-groupby-option--active":""}`,"aria-pressed":u===s.id,onClick:()=>ms(s.id),children:s.label},s.id))]})]}),e.jsx(ks,{hosts:W,newCounts:J,unattributedCount:Y,activeHostId:V,unattributedActive:k,onSelect:R,onSelectUnattributed:es}),x&&e.jsx("div",{className:"ctx-panel-empty","data-tone":"error",children:x}),!x&&f&&m.length===0&&e.jsx("div",{className:"ctx-panel-empty",children:"Loading mesh ops…"}),!x&&!f&&g.length===0&&e.jsxs("div",{className:"ctx-panel-empty",children:["Nothing in ",A[v],"."]}),Z.map(s=>{const c=v==="done"||v==="archive",o=c?s.items.filter(r=>r.kind!=="session"||r.session?.live===!0):[...s.items],a=c?s.items.filter(r=>r.kind==="session"&&r.session?.live!==!0):[],h=K[s.key]===!0;h&&o.push(...a);const L=l.lastLook?o.findIndex((r,I)=>!w(r)&&o.slice(0,I).some(ts=>w(ts))):-1;return e.jsxs("div",{className:"mesh-ops-group",children:[e.jsxs("div",{className:"mesh-ops-group-head",children:[e.jsx("span",{className:`dot${s.items.some(w)?" dot--warning":""}`,"data-quiet":!s.items.some(w)||void 0,"aria-hidden":!0}),e.jsx("span",{className:"label-sm mesh-ops-group-name",children:s.key}),e.jsx("span",{className:"mesh-ops-group-spacer"}),a.length>0&&e.jsx("button",{type:"button",className:"mesh-ops-group-more",onClick:()=>z(r=>({...r,[s.key]:!h})),children:h?`hide ${a.length} ended`:`+${a.length} ended`}),e.jsx("span",{className:"mesh-ops-group-count",children:s.items.length})]}),o.map((r,I)=>e.jsxs("div",{children:[I===L&&e.jsxs("div",{className:"mesh-ops-lastlook",role:"separator",children:[e.jsx("span",{className:"mesh-ops-lastlook-rule"}),e.jsx("span",{className:"mesh-ops-lastlook-label",children:"last look — above changed since you scanned"}),e.jsx("span",{className:"mesh-ops-lastlook-rule"})]}),e.jsx(vs,{item:r,selected:r.id===n,fresh:w(r),showHost:X,onSelect:()=>ss(r)})]},r.id))]},s.key)}),G&&e.jsxs("div",{className:"mesh-ops-lab",children:[e.jsx("span",{className:"label-xs",children:"lab"}),bs.map(s=>e.jsx("button",{type:"button",className:"mesh-ops-lab-toggle","data-on":l[s.key]||void 0,"aria-pressed":l[s.key],onClick:()=>hs(s.key),children:s.label},s.key))]})]})}function Ts({route:t,navigate:i}){return t.view!=="mesh-ops"?null:e.jsx(js,{route:t,navigate:i})}export{Ts as MeshOpsContent};
1
+ import{j as e,r as d}from"./index-Bli6bTLU.js";import{d as os,e as F,s as as}from"./router-B0YclXYg.js";import{t as B}from"./time-Dhsh_2EG.js";import{H as ns}from"./agent-identity-DzHGhLdJ.js";import{i as ls}from"./use-scout-dev-flags-JKb1EhFh.js";import{u as is,r as rs,a as E,b as ds,f as _,c as y,i as D,t as C,M as P,d as A,e as cs,g as ms,h as hs,s as U}from"./mesh-ops-C0zCLTR8.js";import{u as ps}from"./use-mesh-ops-items-QixBijmT.js";/* empty css */import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-D4dHTRkt.js";import"./api-DEHEgJ9m.js";import"./provider-CX9EWecp.js";import"./sse-CSozY6mp.js";import"./index-BWHgHrtv.js";const us=[{id:"family",label:"family"},{id:"host",label:"host"}],bs=[{key:"lastLook",label:"last-look divider"},{key:"routeStrip",label:"route strip"},{key:"compact",label:"compact rows"},{key:"relays",label:"relay sessions"},{key:"simulateHosts",label:"simulate hosts"}],$=[{nodeId:"sim:studio-tower",label:"studio-tower"},{nodeId:"sim:gpu-box",label:"gpu-box"},{nodeId:"sim:cloud-eu-1",label:"cloud-eu-1"}];function xs(t){let i=0;for(let p=0;p<t.length;p++)i=i*31+t.charCodeAt(p)|0;return Math.abs(i)%($.length+1)}function Ns(t,i,p){return i==="family"?_(t):i==="host"?t.hostLabel??"unattributed":A[C(t,p)]}function fs(t){const i=ns[t.trim().toLowerCase()];return i===void 0?"var(--dim)":`oklch(0.65 0.14 ${i})`}function vs({item:t,selected:i,fresh:p,showHost:f,onSelect:x}){const m=t.attention,b=t.kind==="session"&&t.session?.live===!0,n=m==="interrupt"?"blocked":t.kind==="session"?b?"working":"ended":t.state,u=m==="interrupt"?"danger":m==="badge"||t.state==="review"?"warning":b||t.state==="working"?"accent":"faint",H=m==="interrupt"?" dot--danger dot--pulse":m==="badge"?" dot--warning":b?" dot--working dot--pulse":"",k=m==="silent"&&!b;return e.jsxs("button",{type:"button",className:`mesh-ops-row${i?" mesh-ops-row--selected":""}`,"data-kind":t.kind,"data-fresh":p||void 0,onClick:x,children:[e.jsx("span",{className:`dot${H}`,"data-quiet":k||void 0,"data-hollow":k||void 0,"aria-hidden":!0}),e.jsxs("span",{className:"mesh-ops-row-main",children:[e.jsx("span",{className:"mesh-ops-row-title",children:t.title}),e.jsxs("span",{className:"mesh-ops-row-sub",children:[t.kind," · ",_(t)]})]}),e.jsxs("span",{className:"mesh-ops-row-owner",children:[t.session&&e.jsx("span",{className:"mesh-ops-row-harness",style:{background:fs(t.session.harness)},title:t.session.harness,"aria-hidden":!0}),t.ownerName&&e.jsxs("span",{children:["@",t.ownerName]})]}),e.jsx("span",{className:"mesh-ops-row-route",children:f?t.hostLabel??"—":""}),e.jsxs("span",{className:"mesh-ops-row-state",children:[e.jsx("span",{className:"mesh-ops-row-state-word","data-tone":u,children:m==="badge"&&t.state!=="review"?"flagged":n}),e.jsx("span",{className:"mesh-ops-row-age",children:B(y(t))})]})]})}function ks({hosts:t,newCounts:i,unattributedCount:p,activeHostId:f,unattributedActive:x,onSelect:m,onSelectUnattributed:b}){return e.jsxs("div",{className:"mesh-ops-hosts",role:"group","aria-label":"Hosts",children:[e.jsx("span",{className:"mesh-ops-groupby-label",children:"hosts"}),e.jsx("button",{type:"button",className:`mesh-ops-host${f===null&&!x?" mesh-ops-host--active":""}`,onClick:()=>m(null),title:"Show items across all hosts",children:"all"}),t.map(n=>{const u=i.get(n.nodeId)??0;return e.jsxs("button",{type:"button",className:`mesh-ops-host${f===n.nodeId?" mesh-ops-host--active":""}`,onClick:()=>m(f===n.nodeId?null:n.nodeId),title:n.hostName??n.label,children:[e.jsx("span",{className:`dot${u>0?" dot--warning":n.liveSessionCount>0?" dot--working":""}`,"data-quiet":u===0&&n.liveSessionCount===0?!0:void 0,"aria-hidden":!0}),e.jsx("span",{className:"mesh-ops-host-name",children:n.label}),u>0&&e.jsxs("span",{className:"mesh-ops-host-new",children:[u," new"]}),e.jsxs("span",{className:"mesh-ops-host-meta",children:[n.liveSessionCount>0?`${n.liveSessionCount} live · `:"",n.sessionCount]}),n.lastActivityAt!==null&&e.jsx("span",{className:"mesh-ops-host-age",children:B(n.lastActivityAt)})]},n.nodeId)}),p>0&&e.jsxs("button",{type:"button",className:`mesh-ops-host${x?" mesh-ops-host--active":""}`,onClick:b,title:"Items with no venue host",children:[e.jsx("span",{className:"mesh-ops-host-name",children:"unattributed"}),e.jsx("span",{className:"mesh-ops-host-meta",children:p})]})]})}function js({route:t,navigate:i}){const p=os(t),{loading:f,error:x}=ps(p),{items:m,hosts:b,selectedItemId:n,groupBy:u,attnFilter:H,unattributedOnly:k,lab:l}=is(),[G]=d.useState(()=>ls()),[M]=d.useState(()=>rs()),[j,q]=d.useState(()=>Date.now()),[K,z]=d.useState({}),[S,T]=d.useState(null);d.useEffect(()=>{t.itemId&&t.itemId!==n?E(t.itemId):!t.itemId&&n!==null&&E(null)},[t.itemId]),d.useEffect(()=>{const s=window.setInterval(()=>q(Date.now()),3e4);return()=>window.clearInterval(s)},[]),d.useEffect(()=>()=>ds(),[]);const N=d.useMemo(()=>{const s=l.relays?m:m.filter(o=>o.kind!=="session"||o.session?.relay!==!0),c=l.simulateHosts?s.map(o=>{const a=xs(_(o));if(a===0)return o;const h=$[a-1];return{...o,hostNodeId:h.nodeId,hostLabel:h.label}}):s;return k?c.filter(o=>o.hostNodeId===null):c},[m,k,l.relays,l.simulateHosts]),V=l.simulateHosts?S:p,O=d.useMemo(()=>l.simulateHosts&&S?N.filter(s=>s.hostNodeId===S):N,[l.simulateHosts,S,N]),W=d.useMemo(()=>{if(!l.simulateHosts)return b;const s=$.map(c=>{const o=N.filter(a=>a.hostNodeId===c.nodeId);return{nodeId:c.nodeId,label:c.label,hostName:null,brokerUrl:null,tailnetName:null,lastSeenAt:null,registeredAt:null,sessionCount:o.filter(a=>a.kind==="session").length,liveSessionCount:o.filter(a=>a.kind==="session"&&a.session?.live).length,lastActivityAt:o.length>0?Math.max(...o.map(y)):null}});return[...b,...s]},[l.simulateHosts,b,N]),Y=d.useMemo(()=>N.filter(s=>s.hostNodeId===null).length,[N]),J=d.useMemo(()=>{const s=new Map;if(!l.lastLook)return s;for(const c of N)!D(c,M)||!c.hostNodeId||s.set(c.hostNodeId,(s.get(c.hostNodeId)??0)+1);return s},[N,l.lastLook,M]),Q=d.useMemo(()=>{const s={active:0,moving:0,done:0,archive:0};for(const c of O)s[C(c,j)]+=1;return s},[O,j]),v=H??"active",g=d.useMemo(()=>O.filter(s=>C(s,j)===v),[O,v,j]),X=d.useMemo(()=>new Set(g.map(s=>s.hostLabel).filter(Boolean)).size>1,[g]),w=d.useMemo(()=>l.lastLook?s=>D(s,M):()=>!1,[l.lastLook,M]),Z=d.useMemo(()=>{const s=new Map;for(const o of g){const a=Ns(o,u,j),h=s.get(a);h?h.push(o):s.set(a,[o])}return(u==="attention"?P.map(o=>A[o]).filter(o=>s.has(o)):[...s.entries()].sort((o,a)=>{const h=r=>r.some(w)?0:r.some(I=>C(I,j)==="moving")?1:2,L=h(o[1])-h(a[1]);return L!==0?L:Math.max(...a[1].map(y))-Math.max(...o[1].map(y))}).map(([o])=>o)).map(o=>({key:o,items:(s.get(o)??[]).sort((a,h)=>y(h)-y(a))}))},[g,u,w,j]),ss=s=>{E(s.id),i({...t,itemId:s.id})},R=s=>{if(l.simulateHosts){T(s);return}U(!1),i(s?as(t,s):F(t))},es=()=>{if(k){R(null);return}l.simulateHosts&&T(null),i(F(t)),U(!0)};return e.jsxs("div",{className:`mesh-ops-list${l.compact?" mesh-ops-list--compact":""}${l.lastLook?" mesh-ops-list--lastlook":""}`,children:[e.jsxs("div",{className:"mesh-ops-summary",children:[e.jsx("div",{className:"mesh-ops-tabs",role:"tablist","aria-label":"Triage tabs",children:P.map(s=>e.jsxs("button",{type:"button",role:"tab","aria-selected":v===s,className:`mesh-ops-tab${v===s?" mesh-ops-tab--active":""}`,onClick:()=>cs(v===s?null:s),children:[e.jsx("span",{className:`dot${s==="active"||s==="moving"?" dot--working":""}`,"data-quiet":s==="done"||s==="archive"?!0:void 0,"aria-hidden":!0}),A[s],e.jsx("span",{className:"mesh-ops-tab-count",children:Q[s]})]},s))}),e.jsx("span",{className:"mesh-ops-summary-spacer"}),e.jsxs("span",{className:"mesh-ops-groupby",role:"group","aria-label":"Group items by",children:[e.jsx("span",{className:"mesh-ops-groupby-label",children:"group"}),us.map(s=>e.jsx("button",{type:"button",className:`mesh-ops-groupby-option${u===s.id?" mesh-ops-groupby-option--active":""}`,"aria-pressed":u===s.id,onClick:()=>ms(s.id),children:s.label},s.id))]})]}),e.jsx(ks,{hosts:W,newCounts:J,unattributedCount:Y,activeHostId:V,unattributedActive:k,onSelect:R,onSelectUnattributed:es}),x&&e.jsx("div",{className:"ctx-panel-empty","data-tone":"error",children:x}),!x&&f&&m.length===0&&e.jsx("div",{className:"ctx-panel-empty",children:"Loading mesh ops…"}),!x&&!f&&g.length===0&&e.jsxs("div",{className:"ctx-panel-empty",children:["Nothing in ",A[v],"."]}),Z.map(s=>{const c=v==="done"||v==="archive",o=c?s.items.filter(r=>r.kind!=="session"||r.session?.live===!0):[...s.items],a=c?s.items.filter(r=>r.kind==="session"&&r.session?.live!==!0):[],h=K[s.key]===!0;h&&o.push(...a);const L=l.lastLook?o.findIndex((r,I)=>!w(r)&&o.slice(0,I).some(ts=>w(ts))):-1;return e.jsxs("div",{className:"mesh-ops-group",children:[e.jsxs("div",{className:"mesh-ops-group-head",children:[e.jsx("span",{className:`dot${s.items.some(w)?" dot--warning":""}`,"data-quiet":!s.items.some(w)||void 0,"aria-hidden":!0}),e.jsx("span",{className:"label-sm mesh-ops-group-name",children:s.key}),e.jsx("span",{className:"mesh-ops-group-spacer"}),a.length>0&&e.jsx("button",{type:"button",className:"mesh-ops-group-more",onClick:()=>z(r=>({...r,[s.key]:!h})),children:h?`hide ${a.length} ended`:`+${a.length} ended`}),e.jsx("span",{className:"mesh-ops-group-count",children:s.items.length})]}),o.map((r,I)=>e.jsxs("div",{children:[I===L&&e.jsxs("div",{className:"mesh-ops-lastlook",role:"separator",children:[e.jsx("span",{className:"mesh-ops-lastlook-rule"}),e.jsx("span",{className:"mesh-ops-lastlook-label",children:"last look — above changed since you scanned"}),e.jsx("span",{className:"mesh-ops-lastlook-rule"})]}),e.jsx(vs,{item:r,selected:r.id===n,fresh:w(r),showHost:X,onSelect:()=>ss(r)})]},r.id))]},s.key)}),G&&e.jsxs("div",{className:"mesh-ops-lab",children:[e.jsx("span",{className:"label-xs",children:"lab"}),bs.map(s=>e.jsx("button",{type:"button",className:"mesh-ops-lab-toggle","data-on":l[s.key]||void 0,"aria-pressed":l[s.key],onClick:()=>hs(s.key),children:s.label},s.key))]})]})}function Ts({route:t,navigate:i}){return t.view!=="mesh-ops"?null:e.jsx(js,{route:t,navigate:i})}export{Ts as MeshOpsContent};
@@ -0,0 +1 @@
1
+ import{j as r}from"./index-Bli6bTLU.js";import{SettingsScreen as o}from"./SettingsScreen-Btaku7YM.js";import"./EmptyState-BnDda92b.js";import"./StatusPill-NFFnphtx.js";import"./status-tone-BM_zuRy1.js";import"./api-DEHEgJ9m.js";import"./time-Dhsh_2EG.js";import"./AgentConfigurationScreen-BoBQpyz5.js";import"./NewChatComposer-Bgqes0UQ.js";import"./text-BR9Bap0E.js";import"./scout-voice-DvG_3stJ.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DoT8gpw6.js";import"./createLucideIcon-DLlxGjKt.js";import"./conversation-model-CigSPlKA.js";import"./colors-BtO5_zlx.js";import"./index-DFdlQs_c.js";import"./HarnessMark-DGZ6o6Ct.js";import"./NewChatOrigin-DpHS2Wmt.js";import"./keyboard-nav-7iEtvu9P.js";import"./x-BJyPzFnn.js";import"./chevron-down-Da5tV19_.js";import"./search-BbgsEMXa.js";import"./file-text-BVhkMWyC.js";import"./Provider-Ve8yXaWR.js";import"./provider-CX9EWecp.js";import"./router-B0YclXYg.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-D4dHTRkt.js";import"./sse-CSozY6mp.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-D4vuKzOL.js";import"./DocumentFocusViewer-DmtFisY9.js";import"./TextDocumentSurface-C7fGlzY8.js";import"./chevron-right-BMqtBds_.js";import"./code-xml-ByQsfOI_.js";import"./arrow-left-i-h6JAgs.js";import"./arrow-right-B0Yi01Zr.js";import"./chunk-HRAB3GC3-BUVYXXAp.js";import"./openContent-C6XO6kr5.js";import"./AgentsSubnav-3_vpn2bT.js";import"./SecondaryNav-cYTw2p39.js";import"./secondaryNavConfig-DyC_P9Wx.js";import"./message-square-DlY4EneU.js";import"./compass-BepM5iWH.js";import"./settings-BzWCF3NF.js";import"./terminal-BiNIXhna.js";import"./git-branch-q8Ayc8py.js";import"./scroll-text-DRidbcse.js";/* empty css */import"./refresh-cw-IgN2fZLM.js";import"./bot-r2IuAuJd.js";import"./wrench-CQvdf7KT.js";import"./server-Dt3tpiBj.js";import"./cpu-Bc268H9Q.js";import"./SettingsDrawer-DwYQTGi8.js";import"./credentials-qwds23lv.js";import"./AgentAvatar-B1xvQ7ej.js";import"./SpriteAvatar-DMrSssNZ.js";import"./agent-identity-DzHGhLdJ.js";import"./VoicePermissionsPanel-BkIGTzgw.js";import"./check-Bfs7hMb1.js";import"./copy-De4s38o2.js";function ut({route:t,navigate:i}){return t.view!=="settings"?null:r.jsx(o,{navigate:i,section:t.section,agentId:t.agentId})}export{ut as SettingsContent};
@@ -0,0 +1 @@
1
+ import{j as i}from"./index-Bli6bTLU.js";import{KnowledgeSearchScreen as o}from"./KnowledgeSearchScreen-Bj80IgR0.js";/* empty css */import"./api-DEHEgJ9m.js";import"./time-Dhsh_2EG.js";import"./Provider-Ve8yXaWR.js";import"./provider-CX9EWecp.js";import"./router-B0YclXYg.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-D4dHTRkt.js";import"./sse-CSozY6mp.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./colors-BtO5_zlx.js";import"./scoutbot-D4vuKzOL.js";import"./DocumentFocusViewer-DmtFisY9.js";import"./createLucideIcon-DLlxGjKt.js";import"./TextDocumentSurface-C7fGlzY8.js";import"./file-text-BVhkMWyC.js";import"./x-BJyPzFnn.js";import"./chevron-right-BMqtBds_.js";import"./code-xml-ByQsfOI_.js";import"./arrow-left-i-h6JAgs.js";import"./arrow-right-B0Yi01Zr.js";import"./scout-voice-DvG_3stJ.js";import"./fx-z37u1o2z.js";import"./keyboard-nav-7iEtvu9P.js";import"./NewChatComposer-Bgqes0UQ.js";import"./text-BR9Bap0E.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DoT8gpw6.js";import"./conversation-model-CigSPlKA.js";import"./index-DFdlQs_c.js";import"./HarnessMark-DGZ6o6Ct.js";import"./NewChatOrigin-DpHS2Wmt.js";import"./chevron-down-Da5tV19_.js";import"./search-BbgsEMXa.js";import"./chunk-HRAB3GC3-BUVYXXAp.js";import"./sparkles-ytTwpCbZ.js";import"./clock-DaKLp6Xd.js";function Q({route:r,navigate:t}){return r.view!=="search"?null:i.jsx(o,{navigate:t,mode:r.mode,hitId:r.hitId,routeFilters:r.filters})}export{Q as SearchContent};
@@ -0,0 +1 @@
1
+ import{j as r}from"./index-Bli6bTLU.js";import{ActivityScreen as o}from"./ActivityScreen-C7AwUogt.js";import"./api-DEHEgJ9m.js";import"./clipboard-e3fSpeo7.js";import"./sse-CSozY6mp.js";import"./index-BWHgHrtv.js";import"./colors-BtO5_zlx.js";import"./Provider-Ve8yXaWR.js";import"./provider-CX9EWecp.js";import"./router-B0YclXYg.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-D4dHTRkt.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-D4vuKzOL.js";import"./DocumentFocusViewer-DmtFisY9.js";import"./createLucideIcon-DLlxGjKt.js";import"./TextDocumentSurface-C7fGlzY8.js";import"./file-text-BVhkMWyC.js";import"./x-BJyPzFnn.js";import"./chevron-right-BMqtBds_.js";import"./code-xml-ByQsfOI_.js";import"./arrow-left-i-h6JAgs.js";import"./arrow-right-B0Yi01Zr.js";import"./scout-voice-DvG_3stJ.js";import"./fx-z37u1o2z.js";import"./keyboard-nav-7iEtvu9P.js";import"./NewChatComposer-Bgqes0UQ.js";import"./text-BR9Bap0E.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DoT8gpw6.js";import"./conversation-model-CigSPlKA.js";import"./time-Dhsh_2EG.js";import"./index-DFdlQs_c.js";import"./HarnessMark-DGZ6o6Ct.js";import"./NewChatOrigin-DpHS2Wmt.js";import"./chevron-down-Da5tV19_.js";import"./search-BbgsEMXa.js";import"./chunk-HRAB3GC3-BUVYXXAp.js";import"./mentions-Cd6XticV.js";import"./AgentDetailCard-FelCxQrT.js";import"./AgentLiveActions-Bn3zeZBN.js";import"./terminal-takeover-CtA3wcXh.js";import"./openContent-C6XO6kr5.js";import"./eye-BeCSqJn1.js";import"./terminal-BiNIXhna.js";import"./EmptyState-BnDda92b.js";/* empty css */function Z({route:t,navigate:i}){return t.view!=="activity"?null:r.jsx(o,{navigate:i})}export{Z as ActivityContent};
@@ -0,0 +1 @@
1
+ import{j as t}from"./index-Bli6bTLU.js";import{FollowScreen as i}from"./FollowScreen-DcFBqr6l.js";import"./api-DEHEgJ9m.js";import"./follow-route-BvcGtBIL.js";import"./router-B0YclXYg.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-D4dHTRkt.js";/* empty css */function w({route:o,navigate:r}){return o.view!=="follow"?null:t.jsx(i,{route:o,navigate:r})}export{w as FollowContent};
@@ -0,0 +1 @@
1
+ import{j as t}from"./index-Bli6bTLU.js";import{WorkDetailScreen as i}from"./WorkDetailScreen-Cwe-KWK4.js";import"./DocumentFocusViewer-DmtFisY9.js";import"./createLucideIcon-DLlxGjKt.js";import"./TextDocumentSurface-C7fGlzY8.js";import"./file-text-BVhkMWyC.js";import"./x-BJyPzFnn.js";import"./StatusPill-NFFnphtx.js";import"./status-tone-BM_zuRy1.js";import"./WorkFilesViewer-BBtKRBPv.js";import"./api-DEHEgJ9m.js";import"./chevron-right-BMqtBds_.js";import"./chevron-down-Da5tV19_.js";import"./mentions-Cd6XticV.js";import"./colors-BtO5_zlx.js";import"./index-DFdlQs_c.js";import"./Provider-Ve8yXaWR.js";import"./provider-CX9EWecp.js";import"./router-B0YclXYg.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-D4dHTRkt.js";import"./sse-CSozY6mp.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-D4vuKzOL.js";import"./code-xml-ByQsfOI_.js";import"./arrow-left-i-h6JAgs.js";import"./arrow-right-B0Yi01Zr.js";import"./scout-voice-DvG_3stJ.js";import"./fx-z37u1o2z.js";import"./keyboard-nav-7iEtvu9P.js";import"./NewChatComposer-Bgqes0UQ.js";import"./text-BR9Bap0E.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DoT8gpw6.js";import"./conversation-model-CigSPlKA.js";import"./time-Dhsh_2EG.js";import"./HarnessMark-DGZ6o6Ct.js";import"./NewChatOrigin-DpHS2Wmt.js";import"./search-BbgsEMXa.js";import"./chunk-HRAB3GC3-BUVYXXAp.js";import"./AgentDetailCard-FelCxQrT.js";import"./AgentLiveActions-Bn3zeZBN.js";import"./terminal-takeover-CtA3wcXh.js";import"./openContent-C6XO6kr5.js";import"./eye-BeCSqJn1.js";import"./terminal-BiNIXhna.js";import"./BackToPicker-CqYhOaLB.js";import"./TailView-BfObcZu3.js";import"./SlidePanel-Dg8_styW.js";import"./tail-display-DcliDVkW.js";import"./lane-edit-display-C_Aujldz.js";import"./tail-events-CrN-Rmxj.js";import"./message-square-DlY4EneU.js";import"./radio-BjpQTKT0.js";import"./external-link-BGHC_naA.js";import"./activity-D4W2XZY2.js";function er({route:r,navigate:o}){return r.view!=="work"?null:t.jsx(i,{workId:r.workId,navigate:o})}export{er as WorkContent};
@@ -0,0 +1 @@
1
+ import{j as o}from"./index-Bli6bTLU.js";import{MeshScreen as i}from"./MeshScreen-lJKaOyGB.js";import"./api-DEHEgJ9m.js";import"./time-Dhsh_2EG.js";import"./colors-BtO5_zlx.js";import"./Provider-Ve8yXaWR.js";import"./provider-CX9EWecp.js";import"./router-B0YclXYg.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-D4dHTRkt.js";import"./sse-CSozY6mp.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-D4vuKzOL.js";import"./DocumentFocusViewer-DmtFisY9.js";import"./createLucideIcon-DLlxGjKt.js";import"./TextDocumentSurface-C7fGlzY8.js";import"./file-text-BVhkMWyC.js";import"./x-BJyPzFnn.js";import"./chevron-right-BMqtBds_.js";import"./code-xml-ByQsfOI_.js";import"./arrow-left-i-h6JAgs.js";import"./arrow-right-B0Yi01Zr.js";import"./scout-voice-DvG_3stJ.js";import"./fx-z37u1o2z.js";import"./keyboard-nav-7iEtvu9P.js";import"./NewChatComposer-Bgqes0UQ.js";import"./text-BR9Bap0E.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DoT8gpw6.js";import"./conversation-model-CigSPlKA.js";import"./index-DFdlQs_c.js";import"./HarnessMark-DGZ6o6Ct.js";import"./NewChatOrigin-DpHS2Wmt.js";import"./chevron-down-Da5tV19_.js";import"./search-BbgsEMXa.js";import"./chunk-HRAB3GC3-BUVYXXAp.js";import"./MeshCanvas-C3_2p9B6.js";import"./Canvas-KyTsDJlB.js";import"./mesh-view-store-Cpqil_2D.js";import"./useAgentHoverCard-6N8b7qsU.js";import"./AgentDetailCard-FelCxQrT.js";import"./AgentLiveActions-Bn3zeZBN.js";import"./terminal-takeover-CtA3wcXh.js";import"./openContent-C6XO6kr5.js";import"./eye-BeCSqJn1.js";import"./terminal-BiNIXhna.js";import"./mesh-buckets-CfAukILK.js";import"./local-agents-BMadXuP1.js";import"./useContentSecondaryNav-D-hVKzM9.js";import"./OpsSubnav-BijKI3yG.js";import"./SecondaryNav-cYTw2p39.js";import"./secondaryNavConfig-DyC_P9Wx.js";import"./message-square-DlY4EneU.js";import"./compass-BepM5iWH.js";import"./settings-BzWCF3NF.js";import"./git-branch-q8Ayc8py.js";import"./scroll-text-DRidbcse.js";/* empty css *//* empty css *//* empty css */function xr({route:r,navigate:t}){return r.view!=="mesh"?null:o.jsx(i,{navigate:t})}export{xr as MeshContent};
@@ -0,0 +1 @@
1
+ import{j as t}from"./index-Bli6bTLU.js";import{ConversationScreen as i}from"./ConversationScreen-CjWWmuuh.js";import{MessagesScreen as m}from"./MessagesScreen-D6MVLvdg.js";import"./NewChatComposer-Bgqes0UQ.js";import"./text-BR9Bap0E.js";import"./scout-voice-DvG_3stJ.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DoT8gpw6.js";import"./createLucideIcon-DLlxGjKt.js";import"./conversation-model-CigSPlKA.js";import"./colors-BtO5_zlx.js";import"./time-Dhsh_2EG.js";import"./api-DEHEgJ9m.js";import"./index-DFdlQs_c.js";import"./HarnessMark-DGZ6o6Ct.js";import"./NewChatOrigin-DpHS2Wmt.js";import"./keyboard-nav-7iEtvu9P.js";import"./x-BJyPzFnn.js";import"./chevron-down-Da5tV19_.js";import"./search-BbgsEMXa.js";import"./file-text-BVhkMWyC.js";import"./ConversationComposer-Ce7Byw48.js";import"./AgentAvatar-B1xvQ7ej.js";import"./Provider-Ve8yXaWR.js";import"./provider-CX9EWecp.js";import"./router-B0YclXYg.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-D4dHTRkt.js";import"./sse-CSozY6mp.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-D4vuKzOL.js";import"./DocumentFocusViewer-DmtFisY9.js";import"./TextDocumentSurface-C7fGlzY8.js";import"./chevron-right-BMqtBds_.js";import"./code-xml-ByQsfOI_.js";import"./arrow-left-i-h6JAgs.js";import"./arrow-right-B0Yi01Zr.js";import"./chunk-HRAB3GC3-BUVYXXAp.js";import"./SpriteAvatar-DMrSssNZ.js";import"./agent-identity-DzHGhLdJ.js";import"./zap-rw7uwZht.js";import"./message-markup-DAnnGpWr.js";import"./mentions-Cd6XticV.js";import"./AgentDetailCard-FelCxQrT.js";import"./AgentLiveActions-Bn3zeZBN.js";import"./terminal-takeover-CtA3wcXh.js";import"./openContent-C6XO6kr5.js";import"./eye-BeCSqJn1.js";import"./terminal-BiNIXhna.js";import"./message-visibility-kJM8XcSG.js";import"./sessionRead-CvFz2RHv.js";import"./clipboard-e3fSpeo7.js";import"./types-B0PlfpKc.js";/* empty css */import"./ConversationHeader-C3sg0ULI.js";import"./BackToPicker-CqYhOaLB.js";import"./AstronautSuit-BADl7m8x.js";import"./ConversationFeedRows-DygDfQn_.js";import"./ConversationPanels-Dg4Y2GgX.js";import"./tail-display-DcliDVkW.js";import"./lane-edit-display-C_Aujldz.js";import"./use-reduced-motion-BLn59zLn.js";import"./proxy-C35W-YHZ.js";import"./activity-D4W2XZY2.js";import"./message-circle-44KSmbvQ.js";import"./tail-events-CrN-Rmxj.js";import"./ConversationStatus-BhVIYQza.js";import"./check-Bfs7hMb1.js";import"./sparkles-ytTwpCbZ.js";import"./use-conversation-list-C0bEXFeH.js";import"./use-fleet-active-asks-CK4aw-3G.js";import"./plus-64n9qucr.js";function Mo({route:o,navigate:r}){switch(o.view){case"conversation":return t.jsx(i,{conversationId:o.conversationId,initialDraft:o.composeDraft,navigate:r});case"messages":return t.jsx(m,{conversationId:o.conversationId,navigate:r});default:return null}}export{Mo as ChatContent};
@@ -0,0 +1 @@
1
+ import{j as i}from"./index-Bli6bTLU.js";import{AgentInfoScreen as r}from"./AgentInfoScreen-Cge7HHbV.js";import{AgentsScreen as m}from"./AgentsScreen-BcPM-z1T.js";/* empty css */import"./colors-BtO5_zlx.js";import"./conversation-model-CigSPlKA.js";import"./createLucideIcon-DLlxGjKt.js";import"./time-Dhsh_2EG.js";import"./api-DEHEgJ9m.js";import"./sse-CSozY6mp.js";import"./index-BWHgHrtv.js";import"./text-BR9Bap0E.js";import"./scout-voice-DvG_3stJ.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DoT8gpw6.js";import"./Provider-Ve8yXaWR.js";import"./provider-CX9EWecp.js";import"./router-B0YclXYg.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-D4dHTRkt.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-D4vuKzOL.js";import"./DocumentFocusViewer-DmtFisY9.js";import"./TextDocumentSurface-C7fGlzY8.js";import"./file-text-BVhkMWyC.js";import"./x-BJyPzFnn.js";import"./chevron-right-BMqtBds_.js";import"./code-xml-ByQsfOI_.js";import"./arrow-left-i-h6JAgs.js";import"./arrow-right-B0Yi01Zr.js";import"./keyboard-nav-7iEtvu9P.js";import"./NewChatComposer-Bgqes0UQ.js";import"./index-DFdlQs_c.js";import"./HarnessMark-DGZ6o6Ct.js";import"./NewChatOrigin-DpHS2Wmt.js";import"./chevron-down-Da5tV19_.js";import"./search-BbgsEMXa.js";import"./chunk-HRAB3GC3-BUVYXXAp.js";import"./openContent-C6XO6kr5.js";import"./BackToPicker-CqYhOaLB.js";import"./AgentLiveActions-Bn3zeZBN.js";import"./terminal-takeover-CtA3wcXh.js";import"./eye-BeCSqJn1.js";import"./terminal-BiNIXhna.js";import"./ObservedTopologyPanel-D85P6RAk.js";/* empty css */import"./AgentsSubnav-3_vpn2bT.js";import"./SecondaryNav-cYTw2p39.js";import"./secondaryNavConfig-DyC_P9Wx.js";import"./message-square-DlY4EneU.js";import"./compass-BepM5iWH.js";import"./settings-BzWCF3NF.js";import"./git-branch-q8Ayc8py.js";import"./scroll-text-DRidbcse.js";import"./library-BSVrjn_m.js";/* empty css */import"./SpriteAvatar-DMrSssNZ.js";import"./agent-identity-DzHGhLdJ.js";import"./AgentSessions-czl5zT7A.js";import"./clipboard-e3fSpeo7.js";import"./agents-project-model-UYiamtrU.js";import"./profile-BkmuseW7.js";import"./AgentAvatar-B1xvQ7ej.js";import"./context-budget-DX_fwUs3.js";import"./session-catalog-CUQ8LUJY.js";import"./terminal-relay-pSm7_An6.js";import"./ConversationScreen-CjWWmuuh.js";import"./ConversationComposer-Ce7Byw48.js";import"./zap-rw7uwZht.js";import"./message-markup-DAnnGpWr.js";import"./mentions-Cd6XticV.js";import"./AgentDetailCard-FelCxQrT.js";import"./message-visibility-kJM8XcSG.js";import"./sessionRead-CvFz2RHv.js";import"./types-B0PlfpKc.js";/* empty css */import"./ConversationHeader-C3sg0ULI.js";import"./AstronautSuit-BADl7m8x.js";import"./ConversationFeedRows-DygDfQn_.js";import"./ConversationPanels-Dg4Y2GgX.js";import"./tail-display-DcliDVkW.js";import"./lane-edit-display-C_Aujldz.js";import"./use-reduced-motion-BLn59zLn.js";import"./proxy-C35W-YHZ.js";import"./activity-D4W2XZY2.js";import"./message-circle-44KSmbvQ.js";import"./tail-events-CrN-Rmxj.js";import"./ConversationStatus-BhVIYQza.js";import"./check-Bfs7hMb1.js";import"./sparkles-ytTwpCbZ.js";import"./SessionObserve-zAlFbwFn.js";import"./bash-format-BRV5C6Gv.js";import"./lane-tool-detail-0WhMf4Vj.js";import"./LaneToolHoverCard-197xYmRp.js";import"./lane-observe-vfyACHi0.js";import"./lane-ask-display-B6iCAVcd.js";import"./ObserveTextFlow-C1f5oize.js";import"./SessionObserveEvidence-BVawzqoE.js";import"./wrench-CQvdf7KT.js";import"./external-link-BGHC_naA.js";import"./AgentDefinitionsWorkspace-rw3vh8Lm.js";import"./agent-specialization-CNrsRbKA.js";import"./project-overview-helpers-BQTc_Ous.js";import"./FileViewerPane-Dg7_88pv.js";/* empty css */import"./agent-essentials-CngjUhQj.js";/* empty css *//* empty css */function no({route:t,navigate:o}){return t.view==="agent-info"?i.jsx(r,{conversationId:t.conversationId,navigate:o}):t.view==="agents-v2"?i.jsx(m,{navigate:o,selectedAgentId:t.agentId,conversationId:t.conversationId,tab:t.tab,activeRoute:t}):null}export{no as AgentsContent};
@@ -0,0 +1 @@
1
+ import{j as r}from"./index-Bli6bTLU.js";import{RepoDiffPageScreen as p}from"./RepoDiffPageScreen-DUKLzkrW.js";import{ReposScreen as t}from"./ReposScreen-BR1LqTf1.js";import"./RepoDiffViewerLazy-zIiEmh-e.js";/* empty css */import"./EmptyState-BnDda92b.js";import"./Provider-Ve8yXaWR.js";import"./provider-CX9EWecp.js";import"./router-B0YclXYg.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-D4dHTRkt.js";import"./api-DEHEgJ9m.js";import"./sse-CSozY6mp.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./colors-BtO5_zlx.js";import"./scoutbot-D4vuKzOL.js";import"./DocumentFocusViewer-DmtFisY9.js";import"./createLucideIcon-DLlxGjKt.js";import"./TextDocumentSurface-C7fGlzY8.js";import"./file-text-BVhkMWyC.js";import"./x-BJyPzFnn.js";import"./chevron-right-BMqtBds_.js";import"./code-xml-ByQsfOI_.js";import"./arrow-left-i-h6JAgs.js";import"./arrow-right-B0Yi01Zr.js";import"./scout-voice-DvG_3stJ.js";import"./fx-z37u1o2z.js";import"./keyboard-nav-7iEtvu9P.js";import"./NewChatComposer-Bgqes0UQ.js";import"./text-BR9Bap0E.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DoT8gpw6.js";import"./conversation-model-CigSPlKA.js";import"./time-Dhsh_2EG.js";import"./index-DFdlQs_c.js";import"./HarnessMark-DGZ6o6Ct.js";import"./NewChatOrigin-DpHS2Wmt.js";import"./chevron-down-Da5tV19_.js";import"./search-BbgsEMXa.js";import"./chunk-HRAB3GC3-BUVYXXAp.js";import"./api-BHHEUSS3.js";import"./clipboard-e3fSpeo7.js";/* empty css */import"./ui-LM8pS8qE.js";import"./selection-bridge-CpzFGx3-.js";import"./SlidePanel-Dg8_styW.js";import"./cache-BO2Bd_LV.js";import"./refresh-cw-IgN2fZLM.js";import"./sliders-horizontal-7V8B3xsf.js";function oi({route:i,navigate:o}){return i.view==="repo-diff"?r.jsx(p,{path:i.path,layers:i.layers,files:i.files,sessionId:i.sessionId,agentId:i.agentId,include:i.include,navigate:o}):i.view==="repos"?r.jsx(t,{navigate:o,focusRoot:i.root??null}):null}export{oi as ReposContent};
@@ -0,0 +1 @@
1
+ import{j as t}from"./index-Bli6bTLU.js";import{a as i}from"./BrokerScreen-Bkvu92jk.js";import"./index-DFdlQs_c.js";import"./text-BR9Bap0E.js";import"./scout-voice-DvG_3stJ.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DoT8gpw6.js";import"./createLucideIcon-DLlxGjKt.js";import"./EmptyState-BnDda92b.js";import"./NewChatComposer-Bgqes0UQ.js";import"./conversation-model-CigSPlKA.js";import"./colors-BtO5_zlx.js";import"./time-Dhsh_2EG.js";import"./api-DEHEgJ9m.js";import"./HarnessMark-DGZ6o6Ct.js";import"./NewChatOrigin-DpHS2Wmt.js";import"./keyboard-nav-7iEtvu9P.js";import"./x-BJyPzFnn.js";import"./chevron-down-Da5tV19_.js";import"./search-BbgsEMXa.js";import"./file-text-BVhkMWyC.js";import"./clipboard-e3fSpeo7.js";import"./sse-CSozY6mp.js";import"./index-BWHgHrtv.js";import"./status-tone-BM_zuRy1.js";import"./Provider-Ve8yXaWR.js";import"./provider-CX9EWecp.js";import"./router-B0YclXYg.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-D4dHTRkt.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-D4vuKzOL.js";import"./DocumentFocusViewer-DmtFisY9.js";import"./TextDocumentSurface-C7fGlzY8.js";import"./chevron-right-BMqtBds_.js";import"./code-xml-ByQsfOI_.js";import"./arrow-left-i-h6JAgs.js";import"./arrow-right-B0Yi01Zr.js";import"./chunk-HRAB3GC3-BUVYXXAp.js";import"./openContent-C6XO6kr5.js";import"./broker-display-Q75fupqG.js";import"./BrokerMetadataPanel-DFAH-NO6.js";import"./DispatchAftermath-CH02HAVw.js";import"./follow-route-BvcGtBIL.js";import"./arrow-up-right-RBC6k8nn.js";import"./ShikiPane-DyEJdcvb.js";import"./types-B0PlfpKc.js";/* empty css */import"./refresh-cw-IgN2fZLM.js";import"./external-link-BGHC_naA.js";import"./sparkles-ytTwpCbZ.js";import"./plus-64n9qucr.js";import"./send-horizontal-BXo2uz3Z.js";import"./check-Bfs7hMb1.js";import"./copy-De4s38o2.js";import"./message-square-DlY4EneU.js";import"./radio-BjpQTKT0.js";import"./bot-r2IuAuJd.js";function ur({route:r,navigate:o}){return r.view!=="broker"?null:t.jsx(i,{navigate:o})}export{ur as BrokerContent};
@@ -0,0 +1 @@
1
+ import{r as a,j as t}from"./index-Bli6bTLU.js";import ht from"./HomeHero-CENwVZ45.js";import{TailView as gt}from"./TailView-BfObcZu3.js";import{a as q}from"./api-DEHEgJ9m.js";import{u as pt}from"./observe-DL5_8-Zj.js";import{u as wt}from"./sse-CSozY6mp.js";import{i as Q,o as bt}from"./surface-activity-B1rgWB1i.js";import{n as k,c as Te,t as be}from"./time-Dhsh_2EG.js";import{a as Mt}from"./provider-CX9EWecp.js";import{a as qe,n as He}from"./colors-BtO5_zlx.js";import{z as xt,R as kt,A as yt,B as St,h as jt}from"./NewChatComposer-Bgqes0UQ.js";import{u as At,a as $e}from"./persistent-state-DYjP8lqN.js";import{M as Nt}from"./text-BR9Bap0E.js";import{u as It,m as Et,d as Lt,g as Ct}from"./Provider-Ve8yXaWR.js";import{d as Rt}from"./router-B0YclXYg.js";import{a as _t}from"./operator-attention-BqoWAlhp.js";import{e as Ot,i as Fe,f as Ke,g as Tt,h as Ht}from"./agent-lanes-model-BKOs_32K.js";import{HomeMovingSignalList as $t}from"./home-moving-signal-Dm2Z2x0p.js";import{E as Wt}from"./external-link-BGHC_naA.js";import"./refresh-cw-IgN2fZLM.js";import"./createLucideIcon-DLlxGjKt.js";import"./activity-D4W2XZY2.js";import"./SlidePanel-Dg8_styW.js";import"./HarnessMark-DGZ6o6Ct.js";import"./tail-display-DcliDVkW.js";import"./lane-edit-display-C_Aujldz.js";import"./tail-events-CrN-Rmxj.js";import"./index-BWHgHrtv.js";import"./openContent-C6XO6kr5.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-D4dHTRkt.js";import"./scoutbot-D4vuKzOL.js";import"./DocumentFocusViewer-DmtFisY9.js";import"./TextDocumentSurface-C7fGlzY8.js";import"./file-text-BVhkMWyC.js";import"./x-BJyPzFnn.js";import"./chevron-right-BMqtBds_.js";import"./code-xml-ByQsfOI_.js";import"./arrow-left-i-h6JAgs.js";import"./arrow-right-B0Yi01Zr.js";import"./scout-voice-DvG_3stJ.js";import"./fx-z37u1o2z.js";import"./keyboard-nav-7iEtvu9P.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DoT8gpw6.js";import"./conversation-model-CigSPlKA.js";import"./index-DFdlQs_c.js";import"./NewChatOrigin-DpHS2Wmt.js";import"./chevron-down-Da5tV19_.js";import"./search-BbgsEMXa.js";import"./chunk-HRAB3GC3-BUVYXXAp.js";import"./context-budget-DX_fwUs3.js";import"./lane-observe-vfyACHi0.js";import"./home-live-action-BkqGLVRY.js";import"./cpu-Bc268H9Q.js";import"./git-branch-q8Ayc8py.js";import"./file-code-corner-CX53Cd9y.js";import"./terminal-BiNIXhna.js";const X=30*6e4,de="30m",De="recent",ue=[{key:"5m",label:"5m",windowMs:5*6e4},{key:"30m",label:"30m",windowMs:X},{key:"4h",label:"4h",windowMs:240*6e4},{key:"24h",label:"24h",windowMs:1440*6e4}],le={working:0,native:1,observed:2};function Pt(e){const s=e?.trim();return ue.some(n=>n.key===s)?s:de}function Bt(e){return ue.find(s=>s.key===e)??ue[1]}function qt(e){return e==="grouped"?"grouped":De}function Ft(e,s,n){if(n==="grouped"){const r=le[e.bucket]-le[s.bucket];if(r!==0)return r}const o=s.lastActivityAt-e.lastActivityAt;if(o!==0)return o;const l=le[e.bucket]-le[s.bucket];return l!==0?l:e.id.localeCompare(s.id)}function Ge(e,s,n=X){const o=k(e);return o!==null&&s-o<=n}function Ve(e){const s=e?.trim().toLowerCase();return s?s==="pi"||s==="grok-acp"||s==="grok"?"grok":s:null}function Kt(e,s,n,o=[],l=X,r=de){return!!(n||qe(e.state)||Ot(e,s,r)||ze(e,o,s,l))}function Dt(e,s){const n=Ve(e.harness);return n?n===s.source?.trim().toLowerCase():!1}function ze(e,s,n,o=X){const l=e.harnessSessionId?.trim();if(!l)return!1;const r=n-o;return s.some(u=>{const d=k(u.ts);if(d===null||d<r||!Dt(e,u))return!1;const m=u.sessionId?.trim();return!!(m&&m===l)})}function Gt(e){const{agent:s,observeEntry:n,tailEvents:o,nowMs:l,movingAsk:r,windowMs:u=X}=e;if(r)return!0;const d=n?.data;if(Fe(d))return!0;const m=Ke(d);return!!(m!==null&&l-m<=u||ze(s,o,l,u)||qe(s.state)&&Ge(s.updatedAt,l,u))}function Vt(e,s){const n=e?.metadata?.session,o=e?.metadata?.usage,l=o?.contextInputTokens,r=o?.contextWindowTokens,u=typeof l=="number"&&typeof r=="number"&&r>0?Math.min(100,Math.round(l/r*100)):null;return{sessionId:n?.externalSessionId??s?.sessionId??null,model:n?.model??s?.model??null,contextPct:u}}function Ue(e){if(!e)return null;const s=e.sessionId?.trim()||e.data?.metadata?.session?.externalSessionId?.trim();if(s)return`session:${s}`;const n=e.historyPath?.trim()||e.data?.metadata?.session?.threadPath?.trim();return n?`history:${n}`:null}function zt(e){const s=e.observe?.metadata?.session,n=s?.externalSessionId?.trim();if(n)return`session:${n}`;const o=s?.threadPath?.trim();return o?`history:${o}`:null}function We(e,s){const n=s?.sessionId?.trim()||s?.data?.metadata?.session?.externalSessionId?.trim(),o=e.harnessSessionId?.trim();return!!(n&&o&&n===o)}function Ut(e,s){const n=new Map,o=[];for(const l of e){const r=s[l.id],u=Ue(r);if(!u){o.push(l);continue}const d=n.get(u);if(d===void 0){n.set(u,o.length),o.push(l);continue}const m=o[d];!We(m,s[m.id])&&We(l,r)&&(o[d]=l)}return o}function pe(e,s){const{observeEntry:n,tailEvents:o,nowMs:l,movingAsk:r}=s;if(r)return k(r.updatedAt)??l;if(Fe(n?.data))return l;const u=Ke(n?.data);if(u!==null)return u;const d=e.harnessSessionId?.trim(),m=Ve(e.harness);let g=0;if(d)for(const w of o){if(m&&w.source!==m||w.sessionId?.trim()!==d)continue;const I=k(w.ts);I!==null&&(g=Math.max(g,I))}return g>0?g:k(e.updatedAt)??0}const Qt=9;function Yt(e){const{lanes:s}=Tt({transcripts:e.transcripts,tailEvents:e.tailEvents,processes:e.processes??[],scoutAgents:e.agents,observeCache:e.observeCache??{},now:e.nowMs,workingOnly:!0,horizon:e.horizon??de});return s.filter(n=>n.source==="native")}const $=[{label:"30m",value:30*6e4,activityLimit:80},{label:"6h",value:360*6e4,activityLimit:250},{label:"24h",value:1440*6e4,activityLimit:800}],Pe=$[2].value,Jt="openscout.home.lookbackMs.v1",Zt="openscout.home.movingWindow.v1",Xt="openscout.home.movingSort.v1",es=6e4,ts=3e4,ss=3;function ns(e,s){const n=k(e);if(n===null)return"—";const o=Math.max(0,Math.floor((s-n)/1e3));if(o<60)return`${o}s`;const l=Math.floor(o/60);if(l<60)return`${l}m`;const r=Math.floor(l/60);return r<48?`${r}h`:`${Math.floor(r/24)}d`}function os(e,s=140){const n=(e??"").replace(/\s+/g," ").trim();return n?n.length>s?`${n.slice(0,s-1)}…`:n:""}function is(e){return{handoff_sent:"handed off",handoff_received:"received handoff",ask_sent:"sent a request",message_sent:"said",message_received:"received"}[e]??e.replace(/[._]/g," ")}function as(e){return e.conversationId?{view:"conversation",conversationId:e.conversationId}:e.recordId?{view:"work",workId:e.recordId}:e.agentId?{view:"agents-v2",agentId:e.agentId}:null}function rs(e){const s=Math.round(e/6e4);if(s<60)return`${s}m`;const n=s/60;return`${Number.isInteger(n)?n:n.toFixed(1)}h`}function Me(e){if(!Number.isFinite(e)||e<=0)return"now";const s=Math.floor(e/1e3);if(s<60)return`${s}s`;const n=Math.floor(s/60);if(n<60)return`${n}m`;const o=Math.floor(n/60);return o<48?`${o}h`:`${Math.floor(o/24)}d`}function cs(e,s,n){if(e.length===0)return null;const o=e.map(m=>k(m.ts)).filter(m=>m!==null).sort((m,g)=>g-m);if(o.length===0)return null;const l=o[0],r=o[o.length-1];let u=0;for(let m=1;m<o.length;m++)u=Math.max(u,o[m-1]-o[m]);const d=n-s;return u=Math.max(u,r-d),{count:e.length,lastAgoMs:Math.max(0,n-l),longestGapMs:Math.max(0,u)}}function ls(e){const s=e.map(o=>Math.sqrt(o)),n=[.56,.28,.11,.05];return s.map((o,l)=>{let r=0,u=0;for(let d=-3;d<=3;d++){const m=l+d;if(m<0||m>=s.length)continue;const g=n[Math.abs(d)]??0;r+=s[m]*g,u+=g}return u>0?r/u:0})}function us(e,s,n){if(e.length<2||s.length===0)return e;const o=Math.max(1,e[1].ts-e[0].ts),l=e[0].ts,r=e[e.length-1].ts+o,u=e.map(g=>g.count);for(const g of s){const w=k(g.ts);if(w===null||w<l||w>n||w>=r)continue;const I=Math.floor((w-l)/o);I>=0&&I<u.length&&(u[I]=(u[I]??0)+1)}const d=ls(u),m=Math.max(1,...d);return e.map((g,w)=>({...g,count:u[w]??g.count,value:(d[w]??0)/m}))}function we(e){return e.status==="fulfilled"?null:ds(e.reason instanceof Error?e.reason.message:String(e.reason))}function ds(e){return/failed to fetch|networkerror|load failed|couldn't connect|connection refused/i.test(e)?"Scout server is unreachable":e}function ms(e){return e==="Scout server is unreachable"}function Nn({navigate:e}){const{agents:s,onboarding:n,reload:o,route:l}=It(),r=Rt(l),u=a.useMemo(()=>Et(s,r),[s,r]),d=a.useMemo(()=>Lt(s,r),[s,r]),[m,g]=a.useState(null),[w,I]=a.useState([]),[F,ee]=a.useState("trailing 7d"),[K,te]=a.useState("3h buckets"),[p,se]=a.useState([]),[D,ne]=a.useState(null),[oe,E]=a.useState([]),[y,ie]=a.useState(!0),[v,S]=a.useState(!1),[b,W]=a.useState(null),[P,Qe]=a.useState(null),Y=a.useRef(null),xe=a.useRef(0),ke=a.useRef(0),me=a.useRef(null);a.useEffect(()=>{me.current=m},[m]);const G=a.useCallback(async(i=!1)=>(await q(`/api/service-budgets${i?"?refresh=1":""}`,{cache:"no-store"})).gauges??[],[]),V=a.useMemo(()=>Ct(m,u),[m,u]),[C,ye]=At(Jt,Pe),J=a.useMemo(()=>$.find(i=>i.value===C)??$[$.length-1],[C]),[Ye,Je]=$e(Zt,de),B=Pt(Ye),O=Bt(B),[Ze,Xe]=$e(Xt,De),ae=qt(Ze),Se=a.useMemo(()=>Ht(B),[B]),L=a.useCallback(async(i="initial")=>{const c=++xe.current;!(me.current!==null)&&i!=="background"?(ie(!0),W(null)):S(!0);const M=new URLSearchParams({activityLookbackMs:String(J.value),activityLimit:String(J.activityLimit)}).toString(),[x,_,A]=await Promise.allSettled([q(`/api/fleet?${M}`),q("/api/heartrate"),o()]);if(c!==xe.current)return;x.status==="fulfilled"&&(me.current=x.value,g(x.value)),_.status==="fulfilled"&&(I(_.value.buckets),ee(_.value.windowLabel),te(_.value.bucketLabel??""));const H=[we(x),we(_),we(A)].filter(U=>!!U);W(H[0]??null),H.length<4&&Qe(Date.now()),ie(!1),S(!1)},[o,J]),et=a.useCallback(()=>{Q()&&(Y.current||(Y.current=setTimeout(()=>{Y.current=null,L("background")},250)))},[L]);a.useEffect(()=>(L(),()=>{Y.current&&clearTimeout(Y.current)}),[L]),wt(et),a.useEffect(()=>{let i=!1;const c=async()=>{try{const x=await G();i||E(x)}catch{}};c();const f=setInterval(()=>{Q()&&c()},es),M=()=>{document.visibilityState==="visible"&&Q()&&c()};return window.addEventListener("focus",M),document.addEventListener("visibilitychange",M),()=>{i=!0,clearInterval(f),window.removeEventListener("focus",M),document.removeEventListener("visibilitychange",M)}},[G]);const Z=a.useCallback(async()=>{try{const i=new URLSearchParams({limit:String(Se),transcripts:"true"}),[c,f]=await Promise.all([q(`/api/tail/recent?${i.toString()}`),q("/api/tail/discover").catch(()=>null)]);se(c.events??[]),f&&ne(f)}catch{}},[Se]);a.useEffect(()=>{Z();const i=setInterval(()=>{Q()&&Z()},ts);return()=>clearInterval(i)},[Z]),a.useEffect(()=>{const i=setInterval(()=>{Q()&&L("background")},15e3);return()=>clearInterval(i)},[L]),a.useEffect(()=>bt(()=>{const c=Date.now();c-ke.current<1e3||(ke.current=c,L("background"),G().then(E).catch(()=>null),Z())}),[G,L,Z]);const[h,tt]=a.useState(()=>Date.now());a.useEffect(()=>{const i=setInterval(()=>{Q()&&tt(Date.now())},1e3);return()=>clearInterval(i)},[]);const je=a.useMemo(()=>(V?.activeAsks??[]).filter(i=>i.status==="queued"||i.status==="working"),[V]),re=a.useMemo(()=>je.filter(i=>Ge(i.updatedAt,h,O.windowMs)),[je,O.windowMs,h]),T=a.useMemo(()=>{const i=new Map;for(const c of re){const f=i.get(c.agentId),M=k(c.updatedAt)??0,x=k(f?.updatedAt)??0;(!f||M>x)&&i.set(c.agentId,c)}return i},[re]),st=a.useMemo(()=>d.filter(i=>Kt(i,h,T.has(i.id),p,O.windowMs,B)),[d,T,O.windowMs,B,h,p]),j=pt(st),R=a.useMemo(()=>{const c=d.filter(f=>Gt({agent:f,observeEntry:j[f.id],tailEvents:p,nowMs:h,movingAsk:T.get(f.id),windowMs:O.windowMs})).sort((f,M)=>pe(M,{observeEntry:j[M.id],tailEvents:p,nowMs:h,movingAsk:T.get(M.id)})-pe(f,{observeEntry:j[f.id],tailEvents:p,nowMs:h,movingAsk:T.get(f.id)}));return Ut(c,j)},[d,T,O.windowMs,j,p,h]);a.useMemo(()=>{const i={};for(const c of R)i[c.id]=Vt(j[c.id]?.data);return i},[j,R]);const Ae=a.useMemo(()=>new Set(R.map(i=>i.id)),[R]),Ne=a.useMemo(()=>{const i=new Set;for(const c of R){const f=Ue(j[c.id]);f&&i.add(f)}return i},[j,R]),Ie=a.useMemo(()=>Yt({agents:d,tailEvents:p,transcripts:D?.transcripts??[],processes:D?.processes??[],observeCache:j,nowMs:h,horizon:B}).filter(c=>{if(Ae.has(c.agent.id))return!1;const f=zt(c);return!(f&&Ne.has(f))}).sort((c,f)=>f.lastActiveAt-c.lastActiveAt),[d,B,j,h,D,p,Ae,Ne]),fe=a.useMemo(()=>re.filter(i=>!R.some(c=>c.id===i.agentId)).sort((i,c)=>Te(i.updatedAt,c.updatedAt)),[R,re]),Ee=h-C,N=a.useMemo(()=>{const i=new Set(["ask_failed","ask_replied","flight.completed","flight.updated","flight_updated"]),c=(V?.activity??[]).filter(f=>!i.has(f.kind)&&(k(f.ts)??0)>=Ee);return c.filter((f,M)=>{const x=c[M-1];return x?!(x.title===f.title&&x.summary===f.summary&&x.conversationId===f.conversationId&&Math.abs((k(x.ts)??0)-(k(f.ts)??0))<=5e3):!0})},[V?.activity,Ee]),ve=a.useMemo(()=>cs(N,C,h),[N,C,h]),he=N.length>=J.activityLimit,nt=a.useMemo(()=>{const i=$.findIndex(c=>c.value===C);return i>=0&&i<$.length-1?$[i+1]:null},[C]),ot=new Date,it=Mt("ops.control",!0),ge=n?.operatorName?.trim()||n?.operatorNameSuggestion?.trim()||"operator",at=a.useMemo(()=>us(w,p,h),[w,p,h]),Le=a.useMemo(()=>{const i=h-O.windowMs,c=V?.activity??[],f=new Set(d.map(A=>A.name.toLowerCase())),M=new Set(d.map(A=>A.id)),x=new Set(["agent_message","status_message","ask_opened","ask_working","handoff_sent","collaboration_event"]),_=new Map;for(const A of c){const H=k(A.ts);if(H===null||H<i||!x.has(A.kind))continue;const U=A.actorName?.trim();if(!U||U.toLowerCase()===ge.toLowerCase()||f.has(U.toLowerCase())||A.agentId&&M.has(A.agentId))continue;const _e=U.toLowerCase(),Oe=_.get(_e),vt=k(Oe?.ts)??0;(!Oe||H>vt)&&_.set(_e,A)}return[..._.values()].sort((A,H)=>Te(A.ts,H.ts))},[V?.activity,O.windowMs,h,d,ge]),rt=y?"syncing":b?`${ms(b)?"offline":"sync issue"} · ${P?be(P):"waiting"}`:P?`Last updated ${be(P)}`:"waiting",ct=a.useCallback(()=>{L("manual"),G(!0).then(i=>E(i)).catch(()=>{})},[G,L]),lt={now:ot,operatorName:ge,syncLabel:rt,error:b,loading:y,refreshing:v,onRefresh:ct,navigate:e,opsEnabled:it,heartrate:at,heartrateWindow:F,heartrateBucketLabel:K,heartrateVisibleEventThreshold:ss,serviceGauges:oe},ut=!y&&!b&&N.length===0&&C>=Pe,dt=!y&&!b&&N.length===0,mt=y||N.length>0||!!b||!ut,Ce=a.useMemo(()=>[...R.map(c=>({bucket:"working",id:c.id,agent:c,lastActivityAt:pe(c,{observeEntry:j[c.id],tailEvents:p,nowMs:h,movingAsk:T.get(c.id)})})),...Ie.map(c=>({bucket:"native",id:c.id,lane:c,lastActivityAt:c.lastActiveAt})),...Le.map(c=>({bucket:"observed",id:c.id,actor:c,lastActivityAt:k(c.ts)??0}))].sort((c,f)=>Ft(c,f,ae)),[T,ae,Ie,h,j,Le,p,R]),Re=Ce.slice(0,Qt),ce=Re.length,z=Ce.length+fe.length,ft=z>ce&&ce>0?`What's moving · ${ce} of ${z}`:`What's moving · ${z}`;return t.jsx("div",{className:"s-fleet-home",children:t.jsxs("div",{className:"s-fleet-home-inner",children:[t.jsx(ht,{...lt}),(z>0||y)&&t.jsxs("div",{className:"s-fleet-section",children:[t.jsx(Be,{label:y&&z===0?"What's moving":ft,right:t.jsxs("div",{className:"s-moving-controls",children:[t.jsx(fs,{sort:ae,onSortChange:Xe,windowKey:O.key,onWindowChange:Je}),t.jsx("button",{className:"s-link-btn",onClick:()=>e({view:"mesh"}),children:"open mesh ↗"})]})}),y&&z===0?t.jsx(gs,{}):t.jsxs(t.Fragment,{children:[ce>0&&t.jsx($t,{cards:Re,sort:ae,nowMs:h,movingAskByAgent:T,observeCache:j,navigate:e}),fe.length>0&&t.jsx("div",{className:"s-moving-ask-list",children:fe.map(i=>t.jsx(vs,{ask:i,navigate:e},i.invocationId))})]})]}),mt&&t.jsxs("div",{className:"s-fleet-section",children:[t.jsx(Be,{label:`Live activity · ${N.length}${he?"+":""}`,right:t.jsx(hs,{value:C,onChange:ye,refreshing:v&&!y})}),ve&&t.jsxs("div",{className:"s-fleet-live-shape",children:[t.jsxs("span",{children:["last ",Me(ve.lastAgoMs)," ago"]}),t.jsx("span",{children:"·"}),t.jsxs("span",{children:["longest gap ",Me(ve.longestGapMs)]}),he&&t.jsxs(t.Fragment,{children:[t.jsx("span",{children:"·"}),t.jsxs("span",{style:{color:"var(--amber)"},children:["showing ",Math.min(N.length,30)," of ",J.activityLimit,"+ (capped)"]})]}),!he&&N.length>30&&t.jsxs(t.Fragment,{children:[t.jsx("span",{children:"·"}),t.jsxs("span",{children:["showing 30 of ",N.length]})]})]}),y&&N.length===0?t.jsx(ps,{}):N.length===0?t.jsx(ws,{lookbackMs:C,nextOption:nt,onWiden:i=>ye(i.value),loadedAt:P,nowMs:h,error:b,onRetry:()=>{L("manual")}}):t.jsx("div",{className:"s-mc-stream s-fleet-live-stream",children:N.slice(0,30).map(i=>t.jsx(xs,{item:i,nowMs:h,onOpen:()=>{const c=as(i);c&&e(c)}},i.id))})]}),dt&&t.jsx("div",{className:"s-fleet-section s-fleet-section--quiet-start",children:t.jsx(Ms,{agents:d,navigate:e})})]})})}function Be({label:e,right:s}){return t.jsxs("div",{className:"s-section-rule",children:[t.jsx("span",{className:"s-eyebrow",children:e}),t.jsx("span",{className:"s-section-rule-line"}),s&&t.jsx("span",{className:"s-section-rule-right",children:s})]})}function fs({sort:e,onSortChange:s,windowKey:n,onWindowChange:o}){return t.jsxs("div",{className:"s-moving-controlset","aria-label":"Moving cards controls",children:[t.jsxs("div",{className:"s-mc-window s-moving-window",role:"group","aria-label":"Moving sort",children:[t.jsx("span",{className:"s-mc-window-label",children:"Sort"}),t.jsx("div",{className:"s-mc-window-tabs",children:[["recent","Recent"],["grouped","Grouped"]].map(([l,r])=>t.jsx("button",{type:"button",className:`s-mc-window-tab${e===l?" is-active":""}`,onClick:()=>s(l),children:r},l))})]}),t.jsxs("div",{className:"s-mc-window s-moving-window",role:"group","aria-label":"Moving activity window",children:[t.jsx("span",{className:"s-mc-window-label",children:"Window"}),t.jsx("div",{className:"s-mc-window-tabs",children:ue.map(l=>t.jsx("button",{type:"button",className:`s-mc-window-tab${n===l.key?" is-active":""}`,onClick:()=>o(l.key),children:l.label},l.key))})]})]})}function vs({ask:e,navigate:s}){const n=_t(e);return t.jsxs("button",{className:"s-moving-ask-row",onClick:()=>s(n),children:[t.jsx("span",{className:"s-moving-ask-agent",children:e.agentName??e.agentId}),t.jsx("span",{className:"s-moving-ask-title",children:e.summary??e.task}),t.jsx("span",{className:"s-moving-ask-state",children:e.statusLabel}),t.jsx("span",{className:"s-moving-ask-time",children:be(e.updatedAt)})]})}function hs({value:e,onChange:s,refreshing:n}){return t.jsxs("div",{className:"s-mc-window",role:"group","aria-label":"Lookback window",children:[t.jsxs("span",{className:"s-mc-window-label",children:["Lookback",n&&t.jsx("span",{className:"s-mc-window-refreshing","aria-label":"refreshing"})]}),t.jsx("div",{className:"s-mc-window-tabs",children:$.map(o=>t.jsx("button",{type:"button",className:`s-mc-window-tab${o.value===e?" is-active":""}`,onClick:()=>s(o.value),children:o.label},o.value))})]})}function gs(){return t.jsx("div",{className:"s-moving-signal-stage s-moving-signal-skeleton","aria-hidden":"true",children:t.jsx("div",{className:"s-moving-signal-list",children:[0,1,2,3,4].map(e=>t.jsxs("div",{className:"s-moving-signal-row s-moving-signal-row--skeleton",children:[t.jsx("span",{className:"s-moving-signal-skeleton-age"}),t.jsx("span",{}),t.jsx("span",{className:"s-moving-signal-skeleton-where"}),t.jsx("span",{className:"s-moving-signal-skeleton-action"})]},e))})})}function ps(){return t.jsx("div",{className:"s-mc-stream s-fleet-live-stream s-fleet-live-stream--skeleton","aria-hidden":"true",children:[0,1,2,3,4].map(e=>t.jsxs("div",{className:"s-fleet-live-skeleton-row",children:[t.jsx("span",{className:"s-fleet-live-skeleton-time"}),t.jsx("span",{className:"s-fleet-live-skeleton-actor"}),t.jsx("span",{className:"s-fleet-live-skeleton-text"})]},e))})}function ws({lookbackMs:e,nextOption:s,onWiden:n,loadedAt:o,nowMs:l,error:r,onRetry:u}){if(r)return t.jsxs("div",{className:"s-mc-empty s-fleet-live-empty",children:[t.jsx("div",{className:"s-fleet-live-empty-title",children:"Couldn’t load activity."}),t.jsx("div",{className:"s-fleet-live-empty-detail",children:r}),t.jsx("div",{className:"s-fleet-live-empty-actions",children:t.jsx("button",{type:"button",className:"s-link-btn",onClick:u,children:"Try again"})})]});const d=o?`Polled ${Me(Math.max(0,l-o))} ago.`:"Polling…";return t.jsxs("div",{className:"s-mc-empty s-fleet-live-empty",children:[t.jsxs("div",{className:"s-fleet-live-empty-title",children:["Quiet — no activity in the last ",rs(e),"."]}),t.jsx("div",{className:"s-fleet-live-empty-detail",children:d}),s&&t.jsx("div",{className:"s-fleet-live-empty-actions",children:t.jsxs("button",{type:"button",className:"s-link-btn",onClick:()=>n(s),children:["Widen to ",s.label," →"]})})]})}function bs(e){return[...e].sort((s,n)=>{const o=He(s.state),l=He(n.state);return(o==="callable"?0:o==="in_turn"||o==="in_flight"?1:2)-(l==="callable"?0:l==="in_turn"||l==="in_flight"?1:2)||s.name.localeCompare(n.name)})}function Ms({agents:e,navigate:s}){const n=a.useMemo(()=>bs(e),[e]),[o,l]=a.useState(()=>n[0]?.id??""),r=n.find(v=>v.id===o)??null,[u,d]=a.useState(null),[m,g]=a.useState(""),[w,I]=a.useState(r?.harness?.trim()??""),[F,ee]=a.useState(r?.model?.trim()??""),[K,te]=a.useState("medium"),[p,se]=a.useState(!1),[D,ne]=a.useState(null),oe=u??kt;a.useEffect(()=>{n.some(v=>v.id===o)||l(n[0]?.id??"")},[o,n]),a.useEffect(()=>{I(r?.harness?.trim()??""),ee(r?.model?.trim()??"")},[r?.id]),a.useEffect(()=>{const v=r?.projectRoot?.trim()||r?.cwd?.trim(),S=new URLSearchParams({scope:"global+project"});v&&S.set("projectRoot",v);let b=!1;return q(`/api/runner/options?${S.toString()}`).then(W=>{!b&&W.schemaVersion==="openscout.runtime-capabilities.v1"&&d(W)}).catch(()=>{}),()=>{b=!0}},[r?.cwd,r?.projectRoot]);const E=w||r?.harness?.trim()||"",y=a.useMemo(()=>{const v=xt(oe);return E&&!v.harnesses.some(S=>S.value===E)?{...v,harnesses:[...v.harnesses,{value:E,label:E,models:[{value:"",label:"Default",note:"harness picks"}]}]}:v},[oe,E]);a.useEffect(()=>{const v=yt(y,E,F);!v||v.some(S=>S.value===K)||te(v.find(S=>S.value==="medium")?.value??v[0]?.value??"")},[y,E,F,K]);const ie=async v=>{const S=m.trim();if(!(!r||!S||p)){se(!0),ne(null);try{const b=await jt(r),W=await q("/api/send",{method:"POST",body:JSON.stringify({body:S,chatId:b,execution:{harness:w||void 0,model:F||void 0,reasoningEffort:K||void 0}})});g("");const P=W.conversationId??b;s({view:"conversation",conversationId:P})}catch(b){ne(b instanceof Error?b.message:String(b))}finally{se(!1)}}};return t.jsxs("div",{className:"s-quiet-start",children:[t.jsxs("div",{className:"s-quiet-panel s-quiet-panel--tail",children:[t.jsxs("div",{className:"s-quiet-panel-head",children:[t.jsx("span",{className:"s-eyebrow",children:"Local tail"}),t.jsxs("button",{type:"button",className:"s-icon-btn",title:"Open tail",onClick:()=>s({view:"ops",mode:"tail"}),children:[t.jsx(Wt,{size:14,"aria-hidden":"true"}),t.jsx("span",{children:"Open tail"})]})]}),t.jsx("div",{className:"s-quiet-tail-frame",children:t.jsx(gt,{navigate:s,chrome:"embedded"})})]}),t.jsxs("div",{className:"s-quiet-panel s-quiet-panel--ask",children:[t.jsx("div",{className:"s-quiet-panel-head",children:t.jsx("span",{className:"s-eyebrow",children:"Message"})}),t.jsx("div",{className:"s-quiet-compose",children:t.jsx(Nt,{density:"panel",value:m,onChange:g,onSend:()=>{ie()},placeholder:"Type a message…",disabled:p||!r,sending:p,canSend:!p&&!!r&&m.trim().length>0,header:t.jsxs("div",{className:"s-quiet-target-row s-quiet-target-row--in-compose",children:[t.jsx("label",{className:"s-quiet-label",htmlFor:"home-catchup-agent",children:"To"}),t.jsx("select",{id:"home-catchup-agent",className:"s-quiet-select s-quiet-select--target",value:o,onChange:v=>l(v.target.value),disabled:n.length===0||p,children:n.length===0?t.jsx("option",{value:"",children:"No registered agents"}):n.map(v=>t.jsx("option",{value:v.id,children:v.name},v.id))})]}),tools:t.jsx(St,{catalog:y,value:{harness:E,model:F,effort:K},onChange:v=>{I(v.harness===(r?.harness?.trim()??"")?"":v.harness),ee(v.model),te(v.effort)},disabled:p||!r})})}),D&&t.jsx("div",{className:"s-quiet-error",children:D})]})]})}function xs({item:e,nowMs:s,onOpen:n}){const o=e.actorName??"—",l=is(e.kind),r=os(e.title??e.summary,110);return t.jsxs("button",{type:"button",className:"s-mc-stream-row",onClick:n,children:[t.jsx("span",{className:"s-mc-stream-time",children:ns(e.ts,s)}),t.jsx("span",{className:"s-mc-stream-actor",children:o}),t.jsx("span",{className:"s-mc-stream-verb",children:l}),t.jsx("span",{className:"s-mc-stream-text",children:r})]})}export{Nn as HomeContent,Nn as HomeScreen};
@@ -0,0 +1 @@
1
+ import{j as o}from"./index-Bli6bTLU.js";import{HarnessesScreen as i}from"./HarnessesScreen-DTDL-XaA.js";import"./HarnessMark-DGZ6o6Ct.js";import"./api-DEHEgJ9m.js";import"./router-B0YclXYg.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-D4dHTRkt.js";import"./time-Dhsh_2EG.js";import"./Provider-Ve8yXaWR.js";import"./provider-CX9EWecp.js";import"./sse-CSozY6mp.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./colors-BtO5_zlx.js";import"./scoutbot-D4vuKzOL.js";import"./DocumentFocusViewer-DmtFisY9.js";import"./createLucideIcon-DLlxGjKt.js";import"./TextDocumentSurface-C7fGlzY8.js";import"./file-text-BVhkMWyC.js";import"./x-BJyPzFnn.js";import"./chevron-right-BMqtBds_.js";import"./code-xml-ByQsfOI_.js";import"./arrow-left-i-h6JAgs.js";import"./arrow-right-B0Yi01Zr.js";import"./scout-voice-DvG_3stJ.js";import"./fx-z37u1o2z.js";import"./keyboard-nav-7iEtvu9P.js";import"./NewChatComposer-Bgqes0UQ.js";import"./text-BR9Bap0E.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DoT8gpw6.js";import"./conversation-model-CigSPlKA.js";import"./index-DFdlQs_c.js";import"./NewChatOrigin-DpHS2Wmt.js";import"./chevron-down-Da5tV19_.js";import"./search-BbgsEMXa.js";import"./chunk-HRAB3GC3-BUVYXXAp.js";import"./useContentSecondaryNav-D-hVKzM9.js";import"./OpsSubnav-BijKI3yG.js";import"./SecondaryNav-cYTw2p39.js";import"./secondaryNavConfig-DyC_P9Wx.js";import"./message-square-DlY4EneU.js";import"./compass-BepM5iWH.js";import"./settings-BzWCF3NF.js";import"./terminal-BiNIXhna.js";import"./git-branch-q8Ayc8py.js";import"./scroll-text-DRidbcse.js";/* empty css *//* empty css */import"./refresh-cw-IgN2fZLM.js";import"./external-link-BGHC_naA.js";function tr({route:r,navigate:t}){return r.view!=="harnesses"?null:o.jsx(i,{navigate:t})}export{tr as HarnessesContent};
@@ -0,0 +1 @@
1
+ import{j as t}from"./index-Bli6bTLU.js";import{BriefingDetailScreen as o}from"./BriefingDetailScreen-DDfZ8ci1.js";import{BriefingsScreen as m}from"./BriefingsScreen-CLvSOJjy.js";import"./EmptyState-BnDda92b.js";import"./api-DEHEgJ9m.js";import"./scoutbot-markdown-BJJyaPu2.js";import"./Provider-Ve8yXaWR.js";import"./provider-CX9EWecp.js";import"./router-B0YclXYg.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-D4dHTRkt.js";import"./sse-CSozY6mp.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./colors-BtO5_zlx.js";import"./scoutbot-D4vuKzOL.js";import"./DocumentFocusViewer-DmtFisY9.js";import"./createLucideIcon-DLlxGjKt.js";import"./TextDocumentSurface-C7fGlzY8.js";import"./file-text-BVhkMWyC.js";import"./x-BJyPzFnn.js";import"./chevron-right-BMqtBds_.js";import"./code-xml-ByQsfOI_.js";import"./arrow-left-i-h6JAgs.js";import"./arrow-right-B0Yi01Zr.js";import"./scout-voice-DvG_3stJ.js";import"./fx-z37u1o2z.js";import"./keyboard-nav-7iEtvu9P.js";import"./NewChatComposer-Bgqes0UQ.js";import"./text-BR9Bap0E.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DoT8gpw6.js";import"./conversation-model-CigSPlKA.js";import"./time-Dhsh_2EG.js";import"./index-DFdlQs_c.js";import"./HarnessMark-DGZ6o6Ct.js";import"./NewChatOrigin-DpHS2Wmt.js";import"./chevron-down-Da5tV19_.js";import"./search-BbgsEMXa.js";import"./chunk-HRAB3GC3-BUVYXXAp.js";import"./external-link-BGHC_naA.js";/* empty css *//* empty css */function W({route:i,navigate:r}){return i.view!=="briefings"?null:i.briefingId?t.jsx(o,{briefingId:i.briefingId,navigate:r}):t.jsx(m,{navigate:r})}export{W as BriefingsContent};
@@ -0,0 +1 @@
1
+ import{j as o}from"./index-Bli6bTLU.js";import{SessionRefScreen as t}from"./SessionRefScreen-BmKhf29o.js";import{SessionsScreen as m}from"./SessionsScreen-CsSqjIY2.js";import{FlightObserveScreen as p}from"./FlightObserveScreen-DL3Xhl0h.js";import"./api-DEHEgJ9m.js";import"./sse-CSozY6mp.js";import"./index-BWHgHrtv.js";import"./tail-events-CrN-Rmxj.js";import"./BackToPicker-CqYhOaLB.js";import"./router-B0YclXYg.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-D4dHTRkt.js";import"./ConversationScreen-CjWWmuuh.js";import"./NewChatComposer-Bgqes0UQ.js";import"./text-BR9Bap0E.js";import"./scout-voice-DvG_3stJ.js";import"./fx-z37u1o2z.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DoT8gpw6.js";import"./createLucideIcon-DLlxGjKt.js";import"./conversation-model-CigSPlKA.js";import"./colors-BtO5_zlx.js";import"./time-Dhsh_2EG.js";import"./index-DFdlQs_c.js";import"./HarnessMark-DGZ6o6Ct.js";import"./NewChatOrigin-DpHS2Wmt.js";import"./keyboard-nav-7iEtvu9P.js";import"./x-BJyPzFnn.js";import"./chevron-down-Da5tV19_.js";import"./search-BbgsEMXa.js";import"./file-text-BVhkMWyC.js";import"./ConversationComposer-Ce7Byw48.js";import"./AgentAvatar-B1xvQ7ej.js";import"./Provider-Ve8yXaWR.js";import"./provider-CX9EWecp.js";import"./surface-activity-B1rgWB1i.js";import"./scoutbot-D4vuKzOL.js";import"./DocumentFocusViewer-DmtFisY9.js";import"./TextDocumentSurface-C7fGlzY8.js";import"./chevron-right-BMqtBds_.js";import"./code-xml-ByQsfOI_.js";import"./arrow-left-i-h6JAgs.js";import"./arrow-right-B0Yi01Zr.js";import"./chunk-HRAB3GC3-BUVYXXAp.js";import"./SpriteAvatar-DMrSssNZ.js";import"./agent-identity-DzHGhLdJ.js";import"./zap-rw7uwZht.js";import"./message-markup-DAnnGpWr.js";import"./mentions-Cd6XticV.js";import"./AgentDetailCard-FelCxQrT.js";import"./AgentLiveActions-Bn3zeZBN.js";import"./terminal-takeover-CtA3wcXh.js";import"./openContent-C6XO6kr5.js";import"./eye-BeCSqJn1.js";import"./terminal-BiNIXhna.js";import"./message-visibility-kJM8XcSG.js";import"./sessionRead-CvFz2RHv.js";import"./clipboard-e3fSpeo7.js";import"./types-B0PlfpKc.js";/* empty css */import"./ConversationHeader-C3sg0ULI.js";import"./AstronautSuit-BADl7m8x.js";import"./ConversationFeedRows-DygDfQn_.js";import"./ConversationPanels-Dg4Y2GgX.js";import"./tail-display-DcliDVkW.js";import"./lane-edit-display-C_Aujldz.js";import"./use-reduced-motion-BLn59zLn.js";import"./proxy-C35W-YHZ.js";import"./activity-D4W2XZY2.js";import"./message-circle-44KSmbvQ.js";import"./ConversationStatus-BhVIYQza.js";import"./check-Bfs7hMb1.js";import"./sparkles-ytTwpCbZ.js";import"./SessionObserve-zAlFbwFn.js";import"./bash-format-BRV5C6Gv.js";import"./lane-tool-detail-0WhMf4Vj.js";import"./LaneToolHoverCard-197xYmRp.js";import"./lane-observe-vfyACHi0.js";import"./lane-ask-display-B6iCAVcd.js";import"./ObservedTopologyPanel-D85P6RAk.js";import"./ObserveTextFlow-C1f5oize.js";import"./SessionObserveEvidence-BVawzqoE.js";import"./wrench-CQvdf7KT.js";import"./external-link-BGHC_naA.js";/* empty css */import"./RawSessionsTable-Co3vzwsf.js";/* empty css */import"./DataTable-oJP339bX.js";/* empty css *//* empty css */function Pi({route:i,navigate:r}){return i.view!=="sessions"?null:i.flightId?o.jsx(p,{route:{...i,flightId:i.flightId},navigate:r}):i.sessionId?o.jsx(t,{sessionRef:i.sessionId,navigate:r}):o.jsx(m,{navigate:r})}export{Pi as SessionsContent};
@@ -0,0 +1 @@
1
+ import{j as o}from"./index-Bli6bTLU.js";import{OpsScreen as i}from"./OpsScreen-C3yNQqJE.js";/* empty css */import"./Provider-Ve8yXaWR.js";import"./provider-CX9EWecp.js";import"./router-B0YclXYg.js";import"./synthetic-agent-routing-aduMYO7P.js";import"./terminal-sessions-D4dHTRkt.js";import"./api-DEHEgJ9m.js";import"./sse-CSozY6mp.js";import"./index-BWHgHrtv.js";import"./surface-activity-B1rgWB1i.js";import"./colors-BtO5_zlx.js";import"./scoutbot-D4vuKzOL.js";import"./DocumentFocusViewer-DmtFisY9.js";import"./createLucideIcon-DLlxGjKt.js";import"./TextDocumentSurface-C7fGlzY8.js";import"./file-text-BVhkMWyC.js";import"./x-BJyPzFnn.js";import"./chevron-right-BMqtBds_.js";import"./code-xml-ByQsfOI_.js";import"./arrow-left-i-h6JAgs.js";import"./arrow-right-B0Yi01Zr.js";import"./scout-voice-DvG_3stJ.js";import"./fx-z37u1o2z.js";import"./keyboard-nav-7iEtvu9P.js";import"./NewChatComposer-Bgqes0UQ.js";import"./text-BR9Bap0E.js";import"./voice-levels-Dcr3jglk.js";import"./loader-circle-DoT8gpw6.js";import"./conversation-model-CigSPlKA.js";import"./time-Dhsh_2EG.js";import"./index-DFdlQs_c.js";import"./HarnessMark-DGZ6o6Ct.js";import"./NewChatOrigin-DpHS2Wmt.js";import"./chevron-down-Da5tV19_.js";import"./search-BbgsEMXa.js";import"./chunk-HRAB3GC3-BUVYXXAp.js";/* empty css */import"./page-status-CW8co39E.js";import"./AgentLanesView-CbY9qD0z.js";/* empty css */import"./tail-events-CrN-Rmxj.js";import"./observe-DL5_8-Zj.js";import"./types-B0PlfpKc.js";import"./AgentAvatar-B1xvQ7ej.js";import"./SpriteAvatar-DMrSssNZ.js";import"./agent-identity-DzHGhLdJ.js";import"./SessionObserve-zAlFbwFn.js";import"./bash-format-BRV5C6Gv.js";import"./tail-display-DcliDVkW.js";import"./lane-edit-display-C_Aujldz.js";import"./lane-tool-detail-0WhMf4Vj.js";import"./LaneToolHoverCard-197xYmRp.js";import"./lane-observe-vfyACHi0.js";import"./lane-ask-display-B6iCAVcd.js";import"./mentions-Cd6XticV.js";import"./AgentDetailCard-FelCxQrT.js";import"./AgentLiveActions-Bn3zeZBN.js";import"./terminal-takeover-CtA3wcXh.js";import"./openContent-C6XO6kr5.js";import"./eye-BeCSqJn1.js";import"./terminal-BiNIXhna.js";import"./message-markup-DAnnGpWr.js";import"./ObservedTopologyPanel-D85P6RAk.js";import"./ObserveTextFlow-C1f5oize.js";import"./use-reduced-motion-BLn59zLn.js";import"./proxy-C35W-YHZ.js";import"./SessionObserveEvidence-BVawzqoE.js";import"./message-circle-44KSmbvQ.js";import"./wrench-CQvdf7KT.js";import"./external-link-BGHC_naA.js";import"./AgentFloorView-Crdw8Uo5.js";/* empty css */import"./agent-lanes-model-BKOs_32K.js";import"./context-budget-DX_fwUs3.js";import"./lane-roster-store-pHT3TAVs.js";import"./AgentLanesPreflight-DJeDRTAN.js";import"./AgentLaneChrome-CWFqUdch.js";import"./AgentLaneCard-CRDG74C1.js";/* empty css */import"./AgentLaneSummaryResize-yTM4GQAJ.js";import"./clipboard-e3fSpeo7.js";import"./agent-lane-card-model-CSugZCdy.js";import"./agent-lane-preview-BhplDYGf.js";import"./AgentLaneDetailSheet-DCIIg3Zp.js";import"./SlidePanel-Dg8_styW.js";import"./agent-lane-detail-D5EIlX7_.js";import"./LaneTraceDetailSheet-BztwvOv9.js";import"./LaneTraceEventFocus-C9cmqxnK.js";import"./MissionControlView-BCH-Zsp4.js";/* empty css */import"./mission-control-store-DtjtRs9Z.js";import"./MissionContextRail-DXkrbcnZ.js";import"./mission-wall-CocIM1cF.js";import"./mission-control-model-C0fByIjm.js";import"./MissionFocusOverlay-DbAliOSF.js";import"./MissionLogPane-D06c29Y8.js";import"./OpsAgentsView-yt0JavoB.js";/* empty css */import"./DataTable-oJP339bX.js";/* empty css */import"./useAgentHoverCard-6N8b7qsU.js";import"./sliders-horizontal-7V8B3xsf.js";import"./HostAdvisorView-PgiZUkd_.js";/* empty css */import"./compass-BepM5iWH.js";import"./layout-grid-DMpv9CZM.js";import"./refresh-cw-IgN2fZLM.js";import"./arrow-up-right-RBC6k8nn.js";import"./cpu-Bc268H9Q.js";import"./gauge-CPcEPmNt.js";import"./AtopView-DymBCiXv.js";/* empty css */import"./TailView-BfObcZu3.js";import"./useContentSecondaryNav-D-hVKzM9.js";import"./OpsSubnav-BijKI3yG.js";import"./SecondaryNav-cYTw2p39.js";import"./secondaryNavConfig-DyC_P9Wx.js";import"./message-square-DlY4EneU.js";import"./settings-BzWCF3NF.js";import"./git-branch-q8Ayc8py.js";import"./scroll-text-DRidbcse.js";function Qt({route:r,navigate:t}){return r.view!=="ops"?null:o.jsx(i,{navigate:t,mode:r.mode,tailQuery:r.tailQuery})}export{Qt as OpsContent};
@@ -1 +1 @@
1
- import{j as r}from"./index-o4FKpU7Z.js";function e(){return r.jsxs("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[r.jsx("path",{d:"M12 19V5"}),r.jsx("path",{d:"m5 12 7-7 7 7"})]})}function i(){return r.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true",children:r.jsx("rect",{x:"4",y:"4",width:"16",height:"16",rx:"2"})})}function n(){return r.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round","aria-hidden":"true",children:[r.jsx("path",{d:"M4 4l8 8"}),r.jsx("path",{d:"M12 4l-8 8"})]})}export{n as DismissIcon,e as SendIcon,i as StopIcon};
1
+ import{j as r}from"./index-Bli6bTLU.js";function e(){return r.jsxs("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[r.jsx("path",{d:"M12 19V5"}),r.jsx("path",{d:"m5 12 7-7 7 7"})]})}function i(){return r.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true",children:r.jsx("rect",{x:"4",y:"4",width:"16",height:"16",rx:"2"})})}function n(){return r.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round","aria-hidden":"true",children:[r.jsx("path",{d:"M4 4l8 8"}),r.jsx("path",{d:"M12 4l-8 8"})]})}export{n as DismissIcon,e as SendIcon,i as StopIcon};
@@ -0,0 +1 @@
1
+ import{c as _}from"./createLucideIcon-DLlxGjKt.js";import{i as O,s as F,n as L}from"./colors-BtO5_zlx.js";import{n as u,e as W,c as v,t as y}from"./time-Dhsh_2EG.js";const $=[["path",{d:"M20 4v7a4 4 0 0 1-4 4H4",key:"6o5b7l"}],["path",{d:"m9 10-5 5 5 5",key:"1kshq7"}]],ot=_("corner-down-left",$);function d(t){const e=t?.trim();if(!e)return null;const[n]=e.split(".");return n?.trim()||e}function ut(t){const e=t.handle?.trim().replace(/^@+/,"");if(e)return`@${e}`;const n=t.selector?.trim();if(n)return n;const r=d(t.id);return r?`@${r}`:null}function ct(t){return t.name?.trim()||t.agentName?.trim()||d(t.id)||t.title?.trim()||"Conversation"}function B(t,e){const n=u(t),r=u(e);if(n===null||r===null)return!1;const i=new Date(n),s=new Date(r);return i.getFullYear()===s.getFullYear()&&i.getMonth()===s.getMonth()&&i.getDate()===s.getDate()}function lt(t){const e=u(t);if(e===null)return"";const n=new Date(e),r=new Date,i=new Date(r.getFullYear(),r.getMonth(),r.getDate()).getTime(),s=new Date(n.getFullYear(),n.getMonth(),n.getDate()).getTime(),a=1440*60*1e3;return s===i?"Today":s===i-a?"Yesterday":new Intl.DateTimeFormat(void 0,{weekday:"short",month:"short",day:"numeric"}).format(e)}const q=30*6e4;function dt(t){return t.kind==="channel"}function ft(t){return t.kind==="channel"||t.kind==="group_direct"}function k(t){if(t.participantIds.includes("operator"))return!0;const e=t.participants;return e?.length?e.some(n=>n.actorId==="operator"||n.kind==="operator"||n.kind==="person"&&n.actorId==="operator"):!1}function mt(t){return(t.kind==="direct"||t.kind==="group_direct")&&k(t)}function gt(t){return(t.kind==="direct"||t.kind==="group_direct")&&!k(t)}function E(t){return t.title&&t.title!==t.id?t.title:t.agentName??t.id}function pt(t){return E(t)}const P=new Set(["completed","failed","cancelled"]);function c(t){return!!(t&&!P.has(t.state))}function ht(t){return c(t)&&!x(t)}function S(t){return t?.dispatchOutcome?.status==="queued_until_online"}function x(t){return!!(t?.summary?.includes("Scout stopped waiting for a synchronous result")||t?.summary?.includes("the requester stopped waiting after"))}function z(t,e=Date.now(),n=q){if(!c(t)||S(t))return!1;const r=u(t?.startedAt);return r!==null&&e-r>n}function yt(t,e,n=Date.now()){if(!z(t,n))return!1;const r=u(t?.startedAt),i=u(e);return r!==null&&i!==null&&i>r}function At(t){return!c(t)}const wt=[{command:"/route",label:"/route",description:"Route this to another agent",insert:"/route @"},{command:"/inbox",label:"/inbox",description:"Go to the inbox",insert:"/inbox"},{command:"/agents",label:"/agents",description:"Open the agents list",insert:"/agents"},{command:"/fleet",label:"/fleet",description:"Open the fleet view",insert:"/fleet"},{command:"/sessions",label:"/sessions",description:"Browse sessions",insert:"/sessions"},{command:"/mesh",label:"/mesh",description:"Open the mesh view",insert:"/mesh"},{command:"/activity",label:"/activity",description:"Open activity feed",insert:"/activity"},{command:"/settings",label:"/settings",description:"Open settings",insert:"/settings"}];function It(t,e,n){return t.findIndex(r=>{if(n&&r.id===n)return!0;const i=r.metadata?.clientMessageId;return typeof i=="string"&&i.trim()===e})}function vt(t,e){const n=new Set(e.map(s=>s.id)),r=new Set(e.map(s=>s.metadata?.clientMessageId).filter(s=>typeof s=="string"&&!!s.trim()).map(s=>s.trim())),i=t.filter(s=>{const a=s.metadata?.deliveryState;if(a!=="sending"&&a!=="unknown"||n.has(s.id))return!1;const o=s.metadata?.clientMessageId;return typeof o!="string"||!r.has(o.trim())});return j([...e,...i])}const V=["standard","familiar","ledger","rail","document"];function kt(t){const e=t.get("treatment")?.trim();return{conversationId:t.get("conversationId")?.trim()||"",embedded:!0,showBackNav:!1,treatment:e&&V.includes(e)?e:"standard"}}function St(t){return!!t?.terminalSurface}function Tt(t){if(t?.kind!=="direct")return null;const e=t.sessionId?.trim();return e||t.participants?.find(n=>n.kind==="session"&&n.sessionId?.trim())?.sessionId?.trim()||null}function bt(t){const e=t.machineId?.trim()?{machineId:t.machineId.trim()}:{},n=t.resolvedAgentId?.trim();if(n)return{view:"agents-v2",agentId:n,...e};const r=t.sessionId?.trim();return r?{view:"sessions",sessionId:r,...e}:null}function Dt(t){return t.sending||t.awaitingResponse||c(t.currentFlight)}function Ct(t){return t.isDm?t.hasOutstandingReply?"steer":"invoke":"message"}function Mt(t){return t.isAgentBusy?t.intent:"send"}function Rt(t){return!t.isAgentBusy&&!t.sending&&t.queued.length>0}function Nt(t){return t.length===0?null:t.length===1?"Sends when this turn lands":"Sends in order when this turn lands"}const A={sustained:15e3,long:3e4};function _t(t,e){const n=u(t);if(n===null)return"brief";const r=Math.max(0,e-n);return r>=A.long?"long":r>=A.sustained?"sustained":"brief"}const G=6e4;function T(t){const e=t.metadata?.deliveryRequestId;return typeof e=="string"&&e.trim()?e.trim():null}function H(t){for(const e of["targetDisplayName","relayTarget"]){const n=t.metadata?.[e];if(typeof n=="string"&&n.trim())return n.trim()}return t.actorName}function g(t){for(const e of["relayTarget","targetDisplayName"]){const n=t.metadata?.[e];if(typeof n=="string"&&n.trim())return n.trim()}return t.actorId?.trim()||t.actorName}function U(t,e,n){return T(t)!==null&&t.body===e.body&&t.class===e.class&&Math.abs(t.createdAt-e.createdAt)<=G&&!n.has(g(t))}function Ot(t){const e=[];let n=null,r=0;for(;r<t.length;){const i=t[r];let s=r+1;if(T(i)!==null){const o=new Set([g(i)]);for(;s<t.length&&U(t[s],i,o);)o.add(g(t[s])),s+=1}const a=t.slice(r,s);a.length>1?e.push({kind:"fanout",key:`fanout-${i.id}`,messages:a,recipients:a.map(H),createdAt:i.createdAt,previousCreatedAt:n}):e.push({kind:"message",key:i.id,message:i,previousCreatedAt:n}),n=a.at(-1).createdAt,r=s}return e}function Y(t){return t.kind==="fanout"?t.createdAt:t.message.createdAt}function Ft(t,e){return e===0||!B(t.previousCreatedAt,Y(t))}function Lt(t){return t.historyRestorePending||!(!!t.newestMessageId||t.showTyping)?"none":t.initialScrollDone?t.nearBottom&&(t.newestMessageId&&t.newestMessageId!==t.previousNewestMessageId||t.showTyping&&!t.previousShowTyping)?"smooth":"none":"instant"}function b(t,e){if(e<=0)return!0;const n=t[e-1];return!n||/\s/.test(n)}function Wt(t,e){if(e===0)return null;let n=e-1;for(;n>=0;){const i=t[n];if(i==="/")break;if(!i||/\s/.test(i))return null;n-=1}if(n<0||t[n]!=="/"||!b(t,n))return null;const r=t.slice(n+1,e);return/[^a-zA-Z0-9_-]/.test(r)?null:{start:n,query:r}}function $t(t,e){if(e===0)return null;let n=e-1;for(;n>=0;){const i=t[n];if(i==="@")break;if(!i||/\s/.test(i))return null;n-=1}if(n<0||t[n]!=="@"||!b(t,n))return null;const r=t.slice(n+1,e);return/[^a-zA-Z0-9._/:-]/.test(r)?null:{start:n,query:r}}function K(t){if(!t)return null;const e=t.replace(/[\\/]+$/,"");return e?e.split(/[\\/]/).filter(Boolean).at(-1)??e:null}function Bt(t){return t.kind==="direct"&&t.agentName?t.agentName:t.kind==="direct"&&t.agentId?d(t.agentId)??t.agentId:t.title.replace(/\s*<>\s*/g," · ")}function qt(t){switch(t){case"status":return"Status";case"system":return"System";case"scout.dispatch":return"Dispatch";default:return null}}function j(t){return[...t].sort((e,n)=>W(e.createdAt,n.createdAt))}function Et(t){return t.filter(c).sort((e,n)=>v(e.startedAt,n.startedAt))[0]??null}function Pt(t,e){try{return JSON.stringify(t)===JSON.stringify(e)?t:e}catch{return e}}function Q(t){const e=t?.dispatchOutcome;if(!e||typeof e!="object"||Array.isArray(e))return null;const n=e,r=typeof n.status=="string"?n.status.trim():"";if(!r)return null;const i=typeof n.reason=="string"?n.reason:null,s=typeof n.checkedAt=="number"?n.checkedAt:typeof n.checkedAt=="string"&&Number.isFinite(Number(n.checkedAt))?Number(n.checkedAt):null;return{status:r,reason:i,checkedAt:s}}function xt(t,e,n,r){const i=r&&r.id===t.id?r:null;return{id:t.id,invocationId:t.invocationId,agentId:t.targetAgentId||n,agentName:i?.agentName??null,conversationId:e,collaborationRecordId:i?.collaborationRecordId??null,state:t.state,summary:t.summary??null,startedAt:t.startedAt??i?.startedAt??null,completedAt:t.completedAt??null,sessions:i?.sessions??[],dispatchOutcome:Q(t.metadata)}}function zt(){return{generatedAt:Date.now(),totals:{active:0,recentCompleted:0,needsAttention:0,activity:0},activeAsks:[],recentCompleted:[],needsAttention:[],activity:[]}}function Vt(t,e,n,r){if(!e)return[];const i=u(e.startedAt)??0,s=new Set;return t.filter(a=>a.flightId===e.id||a.invocationId===e.invocationId?!0:!r||a.agentId!==r||a.conversationId!==n?!1:(u(a.ts)??0)>=i).filter(a=>s.has(a.id)?!1:(s.add(a.id),!0)).sort((a,o)=>v(a.ts,o.ts))}function Gt(t,e,n,r){return e?t.find(i=>i.flightId===e.id||i.invocationId===e.invocationId)??t.find(i=>i.conversationId===n&&(!r||i.agentId===r)&&(i.status==="queued"||i.status==="working"))??null:null}const J=/\[ask:([^\]]+)\]/i,D=/\[ask:[^\]]+\]\s*/gi;function Ht(t){const e=t.match(J);return e?{flightId:e[1]?.trim()??"",body:t.replace(D,"").trim()}:null}function Z(t){const e=t.replace(D,"").split(/\r?\n/).map(r=>r.trim()).find(Boolean)??"",n=72;return e.length>n?`${e.slice(0,n-1).trimEnd()}…`:e}function Ut(t){const{flightId:e,replyToMessageId:n,messagesById:r,agents:i,operatorName:s}=t;if(!n)return null;const a=r.get(n);if(!a)return null;const o=Z(a.body);if(!o)return null;const l=C(a,s)?s:rt(a.actorId,i,s);return{flightId:e,originatingMessageId:n,title:o,from:l,status:"done"}}function Yt(t,e,n){return t.find(r=>r.status==="needs_attention"&&r.conversationId===e)??t.find(r=>r.status==="needs_attention"&&!r.conversationId&&!!n&&r.agentId===n)??null}function w(t){const e=t.summary?.trim();if(e)return e;const n=t.title?.trim();return n||null}function X(t){return t===1?"1 update":`${t} updates`}function Kt(t){const{currentFlight:e,presence:n,turnActivity:r,turnAsk:i,awaitingResponseSince:s,nowMs:a}=t,o=r.find(N=>w(N)),l=S(e),R=(o?w(o):null)??(l?null:i?.summary?.trim())??i?.task?.trim()??(l?null:e?.summary?.trim())??n.detail,f=u(e?.startedAt)??u(i?.startedAt)??u(s),p=u(o?.ts)??u(i?.updatedAt)??f,h=r.length+(i?.acknowledgedAt?1:0);return{latest:R,activityLabel:h>0?X(h):"No activity yet",elapsedLabel:f?y(f,a):"now",lastActivityLabel:p?y(p,a):"now"}}function jt(t){const e=t.metadata?.scoutDispatch;if(!e||typeof e!="object")return null;const n=e;return!n.id||!n.kind||!Array.isArray(n.candidates)?null:n}function C(t,e){if(t.class==="operator"||t.actorId==="operator")return!0;const n=t.actorName?.toLowerCase()??"";return n===e.toLowerCase()||n==="operator"||n==="you"}function tt(t){const e=t.metadata?.returnAddress;if(!e||typeof e!="object")return null;const n=e.actorId;return typeof n=="string"&&n.trim().length>0?n.trim():null}function m(t,e){const n=t.metadata?.returnAddress;if(!n||typeof n!="object")return null;const r=n[e];return typeof r=="string"&&r.trim().length>0?r.trim():null}function M(t){const e=t?.trim();return e?e.replace(/^@+/,"").toLowerCase():null}function et(t){return new Set([t.id,t.handle,t.selector,t.defaultSelector,t.conversationId].map(M).filter(e=>e!==null))}function I(t,e){for(const n of e){const r=M(n);if(!r)continue;const i=t.filter(s=>et(s).has(r));if(i.length===1)return i[0]}return null}function Qt(t,e,n){const r=t.actorId??tt(t),i=I(e,[r,m(t,"selector"),m(t,"defaultSelector"),m(t,"handle")]);if(i)return i;if(n){const a=I(e,[n]);if(a)return a}if(!t.actorName)return null;const s=e.filter(a=>a.name===t.actorName);return s.length===1?s[0]:null}function Jt(t,e){return t.reduce((n,r)=>{if(C(r,e))return n;const i=u(r.createdAt);return i===null?n:n===null||i>n?i:n},null)}function nt(t,e){switch(e){case"queued":return`${t} has your message and is waiting to start.`;case"waking":return`${t} is waking up now.`;case"waiting":return`${t} is thinking through the request.`;case"running":return`${t} is working on your request.`;default:return`${t} is working on it.`}}function rt(t,e,n){return!t||t==="operator"?n:e.find(i=>i.id===t)?.name??d(t)??t}function Zt(t){const{agentName:e,agentState:n,sending:r,currentFlight:i,showWorkingTurn:s,awaitingResponse:a}=t;if(r&&!i)return{label:"Sending",detail:`Handing your message to ${e}.`,tone:"pending",showStrip:!0,showTyping:!1};if(!i&&a)return{label:"Starting",detail:`${e} is opening the session and routing your request.`,tone:"pending",showStrip:!0,showTyping:!0};if(i&&s){const o=i.summary?.trim()||nt(e,i.state);switch(i.state){case"queued":return{label:"Queued",detail:o,tone:"pending",showStrip:!0,showTyping:!0};case"waking":return{label:"Coming online",detail:o,tone:"working",showStrip:!0,showTyping:!0};case"waiting":return{label:"Thinking",detail:o,tone:"working",showStrip:!0,showTyping:!0};default:return{label:"Working",detail:o,tone:"working",showStrip:!0,showTyping:!0}}}return O(n)?{label:"Ready",detail:`${e} is ready.`,tone:"idle",showStrip:!1,showTyping:!1}:{label:"Not ready",detail:`${e} is not ready right now. Sending a message will try to wake it up.`,tone:"offline",showStrip:!0,showTyping:!1}}function Xt(t,e){switch(t.tone){case"pending":return"var(--accent)";case"working":return"var(--green)";case"quiet":return"var(--amber)";case"offline":return"var(--dim)";default:return F(e)}}function te(t){return t.startsWith("c.")?`c.${t.slice(2,10)}`:t.length>22?`${t.slice(0,10)}...${t.slice(-7)}`:t}function ee(t){return"Chat ID"}function ne(t){const e=new Map;for(const n of t){const r=K(n.workspaceRoot)??"General",i=e.get(r)??[];i.push(n),e.set(r,i)}return Array.from(e.entries()).map(([n,r])=>({workspace:n,sessions:r.sort((i,s)=>(s.lastMessageAt??0)-(i.lastMessageAt??0))}))}function re(t,e,n){if(!t)return null;const r=L(t.state);if(e.some(s=>s.agentId===t.id&&s.conversationId===n&&c(s))){const s=e.find(a=>a.agentId===t.id&&a.conversationId===n&&c(a));return s?.state==="running"?"running tool":s?.state==="waiting"?"thinking":"working"}return r==="in_turn"||r==="in_flight"?"typing":null}function ie(t){switch(t){case"tool-result":return"Result";case"tool":return"Tool";case"assistant":return"Agent";case"user":return"User";case"message":return"Message";default:return t.replace(/[-_]/g," ")}}export{Nt as $,j as A,vt as B,ot as C,Et as D,Vt as E,Gt as F,Wt as G,$t as H,Jt as I,ht as J,yt as K,S as L,Dt as M,Zt as N,Kt as O,St as P,Ot as Q,rt as R,wt as S,It as T,At as U,P as V,xt as W,x as X,Lt as Y,C as Z,Rt as _,E as a,Qt as a0,Ft as a1,jt as a2,Ht as a3,Ut as a4,A as a5,_t as a6,Ct as a7,qt as a8,Mt as a9,kt as aa,ft as b,d as c,mt as d,dt as e,lt as f,pt as g,Tt as h,gt as i,bt as j,ct as k,c as l,ut as m,ie as n,ne as o,re as p,Bt as q,I as r,K as s,w as t,Xt as u,Pt as v,ee as w,te as x,Yt as y,zt as z};
@@ -0,0 +1 @@
1
+ import{g as a,a as t,c as e}from"./gestures-BXIGYk_p.js";import"./index-Bli6bTLU.js";import"./use-reduced-motion-BLn59zLn.js";const r={renderer:e,...t,...a};export{r as default};
@@ -1 +1 @@
1
- import{c}from"./createLucideIcon-Bt67PWH-.js";const e=[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]],t=c("copy",e);export{t as C};
1
+ import{c}from"./createLucideIcon-DLlxGjKt.js";const e=[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]],t=c("copy",e);export{t as C};
@@ -0,0 +1 @@
1
+ import{c as h}from"./createLucideIcon-DLlxGjKt.js";const t=[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]],d=h("cpu",t);export{d as C};
@@ -1 +1 @@
1
- import{r as s}from"./index-o4FKpU7Z.js";const l=(...t)=>t.filter((e,r,o)=>!!e&&e.trim()!==""&&o.indexOf(e)===r).join(" ").trim();const C=t=>t.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const f=t=>t.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,r,o)=>o?o.toUpperCase():r.toLowerCase());const i=t=>{const e=f(t);return e.charAt(0).toUpperCase()+e.slice(1)};var w={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const h=t=>{for(const e in t)if(e.startsWith("aria-")||e==="role"||e==="title")return!0;return!1};const g=s.forwardRef(({color:t="currentColor",size:e=24,strokeWidth:r=2,absoluteStrokeWidth:o,className:n="",children:a,iconNode:u,...c},p)=>s.createElement("svg",{ref:p,...w,width:e,height:e,stroke:t,strokeWidth:o?Number(r)*24/Number(e):r,className:l("lucide",n),...!a&&!h(c)&&{"aria-hidden":"true"},...c},[...u.map(([m,d])=>s.createElement(m,d)),...Array.isArray(a)?a:[a]]));const b=(t,e)=>{const r=s.forwardRef(({className:o,...n},a)=>s.createElement(g,{ref:a,iconNode:e,className:l(`lucide-${C(i(t))}`,`lucide-${t}`,o),...n}));return r.displayName=i(t),r};export{b as c};
1
+ import{r as s}from"./index-Bli6bTLU.js";const l=(...t)=>t.filter((e,r,o)=>!!e&&e.trim()!==""&&o.indexOf(e)===r).join(" ").trim();const C=t=>t.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const f=t=>t.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,r,o)=>o?o.toUpperCase():r.toLowerCase());const i=t=>{const e=f(t);return e.charAt(0).toUpperCase()+e.slice(1)};var w={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const h=t=>{for(const e in t)if(e.startsWith("aria-")||e==="role"||e==="title")return!0;return!1};const g=s.forwardRef(({color:t="currentColor",size:e=24,strokeWidth:r=2,absoluteStrokeWidth:o,className:n="",children:a,iconNode:u,...c},p)=>s.createElement("svg",{ref:p,...w,width:e,height:e,stroke:t,strokeWidth:o?Number(r)*24/Number(e):r,className:l("lucide",n),...!a&&!h(c)&&{"aria-hidden":"true"},...c},[...u.map(([m,d])=>s.createElement(m,d)),...Array.isArray(a)?a:[a]]));const b=(t,e)=>{const r=s.forwardRef(({className:o,...n},a)=>s.createElement(g,{ref:a,iconNode:e,className:l(`lucide-${C(i(t))}`,`lucide-${t}`,o),...n}));return r.displayName=i(t),r};export{b as c};
@@ -0,0 +1 @@
1
+ import{a as p}from"./api-DEHEgJ9m.js";class a extends Error{code;cause;constructor(e,t,r){super(t),this.name="HudVaultError",this.code=e,this.cause=r}}function l(n){const e=new Uint8Array(new ArrayBuffer(n.byteLength));return e.set(n),e}const d="items",y="keys",h="master";class m{service;dbPromise;cryptoKeyPromise;constructor(e){this.service=e.service}async set(e,t){const r=new TextEncoder().encode(t);await this.setBytes(e,r)}async get(e){const t=await this.getBytes(e);if(!t)return null;try{return new TextDecoder().decode(t)}catch(r){throw new a("encoding_failed","value is not valid UTF-8",r)}}async delete(e){await this.idbDelete(d,e)}async setBytes(e,t){const r=await this.getOrCreateCryptoKey(),i=crypto.getRandomValues(new Uint8Array(12));let c;try{c=await crypto.subtle.encrypt({name:"AES-GCM",iv:i},r,l(t))}catch(o){throw new a("crypto_failed","AES-GCM encrypt failed",o)}await this.idbWrite(d,e,{iv:i,ct:new Uint8Array(c)})}async getBytes(e){const t=await this.idbRead(d,e);if(!t)return null;const r=await this.getOrCreateCryptoKey();try{const i=await crypto.subtle.decrypt({name:"AES-GCM",iv:l(t.iv)},r,l(t.ct));return new Uint8Array(i)}catch(i){throw new a("crypto_failed","AES-GCM decrypt failed",i)}}getOrCreateCryptoKey(){return this.cryptoKeyPromise?this.cryptoKeyPromise:(this.cryptoKeyPromise=(async()=>{if(typeof crypto>"u"||!crypto.subtle)throw new a("crypto_unsupported","crypto.subtle is not available");const e=await this.idbRead(y,h);if(e)return e;let t;try{t=await crypto.subtle.generateKey({name:"AES-GCM",length:256},!1,["encrypt","decrypt"])}catch(r){throw new a("crypto_failed","AES-GCM key generation failed",r)}return await this.idbWrite(y,h,t),t})(),this.cryptoKeyPromise)}getDB(){return this.dbPromise?this.dbPromise:(this.dbPromise=new Promise((e,t)=>{if(typeof indexedDB>"u"){t(new a("idb_unsupported","IndexedDB is not available"));return}const r=indexedDB.open(`hudvault:${this.service}`,1);r.onupgradeneeded=()=>{const i=r.result;i.objectStoreNames.contains(d)||i.createObjectStore(d),i.objectStoreNames.contains(y)||i.createObjectStore(y)},r.onsuccess=()=>e(r.result),r.onerror=()=>t(new a("idb_failed",u("open",r.error),r.error))}),this.dbPromise)}async idbRead(e,t){const r=await this.getDB();return new Promise((i,c)=>{const s=r.transaction(e,"readonly").objectStore(e).get(t);s.onsuccess=()=>i(s.result),s.onerror=()=>c(new a("idb_failed",u("read",s.error),s.error))})}async idbWrite(e,t,r){const i=await this.getDB();await new Promise((c,o)=>{const s=i.transaction(e,"readwrite");s.oncomplete=()=>c(),s.onerror=()=>o(new a("idb_failed",u("write",s.error),s.error)),s.objectStore(e).put(r,t)})}async idbDelete(e,t){const r=await this.getDB();await new Promise((i,c)=>{const o=r.transaction(e,"readwrite");o.oncomplete=()=>i(),o.onerror=()=>c(new a("idb_failed",u("delete",o.error),o.error)),o.objectStore(e).delete(t)})}}function u(n,e){return`IndexedDB ${n} failed${e?.message?`: ${e.message}`:""}`}const g="dev.openscout.credentials",w="openai_api_key",f=new m({service:g});async function b(){const e=(await f.get(w))?.trim();return e&&e.startsWith("sk-")?e:null}async function K(n){const e=n.trim();if(!e.startsWith("sk-"))throw new Error("OpenAI API keys should start with sk-.");await f.set(w,e)}async function O(){await f.delete(w)}async function S(n){return p("/api/scoutbot/credentials/openai",{method:"POST",body:JSON.stringify({apiKey:n.trim()})})}async function _(){return p("/api/scoutbot/credentials/openai",{method:"DELETE"})}async function E(){return p("/api/scoutbot/credentials")}async function P(){const n=await E();if(n.openai.configured)return n;const e=await b();return e?S(e):null}async function C(){const n=await b();return{configured:!!n,preview:n?A(n):null}}function A(n){return n.length<=10?"configured":`${n.slice(0,5)}...${n.slice(-4)}`}export{E as a,K as b,_ as c,O as d,P as e,C as g,S as s};