@percepta/kaizen 0.5.1 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/README.md +54 -126
  2. package/agent/claude-command.md +23 -0
  3. package/agent/evals.md +41 -0
  4. package/agent/overview.md +53 -0
  5. package/agent/variant-builder.md +22 -0
  6. package/agent/views.md +51 -0
  7. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/BUILD_ID +1 -1
  8. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/build-manifest.json +22 -22
  9. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/prerender-manifest.json +3 -3
  10. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/routes-manifest.json +42 -10
  11. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/chunks/27.js +1 -0
  12. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/chunks/516.js +8 -0
  13. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/chunks/913.js +1 -0
  14. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/middleware-build-manifest.js +1 -1
  15. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/404.html +1 -1
  16. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/500.html +1 -1
  17. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/[system]/benchmarks.html +1 -1
  18. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/[system]/benchmarks.js.nft.json +1 -1
  19. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/[system]/data/[[...path]].html +1 -0
  20. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/[system]/data/[[...path]].js.nft.json +1 -0
  21. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/[system]/eval.html +1 -1
  22. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/[system]/eval.js.nft.json +1 -1
  23. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/[system]/experiments/[[...path]].html +1 -0
  24. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/[system]/experiments/[[...path]].js.nft.json +1 -0
  25. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/[system]/ideas.html +1 -1
  26. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/[system]/ideas.js.nft.json +1 -1
  27. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/langfuse-action.js +1 -0
  28. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/langfuse-action.js.nft.json +1 -0
  29. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/langfuse-dataset-item.js +1 -1
  30. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/langfuse-dataset-item.js.nft.json +1 -1
  31. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/langfuse-dataset-mutation.js +1 -0
  32. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/langfuse-dataset-mutation.js.nft.json +1 -0
  33. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/langfuse-dataset.js +1 -1
  34. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/langfuse-dataset.js.nft.json +1 -1
  35. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/langfuse-datasets.js +1 -1
  36. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/langfuse-datasets.js.nft.json +1 -1
  37. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/langfuse-trace.js +1 -1
  38. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/langfuse-trace.js.nft.json +1 -1
  39. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/langfuse-traces.js +1 -0
  40. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/langfuse-traces.js.nft.json +1 -0
  41. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/linear-ideas.js +2 -2
  42. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/linear-ideas.js.nft.json +1 -1
  43. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/run-events.js +1 -1
  44. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/run-events.js.nft.json +1 -1
  45. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/run-failures.js +1 -1
  46. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/run-failures.js.nft.json +1 -1
  47. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/run-traces.js +1 -0
  48. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/run-traces.js.nft.json +1 -0
  49. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/runs.js +2 -2
  50. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/runs.js.nft.json +1 -1
  51. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/systems.js +2 -2
  52. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/systems.js.nft.json +1 -1
  53. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/trace-renderer.js +1 -0
  54. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/api/trace-renderer.js.nft.json +1 -0
  55. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/index.html +1 -1
  56. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/index.js.nft.json +1 -1
  57. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages-manifest.json +7 -2
  58. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/static/SCF0o7YxElB9rzWaOohsA/_buildManifest.js +1 -0
  59. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/static/chunks/253-85c76c34f33c9604.js +8 -0
  60. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/static/chunks/pages/[system]/{benchmarks-ea3ad9fe4e28dd88.js → benchmarks-30a17b7659010b8c.js} +1 -1
  61. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/static/chunks/pages/[system]/data/[[...path]]-e5f4083fe9ffe429.js +1 -0
  62. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/static/chunks/pages/[system]/eval-160237a604b47416.js +1 -0
  63. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/static/chunks/pages/[system]/experiments/[[...path]]-91e47a4893093600.js +1 -0
  64. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/static/chunks/pages/[system]/ideas-96e58e4624952e26.js +1 -0
  65. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/static/chunks/pages/index-d3306bb6f5d7d235.js +1 -0
  66. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/static/css/cd3873236eb77caa.css +1 -0
  67. package/dashboard/.next/standalone/packages/kaizen/package.json +6 -3
  68. package/dashboard/.next/standalone/packages/kaizen/shared/workspace-paths.js +84 -0
  69. package/dist/commands/create-view.js +58 -0
  70. package/dist/commands/create-view.js.map +1 -0
  71. package/dist/commands/guide.js +66 -0
  72. package/dist/commands/guide.js.map +1 -0
  73. package/dist/commands/ideas.js +4 -8
  74. package/dist/commands/ideas.js.map +1 -1
  75. package/dist/commands/init-system.js +22 -20
  76. package/dist/commands/init-system.js.map +1 -1
  77. package/dist/commands/init.js +28 -64
  78. package/dist/commands/init.js.map +1 -1
  79. package/dist/commands/log.js +5 -11
  80. package/dist/commands/log.js.map +1 -1
  81. package/dist/commands/rebuild.js +7 -9
  82. package/dist/commands/rebuild.js.map +1 -1
  83. package/dist/commands/run.js +5 -9
  84. package/dist/commands/run.js.map +1 -1
  85. package/dist/commands/studio.js +3 -3
  86. package/dist/commands/studio.js.map +1 -1
  87. package/dist/index.js +17 -21
  88. package/dist/index.js.map +1 -1
  89. package/dist/lib/cli.js +20 -0
  90. package/dist/lib/cli.js.map +1 -0
  91. package/dist/lib/events.js.map +1 -1
  92. package/dist/lib/fs-utils.js +3 -27
  93. package/dist/lib/fs-utils.js.map +1 -1
  94. package/dist/lib/leaderboard.js +1 -1
  95. package/dist/lib/leaderboard.js.map +1 -1
  96. package/dist/lib/paths.js +3 -3
  97. package/dist/lib/paths.js.map +1 -1
  98. package/dist/lib/promotion.js.map +1 -1
  99. package/dist/lib/run-dir.js +1 -1
  100. package/dist/lib/run-dir.js.map +1 -1
  101. package/dist/lib/runner.js +6 -5
  102. package/dist/lib/runner.js.map +1 -1
  103. package/dist/lib/system.js +4 -2
  104. package/dist/lib/system.js.map +1 -1
  105. package/dist/package.js +6 -3
  106. package/dist/shared/view-types.d.ts +67 -0
  107. package/dist/shared/view-types.d.ts.map +1 -0
  108. package/dist/shared/workspace-paths.js +84 -0
  109. package/dist/shared/workspace-paths.js.map +1 -0
  110. package/dist/types.d.ts +3 -10
  111. package/dist/types.d.ts.map +1 -1
  112. package/package.json +6 -3
  113. package/shared/view-types.d.ts +69 -0
  114. package/shared/view-types.js +1 -0
  115. package/shared/workspace-paths.d.ts +19 -0
  116. package/shared/workspace-paths.js +84 -0
  117. package/templates/system/eval.py +13 -6
  118. package/templates/system/eval.ts +11 -5
  119. package/templates/system/rubric.md +1 -1
  120. package/templates/system/system.md +6 -5
  121. package/templates/view/dataset-item.tsx +63 -0
  122. package/templates/view/trace.tsx +10 -0
  123. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/chunks/424.js +0 -3
  124. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/[system]/data.html +0 -1
  125. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/[system]/data.js.nft.json +0 -1
  126. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/[system]/experiments.html +0 -1
  127. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/server/pages/[system]/experiments.js.nft.json +0 -1
  128. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/static/chunks/374-421036d63d323cc9.js +0 -3
  129. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/static/chunks/pages/[system]/data-57686b9546f2794a.js +0 -1
  130. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/static/chunks/pages/[system]/eval-d9b5f1b8db0f0f90.js +0 -1
  131. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/static/chunks/pages/[system]/experiments-4d2122d6ada9a04a.js +0 -1
  132. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/static/chunks/pages/[system]/ideas-6c1ff7f9e0da750b.js +0 -1
  133. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/static/chunks/pages/index-1556edd8356dd19f.js +0 -1
  134. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/static/css/e75cf1946c214544.css +0 -1
  135. package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/static/q7hDbHI4NR8DdLDV3kWYh/_buildManifest.js +0 -1
  136. package/dist/lib/env.js +0 -2
  137. package/dist/shared/env.js +0 -4
  138. package/templates/workspace/.claude/agents/variant-builder.md +0 -51
  139. package/templates/workspace/.claude/commands/kaizen.md +0 -65
  140. /package/dashboard/.next/standalone/packages/kaizen/dashboard/.next/static/{q7hDbHI4NR8DdLDV3kWYh → SCF0o7YxElB9rzWaOohsA}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- {"version":1,"files":["../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/api/context.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/api/diag.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/api/metrics.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/api/propagation.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/api/trace.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/baggage/context-helpers.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/baggage/utils.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/context-api.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/context/NoopContextManager.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/context/context.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/diag-api.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/diag/consoleLogger.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/diag/types.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/index.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/internal/global-utils.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/internal/semver.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/metrics-api.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/metrics/Metric.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/platform/index.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/platform/node/globalThis.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/platform/node/index.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/propagation-api.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace-api.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/NoopTracer.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/SamplingResult.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/context-utils.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/internal/utils.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/span_kind.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/status.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/trace_flags.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/version.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/package.json","../../../../../../node_modules/.pnpm/client-only@0.0.1/node_modules/client-only/index.js","../../../../../../node_modules/.pnpm/client-only@0.0.1/node_modules/client-only/package.json","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/@opentelemetry/api","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/client/components/app-router-headers.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/compiled/next-server/pages.runtime.prod.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/lib/client-and-server-references.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/lib/constants.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/lib/interop-default.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/lib/is-error.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/lib/semver-noop.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/lib/lru-cache.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/load-manifest.external.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/response-cache/types.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/package.json","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/react","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/react-dom","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/styled-jsx","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/cjs/react-dom-server-legacy.browser.development.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/cjs/react-dom-server.browser.development.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/cjs/react-dom-server.browser.production.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/cjs/react-dom-server.edge.development.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/cjs/react-dom-server.edge.production.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/cjs/react-dom.development.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/cjs/react-dom.production.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/index.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/package.json","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/server.browser.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/server.edge.js","../../../../../../node_modules/.pnpm/react@19.2.3/node_modules/react/cjs/react-jsx-runtime.development.js","../../../../../../node_modules/.pnpm/react@19.2.3/node_modules/react/cjs/react-jsx-runtime.production.js","../../../../../../node_modules/.pnpm/react@19.2.3/node_modules/react/cjs/react.development.js","../../../../../../node_modules/.pnpm/react@19.2.3/node_modules/react/cjs/react.production.js","../../../../../../node_modules/.pnpm/react@19.2.3/node_modules/react/index.js","../../../../../../node_modules/.pnpm/react@19.2.3/node_modules/react/jsx-runtime.js","../../../../../../node_modules/.pnpm/react@19.2.3/node_modules/react/package.json","../../../../../../node_modules/.pnpm/styled-jsx@5.1.6_react@19.2.3/node_modules/client-only","../../../../../../node_modules/.pnpm/styled-jsx@5.1.6_react@19.2.3/node_modules/react","../../../../../../node_modules/.pnpm/styled-jsx@5.1.6_react@19.2.3/node_modules/styled-jsx/dist/index/index.js","../../../../../../node_modules/.pnpm/styled-jsx@5.1.6_react@19.2.3/node_modules/styled-jsx/index.js","../../../../../../node_modules/.pnpm/styled-jsx@5.1.6_react@19.2.3/node_modules/styled-jsx/package.json","../../../../../../package.json","../../../../node_modules/next","../../../../node_modules/react","../../../../node_modules/react-dom","../../../../package.json","../../../../shared/linear-ideas.js","../../package.json","../chunks/215.js","../chunks/424.js","../chunks/785.js","../chunks/825.js","../chunks/916.js","../chunks/946.js","../webpack-runtime.js"]}
1
+ {"version":1,"files":["../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/api/context.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/api/diag.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/api/metrics.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/api/propagation.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/api/trace.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/baggage/context-helpers.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/baggage/utils.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/context-api.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/context/NoopContextManager.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/context/context.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/diag-api.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/diag/consoleLogger.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/diag/types.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/index.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/internal/global-utils.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/internal/semver.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/metrics-api.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/metrics/Metric.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/platform/index.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/platform/node/globalThis.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/platform/node/index.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/propagation-api.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace-api.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/NoopTracer.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/SamplingResult.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/context-utils.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/internal/utils.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/span_kind.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/status.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/trace/trace_flags.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/src/version.js","../../../../../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/package.json","../../../../../../node_modules/.pnpm/client-only@0.0.1/node_modules/client-only/index.js","../../../../../../node_modules/.pnpm/client-only@0.0.1/node_modules/client-only/package.json","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/@opentelemetry/api","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/client/components/app-router-headers.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/compiled/next-server/pages.runtime.prod.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/lib/client-and-server-references.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/lib/constants.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/lib/interop-default.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/lib/is-error.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/lib/semver-noop.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/lib/lru-cache.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/load-manifest.external.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/server/response-cache/types.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/package.json","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/react","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/react-dom","../../../../../../node_modules/.pnpm/next@16.1.6_@opentelemetry+api@1.9.0_@playwright+test@1.58.2_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/styled-jsx","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/cjs/react-dom-server-legacy.browser.development.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/cjs/react-dom-server.browser.development.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/cjs/react-dom-server.browser.production.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/cjs/react-dom-server.edge.development.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/cjs/react-dom-server.edge.production.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/cjs/react-dom.development.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/cjs/react-dom.production.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/index.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/package.json","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/server.browser.js","../../../../../../node_modules/.pnpm/react-dom@19.2.3_react@19.2.3/node_modules/react-dom/server.edge.js","../../../../../../node_modules/.pnpm/react@19.2.3/node_modules/react/cjs/react-jsx-runtime.development.js","../../../../../../node_modules/.pnpm/react@19.2.3/node_modules/react/cjs/react-jsx-runtime.production.js","../../../../../../node_modules/.pnpm/react@19.2.3/node_modules/react/cjs/react.development.js","../../../../../../node_modules/.pnpm/react@19.2.3/node_modules/react/cjs/react.production.js","../../../../../../node_modules/.pnpm/react@19.2.3/node_modules/react/index.js","../../../../../../node_modules/.pnpm/react@19.2.3/node_modules/react/jsx-runtime.js","../../../../../../node_modules/.pnpm/react@19.2.3/node_modules/react/package.json","../../../../../../node_modules/.pnpm/styled-jsx@5.1.6_react@19.2.3/node_modules/client-only","../../../../../../node_modules/.pnpm/styled-jsx@5.1.6_react@19.2.3/node_modules/react","../../../../../../node_modules/.pnpm/styled-jsx@5.1.6_react@19.2.3/node_modules/styled-jsx/dist/index/index.js","../../../../../../node_modules/.pnpm/styled-jsx@5.1.6_react@19.2.3/node_modules/styled-jsx/index.js","../../../../../../node_modules/.pnpm/styled-jsx@5.1.6_react@19.2.3/node_modules/styled-jsx/package.json","../../../../../../package.json","../../../../node_modules/next","../../../../node_modules/react","../../../../node_modules/react-dom","../../../../package.json","../../../../shared/linear-ideas.js","../../package.json","../chunks/215.js","../chunks/516.js","../chunks/785.js","../chunks/825.js","../chunks/916.js","../chunks/946.js","../webpack-runtime.js"]}
@@ -3,18 +3,23 @@
3
3
  "/_error": "pages/_error.js",
4
4
  "/_document": "pages/_document.js",
5
5
  "/[system]/benchmarks": "pages/[system]/benchmarks.html",
6
- "/[system]/data": "pages/[system]/data.html",
6
+ "/[system]/data/[[...path]]": "pages/[system]/data/[[...path]].html",
7
7
  "/[system]/eval": "pages/[system]/eval.html",
8
8
  "/[system]/ideas": "pages/[system]/ideas.html",
9
- "/[system]/experiments": "pages/[system]/experiments.html",
9
+ "/[system]/experiments/[[...path]]": "pages/[system]/experiments/[[...path]].html",
10
+ "/api/langfuse-action": "pages/api/langfuse-action.js",
10
11
  "/api/langfuse-dataset-item": "pages/api/langfuse-dataset-item.js",
12
+ "/api/langfuse-dataset-mutation": "pages/api/langfuse-dataset-mutation.js",
11
13
  "/api/langfuse-dataset": "pages/api/langfuse-dataset.js",
12
14
  "/api/langfuse-datasets": "pages/api/langfuse-datasets.js",
13
15
  "/api/langfuse-trace": "pages/api/langfuse-trace.js",
16
+ "/api/langfuse-traces": "pages/api/langfuse-traces.js",
14
17
  "/api/linear-ideas": "pages/api/linear-ideas.js",
15
18
  "/api/run-events": "pages/api/run-events.js",
16
19
  "/api/run-failures": "pages/api/run-failures.js",
20
+ "/api/run-traces": "pages/api/run-traces.js",
17
21
  "/api/systems": "pages/api/systems.js",
22
+ "/api/trace-renderer": "pages/api/trace-renderer.js",
18
23
  "/": "pages/index.html",
19
24
  "/[system]": "pages/[system].js",
20
25
  "/api/runs": "pages/api/runs.js",
@@ -0,0 +1 @@
1
+ self.__BUILD_MANIFEST=function(s,e,t,a,c,r){return{__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},__routerFilterStatic:{numItems:0,errorRate:1e-4,numBits:0,numHashes:null,bitArray:[]},__routerFilterDynamic:{numItems:0,errorRate:1e-4,numBits:0,numHashes:null,bitArray:[]},"/":[s,e,t,"static/chunks/pages/index-d3306bb6f5d7d235.js"],"/_error":["static/chunks/pages/_error-b69380d1599ed4ba.js"],"/[system]":["static/chunks/pages/[system]-adf7b3ca903bcc42.js"],"/[system]/benchmarks":[s,e,t,"static/chunks/pages/[system]/benchmarks-30a17b7659010b8c.js"],"/[system]/data/[[...path]]":[s,e,t,"static/chunks/pages/[system]/data/[[...path]]-e5f4083fe9ffe429.js"],"/[system]/eval":[s,e,t,"static/chunks/pages/[system]/eval-160237a604b47416.js"],"/[system]/experiments/[[...path]]":[s,e,t,"static/chunks/pages/[system]/experiments/[[...path]]-91e47a4893093600.js"],"/[system]/ideas":[s,e,t,"static/chunks/pages/[system]/ideas-96e58e4624952e26.js"],sortedPages:["/","/_app","/_error","/[system]","/[system]/benchmarks","/[system]/data/[[...path]]","/[system]/eval","/[system]/experiments/[[...path]]","/[system]/ideas"]}}("static/chunks/431-43358ce3c29e5e1b.js","static/css/cd3873236eb77caa.css","static/chunks/253-85c76c34f33c9604.js",0,0,0),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
@@ -0,0 +1,8 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[253],{684:e=>{e.exports={page:"Studio_page__X6enu",topBar:"Studio_topBar__OlLt6",logoLink:"Studio_logoLink__Hv20q",topLogo:"Studio_topLogo__YEKp4",systemSlot:"Studio_systemSlot__5m3MM",surfaceNav:"Studio_surfaceNav__RKZjS",surfaceLink:"Studio_surfaceLink__ivMXp",surfaceLinkActive:"Studio_surfaceLinkActive__Der5b",surfaceLinkDisabled:"Studio_surfaceLinkDisabled__gfVYR",statusPill:"Studio_statusPill__m2ERk",content:"Studio_content__LELHT",surface:"Studio_surface__lxZ_I",surfaceBanner:"Studio_surfaceBanner__UNvfB",surfaceBannerText:"Studio_surfaceBannerText__6jNss",surfaceBannerTitle:"Studio_surfaceBannerTitle__vXJox",surfaceBannerCopy:"Studio_surfaceBannerCopy__Abpvv",sourceChip:"Studio_sourceChip___xMTP",sourceChip_code:"Studio_sourceChip_code__DPzDj",sourceChip_langfuse:"Studio_sourceChip_langfuse__h6LSy",sourceChip_linear:"Studio_sourceChip_linear__9NNQ5",sourceChip_local:"Studio_sourceChip_local__3Ws2K",sourceLogo:"Studio_sourceLogo__iWmOz",sourceSvgIcon:"Studio_sourceSvgIcon__dpcyH",provenanceLine:"Studio_provenanceLine__a5uDd",inlineSourceValue:"Studio_inlineSourceValue__WMOb9",syncStatus:"Studio_syncStatus__exlkz",syncStatusLabel:"Studio_syncStatusLabel__C5cmS",iconButton:"Studio_iconButton__aVxFx",dataLayout:"Studio_dataLayout__RTqFZ",experimentsLayout:"Studio_experimentsLayout__dJ9_W",dataNav:"Studio_dataNav__Hhqcz",experimentNav:"Studio_experimentNav__pUm9S",experimentNavItem:"Studio_experimentNavItem__VrdaI",sidebarResizeHandle:"Studio_sidebarResizeHandle__Bfcoi",dataNavItem:"Studio_dataNavItem__rzaJQ",dataNavGroupItem:"Studio_dataNavGroupItem__0bfKJ",dataNavItemText:"Studio_dataNavItemText__nSadp",dataNavItemMeta:"Studio_dataNavItemMeta__PEhqv",dataNavEmpty:"Studio_dataNavEmpty__sffpq",experimentNavEmpty:"Studio_experimentNavEmpty__6O0bX",dataNavEmptyTitle:"Studio_dataNavEmptyTitle__VI2PP",dataNavEmptyCopy:"Studio_dataNavEmptyCopy__dq6XK",dataNavItemActive:"Studio_dataNavItemActive__TANbd",dataMain:"Studio_dataMain__rSYxU",surfaceToolbar:"Studio_surfaceToolbar__ayM6U",tracesToolbarSearch:"Studio_tracesToolbarSearch__Y_MtI",textInput:"Studio_textInput__9WjCF",traceSearchInput:"Studio_traceSearchInput__5oRye",secondaryButton:"Studio_secondaryButton__gEhyV",traceSearchButton:"Studio_traceSearchButton__EmQvq",searchIcon:"Studio_searchIcon__siCkB",tracesToolbarRight:"Studio_tracesToolbarRight__YpWj8",surfaceTitle:"Studio_surfaceTitle__7SjZP",surfaceSubtitle:"Studio_surfaceSubtitle__i6YB6",inlineSelector:"Studio_inlineSelector__er_h_",inlineSelectorLabel:"Studio_inlineSelectorLabel__T4g6q",filterBar:"Studio_filterBar__I6G_F",select:"Studio_select__rbQ0i",primaryButton:"Studio_primaryButton__t0Otf",dangerButton:"Studio_dangerButton__9Bclj",checkboxInput:"Studio_checkboxInput__E3h42",dropdown:"Studio_dropdown__Qu_kI",dropdownButton:"Studio_dropdownButton__xiN8C",dropdownValue:"Studio_dropdownValue__0_6qb",dropdownChevron:"Studio_dropdownChevron__eSQVR",dropdownMenu:"Studio_dropdownMenu__Z_P4L",dropdownOption:"Studio_dropdownOption__8vaW9",dropdownOptionSelected:"Studio_dropdownOptionSelected__Qv75j",splitSurface:"Studio_splitSurface__v2lGr",listPanel:"Studio_listPanel__KQbqx",listPanelEmpty:"Studio_listPanelEmpty__Ofh2D",detailPanel:"Studio_detailPanel__upjwv",errorPanel:"Studio_errorPanel__OFovk",loadingPanel:"Studio_loadingPanel__VwGMY",emptyPanel:"Studio_emptyPanel__nqsJ1",listRow:"Studio_listRow__NObDS",listRowSelected:"Studio_listRowSelected__v7gF6",listRowTitle:"Studio_listRowTitle__Dg_xF",listRowMeta:"Studio_listRowMeta__fmtZx",listRowLinked:"Studio_listRowLinked__YG4yc",detailHeader:"Studio_detailHeader__an_N2",detailHeaderAction:"Studio_detailHeaderAction__VRlRY",detailTitle:"Studio_detailTitle__H8HXN",detailMeta:"Studio_detailMeta__F__Kq",mutedText:"Studio_mutedText__gxlbZ",detailLink:"Studio_detailLink__QdlV6",detailGrid:"Studio_detailGrid__eKjPQ",jsonBlock:"Studio_jsonBlock__V4yWY",jsonTitle:"Studio_jsonTitle__4rJZO",sectionTitle:"Studio_sectionTitle__AgJZy",jsonPre:"Studio_jsonPre__NT0BZ",traceSection:"Studio_traceSection__7pMTX",traceHeader:"Studio_traceHeader__Ulrn7",traceName:"Studio_traceName__YsChW",tagRow:"Studio_tagRow__Prgun",tagPill:"Studio_tagPill__TRnnW",successPanel:"Studio_successPanel__03cvQ",evalDefinitionGrid:"Studio_evalDefinitionGrid__YMID0",evalDefinitionCell:"Studio_evalDefinitionCell__wS4ZE",evalDefinitionCode:"Studio_evalDefinitionCode___J0aO",evalHistorySection:"Studio_evalHistorySection__e_91j",evalSectionHeader:"Studio_evalSectionHeader___IiLV",evalSummaryTable:"Studio_evalSummaryTable__gZ5vh",evalSummaryHeader:"Studio_evalSummaryHeader__ku_ov",evalSummaryRow:"Studio_evalSummaryRow__KtPSR",evalSummaryPrimary:"Studio_evalSummaryPrimary__VAArE",evalSummaryMeta:"Studio_evalSummaryMeta__RgcSF",setupBanner:"Studio_setupBanner__rn3R6",setupTitle:"Studio_setupTitle__rrPH_",setupCopy:"Studio_setupCopy__InFUm",setupHeader:"Studio_setupHeader__0z51Y",setupState:"Studio_setupState__u13N3",setupGrid:"Studio_setupGrid__43Ac0",setupBlock:"Studio_setupBlock__pXdLU",setupBlockTitle:"Studio_setupBlockTitle__HS_1S",setupCode:"Studio_setupCode__3AADb",setupLookup:"Studio_setupLookup__S7xvC",setupDetail:"Studio_setupDetail__BYnnc",setupLookupLabel:"Studio_setupLookupLabel__OOHGt",ideaMetaGrid:"Studio_ideaMetaGrid__QA5ZP",metaCell:"Studio_metaCell__lTOia",metaLabel:"Studio_metaLabel__orMyw",metaValue:"Studio_metaValue__wPOIw",descriptionBlock:"Studio_descriptionBlock__RgZHz",linkedExperimentsSection:"Studio_linkedExperimentsSection__V6m61",linkedExperimentsList:"Studio_linkedExperimentsList__m3Pel",linkedExperimentsEmpty:"Studio_linkedExperimentsEmpty__j9at4",linkedExperimentRow:"Studio_linkedExperimentRow___NdVV",linkedExperimentMain:"Studio_linkedExperimentMain__P1a2y",linkedExperimentStats:"Studio_linkedExperimentStats__SKDtt",linkedExperimentTitle:"Studio_linkedExperimentTitle__zxkFB",linkedExperimentScore:"Studio_linkedExperimentScore__aOXcH",linkedExperimentMeta:"Studio_linkedExperimentMeta__UQRzL",formRow:"Studio_formRow__CkHSQ",formLabel:"Studio_formLabel__pObCQ",textArea:"Studio_textArea__yi_Lm",textAreaLarge:"Studio_textAreaLarge__20NQc",actionRow:"Studio_actionRow__0pQf0",actionFooter:"Studio_actionFooter__wFiYP",emptyState:"Studio_emptyState__dwICN",emptyLogo:"Studio_emptyLogo__ehso4",emptyTitle:"Studio_emptyTitle__ByiEP",emptyCopy:"Studio_emptyCopy__NP7hT",emptyMeta:"Studio_emptyMeta__Bsrtp",emptyPanelCopy:"Studio_emptyPanelCopy__EExQw",experimentEmptyPanel:"Studio_experimentEmptyPanel__p0J2y",experimentDetailSurface:"Studio_experimentDetailSurface__dwDGR",experimentDetailSummary:"Studio_experimentDetailSummary__R5pum",experimentDetailTitleRow:"Studio_experimentDetailTitleRow__dLxGu",experimentDetailTitleGroup:"Studio_experimentDetailTitleGroup__u0ltv",experimentDetailTitle:"Studio_experimentDetailTitle__WVcLo",experimentDetailTimeRow:"Studio_experimentDetailTimeRow__WBHOD",experimentDetailTimeSeparator:"Studio_experimentDetailTimeSeparator__zVrpA",experimentMetricStrip:"Studio_experimentMetricStrip__nO66g",experimentMetricItem:"Studio_experimentMetricItem__9szWE",experimentMetricItemPrimary:"Studio_experimentMetricItemPrimary__8nYrs",experimentMetricValue:"Studio_experimentMetricValue__g26s2",experimentMetricLabel:"Studio_experimentMetricLabel__g8uYl",emptyPanelTitle:"Studio_emptyPanelTitle__g31eb",runTracesPanel:"Studio_runTracesPanel__nh_gK",runTracesPanelHeader:"Studio_runTracesPanelHeader__gJlWU",runTracesPanelTitle:"Studio_runTracesPanelTitle__gUr1M",runTracesDetail:"Studio_runTracesDetail__vStOu",runTracesTableWrap:"Studio_runTracesTableWrap__V4tCd",datasetsTableWrap:"Studio_datasetsTableWrap__biwzy",runTracesTable:"Studio_runTracesTable__FzXJs",runTracesSortButton:"Studio_runTracesSortButton__ej_zF",runTracesSortButtonActive:"Studio_runTracesSortButtonActive__Oy1me",runTracesSortIcon:"Studio_runTracesSortIcon__HEo3w",runTracesTableRowClickable:"Studio_runTracesTableRowClickable__sdAb4",datasetRowMenuOpen:"Studio_datasetRowMenuOpen__7ty_2",runTracesTableId:"Studio_runTracesTableId__zVZBX",datasetActionsCell:"Studio_datasetActionsCell__xmMLt",datasetActionsCellOpen:"Studio_datasetActionsCellOpen__JsSmA",datasetMenuAnchor:"Studio_datasetMenuAnchor__D7NTr",backButton:"Studio_backButton__sPEo0",tagPillRemove:"Studio_tagPillRemove__K4mw7",dataFieldLabel:"Studio_dataFieldLabel__nb_nM",membershipPanel:"Studio_membershipPanel__EGstU",membershipPanelWithAction:"Studio_membershipPanelWithAction__efBwS",traceDatasetControls:"Studio_traceDatasetControls__IwM5z",membershipHeader:"Studio_membershipHeader___UOhR",membershipTitle:"Studio_membershipTitle__2LIen",membershipMeta:"Studio_membershipMeta__TlU5c",membershipContent:"Studio_membershipContent__jqHx_",membershipList:"Studio_membershipList__KXw_7",membershipAction:"Studio_membershipAction__RTbv1",membershipActions:"Studio_membershipActions__BUxtX",membershipPill:"Studio_membershipPill__QjB0k",membershipPillText:"Studio_membershipPillText__RwhCM",membershipPillLink:"Studio_membershipPillLink__h9fV9",membershipRemoveButton:"Studio_membershipRemoveButton__2K9Rp",membershipEmpty:"Studio_membershipEmpty__Dt4SO",modalOverlay:"Studio_modalOverlay__x1Fj4",modalContent:"Studio_modalContent__djAeV",modalTitle:"Studio_modalTitle__0QlJa",modalMessage:"Studio_modalMessage__XPzbe",modalActions:"Studio_modalActions__IU0lF",contextMenu:"Studio_contextMenu__OGBEA",contextMenuAbove:"Studio_contextMenuAbove__Hn1fV",contextMenuItem:"Studio_contextMenuItem__V_cT5",contextMenuItemDanger:"Studio_contextMenuItemDanger__pyiHt",paginationBar:"Studio_paginationBar__rQxsq",paginationBarToolbar:"Studio_paginationBarToolbar__CkBjt",paginationIconButton:"Studio_paginationIconButton__7_OgH",paginationLabel:"Studio_paginationLabel__geOOY",experimentsMain:"Studio_experimentsMain__8IYj4"}},1253:(e,t,a)=>{"use strict";a.d(t,{W:()=>tK});var s=a(144),r=a(4540),n=a(6584),l=a(6048),i=a.n(l),o=a(684),d=a.n(o);let c={code:"Owned by system source code. Agent changes edit the customer repo.",langfuse:"Owned by Langfuse. Agent changes use the Langfuse API.",linear:"Owned by Linear. Agent changes use the Linear API.",local:"Owned by local Kaizen state on this machine."};function u({source:e}){return(0,s.jsx)("span",{className:`${d().sourceChip} ${d()[`sourceChip_${e}`]}`,title:c[e],"aria-label":c[e],children:(0,s.jsx)(m,{source:e})})}function m({source:e}){return"langfuse"===e?(0,s.jsx)("img",{src:"/source-icons/langfuse.svg",alt:"",className:d().sourceLogo}):"linear"===e?(0,s.jsx)("img",{src:"/source-icons/linear.svg",alt:"",className:d().sourceLogo}):"local"===e?(0,s.jsx)(_,{}):(0,s.jsx)(p,{})}function p(){return(0,s.jsxs)("svg",{className:d().sourceSvgIcon,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:[(0,s.jsx)("path",{d:"M8.5 7L3.5 12L8.5 17",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"square",strokeLinejoin:"miter"}),(0,s.jsx)("path",{d:"M15.5 7L20.5 12L15.5 17",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"square",strokeLinejoin:"miter"})]})}function _(){return(0,s.jsxs)("svg",{className:d().sourceSvgIcon,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:[(0,s.jsx)("path",{d:"M5 4H17L20 7V20H5V4Z",stroke:"currentColor",strokeWidth:"2",strokeLinejoin:"miter"}),(0,s.jsx)("path",{d:"M8 4V10H16V4",stroke:"currentColor",strokeWidth:"2"}),(0,s.jsx)("path",{d:"M8 16H16",stroke:"currentColor",strokeWidth:"2"})]})}function h({id:e,options:t,value:a,placeholder:n,disabled:l=!1,className:i,onChange:o,ariaLabel:c,ariaLabelledBy:u}){let[m,p]=(0,r.useState)(!1),_=(0,r.useRef)(null),h=`${e}-listbox`,f=t.find(e=>e.value===a),x=f?.label??n,g=l||0===t.length,j=[d().dropdown,i].filter(e=>"string"==typeof e&&""!==e).join(" ");(0,r.useEffect)(()=>{if(!m)return;let e=e=>{_.current?.contains(e.target)||p(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[m]);let b=(0,r.useCallback)(()=>{g||p(e=>!e)},[g]),y=(0,r.useCallback)(e=>{"Escape"===e.key&&p(!1)},[]),v=(0,r.useCallback)(e=>{let a=t.find(t=>t.value===e);a?.disabled!==!0&&(o(e),p(!1))},[o,t]),N=(0,r.useCallback)(e=>{if(!(e.target instanceof HTMLElement))return;let t=e.target.closest("button[data-option-value]"),a=t?.dataset.optionValue;void 0!==a&&v(a)},[v]);return(0,s.jsxs)("div",{className:j,ref:_,onKeyDown:y,children:[(0,s.jsxs)("button",{id:e,type:"button",className:d().dropdownButton,disabled:g,"aria-label":c,"aria-labelledby":u,"aria-haspopup":"listbox","aria-expanded":m,"aria-controls":h,onClick:b,children:[(0,s.jsx)("span",{className:d().dropdownValue,children:x}),(0,s.jsx)("span",{className:d().dropdownChevron,"aria-hidden":"true"})]}),m?(0,s.jsx)("div",{className:d().dropdownMenu,id:h,role:"listbox","aria-labelledby":e,onClick:N,children:t.map(e=>(0,s.jsx)("button",{type:"button",role:"option","aria-selected":e.value===a,"aria-disabled":!0===e.disabled,disabled:!0===e.disabled,"data-option-value":e.value,className:`${d().dropdownOption} ${e.value===a?d().dropdownOptionSelected:""}`,children:e.label},e.value))}):null]})}var f=a(7810),x=a.n(f);function g(){let{systems:e,activeSystemId:t,setActiveSystemId:a}=(0,n.V)(),l=e.find(e=>e.id===t),i="system-selector-label",o=(0,r.useMemo)(()=>e.map(e=>({value:e.id,label:e.name})),[e]),d=(0,r.useCallback)(e=>a(e),[a]);return(0,s.jsxs)("div",{className:x().wrapper,children:[(0,s.jsx)("span",{id:i,className:x().label,children:"System"}),(0,s.jsx)(h,{id:"system-selector",className:x().dropdown,options:o,value:t??"",placeholder:"Select system",disabled:0===e.length,onChange:d,ariaLabelledBy:i}),l&&(0,s.jsx)(u,{source:"code"})]})}let j=[{id:"data",label:"Data"},{id:"benchmarks",label:"Benchmarks"},{id:"ideas",label:"Ideas"},{id:"experiments",label:"Experiments"}];function b({activeSystem:e,activeSurface:t,children:a}){return(0,s.jsxs)("div",{className:d().page,children:[(0,s.jsxs)("header",{className:d().topBar,children:[(0,s.jsx)(i(),{href:"/",className:d().logoLink,"aria-label":"Kaizen home",children:(0,s.jsx)("img",{src:"/logo-cream.svg",alt:"",className:d().topLogo})}),(0,s.jsx)("div",{className:d().systemSlot,children:(0,s.jsx)(g,{})}),(0,s.jsx)("nav",{className:d().surfaceNav,"aria-label":"Kaizen surfaces",children:j.map(a=>e?(0,s.jsx)(i(),{href:`/${e.id}/${a.id}`,className:`${d().surfaceLink} ${t===a.id?d().surfaceLinkActive:""}`,children:a.label},a.id):(0,s.jsx)("span",{className:`${d().surfaceLink} ${d().surfaceLinkDisabled}`,children:a.label},a.id))}),(0,s.jsx)("div",{})]}),(0,s.jsx)("main",{className:d().content,children:a})]})}function y(e){let[t,a]=(0,r.useState)([]),[s,n]=(0,r.useState)(!1);return(0,r.useEffect)(()=>{let t=null,s=null,r=null,l=(t=[])=>{a(e?t.filter(t=>t.system===e):t)},i=()=>{fetch("/api/runs").then(e=>e.json()).then(e=>l(e.runs??[])).catch(()=>{})},o=()=>{(t=new EventSource("/api/runs")).onmessage=e=>{l(JSON.parse(e.data).runs??[]),n(!0),s&&(clearInterval(s),s=null)},t.onerror=()=>{n(!1),t?.close(),t=null,s||(s=setInterval(i,5e3),i()),r||(r=setTimeout(()=>{r=null,o()},1e4))}};return o(),()=>{t?.close(),s&&clearInterval(s),r&&clearTimeout(r)}},[e]),{runs:t,connected:s}}function v(e){if(!e)return"";let t=new Date(e);return Number.isNaN(t.getTime())?e:new Intl.DateTimeFormat(void 0,{year:"numeric",month:"short",day:"numeric",hour:"numeric",minute:"2-digit"}).format(t)}function N(e){return e<60?`${e}s`:e<3600?`${Math.floor(e/60)}m`:`${Math.floor(e/3600)}h ${Math.floor(e%3600/60)}m`}var S=a(2390);S.Ik({runId:S.Yj(),runName:S.Yj(),status:S.k5(["running","complete","crashed","aborted"]),worktreeBranch:S.Yj(),parentId:S.Yj().nullable(),system:S.Yj(),progress:S.Ik({completed:S.ai(),total:S.ai(),lastHeartbeat:S.Yj()}).optional(),metrics:S.g1(S.Yj(),S.ai()),totalItems:S.ai().nullable(),langfuseRunId:S.Yj().optional(),linearIssue:S.Ik({id:S.Yj(),url:S.Yj()}).optional(),evalConfig:S.Ik({dataset:S.Yj(),evalVersion:S.ai().optional(),datasetItemCount:S.ai(),judge:S.Ik({rubric:S.Yj(),rubricHash:S.Yj(),model:S.Yj(),temperature:S.ai()}).optional()}).optional(),startedAt:S.Yj(),updatedAt:S.Yj()});let k={actionAccuracy:{label:"Action Accuracy",format:"percent"},parameterExtraction:{label:"Param Extraction",format:"percent"},clarificationAppropriateness:{label:"Clarification",format:"percent"},multiActionDetection:{label:"Multi-Action",format:"percent"},f1:{label:"F1",format:"percent"},f2:{label:"F2",format:"percent"},precision:{label:"Precision",format:"percent"},recall:{label:"Recall",format:"percent"},cost_per_item:{label:"Cost / Item",format:"raw"},avg_latency_s:{label:"Avg Latency (s)",format:"raw"},true_positives:{label:"TP",format:"integer"},false_positives:{label:"FP",format:"integer"},false_negatives:{label:"FN",format:"integer"},total_clis_scored:{label:"CLIs Scored",format:"integer"},items_with_metrics:{label:"Items w/ Metrics",format:"integer"},timeouts:{label:"Timeouts",format:"integer"},judge_quality:{label:"Judge Quality",format:"percent"},judge_quality_chartNotes:{label:"Quality: Chart Notes",format:"percent"},judge_quality_followUp:{label:"Quality: Follow-Up",format:"percent"}};function T(e){return k[e]?.label??e.replace(/[_-]+/g," ").replace(/([A-Z])/g," $1").replace(/^./,e=>e.toUpperCase()).trim()}function w(e,t){let a=k[e];return a?.format==="integer"?Math.round(t).toLocaleString():a?.format==="raw"?t.toFixed(2):a?.format==="percent"?(100*t).toFixed(1)+"%":t>1?Math.round(t).toLocaleString():(100*t).toFixed(1)+"%"}function C(e,t){if(!t)return null;if(t in e.metrics)return e.metrics[t];if("f2"===t&&"precision"in e.metrics&&"recall"in e.metrics){var a,s;return(a=e.metrics.precision)+(s=e.metrics.recall)===0?0:5*a*s/(4*a+s)}return null}function I(e,t){var a,s;let r=e.evalConfig?.dataset??"unknown dataset",n="number"==typeof e.evalConfig?.evalVersion?String(e.evalConfig.evalVersion):"unknown",l=(a=e,s=t,a.evalConfig?.judge?.rubric??s??"unknown eval"),i=`Eval v${n} \xb7 ${T(l)}`;return{key:`${r}::${n}::${l}`,dataset:r,datasetLabel:R(r),evalVersion:n,evalMetric:l,evalLabel:i}}function R(e){return e.replace(/--/g," ").replace(/[-_]+/g," ").replace(/\bgt\b/gi,"Ground Truth").replace(/\bv(\d+)\b/gi,"v$1").replace(/\b\w/g,e=>e.toUpperCase()).trim()}function P({title:e,children:t,source:a,syncLabel:r,onRefresh:n,refreshing:l}){return(0,s.jsxs)("section",{className:d().surfaceBanner,children:[(0,s.jsxs)("div",{className:d().surfaceBannerText,children:[(0,s.jsxs)("div",{className:d().surfaceBannerTitle,children:[(0,s.jsx)("span",{children:e}),a&&(0,s.jsx)(u,{source:a})]}),(0,s.jsx)("div",{className:d().surfaceBannerCopy,children:t})]}),(null!=r||null!=n)&&(0,s.jsx)(L,{label:r,onRefresh:n,refreshing:l})]})}function L({label:e,onRefresh:t,refreshing:a}){return(0,s.jsxs)("div",{className:d().syncStatus,children:[null!=e&&(0,s.jsx)("span",{className:d().syncStatusLabel,children:e}),t&&(0,s.jsx)("button",{className:d().iconButton,onClick:t,title:"Refresh","aria-label":"Refresh","aria-busy":a?"true":"false",children:(0,s.jsx)("span",{"aria-hidden":"true",children:"↻"})})]})}function E({system:e}){var t;let{runs:a}=y(e.id),n=e.primaryMetric??null,l=(0,r.useMemo)(()=>(function(e,t){let a=new Map;for(let i of e){var s,r,n,l;let e=I(i,t),o=a.get(e.key);o?(o.count++,s=o.itemCount,r=i.totalItems,o.itemCount=null===s?r:null===r?s:Math.max(s,r),n=o.latestAt,l=i.updatedAt,o.latestAt=n?Date.parse(l)>Date.parse(n)?l:n:l):a.set(e.key,{...e,count:1,itemCount:i.totalItems,latestAt:i.updatedAt})}return[...a.values()].sort((e,t)=>(t.latestAt??"").localeCompare(e.latestAt??""))})(a,n),[n,a]);return(0,s.jsxs)("div",{className:d().surface,children:[(0,s.jsx)(P,{title:"Benchmarks",source:"code",syncLabel:"Live updates",children:"Benchmarks come from this system's code and define the dataset and scoring setup used to compare local experiments."}),(0,s.jsxs)("section",{className:d().detailPanel,children:[(0,s.jsxs)("div",{className:d().detailHeader,children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("h2",{className:d().detailTitle,children:"Current benchmark"}),(0,s.jsx)("div",{className:d().detailMeta,children:"This is what the next Kaizen run will use unless a coding agent changes the system file."})]}),(0,s.jsx)(u,{source:"code"})]}),(0,s.jsxs)("div",{className:d().evalDefinitionGrid,children:[(0,s.jsx)(M,{label:"Dataset",value:e.evalDataset?R(e.evalDataset):"Not configured",detail:e.evalDataset}),(0,s.jsx)(M,{label:"Eval version",value:null===e.evalVersion?"Not configured":`v${e.evalVersion}`}),(0,s.jsx)(M,{label:"Primary metric",value:e.primaryMetric?T(e.primaryMetric):"Not configured",detail:e.primaryMetric}),(0,s.jsx)(M,{label:"Style",value:"ground_truth"===(t=e.evalType)?"Ground truth":"llm_judge"===t?"LLM judge":"human"===t?"Human review":"policy"===t?"Policy":"Not configured"})]})]}),(0,s.jsxs)("section",{className:d().evalHistorySection,children:[(0,s.jsxs)("div",{className:d().evalSectionHeader,children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("h2",{className:d().detailTitle,children:"Benchmarks used in experiments"}),(0,s.jsx)("div",{className:d().detailMeta,children:"Each row is a separate comparison group."})]}),(0,s.jsx)(u,{source:"local"})]}),0===l.length?(0,s.jsx)("div",{className:d().emptyPanel,children:"No benchmarks yet. Run an experiment to create one."}):(0,s.jsxs)("div",{className:d().evalSummaryTable,children:[(0,s.jsxs)("div",{className:d().evalSummaryHeader,children:[(0,s.jsx)("span",{children:"Dataset"}),(0,s.jsx)("span",{children:"Scoring"}),(0,s.jsx)("span",{children:"Runs"}),(0,s.jsx)("span",{children:"Items"}),(0,s.jsx)("span",{children:"Latest"})]}),l.map(e=>(0,s.jsxs)("div",{className:d().evalSummaryRow,children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("span",{className:d().evalSummaryPrimary,children:e.datasetLabel}),(0,s.jsx)("span",{className:d().evalSummaryMeta,children:e.dataset})]}),(0,s.jsxs)("div",{children:[(0,s.jsx)("span",{className:d().evalSummaryPrimary,children:e.evalLabel}),(0,s.jsx)("span",{className:d().evalSummaryMeta,children:T(e.evalMetric)})]}),(0,s.jsx)("span",{children:e.count}),(0,s.jsx)("span",{children:e.itemCount??"?"}),(0,s.jsx)("span",{children:e.latestAt?v(e.latestAt):"-"})]},e.key))]})]})]})}function M({label:e,value:t,detail:a}){return(0,s.jsxs)("div",{className:d().evalDefinitionCell,children:[(0,s.jsx)("span",{className:d().metaLabel,children:e}),(0,s.jsx)("span",{className:d().metaValue,children:t}),a&&(0,s.jsx)("code",{className:d().evalDefinitionCode,children:a})]})}Object.keys(k);var A=a(7433);function $({label:e,onClick:t}){return(0,s.jsxs)("button",{className:d().backButton,onClick:t,type:"button",children:[(0,s.jsx)("span",{"aria-hidden":"true",children:"←"}),e]})}function B({traceId:e,systemId:t,datasets:a,title:n="Datasets this trace belongs to"}){var l,i,o;let[c,u]=(0,r.useState)([]),[m,p]=(0,r.useState)([]),[_,h]=(0,r.useState)(!1),[f,x]=(0,r.useState)(!1),[g,j]=(0,r.useState)(!1),[b,y]=(0,r.useState)(!1),[v,N]=(0,r.useState)(null),[S,k]=(0,r.useState)(null),T=a??c,w=(0,r.useRef)(T);w.current=T;let C=(0,r.useMemo)(()=>T.map(e=>e.name).join("\0"),[T]),I=(0,r.useMemo)(()=>[e],[e]),R=(0,r.useCallback)(async()=>{if(a)return a;h(!0);try{let e=await fetch(`/api/langfuse-datasets?systemId=${encodeURIComponent(t)}`),a=G(await e.json());if(!e.ok)throw Error(a.error??`HTTP ${e.status}`);let s=a.data??[];return u(s),s}finally{h(!1)}},[a,t]),P=(0,r.useCallback)(async(a=w.current)=>{x(!0);try{let s=await K(e,a,t);p(s)}finally{x(!1)}},[t,e]);(0,r.useEffect)(()=>{let e=!1;if(!a)return h(!0),fetch(`/api/langfuse-datasets?systemId=${encodeURIComponent(t)}`).then(async t=>{let a=G(await t.json());if(!t.ok)throw Error(a.error??`HTTP ${t.status}`);e||u(a.data??[])}).catch(t=>{e||N(t instanceof Error?t.message:String(t))}).finally(()=>{e||h(!1)}),()=>{e=!0}},[a,t]),(0,r.useEffect)(()=>{let a=!1;return x(!0),K(e,T,t).then(e=>{a||p(e)}).finally(()=>{a||x(!1)}),()=>{a=!0}},[e,t,C,T]),(0,r.useEffect)(()=>{k(null)},[e]);let L=(0,r.useCallback)(()=>{j(!0),N(null)},[]),E=(0,r.useCallback)(()=>{j(!1)},[]),M=(0,r.useCallback)(async(a,s)=>{y(!0),N(null);try{let r=await z(a[0]??e,s,t);k({datasetName:s,itemId:r.id}),j(!1);let n=await R();return await P(n),!0}catch(t){let e=t instanceof Error?t.message:String(t);return N(e),{error:e,added:[]}}finally{y(!1)}},[R,P,t,e]),A=(0,r.useCallback)(async a=>{y(!0),N(null);try{let s=await fetch(`/api/langfuse-dataset?dataset=${encodeURIComponent(a)}&systemId=${encodeURIComponent(t)}`),r=Y(await s.json());if(!s.ok)throw Error(r.error??`Failed to load dataset items: HTTP ${s.status}`);let n=(r.data??[]).filter(Z).find(t=>J(t)===e);if(n){let e=await fetch("/api/langfuse-dataset-mutation",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"delete-item",itemId:n.id})});if(!e.ok){let t=await e.json().catch(()=>({}));throw Error(Q(t.error)??`Failed to delete item: HTTP ${e.status}`)}p(e=>e.filter(e=>e!==a)),k(e=>e?.datasetName===a?null:e)}}catch(e){N(e instanceof Error?e.message:String(e))}finally{y(!1)}},[t,e]),$=(0,r.useCallback)(e=>O(t,e),[t]);return(0,s.jsxs)("div",{className:d().traceDatasetControls,children:[v&&(0,s.jsx)("div",{className:d().errorPanel,children:v}),(0,s.jsx)(D,{title:n,loading:f||_,memberDatasets:m,mutating:b,onRemove:A,datasetHref:$,action:(0,s.jsxs)("div",{className:d().membershipActions,children:[(0,s.jsx)("button",{className:d().primaryButton,disabled:_||b,onClick:L,type:"button",children:"Add to dataset"}),S?(0,s.jsx)("a",{className:d().secondaryButton,href:(l=t,i=S.datasetName,o=S.itemId,`${O(l,i)}/items/${encodeURIComponent(o)}`),children:"Open item"}):null]})}),g&&(0,s.jsx)(F,{datasets:T,traceIds:I,mutating:b,error:v,onAdd:M,onClose:E})]})}function D({title:e,loading:t,memberDatasets:a,mutating:r=!1,onRemove:n,datasetHref:l,action:i}){let o=1===a.length?"1 linked dataset":`${a.length} linked datasets`,c=null!=i&&!1!==i,u=c?`${d().membershipPanel} ${d().membershipPanelWithAction}`:d().membershipPanel;return(0,s.jsxs)("section",{className:u,"aria-label":e,children:[(0,s.jsx)("div",{className:d().membershipHeader,children:(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:d().membershipTitle,children:e}),(0,s.jsx)("div",{className:d().membershipMeta,children:t?"Checking memberships...":o})]})}),(0,s.jsx)("div",{className:d().membershipContent,children:t?(0,s.jsx)("div",{className:d().membershipEmpty,children:"Loading..."}):a.length>0?(0,s.jsx)("div",{className:d().membershipList,children:a.map(e=>(0,s.jsx)(H,{name:e,mutating:r,onRemove:n,href:l?.(e)},e))}):(0,s.jsx)("div",{className:d().membershipEmpty,children:"Not in any dataset"})}),c?(0,s.jsx)("div",{className:d().membershipAction,children:i}):null]})}function H({name:e,mutating:t,onRemove:a,href:n}){let l=(0,r.useCallback)(()=>{a&&a(e)},[e,a]);return(0,s.jsxs)("span",{className:d().membershipPill,children:[n?(0,s.jsx)("a",{className:d().membershipPillLink,href:n,children:e}):(0,s.jsx)("span",{className:d().membershipPillText,children:e}),a&&(0,s.jsx)("button",{className:d().membershipRemoveButton,disabled:t,onClick:l,title:`Remove from ${e}`,"aria-label":`Remove from ${e}`,type:"button",children:"\xd7"})]})}function O(e,t){return`/${encodeURIComponent(e)}/data/datasets/${encodeURIComponent(t)}`}function F({datasets:e,traceIds:t,mutating:a,error:n,onAdd:l,onClose:i}){let[o,c]=(0,r.useState)(e[0]?.name??"");(0,r.useEffect)(()=>{e.some(e=>e.name===o)||c(e[0]?.name??"")},[e,o]);let u=(0,r.useCallback)(e=>{c(e)},[]),m=(0,r.useCallback)(()=>void l(t,o),[l,t,o]);return(0,s.jsxs)(U,{onClose:i,children:[(0,s.jsxs)("h3",{className:d().modalTitle,children:["Add ",t.length," trace",1===t.length?"":"s"," to dataset"]}),n&&(0,s.jsx)("div",{className:d().errorPanel,children:n}),(0,s.jsxs)("div",{className:d().formRow,children:[(0,s.jsx)("label",{className:d().formLabel,htmlFor:"trace-add-dataset-select",children:"Dataset"}),(0,s.jsx)(V,{id:"trace-add-dataset-select",datasets:e,value:o,onChange:u})]}),(0,s.jsxs)("div",{className:d().modalActions,children:[(0,s.jsx)("button",{className:d().secondaryButton,onClick:i,children:"Cancel"}),(0,s.jsx)("button",{className:d().primaryButton,disabled:!o||a,onClick:m,children:a?"Adding...":"Add to dataset"})]})]})}function V({id:e,datasets:t,value:a,onChange:n}){let l=(0,r.useMemo)(()=>t.map(e=>({value:e.name,label:e.name})),[t]);return(0,s.jsx)(h,{id:e,options:l,value:a,placeholder:"No datasets available",disabled:0===t.length,onChange:n})}function U({onClose:e,children:t}){return(0,s.jsx)("div",{className:d().modalOverlay,onClick:e,children:(0,s.jsx)("div",{className:d().modalContent,onClick:et,children:t})})}async function z(e,t,a){let s=await fetch("/api/langfuse-dataset-item",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"add-from-trace",datasetName:t,source:e,expectedOutput:void 0,notes:"",systemId:a})}),r=await s.json();if(!s.ok)throw Error(Q(X(r)?r.error:void 0)??`HTTP ${s.status}`);let n=q(X(r)?r.data:void 0);if(!n)throw Error("Langfuse returned an invalid dataset item.");return n}async function K(e,t,a){return(await Promise.allSettled(t.map(async t=>{let s=await fetch(`/api/langfuse-dataset?dataset=${encodeURIComponent(t.name)}&systemId=${encodeURIComponent(a)}`);return(Y(await s.json()).data??[]).filter(Z).some(t=>J(t)===e)?t.name:null}))).filter(e=>"fulfilled"===e.status&&null!==e.value).map(e=>e.value)}function G(e){return X(e)?{data:Array.isArray(e.data)?e.data.map(W).filter(ee):void 0,error:Q(e.error)??void 0}:{}}function Y(e){return X(e)?{data:Array.isArray(e.data)?e.data.map(q).filter(ee):void 0,error:Q(e.error)??void 0}:{}}function W(e){return X(e)&&"string"==typeof e.name?{id:Q(e.id)??void 0,name:e.name,description:Q(e.description),metadata:X(e.metadata)?e.metadata:null,createdAt:Q(e.createdAt)??void 0,updatedAt:Q(e.updatedAt)??void 0}:null}function q(e){return X(e)&&"string"==typeof e.id?{id:e.id,status:Q(e.status)??void 0,sourceTraceId:"string"==typeof e.sourceTraceId||null===e.sourceTraceId?e.sourceTraceId:void 0,input:e.input,expectedOutput:e.expectedOutput,metadata:X(e.metadata)?e.metadata:null,createdAt:Q(e.createdAt)??void 0,updatedAt:Q(e.updatedAt)??void 0}:null}function J(e){if(!e)return null;if("string"==typeof e.sourceTraceId&&e.sourceTraceId)return e.sourceTraceId;let t=e.metadata,a=t?.sourceTraceId??t?.traceId;return"string"==typeof a&&a?a:null}function Z(e){return e.status?.toUpperCase()!=="ARCHIVED"}function Q(e){return"string"==typeof e&&e.trim()?e.trim():null}function X(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function ee(e){return null!==e}function et(e){e.stopPropagation()}let ea=new Map;function es(e,t,s="trace"){let n=`${s}:${e}`,[l,i]=(0,r.useState)(()=>{if(!t)return{Component:null,loading:!1,error:null};let e=ea.get(n);return e?{Component:e,loading:!1,error:null}:{Component:null,loading:!0,error:null}}),o=(0,r.useRef)(n);if(o.current!==n)if(o.current=n,t){let e=ea.get(n);e?i({Component:e,loading:!1,error:null}):i({Component:null,loading:!0,error:null})}else i({Component:null,loading:!1,error:null});let d=(0,r.useRef)(e);d.current=e;let c=(0,r.useRef)(n);c.current=n;let u=(0,r.useCallback)(async()=>{if(!t)return void i({Component:null,loading:!1,error:null});let r=ea.get(n);if(r)return void i({Component:r,loading:!1,error:null});i(e=>({...e,loading:!0,error:null}));try{let t=await fetch(`/api/trace-renderer?systemId=${encodeURIComponent(e)}&surface=${encodeURIComponent(s)}`);if(!t.ok){let a=await t.json().catch(()=>({})),s="string"==typeof a.error?a.error:`HTTP ${t.status}`;d.current===e&&c.current===n&&i({Component:null,loading:!1,error:s});return}let r=await t.text(),l=function(e){let t=e.replace(/import\s*\{([^}]*)\}\s*from\s*["']react["']\s*;?/g,(e,t)=>`const {${er(t)}} = __kaizenReact;`).replace(/import\s+React\s*(?:,\s*\{([^}]*)\})?\s*from\s*["']react["']\s*;?/g,(e,t)=>{let a="const React = __kaizenReact;";return t?`${a}
2
+ const {${er(t)}} = __kaizenReact;`:a}).replace(/import\s*\*\s*as\s+(\w+)\s+from\s*["']react["']\s*;?/g,"const $1 = __kaizenReact;").replace(/import\s*\{([^}]*)\}\s*from\s*["']react\/jsx-runtime["']\s*;?/g,(e,t)=>`const {${er(t)}} = __kaizenJsxRuntime;`).replace(/export\s*\{[^}]*\}\s*from\s*["'][^"']*["']\s*;?/g,"").replace(/export\s*\{([^}]*)\}\s*;?/g,(e,t)=>{let a=t.match(/(\w+)\s+as\s+default/);return a?`__exports.default = ${a[1]};`:""}).replace(/export\s*default\s+(async\s+)?function\s+(\w+)/g,(e,t,a)=>`__exports.default = ${a}; ${t??""}function ${a}`).replace(/export\s*default\s+/g,"__exports.default = ").replace(/export\s+(function|const|let|var|class)\s/g,"$1 "),s=a(4540),r=a(144),n={};if(Function("__kaizenReact","__kaizenJsxRuntime","__exports",`${t}
3
+ if (typeof TraceView !== 'undefined' && !__exports.default) __exports.default = TraceView;
4
+ if (typeof DatasetItemView !== 'undefined' && !__exports.default) __exports.default = DatasetItemView;
5
+ if (typeof TraceRenderer !== 'undefined' && !__exports.default) __exports.default = TraceRenderer;
6
+ `)(s,r,n),"function"!=typeof n.default)throw Error("Custom trace view must export a default React component");return n.default}(r);d.current===e&&c.current===n&&(ea.set(n,l),i({Component:l,loading:!1,error:null}))}catch(t){d.current===e&&c.current===n&&i({Component:null,loading:!1,error:t instanceof Error?t.message:String(t)})}},[n,t,s,e]);return(0,r.useEffect)(()=>{u()},[u]),(0,r.useEffect)(()=>{if(!t)return;let e=()=>{ea.delete(n),u()};return window.addEventListener("focus",e),()=>window.removeEventListener("focus",e)},[n,t,u]),l}function er(e){return e.replace(/(\w+)\s+as\s+(\w+)/g,"$1: $2")}function en({trace:e,systemId:t,hasCustomRenderer:a,datasetName:n=null,runId:l=null,surface:i,loading:o,error:c}){let{Component:u,loading:m,error:p}=es(t,a,"trace"),_=(0,r.useMemo)(()=>({systemId:t,surface:i??"trace",datasetName:n,runId:l}),[n,l,i,t]),h=(0,r.useMemo)(()=>ei({trace:e}),[e]);return o?(0,s.jsx)("div",{className:d().loadingPanel,children:"Loading trace..."}):c?(0,s.jsx)("div",{className:d().errorPanel,children:c}):e?m?(0,s.jsx)("div",{className:d().loadingPanel,children:"Loading custom renderer..."}):p?(0,s.jsxs)("div",{children:[(0,s.jsxs)("div",{className:d().errorPanel,children:["Custom renderer error: ",p]}),(0,s.jsx)(em,{trace:e})]}):u?(0,s.jsx)(e_,{fallback:(0,s.jsx)(em,{trace:e}),children:(0,s.jsx)(u,{trace:e,context:_,actions:h})},e.id??e.name??""):(0,s.jsx)(em,{trace:e}):(0,s.jsx)("div",{className:d().mutedText,children:"No source trace linked."})}function el({trace:e,datasetItem:t,systemId:a,hasCustomRenderer:n,datasetName:l,loading:i,error:o,sourceTraceError:c}){let{Component:u,loading:m,error:p}=es(a,n,"dataset-item"),_=(0,r.useMemo)(()=>({systemId:a,surface:"dataset-item",datasetName:l,runId:null}),[l,a]),h=(0,r.useMemo)(()=>(function({trace:e,datasetItem:t,datasetName:a}){return{...ei({trace:e}),updateDatasetItem:async e=>ed({action:"update-dataset-item",datasetName:e.datasetName??a,itemId:e.itemId??t?.id,input:e.input,expectedOutput:e.expectedOutput,metadata:e.metadata,sourceTraceId:e.sourceTraceId,status:e.status}),createDatasetRunItem:async a=>ed({action:"create-dataset-run-item",datasetItemId:a.datasetItemId??t?.id,traceId:a.traceId??ec(e?.id),runName:a.runName,runDescription:a.runDescription,metadata:a.metadata})}})({trace:e,datasetItem:t,datasetName:l}),[t,l,e]);if(i)return(0,s.jsx)("div",{className:d().loadingPanel,children:"Loading dataset item..."});if(o)return(0,s.jsx)("div",{className:d().errorPanel,children:o});if(!t)return(0,s.jsx)("div",{className:d().mutedText,children:"No dataset item selected."});let f=c?(0,s.jsxs)("div",{className:d().errorPanel,children:["Source trace could not be loaded: ",c]}):null;return m?(0,s.jsxs)(s.Fragment,{children:[f,(0,s.jsx)("div",{className:d().loadingPanel,children:"Loading custom dataset view..."})]}):p?(0,s.jsxs)("div",{children:[f,(0,s.jsxs)("div",{className:d().errorPanel,children:["Custom dataset view error: ",p]}),(0,s.jsx)(eo,{trace:e,datasetItem:t})]}):u?(0,s.jsxs)(s.Fragment,{children:[f,(0,s.jsx)(e_,{fallback:(0,s.jsx)(eo,{trace:e,datasetItem:t}),children:(0,s.jsx)(u,{trace:e,datasetItem:t,context:_,actions:h})},t.id)]}):(0,s.jsxs)(s.Fragment,{children:[f,(0,s.jsx)(eo,{trace:e,datasetItem:t})]})}function ei({trace:e}){return{createScore:async t=>ed({action:"create-score",traceId:t.traceId??ec(e?.id),name:t.name,value:t.value,comment:t.comment,metadata:t.metadata})}}function eo({trace:e,datasetItem:t}){return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:d().detailGrid,children:[(0,s.jsx)(ep,{title:"Input",value:t.input}),(0,s.jsx)(ep,{title:"Expected output",value:t.expectedOutput})]}),(0,s.jsx)(ep,{title:"Metadata",value:t.metadata}),e?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("div",{className:d().sectionTitle,children:"Source trace"}),(0,s.jsx)(em,{trace:e})]}):(0,s.jsx)("div",{className:d().mutedText,children:"No source trace linked."})]})}async function ed(e){let t=await fetch("/api/langfuse-action",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),a=await t.json().catch(()=>null);if(!t.ok)throw Error(eu(a)&&"string"==typeof a.error?a.error:`HTTP ${t.status}`);return eu(a)&&"data"in a?a.data:a}function ec(e){return"string"==typeof e&&e?e:void 0}function eu(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function em({trace:e}){return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:d().traceHeader,children:[(0,s.jsx)("span",{className:d().traceName,children:e.name??e.id}),e.timestamp&&(0,s.jsx)("span",{className:d().detailMeta,children:e.timestamp})]}),e.tags&&e.tags.length>0&&(0,s.jsx)("div",{className:d().tagRow,children:e.tags.map(e=>(0,s.jsx)("span",{className:d().tagPill,children:e},e))}),(0,s.jsx)(ep,{title:"Trace metadata",value:e.metadata}),(0,s.jsxs)("div",{className:d().detailGrid,children:[(0,s.jsx)(ep,{title:"Trace input",value:e.input}),(0,s.jsx)(ep,{title:"Trace output",value:e.output})]})]})}function ep({title:e,value:t}){var a;return(0,s.jsxs)("div",{className:d().jsonBlock,children:[(0,s.jsx)("div",{className:d().jsonTitle,children:e}),(0,s.jsx)("pre",{className:d().jsonPre,children:null==(a=t)?"(empty)":"string"==typeof a?a:JSON.stringify(a,null,2)})]})}class e_ extends r.Component{static getDerivedStateFromError(e){return{error:e}}render(){return this.state.error?(0,s.jsxs)("div",{children:[(0,s.jsxs)("div",{className:d().errorPanel,children:["Custom renderer crashed: ",this.state.error.message]}),this.props.fallback]}):this.props.children}constructor(...e){super(...e),this.state={error:null}}}function eh(e){let t=e.indexOf("?"),a=e.indexOf("#"),s=-1===t?-1===a?void 0:a:-1===a?t:Math.min(t,a);return e.slice(0,s).split("/").filter(Boolean).map(e=>(function(e){try{return decodeURIComponent(e)}catch{return e}})(e))}function ef(e){return e?.trim()||null}function ex(e){return encodeURIComponent(e)}function eg({status:e,currentValues:t}){let a=[e.requiredEnvVars?.length?{title:"Required",values:e.requiredEnvVars}:null,e.missingEnvVars?.length?{title:"Missing",values:e.missingEnvVars}:null,e.optionalEnvVars?.length?{title:"Optional",values:e.optionalEnvVars}:null,e.expectedEnvFile?{title:"Put values here",values:[e.expectedEnvFile]}:null,t?.length?{title:"Current query",values:t}:null].filter(eb);return(0,s.jsxs)("div",{className:d().setupBanner,children:[(0,s.jsxs)("div",{className:d().setupHeader,children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:d().setupTitle,children:e.message}),(0,s.jsx)("div",{className:d().setupCopy,children:e.remediation})]}),(0,s.jsx)("span",{className:d().setupState,children:e.state})]}),a.length>0&&(0,s.jsx)("div",{className:d().setupGrid,children:a.map(e=>(0,s.jsx)(ej,{title:e.title,values:e.values},`${e.title}:${e.values.join(",")}`))}),e.lookup&&e.lookup.length>0&&(0,s.jsxs)("div",{className:d().setupLookup,children:[(0,s.jsx)("span",{className:d().setupLookupLabel,children:"Kaizen checks"}),e.lookup.join(" -> ")]}),e.detail&&(0,s.jsx)("div",{className:d().setupDetail,children:e.detail})]})}function ej({title:e,values:t}){return(0,s.jsxs)("div",{className:d().setupBlock,children:[(0,s.jsx)("span",{className:d().setupBlockTitle,children:e}),t.map(e=>(0,s.jsx)("code",{className:d().setupCode,children:e},e))]})}function eb(e){return null!==e}function ey(e=new Date){return new Intl.DateTimeFormat(void 0,{hour:"numeric",minute:"2-digit"}).format(e)}function ev(e,t){var a;let s=(a=t)%6e4==0?`${a/6e4}m`:a%1e3==0?`${a/1e3}s`:`${a}ms`;return e?`Updated ${e} \xb7 Every ${s}`:`Every ${s}`}let eN={shallow:!0,scroll:!1},eS={width:40},ek={width:32},eT={fontWeight:500},ew={color:"rgba(255,255,255,0.5)"},eC={fontSize:"0.75rem"},eI={padding:"0.2rem 0.5rem",fontSize:"0.75rem",minWidth:"unset"},eR={display:"flex",gap:"0.25rem",flexWrap:"wrap"},eP={opacity:.6},eL={display:"flex",gap:"0.5rem"},eE=e=>e.stopPropagation();function eM({system:e}){let t=(0,A.useRouter)(),[a,n]=(0,r.useState)("datasets"),[l,i]=(0,r.useState)([]),[o,c]=(0,r.useState)(!1),[u,m]=(0,r.useState)(null),[p,_]=(0,r.useState)(!1),[h,f]=(0,r.useState)(null),[x,g]=(0,r.useState)(null),[j,b]=(0,r.useState)("list"),[y,v]=(0,r.useState)(null),[N,S]=(0,r.useState)([]),[k,T]=(0,r.useState)(!1),[w,C]=(0,r.useState)(null),[I,R]=(0,r.useState)(null),[L,E]=(0,r.useState)("list"),[M,$]=(0,r.useState)([]),[B,D]=(0,r.useState)(!1),[H,O]=(0,r.useState)(null),[F,V]=(0,r.useState)(null),[U,z]=(0,r.useState)(""),[K,G]=(0,r.useState)(1),[Y,W]=(0,r.useState)(1),[q,Q]=(0,r.useState)(new Set),[X,ee]=(0,r.useState)(new Set),[et,ea]=(0,r.useState)(!1),[es,er]=(0,r.useState)(null),[en,el]=(0,r.useState)(null),[ei,eo]=(0,r.useState)(!1),[ed,ec]=(0,r.useState)(null),[eu,em]=(0,r.useState)(!1),[ep,e_]=(0,r.useState)(null),ex=(0,r.useRef)(e.id);ex.current=e.id;let ej=(0,r.useRef)(""),eb=(0,r.useRef)(null),eS=(0,r.useMemo)(()=>t.isReady?function(e){let t=function(e){let t=e.indexOf("?");if(-1===t)return new URLSearchParams;let a=e.indexOf("#",t);return new URLSearchParams(e.slice(t+1,-1===a?void 0:a))}(e),a=eh(e),[s,r,n,l]="data"===a[1]?a.slice(2):[],i=t.get("tags")??"",o=function(e){if(!e)return null;let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:null}(t.get("page"))??1;if("traces"===s){let e=ef(r??null);return{view:"traces",datasetSubView:"list",selectedDatasetName:null,selectedItemId:null,tracesSubView:e?"detail":"list",selectedTraceId:e,tracesPage:o,tagFilter:i}}let d="datasets"===s?ef(r??null):null,c=d&&"items"===n?ef(l??null):null;return{view:"datasets",datasetSubView:d?c?"item-detail":"detail":"list",selectedDatasetName:d,selectedItemId:d?c:null,tracesSubView:"list",selectedTraceId:null,tracesPage:1,tagFilter:""}}(t.asPath):null,[t.asPath,t.isReady]),ek=(0,r.useCallback)(a=>{t.push(e1(e.id,a),void 0,eN)},[t,e.id]),eT=(0,r.useCallback)(async()=>{let t=e.id;c(!0);try{var a;let e=await fetch(`/api/langfuse-datasets?systemId=${encodeURIComponent(t)}`),s=(a=await e.json(),e8(a)?{data:Array.isArray(a.data)?a.data.map(e6).filter(te):void 0,connection:e4(a.connection),error:ta(a.error)}:{});if(ex.current===t&&f(s.connection??null),!e.ok)throw Error(s.error??`HTTP ${e.status}`);if(ex.current!==t)return;i(s.data??[]),m(null),g(ey())}catch(e){if(ex.current!==t)return;m(e instanceof Error?e.message:String(e))}finally{ex.current===t&&(_(!0),c(!1))}},[e.id]),ew=(0,r.useCallback)(async t=>{let a=e.id;T(!0);try{let e=await fetch(`/api/langfuse-dataset?dataset=${encodeURIComponent(t)}&systemId=${encodeURIComponent(a)}`),s=e2(await e.json());if(ex.current===a&&f(s.connection??null),!e.ok)throw Error(s.error??`HTTP ${e.status}`);if(ex.current!==a)return;let r=(s.data??[]).filter(Z);S(r),C(null),g(ey())}catch(e){if(ex.current!==a)return;C(e instanceof Error?e.message:String(e))}finally{ex.current===a&&T(!1)}},[e.id]),eC=(0,r.useCallback)(async(t=1,a)=>{let s=e.id;D(!0);try{let e=new URLSearchParams;if(e.set("page",String(t)),e.set("limit","50"),e.set("systemId",s),a&&a.trim())for(let t of a.split(",").map(e=>e.trim()))t&&e.append("tags",t);let r=await fetch(`/api/langfuse-traces?${e.toString()}`),n=function(e){if(!e8(e))return{};let t=Array.isArray(e.data)?e.data.map(e7).filter(te):void 0,a=e8(e.meta)?e.meta:void 0;return{data:t,meta:a?{page:"number"==typeof a.page?a.page:void 0,totalPages:"number"==typeof a.totalPages?a.totalPages:void 0,totalItems:"number"==typeof a.totalItems?a.totalItems:void 0}:void 0,connection:e4(e.connection),error:ta(e.error)}}(await r.json());if(ex.current===s&&f(n.connection??null),!r.ok)throw Error(n.error??`HTTP ${r.status}`);if(ex.current!==s)return;$(n.data??[]),W(n.meta?.totalPages??1),O(null),g(ey())}catch(e){if(ex.current!==s)return;O(e instanceof Error?e.message:String(e))}finally{ex.current===s&&D(!1)}},[e.id]);(0,r.useEffect)(()=>{i([]),_(!1),m(null),f(null),g(null),S([]),$([]),O(null),W(1),Q(new Set),ee(new Set),eb.current=null,eT();let e=setInterval(()=>void eT(),6e4);return()=>clearInterval(e)},[eT,e.id]),(0,r.useEffect)(()=>{if(!eS)return;let e=eb.current,t=eS.selectedDatasetName!==e?.selectedDatasetName,a=eS.view!==e?.view||eS.tracesPage!==e?.tracesPage||eS.tagFilter!==e?.tagFilter;("datasets"!==eS.view||t)&&S([]),n(eS.view),b(eS.datasetSubView),v(eS.selectedDatasetName),R(eS.selectedItemId),E(eS.tracesSubView),V(eS.selectedTraceId),G(eS.tracesPage),z(eS.tagFilter),ej.current=eS.tagFilter,a&&Q(new Set),(eS.view!==e?.view||t)&&ee(new Set),e_(null),eb.current=eS,"traces"===eS.view&&"list"===eS.tracesSubView&&eC(eS.tracesPage,eS.tagFilter)},[eS,eC]),(0,r.useEffect)(()=>{if(!y||"list"===j)return;ew(y);let e=setInterval(()=>void ew(y),15e3);return()=>clearInterval(e)},[ew,y,j]);let eI=(0,r.useCallback)(async e=>{em(!0),e_(null);try{let t=await fetch("/api/langfuse-dataset-mutation",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"create",name:e})}),a=await t.json();if(!t.ok)throw Error(a.error??`HTTP ${t.status}`);await eT(),ea(!1)}catch(e){e_(e instanceof Error?e.message:String(e))}finally{em(!1)}},[eT]),eR=(0,r.useCallback)(async e=>{em(!0),e_(null);try{let t=await fetch("/api/langfuse-dataset-mutation",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"delete",name:e})}),a=await t.json();if(!t.ok)throw Error(a.error??`HTTP ${t.status}`);await eT(),er(null),y===e&&ek({view:"datasets"})}catch(e){e_(e instanceof Error?e.message:String(e))}finally{em(!1)}},[eT,ek,y]),eP=(0,r.useCallback)(async(t,a)=>{if(l.some(e=>e.name===a))return void e_("A dataset with this name already exists.");em(!0),e_(null);try{let r=await fetch(`/api/langfuse-dataset?dataset=${encodeURIComponent(t)}&systemId=${encodeURIComponent(e.id)}`),n=e2(await r.json());if(!r.ok)throw Error(n.error??`Failed to fetch items: HTTP ${r.status}`);let l=n.data??[],i=await fetch("/api/langfuse-dataset-mutation",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"create",name:a})}),o=await i.json();if(!i.ok)throw Error(o.error??`HTTP ${i.status}`);for(let t of l){var s;let r=await fetch("/api/langfuse-dataset-item",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"copy-item",datasetName:a,input:t.input,expectedOutput:t.expectedOutput,metadata:t.metadata,sourceTraceId:J(t),status:t.status??null,notes:(s=t.metadata)?e8(s.kaizen)&&"string"==typeof s.kaizen.notes?s.kaizen.notes:"string"==typeof s.notes?s.notes:"":"",systemId:e.id})});if(!r.ok){let e=await r.json();throw Error(e.error??`Failed to copy item: HTTP ${r.status}`)}}let d=await fetch("/api/langfuse-dataset-mutation",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"delete",name:t})});if(!d.ok){let e=await d.json();throw Error(e.error??`Failed to delete old dataset: HTTP ${d.status}`)}await eT(),el(null),y===t&&ek({view:"datasets",datasetName:a})}catch(e){e_(e instanceof Error?e.message:String(e))}finally{em(!1)}},[l,eT,ek,y,e.id]),eL=(0,r.useCallback)(async e=>{em(!0),e_(null);try{for(let t of e){let e=await fetch("/api/langfuse-dataset-mutation",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"delete-item",itemId:t})}),a=await e.json();if(!e.ok)throw Error(a.error??`HTTP ${e.status}`)}y&&await ew(y),ee(new Set)}catch(e){e_(e instanceof Error?e.message:String(e))}finally{em(!1)}},[ew,y]),eE=(0,r.useCallback)(async(t,a)=>{let s=[];try{for(let r of t){let t=await fetch("/api/langfuse-dataset-item",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"add-from-trace",datasetName:a,source:r,expectedOutput:void 0,notes:"",systemId:e.id})}),n=await t.json();if(!t.ok)throw Error(n.error??`HTTP ${t.status}`);s.push(r)}return!0}catch(e){return{error:e instanceof Error?e.message:String(e),added:s}}},[e.id]),eM=(0,r.useCallback)(()=>{"datasets"===a?(eT(),y&&"list"!==j&&ew(y)):eC(K,ej.current)},[a,eT,ew,eC,y,j,K]),e$=(0,r.useCallback)(e=>{ek({view:"datasets",datasetName:e})},[ek]),eD=(0,r.useCallback)(()=>{ek({view:"datasets"})},[ek]),eO=(0,r.useCallback)(e=>{y&&ek({view:"datasets",datasetName:y,itemId:e})},[ek,y]),eV=(0,r.useCallback)(()=>{y?ek({view:"datasets",datasetName:y}):ek({view:"datasets"})},[ek,y]),eU=(0,r.useCallback)(e=>{ek({view:"traces",traceId:e,page:K,tags:ej.current})},[ek,K]),ez=(0,r.useCallback)(()=>{ek({view:"traces",page:K,tags:ej.current})},[ek,K]),eG=(0,r.useCallback)(()=>{ej.current=U,ek({view:"traces",page:1,tags:U})},[ek,U]),eY=(0,r.useCallback)(e=>{ek({view:"traces",page:e,tags:ej.current})},[ek]),eq=(0,r.useCallback)(e=>{Q(t=>{let a=new Set(t);return a.has(e)?a.delete(e):a.add(e),a})},[]),eJ=(0,r.useCallback)((e,t)=>{Q(a=>{let s=new Set(a);for(let a of e)t?s.add(a):s.delete(a);return s})},[]),eZ=(0,r.useCallback)(e=>{ee(t=>{let a=new Set(t);return a.has(e)?a.delete(e):a.add(e),a})},[]),eQ=(0,r.useCallback)(()=>{ek({view:"datasets"})},[ek]),eX=(0,r.useCallback)(()=>{ek({view:"traces",page:K,tags:ej.current})},[ek,K]),e0=(0,r.useCallback)(()=>{ea(!0),e_(null)},[]),e5=(0,r.useCallback)(()=>er(null),[]),e3=(0,r.useCallback)(()=>el(null),[]),e9=(0,r.useCallback)(()=>ec(null),[]),tt=(0,r.useCallback)(async(e,t)=>{em(!0),e_(null);try{let a=await eE(e,t);return!0===a?(Q(new Set),eo(!1)):(a.added.length>0&&Q(e=>{let t=new Set(e);for(let e of a.added)t.delete(e);return t}),e_(a.error)),a}finally{em(!1)}},[eE]),ts=(0,r.useCallback)(()=>{eo(!0),e_(null)},[]),tr=(0,r.useCallback)(()=>eo(!1),[]),tn=(0,r.useCallback)(()=>ea(!1),[]);return(0,s.jsxs)("div",{className:d().surface,children:[(0,s.jsx)(P,{title:"Langfuse data",source:"langfuse",syncLabel:ev(x,15e3),onRefresh:eM,refreshing:o||k||B,children:"Browse Langfuse traces and manage evaluation datasets by reviewing source traces, selecting examples, and adding them to golden sets."}),h&&"connected"!==h.state&&(0,s.jsx)(eg,{status:h}),(0,s.jsxs)("div",{className:d().dataLayout,children:[(0,s.jsxs)("aside",{className:d().dataNav,children:[(0,s.jsx)("button",{className:`${d().dataNavItem} ${"datasets"===a?d().dataNavItemActive:""}`,onClick:eQ,children:"Datasets"}),(0,s.jsx)("button",{className:`${d().dataNavItem} ${"traces"===a?d().dataNavItemActive:""}`,onClick:eX,children:"Traces"})]}),(0,s.jsx)("section",{className:d().dataMain,children:"datasets"===a?"list"===j?(0,s.jsx)(eA,{datasets:l,loading:o&&!p,error:u,mutationError:ep,mutating:eu,showDeleteConfirm:es,showRenameModal:en,showMenuFor:ed,onOpenDataset:e$,onShowCreate:e0,onShowDelete:er,onCloseDelete:e5,onDelete:eR,onShowRename:el,onCloseRename:e3,onRename:eP,onShowMenu:ec,onCloseMenu:e9}):"detail"===j&&y?(0,s.jsx)(eB,{datasetName:y,items:N,loading:k,error:w,mutationError:ep,mutating:eu,selectedItemIds:X,onBack:eD,onOpenItem:eO,onToggleItem:eZ,onRemoveItems:eL}):"item-detail"===j&&y&&I?(0,s.jsx)(eH,{item:N.find(e=>e.id===I)??null,loading:k,systemId:e.id,hasTraceRenderer:!!e.traceRenderer,hasDatasetItemRenderer:!!e.datasetItemRenderer,datasetName:y,datasets:l,onBack:eV}):null:"list"===L?(0,s.jsx)(eF,{traces:M,loading:B,error:H,mutationError:ep,mutating:eu,tagFilter:U,page:K,totalPages:Y,selectedTraceIds:q,datasets:l,showAddToDatasetModal:ei,onTagFilterChange:z,onSearch:eG,onPageChange:eY,onOpenTrace:eU,onToggleTrace:eq,onToggleVisibleTraces:eJ,onShowAddToDataset:ts,onCloseAddToDataset:tr,onAddToDataset:tt}):F?(0,s.jsx)(eK,{traceId:F,systemId:e.id,hasCustomRenderer:!!e.traceRenderer,datasets:l,onBack:ez}):null})]}),et&&(0,s.jsx)(eW,{mutating:eu,error:ep,onCreate:eI,onClose:tn})]})}function eA({datasets:e,loading:t,error:a,mutationError:n,showMenuFor:l,showDeleteConfirm:i,showRenameModal:o,mutating:c,onOpenDataset:u,onShowCreate:m,onShowDelete:p,onCloseDelete:_,onDelete:h,onShowRename:f,onCloseRename:x,onRename:g,onShowMenu:j,onCloseMenu:b}){let y=(0,r.useCallback)(()=>{l&&(b(),f(l))},[l,b,f]),v=(0,r.useCallback)(()=>{l&&(b(),p(l))},[l,b,p]),N=(0,r.useCallback)(()=>{i&&h(i)},[i,h]),S=(0,r.useCallback)(e=>{o&&g(o,e)},[o,g]);return(0,s.jsxs)("div",{className:d().surface,children:[(0,s.jsxs)("div",{className:d().surfaceToolbar,children:[(0,s.jsx)("div",{className:d().surfaceTitle,children:"Datasets"}),(0,s.jsx)("button",{className:d().primaryButton,onClick:m,children:"+ New dataset"})]}),a&&(0,s.jsx)("div",{className:d().errorPanel,children:a}),n&&(0,s.jsx)("div",{className:d().errorPanel,children:n}),t?(0,s.jsx)("div",{className:d().loadingPanel,children:"Loading datasets..."}):0===e.length?(0,s.jsxs)("div",{className:d().emptyPanel,children:[(0,s.jsx)("div",{className:d().emptyPanelTitle,children:"No datasets found"}),(0,s.jsx)("div",{className:d().emptyPanelCopy,children:"Create a dataset to start organizing evaluation data."})]}):(0,s.jsx)("div",{className:`${d().runTracesTableWrap} ${d().datasetsTableWrap}`,children:(0,s.jsxs)("table",{className:d().runTracesTable,children:[(0,s.jsx)("thead",{children:(0,s.jsxs)("tr",{children:[(0,s.jsx)("th",{children:"Name"}),(0,s.jsx)("th",{children:"Description"}),(0,s.jsx)("th",{children:"Created"}),(0,s.jsx)("th",{children:"Updated"}),(0,s.jsx)("th",{style:eS})]})}),(0,s.jsx)("tbody",{children:e.map((t,a)=>(0,s.jsx)(e$,{dataset:t,menuPlacement:a===e.length-1?"above":"below",showMenuFor:l,onOpenDataset:u,onShowMenu:j,onRename:y,onDelete:v,onCloseMenu:b},t.name))})]})}),i&&(0,s.jsx)(eJ,{title:`Delete \u201C${i}\u201D?`,message:"This will remove all items from this dataset. The empty dataset shell will remain visible in Langfuse and in this list.",confirmLabel:"Delete",mutating:c,error:n,onConfirm:N,onClose:_}),o&&(0,s.jsx)(eq,{currentName:o,mutating:c,error:n,onRename:S,onClose:x})]})}function e$({dataset:e,menuPlacement:t,showMenuFor:a,onOpenDataset:n,onShowMenu:l,onRename:i,onDelete:o,onCloseMenu:c}){let u=(0,r.useCallback)(()=>n(e.name),[n,e.name]),m=(0,r.useCallback)(t=>{t.stopPropagation(),l(a===e.name?null:e.name)},[l,a,e.name]),p=a===e.name;return(0,s.jsxs)("tr",{className:`${d().runTracesTableRowClickable} ${p?d().datasetRowMenuOpen:""}`,onClick:u,children:[(0,s.jsx)("td",{style:eT,children:e.name}),(0,s.jsx)("td",{style:ew,children:e.description||"—"}),(0,s.jsx)("td",{style:eC,children:e.createdAt?e0(e.createdAt):"—"}),(0,s.jsx)("td",{style:eC,children:e.updatedAt?e0(e.updatedAt):"—"}),(0,s.jsx)("td",{className:`${d().datasetActionsCell} ${p?d().datasetActionsCellOpen:""}`,children:(0,s.jsxs)("div",{className:d().datasetMenuAnchor,children:[(0,s.jsx)("button",{className:d().secondaryButton,style:eI,onClick:m,"aria-label":`Actions for ${e.name}`,title:`Actions for ${e.name}`,children:"⋯"}),p&&(0,s.jsx)(eZ,{placement:t,onRename:i,onDelete:o,onClose:c})]})})]})}function eB({datasetName:e,items:t,loading:a,error:n,mutationError:l,mutating:i,selectedItemIds:o,onBack:c,onOpenItem:u,onToggleItem:m,onRemoveItems:p}){let _=(0,r.useCallback)(()=>{p(Array.from(o))},[p,o]);return(0,s.jsxs)("div",{className:d().surface,children:[(0,s.jsx)($,{label:"Datasets",onClick:c}),(0,s.jsxs)("div",{className:d().surfaceToolbar,children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:d().surfaceTitle,children:e}),(0,s.jsxs)("div",{className:d().surfaceSubtitle,children:[t.length," item",1===t.length?"":"s"]})]}),o.size>0&&(0,s.jsx)("div",{style:eL,children:(0,s.jsxs)("button",{className:d().dangerButton,disabled:i,onClick:_,children:["Remove ",o.size," item",1===o.size?"":"s"]})})]}),n&&(0,s.jsx)("div",{className:d().errorPanel,children:n}),l&&(0,s.jsx)("div",{className:d().errorPanel,children:l}),a?(0,s.jsx)("div",{className:d().loadingPanel,children:"Loading items..."}):0===t.length?(0,s.jsxs)("div",{className:d().emptyPanel,children:[(0,s.jsx)("div",{className:d().emptyPanelTitle,children:"No items in dataset"}),(0,s.jsx)("div",{className:d().emptyPanelCopy,children:"Add traces to this dataset from the Traces tab."})]}):(0,s.jsx)("div",{className:d().runTracesTableWrap,children:(0,s.jsxs)("table",{className:d().runTracesTable,children:[(0,s.jsx)("thead",{children:(0,s.jsxs)("tr",{children:[(0,s.jsx)("th",{style:ek}),(0,s.jsx)("th",{children:"Title"}),(0,s.jsx)("th",{children:"Trace"}),(0,s.jsx)("th",{children:"Status"}),(0,s.jsx)("th",{children:"Created"})]})}),(0,s.jsx)("tbody",{children:t.map((e,t)=>(0,s.jsx)(eD,{item:e,index:t,selected:o.has(e.id),onOpenItem:u,onToggleItem:m},e.id))})]})})]})}function eD({item:e,index:t,selected:a,onOpenItem:n,onToggleItem:l}){let i=J(e),o=(0,r.useCallback)(()=>n(e.id),[n,e.id]),c=(0,r.useCallback)(e=>e.stopPropagation(),[]),u=(0,r.useCallback)(()=>l(e.id),[l,e.id]);return(0,s.jsxs)("tr",{className:d().runTracesTableRowClickable,onClick:o,children:[(0,s.jsx)("td",{onClick:c,children:(0,s.jsx)("input",{className:d().checkboxInput,type:"checkbox",checked:a,onChange:u})}),(0,s.jsx)("td",{style:eT,children:eX(e,t)}),(0,s.jsx)("td",{className:d().runTracesTableId,children:i?i.slice(0,12):"—"}),(0,s.jsx)("td",{children:(0,s.jsx)("span",{className:d().tagPill,children:e.status??"ACTIVE"})}),(0,s.jsx)("td",{style:eC,children:e.createdAt?e0(e.createdAt):"—"})]})}function eH({item:e,loading:t,systemId:a,hasTraceRenderer:n,hasDatasetItemRenderer:l,datasetName:i,datasets:o,onBack:c}){let u=e?J(e):null,[m,p]=(0,r.useState)([]),[_,h]=(0,r.useState)(!1),f=(0,r.useRef)(o);f.current=o;let x=(0,r.useMemo)(()=>o.map(e=>e.name).join("\0"),[o]);(0,r.useEffect)(()=>{if(!u)return;let e=!1;return h(!0),K(u,f.current,a).then(t=>{e||(p(t),h(!1))}),()=>{e=!0}},[u,a,x]);let g=(0,r.useMemo)(()=>e?{...e}:null,[e]),j=(0,r.useCallback)(e=>e1(a,{view:"datasets",datasetName:e}),[a]);return e?(0,s.jsxs)("div",{className:d().surface,children:[(0,s.jsx)($,{label:i,onClick:c}),(0,s.jsxs)("div",{className:d().detailHeader,children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("h2",{className:d().detailTitle,children:eX(e,0)}),(0,s.jsx)("div",{className:d().detailMeta,children:e.id})]}),e.status&&(0,s.jsx)("span",{className:d().statusPill,children:e.status})]}),(0,s.jsx)(D,{title:"Datasets",loading:_,memberDatasets:m,datasetHref:j}),l?(0,s.jsx)(eO,{traceId:u,systemId:a,datasetName:i,datasetItem:g}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:d().detailGrid,children:[(0,s.jsx)(eY,{title:"Input",value:e.input}),(0,s.jsx)(eY,{title:"Expected output",value:e.expectedOutput})]}),(0,s.jsx)(eY,{title:"Metadata",value:e.metadata}),(0,s.jsxs)("div",{className:d().traceSection,children:[(0,s.jsx)("div",{className:d().sectionTitle,children:"Source Trace"}),(0,s.jsx)(eG,{traceId:u,systemId:a,hasCustomRenderer:n,compact:!0})]})]})]}):(0,s.jsxs)("div",{className:d().surface,children:[(0,s.jsx)($,{label:i,onClick:c}),t?(0,s.jsx)("div",{className:d().loadingPanel,children:"Loading item..."}):(0,s.jsx)("div",{className:d().emptyPanel,children:(0,s.jsx)("div",{className:d().emptyPanelTitle,children:"Item not found"})})]})}function eO({traceId:e,systemId:t,datasetName:a,datasetItem:n}){let[l,i]=(0,r.useState)(null),[o,d]=(0,r.useState)(null);return(0,r.useEffect)(()=>{if(i(null),d(null),!e)return;let a=!1;return fetch(`/api/langfuse-trace?traceId=${encodeURIComponent(e)}&systemId=${encodeURIComponent(t)}`).then(async e=>{let t=e5(await e.json());if(!e.ok)throw Error(t.error??`HTTP ${e.status}`);a||i(t)}).catch(e=>{a||(i(null),d(e instanceof Error?e.message:String(e)))}),()=>{a=!0}},[t,e]),(0,s.jsx)(el,{trace:l,datasetItem:n,systemId:t,hasCustomRenderer:!0,datasetName:a,loading:!1,error:null,sourceTraceError:o})}function eF({traces:e,loading:t,error:a,mutationError:n,mutating:l,tagFilter:i,page:o,totalPages:c,selectedTraceIds:u,datasets:m,showAddToDatasetModal:p,onTagFilterChange:_,onSearch:h,onPageChange:f,onOpenTrace:x,onToggleTrace:g,onToggleVisibleTraces:j,onShowAddToDataset:b,onCloseAddToDataset:y,onAddToDataset:v}){let N=(0,r.useMemo)(()=>Array.from(u),[u]),S=(0,r.useMemo)(()=>e.map(e=>e.id),[e]),k=(0,r.useMemo)(()=>S.reduce((e,t)=>e+ +!!u.has(t),0),[u,S]),T=S.length>0&&k===S.length,w=k>0&&!T,C=(0,r.useRef)(null);(0,r.useEffect)(()=>{C.current&&(C.current.indeterminate=w)},[w]);let I=(0,r.useCallback)(e=>{_(e.target.value)},[_]),R=(0,r.useCallback)(e=>{"Enter"===e.key&&h()},[h]),P=(0,r.useCallback)(()=>f(o-1),[f,o]),L=(0,r.useCallback)(()=>f(o+1),[f,o]),E=(0,r.useCallback)(e=>{j(S,e.target.checked)},[j,S]);return(0,s.jsxs)("div",{className:d().surface,children:[(0,s.jsxs)("div",{className:d().surfaceToolbar,children:[(0,s.jsxs)("div",{className:d().tracesToolbarSearch,children:[(0,s.jsx)("div",{className:d().surfaceTitle,children:"Traces"}),(0,s.jsx)("input",{className:`${d().textInput} ${d().traceSearchInput}`,placeholder:"Filter by tags (comma-separated)",value:i,onChange:I,onKeyDown:R}),(0,s.jsx)("button",{className:`${d().secondaryButton} ${d().traceSearchButton}`,onClick:h,"aria-label":"Search traces",title:"Search traces",children:(0,s.jsx)(eV,{})})]}),(0,s.jsxs)("div",{className:d().tracesToolbarRight,children:[!t&&e.length>0&&(0,s.jsx)(eU,{page:o,totalPages:c,onPrevious:P,onNext:L,label:"Trace table top pagination",placement:"toolbar"}),u.size>0&&(0,s.jsxs)("button",{className:d().primaryButton,onClick:b,children:["Add ",u.size," trace",1===u.size?"":"s"," to dataset"]})]})]}),a&&(0,s.jsx)("div",{className:d().errorPanel,children:a}),n&&(0,s.jsx)("div",{className:d().errorPanel,children:n}),t?(0,s.jsx)("div",{className:d().loadingPanel,children:"Loading traces..."}):0===e.length?(0,s.jsxs)("div",{className:d().emptyPanel,children:[(0,s.jsx)("div",{className:d().emptyPanelTitle,children:"No traces found"}),(0,s.jsx)("div",{className:d().emptyPanelCopy,children:i?"Try adjusting the tag filter.":"Traces will appear here once they are sent to Langfuse."})]}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("div",{className:d().runTracesTableWrap,children:(0,s.jsxs)("table",{className:d().runTracesTable,children:[(0,s.jsx)("thead",{children:(0,s.jsxs)("tr",{children:[(0,s.jsx)("th",{style:ek,children:(0,s.jsx)("input",{ref:C,className:d().checkboxInput,type:"checkbox",checked:T,onChange:E,"aria-label":"Select all visible traces",title:"Select all visible traces"})}),(0,s.jsx)("th",{children:"Name"}),(0,s.jsx)("th",{children:"ID"}),(0,s.jsx)("th",{children:"Tags"}),(0,s.jsx)("th",{children:"Timestamp"})]})}),(0,s.jsx)("tbody",{children:e.map(e=>(0,s.jsx)(ez,{trace:e,selected:u.has(e.id),onOpenTrace:x,onToggleTrace:g},e.id))})]})}),(0,s.jsx)(eU,{page:o,totalPages:c,onPrevious:P,onNext:L,label:"Trace table bottom pagination"})]}),p&&(0,s.jsx)(F,{datasets:m,traceIds:N,mutating:l,error:n,onAdd:v,onClose:y})]})}function eV(){return(0,s.jsx)("span",{"aria-hidden":"true",className:d().searchIcon})}function eU({page:e,totalPages:t,onPrevious:a,onNext:r,label:n,placement:l="block"}){return(0,s.jsxs)("div",{className:`${d().paginationBar} ${"toolbar"===l?d().paginationBarToolbar:""}`,"aria-label":n,children:[(0,s.jsx)("button",{className:`${d().iconButton} ${d().paginationIconButton}`,disabled:e<=1,onClick:a,"aria-label":"Previous page",title:"Previous page",children:(0,s.jsx)("span",{"aria-hidden":"true",children:"←"})}),(0,s.jsxs)("span",{className:d().paginationLabel,children:["Page ",e," of ",t]}),(0,s.jsx)("button",{className:`${d().iconButton} ${d().paginationIconButton}`,disabled:e>=t,onClick:r,"aria-label":"Next page",title:"Next page",children:(0,s.jsx)("span",{"aria-hidden":"true",children:"→"})})]})}function ez({trace:e,selected:t,onOpenTrace:a,onToggleTrace:n}){let l=(0,r.useCallback)(()=>a(e.id),[a,e.id]),i=(0,r.useCallback)(e=>e.stopPropagation(),[]),o=(0,r.useCallback)(()=>n(e.id),[n,e.id]);return(0,s.jsxs)("tr",{className:d().runTracesTableRowClickable,onClick:l,children:[(0,s.jsx)("td",{onClick:i,children:(0,s.jsx)("input",{className:d().checkboxInput,type:"checkbox",checked:t,onChange:o})}),(0,s.jsx)("td",{style:eT,children:e.name||"Untitled"}),(0,s.jsx)("td",{className:d().runTracesTableId,children:e.id.slice(0,12)}),(0,s.jsx)("td",{children:e.tags&&e.tags.length>0?(0,s.jsxs)("div",{style:eR,children:[e.tags.slice(0,3).map(e=>(0,s.jsx)("span",{className:d().tagPill,children:e},e)),e.tags.length>3&&(0,s.jsxs)("span",{className:d().tagPill,style:eP,children:["+",e.tags.length-3]})]}):"—"}),(0,s.jsx)("td",{style:eC,children:e.timestamp?e0(e.timestamp):"—"})]})}function eK({traceId:e,systemId:t,hasCustomRenderer:a,datasets:r,onBack:n}){return(0,s.jsxs)("div",{className:d().surface,children:[(0,s.jsx)($,{label:"Traces",onClick:n}),(0,s.jsx)("div",{className:d().detailHeader,children:(0,s.jsxs)("div",{children:[(0,s.jsxs)("h2",{className:d().detailTitle,children:["Trace ",e.slice(0,12)]}),(0,s.jsx)("div",{className:d().detailMeta,children:e})]})}),(0,s.jsx)(B,{traceId:e,systemId:t,datasets:r}),(0,s.jsx)("div",{className:d().traceSection,children:(0,s.jsx)(eG,{traceId:e,systemId:t,hasCustomRenderer:a,compact:!1})})]})}function eG({traceId:e,systemId:t,hasCustomRenderer:a,compact:n}){let[l,i]=(0,r.useState)(null),[o,c]=(0,r.useState)(null),[u,m]=(0,r.useState)(!1);(0,r.useEffect)(()=>{if(i(null),c(null),!e)return void m(!1);m(!0);let a=!1;return fetch(`/api/langfuse-trace?traceId=${encodeURIComponent(e)}&systemId=${encodeURIComponent(t)}`).then(async e=>{let t=e5(await e.json());if(!e.ok)throw Error(t.error??`HTTP ${e.status}`);a||(i(t),m(!1))}).catch(e=>{a||(c(e instanceof Error?e.message:String(e)),m(!1))}),()=>{a=!0}},[t,e]);let p=(0,s.jsx)(en,{trace:l,systemId:t,hasCustomRenderer:a,loading:u,error:e?o:null});return e||n?n?p:(0,s.jsx)("section",{className:d().detailPanel,children:p}):(0,s.jsx)("section",{className:d().detailPanel,children:(0,s.jsx)("div",{className:d().mutedText,children:"No source trace linked."})})}function eY({title:e,value:t}){var a;return(0,s.jsxs)("div",{className:d().jsonBlock,children:[(0,s.jsx)("div",{className:d().jsonTitle,children:e}),(0,s.jsx)("pre",{className:d().jsonPre,children:null==(a=t)?"(empty)":"string"==typeof a?a:JSON.stringify(a,null,2)})]})}function eW({mutating:e,error:t,onCreate:a,onClose:n}){let[l,i]=(0,r.useState)(""),o=(0,r.useCallback)(e=>i(e.target.value),[]),c=(0,r.useCallback)(t=>{"Enter"===t.key&&l.trim()&&!e&&a(l.trim())},[l,e,a]),u=(0,r.useCallback)(()=>void a(l.trim()),[l,a]);return(0,s.jsxs)(eQ,{onClose:n,children:[(0,s.jsx)("h3",{className:d().modalTitle,children:"Create dataset"}),t&&(0,s.jsx)("div",{className:d().errorPanel,children:t}),(0,s.jsxs)("div",{className:d().formRow,children:[(0,s.jsx)("label",{className:d().formLabel,htmlFor:"create-dataset-name",children:"Name"}),(0,s.jsx)("input",{id:"create-dataset-name",className:d().textInput,value:l,onChange:o,placeholder:"e.g. golden-eval-set",autoFocus:!0,onKeyDown:c})]}),(0,s.jsxs)("div",{className:d().modalActions,children:[(0,s.jsx)("button",{className:d().secondaryButton,onClick:n,children:"Cancel"}),(0,s.jsx)("button",{className:d().primaryButton,disabled:!l.trim()||e,onClick:u,children:e?"Creating...":"Create"})]})]})}function eq({currentName:e,mutating:t,error:a,onRename:n,onClose:l}){let[i,o]=(0,r.useState)(e),c=(0,r.useCallback)(e=>o(e.target.value),[]),u=(0,r.useCallback)(a=>{"Enter"===a.key&&i.trim()&&i.trim()!==e&&!t&&n(i.trim())},[i,e,t,n]),m=(0,r.useCallback)(()=>n(i.trim()),[i,n]);return(0,s.jsxs)(eQ,{onClose:l,children:[(0,s.jsx)("h3",{className:d().modalTitle,children:"Rename dataset"}),a&&(0,s.jsx)("div",{className:d().errorPanel,children:a}),(0,s.jsxs)("div",{className:d().formRow,children:[(0,s.jsx)("label",{className:d().formLabel,htmlFor:"rename-dataset-name",children:"New name"}),(0,s.jsx)("input",{id:"rename-dataset-name",className:d().textInput,value:i,onChange:c,autoFocus:!0,onKeyDown:u})]}),(0,s.jsxs)("div",{className:d().modalActions,children:[(0,s.jsx)("button",{className:d().secondaryButton,onClick:l,children:"Cancel"}),(0,s.jsx)("button",{className:d().primaryButton,disabled:!i.trim()||i.trim()===e||t,onClick:m,children:t?"Renaming...":"Rename"})]})]})}function eJ({title:e,message:t,confirmLabel:a,mutating:r,error:n,onConfirm:l,onClose:i}){return(0,s.jsxs)(eQ,{onClose:i,children:[(0,s.jsx)("h3",{className:d().modalTitle,children:e}),n&&(0,s.jsx)("div",{className:d().errorPanel,children:n}),(0,s.jsx)("p",{className:d().modalMessage,children:t}),(0,s.jsxs)("div",{className:d().modalActions,children:[(0,s.jsx)("button",{className:d().secondaryButton,onClick:i,children:"Cancel"}),(0,s.jsx)("button",{className:d().dangerButton,disabled:r,onClick:l,children:r?`${a}...`:a})]})]})}function eZ({placement:e="below",onRename:t,onDelete:a,onClose:n}){(0,r.useEffect)(()=>{let e=()=>n();return document.addEventListener("click",e),()=>document.removeEventListener("click",e)},[n]);let l=(0,r.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),t()},[t]),i=(0,r.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),a()},[a]);return(0,s.jsxs)("div",{className:`${d().contextMenu} ${"above"===e?d().contextMenuAbove:""}`,onClick:eE,children:[(0,s.jsx)("button",{type:"button",className:d().contextMenuItem,onClick:l,children:"Rename"}),(0,s.jsx)("button",{type:"button",className:`${d().contextMenuItem} ${d().contextMenuItemDanger}`,onClick:i,children:"Delete"})]})}function eQ({onClose:e,children:t}){return(0,s.jsx)("div",{className:d().modalOverlay,onClick:e,children:(0,s.jsx)("div",{className:d().modalContent,onClick:eE,children:t})})}function eX(e,t){let a=e.metadata;for(let t of[a?.callSummary,a?.summary,a?.name,a?.analysisId,e.id])if("string"==typeof t&&t.trim())return t;return`Item ${t+1}`}function e0(e){try{return new Date(e).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})}catch{return e}}function e1(e,t){let a=new URLSearchParams,s=`/${ex(e)}/data`;"traces"===t.view?(s+="/traces",t.traceId&&(s+=`/${ex(t.traceId)}`),t.page&&t.page>1&&a.set("page",String(t.page)),t.tags?.trim()&&a.set("tags",t.tags.trim())):(s+="/datasets",t.datasetName&&(s+=`/${ex(t.datasetName)}`),t.datasetName&&t.itemId&&(s+=`/items/${ex(t.itemId)}`));let r=a.toString();return`${s}${r?`?${r}`:""}`}function e2(e){return e8(e)?{data:Array.isArray(e.data)?e.data.map(e3).filter(te):void 0,connection:e4(e.connection),error:ta(e.error)}:{}}function e5(e){return e8(e)?{...e,id:ta(e.id),name:ta(e.name),tags:Array.isArray(e.tags)?e.tags.filter(e9):void 0,timestamp:ta(e.timestamp),metadata:e.metadata,input:e.input,output:e.output,error:ta(e.error)}:{}}function e4(e){if(e8(e)&&"string"==typeof e.state&&"string"==typeof e.message&&"string"==typeof e.remediation)return{state:e.state,message:e.message,remediation:e.remediation,requiredEnvVars:tt(e.requiredEnvVars),optionalEnvVars:tt(e.optionalEnvVars),expectedEnvFile:ta(e.expectedEnvFile),missingEnvVars:tt(e.missingEnvVars),lookup:tt(e.lookup),detail:ta(e.detail)}}function e6(e){return e8(e)&&"string"==typeof e.name?{id:ta(e.id),name:e.name,description:"string"==typeof e.description||null===e.description?e.description:void 0,metadata:e8(e.metadata)||null===e.metadata?e.metadata:void 0,createdAt:ta(e.createdAt),updatedAt:ta(e.updatedAt)}:null}function e3(e){return e8(e)&&"string"==typeof e.id?{...e,id:e.id,status:ta(e.status),sourceTraceId:"string"==typeof e.sourceTraceId||null===e.sourceTraceId?e.sourceTraceId:void 0,input:e.input,expectedOutput:e.expectedOutput,metadata:e8(e.metadata)||null===e.metadata?e.metadata:void 0,createdAt:ta(e.createdAt),updatedAt:ta(e.updatedAt)}:null}function e7(e){return e8(e)&&"string"==typeof e.id?{id:e.id,name:ta(e.name),tags:Array.isArray(e.tags)?e.tags.filter(e9):void 0,timestamp:ta(e.timestamp),input:e.input,output:e.output,metadata:e.metadata}:null}function e8(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function e9(e){return"string"==typeof e}function te(e){return null!==e}function tt(e){return Array.isArray(e)?e.filter(e9):[]}function ta(e){return"string"==typeof e?e:void 0}function ts(e){return tl(e)?{ideas:Array.isArray(e.ideas)?e.ideas.map(tr).filter(to):void 0,config:function(e){if(tl(e))return{teamKey:tc(e.teamKey),projectName:tc(e.projectName),projectId:tc(e.projectId),projectUrl:tc(e.projectUrl),projectRef:tc(e.projectRef),projectRefKind:tc(e.projectRefKind),label:td(e.label)??"Kaizen"}}(e.config),connection:function(e){if(tl(e)&&function(e){switch(e){case"connected":case"missing_project":case"missing_api_key":case"project_not_found":case"auth_failed":case"query_failed":case"network_error":return!0;default:return!1}}(e.state)&&"string"==typeof e.message&&"string"==typeof e.remediation)return{state:e.state,message:e.message,remediation:e.remediation,requiredEnvVars:tn(e.requiredEnvVars),optionalEnvVars:tn(e.optionalEnvVars),expectedEnvFile:td(e.expectedEnvFile),missingEnvVars:tn(e.missingEnvVars),lookup:tn(e.lookup),detail:td(e.detail)}}(e.connection),error:td(e.error)}:{}}function tr(e){var t,a,s,r,n;return tl(e)&&"string"==typeof e.id&&"string"==typeof e.identifier&&"string"==typeof e.title&&"string"==typeof e.url&&"string"==typeof e.createdAt&&"string"==typeof e.updatedAt?{id:e.id,identifier:e.identifier,title:e.title,description:"string"==typeof e.description||null===e.description?e.description:null,url:e.url,priority:"number"==typeof e.priority?e.priority:0,createdAt:e.createdAt,updatedAt:e.updatedAt,state:tl(t=e.state)&&"string"==typeof t.name&&"string"==typeof t.type?{name:t.name,type:t.type}:null,assignee:tl(a=e.assignee)&&"string"==typeof a.name?{name:a.name}:null,project:tl(s=e.project)&&"string"==typeof s.id&&"string"==typeof s.name?{id:s.id,name:s.name,url:"string"==typeof s.url?s.url:null}:null,team:tl(r=e.team)&&"string"==typeof r.key&&"string"==typeof r.name?{key:r.key,name:r.name}:null,labels:tl(n=e.labels)&&Array.isArray(n.nodes)?{nodes:n.nodes.map(e=>tl(e)&&"string"==typeof e.name?{name:e.name}:null).filter(to)}:{nodes:[]}}:null}function tn(e){return Array.isArray(e)?e.filter(ti):[]}function tl(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function ti(e){return"string"==typeof e}function to(e){return null!==e}function td(e){return"string"==typeof e?e:void 0}function tc(e){return"string"==typeof e?e:null}var tu=a(9212),tm=a.n(tu);function tp({issue:e,issueTitle:t,showTitle:a=!1}){if(!e)return null;let r=t?`${e.id} \xb7 ${t}`:e.id;return(0,s.jsxs)("a",{className:tm().linearIssueLink,href:e.url,target:"_blank",rel:"noreferrer",title:t?`${e.id}: ${t}`:`Open ${e.id} in Linear`,onClick:t_,children:[(0,s.jsx)("img",{src:"/source-icons/linear.svg",alt:""}),(0,s.jsx)("span",{children:a?r:e.id})]})}function t_(e){e.stopPropagation()}function th(e){let t=(0,r.useRef)(new Map),a=(0,r.useRef)(new Map),s=(0,r.useRef)(new Map),n=(0,r.useCallback)(e=>{let a=s.current.get(e);if(a)return a;let r=a=>{a?t.current.set(e,a):t.current.delete(e)};return s.current.set(e,r),r},[]),l=(0,r.useCallback)(()=>{for(let[e,s]of t.current)a.current.set(e,s.getBoundingClientRect().top)},[]);return(0,r.useLayoutEffect)(()=>{if(0!==a.current.size){for(let[e,s]of t.current){let t=a.current.get(e);if(void 0===t)continue;let r=t-s.getBoundingClientRect().top;1>Math.abs(r)||(s.style.transform=`translateY(${r}px)`,s.style.transition="none",requestAnimationFrame(()=>{requestAnimationFrame(()=>{s.style.transition="transform 0.38s cubic-bezier(0.25, 1, 0.5, 1)",s.style.transform=""})}))}a.current.clear()}},[e]),{capturePositions:l,getRowRef:n}}function tf({run:e,systemId:t,primaryMetric:a,hasCustomRenderer:n,selectedTraceId:l,onBackToTraceList:i,onSelectTrace:o}){let[c,u]=(0,r.useState)([]),[m,p]=(0,r.useState)(!0),[_,h]=(0,r.useState)(null),[f,x]=(0,r.useState)(!1),[g,j]=(0,r.useState)(null),[b,y]=(0,r.useState)(null),[v,N]=(0,r.useState)(null);(0,r.useEffect)(()=>{let a=!1;return p(!0),y(null),fetch(`/api/run-traces?system=${encodeURIComponent(t)}&runId=${encodeURIComponent(e.runId)}`).then(async e=>{let t=await e.json();if(!e.ok)throw Error("string"==typeof t.error?t.error:`HTTP ${e.status}`);a||(u(t.traces??[]),p(!1))}).catch(e=>{a||(y(e instanceof Error?e.message:String(e)),p(!1))}),()=>{a=!0}},[t,e.runId]),(0,r.useEffect)(()=>{if(h(null),j(null),!l)return void x(!1);x(!0);let e=!1;return fetch(`/api/langfuse-trace?traceId=${encodeURIComponent(l)}&systemId=${encodeURIComponent(t)}`).then(async t=>{var a,s;let r="object"!=typeof(s=a=await t.json())||null===s||Array.isArray(s)?{}:{...a,id:"string"==typeof a.id?a.id:void 0,name:"string"==typeof a.name?a.name:void 0,tags:Array.isArray(a.tags)?a.tags.filter(e=>"string"==typeof e):void 0,timestamp:"string"==typeof a.timestamp?a.timestamp:void 0,metadata:a.metadata,input:a.input,output:a.output,error:"string"==typeof a.error?a.error:void 0};if(!t.ok)throw Error(r.error??`HTTP ${t.status}`);e||(h(r),x(!1))}).catch(t=>{e||(j(t instanceof Error?t.message:String(t)),x(!1))}),()=>{e=!0}},[l,t]);let S=(0,r.useCallback)(e=>{let t=e.currentTarget.dataset.traceId;t&&o(t)},[o]),k=(0,r.useMemo)(()=>{let e=c.find(e=>null!=e.breakdown);if(!e?.breakdown)return[];let t=a??"score";return Object.keys(e.breakdown).filter(e=>e!==t&&"score"!==e)},[a,c]),w=(0,r.useMemo)(()=>null===v?c:[...c].sort((e,t)=>(function(e,t,a){let s=tg(e,a.key),r=tg(t,a.key);if(null==s&&null==r)return 0;if(null==s)return 1;if(null==r)return -1;let n="number"==typeof s&&"number"==typeof r?s-r:String(s).localeCompare(String(r));return"asc"===a.direction?n:-n})(e,t,v)),[v,c]),{capturePositions:C,getRowRef:I}=th((0,r.useMemo)(()=>w.map(e=>e.id),[w])),R=(0,r.useCallback)(e=>{C(),N(t=>t?.key===e?{key:e,direction:"asc"===t.direction?"desc":"asc"}:{key:e,direction:"itemId"===e?"asc":"desc"})},[C]);return(0,s.jsxs)("section",{className:d().runTracesPanel,children:[(0,s.jsx)("div",{className:d().runTracesPanelHeader,children:(0,s.jsxs)("div",{children:[(0,s.jsx)("h2",{className:d().runTracesPanelTitle,children:"Traces"}),(0,s.jsxs)("div",{className:d().detailMeta,children:[e.totalItems??c.length," items \xb7 ",e.status]})]})}),l?(0,s.jsxs)("div",{className:d().runTracesDetail,children:[(0,s.jsx)($,{label:"Traces",onClick:i}),(0,s.jsx)(B,{traceId:l,systemId:t}),(0,s.jsx)(en,{trace:_,systemId:t,hasCustomRenderer:n,runId:e.runId,surface:"run-trace",loading:f,error:g})]}):m?(0,s.jsx)("div",{className:d().loadingPanel,children:"Loading run traces..."}):b?(0,s.jsx)("div",{className:d().errorPanel,children:b}):0===c.length?(0,s.jsxs)("div",{className:d().emptyPanel,children:[(0,s.jsx)("div",{className:d().emptyPanelTitle,children:"No traces found"}),(0,s.jsx)("div",{className:d().emptyPanelCopy,children:"This run did not emit any item events with trace IDs."})]}):(0,s.jsx)("div",{className:d().runTracesTableWrap,children:(0,s.jsxs)("table",{className:d().runTracesTable,children:[(0,s.jsx)("thead",{children:(0,s.jsxs)("tr",{children:[(0,s.jsx)(tx,{label:"Item ID",sortKey:"itemId",sortState:v,onSort:R}),(0,s.jsx)(tx,{label:a?T(a):"Score",sortKey:"score",sortState:v,onSort:R}),k.map(e=>(0,s.jsx)(tx,{label:T(e),sortKey:`breakdown:${e}`,sortState:v,onSort:R},e))]})}),(0,s.jsx)("tbody",{children:w.map(e=>(0,s.jsxs)("tr",{ref:I(e.id),"data-trace-id":e.traceId??void 0,className:e.traceId?d().runTracesTableRowClickable:void 0,onClick:e.traceId?S:void 0,children:[(0,s.jsx)("td",{className:d().runTracesTableId,children:e.id}),(0,s.jsx)("td",{children:e.score.toFixed(2)}),k.map(t=>(0,s.jsx)("td",{children:e.breakdown?.[t]!=null?e.breakdown[t].toFixed(2):"—"},t))]},e.id))})]})})]})}function tx({label:e,sortKey:t,sortState:a,onSort:n}){let l=a?.key===t,i=l?a.direction:null,o=(0,r.useCallback)(()=>n(t),[n,t]);return(0,s.jsx)("th",{"aria-sort":null===i?"none":"asc"===i?"ascending":"descending",children:(0,s.jsxs)("button",{type:"button",className:`${d().runTracesSortButton} ${l?d().runTracesSortButtonActive:""}`,onClick:o,children:[(0,s.jsx)("span",{children:e}),null!==i&&(0,s.jsx)("span",{className:d().runTracesSortIcon,"aria-hidden":"true",children:"asc"===i?"▲":"▼"})]})})}function tg(e,t){return"itemId"===t?e.id:"score"===t?e.score:t.startsWith("breakdown:")?e.breakdown?.[t.slice("breakdown:".length)]??null:null}var tj=a(6971),tb=a(8463),ty=a(7784),tv=a(4456);let tN={running:{color:"#f5a623",bg:"rgba(245,166,35,0.1)",border:"rgba(245,166,35,0.3)"},complete:{color:"#00d4aa",bg:"rgba(0,212,170,0.1)",border:"rgba(0,212,170,0.3)"},crashed:{color:"#e8553d",bg:"rgba(232,85,61,0.1)",border:"rgba(232,85,61,0.3)"},aborted:{color:"rgba(250,250,250,0.4)",bg:"rgba(255,255,255,0.04)",border:"rgba(255,255,255,0.08)"}},tS=tN.running;function tk({node:e,isSelected:t,isBestGlobal:a,isHighlighted:n,primaryMetric:l,linearIssueTitles:i,onClick:o}){let d=e.data.status,c=tN[d.status]??tS,u=C(d,l),m=null!=u?`${(100*u).toFixed(1)}%`:null,p="running"===d.status,_=function(e,t){let[a,s]=(0,r.useState)(Date.now());if((0,r.useEffect)(()=>{if(!t)return;let e=setInterval(()=>s(Date.now()),1e3);return()=>clearInterval(e)},[t]),!e)return null;let n=new Date(e).getTime();return isNaN(n)?null:N(Math.max(0,Math.floor((a-n)/1e3)))}(d.startedAt,p),h=p?null:function(e,t){if(!e||!t)return null;let a=new Date(e).getTime(),s=new Date(t).getTime();if(isNaN(a)||isNaN(s))return null;let r=Math.max(0,Math.floor((s-a)/1e3));return 0===r?null:N(r)}(d.startedAt,d.updatedAt),f=d.linearIssue?i?.[d.linearIssue.id]??null:null;return(0,s.jsx)("foreignObject",{x:e.x-100,y:e.y-63,width:200,height:126,children:(0,s.jsxs)("button",{"data-run-id":d.runId,className:[tm().treeNodeCard,t?tm().treeNodeSelected:"",a?tm().treeNodeBest:"",n?tm().treeNodeHighlight:""].filter(Boolean).join(" "),onClick:o,title:f?`${d.runName}
7
+ ${f}`:d.runName,children:[(0,s.jsx)("div",{className:tm().treeNodeName,children:d.runName}),(0,s.jsxs)("div",{className:tm().treeNodeBadgeRow,children:[(0,s.jsx)("span",{className:tm().treeNodeBadge,style:{color:c.color,backgroundColor:c.bg,border:`1px solid ${c.border}`},children:d.status}),p&&_&&(0,s.jsx)("span",{className:tm().treeNodeElapsed,children:_}),h&&(0,s.jsx)("span",{className:tm().treeNodeElapsed,children:h})]}),(0,s.jsx)("div",{className:tm().treeNodeScoreRow,children:m?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:tm().treeNodeAccuracy,children:m}),null!=d.totalItems&&(0,s.jsxs)("span",{className:tm().treeNodeItems,children:["n=",d.totalItems]})]}):"aborted"===d.status||"crashed"===d.status?(0,s.jsx)("span",{className:tm().treeNodeItems,children:"—"}):(0,s.jsxs)("span",{className:tm().treeNodeLoading,children:[(0,s.jsx)("span",{className:tm().treeNodePulse}),(0,s.jsx)("span",{className:tm().treeNodeLoadingText,children:"running"===d.status&&d.progress?`${d.progress.completed}/${d.progress.total}`:"running"===d.status?"Running eval...":"Pending"})]})}),d.linearIssue&&(0,s.jsx)("div",{className:tm().treeNodeIssueRow,children:(0,s.jsx)(tp,{issue:d.linearIssue,issueTitle:f,showTitle:!0})})]})})}function tT({link:e}){return(0,s.jsx)(tv.A,{data:e,stroke:"rgba(255, 255, 255, 0.25)",strokeWidth:1.5,fill:"none"})}function tw(e){return{status:e.status,children:e.children.map(tw)}}function tC(e){return e.depth>0&&null!==e.data.status}function tI({roots:e,selectedId:t,bestGlobalId:a,highlightId:n,primaryMetric:l,linearIssueTitles:i,onSelect:o}){let d=(0,r.useMemo)(()=>({status:null,children:e.map(tw)}),[e]),c=(0,r.useMemo)(()=>(0,tb.Ay)(d,e=>e.children.length>0?e.children:null),[d]);return 0===e.length?null:(0,s.jsx)("div",{className:tm().treeForest,children:(0,s.jsx)(ty.A,{root:c,nodeSize:[216,158],separation:(e,t)=>e.parent===t.parent?1:1.1,children:e=>{let r=e.descendants(),d=e.links(),c=r.filter(tC),u=d.filter(e=>e.source.depth>0);if(0===c.length)return null;let m=1/0,p=-1/0,_=1/0,h=-1/0;for(let e of c)m=Math.min(m,e.x),p=Math.max(p,e.x),_=Math.min(_,e.y),h=Math.max(h,e.y);let f=p-m+200+80,x=h-_+126+80,g=-m+100+40,j=-_+63+40;return(0,s.jsx)("svg",{width:f,height:x,className:tm().treeSvg,children:(0,s.jsxs)(tj.A,{top:j,left:g,children:[u.map((e,t)=>(0,s.jsx)(tT,{link:e},`link-${t}`)),c.map(e=>(0,s.jsx)(tk,{node:e,isSelected:t===e.data.status.runId,isBestGlobal:a===e.data.status.runId,isHighlighted:n===e.data.status.runId,primaryMetric:l,linearIssueTitles:i,onClick:()=>o(e.data.status.runId)},e.data.status.runId))]})})}})})}var tR=a(9965),tP=a.n(tR);function tL({runs:e,primaryMetric:t,bestGlobalId:a,selectedId:n,linearIssueTitles:l,onSelect:i}){let[o,d]=(0,r.useState)(t??""),[c,u]=(0,r.useState)(!0),m=(0,r.useMemo)(()=>{let a=new Set;for(let t of e)for(let e of Object.keys(t.metrics))a.add(e);return[...a].sort((e,a)=>e===t?-1:a===t?1:e.localeCompare(a))},[e,t]);r.useEffect(()=>{t&&(d(t),u(!0))},[t]);let p=(0,r.useMemo)(()=>{let t=[...e];return t.sort((e,t)=>{let a=o?e.metrics[o]??-1/0:0,s=o?t.metrics[o]??-1/0:0,r=c?s-a:a-s;return 0!==r?r:(t.totalItems??0)-(e.totalItems??0)}),t},[e,o,c]),{capturePositions:_,getRowRef:h}=th((0,r.useMemo)(()=>p.map(e=>e.runId),[p])),f=(0,r.useCallback)(e=>{_(),e===o?u(e=>!e):(d(e),u(!0))},[_,o]);return 0===e.length?(0,s.jsx)("p",{className:tP().noData,children:"No experiments yet."}):(0,s.jsx)("div",{className:tP().tableWrapper,children:(0,s.jsxs)("table",{className:tP().table,children:[(0,s.jsx)("thead",{children:(0,s.jsxs)("tr",{children:[(0,s.jsx)("th",{className:tP().thRank,children:"#"}),(0,s.jsx)("th",{className:tP().thName,children:"Run"}),(0,s.jsx)("th",{className:tP().thStatus,children:"Status"}),m.map(e=>(0,s.jsxs)("th",{className:`${tP().thMetric} ${e===t?tP().thPrimary:""} ${e===o?tP().thSorted:""}`,onClick:()=>f(e),children:[(0,s.jsx)("span",{className:tP().thLabel,children:T(e)}),e===o&&(0,s.jsx)("span",{className:tP().sortArrow,children:c?"▼":"▲"})]},e)),(0,s.jsx)("th",{className:tP().thItems,children:"n"}),(0,s.jsx)("th",{className:tP().thStarted,children:"Started"})]})}),(0,s.jsx)("tbody",{children:p.map((e,r)=>{let o=tN[e.status]??tS,d=e.runId===a,c=e.runId===n;return(0,s.jsxs)("tr",{ref:h(e.runId),className:`${tP().row} ${d?tP().rowBest:""} ${c?tP().rowSelected:""}`,onClick:()=>i(e.runId),children:[(0,s.jsx)("td",{className:tP().tdRank,children:r+1}),(0,s.jsxs)("td",{className:tP().tdName,children:[(0,s.jsx)("span",{className:tP().expName,children:e.runName}),(0,s.jsx)(tp,{issue:e.linearIssue,issueTitle:e.linearIssue?l?.[e.linearIssue.id]:null}),d&&(0,s.jsx)("span",{className:tP().bestBadge,children:"BEST"})]}),(0,s.jsx)("td",{className:tP().tdStatus,children:(0,s.jsx)("span",{className:tP().statusDot,style:{backgroundColor:o.color},title:e.status})}),m.map(a=>{let r=e.metrics[a],n=a===t;return(0,s.jsx)("td",{className:`${tP().tdMetric} ${n?tP().tdPrimary:""}`,children:null!=r?(0,s.jsx)("span",{className:tP().metricValue,children:w(a,r)}):(0,s.jsx)("span",{className:tP().metricEmpty,children:"—"})},a)}),(0,s.jsx)("td",{className:tP().tdItems,children:e.totalItems??"?"}),(0,s.jsx)("td",{className:tP().tdStarted,children:v(e.startedAt)})]},e.runId)})})]})})}function tE({runs:e,primaryMetric:t,bestRunId:a,selectedRunId:r,linearIssueTitles:n,onSelectRun:l}){return(0,s.jsx)(tL,{runs:e,primaryMetric:t,bestGlobalId:a,selectedId:r,linearIssueTitles:n,onSelect:l})}let tM={shallow:!0,scroll:!1};function tA({system:e}){let t=(0,A.useRouter)(),{runs:a}=y(e.id),[n,l]=(0,r.useState)(null),[i]=(0,r.useState)(null),[o,c]=(0,r.useState)(null),[u,m]=(0,r.useState)(null),[p,_]=(0,r.useState)(280),[h,f]=(0,r.useState)({}),x=(0,r.useMemo)(()=>t.isReady?function(e){let t=eh(e),[a,s,r]="experiments"===t[1]?t.slice(2):[],n="benchmarks"===a,l=n?ef(s??null):null,i=n?null:ef(a??null),o=i&&"traces"===s?ef(r??null):null;return{benchmarkKey:l,runId:i,traceId:o}}(t.asPath):null,[t.asPath,t.isReady]),g=(0,r.useCallback)(a=>{var s,r;let n;t.push((s=e.id,r=a,n=`/${ex(s)}/experiments`,r.runId?(n+=`/${ex(r.runId)}`,r.traceId&&(n+=`/traces/${ex(r.traceId)}`)):r.benchmarkKey&&(n+=`/benchmarks/${ex(r.benchmarkKey)}`),n),void 0,tM)},[t,e.id]);(0,r.useEffect)(()=>{l(null),c(null),m(null),f({})},[e.id]),(0,r.useEffect)(()=>{x&&(c(x.benchmarkKey),l(x.runId),m(x.traceId))},[x]),(0,r.useEffect)(()=>{let t=!1;return fetch(`/api/linear-ideas?systemId=${encodeURIComponent(e.id)}`).then(e=>e.json()).then(e=>{t||f(function(e){let t={};for(let a of e)t[a.identifier]=a.title;return t}(ts(e).ideas??[]))}).catch(()=>{t||f({})}),()=>{t=!0}},[e.id]);let j=(0,r.useCallback)(e=>{let t=function(e){if(!(e instanceof Element))return null;let t=e.closest("button");return t instanceof HTMLButtonElement?t.dataset.groupKey??null:null}(e.target);t&&g({benchmarkKey:t})},[g]),b=(0,r.useCallback)(e=>{e.preventDefault();let t=e.clientX,a=e=>{_(Math.min(560,Math.max(220,p+e.clientX-t)))};document.body.style.cursor="col-resize",document.body.style.userSelect="none",document.addEventListener("pointermove",a),document.addEventListener("pointerup",()=>{document.removeEventListener("pointermove",a),document.body.style.cursor="",document.body.style.userSelect=""},{once:!0})},[p]),v=e.primaryMetric??null,N=(0,r.useMemo)(()=>{let e=new Map;for(let t of a){let a=I(t,v),s=e.get(a.key);s?s.count++:e.set(a.key,{...a,count:1})}return[...e.values()].sort((e,t)=>{let a=e.dataset.localeCompare(t.dataset);return 0===a?e.evalLabel.localeCompare(t.evalLabel):a})},[v,a]),S=(0,r.useMemo)(()=>{if(!n)return null;let e=a.find(e=>e.runId===n);return e?I(e,v).key:null},[v,a,n]),k=o&&N.some(e=>e.key===o)?o:S??N[0]?.key??null,T=(0,r.useCallback)(e=>{g({runId:e})},[g]),w=(0,r.useCallback)(()=>{g({benchmarkKey:k})},[k,g]),R=(0,r.useCallback)(e=>{n&&g({runId:n,traceId:e})},[g,n]),L=(0,r.useCallback)(()=>{n&&g({runId:n})},[g,n]),E=(0,r.useMemo)(()=>k?a.filter(e=>I(e,v).key===k):a,[a,k,v]);(0,r.useEffect)(()=>{0===a.length||!n||E.some(e=>e.runId===n)||g({benchmarkKey:k,runId:null,traceId:null})},[k,E,g,a.length,n]);let M=(0,r.useMemo)(()=>(function(e,t){let a=new Map;for(let t of e)a.set(t.runId,{status:t,children:[]});let s=[];for(let e of a.values()){let t=e.status.parentId;t&&a.has(t)?a.get(t).children.push(e):s.push(e)}let r=e=>{for(let a of(e.sort((e,a)=>(C(a.status,t)??-1)-(C(e.status,t)??-1)),e))r(a.children)};return r(s),s})(E,v),[E,v]),$=(0,r.useMemo)(()=>{let e=null,t=-1;for(let a of E){let s=C(a,v);null!=s&&s>t&&(t=s,e=a.runId)}return e},[E,v]),B=n?E.find(e=>e.runId===n):null,D=a.length>0;return(0,s.jsxs)("div",{className:d().surface,children:[(0,s.jsx)(P,{title:"Local experiments",source:"local",syncLabel:"Live updates",children:"Local experiments are grouped by benchmark so runs are compared only against the same dataset and scoring setup."}),(0,s.jsxs)("div",{className:d().experimentsLayout,children:[(0,s.jsx)("aside",{className:`${d().dataNav} ${d().experimentNav}`,style:{width:p},onClick:j,children:0===N.length?(0,s.jsxs)("div",{className:`${d().dataNavEmpty} ${d().experimentNavEmpty}`,children:[(0,s.jsx)("div",{className:d().dataNavEmptyTitle,children:"No benchmarks"}),(0,s.jsx)("div",{className:d().dataNavEmptyCopy,children:"Experiment runs will be grouped here."})]}):N.map(e=>(0,s.jsxs)("button",{"data-group-key":e.key,title:`${e.datasetLabel}
8
+ ${e.evalLabel} \xb7 ${e.count} experiments`,className:`${d().dataNavItem} ${d().dataNavGroupItem} ${d().experimentNavItem} ${k===e.key?d().dataNavItemActive:""}`,children:[(0,s.jsx)("span",{className:d().dataNavItemText,children:e.datasetLabel}),(0,s.jsxs)("span",{className:d().dataNavItemMeta,children:[e.evalLabel," \xb7 ",e.count]})]},e.key))}),(0,s.jsx)("div",{className:d().sidebarResizeHandle,role:"separator","aria-label":"Resize benchmarks","aria-orientation":"vertical",onPointerDown:b}),(0,s.jsx)("section",{className:`${d().dataMain} ${d().experimentsMain}`,children:D&&B?(0,s.jsx)(tB,{run:B,systemId:e.id,primaryMetric:v,hasCustomRenderer:!!e.traceRenderer,selectedTraceId:u,linearIssueTitle:B.linearIssue?h[B.linearIssue.id]:null,onBack:w,onBackToTraceList:L,onSelectTrace:R}):D?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(tI,{roots:M,selectedId:n,bestGlobalId:$,highlightId:i,primaryMetric:v,linearIssueTitles:h,onSelect:T}),(0,s.jsx)(tE,{runs:E,primaryMetric:v,bestRunId:$,selectedRunId:n,linearIssueTitles:h,onSelectRun:T})]}):(0,s.jsx)(t$,{})})]})]})}function t$(){return(0,s.jsxs)("div",{className:`${d().emptyPanel} ${d().experimentEmptyPanel}`,children:[(0,s.jsx)("div",{className:d().emptyPanelTitle,children:"No local experiments"}),(0,s.jsx)("div",{className:d().emptyPanelCopy,children:"Run a Kaizen experiment for this system. The benchmark tree and results table will appear here."})]})}function tB({run:e,systemId:t,primaryMetric:a,hasCustomRenderer:r,selectedTraceId:n,linearIssueTitle:l,onBack:i,onBackToTraceList:o,onSelectTrace:c}){var u;let m,p=function(e,t){let a=[],s=new Set,r=(e,t,r)=>{!e||null==t||s.has(e)||(s.add(e),a.push({key:e,label:T(e),value:w(e,t),isPrimary:r}))};for(let[s,n]of(t&&r(t,C(e,t),!0),r("score",e.metrics.score,"score"===t),r("cost_per_item",e.metrics.cost_per_item,!1),r("avg_latency_s",e.metrics.avg_latency_s,!1),Object.entries(e.metrics))){if(a.length>=4)break;r(s,n,s===t)}return a.slice(0,4)}(e,a);return(0,s.jsxs)("div",{className:d().experimentDetailSurface,children:[(0,s.jsx)($,{label:"Experiments",onClick:i}),(0,s.jsxs)("section",{className:d().experimentDetailSummary,children:[(0,s.jsxs)("div",{className:d().experimentDetailTitleRow,children:[(0,s.jsxs)("div",{className:d().experimentDetailTitleGroup,children:[(0,s.jsx)("h2",{className:d().experimentDetailTitle,children:e.runName}),(0,s.jsx)("span",{className:d().statusPill,children:e.status}),(0,s.jsx)(tp,{issue:e.linearIssue,issueTitle:l,showTitle:!0})]}),(0,s.jsxs)("div",{className:d().experimentDetailTimeRow,children:[(0,s.jsxs)("span",{children:["Started ",Number.isNaN((m=new Date(u=e.startedAt)).getTime())?u:new Intl.DateTimeFormat(void 0,{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"}).format(m)]}),(0,s.jsx)("span",{className:d().experimentDetailTimeSeparator,children:"|"}),(0,s.jsx)("span",{children:function(e){let t=new Date(e.startedAt).getTime(),a="running"===e.status?Date.now():new Date(e.updatedAt).getTime();if(Number.isNaN(t)||Number.isNaN(a))return"running"===e.status?"Running --":"Ran --";let s=N(Math.max(0,Math.floor((a-t)/1e3)));return"running"===e.status?`Running ${s}`:`Ran ${s}`}(e)})]})]}),p.length>0&&(0,s.jsx)("div",{className:d().experimentMetricStrip,children:p.map(e=>(0,s.jsxs)("div",{className:`${d().experimentMetricItem} ${e.isPrimary?d().experimentMetricItemPrimary:""}`,children:[(0,s.jsx)("span",{className:d().experimentMetricLabel,children:e.label}),(0,s.jsx)("span",{className:d().experimentMetricValue,children:e.value})]},e.key))})]}),(0,s.jsx)(tf,{run:e,systemId:t,primaryMetric:a,hasCustomRenderer:r,selectedTraceId:n,onBackToTraceList:o,onSelectTrace:c})]})}let tD=[];function tH({system:e}){let{runs:t}=y(e.id),[a,n]=(0,r.useState)([]),[l,i]=(0,r.useState)(null),[o,c]=(0,r.useState)(void 0),[u,m]=(0,r.useState)(null),[p,_]=(0,r.useState)(null),[h,f]=(0,r.useState)(!1),[x,g]=(0,r.useState)(!1),[j,b]=(0,r.useState)(null),v=(0,r.useRef)(e.id);v.current=e.id;let N=(0,r.useCallback)(async()=>{let t=e.id;f(!0);try{let e=await fetch(`/api/linear-ideas?systemId=${encodeURIComponent(t)}`),a=ts(await e.json());if(!e.ok)throw Error(a.error??`HTTP ${e.status}`);if(v.current!==t)return;n(a.ideas??[]),c(a.config),m(a.connection??null),i(e=>e&&(a.ideas??[]).some(t=>t.id===e)?e:a.ideas?.[0]?.id??null),_(a.error??null),b(ey())}catch(e){if(v.current!==t)return;m(null),_(e instanceof Error?e.message:String(e))}finally{v.current===t&&(g(!0),f(!1))}},[e.id]),S=(0,r.useCallback)(()=>{N()},[N]);(0,r.useEffect)(()=>{g(!1),n([]),i(null),c(void 0),m(null),_(null),b(null),N();let e=setInterval(()=>void N(),2e4),t=()=>void N();return window.addEventListener("focus",t),()=>{clearInterval(e),window.removeEventListener("focus",t)}},[N,e.id]);let k=(0,r.useMemo)(()=>a.find(e=>e.id===l)??a[0]??null,[a,l]),T=(0,r.useMemo)(()=>(function(e){let t=new Map;for(let a of e){let e=a.linearIssue?.id?.toUpperCase();if(!e)continue;let s=t.get(e);s?s.push(a):t.set(e,[a])}for(let e of t.values())e.sort((e,t)=>new Date(t.startedAt).getTime()-new Date(e.startedAt).getTime());return t})(t),[t]),w=(0,r.useMemo)(()=>null!==k?T.get(k.identifier.toUpperCase())??tD:tD,[T,k]),C=o?.teamKey??null,I=o?.projectRef??null,R=o?.label??"Kaizen",L=o?.projectName??o?.projectRef??"the configured project",E=(0,r.useMemo)(()=>{var e;return[(e={teamKey:C,projectRef:I,label:R}).teamKey?`LINEAR_TEAM_KEY=${e.teamKey}`:"any team",e.projectRef?`linear_project=${e.projectRef}`:"linear_project not set",`label=${e.label}`]},[R,I,C]);return(0,s.jsxs)("div",{className:d().surface,children:[(0,s.jsxs)(P,{title:"Linear ideas",source:"linear",syncLabel:ev(j,2e4),onRefresh:S,refreshing:h,children:["Linear issues labeled ",(0,s.jsx)("code",{children:R})," in the project"," ",(0,s.jsx)("code",{children:L})," become ideas that can be tried as experiments for this system."]}),u&&"connected"!==u.state&&(0,s.jsx)(eg,{status:u,currentValues:E}),p&&(0,s.jsx)("div",{className:d().errorPanel,children:p}),h&&!x?(0,s.jsx)("div",{className:d().loadingPanel,children:"Loading Linear ideas..."}):(0,s.jsxs)("div",{className:d().splitSurface,children:[(0,s.jsx)(tO,{ideas:a,selectedId:k?.id??null,linkedRunsByIssue:T,onSelect:i}),(0,s.jsx)(tF,{idea:k,linkedRuns:w,primaryMetric:e.primaryMetric??null})]})]})}function tO({ideas:e,selectedId:t,linkedRunsByIssue:a,onSelect:n}){let l=(0,r.useCallback)(e=>{let t=function(e){if(!(e instanceof Element))return null;let t=e.closest("button");return t instanceof HTMLButtonElement?t.dataset.ideaId??null:null}(e.target);t&&n(t)},[n]);return 0===e.length?(0,s.jsx)("div",{className:d().listPanelEmpty,children:"No Linear ideas"}):(0,s.jsx)("aside",{className:d().listPanel,onClick:l,children:e.map(e=>{let r=a.get(e.identifier.toUpperCase())??[];return(0,s.jsxs)("button",{"data-idea-id":e.id,className:`${d().listRow} ${t===e.id?d().listRowSelected:""}`,children:[(0,s.jsx)("span",{className:d().listRowTitle,children:e.title}),(0,s.jsxs)("span",{className:d().listRowMeta,children:[e.identifier," \xb7 ",e.state?.name??"No status"]}),(0,s.jsx)("span",{className:d().listRowLinked,children:function(e){if(0===e.length)return"No linked experiments";let t=e.slice(0,2).map(e=>e.runName),a=e.length>2?` +${e.length-2}`:"";return`Experiments: ${t.join(", ")}${a}`}(r)})]},e.id)})})}function tF({idea:e,linkedRuns:t,primaryMetric:a}){return e?(0,s.jsxs)("section",{className:d().detailPanel,children:[(0,s.jsxs)("div",{className:d().detailHeader,children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("h2",{className:d().detailTitle,children:e.title}),(0,s.jsx)("a",{className:d().detailLink,href:e.url,target:"_blank",rel:"noreferrer",children:e.identifier})]}),e.state&&(0,s.jsx)("span",{className:d().statusPill,children:e.state.name})]}),(0,s.jsxs)("div",{className:d().ideaMetaGrid,children:[(0,s.jsx)(tU,{label:"Team",value:e.team?.key??e.team?.name}),(0,s.jsx)(tU,{label:"Project",value:e.project?.name}),(0,s.jsx)(tU,{label:"Assignee",value:e.assignee?.name}),(0,s.jsx)(tU,{label:"Updated",value:tz(e.updatedAt)})]}),e.labels.nodes.length>0&&(0,s.jsx)("div",{className:d().tagRow,children:e.labels.nodes.map(e=>(0,s.jsx)("span",{className:d().tagPill,children:e.name},e.name))}),(0,s.jsxs)("section",{className:d().linkedExperimentsSection,children:[(0,s.jsx)("div",{className:d().sectionTitle,children:"Linked experiments"}),0===t.length?(0,s.jsx)("div",{className:d().linkedExperimentsEmpty,children:"No experiments linked to this idea yet."}):(0,s.jsx)("div",{className:d().linkedExperimentsList,children:t.map(e=>(0,s.jsx)(tV,{run:e,primaryMetric:a},e.runId))})]}),(0,s.jsx)("div",{className:d().descriptionBlock,children:e.description||"No description."})]}):(0,s.jsx)("section",{className:d().detailPanel,children:"No idea selected"})}function tV({run:e,primaryMetric:t}){let a=C(e,t),r=t&&null!=a?w(t,a):"No score";return(0,s.jsxs)("div",{className:d().linkedExperimentRow,children:[(0,s.jsxs)("div",{className:d().linkedExperimentMain,children:[(0,s.jsx)("span",{className:d().linkedExperimentTitle,children:e.runName}),(0,s.jsxs)("span",{className:d().linkedExperimentMeta,children:[e.runId," \xb7 ",tz(e.startedAt)]})]}),(0,s.jsxs)("div",{className:d().linkedExperimentStats,children:[(0,s.jsx)("span",{className:d().statusPill,children:e.status}),(0,s.jsx)("span",{className:d().linkedExperimentScore,children:r}),(0,s.jsxs)("span",{className:d().linkedExperimentMeta,children:["n=",e.totalItems??"?"]})]})]})}function tU({label:e,value:t}){return(0,s.jsxs)("div",{className:d().metaCell,children:[(0,s.jsx)("span",{className:d().metaLabel,children:e}),(0,s.jsx)("span",{className:d().metaValue,children:t??"Unassigned"})]})}function tz(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function tK({surface:e}){let{systems:t,activeSystemId:a}=(0,n.V)(),l=(0,r.useMemo)(()=>t.find(e=>e.id===a)??null,[a,t]);return(0,s.jsx)(b,{activeSystem:l,activeSurface:e,children:l?"data"===e?(0,s.jsx)(eM,{system:l}):"benchmarks"===e?(0,s.jsx)(E,{system:l}):"ideas"===e?(0,s.jsx)(tH,{system:l}):(0,s.jsx)(tA,{system:l}):(0,s.jsx)(tG,{systemCount:t.length})})}function tG({systemCount:e}){return(0,s.jsxs)("div",{className:d().emptyState,children:[(0,s.jsx)("img",{src:"/logo-cream.svg",alt:"Kaizen",className:d().emptyLogo}),(0,s.jsx)("h1",{className:d().emptyTitle,children:"Kaizen"}),(0,s.jsx)("p",{className:d().emptyCopy,children:"Select a system to inspect its data, benchmarks, ideas, and experiments."}),(0,s.jsxs)("span",{className:d().emptyMeta,children:[e," system",1===e?"":"s"]})]})}},7810:e=>{e.exports={wrapper:"SystemSelector_wrapper__ERtiP",label:"SystemSelector_label__4i0LZ",dropdown:"SystemSelector_dropdown__mshbO"}},9212:e=>{e.exports={layout:"Runs_layout__Ih4Cn",heroLogo:"Runs_heroLogo__BAUu8",headerLogo:"Runs_headerLogo__TgYiK",container:"Runs_container__0aqIq",headerRow:"Runs_headerRow__abEUi",title:"Runs_title__oroey",connectedBadge:"Runs_connectedBadge__d1Ss1",disconnectedBadge:"Runs_disconnectedBadge__v3kiS",systemTabs:"Runs_systemTabs__Gtuvz",systemTab:"Runs_systemTab__XYpgy",systemTabActive:"Runs_systemTabActive__10lyk",systemTabName:"Runs_systemTabName__pER4w",systemTabStatus:"Runs_systemTabStatus__YbTNa",systemStatus_in_progress:"Runs_systemStatus_in_progress__i_6lJ",systemStatus_completed:"Runs_systemStatus_completed__pjTng",systemStatus_not_started:"Runs_systemStatus_not_started__FqOI6",subtitle:"Runs_subtitle__ZfT5k",targetBadge:"Runs_targetBadge__XoNhG",grid:"Runs_grid__7DXl9",card:"Runs_card__AxGEL",cardFlash:"Runs_cardFlash__pXo7_",cardGlow:"Runs_cardGlow__mf3t7",badgeFlash:"Runs_badgeFlash__Q0C8G",badgePop:"Runs_badgePop__PdKoP",textFlash:"Runs_textFlash__O_0mj",textHighlight:"Runs_textHighlight__9znCz",rowSlideIn:"Runs_rowSlideIn__rGZ9I",slideInFade:"Runs_slideInFade__SsIak",diagramFlash:"Runs_diagramFlash__4ZTFP",diagramPulse:"Runs_diagramPulse__yN0dx",cardHeader:"Runs_cardHeader__7EpGx",cardTitle:"Runs_cardTitle__l82f2",bestAccuracyInline:"Runs_bestAccuracyInline__0XYna",linearIssueLink:"Runs_linearIssueLink__aVa6L",statusBadge:"Runs_statusBadge__T4ifS",detailTitleStack:"Runs_detailTitleStack__a_E4h",runProgressBlock:"Runs_runProgressBlock__Hg4fw",runProgressHeader:"Runs_runProgressHeader__e69Sy",runProgressTrack:"Runs_runProgressTrack__c_Wjv",runProgressFill:"Runs_runProgressFill__JOLgM",runMetaGrid:"Runs_runMetaGrid__kiPS9",runMetaCell:"Runs_runMetaCell__lEV1l",runMetaLabel:"Runs_runMetaLabel__DxMGL",runMetaValue:"Runs_runMetaValue__gJoib",detailEmpty:"Runs_detailEmpty__wy74V",metricsTable:"Runs_metricsTable__C_A_z",iterRowClickable:"Runs_iterRowClickable__g1tjc",iterRowExpanded:"Runs_iterRowExpanded__Nbl8_",bestRow:"Runs_bestRow__A_kku",iterDetailRow:"Runs_iterDetailRow__y10KK",cardFooter:"Runs_cardFooter__o_f_i",footerUpdated:"Runs_footerUpdated__21L7o",chartContainer:"Runs_chartContainer__bTh0u",chartTitle:"Runs_chartTitle__OkYqw",chart:"Runs_chart__XhGIf",chartRow:"Runs_chartRow__DbGz_",chartLabel:"Runs_chartLabel__3FlRl",chartBarContainer:"Runs_chartBarContainer__zzYv4",chartBarTrack:"Runs_chartBarTrack__5ogbA",chartBar:"Runs_chartBar__64D55",chartRowClickable:"Runs_chartRowClickable__RxDfH",chartValue:"Runs_chartValue__lmV61",metricsTableHeader:"Runs_metricsTableHeader__8d74Z",metricsTableRow:"Runs_metricsTableRow__FEGrk",metricsTableLabel:"Runs_metricsTableLabel__K8De_",metricsTableValue:"Runs_metricsTableValue__kaegJ",metricsTableBarCell:"Runs_metricsTableBarCell__8h1wf",metricsTableBarTrack:"Runs_metricsTableBarTrack__b_CnH",metricsTableBar:"Runs_metricsTableBar__HScEe",chartItems:"Runs_chartItems__Quwyx",noData:"Runs_noData__fi5_n",runSection:"Runs_runSection__Ggi_B",runLabel:"Runs_runLabel__uGajV",treeForest:"Runs_treeForest__6GBAM",treeSvg:"Runs_treeSvg___AATo",treeNodeCard:"Runs_treeNodeCard__Y5XEX",treeNodeSelected:"Runs_treeNodeSelected__QaPg2",treeNodeBest:"Runs_treeNodeBest__U8FaL",treeNodeHighlight:"Runs_treeNodeHighlight__A7a9x",nodeHighlight:"Runs_nodeHighlight__Zuhi5",treeNodeName:"Runs_treeNodeName__XtYDH",treeNodeBadgeRow:"Runs_treeNodeBadgeRow__ZwAvw",treeNodeBadge:"Runs_treeNodeBadge__jLVIw",treeNodeElapsed:"Runs_treeNodeElapsed__vsyq2",treeNodeScoreRow:"Runs_treeNodeScoreRow__BN81e",treeNodeIssueRow:"Runs_treeNodeIssueRow__7fXg_",treeNodeAccuracy:"Runs_treeNodeAccuracy__ehSVZ",treeNodeItems:"Runs_treeNodeItems__4SRsq",treeNodeLoading:"Runs_treeNodeLoading__P7_CS",treeNodePulse:"Runs_treeNodePulse__nC6rt",pulse:"Runs_pulse__LMgDF",treeNodeLoadingText:"Runs_treeNodeLoadingText__C1_bJ",detailPanelHeader:"Runs_detailPanelHeader__XMEDA",detailPanelTitle:"Runs_detailPanelTitle__vAuOY"}},9965:e=>{e.exports={tableWrapper:"Leaderboard_tableWrapper__6uunR",table:"Leaderboard_table__8gTqK",noData:"Leaderboard_noData__aKd3L",thRank:"Leaderboard_thRank__e16FK",thName:"Leaderboard_thName__i_zQZ",thStatus:"Leaderboard_thStatus__F4ZyW",thMetric:"Leaderboard_thMetric__ZMVo_",thPrimary:"Leaderboard_thPrimary__SzN76",thSorted:"Leaderboard_thSorted__13fmP",thLabel:"Leaderboard_thLabel__2cqYD",sortArrow:"Leaderboard_sortArrow__3IJre",thItems:"Leaderboard_thItems__3MS6a",thStarted:"Leaderboard_thStarted__9zNIp",row:"Leaderboard_row__A9H8t",rowBest:"Leaderboard_rowBest__JCqYu",rowSelected:"Leaderboard_rowSelected__GFyz5",tdRank:"Leaderboard_tdRank__kZKT_",tdName:"Leaderboard_tdName__2ymmx",expName:"Leaderboard_expName__6rkrZ",bestBadge:"Leaderboard_bestBadge__33jMs",tdStatus:"Leaderboard_tdStatus__zRhgm",statusDot:"Leaderboard_statusDot__hEPYp",tdMetric:"Leaderboard_tdMetric__Ll0O_",tdPrimary:"Leaderboard_tdPrimary__SZr_5",metricValue:"Leaderboard_metricValue__IhFZf",metricEmpty:"Leaderboard_metricEmpty__l1hwN",tdItems:"Leaderboard_tdItems__4_5Q6",tdStarted:"Leaderboard_tdStarted__p97S3"}}}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[580],{4662:(s,e,n)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/[system]/benchmarks",function(){return n(9329)}])},9329:(s,e,n)=>{"use strict";n.r(e),n.d(e,{default:()=>r});var _=n(144),u=n(374);function r(){return(0,_.jsx)(u.W,{surface:"benchmarks"})}}},s=>{s.O(0,[431,374,636,593,792],()=>s(s.s=4662)),_N_E=s.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[580],{4662:(s,e,n)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/[system]/benchmarks",function(){return n(9329)}])},9329:(s,e,n)=>{"use strict";n.r(e),n.d(e,{default:()=>r});var _=n(144),u=n(1253);function r(){return(0,_.jsx)(u.W,{surface:"benchmarks"})}}},s=>{s.O(0,[431,253,636,593,792],()=>s(s.s=4662)),_N_E=s.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[914],{4503:(_,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>e});var u=t(144),a=t(1253);function e(){return(0,u.jsx)(a.W,{surface:"data"})}},5118:(_,s,t)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/[system]/data/[[...path]]",function(){return t(4503)}])}},_=>{_.O(0,[431,253,636,593,792],()=>_(_.s=5118)),_N_E=_.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[250],{9403:(e,s,_)=>{"use strict";_.r(s),_.d(s,{default:()=>r});var n=_(144),u=_(1253);function r(){return(0,n.jsx)(u.W,{surface:"benchmarks"})}},9578:(e,s,_)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/[system]/eval",function(){return _(9403)}])}},e=>{e.O(0,[431,253,636,593,792],()=>e(e.s=9578)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[562],{9005:(e,s,n)=>{"use strict";n.r(s),n.d(s,{default:()=>u});var _=n(144),t=n(1253);function u(){return(0,_.jsx)(t.W,{surface:"experiments"})}},9942:(e,s,n)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/[system]/experiments/[[...path]]",function(){return n(9005)}])}},e=>{e.O(0,[431,253,636,593,792],()=>e(e.s=9942)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[912],{4983:(s,e,_)=>{"use strict";_.r(e),_.d(e,{default:()=>r});var u=_(144),n=_(1253);function r(){return(0,u.jsx)(n.W,{surface:"ideas"})}},8694:(s,e,_)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/[system]/ideas",function(){return _(4983)}])}},s=>{s.O(0,[431,253,636,593,792],()=>s(s.s=8694)),_N_E=s.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[332],{1881:(e,_,n)=>{"use strict";n.r(_),n.d(_,{default:()=>r});var u=n(144),s=n(1253);function r(){return(0,u.jsx)(s.W,{surface:"experiments"})}},4842:(e,_,n)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/",function(){return n(1881)}])}},e=>{e.O(0,[431,253,636,593,792],()=>e(e.s=4842)),_N_E=e.O()}]);