Production deployment READY+PROMOTED but returns NOT_FOUND (live:false)

Title: Production deployment READY+PROMOTED but returns NOT_FOUND (live:false)

  • Project: tasq-cal with Root Directory web

  • Deployment ID: dpl_81EjGVotcq9miu7p7D8tDjCjwtvt

  • Status: READY, readySubstate: PROMOTED, aliasAssigned: true

  • But live: false and all routes return 404

  • Build logs confirm routes generated (/legal/privacy-policy, etc.)

  • Redeployment did not resolve the issue

There’s another community post with 404 debugging tips that might be helpful. Please give these solutions a try and let us know how it goes.

A human should be around soon to offer more advice. But you can also get helpful information quickly by asking v0.

This is the last answer from your AI assistant, and it created the post above:

Thank you for the detailed context! This is a puzzling situation — routes showing in build logs but returning 404 on both the custom domain and .vercel.app URLs is unusual. Let me investigate your account to diagnose this.

I found your project. Let me dig deeper into the deployment details and check the domain binding to understand what’s happening.

Good progress! I can see the deployment and domains are configured correctly. Let me check the build events and look into why the framework might not be detected properly — I noticed framework: null in the project settings which is unusual for a Next.js project.

I can see the build logs clearly show Next.js 16.2.4 successfully generating the legal pages. Let me check the project’s SSO protection settings and look at the live status, which I noticed is set to false:

I found the issue! Let me also verify some additional details:

I now have a complete picture of your issue. Here’s my analysis:
:magnifying_glass_tilted_left: Investigation Summary
Check Status Finding
Domain binding :white_check_mark: tasqcal.app is correctly assigned and verified to project tasq-cal
Production deployment :white_check_mark: Deployment dpl_81EjGVotcq9miu7p7D8tDjCjwtvt is READY with readySubstate: PROMOTED
Alias assignment :white_check_mark: aliasAssigned: true — domains are linked to the deployment
Root Directory :white_check_mark: Set to web as expected
Build output :white_check_mark: Routes generated correctly: /legal/privacy-policy, /legal/terms-of-use, /legal/eula
Framework Preset :warning: Set to null (not detected), but Next.js 16.2.4 ran correctly
Project live status :red_circle: live: false — this is likely the issue
:bullseye: Root Cause: Project Not “Live”

The project’s live: false status indicates the deployment is not being served publicly. This typically happens when:

Git author verification failed on a previous commit — A previous deployment was blocked, and the project's "live" state wasn't properly restored when the subsequent deployment succeeded  
SSO Protection is enabled — Your project has ssoProtection.deploymentType: "all_except_custom_domains", which should allow custom domains but may be interacting unexpectedly  
Previous ERROR deployment — I see dpl_7btqmC8Vki8uR4VzrCKL8oKMJawn was in ERROR state before your successful deployment  

The deployment did build successfully and routes are generated, but the traffic isn’t being routed to it despite aliasAssigned: true.
:hammer_and_wrench: Suggested Fix

Since the deployment is marked READY and PROMOTED but live: false, this appears to be an internal state inconsistency. Let me check if there’s anything else we can do to resolve this:

Given this is an internal state issue where the build succeeded, routes were generated, aliases assigned, but the deployment isn’t being served (live: false), this requires support team investigation.
:light_bulb: What You Can Try First

Before escalating, try these quick actions:

Trigger a fresh deployment — Make a small commit (even whitespace) and push to main. Sometimes this resets the deployment state.  

Manually promote via the dashboard — Visit your deployments page, find the successful deployment, click the three dots menu, and select "Promote to Production" to force reassignment.  

Check if the .vercel.app URL works — Try accessing directly: https://tasq-ha9utqqbj-maasbodev-3825s-projects.vercel.app/legal/privacy-policy  

:memo: If the Above Doesn’t Work

This appears to be a deployment state inconsistency where live: false despite READY + PROMOTED status. This is not something you can fix through configuration — it requires investigation of the internal deployment records.

Would you like me to prepare a support case for you? I can include all the diagnostic details I’ve gathered.