Launch Knowledge Base
Debugging First Launch Failures
A layer-by-layer diagnosis guide for first-launch problems such as unreachable sites, DNS issues, HTTPS failures, app crashes, CORS errors, auth loops, and missing data.
First-launch debugging is stressful because many layers are new at the same time. The fastest path is not to guess. Diagnose from the outside in: can users reach the product, can the product reach its backend, can the backend reach its state, and can you see logs that explain failure?
Use this article as a triage flow.
Step 1: Is the public URL reachable?
Open the exact public URL in a clean browser session. Include the protocol and hostname users will use, such as https://www.example.com.
If the browser cannot reach the site, check:
- domain spelling
- whether DNS resolves
- whether the DNS target is correct
- whether the platform generated a public URL
- whether the app is deployed and serving
- whether a firewall or access rule blocks public traffic
If the platform URL works but the custom domain does not, the app may be healthy and the problem may be DNS or domain binding.
Step 2: Does DNS point to the right destination?
DNS issues often look like platform issues. Query the exact hostname. Do not assume example.com and www.example.com behave the same.
Common DNS problems:
- editing records at the wrong DNS provider
- registrar nameservers point somewhere else
- CNAME added for apex domain where provider does not support it
- old A record conflicts with new platform target
- TXT verification record has wrong host or value
- waiting period is not finished yet
If DNS is wrong, fix DNS before changing application code.
Step 3: Is HTTPS valid?
If the browser shows a certificate warning, the hostname and certificate do not match or issuance has not completed. If the site works over a platform URL but not over the custom domain, certificate validation may still be waiting on DNS or routing.
Check:
- the hostname is the one covered by the certificate
- DNS points to the platform target
- any required ownership TXT record is present
- the platform domain status is active
- both apex and
wwwhave the intended behavior
Do not ask users to bypass HTTPS warnings. Fix the trust layer.
Step 4: Does the route return the expected page?
A reachable domain can still return the wrong response.
| Symptom | Likely cause |
|---|---|
| 404 on home page | Wrong deploy output or route |
| 404 on refresh of app route | Missing SPA fallback rewrite |
| Old page appears | Cache or wrong deployment active |
| Blank page | JavaScript error or missing assets |
| Styles missing | CSS path or build output issue |
Use the browser network panel. Check the HTML request, JavaScript files, CSS files, images, and API calls separately.
Step 5: Does the server start?
For dynamic apps, a failed server start usually appears as 500, 502, 503, or a platform health-check failure.
Check runtime logs for:
- missing environment variables
- wrong start command
- app listening on the wrong port
- missing dependency
- build artifact not found
- database connection failure during boot
- unsupported Node or language runtime version
If the app crashes before handling requests, frontend debugging will not help.
Step 6: Do API calls work from the browser?
A page can load while API calls fail. In the browser network panel, inspect failed requests.
Common causes:
- frontend uses localhost API URL
- API URL points to staging or an old service
- CORS does not allow the production origin
- auth token or session cookie is missing
- API route changed but frontend expects the old contract
- server returns validation errors the UI does not display
Start with one failing request. Confirm its URL, method, status code, request body, and response body.
Step 7: Does auth work on the production domain?
Auth failures often appear as login loops, redirect errors, or sessions that disappear after refresh.
Check:
- auth provider callback URL
- allowed logout URL
- cookie domain
- secure cookie setting
- same-site cookie behavior
- frontend and backend session expectations
- clock or token expiration issues
Test anonymous access, login, protected route access, logout, and a denied access case.
Step 8: Does the database contain the expected state?
If the page loads and API responds but data is missing, check the state layer.
Common causes:
- migrations did not run
- app points to local or staging database
- production database is empty
- required seed data missing
- credentials lack table or collection permissions
- query needs an index
- serverless runtime exhausted connections
Run one safe production read and write through the app, then confirm it reaches the expected data store.
Step 9: Can you roll back?
If a new release broke a previously working product, rollback may be faster than live debugging. Roll back when the failure blocks users and the prior version is known to be healthy.
Do not use rollback to avoid root cause analysis. After service is restored, record what failed and what check would have caught it.
Flash Launch note
Flash Launch should make this diagnosis order visible in the product. A project status page is most useful when it tells the user which layer is waiting, failed, or healthy.