{"record":{"id":"59b300cbd5c080dc","repo":"tracel-ai/burn","slug":"can-delete-policy-checkpoint","errorCode":null,"errorMessage":"Can delete policy checkpoint.","messagePattern":"Can delete policy checkpoint\\.","errorType":"panic","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/burn-train/src/learner/rl/checkpointer.rs","lineNumber":39,"sourceCode":"    RLPolicyRecord<RLC>: Checkpoint,\n    RLAgentRecord<RLC>: Checkpoint,\n{\n    /// Create checkpoint for the training process.\n    pub fn checkpoint(\n        &mut self,\n        policy: &RLC::PolicyState,\n        learning_agent: &RLC::LearningAgent,\n        epoch: usize,\n        store: &EventStoreClient,\n    ) {\n        let actions = self.strategy.checkpointing(epoch, store);\n\n        for action in actions {\n            match action {\n                CheckpointingAction::Delete(epoch) => {\n                    self.policy\n                        .delete(epoch)\n                        .expect(\"Can delete policy checkpoint.\");\n                    self.learning_agent\n                        .delete(epoch)\n                        .expect(\"Can delete learning agent checkpoint.\")\n                }\n                CheckpointingAction::Save => {\n                    self.policy\n                        .save(epoch, policy.clone().into_record())\n                        .expect(\"Can save policy checkpoint.\");\n                    self.learning_agent\n                        .save(epoch, learning_agent.record())\n                        .expect(\"Can save learning agent checkpoint.\");\n                }\n            }\n        }\n    }\n\n    /// Load a training checkpoint.\n    pub fn load_checkpoint(","sourceCodeStart":21,"sourceCodeEnd":57,"githubUrl":"https://github.com/tracel-ai/burn/blob/d16f7ba2ed0d41408189384044cc886fb4c8f957/crates/burn-train/src/learner/rl/checkpointer.rs#L21-L57","documentation":"Guard in the RL checkpointer's `checkpoint`: deleting an old policy checkpoint for the epoch selected by the checkpointing strategy failed (I/O or missing file), so the loop panics rather than continue with possibly unbounded checkpoint accumulation.","triggerScenarios":"Thrown at crates/burn-train/src/learner/rl/checkpointer.rs:39 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check permissions and disk state of the checkpoint directory","Inspect the underlying error from the record deletion","Handle stale/missing epochs gracefully if concurrent runs share the directory"],"exampleFix":null,"handlingStrategy":"retry","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"d16f7ba2ed0d41408189384044cc886fb4c8f957","analyzedAt":"2026-09-05T13:19:14.260Z","contentChangedAt":"2026-09-05T13:19:14.260Z","schemaVersion":2},"datasetVersion":"2026-09-12T17:17:11.597Z"}