agent-insight 0.5.3 → 0.5.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/build-manifest.json +2 -2
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/server/app/(main)/accessconfig/channels/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/accessconfig/health/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/accessconfig/install/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/accessconfig/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/accessconfig/webhooks/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/agents/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/dashboard/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/dataset/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/dataset/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/eval/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/eval/run/[runId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/eval/trajectory/[taskId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/eval/trajectory/[taskId]/trace/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/eval/trajectory/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/evaluation/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/fault/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(main)/fault/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/infra/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/infra/source/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/infra/sources/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/memory/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/metrics/evaluators/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/metrics/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(main)/metrics/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/modelconfig/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/modelconfig/registry/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/modelconfig/web-search/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/optapi/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/quality/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/security/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/skill-eval/grayscale/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/skill-eval/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/skill-eval/trigger/[skillName]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/skill-generator/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/skill-history/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(main)/skill-history/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/skill-opt/[name]/[version]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/skill-opt/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/skill-release/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/skills/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/trace/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(main)/trace/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/version-analysis/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(main)/version-management/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_global-error.html +2 -2
- package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_not-found.html +1 -1
- package/.next/standalone/.next/server/app/_not-found.rsc +3 -3
- package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/accessconfig/channels.html +1 -1
- package/.next/standalone/.next/server/app/accessconfig/channels.rsc +5 -5
- package/.next/standalone/.next/server/app/accessconfig/channels.segments/!KG1haW4p/accessconfig/channels/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/accessconfig/channels.segments/!KG1haW4p/accessconfig/channels.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig/channels.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig/channels.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/accessconfig/channels.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/accessconfig/channels.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig/channels.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/accessconfig/channels.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/accessconfig/health.html +1 -1
- package/.next/standalone/.next/server/app/accessconfig/health.rsc +5 -5
- package/.next/standalone/.next/server/app/accessconfig/health.segments/!KG1haW4p/accessconfig/health/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/accessconfig/health.segments/!KG1haW4p/accessconfig/health.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig/health.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig/health.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/accessconfig/health.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/accessconfig/health.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig/health.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/accessconfig/health.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/accessconfig/install.html +2 -2
- package/.next/standalone/.next/server/app/accessconfig/install.rsc +5 -5
- package/.next/standalone/.next/server/app/accessconfig/install.segments/!KG1haW4p/accessconfig/install/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/accessconfig/install.segments/!KG1haW4p/accessconfig/install.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig/install.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig/install.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/accessconfig/install.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/accessconfig/install.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig/install.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/accessconfig/install.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/accessconfig/webhooks.html +1 -1
- package/.next/standalone/.next/server/app/accessconfig/webhooks.rsc +5 -5
- package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/!KG1haW4p/accessconfig/webhooks/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/!KG1haW4p/accessconfig/webhooks.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/accessconfig.html +1 -1
- package/.next/standalone/.next/server/app/accessconfig.rsc +4 -4
- package/.next/standalone/.next/server/app/accessconfig.segments/!KG1haW4p/accessconfig/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/accessconfig.segments/_full.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/accessconfig.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/accessconfig.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/agents.html +1 -1
- package/.next/standalone/.next/server/app/agents.rsc +5 -5
- package/.next/standalone/.next/server/app/agents.segments/!KG1haW4p/agents/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/agents.segments/!KG1haW4p/agents.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/agents.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/agents.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/agents.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/agents.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/api/agent/run/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/agent/stream/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/debug/batch-tasks/[taskId]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/debug/execute/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/debug/grayscale-tasks/[taskId]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/eval/terminate-all/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/eval/trajectory/run/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/fault/diagnosis/stream/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/agent-debug/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/agent-debug/skills-analysis/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route.js +1 -1
- package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route.js +1 -1
- package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/draft/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/run/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skill-generator/attachments/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skill-generator/chat/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skill-generator/files/content/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skill-generator/files/download/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skill-generator/files/info/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skill-generator/files/list/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skill-opt/chat/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skill-opt/sessions/[id]/iterations/[draftNumber]/apply/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/download/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/files/[...path]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/user-evaluators/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/dashboard.html +1 -1
- package/.next/standalone/.next/server/app/dashboard.rsc +5 -5
- package/.next/standalone/.next/server/app/dashboard.segments/!KG1haW4p/dashboard/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard.segments/!KG1haW4p/dashboard.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/dashboard.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dashboard.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dataset.html +1 -1
- package/.next/standalone/.next/server/app/dataset.rsc +5 -5
- package/.next/standalone/.next/server/app/dataset.segments/!KG1haW4p/dataset/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dataset.segments/!KG1haW4p/dataset.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dataset.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dataset.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/dataset.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dataset.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/dataset.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/eval/trajectory.html +1 -1
- package/.next/standalone/.next/server/app/eval/trajectory.rsc +5 -5
- package/.next/standalone/.next/server/app/eval/trajectory.segments/!KG1haW4p/eval/trajectory/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/eval/trajectory.segments/!KG1haW4p/eval/trajectory.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/eval/trajectory.segments/!KG1haW4p/eval.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/eval/trajectory.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/eval/trajectory.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/eval/trajectory.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/eval/trajectory.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/eval/trajectory.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/eval.html +1 -1
- package/.next/standalone/.next/server/app/eval.rsc +5 -5
- package/.next/standalone/.next/server/app/eval.segments/!KG1haW4p/eval/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/eval.segments/!KG1haW4p/eval.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/eval.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/eval.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/eval.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/eval.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/eval.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/fault.html +1 -1
- package/.next/standalone/.next/server/app/fault.rsc +5 -5
- package/.next/standalone/.next/server/app/fault.segments/!KG1haW4p/fault/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/fault.segments/!KG1haW4p/fault.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/fault.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/fault.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/fault.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/fault.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/fault.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/index.html +1 -1
- package/.next/standalone/.next/server/app/index.rsc +3 -3
- package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/infra/sources.html +1 -1
- package/.next/standalone/.next/server/app/infra/sources.rsc +5 -5
- package/.next/standalone/.next/server/app/infra/sources.segments/!KG1haW4p/infra/sources/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/infra/sources.segments/!KG1haW4p/infra/sources.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/infra/sources.segments/!KG1haW4p/infra.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/infra/sources.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/infra/sources.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/infra/sources.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/infra/sources.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/infra/sources.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/infra.html +1 -1
- package/.next/standalone/.next/server/app/infra.rsc +5 -5
- package/.next/standalone/.next/server/app/infra.segments/!KG1haW4p/infra/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/infra.segments/!KG1haW4p/infra.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/infra.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/infra.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/infra.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/infra.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/infra.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/login.html +1 -1
- package/.next/standalone/.next/server/app/login.rsc +4 -4
- package/.next/standalone/.next/server/app/login.segments/_full.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/login.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/login.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/login.segments/login.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/memory.html +1 -1
- package/.next/standalone/.next/server/app/memory.rsc +5 -5
- package/.next/standalone/.next/server/app/memory.segments/!KG1haW4p/memory/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/memory.segments/!KG1haW4p/memory.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/memory.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/memory.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/memory.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/memory.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/memory.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/metrics.html +1 -1
- package/.next/standalone/.next/server/app/metrics.rsc +5 -5
- package/.next/standalone/.next/server/app/metrics.segments/!KG1haW4p/metrics/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/metrics.segments/!KG1haW4p/metrics.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/metrics.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/metrics.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/metrics.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/metrics.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/metrics.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/modelconfig/registry.html +1 -1
- package/.next/standalone/.next/server/app/modelconfig/registry.rsc +5 -5
- package/.next/standalone/.next/server/app/modelconfig/registry.segments/!KG1haW4p/modelconfig/registry/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/modelconfig/registry.segments/!KG1haW4p/modelconfig/registry.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/modelconfig/registry.segments/!KG1haW4p/modelconfig.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/modelconfig/registry.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/modelconfig/registry.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/modelconfig/registry.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/modelconfig/registry.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/modelconfig/registry.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/modelconfig/web-search.html +1 -1
- package/.next/standalone/.next/server/app/modelconfig/web-search.rsc +5 -5
- package/.next/standalone/.next/server/app/modelconfig/web-search.segments/!KG1haW4p/modelconfig/web-search/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/modelconfig/web-search.segments/!KG1haW4p/modelconfig/web-search.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/modelconfig/web-search.segments/!KG1haW4p/modelconfig.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/modelconfig/web-search.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/modelconfig/web-search.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/modelconfig/web-search.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/modelconfig/web-search.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/modelconfig/web-search.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/modelconfig.html +1 -1
- package/.next/standalone/.next/server/app/modelconfig.rsc +4 -4
- package/.next/standalone/.next/server/app/modelconfig.segments/!KG1haW4p/modelconfig/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/modelconfig.segments/!KG1haW4p/modelconfig.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/modelconfig.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/modelconfig.segments/_full.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/modelconfig.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/modelconfig.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/modelconfig.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/optapi.html +1 -1
- package/.next/standalone/.next/server/app/optapi.rsc +5 -5
- package/.next/standalone/.next/server/app/optapi.segments/!KG1haW4p/optapi/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/optapi.segments/!KG1haW4p/optapi.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/optapi.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/optapi.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/optapi.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/optapi.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/optapi.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/quality.html +1 -1
- package/.next/standalone/.next/server/app/quality.rsc +5 -5
- package/.next/standalone/.next/server/app/quality.segments/!KG1haW4p/quality/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/quality.segments/!KG1haW4p/quality.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/quality.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/quality.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/quality.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/quality.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/quality.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/security.html +1 -1
- package/.next/standalone/.next/server/app/security.rsc +5 -5
- package/.next/standalone/.next/server/app/security.segments/!KG1haW4p/security/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/security.segments/!KG1haW4p/security.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/security.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/security.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/security.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/security.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/security.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-detail/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/skill-detail.html +1 -1
- package/.next/standalone/.next/server/app/skill-detail.rsc +4 -4
- package/.next/standalone/.next/server/app/skill-detail.segments/_full.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/skill-detail.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-detail.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/skill-detail.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-detail.segments/skill-detail/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-detail.segments/skill-detail.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-eval/grayscale.html +2 -2
- package/.next/standalone/.next/server/app/skill-eval/grayscale.rsc +5 -5
- package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/!KG1haW4p/skill-eval/grayscale/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/!KG1haW4p/skill-eval/grayscale.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/!KG1haW4p/skill-eval.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-eval.html +1 -1
- package/.next/standalone/.next/server/app/skill-eval.rsc +5 -5
- package/.next/standalone/.next/server/app/skill-eval.segments/!KG1haW4p/skill-eval/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-eval.segments/!KG1haW4p/skill-eval.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-eval.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-eval.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/skill-eval.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-eval.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/skill-eval.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-generator.html +1 -1
- package/.next/standalone/.next/server/app/skill-generator.rsc +5 -5
- package/.next/standalone/.next/server/app/skill-generator.segments/!KG1haW4p/skill-generator/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-generator.segments/!KG1haW4p/skill-generator.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-generator.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-generator.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/skill-generator.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-generator.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/skill-generator.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-history.html +1 -1
- package/.next/standalone/.next/server/app/skill-history.rsc +5 -5
- package/.next/standalone/.next/server/app/skill-history.segments/!KG1haW4p/skill-history/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-history.segments/!KG1haW4p/skill-history.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-history.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-history.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/skill-history.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-history.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/skill-history.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-opt.html +1 -1
- package/.next/standalone/.next/server/app/skill-opt.rsc +5 -5
- package/.next/standalone/.next/server/app/skill-opt.segments/!KG1haW4p/skill-opt/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-opt.segments/!KG1haW4p/skill-opt.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-opt.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-opt.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/skill-opt.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-opt.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/skill-opt.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-release.html +1 -1
- package/.next/standalone/.next/server/app/skill-release.rsc +5 -5
- package/.next/standalone/.next/server/app/skill-release.segments/!KG1haW4p/skill-release/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-release.segments/!KG1haW4p/skill-release.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-release.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skill-release.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/skill-release.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-release.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/skill-release.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skills.html +1 -1
- package/.next/standalone/.next/server/app/skills.rsc +5 -5
- package/.next/standalone/.next/server/app/skills.segments/!KG1haW4p/skills/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skills.segments/!KG1haW4p/skills.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skills.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/skills.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/skills.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skills.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/skills.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/trace.html +1 -1
- package/.next/standalone/.next/server/app/trace.rsc +7 -7
- package/.next/standalone/.next/server/app/trace.segments/!KG1haW4p/trace/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/trace.segments/!KG1haW4p/trace.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/trace.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/trace.segments/_full.segment.rsc +7 -7
- package/.next/standalone/.next/server/app/trace.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/trace.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/trace.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/version-analysis.html +1 -1
- package/.next/standalone/.next/server/app/version-analysis.rsc +5 -5
- package/.next/standalone/.next/server/app/version-analysis.segments/!KG1haW4p/version-analysis/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/version-analysis.segments/!KG1haW4p/version-analysis.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/version-analysis.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/version-analysis.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/version-analysis.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/version-analysis.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/version-analysis.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/version-management.html +1 -1
- package/.next/standalone/.next/server/app/version-management.rsc +5 -5
- package/.next/standalone/.next/server/app/version-management.segments/!KG1haW4p/version-management/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/version-management.segments/!KG1haW4p/version-management.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/version-management.segments/!KG1haW4p.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/version-management.segments/_full.segment.rsc +5 -5
- package/.next/standalone/.next/server/app/version-management.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/version-management.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/version-management.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__b0d1e6e5._.js +22 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__8b872712._.js → [root-of-the-server]__c60fa3da._.js} +2 -2
- package/.next/standalone/.next/server/chunks/_0ce5f29d._.js +1 -1
- package/.next/standalone/.next/server/chunks/_0e34c123._.js +3 -3
- package/.next/standalone/.next/server/chunks/_5090183e._.js +1 -1
- package/.next/standalone/.next/server/chunks/_adf9e9c5._.js +1 -1
- package/.next/standalone/.next/server/chunks/_b172b746._.js +3 -3
- package/.next/standalone/.next/server/chunks/_cfa898f4._.js +1 -1
- package/.next/standalone/.next/server/chunks/_d02fac80._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_a2a34aa6._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_ea85a447._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_engine_general-agent_970b1dfe._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__143c2f65._.js → [root-of-the-server]__83687057._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__b8d3d1c3._.js +8 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__f82e551e._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_11388c48._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_32596a86._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_fault_page_tsx_96431a5d._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_metrics_page_tsx_f1599761._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_trace_page_tsx_41e7865d._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{src_lib_evaluators_7597c2fd._.js → src_lib_070bb60a._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/src_lib_client_locale-context_tsx_7184d9aa._.js +1 -1
- package/.next/standalone/.next/server/pages/404.html +1 -1
- package/.next/standalone/.next/server/pages/500.html +2 -2
- package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/static/chunks/4d2c017f2f4c9160.css +1 -0
- package/.next/standalone/.next/static/chunks/5be4d965983c6b40.js +6 -0
- package/.next/standalone/.next/static/chunks/{04bc84975996b76d.js → 7884153c8f8649dd.js} +1 -1
- package/.next/{static/chunks/6b2552d3da7451ee.js → standalone/.next/static/chunks/85ce12a5c9536a2d.js} +1 -1
- package/.next/standalone/.next/static/chunks/913c61f4f0a12da4.js +1 -0
- package/.next/standalone/.next/static/chunks/{b5e671771efd9e7d.js → b11e37b43e38eb95.js} +1 -1
- package/.next/standalone/.next/static/chunks/cf0b4e5d7b804bf5.js +1 -0
- package/.next/standalone/.next/static/chunks/df6f2eedbe05162e.js +1 -0
- package/.next/standalone/.next/static/chunks/e0af9e5baf811284.js +4 -0
- package/.next/standalone/.next/static/chunks/f61ffd647f90b66c.js +1 -0
- package/.next/standalone/docker-compose.amd64.yml +2 -1
- package/.next/standalone/docker-compose.arm64.yml +11 -0
- package/.next/standalone/package.json +1 -1
- package/.next/static/chunks/4d2c017f2f4c9160.css +1 -0
- package/.next/static/chunks/5be4d965983c6b40.js +6 -0
- package/.next/static/chunks/{04bc84975996b76d.js → 7884153c8f8649dd.js} +1 -1
- package/.next/{standalone/.next/static/chunks/6b2552d3da7451ee.js → static/chunks/85ce12a5c9536a2d.js} +1 -1
- package/.next/static/chunks/913c61f4f0a12da4.js +1 -0
- package/.next/static/chunks/{b5e671771efd9e7d.js → b11e37b43e38eb95.js} +1 -1
- package/.next/static/chunks/cf0b4e5d7b804bf5.js +1 -0
- package/.next/static/chunks/df6f2eedbe05162e.js +1 -0
- package/.next/static/chunks/e0af9e5baf811284.js +4 -0
- package/.next/static/chunks/f61ffd647f90b66c.js +1 -0
- package/package.json +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__51f686fd._.js +0 -22
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__90686664._.js +0 -8
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__96628a39._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_bda25b86._.js +0 -3
- package/.next/standalone/.next/static/chunks/0fe047909a490ef0.js +0 -1
- package/.next/standalone/.next/static/chunks/1cb2cee6b2f89fb7.js +0 -1
- package/.next/standalone/.next/static/chunks/25a9b2907e03a172.css +0 -1
- package/.next/standalone/.next/static/chunks/30a686796d86273c.js +0 -1
- package/.next/standalone/.next/static/chunks/4b72abe72a9b6cd9.js +0 -6
- package/.next/standalone/.next/static/chunks/6e6f2418240877c6.js +0 -1
- package/.next/standalone/.next/static/chunks/946d260668afc16b.js +0 -1
- package/.next/standalone/.next/static/chunks/efe225251ea151f0.js +0 -4
- package/.next/static/chunks/0fe047909a490ef0.js +0 -1
- package/.next/static/chunks/1cb2cee6b2f89fb7.js +0 -1
- package/.next/static/chunks/25a9b2907e03a172.css +0 -1
- package/.next/static/chunks/30a686796d86273c.js +0 -1
- package/.next/static/chunks/4b72abe72a9b6cd9.js +0 -6
- package/.next/static/chunks/6e6f2418240877c6.js +0 -1
- package/.next/static/chunks/946d260668afc16b.js +0 -1
- package/.next/static/chunks/efe225251ea151f0.js +0 -4
- /package/.next/standalone/.next/static/{VeFGnFbPjqrwSXp9h5AgX → pzAy0mrZCL0PmE4h3HDut}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{VeFGnFbPjqrwSXp9h5AgX → pzAy0mrZCL0PmE4h3HDut}/_clientMiddlewareManifest.json +0 -0
- /package/.next/standalone/.next/static/{VeFGnFbPjqrwSXp9h5AgX → pzAy0mrZCL0PmE4h3HDut}/_ssgManifest.js +0 -0
- /package/.next/static/{VeFGnFbPjqrwSXp9h5AgX → pzAy0mrZCL0PmE4h3HDut}/_buildManifest.js +0 -0
- /package/.next/static/{VeFGnFbPjqrwSXp9h5AgX → pzAy0mrZCL0PmE4h3HDut}/_clientMiddlewareManifest.json +0 -0
- /package/.next/static/{VeFGnFbPjqrwSXp9h5AgX → pzAy0mrZCL0PmE4h3HDut}/_ssgManifest.js +0 -0
package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_trace_page_tsx_41e7865d._.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[536942,a=>{"use strict";var b=a.i(187924),c=a.i(238246),d=a.i(50944),e=a.i(572131),f=a.i(219107),g=a.i(536670),h=a.i(519783),i=a.i(474215),j=a.i(211134),k=a.i(924613),l=a.i(285888),m=a.i(164831);let n=(0,m.default)("layers",[["path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z",key:"zw3jo"}],["path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12",key:"1wduqc"}],["path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17",key:"kqbvx6"}]]);var o=a.i(357307),p=a.i(533838),q=a.i(911715);let r=(0,m.default)("columns-3",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"M15 3v18",key:"14nvp0"}]]);var s=a.i(403512),t=a.i(752562),u=a.i(417949),v=a.i(823292),w=a.i(729936),x=a.i(232455),y=a.i(857195),z=a.i(707963),A=a.i(233540),B=a.i(866718),C=a.i(699570),D=a.i(400187),E=a.i(368114);let F=(0,D.cva)("inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function G({className:a,variant:c,...d}){return(0,b.jsx)("div",{className:(0,E.cn)(F({variant:c}),a),...d})}var H=a.i(575110);let I=[{column:"query",type:"string",label:"查询内容",description:"用户输入 / 问题",syncMode:"textSearch",nullable:!0},{column:"finalResult",type:"string",label:"输出内容",description:"trace 最终输出",syncMode:"textSearch",nullable:!0},{column:"agentName",type:"string",label:"Agent 名",description:"主 Agent 名称",syncMode:"textSearch",nullable:!0},{column:"subagentName",type:"string",label:"子 Agent 名",description:"子 Agent 显示名",syncMode:"textSearch",nullable:!0},{column:"model",type:"string",label:"模型",description:"LLM 模型名",syncMode:"textSearch",nullable:!0},{column:"label",type:"string",label:"标注",description:"人工标注",syncMode:"textSearch",nullable:!0},{column:"framework",type:"stringOptions",label:"框架",description:"采集框架 / 平台",syncMode:"exactOption",nullable:!0},{column:"subagentType",type:"stringOptions",label:"子 Agent 类型",description:"kuafu / general …",syncMode:"exactOption",nullable:!0},{column:"latency",type:"number",label:"耗时",description:"执行时长(秒)",unit:"s",nullable:!0},{column:"tokens",type:"number",label:"Tokens",description:"总 token 数",nullable:!0},{column:"inputTokens",type:"number",label:"输入 Tokens",description:"输入 token 数",nullable:!0},{column:"outputTokens",type:"number",label:"输出 Tokens",description:"输出 token 数",nullable:!0},{column:"cost",type:"number",label:"成本",description:"估算成本($)",unit:"$",nullable:!0},{column:"toolCallCount",type:"number",label:"工具调用数",description:"工具调用次数",nullable:!0},{column:"toolCallErrorCount",type:"number",label:"工具错误数",description:"工具调用失败次数",nullable:!0},{column:"answerScore",type:"number",label:"答案分",description:"答案得分(0–1)",nullable:!0},{column:"skillScore",type:"number",label:"Skill 分",description:"Skill 得分(0–1)",nullable:!0},{column:"skillTriggerRate",type:"number",label:"Skill 触发率",description:"触发率(0–1)",nullable:!0},{column:"timestamp",type:"datetime",label:"时间",description:"trace 起始时间"},{column:"isAnswerCorrect",type:"boolean",label:"答案正确",description:"评测:答案是否正确",nullable:!0},{column:"isSubagent",type:"boolean",label:"是子 Agent",description:"是否子 Agent 执行"},{column:"agents",type:"arrayOptions",label:"Agent(多选)",description:"trace 涉及的 agent",field:"observedAgents",source:"observedAgents",syncMode:"arrayOption",nullable:!0},{column:"skill",type:"arrayOptions",label:"Skill",description:"调用的 skill",source:"executionSkill",syncMode:"arrayOption"},{column:"status",type:"stringOptions",label:"状态",description:"running / success / failed",source:"computed",syncMode:"exactOption"},{column:"ownership",type:"stringOptions",label:"归属",description:"user / system",source:"computed",syncMode:"exactOption"}],J=new Map(I.map(a=>[a.column,a])),K={string:["=","contains","does not contain","starts with","ends with"],number:["=",">","<",">=","<="],datetime:[">","<",">=","<="],stringOptions:["any of","none of"],arrayOptions:["any of","none of","all of"],boolean:["="]},L=["is null","is not null"],M=I.filter(a=>"computed"!==a.source&&"executionSkill"!==a.source&&"query"!==a.column&&"finalResult"!==a.column),N=new Set(["framework","agentName","model","subagentType"]);function O(a){return({"=":"=",contains:"包含","does not contain":"不包含","starts with":"前缀","ends with":"后缀",">":">","<":"<",">=":"≥","<=":"≤","any of":"任一","none of":"非","all of":"全部","is null":"为空","is not null":"非空"})[a]??a}function P({clauses:a,onChange:c,search:d,onSearchChange:f,user:g}){let h,j=(0,e.useRef)(null),k=(0,e.useRef)(null),[l,m]=(0,e.useState)(!1),[n,o]=(0,e.useState)("field"),[p,q]=(0,e.useState)(null),[r,s]=(0,e.useState)("contains"),[t,u]=(0,e.useState)(""),[v,w]=(0,e.useState)(new Set),[x,y]=(0,e.useState)([]),[D,F]=(0,e.useState)(d),[I,P]=(0,e.useState)(d);d!==I&&(P(d),d!==D.trim()&&F(d));let R=(0,e.useRef)(f);(0,e.useEffect)(()=>{R.current=f}),(0,e.useEffect)(()=>{let a=setTimeout(()=>R.current(D.trim()),300);return()=>clearTimeout(a)},[D]);let S=(0,e.useCallback)(()=>{o("field"),q(null),u(""),w(new Set),y([])},[]),T=(0,e.useCallback)(()=>{m(!1),S()},[S]);(0,e.useEffect)(()=>{if(!l)return;let a=a=>{j.current&&!j.current.contains(a.target)&&T()};return document.addEventListener("mousedown",a),()=>document.removeEventListener("mousedown",a)},[l,T]);let U=(0,e.useMemo)(()=>{let a=D.trim().toLowerCase();return M.filter(b=>!a||b.label.toLowerCase().includes(a)||b.column.toLowerCase().includes(a))},[D]);(0,e.useEffect)(()=>{if("value"!==n||!p||!N.has(p.column))return;let a=!0;return(0,H.apiFetch)(`/api/observe/data?user=${encodeURIComponent(g)}&facet=values&column=${encodeURIComponent(p.column)}`).then(a=>a.json()).then(b=>{a&&y(Array.isArray(b)?b:[])}).catch(()=>a&&y([])),()=>{a=!1}},[n,p,g]);let[V,W]=(0,e.useState)([]);(0,e.useEffect)(()=>{let a=M.filter(a=>"stringOptions"===a.type&&N.has(a.column)).slice(0,4),b=!0;return Promise.all(a.map(a=>(0,H.apiFetch)(`/api/observe/data?user=${encodeURIComponent(g)}&facet=values&column=${encodeURIComponent(a.column)}`).then(a=>a.json()).then(b=>Array.isArray(b)&&b[0]?{column:a.column,value:b[0].value,count:b[0].count}:null).catch(()=>null))).then(a=>{b&&W(a.filter(a=>null!=a))}),()=>{b=!1}},[g]);let X=b=>{c([...a,b]),S(),k.current?.focus()},Y=()=>{if(!p)return;if("is null"===r||"is not null"===r)return void X({column:p.column,operator:r});if("boolean"===p.type)return;if("stringOptions"===p.type){if(0===v.size)return;X({column:p.column,operator:r,value:Array.from(v)});return}let a=t.trim();if(!a)return;let b=a;if("datetime"===p.type){let c=new Date(a);if(Number.isNaN(c.getTime()))return;b=c.toISOString()}X({column:p.column,operator:r,value:b})};return(0,b.jsxs)("div",{ref:j,className:"relative",children:[(0,b.jsxs)("div",{className:(0,E.cn)("flex flex-wrap items-center gap-1.5 rounded-md border border-input bg-transparent px-2.5 py-1.5 min-h-9 cursor-text","focus-within:ring-1 focus-within:ring-ring"),onMouseDown:a=>{a.target===a.currentTarget&&(a.preventDefault(),k.current?.focus(),m(!0))},children:[(0,b.jsx)(A.Search,{className:"size-4 text-foreground-muted shrink-0"}),a.map((d,e)=>(0,b.jsxs)(G,{variant:"secondary",className:"gap-1 pl-2 pr-1 py-0.5 text-xs font-normal",children:[function(a){var b;let c=(b=a.column,J.get(b)),d=c?.label??a.column;if("is null"===a.operator||"is not null"===a.operator)return`${d} ${O(a.operator)}`;let e=Array.isArray(a.value)?a.value.join(" / "):String(a.value??"");return`${d} ${O(a.operator)} ${e}`}(d),(0,b.jsx)("button",{type:"button",onClick:()=>c(a.filter((a,b)=>b!==e)),className:"rounded-sm hover:bg-background-secondary p-0.5","aria-label":"移除过滤",children:(0,b.jsx)(i.X,{className:"size-3"})})]},e)),(0,b.jsx)("input",{ref:k,value:D,onChange:a=>F(a.target.value),onFocus:()=>m(!0),onKeyDown:a=>{"Escape"===a.key&&(T(),k.current?.blur())},placeholder:a.length?"继续搜索 / 过滤…":"搜索输入/输出内容或 Trace ID,或点选字段过滤…","aria-label":"搜索或过滤 trace",className:"flex-1 min-w-[10rem] bg-transparent outline-none text-sm h-6 placeholder:text-muted-foreground"})]}),l&&(0,b.jsx)("div",{className:"absolute left-0 top-full mt-1 z-50 w-full max-w-md rounded-md border border-card-border bg-card text-card-foreground shadow-sm",children:"field"===n?(0,b.jsxs)("div",{className:"py-1",children:[D.trim()&&(0,b.jsxs)("button",{type:"button",onMouseDown:a=>a.preventDefault(),onClick:()=>{m(!1),k.current?.blur()},className:"flex w-full items-center gap-2 border-b border-card-border px-3 py-2 text-left text-xs text-foreground-muted hover:bg-background-secondary",children:[(0,b.jsx)(A.Search,{className:"size-3.5 shrink-0"}),(0,b.jsxs)("span",{className:"truncate",children:["模糊搜索输入/输出含 ",(0,b.jsx)("span",{className:"font-medium text-foreground",children:D.trim()})]})]}),!D.trim()&&V.length>0&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:"px-3 pb-1 pt-1.5 text-[11px] font-medium uppercase tracking-wide text-foreground-muted",children:"建议"}),(0,b.jsx)("ul",{className:"pb-1",children:V.map(a=>(0,b.jsx)("li",{children:(0,b.jsxs)("button",{type:"button",onClick:()=>X({column:a.column,operator:"any of",value:[a.value]}),className:"flex w-full items-center justify-between gap-3 px-3 py-1.5 text-left text-sm hover:bg-background-secondary",children:[(0,b.jsxs)("span",{className:"truncate font-mono text-xs",children:[(0,b.jsxs)("span",{className:"text-foreground-muted",children:[a.column,":"]}),a.value]}),(0,b.jsx)("span",{className:"shrink-0 text-xs tabular-nums text-foreground-muted",children:a.count})]})},a.column))})]}),(0,b.jsx)("div",{className:"px-3 pb-1 pt-1.5 text-[11px] font-medium uppercase tracking-wide text-foreground-muted",children:"字段"}),(0,b.jsxs)("ul",{className:"max-h-64 overflow-auto pb-1",children:[U.map(a=>(0,b.jsx)("li",{children:(0,b.jsxs)("button",{type:"button",onClick:()=>{q(a),s(function(a){switch(a.type){case"string":return"contains";case"number":return">";case"datetime":return">=";case"stringOptions":case"arrayOptions":return"any of";case"boolean":return"="}}(a)),u(""),w(new Set),F(""),o("value")},className:"flex w-full items-center gap-3 px-3 py-1.5 text-left text-sm hover:bg-background-secondary",children:[(0,b.jsx)(A.Search,{className:"size-4 shrink-0 text-foreground-muted"}),(0,b.jsx)("span",{className:"font-medium",children:a.label}),(0,b.jsx)("span",{className:"font-mono text-xs text-foreground-muted",children:a.column}),a.description&&(0,b.jsx)("span",{className:"ml-auto truncate text-xs text-foreground-muted",children:a.description})]})},a.column)),0===U.length&&(0,b.jsx)("li",{className:"px-3 py-2 text-xs text-foreground-muted",children:"无匹配字段"})]})]}):p&&(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{className:"flex items-center gap-1 p-2 border-b border-border",children:[(0,b.jsx)("button",{type:"button",onClick:S,className:"rounded-sm hover:bg-background-secondary p-1","aria-label":"返回字段",children:(0,b.jsx)(z.ChevronLeft,{className:"size-4"})}),(0,b.jsx)("span",{className:"text-sm font-medium",children:p.label}),(0,b.jsx)("select",{value:r,onChange:a=>s(a.target.value),className:"ml-auto h-7 rounded-md border border-border bg-background text-xs px-1",children:(h=K[p.type],p.nullable?[...h,...L]:h).map(a=>(0,b.jsx)("option",{value:a,children:O(a)},a))})]}),(0,b.jsx)("div",{className:"p-2",children:"is null"===r||"is not null"===r?(0,b.jsx)(C.Button,{size:"sm",className:"w-full h-8 text-xs",onClick:Y,children:"添加"}):"boolean"===p.type?(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsx)(C.Button,{size:"sm",variant:"outline",className:"flex-1 h-8 text-xs",onClick:()=>X({column:p.column,operator:"=",value:!0}),children:"是 / true"}),(0,b.jsx)(C.Button,{size:"sm",variant:"outline",className:"flex-1 h-8 text-xs",onClick:()=>X({column:p.column,operator:"=",value:!1}),children:"否 / false"})]}):"stringOptions"===p.type?(0,b.jsx)(Q,{facet:x,picked:v,onToggle:a=>w(b=>{let c=new Set(b);return c.has(a)?c.delete(a):c.add(a),c}),onConfirm:Y}):(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsx)(B.Input,{autoFocus:!0,type:"number"===p.type?"number":"datetime"===p.type?"datetime-local":"text",value:t,onChange:a=>u(a.target.value),onKeyDown:a=>"Enter"===a.key&&Y(),placeholder:p.unit?`值(${p.unit})`:"值…",className:"h-8 text-sm"}),(0,b.jsx)(C.Button,{size:"sm",className:"h-8 text-xs shrink-0",onClick:Y,children:"添加"})]})})]})})]})}function Q({facet:a,picked:c,onToggle:d,onConfirm:e}){return(0,b.jsxs)("div",{children:[(0,b.jsxs)("ul",{className:"max-h-56 overflow-auto -mx-2",children:[a.map(a=>(0,b.jsx)("li",{children:(0,b.jsxs)("button",{type:"button",onClick:()=>d(a.value),className:"flex w-full items-center justify-between px-3 py-1.5 text-sm hover:bg-background-secondary text-left",children:[(0,b.jsxs)("span",{className:"flex items-center gap-2",children:[(0,b.jsx)("input",{type:"checkbox",readOnly:!0,checked:c.has(a.value),className:"pointer-events-none"}),a.value]}),(0,b.jsx)("span",{className:"text-xs text-foreground-muted tabular-nums",children:a.count})]})},a.value)),0===a.length&&(0,b.jsx)("li",{className:"px-3 py-2 text-xs text-foreground-muted",children:"无可选值"})]}),(0,b.jsxs)(C.Button,{size:"sm",className:"w-full h-8 text-xs mt-2",disabled:0===c.size,onClick:e,children:["添加(",c.size,")"]})]})}var R=a.i(589027),S=a.i(141146);let T=[{column:"skill",kind:"select",defaultOpen:!0},{column:"subagentType",kind:"select"},{column:"model",kind:"contains",defaultOpen:!0},{column:"latency",kind:"range",defaultOpen:!0},{column:"tokens",kind:"range"},{column:"cost",kind:"range"},{column:"answerScore",kind:"range"},{column:"isAnswerCorrect",kind:"boolean"}];function U({clauses:a,onChange:c,user:d}){return(0,b.jsx)("div",{className:"divide-y divide-card-border",children:T.map(e=>{var f;let g,h=(f=e.column,J.get(f));return h?(0,b.jsx)(V,{col:h,kind:e.kind,defaultOpen:e.defaultOpen,user:d,current:(g=e.column,a.filter(a=>a.column===g)),onSet:b=>{let d;return d=e.column,c([...a.filter(a=>a.column!==d),...b])}},e.column):null})})}function V({col:a,kind:c,defaultOpen:d,user:f,current:g,onSet:h}){let[i,j]=(0,e.useState)(!!d),k=g.length>0;return(0,b.jsxs)("div",{className:"py-2",children:[(0,b.jsxs)("button",{type:"button",onClick:()=>j(a=>!a),className:"flex w-full items-center gap-1.5 px-1 text-left",children:[i?(0,b.jsx)(R.ChevronDown,{className:"size-3.5 text-foreground-muted"}):(0,b.jsx)(S.ChevronRight,{className:"size-3.5 text-foreground-muted"}),(0,b.jsx)("span",{className:"text-sm font-medium",children:a.label}),(0,b.jsx)("span",{className:"font-mono text-[11px] text-foreground-muted",children:a.column}),k&&(0,b.jsx)("span",{className:"ml-auto size-1.5 rounded-full bg-primary","aria-label":"已启用"})]}),i&&(0,b.jsxs)("div",{className:"mt-1.5 px-1",children:["select"===c&&(0,b.jsx)(W,{col:a,user:f,current:g,onSet:h}),"contains"===c&&(0,b.jsx)(X,{col:a,current:g,onSet:h}),"range"===c&&(0,b.jsx)(Y,{col:a,current:g,onSet:h}),"boolean"===c&&(0,b.jsx)(Z,{col:a,current:g,onSet:h})]})]})}function W({col:a,user:c,current:d,onSet:f}){let[g,h]=(0,e.useState)([]),[i,j]=(0,e.useState)(!1);(0,e.useEffect)(()=>{let b=!0;return(0,H.apiFetch)(`/api/observe/data?user=${encodeURIComponent(c)}&facet=values&column=${encodeURIComponent(a.column)}`).then(a=>a.json()).then(a=>b&&h(Array.isArray(a)?a:[])).catch(()=>b&&h([])).finally(()=>b&&j(!0)),()=>{b=!1}},[a.column,c]);let k=new Set(d.find(a=>"any of"===a.operator)?.value??[]);return i?0===g.length?(0,b.jsx)("p",{className:"text-xs text-foreground-muted",children:"无可选值"}):(0,b.jsx)("ul",{className:"max-h-48 overflow-auto",children:g.map(c=>(0,b.jsx)("li",{children:(0,b.jsxs)("button",{type:"button",onClick:()=>{var b;let d,e;return b=c.value,(d=new Set(k)).has(b)?d.delete(b):d.add(b),void f((e=Array.from(d)).length?[{column:a.column,operator:"any of",value:e}]:[])},className:"flex w-full items-center justify-between gap-2 rounded px-1 py-1 text-left text-sm hover:bg-background-secondary",children:[(0,b.jsxs)("span",{className:"flex min-w-0 items-center gap-2",children:[(0,b.jsx)("input",{type:"checkbox",readOnly:!0,checked:k.has(c.value),className:"pointer-events-none"}),(0,b.jsx)("span",{className:"truncate",children:c.value})]}),(0,b.jsx)("span",{className:"shrink-0 text-xs tabular-nums text-foreground-muted",children:c.count})]})},c.value))}):(0,b.jsx)("p",{className:"text-xs text-foreground-muted",children:"加载中…"})}function X({col:a,current:c,onSet:d}){let f=c.find(a=>"contains"===a.operator)?.value??"",[g,h]=(0,e.useState)(f),[i,j]=(0,e.useState)(f);f!==i&&(j(f),f!==g&&h(f));let k=()=>{let b=g.trim();d(b?[{column:a.column,operator:"contains",value:b}]:[])};return(0,b.jsx)("input",{value:g,onChange:a=>h(a.target.value),onBlur:k,onKeyDown:a=>"Enter"===a.key&&k(),placeholder:"包含…",className:"h-7 w-full rounded border border-input bg-transparent px-2 text-sm outline-none focus:ring-1 focus:ring-ring"})}function Y({col:a,current:c,onSet:d}){let f=c.find(a=>">="===a.operator),g=c.find(a=>"<="===a.operator),[h,i]=(0,e.useState)(f?String(f.value):""),[j,k]=(0,e.useState)(g?String(g.value):""),l=`${f?.value??""}|${g?.value??""}`,[m,n]=(0,e.useState)(l);l!==m&&(n(l),i(f?String(f.value):""),k(g?String(g.value):""));let o=()=>{let b=[];""!==h.trim()&&Number.isFinite(Number(h))&&b.push({column:a.column,operator:">=",value:Number(h)}),""!==j.trim()&&Number.isFinite(Number(j))&&b.push({column:a.column,operator:"<=",value:Number(j)}),d(b)},p="h-7 w-full rounded border border-input bg-transparent px-2 text-sm outline-none focus:ring-1 focus:ring-ring";return(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("input",{type:"number",value:h,onChange:a=>i(a.target.value),onBlur:o,onKeyDown:a=>"Enter"===a.key&&o(),placeholder:a.unit?`最小(${a.unit})`:"最小",className:p}),(0,b.jsx)("span",{className:"text-xs text-foreground-muted",children:"–"}),(0,b.jsx)("input",{type:"number",value:j,onChange:a=>k(a.target.value),onBlur:o,onKeyDown:a=>"Enter"===a.key&&o(),placeholder:a.unit?`最大(${a.unit})`:"最大",className:p})]})}function Z({col:a,current:c,onSet:d}){let e=c.find(a=>"="===a.operator),f=e?e.value:void 0,g=(c,e)=>(0,b.jsx)("button",{type:"button",onClick:()=>d(void 0===e?[]:[{column:a.column,operator:"=",value:e}]),className:"flex-1 rounded px-2 py-1 text-xs "+(f===e?"bg-primary text-primary-foreground":"hover:bg-background-secondary text-foreground-muted"),children:c});return(0,b.jsxs)("div",{className:"flex gap-1 rounded border border-input p-0.5",children:[g("全部",void 0),g("是",!0),g("否",!1)]})}var $=a.i(943408),_=a.i(106927),aa=a.i(434465),ab=a.i(30553),ac="horizontal",ad=["horizontal","vertical"],ae=e.forwardRef((a,c)=>{var d;let{decorative:e,orientation:f=ac,...g}=a,h=(d=f,ad.includes(d))?f:ac;return(0,b.jsx)(ab.Primitive.div,{"data-orientation":h,...e?{role:"none"}:{"aria-orientation":"vertical"===h?h:void 0,role:"separator"},...g,ref:c})});function af({className:a,orientation:c="horizontal",decorative:d=!0,...e}){return(0,b.jsx)(ae,{"data-slot":"separator-root",decorative:d,orientation:c,className:(0,E.cn)("bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",a),...e})}function ag({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"skeleton",className:(0,E.cn)("bg-primary/10 animate-pulse rounded-md",a),...c})}ae.displayName="Separator";var ah=a.i(785259),ai=a.i(580701),aj=a.i(882524),ak=a.i(507554),al=a.i(470121),am=a.i(750104),an=a.i(596743),ao=a.i(486228),ap=a.i(422297),aq=a.i(392843),ar=a.i(704691),as=a.i(692616),at=a.i(777192),au=a.i(811011),av=a.i(225152),aw=a.i(241852),ax=a.i(152081),ay="Popover",[az,aA]=(0,am.createContextScope)(ay,[ar.createPopperScope]),aB=(0,ar.createPopperScope)(),[aC,aD]=az(ay),aE=a=>{let{__scopePopover:c,children:d,open:f,defaultOpen:g,onOpenChange:h,modal:i=!1}=a,j=aB(c),k=e.useRef(null),[l,m]=e.useState(!1),[n,o]=(0,av.useControllableState)({prop:f,defaultProp:g??!1,onChange:h,caller:ay});return(0,b.jsx)(ar.Root,{...j,children:(0,b.jsx)(aC,{scope:c,contentId:(0,aq.useId)(),triggerRef:k,open:n,onOpenChange:o,onOpenToggle:e.useCallback(()=>o(a=>!a),[o]),hasCustomAnchor:l,onCustomAnchorAdd:e.useCallback(()=>m(!0),[]),onCustomAnchorRemove:e.useCallback(()=>m(!1),[]),modal:i,children:d})})};aE.displayName=ay;var aF="PopoverAnchor";e.forwardRef((a,c)=>{let{__scopePopover:d,...f}=a,g=aD(aF,d),h=aB(d),{onCustomAnchorAdd:i,onCustomAnchorRemove:j}=g;return e.useEffect(()=>(i(),()=>j()),[i,j]),(0,b.jsx)(ar.Anchor,{...h,...f,ref:c})}).displayName=aF;var aG="PopoverTrigger",aH=e.forwardRef((a,c)=>{let{__scopePopover:d,...e}=a,f=aD(aG,d),g=aB(d),h=(0,al.useComposedRefs)(c,f.triggerRef),i=(0,b.jsx)(ab.Primitive.button,{type:"button","aria-haspopup":"dialog","aria-expanded":f.open,"aria-controls":f.open?f.contentId:void 0,"data-state":aT(f.open),...e,ref:h,onClick:(0,ak.composeEventHandlers)(a.onClick,f.onOpenToggle)});return f.hasCustomAnchor?i:(0,b.jsx)(ar.Anchor,{asChild:!0,...g,children:i})});aH.displayName=aG;var aI="PopoverPortal",[aJ,aK]=az(aI,{forceMount:void 0}),aL=a=>{let{__scopePopover:c,forceMount:d,children:e,container:f}=a,g=aD(aI,c);return(0,b.jsx)(aJ,{scope:c,forceMount:d,children:(0,b.jsx)(at.Presence,{present:d||g.open,children:(0,b.jsx)(as.Portal,{asChild:!0,container:f,children:e})})})};aL.displayName=aI;var aM="PopoverContent",aN=e.forwardRef((a,c)=>{let d=aK(aM,a.__scopePopover),{forceMount:e=d.forceMount,...f}=a,g=aD(aM,a.__scopePopover);return(0,b.jsx)(at.Presence,{present:e||g.open,children:g.modal?(0,b.jsx)(aP,{...f,ref:c}):(0,b.jsx)(aQ,{...f,ref:c})})});aN.displayName=aM;var aO=(0,au.createSlot)("PopoverContent.RemoveScroll"),aP=e.forwardRef((a,c)=>{let d=aD(aM,a.__scopePopover),f=e.useRef(null),g=(0,al.useComposedRefs)(c,f),h=e.useRef(!1);return e.useEffect(()=>{let a=f.current;if(a)return(0,aw.hideOthers)(a)},[]),(0,b.jsx)(ax.RemoveScroll,{as:aO,allowPinchZoom:!0,children:(0,b.jsx)(aR,{...a,ref:g,trapFocus:d.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:(0,ak.composeEventHandlers)(a.onCloseAutoFocus,a=>{a.preventDefault(),h.current||d.triggerRef.current?.focus()}),onPointerDownOutside:(0,ak.composeEventHandlers)(a.onPointerDownOutside,a=>{let b=a.detail.originalEvent,c=0===b.button&&!0===b.ctrlKey;h.current=2===b.button||c},{checkForDefaultPrevented:!1}),onFocusOutside:(0,ak.composeEventHandlers)(a.onFocusOutside,a=>a.preventDefault(),{checkForDefaultPrevented:!1})})})}),aQ=e.forwardRef((a,c)=>{let d=aD(aM,a.__scopePopover),f=e.useRef(!1),g=e.useRef(!1);return(0,b.jsx)(aR,{...a,ref:c,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:b=>{a.onCloseAutoFocus?.(b),b.defaultPrevented||(f.current||d.triggerRef.current?.focus(),b.preventDefault()),f.current=!1,g.current=!1},onInteractOutside:b=>{a.onInteractOutside?.(b),b.defaultPrevented||(f.current=!0,"pointerdown"===b.detail.originalEvent.type&&(g.current=!0));let c=b.target;d.triggerRef.current?.contains(c)&&b.preventDefault(),"focusin"===b.detail.originalEvent.type&&g.current&&b.preventDefault()}})}),aR=e.forwardRef((a,c)=>{let{__scopePopover:d,trapFocus:e,onOpenAutoFocus:f,onCloseAutoFocus:g,disableOutsidePointerEvents:h,onEscapeKeyDown:i,onPointerDownOutside:j,onFocusOutside:k,onInteractOutside:l,...m}=a,n=aD(aM,d),o=aB(d);return(0,ao.useFocusGuards)(),(0,b.jsx)(ap.FocusScope,{asChild:!0,loop:!0,trapped:e,onMountAutoFocus:f,onUnmountAutoFocus:g,children:(0,b.jsx)(an.DismissableLayer,{asChild:!0,disableOutsidePointerEvents:h,onInteractOutside:l,onEscapeKeyDown:i,onPointerDownOutside:j,onFocusOutside:k,onDismiss:()=>n.onOpenChange(!1),deferPointerDownOutside:!0,children:(0,b.jsx)(ar.Content,{"data-state":aT(n.open),role:"dialog",id:n.contentId,...o,...m,ref:c,style:{...m.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),aS="PopoverClose";function aT(a){return a?"open":"closed"}function aU({...a}){return(0,b.jsx)(aE,{"data-slot":"popover",...a})}function aV({...a}){return(0,b.jsx)(aH,{"data-slot":"popover-trigger",...a})}function aW({className:a,align:c="center",sideOffset:d=6,children:e,...f}){return(0,b.jsx)(aL,{children:(0,b.jsx)(aN,{"data-slot":"popover-content",align:c,sideOffset:d,className:(0,E.cn)("z-50 w-72 rounded-md border border-card-border bg-card p-4 text-card-foreground shadow-sm outline-none","data-[state=open]:animate-in data-[state=closed]:animate-out","data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0","data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95","data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2","data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2",a),...f,children:e})})}e.forwardRef((a,c)=>{let{__scopePopover:d,...e}=a,f=aD(aS,d);return(0,b.jsx)(ab.Primitive.button,{type:"button",...e,ref:c,onClick:(0,ak.composeEventHandlers)(a.onClick,()=>f.onOpenChange(!1))})}).displayName=aS,e.forwardRef((a,c)=>{let{__scopePopover:d,...e}=a,f=aB(d);return(0,b.jsx)(ar.Arrow,{...f,...e,ref:c})}).displayName="PopoverArrow";var aX=a.i(335732),aY=a.i(100842),aZ=a.i(115326),a$=a.i(585650);function a_({value:a,head:c=6,tail:d=4,copy:f=!0,className:g,onClick:h}){let[i,j]=e.useState(!1);if(!a)return(0,b.jsx)("span",{className:"text-foreground-muted",children:"—"});let k=a.length>c+d+1?`${a.slice(0,c)}…${a.slice(-d)}`:a,l=async b=>{b.stopPropagation();try{await navigator.clipboard.writeText(a),j(!0),v.toast.success("Copied"),setTimeout(()=>j(!1),1500)}catch{v.toast.error("Copy failed")}};return(0,b.jsx)(ah.TooltipProvider,{delayDuration:150,children:(0,b.jsxs)(ah.Tooltip,{children:[(0,b.jsx)(ah.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("span",{onClick:h,className:(0,E.cn)("inline-flex items-center gap-1 font-mono text-xs text-foreground tabular-nums",h&&"cursor-pointer hover:text-primary",g),children:[(0,b.jsx)("span",{children:k}),f&&(0,b.jsx)("button",{type:"button",onClick:l,"aria-label":"Copy ID",className:"text-foreground-muted hover:text-foreground p-0.5 rounded-sm focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:i?(0,b.jsx)(t.Check,{className:"size-3"}):(0,b.jsx)(a$.Copy,{className:"size-3"})})]})}),(0,b.jsx)(ah.TooltipContent,{side:"top",children:(0,b.jsx)("code",{className:"text-xs",children:a})})]})})}function a0({children:a,className:c,tooltipMax:d=200,empty:e=(0,b.jsx)("span",{className:"text-foreground-muted",children:"—"})}){let f=(a??"").toString();return f?(0,b.jsx)(ah.TooltipProvider,{delayDuration:250,children:(0,b.jsxs)(ah.Tooltip,{children:[(0,b.jsx)(ah.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("span",{className:(0,E.cn)("block truncate",c),children:f})}),(0,b.jsx)(ah.TooltipContent,{side:"top",className:"max-w-sm whitespace-pre-wrap text-xs",children:f.length>d?`${f.slice(0,d)}…`:f})]})}):(0,b.jsx)(b.Fragment,{children:e})}let a1=Symbol.for("constructDateFrom");function a2(a,b){return"function"==typeof a?a(b):a&&"object"==typeof a&&a1 in a?a[a1](b):a instanceof Date?new a.constructor(b):new Date(b)}let a3={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function a4(a){return (b={})=>{let c=b.width?String(b.width):a.defaultWidth;return a.formats[c]||a.formats[a.defaultWidth]}}let a5={date:a4({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:a4({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:a4({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},a6={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function a7(a){return(b,c)=>{let d;if("formatting"===(c?.context?String(c.context):"standalone")&&a.formattingValues){let b=a.defaultFormattingWidth||a.defaultWidth,e=c?.width?String(c.width):b;d=a.formattingValues[e]||a.formattingValues[b]}else{let b=a.defaultWidth,e=c?.width?String(c.width):a.defaultWidth;d=a.values[e]||a.values[b]}return d[a.argumentCallback?a.argumentCallback(b):b]}}function a8(a){return(b,c={})=>{let d,e=c.width,f=e&&a.matchPatterns[e]||a.matchPatterns[a.defaultMatchWidth],g=b.match(f);if(!g)return null;let h=g[0],i=e&&a.parsePatterns[e]||a.parsePatterns[a.defaultParseWidth],j=Array.isArray(i)?function(a,b){for(let c=0;c<a.length;c++)if(b(a[c]))return c}(i,a=>a.test(h)):function(a,b){for(let c in a)if(Object.prototype.hasOwnProperty.call(a,c)&&b(a[c]))return c}(i,a=>a.test(h));return d=a.valueCallback?a.valueCallback(j):j,{value:d=c.valueCallback?c.valueCallback(d):d,rest:b.slice(h.length)}}}function a9(a){return(b,c={})=>{let d=b.match(a.matchPattern);if(!d)return null;let e=d[0],f=b.match(a.parsePattern);if(!f)return null;let g=a.valueCallback?a.valueCallback(f[0]):f[0];return{value:g=c.valueCallback?c.valueCallback(g):g,rest:b.slice(e.length)}}}let ba={code:"en-US",formatDistance:(a,b,c)=>{let d,e=a3[a];if(d="string"==typeof e?e:1===b?e.one:e.other.replace("{{count}}",b.toString()),c?.addSuffix)if(c.comparison&&c.comparison>0)return"in "+d;else return d+" ago";return d},formatLong:a5,formatRelative:(a,b,c,d)=>a6[a],localize:{ordinalNumber:(a,b)=>{let c=Number(a),d=c%100;if(d>20||d<10)switch(d%10){case 1:return c+"st";case 2:return c+"nd";case 3:return c+"rd"}return c+"th"},era:a7({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:a7({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:a=>a-1}),month:a7({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:a7({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:a7({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})},match:{ordinalNumber:a9({matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:a=>parseInt(a,10)}),era:a8({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:a8({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:a=>a+1}),month:a8({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:a8({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:a8({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})},options:{weekStartsOn:0,firstWeekContainsDate:1}},bb={};function bc(a,b){return a2(b||a,a)}function bd(a){let b=bc(a),c=new Date(Date.UTC(b.getFullYear(),b.getMonth(),b.getDate(),b.getHours(),b.getMinutes(),b.getSeconds(),b.getMilliseconds()));return c.setUTCFullYear(b.getFullYear()),a-c}function be(a,...b){let c=a2.bind(null,a||b.find(a=>"object"==typeof a));return b.map(c)}function bf(a,b){let c=bc(a)-bc(b);return c<0?-1:c>0?1:c}let bg={lessThanXSeconds:{one:"不到 1 秒",other:"不到 {{count}} 秒"},xSeconds:{one:"1 秒",other:"{{count}} 秒"},halfAMinute:"半分钟",lessThanXMinutes:{one:"不到 1 分钟",other:"不到 {{count}} 分钟"},xMinutes:{one:"1 分钟",other:"{{count}} 分钟"},xHours:{one:"1 小时",other:"{{count}} 小时"},aboutXHours:{one:"大约 1 小时",other:"大约 {{count}} 小时"},xDays:{one:"1 天",other:"{{count}} 天"},aboutXWeeks:{one:"大约 1 个星期",other:"大约 {{count}} 个星期"},xWeeks:{one:"1 个星期",other:"{{count}} 个星期"},aboutXMonths:{one:"大约 1 个月",other:"大约 {{count}} 个月"},xMonths:{one:"1 个月",other:"{{count}} 个月"},aboutXYears:{one:"大约 1 年",other:"大约 {{count}} 年"},xYears:{one:"1 年",other:"{{count}} 年"},overXYears:{one:"超过 1 年",other:"超过 {{count}} 年"},almostXYears:{one:"将近 1 年",other:"将近 {{count}} 年"}},bh={date:a4({formats:{full:"y'年'M'月'd'日' EEEE",long:"y'年'M'月'd'日'",medium:"yyyy-MM-dd",short:"yy-MM-dd"},defaultWidth:"full"}),time:a4({formats:{full:"zzzz a h:mm:ss",long:"z a h:mm:ss",medium:"a h:mm:ss",short:"a h:mm"},defaultWidth:"full"}),dateTime:a4({formats:{full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},defaultWidth:"full"})};function bi(a,b){let c=b?.weekStartsOn??b?.locale?.options?.weekStartsOn??bb.weekStartsOn??bb.locale?.options?.weekStartsOn??0,d=bc(a,b?.in),e=d.getDay();return d.setDate(d.getDate()-(7*(e<c)+e-c)),d.setHours(0,0,0,0),d}function bj(a,b,c){let d="eeee p";return!function(a,b,c){let[d,e]=be(c?.in,a,b);return+bi(d,c)==+bi(e,c)}(a,b,c)?a.getTime()>b.getTime()?"'下个'"+d:"'上个'"+d:d}let bk={lastWeek:bj,yesterday:"'昨天' p",today:"'今天' p",tomorrow:"'明天' p",nextWeek:bj,other:"PP p"},bl={code:"zh-CN",formatDistance:(a,b,c)=>{let d,e=bg[a];if(d="string"==typeof e?e:1===b?e.one:e.other.replace("{{count}}",String(b)),c?.addSuffix)if(c.comparison&&c.comparison>0)return d+"内";else return d+"前";return d},formatLong:bh,formatRelative:(a,b,c,d)=>{let e=bk[a];return"function"==typeof e?e(b,c,d):e},localize:{ordinalNumber:(a,b)=>{let c=Number(a);switch(b?.unit){case"date":return c.toString()+"日";case"hour":return c.toString()+"时";case"minute":return c.toString()+"分";case"second":return c.toString()+"秒";default:return"第 "+c.toString()}},era:a7({values:{narrow:["前","公元"],abbreviated:["前","公元"],wide:["公元前","公元"]},defaultWidth:"wide"}),quarter:a7({values:{narrow:["1","2","3","4"],abbreviated:["第一季","第二季","第三季","第四季"],wide:["第一季度","第二季度","第三季度","第四季度"]},defaultWidth:"wide",argumentCallback:a=>a-1}),month:a7({values:{narrow:["一","二","三","四","五","六","七","八","九","十","十一","十二"],abbreviated:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],wide:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"]},defaultWidth:"wide"}),day:a7({values:{narrow:["日","一","二","三","四","五","六"],short:["日","一","二","三","四","五","六"],abbreviated:["周日","周一","周二","周三","周四","周五","周六"],wide:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]},defaultWidth:"wide"}),dayPeriod:a7({values:{narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"}},defaultWidth:"wide",formattingValues:{narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"}},defaultFormattingWidth:"wide"})},match:{ordinalNumber:a9({matchPattern:/^(第\s*)?\d+(日|时|分|秒)?/i,parsePattern:/\d+/i,valueCallback:a=>parseInt(a,10)}),era:a8({matchPatterns:{narrow:/^(前)/i,abbreviated:/^(前)/i,wide:/^(公元前|公元)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^(前)/i,/^(公元)/i]},defaultParseWidth:"any"}),quarter:a8({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^第[一二三四]刻/i,wide:/^第[一二三四]刻钟/i},defaultMatchWidth:"wide",parsePatterns:{any:[/(1|一)/i,/(2|二)/i,/(3|三)/i,/(4|四)/i]},defaultParseWidth:"any",valueCallback:a=>a+1}),month:a8({matchPatterns:{narrow:/^(一|二|三|四|五|六|七|八|九|十[二一]?)/i,abbreviated:/^(一|二|三|四|五|六|七|八|九|十[二一]?|\d|1[0-2])月/i,wide:/^(一|二|三|四|五|六|七|八|九|十[二一]?)月/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^一/i,/^二/i,/^三/i,/^四/i,/^五/i,/^六/i,/^七/i,/^八/i,/^九/i,/^十(?!(一|二))/i,/^十一/i,/^十二/i],any:[/^(一|1(?!\d))/i,/^(二|2)/i,/^(三|3)/i,/^(四|4)/i,/^(五|5)/i,/^(六|6)/i,/^(七|7)/i,/^(八|8)/i,/^(九|9)/i,/^(十(?!(一|二))|10)/i,/^(十一|11)/i,/^(十二|12)/i]},defaultParseWidth:"any"}),day:a8({matchPatterns:{narrow:/^[一二三四五六日]/i,short:/^[一二三四五六日]/i,abbreviated:/^周[一二三四五六日]/i,wide:/^星期[一二三四五六日]/i},defaultMatchWidth:"wide",parsePatterns:{any:[/日/i,/一/i,/二/i,/三/i,/四/i,/五/i,/六/i]},defaultParseWidth:"any"}),dayPeriod:a8({matchPatterns:{any:/^(上午?|下午?|午夜|[中正]午|早上?|下午|晚上?|凌晨|)/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^上午?/i,pm:/^下午?/i,midnight:/^午夜/i,noon:/^[中正]午/i,morning:/^早上/i,afternoon:/^下午/i,evening:/^晚上?/i,night:/^凌晨/i}},defaultParseWidth:"any"})},options:{weekStartsOn:1,firstWeekContainsDate:4}};function bm({value:a,className:c}){var d,e;let{locale:f}=(0,_.useLocale)();if(null==a||""===a)return(0,b.jsx)("span",{className:"text-foreground-muted",children:"—"});let g=a instanceof Date?a:new Date(a);if(Number.isNaN(g.getTime()))return(0,b.jsx)("span",{className:"text-foreground-muted",children:"—"});let h=(d=g,e={addSuffix:!0,locale:"zh"===f?bl:ba},function(a,b,c){var d;let e,f=c?.locale??bb.locale??ba,g=bf(a,b);if(isNaN(g))throw RangeError("Invalid time value");let h=Object.assign({},c,{addSuffix:c?.addSuffix,comparison:g}),[i,j]=be(c?.in,...g>0?[b,a]:[a,b]),k=(d=void 0,a=>{let b=(d?Math[d]:Math.trunc)(a);return 0===b?0:b})((bc(j)-bc(i))/1e3),l=Math.round((k-(bd(j)-bd(i))/1e3)/60);if(l<2)if(c?.includeSeconds)if(k<5)return f.formatDistance("lessThanXSeconds",5,h);else if(k<10)return f.formatDistance("lessThanXSeconds",10,h);else if(k<20)return f.formatDistance("lessThanXSeconds",20,h);else if(k<40)return f.formatDistance("halfAMinute",0,h);else if(k<60)return f.formatDistance("lessThanXMinutes",1,h);else return f.formatDistance("xMinutes",1,h);else if(0===l)return f.formatDistance("lessThanXMinutes",1,h);else return f.formatDistance("xMinutes",l,h);if(l<45)return f.formatDistance("xMinutes",l,h);if(l<90)return f.formatDistance("aboutXHours",1,h);if(l<1440){let a=Math.round(l/60);return f.formatDistance("aboutXHours",a,h)}if(l<2520)return f.formatDistance("xDays",1,h);else if(l<43200){let a=Math.round(l/1440);return f.formatDistance("xDays",a,h)}else if(l<86400)return e=Math.round(l/43200),f.formatDistance("aboutXMonths",e,h);if((e=function(a,b,c){var d,e;let f,g,h,i,[j,k,l]=be(void 0,a,a,b),m=bf(k,l),n=Math.abs(function(a,b,c){let[d,e]=be(void 0,a,b);return 12*(d.getFullYear()-e.getFullYear())+(d.getMonth()-e.getMonth())}(k,l));if(n<1)return 0;1===k.getMonth()&&k.getDate()>27&&k.setDate(30),k.setMonth(k.getMonth()-m*n);let o=bf(k,l)===-m;+(f=bc(j,void 0),d=void 0,(g=bc(f,d?.in)).setHours(23,59,59,999),g)==+(e=void 0,i=(h=bc(f,e?.in)).getMonth(),h.setFullYear(h.getFullYear(),i+1,0),h.setHours(23,59,59,999),h)&&1===n&&1===bf(j,l)&&(o=!1);let p=m*(n-o);return 0===p?0:p}(j,i))<12){let a=Math.round(l/43200);return f.formatDistance("xMonths",a,h)}{let a=e%12,b=Math.trunc(e/12);return a<3?f.formatDistance("aboutXYears",b,h):a<9?f.formatDistance("overXYears",b,h):f.formatDistance("almostXYears",b+1,h)}}(d,a2(d,Date.now()),e)),i=g.toLocaleString();return(0,b.jsx)(ah.TooltipProvider,{delayDuration:250,children:(0,b.jsxs)(ah.Tooltip,{children:[(0,b.jsx)(ah.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("span",{className:c,children:h})}),(0,b.jsx)(ah.TooltipContent,{side:"top",className:"font-mono text-xs",children:i})]})})}var bn=a.i(960798);let bo=process.env.NEXT_PUBLIC_URL_PREFIX||"",bp={"30m":18e5,"1h":36e5,"3h":108e5,"24h":864e5,"7d":6048e5,"30d":2592e6,all:1/0},bq=[20,50,100],br=[5,10,30,60],bs=["traceId","agent","status","userTags","systemTags","task","tokens","time","actions"],bt={traceId:130,agent:170,status:110,userTags:260,systemTags:220,tokens:110,time:120,actions:220},bu={traceId:90,agent:100,status:80,userTags:150,systemTags:140,tokens:70,time:80,actions:160},bv={traceId:!0,agent:!0,status:!0,userTags:!0,systemTags:!1,task:!0,tokens:!0,time:!0,actions:!0},bw="trace.columnWidths.v1",bx="trace.columnVisibility.v1";function by(a){let b=String(a.trace_status??a.traceStatus??"").trim().toLowerCase();return"running"===b||"success"===b||"failed"===b?b:a.trace_completed_at||a.traceCompletedAt?"success":"running"}function bz(a){let b=String(a||"").trim();switch(b.toLowerCase()){case"langfuse-langgraph":return"Langfuse-Langgraph";case"opencode":return"OpenCode";case"claude":case"claudecode":return"Claude Code";case"hermes":return"Hermes";default:return b}}function bA(a){return a&&Number.isFinite(a)?a<1e3?`${Math.round(a)}ms`:a<6e4?`${(a/1e3).toFixed(2)}s`:`${(a/6e4).toFixed(1)}m`:"-"}function bB(a,b){let c=(b||"").toLowerCase();return("opencode"===c||"openhands"===c||"claude"===c||"claudecode"===c)&&a>0&&a<1e3?1e3*a:a}function bC(a){if(!a&&0!==a)return"-";let b=new Date(a);return b.getFullYear()+"/"+String(b.getMonth()+1).padStart(2,"0")+"/"+String(b.getDate()).padStart(2,"0")+" "+String(b.getHours()).padStart(2,"0")+":"+String(b.getMinutes()).padStart(2,"0")+":"+String(b.getSeconds()).padStart(2,"0")+"."+String(b.getMilliseconds()).padStart(3,"0")}function bD(a,b){return Math.min(640,Math.max(bu[a],Math.round(b)))}function bE({colKey:a,currentWidth:c,onResize:d}){return(0,b.jsx)("span",{onMouseDown:b=>{b.preventDefault(),b.stopPropagation();let e=b.clientX,f=b=>{d(a,c+(b.clientX-e))},g=()=>{window.removeEventListener("mousemove",f),window.removeEventListener("mouseup",g),document.body.style.cursor="",document.body.style.userSelect=""};document.body.style.cursor="col-resize",document.body.style.userSelect="none",window.addEventListener("mousemove",f),window.addEventListener("mouseup",g)},onClick:a=>a.stopPropagation(),onKeyDown:a=>a.stopPropagation(),role:"separator","aria-orientation":"vertical","aria-label":`Resize column ${a}`,className:"absolute right-0 top-0 z-10 flex h-full w-2 -mr-1 items-center justify-center cursor-col-resize group/handle",children:(0,b.jsx)("span",{className:"h-4 w-px bg-border group-hover/handle:bg-primary group-hover/handle:w-0.5 transition-colors","aria-hidden":!0})})}function bF(){return(0,b.jsx)(e.Suspense,{fallback:(0,b.jsxs)("div",{className:"flex flex-col gap-3 px-6 py-6",children:[(0,b.jsx)(ag,{className:"h-9 w-48"}),(0,b.jsx)(ag,{className:"h-24 w-full"}),(0,b.jsx)(ag,{className:"h-96 w-full"})]}),children:(0,b.jsx)(bG,{})})}function bG(){let{user:a}=(0,$.useAuth)(),{t:c,locale:d}=(0,_.useLocale)(),[f,g]=(0,e.useState)([]),[h,j]=(0,e.useState)(!0),[k,l]=(0,e.useState)(null),[m,n]=(0,e.useState)([]),[o,s]=(0,u.useQueryState)("time",u.parseAsString.withDefault("all")),[t,v]=(0,u.useQueryState)("status",u.parseAsString.withDefault("all")),[y,z]=(0,u.useQueryState)("framework",u.parseAsString.withDefault("all")),[A,B]=(0,u.useQueryState)("agent",u.parseAsString.withDefault("all")),[D,E]=(0,u.useQueryState)("skill",u.parseAsString.withDefault("all")),[F,G]=(0,u.useQueryState)("bizTag",u.parseAsString.withDefault("all")),[I,J]=(0,u.useQueryState)("ownership",u.parseAsString.withDefault("user")),[K,L]=(0,u.useQueryState)("scope",u.parseAsString.withDefault("root")),[M,N]=(0,u.useQueryState)("sort",u.parseAsString.withDefault("timestamp")),[O,Q]=(0,u.useQueryState)("dir",u.parseAsString.withDefault("desc")),[R,S]=(0,u.useQueryState)("page",u.parseAsInteger.withDefault(1)),[T,V]=(0,u.useQueryState)("size",u.parseAsInteger.withDefault(20)),[W,X]=(0,u.useQueryState)("taskId",u.parseAsString),[Y,Z]=(0,u.useQueryState)("q",u.parseAsString.withDefault("")),[ab,ac]=(0,e.useState)(!1),[ad,ae]=(0,u.useQueryState)("f",u.parseAsString.withDefault("")),ah=(0,e.useMemo)(()=>{if(!ad)return[];try{let a=JSON.parse(ad);return Array.isArray(a)?a:[]}catch{return[]}},[ad]),ak=(0,e.useCallback)(a=>ae(a.length?JSON.stringify(a):null),[ae]),al=(0,e.useCallback)(a=>Z(a||null),[Z]),am=(0,e.useCallback)(()=>{a?(0,H.apiFetch)(`/api/tags?user=${encodeURIComponent(a)}`).then(a=>a.ok?a.json():[]).then(a=>n(Array.isArray(a)?a:[])).catch(()=>n([])):n([])},[a]);(0,e.useEffect)(()=>{am()},[am]);let an=(0,e.useCallback)((a,b)=>{g(c=>c.map(c=>c.upload_id===a||c.task_id===a?{...c,userTags:b}:c)),l(c=>c&&(c.upload_id===a||c.task_id===a)?{...c,userTags:b}:c)},[]),ao=(0,e.useCallback)(a=>{n(b=>(b.some(b=>b.id===a.id)?b.map(b=>b.id===a.id?a:b):[...b,a]).slice().sort((a,b)=>a.kind===b.kind?a.name.localeCompare(b.name):a.kind.localeCompare(b.kind)))},[]),ap=(0,e.useMemo)(()=>[{value:"all",label:"zh"===d?"全部业务标签":"All business tags"},...m.filter(a=>"business"===a.kind).map(a=>({value:a.id,label:a.usageCount?`${a.name} (${a.usageCount})`:a.name}))],[m,d]),aq=(0,e.useMemo)(()=>({traceId:c("tracePage.columnTraceId"),agent:c("tracePage.columnAgent"),status:c("tracePage.columnStatus"),userTags:c("tracePage.columnUserTags"),systemTags:c("tracePage.columnSystemTags"),task:c("tracePage.columnTask"),tokens:c("tracePage.columnTokens"),time:c("tracePage.columnTime"),actions:c("tracePage.columnActions")}),[c]),{widths:ar,setColumnWidth:as,resetColumnWidths:at,isCustomized:au}=function(){let[a,b]=(0,e.useState)(bt);(0,e.useEffect)(()=>{try{let a=window.localStorage.getItem(bw);if(!a)return;let c=JSON.parse(a);b(a=>{let b={...a};return Object.keys(a).forEach(a=>{let d=c[a];"number"==typeof d&&Number.isFinite(d)&&(b[a]=bD(a,d))}),"number"==typeof c.tags&&Number.isFinite(c.tags)&&(b.systemTags=bD("systemTags",c.tags)),b})}catch{}},[]);let c=(0,e.useCallback)((a,c)=>{b(b=>{let d={...b,[a]:bD(a,c)};try{window.localStorage.setItem(bw,JSON.stringify(d))}catch{}return d})},[]),d=(0,e.useCallback)(()=>{b(bt);try{window.localStorage.removeItem(bw)}catch{}},[]),f=(0,e.useMemo)(()=>Object.keys(bt).some(b=>a[b]!==bt[b]),[a]);return{widths:a,setColumnWidth:c,resetColumnWidths:d,isCustomized:f}}(),{columnVisibility:av,setColumnVisible:aw,resetColumnVisibility:ax,isVisibilityCustomized:ay}=function(){let[a,b]=(0,e.useState)(bv);(0,e.useEffect)(()=>{try{let a=window.localStorage.getItem(bx);if(!a)return;let c=JSON.parse(a);b(a=>{let b={...a};return bs.forEach(a=>{"boolean"==typeof c[a]&&(b[a]=c[a])}),b})}catch{}},[]);let c=(0,e.useCallback)((a,c)=>{b(b=>{let d={...b,[a]:c};try{window.localStorage.setItem(bx,JSON.stringify(d))}catch{}return d})},[]),d=(0,e.useCallback)(()=>{b(bv);try{window.localStorage.removeItem(bx)}catch{}},[]),f=(0,e.useMemo)(()=>bs.some(b=>a[b]!==bv[b]),[a]);return{columnVisibility:a,setColumnVisible:c,resetColumnVisibility:d,isVisibilityCustomized:f}}(),az=(0,e.useMemo)(()=>Object.keys(bt).filter(a=>av[a]).reduce((a,b)=>a+ar[b],0)+280*!!av.task,[ar,av]),aA=(0,e.useCallback)(a=>{l(a),X(a&&(a.task_id||a.upload_id)||null)},[X]),aB=(0,e.useRef)(null);(0,e.useEffect)(()=>{if(!W){k&&l(null),aB.current=null;return}let a=f.find(a=>a.task_id===W||a.upload_id===W);if(a){k!==a&&l(a);return}aB.current!==W&&(aB.current=W,(0,H.apiFetch)(`/api/observe/data?taskId=${encodeURIComponent(W)}&includeEvaluations=0&skipAutoEvalReady=1`).then(a=>a.json()).then(a=>{Array.isArray(a)&&a.length>0&&l(a[0])}).catch(()=>{aB.current===W&&(aB.current=null)}))},[W,f]),(0,e.useEffect)(()=>{if(!a)return;j(!0);let b="subagent"===K?"&onlySubagents=1":"all"===K?"&includeSubagents=1":"",c="all"!==D?`&skill=${encodeURIComponent(D)}`:"",d=Y?`&query=${encodeURIComponent(Y)}`:"",e=ah.length?`&filters=${encodeURIComponent(JSON.stringify(ah))}`:"",f="all"!==F?`&bizTag=${encodeURIComponent(F)}`:"";(0,H.apiFetch)(`/api/observe/data?user=${encodeURIComponent(a)}&includeEvaluations=0&fields=light&includeTags=1&skipAutoEvalReady=1${b}${c}${d}${e}${f}`).then(a=>a.json()).then(a=>g(Array.isArray(a)?a:[])).catch(()=>g([])).finally(()=>j(!1))},[a,K,D,F,Y,ad]);let aC=(0,e.useMemo)(()=>{let a=Date.now(),b=bp[o]??1/0;return f.filter(c=>{let d,e;return!("all"!==A&&""!==A&&!(d=new Set,(e=c.agentName?.trim()||(0,aa.getPrimaryExecutionAgentName)(c))&&d.add(e),Array.isArray(c.agents)&&c.agents.forEach(a=>{let b=a?.trim();b&&d.add(b)}),Array.from(d)).includes(A)||b!==1/0&&a-("string"==typeof c.timestamp?Date.parse(c.timestamp):Number(c.timestamp))>b)&&("all"===y||c.framework===y)&&("all"===t||t===by(c))&&("all"===I||(c.agentOwnership??"user")===I)&&!0}).sort((a,b)=>{let c=0;switch(M){case"timestamp":c=("string"==typeof a.timestamp?Date.parse(a.timestamp):Number(a.timestamp))-("string"==typeof b.timestamp?Date.parse(b.timestamp):Number(b.timestamp));break;case"agent":c=(a.agent||"").localeCompare(b.agent||"");break;case"status":{let d={running:0,failed:1,success:2};c=d[by(a)]-d[by(b)];break}case"latency":c=bB(a.latency||0,a.framework)-bB(b.latency||0,b.framework);break;case"tokens":c=(a.tokens||0)-(b.tokens||0);break;case"cost":c=(a.cost||0)-(b.cost||0)}return"asc"===O?c:-c})},[f,o,y,t,A,I,M,O]);(0,e.useEffect)(()=>{1!==R&&S(1)},[o,y,t,A,D,F,I,Y,ad,M,O,T]);let aD=a=>{a===M?Q("asc"===O?"desc":"asc"):(N(a),Q("timestamp"===a||"tokens"===a?"desc":"asc"))},aE=(0,e.useMemo)(()=>{let a=aC.length,b=aC.filter(a=>"failed"===by(a)).length,c=a?aC.reduce((a,b)=>a+bB(b.latency||0,b.framework),0)/a:0,d=aC.reduce((a,b)=>a+(b.tool_call_error_count||0),0),e=aC.reduce((a,b)=>a+(b.tool_call_count||0),0);return{total:a,failedCount:b,avgLatency:c,errRate:e?Math.round(d/e*1e3)/10:0}},[aC]);aC.length;let aF=(0,e.useMemo)(()=>aC.slice((R-1)*T,R*T),[aC,R,T]),aG="all"!==I||"all"!==A||"all"!==D||"all"!==F||"all"!==t||"all"!==o||"all"!==y||"root"!==K||""!==Y||ah.length>0,aH=()=>{J("all"),B("all"),E("all"),G("all"),v("all"),s("all"),z("all"),L("root"),Z(null),ak([])},aI=(0,e.useMemo)(()=>{let a=new Set;return f.forEach(b=>b.framework&&a.add(b.framework)),Array.from(a).sort()},[f]),aJ=[{value:"all",label:c("nav.allOwnership")},{value:"user",label:c("nav.userAgent")},{value:"system",label:c("nav.systemAgent")}],aK=[{value:"all",label:c("common.all")},{value:"running",label:c("tracePage.statusRunning")},{value:"success",label:c("tracePage.statusSuccess")},{value:"failed",label:c("tracePage.statusFailed")}],aL=[{value:"all",label:c("common.allTime")},{value:"7d",label:c("nav.last7Days")},{value:"24h",label:c("topbar.last24h")},{value:"1h",label:c("nav.last1Hour")},{value:"30m",label:c("nav.last30Min")}],aM=[{value:"all",label:c("common.all")},...aI.map(a=>({value:a,label:a}))];return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(w.AppTopBar,{title:(0,b.jsx)(bn.Term,{id:"trace",label:c("nav.trace")}),actions:void 0,showDefaultActions:!1}),(0,b.jsx)(x.PageContainer,{children:k?(0,b.jsx)(bH,{execution:k,onBack:()=>aA(null)}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-3 mb-4",children:[(0,b.jsx)(bK,{label:(0,b.jsx)(bn.Term,{id:"trace",label:c("tracePage.statTotal")}),value:aE.total.toLocaleString()}),(0,b.jsx)(bK,{label:(0,b.jsx)(bn.Term,{id:"fault-item",label:c("tracePage.statFailed")}),value:String(aE.failedCount),accent:aE.failedCount>0?"error":void 0}),(0,b.jsx)(bK,{label:c("tracePage.statAvgLatency"),value:bA(aE.avgLatency)}),(0,b.jsx)(bK,{label:(0,b.jsx)(bn.Term,{id:"tool-error-rate",label:c("tracePage.statToolErrorRate"),align:"end"}),value:`${aE.errRate}%`})]}),a&&(0,b.jsx)("div",{className:"mb-3",children:(0,b.jsx)(P,{clauses:ah,onChange:ak,search:Y,onSearchChange:al,user:a})}),(0,b.jsxs)("div",{className:"mb-2 flex flex-wrap items-center gap-2",children:[(0,b.jsxs)(C.Button,{variant:"outline",size:"sm",className:"h-7 gap-1.5 text-xs",onClick:()=>ac(a=>!a),children:[(0,b.jsx)(q.SlidersHorizontal,{className:"size-3.5"}),ab?"zh"===d?"隐藏过滤":"Hide filters":"zh"===d?"过滤":"Show filters"]}),(0,b.jsx)(af,{orientation:"vertical",className:"h-5"}),(0,b.jsx)(ai.Select,{label:c("nav.filterAgentOwnership"),value:I,onChange:J,options:aJ,active:"all"!==I}),(0,b.jsx)(ai.Select,{label:c("tracePage.filterStatus"),value:t,onChange:v,options:aK,active:"all"!==t}),(0,b.jsx)(ai.Select,{label:c("tracePage.filterTime"),value:o,onChange:s,options:aL,active:"all"!==o}),(0,b.jsx)(ai.Select,{label:c("tracePage.filterFramework"),value:y,onChange:z,options:aM,active:"all"!==y}),(0,b.jsx)(ai.Select,{label:c("tracePage.filterBusinessTag"),value:F,onChange:G,options:ap,active:"all"!==F}),(0,b.jsx)(ai.Select,{label:"zh"===d?"范围":"Scope",value:K,onChange:L,options:[{value:"root",label:"zh"===d?"仅主 Agent":"Root only"},{value:"subagent",label:"zh"===d?"仅子 Agent":"Sub-agents only"},{value:"all",label:"zh"===d?"主 + 子 Agent":"Root + sub-agents"}],active:"root"!==K}),aG&&(0,b.jsxs)(C.Button,{variant:"ghost",size:"sm",onClick:aH,className:"ml-auto h-7 gap-1 text-xs text-foreground-muted",children:[(0,b.jsx)(i.X,{className:"size-3"}),c("tracePage.resetFilters")]})]}),(0,b.jsxs)("div",{className:"flex-1 min-h-0 flex gap-3",children:[ab&&(0,b.jsxs)("aside",{className:"w-60 shrink-0 overflow-auto rounded-md border border-card-border bg-card",children:[(0,b.jsx)("div",{className:"px-3 py-2 border-b border-card-border",children:(0,b.jsx)("span",{className:"text-sm font-semibold",children:"zh"===d?"过滤器":"Filters"})}),a&&(0,b.jsx)("div",{className:"p-3",children:(0,b.jsx)(U,{clauses:ah,onChange:ak,user:a})})]}),(0,b.jsxs)("div",{className:"flex-1 min-w-0 flex flex-col",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,b.jsxs)("h2",{className:"text-sm font-semibold text-foreground",children:[c("tracePage.listTitle"),(0,b.jsx)("span",{className:"ml-2 text-foreground-muted font-normal tabular-nums",children:aC.length})]}),(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(au||ay)&&(0,b.jsxs)(C.Button,{variant:"ghost",size:"sm",onClick:()=>{at(),ax()},className:"h-7 px-2 text-xs text-foreground-muted gap-1",children:[(0,b.jsx)(p.RotateCcw,{className:"size-3","aria-hidden":!0}),c("tracePage.resetColumns")]}),(0,b.jsxs)(aX.DropdownMenu,{children:[(0,b.jsx)(aX.DropdownMenuTrigger,{asChild:!0,children:(0,b.jsxs)(C.Button,{variant:"outline",size:"sm",className:"h-7 px-2 text-xs gap-1.5",children:[(0,b.jsx)(r,{className:"size-3.5","aria-hidden":!0}),c("tracePage.columnSettings")]})}),(0,b.jsxs)(aX.DropdownMenuContent,{align:"end",className:"w-44",children:[(0,b.jsx)(aX.DropdownMenuLabel,{children:c("tracePage.columnSettings")}),bs.map(a=>(0,b.jsx)(aX.DropdownMenuCheckboxItem,{checked:av[a],onCheckedChange:b=>aw(a,!0===b),onSelect:a=>a.preventDefault(),children:aq[a]},a)),(0,b.jsx)(aX.DropdownMenuSeparator,{}),(0,b.jsxs)(aX.DropdownMenuItem,{onSelect:()=>{at(),ax()},children:[(0,b.jsx)(p.RotateCcw,{className:"size-3.5","aria-hidden":!0}),c("tracePage.resetColumns")]})]})]}),(0,b.jsx)("span",{className:"text-xs text-foreground-muted",children:c("tracePage.listHint")})]})]}),(0,b.jsx)(x.PageContent,{className:"flex flex-col",children:(0,b.jsx)("div",{className:"flex-1 min-h-0 rounded-md border border-card-border bg-card overflow-auto",children:h?(0,b.jsx)("div",{className:"p-4 space-y-2",children:[0,1,2,3,4].map(a=>(0,b.jsx)(ag,{className:"h-8 w-full"},a))}):0===aF.length?(0,b.jsx)(aZ.EmptyState,{title:c("tracePage.emptyTitle"),description:aG?c("tracePage.emptyDescription"):void 0,action:aG?(0,b.jsx)(C.Button,{variant:"outline",size:"sm",onClick:aH,children:c("tracePage.resetFilters")}):void 0}):(0,b.jsxs)("table",{className:"w-full table-fixed text-sm",style:{minWidth:az},children:[(0,b.jsxs)("colgroup",{children:[av.traceId&&(0,b.jsx)("col",{style:{width:ar.traceId}}),av.agent&&(0,b.jsx)("col",{style:{width:ar.agent}}),av.status&&(0,b.jsx)("col",{style:{width:ar.status}}),av.userTags&&(0,b.jsx)("col",{style:{width:ar.userTags}}),av.systemTags&&(0,b.jsx)("col",{style:{width:ar.systemTags}}),av.task&&(0,b.jsx)("col",{}),av.tokens&&(0,b.jsx)("col",{style:{width:ar.tokens}}),av.time&&(0,b.jsx)("col",{style:{width:ar.time}}),av.actions&&(0,b.jsx)("col",{style:{width:ar.actions}})]}),(0,b.jsx)("thead",{className:"sticky top-0 z-10",children:(0,b.jsxs)("tr",{className:"bg-background-secondary text-left",children:[av.traceId&&(0,b.jsx)(bL,{colKey:"traceId",currentWidth:ar.traceId,onResize:as,children:(0,b.jsx)(bn.Term,{id:"trace",label:c("tracePage.columnTraceId")})}),av.agent&&(0,b.jsx)(bM,{sortKey:"agent",currentKey:M,dir:O,onSort:aD,colKey:"agent",currentWidth:ar.agent,onResize:as,children:(0,b.jsx)(bn.Term,{id:"agent",label:c("tracePage.columnAgent")})}),av.status&&(0,b.jsx)(bM,{sortKey:"status",currentKey:M,dir:O,onSort:aD,colKey:"status",currentWidth:ar.status,onResize:as,children:(0,b.jsx)(bn.Term,{id:"chain-status",label:c("tracePage.columnStatus")})}),av.userTags&&(0,b.jsx)(bL,{colKey:"userTags",currentWidth:ar.userTags,onResize:as,children:c("tracePage.columnUserTags")}),av.systemTags&&(0,b.jsx)(bL,{colKey:"systemTags",currentWidth:ar.systemTags,onResize:as,children:c("tracePage.columnSystemTags")}),av.task&&(0,b.jsx)(bL,{children:c("tracePage.columnTask")}),av.tokens&&(0,b.jsx)(bM,{sortKey:"tokens",currentKey:M,dir:O,onSort:aD,colKey:"tokens",currentWidth:ar.tokens,onResize:as,children:(0,b.jsx)(bn.Term,{id:"tokens",label:c("tracePage.columnTokens")})}),av.time&&(0,b.jsx)(bM,{sortKey:"timestamp",currentKey:M,dir:O,onSort:aD,colKey:"time",currentWidth:ar.time,onResize:as,children:c("tracePage.columnTime")}),av.actions&&(0,b.jsx)(bL,{align:"right",colKey:"actions",currentWidth:ar.actions,onResize:as,children:c("tracePage.columnActions")})]})}),(0,b.jsx)("tbody",{children:aF.map((a,c)=>(0,b.jsx)(bN,{execution:a,columnVisibility:av,availableTags:m,onTagsChanged:an,onTagCreated:ao,onClick:()=>aA(a)},(a.task_id||a.upload_id||c)+""))})]})})}),aC.length>0&&(0,b.jsx)(x.PageFooter,{className:"border-0 mt-3 pt-0 shrink-0",children:(0,b.jsx)(aj.Pagination,{className:"w-full",page:R,pageSize:T,total:aC.length,onPageChange:S,onPageSizeChange:V,pageSizes:bq,pageSizeLabel:a=>c("tracePage.pageSize",{n:String(a)}),summary:(a,b,d)=>c("tracePage.pageSummary",{start:String(a),end:String(b),total:String(d)})})})]})]})]})})]})}function bH({execution:a,onBack:i}){let{t:j,locale:k}=(0,_.useLocale)(),l=(0,d.useRouter)(),m=(0,d.useSearchParams)(),[n,p]=(0,e.useState)(null),[q,r]=(0,e.useState)(!1),s=a.task_id||a.upload_id||"",t=!!a.is_subagent,u=a.parent_execution_id||null,w=a.subagent_type||null,x=a.subagent_name||null,z=(0,e.useCallback)(a=>{if(!a)return;let b=new URLSearchParams(m?.toString()??"");b.set("taskId",a),l.push(`${window.location.pathname}?${b.toString()}`,{scroll:!1})},[l,m]),A=(0,e.useCallback)(async()=>{if(u)try{let a=await (0,H.apiFetch)(`/api/observe/data?executionId=${encodeURIComponent(u)}&includeEvaluations=0`);if(!a.ok)return;let b=await a.json(),c=Array.isArray(b)?b[0]:b?.data?.[0]||b,d=c?.task_id||c?.upload_id;d&&z(d)}catch{}},[u,z]),B=by(a),[D,F]=(0,e.useState)("running"===B),[G,I]=(0,e.useState)(5),[J,K]=(0,e.useState)(0),L=(0,e.useRef)(null);(0,e.useEffect)(()=>{L.current=n},[n]);let M=(0,e.useCallback)((a=!1)=>{if(!s)return;let b=!L.current;!a&&b&&r(!0),(0,H.apiFetch)(`/api/observe/session?taskId=${encodeURIComponent(s)}`).then(a=>a.ok?a.json():{error:"Fetch failed"}).then(a=>{p(a),K(0)}).catch(()=>{!a&&b&&p({error:"Network error"})}).finally(()=>{!a&&b&&r(!1)})},[s]);(0,e.useEffect)(()=>{M(!1)},[M]),(0,e.useEffect)(()=>{if(!D||"running"!==B)return;let a=setInterval(()=>M(!0),1e3*G);return()=>clearInterval(a)},[D,G,M,B]),(0,e.useEffect)(()=>{let a=setInterval(()=>K(a=>a+1),1e3);return()=>clearInterval(a)},[]);let{framework:N,latency:O,tokens:P,cost:Q}=a,R="running"===B,S=!q&&!!n&&!n.error;return(0,b.jsxs)("div",{className:"flex flex-col h-full min-h-0",children:[(0,b.jsxs)("div",{className:"rounded-md border border-border bg-card p-3 mb-3 flex flex-wrap items-center gap-2",children:[(0,b.jsxs)(C.Button,{variant:"ghost",size:"sm",onClick:i,className:"text-foreground-muted h-7 px-2",children:[(0,b.jsx)(f.ArrowLeft,{className:"size-3.5","aria-hidden":!0}),j("tracePage.backToList")]}),t&&u&&(0,b.jsxs)(C.Button,{variant:"ghost",size:"sm",onClick:A,className:"text-foreground-muted h-7 px-2",title:"zh"===k?"返回父 Agent 执行":"Back to parent agent execution",children:[(0,b.jsx)(f.ArrowLeft,{className:"size-3.5","aria-hidden":!0}),"zh"===k?"父执行":"Parent"]}),(0,b.jsx)(af,{orientation:"vertical",className:"h-5"}),t&&(0,b.jsxs)("span",{title:x||"",className:"text-[10px] font-bold tracking-wider px-1.5 py-0.5 rounded-sm bg-primary/10 text-primary border border-primary/30 shrink-0",children:["SUB-AGENT",w?` \xb7 ${w}`:""]}),(0,b.jsx)(a_,{value:s,head:8,tail:6}),(0,b.jsx)(aY.StatusBadge,{status:"running"===B?"running":"failed"===B?"error":"success",label:j("running"===B?"tracePage.statusRunning":"failed"===B?"tracePage.statusFailed":"tracePage.statusNormal")}),N&&(0,b.jsx)(bU,{variant:"framework",icon:o.Terminal,children:bz(N)}),"number"==typeof P&&P>0||"number"==typeof O&&O>0||"number"==typeof Q&&Q>0?(0,b.jsx)(af,{orientation:"vertical",className:"h-5"}):null,"number"==typeof P&&P>0&&(0,b.jsx)(bJ,{label:(0,b.jsx)(bn.Term,{id:"tokens",label:j("tracePage.metricTokens")}),value:P.toLocaleString()}),"number"==typeof O&&O>0&&(0,b.jsx)(bJ,{label:j("tracePage.metricDuration"),value:bA(bB(O,N))}),"number"==typeof Q&&Q>0&&(0,b.jsx)(bJ,{label:j("tracePage.metricCost"),value:`$${Q.toFixed(4)}`}),(0,b.jsxs)("div",{className:"ml-auto flex flex-wrap items-center gap-2",children:[(0,b.jsx)(ah.TooltipProvider,{delayDuration:250,children:(0,b.jsxs)(ah.Tooltip,{children:[(0,b.jsx)(ah.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)(C.Button,{variant:D&&R?"default":"outline",size:"sm",disabled:!R,onClick:()=>R&&F(a=>!a),"aria-pressed":D&&R,className:"h-7 px-2.5 text-xs",children:[(0,b.jsx)(h.RefreshCw,{className:(0,E.cn)("size-3.5",D&&R&&"animate-spin")}),j(D&&R?"tracePage.autoRefresh":"tracePage.paused")]})}),(0,b.jsx)(ah.TooltipContent,{side:"bottom",className:"text-xs",children:j(R?"tracePage.autoRefresh":"tracePage.autoRefreshUnavailable")})]})}),D&&R&&(0,b.jsx)(ai.Select,{value:String(G),onChange:a=>I(Number(a)),options:br.map(a=>({value:String(a),label:`${a}s`})),"aria-label":j("tracePage.refreshInterval")}),(0,b.jsx)("span",{className:"text-xs text-foreground-muted whitespace-nowrap tabular-nums min-w-[36px]",children:0===J?j("tracePage.justNow"):j("tracePage.secondsAgo",{s:String(J)})}),(0,b.jsx)(C.Button,{variant:"outline",size:"icon",onClick:()=>M(!0),"aria-label":j("tracePage.refreshNow"),className:"size-7",children:(0,b.jsx)(h.RefreshCw,{className:"size-3.5"})}),(0,b.jsx)(af,{orientation:"vertical",className:"h-5"}),(0,b.jsx)(C.Button,{variant:"default",size:"sm",asChild:!0,className:"h-7 text-xs",children:(0,b.jsx)(c.default,{href:`${bo}/fault?taskId=${s}`,children:j("tracePage.diagnosis")})}),(0,b.jsxs)(C.Button,{variant:"outline",size:"sm",onClick:()=>{if(n&&!n.error)try{let a=function(a){if(!a)return a;let b=JSON.parse(JSON.stringify(a));return b.startTime&&(b.startTime=bC(b.startTime)),Array.isArray(b.interactions)&&(b.interactions=b.interactions.map(a=>{let b={...a};return b.timestamp&&(b.timestamp=bC(b.timestamp)),b.message?.timestamp&&(b.message.timestamp=bC(b.message.timestamp)),b.timeInfo?.created&&(b.timeInfo.created=bC(b.timeInfo.created)),b})),b}(n),b=new Blob([JSON.stringify(a,null,2)],{type:"application/json;charset=utf-8"}),c=URL.createObjectURL(b),d=document.createElement("a");d.href=c,d.download=`trace-${s.replace(/[\\/:*?"<>|]+/g,"_").replace(/\s+/g,"_").slice(0,120)||"trace"}-session.json`,document.body.appendChild(d),d.click(),d.remove(),URL.revokeObjectURL(c),v.toast.success("zh"===k?"JSON 已开始下载":"JSON download started")}catch(a){console.error("[trace] download session json failed:",a),v.toast.error("zh"===k?"下载 JSON 失败":"Failed to download JSON")}},disabled:!S,title:S?"zh"===k?"下载会话数据(原始 JSON)":"Download session data raw JSON":"zh"===k?"会话数据加载后可下载":"Download available after session data loads",className:"h-7 text-xs",children:[(0,b.jsx)(g.Download,{className:"size-3.5","aria-hidden":!0}),"zh"===k?"保存trace":"Save trace"]})]})]}),"failed"===B&&a.failures&&a.failures.length>0&&(0,b.jsx)(bI,{failures:a.failures}),(0,b.jsx)("h2",{className:"text-sm font-semibold text-foreground mb-2",children:j("tracePage.executionTrace")}),(0,b.jsx)("div",{className:"min-h-[200px] flex-1 min-h-0",children:q?(0,b.jsxs)("div",{className:"rounded-md border border-card-border bg-card p-4 space-y-2",children:[(0,b.jsx)(ag,{className:"h-6 w-1/2"}),(0,b.jsx)(ag,{className:"h-6 w-3/4"}),(0,b.jsx)(ag,{className:"h-6 w-2/3"}),(0,b.jsx)(ag,{className:"h-6 w-1/2"})]}):n?.error?(0,b.jsx)("div",{className:"rounded-md border border-error-border bg-error-subtle text-error p-4 text-sm",role:"alert",children:n.error}):n?.interactions?.length>0?(0,b.jsx)(y.default,{interactions:n.interactions,onSubagentNavigate:z,rootExecutionId:a.upload_id||a.task_id}):(0,b.jsx)("div",{className:"rounded-md border border-card-border bg-card",children:(0,b.jsx)(aZ.EmptyState,{title:j("tracePage.noTrace")})})})]})}function bI({failures:a}){let{t:c}=(0,_.useLocale)();return(0,b.jsxs)("div",{className:"mb-3",children:[(0,b.jsx)("h3",{className:"text-sm font-semibold text-foreground mb-2",children:c("tracePage.failureDetails")}),(0,b.jsx)("div",{className:"rounded-md border-l-4 border-l-error border border-card-border bg-error-subtle/30 overflow-hidden",children:a.map((d,e)=>(0,b.jsxs)("div",{className:(0,E.cn)("p-3 grid gap-1.5",e<a.length-1&&"border-b border-card-border"),children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 flex-wrap",children:[(0,b.jsxs)("span",{className:"text-xs font-semibold text-error inline-flex items-center gap-1",children:[(0,b.jsx)(j.XCircle,{className:"size-3.5","aria-hidden":!0}),d.failure_type||c("tracePage.unknownError")]}),d.attribution&&(0,b.jsx)("span",{className:"inline-flex items-center rounded-sm border border-border bg-background-secondary text-foreground-muted px-1.5 py-0 text-xs font-medium uppercase tracking-wide",children:d.attribution})]}),d.description&&(0,b.jsx)("p",{className:"text-sm text-foreground",children:d.description}),d.context&&(0,b.jsxs)("p",{className:"text-xs text-foreground-muted",children:[(0,b.jsx)("span",{className:"font-medium",children:c("tracePage.contextLabel")}),d.context]}),d.recovery&&(0,b.jsxs)("p",{className:"text-xs text-success",children:[(0,b.jsx)("span",{className:"font-medium",children:c("tracePage.recoveryLabel")}),d.recovery]})]},e))})]})}function bJ({label:a,value:c}){return(0,b.jsxs)("span",{className:"inline-flex items-baseline gap-1 text-xs",children:[(0,b.jsx)("span",{className:"text-foreground-muted",children:a}),(0,b.jsx)("span",{className:"font-semibold text-foreground tabular-nums",children:c})]})}function bK({label:a,value:c,accent:d}){return(0,b.jsxs)("div",{className:"rounded-md border border-card-border bg-card p-3",children:[(0,b.jsx)("div",{className:"text-xs text-foreground-muted",children:a}),(0,b.jsx)("div",{className:(0,E.cn)("mt-1 text-xl font-semibold tabular-nums","error"===d?"text-error":"text-foreground"),children:c})]})}function bL({children:a,align:c,className:d,colKey:e,currentWidth:f,onResize:g}){let h=!!(e&&g&&null!=f);return(0,b.jsxs)("th",{className:(0,E.cn)("relative px-3 py-2 text-xs font-medium text-foreground-muted border-b border-border whitespace-nowrap","right"===c&&"text-right","center"===c&&"text-center",d),children:[a,h&&(0,b.jsx)(bE,{colKey:e,currentWidth:f,onResize:g})]})}function bM({children:a,sortKey:c,currentKey:d,dir:e,onSort:f,colKey:g,currentWidth:h,onResize:i}){let j=c===d,k=!!(g&&i&&null!=h);return(0,b.jsxs)("th",{scope:"col",tabIndex:0,role:"columnheader","aria-sort":j?"asc"===e?"ascending":"descending":"none",onClick:()=>f(c),onKeyDown:a=>{("Enter"===a.key||" "===a.key)&&(a.preventDefault(),f(c))},className:(0,E.cn)("relative px-3 py-2 text-xs font-medium border-b border-border whitespace-nowrap cursor-pointer select-none","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",j?"text-primary":"text-foreground-muted"),children:[(0,b.jsxs)("span",{className:"inline-flex items-center gap-1",children:[a,(0,b.jsx)("span",{className:(0,E.cn)("text-[10px]",j?"opacity-100":"opacity-40"),children:j?"asc"===e?"↑":"↓":"↕"})]}),k&&(0,b.jsx)(bE,{colKey:g,currentWidth:h,onResize:i})]})}function bN({execution:a,columnVisibility:d,availableTags:e,onTagsChanged:f,onTagCreated:g,onClick:h}){let i,j,{t:m}=(0,_.useLocale)(),p=a.task_id||a.upload_id||"",q=by(a),r=(i=Array.isArray(a.invoked_skills)?a.invoked_skills:Array.isArray(a.invokedSkills)?a.invokedSkills:[],j=new Set,i.forEach(a=>{let b=a?.name?.trim();b&&j.add(b)}),Array.from(j)).length,s=new Set((a.agents??[]).filter(Boolean)).size,t=m("running"===q?"tracePage.statusRunning":"failed"===q?"tracePage.statusFailed":"tracePage.statusSuccess");return(0,b.jsxs)("tr",{onClick:h,onKeyDown:a=>{"Enter"===a.key&&(a.preventDefault(),h())},tabIndex:0,role:"button","aria-label":`${m("tracePage.columnTraceId")} ${p}`,className:"border-b border-border hover:bg-background-secondary focus-visible:outline-none focus-visible:bg-background-secondary focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset cursor-pointer transition-colors",children:[d.traceId&&(0,b.jsx)(bV,{children:(0,b.jsx)(a_,{value:p,head:6,tail:4})}),d.agent&&(0,b.jsx)(bV,{children:(0,b.jsx)(a0,{className:"text-foreground text-sm",children:a.agent||(a.agents&&a.agents.length>0?a.agents[0]:null)||a.framework||"-"})}),d.status&&(0,b.jsx)(bV,{children:(0,b.jsx)(aY.StatusBadge,{status:"running"===q?"running":"failed"===q?"error":"success",label:t})}),d.userTags&&(0,b.jsx)(bV,{children:(0,b.jsx)(bR,{execution:a,availableTags:e,onTagsChanged:f,onTagCreated:g})}),d.systemTags&&(0,b.jsx)(bV,{children:(0,b.jsxs)("div",{className:"flex gap-1 flex-wrap",children:[a.is_subagent?(0,b.jsx)("span",{title:a.subagent_name||a.subagent_type||"",className:"text-[9px] font-bold tracking-wider px-1.5 py-0.5 rounded-sm bg-primary/10 text-primary border border-primary/30",children:"SUB"}):s>1&&(0,b.jsx)(bU,{variant:"agent",icon:l.Users,children:"Multi-Agent"}),r>0&&(0,b.jsx)(bU,{variant:"skill",icon:n,children:"Skills"}),a.framework&&(0,b.jsx)(bU,{variant:"framework",icon:o.Terminal,children:bz(a.framework)})]})}),d.task&&(0,b.jsx)(bV,{children:(0,b.jsx)(a0,{className:"text-foreground text-sm",children:a.query||m("tracePage.noQuery")})}),d.tokens&&(0,b.jsx)(bV,{children:(0,b.jsx)("span",{className:"text-xs text-foreground-secondary font-mono tabular-nums whitespace-nowrap",children:null!=a.tokens?a.tokens.toLocaleString():"-"})}),d.time&&(0,b.jsx)(bV,{children:(0,b.jsx)(bm,{value:a.timestamp,className:"text-xs text-foreground-secondary font-mono whitespace-nowrap"})}),d.actions&&(0,b.jsx)(bV,{align:"right",children:(0,b.jsxs)("div",{className:"inline-flex gap-1 group",onClick:a=>a.stopPropagation(),children:[(0,b.jsx)(C.Button,{variant:"ghost",size:"sm",onClick:h,className:"h-7 px-2 text-xs",children:m("tracePage.rowDetail")}),(0,b.jsx)(C.Button,{variant:"ghost",size:"sm",asChild:!0,className:"h-7 px-2 text-xs",children:(0,b.jsx)(c.default,{href:`${bo}/fault?taskId=${p}`,children:m("tracePage.rowAnalysis")})}),(0,b.jsx)(C.Button,{variant:"ghost",size:"sm",asChild:!0,className:"h-7 px-2 text-xs",children:(0,b.jsxs)(c.default,{href:`${bo}/eval/trajectory/${p}`,children:[(0,b.jsx)(k.Wrench,{className:"size-3"}),m("tracePage.rowEval")]})})]})})]})}async function bO(a){try{let b=await a.json();return String(b?.error||a.statusText||"Request failed")}catch{return a.statusText||"Request failed"}}function bP(a,b){return"version"===a?"zh"===b?"版本":"Version":"zh"===b?"业务":"Business"}function bQ({tag:a,removable:c}){return(0,b.jsxs)("span",{className:"inline-flex max-w-full items-center gap-1 rounded-sm border border-border bg-background px-1.5 py-0.5 text-xs text-foreground-secondary leading-none",children:[(0,b.jsx)("span",{className:"size-2 rounded-full shrink-0",style:{backgroundColor:a.color},"aria-hidden":!0}),(0,b.jsx)("span",{className:"truncate",children:a.name}),c&&(0,b.jsx)(i.X,{className:"size-3 shrink-0 text-foreground-muted","aria-hidden":!0})]})}function bR({execution:a,availableTags:c,onTagsChanged:d,onTagCreated:f,mode:g="cell"}){let{user:h}=(0,$.useAuth)(),{t:j,locale:k}=(0,_.useLocale)(),l=a.upload_id||a.task_id||"",m=a.userTags??[],n=new Set(m.map(a=>a.id)),[o,p]=(0,e.useState)(!1),[q,r]=(0,e.useState)(null),[t,u]=(0,e.useState)(!1),[w,x]=(0,e.useState)(""),[y,z]=(0,e.useState)("business"),[A,D]=(0,e.useState)("#6366f1"),E=(0,e.useCallback)(async a=>{if(!a.ok)throw Error(await bO(a));let b=await a.json(),c=Array.isArray(b?.tags)?b.tags:[];return d(l,c),c},[l,d]),F=(0,e.useCallback)(async a=>{if(h&&l){r(a.id);try{let b=n.has(a.id)?await (0,H.apiFetch)(`/api/observe/executions/${encodeURIComponent(l)}/tags?user=${encodeURIComponent(h)}&tagId=${encodeURIComponent(a.id)}`,{method:"DELETE"}):await (0,H.apiFetch)(`/api/observe/executions/${encodeURIComponent(l)}/tags`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({user:h,tagIds:[a.id]})});await E(b)}catch(a){v.toast.error(a instanceof Error?a.message:j("tracePage.tagSaveFailed"))}finally{r(null)}}},[E,l,n,j,h]),G=(0,e.useCallback)(async()=>{if(h&&l&&w.trim()){u(!0);try{let a=await (0,H.apiFetch)("/api/tags",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({user:h,name:w.trim(),kind:y,color:A})});if(!a.ok)throw Error(await bO(a));let b=await a.json();f(b);let c=await (0,H.apiFetch)(`/api/observe/executions/${encodeURIComponent(l)}/tags`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({user:h,tagIds:[b.id]})});await E(c),x(""),z("business"),D("#6366f1")}catch(a){v.toast.error(a instanceof Error?a.message:j("tracePage.tagCreateFailed"))}finally{u(!1)}}},[E,l,A,y,w,f,j,h]),I=c.filter(a=>"version"===a.kind),J=c.filter(a=>"business"===a.kind),K="button"===g?(0,b.jsxs)(C.Button,{type:"button",variant:"outline",size:"sm",className:"h-7 gap-1.5 px-2 text-xs",title:j("tracePage.editTags"),onClick:a=>a.stopPropagation(),children:[(0,b.jsx)(s.Plus,{className:"size-3.5","aria-hidden":!0}),j("tracePage.editTags")]}):(0,b.jsxs)("button",{type:"button",className:"flex min-h-8 w-full min-w-0 items-center gap-2 rounded-md border border-primary-subtle bg-primary-subtle px-2 py-1 text-left hover:border-primary hover:bg-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",onClick:a=>a.stopPropagation(),children:[(0,b.jsx)("span",{className:"flex min-w-0 flex-1 flex-wrap gap-1",children:m.map(a=>(0,b.jsx)(bQ,{tag:a},a.id))}),(0,b.jsxs)("span",{className:"inline-flex h-6 shrink-0 items-center gap-1 rounded-sm bg-card px-1.5 text-xs font-medium text-primary shadow-sm",children:[(0,b.jsx)(s.Plus,{className:"size-3.5","aria-hidden":!0}),j("tracePage.createTag")]})]});return(0,b.jsxs)(aU,{open:o,onOpenChange:p,children:[(0,b.jsx)(aV,{asChild:!0,children:K}),(0,b.jsx)(aW,{align:"start",className:"w-80 p-3",onClick:a=>a.stopPropagation(),children:(0,b.jsxs)("div",{className:"space-y-3",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,b.jsx)("span",{className:"text-sm font-semibold text-foreground",children:j("tracePage.editTags")}),(0,b.jsxs)("div",{className:"flex items-center gap-1",children:[(0,b.jsx)("span",{className:"text-xs text-foreground-muted tabular-nums",children:m.length}),(0,b.jsx)(C.Button,{type:"button",variant:"ghost",size:"icon",className:"size-7","aria-label":"zh"===k?"关闭":"Close",onClick:()=>p(!1),children:(0,b.jsx)(i.X,{className:"size-3.5","aria-hidden":!0})})]})]}),(0,b.jsx)(bS,{title:bP("version",k),tags:I,selectedIds:n,savingId:q,onToggle:F}),(0,b.jsx)(bS,{title:bP("business",k),tags:J,selectedIds:n,savingId:q,onToggle:F}),(0,b.jsxs)("div",{className:"border-t border-border pt-3 space-y-2",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsxs)("select",{value:y,onChange:a=>z(a.target.value),className:"h-8 rounded-md border border-input bg-background px-2 text-xs outline-none focus:ring-1 focus:ring-ring",children:[(0,b.jsx)("option",{value:"business",children:bP("business",k)}),(0,b.jsx)("option",{value:"version",children:bP("version",k)})]}),(0,b.jsx)("input",{type:"color",value:A,onChange:a=>D(a.target.value),className:"size-8 rounded border border-input bg-background p-0.5","aria-label":j("tracePage.tagColor")})]}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(B.Input,{value:w,onChange:a=>x(a.target.value),onKeyDown:a=>{"Enter"===a.key&&(a.preventDefault(),G())},placeholder:j("tracePage.newTagPlaceholder"),className:"h-8 text-sm"}),(0,b.jsxs)(C.Button,{type:"button",size:"sm",className:"h-8 px-2",disabled:t||!w.trim(),onClick:()=>void G(),children:[(0,b.jsx)(s.Plus,{className:"size-3.5","aria-hidden":!0}),j("tracePage.createTag")]})]})]})]})})]})}function bS({title:a,tags:c,selectedIds:d,savingId:e,onToggle:f}){let{t:g}=(0,_.useLocale)();return(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("div",{className:"text-xs font-medium text-foreground-muted",children:a}),0===c.length?(0,b.jsx)("p",{className:"text-xs text-foreground-muted",children:g("tracePage.noTagsAvailable")}):(0,b.jsx)("div",{className:"max-h-36 overflow-auto space-y-1 pr-1",children:c.map(a=>{let c=d.has(a.id);return(0,b.jsxs)("button",{type:"button",disabled:e===a.id,onClick:()=>f(a),className:(0,E.cn)("flex h-8 w-full items-center gap-2 rounded-sm px-2 text-left text-sm hover:bg-background-secondary disabled:opacity-60",c&&"bg-primary-subtle text-primary"),children:[(0,b.jsx)("span",{className:"size-2 rounded-full shrink-0",style:{backgroundColor:a.color},"aria-hidden":!0}),(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate",children:a.name}),c&&(0,b.jsx)(t.Check,{className:"size-3.5 shrink-0","aria-hidden":!0})]},a.id)})})]})}let bT={agent:"bg-primary-subtle text-primary border-primary-border",skill:"bg-primary-subtle text-primary border-primary-border",framework:"bg-background-secondary text-foreground-secondary border-border"};function bU({children:a,variant:c="framework",icon:d}){return(0,b.jsxs)("span",{className:(0,E.cn)("inline-flex items-center gap-1 rounded-sm border px-1.5 py-0.5 text-xs font-medium whitespace-nowrap leading-none",bT[c]),children:[d&&(0,b.jsx)(d,{className:"size-3 shrink-0","aria-hidden":!0}),a]})}function bV({children:a,align:c,className:d}){return(0,b.jsx)("td",{className:(0,E.cn)("px-3 py-2 text-sm text-foreground","right"===c&&"text-right","center"===c&&"text-center",d),children:a})}a.s(["default",()=>bF],536942)}];
|
|
1
|
+
module.exports=[536942,a=>{"use strict";var b=a.i(187924),c=a.i(238246),d=a.i(50944),e=a.i(572131),f=a.i(219107),g=a.i(536670),h=a.i(519783),i=a.i(474215),j=a.i(211134),k=a.i(924613),l=a.i(285888),m=a.i(164831);let n=(0,m.default)("layers",[["path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z",key:"zw3jo"}],["path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12",key:"1wduqc"}],["path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17",key:"kqbvx6"}]]);var o=a.i(357307),p=a.i(533838),q=a.i(911715);let r=(0,m.default)("columns-3",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"M15 3v18",key:"14nvp0"}]]);var s=a.i(403512),t=a.i(752562),u=a.i(417949),v=a.i(823292),w=a.i(729936),x=a.i(232455),y=a.i(857195),z=a.i(707963),A=a.i(233540),B=a.i(866718),C=a.i(699570),D=a.i(400187),E=a.i(368114);let F=(0,D.cva)("inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function G({className:a,variant:c,...d}){return(0,b.jsx)("div",{className:(0,E.cn)(F({variant:c}),a),...d})}var H=a.i(575110);let I=[{column:"query",type:"string",label:"查询内容",description:"用户输入 / 问题",syncMode:"textSearch",nullable:!0},{column:"finalResult",type:"string",label:"输出内容",description:"trace 最终输出",syncMode:"textSearch",nullable:!0},{column:"agentName",type:"string",label:"Agent 名",description:"主 Agent 名称",syncMode:"textSearch",nullable:!0},{column:"subagentName",type:"string",label:"子 Agent 名",description:"子 Agent 显示名",syncMode:"textSearch",nullable:!0},{column:"model",type:"string",label:"模型",description:"LLM 模型名",syncMode:"textSearch",nullable:!0},{column:"label",type:"string",label:"标注",description:"人工标注",syncMode:"textSearch",nullable:!0},{column:"framework",type:"stringOptions",label:"框架",description:"采集框架 / 平台",syncMode:"exactOption",nullable:!0},{column:"subagentType",type:"stringOptions",label:"子 Agent 类型",description:"kuafu / general …",syncMode:"exactOption",nullable:!0},{column:"latency",type:"number",label:"耗时",description:"执行时长(秒)",unit:"s",nullable:!0},{column:"tokens",type:"number",label:"Tokens",description:"总 token 数",nullable:!0},{column:"inputTokens",type:"number",label:"输入 Tokens",description:"输入 token 数",nullable:!0},{column:"outputTokens",type:"number",label:"输出 Tokens",description:"输出 token 数",nullable:!0},{column:"cost",type:"number",label:"成本",description:"估算成本($)",unit:"$",nullable:!0},{column:"toolCallCount",type:"number",label:"工具调用数",description:"工具调用次数",nullable:!0},{column:"toolCallErrorCount",type:"number",label:"工具错误数",description:"工具调用失败次数",nullable:!0},{column:"answerScore",type:"number",label:"答案分",description:"答案得分(0–1)",nullable:!0},{column:"skillScore",type:"number",label:"Skill 分",description:"Skill 得分(0–1)",nullable:!0},{column:"skillTriggerRate",type:"number",label:"Skill 触发率",description:"触发率(0–1)",nullable:!0},{column:"timestamp",type:"datetime",label:"时间",description:"trace 起始时间"},{column:"isAnswerCorrect",type:"boolean",label:"答案正确",description:"评测:答案是否正确",nullable:!0},{column:"isSubagent",type:"boolean",label:"是子 Agent",description:"是否子 Agent 执行"},{column:"agents",type:"arrayOptions",label:"Agent(多选)",description:"trace 涉及的 agent",field:"observedAgents",source:"observedAgents",syncMode:"arrayOption",nullable:!0},{column:"skill",type:"arrayOptions",label:"Skill",description:"调用的 skill",source:"executionSkill",syncMode:"arrayOption"},{column:"status",type:"stringOptions",label:"状态",description:"running / success / failed",source:"computed",syncMode:"exactOption"},{column:"ownership",type:"stringOptions",label:"归属",description:"user / system",source:"computed",syncMode:"exactOption"}],J=new Map(I.map(a=>[a.column,a])),K={string:["=","contains","does not contain","starts with","ends with"],number:["=",">","<",">=","<="],datetime:[">","<",">=","<="],stringOptions:["any of","none of"],arrayOptions:["any of","none of","all of"],boolean:["="]},L=["is null","is not null"],M=I.filter(a=>"computed"!==a.source&&"executionSkill"!==a.source&&"query"!==a.column&&"finalResult"!==a.column),N=new Set(["framework","agentName","model","subagentType"]);function O(a){return({"=":"=",contains:"包含","does not contain":"不包含","starts with":"前缀","ends with":"后缀",">":">","<":"<",">=":"≥","<=":"≤","any of":"任一","none of":"非","all of":"全部","is null":"为空","is not null":"非空"})[a]??a}function P({clauses:a,onChange:c,search:d,onSearchChange:f,user:g}){let h,j=(0,e.useRef)(null),k=(0,e.useRef)(null),[l,m]=(0,e.useState)(!1),[n,o]=(0,e.useState)("field"),[p,q]=(0,e.useState)(null),[r,s]=(0,e.useState)("contains"),[t,u]=(0,e.useState)(""),[v,w]=(0,e.useState)(new Set),[x,y]=(0,e.useState)([]),[D,F]=(0,e.useState)(d),[I,P]=(0,e.useState)(d);d!==I&&(P(d),d!==D.trim()&&F(d));let S=(0,e.useRef)(f);(0,e.useEffect)(()=>{S.current=f}),(0,e.useEffect)(()=>{let a=setTimeout(()=>S.current(D.trim()),300);return()=>clearTimeout(a)},[D]);let T=(0,e.useCallback)(()=>{o("field"),q(null),u(""),w(new Set),y([])},[]),U=(0,e.useCallback)(()=>{m(!1),T()},[T]);(0,e.useEffect)(()=>{if(!l)return;let a=a=>{j.current&&!j.current.contains(a.target)&&U()};return document.addEventListener("mousedown",a),()=>document.removeEventListener("mousedown",a)},[l,U]);let V=(0,e.useMemo)(()=>{let a=D.trim().toLowerCase();return M.filter(b=>!a||b.label.toLowerCase().includes(a)||b.column.toLowerCase().includes(a))},[D]);(0,e.useEffect)(()=>{if("value"!==n||!p||!N.has(p.column))return;let a=!0;return(0,H.apiFetch)(`/api/observe/data?user=${encodeURIComponent(g)}&facet=values&column=${encodeURIComponent(p.column)}`).then(a=>a.json()).then(b=>{a&&y(Array.isArray(b)?b:[])}).catch(()=>a&&y([])),()=>{a=!1}},[n,p,g]);let[W,X]=(0,e.useState)([]);(0,e.useEffect)(()=>{let a=M.filter(a=>"stringOptions"===a.type&&N.has(a.column)).slice(0,4),b=!0;return Promise.all(a.map(a=>(0,H.apiFetch)(`/api/observe/data?user=${encodeURIComponent(g)}&facet=values&column=${encodeURIComponent(a.column)}`).then(a=>a.json()).then(b=>Array.isArray(b)&&b[0]?{column:a.column,value:b[0].value,count:b[0].count}:null).catch(()=>null))).then(a=>{b&&X(a.filter(a=>null!=a))}),()=>{b=!1}},[g]);let Y=b=>{c([...a,b]),T(),k.current?.focus()},Z=()=>{if(!p)return;if("is null"===r||"is not null"===r)return void Y({column:p.column,operator:r});if("boolean"===p.type)return;if("stringOptions"===p.type){if(0===v.size)return;Y({column:p.column,operator:r,value:Array.from(v)});return}let a=t.trim();if(!a)return;let b=a;if("datetime"===p.type){let c=new Date(a);if(Number.isNaN(c.getTime()))return;b=c.toISOString()}Y({column:p.column,operator:r,value:b})};return(0,b.jsxs)("div",{ref:j,className:"relative",children:[(0,b.jsxs)("div",{className:(0,E.cn)("flex flex-wrap items-center gap-1.5 rounded-md border border-input bg-transparent px-2.5 py-1.5 min-h-9 cursor-text","focus-within:ring-1 focus-within:ring-ring"),onMouseDown:a=>{a.target===a.currentTarget&&(a.preventDefault(),k.current?.focus(),m(!0))},children:[(0,b.jsx)(A.Search,{className:"size-4 text-foreground-muted shrink-0"}),a.map((d,e)=>(0,b.jsxs)(G,{variant:"secondary",className:"gap-1 pl-2 pr-1 py-0.5 text-xs font-normal",children:[function(a){var b;let c=(b=a.column,J.get(b)),d=c?.label??a.column;if("is null"===a.operator||"is not null"===a.operator)return`${d} ${O(a.operator)}`;let e=Array.isArray(a.value)?a.value.join(" / "):String(a.value??"");return`${d} ${O(a.operator)} ${e}`}(d),(0,b.jsx)("button",{type:"button",onClick:()=>c(a.filter((a,b)=>b!==e)),className:"rounded-sm hover:bg-background-secondary p-0.5","aria-label":"移除过滤",children:(0,b.jsx)(i.X,{className:"size-3"})})]},e)),(0,b.jsx)("input",{ref:k,value:D,onChange:a=>F(a.target.value),onFocus:()=>m(!0),onKeyDown:a=>{"Escape"===a.key&&(U(),k.current?.blur())},placeholder:a.length?"继续搜索 / 过滤…":"搜索输入/输出内容或 Trace ID,或点选字段过滤…","aria-label":"搜索或过滤 trace",className:"flex-1 min-w-[10rem] bg-transparent outline-none text-sm h-6 placeholder:text-muted-foreground"})]}),l&&(0,b.jsx)("div",{className:"absolute left-0 top-full mt-1 z-50 w-full max-w-md rounded-md border border-card-border bg-card text-card-foreground shadow-sm",children:"field"===n?(0,b.jsxs)("div",{className:"py-1",children:[D.trim()&&(0,b.jsxs)("button",{type:"button",onMouseDown:a=>a.preventDefault(),onClick:()=>{m(!1),k.current?.blur()},className:"flex w-full items-center gap-2 border-b border-card-border px-3 py-2 text-left text-xs text-foreground-muted hover:bg-background-secondary",children:[(0,b.jsx)(A.Search,{className:"size-3.5 shrink-0"}),(0,b.jsxs)("span",{className:"truncate",children:["模糊搜索输入/输出含 ",(0,b.jsx)("span",{className:"font-medium text-foreground",children:D.trim()})]})]}),!D.trim()&&W.length>0&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:"px-3 pb-1 pt-1.5 text-[11px] font-medium uppercase tracking-wide text-foreground-muted",children:"建议"}),(0,b.jsx)("ul",{className:"pb-1",children:W.map(a=>(0,b.jsx)("li",{children:(0,b.jsxs)("button",{type:"button",onClick:()=>Y({column:a.column,operator:"any of",value:[a.value]}),className:"flex w-full items-center justify-between gap-3 px-3 py-1.5 text-left text-sm hover:bg-background-secondary",children:[(0,b.jsxs)("span",{className:"truncate font-mono text-xs",children:[(0,b.jsxs)("span",{className:"text-foreground-muted",children:[a.column,":"]}),a.value]}),(0,b.jsx)("span",{className:"shrink-0 text-xs tabular-nums text-foreground-muted",children:a.count})]})},a.column))})]}),(0,b.jsx)("div",{className:"px-3 pb-1 pt-1.5 text-[11px] font-medium uppercase tracking-wide text-foreground-muted",children:"字段"}),(0,b.jsxs)("ul",{className:"max-h-64 overflow-auto pb-1",children:[V.map(a=>(0,b.jsx)("li",{children:(0,b.jsxs)("button",{type:"button",onClick:()=>{q(a),s(function(a){switch(a.type){case"string":return"contains";case"number":return">";case"datetime":return">=";case"stringOptions":case"arrayOptions":return"any of";case"boolean":return"="}}(a)),u(""),w(new Set),F(""),o("value")},className:"flex w-full items-center gap-3 px-3 py-1.5 text-left text-sm hover:bg-background-secondary",children:[(0,b.jsx)(A.Search,{className:"size-4 shrink-0 text-foreground-muted"}),(0,b.jsx)("span",{className:"font-medium",children:a.label}),(0,b.jsx)("span",{className:"font-mono text-xs text-foreground-muted",children:a.column}),a.description&&(0,b.jsx)("span",{className:"ml-auto truncate text-xs text-foreground-muted",children:a.description})]})},a.column)),0===V.length&&(0,b.jsx)("li",{className:"px-3 py-2 text-xs text-foreground-muted",children:"无匹配字段"})]})]}):p&&(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{className:"flex items-center gap-1 p-2 border-b border-border",children:[(0,b.jsx)("button",{type:"button",onClick:T,className:"rounded-sm hover:bg-background-secondary p-1","aria-label":"返回字段",children:(0,b.jsx)(z.ChevronLeft,{className:"size-4"})}),(0,b.jsx)("span",{className:"text-sm font-medium",children:p.label}),(0,b.jsx)("select",{value:r,onChange:a=>s(a.target.value),className:"ml-auto h-7 rounded-md border border-border bg-background text-xs px-1",children:(h=K[p.type],p.nullable?[...h,...L]:h).map(a=>(0,b.jsx)("option",{value:a,children:O(a)},a))})]}),(0,b.jsx)("div",{className:"p-2",children:"is null"===r||"is not null"===r?(0,b.jsx)(C.Button,{size:"sm",className:"w-full h-8 text-xs",onClick:Z,children:"添加"}):"boolean"===p.type?(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsx)(C.Button,{size:"sm",variant:"outline",className:"flex-1 h-8 text-xs",onClick:()=>Y({column:p.column,operator:"=",value:!0}),children:"是 / true"}),(0,b.jsx)(C.Button,{size:"sm",variant:"outline",className:"flex-1 h-8 text-xs",onClick:()=>Y({column:p.column,operator:"=",value:!1}),children:"否 / false"})]}):"stringOptions"===p.type?(0,b.jsx)(R,{facet:x,picked:v,onToggle:a=>w(b=>{let c=new Set(b);return c.has(a)?c.delete(a):c.add(a),c}),onConfirm:Z}):(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsx)(B.Input,{autoFocus:!0,type:"number"===p.type?"number":"datetime"===p.type?"datetime-local":"text",value:t,onChange:a=>u(a.target.value),onKeyDown:a=>"Enter"===a.key&&Z(),placeholder:p.unit?`值(${p.unit})`:"值…",className:"h-8 text-sm"}),(0,b.jsx)(C.Button,{size:"sm",className:"h-8 text-xs shrink-0",onClick:Z,children:"添加"})]}),(0,b.jsx)(Q,{facet:x,query:t,onPick:a=>Y({column:p.column,operator:r,value:a})})]})})]})})]})}function Q({facet:a,query:c,onPick:d}){let f=c.trim().toLowerCase(),g=(0,e.useMemo)(()=>a.filter(a=>!f||a.value.toLowerCase().includes(f)).slice(0,8),[a,f]);return 0===g.length?null:(0,b.jsxs)("div",{className:"mt-2",children:[(0,b.jsx)("div",{className:"px-1 pb-1 text-[11px] font-medium uppercase tracking-wide text-foreground-muted",children:"建议"}),(0,b.jsx)("ul",{className:"max-h-48 overflow-auto",children:g.map(a=>(0,b.jsx)("li",{children:(0,b.jsxs)("button",{type:"button",onClick:()=>d(a.value),className:"flex w-full items-center justify-between gap-3 rounded px-2 py-1.5 text-left text-sm hover:bg-background-secondary",children:[(0,b.jsx)("span",{className:"truncate",children:a.value}),(0,b.jsx)("span",{className:"shrink-0 text-xs tabular-nums text-foreground-muted",children:a.count})]})},a.value))})]})}function R({facet:a,picked:c,onToggle:d,onConfirm:e}){return(0,b.jsxs)("div",{children:[(0,b.jsxs)("ul",{className:"max-h-56 overflow-auto -mx-2",children:[a.map(a=>(0,b.jsx)("li",{children:(0,b.jsxs)("button",{type:"button",onClick:()=>d(a.value),className:"flex w-full items-center justify-between px-3 py-1.5 text-sm hover:bg-background-secondary text-left",children:[(0,b.jsxs)("span",{className:"flex items-center gap-2",children:[(0,b.jsx)("input",{type:"checkbox",readOnly:!0,checked:c.has(a.value),className:"pointer-events-none"}),a.value]}),(0,b.jsx)("span",{className:"text-xs text-foreground-muted tabular-nums",children:a.count})]})},a.value)),0===a.length&&(0,b.jsx)("li",{className:"px-3 py-2 text-xs text-foreground-muted",children:"无可选值"})]}),(0,b.jsxs)(C.Button,{size:"sm",className:"w-full h-8 text-xs mt-2",disabled:0===c.size,onClick:e,children:["添加(",c.size,")"]})]})}var S=a.i(589027),T=a.i(141146);let U=[{column:"skill",kind:"select",defaultOpen:!0},{column:"subagentType",kind:"select"},{column:"model",kind:"contains",defaultOpen:!0},{column:"latency",kind:"range",defaultOpen:!0},{column:"tokens",kind:"range"},{column:"cost",kind:"range"},{column:"answerScore",kind:"range"},{column:"isAnswerCorrect",kind:"boolean"}];function V({clauses:a,onChange:c,user:d}){return(0,b.jsx)("div",{className:"divide-y divide-card-border",children:U.map(e=>{var f;let g,h=(f=e.column,J.get(f));return h?(0,b.jsx)(W,{col:h,kind:e.kind,defaultOpen:e.defaultOpen,user:d,current:(g=e.column,a.filter(a=>a.column===g)),onSet:b=>{let d;return d=e.column,c([...a.filter(a=>a.column!==d),...b])}},e.column):null})})}function W({col:a,kind:c,defaultOpen:d,user:f,current:g,onSet:h}){let[i,j]=(0,e.useState)(!!d),k=g.length>0;return(0,b.jsxs)("div",{className:"py-2",children:[(0,b.jsxs)("button",{type:"button",onClick:()=>j(a=>!a),className:"flex w-full items-center gap-1.5 px-1 text-left",children:[i?(0,b.jsx)(S.ChevronDown,{className:"size-3.5 text-foreground-muted"}):(0,b.jsx)(T.ChevronRight,{className:"size-3.5 text-foreground-muted"}),(0,b.jsx)("span",{className:"text-sm font-medium",children:a.label}),(0,b.jsx)("span",{className:"font-mono text-[11px] text-foreground-muted",children:a.column}),k&&(0,b.jsx)("span",{className:"ml-auto size-1.5 rounded-full bg-primary","aria-label":"已启用"})]}),i&&(0,b.jsxs)("div",{className:"mt-1.5 px-1",children:["select"===c&&(0,b.jsx)(X,{col:a,user:f,current:g,onSet:h}),"contains"===c&&(0,b.jsx)(Y,{col:a,current:g,onSet:h}),"range"===c&&(0,b.jsx)(Z,{col:a,current:g,onSet:h}),"boolean"===c&&(0,b.jsx)($,{col:a,current:g,onSet:h})]})]})}function X({col:a,user:c,current:d,onSet:f}){let[g,h]=(0,e.useState)([]),[i,j]=(0,e.useState)(!1);(0,e.useEffect)(()=>{let b=!0;return(0,H.apiFetch)(`/api/observe/data?user=${encodeURIComponent(c)}&facet=values&column=${encodeURIComponent(a.column)}`).then(a=>a.json()).then(a=>b&&h(Array.isArray(a)?a:[])).catch(()=>b&&h([])).finally(()=>b&&j(!0)),()=>{b=!1}},[a.column,c]);let k=new Set(d.find(a=>"any of"===a.operator)?.value??[]);return i?0===g.length?(0,b.jsx)("p",{className:"text-xs text-foreground-muted",children:"无可选值"}):(0,b.jsx)("ul",{className:"max-h-48 overflow-auto",children:g.map(c=>(0,b.jsx)("li",{children:(0,b.jsxs)("button",{type:"button",onClick:()=>{var b;let d,e;return b=c.value,(d=new Set(k)).has(b)?d.delete(b):d.add(b),void f((e=Array.from(d)).length?[{column:a.column,operator:"any of",value:e}]:[])},className:"flex w-full items-center justify-between gap-2 rounded px-1 py-1 text-left text-sm hover:bg-background-secondary",children:[(0,b.jsxs)("span",{className:"flex min-w-0 items-center gap-2",children:[(0,b.jsx)("input",{type:"checkbox",readOnly:!0,checked:k.has(c.value),className:"pointer-events-none"}),(0,b.jsx)("span",{className:"truncate",children:c.value})]}),(0,b.jsx)("span",{className:"shrink-0 text-xs tabular-nums text-foreground-muted",children:c.count})]})},c.value))}):(0,b.jsx)("p",{className:"text-xs text-foreground-muted",children:"加载中…"})}function Y({col:a,current:c,onSet:d}){let f=c.find(a=>"contains"===a.operator)?.value??"",[g,h]=(0,e.useState)(f),[i,j]=(0,e.useState)(f);f!==i&&(j(f),f!==g&&h(f));let k=()=>{let b=g.trim();d(b?[{column:a.column,operator:"contains",value:b}]:[])};return(0,b.jsx)("input",{value:g,onChange:a=>h(a.target.value),onBlur:k,onKeyDown:a=>"Enter"===a.key&&k(),placeholder:"包含…",className:"h-7 w-full rounded border border-input bg-transparent px-2 text-sm outline-none focus:ring-1 focus:ring-ring"})}function Z({col:a,current:c,onSet:d}){let f=c.find(a=>">="===a.operator),g=c.find(a=>"<="===a.operator),[h,i]=(0,e.useState)(f?String(f.value):""),[j,k]=(0,e.useState)(g?String(g.value):""),l=`${f?.value??""}|${g?.value??""}`,[m,n]=(0,e.useState)(l);l!==m&&(n(l),i(f?String(f.value):""),k(g?String(g.value):""));let o=()=>{let b=[];""!==h.trim()&&Number.isFinite(Number(h))&&b.push({column:a.column,operator:">=",value:Number(h)}),""!==j.trim()&&Number.isFinite(Number(j))&&b.push({column:a.column,operator:"<=",value:Number(j)}),d(b)},p="h-7 w-full rounded border border-input bg-transparent px-2 text-sm outline-none focus:ring-1 focus:ring-ring";return(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("input",{type:"number",value:h,onChange:a=>i(a.target.value),onBlur:o,onKeyDown:a=>"Enter"===a.key&&o(),placeholder:a.unit?`最小(${a.unit})`:"最小",className:p}),(0,b.jsx)("span",{className:"text-xs text-foreground-muted",children:"–"}),(0,b.jsx)("input",{type:"number",value:j,onChange:a=>k(a.target.value),onBlur:o,onKeyDown:a=>"Enter"===a.key&&o(),placeholder:a.unit?`最大(${a.unit})`:"最大",className:p})]})}function $({col:a,current:c,onSet:d}){let e=c.find(a=>"="===a.operator),f=e?e.value:void 0,g=(c,e)=>(0,b.jsx)("button",{type:"button",onClick:()=>d(void 0===e?[]:[{column:a.column,operator:"=",value:e}]),className:"flex-1 rounded px-2 py-1 text-xs "+(f===e?"bg-primary text-primary-foreground":"hover:bg-background-secondary text-foreground-muted"),children:c});return(0,b.jsxs)("div",{className:"flex gap-1 rounded border border-input p-0.5",children:[g("全部",void 0),g("是",!0),g("否",!1)]})}var _=a.i(943408),aa=a.i(106927),ab=a.i(434465),ac=a.i(30553),ad="horizontal",ae=["horizontal","vertical"],af=e.forwardRef((a,c)=>{var d;let{decorative:e,orientation:f=ad,...g}=a,h=(d=f,ae.includes(d))?f:ad;return(0,b.jsx)(ac.Primitive.div,{"data-orientation":h,...e?{role:"none"}:{"aria-orientation":"vertical"===h?h:void 0,role:"separator"},...g,ref:c})});function ag({className:a,orientation:c="horizontal",decorative:d=!0,...e}){return(0,b.jsx)(af,{"data-slot":"separator-root",decorative:d,orientation:c,className:(0,E.cn)("bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",a),...e})}function ah({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"skeleton",className:(0,E.cn)("bg-primary/10 animate-pulse rounded-md",a),...c})}af.displayName="Separator";var ai=a.i(785259),aj=a.i(580701),ak=a.i(882524),al=a.i(507554),am=a.i(470121),an=a.i(750104),ao=a.i(596743),ap=a.i(486228),aq=a.i(422297),ar=a.i(392843),as=a.i(704691),at=a.i(692616),au=a.i(777192),av=a.i(811011),aw=a.i(225152),ax=a.i(241852),ay=a.i(152081),az="Popover",[aA,aB]=(0,an.createContextScope)(az,[as.createPopperScope]),aC=(0,as.createPopperScope)(),[aD,aE]=aA(az),aF=a=>{let{__scopePopover:c,children:d,open:f,defaultOpen:g,onOpenChange:h,modal:i=!1}=a,j=aC(c),k=e.useRef(null),[l,m]=e.useState(!1),[n,o]=(0,aw.useControllableState)({prop:f,defaultProp:g??!1,onChange:h,caller:az});return(0,b.jsx)(as.Root,{...j,children:(0,b.jsx)(aD,{scope:c,contentId:(0,ar.useId)(),triggerRef:k,open:n,onOpenChange:o,onOpenToggle:e.useCallback(()=>o(a=>!a),[o]),hasCustomAnchor:l,onCustomAnchorAdd:e.useCallback(()=>m(!0),[]),onCustomAnchorRemove:e.useCallback(()=>m(!1),[]),modal:i,children:d})})};aF.displayName=az;var aG="PopoverAnchor";e.forwardRef((a,c)=>{let{__scopePopover:d,...f}=a,g=aE(aG,d),h=aC(d),{onCustomAnchorAdd:i,onCustomAnchorRemove:j}=g;return e.useEffect(()=>(i(),()=>j()),[i,j]),(0,b.jsx)(as.Anchor,{...h,...f,ref:c})}).displayName=aG;var aH="PopoverTrigger",aI=e.forwardRef((a,c)=>{let{__scopePopover:d,...e}=a,f=aE(aH,d),g=aC(d),h=(0,am.useComposedRefs)(c,f.triggerRef),i=(0,b.jsx)(ac.Primitive.button,{type:"button","aria-haspopup":"dialog","aria-expanded":f.open,"aria-controls":f.open?f.contentId:void 0,"data-state":aU(f.open),...e,ref:h,onClick:(0,al.composeEventHandlers)(a.onClick,f.onOpenToggle)});return f.hasCustomAnchor?i:(0,b.jsx)(as.Anchor,{asChild:!0,...g,children:i})});aI.displayName=aH;var aJ="PopoverPortal",[aK,aL]=aA(aJ,{forceMount:void 0}),aM=a=>{let{__scopePopover:c,forceMount:d,children:e,container:f}=a,g=aE(aJ,c);return(0,b.jsx)(aK,{scope:c,forceMount:d,children:(0,b.jsx)(au.Presence,{present:d||g.open,children:(0,b.jsx)(at.Portal,{asChild:!0,container:f,children:e})})})};aM.displayName=aJ;var aN="PopoverContent",aO=e.forwardRef((a,c)=>{let d=aL(aN,a.__scopePopover),{forceMount:e=d.forceMount,...f}=a,g=aE(aN,a.__scopePopover);return(0,b.jsx)(au.Presence,{present:e||g.open,children:g.modal?(0,b.jsx)(aQ,{...f,ref:c}):(0,b.jsx)(aR,{...f,ref:c})})});aO.displayName=aN;var aP=(0,av.createSlot)("PopoverContent.RemoveScroll"),aQ=e.forwardRef((a,c)=>{let d=aE(aN,a.__scopePopover),f=e.useRef(null),g=(0,am.useComposedRefs)(c,f),h=e.useRef(!1);return e.useEffect(()=>{let a=f.current;if(a)return(0,ax.hideOthers)(a)},[]),(0,b.jsx)(ay.RemoveScroll,{as:aP,allowPinchZoom:!0,children:(0,b.jsx)(aS,{...a,ref:g,trapFocus:d.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:(0,al.composeEventHandlers)(a.onCloseAutoFocus,a=>{a.preventDefault(),h.current||d.triggerRef.current?.focus()}),onPointerDownOutside:(0,al.composeEventHandlers)(a.onPointerDownOutside,a=>{let b=a.detail.originalEvent,c=0===b.button&&!0===b.ctrlKey;h.current=2===b.button||c},{checkForDefaultPrevented:!1}),onFocusOutside:(0,al.composeEventHandlers)(a.onFocusOutside,a=>a.preventDefault(),{checkForDefaultPrevented:!1})})})}),aR=e.forwardRef((a,c)=>{let d=aE(aN,a.__scopePopover),f=e.useRef(!1),g=e.useRef(!1);return(0,b.jsx)(aS,{...a,ref:c,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:b=>{a.onCloseAutoFocus?.(b),b.defaultPrevented||(f.current||d.triggerRef.current?.focus(),b.preventDefault()),f.current=!1,g.current=!1},onInteractOutside:b=>{a.onInteractOutside?.(b),b.defaultPrevented||(f.current=!0,"pointerdown"===b.detail.originalEvent.type&&(g.current=!0));let c=b.target;d.triggerRef.current?.contains(c)&&b.preventDefault(),"focusin"===b.detail.originalEvent.type&&g.current&&b.preventDefault()}})}),aS=e.forwardRef((a,c)=>{let{__scopePopover:d,trapFocus:e,onOpenAutoFocus:f,onCloseAutoFocus:g,disableOutsidePointerEvents:h,onEscapeKeyDown:i,onPointerDownOutside:j,onFocusOutside:k,onInteractOutside:l,...m}=a,n=aE(aN,d),o=aC(d);return(0,ap.useFocusGuards)(),(0,b.jsx)(aq.FocusScope,{asChild:!0,loop:!0,trapped:e,onMountAutoFocus:f,onUnmountAutoFocus:g,children:(0,b.jsx)(ao.DismissableLayer,{asChild:!0,disableOutsidePointerEvents:h,onInteractOutside:l,onEscapeKeyDown:i,onPointerDownOutside:j,onFocusOutside:k,onDismiss:()=>n.onOpenChange(!1),deferPointerDownOutside:!0,children:(0,b.jsx)(as.Content,{"data-state":aU(n.open),role:"dialog",id:n.contentId,...o,...m,ref:c,style:{...m.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),aT="PopoverClose";function aU(a){return a?"open":"closed"}function aV({...a}){return(0,b.jsx)(aF,{"data-slot":"popover",...a})}function aW({...a}){return(0,b.jsx)(aI,{"data-slot":"popover-trigger",...a})}function aX({className:a,align:c="center",sideOffset:d=6,children:e,...f}){return(0,b.jsx)(aM,{children:(0,b.jsx)(aO,{"data-slot":"popover-content",align:c,sideOffset:d,className:(0,E.cn)("z-50 w-72 rounded-md border border-card-border bg-card p-4 text-card-foreground shadow-sm outline-none","data-[state=open]:animate-in data-[state=closed]:animate-out","data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0","data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95","data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2","data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2",a),...f,children:e})})}e.forwardRef((a,c)=>{let{__scopePopover:d,...e}=a,f=aE(aT,d);return(0,b.jsx)(ac.Primitive.button,{type:"button",...e,ref:c,onClick:(0,al.composeEventHandlers)(a.onClick,()=>f.onOpenChange(!1))})}).displayName=aT,e.forwardRef((a,c)=>{let{__scopePopover:d,...e}=a,f=aC(d);return(0,b.jsx)(as.Arrow,{...f,...e,ref:c})}).displayName="PopoverArrow";var aY=a.i(335732),aZ=a.i(100842),a$=a.i(115326),a_=a.i(585650);function a0({value:a,head:c=6,tail:d=4,copy:f=!0,className:g,onClick:h}){let[i,j]=e.useState(!1);if(!a)return(0,b.jsx)("span",{className:"text-foreground-muted",children:"—"});let k=a.length>c+d+1?`${a.slice(0,c)}…${a.slice(-d)}`:a,l=async b=>{b.stopPropagation();try{await navigator.clipboard.writeText(a),j(!0),v.toast.success("Copied"),setTimeout(()=>j(!1),1500)}catch{v.toast.error("Copy failed")}};return(0,b.jsx)(ai.TooltipProvider,{delayDuration:150,children:(0,b.jsxs)(ai.Tooltip,{children:[(0,b.jsx)(ai.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("span",{onClick:h,className:(0,E.cn)("inline-flex items-center gap-1 font-mono text-xs text-foreground tabular-nums",h&&"cursor-pointer hover:text-primary",g),children:[(0,b.jsx)("span",{children:k}),f&&(0,b.jsx)("button",{type:"button",onClick:l,"aria-label":"Copy ID",className:"text-foreground-muted hover:text-foreground p-0.5 rounded-sm focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:i?(0,b.jsx)(t.Check,{className:"size-3"}):(0,b.jsx)(a_.Copy,{className:"size-3"})})]})}),(0,b.jsx)(ai.TooltipContent,{side:"top",children:(0,b.jsx)("code",{className:"text-xs",children:a})})]})})}function a1({children:a,className:c,tooltipMax:d=200,empty:e=(0,b.jsx)("span",{className:"text-foreground-muted",children:"—"})}){let f=(a??"").toString();return f?(0,b.jsx)(ai.TooltipProvider,{delayDuration:250,children:(0,b.jsxs)(ai.Tooltip,{children:[(0,b.jsx)(ai.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("span",{className:(0,E.cn)("block truncate",c),children:f})}),(0,b.jsx)(ai.TooltipContent,{side:"top",className:"max-w-sm whitespace-pre-wrap text-xs",children:f.length>d?`${f.slice(0,d)}…`:f})]})}):(0,b.jsx)(b.Fragment,{children:e})}let a2=Symbol.for("constructDateFrom");function a3(a,b){return"function"==typeof a?a(b):a&&"object"==typeof a&&a2 in a?a[a2](b):a instanceof Date?new a.constructor(b):new Date(b)}let a4={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function a5(a){return (b={})=>{let c=b.width?String(b.width):a.defaultWidth;return a.formats[c]||a.formats[a.defaultWidth]}}let a6={date:a5({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:a5({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:a5({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},a7={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function a8(a){return(b,c)=>{let d;if("formatting"===(c?.context?String(c.context):"standalone")&&a.formattingValues){let b=a.defaultFormattingWidth||a.defaultWidth,e=c?.width?String(c.width):b;d=a.formattingValues[e]||a.formattingValues[b]}else{let b=a.defaultWidth,e=c?.width?String(c.width):a.defaultWidth;d=a.values[e]||a.values[b]}return d[a.argumentCallback?a.argumentCallback(b):b]}}function a9(a){return(b,c={})=>{let d,e=c.width,f=e&&a.matchPatterns[e]||a.matchPatterns[a.defaultMatchWidth],g=b.match(f);if(!g)return null;let h=g[0],i=e&&a.parsePatterns[e]||a.parsePatterns[a.defaultParseWidth],j=Array.isArray(i)?function(a,b){for(let c=0;c<a.length;c++)if(b(a[c]))return c}(i,a=>a.test(h)):function(a,b){for(let c in a)if(Object.prototype.hasOwnProperty.call(a,c)&&b(a[c]))return c}(i,a=>a.test(h));return d=a.valueCallback?a.valueCallback(j):j,{value:d=c.valueCallback?c.valueCallback(d):d,rest:b.slice(h.length)}}}function ba(a){return(b,c={})=>{let d=b.match(a.matchPattern);if(!d)return null;let e=d[0],f=b.match(a.parsePattern);if(!f)return null;let g=a.valueCallback?a.valueCallback(f[0]):f[0];return{value:g=c.valueCallback?c.valueCallback(g):g,rest:b.slice(e.length)}}}let bb={code:"en-US",formatDistance:(a,b,c)=>{let d,e=a4[a];if(d="string"==typeof e?e:1===b?e.one:e.other.replace("{{count}}",b.toString()),c?.addSuffix)if(c.comparison&&c.comparison>0)return"in "+d;else return d+" ago";return d},formatLong:a6,formatRelative:(a,b,c,d)=>a7[a],localize:{ordinalNumber:(a,b)=>{let c=Number(a),d=c%100;if(d>20||d<10)switch(d%10){case 1:return c+"st";case 2:return c+"nd";case 3:return c+"rd"}return c+"th"},era:a8({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:a8({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:a=>a-1}),month:a8({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:a8({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:a8({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})},match:{ordinalNumber:ba({matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:a=>parseInt(a,10)}),era:a9({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:a9({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:a=>a+1}),month:a9({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:a9({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:a9({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})},options:{weekStartsOn:0,firstWeekContainsDate:1}},bc={};function bd(a,b){return a3(b||a,a)}function be(a){let b=bd(a),c=new Date(Date.UTC(b.getFullYear(),b.getMonth(),b.getDate(),b.getHours(),b.getMinutes(),b.getSeconds(),b.getMilliseconds()));return c.setUTCFullYear(b.getFullYear()),a-c}function bf(a,...b){let c=a3.bind(null,a||b.find(a=>"object"==typeof a));return b.map(c)}function bg(a,b){let c=bd(a)-bd(b);return c<0?-1:c>0?1:c}let bh={lessThanXSeconds:{one:"不到 1 秒",other:"不到 {{count}} 秒"},xSeconds:{one:"1 秒",other:"{{count}} 秒"},halfAMinute:"半分钟",lessThanXMinutes:{one:"不到 1 分钟",other:"不到 {{count}} 分钟"},xMinutes:{one:"1 分钟",other:"{{count}} 分钟"},xHours:{one:"1 小时",other:"{{count}} 小时"},aboutXHours:{one:"大约 1 小时",other:"大约 {{count}} 小时"},xDays:{one:"1 天",other:"{{count}} 天"},aboutXWeeks:{one:"大约 1 个星期",other:"大约 {{count}} 个星期"},xWeeks:{one:"1 个星期",other:"{{count}} 个星期"},aboutXMonths:{one:"大约 1 个月",other:"大约 {{count}} 个月"},xMonths:{one:"1 个月",other:"{{count}} 个月"},aboutXYears:{one:"大约 1 年",other:"大约 {{count}} 年"},xYears:{one:"1 年",other:"{{count}} 年"},overXYears:{one:"超过 1 年",other:"超过 {{count}} 年"},almostXYears:{one:"将近 1 年",other:"将近 {{count}} 年"}},bi={date:a5({formats:{full:"y'年'M'月'd'日' EEEE",long:"y'年'M'月'd'日'",medium:"yyyy-MM-dd",short:"yy-MM-dd"},defaultWidth:"full"}),time:a5({formats:{full:"zzzz a h:mm:ss",long:"z a h:mm:ss",medium:"a h:mm:ss",short:"a h:mm"},defaultWidth:"full"}),dateTime:a5({formats:{full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},defaultWidth:"full"})};function bj(a,b){let c=b?.weekStartsOn??b?.locale?.options?.weekStartsOn??bc.weekStartsOn??bc.locale?.options?.weekStartsOn??0,d=bd(a,b?.in),e=d.getDay();return d.setDate(d.getDate()-(7*(e<c)+e-c)),d.setHours(0,0,0,0),d}function bk(a,b,c){let d="eeee p";return!function(a,b,c){let[d,e]=bf(c?.in,a,b);return+bj(d,c)==+bj(e,c)}(a,b,c)?a.getTime()>b.getTime()?"'下个'"+d:"'上个'"+d:d}let bl={lastWeek:bk,yesterday:"'昨天' p",today:"'今天' p",tomorrow:"'明天' p",nextWeek:bk,other:"PP p"},bm={code:"zh-CN",formatDistance:(a,b,c)=>{let d,e=bh[a];if(d="string"==typeof e?e:1===b?e.one:e.other.replace("{{count}}",String(b)),c?.addSuffix)if(c.comparison&&c.comparison>0)return d+"内";else return d+"前";return d},formatLong:bi,formatRelative:(a,b,c,d)=>{let e=bl[a];return"function"==typeof e?e(b,c,d):e},localize:{ordinalNumber:(a,b)=>{let c=Number(a);switch(b?.unit){case"date":return c.toString()+"日";case"hour":return c.toString()+"时";case"minute":return c.toString()+"分";case"second":return c.toString()+"秒";default:return"第 "+c.toString()}},era:a8({values:{narrow:["前","公元"],abbreviated:["前","公元"],wide:["公元前","公元"]},defaultWidth:"wide"}),quarter:a8({values:{narrow:["1","2","3","4"],abbreviated:["第一季","第二季","第三季","第四季"],wide:["第一季度","第二季度","第三季度","第四季度"]},defaultWidth:"wide",argumentCallback:a=>a-1}),month:a8({values:{narrow:["一","二","三","四","五","六","七","八","九","十","十一","十二"],abbreviated:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],wide:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"]},defaultWidth:"wide"}),day:a8({values:{narrow:["日","一","二","三","四","五","六"],short:["日","一","二","三","四","五","六"],abbreviated:["周日","周一","周二","周三","周四","周五","周六"],wide:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]},defaultWidth:"wide"}),dayPeriod:a8({values:{narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"}},defaultWidth:"wide",formattingValues:{narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"}},defaultFormattingWidth:"wide"})},match:{ordinalNumber:ba({matchPattern:/^(第\s*)?\d+(日|时|分|秒)?/i,parsePattern:/\d+/i,valueCallback:a=>parseInt(a,10)}),era:a9({matchPatterns:{narrow:/^(前)/i,abbreviated:/^(前)/i,wide:/^(公元前|公元)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^(前)/i,/^(公元)/i]},defaultParseWidth:"any"}),quarter:a9({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^第[一二三四]刻/i,wide:/^第[一二三四]刻钟/i},defaultMatchWidth:"wide",parsePatterns:{any:[/(1|一)/i,/(2|二)/i,/(3|三)/i,/(4|四)/i]},defaultParseWidth:"any",valueCallback:a=>a+1}),month:a9({matchPatterns:{narrow:/^(一|二|三|四|五|六|七|八|九|十[二一]?)/i,abbreviated:/^(一|二|三|四|五|六|七|八|九|十[二一]?|\d|1[0-2])月/i,wide:/^(一|二|三|四|五|六|七|八|九|十[二一]?)月/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^一/i,/^二/i,/^三/i,/^四/i,/^五/i,/^六/i,/^七/i,/^八/i,/^九/i,/^十(?!(一|二))/i,/^十一/i,/^十二/i],any:[/^(一|1(?!\d))/i,/^(二|2)/i,/^(三|3)/i,/^(四|4)/i,/^(五|5)/i,/^(六|6)/i,/^(七|7)/i,/^(八|8)/i,/^(九|9)/i,/^(十(?!(一|二))|10)/i,/^(十一|11)/i,/^(十二|12)/i]},defaultParseWidth:"any"}),day:a9({matchPatterns:{narrow:/^[一二三四五六日]/i,short:/^[一二三四五六日]/i,abbreviated:/^周[一二三四五六日]/i,wide:/^星期[一二三四五六日]/i},defaultMatchWidth:"wide",parsePatterns:{any:[/日/i,/一/i,/二/i,/三/i,/四/i,/五/i,/六/i]},defaultParseWidth:"any"}),dayPeriod:a9({matchPatterns:{any:/^(上午?|下午?|午夜|[中正]午|早上?|下午|晚上?|凌晨|)/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^上午?/i,pm:/^下午?/i,midnight:/^午夜/i,noon:/^[中正]午/i,morning:/^早上/i,afternoon:/^下午/i,evening:/^晚上?/i,night:/^凌晨/i}},defaultParseWidth:"any"})},options:{weekStartsOn:1,firstWeekContainsDate:4}};function bn({value:a,className:c}){var d,e;let{locale:f}=(0,aa.useLocale)();if(null==a||""===a)return(0,b.jsx)("span",{className:"text-foreground-muted",children:"—"});let g=a instanceof Date?a:new Date(a);if(Number.isNaN(g.getTime()))return(0,b.jsx)("span",{className:"text-foreground-muted",children:"—"});let h=(d=g,e={addSuffix:!0,locale:"zh"===f?bm:bb},function(a,b,c){var d;let e,f=c?.locale??bc.locale??bb,g=bg(a,b);if(isNaN(g))throw RangeError("Invalid time value");let h=Object.assign({},c,{addSuffix:c?.addSuffix,comparison:g}),[i,j]=bf(c?.in,...g>0?[b,a]:[a,b]),k=(d=void 0,a=>{let b=(d?Math[d]:Math.trunc)(a);return 0===b?0:b})((bd(j)-bd(i))/1e3),l=Math.round((k-(be(j)-be(i))/1e3)/60);if(l<2)if(c?.includeSeconds)if(k<5)return f.formatDistance("lessThanXSeconds",5,h);else if(k<10)return f.formatDistance("lessThanXSeconds",10,h);else if(k<20)return f.formatDistance("lessThanXSeconds",20,h);else if(k<40)return f.formatDistance("halfAMinute",0,h);else if(k<60)return f.formatDistance("lessThanXMinutes",1,h);else return f.formatDistance("xMinutes",1,h);else if(0===l)return f.formatDistance("lessThanXMinutes",1,h);else return f.formatDistance("xMinutes",l,h);if(l<45)return f.formatDistance("xMinutes",l,h);if(l<90)return f.formatDistance("aboutXHours",1,h);if(l<1440){let a=Math.round(l/60);return f.formatDistance("aboutXHours",a,h)}if(l<2520)return f.formatDistance("xDays",1,h);else if(l<43200){let a=Math.round(l/1440);return f.formatDistance("xDays",a,h)}else if(l<86400)return e=Math.round(l/43200),f.formatDistance("aboutXMonths",e,h);if((e=function(a,b,c){var d,e;let f,g,h,i,[j,k,l]=bf(void 0,a,a,b),m=bg(k,l),n=Math.abs(function(a,b,c){let[d,e]=bf(void 0,a,b);return 12*(d.getFullYear()-e.getFullYear())+(d.getMonth()-e.getMonth())}(k,l));if(n<1)return 0;1===k.getMonth()&&k.getDate()>27&&k.setDate(30),k.setMonth(k.getMonth()-m*n);let o=bg(k,l)===-m;+(f=bd(j,void 0),d=void 0,(g=bd(f,d?.in)).setHours(23,59,59,999),g)==+(e=void 0,i=(h=bd(f,e?.in)).getMonth(),h.setFullYear(h.getFullYear(),i+1,0),h.setHours(23,59,59,999),h)&&1===n&&1===bg(j,l)&&(o=!1);let p=m*(n-o);return 0===p?0:p}(j,i))<12){let a=Math.round(l/43200);return f.formatDistance("xMonths",a,h)}{let a=e%12,b=Math.trunc(e/12);return a<3?f.formatDistance("aboutXYears",b,h):a<9?f.formatDistance("overXYears",b,h):f.formatDistance("almostXYears",b+1,h)}}(d,a3(d,Date.now()),e)),i=g.toLocaleString();return(0,b.jsx)(ai.TooltipProvider,{delayDuration:250,children:(0,b.jsxs)(ai.Tooltip,{children:[(0,b.jsx)(ai.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("span",{className:c,children:h})}),(0,b.jsx)(ai.TooltipContent,{side:"top",className:"font-mono text-xs",children:i})]})})}var bo=a.i(960798),bp=a.i(187563);let bq=process.env.NEXT_PUBLIC_URL_PREFIX||"",br={"30m":18e5,"1h":36e5,"3h":108e5,"24h":864e5,"7d":6048e5,"30d":2592e6,all:1/0},bs=[20,50,100],bt=[5,10,30,60],bu=["traceId","agent","status","userTags","systemTags","task","tokens","time","actions"],bv={traceId:130,agent:170,status:110,userTags:220,systemTags:220,tokens:110,time:120,actions:220},bw={traceId:90,agent:100,status:80,userTags:150,systemTags:140,tokens:70,time:80,actions:160},bx={traceId:!0,agent:!0,status:!0,userTags:!0,systemTags:!1,task:!0,tokens:!0,time:!0,actions:!0},by="trace.columnWidths.v1",bz="trace.columnVisibility.v1";function bA(a){return a.agentName?.trim()||(0,ab.getPrimaryExecutionAgentName)(a)}function bB(a){let b=String(a.trace_status??a.traceStatus??"").trim().toLowerCase();return"running"===b||"success"===b||"failed"===b?b:a.trace_completed_at||a.traceCompletedAt?"success":"running"}function bC(a){let b=String(a||"").trim();switch(b.toLowerCase()){case"langfuse-langgraph":return"Langfuse-Langgraph";case"opencode":return"OpenCode";case"claude":case"claudecode":return"Claude Code";case"hermes":return"Hermes";default:return b}}function bD(a){if(!a&&0!==a)return"-";let b=new Date(a);return b.getFullYear()+"/"+String(b.getMonth()+1).padStart(2,"0")+"/"+String(b.getDate()).padStart(2,"0")+" "+String(b.getHours()).padStart(2,"0")+":"+String(b.getMinutes()).padStart(2,"0")+":"+String(b.getSeconds()).padStart(2,"0")+"."+String(b.getMilliseconds()).padStart(3,"0")}function bE(a,b){return Math.min(640,Math.max(bw[a],Math.round(b)))}function bF({colKey:a,currentWidth:c,onResize:d}){return(0,b.jsx)("span",{onMouseDown:b=>{b.preventDefault(),b.stopPropagation();let e=b.clientX,f=b=>{d(a,c+(b.clientX-e))},g=()=>{window.removeEventListener("mousemove",f),window.removeEventListener("mouseup",g),document.body.style.cursor="",document.body.style.userSelect=""};document.body.style.cursor="col-resize",document.body.style.userSelect="none",window.addEventListener("mousemove",f),window.addEventListener("mouseup",g)},onClick:a=>a.stopPropagation(),onKeyDown:a=>a.stopPropagation(),role:"separator","aria-orientation":"vertical","aria-label":`Resize column ${a}`,className:"absolute right-0 top-0 z-10 flex h-full w-2 -mr-1 items-center justify-center cursor-col-resize group/handle",children:(0,b.jsx)("span",{className:"h-4 w-px bg-border group-hover/handle:bg-primary group-hover/handle:w-0.5 transition-colors","aria-hidden":!0})})}function bG(){return(0,b.jsx)(e.Suspense,{fallback:(0,b.jsxs)("div",{className:"flex flex-col gap-3 px-6 py-6",children:[(0,b.jsx)(ah,{className:"h-9 w-48"}),(0,b.jsx)(ah,{className:"h-24 w-full"}),(0,b.jsx)(ah,{className:"h-96 w-full"})]}),children:(0,b.jsx)(bH,{})})}function bH(){let{user:a}=(0,_.useAuth)(),{t:c,locale:d}=(0,aa.useLocale)(),[f,g]=(0,e.useState)([]),[h,j]=(0,e.useState)(!0),[k,l]=(0,e.useState)(null),[m,n]=(0,e.useState)([]),[o,s]=(0,u.useQueryState)("time",u.parseAsString.withDefault("all")),[t,v]=(0,u.useQueryState)("status",u.parseAsString.withDefault("all")),[y,z]=(0,u.useQueryState)("framework",u.parseAsString.withDefault("all")),[A,B]=(0,u.useQueryState)("agent",u.parseAsString.withDefault("all")),[D,E]=(0,u.useQueryState)("skill",u.parseAsString.withDefault("all")),[F,G]=(0,u.useQueryState)("bizTag",u.parseAsString.withDefault("all")),[I,J]=(0,u.useQueryState)("ownership",u.parseAsString.withDefault("user")),[K,L]=(0,u.useQueryState)("scope",u.parseAsString.withDefault("root")),[M,N]=(0,u.useQueryState)("sort",u.parseAsString.withDefault("timestamp")),[O,Q]=(0,u.useQueryState)("dir",u.parseAsString.withDefault("desc")),[R,S]=(0,u.useQueryState)("page",u.parseAsInteger.withDefault(1)),[T,U]=(0,u.useQueryState)("size",u.parseAsInteger.withDefault(20)),[W,X]=(0,u.useQueryState)("taskId",u.parseAsString),[Y,Z]=(0,u.useQueryState)("q",u.parseAsString.withDefault("")),[$,ab]=(0,e.useState)(!1),[ac,ad]=(0,u.useQueryState)("f",u.parseAsString.withDefault("")),ae=(0,e.useMemo)(()=>{if(!ac)return[];try{let a=JSON.parse(ac);return Array.isArray(a)?a:[]}catch{return[]}},[ac]),af=(0,e.useCallback)(a=>ad(a.length?JSON.stringify(a):null),[ad]),ag=(0,e.useCallback)(a=>Z(a||null),[Z]),ai=(0,e.useCallback)(()=>{a?(0,H.apiFetch)(`/api/tags?user=${encodeURIComponent(a)}`).then(a=>a.ok?a.json():[]).then(a=>n(Array.isArray(a)?a:[])).catch(()=>n([])):n([])},[a]);(0,e.useEffect)(()=>{ai()},[ai]);let al=(0,e.useCallback)((a,b)=>{g(c=>c.map(c=>c.upload_id===a||c.task_id===a?{...c,userTags:b}:c)),l(c=>c&&(c.upload_id===a||c.task_id===a)?{...c,userTags:b}:c)},[]),am=(0,e.useCallback)(a=>{n(b=>(b.some(b=>b.id===a.id)?b.map(b=>b.id===a.id?a:b):[...b,a]).slice().sort((a,b)=>a.kind===b.kind?a.name.localeCompare(b.name):a.kind.localeCompare(b.kind)))},[]),an=(0,e.useMemo)(()=>[{value:"all",label:"zh"===d?"全部业务标签":"All business tags"},...m.filter(a=>"business"===a.kind).map(a=>({value:a.id,label:a.usageCount?`${a.name} (${a.usageCount})`:a.name}))],[m,d]),ao=(0,e.useMemo)(()=>({traceId:c("tracePage.columnTraceId"),agent:c("tracePage.columnAgent"),status:c("tracePage.columnStatus"),userTags:c("tracePage.columnUserTags"),systemTags:c("tracePage.columnSystemTags"),task:c("tracePage.columnTask"),tokens:c("tracePage.columnTokens"),time:c("tracePage.columnTime"),actions:c("tracePage.columnActions")}),[c]),{widths:ap,setColumnWidth:aq,resetColumnWidths:ar,isCustomized:as}=function(){let[a,b]=(0,e.useState)(bv);(0,e.useEffect)(()=>{try{let a=window.localStorage.getItem(by);if(!a)return;let c=JSON.parse(a);b(a=>{let b={...a};return Object.keys(a).forEach(a=>{let d=c[a];"number"==typeof d&&Number.isFinite(d)&&(b[a]=bE(a,d))}),"number"==typeof c.tags&&Number.isFinite(c.tags)&&(b.systemTags=bE("systemTags",c.tags)),b})}catch{}},[]);let c=(0,e.useCallback)((a,c)=>{b(b=>{let d={...b,[a]:bE(a,c)};try{window.localStorage.setItem(by,JSON.stringify(d))}catch{}return d})},[]),d=(0,e.useCallback)(()=>{b(bv);try{window.localStorage.removeItem(by)}catch{}},[]),f=(0,e.useMemo)(()=>Object.keys(bv).some(b=>a[b]!==bv[b]),[a]);return{widths:a,setColumnWidth:c,resetColumnWidths:d,isCustomized:f}}(),{columnVisibility:at,setColumnVisible:au,resetColumnVisibility:av,isVisibilityCustomized:aw}=function(){let[a,b]=(0,e.useState)(bx);(0,e.useEffect)(()=>{try{let a=window.localStorage.getItem(bz);if(!a)return;let c=JSON.parse(a);b(a=>{let b={...a};return bu.forEach(a=>{"boolean"==typeof c[a]&&(b[a]=c[a])}),b})}catch{}},[]);let c=(0,e.useCallback)((a,c)=>{b(b=>{let d={...b,[a]:c};try{window.localStorage.setItem(bz,JSON.stringify(d))}catch{}return d})},[]),d=(0,e.useCallback)(()=>{b(bx);try{window.localStorage.removeItem(bz)}catch{}},[]),f=(0,e.useMemo)(()=>bu.some(b=>a[b]!==bx[b]),[a]);return{columnVisibility:a,setColumnVisible:c,resetColumnVisibility:d,isVisibilityCustomized:f}}(),ax=(0,e.useMemo)(()=>Object.keys(bv).filter(a=>at[a]).reduce((a,b)=>a+ap[b],0)+280*!!at.task,[ap,at]),ay=(0,e.useCallback)(a=>{l(a),X(a&&(a.task_id||a.upload_id)||null)},[X]),az=(0,e.useRef)(null);(0,e.useEffect)(()=>{if(!W){k&&l(null),az.current=null;return}let a=f.find(a=>a.task_id===W||a.upload_id===W);if(a){k!==a&&l(a);return}az.current!==W&&(az.current=W,(0,H.apiFetch)(`/api/observe/data?taskId=${encodeURIComponent(W)}&includeEvaluations=0&skipAutoEvalReady=1`).then(a=>a.json()).then(a=>{Array.isArray(a)&&a.length>0&&l(a[0])}).catch(()=>{az.current===W&&(az.current=null)}))},[W,f]),(0,e.useEffect)(()=>{if(!a)return;j(!0);let b="subagent"===K?"&onlySubagents=1":"all"===K?"&includeSubagents=1":"",c="all"!==D?`&skill=${encodeURIComponent(D)}`:"",d=Y?`&query=${encodeURIComponent(Y)}`:"",e=ae.length?`&filters=${encodeURIComponent(JSON.stringify(ae))}`:"",f="all"!==F?`&bizTag=${encodeURIComponent(F)}`:"";(0,H.apiFetch)(`/api/observe/data?user=${encodeURIComponent(a)}&includeEvaluations=0&fields=light&includeTags=1&skipAutoEvalReady=1${b}${c}${d}${e}${f}`).then(a=>a.json()).then(a=>g(Array.isArray(a)?a:[])).catch(()=>g([])).finally(()=>j(!1))},[a,K,D,F,Y,ac]);let aA=(0,e.useMemo)(()=>{let a=Date.now(),b=br[o]??1/0;return f.filter(c=>!("all"!==A&&""!==A&&bA(c)!==A||b!==1/0&&a-("string"==typeof c.timestamp?Date.parse(c.timestamp):Number(c.timestamp))>b)&&("all"===y||c.framework===y)&&("all"===t||t===bB(c))&&("all"===I||(c.agentOwnership??"user")===I)&&!0).sort((a,b)=>{let c=0;switch(M){case"timestamp":c=("string"==typeof a.timestamp?Date.parse(a.timestamp):Number(a.timestamp))-("string"==typeof b.timestamp?Date.parse(b.timestamp):Number(b.timestamp));break;case"agent":c=(a.agent||"").localeCompare(b.agent||"");break;case"status":{let d={running:0,failed:1,success:2};c=d[bB(a)]-d[bB(b)];break}case"latency":c=((0,bp.latencySecondsToMs)(a.latency)??0)-((0,bp.latencySecondsToMs)(b.latency)??0);break;case"tokens":c=(a.tokens||0)-(b.tokens||0);break;case"cost":c=(a.cost||0)-(b.cost||0)}return"asc"===O?c:-c})},[f,o,y,t,A,I,M,O]);(0,e.useEffect)(()=>{1!==R&&S(1)},[o,y,t,A,D,F,I,Y,ac,M,O,T]);let aB=a=>{a===M?Q("asc"===O?"desc":"asc"):(N(a),Q("timestamp"===a||"tokens"===a?"desc":"asc"))},aC=(0,e.useMemo)(()=>{let a=aA.length,b=aA.filter(a=>"failed"===bB(a)).length,c=a?aA.reduce((a,b)=>a+((0,bp.latencySecondsToMs)(b.latency)??0),0)/a:0,d=aA.reduce((a,b)=>a+(b.tool_call_error_count||0),0),e=aA.reduce((a,b)=>a+(b.tool_call_count||0),0);return{total:a,failedCount:b,avgLatency:c,errRate:e?Math.round(d/e*1e3)/10:0}},[aA]);aA.length;let aD=(0,e.useMemo)(()=>aA.slice((R-1)*T,R*T),[aA,R,T]),aE="all"!==I||"all"!==A||"all"!==D||"all"!==F||"all"!==t||"all"!==o||"all"!==y||"root"!==K||""!==Y||ae.length>0,aF=()=>{J("all"),B("all"),E("all"),G("all"),v("all"),s("all"),z("all"),L("root"),Z(null),af([])},aG=(0,e.useMemo)(()=>{let a=new Set;return f.forEach(b=>b.framework&&a.add(b.framework)),Array.from(a).sort()},[f]),aH=(0,e.useMemo)(()=>{let a=new Set;return f.forEach(b=>{let c=bA(b);c&&a.add(c)}),Array.from(a).sort((a,b)=>a.localeCompare(b))},[f]),aI=[{value:"all",label:c("nav.allOwnership")},{value:"user",label:c("nav.userAgent")},{value:"system",label:c("nav.systemAgent")}],aJ=[{value:"all",label:c("common.all")},{value:"running",label:c("tracePage.statusRunning")},{value:"success",label:c("tracePage.statusSuccess")},{value:"failed",label:c("tracePage.statusFailed")}],aK=[{value:"all",label:c("common.allTime")},{value:"7d",label:c("nav.last7Days")},{value:"24h",label:c("topbar.last24h")},{value:"1h",label:c("nav.last1Hour")},{value:"30m",label:c("nav.last30Min")}],aL=[{value:"all",label:c("common.all")},...aG.map(a=>({value:a,label:a}))],aM=[{value:"all",label:c("tracePage.filterMainAgentAll")},...aH.map(a=>({value:a,label:a}))];return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(w.AppTopBar,{title:(0,b.jsx)(bo.Term,{id:"trace",label:c("nav.trace")}),actions:void 0,showDefaultActions:!1}),(0,b.jsx)(x.PageContainer,{children:k?(0,b.jsx)(bI,{execution:k,onBack:()=>ay(null)}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-3 mb-4",children:[(0,b.jsx)(bL,{label:(0,b.jsx)(bo.Term,{id:"trace",label:c("tracePage.statTotal")}),value:aC.total.toLocaleString()}),(0,b.jsx)(bL,{label:(0,b.jsx)(bo.Term,{id:"fault-item",label:c("tracePage.statFailed")}),value:String(aC.failedCount),accent:aC.failedCount>0?"error":void 0}),(0,b.jsx)(bL,{label:c("tracePage.statAvgLatency"),value:(0,bp.formatDurationMs)(aC.avgLatency)}),(0,b.jsx)(bL,{label:(0,b.jsx)(bo.Term,{id:"tool-error-rate",label:c("tracePage.statToolErrorRate"),align:"end"}),value:`${aC.errRate}%`})]}),a&&(0,b.jsx)("div",{className:"mb-3",children:(0,b.jsx)(P,{clauses:ae,onChange:af,search:Y,onSearchChange:ag,user:a})}),(0,b.jsxs)("div",{className:"mb-2 flex flex-wrap items-center gap-2",children:[(0,b.jsxs)(C.Button,{variant:"outline",size:"sm",className:"h-7 gap-1.5 text-xs",onClick:()=>ab(a=>!a),children:[(0,b.jsx)(q.SlidersHorizontal,{className:"size-3.5"}),$?"zh"===d?"隐藏过滤":"Hide filters":"zh"===d?"过滤":"Show filters"]}),(0,b.jsx)("span",{"aria-hidden":!0,className:"h-5 w-px shrink-0 self-center bg-border"}),(0,b.jsx)(aj.Select,{label:c("nav.filterAgentOwnership"),value:I,onChange:J,options:aI,active:"all"!==I}),(0,b.jsx)(aj.Select,{label:c("tracePage.filterStatus"),value:t,onChange:v,options:aJ,active:"all"!==t}),(0,b.jsx)(aj.Select,{label:c("tracePage.filterTime"),value:o,onChange:s,options:aK,active:"all"!==o}),(0,b.jsx)(aj.Select,{label:c("tracePage.filterFramework"),value:y,onChange:z,options:aL,active:"all"!==y}),(0,b.jsx)(aj.Select,{label:c("tracePage.filterBusinessTag"),value:F,onChange:G,options:an,active:"all"!==F}),(0,b.jsx)(aj.Select,{label:c("tracePage.filterMainAgent"),value:A,onChange:B,options:aM,active:"all"!==A}),(0,b.jsx)(aj.Select,{label:"zh"===d?"范围":"Scope",value:K,onChange:L,options:[{value:"root",label:"zh"===d?"仅主 Agent":"Root only"},{value:"subagent",label:"zh"===d?"仅子 Agent":"Sub-agents only"},{value:"all",label:"zh"===d?"主 + 子 Agent":"Root + sub-agents"}],active:"root"!==K}),aE&&(0,b.jsxs)(C.Button,{variant:"ghost",size:"sm",onClick:aF,className:"ml-auto h-7 gap-1 text-xs text-foreground-muted",children:[(0,b.jsx)(i.X,{className:"size-3"}),c("tracePage.resetFilters")]})]}),(0,b.jsxs)("div",{className:"flex-1 min-h-0 flex gap-3",children:[$&&(0,b.jsxs)("aside",{className:"w-60 shrink-0 overflow-auto rounded-md border border-card-border bg-card",children:[(0,b.jsx)("div",{className:"px-3 py-2 border-b border-card-border",children:(0,b.jsx)("span",{className:"text-sm font-semibold",children:"zh"===d?"过滤器":"Filters"})}),a&&(0,b.jsx)("div",{className:"p-3",children:(0,b.jsx)(V,{clauses:ae,onChange:af,user:a})})]}),(0,b.jsxs)("div",{className:"flex-1 min-w-0 flex flex-col",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,b.jsxs)("h2",{className:"text-sm font-semibold text-foreground",children:[c("tracePage.listTitle"),(0,b.jsx)("span",{className:"ml-2 text-foreground-muted font-normal tabular-nums",children:aA.length})]}),(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(as||aw)&&(0,b.jsxs)(C.Button,{variant:"ghost",size:"sm",onClick:()=>{ar(),av()},className:"h-7 px-2 text-xs text-foreground-muted gap-1",children:[(0,b.jsx)(p.RotateCcw,{className:"size-3","aria-hidden":!0}),c("tracePage.resetColumns")]}),(0,b.jsxs)(aY.DropdownMenu,{children:[(0,b.jsx)(aY.DropdownMenuTrigger,{asChild:!0,children:(0,b.jsxs)(C.Button,{variant:"outline",size:"sm",className:"h-7 px-2 text-xs gap-1.5",children:[(0,b.jsx)(r,{className:"size-3.5","aria-hidden":!0}),c("tracePage.columnSettings")]})}),(0,b.jsxs)(aY.DropdownMenuContent,{align:"end",className:"w-44",children:[(0,b.jsx)(aY.DropdownMenuLabel,{children:c("tracePage.columnSettings")}),bu.map(a=>(0,b.jsx)(aY.DropdownMenuCheckboxItem,{checked:at[a],onCheckedChange:b=>au(a,!0===b),onSelect:a=>a.preventDefault(),children:ao[a]},a)),(0,b.jsx)(aY.DropdownMenuSeparator,{}),(0,b.jsxs)(aY.DropdownMenuItem,{onSelect:()=>{ar(),av()},children:[(0,b.jsx)(p.RotateCcw,{className:"size-3.5","aria-hidden":!0}),c("tracePage.resetColumns")]})]})]}),(0,b.jsx)("span",{className:"text-xs text-foreground-muted",children:c("tracePage.listHint")})]})]}),(0,b.jsx)(x.PageContent,{className:"flex flex-col",children:(0,b.jsx)("div",{className:"flex-1 min-h-0 rounded-md border border-card-border bg-card overflow-auto",children:h?(0,b.jsx)("div",{className:"p-4 space-y-2",children:[0,1,2,3,4].map(a=>(0,b.jsx)(ah,{className:"h-8 w-full"},a))}):0===aD.length?(0,b.jsx)(a$.EmptyState,{title:c("tracePage.emptyTitle"),description:aE?c("tracePage.emptyDescription"):void 0,action:aE?(0,b.jsx)(C.Button,{variant:"outline",size:"sm",onClick:aF,children:c("tracePage.resetFilters")}):void 0}):(0,b.jsxs)("table",{className:"w-full table-fixed text-sm",style:{minWidth:ax},children:[(0,b.jsxs)("colgroup",{children:[at.traceId&&(0,b.jsx)("col",{style:{width:ap.traceId}}),at.agent&&(0,b.jsx)("col",{style:{width:ap.agent}}),at.status&&(0,b.jsx)("col",{style:{width:ap.status}}),at.userTags&&(0,b.jsx)("col",{style:{width:ap.userTags}}),at.systemTags&&(0,b.jsx)("col",{style:{width:ap.systemTags}}),at.task&&(0,b.jsx)("col",{}),at.tokens&&(0,b.jsx)("col",{style:{width:ap.tokens}}),at.time&&(0,b.jsx)("col",{style:{width:ap.time}}),at.actions&&(0,b.jsx)("col",{style:{width:ap.actions}})]}),(0,b.jsx)("thead",{className:"sticky top-0 z-10",children:(0,b.jsxs)("tr",{className:"bg-background-secondary text-left",children:[at.traceId&&(0,b.jsx)(bM,{colKey:"traceId",currentWidth:ap.traceId,onResize:aq,children:(0,b.jsx)(bo.Term,{id:"trace",label:c("tracePage.columnTraceId")})}),at.agent&&(0,b.jsx)(bN,{sortKey:"agent",currentKey:M,dir:O,onSort:aB,colKey:"agent",currentWidth:ap.agent,onResize:aq,children:(0,b.jsx)(bo.Term,{id:"agent",label:c("tracePage.columnAgent")})}),at.status&&(0,b.jsx)(bN,{sortKey:"status",currentKey:M,dir:O,onSort:aB,colKey:"status",currentWidth:ap.status,onResize:aq,children:(0,b.jsx)(bo.Term,{id:"chain-status",label:c("tracePage.columnStatus")})}),at.userTags&&(0,b.jsx)(bM,{colKey:"userTags",currentWidth:ap.userTags,onResize:aq,children:c("tracePage.columnUserTags")}),at.systemTags&&(0,b.jsx)(bM,{colKey:"systemTags",currentWidth:ap.systemTags,onResize:aq,children:c("tracePage.columnSystemTags")}),at.task&&(0,b.jsx)(bM,{children:c("tracePage.columnTask")}),at.tokens&&(0,b.jsx)(bN,{sortKey:"tokens",currentKey:M,dir:O,onSort:aB,colKey:"tokens",currentWidth:ap.tokens,onResize:aq,children:(0,b.jsx)(bo.Term,{id:"tokens",label:c("tracePage.columnTokens")})}),at.time&&(0,b.jsx)(bN,{sortKey:"timestamp",currentKey:M,dir:O,onSort:aB,colKey:"time",currentWidth:ap.time,onResize:aq,children:c("tracePage.columnTime")}),at.actions&&(0,b.jsx)(bM,{align:"right",colKey:"actions",currentWidth:ap.actions,onResize:aq,children:c("tracePage.columnActions")})]})}),(0,b.jsx)("tbody",{children:aD.map((a,c)=>(0,b.jsx)(bO,{execution:a,columnVisibility:at,availableTags:m,onTagsChanged:al,onTagCreated:am,onClick:()=>ay(a)},(a.task_id||a.upload_id||c)+""))})]})})}),aA.length>0&&(0,b.jsx)(x.PageFooter,{className:"border-0 mt-3 pt-0 shrink-0",children:(0,b.jsx)(ak.Pagination,{className:"w-full",page:R,pageSize:T,total:aA.length,onPageChange:S,onPageSizeChange:U,pageSizes:bs,pageSizeLabel:a=>c("tracePage.pageSize",{n:String(a)}),summary:(a,b,d)=>c("tracePage.pageSummary",{start:String(a),end:String(b),total:String(d)})})})]})]})]})})]})}function bI({execution:a,onBack:i}){let{t:j,locale:k}=(0,aa.useLocale)(),l=(0,d.useRouter)(),m=(0,d.useSearchParams)(),[n,p]=(0,e.useState)(null),[q,r]=(0,e.useState)(!1),s=a.task_id||a.upload_id||"",t=!!a.is_subagent,u=a.parent_execution_id||null,w=a.subagent_type||null,x=a.subagent_name||null,z=(0,e.useCallback)(a=>{if(!a)return;let b=new URLSearchParams(m?.toString()??"");b.set("taskId",a),l.push(`${window.location.pathname}?${b.toString()}`,{scroll:!1})},[l,m]),A=(0,e.useCallback)(async()=>{if(u)try{let a=await (0,H.apiFetch)(`/api/observe/data?executionId=${encodeURIComponent(u)}&includeEvaluations=0`);if(!a.ok)return;let b=await a.json(),c=Array.isArray(b)?b[0]:b?.data?.[0]||b,d=c?.task_id||c?.upload_id;d&&z(d)}catch{}},[u,z]),B=bB(a),[D,F]=(0,e.useState)("running"===B),[G,I]=(0,e.useState)(5),[J,K]=(0,e.useState)(0),L=(0,e.useRef)(null);(0,e.useEffect)(()=>{L.current=n},[n]);let M=(0,e.useCallback)((a=!1)=>{if(!s)return;let b=!L.current;!a&&b&&r(!0),(0,H.apiFetch)(`/api/observe/session?taskId=${encodeURIComponent(s)}`).then(a=>a.ok?a.json():{error:"Fetch failed"}).then(a=>{p(a),K(0)}).catch(()=>{!a&&b&&p({error:"Network error"})}).finally(()=>{!a&&b&&r(!1)})},[s]);(0,e.useEffect)(()=>{M(!1)},[M]),(0,e.useEffect)(()=>{if(!D||"running"!==B)return;let a=setInterval(()=>M(!0),1e3*G);return()=>clearInterval(a)},[D,G,M,B]),(0,e.useEffect)(()=>{let a=setInterval(()=>K(a=>a+1),1e3);return()=>clearInterval(a)},[]);let{framework:N,latency:O,tokens:P,cost:Q}=a,R="running"===B,S=!q&&!!n&&!n.error;return(0,b.jsxs)("div",{className:"flex flex-col h-full min-h-0",children:[(0,b.jsxs)("div",{className:"rounded-md border border-border bg-card p-3 mb-3 flex flex-wrap items-center gap-2",children:[(0,b.jsxs)(C.Button,{variant:"ghost",size:"sm",onClick:i,className:"text-foreground-muted h-7 px-2",children:[(0,b.jsx)(f.ArrowLeft,{className:"size-3.5","aria-hidden":!0}),j("tracePage.backToList")]}),t&&u&&(0,b.jsxs)(C.Button,{variant:"ghost",size:"sm",onClick:A,className:"text-foreground-muted h-7 px-2",title:"zh"===k?"返回父 Agent 执行":"Back to parent agent execution",children:[(0,b.jsx)(f.ArrowLeft,{className:"size-3.5","aria-hidden":!0}),"zh"===k?"父执行":"Parent"]}),(0,b.jsx)(ag,{orientation:"vertical",className:"h-5"}),t&&(0,b.jsxs)("span",{title:x||"",className:"text-[10px] font-bold tracking-wider px-1.5 py-0.5 rounded-sm bg-primary/10 text-primary border border-primary/30 shrink-0",children:["SUB-AGENT",w?` \xb7 ${w}`:""]}),(0,b.jsx)(a0,{value:s,head:8,tail:6}),(0,b.jsx)(aZ.StatusBadge,{status:"running"===B?"running":"failed"===B?"error":"success",label:j("running"===B?"tracePage.statusRunning":"failed"===B?"tracePage.statusFailed":"tracePage.statusNormal")}),N&&(0,b.jsx)(bV,{variant:"framework",icon:o.Terminal,children:bC(N)}),"number"==typeof P&&P>0||"number"==typeof O&&O>0||"number"==typeof Q&&Q>0?(0,b.jsx)(ag,{orientation:"vertical",className:"h-5"}):null,"number"==typeof P&&P>0&&(0,b.jsx)(bK,{label:(0,b.jsx)(bo.Term,{id:"tokens",label:j("tracePage.metricTokens")}),value:P.toLocaleString()}),"number"==typeof O&&O>0&&(0,b.jsx)(bK,{label:j("tracePage.metricDuration"),value:(0,bp.formatLatencySeconds)(O)}),"number"==typeof Q&&Q>0&&(0,b.jsx)(bK,{label:j("tracePage.metricCost"),value:`$${Q.toFixed(4)}`}),(0,b.jsxs)("div",{className:"ml-auto flex flex-wrap items-center gap-2",children:[(0,b.jsx)(ai.TooltipProvider,{delayDuration:250,children:(0,b.jsxs)(ai.Tooltip,{children:[(0,b.jsx)(ai.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)(C.Button,{variant:D&&R?"default":"outline",size:"sm",disabled:!R,onClick:()=>R&&F(a=>!a),"aria-pressed":D&&R,className:"h-7 px-2.5 text-xs",children:[(0,b.jsx)(h.RefreshCw,{className:(0,E.cn)("size-3.5",D&&R&&"animate-spin")}),j(D&&R?"tracePage.autoRefresh":"tracePage.paused")]})}),(0,b.jsx)(ai.TooltipContent,{side:"bottom",className:"text-xs",children:j(R?"tracePage.autoRefresh":"tracePage.autoRefreshUnavailable")})]})}),D&&R&&(0,b.jsx)(aj.Select,{value:String(G),onChange:a=>I(Number(a)),options:bt.map(a=>({value:String(a),label:`${a}s`})),"aria-label":j("tracePage.refreshInterval")}),(0,b.jsx)("span",{className:"text-xs text-foreground-muted whitespace-nowrap tabular-nums min-w-[36px]",children:0===J?j("tracePage.justNow"):j("tracePage.secondsAgo",{s:String(J)})}),(0,b.jsx)(C.Button,{variant:"outline",size:"icon",onClick:()=>M(!0),"aria-label":j("tracePage.refreshNow"),className:"size-7",children:(0,b.jsx)(h.RefreshCw,{className:"size-3.5"})}),(0,b.jsx)(ag,{orientation:"vertical",className:"h-5"}),(0,b.jsx)(C.Button,{variant:"default",size:"sm",asChild:!0,className:"h-7 text-xs",children:(0,b.jsx)(c.default,{href:`${bq}/fault?taskId=${s}`,children:j("tracePage.diagnosis")})}),(0,b.jsxs)(C.Button,{variant:"outline",size:"sm",onClick:()=>{if(n&&!n.error)try{let a=function(a){if(!a)return a;let b=JSON.parse(JSON.stringify(a));return b.startTime&&(b.startTime=bD(b.startTime)),Array.isArray(b.interactions)&&(b.interactions=b.interactions.map(a=>{let b={...a};return b.timestamp&&(b.timestamp=bD(b.timestamp)),b.message?.timestamp&&(b.message.timestamp=bD(b.message.timestamp)),b.timeInfo?.created&&(b.timeInfo.created=bD(b.timeInfo.created)),b})),b}(n),b=new Blob([JSON.stringify(a,null,2)],{type:"application/json;charset=utf-8"}),c=URL.createObjectURL(b),d=document.createElement("a");d.href=c,d.download=`trace-${s.replace(/[\\/:*?"<>|]+/g,"_").replace(/\s+/g,"_").slice(0,120)||"trace"}-session.json`,document.body.appendChild(d),d.click(),d.remove(),URL.revokeObjectURL(c),v.toast.success("zh"===k?"JSON 已开始下载":"JSON download started")}catch(a){console.error("[trace] download session json failed:",a),v.toast.error("zh"===k?"下载 JSON 失败":"Failed to download JSON")}},disabled:!S,title:S?"zh"===k?"下载会话数据(原始 JSON)":"Download session data raw JSON":"zh"===k?"会话数据加载后可下载":"Download available after session data loads",className:"h-7 text-xs",children:[(0,b.jsx)(g.Download,{className:"size-3.5","aria-hidden":!0}),"zh"===k?"保存trace":"Save trace"]})]})]}),"failed"===B&&a.failures&&a.failures.length>0&&(0,b.jsx)(bJ,{failures:a.failures}),(0,b.jsx)("h2",{className:"text-sm font-semibold text-foreground mb-2",children:j("tracePage.executionTrace")}),(0,b.jsx)("div",{className:"min-h-[200px] flex-1 min-h-0",children:q?(0,b.jsxs)("div",{className:"rounded-md border border-card-border bg-card p-4 space-y-2",children:[(0,b.jsx)(ah,{className:"h-6 w-1/2"}),(0,b.jsx)(ah,{className:"h-6 w-3/4"}),(0,b.jsx)(ah,{className:"h-6 w-2/3"}),(0,b.jsx)(ah,{className:"h-6 w-1/2"})]}):n?.error?(0,b.jsx)("div",{className:"rounded-md border border-error-border bg-error-subtle text-error p-4 text-sm",role:"alert",children:n.error}):n?.interactions?.length>0?(0,b.jsx)(y.default,{interactions:n.interactions,onSubagentNavigate:z,rootExecutionId:a.upload_id||a.task_id}):(0,b.jsx)("div",{className:"rounded-md border border-card-border bg-card",children:(0,b.jsx)(a$.EmptyState,{title:j("tracePage.noTrace")})})})]})}function bJ({failures:a}){let{t:c}=(0,aa.useLocale)();return(0,b.jsxs)("div",{className:"mb-3",children:[(0,b.jsx)("h3",{className:"text-sm font-semibold text-foreground mb-2",children:c("tracePage.failureDetails")}),(0,b.jsx)("div",{className:"rounded-md border-l-4 border-l-error border border-card-border bg-error-subtle/30 overflow-hidden",children:a.map((d,e)=>(0,b.jsxs)("div",{className:(0,E.cn)("p-3 grid gap-1.5",e<a.length-1&&"border-b border-card-border"),children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 flex-wrap",children:[(0,b.jsxs)("span",{className:"text-xs font-semibold text-error inline-flex items-center gap-1",children:[(0,b.jsx)(j.XCircle,{className:"size-3.5","aria-hidden":!0}),d.failure_type||c("tracePage.unknownError")]}),d.attribution&&(0,b.jsx)("span",{className:"inline-flex items-center rounded-sm border border-border bg-background-secondary text-foreground-muted px-1.5 py-0 text-xs font-medium uppercase tracking-wide",children:d.attribution})]}),d.description&&(0,b.jsx)("p",{className:"text-sm text-foreground",children:d.description}),d.context&&(0,b.jsxs)("p",{className:"text-xs text-foreground-muted",children:[(0,b.jsx)("span",{className:"font-medium",children:c("tracePage.contextLabel")}),d.context]}),d.recovery&&(0,b.jsxs)("p",{className:"text-xs text-success",children:[(0,b.jsx)("span",{className:"font-medium",children:c("tracePage.recoveryLabel")}),d.recovery]})]},e))})]})}function bK({label:a,value:c}){return(0,b.jsxs)("span",{className:"inline-flex items-baseline gap-1 text-xs",children:[(0,b.jsx)("span",{className:"text-foreground-muted",children:a}),(0,b.jsx)("span",{className:"font-semibold text-foreground tabular-nums",children:c})]})}function bL({label:a,value:c,accent:d}){return(0,b.jsxs)("div",{className:"rounded-md border border-card-border bg-card p-3",children:[(0,b.jsx)("div",{className:"text-xs text-foreground-muted",children:a}),(0,b.jsx)("div",{className:(0,E.cn)("mt-1 text-xl font-semibold tabular-nums","error"===d?"text-error":"text-foreground"),children:c})]})}function bM({children:a,align:c,className:d,colKey:e,currentWidth:f,onResize:g}){let h=!!(e&&g&&null!=f);return(0,b.jsxs)("th",{className:(0,E.cn)("relative px-3 py-2 text-xs font-medium text-foreground-muted border-b border-border whitespace-nowrap","right"===c&&"text-right","center"===c&&"text-center",d),children:[a,h&&(0,b.jsx)(bF,{colKey:e,currentWidth:f,onResize:g})]})}function bN({children:a,sortKey:c,currentKey:d,dir:e,onSort:f,colKey:g,currentWidth:h,onResize:i}){let j=c===d,k=!!(g&&i&&null!=h);return(0,b.jsxs)("th",{scope:"col",tabIndex:0,role:"columnheader","aria-sort":j?"asc"===e?"ascending":"descending":"none",onClick:()=>f(c),onKeyDown:a=>{("Enter"===a.key||" "===a.key)&&(a.preventDefault(),f(c))},className:(0,E.cn)("relative px-3 py-2 text-xs font-medium border-b border-border whitespace-nowrap cursor-pointer select-none","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",j?"text-primary":"text-foreground-muted"),children:[(0,b.jsxs)("span",{className:"inline-flex items-center gap-1",children:[a,(0,b.jsx)("span",{className:(0,E.cn)("text-[10px]",j?"opacity-100":"opacity-40"),children:j?"asc"===e?"↑":"↓":"↕"})]}),k&&(0,b.jsx)(bF,{colKey:g,currentWidth:h,onResize:i})]})}function bO({execution:a,columnVisibility:d,availableTags:e,onTagsChanged:f,onTagCreated:g,onClick:h}){let i,j,{t:m}=(0,aa.useLocale)(),p=a.task_id||a.upload_id||"",q=bB(a),r=(i=Array.isArray(a.invoked_skills)?a.invoked_skills:Array.isArray(a.invokedSkills)?a.invokedSkills:[],j=new Set,i.forEach(a=>{let b=a?.name?.trim();b&&j.add(b)}),Array.from(j)).length,s=new Set((a.agents??[]).filter(Boolean)).size,t=m("running"===q?"tracePage.statusRunning":"failed"===q?"tracePage.statusFailed":"tracePage.statusSuccess");return(0,b.jsxs)("tr",{onClick:h,onKeyDown:a=>{"Enter"===a.key&&(a.preventDefault(),h())},tabIndex:0,role:"button","aria-label":`${m("tracePage.columnTraceId")} ${p}`,className:"border-b border-border hover:bg-background-secondary focus-visible:outline-none focus-visible:bg-background-secondary focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset cursor-pointer transition-colors",children:[d.traceId&&(0,b.jsx)(bW,{children:(0,b.jsx)(a0,{value:p,head:6,tail:4})}),d.agent&&(0,b.jsx)(bW,{children:(0,b.jsx)(a1,{className:"text-foreground text-sm",children:a.agent||(a.agents&&a.agents.length>0?a.agents[0]:null)||a.framework||"-"})}),d.status&&(0,b.jsx)(bW,{children:(0,b.jsx)(aZ.StatusBadge,{status:"running"===q?"running":"failed"===q?"error":"success",label:t})}),d.userTags&&(0,b.jsx)(bW,{children:(0,b.jsx)(bS,{execution:a,availableTags:e,onTagsChanged:f,onTagCreated:g})}),d.systemTags&&(0,b.jsx)(bW,{children:(0,b.jsxs)("div",{className:"flex gap-1 flex-wrap",children:[a.is_subagent?(0,b.jsx)("span",{title:a.subagent_name||a.subagent_type||"",className:"text-[9px] font-bold tracking-wider px-1.5 py-0.5 rounded-sm bg-primary/10 text-primary border border-primary/30",children:"SUB"}):s>1&&(0,b.jsx)(bV,{variant:"agent",icon:l.Users,children:"Multi-Agent"}),r>0&&(0,b.jsx)(bV,{variant:"skill",icon:n,children:"Skills"}),a.framework&&(0,b.jsx)(bV,{variant:"framework",icon:o.Terminal,children:bC(a.framework)})]})}),d.task&&(0,b.jsx)(bW,{children:(0,b.jsx)(a1,{className:"text-foreground text-sm",children:a.query||m("tracePage.noQuery")})}),d.tokens&&(0,b.jsx)(bW,{children:(0,b.jsx)("span",{className:"text-xs text-foreground-secondary font-mono tabular-nums whitespace-nowrap",children:null!=a.tokens?a.tokens.toLocaleString():"-"})}),d.time&&(0,b.jsx)(bW,{children:(0,b.jsx)(bn,{value:a.timestamp,className:"text-xs text-foreground-secondary font-mono whitespace-nowrap"})}),d.actions&&(0,b.jsx)(bW,{align:"right",children:(0,b.jsxs)("div",{className:"inline-flex gap-1 group",onClick:a=>a.stopPropagation(),children:[(0,b.jsx)(C.Button,{variant:"ghost",size:"sm",onClick:h,className:"h-7 px-2 text-xs",children:m("tracePage.rowDetail")}),(0,b.jsx)(C.Button,{variant:"ghost",size:"sm",asChild:!0,className:"h-7 px-2 text-xs",children:(0,b.jsx)(c.default,{href:`${bq}/fault?taskId=${p}`,children:m("tracePage.rowAnalysis")})}),(0,b.jsx)(C.Button,{variant:"ghost",size:"sm",asChild:!0,className:"h-7 px-2 text-xs",children:(0,b.jsxs)(c.default,{href:`${bq}/eval/trajectory/${p}`,children:[(0,b.jsx)(k.Wrench,{className:"size-3"}),m("tracePage.rowEval")]})})]})})]})}async function bP(a){try{let b=await a.json();return String(b?.error||a.statusText||"Request failed")}catch{return a.statusText||"Request failed"}}function bQ(a,b){return"version"===a?"zh"===b?"版本":"Version":"zh"===b?"业务":"Business"}function bR({tag:a,removable:c}){return(0,b.jsxs)("span",{className:"inline-flex max-w-full items-center gap-1 rounded-sm border border-border bg-background px-1.5 py-0.5 text-xs text-foreground-secondary leading-none",children:[(0,b.jsx)("span",{className:"size-2 rounded-full shrink-0",style:{backgroundColor:a.color},"aria-hidden":!0}),(0,b.jsx)("span",{className:"truncate",children:a.name}),c&&(0,b.jsx)(i.X,{className:"size-3 shrink-0 text-foreground-muted","aria-hidden":!0})]})}function bS({execution:a,availableTags:c,onTagsChanged:d,onTagCreated:f,mode:g="cell"}){let{user:h}=(0,_.useAuth)(),{t:j,locale:k}=(0,aa.useLocale)(),l=a.upload_id||a.task_id||"",m=a.userTags??[],n=new Set(m.map(a=>a.id)),[o,p]=(0,e.useState)(!1),[q,r]=(0,e.useState)(null),[t,u]=(0,e.useState)(!1),[w,x]=(0,e.useState)(""),[y,z]=(0,e.useState)("business"),[A,D]=(0,e.useState)("#6366f1"),E=(0,e.useCallback)(async a=>{if(!a.ok)throw Error(await bP(a));let b=await a.json(),c=Array.isArray(b?.tags)?b.tags:[];return d(l,c),c},[l,d]),F=(0,e.useCallback)(async a=>{if(h&&l){r(a.id);try{let b=n.has(a.id)?await (0,H.apiFetch)(`/api/observe/executions/${encodeURIComponent(l)}/tags?user=${encodeURIComponent(h)}&tagId=${encodeURIComponent(a.id)}`,{method:"DELETE"}):await (0,H.apiFetch)(`/api/observe/executions/${encodeURIComponent(l)}/tags`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({user:h,tagIds:[a.id]})});await E(b)}catch(a){v.toast.error(a instanceof Error?a.message:j("tracePage.tagSaveFailed"))}finally{r(null)}}},[E,l,n,j,h]),G=(0,e.useCallback)(async()=>{if(h&&l&&w.trim()){u(!0);try{let a=await (0,H.apiFetch)("/api/tags",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({user:h,name:w.trim(),kind:y,color:A})});if(!a.ok)throw Error(await bP(a));let b=await a.json();f(b);let c=await (0,H.apiFetch)(`/api/observe/executions/${encodeURIComponent(l)}/tags`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({user:h,tagIds:[b.id]})});await E(c),x(""),z("business"),D("#6366f1")}catch(a){v.toast.error(a instanceof Error?a.message:j("tracePage.tagCreateFailed"))}finally{u(!1)}}},[E,l,A,y,w,f,j,h]),I=c.filter(a=>"version"===a.kind),J=c.filter(a=>"business"===a.kind),K="button"===g?(0,b.jsxs)(C.Button,{type:"button",variant:"outline",size:"sm",className:"h-7 gap-1.5 px-2 text-xs",title:j("tracePage.editTags"),onClick:a=>a.stopPropagation(),children:[(0,b.jsx)(s.Plus,{className:"size-3.5","aria-hidden":!0}),j("tracePage.editTags")]}):(0,b.jsxs)("button",{type:"button",className:"flex min-h-7 w-full min-w-0 items-center gap-1.5 rounded-sm px-1 py-0.5 text-left hover:bg-background-secondary focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",title:j("tracePage.editTags"),onClick:a=>a.stopPropagation(),children:[(0,b.jsx)("span",{className:"flex min-w-0 flex-1 flex-wrap gap-1",children:m.map(a=>(0,b.jsx)(bR,{tag:a},a.id))}),(0,b.jsx)("span",{className:"inline-flex size-6 shrink-0 items-center justify-center rounded-sm text-foreground-muted",children:(0,b.jsx)(s.Plus,{className:"size-3.5","aria-hidden":!0})})]});return(0,b.jsxs)(aV,{open:o,onOpenChange:p,children:[(0,b.jsx)(aW,{asChild:!0,children:K}),(0,b.jsx)(aX,{align:"start",className:"w-80 p-3",onClick:a=>a.stopPropagation(),children:(0,b.jsxs)("div",{className:"space-y-3",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,b.jsx)("span",{className:"text-sm font-semibold text-foreground",children:j("tracePage.editTags")}),(0,b.jsxs)("div",{className:"flex items-center gap-1",children:[(0,b.jsx)("span",{className:"text-xs text-foreground-muted tabular-nums",children:m.length}),(0,b.jsx)(C.Button,{type:"button",variant:"ghost",size:"icon",className:"size-7","aria-label":"zh"===k?"关闭":"Close",onClick:()=>p(!1),children:(0,b.jsx)(i.X,{className:"size-3.5","aria-hidden":!0})})]})]}),(0,b.jsx)(bT,{title:bQ("version",k),tags:I,selectedIds:n,savingId:q,onToggle:F}),(0,b.jsx)(bT,{title:bQ("business",k),tags:J,selectedIds:n,savingId:q,onToggle:F}),(0,b.jsxs)("div",{className:"border-t border-border pt-3 space-y-2",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsxs)("select",{value:y,onChange:a=>z(a.target.value),className:"h-8 rounded-md border border-input bg-background px-2 text-xs outline-none focus:ring-1 focus:ring-ring",children:[(0,b.jsx)("option",{value:"business",children:bQ("business",k)}),(0,b.jsx)("option",{value:"version",children:bQ("version",k)})]}),(0,b.jsx)("input",{type:"color",value:A,onChange:a=>D(a.target.value),className:"size-8 rounded border border-input bg-background p-0.5","aria-label":j("tracePage.tagColor")})]}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(B.Input,{value:w,onChange:a=>x(a.target.value),onKeyDown:a=>{"Enter"===a.key&&(a.preventDefault(),G())},placeholder:j("tracePage.newTagPlaceholder"),className:"h-8 text-sm"}),(0,b.jsxs)(C.Button,{type:"button",size:"sm",className:"h-8 px-2",disabled:t||!w.trim(),onClick:()=>void G(),children:[(0,b.jsx)(s.Plus,{className:"size-3.5","aria-hidden":!0}),j("tracePage.createTag")]})]})]})]})})]})}function bT({title:a,tags:c,selectedIds:d,savingId:e,onToggle:f}){let{t:g}=(0,aa.useLocale)();return(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("div",{className:"text-xs font-medium text-foreground-muted",children:a}),0===c.length?(0,b.jsx)("p",{className:"text-xs text-foreground-muted",children:g("tracePage.noTagsAvailable")}):(0,b.jsx)("div",{className:"max-h-36 overflow-auto space-y-1 pr-1",children:c.map(a=>{let c=d.has(a.id);return(0,b.jsxs)("button",{type:"button",disabled:e===a.id,onClick:()=>f(a),className:(0,E.cn)("flex h-8 w-full items-center gap-2 rounded-sm px-2 text-left text-sm hover:bg-background-secondary disabled:opacity-60",c&&"bg-primary-subtle text-primary"),children:[(0,b.jsx)("span",{className:"size-2 rounded-full shrink-0",style:{backgroundColor:a.color},"aria-hidden":!0}),(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate",children:a.name}),c&&(0,b.jsx)(t.Check,{className:"size-3.5 shrink-0","aria-hidden":!0})]},a.id)})})]})}let bU={agent:"bg-primary-subtle text-primary border-primary-border",skill:"bg-primary-subtle text-primary border-primary-border",framework:"bg-background-secondary text-foreground-secondary border-border"};function bV({children:a,variant:c="framework",icon:d}){return(0,b.jsxs)("span",{className:(0,E.cn)("inline-flex items-center gap-1 rounded-sm border px-1.5 py-0.5 text-xs font-medium whitespace-nowrap leading-none",bU[c]),children:[d&&(0,b.jsx)(d,{className:"size-3 shrink-0","aria-hidden":!0}),a]})}function bW({children:a,align:c,className:d}){return(0,b.jsx)("td",{className:(0,E.cn)("px-3 py-2 text-sm text-foreground","right"===c&&"text-right","center"===c&&"text-center",d),children:a})}a.s(["default",()=>bG],536942)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=src_app_%28main%29_trace_page_tsx_41e7865d._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[478614,a=>{"use strict";a.s(["presetEvaluators",0,[{id:"preset-agent-task-completion",name:"Agent 任务完成度",description:"评估 Agent 是否成功、完整地实现了用户目标,适合回归集和上线验收。",evaluatorType:"LLM",source:"preset",targetTypes:["结果"],objectives:["任务完成","内容质量"],scenarios:["Agent通用评测"],runMode:"LLM Judge",scoreRange:"0-1",popularity:96,mappedMetrics:["目标达成","步骤完整","答案可用"],status:"ready",runtimeHref:"/eval/trajectory",runtimeNote:"opencode-task-completion-evaluator.ts (single opencode agent)"},{id:"preset-agent-trace-quality",name:"Agent 轨迹质量",description:"评估 Agent 内部执行轨迹是否准确、稳定,关注规划、调用和中间结果。基于 opencode 单主评估器完成 completeness / tool-choice / attribution 判断,并结合规则冗余检测。",evaluatorType:"LLM",source:"preset",targetTypes:["轨迹"],objectives:["轨迹质量"],scenarios:["Agent通用评测","轨迹评测"],runMode:"Trace Judge (opencode)",scoreRange:"0-1",popularity:91,mappedMetrics:["轨迹准确性","推理连续性","异常处理"],status:"ready",runtimeHref:"/eval/trajectory",runtimeNote:"opencode-trajectory-evaluator.ts (single opencode agent)"}]])},645370,a=>{"use strict";let b=/^[A-Za-z][A-Za-z0-9_-]{1,63}$/;function c(a){return b.test(a.trim())}let d=["input","output","reference_output","trajectory"];function e(a){let b,c=new Set,e=/\{\{\s*([A-Za-z0-9_]+)\s*\}\}/g;for(;null!==(b=e.exec(a));){let a=b[1];d.includes(a)||c.add(a)}return Array.from(c)}a.s(["findUnsupportedCustomEvaluatorVariables",()=>e,"isValidCustomEvaluatorName",()=>c])}];
|
|
1
|
+
module.exports=[478614,a=>{"use strict";a.s(["presetEvaluators",0,[{id:"preset-agent-task-completion",name:"Agent 任务完成度",description:"评估 Agent 是否成功、完整地实现了用户目标,适合回归集和上线验收。",evaluatorType:"LLM",source:"preset",targetTypes:["结果"],objectives:["任务完成","内容质量"],scenarios:["Agent通用评测"],runMode:"LLM Judge",scoreRange:"0-1",popularity:96,mappedMetrics:["目标达成","步骤完整","答案可用"],status:"ready",runtimeHref:"/eval/trajectory",runtimeNote:"opencode-task-completion-evaluator.ts (single opencode agent)"},{id:"preset-agent-trace-quality",name:"Agent 轨迹质量",description:"评估 Agent 内部执行轨迹是否准确、稳定,关注规划、调用和中间结果。基于 opencode 单主评估器完成 completeness / tool-choice / attribution 判断,并结合规则冗余检测。",evaluatorType:"LLM",source:"preset",targetTypes:["轨迹"],objectives:["轨迹质量"],scenarios:["Agent通用评测","轨迹评测"],runMode:"Trace Judge (opencode)",scoreRange:"0-1",popularity:91,mappedMetrics:["轨迹准确性","推理连续性","异常处理"],status:"ready",runtimeHref:"/eval/trajectory",runtimeNote:"opencode-trajectory-evaluator.ts (single opencode agent)"}]])},187563,a=>{"use strict";function b(a,b){return a.toFixed(b).replace(/\.0+$/,"").replace(/(\.\d*?)0+$/,"$1")}function c(a){return null==a||!Number.isFinite(a)||a<=0?null:1e3*a}function d(a){if(null==a||!Number.isFinite(a)||a<=0)return"-";if(a<1e3)return`${Math.round(a)}ms`;if(a<6e4){let c=a/1e3;return`${b(c,c<10?2:1)}s`}if(a<36e5){let c=a/6e4;return`${b(c,c<10?2:1)}m`}let c=a/36e5;return`${b(c,c<10?2:1)}h`}function e(a){return d(c(a))}a.s(["formatDurationMs",()=>d,"formatLatencySeconds",()=>e,"latencySecondsToMs",()=>c])},645370,a=>{"use strict";let b=/^[A-Za-z][A-Za-z0-9_-]{1,63}$/;function c(a){return b.test(a.trim())}let d=["input","output","reference_output","trajectory"];function e(a){let b,c=new Set,e=/\{\{\s*([A-Za-z0-9_]+)\s*\}\}/g;for(;null!==(b=e.exec(a));){let a=b[1];d.includes(a)||c.add(a)}return Array.from(c)}a.s(["findUnsupportedCustomEvaluatorVariables",()=>e,"isValidCustomEvaluatorName",()=>c])}];
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=src_lib_070bb60a._.js.map
|