## Parent Child of #3219 and #3024. ## Problem and state owner `resources_servers/grl_tetris/app.py` owns a live Tetris environment, board, active piece, counters, reward, observation, done state, and piece RNG. ## Proposed adapter Provide an explicit JSON codec and recreate a fresh environment without replaying batched actions. Implement explicit checkpoint opt-in, route classification, export/restore/retire hooks, execution-to-session binding, revision reporting, atomic replacement under attempt N+1, and stale-attempt fencing. ## Acceptance criteria - [ ] Restore between batched turns preserves the active piece and makes the next action result identical; terminal cleanup removes the episode. - [ ] Checkpoint after multiple mutations, replace the server process, restore, and compare the next operation with an uninterrupted execution. - [ ] Corrupt or incomplete bulk state activates no sessions. - [ ] Attempt N cannot mutate or retire restored attempt N+1. - [ ] Terminal cleanup is idempotent and releases restored state exactly once.
Activity
ananthsub commentedon Oct 13, 2026
Superseded by the partial-rollout checkpointing design in #3882 onward.