Spaces:
Running
Running
Commit History
-
Sync from evaleval/eval-cards via hub-sync
Verified signaturec4756f2
-
Add merged-benchmark accessor + API routing (spec F1)
getMergedBenchmarkSummary reads the new merged_evals_view row and the observation-grain leaderboard live from eval_results_view on metric_id_effective, sorted by score_canonical in the metric's direction. Echo rows are kept — the accessor never calls dedupeLeaderboardRowsByModelIdentity (design pt 3/Q3) — and eval-matrices.json is not consulted. Slice-grain pages (design pt 7b) query the slice's own benchmark_id with is_slice. merged_evals_view loads best-effort at connection init so pre-merged snapshots keep working; the accessor probes the catalog and returns null when the artifact is absent. /api/eval-summary resolves single-segment ids (no %2F after routeIdFromSegments normalization — the new isMergedEvalId helper) through the merged accessor with ?metric=/?slice= params, returning a { merged: true } discriminated payload; two-segment ids keep the existing path byte-identical. fetchEvalSummary adapts merged payloads to the BenchmarkEvalSummary shape so the eval embeds render merg…0fd9809 -
Fix percent-encoded id round-trip in routeIdFromSegments (F7)
Eval detail pages 404ed for ids containing percent-encoded characters other than %2F (spaces, @, parens): Next decodes catch-all params, but routeIdFromSegments only re-encoded "/" -> %2F, so rebuilt ids never matched the stored fully-encoded evaluation_id. routeIdFromSegments now re-encodes every segment with a strict encoder matching Python's urllib.parse.quote(value, safe="") — i.e. encodeURIComponent plus explicit %-encoding of ! ' ( ) * — then joins with %2F. Segments are loose-decoded first (try/catch decodeURIComponent) so the transform is idempotent: call sites span client useParams() and server awaited params, where Next has historically been inconsistent about delivering decoded vs raw-encoded values, and both now converge to the canonical stored form. This accepts the same rare tradeoff as middleware safeDecode and the developer-lookup fallback: a decoded value that literally contains %XX gets double-decoded. Adds unit tests for routeIdFromSegments (expected outputs verifi…c8d2308
-
Update about (#8)
- refactor(model-resolution-rework): drop client-side identity logic, use view-layer (22c2706b763b5675f9c29bd1b1bb5c92acc24100) - docs: rewrite README for the v2 reader architecture (da94178c65ac75f24d6f202a1dacdf6fb27d218a) - chore: make working notes private (untrack notes/ + docs/INTERPRETIVE_SIGNALS.md) (aec0823295ab00dbea1a7c2cf56529fbbd271d19) - Fix model pages, redirects, developer pages, and charts for folded model ids (d1e9d019b1f2bddcd7f077fe15f32fd51d940c07) - Add an opt-in frontend preflight check suite (ffd4efae6f4288be2743039f0e4c6b4d69e0edcb) - Update About page (a64cd6c04efd9b6536e8f996376ddaf600d505a2)599471d
-
Cross-source dedup, plotbox polish, pretty URLs, eval page fallbacks
Model page (benchmark-detail.tsx) — cross-source grouping rework: - Category-mode tiles dedupe per benchmark canonical (8x MMLU-Pro across helm/vals-ai/openeval/… → 1 tile + cross-family whisker overlay), with an "N sources" badge. - Fixed benchmarkIndexLookup to prefer benchmark canonicals over umbrella entries (suite/aggregator) when building eval_summary_id → canonical_key. Without that, ids like artificial-analysis-llms/mmlu-pro mapped to "artificial analysis" instead of "mmlu-pro" and dedup leaked. - Aggregator-only score dedup: byte-equal scores from llm-stats are dropped (republished canonical numbers) but two independent evaluators arriving at the same number both stay — confirming signal, not duplicate data. Plus an eval_summary_id dedup before score dedup so the same observation listed under two family_keys in benchmark_index doesn't double-count. - Multi-category bucketing: a benchmark with curated tags ["general", "re…0b45710
-
Update with datafix v2
11542d9
-
added all the new files
509e21e