Skip to content

chore: cherry-pick SEO fixes (drop solana-tx-landing-latency + slim /benchmarks payload) - #706

Merged
Flotapponnier merged 3 commits into
mainfrom
chore/cherry-pick-seo-fixes
Jun 25, 2026
Merged

chore: cherry-pick SEO fixes (drop solana-tx-landing-latency + slim /benchmarks payload)#706
Flotapponnier merged 3 commits into
mainfrom
chore/cherry-pick-seo-fixes

Conversation

@Flotapponnier

Copy link
Copy Markdown
Collaborator

Cherry-pick of #701 and #704 from dev to main, plus a tiny type-widening fix needed because main's isInsufficient was stricter than dev's.

#701: drop solana-tx-landing-latency

The bench page was returning 404 + noindex on prod while still appearing in GSC top 3 by impressions, bleeding SEO. The Solana active probe is offline and not coming back in the short term, so we remove the spec, the alternatives + answer pages that reference it, and the orphaned compare pair. The observational solana-tx-landing bench (different slug) and the harness Go code stay in tree for future re-enablement.

#704: slim hub payload

/benchmarks was shipping 3.2 MB of HTML (8s transfer) because the full Benchmark[] (37 entries with extras.series7d/30d, metricPanels, methodology, abstract, faq, findings, perChainExplainer, seoIntro, bestPerChain, worstPerChain, cellRanks, etc.) was serialized into the RSC payload for a client component that reads only ~12 fields per card. New BenchmarkCardData projection + toBenchmarkCardData at the page boundary cuts the payload to 283 KB.

Type widening

isInsufficient accepted the full Benchmark type only. The hub card passes the slim shape, so the predicate is now keyed on a structural subset (editorialStatus + status + results.ms.p50/availability). Runtime behavior unchanged.

Diff stats

12 files changed, 102 insertions(+), 200 deletions(-)

pnpm typecheck + pnpm lint clean (3 pre-existing warnings unchanged).

Notes

Flotapponnierand others added 3 commits June 25, 2026 14:58
Cherry-pick fallout: #704 introduced BenchmarkCardData (slim projection
for the hub) but main's isInsufficient still required full Benchmark.
The hub card calls isInsufficient(b) where b is the slim type, which
typecheck rejected. Widening the predicate input to a structural
subset lets both Benchmark and BenchmarkCardData pass without losing
the runtime behavior.
@Flotapponnier
Flotapponnier merged commit 1f9c848 into mainJun 25, 2026
1 check passed
@Flotapponnier
Flotapponnier deleted the chore/cherry-pick-seo-fixes branch July 17, 2026 14:41
Sign up for freeto 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

@Flotapponnier