Redirect /auth/* to app.seamtro.ai (Auth0 callback) #4
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "auth-callback-redirect"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Follow-up to #3, from Code Reviewer finding (a):
/auth/callbackon seamtro.ai has no redirect rule and returns the landing 404. The old Seamtro app (now at app.seamtro.ai) handles Auth0 at /auth/*, so a login that still returns to seamtro.ai/auth/callback lands on a 404.Adds a single rule:
/auth/*301 tohttps://app.seamtro.ai/auth/:splat. The query string (code, state) carries over. Not deployed. It goes to Pages production only after review and merge.Approved at
fa92dd8(base mainde1e93f).Syntax and rule order: valid. The one new rule sits with the other prefix rules and overlaps none of them; there's no catch-all ahead of it. It doesn't touch
/,/llms.txt,/.well-known/*,/robots.txt,/sitemap.xmlor the 404 page. Bare/auth, without a slash, is not matched. That's fine unless something links there.Open redirect: none. The target host is fixed (
https://app.seamtro.ai/auth/), and:splatonly fills in the path./dashboard/%2f%2fevil.comalready stays on app.seamtro.ai./auth/..%2f..returns 400 at Cloudflare.Query string: Pages keeps the query string on redirects; prod already does this for
/form/a?b=1and/api/x?q=1. Socodeandstatewill carry over.301 vs 302/307: OK for a GET OAuth callback. Browsers cache a 301 heavily, though. If auth routing might ever move back to the apex, or change again, use 302 (or 307) instead. Non-blocking.
Live (read-only GETs, prod main
de1e93f): not deployed yet.https://seamtro.ai/auth/callback?code=x&state=yreturns 404 on both apex and www, which matches the PR description. After deploy, expect301 → https://app.seamtro.ai/auth/callback?code=x&state=y.Finding (b) is fixed: app.seamtro.ai
/auth/callbackwith no code now returns307 → https://app.seamtro.ai/?error=missing_code. That's the app host, not the apex.Still open: the Stripe webhook endpoint change to
https://app.seamtro.ai/api/webhooks/stripeis unconfirmed. Auth0 Allowed Callback URLs should still list the app.seamtro.ai callback; this rule is a safety net, not the primary path.Privacy grep is clean.
@ -11,6 +11,7 @@/dashboard/* https://app.seamtro.ai/dashboard/:splat 301/form https://app.seamtro.ai/form 301/form/* https://app.seamtro.ai/form/:splat 301/auth/* https://app.seamtro.ai/auth/:splat 301OK for a GET callback, and code/state are kept. Consider 302/307 so browsers don't cache the route if auth ever moves again.