Files
Pranay Prakash 3aaef98463 [core] Rename the option to experimental_retention
The unit and the accepted value set are both still open, so the name should
say so rather than look settled. The wire attribute stays `$retention` — it
is the reserved namespace's spelling, not the public API's.

Also rewrites the e2e test around the limitation this turned up. The purge
races the caller's read of the run result and generally wins, so
`await run.returnValue` on a zero-retention run resolves to the expired-data
placeholder; the test no longer asserts it, and says why. Waiting on the
purge is a strictly stronger wait anyway.

The payload is now padded past the ~422-byte inline cutoff. Below it a
payload is scrubbed in place inside the row; above it the World writes a blob
it has to delete. The old test used `addTenWorkflow` (123 -> 133) and so
exercised only the first path, which the server logs confirmed: every purge
reported s3ObjectsDeleted: 0.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-28 12:16:54 -07:00
..