Skip to content

fix: Cherry-pick #14461 - #14954

Closed
yunzhoul-nv wants to merge 1 commit into
release/1.5.0from
yunzhoul/cherrypick-150-14461
Closed

yunzhoul-nv wants to merge 1 commit into
release/1.5.0from
yunzhoul/cherrypick-150-14461

Conversation

@yunzhoul-nv

Copy link
Copy Markdown
Contributor

Cherry-pick #14461

Signed-off-by: Yunzhou (David) Liu <232973175+yunzhoul-nv@users.noreply.github.com>
@yunzhoul-nv
yunzhoul-nv requested review from a team as code owners September 16, 2026 19:58
@copy-pr-bot

copy-pr-bot Bot commented Sep 16, 2026

Copy link
Copy Markdown

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@github-actions github-actions Bot added fix backend::sglang Relates to the sglang backend labels Sep 16, 2026
# carries neither flag, so both would leave this unchecked. parsed_args
# comes from ServerArgs.add_cli_args, which declares both options across
# the supported SGLang releases.
check_elastic_ep_backend(

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

The supported XPU image is pinned to SGLang v0.5.11 (container/context.yaml), while elastic EP support is only available in SGLang >=0.5.16. Its parser does not create these attributes, so every XPU SGLang worker now fails during parse_args with AttributeError even when elastic EP was never requested. Read the optional parser fields compatibly before invoking the preflight check.

🤖 AI Fix

Pass getattr(parsed_args, "elastic_ep_backend", None) and getattr(parsed_args, "enable_dp_attention", False) to check_elastic_ep_backend and add a parse-args regression test for the v0.5.11-style namespace.



def _installed_mooncake_versions() -> Dict[str, str]:
"""Map each installed mooncake distribution to its version."""

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

This private helper's name and loop over _MOONCAKE_DISTRIBUTIONS already state that it maps installed distributions to versions.

🤖 AI Fix

Remove this docstring.

extension_modules,
torch_version="2.11.0+cu130",
):
"""Pin every probe so the check runs against a known image shape."""

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

This docstring only narrates the immediately following monkeypatch setup; the helper name and assignments already show that every probe is pinned.

🤖 AI Fix

Remove this docstring.



def _simulate_broken_mooncake(monkeypatch, **overrides):
"""An image whose mooncake ProcessGroup extension does not load."""

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

This docstring restates _simulate_broken_mooncake and the fixture values directly below it without recording a non-obvious constraint.

🤖 AI Fix

Remove this docstring.



def _simulate_healthy_mooncake(monkeypatch):
"""An image whose mooncake ProcessGroup extension loads and registers."""

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

This docstring repeats the helper name and the explicit successful-import/backend-registration fixture that follows.

🤖 AI Fix

Remove this docstring.



def test_accepts_mooncake_when_the_image_can_serve_it(monkeypatch):
"""Negative control: a working image is not blocked."""

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

The test name and its healthy fixture plus successful call already express this negative control; the docstring adds no lasting rationale.

🤖 AI Fix

Remove this docstring.



def _install_fake_sglang_sources(monkeypatch, tmp_path, import_line):
"""Point the resolver at a source tree naming one ProcessGroup module."""

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

This docstring merely expands the helper name; the created package tree and written import line make the setup self-explanatory.

🤖 AI Fix

Remove this docstring.

@dagil-nvidia

Copy link
Copy Markdown
Collaborator

Closing as a duplicate: #14953 carried the same #14461 fix into release/1.5.0 and merged 2026-09-16 16:16 PT.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backend::sglang Relates to the sglang backend fix size/XL

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants