Skip to content

fix(l1-finality): exclude stale-gauge rows from ranking + dynamic SEO meta - #1853

Merged
Flotapponnier merged 3 commits into
devfrom
fix/l1-finality-stale-ranking
Aug 11, 2026
Merged

fix(l1-finality): exclude stale-gauge rows from ranking + dynamic SEO meta#1853
Flotapponnier merged 3 commits into
devfrom
fix/l1-finality-stale-ranking

Conversation

@Flotapponnier

Copy link
Copy Markdown
Collaborator

Summary

  • Faux classement P0 : les gauges Prometheus gardent leur dernière valeur quand le harness plante. Une chaîne avec 0 % de success rate mais un p50 stale non-nul se retrouvait classée drop journal framing #1 sur un bench lower-is-better. Ajout d'un seuil MIN_DISPLAY_SUCCESS_PCT = 5 % dans provider-filters.ts, appliqué dans ledger-table, ranked-bar-chart et la page [slug]/[chain].
  • Meta description dynamique : seo_description de l1-finality.yml utilisait un texte figé. Remplacé par {{best_name}}/{{best_p50}}renderTemplate résout ces placeholders depuis les données live à chaque ISR.
  • Pages par chaîne (SEO) : ajout des citation_* meta tags, robots handling et twitter.site à generateMetadata de [slug]/[chain]/page.tsx, en parité avec la page parent. Ces pages existent déjà pour tous les chains de l1-finality (bitcoin, ethereum, solana, etc.) et sont dans le sitemap avec priority 0.85.

Test plan

  • Vérifier que /benchmarks/l1-finality n'affiche plus de chaîne avec 0 % success rate dans le classement
  • Vérifier que la meta description de /benchmarks/l1-finality contient le nom du leader live
  • Vérifier <head> de /benchmarks/l1-finality/ethereum : presence de citation_doi, citation_title, twitter:site
  • Les chaînes avec données saines (Gram, SUI, BNB) restent bien classées

🤖 Generated with Claude Code

… meta

- Add MIN_DISPLAY_SUCCESS_PCT=5 in provider-filters; Prom gauges retain
  last value on harness failure so a chain at 0% success but non-zero
  stale p50 ranked #1 on lower-is-better benches
- Apply filter in ledger-table sortedAll, ranked-bar-chart scored, and
  [chain]/page sortLive so all display surfaces agree
- Guard buildKeyFacts against stale-gauge edge case (p50>0, bad rate)
- Add citation_* meta + robots/twitter to per-chain generateMetadata
  (parity with parent bench page for academic/LLM citation)
- seo_description uses {{best_name}}/{{best_p50}} so meta reflects live
  data instead of a hardcoded chain list
@Flotapponnier
Flotapponnier force-pushed the fix/l1-finality-stale-ranking branch from 536c8a7 to 777b5a5 Compare August 11, 2026 21:52
@Flotapponnier
Flotapponnier merged commit 0300fb3 into dev Aug 11, 2026
1 check passed
@Flotapponnier
Flotapponnier deleted the fix/l1-finality-stale-ranking branch August 11, 2026 21:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant