[object Object]

← back to Exo

fix: raise error when MlxJaccl requested without RDMA cycles (#1585)

a4c2aa2b872d6654f2acd4af236de03993ec2ecf · 2026-02-23 02:09:01 -0800 · Alex Cheema

## Summary
- When MlxJaccl (RDMA) placement is requested but no RDMA-connected
cycles exist, raise a clear ValueError instead of silently falling back
to non-RDMA cycles
- Split from #1519 for independent review

## Test plan
- [x] basedpyright — 0 errors
- [x] ruff check — passes

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>

Files touched

Diff

commit a4c2aa2b872d6654f2acd4af236de03993ec2ecf
Author: Alex Cheema <41707476+AlexCheema@users.noreply.github.com>
Date:   Mon Feb 23 02:09:01 2026 -0800

    fix: raise error when MlxJaccl requested without RDMA cycles (#1585)
    
    ## Summary
    - When MlxJaccl (RDMA) placement is requested but no RDMA-connected
    cycles exist, raise a clear ValueError instead of silently falling back
    to non-RDMA cycles
    - Split from #1519 for independent review
    
    ## Test plan
    - [x] basedpyright — 0 errors
    - [x] ruff check — passes
    
    🤖 Generated with [Claude Code](https://claude.com/claude-code)
    
    Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
---
 src/exo/master/placement.py | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/exo/master/placement.py b/src/exo/master/placement.py
index a0604055..5f191b84 100644
--- a/src/exo/master/placement.py
+++ b/src/exo/master/placement.py
@@ -112,7 +112,11 @@ def place_instance(
         cycle for cycle in smallest_cycles if topology.is_rdma_cycle(cycle)
     ]
 
-    if command.instance_meta == InstanceMeta.MlxJaccl and smallest_rdma_cycles != []:
+    if command.instance_meta == InstanceMeta.MlxJaccl:
+        if not smallest_rdma_cycles:
+            raise ValueError(
+                "Requested RDMA (MlxJaccl) but no RDMA-connected cycles available"
+            )
         smallest_cycles = smallest_rdma_cycles
 
     cycles_with_leaf_nodes: list[Cycle] = [

← 7312c535 feat: add user context prompt and GitHub issue option to mac  ·  back to Exo  ·  Better onboarding UX (#1533) f370452d →