From 114535c64e11aa7728ac5e6a32b71a97e04359ce Mon Sep 17 00:00:00 2001 From: Pepijn Date: Thu, 16 Apr 2026 21:37:35 +0200 Subject: [PATCH] fix(robocasa): override RoboCasaGymEnv default split (test -> all) RoboCasaGymEnv defaults split="test", but create_env only accepts {None, "all", "pretrain", "target"}, so the out-of-the-box default crashes with ValueError. Always pass "all" when split is None. Made-with: Cursor --- src/lerobot/envs/robocasa.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/lerobot/envs/robocasa.py b/src/lerobot/envs/robocasa.py index 945b7e646..168ca6f43 100644 --- a/src/lerobot/envs/robocasa.py +++ b/src/lerobot/envs/robocasa.py @@ -182,13 +182,15 @@ class RoboCasaEnv(gym.Env): return from robocasa.wrappers.gym_wrapper import RoboCasaGymEnv + # RoboCasaGymEnv has a broken default split="test" (invalid for create_env + # which only accepts None/"all"/"pretrain"/"target"). Always pass a valid + # value so we don't hit that default. kwargs: dict[str, Any] = { "env_name": self.task, "camera_widths": self.observation_width, "camera_heights": self.observation_height, + "split": self.split if self.split is not None else "all", } - if self.split is not None: - kwargs["split"] = self.split self._env = RoboCasaGymEnv(**kwargs)