Skip to content

seo: 200 placeholders + sitemap threshold buffer - #1223

Merged
Flotapponnier merged 1 commit into
mainfrom
fix/seo-sitemap-consistency-main
Jul 16, 2026
Merged

seo: 200 placeholders + sitemap threshold buffer#1223
Flotapponnier merged 1 commit into
mainfrom
fix/seo-sitemap-consistency-main

Conversation

@Flotapponnier

Copy link
Copy Markdown
Collaborator

Cherry-pick of #1222 to main.

Fixes 3 recurring Ahrefs issues (broken badges, noindex-in-sitemap, 3xx-in-sitemap) all rooted in the sitemap/page ISR race.

Changes

  • /api/badge/[slug]/[provider] — 200 placeholder SVG instead of 404 when provider ranking data is missing
  • /hyperliquid/[slug] — 200 placeholder page instead of 307 when history blob is missing the builder
  • adHocPairs — bump inclusion threshold to 3/4 shared live benches so a single flapping bench can't cross both the sitemap gate and the page noindex gate

Test plan

  • Badge SVG placeholder renders for missing providers
  • Normal badges still render correctly
  • HL builder placeholder page renders with cohort KPIs when history is stale
  • Unknown HL slugs still 404
  • Sitemap re-emits without the flagged compare pairs

- badge/[slug]/[provider]: serve pending SVG (200) instead of 404 when a provider is missing ranking data
- hyperliquid/[slug]: render lightweight placeholder page (200) instead of 307 to /hyperliquid when history blob is missing the builder
- compare adHocPairs: bump inclusion threshold to 3 (brand) / 4 (other) so a single bench flap can't cross both the sitemap gate and the page noindex gate

Fixes 3 recurring Ahrefs issues (broken badge images, noindex-in-sitemap on compare, 3xx-in-sitemap on hyperliquid) all rooted in the sitemap/page ISR race.
@Flotapponnier
Flotapponnier merged commit 1f13d46 into main Jul 16, 2026
1 check failed
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