Skip to main content
← desk
featuresADR-0059build-time aggregate

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.

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.

deskgdfindgfstrategiesgsfeaturesgepromotionsgpapigabotgbwritinggw

Shortcuts are no-ops while typing in an input or textarea.