Feature leaderboard.
Which features are pulling weight across the checked-in agent runs (5 entries across 5 runs,1 distinct strategies). Sorted by best entry-score; ties broken by appearance count. Click a feature row to see which strategies and runs touched it.
today:rendered at build time from the agent-run fixtures.future:wired against /v1/features/leaderboard?window=Ndover the live parquet store, with rolling IC + IC-IR + decay rate — see ADR-0059 for the data-contract sketch.
ranked by best entry-score
how this is wired
Each row aggregates one feature across the agent-run fixtures. The aggregator walks everyleaderboard.entries[*].config.features[*]and folds the parent entry's score in:
- best — max entry-score among entries that contain this feature
- avg — mean entry-score across those entries (no shrinkage yet)
- n — appearance count
- strategies — distinct parent-run strategy slugs
- runs — distinct parent run ids; each links to its provenance page
The aggregator lives in src/lib/featureLeaderboard.tsand is unit-tested (5 cases) so the column semantics stay pinned even when the fixtures swap. When alphakernel adds/v1/features/leaderboard (ADR-0059), the page swaps from build-time aggregation to a live poll without changing the column shape.
For the operator:this answers "which features are pulling weight" before you've spent a morning on EDA. Promotions / kills push this list around — track the row movement to spot decay early.
Next step: pick a feature subset and run a backtest on the live engine, or eyeball the multi-seed verified arms at /strategies/compare. For pairwise feature comparison (shared strategies, score deltas), see /features/diff. For the design of the underlying feature pipeline see /projects/feature-forge.