NEST Runbook
The Phenom NEST production application, served via Cloudflare Pages from the Phenom-Backend repo’s prod branch.
Source:
asset-registry.yaml; curl https://nest.thephenom.app → HTTP 200; CF Pages Phenom-Backend prod branch
C2PA signed · SanMarcSoft AI content credential
What it is
nest.thephenom.app is the production NEST application – the primary authenticated user-facing interface for the Phenom platform. It is deployed to Cloudflare Pages from the prod branch of the Phenom-Backend GitHub repository. All production users interact with this deployment. Downtime here is a P1 incident.
Deployment chain
| Layer | Value |
|---|---|
| URL | https://nest.thephenom.app |
| DNS | Cloudflare (proxied, orange-cloud) |
| Hosting | Cloudflare Pages |
| Repo | Phenom-Backend (GitHub) |
| Branch | prod |
| CI | Cloudflare Pages build on push to prod |
| Auth | Cognito pool us-east-1_knEL7cqS3 (phenom-prod) |
| API backend | https://api.thephenom.app |
Merging or pushing to the prod branch triggers an automatic build and deployment on Cloudflare Pages.
Common operations
Deploy a new release to production
# Merge develop -> prod via GitHub PR (preferred path)
gh pr create --base prod --head develop \
--title "Release: $(date +%Y-%m-%d)" \
--body "Production release"
# After PR approval and merge, Cloudflare Pages builds automatically.
# Monitor build:
npx wrangler pages deployment list --project-name phenom-backend-prod
Roll back to a previous deployment
# List recent deployments
npx wrangler pages deployment list --project-name phenom-backend-prod
# In the Cloudflare dashboard: Pages > phenom-backend-prod > Deployments
# Select the target deployment > Rollback to this deployment
Purge Cloudflare cache after deployment
curl -X POST "https://api.cloudflare.com/client/v4/zones/${ZONE_ID}/purge_cache" \
-H "Authorization: Bearer ${CLOUDFLARE_API_TOKEN}" \
-H "Content-Type: application/json" \
--data '{"purge_everything":true}'
Verify it is working
curl -si https://nest.thephenom.app/ | grep -E "^HTTP|^cf-ray"
# Expected: HTTP/2 200, cf-ray header present
curl -sf https://nest.thephenom.app/ | grep -i "phenom\|nest\|<title"
# Expected: HTML with Phenom/NEST branding in page title or body
Common failure modes
| Symptom | Likely cause | Remediation |
|---|---|---|
| Login fails, 401 from API | Cognito pool misconfiguration or API key rotation | Check api.thephenom.app health; verify Cognito pool us-east-1_knEL7cqS3 |
| Blank white screen | JS bundle failed to load or CF Pages build error | Check CF Pages build log; purge cache |
| 502 / 503 | CF Pages deployment failed | Retry or roll back deployment in CF dashboard |
| Old version shown after deploy | Aggressive browser/CDN cache | Hard-refresh; purge CF cache |
| API calls fail from NEST | api.thephenom.app down or CORS misconfiguration |
See API runbook |
Related
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.