feat(backends): handle conditional disagg bypass annotation - #11719
Merged
Conversation
Signed-off-by: Karen Chung <karenc@nvidia.com>
This was referenced Jul 15, 2026
karen-sy
marked this pull request as ready for review
July 15, 2026 19:09
…ernel Signed-off-by: Karen Chung <karenc@nvidia.com>
karen-sy
force-pushed
the
karenc/condp-backend-consumers
branch
from
July 20, 2026 22:03
b8ac696 to
a32f0eb
Compare
|
Signed-off-by: Karen Chung <karenc@nvidia.com>
Signed-off-by: Karen Chung <karenc@nvidia.com>
karen-sy
force-pushed
the
karenc/condp-backend-consumers
branch
from
July 20, 2026 23:07
a32f0eb to
da756f7
Compare
Signed-off-by: Karen Chung <karenc@nvidia.com>
tedzhouhk
reviewed
Jul 21, 2026
tedzhouhk
approved these changes
Jul 21, 2026
alec-flowers
approved these changes
Jul 21, 2026
connorcarpenter15
approved these changes
Jul 22, 2026
Signed-off-by: Karen Chung <karenc@nvidia.com>
Contributor
WalkthroughThe change adds configurable conditional-disaggregation policies to the KV router and enables annotated remote-prefill bypass handling in vLLM and TensorRT-LLM. SGLang rejects the annotation early, while router configuration, KV events, and backend tests are updated. ChangesConditional disaggregation
Estimated code review effort: 4 (Complex) | ~60 minutes 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Comment |
Contributor
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@components/src/dynamo/trtllm/request_handlers/handler_base.py`:
- Around line 719-732: Update the bypass handling around
use_request_disagg_params and the request-parameter replacement near
request_type so multimodal EPD requests reuse decoded ep_disaggregated_params
with context_and_generation when available, preserving embedding handles. Only
construct the minimal request_type-based LlmDisaggregatedParams for text-only
bypasses, and add an integration test verifying generate_async receives the
expected engine argument.
In `@lib/kv-router/src/scheduling/config.rs`:
- Around line 186-214: Update the DYN_ROUTER_CONDITIONAL_DISAGG_POLICY handling
to emit a tracing::warn! diagnostic when value.parse() fails, while preserving
the existing assignment for valid policies and default behavior for invalid
values. Follow the warning behavior used by the deprecated-key path immediately
above.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: 775b9d41-c428-436c-8ee7-f3d217419c7b
📒 Files selected for processing (11)
components/src/dynamo/sglang/request_handlers/llm/decode_handler.pycomponents/src/dynamo/trtllm/request_handlers/handler_base.pycomponents/src/dynamo/trtllm/tests/test_trtllm_handler_base.pycomponents/src/dynamo/vllm/args.pycomponents/src/dynamo/vllm/handlers.pycomponents/src/dynamo/vllm/main.pycomponents/src/dynamo/vllm/tests/test_vllm_worker_handler.pylib/bindings/python/rust/llm/entrypoint.rslib/kv-router/src/conditional_disagg.rslib/kv-router/src/lib.rslib/kv-router/src/scheduling/config.rs
💤 Files with no reviewable changes (2)
- components/src/dynamo/vllm/main.py
- components/src/dynamo/vllm/args.py
MatejKosec
reviewed
Jul 24, 2026
…mers Signed-off-by: Karen Chung <karenc@nvidia.com>
Signed-off-by: Karen Chung <karenc@nvidia.com>
karen-sy
enabled auto-merge (squash)
July 29, 2026 20:14
Signed-off-by: Karen Chung <karenc@nvidia.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Important
This PR is [2/5] in the conditional-disaggregation stack.
Merge order is bottom-up: #11718 merges to
mainfirst, and #11723 merges last.Do not merge this PR until every earlier PR in the checklist has merged and this branch has been rebased/retargeted as needed.
Link to the DEP: #11514
Stack merge order:
Reference to original (closed) combined PR, with addressed review comments: ai-dynamo/dynamo#11357
Overview:
Details:
Where should the reviewer start?
Related Issues
🔗 This PR is linked to an issue:
🚫 This PR is NOT linked to an issue:
Summary by CodeRabbit