agent-insight 0.2.0-beta → 0.2.2-beta
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/server/app/(main)/accessconfig/install/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/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)/fault/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_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)/quality/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-generator/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)/trace/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.html +1 -1
- package/.next/standalone/.next/server/app/_not-found.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- 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 +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/accessconfig/channels.html +1 -1
- package/.next/standalone/.next/server/app/accessconfig/channels.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig/channels.segments/!KG1haW4p/accessconfig/channels/__PAGE__.segment.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/accessconfig/channels.segments/_full.segment.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/accessconfig/channels.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig/health.html +1 -1
- package/.next/standalone/.next/server/app/accessconfig/health.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig/health.segments/!KG1haW4p/accessconfig/health/__PAGE__.segment.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/accessconfig/health.segments/_full.segment.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/accessconfig/health.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig/install.html +1 -1
- package/.next/standalone/.next/server/app/accessconfig/install.rsc +2 -2
- 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 +1 -1
- package/.next/standalone/.next/server/app/accessconfig/install.segments/_full.segment.rsc +2 -2
- 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 +1 -1
- package/.next/standalone/.next/server/app/accessconfig/install.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig/webhooks.html +1 -1
- package/.next/standalone/.next/server/app/accessconfig/webhooks.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/!KG1haW4p/accessconfig/webhooks/__PAGE__.segment.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/_full.segment.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig.html +1 -1
- package/.next/standalone/.next/server/app/accessconfig.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/accessconfig.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/accessconfig.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/agents.html +1 -1
- package/.next/standalone/.next/server/app/agents.rsc +1 -1
- package/.next/standalone/.next/server/app/agents.segments/!KG1haW4p/agents/__PAGE__.segment.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/agents.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/agents.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/agents.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/agents.segments/_tree.segment.rsc +1 -1
- 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/results/[id]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/eval/trajectory/run/route.js +6 -6
- package/.next/standalone/.next/server/app/api/eval/trajectory/run/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/eval/trajectory/runs/route.js +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/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-opt/chat/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 +2 -2
- 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 +1 -1
- package/.next/standalone/.next/server/app/dashboard.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dashboard.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dashboard.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dataset.html +1 -1
- package/.next/standalone/.next/server/app/dataset.rsc +2 -2
- 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 +1 -1
- package/.next/standalone/.next/server/app/dataset.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/dataset.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dataset.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/dataset.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/eval/trajectory.html +1 -1
- package/.next/standalone/.next/server/app/eval/trajectory.rsc +2 -2
- 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 +1 -1
- package/.next/standalone/.next/server/app/eval/trajectory.segments/_full.segment.rsc +2 -2
- 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 +1 -1
- package/.next/standalone/.next/server/app/eval/trajectory.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/eval.html +1 -1
- package/.next/standalone/.next/server/app/eval.rsc +2 -2
- 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 +1 -1
- package/.next/standalone/.next/server/app/eval.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/eval.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/eval.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/eval.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/fault.html +1 -1
- package/.next/standalone/.next/server/app/fault.rsc +2 -2
- 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 +1 -1
- package/.next/standalone/.next/server/app/fault.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/fault.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/fault.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/fault.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.html +1 -1
- package/.next/standalone/.next/server/app/index.rsc +1 -1
- package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.html +1 -1
- package/.next/standalone/.next/server/app/login.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/memory.segments/!KG1haW4p/memory/__PAGE__.segment.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/memory.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/memory.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/memory.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/memory.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/metrics.html +1 -1
- package/.next/standalone/.next/server/app/metrics.rsc +2 -2
- 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 +1 -1
- package/.next/standalone/.next/server/app/metrics.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/metrics.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/metrics.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/metrics.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/modelconfig/registry.html +1 -1
- package/.next/standalone/.next/server/app/modelconfig/registry.rsc +2 -2
- 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 +1 -1
- package/.next/standalone/.next/server/app/modelconfig/registry.segments/_full.segment.rsc +2 -2
- 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 +1 -1
- package/.next/standalone/.next/server/app/modelconfig/registry.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/modelconfig/web-search.html +1 -1
- package/.next/standalone/.next/server/app/modelconfig/web-search.rsc +2 -2
- 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 +1 -1
- package/.next/standalone/.next/server/app/modelconfig/web-search.segments/_full.segment.rsc +2 -2
- 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 +1 -1
- package/.next/standalone/.next/server/app/modelconfig/web-search.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/modelconfig.html +1 -1
- package/.next/standalone/.next/server/app/modelconfig.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/modelconfig.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/modelconfig.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/modelconfig.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/modelconfig.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/optapi.html +1 -1
- package/.next/standalone/.next/server/app/optapi.rsc +1 -1
- package/.next/standalone/.next/server/app/optapi.segments/!KG1haW4p/optapi/__PAGE__.segment.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/optapi.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/optapi.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/optapi.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/optapi.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/quality.html +1 -1
- package/.next/standalone/.next/server/app/quality.rsc +2 -2
- 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 +1 -1
- package/.next/standalone/.next/server/app/quality.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/quality.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/quality.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/quality.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/security.html +1 -1
- package/.next/standalone/.next/server/app/security.rsc +1 -1
- package/.next/standalone/.next/server/app/security.segments/!KG1haW4p/security/__PAGE__.segment.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/security.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/security.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/security.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/security.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-detail.html +1 -1
- package/.next/standalone/.next/server/app/skill-detail.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-detail.segments/_full.segment.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/skill-detail.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-detail.segments/skill-detail/__PAGE__.segment.rsc +1 -1
- 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 +3 -3
- 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 +1 -1
- package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/_full.segment.rsc +3 -3
- 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 +1 -1
- package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-eval.html +1 -1
- package/.next/standalone/.next/server/app/skill-eval.rsc +4 -4
- 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 +1 -1
- package/.next/standalone/.next/server/app/skill-eval.segments/_full.segment.rsc +4 -4
- 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 +1 -1
- package/.next/standalone/.next/server/app/skill-eval.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-generator.html +1 -1
- package/.next/standalone/.next/server/app/skill-generator.rsc +2 -2
- 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 +1 -1
- package/.next/standalone/.next/server/app/skill-generator.segments/_full.segment.rsc +2 -2
- 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 +1 -1
- package/.next/standalone/.next/server/app/skill-generator.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-history.html +1 -1
- package/.next/standalone/.next/server/app/skill-history.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-history.segments/!KG1haW4p/skill-history/__PAGE__.segment.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/skill-history.segments/_full.segment.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/skill-history.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-opt.html +1 -1
- package/.next/standalone/.next/server/app/skill-opt.rsc +2 -2
- 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 +1 -1
- package/.next/standalone/.next/server/app/skill-opt.segments/_full.segment.rsc +2 -2
- 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 +1 -1
- package/.next/standalone/.next/server/app/skill-opt.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-release.html +1 -1
- package/.next/standalone/.next/server/app/skill-release.rsc +1 -1
- package/.next/standalone/.next/server/app/skill-release.segments/!KG1haW4p/skill-release/__PAGE__.segment.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/skill-release.segments/_full.segment.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/skill-release.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skills.html +1 -1
- package/.next/standalone/.next/server/app/skills.rsc +1 -1
- package/.next/standalone/.next/server/app/skills.segments/!KG1haW4p/skills/__PAGE__.segment.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/skills.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skills.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skills.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skills.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/trace.html +1 -1
- package/.next/standalone/.next/server/app/trace.rsc +2 -2
- 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 +1 -1
- package/.next/standalone/.next/server/app/trace.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/trace.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/trace.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/trace.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__29b88539._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__571e2dc5._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__aeca73e7._.js +1 -1
- package/.next/standalone/.next/server/chunks/_5041b697._.js +1 -1
- package/.next/standalone/.next/server/chunks/_73cb0d03._.js +7 -7
- package/.next/standalone/.next/server/chunks/_7ecc72d5._.js +1 -1
- package/.next/standalone/.next/server/chunks/_b2cfd29b._.js +1 -1
- package/.next/standalone/.next/server/chunks/_d36858e9._.js +3 -3
- package/.next/standalone/.next/server/chunks/src_lib_69eb724e._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_2e8ebb20._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_8e76c6f5._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_da30fab4._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_ddf088e7._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_243b92c2._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_eval_trajectory_page_tsx_052751f5._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_skill-eval_page_tsx_d6828614._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_f0e17888._.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/static/chunks/046dc786e7e13cc4.js +1 -0
- package/.next/standalone/.next/static/chunks/4812c235bebb18ff.js +1 -0
- package/.next/standalone/.next/static/chunks/49bb7f20fbab9dac.js +1 -0
- package/.next/standalone/.next/static/chunks/{150c66f334898c1b.js → 6f9e84819ba4f450.js} +1 -1
- package/.next/{static/chunks/9ce93159d07d77fc.js → standalone/.next/static/chunks/781813e2aa38a20f.js} +1 -1
- package/.next/{static/chunks/d12348f4045911d6.js → standalone/.next/static/chunks/84b0f0dc8be9bc7e.js} +1 -1
- package/.next/standalone/.next/static/chunks/8871e04c4e1fd6c4.js +1 -0
- package/.next/standalone/.next/static/chunks/e33bd5306b9b9d64.js +1 -0
- package/.next/standalone/package.json +1 -3
- package/.next/standalone/scripts/install.js +11 -0
- package/.next/standalone/scripts/postinstall.js +20 -6
- package/.next/standalone/scripts/start.js +8 -0
- package/.next/static/chunks/046dc786e7e13cc4.js +1 -0
- package/.next/static/chunks/4812c235bebb18ff.js +1 -0
- package/.next/static/chunks/49bb7f20fbab9dac.js +1 -0
- package/.next/static/chunks/{150c66f334898c1b.js → 6f9e84819ba4f450.js} +1 -1
- package/.next/{standalone/.next/static/chunks/9ce93159d07d77fc.js → static/chunks/781813e2aa38a20f.js} +1 -1
- package/.next/{standalone/.next/static/chunks/d12348f4045911d6.js → static/chunks/84b0f0dc8be9bc7e.js} +1 -1
- package/.next/static/chunks/8871e04c4e1fd6c4.js +1 -0
- package/.next/static/chunks/e33bd5306b9b9d64.js +1 -0
- package/package.json +1 -3
- package/scripts/install.js +11 -0
- package/scripts/postinstall.js +20 -6
- package/scripts/start.js +8 -0
- package/.next/standalone/.next/static/chunks/63fd190c8d8ebf18.js +0 -1
- package/.next/standalone/.next/static/chunks/7100361dbae12246.js +0 -1
- package/.next/standalone/.next/static/chunks/a9d1c1054358afe7.js +0 -1
- package/.next/standalone/.next/static/chunks/bc8ee6907cb73517.js +0 -1
- package/.next/standalone/.next/static/chunks/d2f0f5c92132648a.js +0 -1
- package/.next/static/chunks/63fd190c8d8ebf18.js +0 -1
- package/.next/static/chunks/7100361dbae12246.js +0 -1
- package/.next/static/chunks/a9d1c1054358afe7.js +0 -1
- package/.next/static/chunks/bc8ee6907cb73517.js +0 -1
- package/.next/static/chunks/d2f0f5c92132648a.js +0 -1
- /package/.next/standalone/.next/static/{xPAK0xEAbffUxaOdHM34l → _A9OyLyPRvkXox-SGvz3D}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{xPAK0xEAbffUxaOdHM34l → _A9OyLyPRvkXox-SGvz3D}/_clientMiddlewareManifest.json +0 -0
- /package/.next/standalone/.next/static/{xPAK0xEAbffUxaOdHM34l → _A9OyLyPRvkXox-SGvz3D}/_ssgManifest.js +0 -0
- /package/.next/static/{xPAK0xEAbffUxaOdHM34l → _A9OyLyPRvkXox-SGvz3D}/_buildManifest.js +0 -0
- /package/.next/static/{xPAK0xEAbffUxaOdHM34l → _A9OyLyPRvkXox-SGvz3D}/_clientMiddlewareManifest.json +0 -0
- /package/.next/static/{xPAK0xEAbffUxaOdHM34l → _A9OyLyPRvkXox-SGvz3D}/_ssgManifest.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,218469,456420,248105,e=>{"use strict";var t=e.i(271645);let r=(...e)=>e.filter((e,t,r)=>!!e&&""!==e.trim()&&r.indexOf(e)===t).join(" ").trim(),a=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,r)=>r?r.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var n={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let s=(0,t.createContext)({}),i=(0,t.forwardRef)(({color:e,size:a,strokeWidth:i,absoluteStrokeWidth:o,className:l="",children:c,iconNode:u,...d},p)=>{let{size:g=24,strokeWidth:f=2,absoluteStrokeWidth:h=!1,color:y="currentColor",className:m=""}=(0,t.useContext)(s)??{},x=o??h?24*Number(i??f)/Number(a??g):i??f;return(0,t.createElement)("svg",{ref:p,...n,width:a??g??n.width,height:a??g??n.height,stroke:e??y,strokeWidth:x,className:r("lucide",m,l),...!c&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(d)&&{"aria-hidden":"true"},...d},[...u.map(([e,r])=>(0,t.createElement)(e,r)),...Array.isArray(c)?c:[c]])}),o=(e,n)=>{let s=(0,t.forwardRef)(({className:s,...o},l)=>(0,t.createElement)(i,{ref:l,iconNode:n,className:r(`lucide-${a(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${e}`,s),...o}));return s.displayName=a(e),s};e.s(["default",()=>o],456420);let l=o("panel-left-close",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m16 15-3-3 3-3",key:"14y99z"}]]);e.s(["PanelLeftClose",()=>l],218469);let c=o("panel-left-open",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m14 9 3 3-3 3",key:"8010ee"}]]);e.s(["PanelLeftOpen",()=>c],248105)},540568,e=>{"use strict";var t=e.i(843476),r=e.i(218469),a=e.i(248105),n=e.i(760045);function s({title:e,actions:s}){let{isCollapsed:i,toggleSidebar:o}=(0,n.useSidebar)(),l=i?a.PanelLeftOpen:r.PanelLeftClose;return(0,t.jsxs)("header",{className:"sticky top-0 z-10 flex h-14 items-center gap-3 border-b border-border bg-card px-6",style:{flexShrink:0},children:[(0,t.jsx)("button",{type:"button",onClick:o,"aria-label":i?"展开侧栏":"折叠侧栏",className:"inline-flex size-7 shrink-0 items-center justify-center rounded-md text-foreground-secondary transition-colors hover:bg-background-secondary hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:(0,t.jsx)(l,{className:"size-4"})}),(0,t.jsx)("div",{className:"flex min-w-0 flex-1 items-center gap-2 text-sm font-medium text-foreground",children:"string"==typeof e?(0,t.jsx)("span",{className:"truncate",children:e}):e}),s&&(0,t.jsx)("div",{className:"flex items-center gap-2",children:s})]})}e.s(["AppTopBar",()=>s])},689664,e=>{"use strict";var t=e.i(643957);e.s(["Check",()=>t.default])},643957,e=>{"use strict";let t=(0,e.i(456420).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);e.s(["default",()=>t])},519455,991918,e=>{"use strict";let t,r;var a=e.i(843476),n=e.i(271645),s=e.i(820783),i=Symbol.for("react.lazy"),o=n[" use ".trim().toString()];function l(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===i&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}function c(e){var t;let r,i=(t=e,(r=n.forwardRef((e,t)=>{let{children:r,...a}=e;if(l(r)&&"function"==typeof o&&(r=o(r._payload)),n.isValidElement(r)){var i;let e,o,l=(i=r,(o=(e=Object.getOwnPropertyDescriptor(i.props,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?i.ref:(o=(e=Object.getOwnPropertyDescriptor(i,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?i.props.ref:i.props.ref||i.ref),c=function(e,t){let r={...t};for(let a in t){let n=e[a],s=t[a];/^on[A-Z]/.test(a)?n&&s?r[a]=(...e)=>{let t=s(...e);return n(...e),t}:n&&(r[a]=n):"style"===a?r[a]={...n,...s}:"className"===a&&(r[a]=[n,s].filter(Boolean).join(" "))}return{...e,...r}}(a,r.props);return r.type!==n.Fragment&&(c.ref=t?(0,s.composeRefs)(t,l):l),n.cloneElement(r,c)}return n.Children.count(r)>1?n.Children.only(null):null})).displayName=`${t}.SlotClone`,r),c=n.forwardRef((e,t)=>{let{children:r,...s}=e;l(r)&&"function"==typeof o&&(r=o(r._payload));let c=n.Children.toArray(r),u=c.find(p);if(u){let e=u.props.children,r=c.map(t=>t!==u?t:n.Children.count(e)>1?n.Children.only(null):n.isValidElement(e)?e.props.children:null);return(0,a.jsx)(i,{...s,ref:t,children:n.isValidElement(e)?n.cloneElement(e,void 0,r):null})}return(0,a.jsx)(i,{...s,ref:t,children:r})});return c.displayName=`${e}.Slot`,c}var u=c("Slot"),d=Symbol("radix.slottable");function p(e){return n.isValidElement(e)&&"function"==typeof e.type&&"__radixId"in e.type&&e.type.__radixId===d}e.s(["Slot",()=>u,"createSlot",()=>c],991918);var g=e.i(207670);let f=e=>"boolean"==typeof e?`${e}`:0===e?"0":e,h=g.clsx;var y=e.i(975157);let m=(t="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-[color,box-shadow] disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",r={variants:{variant:{default:"bg-primary text-primary-foreground shadow-xs hover:bg-primary/90",destructive:"bg-destructive text-white shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40",outline:"border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline",brand:"bg-[#2F6868] hover:bg-[#2F6868]/90 border-[#2F6868] text-white"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9"}},defaultVariants:{variant:"default",size:"default"}},e=>{var a;if((null==r?void 0:r.variants)==null)return h(t,null==e?void 0:e.class,null==e?void 0:e.className);let{variants:n,defaultVariants:s}=r,i=Object.keys(n).map(t=>{let r=null==e?void 0:e[t],a=null==s?void 0:s[t];if(null===r)return null;let i=f(r)||f(a);return n[t][i]}),o=e&&Object.entries(e).reduce((e,t)=>{let[r,a]=t;return void 0===a||(e[r]=a),e},{});return h(t,i,null==r||null==(a=r.compoundVariants)?void 0:a.reduce((e,t)=>{let{class:r,className:a,...n}=t;return Object.entries(n).every(e=>{let[t,r]=e;return Array.isArray(r)?r.includes({...s,...o}[t]):({...s,...o})[t]===r})?[...e,r,a]:e},[]),null==e?void 0:e.class,null==e?void 0:e.className)});function x({className:e,variant:t,size:r,asChild:n=!1,...s}){return(0,a.jsx)(n?u:"button",{"data-slot":"button",className:(0,y.cn)(m({variant:t,size:r,className:e})),...s})}e.s(["Button",()=>x],519455)},867927,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",()=>t],867927)},745383,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["ChevronDown",()=>t],745383)},615408,e=>{"use strict";e.s(["presetEvaluators",0,[{id:"preset-agent-task-completion",name:"Agent 任务完成度",description:"评估 Agent 是否成功、完整地实现了用户目标,适合回归集和上线验收。",evaluatorType:"LLM",source:"preset",targetTypes:["结果"],objectives:["任务完成","内容质量"],scenarios:["Agent通用评测"],runMode:"LLM Judge",scoreRange:"0-1",popularity:96,mappedMetrics:["目标达成","步骤完整","答案可用"],status:"ready",runtimeHref:"/eval/trajectory",runtimeNote:"opencode-task-completion-evaluator.ts (single opencode agent)"},{id:"preset-agent-trace-quality",name:"Agent 轨迹质量",description:"评估 Agent 内部执行轨迹是否准确、稳定,关注规划、调用和中间结果。基于 opencode 单主评估器完成 completeness / tool-choice / attribution 判断,并结合规则冗余检测。",evaluatorType:"LLM",source:"preset",targetTypes:["轨迹"],objectives:["轨迹质量"],scenarios:["Agent通用评测","轨迹评测"],runMode:"Trace Judge (opencode)",scoreRange:"0-1",popularity:91,mappedMetrics:["轨迹准确性","推理连续性","异常处理"],status:"ready",runtimeHref:"/eval/trajectory",runtimeNote:"opencode-trajectory-evaluator.ts (single opencode agent)"}]])},76706,861171,e=>{"use strict";function t(e,r=1){return null==e||Number.isNaN(e)?"--":(100*e).toFixed(r)}e.s(["fmtPercentScore",()=>t],76706);let r="[no-evaluable-case]",a="preset-agent-trace-quality",n={trace:"Trace 数据问题",dataset:"评测集配置问题",case:"Case 配置问题",skill:"Skill 归因问题",model:"模型调用问题",evaluator:"评测器问题",system:"系统问题"},s={trace_missing_input:{errorCategory:"trace",shortStatus:"Trace 缺输入",userMessage:"Trace 缺少实际输入,无法匹配评测集 case。",reason:"系统没有从本次执行记录中提取到可用于匹配 case 的任务输入。",nextAction:"检查 trace 采集是否包含用户任务输入;必要时重新采集或重新执行该任务。",retryable:!1,stage:"case-match"},trace_missing_output:{errorCategory:"trace",shortStatus:"Trace 缺输出",userMessage:"Trace 缺少实际输出,无法做任务完成度评测。",reason:"本次 trace 没有提取到 Agent 最终输出,也没有可用的 execution.finalResult fallback。",nextAction:"检查 Agent 是否产出最终回复;确认 trace 采集包含 assistant final message;必要时重新跑该 case。",retryable:!1,stage:"result-artifact"},task_output_extraction_failed:{errorCategory:"trace",shortStatus:"任务输出提取失败",userMessage:"无法从 trace 中提取任务输出。",reason:"任务输出提取流程没有定位到可用于任务完成度评测的最终输出,且没有 fallback 可用。",nextAction:"检查 trace 中是否包含最终回复或关键工具输出;必要时重试评测或重新采集 trace。",retryable:!0,stage:"result-artifact"},trace_data_empty:{errorCategory:"trace",shortStatus:"Trace 数据为空",userMessage:"Trace 数据为空,无法评测。",reason:"系统没有找到可用的 session interactions,也没有足够的 query/finalResult 生成兜底交互。",nextAction:"检查 trace 采集、上传或执行记录入库是否完整。",retryable:!1,stage:"trace-load"},trace_parse_failed:{errorCategory:"trace",shortStatus:"Trace 解析失败",userMessage:"Trace 数据解析失败,无法评测。",reason:"Session.interactions 不是合法 JSON 或结构不兼容。",nextAction:"检查 trace 采集数据格式,必要时重新上传或修复采集链路。",retryable:!1,stage:"trace-parse"},case_not_matched:{errorCategory:"case",shortStatus:"无匹配 case",userMessage:"Trace 输入没有匹配到可用于评测的 case。",reason:"本次任务输入与当前评测集中的 case.input 没有达到可用匹配。",nextAction:"补充对应 case,或确认本次 trace 的任务输入与评测集 case.input 是否一致。",retryable:!1,stage:"case-match"},case_match_failed:{errorCategory:"case",shortStatus:"匹配 case 失败",userMessage:"无法根据 trace 输入自动定位可用于评测的 case。",reason:"trace 输入没有精确匹配到评测集 case,后台自动匹配也没有得到可用结果。",nextAction:"检查本次 trace 的任务输入是否与评测集 case.input 对齐;必要时补充 case 或重新选择评测集。",retryable:!0,stage:"case-match"},dataset_missing:{errorCategory:"dataset",shortStatus:"评测集不存在",userMessage:"评测集不存在,无法匹配可评测 case。",reason:"评测结果关联的数据集已经不存在,或当前用户不可访问。",nextAction:"重新选择评测集后再发起评测。",retryable:!1,stage:"dataset-load"},dataset_empty:{errorCategory:"dataset",shortStatus:"评测集为空",userMessage:"评测集没有可评测 case。",reason:"当前匹配范围内没有可用于评测的 case。",nextAction:"补充评测集 case 后重新评测。",retryable:!1,stage:"dataset-load"},case_missing_expected_output:{errorCategory:"case",shortStatus:"Case 缺预期结果",userMessage:"Case 缺少预期结果,无法做任务完成度评测。",reason:"已匹配到 case,但 expectedOutput 为空。",nextAction:"为该 case 补充 expectedOutput 后重新评测。",retryable:!1,stage:"case-match"},custom_reference_missing:{errorCategory:"case",shortStatus:"缺 reference_output",userMessage:"自定义评估器缺少 reference_output。",reason:"自定义评估器 prompt 引用了 reference_output,但没有匹配到带预期结果的 case。",nextAction:"补充评测集 expectedOutput,或调整自定义评估器 prompt。",retryable:!1,stage:"custom-evaluator"},trace_step_analysis_failed:{errorCategory:"model",shortStatus:"步骤抽取失败",userMessage:"Trace 步骤动态分析失败。",reason:"系统尝试从 trace 中抽取实际执行步骤时失败,通常与模型配置或调用异常有关。",nextAction:"检查评测模型配置和服务状态后重试。",retryable:!0,stage:"trace-step-analysis"},trace_no_steps:{errorCategory:"trace",shortStatus:"Trace 无步骤",userMessage:"Trace 无可提取执行步骤,无法做轨迹评测。",reason:"系统没有从本次 trace 中提取到可用于轨迹评测的实际执行步骤。",nextAction:"检查 trace 质量、采集粒度或执行记录是否完整。",retryable:!1,stage:"trace-step-analysis"},evaluator_timeout:{errorCategory:"evaluator",shortStatus:"评测超时",userMessage:"评测器运行超时。",reason:"评测器在限定时间内没有返回结果。",nextAction:"重试评测;如果持续出现,请检查模型服务响应时间。",retryable:!0,stage:"evaluator"},evaluator_output_invalid:{errorCategory:"evaluator",shortStatus:"评测器输出异常",userMessage:"评测器未返回有效结构化结果。",reason:"评测器输出无法解析为系统需要的 JSON/评分结构。",nextAction:"重试评测;如果持续出现,请检查评测器模型输出。",retryable:!0,stage:"evaluator"},result_evaluator_failed:{errorCategory:"evaluator",shortStatus:"结果评测失败",userMessage:"任务完成度评测失败。",reason:"任务完成度评测器没有产出可用评分或评测 session。",nextAction:"重试评测;如果持续出现,请检查模型配置和评测器日志。",retryable:!0,stage:"result-evaluator"},persist_failed:{errorCategory:"system",shortStatus:"保存失败",userMessage:"评测结果保存失败。",reason:"评测已执行,但结果写入数据库时失败。",nextAction:"检查数据库或服务状态后重试。",retryable:!0,stage:"persist"},evaluator_recovered_failed:{errorCategory:"system",shortStatus:"评测进程异常",userMessage:"评测进程异常中断。",reason:"后台恢复逻辑发现该评测长期停留在 pending/running 状态。",nextAction:"重试评测,并查看服务日志确认是否有进程异常。",retryable:!0,stage:"recover"}};function i(e){return e&&"object"==typeof e&&!Array.isArray(e)?e:{}}function o(e){return"number"==typeof e&&Number.isFinite(e)}function l(e){return i(e?.rawAnalysis)}function c(e){return Array.isArray(e.selectedEvaluators)?e.selectedEvaluators:[]}function u(e,t){let r=c(e);return 0===r.length?t===a:r.includes(t)}function d(e){return!!(u(e,a)&&o(e.trajectoryScore)||u(e,"preset-agent-task-completion")&&null!=function(e){if(o(e.resultEvaluationScore))return e.resultEvaluationScore;let t=i(l(e).resultEvaluation);return o(t.score)?t.score:null}(e))||!!c(e).some(e=>e.startsWith("custom-"))&&null!=function(e){if(o(e.customEvaluationScore))return e.customEvaluationScore;let t=(Array.isArray(e.customEvaluations)?e.customEvaluations:e.customEvaluations&&"object"==typeof e.customEvaluations?Object.values(e.customEvaluations):[]).map(e=>i(e).score).filter(o);return t.length>0?t.reduce((e,t)=>e+t,0)/t.length:null}(e)}function p(e,t={}){let r=s[e]??{errorCategory:"system",shortStatus:"评测失败",userMessage:"评测执行失败。",reason:"评测执行过程中出现未分类异常。",nextAction:"重试评测;如果持续出现,请查看服务日志。",retryable:!0,stage:"unknown"};return{errorCode:e,errorCategory:r.errorCategory,shortStatus:r.shortStatus,userMessage:t.userMessage||r.userMessage,reason:t.reason||r.reason,nextAction:t.nextAction||r.nextAction,retryable:"boolean"==typeof t.retryable?t.retryable:r.retryable,stage:t.stage||r.stage,...t.details?{details:t.details}:{},...t.internal?{internal:t.internal}:{}}}function g(e){if(!e)return null;let t=e.diagnostic;if(t&&"object"==typeof t&&!Array.isArray(t))return t;let a=l(e),n=a.diagnostic;if(n&&"object"==typeof n&&!Array.isArray(n))return n;let s="string"==typeof a.resultEvaluationError?a.resultEvaluationError.trim():"",i=String(e.resultEvaluationError||s||"").trim();if(i)return p(i.includes("结果输出提取失败")||i.includes("任务输出提取")?"task_output_extraction_failed":"result_evaluator_failed",{details:i,reason:i});let o=String(e.errorMessage||"").trim();return o?o.includes(r)?p("case_not_matched",{details:b(o),reason:b(o)}):"failed"===e.status&&o.includes("[recover]")?p("evaluator_recovered_failed",{details:o,reason:o}):null:null}function f(e){return"done"===e||"failed"===e}function h(e){return"pending"===e.status?"pending":"running"===e.status?"running":g(e)?"done"===e.status&&d(e)?"partial_failed":"failed":e.status}function y(e){if("pending"===e.status)return"待评测";if("running"===e.status)return"评测中";let t=g(e);return t?"done"===e.status&&d(e)?"部分评测失败":t.shortStatus:"done"===e.status?"已评测":"评测失败"}function m(e){if("pending"===e.status)return"muted";if("running"===e.status)return"running";let t=g(e);return t?"done"===e.status&&d(e)||["trace","dataset","case","skill"].includes(t.errorCategory)?"warning":"danger":"done"===e.status?"success":"danger"}function x(e){if("pending"===e.status||"running"===e.status)return"";let t=g(e);return t?[t.userMessage,t.reason?`具体原因:${t.reason}`:"",t.nextAction?`下一步建议:${t.nextAction}`:"",t.details?`详细信息:${t.details}`:""].filter(Boolean).join("\n"):String(e.errorMessage||e.resultEvaluationError||"").trim()}function v(e,t={}){if(!e)return"该执行尚未评测";let r=g(e);if(r&&"pending"!==e.status&&"running"!==e.status)return[r.userMessage,"",`错误分类:${n[r.errorCategory]}`,`具体原因:${r.reason}`,`下一步建议:${r.nextAction}`,r.details?`详细信息:${r.details}`:""].filter(e=>""!==e).join("\n");let a=t.composite??null;return null!=a&&Number.isFinite(a)?a>=.8?"该执行在结果与过程两个维度均表现良好":a>=.5?"该执行结果基本可用,但部分关键动作覆盖不足":"该执行关键动作覆盖不足,建议优先排查":"该执行尚未评测"}function b(e){return e.replace(r,"").trim()||"未匹配到可评测 case"}e.s(["getTrajectoryDisplayStatus",()=>h,"getTrajectoryOverallConclusion",()=>v,"getTrajectoryStatusLabel",()=>y,"getTrajectoryStatusTitle",()=>x,"getTrajectoryStatusTone",()=>m,"isTrajectoryEvaluationTerminal",()=>f,"parseTrajectoryDiagnostic",()=>g],861171)},642726,e=>{"use strict";let t=["evaluator","checker","judge","locator","assessor","grader","评估器"],r=["你是「轨迹评估器」的总协调者","你是「Agent 任务完成度」评估器","trace-quality-evaluator","task-completion-evaluator","reference_trajectory","actual_trace","key_point_findings","key-points-checker","detect_redundancy_and_loops","已写入 final_result.json"],a=new Set(["trace-quality-evaluator","task-completion-evaluator"]);function n(e){let r=String(e||"").trim().toLowerCase();return!!r&&(!!a.has(r)||t.some(e=>r.includes(e)))}function s(e){return!!e&&(n(e.name)||n(e.parentAgent))}function i(e){return!!e&&(!![e.agentName,e.agent,...Array.isArray(e.agents)?e.agents:[]].some(e=>n(e))||!!e&&[e.query,e.final_result,e.label].some(e=>{let t=String(e||"");return!!t&&r.some(e=>t.includes(e))}))}function o(e){return e?String([e.agentName,e.agent,...Array.isArray(e.agents)?e.agents:[]].find(e=>{let t=String(e||"").trim();return t&&!n(t)})||"").trim():""}e.s(["getPrimaryExecutionAgentName",()=>o,"isEvaluatorAgent",()=>s,"isEvaluatorTraceRecord",()=>i])},24071,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);e.s(["ChevronLeft",()=>t],24071)},658512,e=>{"use strict";var t=e.i(843476),r=e.i(24071),a=e.i(867927),n=e.i(519455),s=e.i(967489),i=e.i(975157);function o({page:e,pageSize:o,total:l,onPageChange:c,onPageSizeChange:u,pageSizes:d=[20,50,100],summary:p,pageSizeLabel:g=e=>`${e} / page`,className:f}){let h=Math.max(1,Math.ceil(l/o)),y=0===l?0:(e-1)*o+1,m=Math.min(e*o,l),x=h<=7?Array.from({length:h},(e,t)=>t+1):e<=3?[1,2,3,4,"ellipsis",h]:e>=h-2?[1,"ellipsis",h-3,h-2,h-1,h]:[1,"ellipsis",e-1,e,e+1,"ellipsis",h];return(0,t.jsxs)("div",{className:(0,i.cn)("flex items-center justify-between gap-3",f),children:[(0,t.jsx)("p",{className:"text-xs text-foreground-muted",children:p?p(y,m,l):`${y}–${m} of ${l}`}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsx)(n.Button,{variant:"outline",size:"sm",onClick:()=>c(e-1),disabled:e<=1,className:"size-8 p-0","aria-label":"Previous page",children:(0,t.jsx)(r.ChevronLeft,{className:"size-4"})}),x.map((r,a)=>"ellipsis"===r?(0,t.jsx)("span",{className:"px-1 text-foreground-muted text-xs",children:"…"},`e-${a}`):(0,t.jsx)(n.Button,{variant:r===e?"default":"outline",size:"sm",onClick:()=>c(r),className:"size-8 p-0 text-xs tabular-nums","aria-current":r===e?"page":void 0,children:r},`p-${r}`)),(0,t.jsx)(n.Button,{variant:"outline",size:"sm",onClick:()=>c(e+1),disabled:e>=h,className:"size-8 p-0","aria-label":"Next page",children:(0,t.jsx)(a.ChevronRight,{className:"size-4"})}),u&&(0,t.jsx)(s.Select,{className:"ml-2",value:String(o),onChange:e=>u(Number(e)),options:d.map(e=>({value:String(e),label:g(e)}))})]})]})}e.s(["Pagination",()=>o])},356472,e=>{"use strict";var t=e.i(843476),r=e.i(271645),a=e.i(618566),n=e.i(540568),s=e.i(183752),i=e.i(927643),o=e.i(76706),l=e.i(861171),c=e.i(642726);function u(e){return String(e).padStart(2,"0")}function d(e=new Date){return`评测执行 ${e.getFullYear()}-${u(e.getMonth()+1)}-${u(e.getDate())} ${u(e.getHours())}:${u(e.getMinutes())}:${u(e.getSeconds())}`}function p(e,t=new Date){let r=String(e.title||"").trim(),a=String(e.description||"").trim(),n=String(e.scope||"").trim(),s=String(e.skillName||"").trim(),i=e.skillVersion,o=null==i||""===i?null:Number(i);return{title:r||d(t),description:a,...n?{scope:n}:{},...s?{skillName:s}:{},...null!=o&&Number.isFinite(o)?{skillVersion:o}:{}}}var g=e.i(658512);let f=e.i(615408).presetEvaluators.map(e=>({id:e.id,name:e.name})),h=new Set(f.map(e=>e.id)),y="#4F46E5",m="#EEF2FF",x="#C7D2FE",v="#16A34A",b="#DC2626",j="#D97706",S="#E4E4E7",w="#F4F4F5",A="#FAFAFA",k="#18181B",C="#52525B",$="#71717A",E="#A1A1AA";function _(e,t){let r=Array.isArray(e?.selectedEvaluators)?e.selectedEvaluators:[];return 0===r.length?"preset-agent-trace-quality"===t:r.includes(t)}function T(e){return!0===e.auto_eval_ready||!0===e.autoEvalReady}function N(){var e,n,u;let{user:N}=(0,i.useAuth)(),D=(0,a.useRouter)(),B=(0,a.useSearchParams)(),[P,L]=(0,r.useState)([]),[U,q]=(0,r.useState)(()=>{let e=B?.get("evaluatorId");return e&&h.has(e)?[e]:[]}),[J,H]=(0,r.useState)(""),[V,K]=(0,r.useState)(""),[Z,G]=(0,r.useState)(""),[Y,Q]=(0,r.useState)([]),[X,ee]=(0,r.useState)([]),[et,er]=(0,r.useState)(0),[ea,en]=(0,r.useState)(1),[es,ei]=(0,r.useState)(!1),[eo,el]=(0,r.useState)(!1),[ec,eu]=(0,r.useState)([]),[ed,ep]=(0,r.useState)(new Set),[eg,ef]=(0,r.useState)(!0),[eh,ey]=(0,r.useState)(""),[em,ex]=(0,r.useState)(""),[ev,eb]=(0,r.useState)(!1),[ej,eS]=(0,r.useState)(!1),[ew,eA]=(0,r.useState)(""),[ek,eC]=(0,r.useState)([]),[e$,eE]=(0,r.useState)(""),[e_,eT]=(0,r.useState)([]),[eN,eR]=(0,r.useState)(""),[ez,eF]=(0,r.useState)(""),[eM,eI]=(0,r.useState)(""),eW=(0,r.useMemo)(()=>`trajectory-eval-task-draft:${N||"anonymous"}`,[N]),eO=(0,r.useRef)(new Set),eD=(0,r.useRef)(!1);(0,r.useEffect)(()=>{N&&(0,s.apiFetch)(`/api/eval/settings?user=${encodeURIComponent(N)}`).then(e=>e.json()).then(e=>{let t=Array.isArray(e?.configs)?e.configs.map(e=>({id:e.id,name:e.name||e.id,model:e.model||"",baseUrl:e.baseUrl})):[];eC(t);let r=e?.activeConfigId;r&&t.find(e=>e.id===r)?eE(r):t.length>0&&eE(t[0].id)}).catch(()=>void 0)},[N]);let eB=async()=>{try{let e=await fetch("/api/agents");if(e.ok){let t=(await e.json()).agents.map(e=>({id:e.id,name:e.name,ownership:"user",layer:"main",platform:e.platform,version:"v1.0",framework:"Custom",status:"idle",todayCalls:e.todayCalls||"0",lastExecutedAt:e.lastExecutedAt||e.createdAt}));eT(t)}}catch(e){console.error("Failed to fetch DB agents",e)}};(0,r.useEffect)(()=>{eB()},[]),(0,r.useEffect)(()=>{let e=p({});try{let t=window.localStorage.getItem(eW);if(!t){eR(e.title),eF(""),eI("");return}let r=JSON.parse(t),a=p({title:r?.title,description:r?.description}),n=JSON.stringify(a);eR(a.title),eF(a.description),eI(n)}catch{eR(e.title),eF(""),eI("")}},[eW]);let eP=(0,r.useMemo)(()=>[{id:"demo-agent",name:"demo-agent",ownership:"system",layer:"main",platform:"opencode",version:"v1.0",framework:"opencode",status:"running",successRate:"—",todayCalls:"—",lastExecutedAt:"2026-05-06T12:00:00"},{id:"customer-service-agent",name:"customer-service-agent",ownership:"system",layer:"main",platform:"opencode",version:"v2.1",framework:"LangChain",status:"running",successRate:"87.3%",todayCalls:"3,847",lastExecutedAt:"2026-05-06T11:48:00"},{id:"data-analyzer-v2",name:"data-analyzer-v2",ownership:"user",layer:"main",platform:"openclaw",version:"v1.0",framework:"Custom",status:"idle",successRate:"94.1%",todayCalls:"128",lastExecutedAt:"2026-05-05T20:10:00"},{id:"order-executor",name:"order-executor",ownership:"system",layer:"subagent",platform:"opencode",version:"v1.1",framework:"LangGraph",status:"running",todayCalls:"412",p99:"4.3s",parentAgent:"customer-service-agent",lastExecutedAt:"2026-05-06T11:43:00"},{id:"email-dispatcher",name:"email-dispatcher",ownership:"user",layer:"main",platform:"hermes",version:"v0.9",framework:"AutoGPT",status:"running",successRate:"99.2%",todayCalls:"1,024",lastExecutedAt:"2026-05-06T09:24:00"},{id:"security-guard",name:"security-guard",ownership:"system",layer:"main",platform:"opencode",version:"v3.0",framework:"Internal",status:"running",successRate:"100%",todayCalls:"45,201",lastExecutedAt:"2026-05-06T11:56:00"},{id:"trace-quality-evaluator",name:"trace-quality-evaluator",ownership:"system",layer:"main",platform:"opencode",version:"v1.0",framework:"opencode",status:"running",successRate:"—",todayCalls:"—",lastExecutedAt:"2026-05-06T12:00:00"},{id:"task-completion-evaluator",name:"task-completion-evaluator",ownership:"system",layer:"main",platform:"opencode",version:"v1.0",framework:"opencode",status:"running",successRate:"—",todayCalls:"—",lastExecutedAt:"2026-05-06T12:00:00"}],[]),eL=(0,r.useMemo)(()=>{let e=new Set(e_.map(e=>`${e.platform}-${e.name}`));return[...e_,...eP.filter(t=>!e.has(`${t.platform}-${t.name}`))]},[e_,eP]);(0,r.useEffect)(()=>{N&&(0,s.apiFetch)(`/api/agent-datasets?user=${encodeURIComponent(N)}`).then(e=>e.json()).then(e=>{L((Array.isArray(e)?e:[]).filter(e=>"trajectory"===e.datasetKind))}).catch(e=>ey(`加载数据集失败:${e?.message||e}`))},[N]),(0,r.useEffect)(()=>{N&&(0,s.apiFetch)(`/api/observe/data?user=${encodeURIComponent(N)}&summary=agents`).then(e=>e.json()).then(e=>{Q(Array.isArray(e?.agents)?e.agents:[])}).catch(e=>ey(`加载执行 Agent 失败:${e?.message||e}`)).finally(()=>ef(!1))},[N]),(0,r.useEffect)(()=>{if(!N)return;let e=!1,t=async()=>{try{let t=await (0,s.apiFetch)(`/api/eval/trajectory/results?user=${encodeURIComponent(N)}&limit=200`),r=await t.json();e||eu(Array.isArray(r?.results)?r.results:[])}catch{}};t();let r=setInterval(t,3e3);return()=>{e=!0,clearInterval(r)}},[N]);let eU=(0,r.useCallback)(async()=>{if(!N)return;let e=await (0,s.apiFetch)(`/api/eval/trajectory/results?user=${encodeURIComponent(N)}&limit=200`),t=await e.json();eu(Array.isArray(t?.results)?t.results:[])},[N]),eq=(0,r.useCallback)(async(e,t)=>{if(!N||!e){ee([]),er(0);return}ei(!0);try{let r=await (0,s.apiFetch)(`/api/observe/data?user=${encodeURIComponent(N)}&paginated=1&includeEvaluations=0&agentName=${encodeURIComponent(e)}&page=${t}&pageSize=20`),a=await r.json();ee(Array.isArray(a?.records)?a.records:[]),er("number"==typeof a?.total?a.total:0)}catch(e){ey(`加载执行记录失败:${e?.message||e}`),ee([]),er(0)}finally{ei(!1)}},[N]),eJ=(0,r.useMemo)(()=>{let e=eL.filter(e=>"main"===e.layer).filter(e=>!(0,c.isEvaluatorAgent)(e)).map(e=>e.name),t=Y.filter(e=>!!e),r=new Set;return[...e,...t].filter(e=>!(!e||r.has(e))&&(r.add(e),!0)).sort()},[eL,Y]);(0,r.useEffect)(()=>{!J&&eJ.length>0&&H(eJ[0])},[eJ,J]),(0,r.useEffect)(()=>{!Z&&P.length>0&&G(P[0].id)},[P,Z]);let eH=(0,r.useMemo)(()=>{let e=new Map;for(let t of ec){if(t.watchPlaceholder)continue;let r=t.taskId||t.executionId||"";if(!r)continue;let a=e.get(r);(!a||new Date(t.createdAt).getTime()>new Date(a.createdAt).getTime())&&e.set(r,t)}return e},[ec]);async function eV(){if(N&&J){el(!0),ey("");try{let e=await (0,s.apiFetch)(`/api/observe/data?user=${encodeURIComponent(N)}&summary=traceIds&agentName=${encodeURIComponent(J)}`),t=await e.json(),r=Array.isArray(t?.traceIds)?t.traceIds.filter(e=>"string"==typeof e&&e.trim().length>0):[];ep(new Set(r)),ex(r.length>0?`已全选 ${r.length} 条 trace`:"当前 Agent 没有可选 trace")}catch(e){ey(`全选失败:${e?.message||e}`)}finally{el(!1)}}}async function eK(){if(!N)return void ey("请先登录");if(0===ed.size)return void ey("请至少勾选一条执行记录");if(!J)return void ey("请选择执行 Agent");if(0===U.length)return void ey("请至少选择一个评估器");ey(""),ex("");let e=p({title:eN,description:ez}),t=Array.from(ed);if(0===t.length)return void ey("没有可评测的执行记录");eb(!0);try{let r=await (0,s.apiFetch)("/api/eval/trajectory/run",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({user:N,taskIds:t,evaluators:U,taskTitle:e.title,taskDescription:e.description})}),a=await r.json();if(r.ok){let t=Array.isArray(a?.evaluatorNames)?a.evaluatorNames.join("、"):U.join("、");ex(`已发起 ${a.created?.length??0} 条评测:${e.title}(${t})`),ep(new Set);let r={title:d(),description:""},n=JSON.stringify(r);window.localStorage.setItem(eW,n),eR(r.title),eF(r.description),eI(n),(0,s.apiFetch)(`/api/eval/trajectory/results?user=${encodeURIComponent(N)}&limit=200`).then(e=>e.json()).then(e=>eu(Array.isArray(e?.results)?e.results:[]))}else ey(`提交失败:${a?.error||r.statusText}`)}catch(e){ey(`提交失败:${e?.message||e}`)}finally{eb(!1)}}async function eZ(){if(!N)return void ey("请先登录");if(!J)return void ey("请选择执行 Agent");if(0===U.length)return void ey("请至少选择一个评估器");if(ed.size>0)return void ey("自动观测只追踪未来新来的 trace。请先取消当前勾选的 trace。");ey(""),ex(""),eS(!0);let e=p({title:eN,description:ez});try{let t=await (0,s.apiFetch)("/api/eval/trajectory/run",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({user:N,taskIds:[],evaluators:U,taskTitle:e.title,taskDescription:e.description,autoWatch:!0,watchedAgent:J})}),r=await t.json();if(!t.ok)return void ey(`自动观测启动失败:${r?.error||t.statusText}`);eO.current=new Set(X.map(e=>e.task_id||"").filter(Boolean)),eA(r.evaluatorRunId||""),ep(new Set),ex(`已开启自动观测:后续 ${J} 的新 trace 会自动追加到「${e.title}」`),await eU()}catch(e){ey(`自动观测启动失败:${e instanceof Error?e.message:String(e)}`)}finally{eS(!1)}}function eG(e){e&&D.push(`/eval/trajectory/${encodeURIComponent(e)}`)}if((0,r.useEffect)(()=>{ep(new Set),en(1)},[J]),(0,r.useEffect)(()=>{if(!J){ee([]),er(0);return}eq(J,ea)},[ea,eq,J]),(0,r.useEffect)(()=>{if(!N||!ew||eD.current)return;let e=new Set(ec.filter(e=>e.evaluatorRunId===ew&&!e.watchPlaceholder).map(e=>e.taskId||e.executionId||"").filter(Boolean)),t=X.filter(T).map(e=>e.task_id||"").filter(Boolean).filter(e=>!eO.current.has(e)).filter(t=>!e.has(t));0!==t.length&&(eD.current=!0,(0,s.apiFetch)("/api/eval/trajectory/run",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({user:N,evaluatorRunId:ew,taskIds:t,evaluators:U,autoWatch:!0,watchedAgent:J})}).then(async e=>{let r=await e.json();e.ok?(ex(`自动观测已追加 ${r.created?.length??t.length} 条新 trace`),await eU()):ey(`自动追加失败:${r?.error||e.statusText}`)}).catch(e=>ey(`自动追加失败:${e instanceof Error?e.message:String(e)}`)).finally(()=>{eD.current=!1}))},[ew,X,eU,ec,J,U,N]),eg)return(0,t.jsx)("div",{className:"loading",style:{padding:24},children:"正在加载评测视图..."});let eY=JSON.stringify(p({title:eN,description:ez}))!==eM,eQ=ek.find(e=>e.id===e$);return(0,t.jsxs)("div",{style:{padding:"18px 22px 28px",maxWidth:1480,margin:"0 auto",color:k},children:[(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:4},children:[(0,t.jsx)("span",{style:(e=m,{display:"inline-block",padding:"2px 8px",background:e,color:y,borderRadius:4,fontSize:11,fontWeight:500,whiteSpace:"nowrap"}),children:"评测执行"}),(0,t.jsx)("span",{style:{fontSize:11,color:E},children:"选执行 Agent 与评估器 → 多选 trace → 一键发起评测;可同时勾选结果评测与过程评测"})]}),(0,t.jsxs)("div",{style:{display:"flex",gap:12,alignItems:"flex-start",marginTop:10,padding:14,borderRadius:12,border:`1px solid ${S}`,background:"#fff",boxShadow:"0 1px 2px rgba(24, 24, 27, 0.04)"},children:[(0,t.jsxs)("div",{style:{minWidth:0,flex:1,display:"grid",gap:10},children:[(0,t.jsx)("input",{value:eN,onChange:e=>eR(e.target.value),placeholder:d(),style:{width:"100%",minHeight:42,border:`1px solid ${x}`,borderRadius:9,outline:"none",background:"#fff",padding:"0 14px",margin:0,fontSize:20,fontWeight:700,lineHeight:1.3,color:k,boxShadow:"0 0 0 3px rgba(79, 70, 229, 0.06)"}}),(0,t.jsx)("input",{value:ez,onChange:e=>eF(e.target.value),placeholder:"任务描述(可选)…",style:{width:"100%",minHeight:46,border:`1px solid ${S}`,borderRadius:9,outline:"none",background:"#fff",padding:"0 14px",marginTop:0,fontSize:14,lineHeight:1.65,color:C}})]}),(0,t.jsx)("button",{type:"button",onClick:function(){let e=p({title:eN,description:ez}),t=JSON.stringify(e);window.localStorage.setItem(eW,t),eR(e.title),eF(e.description),eI(t),ey(""),ex(`已保存任务信息:${e.title}`)},style:{...F(eY?y:E,eY?m:A),marginTop:2,height:34,padding:"0 14px",fontSize:12},children:"保存"})]}),eh&&(0,t.jsx)("div",{style:I(b,"#FFEBEB","#FFD4D4"),children:eh}),em&&(0,t.jsx)("div",{style:I(v,"#F0FDF4","#C6E5D9"),children:em}),(0,t.jsxs)("div",{style:{marginTop:12,padding:"8px 14px",background:ek.length>0?A:"#FFF7E6",border:`1px solid ${ek.length>0?S:"#FFD591"}`,borderRadius:7,display:"flex",alignItems:"center",gap:8,fontSize:12},children:[(0,t.jsx)("span",{style:{color:$},children:"评测器运行模型:"}),ek.length>0?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{style:{color:k,fontSize:12,fontWeight:500,lineHeight:"20px"},children:eQ?`${eQ.name} \xb7 ${eQ.model||"未填写 model"}`:"未找到当前默认模型"}),(0,t.jsx)("span",{style:{color:E,fontSize:11},children:"(所有评估器共用)"})]}):(0,t.jsx)("span",{style:{color:j,fontWeight:500},children:"未配置 — 评测会失败"}),(0,t.jsx)("span",{style:{flex:1}}),(0,t.jsx)("button",{type:"button",onClick:()=>D.push("/modelconfig/registry"),style:{padding:"3px 10px",background:"#fff",color:C,border:`1px solid ${S}`,borderRadius:5,fontSize:11,cursor:"pointer"},children:ek.length>0?"管理模型":"去配置 →"})]}),(0,t.jsxs)("div",{style:{background:"#fff",border:`1px solid ${S}`,borderRadius:9,padding:"14px 16px",marginTop:14,display:"flex",gap:18,alignItems:"center",flexWrap:"wrap"},children:[(0,t.jsx)(R,{label:"执行 Agent",children:(0,t.jsxs)("select",{value:J,onChange:e=>H(e.target.value),style:M(),children:[0===eJ.length&&(0,t.jsx)("option",{value:"",children:"(暂无 Agent)"}),eJ.map(e=>(0,t.jsx)("option",{value:e,children:e},e))]})}),(0,t.jsx)(R,{label:"评估器",children:(0,t.jsxs)("div",{style:{minWidth:360,maxWidth:560,border:`1px solid ${S}`,borderRadius:10,background:A,padding:8,display:"flex",flexDirection:"column",gap:8},children:[(0,t.jsx)("div",{style:{display:"flex",alignItems:"center",gap:8},children:(0,t.jsxs)("select",{value:V,onChange:e=>{var t;(t=e.target.value)&&h.has(t)&&(q(e=>e.includes(t)?e:[...e,t]),K(""))},style:{...M(),minWidth:0,width:"100%",height:32,background:"#fff",borderColor:x,fontSize:12,boxShadow:"0 1px 2px rgba(26, 26, 24, 0.04)"},children:[(0,t.jsx)("option",{value:"",children:"添加评估器..."}),f.map(e=>(0,t.jsx)("option",{value:e.id,disabled:U.includes(e.id),children:e.name},e.id))]})}),(0,t.jsx)("div",{style:{display:"flex",alignItems:"center",gap:8,flexWrap:"wrap",minHeight:40,padding:0===U.length?"0 4px":"2px 0"},children:0===U.length?(0,t.jsx)("span",{style:{fontSize:11,color:E},children:"已选评估器会显示在这里"}):U.map(e=>{let r=f.find(t=>t.id===e);return r?(0,t.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:8,padding:"5px 8px 5px 10px",border:`1px solid ${x}`,borderRadius:6,background:"#fff",color:C,fontSize:12,lineHeight:1,boxShadow:"0 1px 2px rgba(26, 26, 24, 0.03)"},children:[(0,t.jsx)("span",{children:r.name}),(0,t.jsx)("button",{type:"button",onClick:()=>{var e;return e=r.id,void q(t=>t.filter(t=>t!==e))},style:{width:16,height:16,borderRadius:4,border:`1px solid ${x}`,background:m,color:y,cursor:"pointer",fontSize:10,lineHeight:"14px",padding:0,flex:"0 0 auto"},"aria-label":`删除${r.name}`,title:`删除 ${r.name}`,children:"×"})]},r.id):null})})]})}),(0,t.jsx)("div",{style:{flex:1}}),(0,t.jsx)("button",{onClick:eK,disabled:ev||ej||0===ed.size||!J||0===U.length,style:{padding:"6px 14px",background:(n=ev||ej||0===ed.size||!J||0===U.length)?"#bfb6f0":y,color:"#fff",border:"none",borderRadius:6,fontSize:12,fontWeight:500,cursor:n?"not-allowed":"pointer"},children:ev?"提交中…":`开始评测 (${ed.size})`}),(0,t.jsx)("button",{onClick:eZ,disabled:ev||ej||ed.size>0||!J||0===U.length,style:z(ev||ej||ed.size>0||!J||0===U.length),title:"开启后,本页面会自动追踪该执行 Agent 新上报的 trace,并追加到本次评测任务",children:ej?"启动中…":"自动观测"})]}),(0,t.jsxs)("div",{style:{marginTop:16},children:[(0,t.jsxs)("div",{style:{display:"flex",alignItems:"baseline",gap:8,marginBottom:8},children:[(0,t.jsx)("div",{style:{fontSize:13,fontWeight:600},children:"执行记录清单"}),(0,t.jsx)("div",{style:{fontSize:11,color:$},children:J?(0,t.jsxs)(t.Fragment,{children:["当前 Agent ",(0,t.jsx)("code",{style:{color:y},children:J})," 共 ",et," 条 trace,20 条/页"]}):"请先选 Agent"}),(0,t.jsxs)("div",{style:{marginLeft:"auto",display:"flex",alignItems:"center",gap:8},children:[(0,t.jsx)("button",{type:"button",onClick:eV,disabled:!J||eo||0===et,style:z(!J||eo||0===et),children:eo?"全选中…":`全选全部 (${et})`}),(0,t.jsx)("button",{type:"button",onClick:function(){ep(new Set)},disabled:0===ed.size,style:{padding:"6px 14px",background:"transparent",color:(u=0===ed.size)?E:C,border:`1px solid ${S}`,borderRadius:6,fontSize:12,fontWeight:500,cursor:u?"not-allowed":"pointer"},children:"清空选择"})]})]}),(0,t.jsx)("div",{style:{border:`1px solid ${S}`,borderRadius:9,overflow:"hidden",background:"#fff"},children:es?(0,t.jsx)("div",{style:{padding:24,textAlign:"center",color:$,fontSize:12},children:"正在加载执行记录..."}):0===X.length?(0,t.jsx)("div",{style:{padding:24,textAlign:"center",color:$,fontSize:12},children:"该 Agent 没有可评测的执行记录。"}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("table",{style:{width:"100%",borderCollapse:"collapse",fontSize:12},children:[(0,t.jsx)("thead",{children:(0,t.jsxs)("tr",{style:{background:A,borderBottom:`1px solid ${S}`},children:[(0,t.jsx)("th",{style:W(36),children:(0,t.jsx)("input",{type:"checkbox",checked:X.length>0&&X.every(e=>e.task_id&&ed.has(e.task_id)),onChange:function(){let e=X.map(e=>e.task_id||"").filter(Boolean),t=e.length>0&&e.every(e=>ed.has(e));ep(r=>{let a=new Set(r);return t?e.forEach(e=>a.delete(e)):e.forEach(e=>a.add(e)),a})}})}),(0,t.jsx)("th",{style:W(170,"left"),children:"TRACE ID"}),(0,t.jsx)("th",{style:W(void 0,"left"),children:"Trace 实际输入"}),(0,t.jsx)("th",{style:W(void 0,"left"),children:"Trace 实际输出"}),(0,t.jsx)("th",{style:W(80,"center"),children:"评测状态"}),(0,t.jsx)("th",{style:W(76,"right"),children:"得分"}),(0,t.jsx)("th",{style:W(80,"left"),children:"评测器"}),(0,t.jsx)("th",{style:W(60,"right"),children:"耗时"}),(0,t.jsx)("th",{style:W(80,"center")})]})}),(0,t.jsx)("tbody",{children:X.map(e=>{var r,a;let n,s,i,c,u,d=e.task_id||"",p=eH.get(d),g=ed.has(d),f=p&&("done"===(r=p.status)||"failed"===r)?(n=_(p,"preset-agent-trace-quality"),s=_(p,"preset-agent-task-completion"),0===(i=[n?p.trajectoryScore:null,s&&"number"==typeof p.resultEvaluationScore?p.resultEvaluationScore:null].filter(e=>"number"==typeof e&&Number.isFinite(e))).length?null:i.reduce((e,t)=>e+t,0)/i.length):null;return(0,t.jsxs)("tr",{style:{borderBottom:`1px solid ${w}`,background:g?"#F8F7FE":"transparent",cursor:"pointer"},onClick:()=>eG(d),children:[(0,t.jsx)("td",{style:O("center"),onClick:e=>e.stopPropagation(),children:(0,t.jsx)("input",{type:"checkbox",checked:g,onChange:()=>{ep(e=>{let t=new Set(e);return t.has(d)?t.delete(d):t.add(d),t})}})}),(0,t.jsx)("td",{style:{...O("left"),fontFamily:"monospace",color:C,whiteSpace:"nowrap"},title:d,children:d&&d.slice(0,14)||"--"}),(0,t.jsx)("td",{style:{...O("left"),maxWidth:280},children:(0,t.jsx)("div",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:e.query||"",children:e.query||"—"})}),(0,t.jsxs)("td",{style:{...O("left"),maxWidth:280},children:[(0,t.jsx)("div",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:e.final_result||"",children:e.final_result||"—"}),(0,t.jsxs)("div",{style:{fontSize:10,color:E,marginTop:2},children:[e.framework||""," · ",e.model||""," · ",function(e){if(!e)return"--";try{let t=new Date(e),r=Date.now()-t.getTime();if(r<6e4)return"刚刚";if(r<36e5)return`${Math.floor(r/6e4)} 分钟前`;if(r<864e5)return`${Math.floor(r/36e5)} 小时前`;return`${Math.floor(r/864e5)} 天前`}catch{return e}}(e.timestamp)]})]}),(0,t.jsx)("td",{style:O("center"),children:p?(0,t.jsx)("span",{style:{color:"warning"===(c=(0,l.getTrajectoryStatusTone)(p))?j:"danger"===c?b:"running"===c?"#1677ff":"success"===c?v:E,fontWeight:600,fontSize:11},title:(0,l.getTrajectoryStatusTitle)(p),children:(0,l.getTrajectoryStatusLabel)(p)}):(0,t.jsx)("span",{style:{color:E},children:"待评测"})}),(0,t.jsx)("td",{style:{...O("right"),color:null!=f?y:E,fontWeight:600,whiteSpace:"nowrap"},children:null!=f?`${(0,o.fmtPercentScore)(f)} 分`:"--"}),(0,t.jsx)("td",{style:O("left"),children:(0,t.jsx)("span",{style:{color:p?C:E},children:p?(u=Array.isArray(p?.selectedEvaluatorNames)?p.selectedEvaluatorNames:[]).length>0?u.join("、"):"Agent 轨迹质量":"—"})}),(0,t.jsx)("td",{style:{...O("right"),color:$},children:null==(a=e.latency)||Number.isNaN(a)?"--":a>=60?`${(a/60).toFixed(1)}m`:`${a.toFixed(2)}s`}),(0,t.jsx)("td",{style:O("center"),onClick:e=>e.stopPropagation(),children:(0,t.jsx)("button",{onClick:()=>eG(d),style:F(),children:"详情"})})]},d)})})]}),(0,t.jsx)("div",{style:{padding:"10px 12px",borderTop:`1px solid ${w}`},children:(0,t.jsx)(g.Pagination,{page:ea,pageSize:20,total:et,onPageChange:en,summary:(e,t,r)=>`${e}-${t} / ${r}`})})]})})]})]})}function R({label:e,children:r}){return(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,t.jsxs)("span",{style:{fontSize:11.5,color:$,fontWeight:500,whiteSpace:"nowrap"},children:[e,":"]}),r]})}function z(e){return{padding:"6px 14px",background:e?A:"#fff",color:e?E:y,border:`1px solid ${e?S:y}`,borderRadius:6,fontSize:12,fontWeight:500,cursor:e?"not-allowed":"pointer"}}function F(e=C,t="#fff"){return{padding:"3px 9px",background:t,color:e,border:`1px solid ${S}`,borderRadius:5,fontSize:11,cursor:"pointer"}}function M(){return{padding:"4px 12px",height:30,borderRadius:7,border:`1px solid ${S}`,fontSize:12,background:"#fff",color:k,fontWeight:500}}function I(e,t,r){return{padding:10,marginTop:12,borderRadius:6,background:t,border:`1px solid ${r}`,color:e,fontSize:12}}function W(e,t="left"){return{padding:"8px 10px",textAlign:t,fontWeight:500,color:$,fontSize:11,...e?{width:e}:{}}}function O(e="left"){return{padding:"8px 10px",textAlign:e,verticalAlign:"middle"}}function D(){let e=(0,a.useRouter)();return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.AppTopBar,{title:"发起新评测",showDefaultActions:!1}),(0,t.jsxs)("div",{style:{flex:1,overflowY:"auto"},children:[(0,t.jsx)("div",{style:{padding:"10px 16px 0"},children:(0,t.jsx)("button",{type:"button",onClick:()=>e.push("/eval"),style:{padding:"4px 10px",borderRadius:6,border:"1px solid var(--border)",background:"var(--background)",color:"var(--foreground)",fontSize:12,cursor:"pointer"},children:"< 返回评测执行"})}),(0,t.jsx)(r.Suspense,{fallback:(0,t.jsx)("div",{children:"Loading..."}),children:(0,t.jsx)(N,{})})]})]})}e.s(["default",()=>D],356472)}]);
|