Push deploys failing at SNAPSHOT_CODE since 2026-05-09 — "service config at railway.toml not found"
nmarkman
PROOP

12 days ago

> TL;DR: Every push-triggered deploy on this service has failed at SNAPSHOT_CODE since 2026-05-09. Manual redeploys of pre-2026-05-09 cached snapshots still succeed. Looks like a platform-side regression in the snapshot analyzer.

Service

- Project: Expert Field Notes4d62f3f5-c363-4a9b-bd04-c357671477ae

- Service: crcg-news-synthesis36dbb34f-4067-4291-acc0-cce189f4b0a6

- Environment: production0aedc9c5-b708-4d95-9564-27b418b58c73

- Repo: nmarkman/crcg-news-synthesis — monorepo; service root is field-notes/

Failure

Every fresh build emits this contradictory log sequence at SNAPSHOT_CODE:

```

root directory set as 'field-notes'

config-as-code path set as 'railway.toml'

found 'Dockerfile' at 'field-notes/Dockerfile'

found 'railway.toml' at 'field-notes/railway.toml'

root directory sanitized to 'field-notes'

service config at 'railway.toml' not found

```

The analyzer finds railway.toml, sanitizes the root directory, then reports the same file as not found. Build is abandoned in 9–14 seconds with no Docker step.

- Most recent failure: deployment 7e2315c8-c190-47f4-9629-9753feb8c0a7 (commit 20107d2, 2026-05-10)

- Last success: deployment 12a66122-894b-4b80-a3c3-5f72420edd5b (2026-05-08, manual redeploy of a pre-bug cached snapshot — currently serving prod)

Railway's own diagnostic tool agrees this is platform-side — quoting its output:

> "This deployment is failing due to a platform-side issue in Railway's snapshot analyzer. The analyzer correctly finds railway.toml at field-notes/railway.toml but then fails to load it, reporting 'service config at railway.toml not found.' This same error has affected every deployment since 2026-05-09 regardless of code or config changes, and the Railway team will need to investigate."

What I've tried (all hit the same error, or a downstream variant of it):

- source.rootDirectory set to field-notes, /field-notes, and null

- Moved railway.toml to repo root with dockerfilePath = "field-notes/Dockerfile"

- Moved Dockerfile to repo root with dockerfilePath = "Dockerfile"

- Added/removed .dockerignore

- railway up --detach direct upload from local

- Reverted to the original layout that worked pre-2026-05-09 (Dockerfile + railway.toml inside field-notes/, simple COPY . ., rootDirectory = field-notes)

In every case where snapshot-analyze appeared to pass, the build then failed at BuildKit because Railway forced rootDirectory="field-notes" regardless of the service-level config. The deployment record consistently shows rootDirectory: "field-notes" even when getServiceConfigTool returns source.rootDirectory: null.

Current state: repo is back on the original (working pre-bug) configuration at commit 20107d2 on main. Production is healthy on the cached 2026-05-08 snapshot, but no code changes can ship until this is resolved.

Ask: please investigate the snapshot-analyzer regression and reply when it's fixed (or with a workaround that doesn't depend on rootDirectory).

Solved$10 Bounty

2 Replies

Status changed to Awaiting Railway Response Railway 12 days ago


11 days ago

Pushing this to bounties so the community can help dig in.


Status changed to Awaiting User Response Railway 11 days ago


11 days ago

This thread has been marked as public for community involvement, as it does not contain any sensitive or personal information. Any further activity in this thread will be visible to everyone.

Status changed to Open brody 11 days ago


nmarkman
PROOP

11 days ago

Awesome! That resolved it - thank you very much


Status changed to Solved nico 11 days ago


Welcome!

Sign in to your Railway account to join the conversation.

Loading...