Skip to content

Fix RLM command timeout + consistent hashing - #2128

Closed
S1ro1 wants to merge 12 commits into
mainfrom
daniel/fix-rlm-command-timeout
Closed

S1ro1 wants to merge 12 commits into
mainfrom
daniel/fix-rlm-command-timeout

Conversation

@S1ro1

@S1ro1 S1ro1 commented Mar 30, 2026

Copy link
Copy Markdown
Collaborator

Summary

Note

Temporary PR for testing purposes.

🤖 Generated with Claude Code


Note

High Risk
High risk because it changes distributed inference job topology/routing and monkey-patches vLLM DP engine pause/resume behavior, which can affect cluster stability and hang/timeout modes. Also updates SLURM templates and monitoring interfaces, which can break deployments if misconfigured.

Overview
Enables multi-replica disaggregated (prefill/decode) inference by adding num_prefill_replicas/num_decode_replicas, per-role env overrides, and validation that replicas evenly divide node counts; SLURM templates now compute sub-replica ranks/heads accordingly.

Switches vllm-router policy from round_robin to consistent_hash (both standalone and PD-disaggregated) and threads the new replica/env parameters through the inference and RL SLURM entrypoints.

Extends the vLLM monkey-patch for DP pause/resume to ignore START_DP_WAVE while paused and to force a global unfinished sync on resume to avoid weight-update deadlocks.

Improves eval robustness/observability by tracking failed_rollouts, warning on failed groups, logging failed_rollouts metrics even when all outputs fail, and adding Monitor.log_eval_samples() with a W&B implementation that logs eval completions to a separate table.

Written by Cursor Bugbot for commit 986e65d. This will update automatically on new commits. Configure here.

S1ro1 and others added 11 commits March 25, 2026 18:04
Track how many eval rollouts failed due to sandbox/infra errors.
Derived from the difference between total eval inputs and successful
outputs. Also logged in the all-fail early return path.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Matej Sirovatka <54212263+S1ro1@users.noreply.github.com>

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

decode_env_overrides: Annotated[
dict[str, str],
Field(description="Extra environment variables exported only on decode nodes."),
] = {}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

New config fields added without CHANGELOG update

Low Severity

This PR adds four new config fields (num_prefill_replicas, num_decode_replicas, prefill_env_overrides, decode_env_overrides) and changes the semantics of num_prefill_nodes / num_decode_nodes (from "per replica" to "Total") in DisaggregatedInferenceDeploymentConfig, but CHANGELOG.md has not been updated. The project rule requires a changelog entry for any PR that modifies configuration structures or usage patterns.

Additional Locations (1)
Fix in Cursor Fix in Web

Triggered by project rule: BugBot Instructions

@S1ro1 S1ro1 closed this May 4, 2026
@mikasenghaas
mikasenghaas deleted the daniel/fix-rlm-command-timeout branch August 5, 2026 04:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants