Skip to content

main is RED on the device-leakage DSR ratchet: PrepareLmHeadResident added a 33rd vt_ifdef #298

Description

@localai-bot

origin/main fails the device-leakage CI job:

ERROR: DSR REGRESSION in bucket 'vt_ifdef': 33 > baseline 32.
DSR by bucket: kcuda=0, is_cuda=0, cuda_inc=0, vt_ifdef=33  -> total 33

Qwen3_5DenseModel::PrepareLmHeadResident (src/vllm/model_executor/models/qwen3_5.cpp) opened a new #ifdef VT_MARLIN_NVFP4 in the device-agnostic shared layer to guard the Marlin build, taking that file from 26 to 27 in the vt_ifdef bucket. It arrived with PERF-27B-LMHEAD-FP4 (#213, PR #263, merged bc2fa7d9).

Why it landed red. The device-leakage job never finished on any push of PR #263 — every run was superseded in the queue before it left pending, so the PR never showed the failure. The job needs neither CUDA nor a GPU (pure static analysis), but no local gate the row ran covered it either: scripts/agent-preflight.sh does not include it.

Verified as introduced by that row, not pre-existing: origin/main @f323907e (immediately before the landing) reports vt_ifdef=32 -> total 32, ratchet holds.

Fix in flight: move the build-time gate into BuildDenseHeadMarlinResident, inside the #ifdef VT_MARLIN_NVFP4 region that already owns this kernel family, with an #else stub. Predicate and behavior unchanged. The checker's own message forbids both growing the DSR-ALLOW list and raising the baseline, so the gate moves rather than gets excused.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions