Skip to content

vLLM 0.30.0 for the production embeddings role on WSL (pin, receipt, docs) - #260

Merged
seathatflowsinourveins merged 1 commit into
mainfrom
claude/vllm-030-switch-20260925
Sep 25, 2026
Merged

seathatflowsinourveins merged 1 commit into
mainfrom
claude/vllm-030-switch-20260925

Conversation

@seathatflowsinourveins

Copy link
Copy Markdown
Collaborator

Why

The WSL embeddings route ran vLLM 0.25.0. That version is in range of two advisories:

  • GHSA-25q3-v2hm-8vpf (high): a negative token id in /v1/embeddings or /pooling kills the engine. Fixed in 0.28.0.
  • GHSA-5fj9-pfhr-6j48 (medium): an unauthenticated metrics DoS. Fixed in 0.30.0.

0.29.0 had failed WSL startup with UVA is not available (evidence/receipts/vllm-compatibility.json). 0.30.0 carries the WSL pinned-memory fallback (vllm PR #56908).

What was done on the NativeStack host (RTX 4090, WSL2)

  1. Qualified on an owned instance. 0.30.0 was installed in a new tools/vllm-0.30.0 prefix (uv pip install vllm==0.30.0 --exclude-newer 2026-09-25T23:59:59Z, wheel sha256 ef52ee58…). It served the same Nemotron-3-Embed-1B-BF16 files, hash-identical before and after, on 127.0.0.1:38231 with production's flags. Compared with production 0.25.0:

    • gate-set min cosine 0.999999999999998;
    • identical top-1 on NVIDIA's example;
    • 10/10 top-10 agreement on a 10×50 corpus;
    • batch invariance at least 0.99997;
    • p50 latency 23.8 ms vs 21.4 ms.

    A separate reviewer agent re-ran the checks and rated it switch-ready.

  2. Switched in production. A systemd --user drop-in changes only the ExecStart binary path. The unit was healthy after 48 s with 0 restarts. On the live unit, before vs after:

    • gate embeddings: cosine 1.0 on all 8 texts;
    • 5/5 live code-index queries (67,492 points) returned identical top-10 order;
    • GPU memory went from 13,879 to 13,032 MiB;
    • llama-server and qdrant stayed healthy.

    0.25.0 stays installed. Rollback is to delete the drop-in, then daemon-reload and restart.

Repository changes

  • manifests/stack.json: vllm is now 0.30.0 @ ced6857a (the v0.30.0 tag), with the new evidence id.
  • Audit and snapshot rows: blueprints/token-native-focus/saturation-audit.json row updated. The catalogs/landscape/upstream-snapshot.json row comes from a fresh run of its four gh api endpoints, the same method as Bump the application-delivery lock to Next.js 16.3.6 for GHSA-vcvr-r3jv-pc5j #252. The selected version now matches the latest stable release.
  • evidence/receipts/vllm-030-switch-20260925.json (native_model_e2e): the claim, limitations, numbers and artifact hashes. Raw machine output is retained privately.
  • Docs: dated updates to adoption/platforms/linux-wsl2.md, adoption/lifecycle.md, docs/token-native-saturation.md and the recipes/README.md vllm row.

Checks

  • Full test suite: 5307 tests OK, 632 skipped. The skips are host-dependency skips: numpy and alpaca-py are absent from this uv test environment.
  • Validators: validate.py, landscape.py, validate_catalogs.py and validate_foundation.py pass. component_matrix.py --check and new_host_grand_list.py --check pass.

Limitations

Lane: lane:foundation

🤖 Generated with Claude Code

…docs)

vLLM 0.25.0 was in range of GHSA-25q3-v2hm-8vpf (high, fixed 0.28.0) and
GHSA-5fj9-pfhr-6j48 (fixed 0.30.0); 0.29.0 failed WSL startup (no UVA).
0.30.0 carries the WSL pinned-memory fallback (vllm PR #56908).

On the NativeStack RTX 4090 host, 0.30.0 was qualified on an owned instance
against production 0.25.0 with the same model files and flags (gate-set min
cosine 0.999999999999998, identical NVIDIA-example top-1, 10/10 top-10 on a
10x50 corpus, batch invariance >= 0.99997), reviewed independently, then
switched in production by a drop-in that changes only the binary path. The
live service returned identical gate embeddings (cosine 1.0) and identical
top-10 results for 5 code-index queries after the switch; 0.25.0 is kept for
rollback.

- manifests/stack.json vllm 0.30.0 @ ced6857a (v0.30.0); saturation-audit row
  and the upstream-snapshot row from a fresh run of its four gh api endpoints
- evidence/receipts/vllm-030-switch-20260925.json (native_model_e2e)
- adoption/platforms/linux-wsl2.md, adoption/lifecycle.md,
  docs/token-native-saturation.md and recipes/README.md dated updates

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@seathatflowsinourveins seathatflowsinourveins added the lane:foundation Foundation lane: Claude/Codex setup, hosts, memory, RAG, research, workers label Sep 25, 2026
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

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

Labels

lane:foundation Foundation lane: Claude/Codex setup, hosts, memory, RAG, research, workers

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant