This release includes 1 security fix for security teams reviewing exposed deployments.
Topics
Affected surfaces
ReleasePort's take
Light signalThe release switches to a dedicated http.ServeMux and normalizes OpenTelemetry metric keys.
Why it matters: Prevents unintended endpoint exposure in HTTP server mux handling; cleans OTel metrics by removing redundant data.
Summary
AI summaryUpdates 🔧 Improvements, 🐛 Bug Fixes, and What's New across a mixed release.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Bugfix | Medium |
Switches to dedicated http.ServeMux, preventing unintended endpoint exposure. Switches to dedicated http.ServeMux, preventing unintended endpoint exposure. Source: llm_adapter@2026-07-15 Confidence: low |
— |
| Bugfix | Low |
Uses a dedicated `http.ServeMux` instead of `http.DefaultServeMux`. Uses a dedicated `http.ServeMux` instead of `http.DefaultServeMux`. Source: granite4.1:30b@2026-07-15-audit Confidence: low |
— |
| Refactor | Low |
Normalizes OpenTelemetry metric attribute keys and switches to delta temporality; removes redundant metrics. Normalizes OpenTelemetry metric attribute keys and switches to delta temporality; removes redundant metrics. Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Refactor | Low |
Removes redundant metrics `ingress.proxy.http.requests_total` and `ingress.proxy.websocket.connections_total`. Removes redundant metrics `ingress.proxy.http.requests_total` and `ingress.proxy.websocket.connections_total`. Source: granite4.1:30b@2026-07-15-audit Confidence: low |
— |
Full changelog
What's New
🐛 Bug Fixes
- Dedicated
http.ServeMuxinstead ofhttp.DefaultServeMux. Prevents transitive dependencies from silently exposing endpoints (e.g.net/http/pprof,expvar) viainit()-timehttp.Handleon the global mux. Only/and/status.okare reachable now;/debug/pprof/correctly returns 404. (#1224)
🔧 Improvements
- OTel metrics normalized. Attribute keys
.→_(http_method,http_status_code,routing_result); OTLP export switched to delta temporality; removed redundantingress.proxy.http.requests_totalandingress.proxy.websocket.connections_total(already covered by generic HTTP request metrics from v1.0.9). Update dashboards/alerts accordingly. (#1209)
👥 Contributors
Thanks to these contributors ❤️
- @Pangjiping
- Docker Hub: opensandbox/ingress:v1.0.10
- GHCR: ghcr.io/opensandbox-group/opensandbox/ingress:v1.0.10
- Aliyun Registry: sandbox-registry.cn-zhangjiakou.cr.aliyuncs.com/opensandbox/ingress:v1.0.10
Breaking Changes
- Switched from `http.DefaultServeMux` to a dedicated `http.ServeMux`; only `/` and `/status.ok` are reachable, all other endpoints (e.g., `/debug/pprof/`) now return 404.
Security Fixes
- Prevents transitive dependencies from silently exposing debugging endpoints via `http.DefaultServeMux` by using a dedicated mux; only intended routes are served.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
Related context
Earlier breaking changes
- vpython/sandbox/v0.1.14 Removes `CredentialMatch.ports`; port now derived from scheme.
- vjava/sandbox/v1.0.16 Removes CredentialMatch.ports; port derived from scheme instead.
- vdocker/egress/v1.1.4 `Match.Ports` field removed from Credential Vault bindings; ports derived from scheme.
- vdocker/egress/v1.1.4 'X-Forwarded-Proto' is trusted only from configured proxy CIDRs.
- vdocker/egress/v1.1.4 Credential Vault requires `dns+nft` enforcement for egress connections.
Beta — feedback welcome: [email protected]