Skip to content

[dev] [Marfuen] mariano/swap-onboarding-cloud-software-order#2452

Merged
Marfuen merged 7 commits intomainfrom
mariano/swap-onboarding-cloud-software-order
Apr 3, 2026
Merged

[dev] [Marfuen] mariano/swap-onboarding-cloud-software-order#2452
Marfuen merged 7 commits intomainfrom
mariano/swap-onboarding-cloud-software-order

Conversation

@github-actions
Copy link
Copy Markdown
Contributor

@github-actions github-actions bot commented Apr 3, 2026

This is an automated pull request to merge mariano/swap-onboarding-cloud-software-order into dev.
It was created by the [Auto Pull Request] action.

Marfuen and others added 4 commits April 2, 2026 17:22
Move the infrastructure/cloud hosting question ahead of the software
question in the onboarding wizard for a more logical flow.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…tokens

Frontend:
- Green checkmark now requires both DB and live Vercel verified status
- _vercel TXT value from live Vercel API instead of stale DB value
- Show DNS records when Vercel says unverified, even if DB says verified

Backend:
- Don't delete+re-add domains on Vercel when re-saving (prevents token regen)
- Remove old domain from Vercel when switching to a new one
- checkDnsRecords fetches live Vercel state instead of stale DB values
- Only set domainVerified=true after Vercel confirms verification
- Add domain ownership check in checkDnsRecords
- CORS only allows verified custom domains

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@vercel
Copy link
Copy Markdown

vercel bot commented Apr 3, 2026

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

Project Deployment Actions Updated (UTC)
comp-framework-editor Ready Ready Preview, Comment Apr 3, 2026 3:26pm
2 Skipped Deployments
Project Deployment Actions Updated (UTC)
app Skipped Skipped Apr 3, 2026 3:26pm
portal Skipped Skipped Apr 3, 2026 3:26pm

Request Review

@cursor
Copy link
Copy Markdown

cursor bot commented Apr 3, 2026

PR Summary

Medium Risk
Changes custom-domain verification flow and CORS allowlisting, including new Vercel/DB synchronization and domain ownership checks; mistakes could block valid domains or incorrectly publish unverified ones.

Overview
Custom domains are now treated as trusted for CORS only after verification. getCustomDomains filters to domainVerified: true trusts, reducing exposure from unpublished/unverified domains.

Trust portal domain management is hardened and made more stable. Vercel domain API calls now URL-encode validated domains, old domains are best-effort removed when switching, and the “already on project” path no longer deletes/re-adds domains (avoids regenerating verification tokens) while syncing isVercelDomain/vercelVerification.

DNS verification now enforces org ownership and uses live Vercel status. checkDnsRecords ensures the requested domain matches the org’s configured domain, fetches live Vercel verification data (syncing it back to DB with fallback), and only marks domainVerified/publishes once Vercel confirms ownership for cross-account domains.

UI reflects combined DB+Vercel verification state. The portal settings screen derives an effective “verified” state, shows the _vercel TXT row when needed based on live Vercel requirements, and prefers live Vercel verification values over potentially stale DB tokens.

Written by Cursor Bugbot for commit c43d8e1. This will update automatically on new commits. Configure here.

…button

- Only gate domainVerified on Vercel verify response for cross-account
  domains (requiresVercelTxt). Same-account domains set domainVerified=true
  after DNS check passes — Vercel picks up CNAME on its own.
- Fix _vercel TXT Name copy button copying the token value instead of
  the string "_vercel" (both desktop and mobile layouts).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add safeDomainPath() that encodes user-provided domains before embedding
them in Vercel API and networkcalc URL paths. The existing validateDomain
regex already prevents dangerous characters, but encodeURIComponent adds
defense-in-depth and satisfies CodeQL's SSRF detection.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@vercel vercel bot temporarily deployed to Preview – portal April 3, 2026 15:25 Inactive
@vercel vercel bot temporarily deployed to Preview – app April 3, 2026 15:25 Inactive
@Marfuen Marfuen merged commit c21c656 into main Apr 3, 2026
11 checks passed
@Marfuen Marfuen deleted the mariano/swap-onboarding-cloud-software-order branch April 3, 2026 15:28
@claudfuen
Copy link
Copy Markdown
Contributor

🎉 This PR is included in version 3.15.1 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants