2 months ago
Issue Summary:
Railway is deploying commits with SHA hashes that cannot be found in my GitHub repository. When triggering deployments (webhook or manual
"Redeploy"), Railway displays commit SHAs that don't exist in git history, GitHub API, or reflog.
Evidence:
GitHub's actual state (verified via GitHub API):
- Latest commit: 5b4bbe2 (full: 5b4bbe27e3e5270056879a39a05e9ccc0084b1f9)
- Timestamp: 2025-12-29T04:44:13Z
Previous verified commits:
- e2d27a6 (2025-12-29T04:39:23Z)
- 90b2ac8 (2025-12-28T23:42:51Z)
- 819d5f1 (2025-12-28T23:37:25Z)
Railway's displayed commits (none exist in repository):
- 13d796a6
- 79837bb4
- e3d10964
- 8903b139
- 33b4f187 (most recent)
Verification:
git log --all --oneline | grep "13d796a" # No results
git log --all --oneline | grep "33b4f18" # No results
git reflog | grep "13d796a" # No results
Timeline:
1. Dec 28, 23:37 - Pushed commit 819d5f1
2. Dec 28, 23:40 - Railway deployed 13d796a6 (phantom)
3. Dec 28, 23:42 - Pushed 90b2ac8 to trigger webhook
4. Dec 28, 23:45 - Clicked "Redeploy" → deployed 8903b139 (phantom)
5. Dec 29, 04:39 - Disconnected/reconnected GitHub, pushed e2d27a6
6. Dec 29, 04:40 - Railway deployed 13d796a6 again (phantom)
7. Dec 29, 04:41 - Set Root Directory to backend → deployed 33b4f187 (phantom)
8. Dec 29, 04:44 - Removed Root Directory, pushed 5b4bbe2
9. Current - Issue persists
Impact:
- New code not deploying to production
- API routes return 404 errors
- Service worked correctly for 6 months prior
Repository structure:
/
├── backend/
│ ├── src/
│ └── package.json
├── frontend/
└── railway.toml
railway.toml:
[build]
builder = "NIXPACKS"
buildCommand = "cd backend && npm install && npm run build"
[deploy]
startCommand = "cd backend && node dist/scripts/runMarketplaceMigration.js && node dist/index.js"
restartPolicyType = "ON_FAILURE"
restartPolicyMaxRetries = 10
healthcheckPath = "/health"
healthcheckTimeout = 100
Attempted fixes:
- Disconnected/reconnected GitHub integration
- Disconnected/reconnected branch
- Toggled Root Directory setting (blank vs backend)
- Deleted conflicting config files
- Pushed empty commits
- Multiple manual redeploys
- Simplified configuration
- Verified GitHub connection settings
Expected vs Actual:
- Expected: Deploy commit 5b4bbe2 from GitHub
- Actual: Deploys phantom commit 33b4f187 that doesn't exist
Possible causes:
- Corrupted build cache
- Internal commit reference mismatch
- Webhook integration issue
1 Replies
2 months ago
What you are referring to as a non existent GitHub commit is a part of a UUID.
Every deployment on Railway will get a v4 UUID, so what you are seeing and interpreting as a GitHub hash is just a portion of the deployment's UUID.
Status changed to Awaiting User Response Railway • 2 months ago
2 months ago
This thread has been marked as solved automatically due to a lack of recent activity. Please re-open this thread or create a new one if you require further assistance. Thank you!
Status changed to Solved Railway • about 2 months ago