Skip to content

chore(agentx): sync support with production results - #2561

Open
cquil11 wants to merge 3 commits into
mainfrom
agent/remove-purged-agentx-support
Open

chore(agentx): sync support with production results#2561
cquil11 wants to merge 3 commits into
mainfrom
agent/remove-purged-agentx-support

Conversation

@cquil11

@cquil11 cquil11 commented Aug 11, 2026

Copy link
Copy Markdown
Collaborator

Summary

Synchronize upstream AgentX support with the effective production database inventory.

  • Keep every active AgentX config key that has a matching production result family.
  • Keep Kimi K3 B300 DSpark despite its pending result refresh because fresh v1+ PR [AgentX] Refresh Kimi K3 DSpark on B300 / [AgentX] 刷新 B300 上的 Kimi K3 DSpark #2476 directly targets that key.
  • Remove active config keys that have neither production results nor a fresh PR targeting the exact key.
  • Remove the corresponding unreferenced single-node launchers and multinode recipes.
  • Remove archived AgentX-only MiniMax-M2.5 config entries and the orphaned Qwen3.5 BF16 launcher.
  • Preserve unrelated fixed-sequence support and fresh sibling PRs that add new MTP configurations.

Inventory after this PR

Related production purges

Validation

  • Audited all active AgentX master-config keys against the production DB, excluding attempts already approved for purge in Mi355 single node int4 moonshotai/Kimi-K2.5 vllm #723.
  • Audited open PRs for exact-key coverage and aiperf v1+ freshness.
  • Confirmed both active master YAML files parse and the final inventory has no unmatched keys.
  • Test suites were not run, per request.

Remove unsupported Kimi K2.5 AgentX support and the Kimi K3 non-DSpark and DeepSeek V4 GB300 Dynamo-vLLM recipes whose results were purged from production.
@github-actions

Copy link
Copy Markdown
Contributor

Thanks for the contribution! Please reach out to respective companies' CODEOWNER to fill in the latest PR_REVIEW_CHECKLIST.md before pinging core maintainer on Slack for review. In order for the signoff PR check bot to trigger, you must follow the PR_REVIEW_CHECKLIST.md template correctly, including the phrase As a PR reviewer and CODEOWNER, I have reviewed this and have.

For PR verification, add the full-sweep-fail-fast label (strongly recommended) to this PR — the benchmark sweep only runs on labeled PRs. Use full-sweep-enabled only if you need matrix jobs to keep running past a failure.

PR authors are responsible for ensuring that after merging, all GitHub Action jobs fully pass. A lot of the time, failures are just flakes and simply re-running the failed jobs will fix it. See GitHub's docs on re-running failed jobs


感谢你的贡献!请联系相应公司的 CODEOWNER 填写最新的 PR_REVIEW_CHECKLIST.md,然后再在 Slack 上联系核心维护者进行审阅。为了触发 signoff PR 检查机器人,你必须正确遵循 PR_REVIEW_CHECKLIST.md 模板,包括保留英文语句 As a PR reviewer and CODEOWNER, I have reviewed this and have

如需进行 PR 验证,请为此 PR 添加 full-sweep-fail-fast 标签(强烈推荐)— 基准测试 sweep 仅在带有标签的 PR 上运行。仅当需要矩阵任务在失败后继续运行时才使用 full-sweep-enabled

PR 作者有责任确保合并后所有 GitHub Action 任务完全通过。 很多时候失败只是偶发抖动(flake),重新运行失败的任务即可解决。参见 GitHub 关于重新运行失败任务的文档

@cquil11
cquil11 marked this pull request as ready for review August 11, 2026 20:31
@cquil11
cquil11 requested a review from a team August 11, 2026 20:31
@claude

claude Bot commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

Claude finished @cquil11's task in 3m 50s —— View job


Review of PR #2561

  • Gather context and inspect the diff against origin/main
  • Check perf-changelog.yaml requirement for master config changes
  • Search for dangling references to deleted scripts/configs
  • Validate remaining YAML configs and the surviving MTP script edit
  • Post review feedback

Summary

One blocking issue: configs/nvidia-master.yaml was modified without a corresponding perf-changelog.yaml entry — see the inline comment. Please append an entry to the end of the changelog documenting the removed keys. Fix this →

The removal itself checks out cleanly:

  • The six deleted GB300 srt-slurm recipe YAMLs have zero remaining references — only the removed dsv4-fp4-gb300-dynamo-vllm-agentic* keys pointed at them. The surviving GB200 keys reference disagg-gb200-* recipes, which are untouched, so the cp -rT .../vllm/deepseek-v4/agentic in runners/launch_gb300-nv.sh:230 and runners/launch_gb200-nv.sh:415 still has a valid, non-empty source directory.
  • The surviving kimik3-fp4-b300-vllm-agentic-dspark key uses spec-decoding: mtp in all arms, so the launch_b300-nv.sh script resolution (SPEC_SUFFIX=_mtp) routes to the kept kimik3_fp4_b300_vllm_mtp.sh — the deleted kimik3_fp4_b300_vllm.sh was only reachable from the removed non-DSpark key.
  • No remaining references to the deleted configs/deprecated/*-kimik2.5-agentic-master.yaml files or the deprecated kimik2.5 agentic scripts in any config, workflow, or launcher; MODELS.md/MODELS_zh.md were updated consistently. The perf-changelog.yaml mentions of removed keys are historical entries, which is expected.

Minor (non-blocking): KLAUD_DEBUG.md:55 still points to the now-deleted benchmarks/single_node/agentic/deprecated/kimik2.5_fp4_b200.sh:65 as the example for the VLLM_MEMORY_PROFILER_ESTIMATE_CUDAGRAPHS=0 technique, and benchmarks/single_node/fixed_seq_len/deprecated/kimik2.5_fp4_b200.sh:55 has a comment referencing the deleted agentic sibling. Worth fixing here or in a follow-up so the debug doc doesn't dead-end.

Note: I could not run pytest utils/matrix_logic/ or the YAML parse check locally (command approval not granted in this environment); CI is green so far (7 passed, review job in progress), which covers both.

search-space:
- { tp: 8, ep: 1, conc-start: 1, conc-end: 512, spec-decoding: mtp }

kimik3-fp4-b300-vllm-agentic:

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.

🔴 BLOCKING: Master config files were modified but perf-changelog.yaml was not updated. When changing configs/amd-master.yaml or configs/nvidia-master.yaml, you must add a corresponding entry to perf-changelog.yaml documenting the changes.

Why it matters: The perf changelog is the chronological record used to correlate benchmark result changes with config changes. Removing three config keys (kimik3-fp4-b300-vllm-agentic, dsv4-fp4-gb300-dynamo-vllm-agentic, dsv4-fp4-gb300-dynamo-vllm-agentic-mtp-agg, dsv4-fp4-gb300-dynamo-vllm-agentic-mtp-disagg) without a changelog entry breaks that traceability.

Fix: Append an entry to the end of perf-changelog.yaml (the file is read chronologically, oldest at top) listing the removed config keys and linking this PR and the production purge PRs (SemiAnalysisAI/InferenceX-app#649, #722, #723).

@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.

LGTM — the nits found (missing bilingual PR title/description, stale comments referencing files this PR deletes) are minor and do not affect correctness of the cleanup.

Extended reasoning...

Overview

This PR deletes purged/deprecated AgentX benchmark recipes and configs: Kimi K2.5 agentic scripts+configs, the Kimi K3 B300 non-DSpark script+config, and several DeepSeek V4 GB300 Dynamo-vLLM AgentX multi-node YAMLs, while updating MODELS.md/MODELS_zh.md changelog text to match. It also makes one small in-diff cleanup (a stale filename reference in kimik3_fp4_b300_vllm_mtp.sh line 184) that the bug hunter flagged as evidence the author is aware of this issue class but missed two adjacent sites.

Security risks

None. This is a pure deletion/cleanup of benchmark scripts and YAML configs (no production code paths, no auth/crypto/permission logic, no user input handling).

Level of scrutiny

Low-to-moderate is appropriate: the change is almost entirely file deletions and corresponding config-key removals for benchmarks that are confirmed already purged in production (per the linked InferenceX-app PRs). The one in-diff functional file (kimik3_fp4_b300_vllm_mtp.sh) only has a comment-text edit, no logic change. Both bug findings are nits — a bilingual PR-metadata process gap and two dangling comments referencing deleted files — with zero runtime impact.

Other factors

The PR includes validation output (YAML parse success, matrix logic 231 passed), and the deletions align with the MODELS.md changelog updates included in the same diff, so the change is internally consistent. No outstanding reviewer comments in the timeline to address.

Comment thread MODELS.md
Comment on lines 40 to 46

**Thursday, August 6, 2026** is the last day for the **Single-turn 8k1k** scenario on **Kimi-K2.5/2.6/2.7-Code** (`kimik2.5`). The scenario is deprecated for these models after that date. Rationale: Kimi-K3 launched on July 27, 2026, so GPU cluster time shifts to the newer frontier model. Combined with the Agentic coding deprecation above, this leaves `kimik2.5` with no active scenario. The model is **fully retired after August 6, 2026**.

**Enacted on 2026-08-07** in [#2527](https://github.com/SemiAnalysisAI/InferenceX/pull/2527): 17 `kimik2.5` config keys were removed from the active master configs and archived under [`configs/deprecated/`](configs/deprecated/) as `nvidia-kimik2.5-8k1k-master.yaml` (10) and `amd-kimik2.5-8k1k-master.yaml` (7), and their 12 benchmark scripts were moved to the sibling `deprecated/` directories. `kimik2.5` now has **no active configuration in any master config** and is fully retired. The same PR archived `kimik2.5-int4-h100-vllm`, an agentic-coding key that #2493 left behind in `nvidia-master.yaml` after moving its script to `benchmarks/single_node/agentic/deprecated/`. It is now in `nvidia-kimik2.5-agentic-master.yaml` with its siblings. The SPEED-Bench acceptance-length script `benchmarks/single_node/speedbench/kimik2.5_fp4_b300_vllm.sh` is intentionally kept. Speedbench is driven by `speedbench-al.yml`, not the master configs, matching how #2493 treated MiniMax-M3.
**Enacted on 2026-08-07** in [#2527](https://github.com/SemiAnalysisAI/InferenceX/pull/2527): 17 `kimik2.5` config keys were removed from the active master configs and archived under [`configs/deprecated/`](configs/deprecated/) as `nvidia-kimik2.5-8k1k-master.yaml` (10) and `amd-kimik2.5-8k1k-master.yaml` (7), and their 12 benchmark scripts were moved to the sibling `deprecated/` directories. `kimik2.5` now has **no active configuration in any master config** and is fully retired. The same PR archived `kimik2.5-int4-h100-vllm`, an agentic-coding key that #2493 left behind in `nvidia-master.yaml` after moving its script to `benchmarks/single_node/agentic/deprecated/`. A later cleanup permanently removed the archived AgentX configs and scripts after their production results were purged. The SPEED-Bench acceptance-length script `benchmarks/single_node/speedbench/kimik2.5_fp4_b300_vllm.sh` is intentionally kept. Speedbench is driven by `speedbench-al.yml`, not the master configs, matching how #2493 treated MiniMax-M3.

## Scenarios

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.

🟡 This PR's title ("chore(agentx): clean up purged and unsupported recipes") and description are English-only, but AGENTS.md line 15 requires PR titles/descriptions to include both English and natural Simplified Chinese (with a "/" separator, as sibling PRs #2536 and #2553 do). Pre-existing convention, not a code issue — please add the Chinese translation to the title/description.

Extended reasoning...

What the rule is and how it's violated: AGENTS.md line 15 states verbatim: "PR and issue titles, descriptions, and human-authored PR comments must include English and natural Simplified Chinese." This PR's title, chore(agentx): clean up purged and unsupported recipes, and its full body (Summary / Related production purges / Validation sections) are English-only — there is no Simplified Chinese anywhere in the PR metadata.

Why this is a real, actionable gap and not a stale-rule false positive: the convention is demonstrably live in this repository right now, not a vestigial rule nobody follows. The git log shown in this PR's own commit history includes sibling PRs merged in the same time window that follow it exactly: #2536 Retune DSV4 B300 AgentX MTP sweep / 调优 DSV4 B300 AgentX MTP 扫描 and #2553 Emit per-role average power on multinode disaggregated runs / 多节点分离式运行输出每角色平均功率, both pairing an English title with a Chinese translation via a / separator. This PR itself keeps MODELS.md and MODELS_zh.md in sync (both are in the diff, in parallel), showing the author is aware of and follows the repo's bilingual-documentation convention everywhere except the PR title/description itself.

Why nothing in the existing tooling catches this: the bilingual requirement lives only in AGENTS.md as a written instruction for contributors (human or agent) — there's no CI lint or GitHub Action that validates PR title/description language, so nothing blocks a PR from merging without the translation. It relies entirely on the author (or their reviewing agent) reading and following AGENTS.md.

Impact: this is documentation/process hygiene, not a functional or correctness issue — none of the benchmark configs, scripts, or MODELS.md/MODELS_zh.md content are affected, and the change itself (removing purged AgentX recipes) is correct and complete. The only consequence of merging as-is is a PR record that doesn't match the repo's own documented bilingual convention, which a maintainer could flag but which has no effect on runtime behavior, benchmark results, or the docs delivered by this diff.

Concrete proof / how to verify: compare this PR's title (chore(agentx): clean up purged and unsupported recipes, English-only) against git log --oneline -5, where #2536 and #2553 both show the English title / 中文标题 pattern mandated by AGENTS.md:15. Grepping the PR body for CJK characters ([一-鿿]) returns zero matches, whereas a compliant PR would have Chinese text in the Summary/description alongside the English text.

How to fix: add a Simplified Chinese translation to the PR title (e.g. chore(agentx): clean up purged and unsupported recipes / 清理已淘汰和不再支持的配方) and add a Chinese-language paragraph or section mirroring the English Summary/Related production purges/Validation content in the description, consistent with how #2527, #2536, and #2553 structured their bilingual bodies.

Comment on lines 181 to 187
# real target verification instead. Synthetic acceptance commits drafted tokens
# regardless of the target's logits, so the generated text is wrong and the
# SWE-bench eval scores 0.0000 -- the same split dsv4_fp4_b300_vllm_mtp.sh makes
# (and which kimik2.5_fp4_b300_mtp.sh omits; follow dsv4, not kimik2.5).
# (follow the DSV4 MTP precedent for this split).
# rejection_sample_method=block does real verification, so it is what EVAL_ONLY
# uses. vLLM rejects synthetic_acceptance_length unless the method is 'synthetic'.
if [ "${EVAL_ONLY:-false}" = "true" ]; then

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.

🟡 This PR deletes benchmarks/single_node/agentic/kimik3_fp4_b300_vllm.sh and the kimik3-fp4-b300-vllm-agentic key in configs/nvidia-master.yaml, but leaves two now-dangling comments pointing at them: the header of kimik3_fp4_b300_vllm_mtp.sh (line 20) still says "MTP sibling of kimik3_fp4_b300_vllm.sh... the target server is identical", and the surviving kimik3-fp4-b300-vllm-agentic-dspark entry in configs/nvidia-master.yaml (line 1505) still says "Mirrors the non-MTP entry's KV arms". Both are comment-only staleness with no functional impact, but the PR author already fixed an identical stale reference elsewhere in the same file (line 184), so these should be cleaned up alongside it.

Extended reasoning...

What's stale. This PR removes two things: the non-DSpark agentic script benchmarks/single_node/agentic/kimik3_fp4_b300_vllm.sh (full file deletion, confirmed via deleted file mode in the diff) and the corresponding kimik3-fp4-b300-vllm-agentic key from configs/nvidia-master.yaml (the ~31-line block removed just above the surviving kimik3-fp4-b300-vllm-agentic-dspark entry). Neither deletion is itself a problem — the PR's stated goal is exactly to purge the non-DSpark arm. The problem is that two comments elsewhere in the same PR's diff-adjacent code still reference what was just deleted.

Site 1 — script header. benchmarks/single_node/agentic/kimik3_fp4_b300_vllm_mtp.sh line 20 (outside this PR's diff hunks, so untouched by it) reads: MTP sibling of kimik3_fp4_b300_vllm.sh. Everything about the target server is identical; the deltas are: .... After this PR merges, kimik3_fp4_b300_vllm.sh no longer exists anywhere in the repo (there is a same-named file under speedbench/, but the header is explicitly describing the deleted agentic non-MTP sibling with an identical target server, not the speedbench AL collector). A reader trying to verify "everything about the target server is identical" has no baseline left to diff against.

Site 2 — YAML comment. configs/nvidia-master.yaml around line 1505, in the untouched kimik3-fp4-b300-vllm-agentic-dspark entry, still reads: # Mirrors the non-MTP entry's KV arms so the spec-decoding delta is readable at equal concurrency, but stops at conc 16 rather than 24. After the kimik3-fp4-b300-vllm-agentic key is deleted a few lines above, there is no non-MTP entry left in the file to mirror or diff against.

Why existing review didn't catch it. Both lines sit outside this PR's diff hunks — line 20 of the .sh file and line 1505 of the .yaml are unmodified context, not additions, so a line-by-line diff review naturally skips over them. They only become stale as a side effect of what this same PR deletes elsewhere in the file.

Evidence the author was aware of this class of issue. This very PR's diff shows the author actively fixing the identical pattern at line 184 of kimik3_fp4_b300_vllm_mtp.sh, changing a reference from the concrete kimik2.5_fp4_b300_mtp.sh to generic wording (follow the DSV4 MTP precedent for this split) — precisely because a prior cleanup PR (#2527, per MODELS.md) had already retired that file. The two sites here are the same category of dangling cross-reference, just missed.

Step-by-step proof for Site 1:

  1. Before this PR: benchmarks/single_node/agentic/kimik3_fp4_b300_vllm.sh exists; line 20 of the MTP sibling correctly names it and invites a target-server diff.
  2. This PR's diff contains deleted file mode 100755 for that exact path.
  3. After merge, git show HEAD:benchmarks/single_node/agentic/kimik3_fp4_b300_vllm.sh fails — the file is gone.
  4. Line 20 of kimik3_fp4_b300_vllm_mtp.sh is unchanged by the diff (confirmed by grep against the current working tree), so it still names the deleted file and asserts a baseline that no longer exists on disk.

Fix. Update line 20 to either drop the specific dead filename (similar to the generic wording already used at line 184) or note that the non-MTP arm was removed and point to the DSpark arm instead. Update line 1505 (and optionally the historical line 1507 CI-run reference, which is more defensible since it cites a past measurement rather than a live file) similarly — e.g. "Mirrors the KV arms of the now-removed non-MTP entry" or simply drop the comparison framing.

@cquil11 cquil11 changed the title chore(agentx): clean up purged and unsupported recipes chore(agentx): sync support with production results Aug 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

1 participant