Sandbox list pagination omits newer destroyed sandboxes that remain accessible by exact ID
moodymarshmallow
HOBBYOP

22 days ago

Hey guys. I've been trying out Railway sandboxes and have run into the following problem. Any help would be greatly appreciated!

Summary

The Railway Sandbox collection query and dashboard omit recently created

sandboxes, even though those sandboxes still exist and are accessible through

an exact-ID query.

This appears to be a listing/pagination or indexing issue rather than a sandbox

creation failure.

Environment

  • Observed: 2026-07-30, approximately 09:03–09:23 UTC
  • Railway TypeScript SDK: railway@3.6.0
  • Railway CLI: 5.8.0
  • Authentication: project token
  • Network isolation: ISOLATED
  • Idle timeout: 15 minutes
  • All affected sandboxes were subsequently destroyed normally

I can provide the project and environment IDs privately.

Reproduction

Two independent processes created sandboxes in the same Railway environment.

Each process created:

  1. One sandbox sequentially
  2. Two additional sandboxes concurrently

Every create request had a unique environment nonce, so the mutations were not

byte-identical.

One affected sandbox was:

ad1b5077-06fd-42d3-a404-fcbfeaf64265

An exact lookup for that ID succeeds and returns:

{
  "id": "ad1b5077-06fd-42d3-a404-fcbfeaf64265",
  "status": "DESTROYED",
  "createdAt": "2026-07-30T09:04:00.391Z"
}

However, the same sandbox is absent from the environment's sandboxes

connection.

We tested both:

sandboxes(environmentId: $environmentId, first: 100)

and:

sandboxes(environmentId: $environmentId, last: 100)

Both returned the same 100 records and the same page information:

{
  "hasNextPage": false,
  "hasPreviousPage": false,
  "startCursor": "059ba302-18c6-4fec-af2d-2f5a763fed57",
  "endCursor": "5bd4943e-068c-4625-905d-2c3eb02e4e6b"
}

The newest returned record was created at:

2026-07-30T09:03:53.205Z

That is earlier than the omitted sandbox, which was created at:

2026-07-30T09:04:00.391Z

The omitted sandbox also does not appear in the Railway dashboard.

Expected result

One of the following should happen:

  • The newer sandbox appears in the collection; or

  • Pagination reports another page through hasNextPage or

    hasPreviousPage.

first and last should not return the same capped page when newer accessible

records exist outside it.

Actual result

The collection returns exactly 100 destroyed sandboxes, omits newer accessible

records, and reports that no additional page exists.

Impact

Sandbox creation and execution work, but the dashboard and collection query

cannot be used for lifecycle history or auditability. It also prevents us

from reliably reconciling run-owned sandboxes against Railway's inventory.

Please let me know if you need any more info on this

Solved

1 Replies

Status changed to Awaiting Railway Response Railway 22 days ago


22 days ago

Sandboxes are a Priority Boarding feature still under active development, and the listing/pagination surface does not yet carry documented guarantees. The behavior you're describing with the sandboxes connection capping at 100 records while newer accessible records fall outside that window is a known gap in the current implementation but we've escalated it up to the team


Status changed to Awaiting User Response Railway 22 days ago


Status changed to Solved moodymarshmallow 21 days ago


Welcome!

Sign in to your Railway account to join the conversation.

Loading...