A local readback passed, but an independent reader returned 404 after shutdown

How to test agent sandbox persistence across shutdown and a new sandbox, from a September 2026 test.

Plori

How do you test that an AI agent sandbox keeps its files? On September 7, 2026, a controlled Plori recovery test showed that writing a file and reading it back is not enough.

The short answer

  • Test the lifecycle boundary the product promises. For durable files, read the same bytes from an independent path after shutdown, then again from a new sandbox attached to the same storage.
  • Our first test passed the local readback. The final saved-state update then failed during normal shutdown, and a separate reader returned 404 for the new file from an older valid snapshot.
  • That result did not prove permanent data loss. It showed that the final state had not reached that reader.

Minimum test

Use a marker whose content and hash are unique to the run.

  1. Create a new file in the documented persistent location, and flush it.
  2. Record the byte count and hash from a read in the running environment.
  3. Request a normal stop immediately after the write completes.
  4. Read the file through an independent files or replica path.
  5. Destroy the original environment, and start a new sandbox with the same persistent storage.
  6. Compare the restored bytes or hash with the recorded result.

In the corrected test, the independent reader returned HTTP 200 with the same hash, and a new gVisor environment later mounted the storage and observed identical bytes.

When it applies

  1. The test covered one normal stop and one new-environment remount. It did not test abrupt host loss, and it does not show a general availability or zero-loss guarantee.
  2. A successful fsync proves less than it appears to. It does not prove that a remote checkpoint, replica, export or sync-back step completed.
  3. Repeat the test at every boundary you promise, including several sleep and resume cycles and the user-facing download path.

The full post has a table of persistence scopes and two public issue reports.

Read the full post

Try plori.ai

Subscribe to Plori Engineering

Engineering notes building AI agents in the cloud

Free. Unsubscribe anytime.

Keep reading

All issues →
  1. Scion-style merges: one comparison takes 1.93 s at 100,000 files

    What we took from Anthropic's Scion for Workspaces, and the merge cost we measured before changing anything.

  2. Claude Code handed 0 of 240 unnamed-server prompts to our MCP server, then 21

    What Claude Code shows the model about MCP tools, and what a rewrite of our server text changed in 240 runs.

  3. AI agent files: a local disk, saved to object storage every 60 seconds

    What a crash can lose, how results are accepted, and the start and save times we measured.