Skip to content

Close hypersnap-web-canary parity gaps (no prod DNS) - #47

Merged
arcabotai merged 1 commit into
mainfrom
cursor/canary-parity-gaps-ee9c
Sep 2, 2026
Merged

arcabotai merged 1 commit into
mainfrom
cursor/canary-parity-gaps-ee9c

Conversation

@felirami

@felirami felirami commented Sep 2, 2026 •

Copy link
Copy Markdown
Collaborator

Finish the Astro Cloudflare canary against the existing Worker name exactly hypersnap-web-canary. After this canary is green, Loica/Degu proceed to the production Worker and DNS cutover — do not stop at canary. This PR does not change production DNS, create Cloudflare resources, or delete Vercel.

Fixes vs the current www canary / live Next paths

  • Trailing slash: Wrangler html_handling: "drop-trailing-slash" plus Astro trailingSlash: "never" so /about (and the other marketing routes) stay 200 instead of Cloudflare’s default 307 to /about/.
  • Legacy asset paths: restore public/favicon.ico. _redirects 200-rewrites /opengraph-image → /opengraph-image.svg and /icon → /favicon.svg.
  • /api/snap-market: one retry on Dexscreener 429, 8s timeout, no custom User-Agent.
  • README records the Degu/Luis plan: canary first, then prod Worker + DNS.

Verification (this revision)

Local:

  • npm run lint — pass
  • npm run typecheck — 0 errors
  • npm run build — 52 pages
  • npx wrangler deploy --dry-run — 168 assets, Worker name hypersnap-web-canary
  • wrangler dev against ./dist:
    • /about → 200
    • /about/ → 307 /about
    • /opengraph-image → 200 image/svg+xml
    • /icon → 200 image/svg+xml
    • /favicon.ico → 200 image/vnd.microsoft.icon
    • /api/network-status and /api/snap-market → 200 (ok: true)
    • /install.sh, /llms.txt → 200
    • unknown path → 404 HTML

GitHub Actions Lint, typecheck, and build is green on this PR. CodeQL/Analyze also passed.

Vercel Preview/Production will fail with No Next.js version detected. That is expected: main is Astro now. Last READY Vercel production deploy is f633702. Do not treat the Vercel check as a canary blocker.

Remaining gaps vs live Next hypersnap.org

These stay out of this canary PR:

  • OG/icon are still SVG, not PNG. Live Next generated /opengraph-image and /icon via next/og. The rewrite closes the 404; X/Facebook often prefer PNG.
  • Vercel Analytics removed with the Next runtime (intentional on Workers).
  • No Next error.tsx runtime boundary — static HTML + a thin /api/* Worker.
  • Home/network numbers are a build-time snapshot plus client poll, not Next ISR revalidate=60.
  • www.hypersnap.org already serves the merged Astro canary and still has the old 307/legacy-404 behavior until Loica/Degu deploy this revision to hypersnap-web-canary.
  • Apex hypersnap.org DNS already resolves to Cloudflare IPs. HTTPS to the apex was not reliable from this agent VM; this run does not change DNS.

cad/cloudflare-migration (OpenNext) is untouched. No new R2/KV/D1. workers_dev and preview_urls stay false.

Next step after merge/deploy of this canary: production Worker + DNS cutover by Loica/Degu. Not this agent.

Open in Web Open in Cursor 

View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.

Drop trailing slashes to match Next /about 200s, restore legacy /opengraph-image /icon /favicon.ico paths, and retry Dexscreener once on 429. Keep wrangler name exactly hypersnap-web-canary. After canary is green, Loica/Degu proceed to prod Worker + DNS — this change does not cut over DNS.

Co-authored-by: felirami <felirami@users.noreply.github.com>
@vercel

vercel Bot commented Sep 2, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
hypersnaporg Error Error Sep 2, 2026 3:07pm UTC

Request Review

@felirami
felirami marked this pull request as ready for review September 2, 2026 15:09
@arcabotai
arcabotai merged commit 02ef0f0 into main Sep 2, 2026
6 of 7 checks passed

This branch had an error being deployed

1 failed deployment
Preview — 7cf0c1f7 Deployed Sep 2, 2026 by vercel[bot]
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.

3 participants