shadwshadw/Docs
GuidesAPIGetting Started
Dashboard
⌘K
Start
  • Overview
  • Getting started
  • Fundamentals
  • Production checklist
Deploy
  • Deploying apps
  • Environment & secrets
  • GitOps
  • Domains & TLS
Platform
  • Regions & the mesh
  • CLI
  • API reference
  • Self-hostingOps
Errors
  • DEPLOYMENT_NOT_FOUND
Errors

DEPLOYMENT_NOT_FOUND

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.

Read the error ID first

Every 404 screen carries a unique ID. It is the fastest way to identify which node answered:

bash
Code: DEPLOYMENT_NOT_FOUND
ID:   sfo1::a1b2c-1785527146044-3f9c2db1e77a

The 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.

Common causes

The URL is wrong or the deployment was deleted

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.

You are using a preview URL for a superseded build

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.

A custom domain is not attached to a project

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.

The deployment exists but not where the request landed

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.

Quick checks

Confirm what the edge actually returned, including which node and why:

bash
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.

Related

shadw's error code and 404 screen intentionally mirror Vercel's, so a URL or workflow moved between the two platforms surfaces the same diagnosis. Vercel documents the equivalent error here:

Vercel — DEPLOYMENT_NOT_FOUND

Domains & TLS covers attaching a custom domain, and Regions & the mesh explains how a request finds the node hosting your deployment.