Skip to content

fix(api): support agentic-only runs in unofficial-run previews / 修复 agentic 专属 run 的非官方预览#537

Merged
cquil11 merged 1 commit into
masterfrom
fix/unofficial-run-agentic-artifacts
Jul 8, 2026
Merged

fix(api): support agentic-only runs in unofficial-run previews / 修复 agentic 专属 run 的非官方预览#537
cquil11 merged 1 commit into
masterfrom
fix/unofficial-run-agentic-artifacts

Conversation

@cquil11

@cquil11 cquil11 commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

Summary

?unofficialrun=<run-id> chart overlay previews returned 404 for agentic-only sweeps. Root cause: the benchmark repo's run-sweep.yml only triggers the collect-results merge job for fixed-seq (1k1k / 8k1k) sweeps, so agentic-only runs upload per-config bmk_agentic_<config> artifacts and never produce the merged results_bmk artifact that /api/unofficial-run exclusively looked for.

  • When results_bmk is absent, the route now falls back to downloading every per-config bmk_* artifact (same-name re-uploads deduped, newest artifact id wins) and normalizes their rows through the existing mapBenchmarkRow path — which already handles agentic v2-flat/v3-nested agg schemas.
  • The fallback stays off when results_bmk exists: the merge job downloads the bmk_* pattern, so the merged artifact already contains every per-config row and fetching both would double-count.
  • Per-config downloads run in bounded batches of 8 to stay clear of GitHub secondary rate limits (big agentic sweeps upload dozens of artifacts).
  • 404 error message now mentions the per-config bmk_* fallback.

No frontend changes were needed — the overlay pipeline (buildChartDatatransformBenchmarkRowsapplyAgenticMetricAliases, processOverlayChartData with isAgentic, legend/points-dialog/dismiss paths) already supports agentic rows; it just never received any.

Overlay support

This IS the overlay path — verified manually against a real agentic run from InferenceX PR #2109: loaded /inference?unofficialrun=28861274175 (DSv4 FP4 MI355X vLLM agentic sweep, kvnone + LMCache offload variants) on a local dev server and confirmed:

  • NON-OFFICIAL banner shows the run's branch (amd/agentx_dsv4_vllm) with working dismiss
  • Model auto-switches to DeepSeek V4 Pro, scenario Agentic Traces, latency-percentile selector active
  • All 5 overlay points (conc 32/40/40/56/72, offload ON/OFF split) render as ✕ markers on both the Interactivity and E2E Latency charts alongside official series
  • Legend entry with hide toggle + "show all data points" dialog lists the overlay rows with correct conc / parallelism / offload / tput / p50–p90 values matching the raw artifacts

Test plan

  • 3 new route tests: per-config bmk_* fallback (agentic rows, correct conc mapping, sibling agentic_*/server_logs_* blobs NOT downloaded), fallback disabled when results_bmk exists, same-name dedupe keeps newest artifact
  • pnpm test:unit — 2539 app + 25 mcp tests pass
  • pnpm typecheck, pnpm lint, pnpm fmt clean
  • Manual verification against live run 28861274175 (screenshots above description; API returns 5 agentic benchmark rows)

中文说明

?unofficialrun=<run-id> 图表叠加预览对 agentic 专属 sweep 一直返回 404。根本原因:基准测试仓库的 run-sweep.yml 仅在固定序列(1k1k / 8k1k)sweep 时触发 collect-results 合并任务,因此 agentic 专属 run 只上传按配置拆分的 bmk_agentic_<config> 产物,从不生成 /api/unofficial-run 唯一查找的合并产物 results_bmk

  • results_bmk 缺失时,路由现在回退为下载所有按配置拆分的 bmk_* 产物(同名重复上传按最新 id 去重),并通过现有的 mapBenchmarkRow 路径归一化(该路径已支持 agentic v2 扁平 / v3 嵌套 agg schema)。
  • results_bmk 存在时不启用回退:合并任务本身就下载 bmk_* 模式,合并产物已包含全部按配置行,两者都取会重复计数。
  • 按配置产物以每批 8 个的有界批次下载,避免触发 GitHub 二级速率限制。
  • 前端无需改动——叠加渲染管线已支持 agentic 行,此前只是拿不到数据。

已用 InferenceX PR #2109 的真实 agentic run(28861274175,DSv4 FP4 MI355X vLLM)在本地手动验证:NON-OFFICIAL 横幅、模型自动切换、Agentic Traces 场景、5 个叠加点在 Interactivity 与 E2E Latency 图表上均正确渲染,图例开关与数据点弹窗数值与原始产物一致。单元测试(2539 + 25)、typecheck、lint、fmt 全部通过。

🤖 Generated with Claude Code


Note

Medium Risk
Adds many parallel GitHub artifact downloads and changes benchmark resolution for a live API path, but behavior is gated on missing results_bmk and covered by new tests.

Overview
Fixes 404 on ?unofficialrun= for agentic-only CI sweeps that never upload merged results_bmk.

When results_bmk is missing, /api/unofficial-run now collects bmk_* per-config artifacts (deduped by name, highest artifact id wins), downloads them in batches of 8, and normalizes rows through the existing mapper. The fallback is skipped if results_bmk is present to avoid double-counting. Non-bmk_* siblings (e.g. agentic_* trace blobs) are not fetched.

404 copy now mentions the per-config fallback. Three route tests cover fallback behavior, merged-artifact precedence, and dedupe.

Reviewed by Cursor Bugbot for commit 274fc59. Bugbot is set up for automated code reviews on this repo. Configure here.

Agentic-only sweeps never run the collect-results merge job (run-sweep.yml
only triggers it for fixed-seq sweeps), so they upload per-config
bmk_agentic_<config> artifacts with no merged results_bmk. The
/api/unofficial-run route only looked for results_bmk and returned 404,
breaking ?unofficialrun= chart overlays for agentic PRs.

Fall back to downloading every per-config bmk_* artifact (deduped by name,
newest id wins) when results_bmk is absent. The fallback stays off when the
merged artifact exists since it already contains all per-config rows.
Downloads run in bounded batches of 8 to stay clear of GitHub secondary
rate limits.

中文:agentic 专属 sweep 不会触发 collect-results 合并任务(run-sweep.yml
仅为固定序列 sweep 触发),因此只上传按配置拆分的 bmk_agentic_<config>
产物,没有合并的 results_bmk。/api/unofficial-run 路由此前只查找
results_bmk 并返回 404,导致 agentic PR 的 ?unofficialrun= 图表叠加预览
失效。现在当 results_bmk 缺失时回退为逐个下载 bmk_* 产物(按名称去重,
保留最新 id),合并产物存在时不启用回退以避免重复计数;下载以每批 8 个
的有界批次执行,避免触发 GitHub 二级速率限制。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@cquil11 cquil11 requested a review from adibarra as a code owner July 7, 2026 22:31
@vercel

vercel Bot commented Jul 7, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
inferencemax-app Ready Ready Preview, Comment Jul 7, 2026 10:32pm

Request Review

@cquil11 cquil11 merged commit a1bedeb into master Jul 8, 2026
32 of 52 checks passed
@cquil11 cquil11 deleted the fix/unofficial-run-agentic-artifacts branch July 8, 2026 15:06
cquil11 added a commit that referenced this pull request Jul 8, 2026
Brings in the unofficial-run agentic artifact fallback (#537) and latest master.

中文:合并 master 分支,引入非官方 run 的 agentic 产物回退(#537)及 master 最新改动。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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.

2 participants