From 8737cf275daf6cb9474e8e3a0753d31bbc69a49d Mon Sep 17 00:00:00 2001 From: Florent Tapponnier <160007691+Flotapponnier@users.noreply.github.com> Date: Fri, 21 Aug 2026 18:09:07 +0200 Subject: [PATCH] fix(audit): metric label units, app-store title, llms.txt RPC compression --- benchmarks/app-store-ratings.yml | 2 +- benchmarks/gas-estimation.yml | 2 +- benchmarks/hyperliquid-frontends.yml | 2 +- benchmarks/hyperliquid-hip3-deployers.yml | 2 +- src/app/llms.txt/route.ts | 20 +++++++++++++++++++- 5 files changed, 23 insertions(+), 5 deletions(-) diff --git a/benchmarks/app-store-ratings.yml b/benchmarks/app-store-ratings.yml index cc8e0afb..478c87f4 100644 --- a/benchmarks/app-store-ratings.yml +++ b/benchmarks/app-store-ratings.yml @@ -2,7 +2,7 @@ slug: app-store-ratings number: "202" -title: "Crypto trading app iOS ratings: Coinbase vs Robinhood vs Crypto.com vs Bybit, live" +title: "Crypto trading app iOS App Store ratings, live" seo_title: "Crypto trading app App Store ratings 2026: Coinbase, Robinhood, Crypto.com, Bybit, Kraken, Invo, Fomo, PumpFun, GMGN, Moonshot" seo_description: "{{best_name}} leads crypto trading apps on the iOS App Store at {{best_p50}} stars. Coinbase vs Robinhood vs Crypto.com vs Bybit vs Kraken vs Invo vs Fomo vs PumpFun vs GMGN vs Moonshot ranked live from iTunes ratings." subtitle: Live Apple App Store ratings for the leading crypto trading apps on iOS. Updated every 30 minutes from the iTunes lookup API. Rating is the current average across all user reviews. Review count shows how many users voted. diff --git a/benchmarks/gas-estimation.yml b/benchmarks/gas-estimation.yml index e96c0cf3..06e0d7b6 100644 --- a/benchmarks/gas-estimation.yml +++ b/benchmarks/gas-estimation.yml @@ -23,7 +23,7 @@ per_chain_explainer: category: RPCs status: live -metric: Gap vs realized (gwei) +metric: Gap vs realized unit: gwei higher_is_better: false diff --git a/benchmarks/hyperliquid-frontends.yml b/benchmarks/hyperliquid-frontends.yml index 7ef67152..08e08c30 100644 --- a/benchmarks/hyperliquid-frontends.yml +++ b/benchmarks/hyperliquid-frontends.yml @@ -8,7 +8,7 @@ seo_description: "Live USD revenue collected by every Hyperliquid frontend via t subtitle: How much USD builder fee revenue each Hyperliquid frontend collected over the rolling 24h, 7 day and 30 day windows. Data from a local hl node tailing every fill on mainnet. category: Trading status: live -metric: Builder fees collected (USD) +metric: Builder fees collected unit: usd higher_is_better: true diff --git a/benchmarks/hyperliquid-hip3-deployers.yml b/benchmarks/hyperliquid-hip3-deployers.yml index 0521e0fc..eb9d2da2 100644 --- a/benchmarks/hyperliquid-hip3-deployers.yml +++ b/benchmarks/hyperliquid-hip3-deployers.yml @@ -8,7 +8,7 @@ seo_description: "Live USD revenue collected by every HIP-3 builder-deployed dex subtitle: How much USD deployer fee revenue each HIP-3 builder-deployed dex collected over the rolling 24h, 7 day and 30 day windows. Data from a local hl node tailing every fill on mainnet. category: Trading status: live -metric: Deployer fees collected (USD) +metric: Deployer fees collected unit: usd higher_is_better: true diff --git a/src/app/llms.txt/route.ts b/src/app/llms.txt/route.ts index 653845cd..4e0c1bd9 100644 --- a/src/app/llms.txt/route.ts +++ b/src/app/llms.txt/route.ts @@ -50,7 +50,14 @@ export async function GET() { lines.push(""); lines.push(`## Benchmarks`); lines.push(""); - for (const b of benches) { + + // Non-RPC benches listed individually — these are the most differentiated signals. + // RPC per-chain benches (142 entries) are compressed into a single section below + // to avoid truncation before the high-value content. + const nonRpc = benches.filter((b) => b.category !== "RPCs"); + const rpc = benches.filter((b) => b.category === "RPCs"); + + for (const b of nonRpc) { lines.push(`### ${b.title}`); lines.push(`- Page: ${SITE.url}/benchmarks/${b.slug}`); lines.push(`- JSON: ${SITE.url}/api/stat/${b.slug}`); @@ -60,6 +67,17 @@ export async function GET() { lines.push(""); } + // RPC latency benchmarks — one entry per chain, compressed for LLM consumption. + // Full per-chain rankings, p50/p90/p99, provider list and region breakdowns + // are available at /rpc (hub) or /api/stat/ for each chain. + lines.push(`## RPC latency benchmarks (${rpc.length} chains)`); + lines.push(""); + lines.push(`Live p50/p90/p99 latency for free no-key public RPC endpoints, measured every 60 seconds from US-East, EU-West and Singapore. Hub: ${SITE.url}/rpc — JSON: ${SITE.url}/api/citable`); + lines.push(""); + for (const b of rpc) { + lines.push(`- [${b.title}](${SITE.url}/benchmarks/${b.slug}): ${groundingTraceLine(b, SITE.url)}`); + } + return new Response(lines.join("\n"), { status: 200, headers: {