Skip to content

build(llm-router): bump llm-d-router to v0.11.0 and patch vllm-router for EPD - #761

Merged
thxCode merged 2 commits into
mainfrom
build/llm-router-epd
Oct 14, 2026
Merged

thxCode merged 2 commits into
mainfrom
build/llm-router-epd

Conversation

@thxCode

@thxCode thxCode commented Oct 14, 2026

Copy link
Copy Markdown
Collaborator

What type of PR is this?

/kind enhancement
/area worker

What this PR does / why we need it:

  • Bumps LLMD_ROUTER_VERSION in pack/llm-router/Dockerfile from v0.10.0 to v0.11.0 and rebases pack/llm-router/patches/llm-d/0001-observer-endpoints-and-dispatch.patch onto v0.11.0:
    • Preserves all seven observer revision sites and allows the passthrough parser added to the default set in v0.11.0.
    • Adds a lock-order regression test guarding against observer and datastore lock inversion.
  • Carries upstream vllm-project/router PR 266 (commit 516f1cb, Encoder-Prefill-Decode routing) as pack/llm-router/patches/vllm-router/0001-epd-routing.patch on VLLM_ROUTER_VERSION=v0.1.16.1, because no upstream release tag contains 516f1cb yet:
    • Documents in pack/llm-router/Dockerfile and the patch header that VLLM_ROUTER_VERSION moves to the first upstream tag containing 516f1cb and drops 0001-epd-routing.patch.
    • Rebases the Mooncake lazy bootstrap lookup (0002) and read-only observer endpoint (0003) patches onto the patched tree.
    • Restores the Kubernetes discovery readiness-loss and label-deselect withdrawal patch (0004) with UID-excluded Pod comparison and stub-router unit tests so the upstream test suite passes.

Which issue(s) this PR links to:

NONE

Special notes for your reviewer:

  • Split out from the Encoder-Prefill-Decode (EPD) disaggregation implementation so the Base Image workflow can publish a new gpustack/llm-router image before the operator's default router image setting is bumped.
  • Verified that all patches apply cleanly via git apply --check and git apply on their pinned upstream refs (llm-d/llm-d-router v0.11.0 and vllm-project/router v0.1.16.1), and that the patched trees compile and pass their unit tests (go test ./... for llm-d-router and cargo test --locked --bin vllm-router --lib for vllm-router).

Does this PR introduce a user-facing change?

NONE

- rebase the observer patch onto v0.11.0 and keep its seven revision sites
- allow the passthrough parser that v0.11.0 adds to the default set
- add a lock-order test that fails on the observer and datastore lock inversion

Signed-off-by: thxCode <thxcode0824@gmail.com>
Pin vllm-router at v0.1.16.1 and carry the upstream EPD routing change
(commit 516f1cb) as a patch, because no release tag contains it yet.
The patch header and Dockerfile state that the pin moves to the first
upstream tag carrying 516f1cb and deletes 0001-epd-routing.patch.

Rebase the Mooncake lookup and observer patches onto the new base
without changing their content. Restore the discovery readiness patch
as the fourth patch. It now compares Pod values without the UID and
its tests use a stub router, so the upstream test suite passes with it.

The patched tree passes the same tests as the clean tag. The only
failures on both are the eight wasm_middleware tests, which need a
wasm32-wasip2 target.

Signed-off-by: thxCode <thxcode0824@gmail.com>
@gpustack-code-review

Copy link
Copy Markdown

✅ OpenCodeReview: Review complete: 0 finding(s) across 1 selected item(s).

@thxCode
thxCode merged commit 91f4efe into main Oct 14, 2026
7 checks passed
@thxCode
thxCode deleted the build/llm-router-epd branch October 14, 2026 08:17
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.

1 participant