Skip to content

ramjet 0.3.0

Choose a tag to compare

@nessie993 nessie993 released this 18 Aug 13:50
· 255 commits to main since this release
37f5286

Exports every metric under the ramjet_ prefix. The ds4proxy_ prefix had outlived two project renames.

See CHANGELOG.md.

Breaking

Every metric that began ds4proxy_ now begins ramjet_. Names, labels, and types are otherwise unchanged.

Prometheus has no history under the new names. A panel or alert whose window spans the upgrade shows a gap rather than a join, and anything still querying ds4proxy_* stops returning data the moment the new binary starts. There is no compatibility shim: dual-emitting both prefixes would have doubled a 258KB scrape payload polled at 1s, and the gap was judged the cheaper cost.

Update any external dashboard, alert rule, recording rule, or script that names a metric. The canonical Grafana dashboard ships updated in this release.

Images

Load balancer ghcr.io/helixml/ramjet:v0.3.0@sha256:2489110adbed61b7a2a415784d817d48803c234c97509fd2e0eb180c5e7453b3
Companion ghcr.io/helixml/ramjet:companion-v0.3.0@sha256:776a988016d970842e1c40d211da0918237c35a96da62c760dbddae35e8bd413
Rollback target ghcr.io/helixml/ramjet:v0.2.0@sha256:9a7e2a4bc131911beec428393f0a6ccab8fb7f634217e6baffa574483c762dd8

Both promoted tags resolve to the same manifests as the qualified rust-37f5286 builds, labelled org.opencontainers.image.version=0.3.0, revision 37f52861fb4145dea2cde6243b8c03e184b4f726.

Qualification

572 Rust tests, 477 Python tests, Drone quality plus release pipeline green.

Deployed to node06 (qwen38_27b, 4× vLLM TP2 on 8× RTX PRO 6000) as an LB-only recreate: 5s, engines untouched (image, start time and restart count identical before and after), 4/4 upstreams healthy, /health ok.

The rename verified on the box after the roll: 1096 ramjet_ series and zero ds4proxy_. The compose render was diffed baseline-against-candidate first, with the file list derived from the container's com.docker.compose.project.config_files label; the only difference was the image line.

Request-generating benchmark gates were not run: node06 carries live production traffic under the cooling moratorium, so acceptance rests on observed production traffic rather than a synthetic matrix.