A request was made for a deployment that does not exist. The hostname resolved and reached a shadw edge node, but that node found no deployment to serve for it. The response is 404 with the header x-hive-error: DEPLOYMENT_NOT_FOUND.
This is a routing answer, not a crash. Your app was never invoked, so there are no runtime logs for the request — which is exactly how you tell it apart from an application error.
Every 404 screen carries a unique ID. It is the fastest way to identify which node answered:
Code: DEPLOYMENT_NOT_FOUND
ID: sfo1::a1b2c-1785527146044-3f9c2db1e77aThe part before :: is the region that served the response. That matters because shadw resolves the public hostnames round-robin across the fleet: if only some requests 404, compare the region prefix on a failing response against a succeeding one — a difference points at one node, not at your deployment.
The most common case. A per-deployment URL points at one immutable build; deleting the deployment, or deleting the project, retires that URL permanently. Re-check the address against the deployment list in your dashboard.
Preview and commit URLs are pinned to a specific commit. Promoting or rolling back production does not move them. For an address that always follows the current production build, use the project's production domain rather than a commit URL.
DNS can point at shadw while no project claims the hostname — the request arrives and matches nothing. Attach the domain to the project under its domain settings, then re-request. Until it is attached, every request for that host returns this error.
A deployment is placed on specific nodes. If a request reaches a node that neither hosts it nor can route to its host, you get this error rather than a hang. Persistent, region-correlated 404s on a deployment you can see in the dashboard are worth reporting with the error ID — that pattern is a platform-side routing problem, not a mistake in your project.
Confirm what the edge actually returned, including which node and why:
curl -sI https://your-app.shadw.app/ | grep -i 'x-hive-'x-hive-error confirms the classification and x-hive-region names the serving region. If the header is absent entirely, the response did not come from a shadw edge node at all — check that the hostname's DNS still points here before debugging anything else.