agent-insight 0.4.1 → 0.4.2

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 (1191) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-path-routes-manifest.json +13 -0
  3. package/.next/standalone/.next/build-manifest.json +2 -2
  4. package/.next/standalone/.next/prerender-manifest.json +51 -3
  5. package/.next/standalone/.next/routes-manifest.json +82 -0
  6. package/.next/standalone/.next/server/app/(main)/accessconfig/channels/page_client-reference-manifest.js +1 -1
  7. package/.next/standalone/.next/server/app/(main)/accessconfig/health/page_client-reference-manifest.js +1 -1
  8. package/.next/standalone/.next/server/app/(main)/accessconfig/install/page.js.nft.json +1 -1
  9. package/.next/standalone/.next/server/app/(main)/accessconfig/install/page_client-reference-manifest.js +1 -1
  10. package/.next/standalone/.next/server/app/(main)/accessconfig/page_client-reference-manifest.js +1 -1
  11. package/.next/standalone/.next/server/app/(main)/accessconfig/webhooks/page_client-reference-manifest.js +1 -1
  12. package/.next/standalone/.next/server/app/(main)/agents/page.js.nft.json +1 -1
  13. package/.next/standalone/.next/server/app/(main)/agents/page_client-reference-manifest.js +1 -1
  14. package/.next/standalone/.next/server/app/(main)/dashboard/page.js.nft.json +1 -1
  15. package/.next/standalone/.next/server/app/(main)/dashboard/page_client-reference-manifest.js +1 -1
  16. package/.next/standalone/.next/server/app/(main)/dataset/[id]/page_client-reference-manifest.js +1 -1
  17. package/.next/standalone/.next/server/app/(main)/dataset/page.js.nft.json +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.js.nft.json +1 -1
  22. package/.next/standalone/.next/server/app/(main)/eval/run/[runId]/page_client-reference-manifest.js +1 -1
  23. package/.next/standalone/.next/server/app/(main)/eval/trajectory/[taskId]/page.js.nft.json +1 -1
  24. package/.next/standalone/.next/server/app/(main)/eval/trajectory/[taskId]/page_client-reference-manifest.js +1 -1
  25. package/.next/standalone/.next/server/app/(main)/eval/trajectory/[taskId]/trace/page.js.nft.json +1 -1
  26. package/.next/standalone/.next/server/app/(main)/eval/trajectory/[taskId]/trace/page_client-reference-manifest.js +1 -1
  27. package/.next/standalone/.next/server/app/(main)/eval/trajectory/page.js.nft.json +1 -1
  28. package/.next/standalone/.next/server/app/(main)/eval/trajectory/page_client-reference-manifest.js +1 -1
  29. package/.next/standalone/.next/server/app/(main)/evaluation/[id]/page_client-reference-manifest.js +1 -1
  30. package/.next/standalone/.next/server/app/(main)/fault/page.js.nft.json +1 -1
  31. package/.next/standalone/.next/server/app/(main)/fault/page_client-reference-manifest.js +1 -1
  32. package/.next/standalone/.next/server/app/(main)/infra/page/app-paths-manifest.json +3 -0
  33. package/.next/standalone/.next/server/app/(main)/infra/page/build-manifest.json +17 -0
  34. package/.next/standalone/.next/server/app/(main)/infra/page/next-font-manifest.json +6 -0
  35. package/.next/standalone/.next/server/app/(main)/infra/page/react-loadable-manifest.json +1 -0
  36. package/.next/standalone/.next/server/app/(main)/infra/page/server-reference-manifest.json +4 -0
  37. package/.next/standalone/.next/server/app/(main)/infra/page.js +17 -0
  38. package/.next/standalone/.next/server/app/(main)/infra/page.js.map +5 -0
  39. package/.next/standalone/.next/server/app/(main)/infra/page.js.nft.json +1 -0
  40. package/.next/standalone/.next/server/app/(main)/infra/page_client-reference-manifest.js +2 -0
  41. package/.next/standalone/.next/server/app/(main)/infra/source/[id]/page/app-paths-manifest.json +3 -0
  42. package/.next/standalone/.next/server/app/(main)/infra/source/[id]/page/build-manifest.json +17 -0
  43. package/.next/standalone/.next/server/app/(main)/infra/source/[id]/page/next-font-manifest.json +6 -0
  44. package/.next/standalone/.next/server/app/(main)/infra/source/[id]/page/react-loadable-manifest.json +1 -0
  45. package/.next/standalone/.next/server/app/(main)/infra/source/[id]/page/server-reference-manifest.json +4 -0
  46. package/.next/standalone/.next/server/app/(main)/infra/source/[id]/page.js +17 -0
  47. package/.next/standalone/.next/server/app/(main)/infra/source/[id]/page.js.map +5 -0
  48. package/.next/standalone/.next/server/app/(main)/infra/source/[id]/page.js.nft.json +1 -0
  49. package/.next/standalone/.next/server/app/(main)/infra/source/[id]/page_client-reference-manifest.js +2 -0
  50. package/.next/standalone/.next/server/app/(main)/infra/sources/page/app-paths-manifest.json +3 -0
  51. package/.next/standalone/.next/server/app/(main)/infra/sources/page/build-manifest.json +17 -0
  52. package/.next/standalone/.next/server/app/(main)/infra/sources/page/next-font-manifest.json +6 -0
  53. package/.next/standalone/.next/server/app/(main)/infra/sources/page/react-loadable-manifest.json +1 -0
  54. package/.next/standalone/.next/server/app/(main)/infra/sources/page/server-reference-manifest.json +4 -0
  55. package/.next/standalone/.next/server/app/(main)/infra/sources/page.js +17 -0
  56. package/.next/standalone/.next/server/app/(main)/infra/sources/page.js.map +5 -0
  57. package/.next/standalone/.next/server/app/(main)/infra/sources/page.js.nft.json +1 -0
  58. package/.next/standalone/.next/server/app/(main)/infra/sources/page_client-reference-manifest.js +2 -0
  59. package/.next/standalone/.next/server/app/(main)/memory/page_client-reference-manifest.js +1 -1
  60. package/.next/standalone/.next/server/app/(main)/metrics/evaluators/[id]/page.js.nft.json +1 -1
  61. package/.next/standalone/.next/server/app/(main)/metrics/evaluators/[id]/page_client-reference-manifest.js +1 -1
  62. package/.next/standalone/.next/server/app/(main)/metrics/page.js.nft.json +1 -1
  63. package/.next/standalone/.next/server/app/(main)/metrics/page_client-reference-manifest.js +1 -1
  64. package/.next/standalone/.next/server/app/(main)/modelconfig/page_client-reference-manifest.js +1 -1
  65. package/.next/standalone/.next/server/app/(main)/modelconfig/registry/page.js.nft.json +1 -1
  66. package/.next/standalone/.next/server/app/(main)/modelconfig/registry/page_client-reference-manifest.js +1 -1
  67. package/.next/standalone/.next/server/app/(main)/modelconfig/web-search/page.js.nft.json +1 -1
  68. package/.next/standalone/.next/server/app/(main)/modelconfig/web-search/page_client-reference-manifest.js +1 -1
  69. package/.next/standalone/.next/server/app/(main)/optapi/page_client-reference-manifest.js +1 -1
  70. package/.next/standalone/.next/server/app/(main)/quality/page.js.nft.json +1 -1
  71. package/.next/standalone/.next/server/app/(main)/quality/page_client-reference-manifest.js +1 -1
  72. package/.next/standalone/.next/server/app/(main)/security/page_client-reference-manifest.js +1 -1
  73. package/.next/standalone/.next/server/app/(main)/skill-eval/grayscale/page.js.nft.json +1 -1
  74. package/.next/standalone/.next/server/app/(main)/skill-eval/grayscale/page_client-reference-manifest.js +1 -1
  75. package/.next/standalone/.next/server/app/(main)/skill-eval/page.js.nft.json +1 -1
  76. package/.next/standalone/.next/server/app/(main)/skill-eval/page_client-reference-manifest.js +1 -1
  77. package/.next/standalone/.next/server/app/(main)/skill-eval/trigger/[skillName]/page_client-reference-manifest.js +1 -1
  78. package/.next/standalone/.next/server/app/(main)/skill-generator/page.js.nft.json +1 -1
  79. package/.next/standalone/.next/server/app/(main)/skill-generator/page_client-reference-manifest.js +1 -1
  80. package/.next/standalone/.next/server/app/(main)/skill-history/page.js.nft.json +1 -1
  81. package/.next/standalone/.next/server/app/(main)/skill-history/page_client-reference-manifest.js +1 -1
  82. package/.next/standalone/.next/server/app/(main)/skill-opt/[name]/[version]/page.js.nft.json +1 -1
  83. package/.next/standalone/.next/server/app/(main)/skill-opt/[name]/[version]/page_client-reference-manifest.js +1 -1
  84. package/.next/standalone/.next/server/app/(main)/skill-opt/page.js.nft.json +1 -1
  85. package/.next/standalone/.next/server/app/(main)/skill-opt/page_client-reference-manifest.js +1 -1
  86. package/.next/standalone/.next/server/app/(main)/skill-release/page_client-reference-manifest.js +1 -1
  87. package/.next/standalone/.next/server/app/(main)/skills/page.js.nft.json +1 -1
  88. package/.next/standalone/.next/server/app/(main)/skills/page_client-reference-manifest.js +1 -1
  89. package/.next/standalone/.next/server/app/(main)/trace/page.js.nft.json +1 -1
  90. package/.next/standalone/.next/server/app/(main)/trace/page_client-reference-manifest.js +1 -1
  91. package/.next/standalone/.next/server/app/_global-error.html +2 -2
  92. package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
  93. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  94. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  95. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  96. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  97. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  98. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  99. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  100. package/.next/standalone/.next/server/app/_not-found.rsc +3 -3
  101. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
  102. package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  103. package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
  104. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  105. package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  106. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  107. package/.next/standalone/.next/server/app/accessconfig/channels.html +1 -1
  108. package/.next/standalone/.next/server/app/accessconfig/channels.rsc +5 -5
  109. package/.next/standalone/.next/server/app/accessconfig/channels.segments/!KG1haW4p/accessconfig/channels/__PAGE__.segment.rsc +2 -2
  110. package/.next/standalone/.next/server/app/accessconfig/channels.segments/!KG1haW4p/accessconfig/channels.segment.rsc +1 -1
  111. package/.next/standalone/.next/server/app/accessconfig/channels.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
  112. package/.next/standalone/.next/server/app/accessconfig/channels.segments/!KG1haW4p.segment.rsc +2 -2
  113. package/.next/standalone/.next/server/app/accessconfig/channels.segments/_full.segment.rsc +5 -5
  114. package/.next/standalone/.next/server/app/accessconfig/channels.segments/_head.segment.rsc +1 -1
  115. package/.next/standalone/.next/server/app/accessconfig/channels.segments/_index.segment.rsc +3 -3
  116. package/.next/standalone/.next/server/app/accessconfig/channels.segments/_tree.segment.rsc +2 -2
  117. package/.next/standalone/.next/server/app/accessconfig/health.html +1 -1
  118. package/.next/standalone/.next/server/app/accessconfig/health.rsc +5 -5
  119. package/.next/standalone/.next/server/app/accessconfig/health.segments/!KG1haW4p/accessconfig/health/__PAGE__.segment.rsc +2 -2
  120. package/.next/standalone/.next/server/app/accessconfig/health.segments/!KG1haW4p/accessconfig/health.segment.rsc +1 -1
  121. package/.next/standalone/.next/server/app/accessconfig/health.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
  122. package/.next/standalone/.next/server/app/accessconfig/health.segments/!KG1haW4p.segment.rsc +2 -2
  123. package/.next/standalone/.next/server/app/accessconfig/health.segments/_full.segment.rsc +5 -5
  124. package/.next/standalone/.next/server/app/accessconfig/health.segments/_head.segment.rsc +1 -1
  125. package/.next/standalone/.next/server/app/accessconfig/health.segments/_index.segment.rsc +3 -3
  126. package/.next/standalone/.next/server/app/accessconfig/health.segments/_tree.segment.rsc +2 -2
  127. package/.next/standalone/.next/server/app/accessconfig/install.html +3 -1
  128. package/.next/standalone/.next/server/app/accessconfig/install.rsc +5 -5
  129. package/.next/standalone/.next/server/app/accessconfig/install.segments/!KG1haW4p/accessconfig/install/__PAGE__.segment.rsc +2 -2
  130. package/.next/standalone/.next/server/app/accessconfig/install.segments/!KG1haW4p/accessconfig/install.segment.rsc +1 -1
  131. package/.next/standalone/.next/server/app/accessconfig/install.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
  132. package/.next/standalone/.next/server/app/accessconfig/install.segments/!KG1haW4p.segment.rsc +2 -2
  133. package/.next/standalone/.next/server/app/accessconfig/install.segments/_full.segment.rsc +5 -5
  134. package/.next/standalone/.next/server/app/accessconfig/install.segments/_head.segment.rsc +1 -1
  135. package/.next/standalone/.next/server/app/accessconfig/install.segments/_index.segment.rsc +3 -3
  136. package/.next/standalone/.next/server/app/accessconfig/install.segments/_tree.segment.rsc +2 -2
  137. package/.next/standalone/.next/server/app/accessconfig/webhooks.html +1 -1
  138. package/.next/standalone/.next/server/app/accessconfig/webhooks.rsc +5 -5
  139. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/!KG1haW4p/accessconfig/webhooks/__PAGE__.segment.rsc +2 -2
  140. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/!KG1haW4p/accessconfig/webhooks.segment.rsc +1 -1
  141. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
  142. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/!KG1haW4p.segment.rsc +2 -2
  143. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/_full.segment.rsc +5 -5
  144. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/_head.segment.rsc +1 -1
  145. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/_index.segment.rsc +3 -3
  146. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/_tree.segment.rsc +2 -2
  147. package/.next/standalone/.next/server/app/accessconfig.html +1 -1
  148. package/.next/standalone/.next/server/app/accessconfig.rsc +4 -4
  149. package/.next/standalone/.next/server/app/accessconfig.segments/!KG1haW4p/accessconfig/__PAGE__.segment.rsc +1 -1
  150. package/.next/standalone/.next/server/app/accessconfig.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
  151. package/.next/standalone/.next/server/app/accessconfig.segments/!KG1haW4p.segment.rsc +2 -2
  152. package/.next/standalone/.next/server/app/accessconfig.segments/_full.segment.rsc +4 -4
  153. package/.next/standalone/.next/server/app/accessconfig.segments/_head.segment.rsc +1 -1
  154. package/.next/standalone/.next/server/app/accessconfig.segments/_index.segment.rsc +3 -3
  155. package/.next/standalone/.next/server/app/accessconfig.segments/_tree.segment.rsc +2 -2
  156. package/.next/standalone/.next/server/app/agents.html +1 -1
  157. package/.next/standalone/.next/server/app/agents.rsc +5 -5
  158. package/.next/standalone/.next/server/app/agents.segments/!KG1haW4p/agents/__PAGE__.segment.rsc +2 -2
  159. package/.next/standalone/.next/server/app/agents.segments/!KG1haW4p/agents.segment.rsc +1 -1
  160. package/.next/standalone/.next/server/app/agents.segments/!KG1haW4p.segment.rsc +2 -2
  161. package/.next/standalone/.next/server/app/agents.segments/_full.segment.rsc +5 -5
  162. package/.next/standalone/.next/server/app/agents.segments/_head.segment.rsc +1 -1
  163. package/.next/standalone/.next/server/app/agents.segments/_index.segment.rsc +3 -3
  164. package/.next/standalone/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
  165. package/.next/standalone/.next/server/app/api/agent/run/route.js +5 -4
  166. package/.next/standalone/.next/server/app/api/agent/run/route.js.nft.json +1 -1
  167. package/.next/standalone/.next/server/app/api/agent/stream/route.js +5 -4
  168. package/.next/standalone/.next/server/app/api/agent/stream/route.js.nft.json +1 -1
  169. package/.next/standalone/.next/server/app/api/agent-datasets/[id]/route.js +5 -4
  170. package/.next/standalone/.next/server/app/api/agent-datasets/[id]/route.js.nft.json +1 -1
  171. package/.next/standalone/.next/server/app/api/agent-datasets/route.js +6 -5
  172. package/.next/standalone/.next/server/app/api/agent-datasets/route.js.nft.json +1 -1
  173. package/.next/standalone/.next/server/app/api/agents/[id]/route.js +3 -3
  174. package/.next/standalone/.next/server/app/api/agents/[id]/route.js.nft.json +1 -1
  175. package/.next/standalone/.next/server/app/api/agents/route.js +2 -2
  176. package/.next/standalone/.next/server/app/api/agents/route.js.nft.json +1 -1
  177. package/.next/standalone/.next/server/app/api/auth/apikey/route.js +5 -5
  178. package/.next/standalone/.next/server/app/api/auth/apikey/route.js.nft.json +1 -1
  179. package/.next/standalone/.next/server/app/api/auth/organization/route.js +3 -3
  180. package/.next/standalone/.next/server/app/api/auth/organization/route.js.nft.json +1 -1
  181. package/.next/standalone/.next/server/app/api/dashboard/stats/route.js +3 -3
  182. package/.next/standalone/.next/server/app/api/dashboard/stats/route.js.nft.json +1 -1
  183. package/.next/standalone/.next/server/app/api/debug/batch-tasks/[taskId]/route.js +6 -5
  184. package/.next/standalone/.next/server/app/api/debug/batch-tasks/[taskId]/route.js.nft.json +1 -1
  185. package/.next/standalone/.next/server/app/api/debug/batch-tasks/route.js +2 -2
  186. package/.next/standalone/.next/server/app/api/debug/batch-tasks/route.js.nft.json +1 -1
  187. package/.next/standalone/.next/server/app/api/debug/execute/[jobId]/route.js +2 -2
  188. package/.next/standalone/.next/server/app/api/debug/execute/[jobId]/route.js.nft.json +1 -1
  189. package/.next/standalone/.next/server/app/api/debug/execute/route.js +5 -4
  190. package/.next/standalone/.next/server/app/api/debug/execute/route.js.nft.json +1 -1
  191. package/.next/standalone/.next/server/app/api/debug/grayscale-tasks/[taskId]/route.js +14 -13
  192. package/.next/standalone/.next/server/app/api/debug/grayscale-tasks/[taskId]/route.js.nft.json +1 -1
  193. package/.next/standalone/.next/server/app/api/debug/grayscale-tasks/route.js +2 -2
  194. package/.next/standalone/.next/server/app/api/debug/grayscale-tasks/route.js.nft.json +1 -1
  195. package/.next/standalone/.next/server/app/api/debug/history/[id]/route.js +2 -2
  196. package/.next/standalone/.next/server/app/api/debug/history/[id]/route.js.nft.json +1 -1
  197. package/.next/standalone/.next/server/app/api/debug/history/route.js +2 -2
  198. package/.next/standalone/.next/server/app/api/debug/history/route.js.nft.json +1 -1
  199. package/.next/standalone/.next/server/app/api/eval/config/backfill-routing/route.js +7 -6
  200. package/.next/standalone/.next/server/app/api/eval/config/backfill-routing/route.js.nft.json +1 -1
  201. package/.next/standalone/.next/server/app/api/eval/config/create/route.js +6 -5
  202. package/.next/standalone/.next/server/app/api/eval/config/create/route.js.nft.json +1 -1
  203. package/.next/standalone/.next/server/app/api/eval/config/reparse/route.js +5 -4
  204. package/.next/standalone/.next/server/app/api/eval/config/reparse/route.js.nft.json +1 -1
  205. package/.next/standalone/.next/server/app/api/eval/config/route.js +9 -8
  206. package/.next/standalone/.next/server/app/api/eval/config/route.js.nft.json +1 -1
  207. package/.next/standalone/.next/server/app/api/eval/config/status/route.js +3 -3
  208. package/.next/standalone/.next/server/app/api/eval/config/status/route.js.nft.json +1 -1
  209. package/.next/standalone/.next/server/app/api/eval/evaluation/route.js +1 -1
  210. package/.next/standalone/.next/server/app/api/eval/evaluation/route.js.nft.json +1 -1
  211. package/.next/standalone/.next/server/app/api/eval/rejudge/route.js +9 -8
  212. package/.next/standalone/.next/server/app/api/eval/rejudge/route.js.nft.json +1 -1
  213. package/.next/standalone/.next/server/app/api/eval/settings/route.js +4 -3
  214. package/.next/standalone/.next/server/app/api/eval/settings/route.js.nft.json +1 -1
  215. package/.next/standalone/.next/server/app/api/eval/settings/test/route.js +5 -4
  216. package/.next/standalone/.next/server/app/api/eval/settings/test/route.js.nft.json +1 -1
  217. package/.next/standalone/.next/server/app/api/eval/terminate-all/route.js +6 -5
  218. package/.next/standalone/.next/server/app/api/eval/terminate-all/route.js.nft.json +1 -1
  219. package/.next/standalone/.next/server/app/api/eval/trajectory/results/[id]/route.js +3 -3
  220. package/.next/standalone/.next/server/app/api/eval/trajectory/results/[id]/route.js.nft.json +1 -1
  221. package/.next/standalone/.next/server/app/api/eval/trajectory/results/route.js +6 -5
  222. package/.next/standalone/.next/server/app/api/eval/trajectory/results/route.js.nft.json +1 -1
  223. package/.next/standalone/.next/server/app/api/eval/trajectory/run/route.js +17 -16
  224. package/.next/standalone/.next/server/app/api/eval/trajectory/run/route.js.nft.json +1 -1
  225. package/.next/standalone/.next/server/app/api/eval/trajectory/runs/route.js +2 -2
  226. package/.next/standalone/.next/server/app/api/eval/trajectory/runs/route.js.nft.json +1 -1
  227. package/.next/standalone/.next/server/app/api/evaluation/[id]/route.js +6 -5
  228. package/.next/standalone/.next/server/app/api/evaluation/[id]/route.js.nft.json +1 -1
  229. package/.next/standalone/.next/server/app/api/evaluation/cancel/route.js +3 -3
  230. package/.next/standalone/.next/server/app/api/evaluation/cancel/route.js.nft.json +1 -1
  231. package/.next/standalone/.next/server/app/api/fault/diagnosis/session/route.js +2 -2
  232. package/.next/standalone/.next/server/app/api/fault/diagnosis/session/route.js.nft.json +1 -1
  233. package/.next/standalone/.next/server/app/api/fault/diagnosis/stream/route.js +6 -5
  234. package/.next/standalone/.next/server/app/api/fault/diagnosis/stream/route.js.nft.json +1 -1
  235. package/.next/standalone/.next/server/app/api/guide/route.js +3 -3
  236. package/.next/standalone/.next/server/app/api/guide/route.js.nft.json +1 -1
  237. package/.next/standalone/.next/server/app/api/ingest/opencode/session-complete/route.js +7 -6
  238. package/.next/standalone/.next/server/app/api/ingest/opencode/session-complete/route.js.nft.json +1 -1
  239. package/.next/standalone/.next/server/app/api/ingest/otel/v1/logs/route.js +2 -2
  240. package/.next/standalone/.next/server/app/api/ingest/otel/v1/logs/route.js.nft.json +1 -1
  241. package/.next/standalone/.next/server/app/api/ingest/otel/v1/metrics/route.js +5 -2
  242. package/.next/standalone/.next/server/app/api/ingest/otel/v1/metrics/route.js.nft.json +1 -1
  243. package/.next/standalone/.next/server/app/api/ingest/otel/v1/traces/route.js +9 -8
  244. package/.next/standalone/.next/server/app/api/ingest/otel/v1/traces/route.js.nft.json +1 -1
  245. package/.next/standalone/.next/server/app/api/ingest/proxy/[taskId]/[...path]/route.js +4 -3
  246. package/.next/standalone/.next/server/app/api/ingest/proxy/[taskId]/[...path]/route.js.nft.json +1 -1
  247. package/.next/standalone/.next/server/app/api/ingest/proxy/[taskId]/end/route.js +12 -11
  248. package/.next/standalone/.next/server/app/api/ingest/proxy/[taskId]/end/route.js.nft.json +1 -1
  249. package/.next/standalone/.next/server/app/api/ingest/proxy/[taskId]/start/route.js +3 -3
  250. package/.next/standalone/.next/server/app/api/ingest/proxy/[taskId]/start/route.js.nft.json +1 -1
  251. package/.next/standalone/.next/server/app/api/ingest/sync/manifest/route.js +3 -3
  252. package/.next/standalone/.next/server/app/api/ingest/sync/manifest/route.js.nft.json +1 -1
  253. package/.next/standalone/.next/server/app/api/ingest/sync/opencode/route.js +3 -3
  254. package/.next/standalone/.next/server/app/api/ingest/sync/opencode/route.js.nft.json +1 -1
  255. package/.next/standalone/.next/server/app/api/ingest/upload/route.js +14 -13
  256. package/.next/standalone/.next/server/app/api/ingest/upload/route.js.nft.json +1 -1
  257. package/.next/standalone/.next/server/app/api/observe/data/route.js +9 -8
  258. package/.next/standalone/.next/server/app/api/observe/data/route.js.nft.json +1 -1
  259. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/agent-debug/route.js +10 -9
  260. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/agent-debug/route.js.nft.json +1 -1
  261. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/agent-debug/skills-analysis/route.js +12 -11
  262. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/agent-debug/skills-analysis/route.js.nft.json +1 -1
  263. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/analyze-match/route.js +7 -6
  264. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/analyze-match/route.js.nft.json +1 -1
  265. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/infra/route/app-paths-manifest.json +3 -0
  266. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/infra/route/build-manifest.json +11 -0
  267. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/infra/route/server-reference-manifest.json +4 -0
  268. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/infra/route.js +9 -0
  269. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/infra/route.js.map +5 -0
  270. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/infra/route.js.nft.json +1 -0
  271. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/infra/route_client-reference-manifest.js +2 -0
  272. package/.next/standalone/.next/server/app/api/observe/infra/diagnose/route/app-paths-manifest.json +3 -0
  273. package/.next/standalone/.next/server/app/api/observe/infra/diagnose/route/build-manifest.json +11 -0
  274. package/.next/standalone/.next/server/app/api/observe/infra/diagnose/route/server-reference-manifest.json +4 -0
  275. package/.next/standalone/.next/server/app/api/observe/infra/diagnose/route.js +7 -0
  276. package/.next/standalone/.next/server/app/api/observe/infra/diagnose/route.js.map +5 -0
  277. package/.next/standalone/.next/server/app/api/observe/infra/diagnose/route.js.nft.json +1 -0
  278. package/.next/standalone/.next/server/app/api/observe/infra/diagnose/route_client-reference-manifest.js +2 -0
  279. package/.next/standalone/.next/server/app/api/observe/infra/history/route/app-paths-manifest.json +3 -0
  280. package/.next/standalone/.next/server/app/api/observe/infra/history/route/build-manifest.json +11 -0
  281. package/.next/standalone/.next/server/app/api/observe/infra/history/route/server-reference-manifest.json +4 -0
  282. package/.next/standalone/.next/server/app/api/observe/infra/history/route.js +8 -0
  283. package/.next/standalone/.next/server/app/api/observe/infra/history/route.js.map +5 -0
  284. package/.next/standalone/.next/server/app/api/observe/infra/history/route.js.nft.json +1 -0
  285. package/.next/standalone/.next/server/app/api/observe/infra/history/route_client-reference-manifest.js +2 -0
  286. package/.next/standalone/.next/server/app/api/observe/infra/poll/route/app-paths-manifest.json +3 -0
  287. package/.next/standalone/.next/server/app/api/observe/infra/poll/route/build-manifest.json +11 -0
  288. package/.next/standalone/.next/server/app/api/observe/infra/poll/route/server-reference-manifest.json +4 -0
  289. package/.next/standalone/.next/server/app/api/observe/infra/poll/route.js +8 -0
  290. package/.next/standalone/.next/server/app/api/observe/infra/poll/route.js.map +5 -0
  291. package/.next/standalone/.next/server/app/api/observe/infra/poll/route.js.nft.json +1 -0
  292. package/.next/standalone/.next/server/app/api/observe/infra/poll/route_client-reference-manifest.js +2 -0
  293. package/.next/standalone/.next/server/app/api/observe/infra/sources/derive/route/app-paths-manifest.json +3 -0
  294. package/.next/standalone/.next/server/app/api/observe/infra/sources/derive/route/build-manifest.json +11 -0
  295. package/.next/standalone/.next/server/app/api/observe/infra/sources/derive/route/server-reference-manifest.json +4 -0
  296. package/.next/standalone/.next/server/app/api/observe/infra/sources/derive/route.js +8 -0
  297. package/.next/standalone/.next/server/app/api/observe/infra/sources/derive/route.js.map +5 -0
  298. package/.next/standalone/.next/server/app/api/observe/infra/sources/derive/route.js.nft.json +1 -0
  299. package/.next/standalone/.next/server/app/api/observe/infra/sources/derive/route_client-reference-manifest.js +2 -0
  300. package/.next/standalone/.next/server/app/api/observe/infra/sources/overview/route/app-paths-manifest.json +3 -0
  301. package/.next/standalone/.next/server/app/api/observe/infra/sources/overview/route/build-manifest.json +11 -0
  302. package/.next/standalone/.next/server/app/api/observe/infra/sources/overview/route/server-reference-manifest.json +4 -0
  303. package/.next/standalone/.next/server/app/api/observe/infra/sources/overview/route.js +8 -0
  304. package/.next/standalone/.next/server/app/api/observe/infra/sources/overview/route.js.map +5 -0
  305. package/.next/standalone/.next/server/app/api/observe/infra/sources/overview/route.js.nft.json +1 -0
  306. package/.next/standalone/.next/server/app/api/observe/infra/sources/overview/route_client-reference-manifest.js +2 -0
  307. package/.next/standalone/.next/server/app/api/observe/infra/sources/route/app-paths-manifest.json +3 -0
  308. package/.next/standalone/.next/server/app/api/observe/infra/sources/route/build-manifest.json +11 -0
  309. package/.next/standalone/.next/server/app/api/observe/infra/sources/route/server-reference-manifest.json +4 -0
  310. package/.next/standalone/.next/server/app/api/observe/infra/sources/route.js +8 -0
  311. package/.next/standalone/.next/server/app/api/observe/infra/sources/route.js.map +5 -0
  312. package/.next/standalone/.next/server/app/api/observe/infra/sources/route.js.nft.json +1 -0
  313. package/.next/standalone/.next/server/app/api/observe/infra/sources/route_client-reference-manifest.js +2 -0
  314. package/.next/standalone/.next/server/app/api/observe/infra/sources/sessions/route/app-paths-manifest.json +3 -0
  315. package/.next/standalone/.next/server/app/api/observe/infra/sources/sessions/route/build-manifest.json +11 -0
  316. package/.next/standalone/.next/server/app/api/observe/infra/sources/sessions/route/server-reference-manifest.json +4 -0
  317. package/.next/standalone/.next/server/app/api/observe/infra/sources/sessions/route.js +8 -0
  318. package/.next/standalone/.next/server/app/api/observe/infra/sources/sessions/route.js.map +5 -0
  319. package/.next/standalone/.next/server/app/api/observe/infra/sources/sessions/route.js.nft.json +1 -0
  320. package/.next/standalone/.next/server/app/api/observe/infra/sources/sessions/route_client-reference-manifest.js +2 -0
  321. package/.next/standalone/.next/server/app/api/observe/infra/sources/test/route/app-paths-manifest.json +3 -0
  322. package/.next/standalone/.next/server/app/api/observe/infra/sources/test/route/build-manifest.json +11 -0
  323. package/.next/standalone/.next/server/app/api/observe/infra/sources/test/route/server-reference-manifest.json +4 -0
  324. package/.next/standalone/.next/server/app/api/observe/infra/sources/test/route.js +8 -0
  325. package/.next/standalone/.next/server/app/api/observe/infra/sources/test/route.js.map +5 -0
  326. package/.next/standalone/.next/server/app/api/observe/infra/sources/test/route.js.nft.json +1 -0
  327. package/.next/standalone/.next/server/app/api/observe/infra/sources/test/route_client-reference-manifest.js +2 -0
  328. package/.next/standalone/.next/server/app/api/observe/session/route.js +5 -4
  329. package/.next/standalone/.next/server/app/api/observe/session/route.js.nft.json +1 -1
  330. package/.next/standalone/.next/server/app/api/observe/task-stats/route.js +8 -7
  331. package/.next/standalone/.next/server/app/api/observe/task-stats/route.js.nft.json +1 -1
  332. package/.next/standalone/.next/server/app/api/public/otel/v1/traces/route/app-paths-manifest.json +3 -0
  333. package/.next/standalone/.next/server/app/api/public/otel/v1/traces/route/build-manifest.json +11 -0
  334. package/.next/standalone/.next/server/app/api/public/otel/v1/traces/route/server-reference-manifest.json +4 -0
  335. package/.next/standalone/.next/server/app/api/public/otel/v1/traces/route.js +17 -0
  336. package/.next/standalone/.next/server/app/api/public/otel/v1/traces/route.js.map +5 -0
  337. package/.next/standalone/.next/server/app/api/public/otel/v1/traces/route.js.nft.json +1 -0
  338. package/.next/standalone/.next/server/app/api/public/otel/v1/traces/route_client-reference-manifest.js +2 -0
  339. package/.next/standalone/.next/server/app/api/quality/agents/route.js +9 -8
  340. package/.next/standalone/.next/server/app/api/quality/agents/route.js.nft.json +1 -1
  341. package/.next/standalone/.next/server/app/api/quality/backfill/route.js +11 -10
  342. package/.next/standalone/.next/server/app/api/quality/backfill/route.js.nft.json +1 -1
  343. package/.next/standalone/.next/server/app/api/quality/executions/route.js +9 -8
  344. package/.next/standalone/.next/server/app/api/quality/executions/route.js.nft.json +1 -1
  345. package/.next/standalone/.next/server/app/api/quality/report/route.js +3 -3
  346. package/.next/standalone/.next/server/app/api/quality/report/route.js.nft.json +1 -1
  347. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/draft/route.js +7 -6
  348. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/draft/route.js.nft.json +1 -1
  349. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/route.js +3 -3
  350. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/route.js.nft.json +1 -1
  351. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/run/[runId]/cancel/route.js +2 -2
  352. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/run/[runId]/cancel/route.js.nft.json +1 -1
  353. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/run/route.js +8 -7
  354. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/run/route.js.nft.json +1 -1
  355. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/runs/route.js +3 -3
  356. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/runs/route.js.nft.json +1 -1
  357. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/upload/route.js +3 -3
  358. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/upload/route.js.nft.json +1 -1
  359. package/.next/standalone/.next/server/app/api/skill-generator/attachments/route.js +1 -1
  360. package/.next/standalone/.next/server/app/api/skill-generator/attachments/route.js.nft.json +1 -1
  361. package/.next/standalone/.next/server/app/api/skill-generator/chat/route.js +7 -6
  362. package/.next/standalone/.next/server/app/api/skill-generator/chat/route.js.nft.json +1 -1
  363. package/.next/standalone/.next/server/app/api/skill-generator/download/[sessionId]/route.js +3 -3
  364. package/.next/standalone/.next/server/app/api/skill-generator/download/[sessionId]/route.js.nft.json +1 -1
  365. package/.next/standalone/.next/server/app/api/skill-generator/files/content/route.js +1 -1
  366. package/.next/standalone/.next/server/app/api/skill-generator/files/content/route.js.nft.json +1 -1
  367. package/.next/standalone/.next/server/app/api/skill-generator/files/download/route.js +1 -1
  368. package/.next/standalone/.next/server/app/api/skill-generator/files/download/route.js.nft.json +1 -1
  369. package/.next/standalone/.next/server/app/api/skill-generator/files/info/route.js +1 -1
  370. package/.next/standalone/.next/server/app/api/skill-generator/files/info/route.js.nft.json +1 -1
  371. package/.next/standalone/.next/server/app/api/skill-generator/files/list/route.js +1 -1
  372. package/.next/standalone/.next/server/app/api/skill-generator/files/list/route.js.nft.json +1 -1
  373. package/.next/standalone/.next/server/app/api/skill-generator/sessions/[id]/route.js +2 -2
  374. package/.next/standalone/.next/server/app/api/skill-generator/sessions/[id]/route.js.nft.json +1 -1
  375. package/.next/standalone/.next/server/app/api/skill-generator/sessions/route.js +2 -2
  376. package/.next/standalone/.next/server/app/api/skill-generator/sessions/route.js.nft.json +1 -1
  377. package/.next/standalone/.next/server/app/api/skill-opt/chat/route.js +11 -10
  378. package/.next/standalone/.next/server/app/api/skill-opt/chat/route.js.nft.json +1 -1
  379. package/.next/standalone/.next/server/app/api/skill-opt/plan/items/[id]/route.js +3 -3
  380. package/.next/standalone/.next/server/app/api/skill-opt/plan/items/[id]/route.js.nft.json +1 -1
  381. package/.next/standalone/.next/server/app/api/skill-opt/plan/route.js +6 -5
  382. package/.next/standalone/.next/server/app/api/skill-opt/plan/route.js.nft.json +1 -1
  383. package/.next/standalone/.next/server/app/api/skill-opt/sessions/[id]/iterations/[draftNumber]/apply/route.js +8 -7
  384. package/.next/standalone/.next/server/app/api/skill-opt/sessions/[id]/iterations/[draftNumber]/apply/route.js.nft.json +1 -1
  385. package/.next/standalone/.next/server/app/api/skill-opt/sessions/[id]/iterations/route.js +2 -2
  386. package/.next/standalone/.next/server/app/api/skill-opt/sessions/[id]/iterations/route.js.nft.json +1 -1
  387. package/.next/standalone/.next/server/app/api/skill-opt/sessions/[id]/route.js +2 -2
  388. package/.next/standalone/.next/server/app/api/skill-opt/sessions/[id]/route.js.nft.json +1 -1
  389. package/.next/standalone/.next/server/app/api/skill-opt/sessions/route.js +2 -2
  390. package/.next/standalone/.next/server/app/api/skill-opt/sessions/route.js.nft.json +1 -1
  391. package/.next/standalone/.next/server/app/api/skills/[id]/activate/route.js +3 -3
  392. package/.next/standalone/.next/server/app/api/skills/[id]/activate/route.js.nft.json +1 -1
  393. package/.next/standalone/.next/server/app/api/skills/[id]/benchmark-generate/route.js +10 -9
  394. package/.next/standalone/.next/server/app/api/skills/[id]/benchmark-generate/route.js.nft.json +1 -1
  395. package/.next/standalone/.next/server/app/api/skills/[id]/runs/route.js +7 -6
  396. package/.next/standalone/.next/server/app/api/skills/[id]/runs/route.js.nft.json +1 -1
  397. package/.next/standalone/.next/server/app/api/skills/[id]/toggle/route.js +3 -3
  398. package/.next/standalone/.next/server/app/api/skills/[id]/toggle/route.js.nft.json +1 -1
  399. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/download/route.js +3 -3
  400. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/download/route.js.nft.json +1 -1
  401. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/evaluate/route.js +6 -5
  402. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/evaluate/route.js.nft.json +1 -1
  403. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/evaluation-summary/route.js +6 -5
  404. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/evaluation-summary/route.js.nft.json +1 -1
  405. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/files/[...path]/route.js +3 -3
  406. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/files/[...path]/route.js.nft.json +1 -1
  407. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/parse-flow/route.js +6 -5
  408. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/parse-flow/route.js.nft.json +1 -1
  409. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/route.js +3 -3
  410. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/route.js.nft.json +1 -1
  411. package/.next/standalone/.next/server/app/api/skills/[id]/versions/route.js +7 -6
  412. package/.next/standalone/.next/server/app/api/skills/[id]/versions/route.js.nft.json +1 -1
  413. package/.next/standalone/.next/server/app/api/skills/automation/import/route.js +6 -5
  414. package/.next/standalone/.next/server/app/api/skills/automation/import/route.js.nft.json +1 -1
  415. package/.next/standalone/.next/server/app/api/skills/automation/push/route.js +3 -3
  416. package/.next/standalone/.next/server/app/api/skills/automation/push/route.js.nft.json +1 -1
  417. package/.next/standalone/.next/server/app/api/skills/by-name/[name]/analysis-diagnosis/route.js +5 -4
  418. package/.next/standalone/.next/server/app/api/skills/by-name/[name]/analysis-diagnosis/route.js.nft.json +1 -1
  419. package/.next/standalone/.next/server/app/api/skills/by-name/[name]/optimization-points/resolve/route.js +2 -2
  420. package/.next/standalone/.next/server/app/api/skills/by-name/[name]/optimization-points/resolve/route.js.nft.json +1 -1
  421. package/.next/standalone/.next/server/app/api/skills/by-name/[name]/optimization-points/route.js +2 -2
  422. package/.next/standalone/.next/server/app/api/skills/by-name/[name]/optimization-points/route.js.nft.json +1 -1
  423. package/.next/standalone/.next/server/app/api/skills/by-name/route.js +3 -3
  424. package/.next/standalone/.next/server/app/api/skills/by-name/route.js.nft.json +1 -1
  425. package/.next/standalone/.next/server/app/api/skills/logs/route.js +7 -6
  426. package/.next/standalone/.next/server/app/api/skills/logs/route.js.nft.json +1 -1
  427. package/.next/standalone/.next/server/app/api/skills/publish/route.js +6 -5
  428. package/.next/standalone/.next/server/app/api/skills/publish/route.js.nft.json +1 -1
  429. package/.next/standalone/.next/server/app/api/skills/route.js +4 -4
  430. package/.next/standalone/.next/server/app/api/skills/route.js.nft.json +1 -1
  431. package/.next/standalone/.next/server/app/api/skills/sync-enterprise/route.js +3 -3
  432. package/.next/standalone/.next/server/app/api/skills/sync-enterprise/route.js.nft.json +1 -1
  433. package/.next/standalone/.next/server/app/api/skills/upload/route.js +7 -6
  434. package/.next/standalone/.next/server/app/api/skills/upload/route.js.nft.json +1 -1
  435. package/.next/standalone/.next/server/app/api/user-evaluators/route.js +3 -2
  436. package/.next/standalone/.next/server/app/api/user-evaluators/route.js.nft.json +1 -1
  437. package/.next/standalone/.next/server/app/dashboard.html +1 -1
  438. package/.next/standalone/.next/server/app/dashboard.rsc +5 -5
  439. package/.next/standalone/.next/server/app/dashboard.segments/!KG1haW4p/dashboard/__PAGE__.segment.rsc +2 -2
  440. package/.next/standalone/.next/server/app/dashboard.segments/!KG1haW4p/dashboard.segment.rsc +1 -1
  441. package/.next/standalone/.next/server/app/dashboard.segments/!KG1haW4p.segment.rsc +2 -2
  442. package/.next/standalone/.next/server/app/dashboard.segments/_full.segment.rsc +5 -5
  443. package/.next/standalone/.next/server/app/dashboard.segments/_head.segment.rsc +1 -1
  444. package/.next/standalone/.next/server/app/dashboard.segments/_index.segment.rsc +3 -3
  445. package/.next/standalone/.next/server/app/dashboard.segments/_tree.segment.rsc +2 -2
  446. package/.next/standalone/.next/server/app/dataset.html +1 -1
  447. package/.next/standalone/.next/server/app/dataset.rsc +5 -5
  448. package/.next/standalone/.next/server/app/dataset.segments/!KG1haW4p/dataset/__PAGE__.segment.rsc +2 -2
  449. package/.next/standalone/.next/server/app/dataset.segments/!KG1haW4p/dataset.segment.rsc +1 -1
  450. package/.next/standalone/.next/server/app/dataset.segments/!KG1haW4p.segment.rsc +2 -2
  451. package/.next/standalone/.next/server/app/dataset.segments/_full.segment.rsc +5 -5
  452. package/.next/standalone/.next/server/app/dataset.segments/_head.segment.rsc +1 -1
  453. package/.next/standalone/.next/server/app/dataset.segments/_index.segment.rsc +3 -3
  454. package/.next/standalone/.next/server/app/dataset.segments/_tree.segment.rsc +2 -2
  455. package/.next/standalone/.next/server/app/eval/trajectory.html +1 -1
  456. package/.next/standalone/.next/server/app/eval/trajectory.rsc +5 -5
  457. package/.next/standalone/.next/server/app/eval/trajectory.segments/!KG1haW4p/eval/trajectory/__PAGE__.segment.rsc +2 -2
  458. package/.next/standalone/.next/server/app/eval/trajectory.segments/!KG1haW4p/eval/trajectory.segment.rsc +1 -1
  459. package/.next/standalone/.next/server/app/eval/trajectory.segments/!KG1haW4p/eval.segment.rsc +1 -1
  460. package/.next/standalone/.next/server/app/eval/trajectory.segments/!KG1haW4p.segment.rsc +2 -2
  461. package/.next/standalone/.next/server/app/eval/trajectory.segments/_full.segment.rsc +5 -5
  462. package/.next/standalone/.next/server/app/eval/trajectory.segments/_head.segment.rsc +1 -1
  463. package/.next/standalone/.next/server/app/eval/trajectory.segments/_index.segment.rsc +3 -3
  464. package/.next/standalone/.next/server/app/eval/trajectory.segments/_tree.segment.rsc +2 -2
  465. package/.next/standalone/.next/server/app/eval.html +1 -1
  466. package/.next/standalone/.next/server/app/eval.rsc +5 -5
  467. package/.next/standalone/.next/server/app/eval.segments/!KG1haW4p/eval/__PAGE__.segment.rsc +2 -2
  468. package/.next/standalone/.next/server/app/eval.segments/!KG1haW4p/eval.segment.rsc +1 -1
  469. package/.next/standalone/.next/server/app/eval.segments/!KG1haW4p.segment.rsc +2 -2
  470. package/.next/standalone/.next/server/app/eval.segments/_full.segment.rsc +5 -5
  471. package/.next/standalone/.next/server/app/eval.segments/_head.segment.rsc +1 -1
  472. package/.next/standalone/.next/server/app/eval.segments/_index.segment.rsc +3 -3
  473. package/.next/standalone/.next/server/app/eval.segments/_tree.segment.rsc +2 -2
  474. package/.next/standalone/.next/server/app/fault.html +1 -1
  475. package/.next/standalone/.next/server/app/fault.rsc +5 -5
  476. package/.next/standalone/.next/server/app/fault.segments/!KG1haW4p/fault/__PAGE__.segment.rsc +2 -2
  477. package/.next/standalone/.next/server/app/fault.segments/!KG1haW4p/fault.segment.rsc +1 -1
  478. package/.next/standalone/.next/server/app/fault.segments/!KG1haW4p.segment.rsc +2 -2
  479. package/.next/standalone/.next/server/app/fault.segments/_full.segment.rsc +5 -5
  480. package/.next/standalone/.next/server/app/fault.segments/_head.segment.rsc +1 -1
  481. package/.next/standalone/.next/server/app/fault.segments/_index.segment.rsc +3 -3
  482. package/.next/standalone/.next/server/app/fault.segments/_tree.segment.rsc +2 -2
  483. package/.next/standalone/.next/server/app/index.html +1 -1
  484. package/.next/standalone/.next/server/app/index.rsc +3 -3
  485. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  486. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +3 -3
  487. package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
  488. package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +3 -3
  489. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  490. package/.next/standalone/.next/server/app/infra/sources.html +1 -0
  491. package/.next/standalone/.next/server/app/infra/sources.meta +17 -0
  492. package/.next/standalone/.next/server/app/infra/sources.rsc +22 -0
  493. package/.next/standalone/.next/server/app/infra/sources.segments/!KG1haW4p/infra/sources/__PAGE__.segment.rsc +9 -0
  494. package/.next/standalone/.next/server/app/infra/sources.segments/!KG1haW4p/infra/sources.segment.rsc +4 -0
  495. package/.next/standalone/.next/server/app/infra/sources.segments/!KG1haW4p/infra.segment.rsc +4 -0
  496. package/.next/standalone/.next/server/app/infra/sources.segments/!KG1haW4p.segment.rsc +7 -0
  497. package/.next/standalone/.next/server/app/infra/sources.segments/_full.segment.rsc +22 -0
  498. package/.next/standalone/.next/server/app/infra/sources.segments/_head.segment.rsc +6 -0
  499. package/.next/standalone/.next/server/app/infra/sources.segments/_index.segment.rsc +6 -0
  500. package/.next/standalone/.next/server/app/infra/sources.segments/_tree.segment.rsc +2 -0
  501. package/.next/standalone/.next/server/app/infra.html +1 -0
  502. package/.next/standalone/.next/server/app/infra.meta +16 -0
  503. package/.next/standalone/.next/server/app/infra.rsc +22 -0
  504. package/.next/standalone/.next/server/app/infra.segments/!KG1haW4p/infra/__PAGE__.segment.rsc +9 -0
  505. package/.next/standalone/.next/server/app/infra.segments/!KG1haW4p/infra.segment.rsc +4 -0
  506. package/.next/standalone/.next/server/app/infra.segments/!KG1haW4p.segment.rsc +7 -0
  507. package/.next/standalone/.next/server/app/infra.segments/_full.segment.rsc +22 -0
  508. package/.next/standalone/.next/server/app/infra.segments/_head.segment.rsc +6 -0
  509. package/.next/standalone/.next/server/app/infra.segments/_index.segment.rsc +6 -0
  510. package/.next/standalone/.next/server/app/infra.segments/_tree.segment.rsc +2 -0
  511. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  512. package/.next/standalone/.next/server/app/login.html +1 -1
  513. package/.next/standalone/.next/server/app/login.rsc +4 -4
  514. package/.next/standalone/.next/server/app/login.segments/_full.segment.rsc +4 -4
  515. package/.next/standalone/.next/server/app/login.segments/_head.segment.rsc +1 -1
  516. package/.next/standalone/.next/server/app/login.segments/_index.segment.rsc +3 -3
  517. package/.next/standalone/.next/server/app/login.segments/_tree.segment.rsc +2 -2
  518. package/.next/standalone/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  519. package/.next/standalone/.next/server/app/login.segments/login.segment.rsc +1 -1
  520. package/.next/standalone/.next/server/app/memory.html +1 -1
  521. package/.next/standalone/.next/server/app/memory.rsc +5 -5
  522. package/.next/standalone/.next/server/app/memory.segments/!KG1haW4p/memory/__PAGE__.segment.rsc +2 -2
  523. package/.next/standalone/.next/server/app/memory.segments/!KG1haW4p/memory.segment.rsc +1 -1
  524. package/.next/standalone/.next/server/app/memory.segments/!KG1haW4p.segment.rsc +2 -2
  525. package/.next/standalone/.next/server/app/memory.segments/_full.segment.rsc +5 -5
  526. package/.next/standalone/.next/server/app/memory.segments/_head.segment.rsc +1 -1
  527. package/.next/standalone/.next/server/app/memory.segments/_index.segment.rsc +3 -3
  528. package/.next/standalone/.next/server/app/memory.segments/_tree.segment.rsc +2 -2
  529. package/.next/standalone/.next/server/app/metrics.html +1 -1
  530. package/.next/standalone/.next/server/app/metrics.rsc +5 -5
  531. package/.next/standalone/.next/server/app/metrics.segments/!KG1haW4p/metrics/__PAGE__.segment.rsc +2 -2
  532. package/.next/standalone/.next/server/app/metrics.segments/!KG1haW4p/metrics.segment.rsc +1 -1
  533. package/.next/standalone/.next/server/app/metrics.segments/!KG1haW4p.segment.rsc +2 -2
  534. package/.next/standalone/.next/server/app/metrics.segments/_full.segment.rsc +5 -5
  535. package/.next/standalone/.next/server/app/metrics.segments/_head.segment.rsc +1 -1
  536. package/.next/standalone/.next/server/app/metrics.segments/_index.segment.rsc +3 -3
  537. package/.next/standalone/.next/server/app/metrics.segments/_tree.segment.rsc +2 -2
  538. package/.next/standalone/.next/server/app/modelconfig/registry.html +1 -1
  539. package/.next/standalone/.next/server/app/modelconfig/registry.rsc +5 -5
  540. package/.next/standalone/.next/server/app/modelconfig/registry.segments/!KG1haW4p/modelconfig/registry/__PAGE__.segment.rsc +2 -2
  541. package/.next/standalone/.next/server/app/modelconfig/registry.segments/!KG1haW4p/modelconfig/registry.segment.rsc +1 -1
  542. package/.next/standalone/.next/server/app/modelconfig/registry.segments/!KG1haW4p/modelconfig.segment.rsc +1 -1
  543. package/.next/standalone/.next/server/app/modelconfig/registry.segments/!KG1haW4p.segment.rsc +2 -2
  544. package/.next/standalone/.next/server/app/modelconfig/registry.segments/_full.segment.rsc +5 -5
  545. package/.next/standalone/.next/server/app/modelconfig/registry.segments/_head.segment.rsc +1 -1
  546. package/.next/standalone/.next/server/app/modelconfig/registry.segments/_index.segment.rsc +3 -3
  547. package/.next/standalone/.next/server/app/modelconfig/registry.segments/_tree.segment.rsc +2 -2
  548. package/.next/standalone/.next/server/app/modelconfig/web-search.html +1 -1
  549. package/.next/standalone/.next/server/app/modelconfig/web-search.rsc +5 -5
  550. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/!KG1haW4p/modelconfig/web-search/__PAGE__.segment.rsc +2 -2
  551. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/!KG1haW4p/modelconfig/web-search.segment.rsc +1 -1
  552. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/!KG1haW4p/modelconfig.segment.rsc +1 -1
  553. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/!KG1haW4p.segment.rsc +2 -2
  554. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/_full.segment.rsc +5 -5
  555. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/_head.segment.rsc +1 -1
  556. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/_index.segment.rsc +3 -3
  557. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/_tree.segment.rsc +2 -2
  558. package/.next/standalone/.next/server/app/modelconfig.html +1 -1
  559. package/.next/standalone/.next/server/app/modelconfig.rsc +4 -4
  560. package/.next/standalone/.next/server/app/modelconfig.segments/!KG1haW4p/modelconfig/__PAGE__.segment.rsc +1 -1
  561. package/.next/standalone/.next/server/app/modelconfig.segments/!KG1haW4p/modelconfig.segment.rsc +1 -1
  562. package/.next/standalone/.next/server/app/modelconfig.segments/!KG1haW4p.segment.rsc +2 -2
  563. package/.next/standalone/.next/server/app/modelconfig.segments/_full.segment.rsc +4 -4
  564. package/.next/standalone/.next/server/app/modelconfig.segments/_head.segment.rsc +1 -1
  565. package/.next/standalone/.next/server/app/modelconfig.segments/_index.segment.rsc +3 -3
  566. package/.next/standalone/.next/server/app/modelconfig.segments/_tree.segment.rsc +2 -2
  567. package/.next/standalone/.next/server/app/optapi.html +1 -1
  568. package/.next/standalone/.next/server/app/optapi.rsc +5 -5
  569. package/.next/standalone/.next/server/app/optapi.segments/!KG1haW4p/optapi/__PAGE__.segment.rsc +2 -2
  570. package/.next/standalone/.next/server/app/optapi.segments/!KG1haW4p/optapi.segment.rsc +1 -1
  571. package/.next/standalone/.next/server/app/optapi.segments/!KG1haW4p.segment.rsc +2 -2
  572. package/.next/standalone/.next/server/app/optapi.segments/_full.segment.rsc +5 -5
  573. package/.next/standalone/.next/server/app/optapi.segments/_head.segment.rsc +1 -1
  574. package/.next/standalone/.next/server/app/optapi.segments/_index.segment.rsc +3 -3
  575. package/.next/standalone/.next/server/app/optapi.segments/_tree.segment.rsc +2 -2
  576. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  577. package/.next/standalone/.next/server/app/quality.html +1 -1
  578. package/.next/standalone/.next/server/app/quality.rsc +10 -9
  579. package/.next/standalone/.next/server/app/quality.segments/!KG1haW4p/quality/__PAGE__.segment.rsc +2 -2
  580. package/.next/standalone/.next/server/app/quality.segments/!KG1haW4p/quality.segment.rsc +1 -1
  581. package/.next/standalone/.next/server/app/quality.segments/!KG1haW4p.segment.rsc +2 -2
  582. package/.next/standalone/.next/server/app/quality.segments/_full.segment.rsc +10 -9
  583. package/.next/standalone/.next/server/app/quality.segments/_head.segment.rsc +1 -1
  584. package/.next/standalone/.next/server/app/quality.segments/_index.segment.rsc +3 -3
  585. package/.next/standalone/.next/server/app/quality.segments/_tree.segment.rsc +2 -2
  586. package/.next/standalone/.next/server/app/security.html +1 -1
  587. package/.next/standalone/.next/server/app/security.rsc +5 -5
  588. package/.next/standalone/.next/server/app/security.segments/!KG1haW4p/security/__PAGE__.segment.rsc +2 -2
  589. package/.next/standalone/.next/server/app/security.segments/!KG1haW4p/security.segment.rsc +1 -1
  590. package/.next/standalone/.next/server/app/security.segments/!KG1haW4p.segment.rsc +2 -2
  591. package/.next/standalone/.next/server/app/security.segments/_full.segment.rsc +5 -5
  592. package/.next/standalone/.next/server/app/security.segments/_head.segment.rsc +1 -1
  593. package/.next/standalone/.next/server/app/security.segments/_index.segment.rsc +3 -3
  594. package/.next/standalone/.next/server/app/security.segments/_tree.segment.rsc +2 -2
  595. package/.next/standalone/.next/server/app/skill-detail/page_client-reference-manifest.js +1 -1
  596. package/.next/standalone/.next/server/app/skill-detail.html +1 -1
  597. package/.next/standalone/.next/server/app/skill-detail.rsc +4 -4
  598. package/.next/standalone/.next/server/app/skill-detail.segments/_full.segment.rsc +4 -4
  599. package/.next/standalone/.next/server/app/skill-detail.segments/_head.segment.rsc +1 -1
  600. package/.next/standalone/.next/server/app/skill-detail.segments/_index.segment.rsc +3 -3
  601. package/.next/standalone/.next/server/app/skill-detail.segments/_tree.segment.rsc +2 -2
  602. package/.next/standalone/.next/server/app/skill-detail.segments/skill-detail/__PAGE__.segment.rsc +2 -2
  603. package/.next/standalone/.next/server/app/skill-detail.segments/skill-detail.segment.rsc +1 -1
  604. package/.next/standalone/.next/server/app/skill-eval/grayscale.html +2 -2
  605. package/.next/standalone/.next/server/app/skill-eval/grayscale.rsc +7 -7
  606. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/!KG1haW4p/skill-eval/grayscale/__PAGE__.segment.rsc +2 -2
  607. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/!KG1haW4p/skill-eval/grayscale.segment.rsc +1 -1
  608. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/!KG1haW4p/skill-eval.segment.rsc +1 -1
  609. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/!KG1haW4p.segment.rsc +2 -2
  610. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/_full.segment.rsc +7 -7
  611. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/_head.segment.rsc +1 -1
  612. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/_index.segment.rsc +3 -3
  613. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/_tree.segment.rsc +2 -2
  614. package/.next/standalone/.next/server/app/skill-eval.html +1 -1
  615. package/.next/standalone/.next/server/app/skill-eval.rsc +7 -7
  616. package/.next/standalone/.next/server/app/skill-eval.segments/!KG1haW4p/skill-eval/__PAGE__.segment.rsc +2 -2
  617. package/.next/standalone/.next/server/app/skill-eval.segments/!KG1haW4p/skill-eval.segment.rsc +1 -1
  618. package/.next/standalone/.next/server/app/skill-eval.segments/!KG1haW4p.segment.rsc +2 -2
  619. package/.next/standalone/.next/server/app/skill-eval.segments/_full.segment.rsc +7 -7
  620. package/.next/standalone/.next/server/app/skill-eval.segments/_head.segment.rsc +1 -1
  621. package/.next/standalone/.next/server/app/skill-eval.segments/_index.segment.rsc +3 -3
  622. package/.next/standalone/.next/server/app/skill-eval.segments/_tree.segment.rsc +2 -2
  623. package/.next/standalone/.next/server/app/skill-generator.html +1 -1
  624. package/.next/standalone/.next/server/app/skill-generator.rsc +6 -6
  625. package/.next/standalone/.next/server/app/skill-generator.segments/!KG1haW4p/skill-generator/__PAGE__.segment.rsc +2 -2
  626. package/.next/standalone/.next/server/app/skill-generator.segments/!KG1haW4p/skill-generator.segment.rsc +1 -1
  627. package/.next/standalone/.next/server/app/skill-generator.segments/!KG1haW4p.segment.rsc +2 -2
  628. package/.next/standalone/.next/server/app/skill-generator.segments/_full.segment.rsc +6 -6
  629. package/.next/standalone/.next/server/app/skill-generator.segments/_head.segment.rsc +1 -1
  630. package/.next/standalone/.next/server/app/skill-generator.segments/_index.segment.rsc +3 -3
  631. package/.next/standalone/.next/server/app/skill-generator.segments/_tree.segment.rsc +2 -2
  632. package/.next/standalone/.next/server/app/skill-history.html +1 -1
  633. package/.next/standalone/.next/server/app/skill-history.rsc +18 -14
  634. package/.next/standalone/.next/server/app/skill-history.segments/!KG1haW4p/skill-history/__PAGE__.segment.rsc +2 -2
  635. package/.next/standalone/.next/server/app/skill-history.segments/!KG1haW4p/skill-history.segment.rsc +1 -1
  636. package/.next/standalone/.next/server/app/skill-history.segments/!KG1haW4p.segment.rsc +2 -2
  637. package/.next/standalone/.next/server/app/skill-history.segments/_full.segment.rsc +18 -14
  638. package/.next/standalone/.next/server/app/skill-history.segments/_head.segment.rsc +1 -1
  639. package/.next/standalone/.next/server/app/skill-history.segments/_index.segment.rsc +3 -3
  640. package/.next/standalone/.next/server/app/skill-history.segments/_tree.segment.rsc +2 -2
  641. package/.next/standalone/.next/server/app/skill-opt.html +1 -1
  642. package/.next/standalone/.next/server/app/skill-opt.rsc +5 -5
  643. package/.next/standalone/.next/server/app/skill-opt.segments/!KG1haW4p/skill-opt/__PAGE__.segment.rsc +2 -2
  644. package/.next/standalone/.next/server/app/skill-opt.segments/!KG1haW4p/skill-opt.segment.rsc +1 -1
  645. package/.next/standalone/.next/server/app/skill-opt.segments/!KG1haW4p.segment.rsc +2 -2
  646. package/.next/standalone/.next/server/app/skill-opt.segments/_full.segment.rsc +5 -5
  647. package/.next/standalone/.next/server/app/skill-opt.segments/_head.segment.rsc +1 -1
  648. package/.next/standalone/.next/server/app/skill-opt.segments/_index.segment.rsc +3 -3
  649. package/.next/standalone/.next/server/app/skill-opt.segments/_tree.segment.rsc +2 -2
  650. package/.next/standalone/.next/server/app/skill-release.html +1 -1
  651. package/.next/standalone/.next/server/app/skill-release.rsc +5 -5
  652. package/.next/standalone/.next/server/app/skill-release.segments/!KG1haW4p/skill-release/__PAGE__.segment.rsc +2 -2
  653. package/.next/standalone/.next/server/app/skill-release.segments/!KG1haW4p/skill-release.segment.rsc +1 -1
  654. package/.next/standalone/.next/server/app/skill-release.segments/!KG1haW4p.segment.rsc +2 -2
  655. package/.next/standalone/.next/server/app/skill-release.segments/_full.segment.rsc +5 -5
  656. package/.next/standalone/.next/server/app/skill-release.segments/_head.segment.rsc +1 -1
  657. package/.next/standalone/.next/server/app/skill-release.segments/_index.segment.rsc +3 -3
  658. package/.next/standalone/.next/server/app/skill-release.segments/_tree.segment.rsc +2 -2
  659. package/.next/standalone/.next/server/app/skills.html +1 -1
  660. package/.next/standalone/.next/server/app/skills.rsc +5 -5
  661. package/.next/standalone/.next/server/app/skills.segments/!KG1haW4p/skills/__PAGE__.segment.rsc +2 -2
  662. package/.next/standalone/.next/server/app/skills.segments/!KG1haW4p/skills.segment.rsc +1 -1
  663. package/.next/standalone/.next/server/app/skills.segments/!KG1haW4p.segment.rsc +2 -2
  664. package/.next/standalone/.next/server/app/skills.segments/_full.segment.rsc +5 -5
  665. package/.next/standalone/.next/server/app/skills.segments/_head.segment.rsc +1 -1
  666. package/.next/standalone/.next/server/app/skills.segments/_index.segment.rsc +3 -3
  667. package/.next/standalone/.next/server/app/skills.segments/_tree.segment.rsc +2 -2
  668. package/.next/standalone/.next/server/app/trace.html +1 -1
  669. package/.next/standalone/.next/server/app/trace.rsc +20 -17
  670. package/.next/standalone/.next/server/app/trace.segments/!KG1haW4p/trace/__PAGE__.segment.rsc +2 -2
  671. package/.next/standalone/.next/server/app/trace.segments/!KG1haW4p/trace.segment.rsc +1 -1
  672. package/.next/standalone/.next/server/app/trace.segments/!KG1haW4p.segment.rsc +2 -2
  673. package/.next/standalone/.next/server/app/trace.segments/_full.segment.rsc +20 -17
  674. package/.next/standalone/.next/server/app/trace.segments/_head.segment.rsc +1 -1
  675. package/.next/standalone/.next/server/app/trace.segments/_index.segment.rsc +3 -3
  676. package/.next/standalone/.next/server/app/trace.segments/_tree.segment.rsc +2 -2
  677. package/.next/standalone/.next/server/app-paths-manifest.json +13 -0
  678. package/.next/standalone/.next/server/chunks/[externals]__9fdb9c7d._.js +3 -0
  679. package/.next/standalone/.next/server/chunks/[root-of-the-server]__006f015e._.js +3 -0
  680. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0267beef._.js +3 -0
  681. package/.next/standalone/.next/server/chunks/[root-of-the-server]__02c8a296._.js +3 -0
  682. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__fe35f136._.js → [root-of-the-server]__040c0eb8._.js} +2 -2
  683. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0984a1fa._.js +3 -0
  684. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0e446f5e._.js +3 -0
  685. package/.next/standalone/.next/server/chunks/[root-of-the-server]__10150e61._.js +5 -0
  686. package/.next/standalone/.next/server/chunks/[root-of-the-server]__10dc192b._.js +3 -0
  687. package/.next/standalone/.next/server/chunks/[root-of-the-server]__12f2f819._.js +3 -0
  688. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1307c1ad._.js +3 -0
  689. package/.next/standalone/.next/server/chunks/[root-of-the-server]__13eb0d25._.js +3 -0
  690. package/.next/standalone/.next/server/chunks/[root-of-the-server]__146d0997._.js +3 -0
  691. package/.next/standalone/.next/server/chunks/[root-of-the-server]__14f6c06c._.js +3 -0
  692. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1596a789._.js +1 -1
  693. package/.next/standalone/.next/server/chunks/[root-of-the-server]__170fbfb7._.js +5 -0
  694. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1917f41f._.js +3 -0
  695. package/.next/standalone/.next/server/chunks/[root-of-the-server]__19f66254._.js +3 -0
  696. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1dac3981._.js +3 -0
  697. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__46adf712._.js → [root-of-the-server]__1e4ede06._.js} +2 -2
  698. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__32ce67c7._.js → [root-of-the-server]__1eb9a6ee._.js} +2 -2
  699. package/.next/standalone/.next/server/chunks/[root-of-the-server]__27ca3a21._.js +3 -0
  700. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2b6716cd._.js +3 -0
  701. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2b7f3823._.js +3 -0
  702. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2d398403._.js +3 -0
  703. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2dd8ff54._.js +3 -0
  704. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2ec78f3e._.js +3 -0
  705. package/.next/standalone/.next/server/chunks/[root-of-the-server]__31f85657._.js +3 -0
  706. package/.next/standalone/.next/server/chunks/[root-of-the-server]__379129ab._.js +3 -0
  707. package/.next/standalone/.next/server/chunks/[root-of-the-server]__39dd5a92._.js +3 -0
  708. package/.next/standalone/.next/server/chunks/[root-of-the-server]__3a70614f._.js +3 -0
  709. package/.next/standalone/.next/server/chunks/[root-of-the-server]__3d91ff40._.js +3 -0
  710. package/.next/standalone/.next/server/chunks/[root-of-the-server]__4299e672._.js +3 -0
  711. package/.next/standalone/.next/server/chunks/[root-of-the-server]__43edd917._.js +3 -0
  712. package/.next/standalone/.next/server/chunks/[root-of-the-server]__44e72985._.js +5 -0
  713. package/.next/standalone/.next/server/chunks/[root-of-the-server]__49fe2c7e._.js +3 -0
  714. package/.next/standalone/.next/server/chunks/[root-of-the-server]__4a0ac677._.js +3 -0
  715. package/.next/standalone/.next/server/chunks/[root-of-the-server]__4ce39c11._.js +3 -0
  716. package/.next/standalone/.next/server/chunks/[root-of-the-server]__4fa7606a._.js +3 -0
  717. package/.next/standalone/.next/server/chunks/[root-of-the-server]__528e2fde._.js +3 -0
  718. package/.next/standalone/.next/server/chunks/[root-of-the-server]__592b8090._.js +3 -0
  719. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__19ede63b._.js → [root-of-the-server]__626d0308._.js} +2 -2
  720. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__b74d3160._.js → [root-of-the-server]__65c43993._.js} +2 -2
  721. package/.next/standalone/.next/server/chunks/[root-of-the-server]__67c69839._.js +3 -0
  722. package/.next/standalone/.next/server/chunks/[root-of-the-server]__682d0ba0._.js +3 -0
  723. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6b22780d._.js +3 -0
  724. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6c350697._.js +3 -0
  725. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6d948bdc._.js +3 -0
  726. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6ecfaae0._.js +5 -0
  727. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6fafd86f._.js +3 -0
  728. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6fe0c73e._.js +3 -0
  729. package/.next/standalone/.next/server/chunks/[root-of-the-server]__70f19ec4._.js +3 -0
  730. package/.next/standalone/.next/server/chunks/[root-of-the-server]__7582bf4c._.js +3 -0
  731. package/.next/standalone/.next/server/chunks/[root-of-the-server]__79ada3fa._.js +3 -0
  732. package/.next/standalone/.next/server/chunks/[root-of-the-server]__85a7678b._.js +3 -0
  733. package/.next/standalone/.next/server/chunks/[root-of-the-server]__85c943bd._.js +6 -0
  734. package/.next/standalone/.next/server/chunks/[root-of-the-server]__87677b37._.js +3 -0
  735. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__8af85028._.js → [root-of-the-server]__892e3377._.js} +2 -2
  736. package/.next/standalone/.next/server/chunks/[root-of-the-server]__8ab933cd._.js +3 -0
  737. package/.next/standalone/.next/server/chunks/[root-of-the-server]__930e22bb._.js +7 -0
  738. package/.next/standalone/.next/server/chunks/[root-of-the-server]__93970ae1._.js +3 -3
  739. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__1fb9a578._.js → [root-of-the-server]__968974bd._.js} +2 -2
  740. package/.next/standalone/.next/server/chunks/[root-of-the-server]__97045cfa._.js +3 -0
  741. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__d62326e3._.js → [root-of-the-server]__970b099f._.js} +2 -2
  742. package/.next/standalone/.next/server/chunks/[root-of-the-server]__99ad309a._.js +3 -0
  743. package/.next/standalone/.next/server/chunks/[root-of-the-server]__99c6aa2d._.js +13 -0
  744. package/.next/standalone/.next/server/chunks/[root-of-the-server]__9f278f61._.js +3 -0
  745. package/.next/standalone/.next/server/chunks/[root-of-the-server]__9fd05c54._.js +3 -0
  746. package/.next/standalone/.next/server/chunks/[root-of-the-server]__a1182ad1._.js +3 -0
  747. package/.next/standalone/.next/server/chunks/[root-of-the-server]__a51b64ae._.js +3 -0
  748. package/.next/standalone/.next/server/chunks/[root-of-the-server]__a6900486._.js +3 -0
  749. package/.next/standalone/.next/server/chunks/[root-of-the-server]__a7a740bb._.js +3 -0
  750. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ad4b402b._.js +3 -0
  751. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ad9bbfad._.js +3 -0
  752. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b238a277._.js +3 -0
  753. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b4b7e8ef._.js +3 -0
  754. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b7f142c3._.js +3 -0
  755. package/.next/standalone/.next/server/chunks/[root-of-the-server]__bac6c232._.js +3 -0
  756. package/.next/standalone/.next/server/chunks/[root-of-the-server]__bb4f4492._.js +3 -0
  757. package/.next/standalone/.next/server/chunks/[root-of-the-server]__bc21598f._.js +3 -0
  758. package/.next/standalone/.next/server/chunks/[root-of-the-server]__beb32ef1._.js +3 -0
  759. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c10b74c1._.js +3 -0
  760. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c12d7aad._.js +3 -0
  761. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c16c84b6._.js +5 -0
  762. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c8611482._.js +3 -0
  763. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ceb630e2._.js +3 -0
  764. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ced5e5ca._.js +3 -0
  765. package/.next/standalone/.next/server/chunks/[root-of-the-server]__cedc21b1._.js +3 -0
  766. package/.next/standalone/.next/server/chunks/[root-of-the-server]__d178c81c._.js +3 -0
  767. package/.next/standalone/.next/server/chunks/[root-of-the-server]__d80a36e0._.js +3 -0
  768. package/.next/standalone/.next/server/chunks/[root-of-the-server]__d8e819a1._.js +3 -0
  769. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e0e69916._.js +3 -0
  770. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e84bc7ce._.js +3 -0
  771. package/.next/standalone/.next/server/chunks/[root-of-the-server]__edf01394._.js +3 -0
  772. package/.next/standalone/.next/server/chunks/[root-of-the-server]__fd09870b._.js +3 -0
  773. package/.next/standalone/.next/server/chunks/_048f2013._.js +1 -1
  774. package/.next/standalone/.next/server/chunks/_05c80664._.js +1 -1
  775. package/.next/standalone/.next/server/chunks/_08c6dd4c._.js +3 -3
  776. package/.next/standalone/.next/server/chunks/{_5041b697._.js → _1a32fa23._.js} +2 -2
  777. package/.next/standalone/.next/server/chunks/_28b9b733._.js +32 -0
  778. package/.next/standalone/.next/server/chunks/_2ac292b0._.js +1 -1
  779. package/.next/standalone/.next/server/chunks/_3f71c366._.js +4 -4
  780. package/.next/standalone/.next/server/chunks/_40f80932._.js +3 -0
  781. package/.next/standalone/.next/server/chunks/{_0ea4c12b._.js → _45a619b0._.js} +1 -1
  782. package/.next/standalone/.next/server/chunks/_49e36e44._.js +1 -1
  783. package/.next/standalone/.next/server/chunks/_4ec439ea._.js +3 -3
  784. package/.next/standalone/.next/server/chunks/_4ffe9f62._.js +3 -0
  785. package/.next/standalone/.next/server/chunks/{_19441465._.js → _547fcde4._.js} +2 -2
  786. package/.next/standalone/.next/server/chunks/_5936e19d._.js +3 -0
  787. package/.next/standalone/.next/server/chunks/_6842a9ba._.js +1 -1
  788. package/.next/standalone/.next/server/chunks/{_bc01feba._.js → _68685b8c._.js} +7 -7
  789. package/.next/standalone/.next/server/chunks/_694f4232._.js +3 -0
  790. package/.next/standalone/.next/server/chunks/_6ed9d796._.js +4 -4
  791. package/.next/standalone/.next/server/chunks/_78078171._.js +3 -0
  792. package/.next/standalone/.next/server/chunks/_78c6471e._.js +1 -1
  793. package/.next/standalone/.next/server/chunks/_8603f9ca._.js +1 -1
  794. package/.next/standalone/.next/server/chunks/_89a3536c._.js +1 -1
  795. package/.next/standalone/.next/server/chunks/_a2ff108d._.js +1 -1
  796. package/.next/standalone/.next/server/chunks/_a305d8b8._.js +3 -3
  797. package/.next/standalone/.next/server/chunks/_adf9e9c5._.js +1 -1
  798. package/.next/standalone/.next/server/chunks/_b30c2ca8._.js +1 -1
  799. package/.next/standalone/.next/server/chunks/{_cdaee29d._.js → _c707acf8._.js} +2 -2
  800. package/.next/standalone/.next/server/chunks/_d0e3dc8c._.js +1 -1
  801. package/.next/standalone/.next/server/chunks/_d4d51026._.js +1 -1
  802. package/.next/standalone/.next/server/chunks/_d5fd7ab4._.js +3 -0
  803. package/.next/standalone/.next/server/chunks/_d8e04766._.js +1 -1
  804. package/.next/standalone/.next/server/chunks/_e0cf0d37._.js +3 -0
  805. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_observe_infra_diagnose_route_actions_31275b71.js +3 -0
  806. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_observe_infra_history_route_actions_2e62a90f.js +3 -0
  807. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_observe_infra_poll_route_actions_e79f2641.js +3 -0
  808. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_observe_infra_sources_route_actions_0b142b73.js +3 -0
  809. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_observe_infra_sources_test_route_actions_1d51e227.js +3 -0
  810. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_public_otel_v1_traces_route_actions_c13e2c65.js +3 -0
  811. package/.next/standalone/.next/server/chunks/ce889_server_app_api_observe_executions_[executionId]_infra_route_actions_0e9e320e.js +3 -0
  812. package/.next/standalone/.next/server/chunks/ce889_server_app_api_observe_infra_sources_derive_route_actions_4888b1cf.js +3 -0
  813. package/.next/standalone/.next/server/chunks/ce889_server_app_api_observe_infra_sources_overview_route_actions_e027c8e7.js +3 -0
  814. package/.next/standalone/.next/server/chunks/ce889_server_app_api_observe_infra_sources_sessions_route_actions_9005a00a.js +3 -0
  815. package/.next/standalone/.next/server/chunks/{src_49f0d71c._.js → src_08719fbb._.js} +2 -2
  816. package/.next/standalone/.next/server/chunks/src_34fb142e._.js +4 -4
  817. package/.next/standalone/.next/server/chunks/src_4fe54147._.js +1 -1
  818. package/.next/standalone/.next/server/chunks/src_9c08bd78._.js +1 -1
  819. package/.next/standalone/.next/server/chunks/src_lib_7bae418f._.js +1 -1
  820. package/.next/standalone/.next/server/chunks/src_lib_84cf46e8._.js +3 -0
  821. package/.next/standalone/.next/server/chunks/src_lib_9cf1dab3._.js +29 -0
  822. package/.next/standalone/.next/server/chunks/src_lib_a2a34aa6._.js +7 -7
  823. package/.next/standalone/.next/server/chunks/src_lib_engine_general-agent_970b1dfe._.js +2 -2
  824. package/.next/standalone/.next/server/chunks/src_lib_engine_skill-generation_opencode-agent-cli_opencode-manager_ts_94c7d385._.js +3 -3
  825. package/.next/standalone/.next/server/chunks/src_lib_engine_skill-issues_static-evaluator_5e9f2d8a._.js +4 -4
  826. package/.next/standalone/.next/server/chunks/src_lib_f12f8b56._.js +32 -0
  827. package/.next/standalone/.next/server/chunks/{src_lib_bc5e5c04._.js → src_lib_fca90805._.js} +1 -1
  828. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__15099475._.js +3 -0
  829. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__15600e29._.js +1 -1
  830. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__2505addc._.js +3 -0
  831. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__30536471._.js +3 -0
  832. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__ad69e0c0._.js +3 -0
  833. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__920fa087._.js → [root-of-the-server]__c9cf8076._.js} +2 -2
  834. package/.next/standalone/.next/server/chunks/ssr/_0141e5c7._.js +1 -1
  835. package/.next/standalone/.next/server/chunks/ssr/_0acdaaae._.js +3 -0
  836. package/.next/standalone/.next/server/chunks/ssr/_0d3145ea._.js +3 -0
  837. package/.next/standalone/.next/server/chunks/ssr/_1568477b._.js +3 -0
  838. package/.next/standalone/.next/server/chunks/ssr/_1f67a52d._.js +4 -0
  839. package/.next/standalone/.next/server/chunks/ssr/_231821bd._.js +1 -1
  840. package/.next/standalone/.next/server/chunks/ssr/_23385550._.js +1 -1
  841. package/.next/standalone/.next/server/chunks/ssr/_2534caac._.js +3 -0
  842. package/.next/standalone/.next/server/chunks/ssr/_3b019a38._.js +3 -0
  843. package/.next/standalone/.next/server/chunks/ssr/_44e49071._.js +4 -0
  844. package/.next/standalone/.next/server/chunks/ssr/_4796bd79._.js +1 -1
  845. package/.next/standalone/.next/server/chunks/ssr/_4b46054f._.js +3 -0
  846. package/.next/standalone/.next/server/chunks/ssr/_5d1986bf._.js +3 -0
  847. package/.next/standalone/.next/server/chunks/ssr/_5d1f8671._.js +12 -0
  848. package/.next/standalone/.next/server/chunks/ssr/_5e0dfc4e._.js +1 -1
  849. package/.next/standalone/.next/server/chunks/ssr/_5ea9f29c._.js +1 -1
  850. package/.next/standalone/.next/server/chunks/ssr/_640e1d24._.js +3 -0
  851. package/.next/standalone/.next/server/chunks/ssr/_70e4bd42._.js +3 -0
  852. package/.next/standalone/.next/server/chunks/ssr/_8bba8b8d._.js +1 -1
  853. package/.next/standalone/.next/server/chunks/ssr/_96725836._.js +12 -0
  854. package/.next/standalone/.next/server/chunks/ssr/_a8c793c2._.js +3 -0
  855. package/.next/standalone/.next/server/chunks/ssr/_aab048d0._.js +1 -1
  856. package/.next/standalone/.next/server/chunks/ssr/_aab6dc4c._.js +3 -0
  857. package/.next/standalone/.next/server/chunks/ssr/_aea60571._.js +1 -1
  858. package/.next/standalone/.next/server/chunks/ssr/_c16d64b3._.js +1 -1
  859. package/.next/standalone/.next/server/chunks/ssr/_cebf2190._.js +1 -1
  860. package/.next/standalone/.next/server/chunks/ssr/_cfe5178e._.js +1 -1
  861. package/.next/standalone/.next/server/chunks/ssr/_fc22c215._.js +4 -0
  862. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_(main)_infra_page_actions_df5e07da.js +3 -0
  863. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_(main)_infra_source_[id]_page_actions_3d61ac95.js +3 -0
  864. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_(main)_infra_sources_page_actions_135a5ab7.js +3 -0
  865. package/.next/standalone/.next/server/chunks/ssr/node_modules_1d12ce21._.js +3 -0
  866. package/.next/standalone/.next/server/chunks/ssr/node_modules_23404e09._.js +3 -0
  867. package/.next/standalone/.next/server/chunks/ssr/{node_modules_6d029f8e._.js → node_modules_278cdc27._.js} +2 -2
  868. package/.next/standalone/.next/server/chunks/ssr/node_modules_285bde65._.js +17 -0
  869. package/.next/standalone/.next/server/chunks/ssr/node_modules_32b85991._.js +3 -0
  870. package/.next/standalone/.next/server/chunks/ssr/node_modules_35a4a3d2._.js +3 -0
  871. package/.next/standalone/.next/server/chunks/ssr/node_modules_37be0399._.js +3 -0
  872. package/.next/standalone/.next/server/chunks/ssr/node_modules_55cbf86b._.js +17 -0
  873. package/.next/standalone/.next/server/chunks/ssr/node_modules_5f7174a8._.js +3 -0
  874. package/.next/standalone/.next/server/chunks/ssr/node_modules_778a153f._.js +3 -0
  875. package/.next/standalone/.next/server/chunks/ssr/node_modules_7e6a708b._.js +3 -0
  876. package/.next/standalone/.next/server/chunks/ssr/node_modules_855a50c1._.js +3 -0
  877. package/.next/standalone/.next/server/chunks/ssr/node_modules_878c20b4._.js +3 -0
  878. package/.next/standalone/.next/server/chunks/ssr/node_modules_9b301091._.js +24 -0
  879. package/.next/standalone/.next/server/chunks/ssr/node_modules_b3078440._.js +3 -0
  880. package/.next/standalone/.next/server/chunks/ssr/node_modules_b3fd4e7e._.js +17 -0
  881. package/.next/standalone/.next/server/chunks/ssr/node_modules_c0554e87._.js +3 -0
  882. package/.next/standalone/.next/server/chunks/ssr/node_modules_cfcb6a3a._.js +3 -0
  883. package/.next/standalone/.next/server/chunks/ssr/node_modules_da0a7049._.js +3 -0
  884. package/.next/standalone/.next/server/chunks/ssr/node_modules_e0cd63d9._.js +17 -0
  885. package/.next/standalone/.next/server/chunks/ssr/{node_modules_lucide-react_dist_esm_icons_f712a172._.js → node_modules_lucide-react_dist_esm_icons_f1e06ad8._.js} +2 -2
  886. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_9774470f._.js +1 -1
  887. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_45780354.js +1 -1
  888. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_15817684.js +1 -1
  889. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_accessconfig_install_page_tsx_6f4ef3fc._.js +3 -1
  890. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_infra_source_[id]_page_tsx_b48521fc._.js +19 -0
  891. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_modelconfig_registry_page_tsx_1ead2fd4._.js +1 -1
  892. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_quality_page_tsx_26bb8e80._.js +3 -0
  893. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_trace_page_tsx_41e7865d._.js +1 -1
  894. package/.next/standalone/.next/server/chunks/ssr/src_lib_client_locale-context_tsx_7184d9aa._.js +1 -1
  895. package/.next/standalone/.next/server/pages/404.html +1 -1
  896. package/.next/standalone/.next/server/pages/500.html +2 -2
  897. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  898. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  899. package/.next/standalone/.next/static/chunks/012f27d0d790dc0f.js +1 -0
  900. package/.next/standalone/.next/static/chunks/07b2d7e6b58603c1.js +1 -0
  901. package/.next/standalone/.next/static/chunks/1626d47d4b84fc8b.js +1 -0
  902. package/.next/standalone/.next/static/chunks/175e0609137d7eed.js +1 -0
  903. package/.next/standalone/.next/static/chunks/1aa5156b12972154.js +1 -0
  904. package/.next/standalone/.next/static/chunks/2dc7fabb2f12bf39.js +1 -0
  905. package/.next/{static/chunks/819be4f6dc602b73.js → standalone/.next/static/chunks/3d040755d3686976.js} +1 -1
  906. package/.next/standalone/.next/static/chunks/466edc01ad624a7e.js +1 -0
  907. package/.next/standalone/.next/static/chunks/48fba91726a41a66.js +1 -0
  908. package/.next/standalone/.next/static/chunks/5c301dcc3995f72c.js +1 -0
  909. package/.next/standalone/.next/static/chunks/60f3a73e9fa6c625.js +1 -0
  910. package/.next/standalone/.next/static/chunks/61003f0aededf3d6.js +1 -0
  911. package/.next/{static/chunks/f08011a9c5cd16a6.js → standalone/.next/static/chunks/6238734a2f04b1f9.js} +1 -1
  912. package/.next/standalone/.next/static/chunks/{314eea8ce9b18ba1.js → 66de628824ded594.js} +1 -1
  913. package/.next/standalone/.next/static/chunks/6f6e529cc8a0535d.js +1 -0
  914. package/.next/standalone/.next/static/chunks/747a8d06793299fa.js +1 -0
  915. package/.next/standalone/.next/static/chunks/755c604ba44e0e9b.js +1 -0
  916. package/.next/standalone/.next/static/chunks/76a6d562e6507740.js +1 -0
  917. package/.next/standalone/.next/static/chunks/77a10bcb350555d9.js +1 -0
  918. package/.next/standalone/.next/static/chunks/7837bb465385ecd8.js +1 -0
  919. package/.next/standalone/.next/static/chunks/7dc8bfae4aed86c2.js +1 -0
  920. package/.next/{static/chunks/264991644d73270c.js → standalone/.next/static/chunks/80f28b2193bf35d3.js} +1 -1
  921. package/.next/standalone/.next/static/chunks/85f356e3e23b09ab.js +1 -0
  922. package/.next/standalone/.next/static/chunks/{3e55642a8eb5ba23.js → 8754e0cf40813330.js} +1 -1
  923. package/.next/{static/chunks/5d0423a5cf33f34e.js → standalone/.next/static/chunks/8dff7ffbfcc5cc39.js} +1 -1
  924. package/.next/standalone/.next/static/chunks/{f2228519196f8f44.js → 9155a6c07dc0502d.js} +2 -2
  925. package/.next/standalone/.next/static/chunks/96823b122a037ed1.js +1 -0
  926. package/.next/standalone/.next/static/chunks/96c7e2e47438553a.js +1 -0
  927. package/.next/standalone/.next/static/chunks/9adb155358e88cb2.js +1 -0
  928. package/.next/standalone/.next/static/chunks/a31bf4e176b5e90c.js +3 -0
  929. package/.next/standalone/.next/static/chunks/a534005e8a8ec626.js +1 -0
  930. package/.next/standalone/.next/static/chunks/aa2b0b8c9ed6b185.js +2 -0
  931. package/.next/standalone/.next/static/chunks/b0fb37ef626a34a0.js +1 -0
  932. package/.next/standalone/.next/static/chunks/c1a9ea80807777b8.js +10 -0
  933. package/.next/standalone/.next/static/chunks/c7e8296357638830.js +1 -0
  934. package/.next/standalone/.next/static/chunks/cc6c6efcf6de727b.js +17 -0
  935. package/.next/standalone/.next/static/chunks/d6af33336f13dd65.js +1 -0
  936. package/.next/standalone/.next/static/chunks/d7ff390550d8ae02.js +1 -0
  937. package/.next/standalone/.next/static/chunks/d91c2c0bbe0b59ab.js +1 -0
  938. package/.next/standalone/.next/static/chunks/daad76cdc09960bb.js +10 -0
  939. package/.next/{static/chunks/e396958d5e8ecaf8.js → standalone/.next/static/chunks/dc22f906bd43e9a3.js} +3 -3
  940. package/.next/standalone/.next/static/chunks/e159d293fc72e91b.css +1 -0
  941. package/.next/standalone/.next/static/chunks/e6bdd7840d3e35e8.js +1 -0
  942. package/.next/standalone/.next/static/chunks/e8b69a66912006d0.js +1 -0
  943. package/.next/standalone/.next/static/chunks/eb6a581f1851670e.js +1 -0
  944. package/.next/standalone/.next/static/chunks/fc00d1dd80dd9357.js +1 -0
  945. package/.next/standalone/.opencode/bun.lock +18 -0
  946. package/.next/standalone/.opencode/package.json +5 -0
  947. package/.next/standalone/Dockerfile +1 -0
  948. package/.next/standalone/RELEASE.md +6 -0
  949. package/.next/standalone/node_modules/.prisma/client/edge.js +43 -4
  950. package/.next/standalone/node_modules/.prisma/client/index-browser.js +40 -1
  951. package/.next/standalone/node_modules/.prisma/client/index.js +43 -4
  952. package/.next/standalone/node_modules/.prisma/client/package.json +1 -1
  953. package/.next/standalone/node_modules/.prisma/client/schema.prisma +53 -0
  954. package/.next/standalone/node_modules/.prisma/client/wasm.js +40 -1
  955. package/.next/standalone/package.json +1 -1
  956. package/.next/standalone/prisma/schema.prisma +53 -0
  957. package/.next/standalone/scripts/__pycache__/hermes_agent_insight_plugin.cpython-312.pyc +0 -0
  958. package/.next/standalone/scripts/dryrun_readrecords_batched.ts +3 -2
  959. package/.next/standalone/scripts/infra-vllm-loadcheck.ts +84 -0
  960. package/.next/standalone/scripts/infra-vllm-probe.ts +57 -0
  961. package/.next/standalone/scripts/ping_monitor.ts +2 -1
  962. package/.next/standalone/scripts/start.sh +23 -3
  963. package/.next/standalone/skills/agent-debug-diagnosis/scripts/__pycache__/agentdebug_common.cpython-312.pyc +0 -0
  964. package/.next/static/chunks/012f27d0d790dc0f.js +1 -0
  965. package/.next/static/chunks/07b2d7e6b58603c1.js +1 -0
  966. package/.next/static/chunks/1626d47d4b84fc8b.js +1 -0
  967. package/.next/static/chunks/175e0609137d7eed.js +1 -0
  968. package/.next/static/chunks/1aa5156b12972154.js +1 -0
  969. package/.next/static/chunks/2dc7fabb2f12bf39.js +1 -0
  970. package/.next/{standalone/.next/static/chunks/819be4f6dc602b73.js → static/chunks/3d040755d3686976.js} +1 -1
  971. package/.next/static/chunks/466edc01ad624a7e.js +1 -0
  972. package/.next/static/chunks/48fba91726a41a66.js +1 -0
  973. package/.next/static/chunks/5c301dcc3995f72c.js +1 -0
  974. package/.next/static/chunks/60f3a73e9fa6c625.js +1 -0
  975. package/.next/static/chunks/61003f0aededf3d6.js +1 -0
  976. package/.next/{standalone/.next/static/chunks/f08011a9c5cd16a6.js → static/chunks/6238734a2f04b1f9.js} +1 -1
  977. package/.next/static/chunks/{314eea8ce9b18ba1.js → 66de628824ded594.js} +1 -1
  978. package/.next/static/chunks/6f6e529cc8a0535d.js +1 -0
  979. package/.next/static/chunks/747a8d06793299fa.js +1 -0
  980. package/.next/static/chunks/755c604ba44e0e9b.js +1 -0
  981. package/.next/static/chunks/76a6d562e6507740.js +1 -0
  982. package/.next/static/chunks/77a10bcb350555d9.js +1 -0
  983. package/.next/static/chunks/7837bb465385ecd8.js +1 -0
  984. package/.next/static/chunks/7dc8bfae4aed86c2.js +1 -0
  985. package/.next/{standalone/.next/static/chunks/264991644d73270c.js → static/chunks/80f28b2193bf35d3.js} +1 -1
  986. package/.next/static/chunks/85f356e3e23b09ab.js +1 -0
  987. package/.next/static/chunks/{3e55642a8eb5ba23.js → 8754e0cf40813330.js} +1 -1
  988. package/.next/{standalone/.next/static/chunks/5d0423a5cf33f34e.js → static/chunks/8dff7ffbfcc5cc39.js} +1 -1
  989. package/.next/static/chunks/{f2228519196f8f44.js → 9155a6c07dc0502d.js} +2 -2
  990. package/.next/static/chunks/96823b122a037ed1.js +1 -0
  991. package/.next/static/chunks/96c7e2e47438553a.js +1 -0
  992. package/.next/static/chunks/9adb155358e88cb2.js +1 -0
  993. package/.next/static/chunks/a31bf4e176b5e90c.js +3 -0
  994. package/.next/static/chunks/a534005e8a8ec626.js +1 -0
  995. package/.next/static/chunks/aa2b0b8c9ed6b185.js +2 -0
  996. package/.next/static/chunks/b0fb37ef626a34a0.js +1 -0
  997. package/.next/static/chunks/c1a9ea80807777b8.js +10 -0
  998. package/.next/static/chunks/c7e8296357638830.js +1 -0
  999. package/.next/static/chunks/cc6c6efcf6de727b.js +17 -0
  1000. package/.next/static/chunks/d6af33336f13dd65.js +1 -0
  1001. package/.next/static/chunks/d7ff390550d8ae02.js +1 -0
  1002. package/.next/static/chunks/d91c2c0bbe0b59ab.js +1 -0
  1003. package/.next/static/chunks/daad76cdc09960bb.js +10 -0
  1004. package/.next/{standalone/.next/static/chunks/e396958d5e8ecaf8.js → static/chunks/dc22f906bd43e9a3.js} +3 -3
  1005. package/.next/static/chunks/e159d293fc72e91b.css +1 -0
  1006. package/.next/static/chunks/e6bdd7840d3e35e8.js +1 -0
  1007. package/.next/static/chunks/e8b69a66912006d0.js +1 -0
  1008. package/.next/static/chunks/eb6a581f1851670e.js +1 -0
  1009. package/.next/static/chunks/fc00d1dd80dd9357.js +1 -0
  1010. package/package.json +1 -1
  1011. package/prisma/schema.prisma +53 -0
  1012. package/scripts/__pycache__/hermes_agent_insight_plugin.cpython-312.pyc +0 -0
  1013. package/scripts/dryrun_readrecords_batched.ts +3 -2
  1014. package/scripts/infra-vllm-loadcheck.ts +84 -0
  1015. package/scripts/infra-vllm-probe.ts +57 -0
  1016. package/scripts/ping_monitor.ts +2 -1
  1017. package/scripts/start.sh +23 -3
  1018. package/.next/standalone/.next/server/chunks/[externals]__f458ab79._.js +0 -3
  1019. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0068c1fc._.js +0 -3
  1020. package/.next/standalone/.next/server/chunks/[root-of-the-server]__040b569f._.js +0 -3
  1021. package/.next/standalone/.next/server/chunks/[root-of-the-server]__045587bf._.js +0 -6
  1022. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0644629d._.js +0 -5
  1023. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0805dbf7._.js +0 -3
  1024. package/.next/standalone/.next/server/chunks/[root-of-the-server]__08ae7361._.js +0 -3
  1025. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0aa7083b._.js +0 -3
  1026. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0c3644ff._.js +0 -3
  1027. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0e81c059._.js +0 -3
  1028. package/.next/standalone/.next/server/chunks/[root-of-the-server]__10970a34._.js +0 -3
  1029. package/.next/standalone/.next/server/chunks/[root-of-the-server]__151a437e._.js +0 -3
  1030. package/.next/standalone/.next/server/chunks/[root-of-the-server]__15f53674._.js +0 -3
  1031. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1b7feef9._.js +0 -5
  1032. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1b902b9e._.js +0 -3
  1033. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1dd8d4fe._.js +0 -3
  1034. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1def0351._.js +0 -3
  1035. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1e033f42._.js +0 -3
  1036. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1ffaeedd._.js +0 -5
  1037. package/.next/standalone/.next/server/chunks/[root-of-the-server]__25a767e5._.js +0 -7
  1038. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2d337f2e._.js +0 -3
  1039. package/.next/standalone/.next/server/chunks/[root-of-the-server]__326abfd9._.js +0 -3
  1040. package/.next/standalone/.next/server/chunks/[root-of-the-server]__35b27244._.js +0 -3
  1041. package/.next/standalone/.next/server/chunks/[root-of-the-server]__363f8caf._.js +0 -3
  1042. package/.next/standalone/.next/server/chunks/[root-of-the-server]__39374c1f._.js +0 -3
  1043. package/.next/standalone/.next/server/chunks/[root-of-the-server]__3943f2d4._.js +0 -3
  1044. package/.next/standalone/.next/server/chunks/[root-of-the-server]__39b0a6a8._.js +0 -3
  1045. package/.next/standalone/.next/server/chunks/[root-of-the-server]__3a23ad34._.js +0 -3
  1046. package/.next/standalone/.next/server/chunks/[root-of-the-server]__45f15a40._.js +0 -3
  1047. package/.next/standalone/.next/server/chunks/[root-of-the-server]__4d9694c3._.js +0 -3
  1048. package/.next/standalone/.next/server/chunks/[root-of-the-server]__5231c174._.js +0 -3
  1049. package/.next/standalone/.next/server/chunks/[root-of-the-server]__549af36b._.js +0 -3
  1050. package/.next/standalone/.next/server/chunks/[root-of-the-server]__57e6d2a2._.js +0 -3
  1051. package/.next/standalone/.next/server/chunks/[root-of-the-server]__59ad7214._.js +0 -3
  1052. package/.next/standalone/.next/server/chunks/[root-of-the-server]__5c39010e._.js +0 -3
  1053. package/.next/standalone/.next/server/chunks/[root-of-the-server]__60643e13._.js +0 -3
  1054. package/.next/standalone/.next/server/chunks/[root-of-the-server]__67c90eea._.js +0 -3
  1055. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6bd638de._.js +0 -5
  1056. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6f67398a._.js +0 -3
  1057. package/.next/standalone/.next/server/chunks/[root-of-the-server]__72038149._.js +0 -13
  1058. package/.next/standalone/.next/server/chunks/[root-of-the-server]__79874fb4._.js +0 -3
  1059. package/.next/standalone/.next/server/chunks/[root-of-the-server]__79918828._.js +0 -3
  1060. package/.next/standalone/.next/server/chunks/[root-of-the-server]__872ecf84._.js +0 -3
  1061. package/.next/standalone/.next/server/chunks/[root-of-the-server]__8a8c1c09._.js +0 -3
  1062. package/.next/standalone/.next/server/chunks/[root-of-the-server]__8b738c2a._.js +0 -3
  1063. package/.next/standalone/.next/server/chunks/[root-of-the-server]__9a4686fd._.js +0 -3
  1064. package/.next/standalone/.next/server/chunks/[root-of-the-server]__9e377fa0._.js +0 -3
  1065. package/.next/standalone/.next/server/chunks/[root-of-the-server]__a01fde2c._.js +0 -3
  1066. package/.next/standalone/.next/server/chunks/[root-of-the-server]__a0a8a394._.js +0 -3
  1067. package/.next/standalone/.next/server/chunks/[root-of-the-server]__a1fdf600._.js +0 -3
  1068. package/.next/standalone/.next/server/chunks/[root-of-the-server]__a60f0985._.js +0 -3
  1069. package/.next/standalone/.next/server/chunks/[root-of-the-server]__a62c8374._.js +0 -3
  1070. package/.next/standalone/.next/server/chunks/[root-of-the-server]__a9d5005d._.js +0 -3
  1071. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ac03d782._.js +0 -5
  1072. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b63dd7b6._.js +0 -3
  1073. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b853df47._.js +0 -3
  1074. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b9ba9fe9._.js +0 -3
  1075. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b9ea78fe._.js +0 -3
  1076. package/.next/standalone/.next/server/chunks/[root-of-the-server]__bb26d00a._.js +0 -3
  1077. package/.next/standalone/.next/server/chunks/[root-of-the-server]__bd6a35b1._.js +0 -3
  1078. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c139b60a._.js +0 -3
  1079. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c15e98e6._.js +0 -3
  1080. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ca706dfb._.js +0 -3
  1081. package/.next/standalone/.next/server/chunks/[root-of-the-server]__cb09a0f9._.js +0 -3
  1082. package/.next/standalone/.next/server/chunks/[root-of-the-server]__cc3948c5._.js +0 -3
  1083. package/.next/standalone/.next/server/chunks/[root-of-the-server]__cca882cf._.js +0 -3
  1084. package/.next/standalone/.next/server/chunks/[root-of-the-server]__d03fa951._.js +0 -3
  1085. package/.next/standalone/.next/server/chunks/[root-of-the-server]__d9c98a95._.js +0 -3
  1086. package/.next/standalone/.next/server/chunks/[root-of-the-server]__dc598d38._.js +0 -3
  1087. package/.next/standalone/.next/server/chunks/[root-of-the-server]__de3c01d3._.js +0 -3
  1088. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e8b45be8._.js +0 -3
  1089. package/.next/standalone/.next/server/chunks/[root-of-the-server]__eb9c84fc._.js +0 -3
  1090. package/.next/standalone/.next/server/chunks/[root-of-the-server]__f43a6132._.js +0 -3
  1091. package/.next/standalone/.next/server/chunks/[root-of-the-server]__fef5bbd7._.js +0 -3
  1092. package/.next/standalone/.next/server/chunks/_098d414d._.js +0 -3
  1093. package/.next/standalone/.next/server/chunks/_f53757b9._.js +0 -3
  1094. package/.next/standalone/.next/server/chunks/src_lib_1466262d._.js +0 -29
  1095. package/.next/standalone/.next/server/chunks/src_lib_beee2d37._.js +0 -32
  1096. package/.next/standalone/.next/server/chunks/src_lib_c6d9db51._.js +0 -3
  1097. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__c0f4a8e3._.js +0 -3
  1098. package/.next/standalone/.next/server/chunks/ssr/_338db557._.js +0 -3
  1099. package/.next/standalone/.next/server/chunks/ssr/_434d90cf._.js +0 -3
  1100. package/.next/standalone/.next/server/chunks/ssr/_54f7cd42._.js +0 -3
  1101. package/.next/standalone/.next/server/chunks/ssr/_715ced03._.js +0 -12
  1102. package/.next/standalone/.next/server/chunks/ssr/_86e4a207._.js +0 -12
  1103. package/.next/standalone/.next/server/chunks/ssr/_9adbeadd._.js +0 -3
  1104. package/.next/standalone/.next/server/chunks/ssr/_9e56acbd._.js +0 -3
  1105. package/.next/standalone/.next/server/chunks/ssr/_ad052dd8._.js +0 -3
  1106. package/.next/standalone/.next/server/chunks/ssr/_d4c77173._.js +0 -3
  1107. package/.next/standalone/.next/server/chunks/ssr/_f778c2ae._.js +0 -3
  1108. package/.next/standalone/.next/server/chunks/ssr/node_modules_0446465d._.js +0 -3
  1109. package/.next/standalone/.next/server/chunks/ssr/node_modules_14fdec98._.js +0 -17
  1110. package/.next/standalone/.next/server/chunks/ssr/node_modules_39b590d2._.js +0 -3
  1111. package/.next/standalone/.next/server/chunks/ssr/node_modules_5765f642._.js +0 -3
  1112. package/.next/standalone/.next/server/chunks/ssr/node_modules_5a7ce65f._.js +0 -17
  1113. package/.next/standalone/.next/server/chunks/ssr/node_modules_67a600ea._.js +0 -24
  1114. package/.next/standalone/.next/server/chunks/ssr/node_modules_73b73ed2._.js +0 -17
  1115. package/.next/standalone/.next/server/chunks/ssr/node_modules_88623ea5._.js +0 -3
  1116. package/.next/standalone/.next/server/chunks/ssr/node_modules_9a06f164._.js +0 -3
  1117. package/.next/standalone/.next/server/chunks/ssr/node_modules_9ad38d6b._.js +0 -3
  1118. package/.next/standalone/.next/server/chunks/ssr/node_modules_c5bc32c0._.js +0 -3
  1119. package/.next/standalone/.next/server/chunks/ssr/node_modules_c8b340b1._.js +0 -3
  1120. package/.next/standalone/.next/server/chunks/ssr/node_modules_c93bc0d4._.js +0 -3
  1121. package/.next/standalone/.next/server/chunks/ssr/node_modules_d492394b._.js +0 -3
  1122. package/.next/standalone/.next/server/chunks/ssr/node_modules_e9abd531._.js +0 -17
  1123. package/.next/standalone/.next/server/chunks/ssr/node_modules_f69e47e0._.js +0 -3
  1124. package/.next/standalone/.next/static/chunks/130e114057a9ebcd.js +0 -1
  1125. package/.next/standalone/.next/static/chunks/1e5b3e371cbf00f5.js +0 -1
  1126. package/.next/standalone/.next/static/chunks/34a7894eb476b8eb.js +0 -1
  1127. package/.next/standalone/.next/static/chunks/373d7e41b5d2192a.js +0 -1
  1128. package/.next/standalone/.next/static/chunks/43df5d7cd8ec46ff.js +0 -1
  1129. package/.next/standalone/.next/static/chunks/463b43ecde7acc6b.js +0 -1
  1130. package/.next/standalone/.next/static/chunks/4b3b11e28e77c3fe.js +0 -1
  1131. package/.next/standalone/.next/static/chunks/53af8dcc7be02445.js +0 -1
  1132. package/.next/standalone/.next/static/chunks/558b2944268322c0.js +0 -1
  1133. package/.next/standalone/.next/static/chunks/5f48fb5ff13515f9.js +0 -10
  1134. package/.next/standalone/.next/static/chunks/662ee72c2b3f282f.js +0 -1
  1135. package/.next/standalone/.next/static/chunks/72fce1376de53ff1.js +0 -1
  1136. package/.next/standalone/.next/static/chunks/7aff5373689149f6.css +0 -1
  1137. package/.next/standalone/.next/static/chunks/83910a2aebec21cd.js +0 -1
  1138. package/.next/standalone/.next/static/chunks/85dc1714d62ff17c.js +0 -1
  1139. package/.next/standalone/.next/static/chunks/880f54e2ee46369a.js +0 -1
  1140. package/.next/standalone/.next/static/chunks/90356ff82a1a4b7b.js +0 -1
  1141. package/.next/standalone/.next/static/chunks/91118d4316b25490.js +0 -2
  1142. package/.next/standalone/.next/static/chunks/9190bb5077c01f1d.js +0 -1
  1143. package/.next/standalone/.next/static/chunks/ac4d824ecef761ad.js +0 -1
  1144. package/.next/standalone/.next/static/chunks/b7afe26e3f5150a6.js +0 -1
  1145. package/.next/standalone/.next/static/chunks/c6fc32540074c5d9.js +0 -1
  1146. package/.next/standalone/.next/static/chunks/ca321802d5bec89a.js +0 -1
  1147. package/.next/standalone/.next/static/chunks/d3d4e0d0251fae88.js +0 -1
  1148. package/.next/standalone/.next/static/chunks/d4b8cecb3e0e7d14.js +0 -1
  1149. package/.next/standalone/.next/static/chunks/e1ca3a6b74761a34.js +0 -1
  1150. package/.next/standalone/.next/static/chunks/f078268d4167c317.js +0 -1
  1151. package/.next/standalone/.next/static/chunks/f3601c4fe7c72e05.js +0 -1
  1152. package/.next/standalone/.next/static/chunks/f6bada18c43a7d59.js +0 -1
  1153. package/.next/standalone/.next/static/chunks/f73f243ebf49bd78.js +0 -10
  1154. package/.next/standalone/.next/static/chunks/fff45888c8c81b7a.js +0 -1
  1155. package/.next/static/chunks/130e114057a9ebcd.js +0 -1
  1156. package/.next/static/chunks/1e5b3e371cbf00f5.js +0 -1
  1157. package/.next/static/chunks/34a7894eb476b8eb.js +0 -1
  1158. package/.next/static/chunks/373d7e41b5d2192a.js +0 -1
  1159. package/.next/static/chunks/43df5d7cd8ec46ff.js +0 -1
  1160. package/.next/static/chunks/463b43ecde7acc6b.js +0 -1
  1161. package/.next/static/chunks/4b3b11e28e77c3fe.js +0 -1
  1162. package/.next/static/chunks/53af8dcc7be02445.js +0 -1
  1163. package/.next/static/chunks/558b2944268322c0.js +0 -1
  1164. package/.next/static/chunks/5f48fb5ff13515f9.js +0 -10
  1165. package/.next/static/chunks/662ee72c2b3f282f.js +0 -1
  1166. package/.next/static/chunks/72fce1376de53ff1.js +0 -1
  1167. package/.next/static/chunks/7aff5373689149f6.css +0 -1
  1168. package/.next/static/chunks/83910a2aebec21cd.js +0 -1
  1169. package/.next/static/chunks/85dc1714d62ff17c.js +0 -1
  1170. package/.next/static/chunks/880f54e2ee46369a.js +0 -1
  1171. package/.next/static/chunks/90356ff82a1a4b7b.js +0 -1
  1172. package/.next/static/chunks/91118d4316b25490.js +0 -2
  1173. package/.next/static/chunks/9190bb5077c01f1d.js +0 -1
  1174. package/.next/static/chunks/ac4d824ecef761ad.js +0 -1
  1175. package/.next/static/chunks/b7afe26e3f5150a6.js +0 -1
  1176. package/.next/static/chunks/c6fc32540074c5d9.js +0 -1
  1177. package/.next/static/chunks/ca321802d5bec89a.js +0 -1
  1178. package/.next/static/chunks/d3d4e0d0251fae88.js +0 -1
  1179. package/.next/static/chunks/d4b8cecb3e0e7d14.js +0 -1
  1180. package/.next/static/chunks/e1ca3a6b74761a34.js +0 -1
  1181. package/.next/static/chunks/f078268d4167c317.js +0 -1
  1182. package/.next/static/chunks/f3601c4fe7c72e05.js +0 -1
  1183. package/.next/static/chunks/f6bada18c43a7d59.js +0 -1
  1184. package/.next/static/chunks/f73f243ebf49bd78.js +0 -10
  1185. package/.next/static/chunks/fff45888c8c81b7a.js +0 -1
  1186. /package/.next/standalone/.next/static/{OsR67Q2lFVMHMaAqxt_js → w5kcVDBsBKgqTtNX9-Kqj}/_buildManifest.js +0 -0
  1187. /package/.next/standalone/.next/static/{OsR67Q2lFVMHMaAqxt_js → w5kcVDBsBKgqTtNX9-Kqj}/_clientMiddlewareManifest.json +0 -0
  1188. /package/.next/standalone/.next/static/{OsR67Q2lFVMHMaAqxt_js → w5kcVDBsBKgqTtNX9-Kqj}/_ssgManifest.js +0 -0
  1189. /package/.next/static/{OsR67Q2lFVMHMaAqxt_js → w5kcVDBsBKgqTtNX9-Kqj}/_buildManifest.js +0 -0
  1190. /package/.next/static/{OsR67Q2lFVMHMaAqxt_js → w5kcVDBsBKgqTtNX9-Kqj}/_clientMiddlewareManifest.json +0 -0
  1191. /package/.next/static/{OsR67Q2lFVMHMaAqxt_js → w5kcVDBsBKgqTtNX9-Kqj}/_ssgManifest.js +0 -0
@@ -0,0 +1,29 @@
1
+ module.exports=[190753,e=>{"use strict";e.s(["VLLM_COUNTERS",0,["vllm:prompt_tokens_total","vllm:generation_tokens_total","vllm:num_preemptions_total","vllm:prefix_cache_queries_total","vllm:prefix_cache_hits_total","vllm:estimated_flops_per_gpu_total","vllm:estimated_read_bytes_per_gpu_total","vllm:estimated_write_bytes_per_gpu_total"],"VLLM_GAUGES",0,["vllm:num_requests_running","vllm:num_requests_waiting","vllm:kv_cache_usage_perc"],"VLLM_HISTOGRAMS",0,["vllm:time_to_first_token_seconds","vllm:inter_token_latency_seconds","vllm:request_time_per_output_token_seconds","vllm:e2e_request_latency_seconds","vllm:request_queue_time_seconds","vllm:request_prefill_time_seconds","vllm:request_inference_time_seconds"],"VLLM_WAITING_BY_REASON",0,"vllm:num_requests_waiting_by_reason"])},667531,e=>{"use strict";var t=e.i(190753);let n=new Set(t.VLLM_GAUGES),r=new Set(t.VLLM_COUNTERS);function i(e){let t=new Map,n=[];for(let r of e.split("\n")){let e=r.trim();if(!e)continue;if(e.startsWith("#")){let n=e.match(/^#\s+(HELP|TYPE)\s+(\S+)\s+(.*)$/);if(!n)continue;let[,r,i,a]=n,o=t.get(i)??{type:"untyped",help:""};"TYPE"===r?o.type=a.trim():o.help=a.trim(),t.set(i,o);continue}let i=e.match(/^([^{\s]+)(\{[^}]*\})?\s+(.+)$/);if(!i)continue;let[,a,o,s]=i,l=Number.parseFloat(s.trim().split(/\s+/)[0]),u={};if(o)for(let e of o.slice(1,-1).split(/,(?=(?:[^"]*"[^"]*")*[^"]*$)/)){let t=e.match(/^\s*([^=]+)="(.*)"\s*$/);t&&(u[t[1]]=t[2])}n.push({name:a,labels:u,value:l})}return{families:t,samples:n}}function a(e,i={}){let{source:o="vllm-pull",target:s="",tsMs:l=Date.now()}=i,u=new Map,c=e=>{let t=u.get(e);return t||(t={gauges:{},counters:{},histograms:{},waitingByReason:{}},u.set(e,t)),t};for(let i of e.samples){let e=i.labels.model_name;if(!e)continue;let a=c(e),o=e=>a.histograms[e]??={buckets:[],sum:0,count:0};if(n.has(i.name))a.gauges[i.name]=i.value;else if(r.has(i.name))a.counters[i.name]=i.value;else if(i.name===t.VLLM_WAITING_BY_REASON)a.waitingByReason[i.labels.reason]=i.value;else for(let e of t.VLLM_HISTOGRAMS)if(i.name===`${e}_bucket`){var m;o(e).buckets.push({le:(m=i.labels.le,/^[+]?inf(inity)?$/i.test(m.trim())?1/0:Number.parseFloat(m)),count:i.value})}else i.name===`${e}_sum`?o(e).sum=i.value:i.name===`${e}_count`&&(o(e).count=i.value)}return[...u.entries()].map(([e,t])=>{for(let e of Object.values(t.histograms))e.buckets.sort((e,t)=>e.le-t.le);return{tsMs:l,source:o,target:s,model:e,...t}})}function o(e,t){if(!e||!e.count)return null;let n=t*e.count,r=0,i=0;for(let t of e.buckets){if(t.count>=n){if(t.le===1/0)return r;let e=(n-i)/(t.count-i||1);return r+(t.le-r)*e}r=t.le,i=t.count}return r}function s(e){return e&&e.count?e.sum/e.count:null}e.s(["histAvg",()=>s,"histQuantile",()=>o,"normalizeByModel",()=>a,"parsePromText",()=>i])},68683,e=>{"use strict";var t=e.i(667531);function n(e){let t=new URL(e);return`${t.protocol}//${t.host}`}function r(e){let t=new URL(e);return t.username="",t.password="",t.search="",t.hash="",t.pathname.endsWith("/metrics")||(t.pathname=t.pathname.replace(/\/+$/,"")+"/metrics"),t.toString()}async function i(e,a={}){let{timeoutMs:o=8e3,tsMs:s=Date.now(),fetchImpl:l=fetch}=a,u=r(e),c=await l(u,{signal:AbortSignal.timeout(o)});if(!c.ok)throw Error(`scrape ${u} failed: HTTP ${c.status}`);let m=await c.text();return(0,t.normalizeByModel)((0,t.parsePromText)(m),{source:"vllm-pull",target:n(e),tsMs:s})}e.s(["metricsUrl",()=>r,"normalizeEndpoint",()=>n,"scrapeVllmTargetModels",()=>i])},837926,e=>{"use strict";let t=["evaluator","checker","judge","locator","assessor","grader","评估器"],n=["你是「轨迹评估器」的总协调者","你是「Agent 任务完成度」评估器","trace-quality-evaluator","task-completion-evaluator","reference_trajectory","actual_trace","key_point_findings","key-points-checker","detect_redundancy_and_loops","已写入 final_result.json"],r=new Set(["trace-quality-evaluator","task-completion-evaluator"]);function i(e){let n=String(e||"").trim().toLowerCase();return!!n&&(!!r.has(n)||t.some(e=>n.includes(e)))}function a(e){return!!e&&(!![e.agentName,e.agent,...Array.isArray(e.agents)?e.agents:[]].some(e=>i(e))||!!e&&[e.query,e.final_result,e.label].some(e=>{let t=String(e||"");return!!t&&n.some(e=>t.includes(e))}))}function o(e){return e?String([e.agentName,e.agent,...Array.isArray(e.agents)?e.agents:[]].find(e=>{let t=String(e||"").trim();return t&&!i(t)})||"").trim():""}e.s(["getPrimaryExecutionAgentName",()=>o,"isEvaluatorAgentName",()=>i,"isEvaluatorTraceRecord",()=>a])},243080,e=>{"use strict";var t=e.i(837926);function n(e){return"string"==typeof e?e.trim():""}function r(e,t){let r=[],i=new Set,a=n(t),o=(e,t)=>{let a=n(e);if(!a)return;let o=`${t}:${a}`;i.has(o)||(i.add(o),r.push({name:a,agentType:t}))};for(let t of(a&&o(a,"main"),e||[])){if(!t||"object"!=typeof t)continue;let e=n(t.role).toLowerCase(),r=n(t.subagent_name),i=n(t.agent);if(r){o(r,"subagent");continue}("subagent"===e||"opencode"===e)&&i&&i!==a?o(i,"subagent"):!a&&i&&o(i,"main")}return r}function i(e){return r(e).map(e=>e.name)}function a(e,n){let i=r(e,n),a=i.find(e=>"main"===e.agentType&&!(0,t.isEvaluatorAgentName)(e.name));return a?a.name:i.find(e=>!(0,t.isEvaluatorAgentName)(e.name))?.name||""}e.s(["extractObservedAgentNames",()=>i,"extractObservedAgentRegistrations",()=>r,"getPrimaryObservedAgentName",()=>a])},384660,e=>{"use strict";function t(e){return"routing"===e||"outcome"===e||"combined"===e?e:"combined"}function n(e,n){let r=t(e);return"combined"===r||r===n}function r(e,n){let r=t(e);return"any"===n?"combined"===r?1:2:r===n?3:2*("combined"===r)}function i(e){return Array.isArray(e)?e.map(e=>{if("string"==typeof e){let t=e.trim();return t?{skill:t,version:null}:null}if(!e||"object"!=typeof e)return null;let t="skill"in e?e.skill:null,n="string"==typeof t?t.trim():"";if(!n)return null;let r="version"in e?e.version:null,i=null;if("number"==typeof r&&Number.isInteger(r)&&r>=0)i=r;else if("string"==typeof r&&r.trim()){let e=parseInt(r,10);i=Number.isNaN(e)||e<0?null:e}return{skill:n,version:i}}).filter(e=>!!e):[]}e.s(["configSupportsDatasetType",()=>n,"getDatasetTypePriority",()=>r,"normalizeConfigDatasetType",()=>t,"normalizeExpectedSkills",()=>i])},262197,e=>{"use strict";function t(e){return"string"!=typeof e?null:e.trim()||null}function n(e){return"string"!=typeof e?"":e.trim()}function r(e){if("number"==typeof e&&Number.isInteger(e)&&e>=0)return e;if("string"==typeof e&&e.trim()){let t=parseInt(e,10);if(!Number.isNaN(t)&&t>=0)return t}return null}function i(e,r="Skill benchmark"){var a,o;let s;return t(e.query)||(a=e.skill,o=e.skillVersion,(s=n(a))?null!=o?`${s} (v${o})`:s:null)||r}e.s(["getConfigSubjectLabel",()=>i,"normalizeConfigQuery",()=>t,"normalizeConfigSkillName",()=>n,"normalizeOptionalSkillVersion",()=>r])},274149,e=>e.a(async(t,n)=>{try{e.i(889228);var r=e.i(88045),i=e.i(637351),a=e.i(106411),o=t([a]);[a]=o.then?(await o)():o;let m=new Map;function s(e){return e.trim().toLowerCase().replace(/[`"'“”‘’]/g,"").replace(/[.,,。!?!?;;::、·…()[\]{}<>]/g," ").replace(/\s+/g," ").trim()}function l(e){return s(e).replace(/\s/g,"")}async function u(e,t){let n=e.trim();if(!n)return null;let o=`${t||"__global__"}::${n}`;if(m.has(o))return m.get(o);let l=(async()=>{let e=await (0,a.getActiveConfig)(t);if(!e)throw Error("No active model configuration for routing signature extraction");let{customFetch:o}=(0,i.getProxyConfig)(),l=new r.OpenAI({apiKey:e.apiKey||"no-api-key-required",baseURL:e.baseUrl||"https://api.deepseek.com",fetch:o}),u=`
2
+ You are extracting a routing signature for skill benchmark matching.
3
+
4
+ Given one user query, produce a compact semantic signature that captures the query's routing intent rather than the full scenario wording.
5
+
6
+ User Query:
7
+ """
8
+ ${n}
9
+ """
10
+
11
+ Return ONLY JSON in this format:
12
+ {
13
+ "intent": "one concise canonical intent sentence in the same language as the query",
14
+ "anchors": [
15
+ "short technical phrase 1",
16
+ "short technical phrase 2"
17
+ ]
18
+ }
19
+
20
+ Rules:
21
+ - The intent must summarize the core task the agent is being asked to do.
22
+ - Anchors must be short reusable semantic phrases, not full sentences.
23
+ - Keep 4-8 anchors.
24
+ - Preserve domain terms, repo terms, tool names, protocol names, object names, and constraints that affect routing.
25
+ - Remove storytelling details, hostnames, dates, and incidental wording unless they are essential to routing.
26
+ - The output language must match the query language.
27
+ `.trim(),c=await l.chat.completions.create({messages:[{role:"user",content:u}],model:e.model||"deepseek-chat",temperature:.1}),m=c.choices[0]?.message?.content;if(!m)throw Error("No content returned for routing signature extraction");let f=function(e){let t=e.trim(),n=t.match(/```(?:json)?\s*([\s\S]*?)\s*```/i);if(n)t=n[1];else{let e=t.indexOf("{"),n=t.lastIndexOf("}");-1!==e&&-1!==n&&n>=e&&(t=t.slice(e,n+1))}let r=JSON.parse(t),i="string"==typeof r.intent?r.intent.trim():"",a=Array.isArray(r.anchors)?r.anchors.filter(e=>"string"==typeof e).map(e=>e.trim()):[];return{intent:i,anchors:(function(e){let t=new Set,n=[];for(let r of e){let e=s(r);!e||t.has(e)||(t.add(e),n.push(r.trim()))}return n})(a).slice(0,8)}}(m);if(!f.intent||0===f.anchors.length)throw Error("Routing signature extraction returned empty intent or anchors");return f})().finally(()=>{m.delete(o)});return m.set(o,l),l}function c(e,t){let n=l(e),r=l(t.intent),i=t.anchors.filter(e=>{let t=l(e);return!!t&&n.includes(t)});return{intentMatched:!!(n&&r&&(n===r||n.includes(r)||r.includes(n))),matchedAnchors:i,anchorCoverage:t.anchors.length>0?i.length/t.anchors.length:0}}e.s(["deriveRoutingSignature",()=>u,"matchQueryToStoredRoutingSignature",()=>c]),n()}catch(e){n(e)}},!1),982505,e=>e.a(async(t,n)=>{try{var r=e.i(948594),i=t([r]);function a(e){let t="number"==typeof e?e:"string"==typeof e?Number(e):NaN;return Number.isFinite(t)?t:void 0}function o(e){if("number"==typeof e&&Number.isFinite(e))return e;if("string"!=typeof e)return null;let t=e.trim();if(!t)return null;if(/^\d+$/.test(t)){let e=Number(t);return Number.isFinite(e)?e:null}let n=Date.parse(t);return Number.isFinite(n)?n:null}function s(e){return e.map(e=>e&&"object"==typeof e&&"text"===String(e.type||"").toLowerCase()?String(e.text||""):"").filter(Boolean).join("")}function l(e){return Array.isArray(e)&&0!==e.length?e.map(e=>{var t;let n,r,i,l,u,c;if(!function(e){if(!e||"object"!=typeof e)return!1;let t=e.info;if(!t||"object"!=typeof t)return!1;let n=e.parts;return Array.isArray(n)||Array.isArray(t.parts)}(e))return null;let m=e.info||{},f=Array.isArray(e.parts)?e.parts:Array.isArray(m.parts)?m.parts:[],p=(t=m.role,"string"==typeof t&&t.trim()?t.trim():"assistant"),g=m.time?.created,d=m.time?.completed,y=o(g),_="user"===p?s(f)||String(m.system||""):s(f),h=f.map(e=>{if(!e||"object"!=typeof e||"tool"!==String(e.type||"").toLowerCase())return null;let t=e.state&&"object"==typeof e.state?e.state:{};return{id:e.callID||e.callId||e.id,type:"function",function:{name:e.tool,arguments:function(e){if("string"==typeof e)return e;try{return JSON.stringify(e??{})}catch{return"{}"}}(t.input)},state:t.status||t.state,output:t.output}}).filter(Boolean),v=m.tokens&&"object"==typeof m.tokens?m.tokens:void 0,b=v?{input:a(v.input),output:a(v.output),reasoning:a(v.reasoning),cache:{read:a(v.cache?.read),write:a(v.cache?.write)},total:(n=a(v?.input)||0,r=a(v?.output)||0,i=a(v?.reasoning)||0,l=a(v?.cache?.read)||0,u=a(v?.cache?.write)||0,c=i>0&&r<i?r+i:r,{input:n,output:c,reasoning:i,cacheRead:l,cacheWrite:u,total:n+c+i+l+u}).total}:void 0;return{role:p,content:_||void 0,tool_calls:h.length>0?h:void 0,usage:b,timestamp:null!==y?new Date(y).toISOString():void 0,timeInfo:null!=g||null!=d?{created:g,completed:d}:void 0,agent:"string"==typeof m.agent?m.agent:void 0,modelID:"string"==typeof m.modelID?m.modelID:void 0,providerID:"string"==typeof m.providerID?m.providerID:void 0,cost:m.cost}}).filter(e=>null!==e).sort((e,t)=>(o(e.timeInfo?.created)||0)-(o(t.timeInfo?.created)||0)):[]}function u(e){let t=e.map(e=>o(e.timeInfo?.created)??o(e.timestamp)).find(e=>Number.isFinite(e));return t?new Date(t):new Date}function c(e){let t=e.flatMap(e=>[o(e.timeInfo?.completed),o(e.timeInfo?.created),o(e.timestamp)]).filter(e=>Number.isFinite(e)).reduce((e,t)=>Math.max(e,t),0);return t>0?new Date(t):new Date}function m(e,t){let n,r,i,a,o=e.some(e=>"assistant"===e.role&&"string"==typeof e.content&&e.content.trim().length>0),s=(n=new Date().toISOString(),r=String(t.query||"").trim(),i=String(t.fallbackOutput||"").trim(),a=[],r&&a.push({role:"user",content:r,timestamp:n}),i&&a.push({role:"assistant",content:i,timestamp:n,agent:String(t.agentName||"").trim()||void 0}),a);if(0===e.length)return s;if(o||!String(t.fallbackOutput||"").trim())return e;let l=s.find(e=>"assistant"===e.role);return l?[...e,l]:e}async function f(e,t){let n=String(t.taskId||"").trim(),i=String(t.agentName||"").trim();if(!n||!i)return 0;let a=await e.listMessages(n),o=m(l(Array.isArray(a)?a:[]),t);return await (0,r.saveExecutionRecord)({task_id:n,upload_id:n,query:String(t.query||"").trim()||void 0,framework:t.framework||"opencode",user:t.user??null,agent:i,agentName:i,final_result:String(t.fallbackOutput||"").trim()||void 0,skill:t.skill??void 0,skill_version:t.skillVersion??void 0,interactions:o,timestamp:u(o),skip_evaluation:!0,skip_internal_judgment:!0,failures:[],skill_issues:[],force_query_update:!0,opencode_cli_completed:!0}),o.length}function p(e){let t=e.timestampISO||new Date().toISOString(),n=[],r=String(e.systemPrompt||"").trim();r&&n.push({role:"system",content:r,timestamp:t});let i=String(e.userMessage||e.query||"").trim();i&&n.push({role:"user",content:i,timestamp:t});let a=String(e.assistantOutput||"").trim();if(a){let r=e.usage?{input:e.usage.input,output:e.usage.output,total:"number"==typeof e.usage.total?e.usage.total:(e.usage.input||0)+(e.usage.output||0)}:void 0;n.push({role:"assistant",content:a,timestamp:t,agent:e.agentName||void 0,modelID:e.modelID||void 0,usage:r})}return n}async function g(e){let t=String(e.taskId||"").trim(),n=String(e.agentName||"").trim();if(!t||!n)return 0;let i=p(e);return 0===i.length?0:(await (0,r.saveExecutionRecord)({task_id:t,upload_id:t,query:String(e.query||"").trim()||void 0,framework:e.framework||"direct-llm",user:e.user??null,agent:n,agentName:n,model:e.modelID??void 0,final_result:String(e.assistantOutput||"").trim()||void 0,skill:e.skill??void 0,skill_version:e.skillVersion??void 0,interactions:i,timestamp:u(i),skip_evaluation:!0,skip_internal_judgment:!0,failures:[],skill_issues:[],force_query_update:!0,trace_completed_at:c(i)}),i.length)}function d(){return"1"===process.env.EVAL_FORCE_OPENCODE_TRANSPORT}[r]=i.then?(await i)():i,e.s(["buildDirectEvaluatorInteractions",()=>p,"ensureEvaluatorExecutionInteractions",()=>m,"inferCompletionTimestampFromInteractions",()=>c,"normalizeEvaluatorExecutionInteractions",()=>l,"recordDirectEvaluatorExecution",()=>g,"recordEvaluatorExecution",()=>f,"shouldForceOpencodeEvalTransport",()=>d]),n()}catch(e){n(e)}},!1)];
28
+
29
+ //# sourceMappingURL=src_lib_9cf1dab3._.js.map
@@ -1,7 +1,7 @@
1
1
  module.exports=[571902,e=>{"use strict";var t=e.i(902157),n=e.i(750227);e.i(666680);var r=e.i(899871),i=e.i(660526);function o(){let e=n.default.join(i.default.homedir(),".agent-insight"),r=n.default.join(i.default.homedir(),".skill-insight");return t.default.existsSync(e)?e:t.default.existsSync(r)?r:e}function a(){return process.env.AGENT_INSIGHT_CLAUDE_OTEL_SPOOL_DIR||n.default.join(o(),"otel_data","claude")}function s(){return process.env.AGENT_INSIGHT_OTEL_TRACE_SPOOL_DIR||n.default.join(o(),"otel_data","traces")}function u(e,r){let i=[];try{for(let o of t.default.readdirSync(e,{withFileTypes:!0}).filter(e=>e.isDirectory()))!function e(r,i,o){let a=[];try{a=t.default.readdirSync(r,{withFileTypes:!0})}catch{return}for(let t of a){let a=n.default.join(r,t.name);t.isDirectory()?e(a,i,o):t.isFile()&&t.name.endsWith(".jsonl")&&(!i||t.name===i)&&o.push(a)}}(n.default.join(e,o.name),r,i)}catch{}return i.sort()}function l(e=a()){return u(e,"logs.jsonl")}function c(e=s()){return u(e,"traces.jsonl")}function d(e,n){let i,o=[];try{i=t.default.openSync(e,"r")}catch{return o}let a=Buffer.allocUnsafe(1048576),s=new r.StringDecoder("utf8"),u="";try{for(;;){let e=t.default.readSync(i,a,0,a.length,null);if(e<=0)break;let r=(u+=s.write(a.subarray(0,e))).split("\n");for(let e of(u=r.pop()??"",r))if(e.trim())try{let t=JSON.parse(e);t?.sessionId===n&&o.push(t)}catch{}}if((u+=s.end()).trim())try{let e=JSON.parse(u);e?.sessionId===n&&o.push(e)}catch{}}finally{t.default.closeSync(i)}return o}function f(e,t=a()){let n=[];for(let r of l(t))n.push(...d(r,e));return n}function m(e,t=s()){let n=[];for(let r of c(t))n.push(...d(r,e));return n}function p(e,n={bytes:0}){let i,o;try{i=t.default.statSync(e)}catch{return{events:[],nextCursor:{bytes:n.bytes||0},lineCount:0,parseErrors:0}}try{o=t.default.openSync(e,"r")}catch{return{events:[],nextCursor:{bytes:n.bytes||0},lineCount:0,parseErrors:0}}let a=(n.bytes||0)>i.size?0:Math.max(0,n.bytes||0),s=Buffer.allocUnsafe(1048576),u=new r.StringDecoder("utf8"),l=[],c=0,d=0,f=a,m="",g=a;try{for(;g<i.size;){let e=t.default.readSync(o,s,0,Math.min(s.length,i.size-g),g);if(e<=0)break;g+=e;let n=(m+=u.write(s.subarray(0,e))).split("\n");for(let e of(m=n.pop()??"",n))if(f+=Buffer.byteLength(e,"utf8")+1,e.trim()){c+=1;try{l.push(JSON.parse(e))}catch{d+=1}}}}finally{t.default.closeSync(o)}return{events:l,nextCursor:{bytes:f},lineCount:c,parseErrors:d}}e.s(["getClaudeOtelSpoolDir",()=>a,"getOtelTraceSpoolDir",()=>s,"listClaudeOtelSpoolFiles",()=>l,"listOtelTraceSpoolFiles",()=>c,"readClaudeOtelEventsForSession",()=>f,"readNewLinesSince",()=>p,"readOtelTraceEventsForSession",()=>m],571902)},460535,e=>{"use strict";var t=e.i(902157),n=e.i(750227);function r(e){return n.default.join(e,"consumer-checkpoint.json")}function i(e,t){return n.default.relative(e,t).split(n.default.sep).join("/")}function o(e){let n=r(e);try{let e=JSON.parse(t.default.readFileSync(n,"utf8"));if(e?.version===1&&e.files&&"object"==typeof e.files)return{version:1,files:e.files}}catch{}return{version:1,files:{}}}function a(e,n){t.default.mkdirSync(e,{recursive:!0});let i=r(e),o=`${i}.${process.pid}.tmp`;t.default.writeFileSync(o,`${JSON.stringify(n,null,2)}
2
- `,"utf8"),t.default.renameSync(o,i)}function s(e,t){let n=o(e);return{bytes:n.files[t]?.bytes||0}}function u(e,t,n){let r=o(e);r.files[t]={bytes:Math.max(0,n.bytes||0),updatedAt:new Date().toISOString()},a(e,r)}function l(e,t){let n=o(e);n.files[t]&&(delete n.files[t],a(e,n))}function c(e,o=function(e){let r=[],i=e=>{let o=[];try{o=t.default.readdirSync(e,{withFileTypes:!0})}catch{return}for(let t of o){let o=n.default.join(e,t.name);t.isDirectory()?i(o):t.isFile()&&t.name.endsWith(".jsonl")&&r.push(o)}};try{for(let r of t.default.readdirSync(e,{withFileTypes:!0}).filter(e=>e.isDirectory()))i(n.default.join(e,r.name))}catch{}return r.sort()}(e)){if(t.default.existsSync(r(e)))return;let s={version:1,files:{}},u=new Date().toISOString();for(let n of o)try{let r=i(e,n);s.files[r]={bytes:t.default.statSync(n).size,updatedAt:u}}catch{}a(e,s)}e.s(["getFileCursor",()=>s,"invalidateCursor",()=>l,"loadCheckpoint",()=>o,"saveFileCursor",()=>u,"seedToEof",()=>c,"toCheckpointRelPath",()=>i])},337216,e=>{"use strict";var t=e.i(902157),n=e.i(460535);function r(e,i,o,a=new Date){if(!Number.isFinite(o)||o<1)return{archived:0,skipped:i.length};let s=(0,n.loadCheckpoint)(e),u=a.getTime()-24*o*36e5,l=0,c=0;for(let r of i){let i=(0,n.toCheckpointRelPath)(e,r),o=function(e){let t=e.split("/")[0];return/^\d{4}-\d{2}-\d{2}$/.test(t)?t:null}(i),a=o?Date.parse(`${o}T00:00:00.000Z`):NaN;if(!Number.isFinite(a)||a>=u){c+=1;continue}let d=s.files[i],f=0;try{f=t.default.statSync(r).size}catch{c+=1;continue}if(!d||d.bytes<f){c+=1;continue}t.default.renameSync(r,function(e){let n=`${e}.processed`;return t.default.existsSync(n)?`${n}.${Date.now()}`:n}(r)),(0,n.invalidateCursor)(e,i),l+=1}return{archived:l,skipped:c}}e.s(["compactProcessedSpoolFiles",()=>r])},667034,e=>{"use strict";var t=e.i(902157),n=e.i(308033),r=e.i(571902);let i="Claude Code";function o(e,t=0){if(null==e||""===e)return t;let n=Number(e);return Number.isFinite(n)?n:t}function a(e,t=0){return Math.max(0,o(e,t))}function s(e){return e.eventTimestamp||e.receivedAt||new Date().toISOString()}function u(e){let t=Date.parse(s(e));return 1e3*(Number.isFinite(t)?t:0)+(e.sequence||0)}function l(e){return[e.sessionId,e.promptId||"",e.sequence??"",e.eventName,e.eventTimestamp||"",e.spanId||""].join("|")}function c(e){return e.promptId||"__session__"}function d(e){if(null!=e&&Number.isFinite(e))return new Date(e).toISOString()}function f(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);return Number.isFinite(e)?e>0&&e<1e10?1e3*e:e:void 0}let n=Date.parse(t);return Number.isFinite(n)?n:void 0}}}function m(e){if(!e)return null;if("object"==typeof e)return e;if("string"!=typeof e)return null;try{return JSON.parse(e)}catch{return null}}function p(e){let n=m(e.body);if(n)return n;let r="string"==typeof e.body_ref?e.body_ref:"";if(!r)return null;try{if(!t.default.existsSync(r))return null;let e=t.default.readFileSync(r,"utf8");return m(e)}catch{return null}}function g(e){if("string"==typeof e)return e;if(!Array.isArray(e))return"";let t=[];for(let n of e)n&&("string"==typeof n?t.push(n):"text"===n.type&&"string"==typeof n.text&&t.push(n.text));return t.join("")}function _(e){let t=e?.content;return Array.isArray(t)?t:[]}function h(e,t){let n=e?.attributes||{},r=f(e?s(e):s(t)),i=o(n.duration_ms),a=null!=r&&i>0?r+i:f(s(t));return{created:d(r)||s(t),completed:d(a)}}function y(e){let t="string"==typeof e?e:"tool";return"agent"===t.toLowerCase()?"task":t}function v(e){return("string"==typeof e&&e.trim()?e.trim():"agent").toLowerCase()}function S(e){let t={...e?.input||{}};return e?.name!=="Agent"||t.subagent_type||t.subagentType||(t.subagent_type=v(void 0)),{id:e?.id,type:"function",function:{name:y(e?.name),arguments:JSON.stringify(t||{})},name:y(e?.name),raw_name:e?.name,arguments:JSON.stringify(t||{}),trace_split_parallel_task:e?.name==="Agent",state:"pending"}}function x(e){if(null==e)return;if("string"!=typeof e)return e;let t=e.trim();if(t&&"claude_code.tool_result"!==t&&"tool_result"!==t){if(t.startsWith("{")||t.startsWith("["))try{return JSON.parse(t)}catch{}return e}}function I(e,t){let n={...e,...t};return(e.function||t.function)&&(n.function={...e.function||{},...t.function||{}}),"task"===e.name&&"Agent"===t.raw_name&&(n.name="task",n.function={...n.function||{},name:"task"}),n}function w(e,t){let n=Array.isArray(e.tool_calls)?e.tool_calls:[],r=n.findIndex(e=>e.id===t.id);e.tool_calls=r>=0?n.map((e,n)=>n===r?I(e,t):e):[...n,t]}function k(e){return e.filter(e=>e?.type==="tool_use"&&e.id)}function b(e){let t=e?.input||{};return e?.name==="Agent"?v(t.subagent_type||t.subagentType):t.subagent_type||t.subagentType||e?.name||"Subagent"}function C(e){let t=(0,r.readClaudeOtelEventsForSession)(e);return{sessionId:e,eventCount:t.length,record:function(e,t){let r=(function(e){let t=new Set,n=[];for(let r of e){let e=[r.sessionId,r.promptId||"",r.sequence??"",r.eventName,r.eventTimestamp||"",r.spanId||"",r.attributes?.request_id||"",r.attributes?.tool_use_id||""].join("|");t.has(e)||(t.add(e),n.push(r))}return n})(t).filter(t=>t.sessionId===e).sort((e,t)=>u(e)-u(t));if(0===r.length)return null;let C=[],M=new Map,N=new Map,O=new Map,T=new Map,z=new Map,A=new Map,q=new Map,E="",$="",j="",R=0,D=0,L=0,J=0,F=0,P=0,H=0,U=0,K=0,B=0,G=s(r[0]),Q=r.find(e=>e.user)?.user,V=new Set,W=new Set([i]),X=new Map,Y=new Set,Z=new Map;for(let e of r){if("api_request_body"===e.eventName){let t=p(e.attributes||{});if(t){var ee,et;for(let e of Array.isArray(t?.messages)?t.messages:[])for(let t of Array.isArray(e?.content)?e.content:[]){if(t?.type!=="tool_result")continue;let e=t?.tool_use_id||t?.toolUseId||t?.toolUseID||t?.id;if(!e)continue;let n=function(e){if(e&&"object"==typeof e){for(let t of["content","output","result","stdout","stderr"])if(void 0!==e[t])return function e(t){if(null!=t){if("string"==typeof t)return t;if(Array.isArray(t))return t.map(e=>"string"==typeof e?e:"string"==typeof e?.text?e.text:"string"==typeof e?.content?e.content:"").filter(Boolean).join("")||t;if("object"==typeof t){if("string"==typeof t.text)return t.text;if("string"==typeof t.content)return t.content;if(void 0!==t.output)return e(t.output);if(void 0!==t.result)return e(t.result)}return t}}(e[t])}}(t);void 0!==n&&q.set(e,n)}let n=(et=t.system)?"string"==typeof et?et.trim():Array.isArray(et)?et.map(e=>"string"==typeof e?e:"string"==typeof e?.text?e.text:"").filter(Boolean).join("\n").trim():"object"==typeof et&&"string"==typeof et.text?et.text.trim():"":"";n&&X.set(c(e),n)}continue}if("api_request"===e.eventName){let t=c(e),n=Z.get(t)||[];n.push(e),Z.set(t,n);continue}if("api_response_body"!==e.eventName)continue;let t=p(e.attributes||{});if(!t)continue;let n=c(e),r=Z.get(n)?.shift(),i=_(t);for(let n of(M.set(l(e),{request:r,body:t,content:i}),k(i)))if(N.set(n.id,n),"Agent"===n.name){let t=b(n);O.set(n.id,`${e.sessionId}:${e.promptId||"prompt"}:${t}:${n.id}`)}}let en=new Set;for(let e=0;e<r.length;e++){let t=r[e];if("tool_result"!==t.eventName)continue;let n=t.attributes?.tool_use_id;for(let i=e-1;i>=0;i--){let e=r[i];if(e.promptId!==t.promptId||e.sessionId!==t.sessionId)continue;if("user_prompt"===e.eventName)break;if("api_response_body"!==e.eventName)continue;let o=M.get(l(e));if(!o||k(o.content).length>0)continue;let a=l(e);if(!en.has(a)){en.add(a),"string"==typeof n&&n&&(T.set(a,n),z.set(n,g(o.content)));break}}}for(let e of r){let t=e.attributes||{};if((!G||Date.parse(s(e))<Date.parse(G))&&(G=s(e)),!Q&&e.user&&(Q=e.user),"user_prompt"===e.eventName){let n=("string"==typeof(ee=t.prompt)?ee:"")||"[Redacted Claude Code prompt]";E||"[Redacted Claude Code prompt]"===n||(E=n),C.push({role:"user",content:n,timestamp:s(e),timeInfo:{created:s(e),completed:s(e)},agent:i,prompt_id:e.promptId,command_name:t.command_name,command_source:t.command_source});continue}if("api_request"===e.eventName){let e=o(t.input_tokens),n=o(t.output_tokens),r=o(t.cache_read_tokens),i=o(t.cache_creation_tokens),a=e+n+r+i;L+=e,J+=n,F+=r,P+=i,H=Math.max(H,a),R+=o(t.cost_usd),D+=o(t.duration_ms),U+=1,t.model&&(j=String(t.model));continue}if("api_response_body"===e.eventName){let t={finalResult:$,model:j,responseMetaByKey:M,responseToToolId:T,toolUseById:N,subagentSessionByToolId:O,systemByPromptKey:X,emittedSystemScopes:Y};!function(e,t,n){let r=e.attributes||{},o=n.responseMetaByKey.get(l(e)),u=o?.body||p(r);if(!u)return;let d=o?.content||_(u),f=g(d);f.trim()&&(n.finalResult=f),(r.model||u.model)&&(n.model=String(r.model||u.model));let m=o?.request,y=function(e,t={}){let n=a(void 0!==t.input_tokens&&""!==t.input_tokens?t.input_tokens:e?.input_tokens??e?.input),r=a(void 0!==t.output_tokens&&""!==t.output_tokens?t.output_tokens:e?.output_tokens??e?.output),i=a(void 0!==t.cache_read_tokens&&""!==t.cache_read_tokens?t.cache_read_tokens:e?.cache_read_input_tokens??e?.cache_read_tokens),o=a(void 0!==t.cache_creation_tokens&&""!==t.cache_creation_tokens?t.cache_creation_tokens:e?.cache_creation_input_tokens??e?.cache_creation_tokens),s=Math.max(a(e?.total_tokens??e?.total),n+r+i+o);return{total:s,total_tokens:s,input:n,output:r,input_tokens:n,output_tokens:r,cache:{read:i,write:o}}}(u.usage,m?.attributes||{}),v=k(d).map(S),x=n.responseToToolId.get(l(e)),I=x?n.toolUseById.get(x):void 0,w=!!x&&I?.name==="Agent",C=w?b(I):void 0,M=x?n.subagentSessionByToolId.get(x):void 0,N=n.systemByPromptKey.get(c(e));if(N){let o=w?M||`${e.sessionId}:${x}`:void 0,a=`${o||"__root__"}::${N}`;n.emittedSystemScopes.has(a)||(n.emittedSystemScopes.add(a),t.push({role:"system",content:N,system_prompt_length:N.length,timestamp:s(e),timeInfo:h(m,e),agent:w?C:i,subagent_session_id:o,prompt_id:e.promptId,model:r.model||u.model}))}let O=function(e){if(!Array.isArray(e))return;let t=[];for(let n of e)n?.type==="thinking"&&"string"==typeof n.thinking&&n.thinking.trim()&&t.push({type:"reasoning",text:n.thinking});return t.length>0?t:void 0}(d);t.push({role:w?"subagent":"assistant",content:f,content_blocks:d,...O?{parts:O}:{},timestamp:s(e),timeInfo:h(m,e),agent:w?C:i,subagent_name:w?C:void 0,subagent_session_id:w?M||`${e.sessionId}:${x}`:void 0,prompt_id:e.promptId,model:r.model||u.model,request_id:r.request_id||u.id,stop_reason:u.stop_reason,usage:y,tool_calls:v.length>0?v:void 0})}(e,C,t),$=t.finalResult,j=t.model||j;let n=C[C.length-1];if(n&&Array.isArray(n.tool_calls))for(let e of n.tool_calls)e?.id&&A.has(e.id)&&(w(n,A.get(e.id)),A.delete(e.id));n?.agent&&W.add(n.agent);continue}if("tool_result"===e.eventName){K+=1,"false"===String(t.success)&&(B+=1);let n=t.tool_use_id,r=function(e,t,n){let r,i,a=e.attributes||{},u=m(a.tool_parameters),l=m(a.tool_input),c={...t?.input||l||u||{}},p=y(t?.name||a.tool_name||"tool");return"Agent"!==(t?.name||a.tool_name)||c.subagent_type||c.subagentType||(c.subagent_type=v(void 0)),{id:a.tool_use_id,type:"function",function:{name:p,arguments:JSON.stringify(c||{})},name:p,raw_name:t?.name||a.tool_name,arguments:JSON.stringify(c||{}),trace_split_parallel_task:"Agent"===(t?.name||a.tool_name),state:"false"===String(a.success)?"error":"success",timing:(r=o(e.attributes?.duration_ms),{started_at:d(null!=(i=f(s(e)))&&r>0?i-r:void 0),completed_at:d(i)}),duration_ms:o(a.duration_ms),decision_type:a.decision_type,decision_source:a.decision_source,output_size_bytes:o(a.tool_result_size_bytes),error_type:a.error_type,error:a.error,output:n}}(e,"string"==typeof n?N.get(n):void 0,function(e,t){let n=e.attributes||{};for(let e of["tool_result","tool_result_content","tool_result_text","tool_output","tool_output_text","output","result"]){if(!Object.prototype.hasOwnProperty.call(n,e))continue;let t=x(n[e]);if(void 0!==t)return t}let r=x(e.body);return void 0!==r?r:t}(e,"string"==typeof n?q.has(n)?q.get(n):z.get(n):void 0)),i=C.find(e=>Array.isArray(e.tool_calls)&&e.tool_calls.some(e=>e.id===r.id));if(i||r.id||(i=[...C].reverse().find(e=>"assistant"===e.role)),i)w(i,r);else if(r.id){let e=A.get(r.id);A.set(r.id,e?I(e,r):r)}let a=m(t.tool_parameters)?.skill_name||m(t.tool_input)?.skill;"string"==typeof a&&a.trim()&&V.add(a.trim());continue}}if(E||(E=`Claude Code Session ${e}`),!$){let e=[...C].reverse().find(e=>"assistant"===e.role&&g(e.content).trim());$=e?g(e.content):""}return{task_id:e,query:E,framework:"claudecode",model:j,tokens:L+J+F+P,cost:R,latency:D/1e3,timestamp:G,final_result:$||"[No final text output]",interactions:(0,n.normalizeClaudeCodeInteractionsForStorage)(C),skills:Array.from(V),agent:i,agentName:i,agents:Array.from(W),user:Q,tool_call_count:K,llm_call_count:U,input_tokens:L,output_tokens:J,tool_call_error_count:B,cache_read_input_tokens:F,cache_creation_input_tokens:P,max_single_call_tokens:H}}(e,t)}}function M(...e){for(let t of e){let e=function(e){if(null!=e){if("string"==typeof e)return e.trim()?e:void 0;try{return JSON.stringify(e)}catch{return String(e)}}}(t);if(e)return e}}function N(e){return e.usage.total_tokens||e.usage.input_tokens+e.usage.output_tokens+(e.usage.reasoning_tokens||0)}function O(e){let t=e.attributes||{};return M(e.model,t["gen_ai.request.model"],t["llm.request.model"],t["llm.model_name"],t["gen_ai.response.model"])}function T(e){let t=e.attributes||{};return"AGENT"===String(t["openinference.span.kind"]||t["traceloop.span.kind"]||t["span.kind"]||"").toUpperCase()||"agent"===String(e.name||"").toLowerCase()}function z(e){return new Date(e||Date.now()).toISOString()}let A={id:"generic",matches:()=>!0,aggregate:function(e,t){let n=t.filter(t=>t.sessionId===e);if(!n.length)return null;let r=[],i=new Map,o=[];for(let e of n)if("llm"===e.kind){let t=function(e){let t=e.attributes||{},n=M(t["gen_ai.prompt"],t["input.value"],t["db.statement"]),r=M(t["gen_ai.completion"],t["output.value"],t["db.result"]),i=e.startTimeMs||Date.parse(e.receivedAt)||Date.now(),o=i+Math.max(0,e.latencyMs||0),a={role:"assistant",content:r||"",spanId:e.spanId,parentSpanId:e.parentSpanId,traceId:e.traceId,name:e.name,model:O(e),usage:{input_tokens:e.usage.input_tokens,output_tokens:e.usage.output_tokens,reasoning_tokens:e.usage.reasoning_tokens||void 0,total:e.usage.total_tokens},timestamp:z(i),timeInfo:{created:z(i),completed:z(o)},agent:e.serviceName};return n&&(a.requestMessages=[{role:"user",content:n}]),a}(e);r.push(t),e.spanId&&i.set(e.spanId,t)}else o.push(e);for(let e of o){let t=function(e){let t=e.attributes||{},n=e.startTimeMs||Date.parse(e.receivedAt)||Date.now(),r=n+Math.max(0,e.latencyMs||0),i=M(t["output.value"],t["tool.output"],t["tool.result"]),o=String(t["tool.status"]||t["tool.outcome"]||"").toLowerCase();return{id:e.spanId,type:"function",state:"error"===o||"failed"===o?"error":"success",function:{name:t["tool.name"]||e.name||"tool",arguments:M(t["tool.arguments"],t["input.value"])||JSON.stringify(t)},output:i,result:i,timing:{started_at:z(n),completed_at:z(r)}}}(e),n=(e.parentSpanId?i.get(e.parentSpanId):void 0)||r[r.length-1];n?n.tool_calls=Array.isArray(n.tool_calls)?[...n.tool_calls,t]:[t]:r.push({role:"assistant",content:"",agent:e.serviceName,timestamp:z(e.startTimeMs||Date.parse(e.receivedAt)||Date.now()),tool_calls:[t]})}let a=n.filter(e=>N(e)>0),s=a.filter(e=>!T(e)),u=n.some(T)&&s.length?s:a,l=n.map(e=>e.latencyMs||0).filter(e=>e>0),c=n.some(T)?Math.max(0,...l):l.reduce((e,t)=>e+t,0),d=r.find(e=>e?.requestMessages?.[0]?.content),f=[...r].reverse().find(e=>e?.content),m=n[0],p=n.find(e=>O(e));return{task_id:e,query:d?.requestMessages?.[0]?.content||"OTel Session",framework:m.serviceName||"unknown-service",model:p&&O(p)||"unknown",tokens:u.reduce((e,t)=>e+N(t),0),latency:c,final_result:f?.content||"",timestamp:new Date(m.startTimeMs||Date.parse(m.receivedAt)||Date.now()),label:m.serviceName||"unknown-service",user:m.user||"anonymous",interactions:r,agent:m.serviceName,agentName:m.serviceName,llm_call_count:n.filter(e=>"llm"===e.kind&&!T(e)).length,tool_call_count:o.length,tool_call_error_count:o.filter(e=>{let t=String(e.attributes?.["tool.status"]||e.attributes?.["tool.outcome"]||"").toLowerCase();return"error"===t||"failed"===t}).length,input_tokens:u.reduce((e,t)=>e+t.usage.input_tokens,0),output_tokens:u.reduce((e,t)=>e+t.usage.output_tokens,0),reasoning_tokens:u.reduce((e,t)=>e+(t.usage.reasoning_tokens||0),0)||void 0}}};function q(e){return Number.isFinite(e.startTimeMs)?e.startTimeMs:0}function E(e){return new Date(e||Date.now()).toISOString()}function $(e){return(e.startTimeMs||0)+Math.max(0,e.latencyMs||0)}function j(e){return e.reduce((e,t)=>e?$(t)>=$(e)?t:e:t,void 0)}function R(...e){for(let t of e){let e=function(e){if(null!=e){if("string"==typeof e)return e.trim()?e:void 0;if("object"==typeof e)try{return JSON.stringify(e)}catch{return}return String(e)}}(t);if(e)return e}}function D(e){let t=e.attributes||{};return R(e.model,t["gen_ai.request.model"],t["llm.request.model"],t["llm.model_name"],t["gen_ai.response.model"])}function L(e){let t=e.attributes||{};return String(t["openinference.span.kind"]||t["traceloop.span.kind"]||t["span.kind"]||"").toUpperCase()}function J(e){let t=e.usage||{};return t.total_tokens||(t.input_tokens||0)+(t.output_tokens||0)+(t.reasoning_tokens||0)}function F(e){let t=e.attributes||{};return"AGENT"===L(e)||"session"===String(t["hermes.session.kind"]||"").toLowerCase()||"agent"===String(e.name||"").toLowerCase()}function P(e){return String(e.name||"").startsWith("api.")}function H(e){let t=e.attributes||{},n=t["llm.response.finish_reason"]??t["gen_ai.response.finish_reasons"];if(Array.isArray(n))return String(n[0]||"").toLowerCase();let r=String(n||"").trim();if(r.startsWith("["))try{let e=JSON.parse(r);if(Array.isArray(e))return String(e[0]||"").toLowerCase()}catch{}return r.toLowerCase()}function U(e){if("llm"!==e.kind||F(e)||P(e))return!1;let t=e.attributes||{};return!!String(e.name||"").startsWith("llm.")||void 0!==t["input.value"]||void 0!==t["output.value"]}function K(e){return"tool"===e.kind||"TOOL"===L(e)||void 0!==(e.attributes||{})["tool.name"]}function B(e,t){let n=String(e||"").trim();if(n)return"default"===n.toLowerCase()?t:n}function G(e,t,n){let r=e.attributes||{},i=R(r["hermes.session_id"])||t,o=R(r["hermes.parent_session_id"]),a=R(r["hermes.agent.role"]),s=i!==t||!!o||void 0!==a&&"root"!==a,u=B(R(r["hermes.profile.name"]),n),l=B(R(r["hermes.agent.name"]),n),c=(s||l?.toLowerCase()!=="root"?l:u)||u||(s?B(a,n):void 0)||n;return{sessionId:i,isSubagent:s,name:c}}function Q(e,t){return e.isSubagent?{role:"subagent",agent:e.name,subagent_name:e.name,subagent_session_id:e.sessionId}:{role:"assistant",agent:e.name||t}}function V(e){return String((e.attributes||{})["tool.name"]||e.name||"tool").replace(/^tool\./,"")||"tool"}function W(e){if(!e)return e;let t=e.trim();if(!t||!t.startsWith("{")&&!t.startsWith("["))return e;try{return JSON.parse(t)}catch{return e}}function X(e){if(null==e)return"";if("string"==typeof e)return e;if(Array.isArray(e))return e.map(e=>"string"==typeof e?e:e?.text?String(e.text):e?.content?X(e.content):"").filter(Boolean).join("\n");if("object"==typeof e){if(e.text)return String(e.text);if(e.content)return X(e.content)}return String(e)}function Y(e){if(!e)return;let t=R(e.attributes?.["input.value"]);return function(e){let t="string"==typeof e?W(e):void 0,n=Array.isArray(t)?t:Array.isArray(t?.messages)?t.messages:void 0;if(n)for(let e=n.length-1;e>=0;e--){let t=n[e];if("user"!==String(t?.role||"").toLowerCase())continue;let r=X(t.content);if(r.trim())return r}}(t)||t}function Z(e){if(!e)return;let t=R(e.attributes?.["output.value"]);if(!t)return;let n=W(t);return n&&"object"==typeof n?function(e){let t="string"==typeof e?W(e):void 0;if(!t||"object"!=typeof t)return;let n=Array.isArray(t.choices)?t.choices:void 0;if(n){let e=n.map(e=>X(e?.message?.content??e?.delta?.content??e?.text)).filter(e=>e.trim()).join("\n");if(e.trim())return e}let r=R(t.output_text,t.message?.content,t.content,t.text);if(r)return r;if(Array.isArray(t.output)){let e=t.output.flatMap(e=>Array.isArray(e?.content)?e.content:[e?.content??e]).map(e=>X(e?.text??e?.content??e)).filter(e=>e.trim()).join("\n");if(e.trim())return e}if(Array.isArray(t.candidates)){let e=t.candidates.flatMap(e=>e?.content?.parts??e?.content??e?.output??e).map(e=>X(e?.text??e?.content??e)).filter(e=>e.trim()).join("\n");if(e.trim())return e}}(t):t}function ee(e){if(!e)return;let t=e.attributes||{};return R(t["error.message"],t["exception.message"],t["hermes.api_error.reason"])}function et(e){return{input_tokens:e.reduce((e,t)=>e+(t.usage?.input_tokens||0),0),output_tokens:e.reduce((e,t)=>e+(t.usage?.output_tokens||0),0),reasoning_tokens:e.reduce((e,t)=>e+(t.usage?.reasoning_tokens||0),0),total:e.reduce((e,t)=>e+J(t),0)}}function en(e){let t=e.sourceEvent||e.llm,n=Math.max(t.startTimeMs||0,...e.usageEvents.map(e=>e.startTimeMs||0))||Date.parse(t.receivedAt)||Date.now(),r=$(t)||n,i=et(e.usageEvents),o=ee(t);return{...Q(e.owner,e.framework),content:e.content,timestamp:E(n),timeInfo:{created:E(n),completed:E(r)},traceId:t.traceId,spanId:`${t.spanId||e.llm.spanId||"llm"}:output`,parentSpanId:t.parentSpanId||e.llm.spanId,name:t.name,model:e.model,usage:{input_tokens:i.input_tokens,output_tokens:i.output_tokens,reasoning_tokens:i.reasoning_tokens||void 0,total:i.total},...o?{status:"error",error:{message:o}}:{}}}let er=[{id:"hermes",matches:e=>e.some(e=>"hermes"===e.serviceName||e.attributes?.["hermes.session_id"]!==void 0||e.attributes?.["agent.insight.framework"]==="hermes"),aggregate:function(e,t){let n=t.filter(t=>t.sessionId===e).sort((e,t)=>q(e)-q(t));if(0===n.length)return null;let r=n.find(e=>e.serviceName)?.serviceName||"hermes",i=function(e){let t=new Map;for(let n of e){if(!n.parentSpanId)continue;let e=t.get(n.parentSpanId)||[];e.push(n),t.set(n.parentSpanId,e)}for(let e of t.values())e.sort((e,t)=>q(e)-q(t));return t}(n),o=j(n.filter(t=>F(t)&&!G(t,e,r).isSubagent)),a=n.filter(U),s=a.length>0?a:o?[o]:[],u=[],l=n.map(D).filter(Boolean)[0]||"unknown",c=new Set;for(let t of s){let o=G(t,e,r),a=n.find(t=>F(t)&&G(t,e,r).sessionId===o.sessionId),s=function(e,t){if(!e.spanId)return[];let n=[],r=[...t.get(e.spanId)||[]];for(;r.length>0;){let e=r.shift();n.push(e),!e.spanId||F(e)||U(e)||r.push(...t.get(e.spanId)||[])}return n.sort((e,t)=>q(e)-q(t))}(t,i),d=s.length>0?s:n.filter(n=>n.traceId===t.traceId&&n!==t&&G(n,e,r).sessionId===o.sessionId&&!F(n)&&!U(n)),f=d.filter(P),m=[...f].reverse().find(e=>"stop"===H(e)&&Z(e)),p=Y(t)||Y(a),g=Z(m)||Z(t)||Z(a),_=function(e){for(let t of e){if(!t)continue;let e=function(e){let t="string"==typeof e?W(e):void 0,n=Array.isArray(t)?t:Array.isArray(t?.messages)?t.messages:void 0;if(!n)return;let r=[];for(let e of n){if("system"!==String(e?.role||"").toLowerCase())continue;let t=X(e.content);t.trim()&&r.push(t)}return r.length>0?r.join("\n\n"):void 0}(R(t.attributes?.["llm.input_messages"],t.attributes?.["input.value"]));if(e)return e}}([m,...f,t,a]);if(_){let e=`${o.sessionId}::${_}`;c.has(e)||(c.add(e),u.push(function(e){let t=e.event.startTimeMs||Date.parse(e.event.receivedAt)||Date.now();return{role:"system",agent:e.owner.name||e.framework,...e.owner.isSubagent?{subagent_session_id:e.owner.sessionId}:{},content:e.content,system_prompt_length:e.content.length,timestamp:E(t),timeInfo:{created:E(t),completed:E(t)},traceId:e.event.traceId,spanId:`${e.event.spanId||"llm"}:system`}}({content:_,event:t,framework:r,owner:o})))}if(p){let e=[...u].reverse().find(e=>"user"===e.role);e&&e.content===p||u.push(function(e){let t=e.event.startTimeMs||Date.parse(e.event.receivedAt)||Date.now();return{...Q(e.owner,e.framework),role:e.owner.isSubagent?"subagent":"user",content:e.content,timestamp:E(t),timeInfo:{created:E(t),completed:E(t)},traceId:e.event.traceId,spanId:`${e.event.spanId||"llm"}:input`}}({content:p,event:t,framework:r,owner:o}))}for(let e of d.filter(e=>P(e)||K(e))){if(P(e)){if(e===m)continue;let n=ee(e),i=Z(e)||(n?`API request failed: ${n}`:void 0);i&&u.push(en({content:i,llm:t,sourceEvent:e,framework:r,model:D(e)||l,usageEvents:[e],owner:o}));continue}u.push(function(e){var t;let n,r,i,o,a,s=e.tool.startTimeMs||Date.parse(e.tool.receivedAt)||Date.now(),u=$(e.tool)||s;return{...Q(e.owner,e.framework),content:"",timestamp:E(s),timeInfo:{created:E(s),completed:E(u)},traceId:e.llm.traceId,spanId:`${e.llm.spanId||"llm"}:${e.tool.spanId||V(e.tool)}`,parentSpanId:e.llm.spanId,name:`tool.${V(e.tool)}`,model:e.model,usage:{input_tokens:0,output_tokens:0,total:0},tool_calls:[(n=(t=e.tool).attributes||{},r=t.startTimeMs||Date.parse(t.receivedAt)||Date.now(),i=$(t)||r,o=R(n["output.value"],n["tool.output"],n["tool.result"]),a=String(n["hermes.tool.outcome"]||n["tool.outcome"]||"").toLowerCase(),{id:t.spanId,type:"function",state:"error"===a||"failed"===a?"error":"success",function:{name:V(t),arguments:R(n["tool.arguments"],n["input.value"])||JSON.stringify(n)},output:o,result:o,timing:{started_at:E(r),completed_at:E(i)}})]}}({llm:t,tool:e,framework:r,model:l,owner:o}))}g&&u.push(en({content:g,llm:t,sourceEvent:m,framework:r,model:l,usageEvents:m?[m]:f,owner:o}))}if(0===u.length)return null;u.sort((e,t)=>(Date.parse(e.timestamp||"")||0)-(Date.parse(t.timestamp||"")||0));let d=et(function(e,t){if(t&&J(t)>0)return[t];let n=e.filter(e=>P(e)&&J(e)>0);return n.length>0?n:e.filter(e=>J(e)>0&&!U(e))}(n,o)),f=n[0],m=[...u].reverse().find(e=>"assistant"===e.role&&String(e.content||"").trim()),p=u.find(e=>"user"===e.role&&String(e.content||"").trim()),g=m?.content||"",_=j(n.filter(t=>{let n=G(t,e,r);return P(t)&&!n.isSubagent&&n.sessionId===e&&"stop"===H(t)&&!!Z(t)})),h=g?function(e){if(!e)return;let t=$(e);return t>0?E(t):void 0}(o||_):void 0,y=o?.latencyMs||Math.max(...n.map(e=>e.latencyMs||0),0),v=n.filter(P).length||s.length,S=o?G(o,e,r):n.map(t=>G(t,e,r)).find(e=>!e.isSubagent),x=S?.name||r;return{task_id:e,query:p?.content||"Hermes Session",framework:r,model:l,tokens:d.total,latency:y,final_result:g,trace_completed_at:h,timestamp:new Date(f.startTimeMs||Date.parse(f.receivedAt)||Date.now()),label:r,user:f.user||"anonymous",interactions:u,agent:x,agentName:x,llm_call_count:v,tool_call_count:n.filter(K).length,input_tokens:d.input_tokens,output_tokens:d.output_tokens,reasoning_tokens:d.reasoning_tokens||void 0}}},A];function ei(){return"false"!==process.env.AGENT_INSIGHT_CLAUDE_OTEL_SKIP_EVALUATION}function eo(){return[{id:"claude-otel-logs",spoolDir:r.getClaudeOtelSpoolDir,listFiles:()=>(0,r.listClaudeOtelSpoolFiles)((0,r.getClaudeOtelSpoolDir)()),aggregate:C,defaultSkipEvaluation:ei},{id:"otel-traces",spoolDir:r.getOtelTraceSpoolDir,listFiles:()=>(0,r.listOtelTraceSpoolFiles)((0,r.getOtelTraceSpoolDir)()),aggregate:e=>{var t;let n;return t=(0,r.getOtelTraceSpoolDir)(),{sessionId:e,eventCount:(n=(0,r.readOtelTraceEventsForSession)(e,t)).length,record:function(e,t){let n=new Set,r=t.filter(t=>t.sessionId===e).filter(e=>{let t=e.spanId||[e.sessionId,e.traceId||"",e.name||"",e.kind,e.startTimeMs||""].join("|");return!n.has(t)&&(n.add(t),!0)}).sort((e,t)=>(e.startTimeMs||0)-(t.startTimeMs||0));return r.length?(er.find(e=>e.matches(r))||A).aggregate(e,r):null}(e,n)}},defaultSkipEvaluation:()=>!0}]}e.s(["listSources",()=>eo],667034)},588876,e=>e.a(async(t,n)=>{try{e.i(210954);var r=e.i(184599),i=e.i(742529),o=e.i(256451),a=e.i(401682),s=t([a]);[a]=s.then?(await s)():s;let w=i.z.object({has_task_output:i.z.boolean().default(!1),confidence:i.z.number().min(0).max(1).default(0),selected_source_id:i.z.string().nullable().default(null),needs_followup_context:i.z.boolean().default(!1),followup_anchor_llm_call_id:i.z.string().nullable().default(null),reason:i.z.string().default("")}),k=i.z.object({has_task_output:i.z.boolean().default(!1),confidence:i.z.number().min(0).max(1).default(0),selected_source_id:i.z.string().nullable().default(null),artifact_paths:i.z.array(i.z.string()).default([]),reason:i.z.string().default("")});async function u(e){var t;let n,i=await (0,a.getActiveConfig)(e);if(!i)return{client:null,model:null};let{customFetch:s}=(0,o.getProxyConfig)();return{client:new r.OpenAI({apiKey:i.apiKey||"no-api-key-required",baseURL:(t=i.baseUrl||"https://api.deepseek.com",String(t||"").replace(/\/chat\/completions\/?$/,"")),fetch:s,timeout:(n=Number(process.env.RESULT_ARTIFACT_TIMEOUT_MS||process.env.JUDGMENT_TIMEOUT_MS||3e5),Number.isFinite(n)&&n>0?n:3e5)}),model:i.model||"deepseek-chat"}}function l(e){let t=e.trim();if(!t)return null;let n=t.match(/```(?:json)?\s*([\s\S]*?)\s*```/i);if(n)t=n[1];else{let e=t.indexOf("{"),n=t.lastIndexOf("}");-1!==e&&-1!==n&&n>=e&&(t=t.substring(e,n+1))}try{return JSON.parse(t)}catch{return null}}function c(e){return e&&"object"==typeof e&&!Array.isArray(e)?e:null}function d(e){if(null==e)return"";if("string"==typeof e)return e;if("number"==typeof e||"boolean"==typeof e)return String(e);try{return JSON.stringify(e,null,2)}catch{return String(e)}}function f(e,t){let n=String(e||"").trim();if(n.length<=t)return n;let r=Math.floor(.65*t),i=Math.max(0,t-r-80);return`${n.slice(0,r)}
2
+ `,"utf8"),t.default.renameSync(o,i)}function s(e,t){let n=o(e);return{bytes:n.files[t]?.bytes||0}}function u(e,t,n){let r=o(e);r.files[t]={bytes:Math.max(0,n.bytes||0),updatedAt:new Date().toISOString()},a(e,r)}function l(e,t){let n=o(e);n.files[t]&&(delete n.files[t],a(e,n))}function c(e,o=function(e){let r=[],i=e=>{let o=[];try{o=t.default.readdirSync(e,{withFileTypes:!0})}catch{return}for(let t of o){let o=n.default.join(e,t.name);t.isDirectory()?i(o):t.isFile()&&t.name.endsWith(".jsonl")&&r.push(o)}};try{for(let r of t.default.readdirSync(e,{withFileTypes:!0}).filter(e=>e.isDirectory()))i(n.default.join(e,r.name))}catch{}return r.sort()}(e)){if(t.default.existsSync(r(e)))return;let s={version:1,files:{}},u=new Date().toISOString();for(let n of o)try{let r=i(e,n);s.files[r]={bytes:t.default.statSync(n).size,updatedAt:u}}catch{}a(e,s)}e.s(["getFileCursor",()=>s,"invalidateCursor",()=>l,"loadCheckpoint",()=>o,"saveFileCursor",()=>u,"seedToEof",()=>c,"toCheckpointRelPath",()=>i])},337216,e=>{"use strict";var t=e.i(902157),n=e.i(460535);function r(e,i,o,a=new Date){if(!Number.isFinite(o)||o<1)return{archived:0,skipped:i.length};let s=(0,n.loadCheckpoint)(e),u=a.getTime()-24*o*36e5,l=0,c=0;for(let r of i){let i=(0,n.toCheckpointRelPath)(e,r),o=function(e){let t=e.split("/")[0];return/^\d{4}-\d{2}-\d{2}$/.test(t)?t:null}(i),a=o?Date.parse(`${o}T00:00:00.000Z`):NaN;if(!Number.isFinite(a)||a>=u){c+=1;continue}let d=s.files[i],f=0;try{f=t.default.statSync(r).size}catch{c+=1;continue}if(!d||d.bytes<f){c+=1;continue}t.default.renameSync(r,function(e){let n=`${e}.processed`;return t.default.existsSync(n)?`${n}.${Date.now()}`:n}(r)),(0,n.invalidateCursor)(e,i),l+=1}return{archived:l,skipped:c}}e.s(["compactProcessedSpoolFiles",()=>r])},667034,e=>{"use strict";var t=e.i(902157),n=e.i(308033),r=e.i(571902);let i="Claude Code";function o(e,t=0){if(null==e||""===e)return t;let n=Number(e);return Number.isFinite(n)?n:t}function a(e,t=0){return Math.max(0,o(e,t))}function s(e){return e.eventTimestamp||e.receivedAt||new Date().toISOString()}function u(e){let t=Date.parse(s(e));return 1e3*(Number.isFinite(t)?t:0)+(e.sequence||0)}function l(e){return[e.sessionId,e.promptId||"",e.sequence??"",e.eventName,e.eventTimestamp||"",e.spanId||""].join("|")}function c(e){return e.promptId||"__session__"}function d(e){if(null!=e&&Number.isFinite(e))return new Date(e).toISOString()}function f(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);return Number.isFinite(e)?e>0&&e<1e10?1e3*e:e:void 0}let n=Date.parse(t);return Number.isFinite(n)?n:void 0}}}function m(e){if(!e)return null;if("object"==typeof e)return e;if("string"!=typeof e)return null;try{return JSON.parse(e)}catch{return null}}function p(e){let n=m(e.body);if(n)return n;let r="string"==typeof e.body_ref?e.body_ref:"";if(!r)return null;try{if(!t.default.existsSync(r))return null;let e=t.default.readFileSync(r,"utf8");return m(e)}catch{return null}}function g(e){if("string"==typeof e)return e;if(!Array.isArray(e))return"";let t=[];for(let n of e)n&&("string"==typeof n?t.push(n):"text"===n.type&&"string"==typeof n.text&&t.push(n.text));return t.join("")}function _(e){let t=e?.content;return Array.isArray(t)?t:[]}function h(e,t){let n=e?.attributes||{},r=f(e?s(e):s(t)),i=o(n.duration_ms),a=null!=r&&i>0?r+i:f(s(t));return{created:d(r)||s(t),completed:d(a)}}function y(e){let t="string"==typeof e?e:"tool";return"agent"===t.toLowerCase()?"task":t}function v(e){return("string"==typeof e&&e.trim()?e.trim():"agent").toLowerCase()}function S(e){let t={...e?.input||{}};return e?.name!=="Agent"||t.subagent_type||t.subagentType||(t.subagent_type=v(void 0)),{id:e?.id,type:"function",function:{name:y(e?.name),arguments:JSON.stringify(t||{})},name:y(e?.name),raw_name:e?.name,arguments:JSON.stringify(t||{}),trace_split_parallel_task:e?.name==="Agent",state:"pending"}}function I(e){if(null==e)return;if("string"!=typeof e)return e;let t=e.trim();if(t&&"claude_code.tool_result"!==t&&"tool_result"!==t){if(t.startsWith("{")||t.startsWith("["))try{return JSON.parse(t)}catch{}return e}}function w(e,t){let n={...e,...t};return(e.function||t.function)&&(n.function={...e.function||{},...t.function||{}}),"task"===e.name&&"Agent"===t.raw_name&&(n.name="task",n.function={...n.function||{},name:"task"}),n}function k(e,t){let n=Array.isArray(e.tool_calls)?e.tool_calls:[],r=n.findIndex(e=>e.id===t.id);e.tool_calls=r>=0?n.map((e,n)=>n===r?w(e,t):e):[...n,t]}function x(e){return e.filter(e=>e?.type==="tool_use"&&e.id)}function b(e){let t=e?.input||{};return e?.name==="Agent"?v(t.subagent_type||t.subagentType):t.subagent_type||t.subagentType||e?.name||"Subagent"}function M(e){let t=(0,r.readClaudeOtelEventsForSession)(e);return{sessionId:e,eventCount:t.length,record:function(e,t){let r=(function(e){let t=new Set,n=[];for(let r of e){let e=[r.sessionId,r.promptId||"",r.sequence??"",r.eventName,r.eventTimestamp||"",r.spanId||"",r.attributes?.request_id||"",r.attributes?.tool_use_id||""].join("|");t.has(e)||(t.add(e),n.push(r))}return n})(t).filter(t=>t.sessionId===e).sort((e,t)=>u(e)-u(t));if(0===r.length)return null;let M=[],N=new Map,O=new Map,T=new Map,C=new Map,A=new Map,z=new Map,q=new Map,E="",$="",j="",R=0,D=0,L=0,J=0,F=0,P=0,H=0,U=0,K=0,B=0,G=s(r[0]),Q=r.find(e=>e.user)?.user,V=new Set,W=new Set([i]),X=new Map,Y=new Set,Z=new Map;for(let e of r){if("api_request_body"===e.eventName){let t=p(e.attributes||{});if(t){var ee,et;for(let e of Array.isArray(t?.messages)?t.messages:[])for(let t of Array.isArray(e?.content)?e.content:[]){if(t?.type!=="tool_result")continue;let e=t?.tool_use_id||t?.toolUseId||t?.toolUseID||t?.id;if(!e)continue;let n=function(e){if(e&&"object"==typeof e){for(let t of["content","output","result","stdout","stderr"])if(void 0!==e[t])return function e(t){if(null!=t){if("string"==typeof t)return t;if(Array.isArray(t))return t.map(e=>"string"==typeof e?e:"string"==typeof e?.text?e.text:"string"==typeof e?.content?e.content:"").filter(Boolean).join("")||t;if("object"==typeof t){if("string"==typeof t.text)return t.text;if("string"==typeof t.content)return t.content;if(void 0!==t.output)return e(t.output);if(void 0!==t.result)return e(t.result)}return t}}(e[t])}}(t);void 0!==n&&q.set(e,n)}let n=(et=t.system)?"string"==typeof et?et.trim():Array.isArray(et)?et.map(e=>"string"==typeof e?e:"string"==typeof e?.text?e.text:"").filter(Boolean).join("\n").trim():"object"==typeof et&&"string"==typeof et.text?et.text.trim():"":"";n&&X.set(c(e),n)}continue}if("api_request"===e.eventName){let t=c(e),n=Z.get(t)||[];n.push(e),Z.set(t,n);continue}if("api_response_body"!==e.eventName)continue;let t=p(e.attributes||{});if(!t)continue;let n=c(e),r=Z.get(n)?.shift(),i=_(t);for(let n of(N.set(l(e),{request:r,body:t,content:i}),x(i)))if(O.set(n.id,n),"Agent"===n.name){let t=b(n);T.set(n.id,`${e.sessionId}:${e.promptId||"prompt"}:${t}:${n.id}`)}}let en=new Set;for(let e=0;e<r.length;e++){let t=r[e];if("tool_result"!==t.eventName)continue;let n=t.attributes?.tool_use_id;for(let i=e-1;i>=0;i--){let e=r[i];if(e.promptId!==t.promptId||e.sessionId!==t.sessionId)continue;if("user_prompt"===e.eventName)break;if("api_response_body"!==e.eventName)continue;let o=N.get(l(e));if(!o||x(o.content).length>0)continue;let a=l(e);if(!en.has(a)){en.add(a),"string"==typeof n&&n&&(C.set(a,n),A.set(n,g(o.content)));break}}}for(let e of r){let t=e.attributes||{};if((!G||Date.parse(s(e))<Date.parse(G))&&(G=s(e)),!Q&&e.user&&(Q=e.user),"user_prompt"===e.eventName){let n=("string"==typeof(ee=t.prompt)?ee:"")||"[Redacted Claude Code prompt]";E||"[Redacted Claude Code prompt]"===n||(E=n),M.push({role:"user",content:n,timestamp:s(e),timeInfo:{created:s(e),completed:s(e)},agent:i,prompt_id:e.promptId,command_name:t.command_name,command_source:t.command_source});continue}if("api_request"===e.eventName){let e=o(t.input_tokens),n=o(t.output_tokens),r=o(t.cache_read_tokens),i=o(t.cache_creation_tokens),a=e+n+r+i;L+=e,J+=n,F+=r,P+=i,H=Math.max(H,a),R+=o(t.cost_usd),D+=o(t.duration_ms),U+=1,t.model&&(j=String(t.model));continue}if("api_response_body"===e.eventName){let t={finalResult:$,model:j,responseMetaByKey:N,responseToToolId:C,toolUseById:O,subagentSessionByToolId:T,systemByPromptKey:X,emittedSystemScopes:Y};!function(e,t,n){let r=e.attributes||{},o=n.responseMetaByKey.get(l(e)),u=o?.body||p(r);if(!u)return;let d=o?.content||_(u),f=g(d);f.trim()&&(n.finalResult=f),(r.model||u.model)&&(n.model=String(r.model||u.model));let m=o?.request,y=function(e,t={}){let n=a(void 0!==t.input_tokens&&""!==t.input_tokens?t.input_tokens:e?.input_tokens??e?.input),r=a(void 0!==t.output_tokens&&""!==t.output_tokens?t.output_tokens:e?.output_tokens??e?.output),i=a(void 0!==t.cache_read_tokens&&""!==t.cache_read_tokens?t.cache_read_tokens:e?.cache_read_input_tokens??e?.cache_read_tokens),o=a(void 0!==t.cache_creation_tokens&&""!==t.cache_creation_tokens?t.cache_creation_tokens:e?.cache_creation_input_tokens??e?.cache_creation_tokens),s=Math.max(a(e?.total_tokens??e?.total),n+r+i+o);return{total:s,total_tokens:s,input:n,output:r,input_tokens:n,output_tokens:r,cache:{read:i,write:o}}}(u.usage,m?.attributes||{}),v=x(d).map(S),I=n.responseToToolId.get(l(e)),w=I?n.toolUseById.get(I):void 0,k=!!I&&w?.name==="Agent",M=k?b(w):void 0,N=I?n.subagentSessionByToolId.get(I):void 0,O=n.systemByPromptKey.get(c(e));if(O){let o=k?N||`${e.sessionId}:${I}`:void 0,a=`${o||"__root__"}::${O}`;n.emittedSystemScopes.has(a)||(n.emittedSystemScopes.add(a),t.push({role:"system",content:O,system_prompt_length:O.length,timestamp:s(e),timeInfo:h(m,e),agent:k?M:i,subagent_session_id:o,prompt_id:e.promptId,model:r.model||u.model}))}let T=function(e){if(!Array.isArray(e))return;let t=[];for(let n of e)n?.type==="thinking"&&"string"==typeof n.thinking&&n.thinking.trim()&&t.push({type:"reasoning",text:n.thinking});return t.length>0?t:void 0}(d);t.push({role:k?"subagent":"assistant",content:f,content_blocks:d,...T?{parts:T}:{},timestamp:s(e),timeInfo:h(m,e),agent:k?M:i,subagent_name:k?M:void 0,subagent_session_id:k?N||`${e.sessionId}:${I}`:void 0,prompt_id:e.promptId,model:r.model||u.model,request_id:r.request_id||u.id,stop_reason:u.stop_reason,usage:y,tool_calls:v.length>0?v:void 0})}(e,M,t),$=t.finalResult,j=t.model||j;let n=M[M.length-1];if(n&&Array.isArray(n.tool_calls))for(let e of n.tool_calls)e?.id&&z.has(e.id)&&(k(n,z.get(e.id)),z.delete(e.id));n?.agent&&W.add(n.agent);continue}if("tool_result"===e.eventName){K+=1,"false"===String(t.success)&&(B+=1);let n=t.tool_use_id,r=function(e,t,n){let r,i,a=e.attributes||{},u=m(a.tool_parameters),l=m(a.tool_input),c={...t?.input||l||u||{}},p=y(t?.name||a.tool_name||"tool");return"Agent"!==(t?.name||a.tool_name)||c.subagent_type||c.subagentType||(c.subagent_type=v(void 0)),{id:a.tool_use_id,type:"function",function:{name:p,arguments:JSON.stringify(c||{})},name:p,raw_name:t?.name||a.tool_name,arguments:JSON.stringify(c||{}),trace_split_parallel_task:"Agent"===(t?.name||a.tool_name),state:"false"===String(a.success)?"error":"success",timing:(r=o(e.attributes?.duration_ms),{started_at:d(null!=(i=f(s(e)))&&r>0?i-r:void 0),completed_at:d(i)}),duration_ms:o(a.duration_ms),decision_type:a.decision_type,decision_source:a.decision_source,output_size_bytes:o(a.tool_result_size_bytes),error_type:a.error_type,error:a.error,output:n}}(e,"string"==typeof n?O.get(n):void 0,function(e,t){let n=e.attributes||{};for(let e of["tool_result","tool_result_content","tool_result_text","tool_output","tool_output_text","output","result"]){if(!Object.prototype.hasOwnProperty.call(n,e))continue;let t=I(n[e]);if(void 0!==t)return t}let r=I(e.body);return void 0!==r?r:t}(e,"string"==typeof n?q.has(n)?q.get(n):A.get(n):void 0)),i=M.find(e=>Array.isArray(e.tool_calls)&&e.tool_calls.some(e=>e.id===r.id));if(i||r.id||(i=[...M].reverse().find(e=>"assistant"===e.role)),i)k(i,r);else if(r.id){let e=z.get(r.id);z.set(r.id,e?w(e,r):r)}let a=m(t.tool_parameters)?.skill_name||m(t.tool_input)?.skill;"string"==typeof a&&a.trim()&&V.add(a.trim());continue}}if(E||(E=`Claude Code Session ${e}`),!$){let e=[...M].reverse().find(e=>"assistant"===e.role&&g(e.content).trim());$=e?g(e.content):""}return{task_id:e,query:E,framework:"claudecode",model:j,tokens:L+J+F+P,cost:R,latency:D/1e3,timestamp:G,final_result:$||"[No final text output]",interactions:(0,n.normalizeClaudeCodeInteractionsForStorage)(M),skills:Array.from(V),agent:i,agentName:i,agents:Array.from(W),user:Q,tool_call_count:K,llm_call_count:U,input_tokens:L,output_tokens:J,tool_call_error_count:B,cache_read_input_tokens:F,cache_creation_input_tokens:P,max_single_call_tokens:H}}(e,t)}}function N(...e){for(let t of e){let e=function(e){if(null!=e){if("string"==typeof e)return e.trim()?e:void 0;try{return JSON.stringify(e)}catch{return String(e)}}}(t);if(e)return e}}function O(e){return e.usage.total_tokens||e.usage.input_tokens+e.usage.output_tokens+(e.usage.reasoning_tokens||0)}function T(e){let t=e.attributes||{};return N(e.model,t["gen_ai.request.model"],t["llm.request.model"],t["llm.model_name"],t["gen_ai.response.model"])}function C(e){let t=e.attributes||{};return"AGENT"===String(t["openinference.span.kind"]||t["traceloop.span.kind"]||t["span.kind"]||"").toUpperCase()||"agent"===String(e.name||"").toLowerCase()}function A(e){return new Date(e||Date.now()).toISOString()}let z={id:"generic",matches:()=>!0,aggregate:function(e,t){let n=t.filter(t=>t.sessionId===e);if(!n.length)return null;let r=[],i=new Map,o=[];for(let e of n)if("llm"===e.kind){let t=function(e){let t=e.attributes||{},n=N(t["gen_ai.prompt"],t["input.value"],t["db.statement"]),r=N(t["gen_ai.completion"],t["output.value"],t["db.result"]),i=e.startTimeMs||Date.parse(e.receivedAt)||Date.now(),o=i+Math.max(0,e.latencyMs||0),a={role:"assistant",content:r||"",spanId:e.spanId,parentSpanId:e.parentSpanId,traceId:e.traceId,name:e.name,model:T(e),usage:{input_tokens:e.usage.input_tokens,output_tokens:e.usage.output_tokens,reasoning_tokens:e.usage.reasoning_tokens||void 0,total:e.usage.total_tokens},timestamp:A(i),timeInfo:{created:A(i),completed:A(o)},agent:e.serviceName};return n&&(a.requestMessages=[{role:"user",content:n}]),a}(e);r.push(t),e.spanId&&i.set(e.spanId,t)}else o.push(e);for(let e of o){let t=function(e){let t=e.attributes||{},n=e.startTimeMs||Date.parse(e.receivedAt)||Date.now(),r=n+Math.max(0,e.latencyMs||0),i=N(t["output.value"],t["tool.output"],t["tool.result"]),o=String(t["tool.status"]||t["tool.outcome"]||"").toLowerCase();return{id:e.spanId,type:"function",state:"error"===o||"failed"===o?"error":"success",function:{name:t["tool.name"]||e.name||"tool",arguments:N(t["tool.arguments"],t["input.value"])||JSON.stringify(t)},output:i,result:i,timing:{started_at:A(n),completed_at:A(r)}}}(e),n=(e.parentSpanId?i.get(e.parentSpanId):void 0)||r[r.length-1];n?n.tool_calls=Array.isArray(n.tool_calls)?[...n.tool_calls,t]:[t]:r.push({role:"assistant",content:"",agent:e.serviceName,timestamp:A(e.startTimeMs||Date.parse(e.receivedAt)||Date.now()),tool_calls:[t]})}let a=n.filter(e=>O(e)>0),s=a.filter(e=>!C(e)),u=n.some(C)&&s.length?s:a,l=n.map(e=>e.latencyMs||0).filter(e=>e>0),c=n.some(C)?Math.max(0,...l):l.reduce((e,t)=>e+t,0),d=r.find(e=>e?.requestMessages?.[0]?.content),f=[...r].reverse().find(e=>e?.content),m=n[0],p=n.find(e=>T(e));return{task_id:e,query:d?.requestMessages?.[0]?.content||"OTel Session",framework:m.serviceName||"unknown-service",model:p&&T(p)||"unknown",tokens:u.reduce((e,t)=>e+O(t),0),latency:c,final_result:f?.content||"",timestamp:new Date(m.startTimeMs||Date.parse(m.receivedAt)||Date.now()),label:m.serviceName||"unknown-service",user:m.user||"anonymous",interactions:r,agent:m.serviceName,agentName:m.serviceName,llm_call_count:n.filter(e=>"llm"===e.kind&&!C(e)).length,tool_call_count:o.length,tool_call_error_count:o.filter(e=>{let t=String(e.attributes?.["tool.status"]||e.attributes?.["tool.outcome"]||"").toLowerCase();return"error"===t||"failed"===t}).length,input_tokens:u.reduce((e,t)=>e+t.usage.input_tokens,0),output_tokens:u.reduce((e,t)=>e+t.usage.output_tokens,0),reasoning_tokens:u.reduce((e,t)=>e+(t.usage.reasoning_tokens||0),0)||void 0}}};function q(e){return Number.isFinite(e.startTimeMs)?e.startTimeMs:0}function E(e){return new Date(e||Date.now()).toISOString()}function $(e){return(e.startTimeMs||0)+Math.max(0,e.latencyMs||0)}function j(e){return e.reduce((e,t)=>e?$(t)>=$(e)?t:e:t,void 0)}function R(...e){for(let t of e){let e=function(e){if(null!=e){if("string"==typeof e)return e.trim()?e:void 0;if("object"==typeof e)try{return JSON.stringify(e)}catch{return}return String(e)}}(t);if(e)return e}}function D(e){let t=e.attributes||{};return R(e.model,t["gen_ai.request.model"],t["llm.request.model"],t["llm.model_name"],t["gen_ai.response.model"])}function L(e){let t=e.attributes||{};return String(t["openinference.span.kind"]||t["traceloop.span.kind"]||t["span.kind"]||"").toUpperCase()}function J(e){let t=e.usage||{};return t.total_tokens||(t.input_tokens||0)+(t.output_tokens||0)+(t.reasoning_tokens||0)}function F(e){let t=e.attributes||{};return"AGENT"===L(e)||"session"===String(t["hermes.session.kind"]||"").toLowerCase()||"agent"===String(e.name||"").toLowerCase()}function P(e){return String(e.name||"").startsWith("api.")}function H(e){let t=e.attributes||{},n=t["llm.response.finish_reason"]??t["gen_ai.response.finish_reasons"];if(Array.isArray(n))return String(n[0]||"").toLowerCase();let r=String(n||"").trim();if(r.startsWith("["))try{let e=JSON.parse(r);if(Array.isArray(e))return String(e[0]||"").toLowerCase()}catch{}return r.toLowerCase()}function U(e){if("llm"!==e.kind||F(e)||P(e))return!1;let t=e.attributes||{};return!!String(e.name||"").startsWith("llm.")||void 0!==t["input.value"]||void 0!==t["output.value"]}function K(e){return"tool"===e.kind||"TOOL"===L(e)||void 0!==(e.attributes||{})["tool.name"]}function B(e,t){let n=String(e||"").trim();if(n)return"default"===n.toLowerCase()?t:n}function G(e,t,n){let r=e.attributes||{},i=R(r["hermes.session_id"])||t,o=R(r["hermes.parent_session_id"]),a=R(r["hermes.agent.role"]),s=i!==t||!!o||void 0!==a&&"root"!==a,u=B(R(r["hermes.profile.name"]),n),l=B(R(r["hermes.agent.name"]),n),c=(s||l?.toLowerCase()!=="root"?l:u)||u||(s?B(a,n):void 0)||n;return{sessionId:i,isSubagent:s,name:c}}function Q(e,t){return e.isSubagent?{role:"subagent",agent:e.name,subagent_name:e.name,subagent_session_id:e.sessionId}:{role:"assistant",agent:e.name||t}}function V(e){return String((e.attributes||{})["tool.name"]||e.name||"tool").replace(/^tool\./,"")||"tool"}function W(e){if(!e)return e;let t=e.trim();if(!t||!t.startsWith("{")&&!t.startsWith("["))return e;try{return JSON.parse(t)}catch{return e}}function X(e){if(null==e)return"";if("string"==typeof e)return e;if(Array.isArray(e))return e.map(e=>"string"==typeof e?e:e?.text?String(e.text):e?.content?X(e.content):"").filter(Boolean).join("\n");if("object"==typeof e){if(e.text)return String(e.text);if(e.content)return X(e.content)}return String(e)}function Y(e){if(!e)return;let t=R(e.attributes?.["input.value"]);return function(e){let t="string"==typeof e?W(e):void 0,n=Array.isArray(t)?t:Array.isArray(t?.messages)?t.messages:void 0;if(n)for(let e=n.length-1;e>=0;e--){let t=n[e];if("user"!==String(t?.role||"").toLowerCase())continue;let r=X(t.content);if(r.trim())return r}}(t)||t}function Z(e){if(!e)return;let t=R(e.attributes?.["output.value"]);if(!t)return;let n=W(t);return n&&"object"==typeof n?function(e){let t="string"==typeof e?W(e):void 0;if(!t||"object"!=typeof t)return;let n=Array.isArray(t.choices)?t.choices:void 0;if(n){let e=n.map(e=>X(e?.message?.content??e?.delta?.content??e?.text)).filter(e=>e.trim()).join("\n");if(e.trim())return e}let r=R(t.output_text,t.message?.content,t.content,t.text);if(r)return r;if(Array.isArray(t.output)){let e=t.output.flatMap(e=>Array.isArray(e?.content)?e.content:[e?.content??e]).map(e=>X(e?.text??e?.content??e)).filter(e=>e.trim()).join("\n");if(e.trim())return e}if(Array.isArray(t.candidates)){let e=t.candidates.flatMap(e=>e?.content?.parts??e?.content??e?.output??e).map(e=>X(e?.text??e?.content??e)).filter(e=>e.trim()).join("\n");if(e.trim())return e}}(t):t}function ee(e){if(!e)return;let t=e.attributes||{};return R(t["error.message"],t["exception.message"],t["hermes.api_error.reason"])}function et(e){return{input_tokens:e.reduce((e,t)=>e+(t.usage?.input_tokens||0),0),output_tokens:e.reduce((e,t)=>e+(t.usage?.output_tokens||0),0),reasoning_tokens:e.reduce((e,t)=>e+(t.usage?.reasoning_tokens||0),0),total:e.reduce((e,t)=>e+J(t),0)}}function en(e){let t=e.sourceEvent||e.llm,n=Math.max(t.startTimeMs||0,...e.usageEvents.map(e=>e.startTimeMs||0))||Date.parse(t.receivedAt)||Date.now(),r=$(t)||n,i=et(e.usageEvents),o=ee(t);return{...Q(e.owner,e.framework),content:e.content,timestamp:E(n),timeInfo:{created:E(n),completed:E(r)},traceId:t.traceId,spanId:`${t.spanId||e.llm.spanId||"llm"}:output`,parentSpanId:t.parentSpanId||e.llm.spanId,name:t.name,model:e.model,usage:{input_tokens:i.input_tokens,output_tokens:i.output_tokens,reasoning_tokens:i.reasoning_tokens||void 0,total:i.total},...o?{status:"error",error:{message:o}}:{}}}let er="langfuse-langgraph",ei="report-generator",eo=new Set(["agent","tools","prompt","runnablesequence","call_model","should_continue","chatopenai","langgraph"]);function ea(e){if("string"!=typeof e)return e;let t=e.trim();if(!t)return e;try{return JSON.parse(t)}catch{return e}}function es(e){let t=ea(e);return t&&"object"==typeof t&&!Array.isArray(t)?t:{}}function eu(...e){for(let t of e){let e=function(e){if(null!=e){if("string"==typeof e)return e.trim()?e:void 0;try{let t=JSON.stringify(e);return t&&"null"!==t?t:void 0}catch{return String(e)}}}(t);if(e)return e}}function el(e,t){return e?.attributes?.[t]}function ec(e){return e?.startTimeMs||Date.parse(e?.receivedAt||"")||Date.now()}function ed(e){return ec(e)+Math.max(0,e?.latencyMs||0)}function ef(e){return new Date(e||Date.now()).toISOString()}function em(e){return e.usage.total_tokens||e.usage.input_tokens+e.usage.output_tokens+(e.usage.reasoning_tokens||0)}function ep(e,t){return eu(el(e,`langfuse.observation.metadata.${t}`),el(e,`langfuse.trace.metadata.${t}`))}function eg(e){return es(el(e,"langfuse.observation.output"))}function e_(e){return eu(e.subagent_type,e.subagent_name,e.subagentName,e.agent,e.agent_name,e.agentName,e.name)}function eh(e){let t=e=>[...e].sort((e,t)=>ed(t)-ed(e))[0],n=t(e.filter(e=>!0===el(e,"langfuse.internal.is_app_root")||"true"===el(e,"langfuse.internal.is_app_root")));return n||t(e.filter(e=>"span"===e.kind))||t(e)}function ey(e){let t,n=eu(e);return!(!n||(t=eu(n))&&/^agent-run(?:[-_]\d{8}t\d{6}z?)?$/i.test(t))&&!eo.has(n.toLowerCase())}function ev(e){return ey(e?.name)?eu(e?.name):void 0}function eS(e,t){let n=e.filter(t).filter(e=>"llm"!==e.kind&&"tool"!==e.kind).filter(e=>ev(e)).sort((e,t)=>(e.startTimeMs||0)-(t.startTimeMs||0));return ev(n[0])}function eI(e,t){for(let n of e.filter(t).sort((e,t)=>(e.startTimeMs||0)-(t.startTimeMs||0))){let e=function(e){let t=ea(el(e,"langfuse.observation.output"));return(Array.isArray(t?.messages)?t.messages:[t]).map(e=>eu(e?.name)).filter(e=>ey(e))}(n)[0];if(e)return e}}let ew=[{id:er,matches:e=>e.some(e=>e.serviceName===er),aggregate:function(e,t){let n,r=t.filter(t=>t.sessionId===e).sort((e,t)=>(e.startTimeMs||0)-(t.startTimeMs||0));if(!r.length)return null;let i=eh(r),o=i?.traceId,a=(o?r.filter(e=>e.traceId===o):r).sort((e,t)=>(e.startTimeMs||0)-(t.startTimeMs||0));if(!a.length)return null;let s=new Map(a.filter(e=>e.spanId).map(e=>[e.spanId,e])),u=eh(a)||i,l=es(el(u,"langfuse.observation.input")),c=es(el(u,"langfuse.observation.output")),d=eu(l.skill,ep(u,"skill"),a.map(e=>ep(e,"skill")).find(Boolean)),f=a.find(e=>"tool"===e.kind&&"call_report_subagent"===e.name),m=f?`${e}:subagent:${f?.spanId||ei}`:void 0,p=e=>(function(e,t,n){let r=e.parentSpanId?t.get(e.parentSpanId):void 0,i=new Set;for(;r?.spanId&&!i.has(r.spanId);){if(n(r))return!0;i.add(r.spanId),r=r.parentSpanId?t.get(r.parentSpanId):void 0}return!1})(e,s,e=>"tool"===e.kind&&"call_report_subagent"===e.name),g=e_(es(el(f,"langfuse.observation.input")))||eS(a,p)||eI(a,p)||ei,_=(n=e=>!p(e),eu(l.agent,l.agent_name,l.agentName,ep(u,"agent"),ep(u,"agent_name"),ep(u,"agentName"),ep(u,"name"),eS(a,n),eI(a,n),ey(u?.name)?eu(u?.name):void 0)||"Langfuse Agent"),h=a.filter(e=>"llm"===e.kind&&"ChatOpenAI"===e.name),y=[],v=eu(l.input,ep(u,"input"),el(h[0],"langfuse.trace.metadata.input"))||"Langfuse LangGraph Session";for(let e of(y.push({role:"user",content:v,agent:_,timestamp:ef(ec(u)),timeInfo:{created:ef(ec(u))}}),h))y.push(function(e){let{event:t,skillName:n,mainAgentName:r,isSubagent:i,subagentSessionId:o,subagentName:a}=e,s=eg(t),u=ec(t),l=ed(t),c=Array.isArray(s.tool_calls)?s.tool_calls.map(e=>{let t,r;return t=eu(e.name,e.function?.name)||"tool",r=e?.args&&"object"==typeof e.args&&!Array.isArray(e.args)?e.args:{},"follow_skill"===t&&n?{id:e.id,type:"function",state:"pending",function:{name:"skill",arguments:JSON.stringify({name:n,source_tool:t,...r})}}:"call_report_subagent"===t?{id:e.id,type:"function",state:"pending",function:{name:"task",arguments:JSON.stringify({subagent_type:e_(r)||a,description:eu(r.diagnosis_summary,r.description)||"generate diagnostic report",source_tool:t,subagent_session_id:o})}}:{id:e.id,type:"function",state:"pending",function:{name:t,arguments:JSON.stringify(r)}}}):[],d={role:i?"subagent":"assistant",content:eu(s.content,el(t,"langfuse.observation.output"))||"",agent:i?a:r,model:t.model,usage:{input:t.usage.input_tokens,output:t.usage.output_tokens,reasoning:t.usage.reasoning_tokens||void 0,total:t.usage.total_tokens},spanId:t.spanId,parentSpanId:t.parentSpanId,traceId:t.traceId,name:t.name,timestamp:ef(u),timeInfo:{created:ef(u),completed:ef(l)}};return i&&(d.subagent_name=a,d.subagent_session_id=o),c.length&&(d.tool_calls=c),d}({event:e,skillName:d,mainAgentName:_,isSubagent:p(e),subagentSessionId:m,subagentName:g}));!function(e,t){let n=new Set;for(let r of t.sort((e,t)=>(e.startTimeMs||0)-(t.startTimeMs||0)))for(let t of e){let e=(Array.isArray(t.tool_calls)?t.tool_calls:[]).find(e=>{let t=`${r.spanId||r.name}:${e.id||e.function?.name}`;return!n.has(t)&&function(e,t){let n,r=e?.function?.name||e?.name,i=(n=ea(e?.function?.arguments??e?.arguments))&&"object"==typeof n&&!Array.isArray(n)?n:{};return"follow_skill"===t?"skill"===r&&"follow_skill"===i.source_tool:"call_report_subagent"===t?"task"===r&&"call_report_subagent"===i.source_tool:r===t}(e,r.name)});if(!e)continue;let i=`${r.spanId||r.name}:${e.id||e.function?.name}`;n.add(i);let o=ea(el(r,"langfuse.observation.output"));e.state="success",e.output=o,e.result=o,e.timing={started_at:ef(ec(r)),completed_at:ef(ed(r))};break}}(y,a.filter(e=>"tool"===e.kind));let S=[...h].reverse().find(e=>!p(e)),I=eu(c.final_output,S?eg(S).content:void 0)||"",w=h.filter(e=>em(e)>0),k=h.find(e=>e.model),x=Math.min(...a.map(ec)),b=Math.max(...a.map(ed)),M=a.filter(e=>"tool"===e.kind);return{task_id:e,query:v,framework:er,model:eu(l.model,ep(u,"model"),k?.model)||"unknown",tokens:w.reduce((e,t)=>e+em(t),0),latency:Math.max(0,b-x),final_result:I,timestamp:new Date(x||Date.now()),trace_completed_at:ef(b),force_query_update:!0,session_merge_strategy:"snapshot-replace",label:er,user:a.find(e=>e.user)?.user||"anonymous",interactions:y,skill:d,invokedSkills:d?[{name:d,version:null}]:[],skills:d?[d]:[],agent:_,agentName:_,llm_call_count:h.length,tool_call_count:M.length,tool_call_error_count:M.filter(e=>"error"===String(el(e,"langfuse.observation.level")||"").toLowerCase()).length,input_tokens:w.reduce((e,t)=>e+t.usage.input_tokens,0),output_tokens:w.reduce((e,t)=>e+t.usage.output_tokens,0),reasoning_tokens:w.reduce((e,t)=>e+(t.usage.reasoning_tokens||0),0)||void 0,subagentCount:+!!f}}},{id:"hermes",matches:e=>e.some(e=>"hermes"===e.serviceName||e.attributes?.["hermes.session_id"]!==void 0||e.attributes?.["agent.insight.framework"]==="hermes"),aggregate:function(e,t){let n=t.filter(t=>t.sessionId===e).sort((e,t)=>q(e)-q(t));if(0===n.length)return null;let r=n.find(e=>e.serviceName)?.serviceName||"hermes",i=function(e){let t=new Map;for(let n of e){if(!n.parentSpanId)continue;let e=t.get(n.parentSpanId)||[];e.push(n),t.set(n.parentSpanId,e)}for(let e of t.values())e.sort((e,t)=>q(e)-q(t));return t}(n),o=j(n.filter(t=>F(t)&&!G(t,e,r).isSubagent)),a=n.filter(U),s=a.length>0?a:o?[o]:[],u=[],l=n.map(D).filter(Boolean)[0]||"unknown",c=new Set;for(let t of s){let o=G(t,e,r),a=n.find(t=>F(t)&&G(t,e,r).sessionId===o.sessionId),s=function(e,t){if(!e.spanId)return[];let n=[],r=[...t.get(e.spanId)||[]];for(;r.length>0;){let e=r.shift();n.push(e),!e.spanId||F(e)||U(e)||r.push(...t.get(e.spanId)||[])}return n.sort((e,t)=>q(e)-q(t))}(t,i),d=s.length>0?s:n.filter(n=>n.traceId===t.traceId&&n!==t&&G(n,e,r).sessionId===o.sessionId&&!F(n)&&!U(n)),f=d.filter(P),m=[...f].reverse().find(e=>"stop"===H(e)&&Z(e)),p=Y(t)||Y(a),g=Z(m)||Z(t)||Z(a),_=function(e){for(let t of e){if(!t)continue;let e=function(e){let t="string"==typeof e?W(e):void 0,n=Array.isArray(t)?t:Array.isArray(t?.messages)?t.messages:void 0;if(!n)return;let r=[];for(let e of n){if("system"!==String(e?.role||"").toLowerCase())continue;let t=X(e.content);t.trim()&&r.push(t)}return r.length>0?r.join("\n\n"):void 0}(R(t.attributes?.["llm.input_messages"],t.attributes?.["input.value"]));if(e)return e}}([m,...f,t,a]);if(_){let e=`${o.sessionId}::${_}`;c.has(e)||(c.add(e),u.push(function(e){let t=e.event.startTimeMs||Date.parse(e.event.receivedAt)||Date.now();return{role:"system",agent:e.owner.name||e.framework,...e.owner.isSubagent?{subagent_session_id:e.owner.sessionId}:{},content:e.content,system_prompt_length:e.content.length,timestamp:E(t),timeInfo:{created:E(t),completed:E(t)},traceId:e.event.traceId,spanId:`${e.event.spanId||"llm"}:system`}}({content:_,event:t,framework:r,owner:o})))}if(p){let e=[...u].reverse().find(e=>"user"===e.role);e&&e.content===p||u.push(function(e){let t=e.event.startTimeMs||Date.parse(e.event.receivedAt)||Date.now();return{...Q(e.owner,e.framework),role:e.owner.isSubagent?"subagent":"user",content:e.content,timestamp:E(t),timeInfo:{created:E(t),completed:E(t)},traceId:e.event.traceId,spanId:`${e.event.spanId||"llm"}:input`}}({content:p,event:t,framework:r,owner:o}))}for(let e of d.filter(e=>P(e)||K(e))){if(P(e)){if(e===m)continue;let n=ee(e),i=Z(e)||(n?`API request failed: ${n}`:void 0);i&&u.push(en({content:i,llm:t,sourceEvent:e,framework:r,model:D(e)||l,usageEvents:[e],owner:o}));continue}u.push(function(e){var t;let n,r,i,o,a,s=e.tool.startTimeMs||Date.parse(e.tool.receivedAt)||Date.now(),u=$(e.tool)||s;return{...Q(e.owner,e.framework),content:"",timestamp:E(s),timeInfo:{created:E(s),completed:E(u)},traceId:e.llm.traceId,spanId:`${e.llm.spanId||"llm"}:${e.tool.spanId||V(e.tool)}`,parentSpanId:e.llm.spanId,name:`tool.${V(e.tool)}`,model:e.model,usage:{input_tokens:0,output_tokens:0,total:0},tool_calls:[(n=(t=e.tool).attributes||{},r=t.startTimeMs||Date.parse(t.receivedAt)||Date.now(),i=$(t)||r,o=R(n["output.value"],n["tool.output"],n["tool.result"]),a=String(n["hermes.tool.outcome"]||n["tool.outcome"]||"").toLowerCase(),{id:t.spanId,type:"function",state:"error"===a||"failed"===a?"error":"success",function:{name:V(t),arguments:R(n["tool.arguments"],n["input.value"])||JSON.stringify(n)},output:o,result:o,timing:{started_at:E(r),completed_at:E(i)}})]}}({llm:t,tool:e,framework:r,model:l,owner:o}))}g&&u.push(en({content:g,llm:t,sourceEvent:m,framework:r,model:l,usageEvents:m?[m]:f,owner:o}))}if(0===u.length)return null;u.sort((e,t)=>(Date.parse(e.timestamp||"")||0)-(Date.parse(t.timestamp||"")||0));let d=et(function(e,t){if(t&&J(t)>0)return[t];let n=e.filter(e=>P(e)&&J(e)>0);return n.length>0?n:e.filter(e=>J(e)>0&&!U(e))}(n,o)),f=n[0],m=[...u].reverse().find(e=>"assistant"===e.role&&String(e.content||"").trim()),p=u.find(e=>"user"===e.role&&String(e.content||"").trim()),g=m?.content||"",_=j(n.filter(t=>{let n=G(t,e,r);return P(t)&&!n.isSubagent&&n.sessionId===e&&"stop"===H(t)&&!!Z(t)})),h=g?function(e){if(!e)return;let t=$(e);return t>0?E(t):void 0}(o||_):void 0,y=o?.latencyMs||Math.max(...n.map(e=>e.latencyMs||0),0),v=n.filter(P).length||s.length,S=o?G(o,e,r):n.map(t=>G(t,e,r)).find(e=>!e.isSubagent),I=S?.name||r;return{task_id:e,query:p?.content||"Hermes Session",framework:r,model:l,tokens:d.total,latency:y,final_result:g,trace_completed_at:h,timestamp:new Date(f.startTimeMs||Date.parse(f.receivedAt)||Date.now()),label:r,user:f.user||"anonymous",interactions:u,agent:I,agentName:I,llm_call_count:v,tool_call_count:n.filter(K).length,input_tokens:d.input_tokens,output_tokens:d.output_tokens,reasoning_tokens:d.reasoning_tokens||void 0}}},z];function ek(){return"false"!==process.env.AGENT_INSIGHT_CLAUDE_OTEL_SKIP_EVALUATION}function ex(){return[{id:"claude-otel-logs",spoolDir:r.getClaudeOtelSpoolDir,listFiles:()=>(0,r.listClaudeOtelSpoolFiles)((0,r.getClaudeOtelSpoolDir)()),aggregate:M,defaultSkipEvaluation:ek},{id:"otel-traces",spoolDir:r.getOtelTraceSpoolDir,listFiles:()=>(0,r.listOtelTraceSpoolFiles)((0,r.getOtelTraceSpoolDir)()),aggregate:e=>{var t;let n;return t=(0,r.getOtelTraceSpoolDir)(),{sessionId:e,eventCount:(n=(0,r.readOtelTraceEventsForSession)(e,t)).length,record:function(e,t){let n=new Set,r=t.filter(t=>t.sessionId===e).filter(e=>{let t=e.spanId||[e.sessionId,e.traceId||"",e.name||"",e.kind,e.startTimeMs||""].join("|");return!n.has(t)&&(n.add(t),!0)}).sort((e,t)=>(e.startTimeMs||0)-(t.startTimeMs||0));return r.length?(ew.find(e=>e.matches(r))||z).aggregate(e,r):null}(e,n)}},defaultSkipEvaluation:()=>!0}]}e.s(["listSources",()=>ex],667034)},588876,e=>e.a(async(t,n)=>{try{e.i(210954);var r=e.i(184599),i=e.i(742529),o=e.i(256451),a=e.i(401682),s=t([a]);[a]=s.then?(await s)():s;let k=i.z.object({has_task_output:i.z.boolean().default(!1),confidence:i.z.number().min(0).max(1).default(0),selected_source_id:i.z.string().nullable().default(null),needs_followup_context:i.z.boolean().default(!1),followup_anchor_llm_call_id:i.z.string().nullable().default(null),reason:i.z.string().default("")}),x=i.z.object({has_task_output:i.z.boolean().default(!1),confidence:i.z.number().min(0).max(1).default(0),selected_source_id:i.z.string().nullable().default(null),artifact_paths:i.z.array(i.z.string()).default([]),reason:i.z.string().default("")});async function u(e){var t;let n,i=await (0,a.getActiveConfig)(e);if(!i)return{client:null,model:null};let{customFetch:s}=(0,o.getProxyConfig)();return{client:new r.OpenAI({apiKey:i.apiKey||"no-api-key-required",baseURL:(t=i.baseUrl||"https://api.deepseek.com",String(t||"").replace(/\/chat\/completions\/?$/,"")),fetch:s,timeout:(n=Number(process.env.RESULT_ARTIFACT_TIMEOUT_MS||process.env.JUDGMENT_TIMEOUT_MS||3e5),Number.isFinite(n)&&n>0?n:3e5)}),model:i.model||"deepseek-chat"}}function l(e){let t=e.trim();if(!t)return null;let n=t.match(/```(?:json)?\s*([\s\S]*?)\s*```/i);if(n)t=n[1];else{let e=t.indexOf("{"),n=t.lastIndexOf("}");-1!==e&&-1!==n&&n>=e&&(t=t.substring(e,n+1))}try{return JSON.parse(t)}catch{return null}}function c(e){return e&&"object"==typeof e&&!Array.isArray(e)?e:null}function d(e){if(null==e)return"";if("string"==typeof e)return e;if("number"==typeof e||"boolean"==typeof e)return String(e);try{return JSON.stringify(e,null,2)}catch{return String(e)}}function f(e,t){let n=String(e||"").trim();if(n.length<=t)return n;let r=Math.floor(.65*t),i=Math.max(0,t-r-80);return`${n.slice(0,r)}
3
3
  ...[中间内容已截断 ${n.length-r-i} 字]...
4
- ${n.slice(-i)}`}function m(e){return"string"==typeof e?e:Array.isArray(e)?e.map(e=>{let t=c(e);return t?d(t.text??t.content??t.input??t):d(e)}).filter(Boolean).join("\n"):d(e)}function p(e){let t=e?.tool_calls??e?.toolCalls;return Array.isArray(t)?t.map(c).filter(e=>!!e):[]}function g(e){let t=c(e.function);return String(t?.name||e.name||e.type||"tool").trim()}function _(e){let t=c(e.function);return d(t?.arguments??e.arguments??e.input??"")}function h(e){return d(e.output??e.result??e.content??"")}function y(e,t){return t&&e.find(e=>e.id===t)?.text?.trim()||""}function v(e,t){return!!t&&e.some(e=>e.id===t)}function S(e,t,n,r,i){return{status:"found",outputForEvaluation:e,confidence:t,reason:n,sourceRefs:r?[r]:[],rawAnalysis:i}}async function x(e,t,n){let r=await e.chat.completions.create({model:t,temperature:0,top_p:1,seed:42,messages:[{role:"user",content:n}]});return r.choices?.[0]?.message?.content?.trim()||""}async function I(e){let t=e.threshold??.75,n=e.maxLlmCalls??10,r=String(e.fallbackOutput||"").trim(),i=(e,t={})=>r?function(e,t,n={}){return S(e,0,`未能从 trace 中定位真实任务输出,已回退使用 execution.finalResult。原始原因:${t}`,"execution.finalResult",{...n,fallback:{used:!0,source:"execution.finalResult",reason:t}})}(r,e,t):function(e,t={}){return{status:"missing",outputForEvaluation:null,confidence:0,reason:e,sourceRefs:[],rawAnalysis:t}}(e,t),{client:o,model:a}=await u(e.user);if(!o||!a)return i("未配置可用评测模型,无法提取真实输出。");let s=function(e){let t=[],n=0,r=0,i=0;for(let o=0;o<e.length;o+=1){let a=c(e[o]);if(!a)continue;let s=Array.isArray(a.requestMessages)?a.requestMessages:[];for(let e of s){let r=c(e);r&&"tool"===String(r.role||"").toLowerCase()&&(i+=1,t.push({id:`tool-${i}`,type:"tool",order:n++,interactionIndex:o,name:String(r.name||r.tool_call_id||"tool"),input:"",output:m(r.content)}))}let u=c(a.responseMessage);if(u){let e=m(u.content);(e||p(u).length>0)&&(r+=1,t.push({id:`llm-${r}`,type:"llm",order:n++,interactionIndex:o,agent:String(a.agent||a.subagent_name||""),input:function(e,t){if(!Array.isArray(e))return"";let n=e.map((e,t)=>{let n=c(e);if(!n)return"";let r=String(n.role||"message"),i=n.name?`/${String(n.name)}`:"";return`[${t+1}] ${r}${i}: ${m(n.content)}`}).filter(Boolean).join("\n");return f(n,1800)}(s,0),inputParts:Array.isArray(s)?s.map(e=>{let t=c(e);if(!t)return null;let n=m(t.content).trim();return n?{role:String(t.role||"message"),text:n,...t.name?{name:String(t.name)}:{}}:null}).filter(e=>!!e):[],output:e}));for(let e of p(u))i+=1,t.push({id:`tool-${i}`,type:"tool",order:n++,interactionIndex:o,name:g(e),input:_(e),output:h(e)});continue}let l=String(a.role||"").toLowerCase();for(let e of("tool"===l?(i+=1,t.push({id:`tool-${i}`,type:"tool",order:n++,interactionIndex:o,name:String(a.name||a.tool_call_id||"tool"),input:"",output:m(a.content)})):("assistant"===l||"subagent"===l||"agent"===l||"opencode"===l)&&(r+=1,t.push({id:`llm-${r}`,type:"llm",order:n++,interactionIndex:o,agent:String(a.agent||a.subagent_name||""),input:"",output:m(a.content)})),p(a)))i+=1,t.push({id:`tool-${i}`,type:"tool",order:n++,interactionIndex:o,name:g(e),input:_(e),output:h(e)})}return t}(e.interactions||[]),d=s.filter(e=>"llm"===e.type&&e.output?.trim()).slice(-Math.max(1,n));if(0===d.length)return i("链路中没有可用于输出提取的 LLM 调用。",{event_count:s.length});try{var I,b;let n,r,u=d.filter(e=>"llm"===e.type&&e.output?.trim()).map(e=>({id:`${e.id}.output`,eventId:e.id,kind:"llm_output",text:e.output.trim(),agent:e.agent,name:e.name,interactionIndex:e.interactionIndex})),c=await x(o,a,(I=e.userTask,n=u.map(e=>({id:e.id,event_id:e.eventId,kind:e.kind,agent:e.agent||"",name:e.name||"",interaction_index:e.interactionIndex,text_preview:f(e.text,"llm_input"===e.kind?1800:3600)})),`你是 agent 评测系统中的“真实任务输出定位器”。
4
+ ${n.slice(-i)}`}function m(e){return"string"==typeof e?e:Array.isArray(e)?e.map(e=>{let t=c(e);return t?d(t.text??t.content??t.input??t):d(e)}).filter(Boolean).join("\n"):d(e)}function p(e){let t=e?.tool_calls??e?.toolCalls;return Array.isArray(t)?t.map(c).filter(e=>!!e):[]}function g(e){let t=c(e.function);return String(t?.name||e.name||e.type||"tool").trim()}function _(e){let t=c(e.function);return d(t?.arguments??e.arguments??e.input??"")}function h(e){return d(e.output??e.result??e.content??"")}function y(e,t){return t&&e.find(e=>e.id===t)?.text?.trim()||""}function v(e,t){return!!t&&e.some(e=>e.id===t)}function S(e,t,n,r,i){return{status:"found",outputForEvaluation:e,confidence:t,reason:n,sourceRefs:r?[r]:[],rawAnalysis:i}}async function I(e,t,n){let r=await e.chat.completions.create({model:t,temperature:0,top_p:1,seed:42,messages:[{role:"user",content:n}]});return r.choices?.[0]?.message?.content?.trim()||""}async function w(e){let t=e.threshold??.75,n=e.maxLlmCalls??10,r=String(e.fallbackOutput||"").trim(),i=(e,t={})=>r?function(e,t,n={}){return S(e,0,`未能从 trace 中定位真实任务输出,已回退使用 execution.finalResult。原始原因:${t}`,"execution.finalResult",{...n,fallback:{used:!0,source:"execution.finalResult",reason:t}})}(r,e,t):function(e,t={}){return{status:"missing",outputForEvaluation:null,confidence:0,reason:e,sourceRefs:[],rawAnalysis:t}}(e,t),{client:o,model:a}=await u(e.user);if(!o||!a)return i("未配置可用评测模型,无法提取真实输出。");let s=function(e){let t=[],n=0,r=0,i=0;for(let o=0;o<e.length;o+=1){let a=c(e[o]);if(!a)continue;let s=Array.isArray(a.requestMessages)?a.requestMessages:[];for(let e of s){let r=c(e);r&&"tool"===String(r.role||"").toLowerCase()&&(i+=1,t.push({id:`tool-${i}`,type:"tool",order:n++,interactionIndex:o,name:String(r.name||r.tool_call_id||"tool"),input:"",output:m(r.content)}))}let u=c(a.responseMessage);if(u){let e=m(u.content);(e||p(u).length>0)&&(r+=1,t.push({id:`llm-${r}`,type:"llm",order:n++,interactionIndex:o,agent:String(a.agent||a.subagent_name||""),input:function(e,t){if(!Array.isArray(e))return"";let n=e.map((e,t)=>{let n=c(e);if(!n)return"";let r=String(n.role||"message"),i=n.name?`/${String(n.name)}`:"";return`[${t+1}] ${r}${i}: ${m(n.content)}`}).filter(Boolean).join("\n");return f(n,1800)}(s,0),inputParts:Array.isArray(s)?s.map(e=>{let t=c(e);if(!t)return null;let n=m(t.content).trim();return n?{role:String(t.role||"message"),text:n,...t.name?{name:String(t.name)}:{}}:null}).filter(e=>!!e):[],output:e}));for(let e of p(u))i+=1,t.push({id:`tool-${i}`,type:"tool",order:n++,interactionIndex:o,name:g(e),input:_(e),output:h(e)});continue}let l=String(a.role||"").toLowerCase();for(let e of("tool"===l?(i+=1,t.push({id:`tool-${i}`,type:"tool",order:n++,interactionIndex:o,name:String(a.name||a.tool_call_id||"tool"),input:"",output:m(a.content)})):("assistant"===l||"subagent"===l||"agent"===l||"opencode"===l)&&(r+=1,t.push({id:`llm-${r}`,type:"llm",order:n++,interactionIndex:o,agent:String(a.agent||a.subagent_name||""),input:"",output:m(a.content)})),p(a)))i+=1,t.push({id:`tool-${i}`,type:"tool",order:n++,interactionIndex:o,name:g(e),input:_(e),output:h(e)})}return t}(e.interactions||[]),d=s.filter(e=>"llm"===e.type&&e.output?.trim()).slice(-Math.max(1,n));if(0===d.length)return i("链路中没有可用于输出提取的 LLM 调用。",{event_count:s.length});try{var w,b;let n,r,u=d.filter(e=>"llm"===e.type&&e.output?.trim()).map(e=>({id:`${e.id}.output`,eventId:e.id,kind:"llm_output",text:e.output.trim(),agent:e.agent,name:e.name,interactionIndex:e.interactionIndex})),c=await I(o,a,(w=e.userTask,n=u.map(e=>({id:e.id,event_id:e.eventId,kind:e.kind,agent:e.agent||"",name:e.name||"",interaction_index:e.interactionIndex,text_preview:f(e.text,"llm_input"===e.kind?1800:3600)})),`你是 agent 评测系统中的“真实任务输出定位器”。
5
5
 
6
6
  你的任务:
7
7
  基于用户真实输入和最近的 LLM 调用,从 source_candidates 中选择“一条最像用户任务真实输出的完整原始数据”。
@@ -29,10 +29,10 @@ ${n.slice(-i)}`}function m(e){return"string"==typeof e?e:Array.isArray(e)?e.map(
29
29
  }
30
30
 
31
31
  user_task:
32
- ${I}
32
+ ${w}
33
33
 
34
34
  source_candidates:
35
- ${JSON.stringify(n,null,2)}`)),m=l(c);if(!m)return i("第一轮输出提取模型未返回合法 JSON。",{pass:"first",raw_response:c,threshold:t});let p=w.parse(m),g=y(u,p.selected_source_id),_={pass:"first",response:p,raw_response:c,source_candidate_ids:u.map(e=>e.id),threshold:t};if(p.has_task_output&&g)return S(g,p.confidence,p.reason,p.selected_source_id,{..._,accepted_below_threshold:p.confidence<t});let h=p.followup_anchor_llm_call_id||"";if(!p.needs_followup_context||!h){let e=p.selected_source_id&&!v(u,p.selected_source_id)?`第一轮返回的 selected_source_id=${p.selected_source_id} 不在候选列表中。`:"";return i(e||p.reason||`输出定位置信度 ${p.confidence} 低于阈值 ${t},且无需二次上下文。`,_)}let C=s.find(e=>"llm"===e.type&&e.id===h);if(!C)return i(`第一轮返回的 followup_anchor_llm_call_id=${h} 不存在。`,_);let M=s.find(e=>"llm"===e.type&&e.order>C.order),N=s.filter(e=>e.order>=C.order&&(!M||e.order<M.order)),O=function(e){let t=function(e){let t=[];for(let n of e)n.input?.trim()&&("llm"===n.type&&n.inputParts?.length?n.inputParts.forEach((e,r)=>{t.push({id:`${n.id}.input.${r+1}`,eventId:n.id,kind:"llm_input",text:e.text,agent:n.agent,name:n.name,interactionIndex:n.interactionIndex})}):t.push({id:`${n.id}.input`,eventId:n.id,kind:"llm"===n.type?"llm_input":"tool_input",text:n.input,agent:n.agent,name:n.name,interactionIndex:n.interactionIndex})),n.output?.trim()&&t.push({id:`${n.id}.output`,eventId:n.id,kind:"llm"===n.type?"llm_output":"tool_output",text:n.output,agent:n.agent,name:n.name,interactionIndex:n.interactionIndex});return t}(e),n=[],r=0;for(let e of t){let t="tool_output"===e.kind?4e3:1200,i=f(e.text,t);if(r+i.length>24e3)break;n.push(e),r+=i.length}return n}(N),T=await x(o,a,(b=e.userTask,r=O.map(e=>({id:e.id,event_id:e.eventId,kind:e.kind,agent:e.agent||"",name:e.name||"",interaction_index:e.interactionIndex,text_preview:f(e.text,"tool_output"===e.kind?4e3:1200)})),`你是 agent 评测系统中的“工具上下文产物定位器”。
35
+ ${JSON.stringify(n,null,2)}`)),m=l(c);if(!m)return i("第一轮输出提取模型未返回合法 JSON。",{pass:"first",raw_response:c,threshold:t});let p=k.parse(m),g=y(u,p.selected_source_id),_={pass:"first",response:p,raw_response:c,source_candidate_ids:u.map(e=>e.id),threshold:t};if(p.has_task_output&&g)return S(g,p.confidence,p.reason,p.selected_source_id,{..._,accepted_below_threshold:p.confidence<t});let h=p.followup_anchor_llm_call_id||"";if(!p.needs_followup_context||!h){let e=p.selected_source_id&&!v(u,p.selected_source_id)?`第一轮返回的 selected_source_id=${p.selected_source_id} 不在候选列表中。`:"";return i(e||p.reason||`输出定位置信度 ${p.confidence} 低于阈值 ${t},且无需二次上下文。`,_)}let M=s.find(e=>"llm"===e.type&&e.id===h);if(!M)return i(`第一轮返回的 followup_anchor_llm_call_id=${h} 不存在。`,_);let N=s.find(e=>"llm"===e.type&&e.order>M.order),O=s.filter(e=>e.order>=M.order&&(!N||e.order<N.order)),T=function(e){let t=function(e){let t=[];for(let n of e)n.input?.trim()&&("llm"===n.type&&n.inputParts?.length?n.inputParts.forEach((e,r)=>{t.push({id:`${n.id}.input.${r+1}`,eventId:n.id,kind:"llm_input",text:e.text,agent:n.agent,name:n.name,interactionIndex:n.interactionIndex})}):t.push({id:`${n.id}.input`,eventId:n.id,kind:"llm"===n.type?"llm_input":"tool_input",text:n.input,agent:n.agent,name:n.name,interactionIndex:n.interactionIndex})),n.output?.trim()&&t.push({id:`${n.id}.output`,eventId:n.id,kind:"llm"===n.type?"llm_output":"tool_output",text:n.output,agent:n.agent,name:n.name,interactionIndex:n.interactionIndex});return t}(e),n=[],r=0;for(let e of t){let t="tool_output"===e.kind?4e3:1200,i=f(e.text,t);if(r+i.length>24e3)break;n.push(e),r+=i.length}return n}(O),C=await I(o,a,(b=e.userTask,r=T.map(e=>({id:e.id,event_id:e.eventId,kind:e.kind,agent:e.agent||"",name:e.name||"",interaction_index:e.interactionIndex,text_preview:f(e.text,"tool_output"===e.kind?4e3:1200)})),`你是 agent 评测系统中的“工具上下文产物定位器”。
36
36
 
37
37
  你的任务:
38
38
  从 source_candidates 中选择“一条最像用户任务真实输出的原始数据”。
@@ -59,7 +59,7 @@ user_task:
59
59
  ${b}
60
60
 
61
61
  source_candidates:
62
- ${JSON.stringify(r,null,2)}`)),z=l(T);if(!z)return i("第二轮输出提取模型未返回合法 JSON。",{pass:"second",first:p,raw_first_response:c,raw_second_response:T,followup_anchor_llm_call_id:h,followup_event_ids:N.map(e=>e.id),threshold:t});let A=k.parse(z),q=y(O,A.selected_source_id),E={pass:"second",first:p,second:A,raw_first_response:c,raw_second_response:T,followup_anchor_llm_call_id:h,followup_event_ids:N.map(e=>e.id),source_candidate_ids:O.map(e=>e.id),threshold:t};if(A.has_task_output&&q)return S(q,A.confidence,A.reason,A.selected_source_id,{...E,accepted_below_threshold:A.confidence<t});let $=A.selected_source_id&&!v(O,A.selected_source_id)?`第二轮返回的 selected_source_id=${A.selected_source_id} 不在候选列表中。`:"";return i($||A.reason||`二次输出定位置信度 ${A.confidence} 低于阈值 ${t}。`,E)}catch(e){return i(`真实输出提取 LLM 调用失败:${e.message||String(e)}`,{error:e.message||String(e)})}}e.s(["extractTaskResultArtifact",()=>I]),n()}catch(e){n(e)}},!1),177608,e=>e.a(async(t,n)=>{try{e.i(210954);var r=e.i(184599),i=e.i(742529),o=e.i(256451);e.i(852628);var a=e.i(401682),s=t([a]);[a]=s.then?(await s)():s;let p=i.z.object({normalized_input:i.z.string().default(""),confidence:i.z.number().min(0).max(1).default(0),ignored_parts:i.z.array(i.z.string()).default([]),reason:i.z.string().default("")}),g=i.z.object({best_case_id:i.z.string().nullable().default(null),best_confidence:i.z.number().min(0).max(1).default(0),reason:i.z.string().default("")});function u(e){let t=e.trim(),n=t.match(/```(?:json)?\s*([\s\S]*?)\s*```/i);if(n)t=n[1];else{let e=t.indexOf("{"),n=t.lastIndexOf("}");-1!==e&&-1!==n&&n>=e&&(t=t.substring(e,n+1))}return JSON.parse(t)}async function l(e){var t;let n,i=await (0,a.getActiveConfig)(e);if(!i)return{client:null,model:null};let s=i.apiKey||"no-api-key-required",u=(t=i.baseUrl||"https://api.deepseek.com",String(t||"").replace(/\/chat\/completions\/?$/,"")),{customFetch:l}=(0,o.getProxyConfig)();return{client:new r.OpenAI({apiKey:s,baseURL:u,fetch:l,timeout:(n=Number(process.env.SEMANTIC_MATCH_TIMEOUT_MS||process.env.JUDGMENT_TIMEOUT_MS||3e5),Number.isFinite(n)&&n>0?n:3e5)}),model:i.model||"deepseek-chat"}}async function c(e){let{client:t,model:n}=await l(e);if(!t||!n)return"No active evaluation model configured";try{let e=await t.chat.completions.create({messages:[{role:"user",content:"Hi"}],model:n,max_tokens:5});if(e?.choices)return null;return"No response from model"}catch(n){let e,t;return e=n?.message||"LLM request failed",t=n?.cause?.message?` (${n.cause.message})`:"",`${e}${t}`}}async function d(e,t){let n={normalized_input:String(e||"").trim(),confidence:0,ignored_parts:[],reason:"LLM extraction unavailable, fallback to raw input"};if(!n.normalized_input)return n;let{client:r,model:i}=await l(t);if(!r||!i)return n;try{var o;let e=await r.chat.completions.create({model:i,temperature:0,top_p:1,seed:42,messages:[{role:"user",content:(o=n.normalized_input,`你是一个 agent 评测系统中的“真实用户输入抽取器”。
62
+ ${JSON.stringify(r,null,2)}`)),A=l(C);if(!A)return i("第二轮输出提取模型未返回合法 JSON。",{pass:"second",first:p,raw_first_response:c,raw_second_response:C,followup_anchor_llm_call_id:h,followup_event_ids:O.map(e=>e.id),threshold:t});let z=x.parse(A),q=y(T,z.selected_source_id),E={pass:"second",first:p,second:z,raw_first_response:c,raw_second_response:C,followup_anchor_llm_call_id:h,followup_event_ids:O.map(e=>e.id),source_candidate_ids:T.map(e=>e.id),threshold:t};if(z.has_task_output&&q)return S(q,z.confidence,z.reason,z.selected_source_id,{...E,accepted_below_threshold:z.confidence<t});let $=z.selected_source_id&&!v(T,z.selected_source_id)?`第二轮返回的 selected_source_id=${z.selected_source_id} 不在候选列表中。`:"";return i($||z.reason||`二次输出定位置信度 ${z.confidence} 低于阈值 ${t}。`,E)}catch(e){return i(`真实输出提取 LLM 调用失败:${e.message||String(e)}`,{error:e.message||String(e)})}}e.s(["extractTaskResultArtifact",()=>w]),n()}catch(e){n(e)}},!1),177608,e=>e.a(async(t,n)=>{try{e.i(210954);var r=e.i(184599),i=e.i(742529),o=e.i(256451);e.i(852628);var a=e.i(401682),s=t([a]);[a]=s.then?(await s)():s;let p=i.z.object({normalized_input:i.z.string().default(""),confidence:i.z.number().min(0).max(1).default(0),ignored_parts:i.z.array(i.z.string()).default([]),reason:i.z.string().default("")}),g=i.z.object({best_case_id:i.z.string().nullable().default(null),best_confidence:i.z.number().min(0).max(1).default(0),reason:i.z.string().default("")});function u(e){let t=e.trim(),n=t.match(/```(?:json)?\s*([\s\S]*?)\s*```/i);if(n)t=n[1];else{let e=t.indexOf("{"),n=t.lastIndexOf("}");-1!==e&&-1!==n&&n>=e&&(t=t.substring(e,n+1))}return JSON.parse(t)}async function l(e){var t;let n,i=await (0,a.getActiveConfig)(e);if(!i)return{client:null,model:null};let s=i.apiKey||"no-api-key-required",u=(t=i.baseUrl||"https://api.deepseek.com",String(t||"").replace(/\/chat\/completions\/?$/,"")),{customFetch:l}=(0,o.getProxyConfig)();return{client:new r.OpenAI({apiKey:s,baseURL:u,fetch:l,timeout:(n=Number(process.env.SEMANTIC_MATCH_TIMEOUT_MS||process.env.JUDGMENT_TIMEOUT_MS||3e5),Number.isFinite(n)&&n>0?n:3e5)}),model:i.model||"deepseek-chat"}}async function c(e){let{client:t,model:n}=await l(e);if(!t||!n)return"No active evaluation model configured";try{let e=await t.chat.completions.create({messages:[{role:"user",content:"Hi"}],model:n,max_tokens:5});if(e?.choices)return null;return"No response from model"}catch(n){let e,t;return e=n?.message||"LLM request failed",t=n?.cause?.message?` (${n.cause.message})`:"",`${e}${t}`}}async function d(e,t){let n={normalized_input:String(e||"").trim(),confidence:0,ignored_parts:[],reason:"LLM extraction unavailable, fallback to raw input"};if(!n.normalized_input)return n;let{client:r,model:i}=await l(t);if(!r||!i)return n;try{var o;let e=await r.chat.completions.create({model:i,temperature:0,top_p:1,seed:42,messages:[{role:"user",content:(o=n.normalized_input,`你是一个 agent 评测系统中的“真实用户输入抽取器”。
63
63
 
64
64
  你的任务:
65
65
  从 raw_input 中抽取真正应该用于评测数据集匹配的用户输入。
@@ -294,7 +294,7 @@ status:
294
294
  5. covered/partial 应尽量提供 actual_output 中的证据片段;partial/missing 必须明确指出还缺什么。${n}
295
295
 
296
296
  只输出严格 JSON:
297
- {"verdicts":[{"requirementId":"R-1","status":"covered","reason":"","evidenceQuote":""}],"confidence":0.0}`,user:JSON.stringify({requirements:(r={requirements:t.requirements.map(({id:e,text:t,importance:n})=>({id:e,text:t,importance:n})),finalResult:e.finalResult}).requirements,actual_output:r.finalResult},null,2)},a);return i=t.requirements,o=s.verdicts,d(i.map(e=>e.id),o.map(e=>e.requirementId),"完整性裁决"),{extraction:t,judgment:s}}),[y,v,S]=await Promise.allSettled([_,h,g]),x=f(y),I=f(v),w=f(S);if(!x||!I){let e=x?"未提取到任务必答要点":"未提取到答案陈述";return{score:null,confidence:0,note:e,evidence:{reason:e}}}let k=function(e,t=!1){if(!e.length)return null;let n=e.filter(e=>"relevant"===e.verdict).length;if(t&&0===n)return 0;let r={relevant:1,supporting:.5,irrelevant:0};return l(e.reduce((e,t)=>e+r[t.verdict],0)/e.length*100)}(x.judgment.verdicts,x.judgment.noncommittal.value),b=function(e,t){if(!e.length)return null;let n={covered:1,partial:.5,missing:0},r=new Map(t.map(e=>[e.requirementId,e])),i=e.reduce((e,t)=>e+t.importance,0);return i?l(e.reduce((e,t)=>{let i=r.get(t.id);return e+t.importance*(i?n[i.status]:0)},0)/i*100):null}(I.extraction.requirements,I.judgment.verdicts);if(null==k||null==b){let e=null==k?"答案没有可评估的陈述":"任务没有可评估的必答要点";return{score:null,confidence:0,note:e,evidence:{reason:e}}}let C=25*w.rating,M=l(.3*(s={relevance:k,completeness:b,coherence:C}).relevance+.5*s.completeness+.2*s.coherence),N=function(e){let t=[],n=e.completenessVerdicts.filter(e=>"covered"!==e.status);if(n.length){let r=new Map(e.requirements.map(e=>[e.id,e.text]));t.push(`未充分覆盖:${n.map(e=>r.get(e.requirementId)??e.requirementId).join("、")}`)}else t.push(`${e.requirements.length} 个必答要点均充分覆盖`);let r=e.relevanceVerdicts.filter(e=>"irrelevant"===e.verdict);return e.noncommittal?t.push("回答存在回避或含糊表述"):r.length?t.push(`${r.length} 条陈述与任务无关`):t.push("内容直接相关"),4===e.coherence.rating?t.push("组织清晰"):t.push(e.coherence.reason.replace(/[。;]+$/u,"")||"组织表达存在瑕疵"),`${t.join(";")}。`}({requirements:I.extraction.requirements,completenessVerdicts:I.judgment.verdicts,relevanceVerdicts:x.judgment.verdicts,noncommittal:x.judgment.noncommittal.value,coherence:w});return{score:M,confidence:Math.min(x.extraction.confidence,x.judgment.confidence,I.extraction.confidence,I.judgment.confidence,w.confidence),evidence:{reason:N,subScores:{relevance:k,completeness:b,coherence:C},relevance:{statements:x.extraction.statements,verdicts:x.judgment.verdicts,noncommittal:x.judgment.noncommittal},completeness:{requirements:I.extraction.requirements,verdicts:I.judgment.verdicts},coherence:w}}}e.s(["evaluateAnswerQuality",()=>m],170508)},628992,e=>{"use strict";var t=e.i(254799),n=e.i(742529),r=e.i(308229);let i=n.z.object({claims:n.z.array(n.z.object({claimId:n.z.string().min(1),claim:n.z.string().min(1),sourceQuote:n.z.string().min(1),requiresExhaustiveEvidence:n.z.boolean().default(!1)})).default([]),confidence:n.z.number().min(0).max(1).default(0)}),o=n.z.object({verdicts:n.z.array(n.z.object({claimId:n.z.string().min(1),status:n.z.enum(["supported","contradicted","not_covered"]),citations:n.z.array(n.z.object({contextId:n.z.string().min(1),evidenceQuote:n.z.string().min(1)})).default([]),reason:n.z.string().default(""),confidence:n.z.number().min(0).max(1).default(0)})).default([])});function a(e){if("string"==typeof e)return e.trim();if(null==e)return"";try{return JSON.stringify(e,null,2).trim()}catch{return String(e).trim()}}function s(e){return a(e).replace(/\s+/gu," ").trim()}function u(e,n){var i,o;let u,l,c,d=(0,r.buildAgentCallTree)(e);if(!d)return[];let f=(u=s(n),l=[],(0,r.walkTree)(d,e=>{for(let t of e.events){if("llm"!==t.kind&&"tool"!==t.kind)continue;let n=s("tool"===t.kind||"skill"===t.kind||"task"===t.kind?a(t.output):a(t.interaction?.content??t.summary??""));n&&u&&(n===u||n.includes(u)||u.includes(n))&&l.push({node:e,event:t,exact:n===u})}}),l.sort((e,t)=>e.exact!==t.exact?e.exact?-1:1:e.event.kind!==t.event.kind?"llm"===e.event.kind?-1:1:t.event.interactionIndex-e.event.interactionIndex),(c=l[0])?{node:c.node,interactionIndex:c.event.interactionIndex}:{node:d,interactionIndex:1/0}),m=(i=f.node,o=f.interactionIndex,(i.compactions??[]).filter(e=>e.interactionIndex<o).reduce((e,t)=>Math.max(e,t.interactionIndex),-1)),p=[];for(let e of f.node.events){if("tool"!==e.kind||e.interactionIndex>f.interactionIndex||e.interactionIndex<=m)continue;let n=a(e.output);if(!n)continue;let r=`ctx-${p.length+1}`,i=String(e.toolStatus??"").toLowerCase(),o=/error|fail|cancel/.test(i)?"error":/success|complete/.test(i)?"success":void 0;p.push({contextId:r,content:n,...e.name?{toolName:e.name}:{},...o?{status:o}:{},source:{contextId:r,...e.toolCallId?{toolCallId:e.toolCallId}:{},interactionIndex:e.interactionIndex,outputHash:(0,t.createHash)("sha256").update(n).digest("hex"),agentNodeId:f.node.id}})}return p}function l(e,n){let r=u(e,n).map(e=>({toolName:e.toolName,status:e.status,outputHash:e.source.outputHash,interactionIndex:e.source.interactionIndex}));return(0,t.createHash)("sha256").update(JSON.stringify({finalResult:n,contexts:r})).digest("hex")}function c(e){let t=e.toLowerCase(),n=new Set(t.match(/[a-z0-9_.:/@-]{2,}|[\u4e00-\u9fff]{2,}/gu)??[]);for(let e of t.match(/[\u4e00-\u9fff]+/gu)??[])for(let t=0;t<e.length-1;t+=1)n.add(e.slice(t,t+2));return n}function d(e){return e.slice(0,20)}function f(e,t){if(new Set(e).size!==e.length)throw Error(`${t} 包含重复 ID`)}async function m(e){var t;let n,r;try{return n=await e.invoke(e.prompt,e.schema),e.validate(n),n}catch(e){r=e}let i=await e.invoke((t={original:e.prompt,validationError:r instanceof Error?r.message:String(r),invalidResponse:n},{stage:`${t.original.stage}:repair`,system:`${t.original.system}
297
+ {"verdicts":[{"requirementId":"R-1","status":"covered","reason":"","evidenceQuote":""}],"confidence":0.0}`,user:JSON.stringify({requirements:(r={requirements:t.requirements.map(({id:e,text:t,importance:n})=>({id:e,text:t,importance:n})),finalResult:e.finalResult}).requirements,actual_output:r.finalResult},null,2)},a);return i=t.requirements,o=s.verdicts,d(i.map(e=>e.id),o.map(e=>e.requirementId),"完整性裁决"),{extraction:t,judgment:s}}),[y,v,S]=await Promise.allSettled([_,h,g]),I=f(y),w=f(v),k=f(S);if(!I||!w){let e=I?"未提取到任务必答要点":"未提取到答案陈述";return{score:null,confidence:0,note:e,evidence:{reason:e}}}let x=function(e,t=!1){if(!e.length)return null;let n=e.filter(e=>"relevant"===e.verdict).length;if(t&&0===n)return 0;let r={relevant:1,supporting:.5,irrelevant:0};return l(e.reduce((e,t)=>e+r[t.verdict],0)/e.length*100)}(I.judgment.verdicts,I.judgment.noncommittal.value),b=function(e,t){if(!e.length)return null;let n={covered:1,partial:.5,missing:0},r=new Map(t.map(e=>[e.requirementId,e])),i=e.reduce((e,t)=>e+t.importance,0);return i?l(e.reduce((e,t)=>{let i=r.get(t.id);return e+t.importance*(i?n[i.status]:0)},0)/i*100):null}(w.extraction.requirements,w.judgment.verdicts);if(null==x||null==b){let e=null==x?"答案没有可评估的陈述":"任务没有可评估的必答要点";return{score:null,confidence:0,note:e,evidence:{reason:e}}}let M=25*k.rating,N=l(.3*(s={relevance:x,completeness:b,coherence:M}).relevance+.5*s.completeness+.2*s.coherence),O=function(e){let t=[],n=e.completenessVerdicts.filter(e=>"covered"!==e.status);if(n.length){let r=new Map(e.requirements.map(e=>[e.id,e.text]));t.push(`未充分覆盖:${n.map(e=>r.get(e.requirementId)??e.requirementId).join("、")}`)}else t.push(`${e.requirements.length} 个必答要点均充分覆盖`);let r=e.relevanceVerdicts.filter(e=>"irrelevant"===e.verdict);return e.noncommittal?t.push("回答存在回避或含糊表述"):r.length?t.push(`${r.length} 条陈述与任务无关`):t.push("内容直接相关"),4===e.coherence.rating?t.push("组织清晰"):t.push(e.coherence.reason.replace(/[。;]+$/u,"")||"组织表达存在瑕疵"),`${t.join(";")}。`}({requirements:w.extraction.requirements,completenessVerdicts:w.judgment.verdicts,relevanceVerdicts:I.judgment.verdicts,noncommittal:I.judgment.noncommittal.value,coherence:k});return{score:N,confidence:Math.min(I.extraction.confidence,I.judgment.confidence,w.extraction.confidence,w.judgment.confidence,k.confidence),evidence:{reason:O,subScores:{relevance:x,completeness:b,coherence:M},relevance:{statements:I.extraction.statements,verdicts:I.judgment.verdicts,noncommittal:I.judgment.noncommittal},completeness:{requirements:w.extraction.requirements,verdicts:w.judgment.verdicts},coherence:k}}}e.s(["evaluateAnswerQuality",()=>m],170508)},628992,e=>{"use strict";var t=e.i(254799),n=e.i(742529),r=e.i(308229);let i=n.z.object({claims:n.z.array(n.z.object({claimId:n.z.string().min(1),claim:n.z.string().min(1),sourceQuote:n.z.string().min(1),requiresExhaustiveEvidence:n.z.boolean().default(!1)})).default([]),confidence:n.z.number().min(0).max(1).default(0)}),o=n.z.object({verdicts:n.z.array(n.z.object({claimId:n.z.string().min(1),status:n.z.enum(["supported","contradicted","not_covered"]),citations:n.z.array(n.z.object({contextId:n.z.string().min(1),evidenceQuote:n.z.string().min(1)})).default([]),reason:n.z.string().default(""),confidence:n.z.number().min(0).max(1).default(0)})).default([])});function a(e){if("string"==typeof e)return e.trim();if(null==e)return"";try{return JSON.stringify(e,null,2).trim()}catch{return String(e).trim()}}function s(e){return a(e).replace(/\s+/gu," ").trim()}function u(e,n){var i,o;let u,l,c,d=(0,r.buildAgentCallTree)(e);if(!d)return[];let f=(u=s(n),l=[],(0,r.walkTree)(d,e=>{for(let t of e.events){if("llm"!==t.kind&&"tool"!==t.kind)continue;let n=s("tool"===t.kind||"skill"===t.kind||"task"===t.kind?a(t.output):a(t.interaction?.content??t.summary??""));n&&u&&(n===u||n.includes(u)||u.includes(n))&&l.push({node:e,event:t,exact:n===u})}}),l.sort((e,t)=>e.exact!==t.exact?e.exact?-1:1:e.event.kind!==t.event.kind?"llm"===e.event.kind?-1:1:t.event.interactionIndex-e.event.interactionIndex),(c=l[0])?{node:c.node,interactionIndex:c.event.interactionIndex}:{node:d,interactionIndex:1/0}),m=(i=f.node,o=f.interactionIndex,(i.compactions??[]).filter(e=>e.interactionIndex<o).reduce((e,t)=>Math.max(e,t.interactionIndex),-1)),p=[];for(let e of f.node.events){if("tool"!==e.kind||e.interactionIndex>f.interactionIndex||e.interactionIndex<=m)continue;let n=a(e.output);if(!n)continue;let r=`ctx-${p.length+1}`,i=String(e.toolStatus??"").toLowerCase(),o=/error|fail|cancel/.test(i)?"error":/success|complete/.test(i)?"success":void 0;p.push({contextId:r,content:n,...e.name?{toolName:e.name}:{},...o?{status:o}:{},source:{contextId:r,...e.toolCallId?{toolCallId:e.toolCallId}:{},interactionIndex:e.interactionIndex,outputHash:(0,t.createHash)("sha256").update(n).digest("hex"),agentNodeId:f.node.id}})}return p}function l(e,n){let r=u(e,n).map(e=>({toolName:e.toolName,status:e.status,outputHash:e.source.outputHash,interactionIndex:e.source.interactionIndex}));return(0,t.createHash)("sha256").update(JSON.stringify({finalResult:n,contexts:r})).digest("hex")}function c(e){let t=e.toLowerCase(),n=new Set(t.match(/[a-z0-9_.:/@-]{2,}|[\u4e00-\u9fff]{2,}/gu)??[]);for(let e of t.match(/[\u4e00-\u9fff]+/gu)??[])for(let t=0;t<e.length-1;t+=1)n.add(e.slice(t,t+2));return n}function d(e){return e.slice(0,20)}function f(e,t){if(new Set(e).size!==e.length)throw Error(`${t} 包含重复 ID`)}async function m(e){var t;let n,r;try{return n=await e.invoke(e.prompt,e.schema),e.validate(n),n}catch(e){r=e}let i=await e.invoke((t={original:e.prompt,validationError:r instanceof Error?r.message:String(r),invalidResponse:n},{stage:`${t.original.stage}:repair`,system:`${t.original.system}
298
298
 
299
299
  上一次响应不符合结构、ID 或 contextId 约束。请根据 validationError 修正,只返回完整、严格 JSON。`,user:JSON.stringify({originalInput:JSON.parse(t.original.user),validationError:t.validationError,invalidResponse:t.invalidResponse},null,2)}),e.schema);return e.validate(i),i}async function p(e){var t,n,r;let a=u(e.interactions,e.finalResult);if(!a.length)return{score:null,confidence:0,evidence:{reason:"本次 trace 没有可用工具证据",contextCount:0},note:"本次 trace 没有可用工具证据"};let s=await m({prompt:{stage:"claim-extraction",system:`你是 Agent 最终结果关键事实主张提取器。
300
300
 
@@ -332,6 +332,6 @@ status:
332
332
  8. 不输出总分,只输出严格 JSON。
333
333
 
334
334
  输出:
335
- {"verdicts":[{"claimId":"C-1","status":"supported","citations":[{"contextId":"ctx-1","evidenceQuote":""}],"reason":"","confidence":0.0}]}`,user:JSON.stringify({claims:n.claims,retrievedContexts:n.contexts,claimContextIds:n.claimContextIds},null,2)}),a=await m({prompt:i,schema:o,invoke:e.invoke,validate:e=>(function(e){let t=e.claims.map(e=>e.claimId),n=e.verdicts.map(e=>e.claimId);f(n,"忠实度裁决");let r=new Set(t);if(n.length!==t.length||n.some(e=>!r.has(e)))throw Error("忠实度裁决输出 ID 与输入不一致");let i=new Map(e.contexts.map(e=>[e.contextId,e]));for(let t of e.verdicts){if("not_covered"!==t.status&&0===t.citations.length)throw Error(`忠实度裁决 ${t.claimId} 缺少证据引用`);let n=new Set(e.allowedContextIds[t.claimId]??[]);for(let e of t.citations){let r=i.get(e.contextId);if(!n.has(e.contextId)||!r)throw Error(`忠实度裁决 ${t.claimId} 引用了未授权 contextId`)}}})({claims:r.claims,verdicts:e.verdicts,allowedContextIds:r.allowedContextIds,contexts:r.contexts})});_.push(...a.verdicts)}let y=new Map(_.map(e=>[e.claimId,e])),v=new Map(p.map(e=>[e.contextId,e])),S=l.map(e=>{let t=y.get(e.claimId);return{...e,status:t.status,reason:t.reason,confidence:t.confidence,citations:t.citations.map(e=>{let t=v.get(e.contextId);return{contextId:e.contextId,evidenceQuote:e.evidenceQuote,toolName:t.toolName,toolCallId:t.source.toolCallId,interactionIndex:t.source.interactionIndex}})}}),x=S.filter(e=>"supported"===e.status).length,I=S.filter(e=>"contradicted"===e.status).length,w=S.filter(e=>"not_covered"===e.status).length,k=(r=S).length?Math.round(10*Math.max(0,Math.min(100,r.filter(e=>"supported"===e.status).length/r.length*100)))/10:null,b=_.reduce((e,t)=>e+t.confidence,0)/_.length;return{score:k,confidence:Math.min(s.confidence,b),evidence:{reason:`${S.length} 条可验证主张中 ${x} 条有工具证据支持,${I} 条与证据矛盾,${w} 条证据未覆盖。`,claims:S,summary:{claimCount:S.length,supported:x,contradicted:I,notCovered:w},contextCount:a.length,chunkCount:p.length,contextSelection:g?"all":"claim-top-k-batched",claimLimit:20,claimsPerBatch:8,verificationBatchCount:h.length}}}e.s(["computeFaithfulnessInputHash",()=>l,"evaluateFaithfulness",()=>p],628992)},813480,e=>e.a(async(t,n)=>{try{var r=e.i(254799);e.i(210954);var i=e.i(184599),o=e.i(309418),a=e.i(401682),s=e.i(256451),u=e.i(18193),l=e.i(469465),c=e.i(588876),d=e.i(512429),f=e.i(579503),m=e.i(581191),p=e.i(723011),g=e.i(170508),_=e.i(628992),h=e.i(365371),y=t([o,a,c,d,f]);[o,a,c,d,f]=y.then?(await y)():y;let M="result-quality",N=["faithfulness","instruction-adherence","answer-quality","accuracy"],O={faithfulness:"2.0.1","instruction-adherence":"2.0.1","answer-quality":"2.0.1",accuracy:"2.0.1"};async function v(e){let t=await (0,a.getActiveConfig)(e);if(!t)return null;let{customFetch:n}=(0,s.getProxyConfig)();return{client:new i.OpenAI({apiKey:t.apiKey||"no-api-key-required",baseURL:String(t.baseUrl||"https://api.deepseek.com").replace(/\/chat\/completions\/?$/,""),fetch:n,timeout:Number(process.env.RESULT_QUALITY_TIMEOUT_MS||process.env.JUDGMENT_TIMEOUT_MS||3e5)}),model:t.model||"deepseek-chat"}}async function S(e,t,n){let r=await v(e);if(!r)throw Error("未配置可用的评测模型");let i="string"==typeof t?[{role:"user",content:t}]:[{role:"system",content:t.system},{role:"user",content:t.user}],o=await r.client.chat.completions.create({model:r.model,temperature:0,top_p:1,seed:42,messages:i}),a=o.choices?.[0]?.message?.content?.trim();if(!a)throw Error("评测模型返回空内容");return n.parse(function(e){let t=(0,h.parseLooseJson)(e);if(!t)throw Error("评测模型返回内容不是可解析的 JSON 对象");return t}(a))}function x(e,t,n={}){return{score:null,method:e,confidence:0,evidence:{...n,reason:t},note:t}}async function I(e,t,n,r){await o.prisma.traceEvaluation.upsert({where:{executionId_evaluatorId_metricKey:{executionId:e,evaluatorId:M,metricKey:n}},create:{executionId:e,evaluatorId:M,evaluatorVersion:O[n],dimension:"result",metricKey:n,status:"done",score:r.score,method:r.method,confidence:r.confidence,evidenceJson:JSON.stringify(r.evidence),note:r.note,interactionsHash:t},update:{evaluatorVersion:O[n],status:"done",score:r.score,method:r.method,confidence:r.confidence,evidenceJson:JSON.stringify(r.evidence),note:r.note,interactionsHash:t,errorMessage:null,ranAt:new Date}})}async function w(e,t,n,r,i={}){let a=r instanceof Error?r.message:String(r),s=JSON.stringify({...i,reason:a});await o.prisma.traceEvaluation.upsert({where:{executionId_evaluatorId_metricKey:{executionId:e,evaluatorId:M,metricKey:n}},create:{executionId:e,evaluatorId:M,evaluatorVersion:O[n],dimension:"result",metricKey:n,status:"failed",method:k(n),confidence:0,interactionsHash:t,evidenceJson:s,errorMessage:a},update:{evaluatorVersion:O[n],status:"failed",score:null,method:k(n),confidence:0,interactionsHash:t,evidenceJson:s,errorMessage:a,ranAt:new Date}})}function k(e){return"faithfulness"===e?"grounding":"accuracy"===e?"gt-rubric":"self-rubric"}async function b(e){var t;let n,i=await o.prisma.execution.findUnique({where:{id:e},select:{id:!0,taskId:!0,query:!0,finalResult:!0,user:!0}});if(!i)throw Error(`Execution ${e} 不存在`);let a=i.taskId?await o.prisma.session.findUnique({where:{taskId:i.taskId},select:{interactions:!0,query:!0}}):null,s=[];try{s=a?.interactions?JSON.parse(a.interactions):[]}catch{s=[]}let u=String(i.query||a?.query||"").trim(),h=i.finalResult?.trim()?{outputForEvaluation:i.finalResult.trim()}:await (0,c.extractTaskResultArtifact)({userTask:u,interactions:s,fallbackOutput:i.finalResult||"",user:i.user}),y=String(h.outputForEvaluation||"").trim(),v=function(e){let t=[];for(let n of e)for(let e of function(e){if(!e||"object"!=typeof e)return[];let t=Array.isArray(e.requestMessages)?e.requestMessages:[],n=e.responseMessage?[e.responseMessage]:[];return[...t,...n].filter(e=>!!(e&&"object"==typeof e))}(n)){if("system"!==String(e.role??""))continue;let n=(function e(t){if("string"==typeof t)return t;if(Array.isArray(t))return t.map(t=>"string"==typeof t?t:t&&"object"==typeof t?e(t.text??t.content??t.output??t.result??""):"").filter(Boolean).join("\n");if(t&&"object"==typeof t)try{return JSON.stringify(t)}catch{return""}return String(t??"")})(e.content).trim();n&&!t.includes(n)&&t.push(n.slice(0,8e3))}return t.slice(0,4)}(s),b=i.user?await (0,d.loadUserAgentDatasets)(i.user):[],C=(0,d.hashAgentDatasetScope)(b),T=(t={interactions:s,query:u,relevantSystemInstructions:v,finalResult:y,accuracyGroundTruthHash:C},n=e=>(0,r.createHash)("sha256").update(JSON.stringify(e)).digest("hex"),{faithfulness:(0,_.computeFaithfulnessInputHash)(t.interactions,t.finalResult),"instruction-adherence":n({query:t.query,relevantSystemInstructions:t.relevantSystemInstructions,finalResult:t.finalResult}),"answer-quality":n({query:t.query,finalResult:t.finalResult}),accuracy:n({query:t.query,finalResult:t.finalResult,groundTruthScope:t.accuracyGroundTruthHash??"no-ground-truth-scope"})}),z=await o.prisma.traceEvaluation.findMany({where:{executionId:e,evaluatorId:M}}),A={},q=N.filter(e=>{var t;let n=z.find(t=>t.metricKey===e);return t=T[e],!n||"done"!==n.status||n.evaluatorVersion!==O[e]||n.interactionsHash!==t||(A[e]=function(e){let t={};try{t=e.evidenceJson?JSON.parse(e.evidenceJson):{}}catch{}return{score:e.score,method:e.method,confidence:e.confidence,evidence:t,note:e.note??void 0}}(n),!1)});if(!q.length)return{executionId:e,reused:!0,metrics:A};if(await Promise.all(q.map(t=>o.prisma.traceEvaluation.upsert({where:{executionId_evaluatorId_metricKey:{executionId:e,evaluatorId:M,metricKey:t}},create:{executionId:e,evaluatorId:M,evaluatorVersion:O[t],dimension:"result",metricKey:t,status:"running",method:k(t),confidence:0,interactionsHash:T[t]},update:{evaluatorVersion:O[t],status:"running",score:null,method:k(t),confidence:0,evidenceJson:null,note:null,interactionsHash:T[t],errorMessage:null,ranAt:new Date}}))),!y||!u){let t=y?"未提取到用户任务":"未提取到最终交付物";for(let e of q)A[e]=x(k(e),t);return await Promise.all(q.map(t=>I(e,T[t],t,A[t]))),{executionId:e,reused:!1,metrics:A}}let E={},$=e=>async(t,n)=>{let r=E[e]??[];E[e]=r;let o=Date.now();try{let e=await S(i.user,t,n);return r.push({stage:t.stage,status:"done",durationMs:Date.now()-o,response:e}),e}catch(e){throw r.push({stage:t.stage,status:"failed",durationMs:Date.now()-o,error:e instanceof Error?e.message:String(e)}),e}},j={};return q.includes("faithfulness")&&(j.faithfulness=async()=>{let e=await (0,_.evaluateFaithfulness)({query:u,finalResult:y,interactions:s,invoke:$("faithfulness")});return{...e,method:"grounding",evidence:{...e.evidence,calls:E.faithfulness??[]}}}),q.includes("instruction-adherence")&&(j["instruction-adherence"]=async()=>{let e=await (0,p.evaluateInstructionAdherence)({query:u,relevantSystemInstructions:v,finalResult:y,invoke:$("instruction-adherence")});return{...e,method:"self-rubric",evidence:{...e.evidence,calls:E["instruction-adherence"]??[]}}}),q.includes("answer-quality")&&(j["answer-quality"]=async()=>{let e=await (0,g.evaluateAnswerQuality)({query:u,finalResult:y,invoke:$("answer-quality")});return{...e,method:"self-rubric",evidence:{...e.evidence,calls:E["answer-quality"]??[]}}}),q.includes("accuracy")&&(j.accuracy=async()=>{if(!i.user)return x("gt-rubric","trace 缺少用户归属,无法匹配评测数据集",{accuracyStatus:"no_ground_truth",datasetScopeHash:C});let e=await (0,d.matchAgentDatasetCase)({user:i.user,traceQuery:u,requireExpectedOutput:!0,includeAllDatasetKinds:!0,datasets:b});if(e.error)throw Error(`准确性数据集语义匹配失败: ${e.error}`);if(!e.match)return x("gt-rubric","未匹配到带预期输出的评测数据集 Case",{accuracyStatus:"no_ground_truth",datasetScopeHash:C,matchReason:e.matchReason});let{dataset:t,caseEntry:n,matchedBy:r,matchConfidence:o,matchReason:a}=e.match,s=(0,l.canReuseRootCauseCache)(n.expectedOutput,n.rootCauseMeta),c="live-extract",p=[];s&&n.rootCauseMeta?.status==="ready"?(p=n.rootCauses??[],c="dataset-cache"):s&&n.rootCauseMeta?.status==="empty"?c="dataset-empty":p=await (0,f.extractRootCausesFromExpected)(u,n.expectedOutput,i.user);let g=(0,m.normalizeAccuracyKeyPoints)(p),_={datasetId:t.id,datasetName:t.name,caseId:n.id,matchedBy:r,matchConfidence:o,matchReason:a,datasetScopeHash:C,expectedOutputHash:(0,l.hashExpectedOutput)(n.expectedOutput),keyPointsHash:(0,m.hashAccuracyKeyPoints)(g),keyPointSource:c};if(!g.length)return x("gt-rubric","预期输出未提取到可用关键观点",{accuracyStatus:"no_ground_truth",..._});let h=await (0,m.evaluateResultAccuracy)({query:u,expectedOutput:n.expectedOutput,actualOutput:y,keyPoints:g,invoke:$("accuracy")});return{score:h.score,method:"gt-rubric",confidence:null==h.score?0:Math.min(o,h.confidence),note:h.note,evidence:{accuracyStatus:null==h.score?"not_attempted":"scored",..._,...h.evidence,calls:E.accuracy??[]}}}),await Promise.all(q.map(async t=>{try{let n=await j[t]();A[t]=n,await I(e,T[t],t,n),"accuracy"===t&&null!=n.score&&await o.prisma.execution.update({where:{id:e},data:{answerScore:n.score/100,isAnswerCorrect:n.score>=80,judgmentReason:String(n.evidence.reason??"结果准确性评测")}})}catch(n){await w(e,T[t],t,n,{calls:E[t]??[]}),A[t]={...x(k(t),`${{faithfulness:"忠实度","instruction-adherence":"指令遵循","answer-quality":"答案质量",accuracy:"准确性"}[t]}评测失败`),failed:!0}}})),{executionId:e,reused:!1,metrics:A}}function C(e,t,n){return(0,u.withBackgroundOpencodeSlot)(()=>b(e),{label:`quality-result-eval:${e}`,taskType:"quality-result-eval",user:t??void 0,signal:n})}e.s(["scheduleResultEvaluation",()=>C]),n()}catch(e){n(e)}},!1),445139,e=>e.a(async(t,n)=>{try{var r=e.i(571902),i=e.i(904239),o=e.i(460535),a=e.i(337216),s=e.i(667034),u=e.i(813480),l=t([i,u]);function c(e,t){let n=process.env[e];if(!n)return t;let r=Number(n);return Number.isFinite(r)&&r>0?r:t}function d(e,t){let n=e.sessions.get(t);return n||(n={sessionId:t,pendingFileKeys:new Set,sourceIds:new Set,failures:0,parked:!1},e.sessions.set(t,n)),n}function f(e){e.shortTimer&&clearTimeout(e.shortTimer),e.longTimer&&clearTimeout(e.longTimer),e.maxTimer&&clearTimeout(e.maxTimer),e.shortTimer=void 0,e.longTimer=void 0,e.maxTimer=void 0}function m(e,t,n){let r=d(e,t);r.failures+=1,e.warn("[OTelConsumer] session processing failed",{sessionId:t,failures:r.failures,message:n?.message||String(n)}),r.failures>=e.parkAfter&&(r.parked=!0,f(r),e.warn("[OTelConsumer] parked poisoned session",{sessionId:t,failures:r.failures}))}async function p(e,t){let n=e.sessions.get(t);if(n&&!n.parked)for(let r of Array.from(n.sourceIds)){let i=e.sourcesById.get(r);if(i)try{let a=i.aggregate(t);a.record&&await e.saveExecution({...a.record,skip_evaluation:i.defaultSkipEvaluation()}),n.failures=0,function(e,t,n){let r=e.sessions.get(t);if(r)for(let i of Array.from(r.pendingFileKeys)){let r=e.pendingFiles.get(i);if(r&&r.source.id===n&&(r.done.add(t),[...r.sessions].every(e=>r.done.has(e))))for(let t of((0,o.saveFileCursor)(r.spoolDir,r.relPath,r.nextCursor),e.pendingFiles.delete(i),r.sessions)){let n=e.sessions.get(t);n?.pendingFileKeys.delete(i)}}}(e,t,r)}catch(n){m(e,t,n)}}}async function g(e,t){let n=e.sessions.get(t);if(n&&!n.parked)for(let r of Array.from(n.sourceIds)){let i=e.sourcesById.get(r);if(i)try{let r=i.aggregate(t);if(!r.record)continue;let o=await e.saveExecution({...r.record,skip_evaluation:!1,skip_internal_judgment:!0,force_judgment:!0}),a=o.record.upload_id||o.record.task_id;a&&r.record.trace_completed_at&&r.record.final_result&&await e.scheduleResultEvaluation(a,r.record.user),n.failures=0}catch(n){m(e,t,n)}}}async function _(e){if(e.ticking)return;e.ticking=!0;let t=0,n=0;try{for(let i of e.sources){let s=i.spoolDir(),u=i.listFiles();for(let a of u){let u=(0,o.toCheckpointRelPath)(s,a),l=(0,o.getFileCursor)(s,u),c=(0,r.readNewLinesSince)(a,l);if(n+=c.parseErrors,0===c.lineCount)continue;let f=new Set(c.events.map(e=>e?.sessionId).filter(e=>"string"==typeof e&&e.trim().length>0));if(0===f.size){(0,o.saveFileCursor)(s,u,c.nextCursor);continue}let m=`${i.id}:${u}`,_=e.pendingFiles.get(m),h=!1;for(let n of(_?c.nextCursor.bytes!==_.nextCursor.bytes&&(_.nextCursor=c.nextCursor,h=!0):(_={source:i,spoolDir:s,relPath:u,nextCursor:c.nextCursor,sessions:new Set,done:new Set},e.pendingFiles.set(m,_),h=!0),f))_.sessions.has(n)||(_.sessions.add(n),h=!0),t+=1,function(e,t,n,r,i){let o=d(e,t);o.pendingFileKeys.add(r),o.sourceIds.add(n.id),!o.parked&&i&&(o.shortTimer&&clearTimeout(o.shortTimer),o.shortTimer=setTimeout(()=>{o.shortTimer=void 0,p(e,t)},e.shortMs),o.longTimer&&clearTimeout(o.longTimer),o.longTimer=setTimeout(()=>{o.longTimer=void 0,o.maxTimer&&(clearTimeout(o.maxTimer),o.maxTimer=void 0),g(e,t)},e.longMs),o.maxTimer||(o.maxTimer=setTimeout(()=>{o.maxTimer=void 0,o.longTimer&&(clearTimeout(o.longTimer),o.longTimer=void 0),g(e,t)},e.maxWaitMs)))}(e,n,i,m,h)}try{let t=(0,a.compactProcessedSpoolFiles)(s,u,e.retentionDays);t.archived>0&&e.log("[OTelConsumer] retention archived processed spool files",{source:i.id,archived:t.archived})}catch(t){e.warn("[OTelConsumer] retention failed",{source:i.id,message:t?.message||String(t)})}}}finally{e.ticking=!1}let i=[...e.sessions.values()].filter(e=>e.parked).length,s=[...e.sessions.values()].filter(e=>e.failures>0).length;(t||e.pendingFiles.size||i||s||n)&&e.log("[OTelConsumer] tick",{discovered:t,backlog:e.pendingFiles.size,parked:i,failed:s,parseErrors:n})}function h(e={}){y();let t=function(e={}){let t=e.sources||(0,s.listSources)();return{ticking:!1,sources:t,sourcesById:new Map(t.map(e=>[e.id,e])),pendingFiles:new Map,sessions:new Map,saveExecution:e.saveExecution||i.saveExecutionRecord,scheduleResultEvaluation:e.scheduleResultEvaluation||u.scheduleResultEvaluation,shortMs:e.shortMs??c("AGENT_INSIGHT_OTEL_CONSUMER_SHORT_MS",3e3),longMs:e.longMs??c("AGENT_INSIGHT_OTEL_CONSUMER_LONG_MS",3e4),maxWaitMs:e.maxWaitMs??c("AGENT_INSIGHT_OTEL_CONSUMER_MAX_WAIT_MS",12e4),tickMs:e.tickMs??c("AGENT_INSIGHT_OTEL_CONSUMER_TICK_MS",1e3),parkAfter:e.parkAfter??c("AGENT_INSIGHT_OTEL_CONSUMER_PARK_AFTER",3),retentionDays:e.retentionDays??c("AGENT_INSIGHT_OTEL_SPOOL_RETENTION_DAYS",7),seedOnStart:e.seedOnStart??!0,log:e.log||console.log,warn:e.warn||console.warn}}(e);if(t.seedOnStart)for(let e of t.sources)try{(0,o.seedToEof)(e.spoolDir(),e.listFiles())}catch(n){t.warn("[OTelConsumer] checkpoint seed failed",{source:e.id,message:n?.message||String(n)})}t.interval=setInterval(()=>{_(t)},t.tickMs),globalThis.__otelSpoolConsumer=t,_(t),t.log("[OTelConsumer] started",{sources:t.sources.map(e=>e.id)})}function y(){let e=globalThis.__otelSpoolConsumer;if(e){for(let t of(e.interval&&clearInterval(e.interval),e.sessions.values()))f(t);globalThis.__otelSpoolConsumer=void 0}}function v(){return globalThis.__otelSpoolConsumer}[i,u]=l.then?(await l)():l,e.s(["getOtelSpoolConsumerForTest",()=>v,"runOtelSpoolConsumerTick",()=>_,"startOtelSpoolConsumer",()=>h,"stopOtelSpoolConsumer",()=>y]),n()}catch(e){n(e)}},!1)];
335
+ {"verdicts":[{"claimId":"C-1","status":"supported","citations":[{"contextId":"ctx-1","evidenceQuote":""}],"reason":"","confidence":0.0}]}`,user:JSON.stringify({claims:n.claims,retrievedContexts:n.contexts,claimContextIds:n.claimContextIds},null,2)}),a=await m({prompt:i,schema:o,invoke:e.invoke,validate:e=>(function(e){let t=e.claims.map(e=>e.claimId),n=e.verdicts.map(e=>e.claimId);f(n,"忠实度裁决");let r=new Set(t);if(n.length!==t.length||n.some(e=>!r.has(e)))throw Error("忠实度裁决输出 ID 与输入不一致");let i=new Map(e.contexts.map(e=>[e.contextId,e]));for(let t of e.verdicts){if("not_covered"!==t.status&&0===t.citations.length)throw Error(`忠实度裁决 ${t.claimId} 缺少证据引用`);let n=new Set(e.allowedContextIds[t.claimId]??[]);for(let e of t.citations){let r=i.get(e.contextId);if(!n.has(e.contextId)||!r)throw Error(`忠实度裁决 ${t.claimId} 引用了未授权 contextId`)}}})({claims:r.claims,verdicts:e.verdicts,allowedContextIds:r.allowedContextIds,contexts:r.contexts})});_.push(...a.verdicts)}let y=new Map(_.map(e=>[e.claimId,e])),v=new Map(p.map(e=>[e.contextId,e])),S=l.map(e=>{let t=y.get(e.claimId);return{...e,status:t.status,reason:t.reason,confidence:t.confidence,citations:t.citations.map(e=>{let t=v.get(e.contextId);return{contextId:e.contextId,evidenceQuote:e.evidenceQuote,toolName:t.toolName,toolCallId:t.source.toolCallId,interactionIndex:t.source.interactionIndex}})}}),I=S.filter(e=>"supported"===e.status).length,w=S.filter(e=>"contradicted"===e.status).length,k=S.filter(e=>"not_covered"===e.status).length,x=(r=S).length?Math.round(10*Math.max(0,Math.min(100,r.filter(e=>"supported"===e.status).length/r.length*100)))/10:null,b=_.reduce((e,t)=>e+t.confidence,0)/_.length;return{score:x,confidence:Math.min(s.confidence,b),evidence:{reason:`${S.length} 条可验证主张中 ${I} 条有工具证据支持,${w} 条与证据矛盾,${k} 条证据未覆盖。`,claims:S,summary:{claimCount:S.length,supported:I,contradicted:w,notCovered:k},contextCount:a.length,chunkCount:p.length,contextSelection:g?"all":"claim-top-k-batched",claimLimit:20,claimsPerBatch:8,verificationBatchCount:h.length}}}e.s(["computeFaithfulnessInputHash",()=>l,"evaluateFaithfulness",()=>p],628992)},813480,e=>e.a(async(t,n)=>{try{var r=e.i(254799);e.i(210954);var i=e.i(184599),o=e.i(309418),a=e.i(401682),s=e.i(256451),u=e.i(18193),l=e.i(469465),c=e.i(588876),d=e.i(512429),f=e.i(579503),m=e.i(581191),p=e.i(723011),g=e.i(170508),_=e.i(628992),h=e.i(365371),y=t([o,a,c,d,f]);[o,a,c,d,f]=y.then?(await y)():y;let N="result-quality",O=["faithfulness","instruction-adherence","answer-quality","accuracy"],T={faithfulness:"2.0.1","instruction-adherence":"2.0.1","answer-quality":"2.0.1",accuracy:"2.0.1"};async function v(e){let t=await (0,a.getActiveConfig)(e);if(!t)return null;let{customFetch:n}=(0,s.getProxyConfig)();return{client:new i.OpenAI({apiKey:t.apiKey||"no-api-key-required",baseURL:String(t.baseUrl||"https://api.deepseek.com").replace(/\/chat\/completions\/?$/,""),fetch:n,timeout:Number(process.env.RESULT_QUALITY_TIMEOUT_MS||process.env.JUDGMENT_TIMEOUT_MS||3e5)}),model:t.model||"deepseek-chat"}}async function S(e,t,n){let r=await v(e);if(!r)throw Error("未配置可用的评测模型");let i="string"==typeof t?[{role:"user",content:t}]:[{role:"system",content:t.system},{role:"user",content:t.user}],o=await r.client.chat.completions.create({model:r.model,temperature:0,top_p:1,seed:42,messages:i}),a=o.choices?.[0]?.message?.content?.trim();if(!a)throw Error("评测模型返回空内容");return n.parse(function(e){let t=(0,h.parseLooseJson)(e);if(!t)throw Error("评测模型返回内容不是可解析的 JSON 对象");return t}(a))}function I(e,t,n={}){return{score:null,method:e,confidence:0,evidence:{...n,reason:t},note:t}}async function w(e,t,n,r){await o.prisma.traceEvaluation.upsert({where:{executionId_evaluatorId_metricKey:{executionId:e,evaluatorId:N,metricKey:n}},create:{executionId:e,evaluatorId:N,evaluatorVersion:T[n],dimension:"result",metricKey:n,status:"done",score:r.score,method:r.method,confidence:r.confidence,evidenceJson:JSON.stringify(r.evidence),note:r.note,interactionsHash:t},update:{evaluatorVersion:T[n],status:"done",score:r.score,method:r.method,confidence:r.confidence,evidenceJson:JSON.stringify(r.evidence),note:r.note,interactionsHash:t,errorMessage:null,ranAt:new Date}})}async function k(e,t,n,r,i={}){let a=r instanceof Error?r.message:String(r),s=JSON.stringify({...i,reason:a});await o.prisma.traceEvaluation.upsert({where:{executionId_evaluatorId_metricKey:{executionId:e,evaluatorId:N,metricKey:n}},create:{executionId:e,evaluatorId:N,evaluatorVersion:T[n],dimension:"result",metricKey:n,status:"failed",method:x(n),confidence:0,interactionsHash:t,evidenceJson:s,errorMessage:a},update:{evaluatorVersion:T[n],status:"failed",score:null,method:x(n),confidence:0,interactionsHash:t,evidenceJson:s,errorMessage:a,ranAt:new Date}})}function x(e){return"faithfulness"===e?"grounding":"accuracy"===e?"gt-rubric":"self-rubric"}async function b(e){var t;let n,i=await o.prisma.execution.findUnique({where:{id:e},select:{id:!0,taskId:!0,query:!0,finalResult:!0,user:!0}});if(!i)throw Error(`Execution ${e} 不存在`);let a=i.taskId?await o.prisma.session.findUnique({where:{taskId:i.taskId},select:{interactions:!0,query:!0}}):null,s=[];try{s=a?.interactions?JSON.parse(a.interactions):[]}catch{s=[]}let u=String(i.query||a?.query||"").trim(),h=i.finalResult?.trim()?{outputForEvaluation:i.finalResult.trim()}:await (0,c.extractTaskResultArtifact)({userTask:u,interactions:s,fallbackOutput:i.finalResult||"",user:i.user}),y=String(h.outputForEvaluation||"").trim(),v=function(e){let t=[];for(let n of e)for(let e of function(e){if(!e||"object"!=typeof e)return[];let t=Array.isArray(e.requestMessages)?e.requestMessages:[],n=e.responseMessage?[e.responseMessage]:[];return[...t,...n].filter(e=>!!(e&&"object"==typeof e))}(n)){if("system"!==String(e.role??""))continue;let n=(function e(t){if("string"==typeof t)return t;if(Array.isArray(t))return t.map(t=>"string"==typeof t?t:t&&"object"==typeof t?e(t.text??t.content??t.output??t.result??""):"").filter(Boolean).join("\n");if(t&&"object"==typeof t)try{return JSON.stringify(t)}catch{return""}return String(t??"")})(e.content).trim();n&&!t.includes(n)&&t.push(n.slice(0,8e3))}return t.slice(0,4)}(s),b=i.user?await (0,d.loadUserAgentDatasets)(i.user):[],M=(0,d.hashAgentDatasetScope)(b),C=(t={interactions:s,query:u,relevantSystemInstructions:v,finalResult:y,accuracyGroundTruthHash:M},n=e=>(0,r.createHash)("sha256").update(JSON.stringify(e)).digest("hex"),{faithfulness:(0,_.computeFaithfulnessInputHash)(t.interactions,t.finalResult),"instruction-adherence":n({query:t.query,relevantSystemInstructions:t.relevantSystemInstructions,finalResult:t.finalResult}),"answer-quality":n({query:t.query,finalResult:t.finalResult}),accuracy:n({query:t.query,finalResult:t.finalResult,groundTruthScope:t.accuracyGroundTruthHash??"no-ground-truth-scope"})}),A=await o.prisma.traceEvaluation.findMany({where:{executionId:e,evaluatorId:N}}),z={},q=O.filter(e=>{var t;let n=A.find(t=>t.metricKey===e);return t=C[e],!n||"done"!==n.status||n.evaluatorVersion!==T[e]||n.interactionsHash!==t||(z[e]=function(e){let t={};try{t=e.evidenceJson?JSON.parse(e.evidenceJson):{}}catch{}return{score:e.score,method:e.method,confidence:e.confidence,evidence:t,note:e.note??void 0}}(n),!1)});if(!q.length)return{executionId:e,reused:!0,metrics:z};if(await Promise.all(q.map(t=>o.prisma.traceEvaluation.upsert({where:{executionId_evaluatorId_metricKey:{executionId:e,evaluatorId:N,metricKey:t}},create:{executionId:e,evaluatorId:N,evaluatorVersion:T[t],dimension:"result",metricKey:t,status:"running",method:x(t),confidence:0,interactionsHash:C[t]},update:{evaluatorVersion:T[t],status:"running",score:null,method:x(t),confidence:0,evidenceJson:null,note:null,interactionsHash:C[t],errorMessage:null,ranAt:new Date}}))),!y||!u){let t=y?"未提取到用户任务":"未提取到最终交付物";for(let e of q)z[e]=I(x(e),t);return await Promise.all(q.map(t=>w(e,C[t],t,z[t]))),{executionId:e,reused:!1,metrics:z}}let E={},$=e=>async(t,n)=>{let r=E[e]??[];E[e]=r;let o=Date.now();try{let e=await S(i.user,t,n);return r.push({stage:t.stage,status:"done",durationMs:Date.now()-o,response:e}),e}catch(e){throw r.push({stage:t.stage,status:"failed",durationMs:Date.now()-o,error:e instanceof Error?e.message:String(e)}),e}},j={};return q.includes("faithfulness")&&(j.faithfulness=async()=>{let e=await (0,_.evaluateFaithfulness)({query:u,finalResult:y,interactions:s,invoke:$("faithfulness")});return{...e,method:"grounding",evidence:{...e.evidence,calls:E.faithfulness??[]}}}),q.includes("instruction-adherence")&&(j["instruction-adherence"]=async()=>{let e=await (0,p.evaluateInstructionAdherence)({query:u,relevantSystemInstructions:v,finalResult:y,invoke:$("instruction-adherence")});return{...e,method:"self-rubric",evidence:{...e.evidence,calls:E["instruction-adherence"]??[]}}}),q.includes("answer-quality")&&(j["answer-quality"]=async()=>{let e=await (0,g.evaluateAnswerQuality)({query:u,finalResult:y,invoke:$("answer-quality")});return{...e,method:"self-rubric",evidence:{...e.evidence,calls:E["answer-quality"]??[]}}}),q.includes("accuracy")&&(j.accuracy=async()=>{if(!i.user)return I("gt-rubric","trace 缺少用户归属,无法匹配评测数据集",{accuracyStatus:"no_ground_truth",datasetScopeHash:M});let e=await (0,d.matchAgentDatasetCase)({user:i.user,traceQuery:u,requireExpectedOutput:!0,includeAllDatasetKinds:!0,datasets:b});if(e.error)throw Error(`准确性数据集语义匹配失败: ${e.error}`);if(!e.match)return I("gt-rubric","未匹配到带预期输出的评测数据集 Case",{accuracyStatus:"no_ground_truth",datasetScopeHash:M,matchReason:e.matchReason});let{dataset:t,caseEntry:n,matchedBy:r,matchConfidence:o,matchReason:a}=e.match,s=(0,l.canReuseRootCauseCache)(n.expectedOutput,n.rootCauseMeta),c="live-extract",p=[];s&&n.rootCauseMeta?.status==="ready"?(p=n.rootCauses??[],c="dataset-cache"):s&&n.rootCauseMeta?.status==="empty"?c="dataset-empty":p=await (0,f.extractRootCausesFromExpected)(u,n.expectedOutput,i.user);let g=(0,m.normalizeAccuracyKeyPoints)(p),_={datasetId:t.id,datasetName:t.name,caseId:n.id,matchedBy:r,matchConfidence:o,matchReason:a,datasetScopeHash:M,expectedOutputHash:(0,l.hashExpectedOutput)(n.expectedOutput),keyPointsHash:(0,m.hashAccuracyKeyPoints)(g),keyPointSource:c};if(!g.length)return I("gt-rubric","预期输出未提取到可用关键观点",{accuracyStatus:"no_ground_truth",..._});let h=await (0,m.evaluateResultAccuracy)({query:u,expectedOutput:n.expectedOutput,actualOutput:y,keyPoints:g,invoke:$("accuracy")});return{score:h.score,method:"gt-rubric",confidence:null==h.score?0:Math.min(o,h.confidence),note:h.note,evidence:{accuracyStatus:null==h.score?"not_attempted":"scored",..._,...h.evidence,calls:E.accuracy??[]}}}),await Promise.all(q.map(async t=>{try{let n=await j[t]();z[t]=n,await w(e,C[t],t,n),"accuracy"===t&&null!=n.score&&await o.prisma.execution.update({where:{id:e},data:{answerScore:n.score/100,isAnswerCorrect:n.score>=80,judgmentReason:String(n.evidence.reason??"结果准确性评测")}})}catch(n){await k(e,C[t],t,n,{calls:E[t]??[]}),z[t]={...I(x(t),`${{faithfulness:"忠实度","instruction-adherence":"指令遵循","answer-quality":"答案质量",accuracy:"准确性"}[t]}评测失败`),failed:!0}}})),{executionId:e,reused:!1,metrics:z}}function M(e,t,n){return(0,u.withBackgroundOpencodeSlot)(()=>b(e),{label:`quality-result-eval:${e}`,taskType:"quality-result-eval",user:t??void 0,signal:n})}e.s(["scheduleResultEvaluation",()=>M]),n()}catch(e){n(e)}},!1),445139,e=>e.a(async(t,n)=>{try{var r=e.i(571902),i=e.i(904239),o=e.i(460535),a=e.i(337216),s=e.i(667034),u=e.i(813480),l=t([i,u]);function c(e,t){let n=process.env[e];if(!n)return t;let r=Number(n);return Number.isFinite(r)&&r>0?r:t}function d(e,t){let n=e.sessions.get(t);return n||(n={sessionId:t,pendingFileKeys:new Set,sourceIds:new Set,failures:0,parked:!1},e.sessions.set(t,n)),n}function f(e){e.shortTimer&&clearTimeout(e.shortTimer),e.longTimer&&clearTimeout(e.longTimer),e.maxTimer&&clearTimeout(e.maxTimer),e.shortTimer=void 0,e.longTimer=void 0,e.maxTimer=void 0}function m(e,t,n){let r=d(e,t);r.failures+=1,e.warn("[OTelConsumer] session processing failed",{sessionId:t,failures:r.failures,message:n?.message||String(n)}),r.failures>=e.parkAfter&&(r.parked=!0,f(r),e.warn("[OTelConsumer] parked poisoned session",{sessionId:t,failures:r.failures}))}async function p(e,t){let n=e.sessions.get(t);if(n&&!n.parked)for(let r of Array.from(n.sourceIds)){let i=e.sourcesById.get(r);if(i)try{let a=i.aggregate(t);a.record&&await e.saveExecution({...a.record,skip_evaluation:i.defaultSkipEvaluation()}),n.failures=0,function(e,t,n){let r=e.sessions.get(t);if(r)for(let i of Array.from(r.pendingFileKeys)){let r=e.pendingFiles.get(i);if(r&&r.source.id===n&&(r.done.add(t),[...r.sessions].every(e=>r.done.has(e))))for(let t of((0,o.saveFileCursor)(r.spoolDir,r.relPath,r.nextCursor),e.pendingFiles.delete(i),r.sessions)){let n=e.sessions.get(t);n?.pendingFileKeys.delete(i)}}}(e,t,r)}catch(n){m(e,t,n)}}}async function g(e,t){let n=e.sessions.get(t);if(n&&!n.parked)for(let r of Array.from(n.sourceIds)){let i=e.sourcesById.get(r);if(i)try{let r=i.aggregate(t);if(!r.record)continue;let o=await e.saveExecution({...r.record,skip_evaluation:!1,skip_internal_judgment:!0,force_judgment:!0}),a=o.record.upload_id||o.record.task_id;a&&r.record.trace_completed_at&&r.record.final_result&&await e.scheduleResultEvaluation(a,r.record.user),n.failures=0}catch(n){m(e,t,n)}}}async function _(e){if(e.ticking)return;e.ticking=!0;let t=0,n=0;try{for(let i of e.sources){let s=i.spoolDir(),u=i.listFiles();for(let a of u){let u=(0,o.toCheckpointRelPath)(s,a),l=(0,o.getFileCursor)(s,u),c=(0,r.readNewLinesSince)(a,l);if(n+=c.parseErrors,0===c.lineCount)continue;let f=new Set(c.events.map(e=>e?.sessionId).filter(e=>"string"==typeof e&&e.trim().length>0));if(0===f.size){(0,o.saveFileCursor)(s,u,c.nextCursor);continue}let m=`${i.id}:${u}`,_=e.pendingFiles.get(m),h=!1;for(let n of(_?c.nextCursor.bytes!==_.nextCursor.bytes&&(_.nextCursor=c.nextCursor,h=!0):(_={source:i,spoolDir:s,relPath:u,nextCursor:c.nextCursor,sessions:new Set,done:new Set},e.pendingFiles.set(m,_),h=!0),f))_.sessions.has(n)||(_.sessions.add(n),h=!0),t+=1,function(e,t,n,r,i){let o=d(e,t);o.pendingFileKeys.add(r),o.sourceIds.add(n.id),!o.parked&&i&&(o.shortTimer&&clearTimeout(o.shortTimer),o.shortTimer=setTimeout(()=>{o.shortTimer=void 0,p(e,t)},e.shortMs),o.longTimer&&clearTimeout(o.longTimer),o.longTimer=setTimeout(()=>{o.longTimer=void 0,o.maxTimer&&(clearTimeout(o.maxTimer),o.maxTimer=void 0),g(e,t)},e.longMs),o.maxTimer||(o.maxTimer=setTimeout(()=>{o.maxTimer=void 0,o.longTimer&&(clearTimeout(o.longTimer),o.longTimer=void 0),g(e,t)},e.maxWaitMs)))}(e,n,i,m,h)}try{let t=(0,a.compactProcessedSpoolFiles)(s,u,e.retentionDays);t.archived>0&&e.log("[OTelConsumer] retention archived processed spool files",{source:i.id,archived:t.archived})}catch(t){e.warn("[OTelConsumer] retention failed",{source:i.id,message:t?.message||String(t)})}}}finally{e.ticking=!1}let i=[...e.sessions.values()].filter(e=>e.parked).length,s=[...e.sessions.values()].filter(e=>e.failures>0).length;(t||e.pendingFiles.size||i||s||n)&&e.log("[OTelConsumer] tick",{discovered:t,backlog:e.pendingFiles.size,parked:i,failed:s,parseErrors:n})}function h(e={}){y();let t=function(e={}){let t=e.sources||(0,s.listSources)();return{ticking:!1,sources:t,sourcesById:new Map(t.map(e=>[e.id,e])),pendingFiles:new Map,sessions:new Map,saveExecution:e.saveExecution||i.saveExecutionRecord,scheduleResultEvaluation:e.scheduleResultEvaluation||u.scheduleResultEvaluation,shortMs:e.shortMs??c("AGENT_INSIGHT_OTEL_CONSUMER_SHORT_MS",3e3),longMs:e.longMs??c("AGENT_INSIGHT_OTEL_CONSUMER_LONG_MS",3e4),maxWaitMs:e.maxWaitMs??c("AGENT_INSIGHT_OTEL_CONSUMER_MAX_WAIT_MS",12e4),tickMs:e.tickMs??c("AGENT_INSIGHT_OTEL_CONSUMER_TICK_MS",1e3),parkAfter:e.parkAfter??c("AGENT_INSIGHT_OTEL_CONSUMER_PARK_AFTER",3),retentionDays:e.retentionDays??c("AGENT_INSIGHT_OTEL_SPOOL_RETENTION_DAYS",7),seedOnStart:e.seedOnStart??!0,log:e.log||console.log,warn:e.warn||console.warn}}(e);if(t.seedOnStart)for(let e of t.sources)try{(0,o.seedToEof)(e.spoolDir(),e.listFiles())}catch(n){t.warn("[OTelConsumer] checkpoint seed failed",{source:e.id,message:n?.message||String(n)})}t.interval=setInterval(()=>{_(t)},t.tickMs),globalThis.__otelSpoolConsumer=t,_(t),t.log("[OTelConsumer] started",{sources:t.sources.map(e=>e.id)})}function y(){let e=globalThis.__otelSpoolConsumer;if(e){for(let t of(e.interval&&clearInterval(e.interval),e.sessions.values()))f(t);globalThis.__otelSpoolConsumer=void 0}}function v(){return globalThis.__otelSpoolConsumer}[i,u]=l.then?(await l)():l,e.s(["getOtelSpoolConsumerForTest",()=>v,"runOtelSpoolConsumerTick",()=>_,"startOtelSpoolConsumer",()=>h,"stopOtelSpoolConsumer",()=>y]),n()}catch(e){n(e)}},!1)];
336
336
 
337
337
  //# sourceMappingURL=src_lib_a2a34aa6._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[750696,e=>e.a(async(t,n)=>{try{var s=e.i(854763),i=t([s]);async function r(e,t,n){if(!e)return null;let i=[],r=await s.db.findSkill(e,t);if(r&&i.push({source:"user",record:r}),!r){let t=await s.db.findSkill(e,null);t&&i.push({source:"global",record:t})}if(0===i.length)return null;let{source:l,record:a}=i[0],o=Array.isArray(a.versions)?a.versions:[];if(0===o.length)return null;let c=null;return("number"==typeof n&&(c=o.find(e=>e.version===n)||null),c||null==a.activeVersion||(c=o.find(e=>e.version===a.activeVersion)||null),c||(c=o[0]),c&&c.content)?{name:a.name,version:"number"==typeof c.version?c.version:null,semanticVersion:c.semanticVersion??null,content:String(c.content),source:l,assetPath:c.assetPath??null}:null}[s]=i.then?(await i)():i,e.s(["resolveSkill",()=>r]),n()}catch(e){n(e)}},!1),239944,e=>{"use strict";var t=e.i(660526);let n=/(^|[\s::'"((=])~(?=\/)/g;function s(e,i=t.default.homedir()){return e&&i&&e.includes("~")?e.replace(n,(e,t)=>`${t}${i}`):e}e.s(["expandHomePathsInText",()=>s])},461375,e=>{"use strict";var t=e.i(902157),n=e.i(750227);function s(e,s){let i=n.default.join(s,".opencode","skills",e.name),r=n.default.join(i,"SKILL.md");if(t.default.existsSync(r))try{if(t.default.readFileSync(r,"utf-8")===e.content)return{targetDir:i,deployed:!1}}catch{}if(t.default.mkdirSync(i,{recursive:!0}),t.default.writeFileSync(r,e.content,"utf-8"),e.assetPath){let s=n.default.resolve(e.assetPath);if(t.default.existsSync(s))for(let e of t.default.readdirSync(s))"SKILL.md"!==e&&function e(s,i){if(t.default.existsSync(s))if(t.default.statSync(s).isDirectory())for(let r of(t.default.mkdirSync(i,{recursive:!0}),t.default.readdirSync(s)))e(n.default.join(s,r),n.default.join(i,r));else t.default.mkdirSync(n.default.dirname(i),{recursive:!0}),t.default.copyFileSync(s,i)}(n.default.join(s,e),n.default.join(i,e))}return{targetDir:i,deployed:!0}}e.s(["deploySkillToWorkspace",()=>s])},317331,e=>e.a(async(t,n)=>{try{var s=e.i(666680),i=e.i(936689),r=e.i(469240),l=e.i(151223),a=e.i(750696),o=e.i(239944),c=e.i(759453),u=e.i(134526),d=e.i(461375),p=e.i(111911),f=e.i(191717),m=e.i(68987),y=t([l,a,c,f]);[l,a,c,f]=y.then?(await y)():y;let h=!1;function E(){if(h)return;h=!0;let e=Number(process.env.GENERAL_AGENT_FETCH_TIMEOUT_MS)||18e5;(0,i.setGlobalDispatcher)(new i.Agent({connections:64,headersTimeout:e,bodyTimeout:e}))}let _=new Map;async function g(e){E();let t=await (0,l.ensureOpencodeServer)({user:e}),n=_.get(e);if(n&&n.baseURL===t)return n.client;let s=new r.AgentInsight({baseURL:t,timeout:18e4,maxRetries:2,logLevel:process.env.OPENCODE_LOG_LEVEL||"warn"});return _.set(e,{baseURL:t,client:s}),s}async function k(e){let t=await (0,c.loadServerModelForUser)(e).catch(e=>(console.warn("[general-agent] loadServerModelForUser failed, falling back to env:",e?.message||e),null));if(t)return t;let n=process.env.GENERAL_AGENT_PROVIDER_ID||process.env.OPENCODE_PROVIDER_ID||"deepseek-official";return{providerID:n,modelID:process.env.GENERAL_AGENT_MODEL_ID||process.env.OPENCODE_MODEL_ID||"deepseek-chat",apiKey:process.env.GENERAL_AGENT_API_KEY||process.env.OPENCODE_API_KEY||process.env.DEEPSEEK_API_KEY,baseURL:process.env.GENERAL_AGENT_PROVIDER_BASE_URL||process.env.OPENCODE_PROVIDER_BASE_URL||("deepseek"===n||"deepseek-official"===n?"https://api.deepseek.com":void 0),headers:process.env.OPENCODE_PROVIDER_HEADERS?JSON.parse(process.env.OPENCODE_PROVIDER_HEADERS):void 0}}async function S(e){let t=String(e.user||"").trim();if(!t)throw Error("user is required");let n=(0,o.expandHomePathsInText)(String(e.query||"").trim());if(!n)throw Error("query is required");if(e.ephemeralServer)return E(),(0,l.runWithEphemeralOpencodeServer)({user:t,verbose:!1,isolateHome:!0,telemetryEnabled:!e.recordTraceAs},async s=>{let i=new r.AgentInsight({baseURL:s,timeout:18e4,maxRetries:2,logLevel:process.env.OPENCODE_LOG_LEVEL||"warn"});return v(e,t,n,i)});let s=await g(t);return v(e,t,n,s)}async function v(t,n,i,r){let l,o;(0,u.ensureUserWorkspace)(n);let c=t.workspaceTag||t.sessionId||`task-${Date.now()}-${(0,s.randomUUID)().slice(0,8)}`,y=(0,u.ensureSessionWorkspace)(n,c),E=t.system?.trim()||void 0,g=E,S=null;if(t.skill){var v,h,_;let e,s,i=await (0,a.resolveSkill)(t.skill,n,t.skillVersion);if(!i)throw Error(`skill not found: ${t.skill}`);let r=(0,d.deploySkillToWorkspace)(i,y);console.log(`[general-agent] skill deployed: ${i.name}@v${i.version} → ${r.targetDir} (deployed=${r.deployed})`),v=i.name,h=i.version,_=E,e=null!==h?`(版本 v${h})`:"",s=`[SKILL 加载约束 - 强制执行]
1
+ module.exports=[750696,e=>e.a(async(t,n)=>{try{var s=e.i(854763),i=t([s]);async function r(e,t,n){if(!e)return null;let i=[],r=await s.db.findSkill(e,t);if(r&&i.push({source:"user",record:r}),!r){let t=await s.db.findSkill(e,null);t&&i.push({source:"global",record:t})}if(0===i.length)return null;let{source:l,record:a}=i[0],o=Array.isArray(a.versions)?a.versions:[];if(0===o.length)return null;let c=null;return("number"==typeof n&&(c=o.find(e=>e.version===n)||null),c||null==a.activeVersion||(c=o.find(e=>e.version===a.activeVersion)||null),c||(c=o[0]),c&&c.content)?{name:a.name,version:"number"==typeof c.version?c.version:null,semanticVersion:c.semanticVersion??null,content:String(c.content),source:l,assetPath:c.assetPath??null}:null}[s]=i.then?(await i)():i,e.s(["resolveSkill",()=>r]),n()}catch(e){n(e)}},!1),239944,e=>{"use strict";var t=e.i(660526);let n=/(^|[\s::'"((=])~(?=\/)/g;function s(e,i=t.default.homedir()){return e&&i&&e.includes("~")?e.replace(n,(e,t)=>`${t}${i}`):e}e.s(["expandHomePathsInText",()=>s])},461375,e=>{"use strict";var t=e.i(902157),n=e.i(750227),s=e.i(547499);function i(e,i){let r=n.default.join(i,".opencode","skills",e.name),l=n.default.join(r,"SKILL.md");if(t.default.existsSync(l))try{if(t.default.readFileSync(l,"utf-8")===e.content)return{targetDir:r,deployed:!1}}catch{}if(t.default.mkdirSync(r,{recursive:!0}),t.default.writeFileSync(l,e.content,"utf-8"),e.assetPath){let i=(0,s.resolveRuntimeAssetPath)(e.assetPath);if(t.default.existsSync(i))for(let e of t.default.readdirSync(i))"SKILL.md"!==e&&function e(s,i){if(t.default.existsSync(s))if(t.default.statSync(s).isDirectory())for(let r of(t.default.mkdirSync(i,{recursive:!0}),t.default.readdirSync(s)))e(n.default.join(s,r),n.default.join(i,r));else t.default.mkdirSync(n.default.dirname(i),{recursive:!0}),t.default.copyFileSync(s,i)}(n.default.join(i,e),n.default.join(r,e))}return{targetDir:r,deployed:!0}}e.s(["deploySkillToWorkspace",()=>i])},317331,e=>e.a(async(t,n)=>{try{var s=e.i(666680),i=e.i(936689),r=e.i(469240),l=e.i(151223),a=e.i(750696),o=e.i(239944),c=e.i(759453),u=e.i(134526),d=e.i(461375),p=e.i(111911),f=e.i(191717),m=e.i(68987),y=t([l,a,c,f]);[l,a,c,f]=y.then?(await y)():y;let h=!1;function E(){if(h)return;h=!0;let e=Number(process.env.GENERAL_AGENT_FETCH_TIMEOUT_MS)||18e5;(0,i.setGlobalDispatcher)(new i.Agent({connections:64,headersTimeout:e,bodyTimeout:e}))}let _=new Map;async function g(e){E();let t=await (0,l.ensureOpencodeServer)({user:e}),n=_.get(e);if(n&&n.baseURL===t)return n.client;let s=new r.AgentInsight({baseURL:t,timeout:18e4,maxRetries:2,logLevel:process.env.OPENCODE_LOG_LEVEL||"warn"});return _.set(e,{baseURL:t,client:s}),s}async function k(e){let t=await (0,c.loadServerModelForUser)(e).catch(e=>(console.warn("[general-agent] loadServerModelForUser failed, falling back to env:",e?.message||e),null));if(t)return t;let n=process.env.GENERAL_AGENT_PROVIDER_ID||process.env.OPENCODE_PROVIDER_ID||"deepseek-official";return{providerID:n,modelID:process.env.GENERAL_AGENT_MODEL_ID||process.env.OPENCODE_MODEL_ID||"deepseek-chat",apiKey:process.env.GENERAL_AGENT_API_KEY||process.env.OPENCODE_API_KEY||process.env.DEEPSEEK_API_KEY,baseURL:process.env.GENERAL_AGENT_PROVIDER_BASE_URL||process.env.OPENCODE_PROVIDER_BASE_URL||("deepseek"===n||"deepseek-official"===n?"https://api.deepseek.com":void 0),headers:process.env.OPENCODE_PROVIDER_HEADERS?JSON.parse(process.env.OPENCODE_PROVIDER_HEADERS):void 0}}async function S(e){let t=String(e.user||"").trim();if(!t)throw Error("user is required");let n=(0,o.expandHomePathsInText)(String(e.query||"").trim());if(!n)throw Error("query is required");if(e.ephemeralServer)return E(),(0,l.runWithEphemeralOpencodeServer)({user:t,verbose:!1,isolateHome:!0,telemetryEnabled:!e.recordTraceAs},async s=>{let i=new r.AgentInsight({baseURL:s,timeout:18e4,maxRetries:2,logLevel:process.env.OPENCODE_LOG_LEVEL||"warn"});return v(e,t,n,i)});let s=await g(t);return v(e,t,n,s)}async function v(t,n,i,r){let l,o;(0,u.ensureUserWorkspace)(n);let c=t.workspaceTag||t.sessionId||`task-${Date.now()}-${(0,s.randomUUID)().slice(0,8)}`,y=(0,u.ensureSessionWorkspace)(n,c),E=t.system?.trim()||void 0,g=E,S=null;if(t.skill){var v,h,_;let e,s,i=await (0,a.resolveSkill)(t.skill,n,t.skillVersion);if(!i)throw Error(`skill not found: ${t.skill}`);let r=(0,d.deploySkillToWorkspace)(i,y);console.log(`[general-agent] skill deployed: ${i.name}@v${i.version} → ${r.targetDir} (deployed=${r.deployed})`),v=i.name,h=i.version,_=E,e=null!==h?`(版本 v${h})`:"",s=`[SKILL 加载约束 - 强制执行]
2
2
  你当前的运行环境已预置了技能(Skill)文件。在处理任何用户请求之前,你必须遵守以下规则:
3
3
 
4
4
  1. **必须**首先调用 load_skill 工具,加载技能名称为 "${v}" 的 Skill${e}。
@@ -10,6 +10,6 @@ module.exports=[750696,e=>e.a(async(t,n)=>{try{var s=e.i(854763),i=t([s]);async
10
10
  当前配置的 Skill:**${v}**${e}
11
11
  `,g=_?`${s}
12
12
  [附加指令]
13
- ${_}`:s,S={name:i.name,version:i.version,semanticVersion:i.semanticVersion,source:i.source}}let D=(0,u.buildPermissionsForWorkspace)(y),w=String(t.sessionId||"").trim();if(!w){let e=await r.createSession({title:t.sessionTitle||`general-agent \xb7 ${n} \xb7 ${c}`,permission:D,directory:y});if(!(w=String(e?.id??"")))throw Error("failed to create opencode session")}if(t.systemAgentName){let e=await (0,f.getSystemAgentId)("opencode",t.systemAgentName),s=(0,f.findSystemAgentDefinition)("opencode",t.systemAgentName);(0,p.tagOpencodeSession)(w,{agentName:t.systemAgentName,agentId:e,skill:s?.traceSkill||t.skill||t.tagSkill,displayQuery:i,user:n})}let $={...await k(n),...t.model||{}};if(console.log("[general-agent] final model config:",{providerID:$.providerID,modelID:$.modelID,baseURL:$.baseURL,hasApiKey:!!$.apiKey,apiKeyPrefix:$.apiKey?$.apiKey.slice(0,8)+"...":"(none)"}),!$.apiKey)throw Error("model.apiKey missing: configure an active model in your user settings, or set GENERAL_AGENT_API_KEY / OPENCODE_API_KEY / DEEPSEEK_API_KEY env, or pass model.apiKey explicitly");let I={text:i,agent:t.agent||process.env.OPENCODE_AGENT||"build",model:$,modelOptions:t.modelOptions||{temperature:.7,maxTokens:2048},permission:D,directory:y,...g?{system:g}:{}},A=t.interactionPolicy||"auto-allow",O=[];if("manual"===A){if(!t.handlers?.onPermission||!t.handlers?.onQuestion)throw Error("interactionPolicy='manual' requires both handlers.onPermission and handlers.onQuestion")}else{let e="auto-allow"===A?"once":"reject";l=t=>(O.push({kind:"permission",id:t.id,reply:e,meta:{title:t.title,type:t.type,pattern:t.pattern,callID:t.callID},ts:Date.now()}),e),o=e=>(O.push({kind:"question",id:e.id,reply:null,meta:{questions:e.questions,messageID:e.messageID},ts:Date.now()}),null)}let P=t.handlers||{},L=P.onPermission?async e=>{let t=await P.onPermission(e);return O.push({kind:"permission",id:e.id,reply:t,meta:{title:e.title,type:e.type,pattern:e.pattern,callID:e.callID,fromCaller:!0},ts:Date.now()}),t}:l,N=P.onQuestion?async e=>{let t=await P.onQuestion(e);return O.push({kind:"question",id:e.id,reply:t??null,meta:{questions:e.questions,messageID:e.messageID,fromCaller:!0},ts:Date.now()}),t}:o,R={...P,onPermission:L,onQuestion:N},T={streamTimeoutMs:t.timeoutMs??3e5,idleTimeoutMs:6e4,...t.chatOptions||{}};console.log("[general-agent] calling client.chat, sessionId:",w);let x=await r.chat(w,I,R,T);if(console.log("[general-agent] client.chat done:",{textLen:x.text.length,stats:x.stats}),t.recordTraceAs)try{let{recordEvaluatorExecution:n}=await e.A(335270);await n(r,{taskId:w,agentName:t.recordTraceAs,user:t.user,query:t.query,skill:S?.name??t.skill??t.tagSkill,skillVersion:S?.version??t.skillVersion,fallbackOutput:x.text})}catch(e){console.warn(`[general-agent] recordTraceAs failed for session ${w}:`,e?.message||e)}let K={totalTokens:0,tokens:{input:0,output:0,reasoning:0,cache:{read:0,write:0}}};try{let{normalizeEvaluatorExecutionInteractions:t}=await e.A(335270),n=await r.listMessages(w),s=(0,m.deriveOpencodeExecutionFields)(t(Array.isArray(n)?n:[]));K={totalTokens:s.tokens,tokens:{input:s.input_tokens,output:s.output_tokens,reasoning:s.reasoning_tokens,cache:{read:s.cache_read_input_tokens,write:s.cache_creation_input_tokens}}}}catch(e){console.warn(`[general-agent] token usage derivation failed for session ${w}:`,e?.message||e)}return{sessionId:w,workspaceDir:y,skillResolved:null!==S,skillMeta:S,output:x.text,fullOutput:x.transcriptText||x.text,interactions:O,stats:{...x.stats,...K}}}e.s(["runGeneralAgent",()=>S]),n()}catch(e){n(e)}},!1),5697,e=>{"use strict";var t=e.i(902157),n=e.i(750227);let s=new Map;function i(){return process.env.SYSTEM_SKILLS_ROOT||n.default.join(process.cwd(),"skills")}function r(e){let r,l=i(),a=`${l.replace(/[/\\]$/,"")}${n.default.sep}${e}`,o=`${a}${n.default.sep}SKILL.md`;try{r=t.default.statSync(o)}catch{throw Error(`file-based skill not found: ${o}`)}let c=s.get(e);if(c&&c.mtimeMs===r.mtimeMs)return c.content;let u=t.default.readFileSync(o,"utf-8");return s.set(e,{mtimeMs:r.mtimeMs,content:u}),u}function l(e){try{let s=i(),r=`${s.replace(/[/\\]$/,"")}${n.default.sep}${e}${n.default.sep}SKILL.md`;return t.default.statSync(r).isFile()}catch{return!1}}function a(e,s){let r=i(),l=t.default.existsSync,a=t.default.lstatSync,o=`${r.replace(/[/\\]$/,"")}${n.default.sep}${e}`;if(!l(o))return{mounted:[],mountPoint:null};let c=`${s.replace(/[/\\]$/,"")}${n.default.sep}.${e}`;try{t.default.mkdirSync(c,{recursive:!0})}catch{return{mounted:[],mountPoint:null}}let u=[];for(let e of["SKILL.md","references","scripts","templates"]){let s=`${o.replace(/[/\\]$/,"")}${n.default.sep}${e}`;if(!l(s))continue;let i=`${c.replace(/[/\\]$/,"")}${n.default.sep}${e}`;try{if(l(i)||a(i).isSymbolicLink?.())continue}catch{}try{t.default.symlinkSync(s,i),u.push(e)}catch{}}return{mounted:u,mountPoint:c}}e.s(["fileBasedSkillExists",()=>l,"loadFileBasedSkillPrompt",()=>r,"mountFileBasedSkillResources",()=>a])},773613,e=>e.a(async(t,n)=>{try{var s=e.i(317331),i=e.i(750696);e.i(134526),e.i(864609);var r=e.i(759453);e.i(5697),e.i(461375);var l=t([s,i,r]);[s,i,r]=l.then?(await l)():l,e.s([]),n()}catch(e){n(e)}},!1)];
13
+ ${_}`:s,S={name:i.name,version:i.version,semanticVersion:i.semanticVersion,source:i.source}}let D=(0,u.buildPermissionsForWorkspace)(y),w=String(t.sessionId||"").trim();if(!w){let e=await r.createSession({title:t.sessionTitle||`general-agent \xb7 ${n} \xb7 ${c}`,permission:D,directory:y});if(!(w=String(e?.id??"")))throw Error("failed to create opencode session")}if(t.systemAgentName){let e=await (0,f.getSystemAgentId)("opencode",t.systemAgentName),s=(0,f.findSystemAgentDefinition)("opencode",t.systemAgentName);(0,p.tagOpencodeSession)(w,{agentName:t.systemAgentName,agentId:e,skill:s?.traceSkill||t.skill||t.tagSkill,displayQuery:i,user:n})}let $={...await k(n),...t.model||{}};if(console.log("[general-agent] final model config:",{providerID:$.providerID,modelID:$.modelID,baseURL:$.baseURL,hasApiKey:!!$.apiKey,apiKeyPrefix:$.apiKey?$.apiKey.slice(0,8)+"...":"(none)"}),!$.apiKey)throw Error("model.apiKey missing: configure an active model in your user settings, or set GENERAL_AGENT_API_KEY / OPENCODE_API_KEY / DEEPSEEK_API_KEY env, or pass model.apiKey explicitly");let I={text:i,agent:t.agent||process.env.OPENCODE_AGENT||"build",model:$,modelOptions:t.modelOptions||{temperature:.7,maxTokens:2048},permission:D,directory:y,...g?{system:g}:{}},A=t.interactionPolicy||"auto-allow",O=[];if("manual"===A){if(!t.handlers?.onPermission||!t.handlers?.onQuestion)throw Error("interactionPolicy='manual' requires both handlers.onPermission and handlers.onQuestion")}else{let e="auto-allow"===A?"once":"reject";l=t=>(O.push({kind:"permission",id:t.id,reply:e,meta:{title:t.title,type:t.type,pattern:t.pattern,callID:t.callID},ts:Date.now()}),e),o=e=>(O.push({kind:"question",id:e.id,reply:null,meta:{questions:e.questions,messageID:e.messageID},ts:Date.now()}),null)}let P=t.handlers||{},L=P.onPermission?async e=>{let t=await P.onPermission(e);return O.push({kind:"permission",id:e.id,reply:t,meta:{title:e.title,type:e.type,pattern:e.pattern,callID:e.callID,fromCaller:!0},ts:Date.now()}),t}:l,R=P.onQuestion?async e=>{let t=await P.onQuestion(e);return O.push({kind:"question",id:e.id,reply:t??null,meta:{questions:e.questions,messageID:e.messageID,fromCaller:!0},ts:Date.now()}),t}:o,N={...P,onPermission:L,onQuestion:R},T={streamTimeoutMs:t.timeoutMs??3e5,idleTimeoutMs:6e4,...t.chatOptions||{}};console.log("[general-agent] calling client.chat, sessionId:",w);let x=await r.chat(w,I,N,T);if(console.log("[general-agent] client.chat done:",{textLen:x.text.length,stats:x.stats}),t.recordTraceAs)try{let{recordEvaluatorExecution:n}=await e.A(335270);await n(r,{taskId:w,agentName:t.recordTraceAs,user:t.user,query:t.query,skill:S?.name??t.skill??t.tagSkill,skillVersion:S?.version??t.skillVersion,fallbackOutput:x.text})}catch(e){console.warn(`[general-agent] recordTraceAs failed for session ${w}:`,e?.message||e)}let K={totalTokens:0,tokens:{input:0,output:0,reasoning:0,cache:{read:0,write:0}}};try{let{normalizeEvaluatorExecutionInteractions:t}=await e.A(335270),n=await r.listMessages(w),s=(0,m.deriveOpencodeExecutionFields)(t(Array.isArray(n)?n:[]));K={totalTokens:s.tokens,tokens:{input:s.input_tokens,output:s.output_tokens,reasoning:s.reasoning_tokens,cache:{read:s.cache_read_input_tokens,write:s.cache_creation_input_tokens}}}}catch(e){console.warn(`[general-agent] token usage derivation failed for session ${w}:`,e?.message||e)}return{sessionId:w,workspaceDir:y,skillResolved:null!==S,skillMeta:S,output:x.text,fullOutput:x.transcriptText||x.text,interactions:O,stats:{...x.stats,...K}}}e.s(["runGeneralAgent",()=>S]),n()}catch(e){n(e)}},!1),5697,e=>{"use strict";var t=e.i(902157),n=e.i(750227);let s=new Map;function i(){return process.env.SYSTEM_SKILLS_ROOT||n.default.join(process.cwd(),"skills")}function r(e){let r,l=i(),a=`${l.replace(/[/\\]$/,"")}${n.default.sep}${e}`,o=`${a}${n.default.sep}SKILL.md`;try{r=t.default.statSync(o)}catch{throw Error(`file-based skill not found: ${o}`)}let c=s.get(e);if(c&&c.mtimeMs===r.mtimeMs)return c.content;let u=t.default.readFileSync(o,"utf-8");return s.set(e,{mtimeMs:r.mtimeMs,content:u}),u}function l(e){try{let s=i(),r=`${s.replace(/[/\\]$/,"")}${n.default.sep}${e}${n.default.sep}SKILL.md`;return t.default.statSync(r).isFile()}catch{return!1}}function a(e,s){let r=i(),l=t.default.existsSync,a=t.default.lstatSync,o=`${r.replace(/[/\\]$/,"")}${n.default.sep}${e}`;if(!l(o))return{mounted:[],mountPoint:null};let c=`${s.replace(/[/\\]$/,"")}${n.default.sep}.${e}`;try{t.default.mkdirSync(c,{recursive:!0})}catch{return{mounted:[],mountPoint:null}}let u=[];for(let e of["SKILL.md","references","scripts","templates"]){let s=`${o.replace(/[/\\]$/,"")}${n.default.sep}${e}`;if(!l(s))continue;let i=`${c.replace(/[/\\]$/,"")}${n.default.sep}${e}`;try{if(l(i)||a(i).isSymbolicLink?.())continue}catch{}try{t.default.symlinkSync(s,i),u.push(e)}catch{}}return{mounted:u,mountPoint:c}}e.s(["fileBasedSkillExists",()=>l,"loadFileBasedSkillPrompt",()=>r,"mountFileBasedSkillResources",()=>a])},773613,e=>e.a(async(t,n)=>{try{var s=e.i(317331),i=e.i(750696);e.i(134526),e.i(864609);var r=e.i(759453);e.i(5697),e.i(461375);var l=t([s,i,r]);[s,i,r]=l.then?(await l)():l,e.s([]),n()}catch(e){n(e)}},!1)];
14
14
 
15
15
  //# sourceMappingURL=src_lib_engine_general-agent_970b1dfe._.js.map