Skip to content

Exempt Dynamo vLLM/SGLang from sign-off engine-first ordering / 签核引擎优先顺序规则豁免 Dynamo vLLM/SGLang - #3667

Merged
functionstackx merged 1 commit into
mainfrom
signoff-engine-first-oss-dynamo
Oct 2, 2026
Merged

functionstackx merged 1 commit into
mainfrom
signoff-engine-first-oss-dynamo

Conversation

@nvpohanh

@nvpohanh nvpohanh commented Oct 2, 2026

Copy link
Copy Markdown
Collaborator

[by Claude Code]

Clarify the sign-off verifier's engine-first ordering rule (Check 6(b) in .github/codeowner-signoff-verify-prompt.md), per a decision from the SA admins.

The rule puts open-source engines ahead of vendor-specific frameworks. Dynamo is a deployment layer, not a separate engine. Before this change, Check 6(b) listed "dynamo variants" as additional frameworks, so a dynamo-sglang submission failed when the model and SKU had no plain sglang entry. #3629 was rejected this way.

After this change:

  • Open-source engine entries (vllm, dynamo-vllm, sglang, sglang-disagg, dynamo-sglang) are never subject to the ordering rule. For example, dynamo-sglang does not need an existing sglang entry.
  • Vendor-specific framework entries (trt, dynamo-trt, atom, atom-disagg, and similar) still need an existing open-source engine entry for the same model and SKU.
  • The exceptions are unchanged: truly new or preview hardware (e.g. Rubin GPUs) and new model architectures that vLLM/SGLang do not support yet.

This changes only the verifier prompt. No benchmark configs or recipes change, so it needs no perf-changelog.yaml entry or sweep.

AI model disclosure

  • Claude Opus 5.5 (Claude Code): drafted the prompt change from the SA admins' decision and prepared this PR.
中文

根据 SA 管理员的决定,澄清签核验证器的引擎优先顺序规则(.github/codeowner-signoff-verify-prompt.md 中的 Check 6(b))。

该规则要求开源引擎先于厂商专用框架提交。Dynamo 是部署层,而不是独立的引擎。此前 Check 6(b) 将“dynamo variants”列为额外框架,因此当同一模型和 SKU 没有 sglang 条目时,dynamo-sglang 提交会被判定失败。#3629 即因此被拒绝。

修改后:

  • 开源引擎条目(vllm、dynamo-vllm、sglang、sglang-disagg、dynamo-sglang)不受该顺序规则约束。例如,dynamo-sglang 无需先有 sglang 条目。
  • 厂商专用框架条目(trt、dynamo-trt、atom、atom-disagg 等)仍需同一模型和 SKU 已有开源引擎条目。
  • 例外情况保持不变:真正的新硬件或预览硬件(如 Rubin GPU),以及 vLLM/SGLang 尚不支持的新模型架构。

本 PR 仅修改验证器提示词,不涉及任何基准配置或 recipe,因此无需 perf-changelog.yaml 条目或 sweep。

AI 模型披露

  • Claude Opus 5.5 (Claude Code):根据 SA 管理员的决定起草提示词修改,并准备此 PR。

🤖 Generated with Claude Code

…fier

Check 6(b) treated every Dynamo variant as an additional framework, so a
dynamo-sglang entry failed when the model and SKU had no plain sglang entry.
The ordering rule is meant to put open-source engines ahead of
vendor-specific frameworks. Treat vllm, dynamo-vllm, sglang, sglang-disagg
and dynamo-sglang as open-source engine entries that never need a prior
entry. Require one of them before trt, dynamo-trt, atom or atom-disagg
entries, keeping the new-hardware and new-architecture exceptions.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
@nvpohanh
nvpohanh requested a review from a team October 2, 2026 06:12
@functionstackx
functionstackx merged commit 15b01bb into main Oct 2, 2026
2 checks passed
@functionstackx
functionstackx deleted the signoff-engine-first-oss-dynamo branch October 2, 2026 06:22

@claude claude Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Nothing blocking. The comments below are optional suggestions. There is no need to push a fix for them before merging.

Comment on lines +240 to +242
vendor-specific frameworks. Open-source engine entries are every vLLM or SGLang
deployment, whether served directly or through Dynamo or disaggregated serving:
`framework:` of `vllm`, `dynamo-vllm`, `sglang`, `sglang-disagg`, or `dynamo-sglang`.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟡 (optional) A future llm-d vLLM master-config entry (framework: llmd-vllm, documented in inferencex-e2e/docs/configuration-procedures.md:220 as the master-entry name for llm-d recipes) will FAIL Check 6(b) as a vendor framework requiring a prior open-source engine entry, even though it is a plain vLLM deployment like dynamo-vllm. The new open-source engine list at line 242 only names vllm, dynamo-vllm, sglang, sglang-disagg, dynamo-sglang, so llmd-vllm falls into "every other engine" (line 244) by omission, wrongly blocking it the same way dynamo-sglang was wrongly blocked before this PR. Fix: enumerate every vLLM/SGLang deployment wrapper (including llmd-vllm) as open-source, or match by engine prefix (vllm*/sglang*) instead of a fixed list.

Why this was flagged

Trigger: a PR adds/updates a framework: llmd-vllm entry in inferencex-e2e/configs/*-master.yaml (the documented path per inferencex-e2e/docs/configuration-procedures.md:220, 'Add/update the llmd-vllm master entry'), with no prior vllm/sglang entry for the same model-prefix/runner. The verifier's Check 6(b) (lines 239-253 of .github/codeowner-signoff-verify-prompt.md) classifies anything not in the open-source list at line 242 as vendor-specific ('every other engine', line 244), so it FAILs this legitimate open-source vLLM deployment and demands a sign-off exception that doesn't apply. No other part of the prompt lists llmd-vllm as exempt. This is the same bug class the PR itself was written to fix for dynamo-sglang (#3629), left open for the llm-d deployment path.

Verification: Nit, latent gap, near pre-existing. The new Check 6(b) open-source engine list at .github/codeowner-signoff-verify-prompt.md:242 lists only vllm, dynamo-vllm, sglang, sglang-disagg, dynamo-sglang, and line 244 classifies "every other engine" as vendor-specific.

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

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants