agent-insight 0.5.2 → 0.5.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.example +6 -0
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/app-path-routes-manifest.json +9 -0
- package/.next/standalone/.next/build-manifest.json +2 -2
- package/.next/standalone/.next/prerender-manifest.json +51 -3
- package/.next/standalone/.next/routes-manifest.json +60 -0
- 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.js.nft.json +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.js.nft.json +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.js.nft.json +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.js.nft.json +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.js.nft.json +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.js.nft.json +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.js.nft.json +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.js.nft.json +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.js.nft.json +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.js.nft.json +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.js.nft.json +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/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/(main)/version-analysis/page/build-manifest.json +17 -0
- package/.next/standalone/.next/server/app/(main)/version-analysis/page/next-font-manifest.json +6 -0
- package/.next/standalone/.next/server/app/(main)/version-analysis/page/react-loadable-manifest.json +1 -0
- package/.next/standalone/.next/server/app/(main)/version-analysis/page/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/(main)/version-analysis/page.js +17 -0
- package/.next/standalone/.next/server/app/(main)/version-analysis/page.js.map +5 -0
- package/.next/standalone/.next/server/app/(main)/version-analysis/page.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/(main)/version-analysis/page_client-reference-manifest.js +2 -0
- package/.next/standalone/.next/server/app/(main)/version-management/page/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/(main)/version-management/page/build-manifest.json +17 -0
- package/.next/standalone/.next/server/app/(main)/version-management/page/next-font-manifest.json +6 -0
- package/.next/standalone/.next/server/app/(main)/version-management/page/react-loadable-manifest.json +1 -0
- package/.next/standalone/.next/server/app/(main)/version-management/page/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/(main)/version-management/page.js +17 -0
- package/.next/standalone/.next/server/app/(main)/version-management/page.js.map +5 -0
- package/.next/standalone/.next/server/app/(main)/version-management/page.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/(main)/version-management/page_client-reference-manifest.js +2 -0
- 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/agent-datasets/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/agent-datasets/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/agents/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/agents/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/auth/apikey/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/auth/organization/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/dashboard/stats/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/batch-tasks/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/debug/execute/[jobId]/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 +10 -10
- package/.next/standalone/.next/server/app/api/debug/grayscale-tasks/[taskId]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/debug/grayscale-tasks/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/debug/history/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/debug/history/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/eval/config/backfill-routing/route.js +6 -6
- package/.next/standalone/.next/server/app/api/eval/config/backfill-routing/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/eval/config/create/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/eval/config/reparse/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/eval/config/route.js +6 -6
- package/.next/standalone/.next/server/app/api/eval/config/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/eval/config/status/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/eval/evaluation/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/eval/rejudge/route.js +6 -6
- package/.next/standalone/.next/server/app/api/eval/rejudge/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/eval/settings/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/eval/settings/test/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.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/eval/trajectory/results/route.js +5 -5
- package/.next/standalone/.next/server/app/api/eval/trajectory/results/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/eval/trajectory/run/route.js +13 -13
- 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.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/evaluation/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/evaluation/cancel/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/fault/diagnosis/session/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/fleet/agent/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/fleet/agent/route/build-manifest.json +11 -0
- package/.next/standalone/.next/server/app/api/fleet/agent/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/fleet/agent/route.js +8 -0
- package/.next/standalone/.next/server/app/api/fleet/agent/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/fleet/agent/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/fleet/agent/route_client-reference-manifest.js +2 -0
- package/.next/standalone/.next/server/app/api/fleet/breakdowns/route.js +1 -1
- package/.next/standalone/.next/server/app/api/fleet/breakdowns/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/fleet/trends/route.js +2 -2
- package/.next/standalone/.next/server/app/api/fleet/trends/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/guide/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ingest/opencode/session-complete/route.js +3 -3
- package/.next/standalone/.next/server/app/api/ingest/opencode/session-complete/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ingest/otel/v1/logs/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ingest/otel/v1/metrics/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ingest/otel/v1/traces/route.js +5 -5
- package/.next/standalone/.next/server/app/api/ingest/otel/v1/traces/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ingest/proxy/[taskId]/[...path]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ingest/proxy/[taskId]/end/route.js +9 -9
- package/.next/standalone/.next/server/app/api/ingest/proxy/[taskId]/end/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ingest/proxy/[taskId]/start/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ingest/sync/manifest/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ingest/sync/opencode/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ingest/upload/route.js +8 -8
- package/.next/standalone/.next/server/app/api/ingest/upload/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/modelconfig/pricing/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/modelconfig/pricing/route/build-manifest.json +11 -0
- package/.next/standalone/.next/server/app/api/modelconfig/pricing/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/modelconfig/pricing/route.js +8 -0
- package/.next/standalone/.next/server/app/api/modelconfig/pricing/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/modelconfig/pricing/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/modelconfig/pricing/route_client-reference-manifest.js +2 -0
- package/.next/standalone/.next/server/app/api/observe/data/route.js +3 -3
- package/.next/standalone/.next/server/app/api/observe/data/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 +13 -13
- 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/executions/[executionId]/analyze-match/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/infra/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route/build-manifest.json +11 -0
- package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route.js +8 -0
- package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route_client-reference-manifest.js +2 -0
- package/.next/standalone/.next/server/app/api/observe/infra/history/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/observe/infra/poll/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/observe/infra/sources/derive/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/observe/infra/sources/overview/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/observe/infra/sources/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/observe/infra/sources/sessions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/observe/infra/sources/test/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/observe/session/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/observe/task-stats/route.js +3 -3
- package/.next/standalone/.next/server/app/api/observe/task-stats/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route/build-manifest.json +11 -0
- package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route.js +8 -0
- package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route_client-reference-manifest.js +2 -0
- package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route/build-manifest.json +11 -0
- package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route.js +8 -0
- package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route_client-reference-manifest.js +2 -0
- package/.next/standalone/.next/server/app/api/public/otel/v1/traces/route.js +5 -5
- package/.next/standalone/.next/server/app/api/public/otel/v1/traces/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/quality/agents/route.js +7 -7
- package/.next/standalone/.next/server/app/api/quality/agents/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/quality/backfill/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/quality/executions/route.js +7 -7
- package/.next/standalone/.next/server/app/api/quality/executions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/quality/report/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]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/run/[runId]/cancel/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-eval/trigger/[skillName]/runs/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/upload/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/download/[sessionId]/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-generator/sessions/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skill-generator/sessions/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/plan/items/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skill-opt/plan/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/skill-opt/sessions/[id]/iterations/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skill-opt/sessions/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skill-opt/sessions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/[id]/activate/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/[id]/benchmark-generate/route.js +7 -7
- package/.next/standalone/.next/server/app/api/skills/[id]/benchmark-generate/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/[id]/runs/route.js +2 -2
- package/.next/standalone/.next/server/app/api/skills/[id]/runs/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/[id]/toggle/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]/evaluate/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/evaluation-summary/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/skills/[id]/versions/[version]/parse-flow/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/[id]/versions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/automation/import/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/automation/push/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/by-name/[name]/analysis-diagnosis/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/by-name/[name]/optimization-points/resolve/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/by-name/[name]/optimization-points/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/by-name/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/logs/route.js +6 -6
- package/.next/standalone/.next/server/app/api/skills/logs/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/publish/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/sync-enterprise/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/upload/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tags/[id]/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/tags/[id]/route/build-manifest.json +11 -0
- package/.next/standalone/.next/server/app/api/tags/[id]/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/tags/[id]/route.js +8 -0
- package/.next/standalone/.next/server/app/api/tags/[id]/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/tags/[id]/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/tags/[id]/route_client-reference-manifest.js +2 -0
- package/.next/standalone/.next/server/app/api/tags/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/tags/route/build-manifest.json +11 -0
- package/.next/standalone/.next/server/app/api/tags/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/tags/route.js +8 -0
- package/.next/standalone/.next/server/app/api/tags/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/tags/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/tags/route_client-reference-manifest.js +2 -0
- 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 +6 -6
- 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 +6 -6
- 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 +6 -6
- 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 +6 -6
- 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 +6 -6
- 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 +6 -6
- 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 +8 -8
- 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 +8 -8
- 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 -0
- package/.next/standalone/.next/server/app/version-analysis.meta +16 -0
- package/.next/standalone/.next/server/app/version-analysis.rsc +23 -0
- package/.next/standalone/.next/server/app/version-analysis.segments/!KG1haW4p/version-analysis/__PAGE__.segment.rsc +9 -0
- package/.next/standalone/.next/server/app/version-analysis.segments/!KG1haW4p/version-analysis.segment.rsc +4 -0
- package/.next/standalone/.next/server/app/version-analysis.segments/!KG1haW4p.segment.rsc +7 -0
- package/.next/standalone/.next/server/app/version-analysis.segments/_full.segment.rsc +23 -0
- package/.next/standalone/.next/server/app/version-analysis.segments/_head.segment.rsc +6 -0
- package/.next/standalone/.next/server/app/version-analysis.segments/_index.segment.rsc +6 -0
- package/.next/standalone/.next/server/app/version-analysis.segments/_tree.segment.rsc +2 -0
- package/.next/standalone/.next/server/app/version-management.html +1 -0
- package/.next/standalone/.next/server/app/version-management.meta +16 -0
- package/.next/standalone/.next/server/app/version-management.rsc +22 -0
- package/.next/standalone/.next/server/app/version-management.segments/!KG1haW4p/version-management/__PAGE__.segment.rsc +9 -0
- package/.next/standalone/.next/server/app/version-management.segments/!KG1haW4p/version-management.segment.rsc +4 -0
- package/.next/standalone/.next/server/app/version-management.segments/!KG1haW4p.segment.rsc +7 -0
- package/.next/standalone/.next/server/app/version-management.segments/_full.segment.rsc +22 -0
- package/.next/standalone/.next/server/app/version-management.segments/_head.segment.rsc +6 -0
- package/.next/standalone/.next/server/app/version-management.segments/_index.segment.rsc +6 -0
- package/.next/standalone/.next/server/app/version-management.segments/_tree.segment.rsc +2 -0
- package/.next/standalone/.next/server/app-paths-manifest.json +9 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__096d00c3._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__28078c4e._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__4509f30c._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__5386e9b4._.js +22 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__5cb21a03._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__6fe0c73e._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__88e070f0._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__98ce63c7._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__9f6a4627._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__b0d1e6e5._.js +22 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__c60fa3da._.js +22 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__c875b500._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__c8b9af98._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__cfcf074d._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__d754b2c2._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__e60b9568._.js +22 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__e8b9c639._.js +22 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__f30eea21._.js +3 -0
- package/.next/standalone/.next/server/chunks/_05c80664._.js +1 -1
- 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/_1c2f3589._.js +1 -1
- package/.next/standalone/.next/server/chunks/{_1a32fa23._.js → _5090183e._.js} +2 -2
- package/.next/standalone/.next/server/chunks/{_e84c3e5f._.js → _6a203624._.js} +1 -1
- package/.next/standalone/.next/server/chunks/{_a0074544._.js → _70b9b972._.js} +1 -1
- package/.next/standalone/.next/server/chunks/_78c6471e._.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/{_547fcde4._.js → _d02fac80._.js} +2 -2
- package/.next/standalone/.next/server/chunks/_d043f698._.js +1 -1
- package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_fleet_agent_route_actions_b98e2c99.js +3 -0
- package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_modelconfig_pricing_route_actions_bca6856d.js +3 -0
- package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_tags_[id]_route_actions_a6f8b324.js +3 -0
- package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_tags_route_actions_caf13f5f.js +3 -0
- package/.next/standalone/.next/server/chunks/bec2d_app_api_observe_version-analysis_tags_[tagId]_traces_route_actions_ff37f2d3.js +3 -0
- package/.next/standalone/.next/server/chunks/ce889_server_app_api_observe_executions_[executionId]_tags_route_actions_08aa41a4.js +3 -0
- package/.next/standalone/.next/server/chunks/ce889_server_app_api_observe_version-analysis_compare_route_actions_b48ab573.js +3 -0
- package/.next/standalone/.next/server/chunks/src_lib_266d6cf4._.js +51 -0
- package/.next/standalone/.next/server/chunks/src_lib_5d95b500._.js +3 -0
- package/.next/standalone/.next/server/chunks/src_lib_67530201._.js +51 -0
- package/.next/standalone/.next/server/chunks/src_lib_9513f84d._.js +48 -0
- package/.next/standalone/.next/server/chunks/src_lib_9d09752c._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_a03a423b._.js +48 -0
- package/.next/standalone/.next/server/chunks/src_lib_a2a34aa6._.js +1 -1
- package/.next/standalone/.next/server/chunks/{src_lib_4751db31._.js → src_lib_dc72b90b._.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]__0eb5d21d._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__83687057._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__85e7edfe._.js +3 -0
- 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]__c69baa4a._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__f82e551e._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_051b1443._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0ae78458._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_400d0da3._.js → _1278164d._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_15e714f2._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_2f20fbfc._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_4e720925._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_5aa55aa6._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_8b68f69f._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_8d4b753e._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_976dfbab._.js +4 -0
- package/.next/standalone/.next/server/chunks/ssr/_aab048d0._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_be1ffbbf._.js +12 -0
- package/.next/standalone/.next/server/chunks/ssr/_c815e0e7._.js +4 -0
- package/.next/standalone/.next/server/chunks/ssr/_e4c81263._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_a3d5f9bc._.js → _e5ee8977._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_f634ea15._.js +12 -0
- package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_(main)_version-analysis_page_actions_479d49a7.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_(main)_version-management_page_actions_aea5ae93.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/{node_modules_a443e166._.js → node_modules_3b1fd8eb._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/node_modules_7680a21d._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_bfffaa78._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_2e7afafc._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_cd0b182b._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_accessconfig_install_page_tsx_6f4ef3fc._.js +3 -3
- package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_dashboard_page_tsx_7eac7774._.js +1 -1
- 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)_modelconfig_registry_page_tsx_1ead2fd4._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_quality_page_tsx_26bb8e80._.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_app_(main)_version-analysis_page_tsx_63ae8791._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_version-management_page_tsx_87fe0372._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_components_ui_select_tsx_4c0f64d8._.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/0257c68e82e9f2b0.js +1 -0
- package/.next/standalone/.next/static/chunks/{8754e0cf40813330.js → 06ac4297aa02f40a.js} +1 -1
- package/.next/standalone/.next/static/chunks/151b95e65092aa16.js +1 -0
- package/.next/standalone/.next/static/chunks/1624a1adcb73d784.js +1 -0
- package/.next/standalone/.next/static/chunks/1f173de64ad85757.js +10 -0
- package/.next/standalone/.next/static/chunks/{4dcd21eef469e66b.js → 2064add303799ffc.js} +1 -1
- package/.next/standalone/.next/static/chunks/2fb55cc737806639.js +1 -0
- package/.next/standalone/.next/static/chunks/3184105f3d2b47a1.js +10 -0
- package/.next/standalone/.next/static/chunks/379315313d164a57.js +1 -0
- package/.next/standalone/.next/static/chunks/39157b51ed6489eb.js +1 -0
- package/.next/standalone/.next/static/chunks/{dc22f906bd43e9a3.js → 46308ae9f83ac112.js} +3 -3
- package/.next/standalone/.next/static/chunks/4d2c017f2f4c9160.css +1 -0
- package/.next/standalone/.next/static/chunks/54538e1a80e53392.js +1 -0
- package/.next/standalone/.next/static/chunks/599fdc4cf6eb9e95.js +1 -0
- package/.next/standalone/.next/static/chunks/5be4d965983c6b40.js +6 -0
- package/.next/standalone/.next/static/chunks/63220d0acc5073cc.js +1 -0
- package/.next/standalone/.next/static/chunks/6da1d3424f804755.js +1 -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/8668d6f4c34d1e67.js +3 -0
- package/.next/standalone/.next/static/chunks/913c61f4f0a12da4.js +1 -0
- package/.next/standalone/.next/static/chunks/97822ca2c186f93d.js +1 -0
- package/.next/{static/chunks/96c7e2e47438553a.js → standalone/.next/static/chunks/98588c35b1e00bea.js} +1 -1
- package/.next/standalone/.next/static/chunks/a99fb4f44f9a41f3.js +1 -0
- package/.next/standalone/.next/static/chunks/b11e37b43e38eb95.js +1 -0
- package/.next/standalone/.next/static/chunks/b223106f6c610a67.js +1 -0
- package/.next/standalone/.next/static/chunks/cc9a7b6a8edabe81.js +1 -0
- package/.next/standalone/.next/static/chunks/cf0b4e5d7b804bf5.js +1 -0
- package/.next/standalone/.next/static/chunks/cfb3924a60d22c64.js +1 -0
- package/.next/standalone/.next/static/chunks/d15d7f6146b85000.js +1 -0
- package/.next/standalone/.next/static/chunks/dee90c3e29cd39bb.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/.next/static/chunks/{bf909bd0ff1898e4.js → f6954ae67d81050e.js} +1 -1
- package/.next/standalone/.next/static/chunks/fc7f5db841a7032a.js +1 -0
- package/.next/standalone/docker-compose.amd64.yml +2 -1
- package/.next/standalone/docker-compose.arm64.yml +11 -0
- package/.next/standalone/node_modules/.prisma/client/edge.js +26 -3
- package/.next/standalone/node_modules/.prisma/client/index-browser.js +23 -0
- package/.next/standalone/node_modules/.prisma/client/index.js +26 -3
- package/.next/standalone/node_modules/.prisma/client/package.json +1 -1
- package/.next/standalone/node_modules/.prisma/client/schema.prisma +39 -0
- package/.next/standalone/node_modules/.prisma/client/wasm.js +23 -0
- package/.next/standalone/package.json +1 -1
- package/.next/standalone/prisma/schema.prisma +38 -0
- package/.next/static/chunks/0257c68e82e9f2b0.js +1 -0
- package/.next/static/chunks/{8754e0cf40813330.js → 06ac4297aa02f40a.js} +1 -1
- package/.next/static/chunks/151b95e65092aa16.js +1 -0
- package/.next/static/chunks/1624a1adcb73d784.js +1 -0
- package/.next/static/chunks/1f173de64ad85757.js +10 -0
- package/.next/static/chunks/{4dcd21eef469e66b.js → 2064add303799ffc.js} +1 -1
- package/.next/static/chunks/2fb55cc737806639.js +1 -0
- package/.next/static/chunks/3184105f3d2b47a1.js +10 -0
- package/.next/static/chunks/379315313d164a57.js +1 -0
- package/.next/static/chunks/39157b51ed6489eb.js +1 -0
- package/.next/static/chunks/{dc22f906bd43e9a3.js → 46308ae9f83ac112.js} +3 -3
- package/.next/static/chunks/4d2c017f2f4c9160.css +1 -0
- package/.next/static/chunks/54538e1a80e53392.js +1 -0
- package/.next/static/chunks/599fdc4cf6eb9e95.js +1 -0
- package/.next/static/chunks/5be4d965983c6b40.js +6 -0
- package/.next/static/chunks/63220d0acc5073cc.js +1 -0
- package/.next/static/chunks/6da1d3424f804755.js +1 -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/8668d6f4c34d1e67.js +3 -0
- package/.next/static/chunks/913c61f4f0a12da4.js +1 -0
- package/.next/static/chunks/97822ca2c186f93d.js +1 -0
- package/.next/{standalone/.next/static/chunks/96c7e2e47438553a.js → static/chunks/98588c35b1e00bea.js} +1 -1
- package/.next/static/chunks/a99fb4f44f9a41f3.js +1 -0
- package/.next/static/chunks/b11e37b43e38eb95.js +1 -0
- package/.next/static/chunks/b223106f6c610a67.js +1 -0
- package/.next/static/chunks/cc9a7b6a8edabe81.js +1 -0
- package/.next/static/chunks/cf0b4e5d7b804bf5.js +1 -0
- package/.next/static/chunks/cfb3924a60d22c64.js +1 -0
- package/.next/static/chunks/d15d7f6146b85000.js +1 -0
- package/.next/static/chunks/dee90c3e29cd39bb.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/.next/static/chunks/{bf909bd0ff1898e4.js → f6954ae67d81050e.js} +1 -1
- package/.next/static/chunks/fc7f5db841a7032a.js +1 -0
- package/package.json +1 -1
- package/prisma/schema.prisma +38 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__2574e6ed._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__2710fb53._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__8cc92af1._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__9d2e5f60._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__bd3dc3ab._.js +0 -3
- package/.next/standalone/.next/server/chunks/src_lib_6cb48964._.js +0 -32
- package/.next/standalone/.next/server/chunks/src_lib_a3155704._.js +0 -3
- package/.next/standalone/.next/server/chunks/src_lib_baaf83ef._.js +0 -29
- package/.next/standalone/.next/server/chunks/src_lib_bf0ee699._.js +0 -32
- package/.next/standalone/.next/server/chunks/src_lib_dbf3c792._.js +0 -29
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__2ec2bb09._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__3cb83dc3._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__c9cf8076._.js +0 -8
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__fc94ba06._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0141e5c7._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0acdaaae._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_231821bd._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_5d1f8671._.js +0 -12
- package/.next/standalone/.next/server/chunks/ssr/_8bba8b8d._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_96725836._.js +0 -12
- package/.next/standalone/.next/server/chunks/ssr/_b08dc931._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_c4db9cec._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_8bfa35b3._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_30858f09._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_f1e06ad8._.js +0 -3
- package/.next/standalone/.next/static/chunks/0b6bd84bf10579a4.js +0 -10
- package/.next/standalone/.next/static/chunks/0bca64d67dceae3f.js +0 -1
- package/.next/standalone/.next/static/chunks/16047b19dda5c90d.js +0 -10
- package/.next/standalone/.next/static/chunks/3a0f454536f3ebc8.js +0 -1
- package/.next/standalone/.next/static/chunks/3d19f62114122bd3.js +0 -1
- package/.next/standalone/.next/static/chunks/3d6127f72467176d.js +0 -1
- package/.next/standalone/.next/static/chunks/44545e70bb7a33b8.js +0 -1
- package/.next/standalone/.next/static/chunks/4e52a5c5e332595a.js +0 -1
- package/.next/standalone/.next/static/chunks/6238734a2f04b1f9.js +0 -1
- package/.next/standalone/.next/static/chunks/66b23011cd8544ad.js +0 -1
- package/.next/standalone/.next/static/chunks/7a758615e3d35d6d.js +0 -1
- package/.next/standalone/.next/static/chunks/7a7dc24eed0484dc.js +0 -1
- package/.next/standalone/.next/static/chunks/7d4fa817c5229801.js +0 -1
- package/.next/standalone/.next/static/chunks/8f18a711543d804a.js +0 -1
- package/.next/standalone/.next/static/chunks/9155a6c07dc0502d.js +0 -6
- package/.next/standalone/.next/static/chunks/94fdb955b1dc512a.js +0 -1
- package/.next/standalone/.next/static/chunks/97b8d7ea5d04e2a2.js +0 -1
- package/.next/standalone/.next/static/chunks/a31bf4e176b5e90c.js +0 -3
- package/.next/standalone/.next/static/chunks/b9597989b5b0abd3.js +0 -1
- package/.next/standalone/.next/static/chunks/d170174df1128338.js +0 -1
- package/.next/standalone/.next/static/chunks/d91c2c0bbe0b59ab.js +0 -1
- package/.next/standalone/.next/static/chunks/e159d293fc72e91b.css +0 -1
- package/.next/standalone/.next/static/chunks/e45a4e085c7ce03c.js +0 -1
- package/.next/standalone/.next/static/chunks/efe225251ea151f0.js +0 -4
- package/.next/standalone/.next/static/chunks/ffd21617593aaafd.js +0 -1
- package/.next/static/chunks/0b6bd84bf10579a4.js +0 -10
- package/.next/static/chunks/0bca64d67dceae3f.js +0 -1
- package/.next/static/chunks/16047b19dda5c90d.js +0 -10
- package/.next/static/chunks/3a0f454536f3ebc8.js +0 -1
- package/.next/static/chunks/3d19f62114122bd3.js +0 -1
- package/.next/static/chunks/3d6127f72467176d.js +0 -1
- package/.next/static/chunks/44545e70bb7a33b8.js +0 -1
- package/.next/static/chunks/4e52a5c5e332595a.js +0 -1
- package/.next/static/chunks/6238734a2f04b1f9.js +0 -1
- package/.next/static/chunks/66b23011cd8544ad.js +0 -1
- package/.next/static/chunks/7a758615e3d35d6d.js +0 -1
- package/.next/static/chunks/7a7dc24eed0484dc.js +0 -1
- package/.next/static/chunks/7d4fa817c5229801.js +0 -1
- package/.next/static/chunks/8f18a711543d804a.js +0 -1
- package/.next/static/chunks/9155a6c07dc0502d.js +0 -6
- package/.next/static/chunks/94fdb955b1dc512a.js +0 -1
- package/.next/static/chunks/97b8d7ea5d04e2a2.js +0 -1
- package/.next/static/chunks/a31bf4e176b5e90c.js +0 -3
- package/.next/static/chunks/b9597989b5b0abd3.js +0 -1
- package/.next/static/chunks/d170174df1128338.js +0 -1
- package/.next/static/chunks/d91c2c0bbe0b59ab.js +0 -1
- package/.next/static/chunks/e159d293fc72e91b.css +0 -1
- package/.next/static/chunks/e45a4e085c7ce03c.js +0 -1
- package/.next/static/chunks/efe225251ea151f0.js +0 -4
- package/.next/static/chunks/ffd21617593aaafd.js +0 -1
- /package/.next/standalone/.next/static/{iE8084jR9Kgb7Bhs3Xokh → pzAy0mrZCL0PmE4h3HDut}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{iE8084jR9Kgb7Bhs3Xokh → pzAy0mrZCL0PmE4h3HDut}/_clientMiddlewareManifest.json +0 -0
- /package/.next/standalone/.next/static/{iE8084jR9Kgb7Bhs3Xokh → pzAy0mrZCL0PmE4h3HDut}/_ssgManifest.js +0 -0
- /package/.next/static/{iE8084jR9Kgb7Bhs3Xokh → pzAy0mrZCL0PmE4h3HDut}/_buildManifest.js +0 -0
- /package/.next/static/{iE8084jR9Kgb7Bhs3Xokh → pzAy0mrZCL0PmE4h3HDut}/_clientMiddlewareManifest.json +0 -0
- /package/.next/static/{iE8084jR9Kgb7Bhs3Xokh → pzAy0mrZCL0PmE4h3HDut}/_ssgManifest.js +0 -0
package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_dashboard_page_tsx_7eac7774._.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[659764,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(48662),e=a.i(940092),f=a.i(600554),g=a.i(931760),h=["axis","item"],i=(0,c.forwardRef)((a,b)=>c.createElement(g.CartesianChart,{chartName:"BarChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:h,tooltipPayloadSearcher:f.arrayTooltipSearcher,categoricalChartProps:a,ref:b})),j=a.i(457431),k=a.i(923665),l=a.i(677924),m=a.i(758042),n=a.i(994222),o=a.i(54419),p=a.i(659854),q=a.i(778900),r=a.i(935112),s=a.i(320353),t=a.i(298621),u=a.i(603190);a.i(463008);var v=a.i(379996),w=a.i(112882),x=a.i(630714);(0,x.sqrt)(3);let y={draw(a,b){let c=(0,x.sqrt)(b/x.pi);a.moveTo(c,0),a.arc(0,0,c,0,x.tau)}},z=(0,x.sqrt)(1/3),A=2*z,B=(0,x.sin)(x.pi/10)/(0,x.sin)(7*x.pi/10),C=(0,x.sin)(x.tau/10)*B,D=-(0,x.cos)(x.tau/10)*B,E=(0,x.sqrt)(3);(0,x.sqrt)(3);let F=(0,x.sqrt)(3)/2,G=1/(0,x.sqrt)(12),H=(G/2+1)*3;var I=a.i(768932),J=a.i(107038),K=["type","size","sizeType"];function L(){return(L=Object.assign.bind()).apply(null,arguments)}function M(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function N(a){for(var b=1;b<arguments.length;b++){var c=null!=arguments[b]?arguments[b]:{};b%2?M(Object(c),!0).forEach(function(b){var d,e,f;d=a,e=b,f=c[b],(e=function(a){var b=function(a,b){if("object"!=typeof a||!a)return a;var c=a[Symbol.toPrimitive];if(void 0!==c){var d=c.call(a,b||"default");if("object"!=typeof d)return d;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===b?String:Number)(a)}(a,"string");return"symbol"==typeof b?b:b+""}(e))in d?Object.defineProperty(d,e,{value:f,enumerable:!0,configurable:!0,writable:!0}):d[e]=f}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(c)):M(Object(c)).forEach(function(b){Object.defineProperty(a,b,Object.getOwnPropertyDescriptor(c,b))})}return a}var O={symbolCircle:y,symbolCross:{draw(a,b){let c=(0,x.sqrt)(b/5)/2;a.moveTo(-3*c,-c),a.lineTo(-c,-c),a.lineTo(-c,-3*c),a.lineTo(c,-3*c),a.lineTo(c,-c),a.lineTo(3*c,-c),a.lineTo(3*c,c),a.lineTo(c,c),a.lineTo(c,3*c),a.lineTo(-c,3*c),a.lineTo(-c,c),a.lineTo(-3*c,c),a.closePath()}},symbolDiamond:{draw(a,b){let c=(0,x.sqrt)(b/A),d=c*z;a.moveTo(0,-c),a.lineTo(d,0),a.lineTo(0,c),a.lineTo(-d,0),a.closePath()}},symbolSquare:{draw(a,b){let c=(0,x.sqrt)(b),d=-c/2;a.rect(d,d,c,c)}},symbolStar:{draw(a,b){let c=(0,x.sqrt)(.8908130915292852*b),d=C*c,e=D*c;a.moveTo(0,-c),a.lineTo(d,e);for(let b=1;b<5;++b){let f=x.tau*b/5,g=(0,x.cos)(f),h=(0,x.sin)(f);a.lineTo(h*c,-g*c),a.lineTo(g*d-h*e,h*d+g*e)}a.closePath()}},symbolTriangle:{draw(a,b){let c=-(0,x.sqrt)(b/(3*E));a.moveTo(0,2*c),a.lineTo(-E*c,-c),a.lineTo(E*c,-c),a.closePath()}},symbolWye:{draw(a,b){let c=(0,x.sqrt)(b/H),d=c/2,e=c*G,f=c*G+c,g=-d;a.moveTo(d,e),a.lineTo(d,f),a.lineTo(g,f),a.lineTo(-.5*d-F*e,F*d+-.5*e),a.lineTo(-.5*d-F*f,F*d+-.5*f),a.lineTo(-.5*g-F*f,F*g+-.5*f),a.lineTo(-.5*d+F*e,-.5*e-F*d),a.lineTo(-.5*d+F*f,-.5*f-F*d),a.lineTo(-.5*g+F*f,-.5*f-F*g),a.closePath()}}},P=Math.PI/180,Q=a=>{var b=a.type,d=void 0===b?"circle":b,e=a.size,f=void 0===e?64:e,g=a.sizeType,h=void 0===g?"area":g,i=N(N({},function(a,b){if(null==a)return{};var c,d,e=function(a,b){if(null==a)return{};var c={};for(var d in a)if(({}).hasOwnProperty.call(a,d)){if(-1!==b.indexOf(d))continue;c[d]=a[d]}return c}(a,b);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(a);for(d=0;d<f.length;d++)c=f[d],-1===b.indexOf(c)&&({}).propertyIsEnumerable.call(a,c)&&(e[c]=a[c])}return e}(a,K)),{},{type:d,size:f,sizeType:h}),j="circle";"string"==typeof d&&(j=d);var k=i.className,l=i.cx,m=i.cy,n=(0,J.svgPropertiesAndEvents)(i);return(0,I.isNumber)(l)&&(0,I.isNumber)(m)&&(0,I.isNumber)(f)?c.createElement("path",L({},n,{className:(0,t.clsx)("recharts-symbols",k),transform:"translate(".concat(l,", ").concat(m,")"),d:(()=>{var a,b=(a=j,O["symbol".concat((0,I.upperFirst)(a))]||y),c=(function(a,b){let c=null,d=(0,w.withPath)(e);function e(){let e;if(c||(c=e=d()),a.apply(this,arguments).draw(c,+b.apply(this,arguments)),e)return c=null,e+""||null}return a="function"==typeof a?a:(0,v.default)(a||y),b="function"==typeof b?b:(0,v.default)(void 0===b?64:+b),e.type=function(b){return arguments.length?(a="function"==typeof b?b:(0,v.default)(b),e):a},e.size=function(a){return arguments.length?(b="function"==typeof a?a:(0,v.default)(+a),e):b},e.context=function(a){return arguments.length?(c=null==a?null:a,e):c},e})().type(b).size(((a,b,c)=>{if("area"===b)return a;switch(c){case"cross":return 5*a*a/9;case"diamond":return .5*a*a/Math.sqrt(3);case"square":return a*a;case"star":var d=18*P;return 1.25*a*a*(Math.tan(d)-Math.tan(2*d)*Math.tan(d)**2);case"triangle":return Math.sqrt(3)*a*a/4;case"wye":return(21-10*Math.sqrt(3))*a*a/8;default:return Math.PI*a*a/4}})(f,h,j))();if(null!==c)return c})()})):null};Q.registerSymbol=(a,b)=>{O["symbol".concat((0,I.upperFirst)(a))]=b};var R=a.i(952517),S=a.i(787293);function T(){return(T=Object.assign.bind()).apply(null,arguments)}function U(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function V(a){for(var b=1;b<arguments.length;b++){var c=null!=arguments[b]?arguments[b]:{};b%2?U(Object(c),!0).forEach(function(b){var d,e,f;d=a,e=b,f=c[b],(e=function(a){var b=function(a,b){if("object"!=typeof a||!a)return a;var c=a[Symbol.toPrimitive];if(void 0!==c){var d=c.call(a,b||"default");if("object"!=typeof d)return d;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===b?String:Number)(a)}(a,"string");return"symbol"==typeof b?b:b+""}(e))in d?Object.defineProperty(d,e,{value:f,enumerable:!0,configurable:!0,writable:!0}):d[e]=f}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(c)):U(Object(c)).forEach(function(b){Object.defineProperty(a,b,Object.getOwnPropertyDescriptor(c,b))})}return a}var W={align:"center",iconSize:14,inactiveColor:"#ccc",layout:"horizontal",verticalAlign:"middle",labelStyle:{}};function X(a){var b=a.data,d=a.iconType,e=a.inactiveColor,f=32/6,g=32/3,h=b.inactive?e:b.color,i=null!=d?d:b.type;if("none"===i)return null;if("plainline"===i)return c.createElement("line",{strokeWidth:4,fill:"none",stroke:h,strokeDasharray:function(a){if("object"==typeof a&&null!==a&&"strokeDasharray"in a)return String(a.strokeDasharray)}(b.payload),x1:0,y1:16,x2:32,y2:16,className:"recharts-legend-icon"});if("line"===i)return c.createElement("path",{strokeWidth:4,fill:"none",stroke:h,d:"M0,".concat(16,"h").concat(g,"\n A").concat(f,",").concat(f,",0,1,1,").concat(2*g,",").concat(16,"\n H").concat(32,"M").concat(2*g,",").concat(16,"\n A").concat(f,",").concat(f,",0,1,1,").concat(g,",").concat(16),className:"recharts-legend-icon"});if("rect"===i)return c.createElement("path",{stroke:"none",fill:h,d:"M0,".concat(4,"h").concat(32,"v").concat(24,"h").concat(-32,"z"),className:"recharts-legend-icon"});if(c.isValidElement(b.legendIcon)){var j=V({},b);return delete j.legendIcon,c.cloneElement(b.legendIcon,j)}return c.createElement(Q,{fill:h,cx:16,cy:16,size:32,sizeType:"diameter",type:i})}function Y(a){var b=a.payload,d=a.iconSize,e=a.layout,f=a.formatter,g=a.inactiveColor,h=a.iconType,i=a.labelStyle,j={x:0,y:0,width:32,height:32},k={display:"horizontal"===e?"inline-block":"block",marginRight:10},l={display:"inline-block",verticalAlign:"middle",marginRight:4};return b.map((b,e)=>{var m=b.formatter||f,n=(0,t.clsx)({"recharts-legend-item":!0,["legend-item-".concat(e)]:!0,inactive:b.inactive});if("none"===b.type)return null;var o="object"==typeof i?V({},i):{};o.color=b.inactive?g:o.color||b.color;var p=m?m(b.value,b,e):b.value;return c.createElement("li",T({className:n,style:k,key:"legend-item-".concat(e)},(0,R.adaptEventsOfChild)(a,b,e)),c.createElement(u.Surface,{width:d,height:d,viewBox:j,style:l,"aria-label":null==b.value?"legend icon":"".concat(b.value," legend icon")},c.createElement(X,{data:b,iconType:h,inactiveColor:g})),c.createElement("span",{className:"recharts-legend-item-text",style:o},p))})}var Z=a=>{var b=(0,S.resolveDefaultProps)(a,W),d=b.payload,e=b.layout,f=b.align;return d&&d.length?c.createElement("ul",{className:"recharts-default-legend",style:{padding:0,margin:0,textAlign:"horizontal"===e?f:"left"}},c.createElement(Y,T({},b,{payload:d}))):null},$=a.i(363643),_=a.i(977368),aa=a.i(324993),ab=a.i(738620),ac=a.i(298382),ad=a.i(121402),ae=a.i(795272),af=["contextPayload"];function ag(){return(ag=Object.assign.bind()).apply(null,arguments)}function ah(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}function ai(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function aj(a){for(var b=1;b<arguments.length;b++){var c=null!=arguments[b]?arguments[b]:{};b%2?ai(Object(c),!0).forEach(function(b){var d,e,f;d=a,e=b,f=c[b],(e=function(a){var b=function(a,b){if("object"!=typeof a||!a)return a;var c=a[Symbol.toPrimitive];if(void 0!==c){var d=c.call(a,b||"default");if("object"!=typeof d)return d;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===b?String:Number)(a)}(a,"string");return"symbol"==typeof b?b:b+""}(e))in d?Object.defineProperty(d,e,{value:f,enumerable:!0,configurable:!0,writable:!0}):d[e]=f}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(c)):ai(Object(c)).forEach(function(b){Object.defineProperty(a,b,Object.getOwnPropertyDescriptor(c,b))})}return a}function ak(a){return a.value}function al(a){var b=a.contextPayload,d=function(a,b){if(null==a)return{};var c,d,e=function(a,b){if(null==a)return{};var c={};for(var d in a)if(({}).hasOwnProperty.call(a,d)){if(-1!==b.indexOf(d))continue;c[d]=a[d]}return c}(a,b);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(a);for(d=0;d<f.length;d++)c=f[d],-1===b.indexOf(c)&&({}).propertyIsEnumerable.call(a,c)&&(e[c]=a[c])}return e}(a,af),e=(0,$.getUniqPayload)(b,a.payloadUniqBy,ak),f=aj(aj({},d),{},{payload:e});return c.isValidElement(a.content)?c.cloneElement(a.content,f):"function"==typeof a.content?c.createElement(a.content,f):c.createElement(Z,f)}function am(a){var b=a.align,d=a.layout,e=a.verticalAlign,f=a.itemSorter,g=(0,_.useAppDispatch)();return(0,c.useLayoutEffect)(()=>{g((0,ad.setLegendSettings)({align:b,layout:d,verticalAlign:e,itemSorter:f}))},[g,b,d,e,f]),null}function an(a){var b=a.width,d=a.height,e=(0,_.useAppDispatch)();return(0,c.useLayoutEffect)(()=>{e((0,ad.setLegendSize)({width:b,height:d}))},[e,b,d]),(0,c.useLayoutEffect)(()=>()=>{e((0,ad.setLegendSize)({width:0,height:0}))},[e]),null}var ao={align:"center",iconSize:14,inactiveColor:"#ccc",itemSorter:"value",labelStyle:{},layout:"horizontal",verticalAlign:"bottom"},ap=c.memo(function(a){var b,d,e,f,g,h,i,j=(0,S.resolveDefaultProps)(a,ao),k=(0,_.useAppSelector)(aa.selectLegendPayload),l=(0,s.useLegendPortal)(),m=(0,ac.useMargin)(),n=j.width,o=j.height,p=j.wrapperStyle,q=j.portal,t=function(a){if(Array.isArray(a))return a}(b=(0,ab.useElementOffset)([k]))||function(a,b){var c=null==a?null:"u">typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(null!=c){var d,e,f,g,h=[],i=!0,j=!1;try{f=(c=c.call(a)).next,!1;for(;!(i=(d=f.call(c)).done)&&(h.push(d.value),2!==h.length);i=!0);}catch(a){j=!0,e=a}finally{try{if(!i&&null!=c.return&&(g=c.return(),Object(g)!==g))return}finally{if(j)throw e}}return h}}(b,2)||function(a,b){if(a){if("string"==typeof a)return ah(a,2);var c=({}).toString.call(a).slice(8,-1);return"Object"===c&&a.constructor&&(c=a.constructor.name),"Map"===c||"Set"===c?Array.from(a):"Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c)?ah(a,2):void 0}}(b,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),u=t[0],v=t[1],w=(0,ac.useChartWidth)(),x=(0,ac.useChartHeight)();if(null==w||null==x)return null;var y=w-((null==m?void 0:m.left)||0)-((null==m?void 0:m.right)||0),z=(d=j.layout,"vertical"===d&&null!=o?{height:o}:"horizontal"===d?{width:n||y}:null),A=q?p:aj(aj({position:"absolute",width:(null==z?void 0:z.width)||n||"auto",height:(null==z?void 0:z.height)||o||"auto"},(g=j.layout,h=j.align,i=j.verticalAlign,p&&(void 0!==p.left&&null!==p.left||void 0!==p.right&&null!==p.right)||(e="center"===h&&"vertical"===g?{left:((w||0)-u.width)/2}:"right"===h?{right:m&&m.right||0}:{left:m&&m.left||0}),p&&(void 0!==p.top&&null!==p.top||void 0!==p.bottom&&null!==p.bottom)||(f="middle"===i?{top:((x||0)-u.height)/2}:"bottom"===i?{bottom:m&&m.bottom||0}:{top:m&&m.top||0}),aj(aj({},e),f))),p),B=null!=q?q:l;if(null==B||null==k)return null;var C=c.createElement("div",{className:"recharts-legend-wrapper",style:A,ref:v},c.createElement(am,{layout:j.layout,align:j.align,verticalAlign:j.verticalAlign,itemSorter:j.itemSorter}),!q&&c.createElement(an,{width:u.width,height:u.height}),c.createElement(al,ag({},j,z,{margin:m,chartWidth:w,chartHeight:x,contextPayload:k})));return(0,r.createPortal)(C,B)},ae.propsAreEqual);ap.displayName="Legend";var aq=a.i(575110),ar=a.i(71255),as=a.i(943408);let at=[{key:"trends",label:"系统趋势"},{key:"reliability",label:"可靠性与性能"},{key:"model",label:"模型监控"},{key:"tool",label:"工具监控"},{key:"agent",label:"Agent 监控"},{key:"orchestration",label:"多智能体编排"}],au=[{key:"1d",label:"近 24h"},{key:"1w",label:"近 7 天"},{key:"1m",label:"近 30 天"}],av="#2c7a6b",aw=a=>(a??0).toLocaleString(),ax=a=>`${a}%`,ay=a=>a<1?`$${a.toFixed(4)}`:`$${a.toFixed(2)}`,az=a=>a>=1e3?`${(a/1e3).toFixed(1)}k`:`${a}`;function aA(){let{user:a}=(0,as.useAuth)(),[d,e]=(0,c.useState)("1w"),[f,g]=(0,c.useState)("trends"),[h,i]=(0,c.useState)(null),[j,k]=(0,c.useState)(null),[l,m]=(0,c.useState)(null),[n,o]=(0,c.useState)(null),[p,q]=(0,c.useState)(!1);(0,c.useEffect)(()=>{if(!a)return;let b=!0;return i(null),m(null),k(null),(0,aq.apiFetch)(`/api/fleet/trends?window=${d}&user=${encodeURIComponent(a)}`).then(a=>{if(!a.ok)throw Error(`HTTP ${a.status}`);return a.json()}).then(a=>{b&&i(a)}).catch(a=>{b&&m(a.message||"取数失败")}),()=>{b=!1}},[d,a]),(0,c.useEffect)(()=>{if("trends"===f||j||!a)return;let b=!0;return q(!0),o(null),(0,aq.apiFetch)(`/api/fleet/breakdowns?window=${d}&user=${encodeURIComponent(a)}`).then(a=>{if(!a.ok)throw Error(`HTTP ${a.status}`);return a.json()}).then(a=>{b&&k(a)}).catch(a=>{b&&o(a.message||"取数失败")}).finally(()=>{b&&q(!1)}),()=>{b=!1}},[f,d,j,a]);let r=h?.errorThreshold??5,s={trends:!!h?.buckets.some(a=>a.errorRate>r),reliability:!!j?.reliability.failAgents.some(a=>a.errorRate>=r)};return(0,b.jsxs)("div",{style:{height:"100%",overflowY:"auto",background:"var(--background)"},children:[(0,b.jsxs)("div",{style:{position:"sticky",top:0,zIndex:20,display:"flex",alignItems:"center",gap:12,flexWrap:"wrap",padding:"14px 22px",borderBottom:"1px solid var(--border)",background:"var(--background)"},children:[(0,b.jsx)("span",{style:{fontSize:15,fontWeight:800,color:"var(--foreground)"},children:"仪表盘"}),(0,b.jsx)(aT,{text:"成本按模型单价加权(单位 USD);成功/错误为硬错误口径(工具 state / failures),软错误(judge)未叠加;端到端时延为 wall-time。数据源:真实 Execution 聚合。"}),(0,b.jsx)("span",{style:{flex:1}}),(0,b.jsx)("div",{style:{display:"flex",gap:4,background:"var(--card-bg)",border:"1px solid var(--border)",borderRadius:8,padding:2},children:au.map(a=>(0,b.jsx)("button",{onClick:()=>e(a.key),style:{fontSize:11.5,fontWeight:600,padding:"5px 11px",borderRadius:6,cursor:"pointer",border:"none",background:d===a.key?"var(--primary)":"transparent",color:d===a.key?"var(--primary-foreground, #fff)":"var(--foreground-secondary)"},children:a.label},a.key))})]}),(0,b.jsxs)("div",{style:{padding:22,display:"flex",flexDirection:"column",gap:16},children:[l&&(0,b.jsx)(aV,{msg:l}),!h&&!l&&(0,b.jsx)(aU,{text:"加载中…"}),h&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(aJ,{kpi:h.kpi}),h.pricingMissingModels.length>0&&(0,b.jsxs)("div",{style:{fontSize:11,color:"var(--warning)",marginTop:-6},children:["⚠ 以下模型缺单价,成本按 0 计:",h.pricingMissingModels.join("、"),"(在 custom-models.json 补单价)"]}),(0,b.jsx)("div",{style:{display:"flex",gap:2,borderBottom:"1px solid var(--border)",flexWrap:"wrap"},children:at.map(a=>{let c=f===a.key;return(0,b.jsxs)("button",{onClick:()=>g(a.key),style:{position:"relative",fontSize:12.5,fontWeight:c?700:500,padding:"9px 15px",border:"none",cursor:"pointer",background:"transparent",color:c?"var(--primary)":"var(--foreground-secondary)",borderBottom:c?"2px solid var(--primary)":"2px solid transparent",marginBottom:-1},children:[a.label,s[a.key]&&(0,b.jsx)("span",{title:"trends"===a.key?"告警:部分时段错误率超过 5% 阈值":"告警:存在失败热点 Agent 错误率 ≥ 5% 阈值",style:{position:"absolute",top:6,right:4,width:6,height:6,borderRadius:"50%",background:"var(--error)",cursor:"help"}})]},a.key)})}),"trends"===f&&(0,b.jsx)(aB,{data:h}),"trends"!==f&&(n?(0,b.jsx)(aV,{msg:n}):p||!j?(0,b.jsx)(aU,{text:"加载中…"}):"reliability"===f?(0,b.jsx)(aC,{bd:j}):"model"===f?(0,b.jsx)(aD,{bd:j}):"tool"===f?(0,b.jsx)(aE,{bd:j}):"agent"===f?(0,b.jsx)(aF,{bd:j}):(0,b.jsx)(aG,{bd:j}))]})]})]})}function aB({data:a}){let c=(0,ar.useThemeColors)();return a.buckets.every(a=>0===a.traces)?(0,b.jsx)(aU,{text:"当前窗口内暂无数据"}):(0,b.jsxs)(aR,{children:[(0,b.jsx)(aS,{title:"Trace 流量趋势",hint:"成功 / 失败分层堆叠",children:(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aW,children:(0,b.jsxs)(i,{data:a.buckets,margin:aX,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:c.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:c.fgMuted,tick:aY,interval:"preserveStartEnd"}),(0,b.jsx)(n.YAxis,{width:52,stroke:c.fgMuted,tick:aY,allowDecimals:!1}),(0,b.jsx)(p.Tooltip,{contentStyle:a$}),(0,b.jsx)(ap,{verticalAlign:"top",align:"right",wrapperStyle:aZ}),(0,b.jsx)(k.Bar,{dataKey:"success",name:"成功",stackId:"t",fill:c.success}),(0,b.jsx)(k.Bar,{dataKey:"fail",name:"失败",stackId:"t",fill:c.error,radius:[2,2,0,0]})]})})}),(0,b.jsx)(aS,{title:"错误率趋势",hint:`失败 trace 占比 \xb7 阈值线 ${a.errorThreshold}%`,children:(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aW,children:(0,b.jsxs)(j.LineChart,{data:a.buckets,margin:aX,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:c.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:c.fgMuted,tick:aY,interval:"preserveStartEnd"}),(0,b.jsx)(n.YAxis,{width:52,stroke:c.fgMuted,tick:aY,unit:"%"}),(0,b.jsx)(p.Tooltip,{contentStyle:a$}),(0,b.jsx)(q.ReferenceLine,{y:a.errorThreshold,stroke:c.warning,strokeDasharray:"5 4",label:{value:`${a.errorThreshold}%`,position:"right",fill:c.warning,fontSize:10}}),(0,b.jsx)(l.Line,{type:"monotone",dataKey:"errorRate",name:"错误率",stroke:c.error,strokeWidth:2,dot:{r:2}})]})})}),(0,b.jsx)(aS,{title:"端到端时延趋势",hint:"per-trace P50 / P95 / P99(wall-time,秒)",children:(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aW,children:(0,b.jsxs)(j.LineChart,{data:a.buckets,margin:aX,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:c.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:c.fgMuted,tick:aY,interval:"preserveStartEnd"}),(0,b.jsx)(n.YAxis,{width:52,stroke:c.fgMuted,tick:aY,unit:"s"}),(0,b.jsx)(p.Tooltip,{contentStyle:a$}),(0,b.jsx)(ap,{verticalAlign:"top",align:"right",wrapperStyle:aZ}),(0,b.jsx)(l.Line,{type:"monotone",dataKey:"latencyP50",name:"P50",stroke:c.success,strokeWidth:1.8,dot:!1}),(0,b.jsx)(l.Line,{type:"monotone",dataKey:"latencyP95",name:"P95",stroke:c.warning,strokeWidth:2,dot:!1}),(0,b.jsx)(l.Line,{type:"monotone",dataKey:"latencyP99",name:"P99",stroke:c.error,strokeWidth:2,dot:!1})]})})}),(0,b.jsx)(aS,{title:"Token 消耗趋势",hint:"input / output 堆叠 + 总量线",children:(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aW,children:(0,b.jsxs)(e.ComposedChart,{data:a.buckets,margin:aX,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:c.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:c.fgMuted,tick:aY,interval:"preserveStartEnd"}),(0,b.jsx)(n.YAxis,{width:52,stroke:c.fgMuted,tick:aY,tickFormatter:az}),(0,b.jsx)(p.Tooltip,{contentStyle:a$,formatter:a=>aw(Number(a))}),(0,b.jsx)(ap,{verticalAlign:"top",align:"right",wrapperStyle:aZ}),(0,b.jsx)(k.Bar,{dataKey:"inputTokens",name:"input",stackId:"tok",fill:c.primary}),(0,b.jsx)(k.Bar,{dataKey:"outputTokens",name:"output",stackId:"tok",fill:av,radius:[2,2,0,0]}),(0,b.jsx)(l.Line,{type:"monotone",dataKey:"totalTokens",name:"总量",stroke:c.warning,strokeWidth:2,dot:!1})]})})}),(0,b.jsx)(aS,{title:"成本趋势",hint:`按模型单价加权(${a.currency})`,children:(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aW,children:(0,b.jsxs)(j.LineChart,{data:a.buckets,margin:aX,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:c.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:c.fgMuted,tick:aY,interval:"preserveStartEnd"}),(0,b.jsx)(n.YAxis,{width:52,stroke:c.fgMuted,tick:aY,tickFormatter:a=>`$${a}`}),(0,b.jsx)(p.Tooltip,{contentStyle:a$,formatter:a=>ay(Number(a))}),(0,b.jsx)(l.Line,{type:"monotone",dataKey:"cost",name:"成本",stroke:c.warning,strokeWidth:2.2,dot:{r:2}})]})})}),(0,b.jsx)(aS,{title:"单 trace 平均 Token / 平均成本",hint:"效率指标(与流量解耦)",children:(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aW,children:(0,b.jsxs)(e.ComposedChart,{data:a.buckets,margin:aX,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:c.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:c.fgMuted,tick:aY,interval:"preserveStartEnd"}),(0,b.jsx)(n.YAxis,{yAxisId:"tok",width:52,stroke:c.fgMuted,tick:aY,tickFormatter:az}),(0,b.jsx)(n.YAxis,{yAxisId:"cost",orientation:"right",width:52,stroke:c.fgMuted,tick:aY,tickFormatter:a=>`$${a}`}),(0,b.jsx)(p.Tooltip,{contentStyle:a$}),(0,b.jsx)(ap,{verticalAlign:"top",align:"right",wrapperStyle:aZ}),(0,b.jsx)(l.Line,{yAxisId:"tok",type:"monotone",dataKey:"avgTokens",name:"平均 Token",stroke:c.primary,strokeWidth:2,dot:!1}),(0,b.jsx)(l.Line,{yAxisId:"cost",type:"monotone",dataKey:"avgCost",name:`平均成本(${a.currency})`,stroke:c.warning,strokeWidth:2,strokeDasharray:"5 4",dot:!1})]})})})]})}function aC({bd:a}){let c=a.reliability;return(0,b.jsxs)(aR,{children:[(0,b.jsx)(aS,{title:"失败热点 · Agent",hint:"错误率 TOP10(失败/总调用)",children:(0,b.jsx)(aN,{data:c.failAgents.map(a=>({name:a.name,value:a.errorRate})),color:"var(--error)",unit:"%"})}),(0,b.jsx)(aS,{title:"端到端时延分布",hint:"per-trace 对数桶(秒)",children:(0,b.jsx)(aP,{data:c.latHist,color:"var(--warning)"})}),(0,b.jsx)(aS,{title:"慢 Trace 排行",hint:"按端到端耗时降序 TOP20(点击进链路)",wide:!0,children:(0,b.jsx)(aQ,{rows:c.slowTraces})})]})}function aD({bd:a}){let c=a.model;return(0,b.jsxs)(aR,{children:[(0,b.jsx)(aS,{title:"模型调用次数排行",hint:"Σ 模型调用次数 TOP10",children:(0,b.jsx)(aN,{data:c.callRank.map(a=>({name:a.model,value:a.calls})),color:"var(--primary)"})}),(0,b.jsx)(aS,{title:"Token 构成排行",hint:"input / output 堆叠 · 柱长=总消耗 TOP10",children:(0,b.jsx)(aO,{data:c.tokenComp})})]})}function aE({bd:a}){let c=(0,ar.useThemeColors)(),e=a.tool.trend;return(0,b.jsxs)(aR,{children:[(0,b.jsx)(aS,{title:"工具调用量趋势",hint:"Σ tool_calls 条数 / 桶",children:(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aW,children:(0,b.jsxs)(i,{data:e,margin:aX,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:c.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:c.fgMuted,tick:aY,interval:"preserveStartEnd"}),(0,b.jsx)(n.YAxis,{width:52,stroke:c.fgMuted,tick:aY,allowDecimals:!1}),(0,b.jsx)(p.Tooltip,{contentStyle:a$}),(0,b.jsx)(k.Bar,{dataKey:"calls",name:"工具调用",fill:c.primary,radius:[2,2,0,0]})]})})}),(0,b.jsx)(aS,{title:"工具调用成功率趋势",hint:"1 − 工具错误/总调用(%)",children:(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aW,children:(0,b.jsxs)(j.LineChart,{data:e,margin:aX,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:c.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:c.fgMuted,tick:aY,interval:"preserveStartEnd"}),(0,b.jsx)(n.YAxis,{width:52,stroke:c.fgMuted,tick:aY,unit:"%",domain:[90,100]}),(0,b.jsx)(p.Tooltip,{contentStyle:a$}),(0,b.jsx)(l.Line,{type:"monotone",dataKey:"successRate",name:"成功率",stroke:c.success,strokeWidth:2,dot:{r:2}})]})})})]})}function aF({bd:a}){let c=(0,ar.useThemeColors)(),e=a.agent;return(0,b.jsxs)(aR,{children:[(0,b.jsx)(aS,{title:"平均执行工具数 / 模型数趋势",hint:"每 trace 人均(分母=当桶 trace 数)",children:(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aW,children:(0,b.jsxs)(j.LineChart,{data:e.trend,margin:aX,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:c.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:c.fgMuted,tick:aY,interval:"preserveStartEnd"}),(0,b.jsx)(n.YAxis,{width:52,stroke:c.fgMuted,tick:aY}),(0,b.jsx)(p.Tooltip,{contentStyle:a$}),(0,b.jsx)(ap,{verticalAlign:"top",align:"right",wrapperStyle:aZ}),(0,b.jsx)(l.Line,{type:"monotone",dataKey:"avgTools",name:"平均工具数",stroke:c.primary,strokeWidth:2,dot:!1}),(0,b.jsx)(l.Line,{type:"monotone",dataKey:"avgModels",name:"平均模型调用数",stroke:av,strokeWidth:2,dot:!1})]})})}),(0,b.jsx)(aS,{title:"Agent Token 消耗(self)",hint:"按 Agent 自身 token TOP10",children:(0,b.jsx)(aN,{data:e.tokenRank.map(a=>({name:a.name,value:a.tokens})),color:"var(--warning)",fmt:az})}),(0,b.jsx)(aS,{title:"Agent 调用排行",hint:"distinct trace 出现数 TOP10",children:(0,b.jsx)(aN,{data:e.callRank.map(a=>({name:a.name,value:a.traces})),color:"var(--primary)"})}),(0,b.jsx)(aS,{title:"Skill 调用排行",hint:"调用次数 TOP10(成功率色深待 skill-call state)",children:e.skillRank.length?(0,b.jsx)(aN,{data:e.skillRank.map(a=>({name:a.skill,value:a.calls})),color:av}):(0,b.jsx)(aU,{text:"窗口内无 skill 调用"})})]})}function aG({bd:a}){let c=a.orchestration.collab;return(0,b.jsxs)(aR,{children:[(0,b.jsx)(aS,{title:"编排复杂度分布",hint:"每 trace 的 distinct Agent 数分桶",children:(0,b.jsx)(aP,{data:a.orchestration.complexityHist,color:"var(--primary)"})}),(0,b.jsx)(aS,{title:"全局协作网络",info:"边来自 buildAgentCallTree 还原的 parent→child 派发关系(谁 spawn 了谁),跨当前窗口内所有 trace 聚合,边权=派发次数、节点大小=中心度。非 send_message 点对点消息(该口径四框架均无数据源),但同样能识别通信枢纽 Agent。",hint:`节点大小=中心度 \xb7 边=派发(from→to) \xb7 ${c.traceCount} 条多 Agent trace${c.truncated?"(已截断)":""}`,wide:!0,children:c.nodes.length?(0,b.jsx)(aH,{data:c}):(0,b.jsx)(aU,{text:"窗口内无多 Agent 协作数据"})})]})}function aH({data:d}){let e=(0,ar.useThemeColors)(),f=c.default.useRef(null);return c.default.useEffect(()=>{let b=f.current;if(!b)return;let c=null,g=!1,h=null;return a.A(104264).then(a=>{if(g||!b)return;let f=Math.max(1,...d.nodes.map(a=>a.degree)),i=Math.max(1,...d.edges.map(a=>a.weight));(c=a.init(b)).setOption({tooltip:{confine:!0,backgroundColor:"var(--card-bg)",borderColor:"var(--border)",textStyle:{color:e.fg,fontSize:12},formatter:a=>"edge"===a.dataType?`${a.data.source} → ${a.data.target}<br/>派发 <b>${a.data.value}</b> 次`:`${a.name}<br/>中心度 <b>${a.value}</b>`},series:[{type:"graph",layout:"force",roam:!0,draggable:!0,data:d.nodes.map(a=>{let b;return{name:a.id,value:a.degree,symbolSize:16+40*(a.degree/f),itemStyle:{color:(b=a.degree/f)>.8?"#1D2B45":b>.5?"#2C7A6B":b>.3?"#C8553D":b>.15?"#B5811F":"#76705f"}}}),links:d.edges.map(a=>({source:a.from,target:a.to,value:a.weight,lineStyle:{width:1+3.5*(a.weight/i)}})),force:{repulsion:300,edgeLength:[60,140],gravity:.12},label:{show:!0,position:"right",color:e.fg,fontSize:10,fontWeight:500},lineStyle:{color:e.fgMuted,opacity:.5,curveness:.18},emphasis:{focus:"adjacency",label:{fontWeight:700},lineStyle:{color:"#C8553D",opacity:.95,width:2.5}}}]}),h=()=>c?.resize(),window.addEventListener("resize",h)}),()=>{g=!0,h&&window.removeEventListener("resize",h),c&&c.dispose()}},[d,e]),(0,b.jsx)("div",{ref:f,style:{width:"100%",height:440}})}let aI=[{label:"总 Trace",key:"traces",fmt:aw,goodWhenUp:null,tone:"count",group:"系统"},{label:"成功率",key:"successRate",fmt:ax,goodWhenUp:!0,tone:"good",group:"系统"},{label:"P95 端到端时延",key:"p95Latency",fmt:a=>`${a}s`,goodWhenUp:!1,tone:"latency",group:"系统"},{label:"活跃 Agent",key:"activeAgents",fmt:aw,goodWhenUp:null,tone:"count",group:"系统"},{label:"活跃模型",key:"activeModels",fmt:aw,goodWhenUp:null,tone:"count",group:"系统"},{label:"工具调用次数",key:"toolCalls",fmt:aw,goodWhenUp:null,tone:"count",group:"工具"},{label:"工具调用错误率",key:"toolErrorRate",fmt:ax,goodWhenUp:!1,tone:"error",group:"工具"},{label:"模型 Tokens",key:"totalTokens",fmt:aw,goodWhenUp:null,tone:"count",group:"模型"},{label:"模型调用次数",key:"llmCalls",fmt:aw,goodWhenUp:null,tone:"count",group:"模型"},{label:"总成本",key:"totalCost",fmt:ay,goodWhenUp:!1,tone:"latency",group:"模型"}];function aJ({kpi:a}){return(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(150px, 1fr))",gap:10},children:aI.map(c=>(0,b.jsx)(aL,{def:c,cur:a.current[c.key],prev:a.previous[c.key]},c.key))})}let aK={count:"var(--foreground)",good:"var(--success)",latency:"var(--warning)",error:"var(--error)"};function aL({def:a,cur:c,prev:d}){return(0,b.jsxs)("div",{style:{background:"var(--card-bg)",border:"1px solid var(--card-border)",borderRadius:10,padding:"12px 14px",display:"flex",flexDirection:"column",gap:6},children:[(0,b.jsxs)("span",{style:{fontSize:11,color:"var(--foreground-muted)",display:"flex",alignItems:"center",gap:6},children:[(0,b.jsx)("span",{style:{fontSize:9,opacity:.7},children:a.group}),a.label]}),(0,b.jsx)("span",{style:{fontSize:22,fontWeight:800,color:aK[a.tone],fontFamily:"var(--font-mono, monospace)",lineHeight:1.1},children:a.fmt(c??0)}),(0,b.jsx)(aM,{cur:c,prev:d,goodWhenUp:a.goodWhenUp})]})}function aM({cur:a,prev:c,goodWhenUp:d}){if(null==c||0===c)return(0,b.jsx)("span",{style:{fontSize:10.5,color:"var(--foreground-muted)"},children:"环比 —"});let e=Math.round((a-c)/c*1e3)/10;if(.05>Math.abs(e))return(0,b.jsx)("span",{style:{fontSize:10.5,color:"var(--foreground-muted)"},children:"环比 ±0%"});let f=e>0;return(0,b.jsxs)("span",{style:{fontSize:10.5,color:null===d?"var(--foreground-muted)":d===f?"var(--success)":"var(--error)",display:"inline-flex",alignItems:"center",gap:3},children:[f?"▲":"▼"," ",Math.abs(e),"%",(0,b.jsx)("span",{style:{color:"var(--foreground-muted)",fontSize:9.5},children:"环比"})]})}function aN({data:a,color:c,unit:e,fmt:f}){let g=(0,ar.useThemeColors)();return a.length?(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aW,children:(0,b.jsxs)(i,{layout:"vertical",data:a,margin:{top:4,right:18,bottom:4,left:8},children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:g.border,horizontal:!1}),(0,b.jsx)(m.XAxis,{type:"number",stroke:g.fgMuted,tick:aY,unit:e,tickFormatter:f}),(0,b.jsx)(n.YAxis,{type:"category",dataKey:"name",stroke:g.fgMuted,tick:{fontSize:10},width:118}),(0,b.jsx)(p.Tooltip,{contentStyle:a$,formatter:a=>f?f(Number(a)):String(a)}),(0,b.jsx)(k.Bar,{dataKey:"value",fill:c,radius:[0,3,3,0]})]})}):(0,b.jsx)(aU,{text:"暂无数据"})}function aO({data:a}){let c=(0,ar.useThemeColors)();return a.length?(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aW,children:(0,b.jsxs)(i,{layout:"vertical",data:a,margin:{top:4,right:18,bottom:4,left:8},children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:c.border,horizontal:!1}),(0,b.jsx)(m.XAxis,{type:"number",stroke:c.fgMuted,tick:aY,tickFormatter:az}),(0,b.jsx)(n.YAxis,{type:"category",dataKey:"model",stroke:c.fgMuted,tick:{fontSize:10},width:118}),(0,b.jsx)(p.Tooltip,{contentStyle:a$,formatter:a=>aw(Number(a))}),(0,b.jsx)(ap,{verticalAlign:"top",align:"right",wrapperStyle:aZ}),(0,b.jsx)(k.Bar,{dataKey:"input",name:"input",stackId:"s",fill:c.primary}),(0,b.jsx)(k.Bar,{dataKey:"output",name:"output",stackId:"s",fill:av,radius:[0,3,3,0]})]})}):(0,b.jsx)(aU,{text:"暂无数据"})}function aP({data:a,color:c}){let e=(0,ar.useThemeColors)();return(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aW,children:(0,b.jsxs)(i,{data:a,margin:aX,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:e.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:e.fgMuted,tick:aY}),(0,b.jsx)(n.YAxis,{width:52,stroke:e.fgMuted,tick:aY,allowDecimals:!1}),(0,b.jsx)(p.Tooltip,{contentStyle:a$}),(0,b.jsx)(k.Bar,{dataKey:"count",name:"trace 数",fill:c,radius:[2,2,0,0]})]})})}function aQ({rows:a}){if(!a.length)return(0,b.jsx)(aU,{text:"暂无数据"});let c={textAlign:"left",padding:"7px 10px",color:"var(--foreground-muted)",fontWeight:600,borderBottom:"1px solid var(--border)",whiteSpace:"nowrap"},d={padding:"7px 10px",borderBottom:"1px solid var(--border)",color:"var(--foreground-secondary)"};return(0,b.jsx)("div",{style:{overflowX:"auto"},children:(0,b.jsxs)("table",{style:{width:"100%",borderCollapse:"collapse",fontSize:11.5},children:[(0,b.jsx)("thead",{children:(0,b.jsxs)("tr",{children:[(0,b.jsx)("th",{style:c,children:"Trace"}),(0,b.jsx)("th",{style:c,children:"Agent"}),(0,b.jsx)("th",{style:c,children:"时延(s)"}),(0,b.jsx)("th",{style:c,children:"Token"}),(0,b.jsx)("th",{style:c,children:"Agent 数"}),(0,b.jsx)("th",{style:c,children:"状态"})]})}),(0,b.jsx)("tbody",{children:a.map((a,c)=>(0,b.jsxs)("tr",{children:[(0,b.jsx)("td",{style:d,children:(0,b.jsxs)("a",{href:(0,aq.getApiUrl)(`/trace?taskId=${encodeURIComponent(a.taskId)}`),style:{color:"var(--primary)",textDecoration:"none",fontFamily:"var(--font-mono, monospace)"},children:[a.taskId.slice(0,12),"…"]})}),(0,b.jsx)("td",{style:d,children:a.agent}),(0,b.jsx)("td",{style:{...d,fontFamily:"var(--font-mono, monospace)",color:"var(--warning)"},children:a.latency}),(0,b.jsx)("td",{style:{...d,fontFamily:"var(--font-mono, monospace)"},children:aw(a.tokens)}),(0,b.jsx)("td",{style:d,children:a.agents}),(0,b.jsx)("td",{style:{...d,color:a.ok?"var(--success)":"var(--error)"},children:a.ok?"成功":"失败"})]},c))})]})})}function aR({children:a}){return(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(430px, 1fr))",gap:14},children:a})}function aS({title:a,hint:c,info:d,wide:e,children:f}){return(0,b.jsxs)("section",{style:{background:"var(--card-bg)",border:"1px solid var(--card-border)",borderRadius:12,gridColumn:e?"1 / -1":void 0,minWidth:0,overflow:"hidden"},children:[(0,b.jsxs)("div",{style:{padding:"11px 16px",borderBottom:"1px solid var(--border)",display:"flex",alignItems:"center",gap:8,flexWrap:"wrap"},children:[(0,b.jsx)("span",{style:{fontSize:13,fontWeight:800,color:"var(--foreground)"},children:a}),d&&(0,b.jsx)(aT,{text:d}),c&&(0,b.jsxs)("span",{style:{fontSize:10.5,color:"var(--foreground-muted)"},children:["· ",c]})]}),(0,b.jsx)("div",{style:{padding:"12px 12px 6px"},children:f})]})}function aT({text:a}){return(0,b.jsx)("span",{title:a,style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:14,height:14,borderRadius:"50%",border:"1px solid var(--border-dark)",color:"var(--foreground-muted)",fontSize:9.5,fontWeight:700,fontStyle:"normal",cursor:"help",flexShrink:0,lineHeight:1},children:"i"})}function aU({text:a}){return(0,b.jsx)("div",{style:{padding:50,textAlign:"center",color:"var(--foreground-muted)",fontSize:13,background:"var(--card-bg)",border:"1px solid var(--card-border)",borderRadius:12},children:a})}function aV({msg:a}){return(0,b.jsxs)("div",{style:{padding:16,borderRadius:10,background:"var(--error-subtle)",border:"1px solid var(--error-subtle-border)",color:"var(--error)",fontSize:13},children:["取数失败:",a]})}let aW=260,aX={top:8,right:16,bottom:4,left:0},aY={fontSize:10},aZ={fontSize:11},a$={background:"var(--card-bg)",border:"1px solid var(--border-dark)",borderRadius:9,fontSize:11,boxShadow:"0 6px 24px rgba(20,22,30,.12)"};a.s(["default",()=>aA],659764)}];
|
|
1
|
+
module.exports=[659764,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(48662),e=a.i(940092),f=a.i(600554),g=a.i(931760),h=["axis","item"],i=(0,c.forwardRef)((a,b)=>c.createElement(g.CartesianChart,{chartName:"BarChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:h,tooltipPayloadSearcher:f.arrayTooltipSearcher,categoricalChartProps:a,ref:b})),j=a.i(457431),k=a.i(923665),l=a.i(677924),m=a.i(758042),n=a.i(994222),o=a.i(54419),p=a.i(659854),q=a.i(778900),r=a.i(935112),s=a.i(320353),t=a.i(298621),u=a.i(603190);a.i(463008);var v=a.i(379996),w=a.i(112882),x=a.i(630714);(0,x.sqrt)(3);let y={draw(a,b){let c=(0,x.sqrt)(b/x.pi);a.moveTo(c,0),a.arc(0,0,c,0,x.tau)}},z=(0,x.sqrt)(1/3),A=2*z,B=(0,x.sin)(x.pi/10)/(0,x.sin)(7*x.pi/10),C=(0,x.sin)(x.tau/10)*B,D=-(0,x.cos)(x.tau/10)*B,E=(0,x.sqrt)(3);(0,x.sqrt)(3);let F=(0,x.sqrt)(3)/2,G=1/(0,x.sqrt)(12),H=(G/2+1)*3;var I=a.i(768932),J=a.i(107038),K=["type","size","sizeType"];function L(){return(L=Object.assign.bind()).apply(null,arguments)}function M(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function N(a){for(var b=1;b<arguments.length;b++){var c=null!=arguments[b]?arguments[b]:{};b%2?M(Object(c),!0).forEach(function(b){var d,e,f;d=a,e=b,f=c[b],(e=function(a){var b=function(a,b){if("object"!=typeof a||!a)return a;var c=a[Symbol.toPrimitive];if(void 0!==c){var d=c.call(a,b||"default");if("object"!=typeof d)return d;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===b?String:Number)(a)}(a,"string");return"symbol"==typeof b?b:b+""}(e))in d?Object.defineProperty(d,e,{value:f,enumerable:!0,configurable:!0,writable:!0}):d[e]=f}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(c)):M(Object(c)).forEach(function(b){Object.defineProperty(a,b,Object.getOwnPropertyDescriptor(c,b))})}return a}var O={symbolCircle:y,symbolCross:{draw(a,b){let c=(0,x.sqrt)(b/5)/2;a.moveTo(-3*c,-c),a.lineTo(-c,-c),a.lineTo(-c,-3*c),a.lineTo(c,-3*c),a.lineTo(c,-c),a.lineTo(3*c,-c),a.lineTo(3*c,c),a.lineTo(c,c),a.lineTo(c,3*c),a.lineTo(-c,3*c),a.lineTo(-c,c),a.lineTo(-3*c,c),a.closePath()}},symbolDiamond:{draw(a,b){let c=(0,x.sqrt)(b/A),d=c*z;a.moveTo(0,-c),a.lineTo(d,0),a.lineTo(0,c),a.lineTo(-d,0),a.closePath()}},symbolSquare:{draw(a,b){let c=(0,x.sqrt)(b),d=-c/2;a.rect(d,d,c,c)}},symbolStar:{draw(a,b){let c=(0,x.sqrt)(.8908130915292852*b),d=C*c,e=D*c;a.moveTo(0,-c),a.lineTo(d,e);for(let b=1;b<5;++b){let f=x.tau*b/5,g=(0,x.cos)(f),h=(0,x.sin)(f);a.lineTo(h*c,-g*c),a.lineTo(g*d-h*e,h*d+g*e)}a.closePath()}},symbolTriangle:{draw(a,b){let c=-(0,x.sqrt)(b/(3*E));a.moveTo(0,2*c),a.lineTo(-E*c,-c),a.lineTo(E*c,-c),a.closePath()}},symbolWye:{draw(a,b){let c=(0,x.sqrt)(b/H),d=c/2,e=c*G,f=c*G+c,g=-d;a.moveTo(d,e),a.lineTo(d,f),a.lineTo(g,f),a.lineTo(-.5*d-F*e,F*d+-.5*e),a.lineTo(-.5*d-F*f,F*d+-.5*f),a.lineTo(-.5*g-F*f,F*g+-.5*f),a.lineTo(-.5*d+F*e,-.5*e-F*d),a.lineTo(-.5*d+F*f,-.5*f-F*d),a.lineTo(-.5*g+F*f,-.5*f-F*g),a.closePath()}}},P=Math.PI/180,Q=a=>{var b=a.type,d=void 0===b?"circle":b,e=a.size,f=void 0===e?64:e,g=a.sizeType,h=void 0===g?"area":g,i=N(N({},function(a,b){if(null==a)return{};var c,d,e=function(a,b){if(null==a)return{};var c={};for(var d in a)if(({}).hasOwnProperty.call(a,d)){if(-1!==b.indexOf(d))continue;c[d]=a[d]}return c}(a,b);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(a);for(d=0;d<f.length;d++)c=f[d],-1===b.indexOf(c)&&({}).propertyIsEnumerable.call(a,c)&&(e[c]=a[c])}return e}(a,K)),{},{type:d,size:f,sizeType:h}),j="circle";"string"==typeof d&&(j=d);var k=i.className,l=i.cx,m=i.cy,n=(0,J.svgPropertiesAndEvents)(i);return(0,I.isNumber)(l)&&(0,I.isNumber)(m)&&(0,I.isNumber)(f)?c.createElement("path",L({},n,{className:(0,t.clsx)("recharts-symbols",k),transform:"translate(".concat(l,", ").concat(m,")"),d:(()=>{var a,b=(a=j,O["symbol".concat((0,I.upperFirst)(a))]||y),c=(function(a,b){let c=null,d=(0,w.withPath)(e);function e(){let e;if(c||(c=e=d()),a.apply(this,arguments).draw(c,+b.apply(this,arguments)),e)return c=null,e+""||null}return a="function"==typeof a?a:(0,v.default)(a||y),b="function"==typeof b?b:(0,v.default)(void 0===b?64:+b),e.type=function(b){return arguments.length?(a="function"==typeof b?b:(0,v.default)(b),e):a},e.size=function(a){return arguments.length?(b="function"==typeof a?a:(0,v.default)(+a),e):b},e.context=function(a){return arguments.length?(c=null==a?null:a,e):c},e})().type(b).size(((a,b,c)=>{if("area"===b)return a;switch(c){case"cross":return 5*a*a/9;case"diamond":return .5*a*a/Math.sqrt(3);case"square":return a*a;case"star":var d=18*P;return 1.25*a*a*(Math.tan(d)-Math.tan(2*d)*Math.tan(d)**2);case"triangle":return Math.sqrt(3)*a*a/4;case"wye":return(21-10*Math.sqrt(3))*a*a/8;default:return Math.PI*a*a/4}})(f,h,j))();if(null!==c)return c})()})):null};Q.registerSymbol=(a,b)=>{O["symbol".concat((0,I.upperFirst)(a))]=b};var R=a.i(952517),S=a.i(787293);function T(){return(T=Object.assign.bind()).apply(null,arguments)}function U(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function V(a){for(var b=1;b<arguments.length;b++){var c=null!=arguments[b]?arguments[b]:{};b%2?U(Object(c),!0).forEach(function(b){var d,e,f;d=a,e=b,f=c[b],(e=function(a){var b=function(a,b){if("object"!=typeof a||!a)return a;var c=a[Symbol.toPrimitive];if(void 0!==c){var d=c.call(a,b||"default");if("object"!=typeof d)return d;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===b?String:Number)(a)}(a,"string");return"symbol"==typeof b?b:b+""}(e))in d?Object.defineProperty(d,e,{value:f,enumerable:!0,configurable:!0,writable:!0}):d[e]=f}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(c)):U(Object(c)).forEach(function(b){Object.defineProperty(a,b,Object.getOwnPropertyDescriptor(c,b))})}return a}var W={align:"center",iconSize:14,inactiveColor:"#ccc",layout:"horizontal",verticalAlign:"middle",labelStyle:{}};function X(a){var b=a.data,d=a.iconType,e=a.inactiveColor,f=32/6,g=32/3,h=b.inactive?e:b.color,i=null!=d?d:b.type;if("none"===i)return null;if("plainline"===i)return c.createElement("line",{strokeWidth:4,fill:"none",stroke:h,strokeDasharray:function(a){if("object"==typeof a&&null!==a&&"strokeDasharray"in a)return String(a.strokeDasharray)}(b.payload),x1:0,y1:16,x2:32,y2:16,className:"recharts-legend-icon"});if("line"===i)return c.createElement("path",{strokeWidth:4,fill:"none",stroke:h,d:"M0,".concat(16,"h").concat(g,"\n A").concat(f,",").concat(f,",0,1,1,").concat(2*g,",").concat(16,"\n H").concat(32,"M").concat(2*g,",").concat(16,"\n A").concat(f,",").concat(f,",0,1,1,").concat(g,",").concat(16),className:"recharts-legend-icon"});if("rect"===i)return c.createElement("path",{stroke:"none",fill:h,d:"M0,".concat(4,"h").concat(32,"v").concat(24,"h").concat(-32,"z"),className:"recharts-legend-icon"});if(c.isValidElement(b.legendIcon)){var j=V({},b);return delete j.legendIcon,c.cloneElement(b.legendIcon,j)}return c.createElement(Q,{fill:h,cx:16,cy:16,size:32,sizeType:"diameter",type:i})}function Y(a){var b=a.payload,d=a.iconSize,e=a.layout,f=a.formatter,g=a.inactiveColor,h=a.iconType,i=a.labelStyle,j={x:0,y:0,width:32,height:32},k={display:"horizontal"===e?"inline-block":"block",marginRight:10},l={display:"inline-block",verticalAlign:"middle",marginRight:4};return b.map((b,e)=>{var m=b.formatter||f,n=(0,t.clsx)({"recharts-legend-item":!0,["legend-item-".concat(e)]:!0,inactive:b.inactive});if("none"===b.type)return null;var o="object"==typeof i?V({},i):{};o.color=b.inactive?g:o.color||b.color;var p=m?m(b.value,b,e):b.value;return c.createElement("li",T({className:n,style:k,key:"legend-item-".concat(e)},(0,R.adaptEventsOfChild)(a,b,e)),c.createElement(u.Surface,{width:d,height:d,viewBox:j,style:l,"aria-label":null==b.value?"legend icon":"".concat(b.value," legend icon")},c.createElement(X,{data:b,iconType:h,inactiveColor:g})),c.createElement("span",{className:"recharts-legend-item-text",style:o},p))})}var Z=a=>{var b=(0,S.resolveDefaultProps)(a,W),d=b.payload,e=b.layout,f=b.align;return d&&d.length?c.createElement("ul",{className:"recharts-default-legend",style:{padding:0,margin:0,textAlign:"horizontal"===e?f:"left"}},c.createElement(Y,T({},b,{payload:d}))):null},$=a.i(363643),_=a.i(977368),aa=a.i(324993),ab=a.i(738620),ac=a.i(298382),ad=a.i(121402),ae=a.i(795272),af=["contextPayload"];function ag(){return(ag=Object.assign.bind()).apply(null,arguments)}function ah(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}function ai(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function aj(a){for(var b=1;b<arguments.length;b++){var c=null!=arguments[b]?arguments[b]:{};b%2?ai(Object(c),!0).forEach(function(b){var d,e,f;d=a,e=b,f=c[b],(e=function(a){var b=function(a,b){if("object"!=typeof a||!a)return a;var c=a[Symbol.toPrimitive];if(void 0!==c){var d=c.call(a,b||"default");if("object"!=typeof d)return d;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===b?String:Number)(a)}(a,"string");return"symbol"==typeof b?b:b+""}(e))in d?Object.defineProperty(d,e,{value:f,enumerable:!0,configurable:!0,writable:!0}):d[e]=f}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(c)):ai(Object(c)).forEach(function(b){Object.defineProperty(a,b,Object.getOwnPropertyDescriptor(c,b))})}return a}function ak(a){return a.value}function al(a){var b=a.contextPayload,d=function(a,b){if(null==a)return{};var c,d,e=function(a,b){if(null==a)return{};var c={};for(var d in a)if(({}).hasOwnProperty.call(a,d)){if(-1!==b.indexOf(d))continue;c[d]=a[d]}return c}(a,b);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(a);for(d=0;d<f.length;d++)c=f[d],-1===b.indexOf(c)&&({}).propertyIsEnumerable.call(a,c)&&(e[c]=a[c])}return e}(a,af),e=(0,$.getUniqPayload)(b,a.payloadUniqBy,ak),f=aj(aj({},d),{},{payload:e});return c.isValidElement(a.content)?c.cloneElement(a.content,f):"function"==typeof a.content?c.createElement(a.content,f):c.createElement(Z,f)}function am(a){var b=a.align,d=a.layout,e=a.verticalAlign,f=a.itemSorter,g=(0,_.useAppDispatch)();return(0,c.useLayoutEffect)(()=>{g((0,ad.setLegendSettings)({align:b,layout:d,verticalAlign:e,itemSorter:f}))},[g,b,d,e,f]),null}function an(a){var b=a.width,d=a.height,e=(0,_.useAppDispatch)();return(0,c.useLayoutEffect)(()=>{e((0,ad.setLegendSize)({width:b,height:d}))},[e,b,d]),(0,c.useLayoutEffect)(()=>()=>{e((0,ad.setLegendSize)({width:0,height:0}))},[e]),null}var ao={align:"center",iconSize:14,inactiveColor:"#ccc",itemSorter:"value",labelStyle:{},layout:"horizontal",verticalAlign:"bottom"},ap=c.memo(function(a){var b,d,e,f,g,h,i,j=(0,S.resolveDefaultProps)(a,ao),k=(0,_.useAppSelector)(aa.selectLegendPayload),l=(0,s.useLegendPortal)(),m=(0,ac.useMargin)(),n=j.width,o=j.height,p=j.wrapperStyle,q=j.portal,t=function(a){if(Array.isArray(a))return a}(b=(0,ab.useElementOffset)([k]))||function(a,b){var c=null==a?null:"u">typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(null!=c){var d,e,f,g,h=[],i=!0,j=!1;try{f=(c=c.call(a)).next,!1;for(;!(i=(d=f.call(c)).done)&&(h.push(d.value),2!==h.length);i=!0);}catch(a){j=!0,e=a}finally{try{if(!i&&null!=c.return&&(g=c.return(),Object(g)!==g))return}finally{if(j)throw e}}return h}}(b,2)||function(a,b){if(a){if("string"==typeof a)return ah(a,2);var c=({}).toString.call(a).slice(8,-1);return"Object"===c&&a.constructor&&(c=a.constructor.name),"Map"===c||"Set"===c?Array.from(a):"Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c)?ah(a,2):void 0}}(b,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),u=t[0],v=t[1],w=(0,ac.useChartWidth)(),x=(0,ac.useChartHeight)();if(null==w||null==x)return null;var y=w-((null==m?void 0:m.left)||0)-((null==m?void 0:m.right)||0),z=(d=j.layout,"vertical"===d&&null!=o?{height:o}:"horizontal"===d?{width:n||y}:null),A=q?p:aj(aj({position:"absolute",width:(null==z?void 0:z.width)||n||"auto",height:(null==z?void 0:z.height)||o||"auto"},(g=j.layout,h=j.align,i=j.verticalAlign,p&&(void 0!==p.left&&null!==p.left||void 0!==p.right&&null!==p.right)||(e="center"===h&&"vertical"===g?{left:((w||0)-u.width)/2}:"right"===h?{right:m&&m.right||0}:{left:m&&m.left||0}),p&&(void 0!==p.top&&null!==p.top||void 0!==p.bottom&&null!==p.bottom)||(f="middle"===i?{top:((x||0)-u.height)/2}:"bottom"===i?{bottom:m&&m.bottom||0}:{top:m&&m.top||0}),aj(aj({},e),f))),p),B=null!=q?q:l;if(null==B||null==k)return null;var C=c.createElement("div",{className:"recharts-legend-wrapper",style:A,ref:v},c.createElement(am,{layout:j.layout,align:j.align,verticalAlign:j.verticalAlign,itemSorter:j.itemSorter}),!q&&c.createElement(an,{width:u.width,height:u.height}),c.createElement(al,ag({},j,z,{margin:m,chartWidth:w,chartHeight:x,contextPayload:k})));return(0,r.createPortal)(C,B)},ae.propsAreEqual);ap.displayName="Legend";var aq=a.i(575110),ar=a.i(71255),as=a.i(943408);let at=[{key:"trends",label:"系统趋势"},{key:"reliability",label:"可靠性与性能"},{key:"model",label:"模型监控"},{key:"tool",label:"工具监控"},{key:"agent",label:"Agent 监控"},{key:"orchestration",label:"多智能体编排"}],au=[{key:"1d",label:"近 24h"},{key:"1w",label:"近 7 天"},{key:"1m",label:"近 30 天"}],av="#2c7a6b",aw=a=>(a??0).toLocaleString(),ax=a=>`${a}%`,ay=a=>a<1?`$${a.toFixed(4)}`:`$${a.toFixed(2)}`,az=a=>a>=1e3?`${(a/1e3).toFixed(1)}k`:`${a}`;function aA(){let{user:a}=(0,as.useAuth)(),[d,e]=(0,c.useState)("1w"),[f,g]=(0,c.useState)("trends"),[h,i]=(0,c.useState)(null),[j,k]=(0,c.useState)(null),[l,m]=(0,c.useState)(null),[n,o]=(0,c.useState)(null),[p,q]=(0,c.useState)(!1),[r,s]=(0,c.useState)(null);(0,c.useEffect)(()=>{if(!a)return;let b=!0;return i(null),m(null),k(null),(0,aq.apiFetch)(`/api/fleet/trends?window=${d}&user=${encodeURIComponent(a)}`).then(a=>{if(!a.ok)throw Error(`HTTP ${a.status}`);return a.json()}).then(a=>{b&&i(a)}).catch(a=>{b&&m(a.message||"取数失败")}),()=>{b=!1}},[d,a]),(0,c.useEffect)(()=>{if("trends"===f||j||!a)return;let b=!0;return q(!0),o(null),(0,aq.apiFetch)(`/api/fleet/breakdowns?window=${d}&user=${encodeURIComponent(a)}`).then(a=>{if(!a.ok)throw Error(`HTTP ${a.status}`);return a.json()}).then(a=>{b&&k(a)}).catch(a=>{b&&o(a.message||"取数失败")}).finally(()=>{b&&q(!1)}),()=>{b=!1}},[f,d,j,a]);let t=h?.errorThreshold??5,u={trends:!!h?.buckets.some(a=>a.errorRate>t),reliability:!!j?.reliability.failAgents.some(a=>a.errorRate>=t)};return(0,b.jsxs)("div",{style:{height:"100%",overflowY:"auto",background:"var(--background)"},children:[(0,b.jsxs)("div",{style:{position:"sticky",top:0,zIndex:20,display:"flex",alignItems:"center",gap:12,flexWrap:"wrap",padding:"14px 22px",borderBottom:"1px solid var(--border)",background:"var(--background)"},children:[(0,b.jsx)("span",{style:{fontSize:15,fontWeight:800,color:"var(--foreground)"},children:"仪表盘"}),(0,b.jsx)(aT,{text:"成本按模型单价加权(单位 USD);成功/错误为硬错误口径(工具 state / failures),软错误(judge)未叠加;端到端时延为 wall-time。数据源:真实 Execution 聚合。"}),(0,b.jsx)("span",{style:{flex:1}}),(0,b.jsx)("div",{style:{display:"flex",gap:4,background:"var(--card-bg)",border:"1px solid var(--border)",borderRadius:8,padding:2},children:au.map(a=>(0,b.jsx)("button",{onClick:()=>e(a.key),style:{fontSize:11.5,fontWeight:600,padding:"5px 11px",borderRadius:6,cursor:"pointer",border:"none",background:d===a.key?"var(--primary)":"transparent",color:d===a.key?"var(--primary-foreground, #fff)":"var(--foreground-secondary)"},children:a.label},a.key))})]}),(0,b.jsxs)("div",{style:{padding:22,display:"flex",flexDirection:"column",gap:16},children:[l&&(0,b.jsx)(aV,{msg:l}),!h&&!l&&(0,b.jsx)(aU,{text:"加载中…"}),h&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(aJ,{kpi:h.kpi}),h.pricingMissingModels.length>0&&(0,b.jsxs)("div",{style:{fontSize:11,color:"var(--warning)",marginTop:-6},children:["⚠ 以下模型缺单价,成本按 0 计:",h.pricingMissingModels.join("、"),"(在 custom-models.json 补单价)"]}),(0,b.jsx)("div",{style:{display:"flex",gap:2,borderBottom:"1px solid var(--border)",flexWrap:"wrap"},children:at.map(a=>{let c=f===a.key;return(0,b.jsxs)("button",{onClick:()=>g(a.key),style:{position:"relative",fontSize:12.5,fontWeight:c?700:500,padding:"9px 15px",border:"none",cursor:"pointer",background:"transparent",color:c?"var(--primary)":"var(--foreground-secondary)",borderBottom:c?"2px solid var(--primary)":"2px solid transparent",marginBottom:-1},children:[a.label,u[a.key]&&(0,b.jsx)("span",{title:"trends"===a.key?"告警:部分时段错误率超过 5% 阈值":"告警:存在失败热点 Agent 错误率 ≥ 5% 阈值",style:{position:"absolute",top:6,right:4,width:6,height:6,borderRadius:"50%",background:"var(--error)",cursor:"help"}})]},a.key)})}),"trends"===f&&(0,b.jsx)(aB,{data:h}),"trends"!==f&&(n?(0,b.jsx)(aV,{msg:n}):p||!j?(0,b.jsx)(aU,{text:"加载中…"}):"reliability"===f?(0,b.jsx)(aC,{bd:j,onAgentClick:s}):"model"===f?(0,b.jsx)(aD,{bd:j}):"tool"===f?(0,b.jsx)(aE,{bd:j}):"agent"===f?(0,b.jsx)(aF,{bd:j,onAgentClick:s}):(0,b.jsx)(aG,{bd:j,onAgentClick:s}))]})]}),r&&a&&(0,b.jsx)(aW,{name:r,win:d,user:a,onClose:()=>s(null)})]})}function aB({data:a}){let c=(0,ar.useThemeColors)();return a.buckets.every(a=>0===a.traces)?(0,b.jsx)(aU,{text:"当前窗口内暂无数据"}):(0,b.jsxs)(aR,{children:[(0,b.jsx)(aS,{title:"Trace 流量趋势",hint:"成功 / 失败分层堆叠",children:(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aY,children:(0,b.jsxs)(i,{data:a.buckets,margin:aZ,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:c.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:c.fgMuted,tick:a$,interval:"preserveStartEnd"}),(0,b.jsx)(n.YAxis,{width:52,stroke:c.fgMuted,tick:a$,allowDecimals:!1}),(0,b.jsx)(p.Tooltip,{contentStyle:a0}),(0,b.jsx)(ap,{verticalAlign:"top",align:"right",wrapperStyle:a_}),(0,b.jsx)(k.Bar,{dataKey:"success",name:"成功",stackId:"t",fill:c.success}),(0,b.jsx)(k.Bar,{dataKey:"fail",name:"失败",stackId:"t",fill:c.error,radius:[2,2,0,0]})]})})}),(0,b.jsx)(aS,{title:"错误率趋势",hint:`失败 trace 占比 \xb7 阈值线 ${a.errorThreshold}%`,children:(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aY,children:(0,b.jsxs)(j.LineChart,{data:a.buckets,margin:aZ,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:c.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:c.fgMuted,tick:a$,interval:"preserveStartEnd"}),(0,b.jsx)(n.YAxis,{width:52,stroke:c.fgMuted,tick:a$,unit:"%"}),(0,b.jsx)(p.Tooltip,{contentStyle:a0}),(0,b.jsx)(q.ReferenceLine,{y:a.errorThreshold,stroke:c.warning,strokeDasharray:"5 4",label:{value:`${a.errorThreshold}%`,position:"right",fill:c.warning,fontSize:10}}),(0,b.jsx)(l.Line,{type:"monotone",dataKey:"errorRate",name:"错误率",stroke:c.error,strokeWidth:2,dot:{r:2}})]})})}),(0,b.jsx)(aS,{title:"端到端时延趋势",hint:"per-trace P50 / P95 / P99(wall-time,秒)",children:(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aY,children:(0,b.jsxs)(j.LineChart,{data:a.buckets,margin:aZ,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:c.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:c.fgMuted,tick:a$,interval:"preserveStartEnd"}),(0,b.jsx)(n.YAxis,{width:52,stroke:c.fgMuted,tick:a$,unit:"s"}),(0,b.jsx)(p.Tooltip,{contentStyle:a0}),(0,b.jsx)(ap,{verticalAlign:"top",align:"right",wrapperStyle:a_}),(0,b.jsx)(l.Line,{type:"monotone",dataKey:"latencyP50",name:"P50",stroke:c.success,strokeWidth:1.8,dot:!1}),(0,b.jsx)(l.Line,{type:"monotone",dataKey:"latencyP95",name:"P95",stroke:c.warning,strokeWidth:2,dot:!1}),(0,b.jsx)(l.Line,{type:"monotone",dataKey:"latencyP99",name:"P99",stroke:c.error,strokeWidth:2,dot:!1})]})})}),(0,b.jsx)(aS,{title:"Token 消耗趋势",hint:"input / output 堆叠 + 总量线",children:(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aY,children:(0,b.jsxs)(e.ComposedChart,{data:a.buckets,margin:aZ,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:c.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:c.fgMuted,tick:a$,interval:"preserveStartEnd"}),(0,b.jsx)(n.YAxis,{width:52,stroke:c.fgMuted,tick:a$,tickFormatter:az}),(0,b.jsx)(p.Tooltip,{contentStyle:a0,formatter:a=>aw(Number(a))}),(0,b.jsx)(ap,{verticalAlign:"top",align:"right",wrapperStyle:a_}),(0,b.jsx)(k.Bar,{dataKey:"inputTokens",name:"input",stackId:"tok",fill:c.primary}),(0,b.jsx)(k.Bar,{dataKey:"outputTokens",name:"output",stackId:"tok",fill:av,radius:[2,2,0,0]}),(0,b.jsx)(l.Line,{type:"monotone",dataKey:"totalTokens",name:"总量",stroke:c.warning,strokeWidth:2,dot:!1})]})})}),(0,b.jsx)(aS,{title:"成本趋势",hint:`按模型单价加权(${a.currency})`,children:(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aY,children:(0,b.jsxs)(j.LineChart,{data:a.buckets,margin:aZ,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:c.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:c.fgMuted,tick:a$,interval:"preserveStartEnd"}),(0,b.jsx)(n.YAxis,{width:52,stroke:c.fgMuted,tick:a$,tickFormatter:a=>`$${a}`}),(0,b.jsx)(p.Tooltip,{contentStyle:a0,formatter:a=>ay(Number(a))}),(0,b.jsx)(l.Line,{type:"monotone",dataKey:"cost",name:"成本",stroke:c.warning,strokeWidth:2.2,dot:{r:2}})]})})}),(0,b.jsx)(aS,{title:"单 trace 平均 Token / 平均成本",hint:"效率指标(与流量解耦)",children:(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aY,children:(0,b.jsxs)(e.ComposedChart,{data:a.buckets,margin:aZ,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:c.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:c.fgMuted,tick:a$,interval:"preserveStartEnd"}),(0,b.jsx)(n.YAxis,{yAxisId:"tok",width:52,stroke:c.fgMuted,tick:a$,tickFormatter:az}),(0,b.jsx)(n.YAxis,{yAxisId:"cost",orientation:"right",width:52,stroke:c.fgMuted,tick:a$,tickFormatter:a=>`$${a}`}),(0,b.jsx)(p.Tooltip,{contentStyle:a0}),(0,b.jsx)(ap,{verticalAlign:"top",align:"right",wrapperStyle:a_}),(0,b.jsx)(l.Line,{yAxisId:"tok",type:"monotone",dataKey:"avgTokens",name:"平均 Token",stroke:c.primary,strokeWidth:2,dot:!1}),(0,b.jsx)(l.Line,{yAxisId:"cost",type:"monotone",dataKey:"avgCost",name:`平均成本(${a.currency})`,stroke:c.warning,strokeWidth:2,strokeDasharray:"5 4",dot:!1})]})})})]})}function aC({bd:a,onAgentClick:c}){let d=a.reliability;return(0,b.jsxs)(aR,{children:[(0,b.jsx)(aS,{title:"失败热点 · Agent",hint:"错误率 TOP10(失败/总调用)· 点击下钻",children:(0,b.jsx)(aN,{data:d.failAgents.map(a=>({name:a.name,value:a.errorRate})),color:"var(--error)",unit:"%",onClick:c})}),(0,b.jsx)(aS,{title:"端到端时延分布",hint:"per-trace 对数桶(秒)",children:(0,b.jsx)(aP,{data:d.latHist,color:"var(--warning)"})}),(0,b.jsx)(aS,{title:"慢 Trace 排行",hint:"按端到端耗时降序 TOP20(点击进链路)",wide:!0,children:(0,b.jsx)(aQ,{rows:d.slowTraces})})]})}function aD({bd:a}){let c=a.model;return(0,b.jsxs)(aR,{children:[(0,b.jsx)(aS,{title:"模型调用次数排行",hint:"Σ 模型调用次数 TOP10",children:(0,b.jsx)(aN,{data:c.callRank.map(a=>({name:a.model,value:a.calls})),color:"var(--primary)"})}),(0,b.jsx)(aS,{title:"Token 构成排行",hint:"input / output 堆叠 · 柱长=总消耗 TOP10",children:(0,b.jsx)(aO,{data:c.tokenComp})})]})}function aE({bd:a}){let c=(0,ar.useThemeColors)(),e=a.tool.trend;return(0,b.jsxs)(aR,{children:[(0,b.jsx)(aS,{title:"工具调用量趋势",hint:"Σ tool_calls 条数 / 桶",children:(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aY,children:(0,b.jsxs)(i,{data:e,margin:aZ,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:c.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:c.fgMuted,tick:a$,interval:"preserveStartEnd"}),(0,b.jsx)(n.YAxis,{width:52,stroke:c.fgMuted,tick:a$,allowDecimals:!1}),(0,b.jsx)(p.Tooltip,{contentStyle:a0}),(0,b.jsx)(k.Bar,{dataKey:"calls",name:"工具调用",fill:c.primary,radius:[2,2,0,0]})]})})}),(0,b.jsx)(aS,{title:"工具调用成功率趋势",hint:"1 − 工具错误/总调用(%)",children:(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aY,children:(0,b.jsxs)(j.LineChart,{data:e,margin:aZ,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:c.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:c.fgMuted,tick:a$,interval:"preserveStartEnd"}),(0,b.jsx)(n.YAxis,{width:52,stroke:c.fgMuted,tick:a$,unit:"%",domain:[90,100]}),(0,b.jsx)(p.Tooltip,{contentStyle:a0}),(0,b.jsx)(l.Line,{type:"monotone",dataKey:"successRate",name:"成功率",stroke:c.success,strokeWidth:2,dot:{r:2}})]})})})]})}function aF({bd:a,onAgentClick:c}){let e=(0,ar.useThemeColors)(),f=a.agent;return(0,b.jsxs)(aR,{children:[(0,b.jsx)(aS,{title:"平均执行工具数 / 模型数趋势",hint:"每 trace 人均(分母=当桶 trace 数)",children:(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aY,children:(0,b.jsxs)(j.LineChart,{data:f.trend,margin:aZ,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:e.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:e.fgMuted,tick:a$,interval:"preserveStartEnd"}),(0,b.jsx)(n.YAxis,{width:52,stroke:e.fgMuted,tick:a$}),(0,b.jsx)(p.Tooltip,{contentStyle:a0}),(0,b.jsx)(ap,{verticalAlign:"top",align:"right",wrapperStyle:a_}),(0,b.jsx)(l.Line,{type:"monotone",dataKey:"avgTools",name:"平均工具数",stroke:e.primary,strokeWidth:2,dot:!1}),(0,b.jsx)(l.Line,{type:"monotone",dataKey:"avgModels",name:"平均模型调用数",stroke:av,strokeWidth:2,dot:!1})]})})}),(0,b.jsx)(aS,{title:"Agent Token 消耗(self)",hint:"按 Agent 自身 token TOP10 · 点击下钻",children:(0,b.jsx)(aN,{data:f.tokenRank.map(a=>({name:a.name,value:a.tokens})),color:"var(--warning)",fmt:az,onClick:c})}),(0,b.jsx)(aS,{title:"Agent 调用排行",hint:"distinct trace 出现数 TOP10 · 点击下钻",children:(0,b.jsx)(aN,{data:f.callRank.map(a=>({name:a.name,value:a.traces})),color:"var(--primary)",onClick:c})}),(0,b.jsx)(aS,{title:"Skill 调用排行",hint:"调用次数 TOP10(成功率色深待 skill-call state)",children:f.skillRank.length?(0,b.jsx)(aN,{data:f.skillRank.map(a=>({name:a.skill,value:a.calls})),color:av}):(0,b.jsx)(aU,{text:"窗口内无 skill 调用"})})]})}function aG({bd:a,onAgentClick:c}){let d=a.orchestration.collab;return(0,b.jsxs)(aR,{children:[(0,b.jsx)(aS,{title:"编排复杂度分布",hint:"每 trace 的 distinct Agent 数分桶",children:(0,b.jsx)(aP,{data:a.orchestration.complexityHist,color:"var(--primary)"})}),(0,b.jsx)(aS,{title:"全局协作网络",info:"边来自 buildAgentCallTree 还原的 parent→child 派发关系(谁 spawn 了谁),跨当前窗口内所有 trace 聚合,边权=派发次数、节点大小=中心度。非 send_message 点对点消息(该口径四框架均无数据源),但同样能识别通信枢纽 Agent。",hint:`节点大小=中心度 \xb7 边=派发(from→to) \xb7 点击节点下钻 \xb7 ${d.traceCount} 条多 Agent trace${d.truncated?"(已截断)":""}`,wide:!0,children:d.nodes.length?(0,b.jsx)(aH,{data:d,onNodeClick:c}):(0,b.jsx)(aU,{text:"窗口内无多 Agent 协作数据"})})]})}function aH({data:d,onNodeClick:e}){let f=(0,ar.useThemeColors)(),g=c.default.useRef(null);return c.default.useEffect(()=>{let b=g.current;if(!b)return;let c=null,h=!1,i=null;return a.A(104264).then(a=>{if(h||!b)return;let g=Math.max(1,...d.nodes.map(a=>a.degree)),j=Math.max(1,...d.edges.map(a=>a.weight));(c=a.init(b)).setOption({tooltip:{confine:!0,backgroundColor:"var(--card-bg)",borderColor:"var(--border)",textStyle:{color:f.fg,fontSize:12},formatter:a=>"edge"===a.dataType?`${a.data.source} → ${a.data.target}<br/>派发 <b>${a.data.value}</b> 次`:`${a.name}<br/>中心度 <b>${a.value}</b>`},series:[{type:"graph",layout:"force",roam:!0,draggable:!0,data:d.nodes.map(a=>{let b;return{name:a.id,value:a.degree,symbolSize:16+40*(a.degree/g),itemStyle:{color:(b=a.degree/g)>.8?"#1D2B45":b>.5?"#2C7A6B":b>.3?"#C8553D":b>.15?"#B5811F":"#76705f"}}}),links:d.edges.map(a=>({source:a.from,target:a.to,value:a.weight,lineStyle:{width:1+3.5*(a.weight/j)}})),force:{repulsion:300,edgeLength:[60,140],gravity:.12},label:{show:!0,position:"right",color:f.fg,fontSize:10,fontWeight:500},lineStyle:{color:f.fgMuted,opacity:.5,curveness:.18},emphasis:{focus:"adjacency",label:{fontWeight:700},lineStyle:{color:"#C8553D",opacity:.95,width:2.5}}}]}),i=()=>c?.resize(),window.addEventListener("resize",i),e&&c.on("click",a=>{a?.dataType==="node"&&a.name&&e(String(a.name))})}),()=>{h=!0,i&&window.removeEventListener("resize",i),c&&c.dispose()}},[d,f,e]),(0,b.jsx)("div",{ref:g,style:{width:"100%",height:440}})}let aI=[{label:"总 Trace",key:"traces",fmt:aw,goodWhenUp:null,tone:"count",group:"系统"},{label:"成功率",key:"successRate",fmt:ax,goodWhenUp:!0,tone:"good",group:"系统"},{label:"P95 端到端时延",key:"p95Latency",fmt:a=>`${a}s`,goodWhenUp:!1,tone:"latency",group:"系统"},{label:"活跃 Agent",key:"activeAgents",fmt:aw,goodWhenUp:null,tone:"count",group:"系统"},{label:"活跃模型",key:"activeModels",fmt:aw,goodWhenUp:null,tone:"count",group:"系统"},{label:"工具调用次数",key:"toolCalls",fmt:aw,goodWhenUp:null,tone:"count",group:"工具"},{label:"工具调用错误率",key:"toolErrorRate",fmt:ax,goodWhenUp:!1,tone:"error",group:"工具"},{label:"模型 Tokens",key:"totalTokens",fmt:aw,goodWhenUp:null,tone:"count",group:"模型"},{label:"模型调用次数",key:"llmCalls",fmt:aw,goodWhenUp:null,tone:"count",group:"模型"},{label:"总成本",key:"totalCost",fmt:ay,goodWhenUp:!1,tone:"latency",group:"模型"}];function aJ({kpi:a}){return(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(150px, 1fr))",gap:10},children:aI.map(c=>(0,b.jsx)(aL,{def:c,cur:a.current[c.key],prev:a.previous[c.key]},c.key))})}let aK={count:"var(--foreground)",good:"var(--success)",latency:"var(--warning)",error:"var(--error)"};function aL({def:a,cur:c,prev:d}){return(0,b.jsxs)("div",{style:{background:"var(--card-bg)",border:"1px solid var(--card-border)",borderRadius:10,padding:"12px 14px",display:"flex",flexDirection:"column",gap:6},children:[(0,b.jsxs)("span",{style:{fontSize:11,color:"var(--foreground-muted)",display:"flex",alignItems:"center",gap:6},children:[(0,b.jsx)("span",{style:{fontSize:9,opacity:.7},children:a.group}),a.label]}),(0,b.jsx)("span",{style:{fontSize:22,fontWeight:800,color:aK[a.tone],fontFamily:"var(--font-mono, monospace)",lineHeight:1.1},children:a.fmt(c??0)}),(0,b.jsx)(aM,{cur:c,prev:d,goodWhenUp:a.goodWhenUp})]})}function aM({cur:a,prev:c,goodWhenUp:d}){if(null==c||0===c)return(0,b.jsx)("span",{style:{fontSize:10.5,color:"var(--foreground-muted)"},children:"环比 —"});let e=Math.round((a-c)/c*1e3)/10;if(.05>Math.abs(e))return(0,b.jsx)("span",{style:{fontSize:10.5,color:"var(--foreground-muted)"},children:"环比 ±0%"});let f=e>0;return(0,b.jsxs)("span",{style:{fontSize:10.5,color:null===d?"var(--foreground-muted)":d===f?"var(--success)":"var(--error)",display:"inline-flex",alignItems:"center",gap:3},children:[f?"▲":"▼"," ",Math.abs(e),"%",(0,b.jsx)("span",{style:{color:"var(--foreground-muted)",fontSize:9.5},children:"环比"})]})}function aN({data:a,color:c,unit:e,fmt:f,onClick:g}){let h=(0,ar.useThemeColors)();return a.length?(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aY,children:(0,b.jsxs)(i,{layout:"vertical",data:a,margin:{top:4,right:18,bottom:4,left:8},children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:h.border,horizontal:!1}),(0,b.jsx)(m.XAxis,{type:"number",stroke:h.fgMuted,tick:a$,unit:e,tickFormatter:f}),(0,b.jsx)(n.YAxis,{type:"category",dataKey:"name",stroke:h.fgMuted,tick:{fontSize:10},width:118}),(0,b.jsx)(p.Tooltip,{contentStyle:a0,formatter:a=>f?f(Number(a)):String(a)}),(0,b.jsx)(k.Bar,{dataKey:"value",fill:c,radius:[0,3,3,0],cursor:g?"pointer":void 0,onClick:g?a=>{let b=a?.name??a?.payload?.name;b&&g(String(b))}:void 0})]})}):(0,b.jsx)(aU,{text:"暂无数据"})}function aO({data:a}){let c=(0,ar.useThemeColors)();return a.length?(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aY,children:(0,b.jsxs)(i,{layout:"vertical",data:a,margin:{top:4,right:18,bottom:4,left:8},children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:c.border,horizontal:!1}),(0,b.jsx)(m.XAxis,{type:"number",stroke:c.fgMuted,tick:a$,tickFormatter:az}),(0,b.jsx)(n.YAxis,{type:"category",dataKey:"model",stroke:c.fgMuted,tick:{fontSize:10},width:118}),(0,b.jsx)(p.Tooltip,{contentStyle:a0,formatter:a=>aw(Number(a))}),(0,b.jsx)(ap,{verticalAlign:"top",align:"right",wrapperStyle:a_}),(0,b.jsx)(k.Bar,{dataKey:"input",name:"input",stackId:"s",fill:c.primary}),(0,b.jsx)(k.Bar,{dataKey:"output",name:"output",stackId:"s",fill:av,radius:[0,3,3,0]})]})}):(0,b.jsx)(aU,{text:"暂无数据"})}function aP({data:a,color:c}){let e=(0,ar.useThemeColors)();return(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:aY,children:(0,b.jsxs)(i,{data:a,margin:aZ,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:e.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:e.fgMuted,tick:a$}),(0,b.jsx)(n.YAxis,{width:52,stroke:e.fgMuted,tick:a$,allowDecimals:!1}),(0,b.jsx)(p.Tooltip,{contentStyle:a0}),(0,b.jsx)(k.Bar,{dataKey:"count",name:"trace 数",fill:c,radius:[2,2,0,0]})]})})}function aQ({rows:a}){if(!a.length)return(0,b.jsx)(aU,{text:"暂无数据"});let c={textAlign:"left",padding:"7px 10px",color:"var(--foreground-muted)",fontWeight:600,borderBottom:"1px solid var(--border)",whiteSpace:"nowrap"},d={padding:"7px 10px",borderBottom:"1px solid var(--border)",color:"var(--foreground-secondary)"};return(0,b.jsx)("div",{style:{overflowX:"auto"},children:(0,b.jsxs)("table",{style:{width:"100%",borderCollapse:"collapse",fontSize:11.5},children:[(0,b.jsx)("thead",{children:(0,b.jsxs)("tr",{children:[(0,b.jsx)("th",{style:c,children:"Trace"}),(0,b.jsx)("th",{style:c,children:"Agent"}),(0,b.jsx)("th",{style:c,children:"时延(s)"}),(0,b.jsx)("th",{style:c,children:"Token"}),(0,b.jsx)("th",{style:c,children:"Agent 数"}),(0,b.jsx)("th",{style:c,children:"状态"})]})}),(0,b.jsx)("tbody",{children:a.map((a,c)=>(0,b.jsxs)("tr",{children:[(0,b.jsx)("td",{style:d,children:(0,b.jsxs)("a",{href:(0,aq.getApiUrl)(`/trace?taskId=${encodeURIComponent(a.taskId)}`),style:{color:"var(--primary)",textDecoration:"none",fontFamily:"var(--font-mono, monospace)"},children:[a.taskId.slice(0,12),"…"]})}),(0,b.jsx)("td",{style:d,children:a.agent}),(0,b.jsx)("td",{style:{...d,fontFamily:"var(--font-mono, monospace)",color:"var(--warning)"},children:a.latency}),(0,b.jsx)("td",{style:{...d,fontFamily:"var(--font-mono, monospace)"},children:aw(a.tokens)}),(0,b.jsx)("td",{style:d,children:a.agents}),(0,b.jsx)("td",{style:{...d,color:a.ok?"var(--success)":"var(--error)"},children:a.ok?"成功":"失败"})]},c))})]})})}function aR({children:a}){return(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(430px, 1fr))",gap:14},children:a})}function aS({title:a,hint:c,info:d,wide:e,children:f}){return(0,b.jsxs)("section",{style:{background:"var(--card-bg)",border:"1px solid var(--card-border)",borderRadius:12,gridColumn:e?"1 / -1":void 0,minWidth:0,overflow:"hidden"},children:[(0,b.jsxs)("div",{style:{padding:"11px 16px",borderBottom:"1px solid var(--border)",display:"flex",alignItems:"center",gap:8,flexWrap:"wrap"},children:[(0,b.jsx)("span",{style:{fontSize:13,fontWeight:800,color:"var(--foreground)"},children:a}),d&&(0,b.jsx)(aT,{text:d}),c&&(0,b.jsxs)("span",{style:{fontSize:10.5,color:"var(--foreground-muted)"},children:["· ",c]})]}),(0,b.jsx)("div",{style:{padding:"12px 12px 6px"},children:f})]})}function aT({text:a}){return(0,b.jsx)("span",{title:a,style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:14,height:14,borderRadius:"50%",border:"1px solid var(--border-dark)",color:"var(--foreground-muted)",fontSize:9.5,fontWeight:700,fontStyle:"normal",cursor:"help",flexShrink:0,lineHeight:1},children:"i"})}function aU({text:a}){return(0,b.jsx)("div",{style:{padding:50,textAlign:"center",color:"var(--foreground-muted)",fontSize:13,background:"var(--card-bg)",border:"1px solid var(--card-border)",borderRadius:12},children:a})}function aV({msg:a}){return(0,b.jsxs)("div",{style:{padding:16,borderRadius:10,background:"var(--error-subtle)",border:"1px solid var(--error-subtle-border)",color:"var(--error)",fontSize:13},children:["取数失败:",a]})}function aW({name:a,win:f,user:g,onClose:h}){let i=(0,ar.useThemeColors)(),[j,q]=(0,c.useState)(null),[r,s]=(0,c.useState)(null);(0,c.useEffect)(()=>{let b=!0;return q(null),s(null),(0,aq.apiFetch)(`/api/fleet/agent?name=${encodeURIComponent(a)}&window=${f}&user=${encodeURIComponent(g)}`).then(a=>{if(!a.ok)throw Error(`HTTP ${a.status}`);return a.json()}).then(a=>{b&&q(a)}).catch(a=>{b&&s(a instanceof Error?a.message:"取数失败")}),()=>{b=!1}},[a,f,g]);let t=j?.stats;return(0,b.jsx)("div",{onClick:h,style:{position:"fixed",inset:0,background:"rgba(0,0,0,.3)",zIndex:60,display:"flex",justifyContent:"flex-end"},children:(0,b.jsxs)("div",{onClick:a=>a.stopPropagation(),style:{width:"min(560px, 92vw)",height:"100%",background:"var(--background)",borderLeft:"1px solid var(--border)",overflowY:"auto",boxShadow:"-8px 0 30px rgba(0,0,0,.15)"},children:[(0,b.jsxs)("div",{style:{position:"sticky",top:0,background:"var(--background)",borderBottom:"1px solid var(--border)",padding:"14px 18px",display:"flex",alignItems:"center",gap:10},children:[(0,b.jsxs)("div",{style:{minWidth:0},children:[(0,b.jsxs)("div",{style:{fontSize:10.5,color:"var(--foreground-muted)"},children:["Agent 详情 · ",au.find(a=>a.key===f)?.label]}),(0,b.jsx)("div",{style:{fontSize:15,fontWeight:800,color:"var(--foreground)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a})]}),(0,b.jsx)("span",{style:{flex:1}}),(0,b.jsx)("a",{href:(0,aq.getApiUrl)(`/trace?agent=${encodeURIComponent(a)}`),style:{fontSize:11.5,color:"var(--primary)",textDecoration:"none",border:"1px solid var(--border)",borderRadius:7,padding:"5px 10px",whiteSpace:"nowrap"},children:"查看 trace →"}),(0,b.jsx)("button",{onClick:h,style:{border:"none",background:"transparent",color:"var(--foreground-muted)",fontSize:20,cursor:"pointer",lineHeight:1},children:"×"})]}),(0,b.jsxs)("div",{style:{padding:18,display:"flex",flexDirection:"column",gap:16},children:[r&&(0,b.jsxs)("div",{style:{color:"var(--error)",fontSize:13},children:["取数失败:",r]}),!j&&!r&&(0,b.jsx)("div",{style:{color:"var(--foreground-muted)",fontSize:13},children:"加载中…"}),j&&!j.found&&(0,b.jsx)("div",{style:{color:"var(--foreground-muted)",fontSize:13},children:"该窗口内无此 Agent 的数据"}),t&&j?.found&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(120px, 1fr))",gap:8},children:[(0,b.jsx)(aX,{label:"参与 Trace",v:aw(t.traces)}),(0,b.jsx)(aX,{label:"执行次数",v:aw(t.executions)}),(0,b.jsx)(aX,{label:"成功率",v:`${t.successRate}%`,tone:"good"}),(0,b.jsx)(aX,{label:"P95 时延",v:`${t.p95Latency}s`,tone:"latency"}),(0,b.jsx)(aX,{label:"Token(self)",v:aw(t.totalTokens)}),(0,b.jsx)(aX,{label:`成本(${j.currency})`,v:ay(t.cost),tone:"latency"}),(0,b.jsx)(aX,{label:"工具调用",v:aw(t.toolCalls)}),(0,b.jsx)(aX,{label:"模型调用",v:aw(t.llmCalls)})]}),(0,b.jsx)(aS,{title:"趋势",hint:"调用次数(柱) + P95 时延(线)",children:(0,b.jsx)(d.ResponsiveContainer,{width:"100%",height:220,children:(0,b.jsxs)(e.ComposedChart,{data:j.trend,margin:aZ,children:[(0,b.jsx)(o.CartesianGrid,{strokeDasharray:"3 3",stroke:i.border,vertical:!1}),(0,b.jsx)(m.XAxis,{dataKey:"label",stroke:i.fgMuted,tick:a$,interval:"preserveStartEnd"}),(0,b.jsx)(n.YAxis,{yAxisId:"c",width:40,stroke:i.fgMuted,tick:a$,allowDecimals:!1}),(0,b.jsx)(n.YAxis,{yAxisId:"l",orientation:"right",width:44,stroke:i.fgMuted,tick:a$,unit:"s"}),(0,b.jsx)(p.Tooltip,{contentStyle:a0}),(0,b.jsx)(ap,{verticalAlign:"top",align:"right",wrapperStyle:a_}),(0,b.jsx)(k.Bar,{yAxisId:"c",dataKey:"calls",name:"调用次数(左轴)",fill:i.primary,radius:[2,2,0,0]}),(0,b.jsx)(l.Line,{yAxisId:"l",type:"monotone",dataKey:"latencyP95",name:"P95 时延 s(右轴)",stroke:i.warning,strokeWidth:2,dot:!1})]})})}),j.topModels.length>0&&(0,b.jsx)(aS,{title:"常用模型",hint:"按 token 占用",children:(0,b.jsx)(aN,{data:j.topModels.map(a=>({name:a.model,value:a.tokens})),color:av,fmt:az})})]})]})]})})}function aX({label:a,v:c,tone:d}){return(0,b.jsxs)("div",{style:{background:"var(--card-bg)",border:"1px solid var(--card-border)",borderRadius:9,padding:"9px 11px"},children:[(0,b.jsx)("div",{style:{fontSize:10.5,color:"var(--foreground-muted)"},children:a}),(0,b.jsx)("div",{style:{fontSize:17,fontWeight:800,color:"good"===d?"var(--success)":"latency"===d?"var(--warning)":"var(--foreground)",fontFamily:"var(--font-mono, monospace)"},children:c})]})}let aY=260,aZ={top:8,right:16,bottom:4,left:0},a$={fontSize:10},a_={fontSize:11},a0={background:"var(--card-bg)",border:"1px solid var(--border-dark)",borderRadius:9,fontSize:11,boxShadow:"0 6px 24px rgba(20,22,30,.12)"};a.s(["default",()=>aA],659764)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=src_app_%28main%29_dashboard_page_tsx_7eac7774._.js.map
|