@qredence/fleet 0.8.0 → 0.9.0

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 (165) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/dist/web/client/assets/DialogTitle-BlVq-tcv.js +1 -0
  3. package/dist/web/client/assets/FloatingPortal-D8-EPDs2.js +1 -0
  4. package/dist/web/client/assets/activity-BPIKUzOU.js +1 -0
  5. package/dist/web/client/assets/agents-CGjUBYX7.js +2 -0
  6. package/dist/web/client/assets/agents-page-CTuFJL9H.js +1 -0
  7. package/dist/web/client/assets/alert-CzWGeumf.js +1 -0
  8. package/dist/web/client/assets/alert-dialog-D-e1Pr4q.js +1 -0
  9. package/dist/web/client/assets/artifacts-panel-6JEdy6jU.js +1 -0
  10. package/dist/web/client/assets/badge-CzQFgmVK.js +1 -0
  11. package/dist/web/client/assets/chat-command-palette-Bxr5EkO6.js +1 -0
  12. package/dist/web/client/assets/chat-hpzV6IA6.js +57 -0
  13. package/dist/web/client/assets/chat-queries-CfZiupub.js +3 -0
  14. package/dist/web/client/assets/clock-3-BwWCSCm_.js +1 -0
  15. package/dist/web/client/assets/{command-imgUMV3r.js → command-xo-NK4xO.js} +1 -1
  16. package/dist/web/client/assets/connectors-CFxLqG2x.js +2 -0
  17. package/dist/web/client/assets/connectors-page-DQJdoAnl.js +1 -0
  18. package/dist/web/client/assets/create-project-dialog-Db-WhUmP.js +1 -0
  19. package/dist/web/client/assets/dialog-CK8dym6z.js +1 -0
  20. package/dist/web/client/assets/{fork-picker-dialog-Cgi48NnT.js → fork-picker-dialog-DSaFeUii.js} +1 -1
  21. package/dist/web/client/assets/globals-DJhWyayo.css +2 -0
  22. package/dist/web/client/assets/index-C9FHZDGw.js +13 -0
  23. package/dist/web/client/assets/{input-7g8_nw-Z.js → input-CBoTMPC_.js} +1 -1
  24. package/dist/web/client/assets/{input-group-Nq03Qums.js → input-group-BFubAtz9.js} +1 -1
  25. package/dist/web/client/assets/mcp-connections-section-DEo6Kemv.js +2 -0
  26. package/dist/web/client/assets/message-queue-Btjt9wK2.js +1 -0
  27. package/dist/web/client/assets/{model-selector-list-Cp687pdm.js → model-selector-list-CbDAT0Rw.js} +1 -1
  28. package/dist/web/client/assets/mutation-Da9zdeWr.js +1 -0
  29. package/dist/web/client/assets/notify-BIL0-CGy.js +1 -0
  30. package/dist/web/client/assets/open-panel-action-message-SdA1VU42.js +1 -0
  31. package/dist/web/client/assets/openui-renderer-DG-iML7M.js +291 -0
  32. package/dist/web/client/assets/pencil-Cbgq3ybX.js +1 -0
  33. package/dist/web/client/assets/plus-DUP2JPVG.js +1 -0
  34. package/dist/web/client/assets/product-page-header-Ck6I13CE.js +1 -0
  35. package/dist/web/client/assets/provider-catalog-CLEDlH_v.js +1 -0
  36. package/dist/web/client/assets/provider-label-BItazQ6H.js +1 -0
  37. package/dist/web/client/assets/right-panel-context-CjX-HkDO.js +1 -0
  38. package/dist/web/client/assets/right-panel-registry-BAJ6TuEY.js +2 -0
  39. package/dist/web/client/assets/rotate-ccw-DLkfsmG9.js +1 -0
  40. package/dist/web/client/assets/routes-ja_liP8Z.js +14 -0
  41. package/dist/web/client/assets/select-DYh951qi.js +1 -0
  42. package/dist/web/client/assets/{session-activity-panel-Bc4-HSfb.js → session-activity-panel-DwaXiSrS.js} +1 -1
  43. package/dist/web/client/assets/{session-insights-panel-D0v_DKcb.js → session-insights-panel-BXEmuJKf.js} +1 -1
  44. package/dist/web/client/assets/{session-tool-renderer-C7mYeUOs.js → session-tool-renderer-DEABxZG3.js} +25 -25
  45. package/dist/web/client/assets/{session-tree-panel-By9m9tGB.js → session-tree-panel-5QgMvXoX.js} +1 -1
  46. package/dist/web/client/assets/settings-dialog-DiikSLhF.js +1 -0
  47. package/dist/web/client/assets/sparkles-CASAe1AI.js +1 -0
  48. package/dist/web/client/assets/{subagent-chat-panel-DsPmLZSf.js → subagent-chat-panel-R2RoX1Yt.js} +1 -1
  49. package/dist/web/client/assets/subagent-transcript-DVZhMo7a.js +1 -0
  50. package/dist/web/client/assets/{subagents-panel-gQ9BLfV3.js → subagents-panel-CMMRUP8F.js} +1 -1
  51. package/dist/web/client/assets/switch-BrxDfsX6.js +1 -0
  52. package/dist/web/client/assets/toast-BNWkgZ0u.js +1 -0
  53. package/dist/web/client/assets/{tool-output-normalizer-CADgEiI4.js → tool-output-normalizer-DDU09Zc6.js} +1 -1
  54. package/dist/web/client/assets/tool-part-normalizer-CF6bmJ0s.js +4 -0
  55. package/dist/web/client/assets/tool-result-7qREIVv_.js +5 -0
  56. package/dist/web/client/assets/tool-timeline-CGhwMeNl.js +2 -0
  57. package/dist/web/client/assets/trash-sm2UyOxe.js +1 -0
  58. package/dist/web/client/assets/types-gIgIxnnG.js +1 -0
  59. package/dist/web/client/assets/useNavigate-CVhM7pag.js +1 -0
  60. package/dist/web/client/assets/useRender-CzJUrRlB.js +1 -0
  61. package/dist/web/client/assets/useScrollLock-BcsteNzT.js +1 -0
  62. package/dist/web/client/assets/with-selector-B_VDO56x.js +1 -0
  63. package/dist/web/client/bundle-budget.json +6 -6
  64. package/dist/web/server/{_tanstack-start-manifest_v-BiNPG4xt-BZTMSM2I.js → _tanstack-start-manifest_v-B6ne-00G-OFX7UD4K.js} +44 -23
  65. package/dist/web/server/agents-BwzqhPjK-ANFHE5AG.js +22 -0
  66. package/dist/web/server/agents-page-DEqPV-eG-BR5MR74O.js +215 -0
  67. package/dist/web/server/{artifacts-panel-CqGBNU4q-UHNMC7PK.js → artifacts-panel-DLO8OfXb-B2ZWCDFP.js} +27 -17
  68. package/dist/web/server/{chat-command-palette-B94-zIEz-ES2ZB4ZF.js → chat-command-palette-CaDQAMAu-KDH7BTDS.js} +22 -13
  69. package/dist/web/server/chunk-2ETDIMNM.js +40 -0
  70. package/dist/web/server/{chunk-2VKVSL6Y.js → chunk-35RIM6VP.js} +128 -127
  71. package/dist/web/server/{chunk-SI5IQSG4.js → chunk-5IE54MRG.js} +8 -7
  72. package/dist/web/server/chunk-5MOXRFX6.js +826 -0
  73. package/dist/web/server/{chunk-FB2QLQTN.js → chunk-6AFVCERK.js} +12 -13
  74. package/dist/web/server/chunk-6GYLXDX3.js +588 -0
  75. package/dist/web/server/chunk-7DQQMT5V.js +8993 -0
  76. package/dist/web/server/chunk-APOS34PW.js +8965 -0
  77. package/dist/web/server/{chunk-YQO36OP6.js → chunk-AXN2OBPF.js} +2 -4
  78. package/dist/web/server/{chunk-E6T36NM5.js → chunk-B5FKCW75.js} +36 -353
  79. package/dist/web/server/chunk-BD7YKYWL.js +1007 -0
  80. package/dist/web/server/{chunk-BAHZXA4D.js → chunk-BZ2EAUZZ.js} +10 -12
  81. package/dist/web/server/chunk-CE7U5QB2.js +42 -0
  82. package/dist/web/server/{chunk-LTTBT3J7.js → chunk-FNV3WZXL.js} +5 -9
  83. package/dist/web/server/{chunk-2FHYWKDN.js → chunk-FSQWWR2M.js} +46 -16
  84. package/dist/web/server/chunk-FT7HNDR5.js +143 -0
  85. package/dist/web/server/chunk-GNXIDE26.js +44 -0
  86. package/dist/web/server/{chunk-EAKPTSWR.js → chunk-HAFELESQ.js} +5 -7
  87. package/dist/web/server/{chunk-K67IDUAI.js → chunk-HUHUPGHT.js} +42 -32
  88. package/dist/web/server/{chunk-WSK55TKE.js → chunk-KBMRRJQN.js} +96 -10
  89. package/dist/web/server/chunk-KDCSEISZ.js +6890 -0
  90. package/dist/web/server/chunk-KSGGSGOA.js +50 -0
  91. package/dist/web/server/chunk-OO7NBFQQ.js +15 -0
  92. package/dist/web/server/{chunk-EL2JCDAM.js → chunk-PQVTLG3E.js} +9 -9
  93. package/dist/web/server/{chunk-LQM6QR7S.js → chunk-Q4ECIATK.js} +61 -47
  94. package/dist/web/server/{chunk-CZLGB3NE.js → chunk-R4BS3KYI.js} +2 -4
  95. package/dist/web/server/chunk-RX2ZJARF.js +73 -0
  96. package/dist/web/server/chunk-TOJA3X5N.js +421 -0
  97. package/dist/web/server/chunk-TQ2RECTH.js +193 -0
  98. package/dist/web/server/{chunk-ABMGW6QH.js → chunk-TTNONWZZ.js} +15871 -15660
  99. package/dist/web/server/chunk-TXZDDJCT.js +5115 -0
  100. package/dist/web/server/{chunk-SGAQVAYL.js → chunk-UDUG3MYZ.js} +2 -2
  101. package/dist/web/server/{chunk-5GUEYYYO.js → chunk-V2GCVTDP.js} +4583 -13665
  102. package/dist/web/server/{chunk-OAYEN3JV.js → chunk-VDEUVEWL.js} +2253 -1
  103. package/dist/web/server/chunk-VM3U6PUU.js +769 -0
  104. package/dist/web/server/connectors-C0xm91Ss-DJVBGD73.js +22 -0
  105. package/dist/web/server/connectors-page-B6tJNZ6c-R5K4NSAT.js +66 -0
  106. package/dist/web/server/{create-project-dialog-CFPX6Ihl-EO4XTINS.js → create-project-dialog-PFPHHWIV-GH7JR5IK.js} +25 -14
  107. package/dist/web/server/{fork-picker-dialog-B2RBFzoZ-R6GXPSPL.js → fork-picker-dialog-DFpKOdAw-JPLJSYYU.js} +7 -10
  108. package/dist/web/server/{markdown-BvCfOB26-VDH4YOQD.js → markdown-Cc8V9dOF-JTNTJKQU.js} +5 -6
  109. package/dist/web/server/{markdown-code-SYc-BQvp-MR4FXT5C.js → markdown-code-gaRnbgNM-V5LIRYCD.js} +7 -8
  110. package/dist/web/server/{message-queue-D32rLiJo-HEBRGH5B.js → message-queue-nQ2_kU82-KKSLYR4S.js} +7 -14
  111. package/dist/web/server/{model-selector-list-DKzt_xEN-5ZPU6XDY.js → model-selector-list-By_G7_Hr-GXT27BZO.js} +12 -14
  112. package/dist/web/server/{openui-renderer-CeVtOdYl-PY37PCJI.js → openui-renderer-B9D8-Av--LFZP4U5V.js} +20 -13
  113. package/dist/web/server/{prompt-suggestions-CpTK_fHV-Q4ILLZKC.js → prompt-suggestions-B67Uy5Rk-5SMTSIFQ.js} +5 -4
  114. package/dist/web/server/{repl-panel-1kSS1UGd-DDM5ADGZ.js → repl-panel-1kSS1UGd-POXRYDDJ.js} +2 -3
  115. package/dist/web/server/{resources-panel-S4NHlpz7-NF7WYYSR.js → resources-panel-CTzOOKPz-5G6RS2D6.js} +18 -10
  116. package/dist/web/server/router-CnBux_Ld-YTVBMJFL.js +23 -0
  117. package/dist/web/server/routes-BUGzvQoO-WW43X7W2.js +124 -0
  118. package/dist/web/server/server.js +3 -3
  119. package/dist/web/server/{session-activity-panel-Bz2GrdMk-PCOXG46X.js → session-activity-panel-f0d3fCm7-I6L5IKFQ.js} +18 -10
  120. package/dist/web/server/{session-insights-panel-CfMX2NRu-6HWZTTAC.js → session-insights-panel-BiVObm_6-AP4FITT7.js} +2 -12
  121. package/dist/web/server/{session-reasoning-panel-CpiTdyQz-O3B5CDKS.js → session-reasoning-panel-QIt_xjP0-FKJWMNHO.js} +17 -9
  122. package/dist/web/server/session-tool-renderer-Cg_ZPHxS-BNQKNJNZ.js +34 -0
  123. package/dist/web/server/{session-tree-panel-CzkE0RFB-P4KWA7S2.js → session-tree-panel-B--el8O5-NZOZJM5L.js} +18 -11
  124. package/dist/web/server/{settings-dialog-BUgVNpr1-THSYIOZL.js → settings-dialog-D_eJN2ia-W47Y474K.js} +102 -790
  125. package/dist/web/server/{subagent-chat-panel-mw3kEFfK-CDYX7LST.js → subagent-chat-panel-C9nWP21E-D5C2TTYD.js} +23 -15
  126. package/dist/web/server/{subagents-panel-2ZJfYrXG-NDJKHJHD.js → subagents-panel-fAKvBNRG-O7QHXNE2.js} +24 -17
  127. package/dist/web/server/{workspace-panel-xznrPDLt-QCJRZOF3.js → workspace-panel-CZMNMU63-SYOSM3B7.js} +23 -15
  128. package/package.json +1 -1
  129. package/dist/web/client/assets/DialogTitle-RY2UDuCY.js +0 -1
  130. package/dist/web/client/assets/FloatingPortal-XC0MCNnD.js +0 -1
  131. package/dist/web/client/assets/action-swap-BWRUNKQA.js +0 -1
  132. package/dist/web/client/assets/alert-dialog-DGNvg0B1.js +0 -1
  133. package/dist/web/client/assets/artifacts-panel-BGXpKRJ7.js +0 -1
  134. package/dist/web/client/assets/badge-DM06QVqB.js +0 -57
  135. package/dist/web/client/assets/chat-command-palette-PenyaZBw.js +0 -1
  136. package/dist/web/client/assets/create-project-dialog-C00d5yCq.js +0 -1
  137. package/dist/web/client/assets/dialog-zCNOQI63.js +0 -1
  138. package/dist/web/client/assets/globals-BuMuB_ea.css +0 -2
  139. package/dist/web/client/assets/index-BqBdQGWs.js +0 -13
  140. package/dist/web/client/assets/message-queue-sSljtjYz.js +0 -1
  141. package/dist/web/client/assets/mutation-DOi2Qgfa.js +0 -1
  142. package/dist/web/client/assets/notify-Cqdu6EV8.js +0 -1
  143. package/dist/web/client/assets/openui-renderer-BdYTcn-_.js +0 -291
  144. package/dist/web/client/assets/provider-label-QrVOwKBO.js +0 -1
  145. package/dist/web/client/assets/right-panel-context-DHKWoetk.js +0 -1
  146. package/dist/web/client/assets/right-panel-registry-BaLZiKny.js +0 -2
  147. package/dist/web/client/assets/routes-BkFkhfO3.js +0 -16
  148. package/dist/web/client/assets/select-BhV4ikeN.js +0 -1
  149. package/dist/web/client/assets/settings-dialog-Dpt4Ha_m.js +0 -2
  150. package/dist/web/client/assets/sparkles-BwVa9zQJ.js +0 -1
  151. package/dist/web/client/assets/subagent-transcript-CNQ9wGk2.js +0 -1
  152. package/dist/web/client/assets/switch-C7Myu-Dt.js +0 -1
  153. package/dist/web/client/assets/toast-DlbKi6K-.js +0 -1
  154. package/dist/web/client/assets/tool-part-normalizer-CYK62WZM.js +0 -4
  155. package/dist/web/client/assets/tool-result-bjAGZ2qm.js +0 -5
  156. package/dist/web/client/assets/tool-timeline-eNqH1zj7.js +0 -2
  157. package/dist/web/client/assets/types-D5hZ8IyV.js +0 -1
  158. package/dist/web/client/assets/useRender-Bbk_fl72.js +0 -1
  159. package/dist/web/server/chunk-2PAW6K4Q.js +0 -56
  160. package/dist/web/server/chunk-7L5PCCYR.js +0 -2287
  161. package/dist/web/server/chunk-FB3UHLLN.js +0 -49
  162. package/dist/web/server/chunk-OSPDNT7S.js +0 -25404
  163. package/dist/web/server/router-DVKxZik_-254GZAJW.js +0 -30
  164. package/dist/web/server/routes-BTxAklRp-UM7ZTLLP.js +0 -140
  165. package/dist/web/server/session-tool-renderer-BZiOxtt1-T3ZGAQKX.js +0 -26
@@ -6,16 +6,26 @@ import {
6
6
  CommandItem,
7
7
  CommandList,
8
8
  CommandSeparator
9
- } from "./chunk-BAHZXA4D.js";
10
- import "./chunk-EAKPTSWR.js";
9
+ } from "./chunk-BZ2EAUZZ.js";
10
+ import "./chunk-HAFELESQ.js";
11
11
  import "./chunk-BC4GIC2P.js";
12
+ import "./chunk-FT7HNDR5.js";
12
13
  import {
13
- RIGHT_PANEL_LAUNCHER_DEFINITIONS
14
- } from "./chunk-5GUEYYYO.js";
15
- import "./chunk-OSPDNT7S.js";
16
- import "./chunk-2PAW6K4Q.js";
17
- import "./chunk-2FHYWKDN.js";
18
- import "./chunk-FB3UHLLN.js";
14
+ RIGHT_PANEL_DEFINITIONS
15
+ } from "./chunk-V2GCVTDP.js";
16
+ import "./chunk-VM3U6PUU.js";
17
+ import "./chunk-5MOXRFX6.js";
18
+ import "./chunk-RX2ZJARF.js";
19
+ import "./chunk-TQ2RECTH.js";
20
+ import "./chunk-CE7U5QB2.js";
21
+ import "./chunk-6GYLXDX3.js";
22
+ import "./chunk-KDCSEISZ.js";
23
+ import "./chunk-7DQQMT5V.js";
24
+ import "./chunk-BD7YKYWL.js";
25
+ import "./chunk-TXZDDJCT.js";
26
+ import "./chunk-APOS34PW.js";
27
+ import "./chunk-OO7NBFQQ.js";
28
+ import "./chunk-FSQWWR2M.js";
19
29
  import {
20
30
  Keyboard,
21
31
  Monitor,
@@ -24,14 +34,13 @@ import {
24
34
  RotateCcwClock,
25
35
  Square,
26
36
  Sun
27
- } from "./chunk-7L5PCCYR.js";
28
- import "./chunk-OAYEN3JV.js";
37
+ } from "./chunk-VDEUVEWL.js";
29
38
  import "./chunk-6JOAWERA.js";
30
- import "./chunk-2VKVSL6Y.js";
39
+ import "./chunk-35RIM6VP.js";
31
40
  import "./chunk-NXAVRSI5.js";
32
41
  import "./chunk-CZ7CSFO4.js";
33
42
 
34
- // web/app/dist/server/assets/chat-command-palette-B94-zIEz.js
43
+ // web/app/dist/server/assets/chat-command-palette-CaDQAMAu.js
35
44
  import { useState } from "react";
36
45
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
37
46
  function ChatCommandPalette({ open, onOpenChange, onNewSession, onStop, onResumeSession, onSetRightPanel, onThemeChange, sessions, isStreaming, themePreference }) {
@@ -77,7 +86,7 @@ function ChatCommandPalette({ open, onOpenChange, onNewSession, onStop, onResume
77
86
  /* @__PURE__ */ jsx(CommandSeparator, {}),
78
87
  /* @__PURE__ */ jsx(CommandGroup, {
79
88
  heading: "Panels",
80
- children: RIGHT_PANEL_LAUNCHER_DEFINITIONS.map((definition) => {
89
+ children: RIGHT_PANEL_DEFINITIONS.map((definition) => {
81
90
  const Icon = definition.icon;
82
91
  return /* @__PURE__ */ jsxs(CommandItem, {
83
92
  onSelect: () => handleSelect(() => onSetRightPanel(definition.id)),
@@ -0,0 +1,40 @@
1
+ import {
2
+ Link
3
+ } from "./chunk-35RIM6VP.js";
4
+
5
+ // web/app/dist/server/assets/product-page-header-BHO62yYL.js
6
+ import { jsx, jsxs } from "react/jsx-runtime";
7
+ function ProductPageHeader({ active }) {
8
+ return /* @__PURE__ */ jsxs("header", {
9
+ className: "flex h-14 items-center justify-between border-b border-border/70 px-5 sm:px-8",
10
+ children: [/* @__PURE__ */ jsx(Link, {
11
+ to: "/",
12
+ className: "text-sm font-semibold tracking-tight",
13
+ children: "Fleet Prime"
14
+ }), /* @__PURE__ */ jsxs("nav", {
15
+ "aria-label": "Main navigation",
16
+ className: "flex items-center gap-1",
17
+ children: [/* @__PURE__ */ jsx(NavLink, {
18
+ active: active === "agents",
19
+ to: "/agents",
20
+ children: "Agents"
21
+ }), /* @__PURE__ */ jsx(NavLink, {
22
+ active: active === "connectors",
23
+ to: "/connectors",
24
+ children: "Connectors"
25
+ })]
26
+ })]
27
+ });
28
+ }
29
+ function NavLink({ active, children, to }) {
30
+ return /* @__PURE__ */ jsx(Link, {
31
+ to,
32
+ "aria-current": active ? "page" : void 0,
33
+ className: `rounded-md px-3 py-1.5 text-sm transition-colors ${active ? "bg-muted font-medium text-foreground" : "text-muted-foreground hover:bg-muted/70 hover:text-foreground"}`,
34
+ children
35
+ });
36
+ }
37
+
38
+ export {
39
+ ProductPageHeader
40
+ };
@@ -6465,13 +6465,25 @@ function useNavigate(_defaultOpts) {
6465
6465
  }, [_defaultOpts?.from, router]);
6466
6466
  }
6467
6467
 
6468
- // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/matchContext.js
6469
- import * as React$15 from "react";
6470
- var matchContext = React$15.createContext(void 0);
6471
- var dummyMatchContext = React$15.createContext(void 0);
6468
+ // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/ClientOnly.js
6469
+ import React from "react";
6470
+ import { jsx } from "react/jsx-runtime";
6471
+ var getSnapshot = () => true;
6472
+ var getServerSnapshot = () => false;
6473
+ function ClientOnly({ children, fallback = null }) {
6474
+ return /* @__PURE__ */ jsx(React.Fragment, { children: useHydrated() ? children : fallback });
6475
+ }
6476
+ function useHydrated(enabled = true) {
6477
+ return React.useSyncExternalStore(subscribe, getSnapshot, enabled ? getServerSnapshot : getSnapshot);
6478
+ }
6479
+ function subscribe() {
6480
+ return () => {
6481
+ };
6482
+ }
6472
6483
 
6473
- // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/useMatch.js
6474
- import * as React$16 from "react";
6484
+ // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/link.js
6485
+ import * as React$15 from "react";
6486
+ import { jsx as jsx2 } from "react/jsx-runtime";
6475
6487
 
6476
6488
  // node_modules/.pnpm/@tanstack+store@0.11.2/node_modules/@tanstack/store/dist/alien.js
6477
6489
  // @__NO_SIDE_EFFECTS__
@@ -6829,120 +6841,9 @@ function useSelector(source, selector = (s) => s, options) {
6829
6841
  return useSyncExternalStoreWithSelector(subscribe2, getSnapshot2, getSnapshot2, selector, compare);
6830
6842
  }
6831
6843
 
6832
- // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/useMatch.js
6833
- var dummyMatch = {};
6834
- function useStructuralSharing(opts, router) {
6835
- const previousResult = React$16.useRef();
6836
- return (slice) => {
6837
- const selected = opts?.select ? opts.select(slice) : slice;
6838
- if (opts?.structuralSharing ?? router.options.defaultStructuralSharing) return previousResult.current = replaceEqualDeep(previousResult.current, selected);
6839
- return selected;
6840
- };
6841
- }
6842
- function useMatch(opts) {
6843
- const router = useRouter();
6844
- const nearestRouteId = React$16.useContext(opts.from ? dummyMatchContext : matchContext);
6845
- const routeId = opts.from ?? nearestRouteId;
6846
- const matchStore = router.stores.getMatchStore(routeId);
6847
- if (isServer ?? router.isServer) {
6848
- const match = matchStore.get();
6849
- if (!match) {
6850
- if (opts.shouldThrow ?? true) {
6851
- if (process.env.NODE_ENV !== "production") throw new Error(`Invariant failed: Could not find ${opts.from ? `an active match from "${opts.from}"` : "a nearest match!"}`);
6852
- invariant();
6853
- }
6854
- return;
6855
- }
6856
- return opts.select ? opts.select(match) : match;
6857
- }
6858
- const selector = useStructuralSharing(opts, router);
6859
- const matchSelection = useSelector(matchStore, (match) => match ? selector(match) : dummyMatch);
6860
- if (matchSelection !== dummyMatch) return matchSelection;
6861
- if (opts.shouldThrow ?? true) {
6862
- if (process.env.NODE_ENV !== "production") throw new Error(`Invariant failed: Could not find ${opts.from ? `an active match from "${opts.from}"` : "a nearest match!"}`);
6863
- invariant();
6864
- }
6865
- }
6866
-
6867
- // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/useLoaderData.js
6868
- function useLoaderData(opts) {
6869
- return useMatch({
6870
- from: opts.from,
6871
- strict: opts.strict,
6872
- structuralSharing: opts.structuralSharing,
6873
- select: (match) => {
6874
- return opts.select ? opts.select(match.loaderData) : match.loaderData;
6875
- }
6876
- });
6877
- }
6878
-
6879
- // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/useLoaderDeps.js
6880
- function useLoaderDeps(opts) {
6881
- const { select, ...rest } = opts;
6882
- return useMatch({
6883
- ...rest,
6884
- select: (match) => {
6885
- return select ? select(match.loaderDeps) : match.loaderDeps;
6886
- }
6887
- });
6888
- }
6889
-
6890
- // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/useParams.js
6891
- function useParams(opts) {
6892
- return useMatch({
6893
- from: opts.from,
6894
- shouldThrow: opts.shouldThrow,
6895
- structuralSharing: opts.structuralSharing,
6896
- strict: opts.strict,
6897
- select: (match) => {
6898
- const params = opts.strict === false ? match.params : match._strictParams;
6899
- return opts.select ? opts.select(params) : params;
6900
- }
6901
- });
6902
- }
6903
-
6904
- // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/useSearch.js
6905
- function useSearch(opts) {
6906
- return useMatch({
6907
- from: opts.from,
6908
- strict: opts.strict,
6909
- shouldThrow: opts.shouldThrow,
6910
- structuralSharing: opts.structuralSharing,
6911
- select: (match) => {
6912
- return opts.select ? opts.select(match.search) : match.search;
6913
- }
6914
- });
6915
- }
6916
-
6917
- // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/useRouteContext.js
6918
- function useRouteContext(opts) {
6919
- return useMatch({
6920
- ...opts,
6921
- select: (match) => opts.select ? opts.select(match.context) : match.context
6922
- });
6923
- }
6924
-
6925
- // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/ClientOnly.js
6926
- import React from "react";
6927
- import { jsx } from "react/jsx-runtime";
6928
- var getSnapshot = () => true;
6929
- var getServerSnapshot = () => false;
6930
- function ClientOnly({ children, fallback = null }) {
6931
- return /* @__PURE__ */ jsx(React.Fragment, { children: useHydrated() ? children : fallback });
6932
- }
6933
- function useHydrated(enabled = true) {
6934
- return React.useSyncExternalStore(subscribe, getSnapshot, enabled ? getServerSnapshot : getSnapshot);
6935
- }
6936
- function subscribe() {
6937
- return () => {
6938
- };
6939
- }
6940
-
6941
6844
  // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/link.js
6942
- import * as React$17 from "react";
6943
- import { jsx as jsx2 } from "react/jsx-runtime";
6944
6845
  function useStableValues(...values) {
6945
- const ref = React$17.useRef(values);
6846
+ const ref = React$15.useRef(values);
6946
6847
  const stable = ref.current;
6947
6848
  values.forEach((value, index) => {
6948
6849
  if (!deepEqual(stable[index], value, false, true)) stable[index] = value;
@@ -6978,8 +6879,8 @@ function resolveIsActive(location, next, activeOptions, basepath, isHydrated) {
6978
6879
  function useLinkProps(options, forwardedRef, host) {
6979
6880
  const router = useRouter();
6980
6881
  if (isServer ?? router.isServer) return getServerLinkProps(router, options, forwardedRef, host);
6981
- const innerRef = React$17.useRef(null);
6982
- const mergedRef = React$17.useCallback((element) => {
6882
+ const innerRef = React$15.useRef(null);
6883
+ const mergedRef = React$15.useCallback((element) => {
6983
6884
  innerRef.current = element;
6984
6885
  if (typeof forwardedRef === "function") return forwardedRef(element);
6985
6886
  if (forwardedRef) forwardedRef.current = element;
@@ -6987,7 +6888,7 @@ function useLinkProps(options, forwardedRef, host) {
6987
6888
  const { activeOptions, to, preload: userPreload, preloadDelay: userPreloadDelay, hashScrollIntoView, replace, startTransition: startTransition2, resetScroll, viewTransition, ignoreBlocker, disabled, target, onClick, onBlur, onFocus, onMouseEnter, onMouseLeave, onTouchStart } = options;
6988
6889
  const isHydrated = useHydrated(!!activeOptions?.includeHash);
6989
6890
  const [stableSearch, stableParams, stableActiveOptions] = useStableValues(options.search, options.params, activeOptions);
6990
- const [_options, dest] = React$17.useMemo(() => [options, { ...options }], [
6891
+ const [_options, dest] = React$15.useMemo(() => [options, { ...options }], [
6991
6892
  router,
6992
6893
  options.from,
6993
6894
  options._fromLocation,
@@ -6999,7 +6900,7 @@ function useLinkProps(options, forwardedRef, host) {
6999
6900
  options.mask,
7000
6901
  options.unsafeRelative
7001
6902
  ]);
7002
- const selectLinkState = React$17.useMemo(() => {
6903
+ const selectLinkState = React$15.useMemo(() => {
7003
6904
  const directExternalLink = resolveExternalLink(to, router.protocolAllowlist);
7004
6905
  if (directExternalLink !== void 0) {
7005
6906
  const state = [directExternalLink ?? void 0];
@@ -7029,10 +6930,10 @@ function useLinkProps(options, forwardedRef, host) {
7029
6930
  const [href, isActive] = useSelector(router.stores.location, selectLinkState, LINK_SELECTOR_OPTIONS);
7030
6931
  const externalLink = isActive === void 0 && href;
7031
6932
  const linkDisabled = disabled || href === void 0;
7032
- const hasRenderFetched = React$17.useRef(false);
6933
+ const hasRenderFetched = React$15.useRef(false);
7033
6934
  const preload = options.reloadDocument || externalLink || linkDisabled ? false : userPreload ?? router.options.defaultPreload;
7034
6935
  const preloadDelay = userPreloadDelay ?? router.options.defaultPreloadDelay ?? 0;
7035
- const enqueuePreload = React$17.useCallback((e) => {
6936
+ const enqueuePreload = React$15.useCallback((e) => {
7036
6937
  const isIntersecting = e?.isIntersecting;
7037
6938
  if (!(isIntersecting ?? preload === "intent")) {
7038
6939
  if (isIntersecting === false) cancelPreload(innerRef);
@@ -7054,7 +6955,7 @@ function useLinkProps(options, forwardedRef, host) {
7054
6955
  preload,
7055
6956
  preloadDelay
7056
6957
  ]);
7057
- React$17.useEffect(() => {
6958
+ React$15.useEffect(() => {
7058
6959
  if (!preload) return;
7059
6960
  if (preload === "render" && !hasRenderFetched.current) {
7060
6961
  hasRenderFetched.current = true;
@@ -7208,11 +7109,11 @@ function getHrefOption(next, router, disabled) {
7208
7109
  }
7209
7110
  return href;
7210
7111
  }
7211
- var Link = React$17.memo(React$17.forwardRef((props, ref) => {
7112
+ var Link = React$15.memo(React$15.forwardRef((props, ref) => {
7212
7113
  const host = props._asChild || "a";
7213
7114
  const linkProps = useLinkProps(props, ref, host);
7214
7115
  const children = typeof props.children === "function" ? props.children({ isActive: linkProps["data-status"] === "active" }) : props.children;
7215
- return React$17.createElement(host, linkProps, children);
7116
+ return React$15.createElement(host, linkProps, children);
7216
7117
  }), areLinkPropsEqual);
7217
7118
  function areLinkPropsEqual(prev, next) {
7218
7119
  let extraKeys = 0;
@@ -7225,6 +7126,105 @@ function areLinkPropsEqual(prev, next) {
7225
7126
  return extraKeys === 0;
7226
7127
  }
7227
7128
 
7129
+ // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/matchContext.js
7130
+ import * as React$16 from "react";
7131
+ var matchContext = React$16.createContext(void 0);
7132
+ var dummyMatchContext = React$16.createContext(void 0);
7133
+
7134
+ // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/useMatch.js
7135
+ import * as React$17 from "react";
7136
+ var dummyMatch = {};
7137
+ function useStructuralSharing(opts, router) {
7138
+ const previousResult = React$17.useRef();
7139
+ return (slice) => {
7140
+ const selected = opts?.select ? opts.select(slice) : slice;
7141
+ if (opts?.structuralSharing ?? router.options.defaultStructuralSharing) return previousResult.current = replaceEqualDeep(previousResult.current, selected);
7142
+ return selected;
7143
+ };
7144
+ }
7145
+ function useMatch(opts) {
7146
+ const router = useRouter();
7147
+ const nearestRouteId = React$17.useContext(opts.from ? dummyMatchContext : matchContext);
7148
+ const routeId = opts.from ?? nearestRouteId;
7149
+ const matchStore = router.stores.getMatchStore(routeId);
7150
+ if (isServer ?? router.isServer) {
7151
+ const match = matchStore.get();
7152
+ if (!match) {
7153
+ if (opts.shouldThrow ?? true) {
7154
+ if (process.env.NODE_ENV !== "production") throw new Error(`Invariant failed: Could not find ${opts.from ? `an active match from "${opts.from}"` : "a nearest match!"}`);
7155
+ invariant();
7156
+ }
7157
+ return;
7158
+ }
7159
+ return opts.select ? opts.select(match) : match;
7160
+ }
7161
+ const selector = useStructuralSharing(opts, router);
7162
+ const matchSelection = useSelector(matchStore, (match) => match ? selector(match) : dummyMatch);
7163
+ if (matchSelection !== dummyMatch) return matchSelection;
7164
+ if (opts.shouldThrow ?? true) {
7165
+ if (process.env.NODE_ENV !== "production") throw new Error(`Invariant failed: Could not find ${opts.from ? `an active match from "${opts.from}"` : "a nearest match!"}`);
7166
+ invariant();
7167
+ }
7168
+ }
7169
+
7170
+ // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/useLoaderData.js
7171
+ function useLoaderData(opts) {
7172
+ return useMatch({
7173
+ from: opts.from,
7174
+ strict: opts.strict,
7175
+ structuralSharing: opts.structuralSharing,
7176
+ select: (match) => {
7177
+ return opts.select ? opts.select(match.loaderData) : match.loaderData;
7178
+ }
7179
+ });
7180
+ }
7181
+
7182
+ // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/useLoaderDeps.js
7183
+ function useLoaderDeps(opts) {
7184
+ const { select, ...rest } = opts;
7185
+ return useMatch({
7186
+ ...rest,
7187
+ select: (match) => {
7188
+ return select ? select(match.loaderDeps) : match.loaderDeps;
7189
+ }
7190
+ });
7191
+ }
7192
+
7193
+ // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/useParams.js
7194
+ function useParams(opts) {
7195
+ return useMatch({
7196
+ from: opts.from,
7197
+ shouldThrow: opts.shouldThrow,
7198
+ structuralSharing: opts.structuralSharing,
7199
+ strict: opts.strict,
7200
+ select: (match) => {
7201
+ const params = opts.strict === false ? match.params : match._strictParams;
7202
+ return opts.select ? opts.select(params) : params;
7203
+ }
7204
+ });
7205
+ }
7206
+
7207
+ // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/useSearch.js
7208
+ function useSearch(opts) {
7209
+ return useMatch({
7210
+ from: opts.from,
7211
+ strict: opts.strict,
7212
+ shouldThrow: opts.shouldThrow,
7213
+ structuralSharing: opts.structuralSharing,
7214
+ select: (match) => {
7215
+ return opts.select ? opts.select(match.search) : match.search;
7216
+ }
7217
+ });
7218
+ }
7219
+
7220
+ // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/useRouteContext.js
7221
+ function useRouteContext(opts) {
7222
+ return useMatch({
7223
+ ...opts,
7224
+ select: (match) => opts.select ? opts.select(match.context) : match.context
7225
+ });
7226
+ }
7227
+
7228
7228
  // node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/route.js
7229
7229
  import React2 from "react";
7230
7230
  import { jsx as jsx3 } from "react/jsx-runtime";
@@ -8219,6 +8219,7 @@ export {
8219
8219
  makeSerovalPlugin,
8220
8220
  RawStream,
8221
8221
  useNavigate,
8222
+ Link,
8222
8223
  createRootRoute,
8223
8224
  createFileRoute,
8224
8225
  lazyRouteComponent,
@@ -9,15 +9,15 @@ import {
9
9
  TraceTitle,
10
10
  normalizeToolPart$1,
11
11
  toolActionIconForName
12
- } from "./chunk-5GUEYYYO.js";
12
+ } from "./chunk-V2GCVTDP.js";
13
13
  import {
14
14
  cn
15
- } from "./chunk-OAYEN3JV.js";
15
+ } from "./chunk-VDEUVEWL.js";
16
16
 
17
- // web/app/dist/server/assets/tool-timeline-5q0Z8R6U.js
17
+ // web/app/dist/server/assets/tool-timeline-BSpji3Vu.js
18
18
  import { Suspense, lazy, useMemo, useState } from "react";
19
19
  import { jsx, jsxs } from "react/jsx-runtime";
20
- var LazySessionToolRenderer = lazy(() => import("./session-tool-renderer-BZiOxtt1-T3ZGAQKX.js").then((n) => n.n).then(({ SessionToolRenderer }) => ({ default: SessionToolRenderer })));
20
+ var LazySessionToolRenderer = lazy(() => import("./session-tool-renderer-Cg_ZPHxS-BNQKNJNZ.js").then((n) => n.n).then(({ SessionToolRenderer }) => ({ default: SessionToolRenderer })));
21
21
  var NO_ARTIFACTS = [];
22
22
  function artifactPanel(kind) {
23
23
  return kind === "ipython" ? "repl" : "artifacts";
@@ -44,7 +44,7 @@ function status(part, streaming) {
44
44
  }
45
45
  function toolStep(part, fallbackId, streaming, nestedTools = [], isNestedTaskTool = false) {
46
46
  const type = part.type;
47
- if (typeof type !== "string" || !type.startsWith("tool-") || type === "tool-FleetReasoning" || type === "tool-Thinking" || isNestedTaskTool) return void 0;
47
+ if (typeof type !== "string" || !type.startsWith("tool-") || type === "tool-Question" || type === "tool-FleetReasoning" || type === "tool-Thinking" || isNestedTaskTool) return void 0;
48
48
  const name = type.slice(5);
49
49
  const lower = name.toLowerCase();
50
50
  const verb = lower.includes("edit") || lower.includes("write") || lower.includes("patch") ? "Edited" : lower.includes("read") ? "Read" : lower.includes("search") || lower.includes("grep") || lower.includes("glob") ? "Searched" : lower.includes("bash") || lower.includes("shell") || lower.includes("python") || lower.includes("ipython") ? "Ran" : name;
@@ -64,8 +64,8 @@ function toolStep(part, fallbackId, streaming, nestedTools = [], isNestedTaskToo
64
64
  function artifactStep(artifact) {
65
65
  return {
66
66
  id: `artifact:${artifact.id}`,
67
- verb: artifact.kind === "compaction" ? "Compacted" : artifact.kind === "refinement" ? "Refined" : artifact.kind === "recap" ? "Recapped" : artifact.kind === "rlm" ? "Delegated" : artifact.kind === "diff" ? "Edited" : "Completed",
68
- target: artifact.kind === "bash" ? "Bash output" : artifact.kind === "ipython" ? "IPython result" : artifact.kind === "diff" ? "File change" : artifact.kind === "rlm" ? "Child task" : artifact.kind === "recap" ? "Session recap" : artifact.kind === "refinement" ? "Refinement" : "Session activity",
67
+ verb: artifact.kind === "compaction" ? "Compacted" : artifact.kind === "refinement" ? "Refined" : artifact.kind === "rlm" ? "Delegated" : artifact.kind === "diff" ? "Edited" : "Completed",
68
+ target: artifact.kind === "bash" ? "Bash output" : artifact.kind === "ipython" ? "IPython result" : artifact.kind === "diff" ? "File change" : artifact.kind === "rlm" ? "Child task" : artifact.kind === "refinement" ? "Refinement" : "Session activity",
69
69
  status: artifact.status === "success" ? "complete" : artifact.status
70
70
  };
71
71
  }
@@ -157,6 +157,7 @@ function ToolTimeline({ messages, artifacts = NO_ARTIFACTS, streaming, className
157
157
  });
158
158
  });
159
159
  const fromArtifacts = artifacts.flatMap((artifact) => {
160
+ if (artifact.kind === "recap") return [];
160
161
  if (artifact.sourceToolCallId && seen.has(artifact.sourceToolCallId)) return [];
161
162
  const step = withArtifact(artifactStep(artifact), artifact);
162
163
  if (seen.has(step.id)) return [];