From f2b896b9454b55c9e7f361e00d865997cfe2c816 Mon Sep 17 00:00:00 2001 From: rx-oo Date: Sun, 16 Aug 2026 12:52:19 -0400 Subject: [PATCH] fix(rlix-drivers): forward resize-timeout env knobs to MilesCoordinator RLIX_RESIZE_LOCK_TIMEOUT_S and MILES_RESIZE_RPC_TIMEOUT_S are read at import time inside the MilesCoordinator actor process (rlops/rlix#35). Ray actors do not inherit the driver shell environment on multi-node clusters, so a driver-side export silently never reached the actor. Add both keys to the existing explicit allowlists in run_miles_dual.py and run_miles_rlix.py, mirroring MILES_MAX_RESIDUAL_GPU_MEM_GB. The scheduler-side RLIX_RESIZE_RPC_TIMEOUT_S travels via rlix.init()'s own env forwarding (fixed rlix-side in rlops/rlix#35). --- examples/rlix/run_miles_dual.py | 5 +++++ examples/rlix/run_miles_rlix.py | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/examples/rlix/run_miles_dual.py b/examples/rlix/run_miles_dual.py index f637de0944a..33778d07648 100644 --- a/examples/rlix/run_miles_dual.py +++ b/examples/rlix/run_miles_dual.py @@ -295,6 +295,11 @@ def _build_pipeline( "TMS_INIT_ENABLE_CPU_BACKUP", "CUDA_DEVICE_MAX_CONNECTIONS", "NCCL_NVLS_ENABLE", + # Resize-chain timeout knobs read inside the MilesCoordinator + # actor process (rlops/rlix#35); without explicit forwarding a + # driver-side export never reaches the actor on multi-node. + "RLIX_RESIZE_LOCK_TIMEOUT_S", + "MILES_RESIZE_RPC_TIMEOUT_S", ): if (_v := os.environ.get(_k)) is not None: pipeline_runtime_env_vars[_k] = _v diff --git a/examples/rlix/run_miles_rlix.py b/examples/rlix/run_miles_rlix.py index 681c11f24fb..e4eac8d210b 100644 --- a/examples/rlix/run_miles_rlix.py +++ b/examples/rlix/run_miles_rlix.py @@ -184,6 +184,11 @@ class MilesPipelineConfig: "TMS_INIT_ENABLE_CPU_BACKUP", "CUDA_DEVICE_MAX_CONNECTIONS", "NCCL_NVLS_ENABLE", + # Resize-chain timeout knobs read inside the MilesCoordinator + # actor process (rlops/rlix#35); without explicit forwarding a + # driver-side export never reaches the actor on multi-node. + "RLIX_RESIZE_LOCK_TIMEOUT_S", + "MILES_RESIZE_RPC_TIMEOUT_S", ): if (_v := os.environ.get(_k)) is not None: pipeline_runtime_env_vars[_k] = _v