agent-insight 0.5.2 → 0.5.4

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 (852) hide show
  1. package/.env.example +6 -0
  2. package/.next/standalone/.next/BUILD_ID +1 -1
  3. package/.next/standalone/.next/app-path-routes-manifest.json +9 -0
  4. package/.next/standalone/.next/build-manifest.json +2 -2
  5. package/.next/standalone/.next/prerender-manifest.json +51 -3
  6. package/.next/standalone/.next/routes-manifest.json +60 -0
  7. package/.next/standalone/.next/server/app/(main)/accessconfig/channels/page_client-reference-manifest.js +1 -1
  8. package/.next/standalone/.next/server/app/(main)/accessconfig/health/page_client-reference-manifest.js +1 -1
  9. package/.next/standalone/.next/server/app/(main)/accessconfig/install/page.js.nft.json +1 -1
  10. package/.next/standalone/.next/server/app/(main)/accessconfig/install/page_client-reference-manifest.js +1 -1
  11. package/.next/standalone/.next/server/app/(main)/accessconfig/page_client-reference-manifest.js +1 -1
  12. package/.next/standalone/.next/server/app/(main)/accessconfig/webhooks/page_client-reference-manifest.js +1 -1
  13. package/.next/standalone/.next/server/app/(main)/agents/page.js.nft.json +1 -1
  14. package/.next/standalone/.next/server/app/(main)/agents/page_client-reference-manifest.js +1 -1
  15. package/.next/standalone/.next/server/app/(main)/dashboard/page.js.nft.json +1 -1
  16. package/.next/standalone/.next/server/app/(main)/dashboard/page_client-reference-manifest.js +1 -1
  17. package/.next/standalone/.next/server/app/(main)/dataset/[id]/page_client-reference-manifest.js +1 -1
  18. package/.next/standalone/.next/server/app/(main)/dataset/page_client-reference-manifest.js +1 -1
  19. package/.next/standalone/.next/server/app/(main)/eval/page.js.nft.json +1 -1
  20. package/.next/standalone/.next/server/app/(main)/eval/page_client-reference-manifest.js +1 -1
  21. package/.next/standalone/.next/server/app/(main)/eval/run/[runId]/page_client-reference-manifest.js +1 -1
  22. package/.next/standalone/.next/server/app/(main)/eval/trajectory/[taskId]/page_client-reference-manifest.js +1 -1
  23. package/.next/standalone/.next/server/app/(main)/eval/trajectory/[taskId]/trace/page.js.nft.json +1 -1
  24. package/.next/standalone/.next/server/app/(main)/eval/trajectory/[taskId]/trace/page_client-reference-manifest.js +1 -1
  25. package/.next/standalone/.next/server/app/(main)/eval/trajectory/page_client-reference-manifest.js +1 -1
  26. package/.next/standalone/.next/server/app/(main)/evaluation/[id]/page_client-reference-manifest.js +1 -1
  27. package/.next/standalone/.next/server/app/(main)/fault/page.js.nft.json +1 -1
  28. package/.next/standalone/.next/server/app/(main)/fault/page_client-reference-manifest.js +1 -1
  29. package/.next/standalone/.next/server/app/(main)/infra/page_client-reference-manifest.js +1 -1
  30. package/.next/standalone/.next/server/app/(main)/infra/source/[id]/page_client-reference-manifest.js +1 -1
  31. package/.next/standalone/.next/server/app/(main)/infra/sources/page_client-reference-manifest.js +1 -1
  32. package/.next/standalone/.next/server/app/(main)/memory/page_client-reference-manifest.js +1 -1
  33. package/.next/standalone/.next/server/app/(main)/metrics/evaluators/[id]/page_client-reference-manifest.js +1 -1
  34. package/.next/standalone/.next/server/app/(main)/metrics/page.js.nft.json +1 -1
  35. package/.next/standalone/.next/server/app/(main)/metrics/page_client-reference-manifest.js +1 -1
  36. package/.next/standalone/.next/server/app/(main)/modelconfig/page_client-reference-manifest.js +1 -1
  37. package/.next/standalone/.next/server/app/(main)/modelconfig/registry/page.js.nft.json +1 -1
  38. package/.next/standalone/.next/server/app/(main)/modelconfig/registry/page_client-reference-manifest.js +1 -1
  39. package/.next/standalone/.next/server/app/(main)/modelconfig/web-search/page.js.nft.json +1 -1
  40. package/.next/standalone/.next/server/app/(main)/modelconfig/web-search/page_client-reference-manifest.js +1 -1
  41. package/.next/standalone/.next/server/app/(main)/optapi/page_client-reference-manifest.js +1 -1
  42. package/.next/standalone/.next/server/app/(main)/quality/page.js.nft.json +1 -1
  43. package/.next/standalone/.next/server/app/(main)/quality/page_client-reference-manifest.js +1 -1
  44. package/.next/standalone/.next/server/app/(main)/security/page_client-reference-manifest.js +1 -1
  45. package/.next/standalone/.next/server/app/(main)/skill-eval/grayscale/page.js.nft.json +1 -1
  46. package/.next/standalone/.next/server/app/(main)/skill-eval/grayscale/page_client-reference-manifest.js +1 -1
  47. package/.next/standalone/.next/server/app/(main)/skill-eval/page.js.nft.json +1 -1
  48. package/.next/standalone/.next/server/app/(main)/skill-eval/page_client-reference-manifest.js +1 -1
  49. package/.next/standalone/.next/server/app/(main)/skill-eval/trigger/[skillName]/page_client-reference-manifest.js +1 -1
  50. package/.next/standalone/.next/server/app/(main)/skill-generator/page_client-reference-manifest.js +1 -1
  51. package/.next/standalone/.next/server/app/(main)/skill-history/page.js.nft.json +1 -1
  52. package/.next/standalone/.next/server/app/(main)/skill-history/page_client-reference-manifest.js +1 -1
  53. package/.next/standalone/.next/server/app/(main)/skill-opt/[name]/[version]/page_client-reference-manifest.js +1 -1
  54. package/.next/standalone/.next/server/app/(main)/skill-opt/page_client-reference-manifest.js +1 -1
  55. package/.next/standalone/.next/server/app/(main)/skill-release/page_client-reference-manifest.js +1 -1
  56. package/.next/standalone/.next/server/app/(main)/skills/page.js.nft.json +1 -1
  57. package/.next/standalone/.next/server/app/(main)/skills/page_client-reference-manifest.js +1 -1
  58. package/.next/standalone/.next/server/app/(main)/trace/page.js.nft.json +1 -1
  59. package/.next/standalone/.next/server/app/(main)/trace/page_client-reference-manifest.js +1 -1
  60. package/.next/standalone/.next/server/app/(main)/version-analysis/page/app-paths-manifest.json +3 -0
  61. package/.next/standalone/.next/server/app/(main)/version-analysis/page/build-manifest.json +17 -0
  62. package/.next/standalone/.next/server/app/(main)/version-analysis/page/next-font-manifest.json +6 -0
  63. package/.next/standalone/.next/server/app/(main)/version-analysis/page/react-loadable-manifest.json +1 -0
  64. package/.next/standalone/.next/server/app/(main)/version-analysis/page/server-reference-manifest.json +4 -0
  65. package/.next/standalone/.next/server/app/(main)/version-analysis/page.js +17 -0
  66. package/.next/standalone/.next/server/app/(main)/version-analysis/page.js.map +5 -0
  67. package/.next/standalone/.next/server/app/(main)/version-analysis/page.js.nft.json +1 -0
  68. package/.next/standalone/.next/server/app/(main)/version-analysis/page_client-reference-manifest.js +2 -0
  69. package/.next/standalone/.next/server/app/(main)/version-management/page/app-paths-manifest.json +3 -0
  70. package/.next/standalone/.next/server/app/(main)/version-management/page/build-manifest.json +17 -0
  71. package/.next/standalone/.next/server/app/(main)/version-management/page/next-font-manifest.json +6 -0
  72. package/.next/standalone/.next/server/app/(main)/version-management/page/react-loadable-manifest.json +1 -0
  73. package/.next/standalone/.next/server/app/(main)/version-management/page/server-reference-manifest.json +4 -0
  74. package/.next/standalone/.next/server/app/(main)/version-management/page.js +17 -0
  75. package/.next/standalone/.next/server/app/(main)/version-management/page.js.map +5 -0
  76. package/.next/standalone/.next/server/app/(main)/version-management/page.js.nft.json +1 -0
  77. package/.next/standalone/.next/server/app/(main)/version-management/page_client-reference-manifest.js +2 -0
  78. package/.next/standalone/.next/server/app/_global-error.html +2 -2
  79. package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
  80. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  81. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  82. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  83. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  84. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  85. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  86. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  87. package/.next/standalone/.next/server/app/_not-found.rsc +3 -3
  88. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
  89. package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  90. package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
  91. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  92. package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  93. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  94. package/.next/standalone/.next/server/app/accessconfig/channels.html +1 -1
  95. package/.next/standalone/.next/server/app/accessconfig/channels.rsc +5 -5
  96. package/.next/standalone/.next/server/app/accessconfig/channels.segments/!KG1haW4p/accessconfig/channels/__PAGE__.segment.rsc +2 -2
  97. package/.next/standalone/.next/server/app/accessconfig/channels.segments/!KG1haW4p/accessconfig/channels.segment.rsc +1 -1
  98. package/.next/standalone/.next/server/app/accessconfig/channels.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
  99. package/.next/standalone/.next/server/app/accessconfig/channels.segments/!KG1haW4p.segment.rsc +2 -2
  100. package/.next/standalone/.next/server/app/accessconfig/channels.segments/_full.segment.rsc +5 -5
  101. package/.next/standalone/.next/server/app/accessconfig/channels.segments/_head.segment.rsc +1 -1
  102. package/.next/standalone/.next/server/app/accessconfig/channels.segments/_index.segment.rsc +3 -3
  103. package/.next/standalone/.next/server/app/accessconfig/channels.segments/_tree.segment.rsc +2 -2
  104. package/.next/standalone/.next/server/app/accessconfig/health.html +1 -1
  105. package/.next/standalone/.next/server/app/accessconfig/health.rsc +5 -5
  106. package/.next/standalone/.next/server/app/accessconfig/health.segments/!KG1haW4p/accessconfig/health/__PAGE__.segment.rsc +2 -2
  107. package/.next/standalone/.next/server/app/accessconfig/health.segments/!KG1haW4p/accessconfig/health.segment.rsc +1 -1
  108. package/.next/standalone/.next/server/app/accessconfig/health.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
  109. package/.next/standalone/.next/server/app/accessconfig/health.segments/!KG1haW4p.segment.rsc +2 -2
  110. package/.next/standalone/.next/server/app/accessconfig/health.segments/_full.segment.rsc +5 -5
  111. package/.next/standalone/.next/server/app/accessconfig/health.segments/_head.segment.rsc +1 -1
  112. package/.next/standalone/.next/server/app/accessconfig/health.segments/_index.segment.rsc +3 -3
  113. package/.next/standalone/.next/server/app/accessconfig/health.segments/_tree.segment.rsc +2 -2
  114. package/.next/standalone/.next/server/app/accessconfig/install.html +2 -2
  115. package/.next/standalone/.next/server/app/accessconfig/install.rsc +5 -5
  116. package/.next/standalone/.next/server/app/accessconfig/install.segments/!KG1haW4p/accessconfig/install/__PAGE__.segment.rsc +2 -2
  117. package/.next/standalone/.next/server/app/accessconfig/install.segments/!KG1haW4p/accessconfig/install.segment.rsc +1 -1
  118. package/.next/standalone/.next/server/app/accessconfig/install.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
  119. package/.next/standalone/.next/server/app/accessconfig/install.segments/!KG1haW4p.segment.rsc +2 -2
  120. package/.next/standalone/.next/server/app/accessconfig/install.segments/_full.segment.rsc +5 -5
  121. package/.next/standalone/.next/server/app/accessconfig/install.segments/_head.segment.rsc +1 -1
  122. package/.next/standalone/.next/server/app/accessconfig/install.segments/_index.segment.rsc +3 -3
  123. package/.next/standalone/.next/server/app/accessconfig/install.segments/_tree.segment.rsc +2 -2
  124. package/.next/standalone/.next/server/app/accessconfig/webhooks.html +1 -1
  125. package/.next/standalone/.next/server/app/accessconfig/webhooks.rsc +5 -5
  126. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/!KG1haW4p/accessconfig/webhooks/__PAGE__.segment.rsc +2 -2
  127. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/!KG1haW4p/accessconfig/webhooks.segment.rsc +1 -1
  128. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
  129. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/!KG1haW4p.segment.rsc +2 -2
  130. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/_full.segment.rsc +5 -5
  131. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/_head.segment.rsc +1 -1
  132. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/_index.segment.rsc +3 -3
  133. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/_tree.segment.rsc +2 -2
  134. package/.next/standalone/.next/server/app/accessconfig.html +1 -1
  135. package/.next/standalone/.next/server/app/accessconfig.rsc +4 -4
  136. package/.next/standalone/.next/server/app/accessconfig.segments/!KG1haW4p/accessconfig/__PAGE__.segment.rsc +1 -1
  137. package/.next/standalone/.next/server/app/accessconfig.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
  138. package/.next/standalone/.next/server/app/accessconfig.segments/!KG1haW4p.segment.rsc +2 -2
  139. package/.next/standalone/.next/server/app/accessconfig.segments/_full.segment.rsc +4 -4
  140. package/.next/standalone/.next/server/app/accessconfig.segments/_head.segment.rsc +1 -1
  141. package/.next/standalone/.next/server/app/accessconfig.segments/_index.segment.rsc +3 -3
  142. package/.next/standalone/.next/server/app/accessconfig.segments/_tree.segment.rsc +2 -2
  143. package/.next/standalone/.next/server/app/agents.html +1 -1
  144. package/.next/standalone/.next/server/app/agents.rsc +5 -5
  145. package/.next/standalone/.next/server/app/agents.segments/!KG1haW4p/agents/__PAGE__.segment.rsc +2 -2
  146. package/.next/standalone/.next/server/app/agents.segments/!KG1haW4p/agents.segment.rsc +1 -1
  147. package/.next/standalone/.next/server/app/agents.segments/!KG1haW4p.segment.rsc +2 -2
  148. package/.next/standalone/.next/server/app/agents.segments/_full.segment.rsc +5 -5
  149. package/.next/standalone/.next/server/app/agents.segments/_head.segment.rsc +1 -1
  150. package/.next/standalone/.next/server/app/agents.segments/_index.segment.rsc +3 -3
  151. package/.next/standalone/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
  152. package/.next/standalone/.next/server/app/api/agent/run/route.js.nft.json +1 -1
  153. package/.next/standalone/.next/server/app/api/agent/stream/route.js.nft.json +1 -1
  154. package/.next/standalone/.next/server/app/api/agent-datasets/[id]/route.js.nft.json +1 -1
  155. package/.next/standalone/.next/server/app/api/agent-datasets/route.js.nft.json +1 -1
  156. package/.next/standalone/.next/server/app/api/agents/[id]/route.js.nft.json +1 -1
  157. package/.next/standalone/.next/server/app/api/agents/route.js.nft.json +1 -1
  158. package/.next/standalone/.next/server/app/api/auth/apikey/route.js.nft.json +1 -1
  159. package/.next/standalone/.next/server/app/api/auth/organization/route.js.nft.json +1 -1
  160. package/.next/standalone/.next/server/app/api/dashboard/stats/route.js.nft.json +1 -1
  161. package/.next/standalone/.next/server/app/api/debug/batch-tasks/[taskId]/route.js.nft.json +1 -1
  162. package/.next/standalone/.next/server/app/api/debug/batch-tasks/route.js.nft.json +1 -1
  163. package/.next/standalone/.next/server/app/api/debug/execute/[jobId]/route.js.nft.json +1 -1
  164. package/.next/standalone/.next/server/app/api/debug/execute/route.js.nft.json +1 -1
  165. package/.next/standalone/.next/server/app/api/debug/grayscale-tasks/[taskId]/route.js +10 -10
  166. package/.next/standalone/.next/server/app/api/debug/grayscale-tasks/[taskId]/route.js.nft.json +1 -1
  167. package/.next/standalone/.next/server/app/api/debug/grayscale-tasks/route.js.nft.json +1 -1
  168. package/.next/standalone/.next/server/app/api/debug/history/[id]/route.js.nft.json +1 -1
  169. package/.next/standalone/.next/server/app/api/debug/history/route.js.nft.json +1 -1
  170. package/.next/standalone/.next/server/app/api/eval/config/backfill-routing/route.js +6 -6
  171. package/.next/standalone/.next/server/app/api/eval/config/backfill-routing/route.js.nft.json +1 -1
  172. package/.next/standalone/.next/server/app/api/eval/config/create/route.js.nft.json +1 -1
  173. package/.next/standalone/.next/server/app/api/eval/config/reparse/route.js.nft.json +1 -1
  174. package/.next/standalone/.next/server/app/api/eval/config/route.js +6 -6
  175. package/.next/standalone/.next/server/app/api/eval/config/route.js.nft.json +1 -1
  176. package/.next/standalone/.next/server/app/api/eval/config/status/route.js.nft.json +1 -1
  177. package/.next/standalone/.next/server/app/api/eval/evaluation/route.js.nft.json +1 -1
  178. package/.next/standalone/.next/server/app/api/eval/rejudge/route.js +6 -6
  179. package/.next/standalone/.next/server/app/api/eval/rejudge/route.js.nft.json +1 -1
  180. package/.next/standalone/.next/server/app/api/eval/settings/route.js.nft.json +1 -1
  181. package/.next/standalone/.next/server/app/api/eval/settings/test/route.js.nft.json +1 -1
  182. package/.next/standalone/.next/server/app/api/eval/terminate-all/route.js.nft.json +1 -1
  183. package/.next/standalone/.next/server/app/api/eval/trajectory/results/[id]/route.js.nft.json +1 -1
  184. package/.next/standalone/.next/server/app/api/eval/trajectory/results/route.js +5 -5
  185. package/.next/standalone/.next/server/app/api/eval/trajectory/results/route.js.nft.json +1 -1
  186. package/.next/standalone/.next/server/app/api/eval/trajectory/run/route.js +13 -13
  187. package/.next/standalone/.next/server/app/api/eval/trajectory/run/route.js.nft.json +1 -1
  188. package/.next/standalone/.next/server/app/api/eval/trajectory/runs/route.js.nft.json +1 -1
  189. package/.next/standalone/.next/server/app/api/evaluation/[id]/route.js.nft.json +1 -1
  190. package/.next/standalone/.next/server/app/api/evaluation/cancel/route.js.nft.json +1 -1
  191. package/.next/standalone/.next/server/app/api/fault/diagnosis/session/route.js.nft.json +1 -1
  192. package/.next/standalone/.next/server/app/api/fault/diagnosis/stream/route.js.nft.json +1 -1
  193. package/.next/standalone/.next/server/app/api/fleet/agent/route/app-paths-manifest.json +3 -0
  194. package/.next/standalone/.next/server/app/api/fleet/agent/route/build-manifest.json +11 -0
  195. package/.next/standalone/.next/server/app/api/fleet/agent/route/server-reference-manifest.json +4 -0
  196. package/.next/standalone/.next/server/app/api/fleet/agent/route.js +8 -0
  197. package/.next/standalone/.next/server/app/api/fleet/agent/route.js.map +5 -0
  198. package/.next/standalone/.next/server/app/api/fleet/agent/route.js.nft.json +1 -0
  199. package/.next/standalone/.next/server/app/api/fleet/agent/route_client-reference-manifest.js +2 -0
  200. package/.next/standalone/.next/server/app/api/fleet/breakdowns/route.js +1 -1
  201. package/.next/standalone/.next/server/app/api/fleet/breakdowns/route.js.nft.json +1 -1
  202. package/.next/standalone/.next/server/app/api/fleet/trends/route.js +2 -2
  203. package/.next/standalone/.next/server/app/api/fleet/trends/route.js.nft.json +1 -1
  204. package/.next/standalone/.next/server/app/api/guide/route.js.nft.json +1 -1
  205. package/.next/standalone/.next/server/app/api/ingest/opencode/session-complete/route.js +3 -3
  206. package/.next/standalone/.next/server/app/api/ingest/opencode/session-complete/route.js.nft.json +1 -1
  207. package/.next/standalone/.next/server/app/api/ingest/otel/v1/logs/route.js.nft.json +1 -1
  208. package/.next/standalone/.next/server/app/api/ingest/otel/v1/metrics/route.js.nft.json +1 -1
  209. package/.next/standalone/.next/server/app/api/ingest/otel/v1/traces/route.js +5 -5
  210. package/.next/standalone/.next/server/app/api/ingest/otel/v1/traces/route.js.nft.json +1 -1
  211. package/.next/standalone/.next/server/app/api/ingest/proxy/[taskId]/[...path]/route.js.nft.json +1 -1
  212. package/.next/standalone/.next/server/app/api/ingest/proxy/[taskId]/end/route.js +9 -9
  213. package/.next/standalone/.next/server/app/api/ingest/proxy/[taskId]/end/route.js.nft.json +1 -1
  214. package/.next/standalone/.next/server/app/api/ingest/proxy/[taskId]/start/route.js.nft.json +1 -1
  215. package/.next/standalone/.next/server/app/api/ingest/sync/manifest/route.js.nft.json +1 -1
  216. package/.next/standalone/.next/server/app/api/ingest/sync/opencode/route.js.nft.json +1 -1
  217. package/.next/standalone/.next/server/app/api/ingest/upload/route.js +8 -8
  218. package/.next/standalone/.next/server/app/api/ingest/upload/route.js.nft.json +1 -1
  219. package/.next/standalone/.next/server/app/api/modelconfig/pricing/route/app-paths-manifest.json +3 -0
  220. package/.next/standalone/.next/server/app/api/modelconfig/pricing/route/build-manifest.json +11 -0
  221. package/.next/standalone/.next/server/app/api/modelconfig/pricing/route/server-reference-manifest.json +4 -0
  222. package/.next/standalone/.next/server/app/api/modelconfig/pricing/route.js +8 -0
  223. package/.next/standalone/.next/server/app/api/modelconfig/pricing/route.js.map +5 -0
  224. package/.next/standalone/.next/server/app/api/modelconfig/pricing/route.js.nft.json +1 -0
  225. package/.next/standalone/.next/server/app/api/modelconfig/pricing/route_client-reference-manifest.js +2 -0
  226. package/.next/standalone/.next/server/app/api/observe/data/route.js +3 -3
  227. package/.next/standalone/.next/server/app/api/observe/data/route.js.nft.json +1 -1
  228. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/agent-debug/route.js.nft.json +1 -1
  229. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/agent-debug/skills-analysis/route.js +13 -13
  230. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/agent-debug/skills-analysis/route.js.nft.json +1 -1
  231. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/analyze-match/route.js.nft.json +1 -1
  232. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/infra/route.js.nft.json +1 -1
  233. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route/app-paths-manifest.json +3 -0
  234. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route/build-manifest.json +11 -0
  235. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route/server-reference-manifest.json +4 -0
  236. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route.js +8 -0
  237. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route.js.map +5 -0
  238. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route.js.nft.json +1 -0
  239. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route_client-reference-manifest.js +2 -0
  240. package/.next/standalone/.next/server/app/api/observe/infra/history/route.js.nft.json +1 -1
  241. package/.next/standalone/.next/server/app/api/observe/infra/poll/route.js.nft.json +1 -1
  242. package/.next/standalone/.next/server/app/api/observe/infra/sources/derive/route.js.nft.json +1 -1
  243. package/.next/standalone/.next/server/app/api/observe/infra/sources/overview/route.js.nft.json +1 -1
  244. package/.next/standalone/.next/server/app/api/observe/infra/sources/route.js.nft.json +1 -1
  245. package/.next/standalone/.next/server/app/api/observe/infra/sources/sessions/route.js.nft.json +1 -1
  246. package/.next/standalone/.next/server/app/api/observe/infra/sources/test/route.js.nft.json +1 -1
  247. package/.next/standalone/.next/server/app/api/observe/session/route.js.nft.json +1 -1
  248. package/.next/standalone/.next/server/app/api/observe/task-stats/route.js +3 -3
  249. package/.next/standalone/.next/server/app/api/observe/task-stats/route.js.nft.json +1 -1
  250. package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route/app-paths-manifest.json +3 -0
  251. package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route/build-manifest.json +11 -0
  252. package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route/server-reference-manifest.json +4 -0
  253. package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route.js +8 -0
  254. package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route.js.map +5 -0
  255. package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route.js.nft.json +1 -0
  256. package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route_client-reference-manifest.js +2 -0
  257. package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route/app-paths-manifest.json +3 -0
  258. package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route/build-manifest.json +11 -0
  259. package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route/server-reference-manifest.json +4 -0
  260. package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route.js +8 -0
  261. package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route.js.map +5 -0
  262. package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route.js.nft.json +1 -0
  263. package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route_client-reference-manifest.js +2 -0
  264. package/.next/standalone/.next/server/app/api/public/otel/v1/traces/route.js +5 -5
  265. package/.next/standalone/.next/server/app/api/public/otel/v1/traces/route.js.nft.json +1 -1
  266. package/.next/standalone/.next/server/app/api/quality/agents/route.js +7 -7
  267. package/.next/standalone/.next/server/app/api/quality/agents/route.js.nft.json +1 -1
  268. package/.next/standalone/.next/server/app/api/quality/backfill/route.js.nft.json +1 -1
  269. package/.next/standalone/.next/server/app/api/quality/executions/route.js +7 -7
  270. package/.next/standalone/.next/server/app/api/quality/executions/route.js.nft.json +1 -1
  271. package/.next/standalone/.next/server/app/api/quality/report/route.js.nft.json +1 -1
  272. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/draft/route.js.nft.json +1 -1
  273. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/route.js.nft.json +1 -1
  274. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/run/[runId]/cancel/route.js.nft.json +1 -1
  275. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/run/route.js.nft.json +1 -1
  276. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/runs/route.js.nft.json +1 -1
  277. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/upload/route.js.nft.json +1 -1
  278. package/.next/standalone/.next/server/app/api/skill-generator/attachments/route.js.nft.json +1 -1
  279. package/.next/standalone/.next/server/app/api/skill-generator/chat/route.js.nft.json +1 -1
  280. package/.next/standalone/.next/server/app/api/skill-generator/download/[sessionId]/route.js.nft.json +1 -1
  281. package/.next/standalone/.next/server/app/api/skill-generator/files/content/route.js.nft.json +1 -1
  282. package/.next/standalone/.next/server/app/api/skill-generator/files/download/route.js.nft.json +1 -1
  283. package/.next/standalone/.next/server/app/api/skill-generator/files/info/route.js.nft.json +1 -1
  284. package/.next/standalone/.next/server/app/api/skill-generator/files/list/route.js.nft.json +1 -1
  285. package/.next/standalone/.next/server/app/api/skill-generator/sessions/[id]/route.js.nft.json +1 -1
  286. package/.next/standalone/.next/server/app/api/skill-generator/sessions/route.js.nft.json +1 -1
  287. package/.next/standalone/.next/server/app/api/skill-opt/chat/route.js.nft.json +1 -1
  288. package/.next/standalone/.next/server/app/api/skill-opt/plan/items/[id]/route.js.nft.json +1 -1
  289. package/.next/standalone/.next/server/app/api/skill-opt/plan/route.js.nft.json +1 -1
  290. package/.next/standalone/.next/server/app/api/skill-opt/sessions/[id]/iterations/[draftNumber]/apply/route.js.nft.json +1 -1
  291. package/.next/standalone/.next/server/app/api/skill-opt/sessions/[id]/iterations/route.js.nft.json +1 -1
  292. package/.next/standalone/.next/server/app/api/skill-opt/sessions/[id]/route.js.nft.json +1 -1
  293. package/.next/standalone/.next/server/app/api/skill-opt/sessions/route.js.nft.json +1 -1
  294. package/.next/standalone/.next/server/app/api/skills/[id]/activate/route.js.nft.json +1 -1
  295. package/.next/standalone/.next/server/app/api/skills/[id]/benchmark-generate/route.js +7 -7
  296. package/.next/standalone/.next/server/app/api/skills/[id]/benchmark-generate/route.js.nft.json +1 -1
  297. package/.next/standalone/.next/server/app/api/skills/[id]/runs/route.js +2 -2
  298. package/.next/standalone/.next/server/app/api/skills/[id]/runs/route.js.nft.json +1 -1
  299. package/.next/standalone/.next/server/app/api/skills/[id]/toggle/route.js.nft.json +1 -1
  300. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/download/route.js.nft.json +1 -1
  301. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/evaluate/route.js.nft.json +1 -1
  302. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/evaluation-summary/route.js.nft.json +1 -1
  303. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/files/[...path]/route.js.nft.json +1 -1
  304. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/parse-flow/route.js.nft.json +1 -1
  305. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/route.js.nft.json +1 -1
  306. package/.next/standalone/.next/server/app/api/skills/[id]/versions/route.js.nft.json +1 -1
  307. package/.next/standalone/.next/server/app/api/skills/automation/import/route.js.nft.json +1 -1
  308. package/.next/standalone/.next/server/app/api/skills/automation/push/route.js.nft.json +1 -1
  309. package/.next/standalone/.next/server/app/api/skills/by-name/[name]/analysis-diagnosis/route.js.nft.json +1 -1
  310. package/.next/standalone/.next/server/app/api/skills/by-name/[name]/optimization-points/resolve/route.js.nft.json +1 -1
  311. package/.next/standalone/.next/server/app/api/skills/by-name/[name]/optimization-points/route.js.nft.json +1 -1
  312. package/.next/standalone/.next/server/app/api/skills/by-name/route.js.nft.json +1 -1
  313. package/.next/standalone/.next/server/app/api/skills/logs/route.js +6 -6
  314. package/.next/standalone/.next/server/app/api/skills/logs/route.js.nft.json +1 -1
  315. package/.next/standalone/.next/server/app/api/skills/publish/route.js.nft.json +1 -1
  316. package/.next/standalone/.next/server/app/api/skills/route.js.nft.json +1 -1
  317. package/.next/standalone/.next/server/app/api/skills/sync-enterprise/route.js.nft.json +1 -1
  318. package/.next/standalone/.next/server/app/api/skills/upload/route.js.nft.json +1 -1
  319. package/.next/standalone/.next/server/app/api/tags/[id]/route/app-paths-manifest.json +3 -0
  320. package/.next/standalone/.next/server/app/api/tags/[id]/route/build-manifest.json +11 -0
  321. package/.next/standalone/.next/server/app/api/tags/[id]/route/server-reference-manifest.json +4 -0
  322. package/.next/standalone/.next/server/app/api/tags/[id]/route.js +8 -0
  323. package/.next/standalone/.next/server/app/api/tags/[id]/route.js.map +5 -0
  324. package/.next/standalone/.next/server/app/api/tags/[id]/route.js.nft.json +1 -0
  325. package/.next/standalone/.next/server/app/api/tags/[id]/route_client-reference-manifest.js +2 -0
  326. package/.next/standalone/.next/server/app/api/tags/route/app-paths-manifest.json +3 -0
  327. package/.next/standalone/.next/server/app/api/tags/route/build-manifest.json +11 -0
  328. package/.next/standalone/.next/server/app/api/tags/route/server-reference-manifest.json +4 -0
  329. package/.next/standalone/.next/server/app/api/tags/route.js +8 -0
  330. package/.next/standalone/.next/server/app/api/tags/route.js.map +5 -0
  331. package/.next/standalone/.next/server/app/api/tags/route.js.nft.json +1 -0
  332. package/.next/standalone/.next/server/app/api/tags/route_client-reference-manifest.js +2 -0
  333. package/.next/standalone/.next/server/app/api/user-evaluators/route.js.nft.json +1 -1
  334. package/.next/standalone/.next/server/app/dashboard.html +1 -1
  335. package/.next/standalone/.next/server/app/dashboard.rsc +5 -5
  336. package/.next/standalone/.next/server/app/dashboard.segments/!KG1haW4p/dashboard/__PAGE__.segment.rsc +2 -2
  337. package/.next/standalone/.next/server/app/dashboard.segments/!KG1haW4p/dashboard.segment.rsc +1 -1
  338. package/.next/standalone/.next/server/app/dashboard.segments/!KG1haW4p.segment.rsc +2 -2
  339. package/.next/standalone/.next/server/app/dashboard.segments/_full.segment.rsc +5 -5
  340. package/.next/standalone/.next/server/app/dashboard.segments/_head.segment.rsc +1 -1
  341. package/.next/standalone/.next/server/app/dashboard.segments/_index.segment.rsc +3 -3
  342. package/.next/standalone/.next/server/app/dashboard.segments/_tree.segment.rsc +2 -2
  343. package/.next/standalone/.next/server/app/dataset.html +1 -1
  344. package/.next/standalone/.next/server/app/dataset.rsc +5 -5
  345. package/.next/standalone/.next/server/app/dataset.segments/!KG1haW4p/dataset/__PAGE__.segment.rsc +2 -2
  346. package/.next/standalone/.next/server/app/dataset.segments/!KG1haW4p/dataset.segment.rsc +1 -1
  347. package/.next/standalone/.next/server/app/dataset.segments/!KG1haW4p.segment.rsc +2 -2
  348. package/.next/standalone/.next/server/app/dataset.segments/_full.segment.rsc +5 -5
  349. package/.next/standalone/.next/server/app/dataset.segments/_head.segment.rsc +1 -1
  350. package/.next/standalone/.next/server/app/dataset.segments/_index.segment.rsc +3 -3
  351. package/.next/standalone/.next/server/app/dataset.segments/_tree.segment.rsc +2 -2
  352. package/.next/standalone/.next/server/app/eval/trajectory.html +1 -1
  353. package/.next/standalone/.next/server/app/eval/trajectory.rsc +5 -5
  354. package/.next/standalone/.next/server/app/eval/trajectory.segments/!KG1haW4p/eval/trajectory/__PAGE__.segment.rsc +2 -2
  355. package/.next/standalone/.next/server/app/eval/trajectory.segments/!KG1haW4p/eval/trajectory.segment.rsc +1 -1
  356. package/.next/standalone/.next/server/app/eval/trajectory.segments/!KG1haW4p/eval.segment.rsc +1 -1
  357. package/.next/standalone/.next/server/app/eval/trajectory.segments/!KG1haW4p.segment.rsc +2 -2
  358. package/.next/standalone/.next/server/app/eval/trajectory.segments/_full.segment.rsc +5 -5
  359. package/.next/standalone/.next/server/app/eval/trajectory.segments/_head.segment.rsc +1 -1
  360. package/.next/standalone/.next/server/app/eval/trajectory.segments/_index.segment.rsc +3 -3
  361. package/.next/standalone/.next/server/app/eval/trajectory.segments/_tree.segment.rsc +2 -2
  362. package/.next/standalone/.next/server/app/eval.html +1 -1
  363. package/.next/standalone/.next/server/app/eval.rsc +5 -5
  364. package/.next/standalone/.next/server/app/eval.segments/!KG1haW4p/eval/__PAGE__.segment.rsc +2 -2
  365. package/.next/standalone/.next/server/app/eval.segments/!KG1haW4p/eval.segment.rsc +1 -1
  366. package/.next/standalone/.next/server/app/eval.segments/!KG1haW4p.segment.rsc +2 -2
  367. package/.next/standalone/.next/server/app/eval.segments/_full.segment.rsc +5 -5
  368. package/.next/standalone/.next/server/app/eval.segments/_head.segment.rsc +1 -1
  369. package/.next/standalone/.next/server/app/eval.segments/_index.segment.rsc +3 -3
  370. package/.next/standalone/.next/server/app/eval.segments/_tree.segment.rsc +2 -2
  371. package/.next/standalone/.next/server/app/fault.html +1 -1
  372. package/.next/standalone/.next/server/app/fault.rsc +5 -5
  373. package/.next/standalone/.next/server/app/fault.segments/!KG1haW4p/fault/__PAGE__.segment.rsc +2 -2
  374. package/.next/standalone/.next/server/app/fault.segments/!KG1haW4p/fault.segment.rsc +1 -1
  375. package/.next/standalone/.next/server/app/fault.segments/!KG1haW4p.segment.rsc +2 -2
  376. package/.next/standalone/.next/server/app/fault.segments/_full.segment.rsc +5 -5
  377. package/.next/standalone/.next/server/app/fault.segments/_head.segment.rsc +1 -1
  378. package/.next/standalone/.next/server/app/fault.segments/_index.segment.rsc +3 -3
  379. package/.next/standalone/.next/server/app/fault.segments/_tree.segment.rsc +2 -2
  380. package/.next/standalone/.next/server/app/index.html +1 -1
  381. package/.next/standalone/.next/server/app/index.rsc +3 -3
  382. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  383. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +3 -3
  384. package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
  385. package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +3 -3
  386. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  387. package/.next/standalone/.next/server/app/infra/sources.html +1 -1
  388. package/.next/standalone/.next/server/app/infra/sources.rsc +5 -5
  389. package/.next/standalone/.next/server/app/infra/sources.segments/!KG1haW4p/infra/sources/__PAGE__.segment.rsc +2 -2
  390. package/.next/standalone/.next/server/app/infra/sources.segments/!KG1haW4p/infra/sources.segment.rsc +1 -1
  391. package/.next/standalone/.next/server/app/infra/sources.segments/!KG1haW4p/infra.segment.rsc +1 -1
  392. package/.next/standalone/.next/server/app/infra/sources.segments/!KG1haW4p.segment.rsc +2 -2
  393. package/.next/standalone/.next/server/app/infra/sources.segments/_full.segment.rsc +5 -5
  394. package/.next/standalone/.next/server/app/infra/sources.segments/_head.segment.rsc +1 -1
  395. package/.next/standalone/.next/server/app/infra/sources.segments/_index.segment.rsc +3 -3
  396. package/.next/standalone/.next/server/app/infra/sources.segments/_tree.segment.rsc +2 -2
  397. package/.next/standalone/.next/server/app/infra.html +1 -1
  398. package/.next/standalone/.next/server/app/infra.rsc +5 -5
  399. package/.next/standalone/.next/server/app/infra.segments/!KG1haW4p/infra/__PAGE__.segment.rsc +2 -2
  400. package/.next/standalone/.next/server/app/infra.segments/!KG1haW4p/infra.segment.rsc +1 -1
  401. package/.next/standalone/.next/server/app/infra.segments/!KG1haW4p.segment.rsc +2 -2
  402. package/.next/standalone/.next/server/app/infra.segments/_full.segment.rsc +5 -5
  403. package/.next/standalone/.next/server/app/infra.segments/_head.segment.rsc +1 -1
  404. package/.next/standalone/.next/server/app/infra.segments/_index.segment.rsc +3 -3
  405. package/.next/standalone/.next/server/app/infra.segments/_tree.segment.rsc +2 -2
  406. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  407. package/.next/standalone/.next/server/app/login.html +1 -1
  408. package/.next/standalone/.next/server/app/login.rsc +4 -4
  409. package/.next/standalone/.next/server/app/login.segments/_full.segment.rsc +4 -4
  410. package/.next/standalone/.next/server/app/login.segments/_head.segment.rsc +1 -1
  411. package/.next/standalone/.next/server/app/login.segments/_index.segment.rsc +3 -3
  412. package/.next/standalone/.next/server/app/login.segments/_tree.segment.rsc +2 -2
  413. package/.next/standalone/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  414. package/.next/standalone/.next/server/app/login.segments/login.segment.rsc +1 -1
  415. package/.next/standalone/.next/server/app/memory.html +1 -1
  416. package/.next/standalone/.next/server/app/memory.rsc +5 -5
  417. package/.next/standalone/.next/server/app/memory.segments/!KG1haW4p/memory/__PAGE__.segment.rsc +2 -2
  418. package/.next/standalone/.next/server/app/memory.segments/!KG1haW4p/memory.segment.rsc +1 -1
  419. package/.next/standalone/.next/server/app/memory.segments/!KG1haW4p.segment.rsc +2 -2
  420. package/.next/standalone/.next/server/app/memory.segments/_full.segment.rsc +5 -5
  421. package/.next/standalone/.next/server/app/memory.segments/_head.segment.rsc +1 -1
  422. package/.next/standalone/.next/server/app/memory.segments/_index.segment.rsc +3 -3
  423. package/.next/standalone/.next/server/app/memory.segments/_tree.segment.rsc +2 -2
  424. package/.next/standalone/.next/server/app/metrics.html +1 -1
  425. package/.next/standalone/.next/server/app/metrics.rsc +5 -5
  426. package/.next/standalone/.next/server/app/metrics.segments/!KG1haW4p/metrics/__PAGE__.segment.rsc +2 -2
  427. package/.next/standalone/.next/server/app/metrics.segments/!KG1haW4p/metrics.segment.rsc +1 -1
  428. package/.next/standalone/.next/server/app/metrics.segments/!KG1haW4p.segment.rsc +2 -2
  429. package/.next/standalone/.next/server/app/metrics.segments/_full.segment.rsc +5 -5
  430. package/.next/standalone/.next/server/app/metrics.segments/_head.segment.rsc +1 -1
  431. package/.next/standalone/.next/server/app/metrics.segments/_index.segment.rsc +3 -3
  432. package/.next/standalone/.next/server/app/metrics.segments/_tree.segment.rsc +2 -2
  433. package/.next/standalone/.next/server/app/modelconfig/registry.html +1 -1
  434. package/.next/standalone/.next/server/app/modelconfig/registry.rsc +5 -5
  435. package/.next/standalone/.next/server/app/modelconfig/registry.segments/!KG1haW4p/modelconfig/registry/__PAGE__.segment.rsc +2 -2
  436. package/.next/standalone/.next/server/app/modelconfig/registry.segments/!KG1haW4p/modelconfig/registry.segment.rsc +1 -1
  437. package/.next/standalone/.next/server/app/modelconfig/registry.segments/!KG1haW4p/modelconfig.segment.rsc +1 -1
  438. package/.next/standalone/.next/server/app/modelconfig/registry.segments/!KG1haW4p.segment.rsc +2 -2
  439. package/.next/standalone/.next/server/app/modelconfig/registry.segments/_full.segment.rsc +5 -5
  440. package/.next/standalone/.next/server/app/modelconfig/registry.segments/_head.segment.rsc +1 -1
  441. package/.next/standalone/.next/server/app/modelconfig/registry.segments/_index.segment.rsc +3 -3
  442. package/.next/standalone/.next/server/app/modelconfig/registry.segments/_tree.segment.rsc +2 -2
  443. package/.next/standalone/.next/server/app/modelconfig/web-search.html +1 -1
  444. package/.next/standalone/.next/server/app/modelconfig/web-search.rsc +5 -5
  445. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/!KG1haW4p/modelconfig/web-search/__PAGE__.segment.rsc +2 -2
  446. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/!KG1haW4p/modelconfig/web-search.segment.rsc +1 -1
  447. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/!KG1haW4p/modelconfig.segment.rsc +1 -1
  448. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/!KG1haW4p.segment.rsc +2 -2
  449. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/_full.segment.rsc +5 -5
  450. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/_head.segment.rsc +1 -1
  451. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/_index.segment.rsc +3 -3
  452. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/_tree.segment.rsc +2 -2
  453. package/.next/standalone/.next/server/app/modelconfig.html +1 -1
  454. package/.next/standalone/.next/server/app/modelconfig.rsc +4 -4
  455. package/.next/standalone/.next/server/app/modelconfig.segments/!KG1haW4p/modelconfig/__PAGE__.segment.rsc +1 -1
  456. package/.next/standalone/.next/server/app/modelconfig.segments/!KG1haW4p/modelconfig.segment.rsc +1 -1
  457. package/.next/standalone/.next/server/app/modelconfig.segments/!KG1haW4p.segment.rsc +2 -2
  458. package/.next/standalone/.next/server/app/modelconfig.segments/_full.segment.rsc +4 -4
  459. package/.next/standalone/.next/server/app/modelconfig.segments/_head.segment.rsc +1 -1
  460. package/.next/standalone/.next/server/app/modelconfig.segments/_index.segment.rsc +3 -3
  461. package/.next/standalone/.next/server/app/modelconfig.segments/_tree.segment.rsc +2 -2
  462. package/.next/standalone/.next/server/app/optapi.html +1 -1
  463. package/.next/standalone/.next/server/app/optapi.rsc +5 -5
  464. package/.next/standalone/.next/server/app/optapi.segments/!KG1haW4p/optapi/__PAGE__.segment.rsc +2 -2
  465. package/.next/standalone/.next/server/app/optapi.segments/!KG1haW4p/optapi.segment.rsc +1 -1
  466. package/.next/standalone/.next/server/app/optapi.segments/!KG1haW4p.segment.rsc +2 -2
  467. package/.next/standalone/.next/server/app/optapi.segments/_full.segment.rsc +5 -5
  468. package/.next/standalone/.next/server/app/optapi.segments/_head.segment.rsc +1 -1
  469. package/.next/standalone/.next/server/app/optapi.segments/_index.segment.rsc +3 -3
  470. package/.next/standalone/.next/server/app/optapi.segments/_tree.segment.rsc +2 -2
  471. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  472. package/.next/standalone/.next/server/app/quality.html +1 -1
  473. package/.next/standalone/.next/server/app/quality.rsc +5 -5
  474. package/.next/standalone/.next/server/app/quality.segments/!KG1haW4p/quality/__PAGE__.segment.rsc +2 -2
  475. package/.next/standalone/.next/server/app/quality.segments/!KG1haW4p/quality.segment.rsc +1 -1
  476. package/.next/standalone/.next/server/app/quality.segments/!KG1haW4p.segment.rsc +2 -2
  477. package/.next/standalone/.next/server/app/quality.segments/_full.segment.rsc +5 -5
  478. package/.next/standalone/.next/server/app/quality.segments/_head.segment.rsc +1 -1
  479. package/.next/standalone/.next/server/app/quality.segments/_index.segment.rsc +3 -3
  480. package/.next/standalone/.next/server/app/quality.segments/_tree.segment.rsc +2 -2
  481. package/.next/standalone/.next/server/app/security.html +1 -1
  482. package/.next/standalone/.next/server/app/security.rsc +5 -5
  483. package/.next/standalone/.next/server/app/security.segments/!KG1haW4p/security/__PAGE__.segment.rsc +2 -2
  484. package/.next/standalone/.next/server/app/security.segments/!KG1haW4p/security.segment.rsc +1 -1
  485. package/.next/standalone/.next/server/app/security.segments/!KG1haW4p.segment.rsc +2 -2
  486. package/.next/standalone/.next/server/app/security.segments/_full.segment.rsc +5 -5
  487. package/.next/standalone/.next/server/app/security.segments/_head.segment.rsc +1 -1
  488. package/.next/standalone/.next/server/app/security.segments/_index.segment.rsc +3 -3
  489. package/.next/standalone/.next/server/app/security.segments/_tree.segment.rsc +2 -2
  490. package/.next/standalone/.next/server/app/skill-detail/page_client-reference-manifest.js +1 -1
  491. package/.next/standalone/.next/server/app/skill-detail.html +1 -1
  492. package/.next/standalone/.next/server/app/skill-detail.rsc +4 -4
  493. package/.next/standalone/.next/server/app/skill-detail.segments/_full.segment.rsc +4 -4
  494. package/.next/standalone/.next/server/app/skill-detail.segments/_head.segment.rsc +1 -1
  495. package/.next/standalone/.next/server/app/skill-detail.segments/_index.segment.rsc +3 -3
  496. package/.next/standalone/.next/server/app/skill-detail.segments/_tree.segment.rsc +2 -2
  497. package/.next/standalone/.next/server/app/skill-detail.segments/skill-detail/__PAGE__.segment.rsc +2 -2
  498. package/.next/standalone/.next/server/app/skill-detail.segments/skill-detail.segment.rsc +1 -1
  499. package/.next/standalone/.next/server/app/skill-eval/grayscale.html +2 -2
  500. package/.next/standalone/.next/server/app/skill-eval/grayscale.rsc +6 -6
  501. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/!KG1haW4p/skill-eval/grayscale/__PAGE__.segment.rsc +2 -2
  502. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/!KG1haW4p/skill-eval/grayscale.segment.rsc +1 -1
  503. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/!KG1haW4p/skill-eval.segment.rsc +1 -1
  504. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/!KG1haW4p.segment.rsc +2 -2
  505. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/_full.segment.rsc +6 -6
  506. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/_head.segment.rsc +1 -1
  507. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/_index.segment.rsc +3 -3
  508. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/_tree.segment.rsc +2 -2
  509. package/.next/standalone/.next/server/app/skill-eval.html +1 -1
  510. package/.next/standalone/.next/server/app/skill-eval.rsc +6 -6
  511. package/.next/standalone/.next/server/app/skill-eval.segments/!KG1haW4p/skill-eval/__PAGE__.segment.rsc +2 -2
  512. package/.next/standalone/.next/server/app/skill-eval.segments/!KG1haW4p/skill-eval.segment.rsc +1 -1
  513. package/.next/standalone/.next/server/app/skill-eval.segments/!KG1haW4p.segment.rsc +2 -2
  514. package/.next/standalone/.next/server/app/skill-eval.segments/_full.segment.rsc +6 -6
  515. package/.next/standalone/.next/server/app/skill-eval.segments/_head.segment.rsc +1 -1
  516. package/.next/standalone/.next/server/app/skill-eval.segments/_index.segment.rsc +3 -3
  517. package/.next/standalone/.next/server/app/skill-eval.segments/_tree.segment.rsc +2 -2
  518. package/.next/standalone/.next/server/app/skill-generator.html +1 -1
  519. package/.next/standalone/.next/server/app/skill-generator.rsc +5 -5
  520. package/.next/standalone/.next/server/app/skill-generator.segments/!KG1haW4p/skill-generator/__PAGE__.segment.rsc +2 -2
  521. package/.next/standalone/.next/server/app/skill-generator.segments/!KG1haW4p/skill-generator.segment.rsc +1 -1
  522. package/.next/standalone/.next/server/app/skill-generator.segments/!KG1haW4p.segment.rsc +2 -2
  523. package/.next/standalone/.next/server/app/skill-generator.segments/_full.segment.rsc +5 -5
  524. package/.next/standalone/.next/server/app/skill-generator.segments/_head.segment.rsc +1 -1
  525. package/.next/standalone/.next/server/app/skill-generator.segments/_index.segment.rsc +3 -3
  526. package/.next/standalone/.next/server/app/skill-generator.segments/_tree.segment.rsc +2 -2
  527. package/.next/standalone/.next/server/app/skill-history.html +1 -1
  528. package/.next/standalone/.next/server/app/skill-history.rsc +6 -6
  529. package/.next/standalone/.next/server/app/skill-history.segments/!KG1haW4p/skill-history/__PAGE__.segment.rsc +2 -2
  530. package/.next/standalone/.next/server/app/skill-history.segments/!KG1haW4p/skill-history.segment.rsc +1 -1
  531. package/.next/standalone/.next/server/app/skill-history.segments/!KG1haW4p.segment.rsc +2 -2
  532. package/.next/standalone/.next/server/app/skill-history.segments/_full.segment.rsc +6 -6
  533. package/.next/standalone/.next/server/app/skill-history.segments/_head.segment.rsc +1 -1
  534. package/.next/standalone/.next/server/app/skill-history.segments/_index.segment.rsc +3 -3
  535. package/.next/standalone/.next/server/app/skill-history.segments/_tree.segment.rsc +2 -2
  536. package/.next/standalone/.next/server/app/skill-opt.html +1 -1
  537. package/.next/standalone/.next/server/app/skill-opt.rsc +5 -5
  538. package/.next/standalone/.next/server/app/skill-opt.segments/!KG1haW4p/skill-opt/__PAGE__.segment.rsc +2 -2
  539. package/.next/standalone/.next/server/app/skill-opt.segments/!KG1haW4p/skill-opt.segment.rsc +1 -1
  540. package/.next/standalone/.next/server/app/skill-opt.segments/!KG1haW4p.segment.rsc +2 -2
  541. package/.next/standalone/.next/server/app/skill-opt.segments/_full.segment.rsc +5 -5
  542. package/.next/standalone/.next/server/app/skill-opt.segments/_head.segment.rsc +1 -1
  543. package/.next/standalone/.next/server/app/skill-opt.segments/_index.segment.rsc +3 -3
  544. package/.next/standalone/.next/server/app/skill-opt.segments/_tree.segment.rsc +2 -2
  545. package/.next/standalone/.next/server/app/skill-release.html +1 -1
  546. package/.next/standalone/.next/server/app/skill-release.rsc +5 -5
  547. package/.next/standalone/.next/server/app/skill-release.segments/!KG1haW4p/skill-release/__PAGE__.segment.rsc +2 -2
  548. package/.next/standalone/.next/server/app/skill-release.segments/!KG1haW4p/skill-release.segment.rsc +1 -1
  549. package/.next/standalone/.next/server/app/skill-release.segments/!KG1haW4p.segment.rsc +2 -2
  550. package/.next/standalone/.next/server/app/skill-release.segments/_full.segment.rsc +5 -5
  551. package/.next/standalone/.next/server/app/skill-release.segments/_head.segment.rsc +1 -1
  552. package/.next/standalone/.next/server/app/skill-release.segments/_index.segment.rsc +3 -3
  553. package/.next/standalone/.next/server/app/skill-release.segments/_tree.segment.rsc +2 -2
  554. package/.next/standalone/.next/server/app/skills.html +1 -1
  555. package/.next/standalone/.next/server/app/skills.rsc +5 -5
  556. package/.next/standalone/.next/server/app/skills.segments/!KG1haW4p/skills/__PAGE__.segment.rsc +2 -2
  557. package/.next/standalone/.next/server/app/skills.segments/!KG1haW4p/skills.segment.rsc +1 -1
  558. package/.next/standalone/.next/server/app/skills.segments/!KG1haW4p.segment.rsc +2 -2
  559. package/.next/standalone/.next/server/app/skills.segments/_full.segment.rsc +5 -5
  560. package/.next/standalone/.next/server/app/skills.segments/_head.segment.rsc +1 -1
  561. package/.next/standalone/.next/server/app/skills.segments/_index.segment.rsc +3 -3
  562. package/.next/standalone/.next/server/app/skills.segments/_tree.segment.rsc +2 -2
  563. package/.next/standalone/.next/server/app/trace.html +1 -1
  564. package/.next/standalone/.next/server/app/trace.rsc +8 -8
  565. package/.next/standalone/.next/server/app/trace.segments/!KG1haW4p/trace/__PAGE__.segment.rsc +2 -2
  566. package/.next/standalone/.next/server/app/trace.segments/!KG1haW4p/trace.segment.rsc +1 -1
  567. package/.next/standalone/.next/server/app/trace.segments/!KG1haW4p.segment.rsc +2 -2
  568. package/.next/standalone/.next/server/app/trace.segments/_full.segment.rsc +8 -8
  569. package/.next/standalone/.next/server/app/trace.segments/_head.segment.rsc +1 -1
  570. package/.next/standalone/.next/server/app/trace.segments/_index.segment.rsc +3 -3
  571. package/.next/standalone/.next/server/app/trace.segments/_tree.segment.rsc +2 -2
  572. package/.next/standalone/.next/server/app/version-analysis.html +1 -0
  573. package/.next/standalone/.next/server/app/version-analysis.meta +16 -0
  574. package/.next/standalone/.next/server/app/version-analysis.rsc +23 -0
  575. package/.next/standalone/.next/server/app/version-analysis.segments/!KG1haW4p/version-analysis/__PAGE__.segment.rsc +9 -0
  576. package/.next/standalone/.next/server/app/version-analysis.segments/!KG1haW4p/version-analysis.segment.rsc +4 -0
  577. package/.next/standalone/.next/server/app/version-analysis.segments/!KG1haW4p.segment.rsc +7 -0
  578. package/.next/standalone/.next/server/app/version-analysis.segments/_full.segment.rsc +23 -0
  579. package/.next/standalone/.next/server/app/version-analysis.segments/_head.segment.rsc +6 -0
  580. package/.next/standalone/.next/server/app/version-analysis.segments/_index.segment.rsc +6 -0
  581. package/.next/standalone/.next/server/app/version-analysis.segments/_tree.segment.rsc +2 -0
  582. package/.next/standalone/.next/server/app/version-management.html +1 -0
  583. package/.next/standalone/.next/server/app/version-management.meta +16 -0
  584. package/.next/standalone/.next/server/app/version-management.rsc +22 -0
  585. package/.next/standalone/.next/server/app/version-management.segments/!KG1haW4p/version-management/__PAGE__.segment.rsc +9 -0
  586. package/.next/standalone/.next/server/app/version-management.segments/!KG1haW4p/version-management.segment.rsc +4 -0
  587. package/.next/standalone/.next/server/app/version-management.segments/!KG1haW4p.segment.rsc +7 -0
  588. package/.next/standalone/.next/server/app/version-management.segments/_full.segment.rsc +22 -0
  589. package/.next/standalone/.next/server/app/version-management.segments/_head.segment.rsc +6 -0
  590. package/.next/standalone/.next/server/app/version-management.segments/_index.segment.rsc +6 -0
  591. package/.next/standalone/.next/server/app/version-management.segments/_tree.segment.rsc +2 -0
  592. package/.next/standalone/.next/server/app-paths-manifest.json +9 -0
  593. package/.next/standalone/.next/server/chunks/[root-of-the-server]__096d00c3._.js +3 -0
  594. package/.next/standalone/.next/server/chunks/[root-of-the-server]__28078c4e._.js +1 -1
  595. package/.next/standalone/.next/server/chunks/[root-of-the-server]__4509f30c._.js +1 -1
  596. package/.next/standalone/.next/server/chunks/[root-of-the-server]__5386e9b4._.js +22 -0
  597. package/.next/standalone/.next/server/chunks/[root-of-the-server]__5cb21a03._.js +3 -0
  598. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6fe0c73e._.js +1 -1
  599. package/.next/standalone/.next/server/chunks/[root-of-the-server]__88e070f0._.js +1 -1
  600. package/.next/standalone/.next/server/chunks/[root-of-the-server]__98ce63c7._.js +1 -1
  601. package/.next/standalone/.next/server/chunks/[root-of-the-server]__9f6a4627._.js +1 -1
  602. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b0d1e6e5._.js +22 -0
  603. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c60fa3da._.js +22 -0
  604. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c875b500._.js +3 -0
  605. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c8b9af98._.js +1 -1
  606. package/.next/standalone/.next/server/chunks/[root-of-the-server]__cfcf074d._.js +3 -0
  607. package/.next/standalone/.next/server/chunks/[root-of-the-server]__d754b2c2._.js +3 -0
  608. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e60b9568._.js +22 -0
  609. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e8b9c639._.js +22 -0
  610. package/.next/standalone/.next/server/chunks/[root-of-the-server]__f30eea21._.js +3 -0
  611. package/.next/standalone/.next/server/chunks/_05c80664._.js +1 -1
  612. package/.next/standalone/.next/server/chunks/_0ce5f29d._.js +1 -1
  613. package/.next/standalone/.next/server/chunks/_0e34c123._.js +3 -3
  614. package/.next/standalone/.next/server/chunks/_1c2f3589._.js +1 -1
  615. package/.next/standalone/.next/server/chunks/{_1a32fa23._.js → _5090183e._.js} +2 -2
  616. package/.next/standalone/.next/server/chunks/{_e84c3e5f._.js → _6a203624._.js} +1 -1
  617. package/.next/standalone/.next/server/chunks/{_a0074544._.js → _70b9b972._.js} +1 -1
  618. package/.next/standalone/.next/server/chunks/_78c6471e._.js +1 -1
  619. package/.next/standalone/.next/server/chunks/_adf9e9c5._.js +1 -1
  620. package/.next/standalone/.next/server/chunks/_b172b746._.js +3 -3
  621. package/.next/standalone/.next/server/chunks/_cfa898f4._.js +1 -1
  622. package/.next/standalone/.next/server/chunks/{_547fcde4._.js → _d02fac80._.js} +2 -2
  623. package/.next/standalone/.next/server/chunks/_d043f698._.js +1 -1
  624. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_fleet_agent_route_actions_b98e2c99.js +3 -0
  625. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_modelconfig_pricing_route_actions_bca6856d.js +3 -0
  626. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_tags_[id]_route_actions_a6f8b324.js +3 -0
  627. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_tags_route_actions_caf13f5f.js +3 -0
  628. package/.next/standalone/.next/server/chunks/bec2d_app_api_observe_version-analysis_tags_[tagId]_traces_route_actions_ff37f2d3.js +3 -0
  629. package/.next/standalone/.next/server/chunks/ce889_server_app_api_observe_executions_[executionId]_tags_route_actions_08aa41a4.js +3 -0
  630. package/.next/standalone/.next/server/chunks/ce889_server_app_api_observe_version-analysis_compare_route_actions_b48ab573.js +3 -0
  631. package/.next/standalone/.next/server/chunks/src_lib_266d6cf4._.js +51 -0
  632. package/.next/standalone/.next/server/chunks/src_lib_5d95b500._.js +3 -0
  633. package/.next/standalone/.next/server/chunks/src_lib_67530201._.js +51 -0
  634. package/.next/standalone/.next/server/chunks/src_lib_9513f84d._.js +48 -0
  635. package/.next/standalone/.next/server/chunks/src_lib_9d09752c._.js +1 -1
  636. package/.next/standalone/.next/server/chunks/src_lib_a03a423b._.js +48 -0
  637. package/.next/standalone/.next/server/chunks/src_lib_a2a34aa6._.js +1 -1
  638. package/.next/standalone/.next/server/chunks/{src_lib_4751db31._.js → src_lib_dc72b90b._.js} +1 -1
  639. package/.next/standalone/.next/server/chunks/src_lib_ea85a447._.js +1 -1
  640. package/.next/standalone/.next/server/chunks/src_lib_engine_general-agent_970b1dfe._.js +2 -2
  641. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0eb5d21d._.js +3 -0
  642. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__83687057._.js +3 -0
  643. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__85e7edfe._.js +3 -0
  644. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__b8d3d1c3._.js +8 -0
  645. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__c69baa4a._.js +3 -0
  646. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__f82e551e._.js +3 -0
  647. package/.next/standalone/.next/server/chunks/ssr/_051b1443._.js +3 -0
  648. package/.next/standalone/.next/server/chunks/ssr/_0ae78458._.js +3 -0
  649. package/.next/standalone/.next/server/chunks/ssr/{_400d0da3._.js → _1278164d._.js} +2 -2
  650. package/.next/standalone/.next/server/chunks/ssr/_15e714f2._.js +3 -0
  651. package/.next/standalone/.next/server/chunks/ssr/_2f20fbfc._.js +3 -0
  652. package/.next/standalone/.next/server/chunks/ssr/_4e720925._.js +3 -0
  653. package/.next/standalone/.next/server/chunks/ssr/_5aa55aa6._.js +3 -0
  654. package/.next/standalone/.next/server/chunks/ssr/_8b68f69f._.js +3 -0
  655. package/.next/standalone/.next/server/chunks/ssr/_8d4b753e._.js +3 -0
  656. package/.next/standalone/.next/server/chunks/ssr/_976dfbab._.js +4 -0
  657. package/.next/standalone/.next/server/chunks/ssr/_aab048d0._.js +1 -1
  658. package/.next/standalone/.next/server/chunks/ssr/_be1ffbbf._.js +12 -0
  659. package/.next/standalone/.next/server/chunks/ssr/_c815e0e7._.js +4 -0
  660. package/.next/standalone/.next/server/chunks/ssr/_e4c81263._.js +3 -0
  661. package/.next/standalone/.next/server/chunks/ssr/{_a3d5f9bc._.js → _e5ee8977._.js} +2 -2
  662. package/.next/standalone/.next/server/chunks/ssr/_f634ea15._.js +12 -0
  663. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_(main)_version-analysis_page_actions_479d49a7.js +3 -0
  664. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_(main)_version-management_page_actions_aea5ae93.js +3 -0
  665. package/.next/standalone/.next/server/chunks/ssr/node_modules_11388c48._.js +3 -0
  666. package/.next/standalone/.next/server/chunks/ssr/node_modules_32596a86._.js +3 -0
  667. package/.next/standalone/.next/server/chunks/ssr/{node_modules_a443e166._.js → node_modules_3b1fd8eb._.js} +2 -2
  668. package/.next/standalone/.next/server/chunks/ssr/node_modules_7680a21d._.js +3 -0
  669. package/.next/standalone/.next/server/chunks/ssr/node_modules_bfffaa78._.js +3 -0
  670. package/.next/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_2e7afafc._.js +3 -0
  671. package/.next/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_cd0b182b._.js +3 -0
  672. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_accessconfig_install_page_tsx_6f4ef3fc._.js +3 -3
  673. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_dashboard_page_tsx_7eac7774._.js +1 -1
  674. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_fault_page_tsx_96431a5d._.js +2 -2
  675. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_metrics_page_tsx_f1599761._.js +1 -1
  676. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_modelconfig_registry_page_tsx_1ead2fd4._.js +1 -1
  677. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_quality_page_tsx_26bb8e80._.js +1 -1
  678. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_trace_page_tsx_41e7865d._.js +1 -1
  679. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_version-analysis_page_tsx_63ae8791._.js +3 -0
  680. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_version-management_page_tsx_87fe0372._.js +3 -0
  681. package/.next/standalone/.next/server/chunks/ssr/src_components_ui_select_tsx_4c0f64d8._.js +1 -1
  682. package/.next/standalone/.next/server/chunks/ssr/{src_lib_evaluators_7597c2fd._.js → src_lib_070bb60a._.js} +2 -2
  683. package/.next/standalone/.next/server/chunks/ssr/src_lib_client_locale-context_tsx_7184d9aa._.js +1 -1
  684. package/.next/standalone/.next/server/pages/404.html +1 -1
  685. package/.next/standalone/.next/server/pages/500.html +2 -2
  686. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  687. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  688. package/.next/standalone/.next/static/chunks/0257c68e82e9f2b0.js +1 -0
  689. package/.next/standalone/.next/static/chunks/{8754e0cf40813330.js → 06ac4297aa02f40a.js} +1 -1
  690. package/.next/standalone/.next/static/chunks/151b95e65092aa16.js +1 -0
  691. package/.next/standalone/.next/static/chunks/1624a1adcb73d784.js +1 -0
  692. package/.next/standalone/.next/static/chunks/1f173de64ad85757.js +10 -0
  693. package/.next/standalone/.next/static/chunks/{4dcd21eef469e66b.js → 2064add303799ffc.js} +1 -1
  694. package/.next/standalone/.next/static/chunks/2fb55cc737806639.js +1 -0
  695. package/.next/standalone/.next/static/chunks/3184105f3d2b47a1.js +10 -0
  696. package/.next/standalone/.next/static/chunks/379315313d164a57.js +1 -0
  697. package/.next/standalone/.next/static/chunks/39157b51ed6489eb.js +1 -0
  698. package/.next/standalone/.next/static/chunks/{dc22f906bd43e9a3.js → 46308ae9f83ac112.js} +3 -3
  699. package/.next/standalone/.next/static/chunks/4d2c017f2f4c9160.css +1 -0
  700. package/.next/standalone/.next/static/chunks/54538e1a80e53392.js +1 -0
  701. package/.next/standalone/.next/static/chunks/599fdc4cf6eb9e95.js +1 -0
  702. package/.next/standalone/.next/static/chunks/5be4d965983c6b40.js +6 -0
  703. package/.next/standalone/.next/static/chunks/63220d0acc5073cc.js +1 -0
  704. package/.next/standalone/.next/static/chunks/6da1d3424f804755.js +1 -0
  705. package/.next/standalone/.next/static/chunks/{04bc84975996b76d.js → 7884153c8f8649dd.js} +1 -1
  706. package/.next/{static/chunks/6b2552d3da7451ee.js → standalone/.next/static/chunks/85ce12a5c9536a2d.js} +1 -1
  707. package/.next/standalone/.next/static/chunks/8668d6f4c34d1e67.js +3 -0
  708. package/.next/standalone/.next/static/chunks/913c61f4f0a12da4.js +1 -0
  709. package/.next/standalone/.next/static/chunks/97822ca2c186f93d.js +1 -0
  710. package/.next/{static/chunks/96c7e2e47438553a.js → standalone/.next/static/chunks/98588c35b1e00bea.js} +1 -1
  711. package/.next/standalone/.next/static/chunks/a99fb4f44f9a41f3.js +1 -0
  712. package/.next/standalone/.next/static/chunks/b11e37b43e38eb95.js +1 -0
  713. package/.next/standalone/.next/static/chunks/b223106f6c610a67.js +1 -0
  714. package/.next/standalone/.next/static/chunks/cc9a7b6a8edabe81.js +1 -0
  715. package/.next/standalone/.next/static/chunks/cf0b4e5d7b804bf5.js +1 -0
  716. package/.next/standalone/.next/static/chunks/cfb3924a60d22c64.js +1 -0
  717. package/.next/standalone/.next/static/chunks/d15d7f6146b85000.js +1 -0
  718. package/.next/standalone/.next/static/chunks/dee90c3e29cd39bb.js +1 -0
  719. package/.next/standalone/.next/static/chunks/df6f2eedbe05162e.js +1 -0
  720. package/.next/standalone/.next/static/chunks/e0af9e5baf811284.js +4 -0
  721. package/.next/standalone/.next/static/chunks/f61ffd647f90b66c.js +1 -0
  722. package/.next/standalone/.next/static/chunks/{bf909bd0ff1898e4.js → f6954ae67d81050e.js} +1 -1
  723. package/.next/standalone/.next/static/chunks/fc7f5db841a7032a.js +1 -0
  724. package/.next/standalone/docker-compose.amd64.yml +2 -1
  725. package/.next/standalone/docker-compose.arm64.yml +11 -0
  726. package/.next/standalone/node_modules/.prisma/client/edge.js +26 -3
  727. package/.next/standalone/node_modules/.prisma/client/index-browser.js +23 -0
  728. package/.next/standalone/node_modules/.prisma/client/index.js +26 -3
  729. package/.next/standalone/node_modules/.prisma/client/package.json +1 -1
  730. package/.next/standalone/node_modules/.prisma/client/schema.prisma +39 -0
  731. package/.next/standalone/node_modules/.prisma/client/wasm.js +23 -0
  732. package/.next/standalone/package.json +1 -1
  733. package/.next/standalone/prisma/schema.prisma +38 -0
  734. package/.next/static/chunks/0257c68e82e9f2b0.js +1 -0
  735. package/.next/static/chunks/{8754e0cf40813330.js → 06ac4297aa02f40a.js} +1 -1
  736. package/.next/static/chunks/151b95e65092aa16.js +1 -0
  737. package/.next/static/chunks/1624a1adcb73d784.js +1 -0
  738. package/.next/static/chunks/1f173de64ad85757.js +10 -0
  739. package/.next/static/chunks/{4dcd21eef469e66b.js → 2064add303799ffc.js} +1 -1
  740. package/.next/static/chunks/2fb55cc737806639.js +1 -0
  741. package/.next/static/chunks/3184105f3d2b47a1.js +10 -0
  742. package/.next/static/chunks/379315313d164a57.js +1 -0
  743. package/.next/static/chunks/39157b51ed6489eb.js +1 -0
  744. package/.next/static/chunks/{dc22f906bd43e9a3.js → 46308ae9f83ac112.js} +3 -3
  745. package/.next/static/chunks/4d2c017f2f4c9160.css +1 -0
  746. package/.next/static/chunks/54538e1a80e53392.js +1 -0
  747. package/.next/static/chunks/599fdc4cf6eb9e95.js +1 -0
  748. package/.next/static/chunks/5be4d965983c6b40.js +6 -0
  749. package/.next/static/chunks/63220d0acc5073cc.js +1 -0
  750. package/.next/static/chunks/6da1d3424f804755.js +1 -0
  751. package/.next/static/chunks/{04bc84975996b76d.js → 7884153c8f8649dd.js} +1 -1
  752. package/.next/{standalone/.next/static/chunks/6b2552d3da7451ee.js → static/chunks/85ce12a5c9536a2d.js} +1 -1
  753. package/.next/static/chunks/8668d6f4c34d1e67.js +3 -0
  754. package/.next/static/chunks/913c61f4f0a12da4.js +1 -0
  755. package/.next/static/chunks/97822ca2c186f93d.js +1 -0
  756. package/.next/{standalone/.next/static/chunks/96c7e2e47438553a.js → static/chunks/98588c35b1e00bea.js} +1 -1
  757. package/.next/static/chunks/a99fb4f44f9a41f3.js +1 -0
  758. package/.next/static/chunks/b11e37b43e38eb95.js +1 -0
  759. package/.next/static/chunks/b223106f6c610a67.js +1 -0
  760. package/.next/static/chunks/cc9a7b6a8edabe81.js +1 -0
  761. package/.next/static/chunks/cf0b4e5d7b804bf5.js +1 -0
  762. package/.next/static/chunks/cfb3924a60d22c64.js +1 -0
  763. package/.next/static/chunks/d15d7f6146b85000.js +1 -0
  764. package/.next/static/chunks/dee90c3e29cd39bb.js +1 -0
  765. package/.next/static/chunks/df6f2eedbe05162e.js +1 -0
  766. package/.next/static/chunks/e0af9e5baf811284.js +4 -0
  767. package/.next/static/chunks/f61ffd647f90b66c.js +1 -0
  768. package/.next/static/chunks/{bf909bd0ff1898e4.js → f6954ae67d81050e.js} +1 -1
  769. package/.next/static/chunks/fc7f5db841a7032a.js +1 -0
  770. package/package.json +1 -1
  771. package/prisma/schema.prisma +38 -0
  772. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2574e6ed._.js +0 -3
  773. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2710fb53._.js +0 -3
  774. package/.next/standalone/.next/server/chunks/[root-of-the-server]__8cc92af1._.js +0 -3
  775. package/.next/standalone/.next/server/chunks/[root-of-the-server]__9d2e5f60._.js +0 -3
  776. package/.next/standalone/.next/server/chunks/[root-of-the-server]__bd3dc3ab._.js +0 -3
  777. package/.next/standalone/.next/server/chunks/src_lib_6cb48964._.js +0 -32
  778. package/.next/standalone/.next/server/chunks/src_lib_a3155704._.js +0 -3
  779. package/.next/standalone/.next/server/chunks/src_lib_baaf83ef._.js +0 -29
  780. package/.next/standalone/.next/server/chunks/src_lib_bf0ee699._.js +0 -32
  781. package/.next/standalone/.next/server/chunks/src_lib_dbf3c792._.js +0 -29
  782. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__2ec2bb09._.js +0 -3
  783. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__3cb83dc3._.js +0 -3
  784. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__c9cf8076._.js +0 -8
  785. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__fc94ba06._.js +0 -3
  786. package/.next/standalone/.next/server/chunks/ssr/_0141e5c7._.js +0 -3
  787. package/.next/standalone/.next/server/chunks/ssr/_0acdaaae._.js +0 -3
  788. package/.next/standalone/.next/server/chunks/ssr/_231821bd._.js +0 -3
  789. package/.next/standalone/.next/server/chunks/ssr/_5d1f8671._.js +0 -12
  790. package/.next/standalone/.next/server/chunks/ssr/_8bba8b8d._.js +0 -3
  791. package/.next/standalone/.next/server/chunks/ssr/_96725836._.js +0 -12
  792. package/.next/standalone/.next/server/chunks/ssr/_b08dc931._.js +0 -3
  793. package/.next/standalone/.next/server/chunks/ssr/_c4db9cec._.js +0 -3
  794. package/.next/standalone/.next/server/chunks/ssr/node_modules_8bfa35b3._.js +0 -3
  795. package/.next/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_30858f09._.js +0 -3
  796. package/.next/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_f1e06ad8._.js +0 -3
  797. package/.next/standalone/.next/static/chunks/0b6bd84bf10579a4.js +0 -10
  798. package/.next/standalone/.next/static/chunks/0bca64d67dceae3f.js +0 -1
  799. package/.next/standalone/.next/static/chunks/16047b19dda5c90d.js +0 -10
  800. package/.next/standalone/.next/static/chunks/3a0f454536f3ebc8.js +0 -1
  801. package/.next/standalone/.next/static/chunks/3d19f62114122bd3.js +0 -1
  802. package/.next/standalone/.next/static/chunks/3d6127f72467176d.js +0 -1
  803. package/.next/standalone/.next/static/chunks/44545e70bb7a33b8.js +0 -1
  804. package/.next/standalone/.next/static/chunks/4e52a5c5e332595a.js +0 -1
  805. package/.next/standalone/.next/static/chunks/6238734a2f04b1f9.js +0 -1
  806. package/.next/standalone/.next/static/chunks/66b23011cd8544ad.js +0 -1
  807. package/.next/standalone/.next/static/chunks/7a758615e3d35d6d.js +0 -1
  808. package/.next/standalone/.next/static/chunks/7a7dc24eed0484dc.js +0 -1
  809. package/.next/standalone/.next/static/chunks/7d4fa817c5229801.js +0 -1
  810. package/.next/standalone/.next/static/chunks/8f18a711543d804a.js +0 -1
  811. package/.next/standalone/.next/static/chunks/9155a6c07dc0502d.js +0 -6
  812. package/.next/standalone/.next/static/chunks/94fdb955b1dc512a.js +0 -1
  813. package/.next/standalone/.next/static/chunks/97b8d7ea5d04e2a2.js +0 -1
  814. package/.next/standalone/.next/static/chunks/a31bf4e176b5e90c.js +0 -3
  815. package/.next/standalone/.next/static/chunks/b9597989b5b0abd3.js +0 -1
  816. package/.next/standalone/.next/static/chunks/d170174df1128338.js +0 -1
  817. package/.next/standalone/.next/static/chunks/d91c2c0bbe0b59ab.js +0 -1
  818. package/.next/standalone/.next/static/chunks/e159d293fc72e91b.css +0 -1
  819. package/.next/standalone/.next/static/chunks/e45a4e085c7ce03c.js +0 -1
  820. package/.next/standalone/.next/static/chunks/efe225251ea151f0.js +0 -4
  821. package/.next/standalone/.next/static/chunks/ffd21617593aaafd.js +0 -1
  822. package/.next/static/chunks/0b6bd84bf10579a4.js +0 -10
  823. package/.next/static/chunks/0bca64d67dceae3f.js +0 -1
  824. package/.next/static/chunks/16047b19dda5c90d.js +0 -10
  825. package/.next/static/chunks/3a0f454536f3ebc8.js +0 -1
  826. package/.next/static/chunks/3d19f62114122bd3.js +0 -1
  827. package/.next/static/chunks/3d6127f72467176d.js +0 -1
  828. package/.next/static/chunks/44545e70bb7a33b8.js +0 -1
  829. package/.next/static/chunks/4e52a5c5e332595a.js +0 -1
  830. package/.next/static/chunks/6238734a2f04b1f9.js +0 -1
  831. package/.next/static/chunks/66b23011cd8544ad.js +0 -1
  832. package/.next/static/chunks/7a758615e3d35d6d.js +0 -1
  833. package/.next/static/chunks/7a7dc24eed0484dc.js +0 -1
  834. package/.next/static/chunks/7d4fa817c5229801.js +0 -1
  835. package/.next/static/chunks/8f18a711543d804a.js +0 -1
  836. package/.next/static/chunks/9155a6c07dc0502d.js +0 -6
  837. package/.next/static/chunks/94fdb955b1dc512a.js +0 -1
  838. package/.next/static/chunks/97b8d7ea5d04e2a2.js +0 -1
  839. package/.next/static/chunks/a31bf4e176b5e90c.js +0 -3
  840. package/.next/static/chunks/b9597989b5b0abd3.js +0 -1
  841. package/.next/static/chunks/d170174df1128338.js +0 -1
  842. package/.next/static/chunks/d91c2c0bbe0b59ab.js +0 -1
  843. package/.next/static/chunks/e159d293fc72e91b.css +0 -1
  844. package/.next/static/chunks/e45a4e085c7ce03c.js +0 -1
  845. package/.next/static/chunks/efe225251ea151f0.js +0 -4
  846. package/.next/static/chunks/ffd21617593aaafd.js +0 -1
  847. /package/.next/standalone/.next/static/{iE8084jR9Kgb7Bhs3Xokh → pzAy0mrZCL0PmE4h3HDut}/_buildManifest.js +0 -0
  848. /package/.next/standalone/.next/static/{iE8084jR9Kgb7Bhs3Xokh → pzAy0mrZCL0PmE4h3HDut}/_clientMiddlewareManifest.json +0 -0
  849. /package/.next/standalone/.next/static/{iE8084jR9Kgb7Bhs3Xokh → pzAy0mrZCL0PmE4h3HDut}/_ssgManifest.js +0 -0
  850. /package/.next/static/{iE8084jR9Kgb7Bhs3Xokh → pzAy0mrZCL0PmE4h3HDut}/_buildManifest.js +0 -0
  851. /package/.next/static/{iE8084jR9Kgb7Bhs3Xokh → pzAy0mrZCL0PmE4h3HDut}/_clientMiddlewareManifest.json +0 -0
  852. /package/.next/static/{iE8084jR9Kgb7Bhs3Xokh → pzAy0mrZCL0PmE4h3HDut}/_ssgManifest.js +0 -0
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,615408,e=>{"use strict";e.s(["presetEvaluators",0,[{id:"preset-agent-task-completion",name:"Agent 任务完成度",description:"评估 Agent 是否成功、完整地实现了用户目标,适合回归集和上线验收。",evaluatorType:"LLM",source:"preset",targetTypes:["结果"],objectives:["任务完成","内容质量"],scenarios:["Agent通用评测"],runMode:"LLM Judge",scoreRange:"0-1",popularity:96,mappedMetrics:["目标达成","步骤完整","答案可用"],status:"ready",runtimeHref:"/eval/trajectory",runtimeNote:"opencode-task-completion-evaluator.ts (single opencode agent)"},{id:"preset-agent-trace-quality",name:"Agent 轨迹质量",description:"评估 Agent 内部执行轨迹是否准确、稳定,关注规划、调用和中间结果。基于 opencode 单主评估器完成 completeness / tool-choice / attribution 判断,并结合规则冗余检测。",evaluatorType:"LLM",source:"preset",targetTypes:["轨迹"],objectives:["轨迹质量"],scenarios:["Agent通用评测","轨迹评测"],runMode:"Trace Judge (opencode)",scoreRange:"0-1",popularity:91,mappedMetrics:["轨迹准确性","推理连续性","异常处理"],status:"ready",runtimeHref:"/eval/trajectory",runtimeNote:"opencode-trajectory-evaluator.ts (single opencode agent)"}]])},994004,e=>{"use strict";let t=(0,e.i(456420).default)("history",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]]);e.s(["History",()=>t],994004)},482022,e=>{"use strict";let t=(0,e.i(456420).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",()=>t],482022)},77071,e=>{"use strict";let t=(0,e.i(456420).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);e.s(["Plus",()=>t],77071)},741120,e=>{"use strict";let t=(0,e.i(456420).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",()=>t],741120)},583967,e=>{"use strict";let t=(0,e.i(456420).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);e.s(["XCircle",()=>t],583967)},616933,e=>{"use strict";let t=(0,e.i(456420).default)("circle-check",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);e.s(["default",()=>t])},632781,e=>{"use strict";let t=(0,e.i(456420).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["Loader2",()=>t],632781)},853138,e=>{"use strict";let t=(0,e.i(456420).default)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["AlertTriangle",()=>t],853138)},716327,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["ChevronDown",()=>t],716327)},867927,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",()=>t],867927)},847211,e=>{"use strict";let t=(0,e.i(456420).default)("ban",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M4.929 4.929 19.07 19.071",key:"196cmz"}]]);e.s(["Ban",()=>t],847211)},551757,e=>{"use strict";var t=e.i(616933);e.s(["CheckCircle2",()=>t.default])},474544,e=>{"use strict";let t=(0,e.i(456420).default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);e.s(["Clock",()=>t],474544)},51907,e=>{"use strict";var t=e.i(843476),r=e.i(853138),a=e.i(847211),s=e.i(551757),n=e.i(474544),l=e.i(632781),o=e.i(583967),c=e.i(975157);let i={running:{subtle:"bg-blue-50 text-blue-700 border-blue-200 dark:bg-blue-500/10 dark:text-blue-300 dark:border-blue-400/30",outline:"bg-transparent text-blue-700 border-blue-300 dark:text-blue-300 dark:border-blue-400/40",iconClass:"animate-spin"},success:{subtle:"bg-success-subtle text-success border-success-border",outline:"bg-transparent text-success border-success/40"},warning:{subtle:"bg-warning-subtle text-warning border-warning-border",outline:"bg-transparent text-warning border-warning/40"},error:{subtle:"bg-error-subtle text-error border-error-border",outline:"bg-transparent text-error border-error/40"},cancelled:{subtle:"bg-background-secondary text-foreground-muted border-border",outline:"bg-transparent text-foreground-muted border-border-dark"},pending:{subtle:"bg-background-secondary text-foreground-muted border-border",outline:"bg-transparent text-foreground-muted border-border"}},d={running:l.Loader2,success:s.CheckCircle2,warning:r.AlertTriangle,error:o.XCircle,cancelled:a.Ban,pending:n.Clock};function u({status:e,label:r,variant:a="subtle",size:s="sm",className:n,...l}){let o=d[e],u=i[e];return(0,t.jsxs)("span",{role:"status",className:(0,c.cn)("inline-flex items-center rounded-sm border font-medium whitespace-nowrap","sm"===s?"h-5 px-1.5 text-xs gap-1":"h-6 px-2 text-sm gap-1.5",u[a],n),...l,children:[(0,t.jsx)(o,{className:(0,c.cn)("size-3.5 shrink-0",u.iconClass),"aria-hidden":!0}),(0,t.jsx)("span",{children:r})]})}e.s(["StatusBadge",()=>u])}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,256225,e=>{"use strict";var t=e.i(167225),a=e.i(843476),n=e.i(522016),r=e.i(618566),s=e.i(271645),o=e.i(711241),l=e.i(456420);let i=(0,l.default)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);var u=e.i(741120),c=e.i(263676),d=e.i(583967),m=e.i(747925),h=e.i(882303);let f=(0,l.default)("layers",[["path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z",key:"zw3jo"}],["path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12",key:"1wduqc"}],["path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17",key:"kqbvx6"}]]);var p=e.i(604139),g=e.i(395925),x=e.i(112092),b=e.i(438847),y=e.i(846696),v=e.i(540568),j=e.i(975157);let w={default:"w-full px-6 py-6",wide:"w-full px-8 py-6",canvas:"w-full p-0"};function N({variant:e="default",className:t,children:n}){return(0,a.jsx)("div",{className:(0,j.cn)("flex-1 flex flex-col min-h-0 overflow-y-auto",w[e],t),children:n})}function k({className:e,children:t}){return(0,a.jsx)("div",{className:(0,j.cn)("flex-1 min-h-0",e),children:t})}function S({className:e,children:t}){return(0,a.jsx)("div",{className:(0,j.cn)("flex items-center justify-between gap-3 mt-4 pt-3 border-t border-border",e),children:t})}var C=e.i(284148),P=e.i(24071),M=e.i(566595);function z({className:e,type:t,...n}){return(0,a.jsx)("input",{type:t,"data-slot":"input",className:(0,j.cn)("border-input file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",e),...n})}var A=e.i(519455);let T=(0,e.i(225913).cva)("inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function D({className:e,variant:t,...n}){return(0,a.jsx)("div",{className:(0,j.cn)(T({variant:t}),e),...n})}var W=e.i(183752);let O=[{column:"query",type:"string",label:"查询内容",description:"用户输入 / 问题",syncMode:"textSearch",nullable:!0},{column:"finalResult",type:"string",label:"输出内容",description:"trace 最终输出",syncMode:"textSearch",nullable:!0},{column:"agentName",type:"string",label:"Agent 名",description:"主 Agent 名称",syncMode:"textSearch",nullable:!0},{column:"subagentName",type:"string",label:"子 Agent 名",description:"子 Agent 显示名",syncMode:"textSearch",nullable:!0},{column:"model",type:"string",label:"模型",description:"LLM 模型名",syncMode:"textSearch",nullable:!0},{column:"label",type:"string",label:"标注",description:"人工标注",syncMode:"textSearch",nullable:!0},{column:"framework",type:"stringOptions",label:"框架",description:"采集框架 / 平台",syncMode:"exactOption",nullable:!0},{column:"subagentType",type:"stringOptions",label:"子 Agent 类型",description:"kuafu / general …",syncMode:"exactOption",nullable:!0},{column:"latency",type:"number",label:"耗时",description:"执行时长(秒)",unit:"s",nullable:!0},{column:"tokens",type:"number",label:"Tokens",description:"总 token 数",nullable:!0},{column:"inputTokens",type:"number",label:"输入 Tokens",description:"输入 token 数",nullable:!0},{column:"outputTokens",type:"number",label:"输出 Tokens",description:"输出 token 数",nullable:!0},{column:"cost",type:"number",label:"成本",description:"估算成本($)",unit:"$",nullable:!0},{column:"toolCallCount",type:"number",label:"工具调用数",description:"工具调用次数",nullable:!0},{column:"toolCallErrorCount",type:"number",label:"工具错误数",description:"工具调用失败次数",nullable:!0},{column:"answerScore",type:"number",label:"答案分",description:"答案得分(0–1)",nullable:!0},{column:"skillScore",type:"number",label:"Skill 分",description:"Skill 得分(0–1)",nullable:!0},{column:"skillTriggerRate",type:"number",label:"Skill 触发率",description:"触发率(0–1)",nullable:!0},{column:"timestamp",type:"datetime",label:"时间",description:"trace 起始时间"},{column:"isAnswerCorrect",type:"boolean",label:"答案正确",description:"评测:答案是否正确",nullable:!0},{column:"isSubagent",type:"boolean",label:"是子 Agent",description:"是否子 Agent 执行"},{column:"agents",type:"arrayOptions",label:"Agent(多选)",description:"trace 涉及的 agent",field:"observedAgents",source:"observedAgents",syncMode:"arrayOption",nullable:!0},{column:"skill",type:"arrayOptions",label:"Skill",description:"调用的 skill",source:"executionSkill",syncMode:"arrayOption"},{column:"status",type:"stringOptions",label:"状态",description:"running / success / failed",source:"computed",syncMode:"exactOption"},{column:"ownership",type:"stringOptions",label:"归属",description:"user / system",source:"computed",syncMode:"exactOption"}],R=new Map(O.map(e=>[e.column,e])),E={string:["=","contains","does not contain","starts with","ends with"],number:["=",">","<",">=","<="],datetime:[">","<",">=","<="],stringOptions:["any of","none of"],arrayOptions:["any of","none of","all of"],boolean:["="]},I=["is null","is not null"],$=O.filter(e=>"computed"!==e.source&&"executionSkill"!==e.source&&"query"!==e.column&&"finalResult"!==e.column),F=new Set(["framework","agentName","model","subagentType"]);function L(e){return({"=":"=",contains:"包含","does not contain":"不包含","starts with":"前缀","ends with":"后缀",">":">","<":"<",">=":"≥","<=":"≤","any of":"任一","none of":"非","all of":"全部","is null":"为空","is not null":"非空"})[e]??e}function _({clauses:e,onChange:t,search:n,onSearchChange:r,user:o}){let l,i=(0,s.useRef)(null),u=(0,s.useRef)(null),[d,m]=(0,s.useState)(!1),[h,f]=(0,s.useState)("field"),[p,g]=(0,s.useState)(null),[x,b]=(0,s.useState)("contains"),[y,v]=(0,s.useState)(""),[w,N]=(0,s.useState)(new Set),[k,S]=(0,s.useState)([]),[C,T]=(0,s.useState)(n),[O,_]=(0,s.useState)(n);n!==O&&(_(n),n!==C.trim()&&T(n));let X=(0,s.useRef)(r);(0,s.useEffect)(()=>{X.current=r}),(0,s.useEffect)(()=>{let e=setTimeout(()=>X.current(C.trim()),300);return()=>clearTimeout(e)},[C]);let U=(0,s.useCallback)(()=>{f("field"),g(null),v(""),N(new Set),S([])},[]),K=(0,s.useCallback)(()=>{m(!1),U()},[U]);(0,s.useEffect)(()=>{if(!d)return;let e=e=>{i.current&&!i.current.contains(e.target)&&K()};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[d,K]);let J=(0,s.useMemo)(()=>{let e=C.trim().toLowerCase();return $.filter(t=>!e||t.label.toLowerCase().includes(e)||t.column.toLowerCase().includes(e))},[C]);(0,s.useEffect)(()=>{if("value"!==h||!p||!F.has(p.column))return;let e=!0;return(0,W.apiFetch)(`/api/observe/data?user=${encodeURIComponent(o)}&facet=values&column=${encodeURIComponent(p.column)}`).then(e=>e.json()).then(t=>{e&&S(Array.isArray(t)?t:[])}).catch(()=>e&&S([])),()=>{e=!1}},[h,p,o]);let[Q,Y]=(0,s.useState)([]);(0,s.useEffect)(()=>{let e=$.filter(e=>"stringOptions"===e.type&&F.has(e.column)).slice(0,4),t=!0;return Promise.all(e.map(e=>(0,W.apiFetch)(`/api/observe/data?user=${encodeURIComponent(o)}&facet=values&column=${encodeURIComponent(e.column)}`).then(e=>e.json()).then(t=>Array.isArray(t)&&t[0]?{column:e.column,value:t[0].value,count:t[0].count}:null).catch(()=>null))).then(e=>{t&&Y(e.filter(e=>null!=e))}),()=>{t=!1}},[o]);let H=a=>{t([...e,a]),U(),u.current?.focus()},q=()=>{if(!p)return;if("is null"===x||"is not null"===x)return void H({column:p.column,operator:x});if("boolean"===p.type)return;if("stringOptions"===p.type){if(0===w.size)return;H({column:p.column,operator:x,value:Array.from(w)});return}let e=y.trim();if(!e)return;let t=e;if("datetime"===p.type){let a=new Date(e);if(Number.isNaN(a.getTime()))return;t=a.toISOString()}H({column:p.column,operator:x,value:t})};return(0,a.jsxs)("div",{ref:i,className:"relative",children:[(0,a.jsxs)("div",{className:(0,j.cn)("flex flex-wrap items-center gap-1.5 rounded-md border border-input bg-transparent px-2.5 py-1.5 min-h-9 cursor-text","focus-within:ring-1 focus-within:ring-ring"),onMouseDown:e=>{e.target===e.currentTarget&&(e.preventDefault(),u.current?.focus(),m(!0))},children:[(0,a.jsx)(M.Search,{className:"size-4 text-foreground-muted shrink-0"}),e.map((n,r)=>(0,a.jsxs)(D,{variant:"secondary",className:"gap-1 pl-2 pr-1 py-0.5 text-xs font-normal",children:[function(e){var t;let a=(t=e.column,R.get(t)),n=a?.label??e.column;if("is null"===e.operator||"is not null"===e.operator)return`${n} ${L(e.operator)}`;let r=Array.isArray(e.value)?e.value.join(" / "):String(e.value??"");return`${n} ${L(e.operator)} ${r}`}(n),(0,a.jsx)("button",{type:"button",onClick:()=>t(e.filter((e,t)=>t!==r)),className:"rounded-sm hover:bg-background-secondary p-0.5","aria-label":"移除过滤",children:(0,a.jsx)(c.X,{className:"size-3"})})]},r)),(0,a.jsx)("input",{ref:u,value:C,onChange:e=>T(e.target.value),onFocus:()=>m(!0),onKeyDown:e=>{"Escape"===e.key&&(K(),u.current?.blur())},placeholder:e.length?"继续搜索 / 过滤…":"搜索输入/输出内容或 Trace ID,或点选字段过滤…","aria-label":"搜索或过滤 trace",className:"flex-1 min-w-[10rem] bg-transparent outline-none text-sm h-6 placeholder:text-muted-foreground"})]}),d&&(0,a.jsx)("div",{className:"absolute left-0 top-full mt-1 z-50 w-full max-w-md rounded-md border border-card-border bg-card text-card-foreground shadow-sm",children:"field"===h?(0,a.jsxs)("div",{className:"py-1",children:[C.trim()&&(0,a.jsxs)("button",{type:"button",onMouseDown:e=>e.preventDefault(),onClick:()=>{m(!1),u.current?.blur()},className:"flex w-full items-center gap-2 border-b border-card-border px-3 py-2 text-left text-xs text-foreground-muted hover:bg-background-secondary",children:[(0,a.jsx)(M.Search,{className:"size-3.5 shrink-0"}),(0,a.jsxs)("span",{className:"truncate",children:["模糊搜索输入/输出含 ",(0,a.jsx)("span",{className:"font-medium text-foreground",children:C.trim()})]})]}),!C.trim()&&Q.length>0&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"px-3 pb-1 pt-1.5 text-[11px] font-medium uppercase tracking-wide text-foreground-muted",children:"建议"}),(0,a.jsx)("ul",{className:"pb-1",children:Q.map(e=>(0,a.jsx)("li",{children:(0,a.jsxs)("button",{type:"button",onClick:()=>H({column:e.column,operator:"any of",value:[e.value]}),className:"flex w-full items-center justify-between gap-3 px-3 py-1.5 text-left text-sm hover:bg-background-secondary",children:[(0,a.jsxs)("span",{className:"truncate font-mono text-xs",children:[(0,a.jsxs)("span",{className:"text-foreground-muted",children:[e.column,":"]}),e.value]}),(0,a.jsx)("span",{className:"shrink-0 text-xs tabular-nums text-foreground-muted",children:e.count})]})},e.column))})]}),(0,a.jsx)("div",{className:"px-3 pb-1 pt-1.5 text-[11px] font-medium uppercase tracking-wide text-foreground-muted",children:"字段"}),(0,a.jsxs)("ul",{className:"max-h-64 overflow-auto pb-1",children:[J.map(e=>(0,a.jsx)("li",{children:(0,a.jsxs)("button",{type:"button",onClick:()=>{g(e),b(function(e){switch(e.type){case"string":return"contains";case"number":return">";case"datetime":return">=";case"stringOptions":case"arrayOptions":return"any of";case"boolean":return"="}}(e)),v(""),N(new Set),T(""),f("value")},className:"flex w-full items-center gap-3 px-3 py-1.5 text-left text-sm hover:bg-background-secondary",children:[(0,a.jsx)(M.Search,{className:"size-4 shrink-0 text-foreground-muted"}),(0,a.jsx)("span",{className:"font-medium",children:e.label}),(0,a.jsx)("span",{className:"font-mono text-xs text-foreground-muted",children:e.column}),e.description&&(0,a.jsx)("span",{className:"ml-auto truncate text-xs text-foreground-muted",children:e.description})]})},e.column)),0===J.length&&(0,a.jsx)("li",{className:"px-3 py-2 text-xs text-foreground-muted",children:"无匹配字段"})]})]}):p&&(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"flex items-center gap-1 p-2 border-b border-border",children:[(0,a.jsx)("button",{type:"button",onClick:U,className:"rounded-sm hover:bg-background-secondary p-1","aria-label":"返回字段",children:(0,a.jsx)(P.ChevronLeft,{className:"size-4"})}),(0,a.jsx)("span",{className:"text-sm font-medium",children:p.label}),(0,a.jsx)("select",{value:x,onChange:e=>b(e.target.value),className:"ml-auto h-7 rounded-md border border-border bg-background text-xs px-1",children:(l=E[p.type],p.nullable?[...l,...I]:l).map(e=>(0,a.jsx)("option",{value:e,children:L(e)},e))})]}),(0,a.jsx)("div",{className:"p-2",children:"is null"===x||"is not null"===x?(0,a.jsx)(A.Button,{size:"sm",className:"w-full h-8 text-xs",onClick:q,children:"添加"}):"boolean"===p.type?(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsx)(A.Button,{size:"sm",variant:"outline",className:"flex-1 h-8 text-xs",onClick:()=>H({column:p.column,operator:"=",value:!0}),children:"是 / true"}),(0,a.jsx)(A.Button,{size:"sm",variant:"outline",className:"flex-1 h-8 text-xs",onClick:()=>H({column:p.column,operator:"=",value:!1}),children:"否 / false"})]}):"stringOptions"===p.type?(0,a.jsx)(B,{facet:k,picked:w,onToggle:e=>N(t=>{let a=new Set(t);return a.has(e)?a.delete(e):a.add(e),a}),onConfirm:q}):(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsx)(z,{autoFocus:!0,type:"number"===p.type?"number":"datetime"===p.type?"datetime-local":"text",value:y,onChange:e=>v(e.target.value),onKeyDown:e=>"Enter"===e.key&&q(),placeholder:p.unit?`值(${p.unit})`:"值…",className:"h-8 text-sm"}),(0,a.jsx)(A.Button,{size:"sm",className:"h-8 text-xs shrink-0",onClick:q,children:"添加"})]})})]})})]})}function B({facet:e,picked:t,onToggle:n,onConfirm:r}){return(0,a.jsxs)("div",{children:[(0,a.jsxs)("ul",{className:"max-h-56 overflow-auto -mx-2",children:[e.map(e=>(0,a.jsx)("li",{children:(0,a.jsxs)("button",{type:"button",onClick:()=>n(e.value),className:"flex w-full items-center justify-between px-3 py-1.5 text-sm hover:bg-background-secondary text-left",children:[(0,a.jsxs)("span",{className:"flex items-center gap-2",children:[(0,a.jsx)("input",{type:"checkbox",readOnly:!0,checked:t.has(e.value),className:"pointer-events-none"}),e.value]}),(0,a.jsx)("span",{className:"text-xs text-foreground-muted tabular-nums",children:e.count})]})},e.value)),0===e.length&&(0,a.jsx)("li",{className:"px-3 py-2 text-xs text-foreground-muted",children:"无可选值"})]}),(0,a.jsxs)(A.Button,{size:"sm",className:"w-full h-8 text-xs mt-2",disabled:0===t.size,onClick:r,children:["添加(",t.size,")"]})]})}var X=e.i(716327),U=e.i(867927);let K=[{column:"skill",kind:"select",defaultOpen:!0},{column:"subagentType",kind:"select"},{column:"model",kind:"contains",defaultOpen:!0},{column:"latency",kind:"range",defaultOpen:!0},{column:"tokens",kind:"range"},{column:"cost",kind:"range"},{column:"answerScore",kind:"range"},{column:"isAnswerCorrect",kind:"boolean"}];function J({clauses:e,onChange:t,user:n}){return(0,a.jsx)("div",{className:"divide-y divide-card-border",children:K.map(r=>{var s;let o,l=(s=r.column,R.get(s));return l?(0,a.jsx)(Q,{col:l,kind:r.kind,defaultOpen:r.defaultOpen,user:n,current:(o=r.column,e.filter(e=>e.column===o)),onSet:a=>{let n;return n=r.column,t([...e.filter(e=>e.column!==n),...a])}},r.column):null})})}function Q({col:e,kind:t,defaultOpen:n,user:r,current:o,onSet:l}){let[i,u]=(0,s.useState)(!!n),c=o.length>0;return(0,a.jsxs)("div",{className:"py-2",children:[(0,a.jsxs)("button",{type:"button",onClick:()=>u(e=>!e),className:"flex w-full items-center gap-1.5 px-1 text-left",children:[i?(0,a.jsx)(X.ChevronDown,{className:"size-3.5 text-foreground-muted"}):(0,a.jsx)(U.ChevronRight,{className:"size-3.5 text-foreground-muted"}),(0,a.jsx)("span",{className:"text-sm font-medium",children:e.label}),(0,a.jsx)("span",{className:"font-mono text-[11px] text-foreground-muted",children:e.column}),c&&(0,a.jsx)("span",{className:"ml-auto size-1.5 rounded-full bg-primary","aria-label":"已启用"})]}),i&&(0,a.jsxs)("div",{className:"mt-1.5 px-1",children:["select"===t&&(0,a.jsx)(Y,{col:e,user:r,current:o,onSet:l}),"contains"===t&&(0,a.jsx)(H,{col:e,current:o,onSet:l}),"range"===t&&(0,a.jsx)(q,{col:e,current:o,onSet:l}),"boolean"===t&&(0,a.jsx)(V,{col:e,current:o,onSet:l})]})]})}function Y({col:e,user:t,current:n,onSet:r}){let[o,l]=(0,s.useState)([]),[i,u]=(0,s.useState)(!1);(0,s.useEffect)(()=>{let a=!0;return(0,W.apiFetch)(`/api/observe/data?user=${encodeURIComponent(t)}&facet=values&column=${encodeURIComponent(e.column)}`).then(e=>e.json()).then(e=>a&&l(Array.isArray(e)?e:[])).catch(()=>a&&l([])).finally(()=>a&&u(!0)),()=>{a=!1}},[e.column,t]);let c=new Set(n.find(e=>"any of"===e.operator)?.value??[]);return i?0===o.length?(0,a.jsx)("p",{className:"text-xs text-foreground-muted",children:"无可选值"}):(0,a.jsx)("ul",{className:"max-h-48 overflow-auto",children:o.map(t=>(0,a.jsx)("li",{children:(0,a.jsxs)("button",{type:"button",onClick:()=>{var a;let n,s;return a=t.value,(n=new Set(c)).has(a)?n.delete(a):n.add(a),void r((s=Array.from(n)).length?[{column:e.column,operator:"any of",value:s}]:[])},className:"flex w-full items-center justify-between gap-2 rounded px-1 py-1 text-left text-sm hover:bg-background-secondary",children:[(0,a.jsxs)("span",{className:"flex min-w-0 items-center gap-2",children:[(0,a.jsx)("input",{type:"checkbox",readOnly:!0,checked:c.has(t.value),className:"pointer-events-none"}),(0,a.jsx)("span",{className:"truncate",children:t.value})]}),(0,a.jsx)("span",{className:"shrink-0 text-xs tabular-nums text-foreground-muted",children:t.count})]})},t.value))}):(0,a.jsx)("p",{className:"text-xs text-foreground-muted",children:"加载中…"})}function H({col:e,current:t,onSet:n}){let r=t.find(e=>"contains"===e.operator)?.value??"",[o,l]=(0,s.useState)(r),[i,u]=(0,s.useState)(r);r!==i&&(u(r),r!==o&&l(r));let c=()=>{let t=o.trim();n(t?[{column:e.column,operator:"contains",value:t}]:[])};return(0,a.jsx)("input",{value:o,onChange:e=>l(e.target.value),onBlur:c,onKeyDown:e=>"Enter"===e.key&&c(),placeholder:"包含…",className:"h-7 w-full rounded border border-input bg-transparent px-2 text-sm outline-none focus:ring-1 focus:ring-ring"})}function q({col:e,current:t,onSet:n}){let r=t.find(e=>">="===e.operator),o=t.find(e=>"<="===e.operator),[l,i]=(0,s.useState)(r?String(r.value):""),[u,c]=(0,s.useState)(o?String(o.value):""),d=`${r?.value??""}|${o?.value??""}`,[m,h]=(0,s.useState)(d);d!==m&&(h(d),i(r?String(r.value):""),c(o?String(o.value):""));let f=()=>{let t=[];""!==l.trim()&&Number.isFinite(Number(l))&&t.push({column:e.column,operator:">=",value:Number(l)}),""!==u.trim()&&Number.isFinite(Number(u))&&t.push({column:e.column,operator:"<=",value:Number(u)}),n(t)},p="h-7 w-full rounded border border-input bg-transparent px-2 text-sm outline-none focus:ring-1 focus:ring-ring";return(0,a.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,a.jsx)("input",{type:"number",value:l,onChange:e=>i(e.target.value),onBlur:f,onKeyDown:e=>"Enter"===e.key&&f(),placeholder:e.unit?`最小(${e.unit})`:"最小",className:p}),(0,a.jsx)("span",{className:"text-xs text-foreground-muted",children:"–"}),(0,a.jsx)("input",{type:"number",value:u,onChange:e=>c(e.target.value),onBlur:f,onKeyDown:e=>"Enter"===e.key&&f(),placeholder:e.unit?`最大(${e.unit})`:"最大",className:p})]})}function V({col:e,current:t,onSet:n}){let r=t.find(e=>"="===e.operator),s=r?r.value:void 0,o=(t,r)=>(0,a.jsx)("button",{type:"button",onClick:()=>n(void 0===r?[]:[{column:e.column,operator:"=",value:r}]),className:"flex-1 rounded px-2 py-1 text-xs "+(s===r?"bg-primary text-primary-foreground":"hover:bg-background-secondary text-foreground-muted"),children:t});return(0,a.jsxs)("div",{className:"flex gap-1 rounded border border-input p-0.5",children:[o("全部",void 0),o("是",!0),o("否",!1)]})}var G=e.i(927643),Z=e.i(726526),ee=e.i(642726),et=e.i(248425),ea="horizontal",en=["horizontal","vertical"],er=s.forwardRef((e,t)=>{var n;let{decorative:r,orientation:s=ea,...o}=e,l=(n=s,en.includes(n))?s:ea;return(0,a.jsx)(et.Primitive.div,{"data-orientation":l,...r?{role:"none"}:{"aria-orientation":"vertical"===l?l:void 0,role:"separator"},...o,ref:t})});function es({className:e,orientation:t="horizontal",decorative:n=!0,...r}){return(0,a.jsx)(er,{"data-slot":"separator-root",decorative:n,orientation:t,className:(0,j.cn)("bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",e),...r})}function eo({className:e,...t}){return(0,a.jsx)("div",{"data-slot":"skeleton",className:(0,j.cn)("bg-primary/10 animate-pulse rounded-md",e),...t})}er.displayName="Separator";var el=e.i(746798),ei=e.i(967489),eu=e.i(658512),ec=e.i(51907);let ed=(0,l.default)("inbox",[["polyline",{points:"22 12 16 12 14 15 10 15 8 12 2 12",key:"o97t9d"}],["path",{d:"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z",key:"oot6mr"}]]);function em({icon:e=ed,title:t,description:n,action:r,className:s}){return(0,a.jsxs)("div",{className:(0,j.cn)("flex flex-col items-center justify-center gap-3 text-center py-12 px-6","text-foreground-muted",s),children:[(0,a.jsx)("div",{className:"size-10 rounded-full bg-background-secondary text-foreground-muted flex items-center justify-center",children:(0,a.jsx)(e,{className:"size-5","aria-hidden":!0})}),(0,a.jsxs)("div",{className:"space-y-1",children:[(0,a.jsx)("p",{className:"text-base font-semibold text-foreground",children:t}),n&&(0,a.jsx)("p",{className:"text-sm text-foreground-muted max-w-md",children:n})]}),r&&(0,a.jsx)("div",{className:"pt-1",children:r})]})}var eh=e.i(689664),ef=e.i(508734);function ep({value:e,head:t=6,tail:n=4,copy:r=!0,className:o,onClick:l}){let[i,u]=s.useState(!1);if(!e)return(0,a.jsx)("span",{className:"text-foreground-muted",children:"—"});let c=e.length>t+n+1?`${e.slice(0,t)}…${e.slice(-n)}`:e,d=async t=>{t.stopPropagation();try{await navigator.clipboard.writeText(e),u(!0),y.toast.success("Copied"),setTimeout(()=>u(!1),1500)}catch{y.toast.error("Copy failed")}};return(0,a.jsx)(el.TooltipProvider,{delayDuration:150,children:(0,a.jsxs)(el.Tooltip,{children:[(0,a.jsx)(el.TooltipTrigger,{asChild:!0,children:(0,a.jsxs)("span",{onClick:l,className:(0,j.cn)("inline-flex items-center gap-1 font-mono text-xs text-foreground tabular-nums",l&&"cursor-pointer hover:text-primary",o),children:[(0,a.jsx)("span",{children:c}),r&&(0,a.jsx)("button",{type:"button",onClick:d,"aria-label":"Copy ID",className:"text-foreground-muted hover:text-foreground p-0.5 rounded-sm focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:i?(0,a.jsx)(eh.Check,{className:"size-3"}):(0,a.jsx)(ef.Copy,{className:"size-3"})})]})}),(0,a.jsx)(el.TooltipContent,{side:"top",children:(0,a.jsx)("code",{className:"text-xs",children:e})})]})})}function eg({children:e,className:t,tooltipMax:n=200,empty:r=(0,a.jsx)("span",{className:"text-foreground-muted",children:"—"})}){let s=(e??"").toString();return s?(0,a.jsx)(el.TooltipProvider,{delayDuration:250,children:(0,a.jsxs)(el.Tooltip,{children:[(0,a.jsx)(el.TooltipTrigger,{asChild:!0,children:(0,a.jsx)("span",{className:(0,j.cn)("block truncate",t),children:s})}),(0,a.jsx)(el.TooltipContent,{side:"top",className:"max-w-sm whitespace-pre-wrap text-xs",children:s.length>n?`${s.slice(0,n)}…`:s})]})}):(0,a.jsx)(a.Fragment,{children:r})}let ex=Symbol.for("constructDateFrom");function eb(e,t){return"function"==typeof e?e(t):e&&"object"==typeof e&&ex in e?e[ex](t):e instanceof Date?new e.constructor(t):new Date(t)}let ey={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function ev(e){return (t={})=>{let a=t.width?String(t.width):e.defaultWidth;return e.formats[a]||e.formats[e.defaultWidth]}}let ej={date:ev({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:ev({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:ev({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},ew={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function eN(e){return(t,a)=>{let n;if("formatting"===(a?.context?String(a.context):"standalone")&&e.formattingValues){let t=e.defaultFormattingWidth||e.defaultWidth,r=a?.width?String(a.width):t;n=e.formattingValues[r]||e.formattingValues[t]}else{let t=e.defaultWidth,r=a?.width?String(a.width):e.defaultWidth;n=e.values[r]||e.values[t]}return n[e.argumentCallback?e.argumentCallback(t):t]}}function ek(e){return(t,a={})=>{let n,r=a.width,s=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],o=t.match(s);if(!o)return null;let l=o[0],i=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],u=Array.isArray(i)?function(e,t){for(let a=0;a<e.length;a++)if(t(e[a]))return a}(i,e=>e.test(l)):function(e,t){for(let a in e)if(Object.prototype.hasOwnProperty.call(e,a)&&t(e[a]))return a}(i,e=>e.test(l));return n=e.valueCallback?e.valueCallback(u):u,{value:n=a.valueCallback?a.valueCallback(n):n,rest:t.slice(l.length)}}}function eS(e){return(t,a={})=>{let n=t.match(e.matchPattern);if(!n)return null;let r=n[0],s=t.match(e.parsePattern);if(!s)return null;let o=e.valueCallback?e.valueCallback(s[0]):s[0];return{value:o=a.valueCallback?a.valueCallback(o):o,rest:t.slice(r.length)}}}let eC={code:"en-US",formatDistance:(e,t,a)=>{let n,r=ey[e];if(n="string"==typeof r?r:1===t?r.one:r.other.replace("{{count}}",t.toString()),a?.addSuffix)if(a.comparison&&a.comparison>0)return"in "+n;else return n+" ago";return n},formatLong:ej,formatRelative:(e,t,a,n)=>ew[e],localize:{ordinalNumber:(e,t)=>{let a=Number(e),n=a%100;if(n>20||n<10)switch(n%10){case 1:return a+"st";case 2:return a+"nd";case 3:return a+"rd"}return a+"th"},era:eN({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:eN({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:e=>e-1}),month:eN({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:eN({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:eN({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})},match:{ordinalNumber:eS({matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)}),era:ek({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:ek({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:ek({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:ek({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:ek({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})},options:{weekStartsOn:0,firstWeekContainsDate:1}},eP={};function eM(e,t){return eb(t||e,e)}function ez(e){let t=eM(e),a=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return a.setUTCFullYear(t.getFullYear()),e-a}function eA(e,...t){let a=eb.bind(null,e||t.find(e=>"object"==typeof e));return t.map(a)}function eT(e,t){let a=eM(e)-eM(t);return a<0?-1:a>0?1:a}let eD={lessThanXSeconds:{one:"不到 1 秒",other:"不到 {{count}} 秒"},xSeconds:{one:"1 秒",other:"{{count}} 秒"},halfAMinute:"半分钟",lessThanXMinutes:{one:"不到 1 分钟",other:"不到 {{count}} 分钟"},xMinutes:{one:"1 分钟",other:"{{count}} 分钟"},xHours:{one:"1 小时",other:"{{count}} 小时"},aboutXHours:{one:"大约 1 小时",other:"大约 {{count}} 小时"},xDays:{one:"1 天",other:"{{count}} 天"},aboutXWeeks:{one:"大约 1 个星期",other:"大约 {{count}} 个星期"},xWeeks:{one:"1 个星期",other:"{{count}} 个星期"},aboutXMonths:{one:"大约 1 个月",other:"大约 {{count}} 个月"},xMonths:{one:"1 个月",other:"{{count}} 个月"},aboutXYears:{one:"大约 1 年",other:"大约 {{count}} 年"},xYears:{one:"1 年",other:"{{count}} 年"},overXYears:{one:"超过 1 年",other:"超过 {{count}} 年"},almostXYears:{one:"将近 1 年",other:"将近 {{count}} 年"}},eW={date:ev({formats:{full:"y'年'M'月'd'日' EEEE",long:"y'年'M'月'd'日'",medium:"yyyy-MM-dd",short:"yy-MM-dd"},defaultWidth:"full"}),time:ev({formats:{full:"zzzz a h:mm:ss",long:"z a h:mm:ss",medium:"a h:mm:ss",short:"a h:mm"},defaultWidth:"full"}),dateTime:ev({formats:{full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},defaultWidth:"full"})};function eO(e,t){let a=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??eP.weekStartsOn??eP.locale?.options?.weekStartsOn??0,n=eM(e,t?.in),r=n.getDay();return n.setDate(n.getDate()-(7*(r<a)+r-a)),n.setHours(0,0,0,0),n}function eR(e,t,a){let n="eeee p";return!function(e,t,a){let[n,r]=eA(a?.in,e,t);return+eO(n,a)==+eO(r,a)}(e,t,a)?e.getTime()>t.getTime()?"'下个'"+n:"'上个'"+n:n}let eE={lastWeek:eR,yesterday:"'昨天' p",today:"'今天' p",tomorrow:"'明天' p",nextWeek:eR,other:"PP p"},eI={code:"zh-CN",formatDistance:(e,t,a)=>{let n,r=eD[e];if(n="string"==typeof r?r:1===t?r.one:r.other.replace("{{count}}",String(t)),a?.addSuffix)if(a.comparison&&a.comparison>0)return n+"内";else return n+"前";return n},formatLong:eW,formatRelative:(e,t,a,n)=>{let r=eE[e];return"function"==typeof r?r(t,a,n):r},localize:{ordinalNumber:(e,t)=>{let a=Number(e);switch(t?.unit){case"date":return a.toString()+"日";case"hour":return a.toString()+"时";case"minute":return a.toString()+"分";case"second":return a.toString()+"秒";default:return"第 "+a.toString()}},era:eN({values:{narrow:["前","公元"],abbreviated:["前","公元"],wide:["公元前","公元"]},defaultWidth:"wide"}),quarter:eN({values:{narrow:["1","2","3","4"],abbreviated:["第一季","第二季","第三季","第四季"],wide:["第一季度","第二季度","第三季度","第四季度"]},defaultWidth:"wide",argumentCallback:e=>e-1}),month:eN({values:{narrow:["一","二","三","四","五","六","七","八","九","十","十一","十二"],abbreviated:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],wide:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"]},defaultWidth:"wide"}),day:eN({values:{narrow:["日","一","二","三","四","五","六"],short:["日","一","二","三","四","五","六"],abbreviated:["周日","周一","周二","周三","周四","周五","周六"],wide:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]},defaultWidth:"wide"}),dayPeriod:eN({values:{narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"}},defaultWidth:"wide",formattingValues:{narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"}},defaultFormattingWidth:"wide"})},match:{ordinalNumber:eS({matchPattern:/^(第\s*)?\d+(日|时|分|秒)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)}),era:ek({matchPatterns:{narrow:/^(前)/i,abbreviated:/^(前)/i,wide:/^(公元前|公元)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^(前)/i,/^(公元)/i]},defaultParseWidth:"any"}),quarter:ek({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^第[一二三四]刻/i,wide:/^第[一二三四]刻钟/i},defaultMatchWidth:"wide",parsePatterns:{any:[/(1|一)/i,/(2|二)/i,/(3|三)/i,/(4|四)/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:ek({matchPatterns:{narrow:/^(一|二|三|四|五|六|七|八|九|十[二一]?)/i,abbreviated:/^(一|二|三|四|五|六|七|八|九|十[二一]?|\d|1[0-2])月/i,wide:/^(一|二|三|四|五|六|七|八|九|十[二一]?)月/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^一/i,/^二/i,/^三/i,/^四/i,/^五/i,/^六/i,/^七/i,/^八/i,/^九/i,/^十(?!(一|二))/i,/^十一/i,/^十二/i],any:[/^(一|1(?!\d))/i,/^(二|2)/i,/^(三|3)/i,/^(四|4)/i,/^(五|5)/i,/^(六|6)/i,/^(七|7)/i,/^(八|8)/i,/^(九|9)/i,/^(十(?!(一|二))|10)/i,/^(十一|11)/i,/^(十二|12)/i]},defaultParseWidth:"any"}),day:ek({matchPatterns:{narrow:/^[一二三四五六日]/i,short:/^[一二三四五六日]/i,abbreviated:/^周[一二三四五六日]/i,wide:/^星期[一二三四五六日]/i},defaultMatchWidth:"wide",parsePatterns:{any:[/日/i,/一/i,/二/i,/三/i,/四/i,/五/i,/六/i]},defaultParseWidth:"any"}),dayPeriod:ek({matchPatterns:{any:/^(上午?|下午?|午夜|[中正]午|早上?|下午|晚上?|凌晨|)/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^上午?/i,pm:/^下午?/i,midnight:/^午夜/i,noon:/^[中正]午/i,morning:/^早上/i,afternoon:/^下午/i,evening:/^晚上?/i,night:/^凌晨/i}},defaultParseWidth:"any"})},options:{weekStartsOn:1,firstWeekContainsDate:4}};function e$({value:e,className:t}){var n,r;let{locale:s}=(0,Z.useLocale)();if(null==e||""===e)return(0,a.jsx)("span",{className:"text-foreground-muted",children:"—"});let o=e instanceof Date?e:new Date(e);if(Number.isNaN(o.getTime()))return(0,a.jsx)("span",{className:"text-foreground-muted",children:"—"});let l=(n=o,r={addSuffix:!0,locale:"zh"===s?eI:eC},function(e,t,a){var n;let r,s=a?.locale??eP.locale??eC,o=eT(e,t);if(isNaN(o))throw RangeError("Invalid time value");let l=Object.assign({},a,{addSuffix:a?.addSuffix,comparison:o}),[i,u]=eA(a?.in,...o>0?[t,e]:[e,t]),c=(n=void 0,e=>{let t=(n?Math[n]:Math.trunc)(e);return 0===t?0:t})((eM(u)-eM(i))/1e3),d=Math.round((c-(ez(u)-ez(i))/1e3)/60);if(d<2)if(a?.includeSeconds)if(c<5)return s.formatDistance("lessThanXSeconds",5,l);else if(c<10)return s.formatDistance("lessThanXSeconds",10,l);else if(c<20)return s.formatDistance("lessThanXSeconds",20,l);else if(c<40)return s.formatDistance("halfAMinute",0,l);else if(c<60)return s.formatDistance("lessThanXMinutes",1,l);else return s.formatDistance("xMinutes",1,l);else if(0===d)return s.formatDistance("lessThanXMinutes",1,l);else return s.formatDistance("xMinutes",d,l);if(d<45)return s.formatDistance("xMinutes",d,l);if(d<90)return s.formatDistance("aboutXHours",1,l);if(d<1440){let e=Math.round(d/60);return s.formatDistance("aboutXHours",e,l)}if(d<2520)return s.formatDistance("xDays",1,l);else if(d<43200){let e=Math.round(d/1440);return s.formatDistance("xDays",e,l)}else if(d<86400)return r=Math.round(d/43200),s.formatDistance("aboutXMonths",r,l);if((r=function(e,t,a){var n,r;let s,o,l,i,[u,c,d]=eA(void 0,e,e,t),m=eT(c,d),h=Math.abs(function(e,t,a){let[n,r]=eA(void 0,e,t);return 12*(n.getFullYear()-r.getFullYear())+(n.getMonth()-r.getMonth())}(c,d));if(h<1)return 0;1===c.getMonth()&&c.getDate()>27&&c.setDate(30),c.setMonth(c.getMonth()-m*h);let f=eT(c,d)===-m;+(s=eM(u,void 0),n=void 0,(o=eM(s,n?.in)).setHours(23,59,59,999),o)==+(r=void 0,i=(l=eM(s,r?.in)).getMonth(),l.setFullYear(l.getFullYear(),i+1,0),l.setHours(23,59,59,999),l)&&1===h&&1===eT(u,d)&&(f=!1);let p=m*(h-f);return 0===p?0:p}(u,i))<12){let e=Math.round(d/43200);return s.formatDistance("xMonths",e,l)}{let e=r%12,t=Math.trunc(r/12);return e<3?s.formatDistance("aboutXYears",t,l):e<9?s.formatDistance("overXYears",t,l):s.formatDistance("almostXYears",t+1,l)}}(n,eb(n,Date.now()),r)),i=o.toLocaleString();return(0,a.jsx)(el.TooltipProvider,{delayDuration:250,children:(0,a.jsxs)(el.Tooltip,{children:[(0,a.jsx)(el.TooltipTrigger,{asChild:!0,children:(0,a.jsx)("span",{className:t,children:l})}),(0,a.jsx)(el.TooltipContent,{side:"top",className:"font-mono text-xs",children:i})]})})}var eF=e.i(460435);let eL=t.default.env.NEXT_PUBLIC_URL_PREFIX||"",e_={"30m":18e5,"1h":36e5,"3h":108e5,"24h":864e5,"7d":6048e5,"30d":2592e6,all:1/0},eB=[20,50,100],eX=[5,10,30,60],eU={traceId:130,agent:170,status:110,tags:240,tokens:110,time:120,actions:220},eK={traceId:90,agent:100,status:80,tags:120,tokens:70,time:80,actions:160},eJ="trace.columnWidths.v1";function eQ(e){let t=String(e.trace_status??e.traceStatus??"").trim().toLowerCase();return"running"===t||"success"===t||"failed"===t?t:e.trace_completed_at||e.traceCompletedAt?"success":"running"}function eY(e){let t=String(e||"").trim();switch(t.toLowerCase()){case"langfuse-langgraph":return"Langfuse-Langgraph";case"opencode":return"OpenCode";case"claude":case"claudecode":return"Claude Code";case"hermes":return"Hermes";default:return t}}function eH(e){return e&&Number.isFinite(e)?e<1e3?`${Math.round(e)}ms`:e<6e4?`${(e/1e3).toFixed(2)}s`:`${(e/6e4).toFixed(1)}m`:"-"}function eq(e,t){let a=(t||"").toLowerCase();return("opencode"===a||"openhands"===a||"claude"===a||"claudecode"===a)&&e>0&&e<1e3?1e3*e:e}function eV(e){if(!e&&0!==e)return"-";let t=new Date(e);return t.getFullYear()+"/"+String(t.getMonth()+1).padStart(2,"0")+"/"+String(t.getDate()).padStart(2,"0")+" "+String(t.getHours()).padStart(2,"0")+":"+String(t.getMinutes()).padStart(2,"0")+":"+String(t.getSeconds()).padStart(2,"0")+"."+String(t.getMilliseconds()).padStart(3,"0")}function eG(e,t){return Math.min(640,Math.max(eK[e],Math.round(t)))}function eZ({colKey:e,currentWidth:t,onResize:n}){return(0,a.jsx)("span",{onMouseDown:a=>{a.preventDefault(),a.stopPropagation();let r=a.clientX,s=a=>{n(e,t+(a.clientX-r))},o=()=>{window.removeEventListener("mousemove",s),window.removeEventListener("mouseup",o),document.body.style.cursor="",document.body.style.userSelect=""};document.body.style.cursor="col-resize",document.body.style.userSelect="none",window.addEventListener("mousemove",s),window.addEventListener("mouseup",o)},onClick:e=>e.stopPropagation(),onKeyDown:e=>e.stopPropagation(),role:"separator","aria-orientation":"vertical","aria-label":`Resize column ${e}`,className:"absolute right-0 top-0 z-10 flex h-full w-2 -mr-1 items-center justify-center cursor-col-resize group/handle",children:(0,a.jsx)("span",{className:"h-4 w-px bg-border group-hover/handle:bg-primary group-hover/handle:w-0.5 transition-colors","aria-hidden":!0})})}function e0(){return(0,a.jsx)(s.Suspense,{fallback:(0,a.jsxs)("div",{className:"flex flex-col gap-3 px-6 py-6",children:[(0,a.jsx)(eo,{className:"h-9 w-48"}),(0,a.jsx)(eo,{className:"h-24 w-full"}),(0,a.jsx)(eo,{className:"h-96 w-full"})]}),children:(0,a.jsx)(e1,{})})}function e1(){let{user:e}=(0,G.useAuth)(),{t,locale:n}=(0,Z.useLocale)(),[r,o]=(0,s.useState)([]),[l,i]=(0,s.useState)(!0),[u,d]=(0,s.useState)(null),[m,h]=(0,b.useQueryState)("time",b.parseAsString.withDefault("all")),[f,p]=(0,b.useQueryState)("status",b.parseAsString.withDefault("all")),[y,j]=(0,b.useQueryState)("framework",b.parseAsString.withDefault("all")),[w,C]=(0,b.useQueryState)("agent",b.parseAsString.withDefault("all")),[P,M]=(0,b.useQueryState)("skill",b.parseAsString.withDefault("all")),[z,T]=(0,b.useQueryState)("ownership",b.parseAsString.withDefault("user")),[D,O]=(0,b.useQueryState)("scope",b.parseAsString.withDefault("root")),[R,E]=(0,b.useQueryState)("sort",b.parseAsString.withDefault("timestamp")),[I,$]=(0,b.useQueryState)("dir",b.parseAsString.withDefault("desc")),[F,L]=(0,b.useQueryState)("page",b.parseAsInteger.withDefault(1)),[B,X]=(0,b.useQueryState)("size",b.parseAsInteger.withDefault(20)),[U,K]=(0,b.useQueryState)("taskId",b.parseAsString),[Q,Y]=(0,b.useQueryState)("q",b.parseAsString.withDefault("")),[H,q]=(0,s.useState)(!1),[V,et]=(0,b.useQueryState)("f",b.parseAsString.withDefault("")),ea=(0,s.useMemo)(()=>{if(!V)return[];try{let e=JSON.parse(V);return Array.isArray(e)?e:[]}catch{return[]}},[V]),en=(0,s.useCallback)(e=>et(e.length?JSON.stringify(e):null),[et]),er=(0,s.useCallback)(e=>Y(e||null),[Y]),{widths:el,setColumnWidth:ec,resetColumnWidths:ed,isCustomized:eh}=function(){let[e,t]=(0,s.useState)(eU);(0,s.useEffect)(()=>{try{let e=window.localStorage.getItem(eJ);if(!e)return;let a=JSON.parse(e);t(e=>{let t={...e};return Object.keys(e).forEach(e=>{let n=a[e];"number"==typeof n&&Number.isFinite(n)&&(t[e]=eG(e,n))}),t})}catch{}},[]);let a=(0,s.useCallback)((e,a)=>{t(t=>{let n={...t,[e]:eG(e,a)};try{window.localStorage.setItem(eJ,JSON.stringify(n))}catch{}return n})},[]),n=(0,s.useCallback)(()=>{t(eU);try{window.localStorage.removeItem(eJ)}catch{}},[]),r=(0,s.useMemo)(()=>Object.keys(eU).some(t=>e[t]!==eU[t]),[e]);return{widths:e,setColumnWidth:a,resetColumnWidths:n,isCustomized:r}}(),ef=(0,s.useMemo)(()=>el.traceId+el.agent+el.status+el.tags+el.tokens+el.time+el.actions+280,[el]),ep=(0,s.useCallback)(e=>{d(e),K(e&&(e.task_id||e.upload_id)||null)},[K]),eg=(0,s.useRef)(null);(0,s.useEffect)(()=>{if(!U){u&&d(null),eg.current=null;return}let e=r.find(e=>e.task_id===U||e.upload_id===U);if(e){u!==e&&d(e);return}eg.current!==U&&(eg.current=U,(0,W.apiFetch)(`/api/observe/data?taskId=${encodeURIComponent(U)}&includeEvaluations=0&skipAutoEvalReady=1`).then(e=>e.json()).then(e=>{Array.isArray(e)&&e.length>0&&d(e[0])}).catch(()=>{eg.current===U&&(eg.current=null)}))},[U,r]),(0,s.useEffect)(()=>{if(!e)return;i(!0);let t="subagent"===D?"&onlySubagents=1":"all"===D?"&includeSubagents=1":"",a="all"!==P?`&skill=${encodeURIComponent(P)}`:"",n=Q?`&query=${encodeURIComponent(Q)}`:"",r=ea.length?`&filters=${encodeURIComponent(JSON.stringify(ea))}`:"";(0,W.apiFetch)(`/api/observe/data?user=${encodeURIComponent(e)}&includeEvaluations=0&fields=light&skipAutoEvalReady=1${t}${a}${n}${r}`).then(e=>e.json()).then(e=>o(Array.isArray(e)?e:[])).catch(()=>o([])).finally(()=>i(!1))},[e,D,P,Q,V]);let ex=(0,s.useMemo)(()=>{let e=Date.now(),t=e_[m]??1/0;return r.filter(a=>{let n,r;return!("all"!==w&&""!==w&&!(n=new Set,(r=a.agentName?.trim()||(0,ee.getPrimaryExecutionAgentName)(a))&&n.add(r),Array.isArray(a.agents)&&a.agents.forEach(e=>{let t=e?.trim();t&&n.add(t)}),Array.from(n)).includes(w)||t!==1/0&&e-("string"==typeof a.timestamp?Date.parse(a.timestamp):Number(a.timestamp))>t)&&("all"===y||a.framework===y)&&("all"===f||f===eQ(a))&&("all"===z||(a.agentOwnership??"user")===z)&&!0}).sort((e,t)=>{let a=0;switch(R){case"timestamp":a=("string"==typeof e.timestamp?Date.parse(e.timestamp):Number(e.timestamp))-("string"==typeof t.timestamp?Date.parse(t.timestamp):Number(t.timestamp));break;case"agent":a=(e.agent||"").localeCompare(t.agent||"");break;case"status":{let n={running:0,failed:1,success:2};a=n[eQ(e)]-n[eQ(t)];break}case"latency":a=eq(e.latency||0,e.framework)-eq(t.latency||0,t.framework);break;case"tokens":a=(e.tokens||0)-(t.tokens||0);break;case"cost":a=(e.cost||0)-(t.cost||0)}return"asc"===I?a:-a})},[r,m,y,f,w,z,R,I]);(0,s.useEffect)(()=>{1!==F&&L(1)},[m,y,f,w,P,z,Q,V,R,I,B]);let eb=e=>{e===R?$("asc"===I?"desc":"asc"):(E(e),$("timestamp"===e||"tokens"===e?"desc":"asc"))},ey=(0,s.useMemo)(()=>{let e=ex.length,t=ex.filter(e=>"failed"===eQ(e)).length,a=e?ex.reduce((e,t)=>e+eq(t.latency||0,t.framework),0)/e:0,n=ex.reduce((e,t)=>e+(t.tool_call_error_count||0),0),r=ex.reduce((e,t)=>e+(t.tool_call_count||0),0);return{total:e,failedCount:t,avgLatency:a,errRate:r?Math.round(n/r*1e3)/10:0}},[ex]);ex.length;let ev=(0,s.useMemo)(()=>ex.slice((F-1)*B,F*B),[ex,F,B]),ej="all"!==z||"all"!==w||"all"!==P||"all"!==f||"all"!==m||"all"!==y||"root"!==D||""!==Q||ea.length>0,ew=()=>{T("all"),C("all"),M("all"),p("all"),h("all"),j("all"),O("root"),Y(null),en([])},eN=(0,s.useMemo)(()=>{let e=new Set;return r.forEach(t=>t.framework&&e.add(t.framework)),Array.from(e).sort()},[r]),ek=[{value:"all",label:t("nav.allOwnership")},{value:"user",label:t("nav.userAgent")},{value:"system",label:t("nav.systemAgent")}],eS=[{value:"all",label:t("common.all")},{value:"running",label:t("tracePage.statusRunning")},{value:"success",label:t("tracePage.statusSuccess")},{value:"failed",label:t("tracePage.statusFailed")}],eC=[{value:"all",label:t("common.allTime")},{value:"7d",label:t("nav.last7Days")},{value:"24h",label:t("topbar.last24h")},{value:"1h",label:t("nav.last1Hour")},{value:"30m",label:t("nav.last30Min")}],eP=[{value:"all",label:t("common.all")},...eN.map(e=>({value:e,label:e}))];return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(v.AppTopBar,{title:(0,a.jsx)(eF.Term,{id:"trace",label:t("nav.trace")}),actions:void 0,showDefaultActions:!1}),(0,a.jsx)(N,{children:u?(0,a.jsx)(e2,{execution:u,onBack:()=>ep(null)}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-3 mb-4",children:[(0,a.jsx)(e4,{label:(0,a.jsx)(eF.Term,{id:"trace",label:t("tracePage.statTotal")}),value:ey.total.toLocaleString()}),(0,a.jsx)(e4,{label:(0,a.jsx)(eF.Term,{id:"fault-item",label:t("tracePage.statFailed")}),value:String(ey.failedCount),accent:ey.failedCount>0?"error":void 0}),(0,a.jsx)(e4,{label:t("tracePage.statAvgLatency"),value:eH(ey.avgLatency)}),(0,a.jsx)(e4,{label:(0,a.jsx)(eF.Term,{id:"tool-error-rate",label:t("tracePage.statToolErrorRate"),align:"end"}),value:`${ey.errRate}%`})]}),e&&(0,a.jsx)("div",{className:"mb-3",children:(0,a.jsx)(_,{clauses:ea,onChange:en,search:Q,onSearchChange:er,user:e})}),(0,a.jsxs)("div",{className:"mb-2 flex flex-wrap items-center gap-2",children:[(0,a.jsxs)(A.Button,{variant:"outline",size:"sm",className:"h-7 gap-1.5 text-xs",onClick:()=>q(e=>!e),children:[(0,a.jsx)(x.SlidersHorizontal,{className:"size-3.5"}),H?"zh"===n?"隐藏过滤":"Hide filters":"zh"===n?"过滤":"Show filters"]}),(0,a.jsx)(es,{orientation:"vertical",className:"h-5"}),(0,a.jsx)(ei.Select,{label:t("nav.filterAgentOwnership"),value:z,onChange:T,options:ek,active:"all"!==z}),(0,a.jsx)(ei.Select,{label:t("tracePage.filterStatus"),value:f,onChange:p,options:eS,active:"all"!==f}),(0,a.jsx)(ei.Select,{label:t("tracePage.filterTime"),value:m,onChange:h,options:eC,active:"all"!==m}),(0,a.jsx)(ei.Select,{label:t("tracePage.filterFramework"),value:y,onChange:j,options:eP,active:"all"!==y}),(0,a.jsx)(ei.Select,{label:"zh"===n?"范围":"Scope",value:D,onChange:O,options:[{value:"root",label:"zh"===n?"仅主 Agent":"Root only"},{value:"subagent",label:"zh"===n?"仅子 Agent":"Sub-agents only"},{value:"all",label:"zh"===n?"主 + 子 Agent":"Root + sub-agents"}],active:"root"!==D}),ej&&(0,a.jsxs)(A.Button,{variant:"ghost",size:"sm",onClick:ew,className:"ml-auto h-7 gap-1 text-xs text-foreground-muted",children:[(0,a.jsx)(c.X,{className:"size-3"}),t("tracePage.resetFilters")]})]}),(0,a.jsxs)("div",{className:"flex-1 min-h-0 flex gap-3",children:[H&&(0,a.jsxs)("aside",{className:"w-60 shrink-0 overflow-auto rounded-md border border-card-border bg-card",children:[(0,a.jsx)("div",{className:"px-3 py-2 border-b border-card-border",children:(0,a.jsx)("span",{className:"text-sm font-semibold",children:"zh"===n?"过滤器":"Filters"})}),e&&(0,a.jsx)("div",{className:"p-3",children:(0,a.jsx)(J,{clauses:ea,onChange:en,user:e})})]}),(0,a.jsxs)("div",{className:"flex-1 min-w-0 flex flex-col",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,a.jsxs)("h2",{className:"text-sm font-semibold text-foreground",children:[t("tracePage.listTitle"),(0,a.jsx)("span",{className:"ml-2 text-foreground-muted font-normal tabular-nums",children:ex.length})]}),(0,a.jsxs)("div",{className:"flex items-center gap-3",children:[eh&&(0,a.jsxs)(A.Button,{variant:"ghost",size:"sm",onClick:ed,className:"h-7 px-2 text-xs text-foreground-muted gap-1",children:[(0,a.jsx)(g.RotateCcw,{className:"size-3","aria-hidden":!0}),t("tracePage.resetColumnWidths")]}),(0,a.jsx)("span",{className:"text-xs text-foreground-muted",children:t("tracePage.listHint")})]})]}),(0,a.jsx)(k,{className:"flex flex-col",children:(0,a.jsx)("div",{className:"flex-1 min-h-0 rounded-md border border-card-border bg-card overflow-auto",children:l?(0,a.jsx)("div",{className:"p-4 space-y-2",children:[0,1,2,3,4].map(e=>(0,a.jsx)(eo,{className:"h-8 w-full"},e))}):0===ev.length?(0,a.jsx)(em,{title:t("tracePage.emptyTitle"),description:ej?t("tracePage.emptyDescription"):void 0,action:ej?(0,a.jsx)(A.Button,{variant:"outline",size:"sm",onClick:ew,children:t("tracePage.resetFilters")}):void 0}):(0,a.jsxs)("table",{className:"w-full table-fixed text-sm",style:{minWidth:ef},children:[(0,a.jsxs)("colgroup",{children:[(0,a.jsx)("col",{style:{width:el.traceId}}),(0,a.jsx)("col",{style:{width:el.agent}}),(0,a.jsx)("col",{style:{width:el.status}}),(0,a.jsx)("col",{style:{width:el.tags}}),(0,a.jsx)("col",{}),(0,a.jsx)("col",{style:{width:el.tokens}}),(0,a.jsx)("col",{style:{width:el.time}}),(0,a.jsx)("col",{style:{width:el.actions}})]}),(0,a.jsx)("thead",{className:"sticky top-0 z-10",children:(0,a.jsxs)("tr",{className:"bg-background-secondary text-left",children:[(0,a.jsx)(e6,{colKey:"traceId",currentWidth:el.traceId,onResize:ec,children:(0,a.jsx)(eF.Term,{id:"trace",label:t("tracePage.columnTraceId")})}),(0,a.jsx)(e8,{sortKey:"agent",currentKey:R,dir:I,onSort:eb,colKey:"agent",currentWidth:el.agent,onResize:ec,children:(0,a.jsx)(eF.Term,{id:"agent",label:t("tracePage.columnAgent")})}),(0,a.jsx)(e8,{sortKey:"status",currentKey:R,dir:I,onSort:eb,colKey:"status",currentWidth:el.status,onResize:ec,children:(0,a.jsx)(eF.Term,{id:"chain-status",label:t("tracePage.columnStatus")})}),(0,a.jsx)(e6,{colKey:"tags",currentWidth:el.tags,onResize:ec,children:t("tracePage.columnTags")}),(0,a.jsx)(e6,{children:t("tracePage.columnTask")}),(0,a.jsx)(e8,{sortKey:"tokens",currentKey:R,dir:I,onSort:eb,colKey:"tokens",currentWidth:el.tokens,onResize:ec,children:(0,a.jsx)(eF.Term,{id:"tokens",label:t("tracePage.columnTokens")})}),(0,a.jsx)(e8,{sortKey:"timestamp",currentKey:R,dir:I,onSort:eb,colKey:"time",currentWidth:el.time,onResize:ec,children:t("tracePage.columnTime")}),(0,a.jsx)(e6,{align:"right",colKey:"actions",currentWidth:el.actions,onResize:ec,children:t("tracePage.columnActions")})]})}),(0,a.jsx)("tbody",{children:ev.map((e,t)=>(0,a.jsx)(e7,{execution:e,onClick:()=>ep(e)},(e.task_id||e.upload_id||t)+""))})]})})}),ex.length>0&&(0,a.jsx)(S,{className:"border-0 mt-3 pt-0 shrink-0",children:(0,a.jsx)(eu.Pagination,{className:"w-full",page:F,pageSize:B,total:ex.length,onPageChange:L,onPageSizeChange:X,pageSizes:eB,pageSizeLabel:e=>t("tracePage.pageSize",{n:String(e)}),summary:(e,a,n)=>t("tracePage.pageSummary",{start:String(e),end:String(a),total:String(n)})})})]})]})]})})]})}function e2({execution:e,onBack:t}){let{t:l,locale:c}=(0,Z.useLocale)(),d=(0,r.useRouter)(),m=(0,r.useSearchParams)(),[h,f]=(0,s.useState)(null),[g,x]=(0,s.useState)(!1),b=e.task_id||e.upload_id||"",v=!!e.is_subagent,w=e.parent_execution_id||null,N=e.subagent_type||null,k=e.subagent_name||null,S=(0,s.useCallback)(e=>{if(!e)return;let t=new URLSearchParams(m?.toString()??"");t.set("taskId",e),d.push(`${window.location.pathname}?${t.toString()}`,{scroll:!1})},[d,m]),P=(0,s.useCallback)(async()=>{if(w)try{let e=await (0,W.apiFetch)(`/api/observe/data?executionId=${encodeURIComponent(w)}&includeEvaluations=0`);if(!e.ok)return;let t=await e.json(),a=Array.isArray(t)?t[0]:t?.data?.[0]||t,n=a?.task_id||a?.upload_id;n&&S(n)}catch{}},[w,S]),M=eQ(e),[z,T]=(0,s.useState)("running"===M),[D,O]=(0,s.useState)(5),[R,E]=(0,s.useState)(0),I=(0,s.useRef)(null);(0,s.useEffect)(()=>{I.current=h},[h]);let $=(0,s.useCallback)((e=!1)=>{if(!b)return;let t=!I.current;!e&&t&&x(!0),(0,W.apiFetch)(`/api/observe/session?taskId=${encodeURIComponent(b)}`).then(e=>e.ok?e.json():{error:"Fetch failed"}).then(e=>{f(e),E(0)}).catch(()=>{!e&&t&&f({error:"Network error"})}).finally(()=>{!e&&t&&x(!1)})},[b]);(0,s.useEffect)(()=>{$(!1)},[$]),(0,s.useEffect)(()=>{if(!z||"running"!==M)return;let e=setInterval(()=>$(!0),1e3*D);return()=>clearInterval(e)},[z,D,$,M]),(0,s.useEffect)(()=>{let e=setInterval(()=>E(e=>e+1),1e3);return()=>clearInterval(e)},[]);let{framework:F,latency:L,tokens:_,cost:B}=e,X="running"===M,U=!g&&!!h&&!h.error;return(0,a.jsxs)("div",{className:"flex flex-col h-full min-h-0",children:[(0,a.jsxs)("div",{className:"rounded-md border border-border bg-card p-3 mb-3 flex flex-wrap items-center gap-2",children:[(0,a.jsxs)(A.Button,{variant:"ghost",size:"sm",onClick:t,className:"text-foreground-muted h-7 px-2",children:[(0,a.jsx)(o.ArrowLeft,{className:"size-3.5","aria-hidden":!0}),l("tracePage.backToList")]}),v&&w&&(0,a.jsxs)(A.Button,{variant:"ghost",size:"sm",onClick:P,className:"text-foreground-muted h-7 px-2",title:"zh"===c?"返回父 Agent 执行":"Back to parent agent execution",children:[(0,a.jsx)(o.ArrowLeft,{className:"size-3.5","aria-hidden":!0}),"zh"===c?"父执行":"Parent"]}),(0,a.jsx)(es,{orientation:"vertical",className:"h-5"}),v&&(0,a.jsxs)("span",{title:k||"",className:"text-[10px] font-bold tracking-wider px-1.5 py-0.5 rounded-sm bg-primary/10 text-primary border border-primary/30 shrink-0",children:["SUB-AGENT",N?` \xb7 ${N}`:""]}),(0,a.jsx)(ep,{value:b,head:8,tail:6}),(0,a.jsx)(ec.StatusBadge,{status:"running"===M?"running":"failed"===M?"error":"success",label:l("running"===M?"tracePage.statusRunning":"failed"===M?"tracePage.statusFailed":"tracePage.statusNormal")}),F&&(0,a.jsx)(te,{variant:"framework",icon:p.Terminal,children:eY(F)}),"number"==typeof _&&_>0||"number"==typeof L&&L>0||"number"==typeof B&&B>0?(0,a.jsx)(es,{orientation:"vertical",className:"h-5"}):null,"number"==typeof _&&_>0&&(0,a.jsx)(e3,{label:(0,a.jsx)(eF.Term,{id:"tokens",label:l("tracePage.metricTokens")}),value:_.toLocaleString()}),"number"==typeof L&&L>0&&(0,a.jsx)(e3,{label:l("tracePage.metricDuration"),value:eH(eq(L,F))}),"number"==typeof B&&B>0&&(0,a.jsx)(e3,{label:l("tracePage.metricCost"),value:`$${B.toFixed(4)}`}),(0,a.jsxs)("div",{className:"ml-auto flex flex-wrap items-center gap-2",children:[(0,a.jsx)(el.TooltipProvider,{delayDuration:250,children:(0,a.jsxs)(el.Tooltip,{children:[(0,a.jsx)(el.TooltipTrigger,{asChild:!0,children:(0,a.jsxs)(A.Button,{variant:z&&X?"default":"outline",size:"sm",disabled:!X,onClick:()=>X&&T(e=>!e),"aria-pressed":z&&X,className:"h-7 px-2.5 text-xs",children:[(0,a.jsx)(u.RefreshCw,{className:(0,j.cn)("size-3.5",z&&X&&"animate-spin")}),l(z&&X?"tracePage.autoRefresh":"tracePage.paused")]})}),(0,a.jsx)(el.TooltipContent,{side:"bottom",className:"text-xs",children:l(X?"tracePage.autoRefresh":"tracePage.autoRefreshUnavailable")})]})}),z&&X&&(0,a.jsx)(ei.Select,{value:String(D),onChange:e=>O(Number(e)),options:eX.map(e=>({value:String(e),label:`${e}s`})),"aria-label":l("tracePage.refreshInterval")}),(0,a.jsx)("span",{className:"text-xs text-foreground-muted whitespace-nowrap tabular-nums min-w-[36px]",children:0===R?l("tracePage.justNow"):l("tracePage.secondsAgo",{s:String(R)})}),(0,a.jsx)(A.Button,{variant:"outline",size:"icon",onClick:()=>$(!0),"aria-label":l("tracePage.refreshNow"),className:"size-7",children:(0,a.jsx)(u.RefreshCw,{className:"size-3.5"})}),(0,a.jsx)(es,{orientation:"vertical",className:"h-5"}),(0,a.jsx)(A.Button,{variant:"default",size:"sm",asChild:!0,className:"h-7 text-xs",children:(0,a.jsx)(n.default,{href:`${eL}/fault?taskId=${b}`,children:l("tracePage.diagnosis")})}),(0,a.jsxs)(A.Button,{variant:"outline",size:"sm",onClick:()=>{if(h&&!h.error)try{let e=function(e){if(!e)return e;let t=JSON.parse(JSON.stringify(e));return t.startTime&&(t.startTime=eV(t.startTime)),Array.isArray(t.interactions)&&(t.interactions=t.interactions.map(e=>{let t={...e};return t.timestamp&&(t.timestamp=eV(t.timestamp)),t.message?.timestamp&&(t.message.timestamp=eV(t.message.timestamp)),t.timeInfo?.created&&(t.timeInfo.created=eV(t.timeInfo.created)),t})),t}(h),t=new Blob([JSON.stringify(e,null,2)],{type:"application/json;charset=utf-8"}),a=URL.createObjectURL(t),n=document.createElement("a");n.href=a,n.download=`trace-${b.replace(/[\\/:*?"<>|]+/g,"_").replace(/\s+/g,"_").slice(0,120)||"trace"}-session.json`,document.body.appendChild(n),n.click(),n.remove(),URL.revokeObjectURL(a),y.toast.success("zh"===c?"JSON 已开始下载":"JSON download started")}catch(e){console.error("[trace] download session json failed:",e),y.toast.error("zh"===c?"下载 JSON 失败":"Failed to download JSON")}},disabled:!U,title:U?"zh"===c?"下载会话数据(原始JSON)":"Download session data raw JSON":"zh"===c?"会话数据加载后可下载":"Download available after session data loads",className:"h-7 text-xs",children:[(0,a.jsx)(i,{className:"size-3.5","aria-hidden":!0}),"zh"===c?"保存trace":"Save trace"]})]})]}),"failed"===M&&e.failures&&e.failures.length>0&&(0,a.jsx)(e5,{failures:e.failures}),(0,a.jsx)("h2",{className:"text-sm font-semibold text-foreground mb-2",children:l("tracePage.executionTrace")}),(0,a.jsx)("div",{className:"min-h-[200px] flex-1 min-h-0",children:g?(0,a.jsxs)("div",{className:"rounded-md border border-card-border bg-card p-4 space-y-2",children:[(0,a.jsx)(eo,{className:"h-6 w-1/2"}),(0,a.jsx)(eo,{className:"h-6 w-3/4"}),(0,a.jsx)(eo,{className:"h-6 w-2/3"}),(0,a.jsx)(eo,{className:"h-6 w-1/2"})]}):h?.error?(0,a.jsx)("div",{className:"rounded-md border border-error-border bg-error-subtle text-error p-4 text-sm",role:"alert",children:h.error}):h?.interactions?.length>0?(0,a.jsx)(C.default,{interactions:h.interactions,onSubagentNavigate:S,rootExecutionId:e.upload_id||e.task_id}):(0,a.jsx)("div",{className:"rounded-md border border-card-border bg-card",children:(0,a.jsx)(em,{title:l("tracePage.noTrace")})})})]})}function e5({failures:e}){let{t}=(0,Z.useLocale)();return(0,a.jsxs)("div",{className:"mb-3",children:[(0,a.jsx)("h3",{className:"text-sm font-semibold text-foreground mb-2",children:t("tracePage.failureDetails")}),(0,a.jsx)("div",{className:"rounded-md border-l-4 border-l-error border border-card-border bg-error-subtle/30 overflow-hidden",children:e.map((n,r)=>(0,a.jsxs)("div",{className:(0,j.cn)("p-3 grid gap-1.5",r<e.length-1&&"border-b border-card-border"),children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 flex-wrap",children:[(0,a.jsxs)("span",{className:"text-xs font-semibold text-error inline-flex items-center gap-1",children:[(0,a.jsx)(d.XCircle,{className:"size-3.5","aria-hidden":!0}),n.failure_type||t("tracePage.unknownError")]}),n.attribution&&(0,a.jsx)("span",{className:"inline-flex items-center rounded-sm border border-border bg-background-secondary text-foreground-muted px-1.5 py-0 text-xs font-medium uppercase tracking-wide",children:n.attribution})]}),n.description&&(0,a.jsx)("p",{className:"text-sm text-foreground",children:n.description}),n.context&&(0,a.jsxs)("p",{className:"text-xs text-foreground-muted",children:[(0,a.jsx)("span",{className:"font-medium",children:t("tracePage.contextLabel")}),n.context]}),n.recovery&&(0,a.jsxs)("p",{className:"text-xs text-success",children:[(0,a.jsx)("span",{className:"font-medium",children:t("tracePage.recoveryLabel")}),n.recovery]})]},r))})]})}function e3({label:e,value:t}){return(0,a.jsxs)("span",{className:"inline-flex items-baseline gap-1 text-xs",children:[(0,a.jsx)("span",{className:"text-foreground-muted",children:e}),(0,a.jsx)("span",{className:"font-semibold text-foreground tabular-nums",children:t})]})}function e4({label:e,value:t,accent:n}){return(0,a.jsxs)("div",{className:"rounded-md border border-card-border bg-card p-3",children:[(0,a.jsx)("div",{className:"text-xs text-foreground-muted",children:e}),(0,a.jsx)("div",{className:(0,j.cn)("mt-1 text-xl font-semibold tabular-nums","error"===n?"text-error":"text-foreground"),children:t})]})}function e6({children:e,align:t,className:n,colKey:r,currentWidth:s,onResize:o}){let l=!!(r&&o&&null!=s);return(0,a.jsxs)("th",{className:(0,j.cn)("relative px-3 py-2 text-xs font-medium text-foreground-muted border-b border-border whitespace-nowrap","right"===t&&"text-right","center"===t&&"text-center",n),children:[e,l&&(0,a.jsx)(eZ,{colKey:r,currentWidth:s,onResize:o})]})}function e8({children:e,sortKey:t,currentKey:n,dir:r,onSort:s,colKey:o,currentWidth:l,onResize:i}){let u=t===n,c=!!(o&&i&&null!=l);return(0,a.jsxs)("th",{scope:"col",tabIndex:0,role:"columnheader","aria-sort":u?"asc"===r?"ascending":"descending":"none",onClick:()=>s(t),onKeyDown:e=>{("Enter"===e.key||" "===e.key)&&(e.preventDefault(),s(t))},className:(0,j.cn)("relative px-3 py-2 text-xs font-medium border-b border-border whitespace-nowrap cursor-pointer select-none","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",u?"text-primary":"text-foreground-muted"),children:[(0,a.jsxs)("span",{className:"inline-flex items-center gap-1",children:[e,(0,a.jsx)("span",{className:(0,j.cn)("text-[10px]",u?"opacity-100":"opacity-40"),children:u?"asc"===r?"▲":"▼":"⇅"})]}),c&&(0,a.jsx)(eZ,{colKey:o,currentWidth:l,onResize:i})]})}function e7({execution:e,onClick:t}){let r,s,{t:o}=(0,Z.useLocale)(),l=e.task_id||e.upload_id||"",i=eQ(e),u=(r=Array.isArray(e.invoked_skills)?e.invoked_skills:Array.isArray(e.invokedSkills)?e.invokedSkills:[],s=new Set,r.forEach(e=>{let t=e?.name?.trim();t&&s.add(t)}),Array.from(s)).length,c=new Set((e.agents??[]).filter(Boolean)).size,d=o("running"===i?"tracePage.statusRunning":"failed"===i?"tracePage.statusFailed":"tracePage.statusSuccess");return(0,a.jsxs)("tr",{onClick:t,onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),t())},tabIndex:0,role:"button","aria-label":`${o("tracePage.columnTraceId")} ${l}`,className:"border-b border-border hover:bg-background-secondary focus-visible:outline-none focus-visible:bg-background-secondary focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset cursor-pointer transition-colors",children:[(0,a.jsx)(tt,{children:(0,a.jsx)(ep,{value:l,head:6,tail:4})}),(0,a.jsx)(tt,{children:(0,a.jsx)(eg,{className:"text-foreground text-sm",children:e.agent||(e.agents&&e.agents.length>0?e.agents[0]:null)||e.framework||"-"})}),(0,a.jsx)(tt,{children:(0,a.jsx)(ec.StatusBadge,{status:"running"===i?"running":"failed"===i?"error":"success",label:d})}),(0,a.jsx)(tt,{children:(0,a.jsxs)("div",{className:"flex gap-1 flex-wrap",children:[e.is_subagent?(0,a.jsx)("span",{title:e.subagent_name||e.subagent_type||"",className:"text-[9px] font-bold tracking-wider px-1.5 py-0.5 rounded-sm bg-primary/10 text-primary border border-primary/30",children:"SUB"}):c>1&&(0,a.jsx)(te,{variant:"agent",icon:h.Users,children:"Multi-Agent"}),u>0&&(0,a.jsx)(te,{variant:"skill",icon:f,children:"Skills"}),e.framework&&(0,a.jsx)(te,{variant:"framework",icon:p.Terminal,children:eY(e.framework)})]})}),(0,a.jsx)(tt,{children:(0,a.jsx)(eg,{className:"text-foreground text-sm",children:e.query||o("tracePage.noQuery")})}),(0,a.jsx)(tt,{children:(0,a.jsx)("span",{className:"text-xs text-foreground-secondary font-mono tabular-nums whitespace-nowrap",children:null!=e.tokens?e.tokens.toLocaleString():"-"})}),(0,a.jsx)(tt,{children:(0,a.jsx)(e$,{value:e.timestamp,className:"text-xs text-foreground-secondary font-mono whitespace-nowrap"})}),(0,a.jsx)(tt,{align:"right",children:(0,a.jsxs)("div",{className:"inline-flex gap-1 group",onClick:e=>e.stopPropagation(),children:[(0,a.jsx)(A.Button,{variant:"ghost",size:"sm",onClick:t,className:"h-7 px-2 text-xs",children:o("tracePage.rowDetail")}),(0,a.jsx)(A.Button,{variant:"ghost",size:"sm",asChild:!0,className:"h-7 px-2 text-xs",children:(0,a.jsx)(n.default,{href:`${eL}/fault?taskId=${l}`,children:o("tracePage.rowAnalysis")})}),(0,a.jsx)(A.Button,{variant:"ghost",size:"sm",asChild:!0,className:"h-7 px-2 text-xs",children:(0,a.jsxs)(n.default,{href:`${eL}/eval/trajectory/${l}`,children:[(0,a.jsx)(m.Wrench,{className:"size-3"}),o("tracePage.rowEval")]})})]})})]})}let e9={agent:"bg-primary-subtle text-primary border-primary-border",skill:"bg-primary-subtle text-primary border-primary-border",framework:"bg-background-secondary text-foreground-secondary border-border"};function te({children:e,variant:t="framework",icon:n}){return(0,a.jsxs)("span",{className:(0,j.cn)("inline-flex items-center gap-1 rounded-sm border px-1.5 py-0.5 text-xs font-medium whitespace-nowrap leading-none",e9[t]),children:[n&&(0,a.jsx)(n,{className:"size-3 shrink-0","aria-hidden":!0}),e]})}function tt({children:e,align:t,className:n}){return(0,a.jsx)("td",{className:(0,j.cn)("px-3 py-2 text-sm text-foreground","right"===t&&"text-right","center"===t&&"text-center",n),children:e})}e.s(["default",()=>e0],256225)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,96747,e=>{"use strict";var t=e.i(346367);let n=["AElig","AMP","Aacute","Acirc","Agrave","Aring","Atilde","Auml","COPY","Ccedil","ETH","Eacute","Ecirc","Egrave","Euml","GT","Iacute","Icirc","Igrave","Iuml","LT","Ntilde","Oacute","Ocirc","Ograve","Oslash","Otilde","Ouml","QUOT","REG","THORN","Uacute","Ucirc","Ugrave","Uuml","Yacute","aacute","acirc","acute","aelig","agrave","amp","aring","atilde","auml","brvbar","ccedil","cedil","cent","copy","curren","deg","divide","eacute","ecirc","egrave","eth","euml","frac12","frac14","frac34","gt","iacute","icirc","iexcl","igrave","iquest","iuml","laquo","lt","macr","micro","middot","nbsp","not","ntilde","oacute","ocirc","ograve","ordf","ordm","oslash","otilde","ouml","para","plusmn","pound","quot","raquo","reg","sect","shy","sup1","sup2","sup3","szlig","thorn","times","uacute","ucirc","ugrave","uml","uuml","yacute","yen","yuml"],r={0:"�",128:"€",130:"‚",131:"ƒ",132:"„",133:"…",134:"†",135:"‡",136:"ˆ",137:"‰",138:"Š",139:"‹",140:"Œ",142:"Ž",145:"‘",146:"’",147:"“",148:"”",149:"•",150:"–",151:"—",152:"˜",153:"™",154:"š",155:"›",156:"œ",158:"ž",159:"Ÿ"};function a(e){let t="string"==typeof e?e.charCodeAt(0):e;return t>=48&&t<=57}function i(e){let t="string"==typeof e?e.charCodeAt(0):e;return t>=97&&t<=102||t>=65&&t<=70||t>=48&&t<=57}function s(e){let t;return(t="string"==typeof e?e.charCodeAt(0):e)>=97&&t<=122||t>=65&&t<=90||a(e)}var o=e.i(849087);let l=["","Named character references must be terminated by a semicolon","Numeric character references must be terminated by a semicolon","Named character references cannot be empty","Numeric character references cannot be empty","Named character references must be known","Numeric character references cannot be disallowed","Numeric character references cannot be outside the permissible Unicode range"];var u=0,c={},d={util:{type:function(e){return Object.prototype.toString.call(e).slice(8,-1)},objId:function(e){return e.__id||Object.defineProperty(e,"__id",{value:++u}),e.__id},clone:function e(t,n){var r,a;switch(n=n||{},d.util.type(t)){case"Object":if(n[a=d.util.objId(t)])return n[a];for(var i in r={},n[a]=r,t)t.hasOwnProperty(i)&&(r[i]=e(t[i],n));return r;case"Array":if(n[a=d.util.objId(t)])return n[a];return r=[],n[a]=r,t.forEach(function(t,a){r[a]=e(t,n)}),r;default:return t}}},languages:{plain:c,plaintext:c,text:c,txt:c,extend:function(e,t){var n=d.util.clone(d.languages[e]);for(var r in t)n[r]=t[r];return n},insertBefore:function(e,t,n,r){var a=(r=r||d.languages)[e],i={};for(var s in a)if(a.hasOwnProperty(s)){if(s==t)for(var o in n)n.hasOwnProperty(o)&&(i[o]=n[o]);n.hasOwnProperty(s)||(i[s]=a[s])}var l=r[e];return r[e]=i,d.languages.DFS(d.languages,function(t,n){n===l&&t!=e&&(this[t]=i)}),i},DFS:function e(t,n,r,a){a=a||{};var i=d.util.objId;for(var s in t)if(t.hasOwnProperty(s)){n.call(t,s,t[s],r||s);var o=t[s],l=d.util.type(o);"Object"!==l||a[i(o)]?"Array"!==l||a[i(o)]||(a[i(o)]=!0,e(o,n,s,a)):(a[i(o)]=!0,e(o,n,null,a))}}},plugins:{},highlight:function(e,t,n){var r={code:e,grammar:t,language:n};if(d.hooks.run("before-tokenize",r),!r.grammar)throw Error('The language "'+r.language+'" has no grammar.');return r.tokens=d.tokenize(r.code,r.grammar),d.hooks.run("after-tokenize",r),p.stringify(d.util.encode(r.tokens),r.language)},tokenize:function(e,t){var n=t.rest;if(n){for(var r in n)t[r]=n[r];delete t.rest}var a=new g;return h(a,a.head,e),function e(t,n,r,a,i,s){for(var o in r)if(r.hasOwnProperty(o)&&r[o]){var l=r[o];l=Array.isArray(l)?l:[l];for(var u=0;u<l.length;++u){if(s&&s.cause==o+","+u)return;var c=l[u],g=c.inside,m=!!c.lookbehind,E=!!c.greedy,b=c.alias;if(E&&!c.pattern.global){var S=c.pattern.toString().match(/[imsuy]*$/)[0];c.pattern=RegExp(c.pattern.source,S+"g")}for(var A=c.pattern||c,T=a.next,I=i;T!==n.tail&&(!s||!(I>=s.reach));I+=T.value.length,T=T.next){var y,N=T.value;if(n.length>t.length)return;if(!(N instanceof p)){var O=1;if(E){if(!(y=f(A,I,t,m))||y.index>=t.length)break;var R=y.index,k=y.index+y[0].length,C=I;for(C+=T.value.length;R>=C;)C+=(T=T.next).value.length;if(C-=T.value.length,I=C,T.value instanceof p)continue;for(var L=T;L!==n.tail&&(C<k||"string"==typeof L.value);L=L.next)O++,C+=L.value.length;O--,N=t.slice(I,C),y.index-=I}else if(!(y=f(A,0,N,m)))continue;var R=y.index,v=y[0],x=N.slice(0,R),_=N.slice(R+v.length),D=I+N.length;s&&D>s.reach&&(s.reach=D);var w=T.prev;if(x&&(w=h(n,w,x),I+=x.length),function(e,t,n){for(var r=t.next,a=0;a<n&&r!==e.tail;a++)r=r.next;t.next=r,r.prev=t,e.length-=a}(n,w,O),T=h(n,w,new p(o,g?d.tokenize(v,g):v,b,v)),_&&h(n,T,_),O>1){var P={cause:o+","+u,reach:D};e(t,n,r,T.prev,I,P),s&&P.reach>s.reach&&(s.reach=P.reach)}}}}}}(e,a,t,a.head,0),function(e){for(var t=[],n=e.head.next;n!==e.tail;)t.push(n.value),n=n.next;return t}(a)},hooks:{all:{},add:function(e,t){var n=d.hooks.all;n[e]=n[e]||[],n[e].push(t)},run:function(e,t){var n=d.hooks.all[e];if(n&&n.length)for(var r,a=0;r=n[a++];)r(t)}},Token:p};function p(e,t,n,r){this.type=e,this.content=t,this.alias=n,this.length=0|(r||"").length}function f(e,t,n,r){e.lastIndex=t;var a=e.exec(n);if(a&&r&&a[1]){var i=a[1].length;a.index+=i,a[0]=a[0].slice(i)}return a}function g(){var e={value:null,prev:null,next:null},t={value:null,prev:e,next:null};e.next=t,this.head=e,this.tail=t,this.length=0}function h(e,t,n){var r=t.next,a={value:n,prev:t,next:r};return t.next=a,r.prev=a,e.length++,a}function m(){}m.prototype=d;let E=new m;E.highlight=function(e,t){let n,r;if("string"!=typeof e)throw TypeError("Expected `string` for `value`, got `"+e+"`");if(t&&"object"==typeof t)n=t;else{if("string"!=typeof(r=t))throw TypeError("Expected `string` for `name`, got `"+r+"`");if(Object.hasOwn(E.languages,r))n=E.languages[r];else throw Error("Unknown language: `"+r+"` is not registered")}return{type:"root",children:d.highlight.call(E,e,n,r)}},E.register=function(e){if("function"!=typeof e||!e.displayName)throw Error("Expected `function` for `syntax`, got `"+e+"`");Object.hasOwn(E.languages,e.displayName)||e(E)},E.alias=function(e,t){let n,r=E.languages,a={};for(n in"string"==typeof e?t&&(a[e]=t):a=e,a)if(Object.hasOwn(a,n)){let e=a[n],t="string"==typeof e?[e]:e,i=-1;for(;++i<t.length;)r[t[i]]=r[n]}},E.registered=function(e){if("string"!=typeof e)throw TypeError("Expected `string` for `aliasOrLanguage`, got `"+e+"`");return Object.hasOwn(E.languages,e)},E.listLanguages=function(){let e,t=E.languages,n=[];for(e in t)Object.hasOwn(t,e)&&"object"==typeof t[e]&&n.push(e);return n},E.util.encode=function(e){return e},E.Token.stringify=function e(u,c){if("string"==typeof u)return{type:"text",value:u};if(Array.isArray(u)){let t=[],n=-1;for(;++n<u.length;)null!==u[n]&&void 0!==u[n]&&""!==u[n]&&t.push(e(u[n],c));return t}let d={attributes:{},classes:["token",u.type],content:e(u.content,c),language:c,tag:"span",type:u.type};return u.alias&&d.classes.push(..."string"==typeof u.alias?[u.alias]:u.alias),E.hooks.run("wrap",d),(0,t.h)(d.tag+"."+d.classes.join("."),function(e){let t;for(t in e)Object.hasOwn(e,t)&&(e[t]=function(e,t){let u,c,d,p={},f="string"==typeof p.additional?p.additional.charCodeAt(0):p.additional,g=[],h=0,m=-1,E="";p.position&&("start"in p.position||"indent"in p.position?(c=p.position.indent,u=p.position.start):u=p.position);let b=(u?u.line:0)||1,S=(u?u.column:0)||1,A=y();for(h--;++h<=e.length;)if(10===d&&(S=(c?c[m]:0)||1),38===(d=e.charCodeAt(h))){let t,l=e.charCodeAt(h+1);if(9===l||10===l||12===l||32===l||38===l||60===l||Number.isNaN(l)||f&&l===f){E+=String.fromCharCode(d),S++;continue}let u=h+1,c=u,m=u;if(35===l){m=++c;let n=e.charCodeAt(m);88===n||120===n?(t="hexadecimal",m=++c):t="decimal"}else t="named";let b="",R="",k="",C="named"===t?s:"decimal"===t?a:i;for(m--;++m<=e.length;){let r=e.charCodeAt(m);if(!C(r))break;k+=String.fromCharCode(r),"named"===t&&n.includes(k)&&(b=k,R=(0,o.decodeNamedCharacterReference)(k))}let L=59===e.charCodeAt(m);if(L){m++;let e="named"===t&&(0,o.decodeNamedCharacterReference)(k);e&&(b=k,R=e)}let v=1+m-u,x="";if(L||!1!==p.nonTerminated)if(k)if("named"===t){if(L&&!R)N(5,1);else if(b!==k&&(v=1+(m=c+b.length)-c,L=!1),!L){let t=b?1:3;if(p.attribute){let n=e.charCodeAt(m);61===n?(N(t,v),R=""):s(n)?R="":N(t,v)}else N(t,v)}x=R}else{var T,I;L||N(2,v);let e=Number.parseInt(k,"hexadecimal"===t?16:10);if((T=e)>=55296&&T<=57343||T>1114111)N(7,v),x=String.fromCharCode(65533);else if(e in r)N(6,v),x=r[e];else{let t="";((I=e)>=1&&I<=8||11===I||I>=13&&I<=31||I>=127&&I<=159||I>=64976&&I<=65007||(65535&I)==65535||(65535&I)==65534)&&N(6,v),e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10|55296),e=56320|1023&e),x=t+String.fromCharCode(e)}}else"named"!==t&&N(4,v);if(x){O(),A=y(),h=m-1,S+=m-u+1,g.push(x);let t=y();t.offset++,p.reference&&p.reference.call(p.referenceContext||void 0,x,{start:A,end:t},e.slice(u-1,m)),A=t}else k=e.slice(u-1,m),E+=k,S+=k.length,h=m-1}else 10===d&&(b++,m++,S=0),Number.isNaN(d)?O():(E+=String.fromCharCode(d),S++);return g.join("");function y(){return{line:b,column:S,offset:h+((u?u.offset:0)||0)}}function N(e,t){let n;p.warning&&(n=y(),n.column+=t,n.offset+=t,p.warning.call(p.warningContext||void 0,l[e],n,e))}function O(){E&&(g.push(E),p.text&&p.text.call(p.textContext||void 0,E,{start:A,end:y()}),E="")}}(e[t]));return e}(d.attributes),d.content)},e.s(["refractor",0,E],96747)},508734,e=>{"use strict";var t=e.i(526347);e.s(["Copy",()=>t.default])},484755,e=>{"use strict";var t=e.i(860958);function n(e){e.register(t.default),e.languages.go=e.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"|`[^`]*`/,lookbehind:!0,greedy:!0},keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,boolean:/\b(?:_|false|iota|nil|true)\b/,number:[/\b0(?:b[01_]+|o[0-7_]+)i?\b/i,/\b0x(?:[a-f\d_]+(?:\.[a-f\d_]*)?|\.[a-f\d_]+)(?:p[+-]?\d+(?:_\d+)*)?i?(?!\w)/i,/(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?[\d_]+)?i?(?!\w)/i],operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,builtin:/\b(?:append|bool|byte|cap|close|complex|complex(?:64|128)|copy|delete|error|float(?:32|64)|u?int(?:8|16|32|64)?|imag|len|make|new|panic|print(?:ln)?|real|recover|rune|string|uintptr)\b/}),e.languages.insertBefore("go","string",{char:{pattern:/'(?:\\.|[^'\\\r\n]){0,10}'/,greedy:!0}}),delete e.languages.go["class-name"]}n.displayName="go",n.aliases=[],e.s(["default",()=>n])},233634,e=>{"use strict";function t(e){!function(e){var t="\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b",n={pattern:/(^(["']?)\w+\2)[ \t]+\S.*/,lookbehind:!0,alias:"punctuation",inside:null},r={bash:n,environment:{pattern:RegExp("\\$"+t),alias:"constant"},variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,greedy:!0,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--|\+\+|\*\*=?|<<=?|>>=?|&&|\|\||[=!+\-*/%<>^&|]=?|[?~:]/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},{pattern:/\$\{[^}]+\}/,greedy:!0,inside:{operator:/:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/,punctuation:/[\[\]]/,environment:{pattern:RegExp("(\\{)"+t),lookbehind:!0,alias:"constant"}}},/\$(?:\w+|[#?*!@$])/],entity:/\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{4}|x[0-9a-fA-F]{1,2})/};e.languages.bash={shebang:{pattern:/^#!\s*\/.*/,alias:"important"},comment:{pattern:/(^|[^"{\\$])#.*/,lookbehind:!0},"function-name":[{pattern:/(\bfunction\s+)[\w-]+(?=(?:\s*\(?:\s*\))?\s*\{)/,lookbehind:!0,alias:"function"},{pattern:/\b[\w-]+(?=\s*\(\s*\)\s*\{)/,alias:"function"}],"for-or-select":{pattern:/(\b(?:for|select)\s+)\w+(?=\s+in\s)/,alias:"variable",lookbehind:!0},"assign-left":{pattern:/(^|[\s;|&]|[<>]\()\w+(?:\.\w+)*(?=\+?=)/,inside:{environment:{pattern:RegExp("(^|[\\s;|&]|[<>]\\()"+t),lookbehind:!0,alias:"constant"}},alias:"variable",lookbehind:!0},parameter:{pattern:/(^|\s)-{1,2}(?:\w+:[+-]?)?\w+(?:\.\w+)*(?=[=\s]|$)/,alias:"variable",lookbehind:!0},string:[{pattern:/((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:r},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0,inside:{bash:n}},{pattern:/(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,lookbehind:!0,greedy:!0,inside:r},{pattern:/(^|[^$\\])'[^']*'/,lookbehind:!0,greedy:!0},{pattern:/\$'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{entity:r.entity}}],environment:{pattern:RegExp("\\$?"+t),alias:"constant"},variable:r.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cargo|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|java|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|sysctl|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&]|[<>]\()(?:case|do|done|elif|else|esac|fi|for|function|if|in|select|then|until|while)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|alias|bind|break|builtin|caller|cd|command|continue|declare|echo|enable|eval|exec|exit|export|getopts|hash|help|let|local|logout|mapfile|printf|pwd|read|readarray|readonly|return|set|shift|shopt|source|test|times|trap|type|typeset|ulimit|umask|unalias|unset)(?=$|[)\s;|&])/,lookbehind:!0,alias:"class-name"},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:false|true)(?=$|[)\s;|&])/,lookbehind:!0},"file-descriptor":{pattern:/\B&\d\b/,alias:"important"},operator:{pattern:/\d?<>|>\||\+=|=[=~]?|!=?|<<[<-]?|[&\d]?>>|\d[<>]&?|[<>][&=]?|&[>&]?|\|[&|]?/,inside:{"file-descriptor":{pattern:/^\d/,alias:"important"}}},punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/,number:{pattern:/(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,lookbehind:!0}},n.inside=e.languages.bash;for(var a=["comment","function-name","for-or-select","assign-left","parameter","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],i=r.variable[1].inside,s=0;s<a.length;s++)i[a[s]]=e.languages.bash[a[s]];e.languages.sh=e.languages.bash,e.languages.shell=e.languages.bash}(e)}t.displayName="bash",t.aliases=["sh","shell"],e.s(["default",()=>t])},218469,456420,248105,e=>{"use strict";var t=e.i(271645);let n=(...e)=>e.filter((e,t,n)=>!!e&&""!==e.trim()&&n.indexOf(e)===t).join(" ").trim(),r=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var a={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"};let i=(0,t.createContext)({}),s=(0,t.forwardRef)(({color:e,size:r,strokeWidth:s,absoluteStrokeWidth:o,className:l="",children:u,iconNode:c,...d},p)=>{let{size:f=24,strokeWidth:g=2,absoluteStrokeWidth:h=!1,color:m="currentColor",className:E=""}=(0,t.useContext)(i)??{},b=o??h?24*Number(s??g)/Number(r??f):s??g;return(0,t.createElement)("svg",{ref:p,...a,width:r??f??a.width,height:r??f??a.height,stroke:e??m,strokeWidth:b,className:n("lucide",E,l),...!u&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(d)&&{"aria-hidden":"true"},...d},[...c.map(([e,n])=>(0,t.createElement)(e,n)),...Array.isArray(u)?u:[u]])}),o=(e,a)=>{let i=(0,t.forwardRef)(({className:i,...o},l)=>(0,t.createElement)(s,{ref:l,iconNode:a,className:n(`lucide-${r(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${e}`,i),...o}));return i.displayName=r(e),i};e.s(["default",()=>o],456420);let l=o("panel-left-close",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m16 15-3-3 3-3",key:"14y99z"}]]);e.s(["PanelLeftClose",()=>l],218469);let u=o("panel-left-open",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m14 9 3 3-3 3",key:"8010ee"}]]);e.s(["PanelLeftOpen",()=>u],248105)},540568,e=>{"use strict";var t=e.i(843476),n=e.i(218469),r=e.i(248105),a=e.i(760045);function i({title:e,actions:i}){let{isCollapsed:s,toggleSidebar:o}=(0,a.useSidebar)(),l=s?r.PanelLeftOpen:n.PanelLeftClose;return(0,t.jsxs)("header",{className:"sticky top-0 z-10 flex h-14 items-center gap-3 border-b border-border bg-card px-6",style:{flexShrink:0},children:[(0,t.jsx)("button",{type:"button",onClick:o,"aria-label":s?"展开侧栏":"折叠侧栏",className:"inline-flex size-7 shrink-0 items-center justify-center rounded-md text-foreground-secondary transition-colors hover:bg-background-secondary hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:(0,t.jsx)(l,{className:"size-4"})}),(0,t.jsx)("div",{className:"flex min-w-0 flex-1 items-center gap-2 text-sm font-medium text-foreground",children:"string"==typeof e?(0,t.jsx)("span",{className:"truncate",children:e}):e}),i&&(0,t.jsx)("div",{className:"flex items-center gap-2",children:i})]})}e.s(["AppTopBar",()=>i])},207670,e=>{"use strict";function t(){for(var e,t,n=0,r="",a=arguments.length;n<a;n++)(e=arguments[n])&&(t=function e(t){var n,r,a="";if("string"==typeof t||"number"==typeof t)a+=t;else if("object"==typeof t)if(Array.isArray(t)){var i=t.length;for(n=0;n<i;n++)t[n]&&(r=e(t[n]))&&(a&&(a+=" "),a+=r)}else for(r in t)t[r]&&(a&&(a+=" "),a+=r);return a}(e))&&(r&&(r+=" "),r+=t);return r}e.s(["clsx",()=>t])},643957,e=>{"use strict";let t=(0,e.i(456420).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);e.s(["default",()=>t])},689664,e=>{"use strict";var t=e.i(643957);e.s(["Check",()=>t.default])},566595,e=>{"use strict";let t=(0,e.i(456420).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);e.s(["Search",()=>t],566595)},182840,e=>{"use strict";function t(e){!function(e){var t=/[*&][^\s[\]{},]+/,n=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,r="(?:"+n.source+"(?:[ ]+"+t.source+")?|"+t.source+"(?:[ ]+"+n.source+")?)",a=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-]<PLAIN>)(?:[ \t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*/.source.replace(/<PLAIN>/g,function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source}),i=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function s(e,t){return t=(t||"").replace(/m/g,"")+"m",RegExp(/([:\-,[{]\s*(?:\s<<prop>>[ \t]+)?)(?:<<value>>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<<prop>>/g,function(){return r}).replace(/<<value>>/g,function(){return e}),t)}e.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<<prop>>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<<prop>>/g,function(){return r})),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<<prop>>[ \t]+)?)<<key>>(?=\s*:\s)/.source.replace(/<<prop>>/g,function(){return r}).replace(/<<key>>/g,function(){return"(?:"+a+"|"+i+")"})),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:s(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:s(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:s(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:s(i),lookbehind:!0,greedy:!0},number:{pattern:s(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:n,important:t,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},e.languages.yml=e.languages.yaml}(e)}t.displayName="yaml",t.aliases=["yml"],e.s(["default",()=>t])},129228,e=>{"use strict";var t=e.i(271645),n=e.i(925949),r=e.i(433369),a=["axis"],i=(0,t.forwardRef)((e,i)=>t.createElement(r.CartesianChart,{chartName:"LineChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:a,tooltipPayloadSearcher:n.arrayTooltipSearcher,categoricalChartProps:e,ref:i}));e.s(["LineChart",()=>i])},716327,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["ChevronDown",()=>t],716327)},867927,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",()=>t],867927)},747925,e=>{"use strict";let t=(0,e.i(456420).default)("wrench",[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]]);e.s(["Wrench",()=>t],747925)},823197,e=>{"use strict";class t{constructor(e){var t=e.x,n=e.y;this.xAxisScale=t,this.yAxisScale=n}map(e,t){var n,r,a=t.position;return{x:null!=(n=this.xAxisScale.map(e.x,{position:a}))?n:0,y:null!=(r=this.yAxisScale.map(e.y,{position:a}))?r:0}}mapWithFallback(e,t){var n,r,a,i,s=t.position,o=t.fallback;return a="rangeMin"===o?this.yAxisScale.rangeMin():"rangeMax"===o?this.yAxisScale.rangeMax():0,i="rangeMin"===o?this.xAxisScale.rangeMin():"rangeMax"===o?this.xAxisScale.rangeMax():0,{x:null!=(n=this.xAxisScale.map(e.x,{position:s}))?n:i,y:null!=(r=this.yAxisScale.map(e.y,{position:s}))?r:a}}isInRange(e){var t=e.x,n=e.y,r=null==t||this.xAxisScale.isInRange(t),a=null==n||this.yAxisScale.isInRange(n);return r&&a}}e.s(["CartesianScaleHelperImpl",()=>t])},476472,e=>{"use strict";function t(e){for(var t=/\/\*(?:[^*/]|\*(?!\/)|\/(?!\*)|<self>)*\*\//.source,n=0;n<2;n++)t=t.replace(/<self>/g,function(){return t});t=t.replace(/<self>/g,function(){return/[^\s\S]/.source}),e.languages.rust={comment:[{pattern:RegExp(/(^|[^\\])/.source+t),lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/b?"(?:\\[\s\S]|[^\\"])*"|b?r(#*)"(?:[^"]|"(?!\1))*"\1/,greedy:!0},char:{pattern:/b?'(?:\\(?:x[0-7][\da-fA-F]|u\{(?:[\da-fA-F]_*){1,6}\}|.)|[^\\\r\n\t'])'/,greedy:!0},attribute:{pattern:/#!?\[(?:[^\[\]"]|"(?:\\[\s\S]|[^\\"])*")*\]/,greedy:!0,alias:"attr-name",inside:{string:null}},"closure-params":{pattern:/([=(,:]\s*|\bmove\s*)\|[^|]*\||\|[^|]*\|(?=\s*(?:\{|->))/,lookbehind:!0,greedy:!0,inside:{"closure-punctuation":{pattern:/^\||\|$/,alias:"punctuation"},rest:null}},"lifetime-annotation":{pattern:/'\w+/,alias:"symbol"},"fragment-specifier":{pattern:/(\$\w+:)[a-z]+/,lookbehind:!0,alias:"punctuation"},variable:/\$\w+/,"function-definition":{pattern:/(\bfn\s+)\w+/,lookbehind:!0,alias:"function"},"type-definition":{pattern:/(\b(?:enum|struct|trait|type|union)\s+)\w+/,lookbehind:!0,alias:"class-name"},"module-declaration":[{pattern:/(\b(?:crate|mod)\s+)[a-z][a-z_\d]*/,lookbehind:!0,alias:"namespace"},{pattern:/(\b(?:crate|self|super)\s*)::\s*[a-z][a-z_\d]*\b(?:\s*::(?:\s*[a-z][a-z_\d]*\s*::)*)?/,lookbehind:!0,alias:"namespace",inside:{punctuation:/::/}}],keyword:[/\b(?:Self|abstract|as|async|await|become|box|break|const|continue|crate|do|dyn|else|enum|extern|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|override|priv|pub|ref|return|self|static|struct|super|trait|try|type|typeof|union|unsafe|unsized|use|virtual|where|while|yield)\b/,/\b(?:bool|char|f(?:32|64)|[ui](?:8|16|32|64|128|size)|str)\b/],function:/\b[a-z_]\w*(?=\s*(?:::\s*<|\())/,macro:{pattern:/\b\w+!/,alias:"property"},constant:/\b[A-Z_][A-Z_\d]+\b/,"class-name":/\b[A-Z]\w*\b/,namespace:{pattern:/(?:\b[a-z][a-z_\d]*\s*::\s*)*\b[a-z][a-z_\d]*\s*::(?!\s*<)/,inside:{punctuation:/::/}},number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0o[0-7](?:_?[0-7])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)(?:_?(?:f32|f64|[iu](?:8|16|32|64|size)?))?\b/,boolean:/\b(?:false|true)\b/,punctuation:/->|\.\.=|\.{1,3}|::|[{}[\];(),:]/,operator:/[-+*\/%!^]=?|=[=>]?|&[&=]?|\|[|=]?|<<?=?|>>?=?|[@?]/},e.languages.rust["closure-params"].inside.rest=e.languages.rust,e.languages.rust.attribute.inside.string=e.languages.rust.string}t.displayName="rust",t.aliases=[],e.s(["default",()=>t])},440435,e=>{"use strict";function t(e){e.languages.sql={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/,lookbehind:!0},variable:[{pattern:/@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/,greedy:!0},/@[\w.$]+/],string:{pattern:/(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/,greedy:!0,lookbehind:!0},identifier:{pattern:/(^|[^@\\])`(?:\\[\s\S]|[^`\\]|``)*`/,greedy:!0,lookbehind:!0,inside:{punctuation:/^`|`$/}},function:/\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i,keyword:/\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:COL|_INSERT)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURN(?:ING|S)?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i,boolean:/\b(?:FALSE|NULL|TRUE)\b/i,number:/\b0x[\da-f]+\b|\b\d+(?:\.\d*)?|\B\.\d+\b/i,operator:/[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/}}t.displayName="sql",t.aliases=[],e.s(["default",()=>t])},909483,e=>{"use strict";function t(e){e.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}},e.languages.webmanifest=e.languages.json}t.displayName="json",t.aliases=["webmanifest"],e.s(["default",()=>t])},766504,e=>{"use strict";var t=e.i(453687);function n(e){e.register(t.default),function(e){var t=/(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;function n(e){return e=e.replace(/<inner>/g,function(){return t}),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+e+")")}var r=/(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,a=/\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(/__/g,function(){return r}),i=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\n|\r\n?)/.source;e.languages.markdown=e.languages.extend("markup",{}),e.languages.insertBefore("markdown","prolog",{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:["yaml","language-yaml"],inside:e.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+a+i+"(?:"+a+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+a+i+")(?:"+a+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(r),inside:e.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+a+")"+i+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+a+"$"),inside:{"table-header":{pattern:RegExp(r),alias:"important",inside:e.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:n(/\b__(?:(?!_)<inner>|_(?:(?!_)<inner>)+_)+__\b|\*\*(?:(?!\*)<inner>|\*(?:(?!\*)<inner>)+\*)+\*\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:n(/\b_(?:(?!_)<inner>|__(?:(?!_)<inner>)+__)+_\b|\*(?:(?!\*)<inner>|\*\*(?:(?!\*)<inner>)+\*\*)+\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:n(/(~~?)(?:(?!~)<inner>)+\2/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:["code","keyword"]},url:{pattern:n(/!?\[(?:(?!\])<inner>)+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)|[ \t]?\[(?:(?!\])<inner>)+\])/.source),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),["url","bold","italic","strike"].forEach(function(t){["url","bold","italic","strike","code-snippet"].forEach(function(n){t!==n&&(e.languages.markdown[t].inside.content.inside[n]=e.languages.markdown[n])})}),e.hooks.add("after-tokenize",function(e){("markdown"===e.language||"md"===e.language)&&function e(t){if(t&&"string"!=typeof t)for(var n=0,r=t.length;n<r;n++){var a=t[n];if("code"!==a.type){e(a.content);continue}var i=a.content[1],s=a.content[3];if(i&&s&&"code-language"===i.type&&"code-block"===s.type&&"string"==typeof i.content){var o=i.content.replace(/\b#/g,"sharp").replace(/\b\+\+/g,"pp"),l="language-"+(o=(/[a-z][\w-]*/i.exec(o)||[""])[0].toLowerCase());s.alias?"string"==typeof s.alias?s.alias=[s.alias,l]:s.alias.push(l):s.alias=[l]}}}(e.tokens)}),e.hooks.add("wrap",function(t){if("code-block"===t.type){for(var n="",r=0,a=t.classes.length;r<a;r++){var i=t.classes[r],s=/language-(.+)/.exec(i);if(s){n=s[1];break}}var o=e.languages[n];if(o)t.content=e.highlight(t.content.value,o,n);else if(n&&"none"!==n&&e.plugins.autoloader){var l="md-"+new Date().valueOf()+"-"+Math.floor(1e16*Math.random());t.attributes.id=l,e.plugins.autoloader.loadLanguages(n,function(){var t=document.getElementById(l);t&&(t.innerHTML=e.highlight(t.textContent,e.languages[n],n))})}}}),RegExp(e.languages.markup.tag.pattern.source,"gi"),e.languages.md=e.languages.markdown}(e)}n.displayName="markdown",n.aliases=["md"],e.s(["default",()=>n])},468590,434567,e=>{"use strict";let t=(0,e.i(456420).default)("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]]);function n(e){if(null==e)return"";if("string"==typeof e)return e;if("number"==typeof e||"boolean"==typeof e)return String(e);if(Array.isArray(e))return e.map(function e(t){if(null==t)return"";if("string"==typeof t)return t;if("number"==typeof t||"boolean"==typeof t)return String(t);if(Array.isArray(t))return t.map(e).filter(Boolean).join("");if("object"==typeof t){if("string"==typeof t.text)return t.text;if("string"==typeof t.content)return t.content;if(Array.isArray(t.content))return e(t.content)}return""}).filter(Boolean).join("");if("object"==typeof e){if("string"==typeof e.text)return e.text;if("string"==typeof e.content)return e.content;if(Array.isArray(e.content))return n(e.content)}return""}function r(e){if(!e||0===e.length)return null;let t=0,r=()=>`n${++t}`,c=e.find(e=>e.agent)?.agent||"Agent",d=i({id:r(),agentName:c,subagentType:null,sessionId:"TOP",parentId:null,depth:0}),p=[],f=new Map;f.set("TOP",d);let g=new Map;for(let t=0;t<e.length;t++){var h,m,E,b;let S,A=e[t];if("system"===A.role){let e={text:n(A.content),sha256:A.system_prompt_sha256,length:A.system_prompt_length,modelID:A.system_prompt_modelID,providerID:A.system_prompt_providerID};if(!e.text)continue;let t=A.subagent_session_id;if(t)if(f.has(t)){let n=f.get(t);n.systemPrompts||(n.systemPrompts=[]),n.systemPrompts.some(t=>e.sha256&&t.sha256===e.sha256||!e.sha256&&t.text===e.text)||n.systemPrompts.push(e)}else g.has(t)||g.set(t,[]),g.get(t).push(e);else d.systemPrompts||(d.systemPrompts=[]),d.systemPrompts.some(t=>e.sha256&&t.sha256===e.sha256||!e.sha256&&t.text===e.text)||d.systemPrompts.push(e);continue}let T="subagent"===A.role&&!!A.subagent_session_id,I=T?A.subagent_session_id:"TOP",y=A.agent||(T?A.subagent_name||"Subagent":c);if(T){let e=function(e){let t=(e.subagent_name||e.agent||"").trim();if(!t)return null;let n=t.match(/^([A-Za-z][\w-]*)/);return n?n[1].toLowerCase():t.toLowerCase()}(A),t=function(e,t){let n=p.findIndex(n=>n.expectedSessionId===e&&(!t||n.subagentType===t));if(n>=0)return p.splice(n,1)[0];if(!t)return;let r=p.findIndex(e=>!e.expectedSessionId&&e.subagentType===t);return r>=0?p.splice(r,1)[0]:void 0}(I,e);if(t){let n=t.parentNode;for(let a of(S=i({id:r(),agentName:y,subagentType:t.subagentType||e,sessionId:I,parentId:n.id,depth:n.depth+1}),t.parallelCount>1&&(S.parallelCallCount=t.parallelCount),n.children.push(S),f.set(I,S),t.spawnEvents))a.spawnedChildId=S.id;null==t.startedAt||S.startedAt||(S.startedAt=t.startedAt),function(e,t){let n=g.get(t);if(n&&n.length){for(let t of(e.systemPrompts||(e.systemPrompts=[]),n))e.systemPrompts.some(e=>t.sha256&&e.sha256===t.sha256||!t.sha256&&e.text===t.text)||e.systemPrompts.push(t);g.delete(t)}}(S,I)}else S=f.get(I)}else S=f.get(I)||d;if(S||(S=d),function(e){if("user"!==e.role&&"opencode"!==e.role&&"subagent"!==e.role||n(e.content).trim())return!1;let t=e.parts;return!!Array.isArray(t)&&0!==t.length&&t.every(e=>"compaction"===(e?.type||"").toLowerCase())}(A))continue;let N=o(A),O=l(A)??N;null!=N&&(!S.startedAt||N<S.startedAt)&&(S.startedAt=N),null!=O&&(!S.endedAt||O>S.endedAt)&&(S.endedAt=O);let R=A.usage;if(R&&(S.stats.inputTokens+=R.input||0,S.stats.outputTokens+=R.output||0,S.stats.cacheReadTokens+=R.cache?.read||0,S.stats.cacheWriteTokens+=R.cache?.write||0,S.stats.reasoningTokens+=R.reasoning||0,S.stats.totalTokens+=R.total||0),"compaction"===(h=A).mode&&!0===h.summary){let e={interactionIndex:t,summaryText:u(A.parts,"text"),reasoningText:u(A.parts,"reasoning")||void 0,modelID:A.modelID,providerID:A.providerID,startedAt:N,completedAt:O,usage:A.usage};S.compactions||(S.compactions=[]),S.compactions.push(e);continue}for(let e of(S.interactionIndices.push(t),S.stats.interactions++,"Agent"===S.agentName&&y&&(S.agentName=y),function(e,t){let r=[],a=o(e),i=l(e),c=n(e.content),d=function(e){let t=[],n=new Map;for(let r of e){let e=function(e){let t=e.id;if("string"==typeof t&&t.trim())return`id:${t.trim()}`;let n=e.function?.name||e.name||"unknown",r=e.function?.arguments??e.arguments??"";return`sig:${n}:${function(e){if(null==e)return"";if("string"==typeof e)return e;try{return JSON.stringify(e)}catch{return String(e)}}(r)}`}(r),a=n.get(e);null==a?(n.set(e,t.length),t.push(r)):t[a]=function(e,t){let n={...e,...t};return void 0!==e.output&&void 0===t.output&&(n.output=e.output),void 0!==e.result&&void 0===t.result&&(n.result=e.result),e.timing&&!t.timing&&(n.timing=e.timing),n}(t[a],r)}return t}(e.tool_calls||[]);"user"===e.role&&c.trim()&&r.push({kind:"user",interaction:e,interactionIndex:t,startedAt:a,completedAt:i,summary:c});let p="assistant"===e.role||"subagent"===e.role||"opencode"===e.role,f=c.trim()?c:u(e.parts,"reasoning");if(0===d.length)return p&&f.trim()&&r.push({kind:"llm",interaction:e,interactionIndex:t,startedAt:a,completedAt:i,summary:f,usage:e.usage}),r;for(let n of(p&&r.push({kind:"llm",interaction:e,interactionIndex:t,startedAt:a,completedAt:i,summary:f,usage:e.usage}),d)){let i,o=n.function?.name||n.name||"unknown",l=n.function?.arguments??n.arguments;if("string"==typeof l)try{i=JSON.parse(l)}catch{i=l}else i=l;let u=o.toLowerCase(),c={kind:"task"===u?"task":"skill"===u||"load_skill"===u||"skill_view"===u||"skill_tool"===u?"skill":"tool",name:o,args:i,output:n.output??n.result,toolCallId:n.id,toolStatus:n.state,interaction:e,interactionIndex:t,startedAt:s(n.timing?.started_at)??a,completedAt:s(n.timing?.completed_at),summary:function(e,t){if(!t||"object"!=typeof t)return e;if("task"===e){let e=t.description||t.subagent_type||"",n=t.subagent_type?`[${t.subagent_type}]`:"";return`task ${n} ${e}`.trim()}return"skill"===e?`skill: ${t.name||""}`:"bash"===e?`bash: ${(t.command||"").slice(0,80)}`:"read"===e?`read: ${t.path||t.file_path||""}`:"write"===e?`write: ${t.path||t.file_path||""}`:"glob"===e?`glob: ${t.pattern||""}`:e}(o,i)};c._toolCallId=n.id,c.splitParallelTask=!!n.trace_split_parallel_task,r.push(c)}return r}(A,t)))if(S.events.push(e),"llm"===e.kind)S.stats.llmCalls++;else if("skill"===e.kind)S.stats.skillCalls++;else if("task"===e.kind){S.stats.taskCalls++;let n=e.args?.subagent_type||e.args?.subagentType;n&&(m=S,E=t,p.push({parentNode:m,subagentType:n,expectedSessionId:a((b=e).args)??a(b.output),startedAt:e.startedAt,spawnEvents:[e],parallelCount:1,parentInteractionIndex:E}))}else"tool"===e.kind&&S.stats.toolCalls++}return function e(t){if(Number.isFinite(t.startedAt)&&Number.isFinite(t.endedAt)){let e=t.endedAt-t.startedAt;t.stats.durationMs=e>=0?e:void 0}for(let n of t.children)e(n)}(d),d}function a(e,t=0){if(null!=e&&!(t>3)){if("string"==typeof e){let n=e.trim();if(!n)return;if(n.startsWith("{")||n.startsWith("["))try{let e=JSON.parse(n),r=a(e,t+1);if(r)return r}catch{}let r=n.match(/\b(?:session_id|sessionId|subagent_session_id|subagentSessionId)\s*[:=]\s*([A-Za-z0-9_.:-]+)/);return r?.[1]}if(Array.isArray(e)){for(let n of e){let e=a(n,t+1);if(e)return e}return}if("object"==typeof e){let n=e.session_id??e.sessionId??e.subagent_session_id??e.subagentSessionId;if("string"==typeof n&&n.trim())return n.trim();for(let n of Object.values(e)){let e=a(n,t+1);if(e)return e}}}}function i(e){return{...e,events:[],children:[],startedAt:void 0,endedAt:void 0,stats:{interactions:0,llmCalls:0,toolCalls:0,skillCalls:0,taskCalls:0,inputTokens:0,outputTokens:0,cacheReadTokens:0,cacheWriteTokens:0,reasoningTokens:0,totalTokens:0,durationMs:void 0},interactionIndices:[]}}function s(e){if(null!=e){if("number"==typeof e&&Number.isFinite(e))return e>0&&e<1e10?1e3*e:e;if("string"==typeof e){let t=e.trim();if(!t)return;if(/^\d+(\.\d+)?$/.test(t)){let e=Number(t);if(!Number.isFinite(e))return;return e>0&&e<1e10?1e3*e:e}let n=Date.parse(t);return Number.isFinite(n)?n:void 0}}}function o(e){return s(e.timeInfo?.created)??s(e.timestamp)}function l(e){return s(e.timeInfo?.completed)}function u(e,t){if(!Array.isArray(e)||0===e.length)return"";let n=[];for(let r of e){if((r?.type||"").toLowerCase()!==t)continue;let e="string"==typeof r?.text?r.text:"";e&&n.push(e)}return n.join("")}function c(e){if(null==e||!Number.isFinite(e)||e<0)return"-";if(e<1e3)return`${Math.round(e)}ms`;let t=Math.floor(e/1e3);if(t<60)return`${(e/1e3).toFixed(+(e<1e4))}s`;let n=Math.floor(t/3600),r=Math.floor(t%3600/60),a=t%60,i=[];return n>0&&i.push(`${n}h`),(r>0||n>0)&&i.push(`${r}m`),(a>0||0===i.length)&&i.push(`${a}s`),i.join(" ")}function d(e){return e?e<1e3?e.toString():e<1e6?`${(e/1e3).toFixed(+(e<1e4))}k`:`${(e/1e6).toFixed(1)}M`:"0"}e.s(["MessageSquare",()=>t],468590),e.s(["buildAgentCallTree",()=>r,"findNode",()=>function e(t,n){if(t.id===n)return t;for(let r of t.children){let t=e(r,n);if(t)return t}return null},"formatDuration",()=>c,"formatTokens",()=>d,"walkTree",()=>function e(t,n){for(let r of(n(t),t.children))e(r,n)}],434567)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,628867,e=>{"use strict";var t=e.i(843476),o=e.i(540568),l=e.i(271645),a=e.i(77071),i=e.i(566595),r=e.i(456420);let s=(0,r.default)("server",[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]]);var n=e.i(61876),d=e.i(515281),c=e.i(573474),p=e.i(689664),g=e.i(810818),u=e.i(285595);let h=(0,r.default)("badge-check",[["path",{d:"M3.85 8.62a4 4 0 0 1 4.78-4.77 4 4 0 0 1 6.74 0 4 4 0 0 1 4.78 4.78 4 4 0 0 1 0 6.74 4 4 0 0 1-4.77 4.78 4 4 0 0 1-6.75 0 4 4 0 0 1-4.78-4.77 4 4 0 0 1 0-6.76Z",key:"3c2336"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]),m=(0,r.default)("star",[["path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z",key:"r04s7s"}]]),f=(0,r.default)("heart-pulse",[["path",{d:"M2 9.5a5.5 5.5 0 0 1 9.591-3.676.56.56 0 0 0 .818 0A5.49 5.49 0 0 1 22 9.5c0 2.29-1.5 4-3 5.5l-5.492 5.313a2 2 0 0 1-3 .019L5 15c-1.5-1.5-3-3.2-3-5.5",key:"mvr1a0"}],["path",{d:"M3.22 13H9.5l.5-1 2 4.5 2-7 1.5 3.5h5.27",key:"auskq0"}]]);var y=e.i(856423),b=e.i(482022),x=e.i(741120),v=e.i(632781),k=e.i(583967),j=e.i(183752),S=e.i(927643),w=e.i(726526),z=e.i(347101);let C=[{id:"openai",label:"OpenAI",category:"frontier",baseUrl:"https://api.openai.com/v1",defaultModel:"gpt-4o-mini",suggestedModels:["gpt-5","gpt-5-mini","gpt-4o","gpt-4o-mini","gpt-4.1","o3","o3-mini","o4-mini"],docsUrl:"https://platform.openai.com/docs/models",oaiCompat:!0,initials:"OA",logoSlug:"openai"},{id:"anthropic",label:"Anthropic",category:"frontier",baseUrl:"https://api.anthropic.com/v1",defaultModel:"claude-sonnet-4-6",suggestedModels:["claude-opus-4-7","claude-sonnet-4-6","claude-haiku-4-5","claude-3-5-sonnet-latest"],docsUrl:"https://docs.anthropic.com/en/docs/models-overview",oaiCompat:!0,initials:"AN",logoSlug:"anthropic",note:"使用 Anthropic OpenAI 兼容端点(/v1/messages 自动转换)。"},{id:"gemini",label:"Google Gemini",category:"frontier",baseUrl:"https://generativelanguage.googleapis.com/v1beta/openai/",defaultModel:"gemini-2.5-flash",suggestedModels:["gemini-2.5-pro","gemini-2.5-flash","gemini-2.0-flash","gemini-1.5-pro"],docsUrl:"https://ai.google.dev/gemini-api/docs/openai",oaiCompat:!0,initials:"GM",logoSlug:"gemini",note:"走 Gemini OpenAI 兼容层(generativelanguage.googleapis.com)。"},{id:"azure-openai",label:"Azure OpenAI",category:"frontier",baseUrl:"https://YOUR-RESOURCE.openai.azure.com/openai",defaultModel:"gpt-4o",suggestedModels:["gpt-4o","gpt-4o-mini","gpt-4-turbo","o1-mini"],docsUrl:"https://learn.microsoft.com/azure/ai-services/openai/reference",oaiCompat:!0,initials:"AZ",logoSlug:"azure",note:"Base URL 形如 https://<resource>.openai.azure.com/openai/deployments/<deployment>"},{id:"xai",label:"xAI Grok",category:"frontier",baseUrl:"https://api.x.ai/v1",defaultModel:"grok-3",suggestedModels:["grok-4","grok-3","grok-3-mini","grok-2-1212","grok-2-vision-1212"],docsUrl:"https://docs.x.ai/api",oaiCompat:!0,initials:"GR",logoSlug:"grok"},{id:"mistral",label:"Mistral AI",category:"frontier",baseUrl:"https://api.mistral.ai/v1",defaultModel:"mistral-large-latest",suggestedModels:["mistral-large-latest","mistral-large-2411","mistral-small-latest","codestral-2501","open-mistral-nemo"],docsUrl:"https://docs.mistral.ai/getting-started/models/models_overview/",oaiCompat:!0,initials:"MI",logoSlug:"mistral"},{id:"cohere",label:"Cohere",category:"frontier",baseUrl:"https://api.cohere.ai/compatibility/v1",defaultModel:"command-r-plus",suggestedModels:["command-r-plus","command-r","command-r7b"],docsUrl:"https://docs.cohere.com/docs/compatibility-api",oaiCompat:!0,initials:"CO",logoSlug:"cohere"},{id:"openrouter",label:"OpenRouter",category:"aggregator",baseUrl:"https://openrouter.ai/api/v1",defaultModel:"openai/gpt-4o-mini",suggestedModels:["anthropic/claude-3.5-sonnet","openai/gpt-4o","meta-llama/llama-3.3-70b-instruct","google/gemini-2.0-flash-exp:free"],docsUrl:"https://openrouter.ai/docs",oaiCompat:!0,initials:"OR",logoSlug:"openrouter"},{id:"together",label:"Together AI",category:"aggregator",baseUrl:"https://api.together.xyz/v1",defaultModel:"meta-llama/Llama-3.3-70B-Instruct-Turbo",suggestedModels:["meta-llama/Llama-3.3-70B-Instruct-Turbo","deepseek-ai/DeepSeek-V3","Qwen/Qwen2.5-72B-Instruct-Turbo"],docsUrl:"https://docs.together.ai/docs/quickstart",oaiCompat:!0,initials:"TG",logoSlug:"together"},{id:"fireworks",label:"Fireworks AI",category:"aggregator",baseUrl:"https://api.fireworks.ai/inference/v1",defaultModel:"accounts/fireworks/models/llama-v3p3-70b-instruct",suggestedModels:["accounts/fireworks/models/llama-v3p3-70b-instruct","accounts/fireworks/models/deepseek-v3","accounts/fireworks/models/qwen2p5-72b-instruct"],docsUrl:"https://docs.fireworks.ai",oaiCompat:!0,initials:"FW",logoSlug:"fireworks"},{id:"groq",label:"Groq",category:"aggregator",baseUrl:"https://api.groq.com/openai/v1",defaultModel:"llama-3.3-70b-versatile",suggestedModels:["llama-3.3-70b-versatile","llama-3.1-8b-instant","mixtral-8x7b-32768"],docsUrl:"https://console.groq.com/docs/models",oaiCompat:!0,initials:"GQ",logoSlug:"groq"},{id:"deepinfra",label:"DeepInfra",category:"aggregator",baseUrl:"https://api.deepinfra.com/v1/openai",defaultModel:"meta-llama/Meta-Llama-3.1-70B-Instruct",suggestedModels:["meta-llama/Meta-Llama-3.1-70B-Instruct","deepseek-ai/DeepSeek-V3","Qwen/Qwen2.5-72B-Instruct"],docsUrl:"https://deepinfra.com/docs",oaiCompat:!0,initials:"DI",logoSlug:"deepinfra"},{id:"perplexity",label:"Perplexity",category:"aggregator",baseUrl:"https://api.perplexity.ai",defaultModel:"sonar",suggestedModels:["sonar","sonar-pro","sonar-reasoning","sonar-reasoning-pro"],docsUrl:"https://docs.perplexity.ai",oaiCompat:!0,initials:"PX",logoSlug:"perplexity"},{id:"nvidia",label:"NVIDIA NIM",category:"aggregator",baseUrl:"https://integrate.api.nvidia.com/v1",defaultModel:"meta/llama-3.3-70b-instruct",suggestedModels:["meta/llama-3.3-70b-instruct","deepseek-ai/deepseek-r1","nvidia/llama-3.1-nemotron-70b-instruct"],docsUrl:"https://docs.api.nvidia.com",oaiCompat:!0,initials:"NV",logoSlug:"nvidia"},{id:"databricks",label:"Databricks",category:"aggregator",baseUrl:"https://YOUR-WORKSPACE.cloud.databricks.com/serving-endpoints",defaultModel:"databricks-meta-llama-3-3-70b-instruct",suggestedModels:["databricks-meta-llama-3-3-70b-instruct","databricks-dbrx-instruct"],docsUrl:"https://docs.databricks.com/aws/en/machine-learning/foundation-models/api-reference",oaiCompat:!0,initials:"DB",logoSlug:"databricks",note:"Base URL 形如 https://<workspace>.cloud.databricks.com/serving-endpoints"},{id:"novita",label:"Novita AI",category:"aggregator",baseUrl:"https://api.novita.ai/v3/openai",defaultModel:"meta-llama/llama-3.3-70b-instruct",suggestedModels:["meta-llama/llama-3.3-70b-instruct","qwen/qwen-2.5-72b-instruct"],docsUrl:"https://novita.ai/docs/api-reference",oaiCompat:!0,initials:"NV",logoSlug:"novita"},{id:"hyperbolic",label:"Hyperbolic",category:"aggregator",baseUrl:"https://api.hyperbolic.xyz/v1",defaultModel:"meta-llama/Meta-Llama-3.1-70B-Instruct",suggestedModels:["meta-llama/Meta-Llama-3.1-70B-Instruct","Qwen/Qwen2.5-Coder-32B-Instruct"],docsUrl:"https://docs.hyperbolic.xyz",oaiCompat:!0,initials:"HY",logoSlug:"hyperbolic"},{id:"deepseek-official",label:"DeepSeek (Official)",category:"china",baseUrl:"https://api.deepseek.com",defaultModel:"deepseek-chat",suggestedModels:["deepseek-chat","deepseek-reasoner","deepseek-v3.1"],docsUrl:"https://api-docs.deepseek.com",oaiCompat:!0,initials:"DS",logoSlug:"deepseek"},{id:"siliconflow",label:"SiliconFlow / 硅基流动",category:"china",baseUrl:"https://api.siliconflow.cn/v1",defaultModel:"deepseek-ai/DeepSeek-V3",suggestedModels:["deepseek-ai/DeepSeek-V3","deepseek-ai/DeepSeek-R1","Qwen/Qwen2.5-72B-Instruct","meta-llama/Meta-Llama-3.1-70B-Instruct"],docsUrl:"https://docs.siliconflow.cn",oaiCompat:!0,initials:"SF",logoSlug:"siliconcloud"},{id:"moonshot",label:"Moonshot / Kimi",category:"china",baseUrl:"https://api.moonshot.cn/v1",defaultModel:"kimi-latest",suggestedModels:["kimi-k2","kimi-latest","moonshot-v1-128k","moonshot-v1-32k","moonshot-v1-8k"],docsUrl:"https://platform.moonshot.cn/docs",oaiCompat:!0,initials:"MK",logoSlug:"moonshot"},{id:"zhipu",label:"Zhipu GLM / 智谱",category:"china",baseUrl:"https://open.bigmodel.cn/api/paas/v4",defaultModel:"glm-4.5",suggestedModels:["glm-4.5","glm-4-plus","glm-4-air","glm-4-long","glm-4-flash"],docsUrl:"https://bigmodel.cn/dev/api",oaiCompat:!0,initials:"ZP",logoSlug:"zhipu"},{id:"doubao",label:"Doubao / 火山方舟",category:"china",baseUrl:"https://ark.cn-beijing.volces.com/api/v3",defaultModel:"doubao-1.5-pro-32k",suggestedModels:["doubao-1.5-pro-32k","doubao-1.5-pro-256k","doubao-pro-32k","doubao-lite-32k"],docsUrl:"https://www.volcengine.com/docs/82379",oaiCompat:!0,initials:"DB",logoSlug:"doubao",note:'模型名通常是火山方舟"接入点 ID",不是发布的模型名。'},{id:"qwen",label:"Tongyi Qwen / 通义千问",category:"china",baseUrl:"https://dashscope.aliyuncs.com/compatible-mode/v1",defaultModel:"qwen-plus",suggestedModels:["qwen3-max","qwen3-plus","qwen-max","qwen-plus","qwen-turbo","qwen2.5-72b-instruct"],docsUrl:"https://help.aliyun.com/zh/model-studio/developer-reference/use-qwen-by-calling-api",oaiCompat:!0,initials:"QW",logoSlug:"qwen"},{id:"hunyuan",label:"Tencent Hunyuan / 腾讯混元",category:"china",baseUrl:"https://api.hunyuan.cloud.tencent.com/v1",defaultModel:"hunyuan-pro",suggestedModels:["hunyuan-turbo","hunyuan-pro","hunyuan-standard","hunyuan-lite"],docsUrl:"https://cloud.tencent.com/document/product/1729/97732",oaiCompat:!0,initials:"HY",logoSlug:"hunyuan"},{id:"yi",label:"01.AI Yi / 零一万物",category:"china",baseUrl:"https://api.lingyiwanwu.com/v1",defaultModel:"yi-large",suggestedModels:["yi-large","yi-large-turbo","yi-medium","yi-vision"],docsUrl:"https://platform.lingyiwanwu.com/docs",oaiCompat:!0,initials:"YI",logoSlug:"yi"},{id:"modelscope",label:"ModelScope / 魔搭",category:"china",baseUrl:"https://api-inference.modelscope.cn/v1",defaultModel:"Qwen/Qwen2.5-72B-Instruct",suggestedModels:["Qwen/Qwen2.5-72B-Instruct","deepseek-ai/DeepSeek-V3","meta-llama/Llama-3.3-70B-Instruct"],docsUrl:"https://modelscope.cn/docs/model-service/API-Inference",oaiCompat:!0,initials:"MS",logoSlug:"modelscope"},{id:"ppio",label:"PPIO / 派欧云",category:"china",baseUrl:"https://api.ppinfra.com/v3/openai",defaultModel:"deepseek/deepseek-v3",suggestedModels:["deepseek/deepseek-v3","deepseek/deepseek-r1","qwen/qwen2.5-72b-instruct","meta-llama/llama-3.3-70b-instruct"],docsUrl:"https://ppinfra.com/docs",oaiCompat:!0,initials:"PP",logoSlug:"ppio"},{id:"baidu",label:"Baidu Qianfan / 文心一言",category:"china",baseUrl:"https://qianfan.baidubce.com/v2",defaultModel:"ernie-4.0-8k",suggestedModels:["ernie-4.0-8k","ernie-4.0-turbo-8k","ernie-3.5-8k"],docsUrl:"https://cloud.baidu.com/doc/qianfan-api/index.html",oaiCompat:!0,initials:"BD",logoSlug:"wenxin"},{id:"minimax",label:"MiniMax",category:"china",baseUrl:"https://api.minimax.chat/v1",defaultModel:"abab6.5s-chat",suggestedModels:["abab6.5s-chat","abab6.5-chat","minimax-text-01"],docsUrl:"https://platform.minimaxi.com/document/algorithm-concept",oaiCompat:!0,initials:"MM",logoSlug:"minimax"},{id:"stepfun",label:"Stepfun / 阶跃星辰",category:"china",baseUrl:"https://api.stepfun.com/v1",defaultModel:"step-1-8k",suggestedModels:["step-1-8k","step-1-32k","step-2-16k"],docsUrl:"https://platform.stepfun.com/docs",oaiCompat:!0,initials:"ST",logoSlug:"stepfun"},{id:"ollama",label:"Ollama",category:"selfhost",baseUrl:"http://localhost:11434/v1",defaultModel:"llama3.3",suggestedModels:["llama3.3","qwen2.5","deepseek-r1","mistral"],docsUrl:"https://ollama.com/library",oaiCompat:!0,initials:"OL",logoSlug:"ollama",note:"本地 Ollama 通常无需 API Key,留空即可。"},{id:"vllm",label:"vLLM",category:"selfhost",baseUrl:"http://localhost:8000/v1",defaultModel:"meta-llama/Meta-Llama-3-8B-Instruct",suggestedModels:["meta-llama/Meta-Llama-3-8B-Instruct","Qwen/Qwen2.5-7B-Instruct"],docsUrl:"https://docs.vllm.ai/en/stable/serving/openai_compatible_server.html",oaiCompat:!0,initials:"VL",logoSlug:"vllm",note:"vLLM 默认以 OpenAI 兼容模式启动,API Key 任意字符串即可。"},{id:"lmstudio",label:"LM Studio",category:"selfhost",baseUrl:"http://localhost:1234/v1",defaultModel:"local-model",suggestedModels:["local-model"],docsUrl:"https://lmstudio.ai/docs/local-server",oaiCompat:!0,initials:"LM",logoSlug:"lmstudio",note:'在 LM Studio 中开启 "Local Inference Server",端口默认 1234。'},{id:"tgi",label:"Text Generation Inference (TGI)",category:"selfhost",baseUrl:"http://localhost:8080/v1",defaultModel:"tgi",suggestedModels:["tgi"],docsUrl:"https://huggingface.co/docs/text-generation-inference/messages_api",oaiCompat:!0,initials:"TG",logoSlug:"huggingface"},{id:"xinference",label:"Xinference",category:"selfhost",baseUrl:"http://localhost:9997/v1",defaultModel:"qwen2.5-instruct",suggestedModels:["qwen2.5-instruct","llama-3.3-instruct","deepseek-r1-distill-qwen"],docsUrl:"https://inference.readthedocs.io/en/latest/models/builtin/llm.html",oaiCompat:!0,initials:"XI",logoSlug:"xinference",note:"通过模型 UID 接入 Xinference 本地实例。"},{id:"localai",label:"LocalAI",category:"selfhost",baseUrl:"http://localhost:8080/v1",defaultModel:"gpt-3.5-turbo",suggestedModels:["gpt-3.5-turbo"],docsUrl:"https://localai.io",oaiCompat:!0,initials:"LA",logoSlug:"localai",note:"OpenAI 兼容的本地推理网关,模型名按本地配置填写。"},{id:"custom",label:"Custom (OpenAI Compatible)",category:"selfhost",baseUrl:"",defaultModel:"",suggestedModels:[],oaiCompat:!0,initials:"CU",note:"任何兼容 OpenAI /v1/chat/completions 协议的端点。"}],M=C.reduce((e,t)=>(e[t.id]=t,e),{}),U=[{id:"frontier",labelZh:"主流闭源 SaaS",labelEn:"Frontier SaaS"},{id:"aggregator",labelZh:"推理聚合 / 路由",labelEn:"Inference Aggregators"},{id:"china",labelZh:"国内厂商",labelEn:"China Providers"},{id:"selfhost",labelZh:"本地 / 自部署",labelEn:"Self-hosted"}],I={"deepseek-official":{baseUrl:"https://api.deepseek.com",model:"deepseek-chat"},siliconflow:{baseUrl:"https://api.siliconflow.cn/v1",model:"deepseek-ai/DeepSeek-V3"},openai:{baseUrl:"https://api.openai.com/v1",model:"gpt-4o"},anthropic:{baseUrl:"https://api.anthropic.com/v1",model:"claude-3-5-sonnet-20240620"},custom:{baseUrl:"",model:""}},W={"deepseek-official":{label:"DeepSeek (Official)",monogram:"DS",category:"cn"},siliconflow:{label:"SiliconFlow",monogram:"SF",category:"cn"},openai:{label:"OpenAI",monogram:"OA",category:"saas"},anthropic:{label:"Anthropic",monogram:"AN",category:"saas"},custom:{label:"Custom (OpenAI Compatible)",monogram:"CX",category:"other"}},A=e=>!!e&&e.startsWith("default_"),L=e=>e.apiKey?"ok":"unconfigured";function R({}={}){let{user:e}=(0,S.useAuth)(),{t:o,locale:r}=(0,w.useLocale)(),[s,n]=(0,l.useState)([]),[d,c]=(0,l.useState)("default"),[p,u]=(0,l.useState)(null),[h,m]=(0,l.useState)({id:"new",name:"zh"===r?"新配置":"New Config",provider:"deepseek-official",model:"deepseek-chat"}),[f,y]=(0,l.useState)(!1),[b,x]=(0,l.useState)(null),[v,k]=(0,l.useState)(!1),[C,M]=(0,l.useState)(""),[U,I]=(0,l.useState)("all"),[F,q]=(0,l.useState)(null),[N,$]=(0,l.useState)({}),[el,ea]=(0,l.useState)(!1),[ei,er]=(0,l.useState)(!1),[es,en]=(0,l.useState)(null),ed=(0,l.useCallback)(async()=>{if(!e)return void k(!0);try{let t=await (0,j.apiFetch)(`/api/eval/settings?user=${encodeURIComponent(e)}`);if(t.ok){let e=await t.json();e.configs&&(n(e.configs),c(e.activeConfigId||e.configs[0]?.id||"default"))}}catch(e){console.error("Failed to fetch settings",e)}finally{k(!0)}},[e]);(0,l.useEffect)(()=>{ed()},[ed]),(0,l.useEffect)(()=>{$(e=>{let t={...e};for(let e of s)e.id in t||(t[e.id]=L(e));for(let e of Object.keys(t))s.find(t=>t.id===e)||delete t[e];return t})},[s]);let ec=(0,l.useCallback)(async()=>{if(el||0===s.length)return;ea(!0),$(e=>{let t={...e};for(let e of s)t[e.id]=e.apiKey?"checking":"unconfigured";return t});let t=await Promise.all(s.map(async t=>{if(!t.apiKey)return[t.id,"unconfigured"];try{let o=await (0,j.apiFetch)("/api/eval/settings/test",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({provider:t.provider,apiKey:t.apiKey,baseUrl:t.baseUrl,model:t.model,user:e,configId:t.id})}),l=await o.json().catch(()=>({success:!1}));return[t.id,l.success?"ok":"failed"]}catch{return[t.id,"failed"]}}));$(e=>{let o={...e};for(let[e,l]of t)o[e]=l;return o}),ea(!1)},[s,el]),ep=(0,l.useCallback)(async(t,o)=>(0,j.apiFetch)("/api/eval/settings",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({settings:{activeConfigId:o,configs:t},user:e})}),[e]),eg=async()=>{y(!0),x({type:"info",msg:"zh"===r?"正在测试连接…":"Testing connection…"});try{let t=[...s],o={...h};"new"===o.id?(o.id=`config_${Date.now()}`,t.push(o)):t=t.map(e=>e.id===o.id?o:e);let l=await (0,j.apiFetch)("/api/eval/settings/test",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({provider:o.provider,apiKey:o.apiKey,baseUrl:o.baseUrl,model:o.model,user:e,configId:o.id})}),a=await l.json();if(!a.success){x({type:"error",msg:("zh"===r?"连接测试失败:":"Connection test failed: ")+a.error}),y(!1);return}let i=d;(1===t.length||"default"===d)&&(i=o.id);let n=await ep(t,i);if(n.ok)await ed(),u(null),en(null),x({type:"success",msg:"zh"===r?"已保存":"Saved"}),setTimeout(()=>x(null),1500);else{let e=await n.json().catch(()=>({}));x({type:"error",msg:("zh"===r?"保存失败:":"Save failed: ")+(e.error||n.statusText)})}}catch(e){x({type:"error",msg:`Error: ${e.message}`})}finally{y(!1)}},ey=async e=>{(await ep(s,e)).ok&&(c(e),x({type:"success",msg:"zh"===r?"默认模型已切换":"Active model updated"}),setTimeout(()=>x(null),1500))},eb=async e=>{let t=s.filter(t=>t.id!==e),o=d;e===d&&(o=t[0]?.id||"default"),(await ep(t,o)).ok&&(n(t),c(o),x({type:"success",msg:"zh"===r?"已删除":"Deleted"}),setTimeout(()=>x(null),1500))},ex=()=>{er(!0),en(null),u(null),x(null)},ev=(0,l.useMemo)(()=>{let e=C.trim().toLowerCase();return s.filter(t=>("all"===U||W[t.provider]?.category===U)&&(!e||t.name.toLowerCase().includes(e)||(t.model||"").toLowerCase().includes(e)||(t.baseUrl||"").toLowerCase().includes(e)||(W[t.provider]?.label||t.provider||"").toLowerCase().includes(e)))},[s,C,U]),ek=(0,l.useMemo)(()=>{let e={saas:0,cn:0,local:0,other:0};for(let t of s){let o=W[t.provider]?.category;o&&(e[o]+=1)}return e},[s]),ej=s.find(e=>e.id===d),eS=new Set(s.map(e=>e.provider)).size;return v?(0,t.jsxs)("div",{style:G,children:[(0,t.jsxs)("div",{style:V,children:[b&&(0,t.jsx)(B,{status:b}),ei?(0,t.jsx)(H,{onPick:e=>{var t;m({id:"new",name:e.label,provider:"openai"===(t=e.id)?"openai":"anthropic"===t?"anthropic":"deepseek-official"===t?"deepseek-official":"siliconflow"===t?"siliconflow":"custom",baseUrl:e.baseUrl,model:e.defaultModel,apiKey:""}),en(e),er(!1),u("new"),x(null)},onCancel:()=>er(!1),locale:r}):p?(0,t.jsx)(Q,{config:h,setConfig:m,onCancel:()=>{u(null),en(null)},onReselect:"new"===p?()=>{u(null),er(!0)}:void 0,onSave:eg,isSaving:f,isDefault:A(p),pickedProvider:es,locale:r}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{style:Y,children:[(0,t.jsx)("p",{style:Z,children:"zh"===r?(0,t.jsxs)(t.Fragment,{children:["注册并管理评测 / 优化使用的 ",(0,t.jsx)("b",{style:_,children:"LLM"}),",可切换默认、编辑参数、管理 API Key。兼容 ",(0,t.jsx)("b",{style:_,children:"OpenAI / Anthropic / DeepSeek"})," 等主流厂商,亦支持",(0,t.jsx)("b",{style:_,children:"国内厂商"}),"与",(0,t.jsx)("b",{style:_,children:"本地推理"}),"部署。"]}):(0,t.jsxs)(t.Fragment,{children:["Register and manage LLMs used for evaluation/optimization. Set the default, edit parameters, and manage API keys. Compatible with ",(0,t.jsx)("b",{style:_,children:"OpenAI / Anthropic / DeepSeek"})," as well as ",(0,t.jsx)("b",{style:_,children:"regional providers"})," and ",(0,t.jsx)("b",{style:_,children:"self-hosted"})," inference."]})}),(0,t.jsxs)("button",{style:eO,onClick:ex,children:[(0,t.jsx)(a.Plus,{size:14,strokeWidth:2.4}),"zh"===r?"新增模型":"New Model"]})]}),(0,t.jsxs)("div",{style:X,children:[(0,t.jsxs)("div",{style:J,children:[(0,t.jsxs)("div",{style:eu,children:[(0,t.jsxs)("div",{style:eh,children:[(0,t.jsx)(i.Search,{size:14,strokeWidth:2,style:{position:"absolute",left:11,top:"50%",transform:"translateY(-50%)",color:"var(--foreground-muted)"}}),(0,t.jsx)("input",{type:"text",placeholder:"zh"===r?"搜索名称 / 模型 / Base URL":"Search name / model / Base URL",value:C,onChange:e=>M(e.target.value),style:em})]}),(0,t.jsxs)("div",{style:ef,children:[(0,t.jsx)(T,{active:"all"===U,onClick:()=>I("all"),count:s.length,children:"zh"===r?"全部":"All"}),(0,t.jsx)(T,{active:"saas"===U,onClick:()=>I("saas"),count:ek.saas,children:"zh"===r?"主流闭源":"SaaS"}),(0,t.jsx)(T,{active:"cn"===U,onClick:()=>I("cn"),count:ek.cn,children:"zh"===r?"国内厂商":"Regional"}),(0,t.jsx)(T,{active:"other"===U,onClick:()=>I("other"),count:ek.other,children:"zh"===r?"自定义":"Custom"})]})]}),(0,t.jsxs)("div",{style:et,children:[(0,t.jsx)("span",{style:{fontSize:13.5,fontWeight:600,color:"var(--foreground)"},children:"zh"===r?"已注册模型":"Registered Models"}),(0,t.jsx)("span",{style:eo,children:ev.length}),(0,t.jsx)("span",{style:{flex:1}}),(0,t.jsx)("span",{style:{fontSize:11.5,color:"var(--foreground-muted)"},children:"zh"===r?`容量 ${s.length} / 32`:`Capacity ${s.length} / 32`})]}),0===ev.length?(0,t.jsx)(E,{locale:r,hasConfigs:s.length>0,onAdd:ex,onReset:()=>{M(""),I("all")}}):(0,t.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:10},children:ev.map(e=>(0,t.jsx)(D,{config:e,isActive:e.id===d,isDefault:A(e.id),health:N[e.id],onActivate:()=>ey(e.id),onEdit:()=>{m({...e}),en(null),u(e.id),er(!1),x(null)},onDelete:()=>q(e),locale:r},e.id))}),(0,t.jsxs)("div",{style:eH,children:[(0,t.jsx)("div",{style:eQ,children:(0,t.jsx)(g.Info,{size:16})}),(0,t.jsxs)("div",{style:{flex:1,fontSize:12.5,color:"var(--foreground-secondary)",lineHeight:1.6},children:[(0,t.jsx)("b",{style:{color:"var(--foreground)",fontWeight:600},children:"zh"===r?"提示":"Tip"})," · ","zh"===r?"至少保留一个默认模型,用于评测与优化任务的兜底调用。删除默认模型前,请先指定其它模型为默认。":"Keep at least one default model for evaluation/optimization fallback. Switch the default before deleting it."]})]})]}),(0,t.jsxs)("aside",{style:ee,children:[(0,t.jsx)(O,{active:ej,providerKinds:eS,registeredCount:s.length,locale:r}),(0,t.jsx)(P,{configs:s,healthMap:N,isRechecking:el,onRecheck:ec,locale:r}),(0,t.jsx)(K,{locale:r})]})]})]})]}),(0,t.jsx)(z.ConfirmDialog,{open:!!F,onOpenChange:e=>!e&&q(null),tone:"danger",title:"zh"===r?"删除该模型?":"Delete this model?",description:F?"zh"===r?`将永久删除「${F.name}」配置,无法恢复。`:`"${F.name}" will be permanently removed.`:"",confirmText:"zh"===r?"删除":"Delete",cancelText:"zh"===r?"取消":"Cancel",onConfirm:async()=>{F&&await eb(F.id)}})]}):(0,t.jsx)("div",{style:{padding:32,color:"var(--foreground-muted)",fontSize:12},children:o("common.loading")})}function B({status:e}){let o="success"===e.type?{bg:"var(--success-subtle)",fg:"var(--success)",border:"var(--success-subtle-border)"}:"error"===e.type?{bg:"var(--error-subtle)",fg:"var(--error)",border:"var(--error-subtle-border)"}:{bg:"var(--primary-subtle)",fg:"var(--primary)",border:"var(--primary-subtle-border)"};return(0,t.jsxs)("div",{style:{padding:"8px 12px",marginBottom:14,borderRadius:8,background:o.bg,color:o.fg,border:`1px solid ${o.border}`,fontSize:12,fontWeight:500,display:"flex",alignItems:"center",gap:6},children:["success"===e.type&&(0,t.jsx)(p.Check,{size:13,strokeWidth:2.5}),e.msg]})}function T({active:e,onClick:o,count:l,children:a}){return(0,t.jsxs)("button",{type:"button",onClick:o,"aria-pressed":e,className:"ai-filter-chip","data-active":e?"true":"false",style:ey,children:[a,"number"==typeof l&&l>0&&(0,t.jsx)("span",{className:"ai-filter-chip__count",children:l})]})}function D({config:e,isActive:o,isDefault:l,health:a,onActivate:i,onEdit:r,onDelete:s,locale:g}){let m=W[e.provider]??{label:e.provider||"Unknown",monogram:(e.provider?.slice(0,2)||"??").toUpperCase(),category:"other"},f=function(e,t){let o=M[e];if(o)return o;if(!t)return;let l=t.replace(/\/+$/,"").toLowerCase();return C.find(e=>{if(!e.baseUrl)return!1;let t=e.baseUrl.replace(/\/+$/,"").toLowerCase();return l===t||l.startsWith(t)})}(e.provider,e.baseUrl),y=a??L(e);return(0,t.jsxs)("article",{style:{...eb,borderColor:o?"var(--primary-subtle-border)":"var(--card-border)",background:o?"linear-gradient(180deg, var(--primary-subtle) 0%, var(--card-bg) 56px)":"var(--card-bg)"},children:[o&&(0,t.jsx)("span",{style:ex}),(0,t.jsx)(q,{slug:f?.logoSlug,initials:m.monogram,size:48,radius:12}),(0,t.jsxs)("div",{style:{minWidth:0},children:[(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,flexWrap:"wrap",marginBottom:6},children:[(0,t.jsx)("span",{style:ek,children:e.name}),o&&(0,t.jsxs)("span",{style:eS,children:[(0,t.jsx)(h,{size:11,strokeWidth:2.5}),"zh"===g?"当前默认":"Default"]}),"ok"===y&&(0,t.jsxs)("span",{style:ew,children:[(0,t.jsx)("span",{style:eI}),"zh"===g?"正常":"Healthy"]}),"checking"===y&&(0,t.jsxs)("span",{style:eC,children:[(0,t.jsx)(v.Loader2,{size:11,strokeWidth:2.4,style:{animation:"spin 1s linear infinite"}}),"zh"===g?"连接中":"Checking"]}),"failed"===y&&(0,t.jsxs)("span",{style:eM,children:[(0,t.jsx)(k.XCircle,{size:11,strokeWidth:2.4}),"zh"===g?"Key 已失效":"Key invalid"]}),"unconfigured"===y&&(0,t.jsx)("span",{style:ez,children:"zh"===g?"未设置 Key":"No key"}),l&&(0,t.jsx)("span",{style:eU,children:"zh"===g?"系统默认":"System"})]}),(0,t.jsxs)("div",{style:eW,children:[(0,t.jsxs)("span",{style:eA,children:[(0,t.jsx)("span",{style:eL,children:"Provider"}),(0,t.jsx)("span",{style:{...eR,fontFamily:"var(--font-mono)",fontSize:12},children:m.label})]}),(0,t.jsx)("span",{style:eB}),(0,t.jsxs)("span",{style:eA,children:[(0,t.jsx)("span",{style:eL,children:"Model"}),(0,t.jsx)("span",{style:{...eR,fontFamily:"var(--font-mono)",fontSize:12},children:e.model||"—"})]}),e.baseUrl&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{style:eB}),(0,t.jsxs)("span",{style:eA,children:[(0,t.jsx)("span",{style:eL,children:"Base URL"}),(0,t.jsx)("span",{style:{...eR,fontFamily:"var(--font-mono)",fontSize:12},title:e.baseUrl,children:e.baseUrl})]})]})]}),(0,t.jsxs)("div",{style:eT,children:[(0,t.jsx)(n.Key,{size:12,strokeWidth:2.2,style:{color:"var(--primary)"}}),e.apiKey?(0,t.jsx)("span",{style:{fontFamily:"var(--font-mono)",fontSize:12},children:e.apiKey}):(0,t.jsx)("span",{style:{color:"var(--foreground-muted)",fontFamily:"var(--font-mono)",fontSize:12},children:"zh"===g?"(未设置)":"(not set)"})]})]}),(0,t.jsxs)("div",{style:eD,children:[o?(0,t.jsxs)("button",{style:eF,disabled:!0,children:[(0,t.jsx)(u.CircleCheck,{size:13,strokeWidth:2.4}),"zh"===g?"当前使用":"In use"]}):(0,t.jsxs)("button",{style:eK,onClick:i,children:[(0,t.jsx)(p.Check,{size:13,strokeWidth:2.2}),"zh"===g?"设为默认":"Set default"]}),!l&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("button",{style:eK,onClick:r,children:[(0,t.jsx)(d.Pencil,{size:13,strokeWidth:2.2}),"zh"===g?"编辑":"Edit"]}),(0,t.jsxs)("button",{style:eq,onClick:s,children:[(0,t.jsx)(c.Trash2,{size:13,strokeWidth:2.2}),"zh"===g?"删除":"Delete"]})]})]})]})}function O({active:e,providerKinds:o,registeredCount:l,locale:a}){return(0,t.jsxs)("section",{style:el,children:[(0,t.jsxs)("header",{style:ea,children:[(0,t.jsx)(m,{size:13,strokeWidth:2.2,style:{color:"var(--primary)"}}),(0,t.jsx)("span",{children:"zh"===a?"当前默认":"Current Default"})]}),e?(0,t.jsxs)("ul",{style:ei,children:[(0,t.jsx)(F,{label:"zh"===a?"名称":"Name",value:e.name,bold:!0}),(0,t.jsx)(F,{label:"Provider",value:e.provider,mono:!0}),(0,t.jsx)(F,{label:"Model",value:e.model||"—",mono:!0}),e.baseUrl&&(0,t.jsx)(F,{label:"Base URL",value:e.baseUrl,mono:!0,ellipsis:!0}),(0,t.jsx)(F,{label:"zh"===a?"已注册":"Registered",value:`${l} / 32`}),(0,t.jsx)(F,{label:"zh"===a?"供应商种类":"Providers",value:String(o)})]}):(0,t.jsx)("div",{style:{padding:"4px 0",fontSize:12,color:"var(--foreground-muted)"},children:"zh"===a?"尚未选定默认模型。":"No default selected."})]})}function P({configs:e,healthMap:o,isRechecking:l,onRecheck:a,locale:i}){return(0,t.jsxs)("section",{style:el,children:[(0,t.jsxs)("header",{style:ea,children:[(0,t.jsx)(f,{size:13,strokeWidth:2.2,style:{color:"var(--success)"}}),(0,t.jsx)("span",{children:"zh"===i?"健康检查":"Health Check"})]}),0===e.length?(0,t.jsx)("div",{style:{padding:"4px 0",fontSize:12,color:"var(--foreground-muted)"},children:"zh"===i?"暂无模型可检查。":"No models to check."}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("ul",{style:{display:"flex",flexDirection:"column",gap:8,padding:0,margin:0,listStyle:"none"},children:e.map(e=>{let l=o[e.id]??L(e);return(0,t.jsxs)("li",{style:er,children:[(0,t.jsx)("span",{style:{flex:1,minWidth:0,fontSize:12.5,color:"var(--foreground)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:e.model||e.name,children:e.model||e.name}),(0,t.jsx)(N,{state:l,locale:i})]},e.id)})}),(0,t.jsxs)("button",{style:es,onClick:a,disabled:l,children:[(0,t.jsx)(x.RefreshCw,{size:12,strokeWidth:2.2,style:l?{animation:"spin 1s linear infinite"}:void 0}),l?"zh"===i?"检查中…":"Checking…":"zh"===i?"重新检查":"Re-check"]})]})]})}function K({locale:e}){return(0,t.jsxs)("section",{style:el,children:[(0,t.jsxs)("header",{style:ea,children:[(0,t.jsx)(y.BookOpen,{size:13,strokeWidth:2.2,style:{color:"var(--foreground-secondary)"}}),(0,t.jsx)("span",{children:"zh"===e?"相关文档":"Related Docs"})]}),(0,t.jsx)("ul",{style:{display:"flex",flexDirection:"column",gap:2,padding:0,margin:0,listStyle:"none"},children:("zh"===e?[{label:"如何获取 API Key",href:"#"},{label:"密钥加密与轮转策略",href:"#"},{label:"模型注册最佳实践",href:"#"}]:[{label:"How to obtain an API Key",href:"#"},{label:"Key encryption & rotation",href:"#"},{label:"Model registry best practices",href:"#"}]).map(e=>(0,t.jsx)("li",{children:(0,t.jsxs)("a",{href:e.href,style:en,children:[(0,t.jsx)("span",{style:{flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e.label}),(0,t.jsx)(b.ExternalLink,{size:12,strokeWidth:2,style:{color:"var(--foreground-muted)",flexShrink:0}})]})},e.label))})]})}function F({label:e,value:o,mono:l,bold:a,ellipsis:i}){return(0,t.jsxs)("li",{style:{display:"flex",alignItems:"center",gap:12,padding:"5px 0",borderBottom:"1px dashed var(--border)",minWidth:0},children:[(0,t.jsx)("span",{style:{fontSize:11.5,color:"var(--foreground-muted)",flexShrink:0},children:e}),(0,t.jsx)("span",{style:{flex:1,minWidth:0,textAlign:"right",fontSize:12,color:"var(--foreground)",fontWeight:a?600:500,fontFamily:l?"var(--font-mono)":"inherit",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:i?o:void 0,children:o})]})}function q({slug:e,initials:o,size:a=36,radius:i=10}){let[r,s]=(0,l.useState)("color");(0,l.useEffect)(()=>{s("color")},[e]);let n="failed"===r?void 0:function(e,t="color"){if(e)return`https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@latest/icons/${e}${"color"===t?"-color":""}.svg`}(e,r),d=!!n;return(0,t.jsx)("div",{style:{...ev,width:a,height:a,borderRadius:i,fontSize:Math.round(.32*a),background:d?"#ffffff":"var(--background-secondary)",padding:d?Math.round(.16*a):0,color:"var(--foreground)"},children:d?(0,t.jsx)("img",{src:n,alt:o,onError:()=>s("color"===r?"plain":"failed"),style:{width:"100%",height:"100%",objectFit:"contain"},loading:"lazy"}):o})}function N({state:e,locale:o}){return"ok"===e?(0,t.jsxs)("span",{style:ew,children:[(0,t.jsx)(u.CircleCheck,{size:11,strokeWidth:2.4}),"zh"===o?"正常":"OK"]}):"checking"===e?(0,t.jsxs)("span",{style:eC,children:[(0,t.jsx)(v.Loader2,{size:11,strokeWidth:2.4,style:{animation:"spin 1s linear infinite"}}),"zh"===o?"检测中":"Checking"]}):"failed"===e?(0,t.jsxs)("span",{style:eM,children:[(0,t.jsx)(k.XCircle,{size:11,strokeWidth:2.4}),"zh"===o?"失效":"Failed"]}):(0,t.jsx)("span",{style:ez,children:"zh"===o?"未配置":"No key"})}function E({locale:e,hasConfigs:o,onAdd:l,onReset:i}){return(0,t.jsxs)("div",{style:e$,children:[(0,t.jsx)("div",{style:eG,children:(0,t.jsx)(s,{size:20})}),(0,t.jsx)("div",{style:{fontSize:13.5,color:"var(--foreground)",fontWeight:500,marginBottom:4},children:o?"zh"===e?"没有匹配的模型":"No matching models":"zh"===e?"尚未注册任何模型":"No models registered yet"}),(0,t.jsx)("div",{style:{fontSize:12,color:"var(--foreground-muted)",marginBottom:14,textAlign:"center",maxWidth:360},children:o?"zh"===e?"试试调整搜索关键字或筛选条件。":"Try a different keyword or filter.":"zh"===e?"注册首个 LLM 后即可在评测、优化、对比中使用。":"Register your first LLM to use it for evaluation, optimization and comparison."}),o?(0,t.jsx)("button",{style:eK,onClick:i,children:"zh"===e?"清除筛选":"Reset filters"}):(0,t.jsxs)("button",{style:eO,onClick:l,children:[(0,t.jsx)(a.Plus,{size:14,strokeWidth:2.4}),"zh"===e?"注册首个模型":"Register your first model"]})]})}function H({onPick:e,onCancel:o,locale:a}){let[r,s]=(0,l.useState)(""),[n,d]=(0,l.useState)("all"),c=(0,l.useMemo)(()=>{let e=r.trim().toLowerCase();return C.filter(t=>("all"===n||t.category===n)&&(!e||t.label.toLowerCase().includes(e)||t.id.toLowerCase().includes(e)||t.defaultModel.toLowerCase().includes(e)||t.suggestedModels.some(t=>t.toLowerCase().includes(e))))},[r,n]),p=(0,l.useMemo)(()=>{let e={};for(let t of c)e[t.category]||(e[t.category]=[]),e[t.category].push(t);return e},[c]),g=(0,l.useMemo)(()=>{let e={all:C.length};for(let t of C)e[t.category]=(e[t.category]||0)+1;return e},[]);return(0,t.jsxs)("div",{style:eN,children:[(0,t.jsxs)("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",marginBottom:16,gap:16},children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{style:{fontSize:15,fontWeight:600,color:"var(--foreground)",letterSpacing:"-0.01em"},children:"zh"===a?"选择模型供应商":"Choose a Model Provider"}),(0,t.jsx)("div",{style:{fontSize:12,color:"var(--foreground-muted)",marginTop:3},children:"zh"===a?"挑选预置供应商即可自动填写 Base URL 与默认模型,下一步只需录入 API Key。":"Pick a built-in provider — Base URL and default model auto-fill. You only need to paste an API key next."})]}),(0,t.jsx)("button",{style:eK,onClick:o,children:"zh"===a?"返回列表":"Back to list"})]}),(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:12,marginBottom:14,flexWrap:"wrap"},children:[(0,t.jsxs)("div",{style:{...eh,width:280},children:[(0,t.jsx)(i.Search,{size:14,strokeWidth:2,style:{position:"absolute",left:11,top:"50%",transform:"translateY(-50%)",color:"var(--foreground-muted)"}}),(0,t.jsx)("input",{type:"text",placeholder:"zh"===a?"搜索供应商 / 模型":"Search provider / model",value:r,onChange:e=>s(e.target.value),style:em})]}),(0,t.jsxs)("div",{style:ef,children:[(0,t.jsx)(T,{active:"all"===n,onClick:()=>d("all"),count:g.all,children:"zh"===a?"全部":"All"}),U.map(e=>(0,t.jsx)(T,{active:n===e.id,onClick:()=>d(e.id),count:g[e.id]||0,children:"zh"===a?e.labelZh:e.labelEn},e.id))]})]}),0===c.length?(0,t.jsx)("div",{style:{padding:"40px 0",textAlign:"center",fontSize:13,color:"var(--foreground-muted)"},children:"zh"===a?"没有匹配的供应商。":"No matching provider."}):(0,t.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:22},children:U.map(o=>{let l=p[o.id];return l&&0!==l.length?(0,t.jsxs)("section",{children:[(0,t.jsxs)("div",{style:ed,children:[(0,t.jsx)("span",{children:"zh"===a?o.labelZh:o.labelEn}),(0,t.jsx)("span",{style:eo,children:l.length})]}),(0,t.jsx)("div",{style:ec,children:l.map(o=>(0,t.jsxs)("button",{type:"button",onClick:()=>e(o),style:ep,className:"provider-pick-card",children:[(0,t.jsx)(q,{slug:o.logoSlug,initials:o.initials,size:36,radius:9}),(0,t.jsxs)("div",{style:{minWidth:0,flex:1},children:[(0,t.jsx)("div",{style:{fontSize:13.5,fontWeight:600,color:"var(--foreground)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:o.label}),(0,t.jsx)("div",{style:{marginTop:3,fontSize:11.5,color:"var(--foreground-muted)",fontFamily:"var(--font-mono)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:o.suggestedModels.join(" · ")||o.defaultModel,children:o.suggestedModels.slice(0,3).join(" · ")||o.defaultModel||("zh"===a?"自填模型":"Custom model")})]})]},o.id))})]},o.id):null})})]})}function Q({config:e,setConfig:o,onCancel:l,onReselect:a,onSave:i,isSaving:r,isDefault:s,pickedProvider:n,locale:d}){return(0,t.jsxs)("div",{style:eN,children:[(0,t.jsxs)("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",marginBottom:18,gap:16},children:[(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:12,minWidth:0},children:[n&&(0,t.jsx)(q,{slug:n.logoSlug,initials:n.initials,size:40,radius:10}),(0,t.jsxs)("div",{style:{minWidth:0},children:[(0,t.jsx)("div",{style:{fontSize:15,fontWeight:600,color:"var(--foreground)",letterSpacing:"-0.01em"},children:"new"===e.id?n?n.label:"zh"===d?"新增模型":"New Model":"zh"===d?"编辑模型":"Edit Model"}),(0,t.jsx)("div",{style:{fontSize:12,color:"var(--foreground-muted)",marginTop:3},children:n?.note?n.note:"zh"===d?"保存前会自动测试连接,连通后才会写入。":"Connection is tested before saving."})]})]}),(0,t.jsxs)("div",{style:{display:"flex",gap:8,flexShrink:0},children:[a&&(0,t.jsx)("button",{style:eK,onClick:a,children:"zh"===d?"← 选择其它供应商":"← Choose other provider"}),(0,t.jsx)("button",{style:eK,onClick:l,children:"zh"===d?"返回列表":"Back to list"})]})]}),(0,t.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"repeat(2, minmax(0, 1fr))",gap:"14px 18px"},children:[(0,t.jsx)($,{label:"zh"===d?"配置名称":"Config Name",children:(0,t.jsx)("input",{style:eE,placeholder:"zh"===d?"例如:我的 DeepSeek":"e.g. My DeepSeek",value:e.name||"",disabled:s,onChange:t=>o({...e,name:t.target.value})})}),(0,t.jsx)($,{label:"zh"===d?"供应商":"Provider",children:(0,t.jsxs)("select",{style:eE,value:e.provider,disabled:s,onChange:t=>{var l;let a;return a=I[l=t.target.value],void o({...e,provider:l,baseUrl:a.baseUrl||e.baseUrl,model:a.model||e.model})},children:[(0,t.jsx)("option",{value:"deepseek-official",children:"DeepSeek (Official)"}),(0,t.jsx)("option",{value:"siliconflow",children:"SiliconFlow"}),(0,t.jsx)("option",{value:"openai",children:"OpenAI"}),(0,t.jsx)("option",{value:"anthropic",children:"Anthropic"}),(0,t.jsx)("option",{value:"custom",children:"Custom (OpenAI Compatible)"})]})}),(0,t.jsx)($,{label:"Base URL",children:(0,t.jsx)("input",{style:eE,placeholder:"https://api.deepseek.com",value:e.baseUrl||"",disabled:s,onChange:t=>o({...e,baseUrl:t.target.value.replace(/\/chat\/completions\/?$/,"")})})}),(0,t.jsxs)($,{label:"zh"===d?"模型名":"Model Name",children:[(0,t.jsx)("input",{style:eE,placeholder:"deepseek-chat / gpt-4o / ...",value:e.model||"",disabled:s,onChange:t=>o({...e,model:t.target.value})}),n&&n.suggestedModels.length>0&&(0,t.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:5,marginTop:7},children:n.suggestedModels.slice(0,6).map(l=>(0,t.jsx)("button",{type:"button",onClick:()=>o({...e,model:l}),style:{...eg,background:e.model===l?"var(--primary-subtle)":"var(--background-secondary)",color:e.model===l?"var(--primary)":"var(--foreground-secondary)",borderColor:e.model===l?"var(--primary-subtle-border)":"var(--border)"},children:l},l))})]}),(0,t.jsx)("div",{style:{gridColumn:"1 / -1"},children:(0,t.jsxs)($,{label:"zh"===d?"API 密钥":"API Key",children:[(0,t.jsx)("input",{style:{...eE,fontFamily:"var(--font-mono, ui-monospace, monospace)"},type:"text",placeholder:"sk-...",value:e.apiKey||"",disabled:s,onChange:t=>o({...e,apiKey:t.target.value})}),(e.apiKey||"").includes("•")&&(0,t.jsx)("div",{style:{marginTop:6,fontSize:11.5,color:"var(--foreground-muted)"},children:"zh"===d?"出于安全考虑仅显示掩码。保持不变则沿用原 Key;如需更换请清空后输入新 Key。":"Masked for security. Leave unchanged to keep the current key; clear and type a new key to replace it."}),n?.docsUrl&&(0,t.jsx)("div",{style:{marginTop:6,fontSize:11.5,color:"var(--foreground-muted)"},children:(0,t.jsxs)("a",{href:n.docsUrl,target:"_blank",rel:"noreferrer",style:{color:"var(--primary)",textDecoration:"none",display:"inline-flex",alignItems:"center",gap:4},children:["zh"===d?"如何获取 API Key":"How to obtain an API Key",(0,t.jsx)(b.ExternalLink,{size:11,strokeWidth:2})]})})]})})]}),(0,t.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:20},children:[(0,t.jsx)("button",{style:eK,onClick:l,children:"zh"===d?"取消":"Cancel"}),!s&&(0,t.jsx)("button",{style:r?eP:eO,disabled:r,onClick:i,children:r?"zh"===d?"测试并保存中…":"Testing & Saving…":"zh"===d?"测试连接并保存":"Test & Save"})]})]})}function $({label:e,children:o}){return(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{style:{fontSize:11.5,fontWeight:500,color:"var(--foreground-secondary)",marginBottom:6,letterSpacing:"0.01em"},children:e}),o]})}let G={flex:1,minHeight:0,overflowY:"auto",padding:"24px 28px 40px",width:"100%"},V={maxWidth:1320,margin:"0 auto"},Y={display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:24,marginBottom:22},Z={margin:0,fontSize:13,lineHeight:1.65,color:"var(--foreground-secondary)",maxWidth:720},_={color:"var(--foreground)",fontWeight:600},X={display:"grid",gridTemplateColumns:"minmax(0, 1fr) 300px",gap:22,alignItems:"flex-start"},J={minWidth:0,display:"flex",flexDirection:"column",gap:14},ee={display:"flex",flexDirection:"column",gap:14,position:"sticky",top:0},et={display:"flex",alignItems:"center",gap:8,padding:"2px 2px 6px",borderBottom:"1px solid var(--border)"},eo={display:"inline-flex",alignItems:"center",padding:"1px 8px",fontSize:11,fontWeight:600,fontFamily:"var(--font-mono)",color:"var(--foreground-secondary)",background:"var(--background-secondary)",border:"1px solid var(--border)",borderRadius:999,lineHeight:1.5},el={background:"var(--card-bg)",border:"1px solid var(--card-border)",borderRadius:12,padding:"14px 16px 12px",display:"flex",flexDirection:"column",gap:10},ea={display:"flex",alignItems:"center",gap:7,fontSize:13,fontWeight:600,color:"var(--foreground)",letterSpacing:"-0.005em",paddingBottom:8,borderBottom:"1px solid var(--border)"},ei={display:"flex",flexDirection:"column",padding:0,margin:0,listStyle:"none"},er={display:"flex",alignItems:"center",gap:10,padding:"5px 0",minWidth:0},es={width:"100%",display:"inline-flex",alignItems:"center",justifyContent:"center",gap:6,padding:"7px 10px",marginTop:4,background:"var(--card-bg)",color:"var(--foreground-secondary)",border:"1px solid var(--border)",borderRadius:7,fontSize:12,fontWeight:500,cursor:"pointer",transition:"all .12s ease"},en={display:"flex",alignItems:"center",gap:8,padding:"7px 8px",fontSize:12.5,color:"var(--foreground-secondary)",textDecoration:"none",borderRadius:6,transition:"background .1s"},ed={display:"flex",alignItems:"center",gap:8,marginBottom:10,fontSize:12,fontWeight:600,color:"var(--foreground-secondary)",textTransform:"uppercase",letterSpacing:"0.08em"},ec={display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(220px, 1fr))",gap:10},ep={display:"flex",alignItems:"center",gap:12,padding:"11px 12px",background:"var(--card-bg)",border:"1px solid var(--card-border)",borderRadius:10,cursor:"pointer",textAlign:"left",fontFamily:"inherit",transition:"all .12s ease",minWidth:0},eg={padding:"3px 10px",fontSize:11,fontFamily:"var(--font-mono)",border:"1px solid var(--border)",borderRadius:999,cursor:"pointer",transition:"all .12s",lineHeight:1.5},eu={display:"flex",alignItems:"center",gap:14,marginBottom:14,flexWrap:"wrap"},eh={position:"relative",width:280},em={width:"100%",height:34,padding:"0 12px 0 32px",border:"1px solid var(--input-border)",borderRadius:8,background:"var(--input-bg)",fontSize:12.5,color:"var(--foreground)",outline:"none"},ef={display:"inline-flex",flexWrap:"wrap",gap:6},ey={padding:"6px 12px",fontSize:12,fontWeight:500,borderRadius:6,cursor:"pointer",fontFamily:"inherit",display:"inline-flex",alignItems:"center",gap:6,whiteSpace:"nowrap",lineHeight:1.4},eb={background:"var(--card-bg)",border:"1px solid var(--card-border)",borderRadius:12,padding:"18px 22px",display:"grid",gridTemplateColumns:"auto 1fr auto",gap:22,alignItems:"center",transition:"all .15s ease",position:"relative",overflow:"hidden"},ex={position:"absolute",left:0,top:0,bottom:0,width:3,background:"var(--primary)"},ev={width:48,height:48,borderRadius:12,background:"var(--background-secondary)",border:"1px solid var(--card-border)",display:"grid",placeItems:"center",fontWeight:600,fontSize:14,color:"var(--foreground-secondary)",letterSpacing:"0.02em",flexShrink:0},ek={fontSize:16,fontWeight:600,color:"var(--foreground)",letterSpacing:"-0.01em"},ej={display:"inline-flex",alignItems:"center",gap:4,padding:"2px 8px",fontSize:10.5,fontWeight:600,borderRadius:999,lineHeight:1.5,letterSpacing:"0.01em"},eS={...ej,background:"var(--primary)",color:"var(--primary-foreground)"},ew={...ej,background:"var(--success-subtle)",color:"var(--success)"},ez={...ej,background:"var(--warning-subtle)",color:"var(--warning)"},eC={...ej,background:"var(--primary-subtle)",color:"var(--primary)"},eM={...ej,background:"var(--error-subtle)",color:"var(--error)"},eU={...ej,background:"var(--background-secondary)",color:"var(--foreground-secondary)",border:"1px solid var(--border)"},eI={width:5,height:5,background:"var(--success)",borderRadius:"50%"},eW={display:"flex",alignItems:"center",gap:12,flexWrap:"wrap",marginBottom:10,fontSize:12.5,color:"var(--foreground-secondary)"},eA={display:"inline-flex",alignItems:"center",gap:6,minWidth:0},eL={fontSize:10.5,fontWeight:500,color:"var(--foreground-muted)",textTransform:"uppercase",letterSpacing:"0.06em"},eR={color:"var(--foreground)",fontWeight:500,maxWidth:280,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},eB={width:1,height:11,background:"var(--border)"},eT={display:"inline-flex",alignItems:"center",gap:8,padding:"5px 10px",background:"var(--background-secondary)",border:"1px solid var(--border)",borderRadius:7,color:"var(--foreground-secondary)",maxWidth:"fit-content"},eD={display:"flex",alignItems:"center",gap:6,paddingLeft:16,borderLeft:"1px dashed var(--border)"},eO={display:"inline-flex",alignItems:"center",gap:6,padding:"7px 14px",background:"var(--primary)",color:"var(--primary-foreground)",border:"none",borderRadius:8,fontSize:12.5,fontWeight:500,cursor:"pointer",transition:"background .12s ease",lineHeight:1.4},eP={...eO,opacity:.6,cursor:"not-allowed"},eK={display:"inline-flex",alignItems:"center",gap:5,padding:"6px 12px",background:"var(--card-bg)",color:"var(--foreground-secondary)",borderWidth:1,borderStyle:"solid",borderColor:"var(--border)",borderRadius:7,fontSize:12,fontWeight:500,cursor:"pointer",transition:"all .12s ease",lineHeight:1.4},eF={...eK,background:"var(--success-subtle)",color:"var(--success)",borderColor:"var(--success-subtle-border)",cursor:"default"},eq={...eK,color:"var(--foreground-secondary)"},eN={background:"var(--card-bg)",border:"1px solid var(--card-border)",borderRadius:12,padding:"22px 26px"},eE={width:"100%",padding:"8px 10px",background:"var(--input-bg)",border:"1px solid var(--input-border)",borderRadius:7,color:"var(--foreground)",fontSize:12.5,outline:"none"},eH={marginTop:24,padding:"14px 18px",border:"1px dashed var(--border-dark)",borderRadius:10,background:"var(--background-secondary)",display:"flex",alignItems:"center",gap:12},eQ={width:30,height:30,borderRadius:8,background:"var(--primary-subtle)",color:"var(--primary)",display:"grid",placeItems:"center",flexShrink:0},e$={padding:"40px 24px",background:"var(--card-bg)",border:"1px dashed var(--border-dark)",borderRadius:12,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center"},eG={width:44,height:44,borderRadius:10,background:"var(--background-secondary)",color:"var(--foreground-muted)",display:"grid",placeItems:"center",marginBottom:12};var eV=e.i(460435);function eY(){let{t:e}=(0,w.useLocale)();return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(o.AppTopBar,{title:(0,t.jsx)(eV.Term,{id:"model-registry",label:e("nav.modelRegistry")})}),(0,t.jsx)(R,{})]})}e.s(["default",()=>eY],628867)}]);