This release adds 3 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Topics
Affected surfaces
Summary
AI summaryUpdates π¦ Misc, β¨ Features, and π Bug Fixes across a mixed release.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Medium |
Adds DELETE /policy endpoint for removing egress rules. Adds DELETE /policy endpoint for removing egress rules. Source: llm_adapter@2026-06-05 Confidence: high |
β |
| Feature | Medium |
Introduces supervisor and cleanup hook for egress process management. Introduces supervisor and cleanup hook for egress process management. Source: llm_adapter@2026-06-05 Confidence: high |
β |
| Feature | Medium |
Adds OTLP endpoint autoβdiscovery from node IP when env vars unset. Adds OTLP endpoint autoβdiscovery from node IP when env vars unset. Source: llm_adapter@2026-06-05 Confidence: low |
β |
| Feature | Low |
Adds OTLP endpoint autoβdiscovery using node IP from HOST_IP or /etc/hostinfo fallback. Adds OTLP endpoint autoβdiscovery using node IP from HOST_IP or /etc/hostinfo fallback. Source: granite4.1:30b@2026-06-05-audit Confidence: low |
β |
| Bugfix | Medium |
Fixes mitmdump restart to retry with exponential backoff instead of giving up. Fixes mitmdump restart to retry with exponential backoff instead of giving up. Source: llm_adapter@2026-06-05 Confidence: high |
β |
| Bugfix | Low |
Reduces outbound log verbosity. Reduces outbound log verbosity. Source: llm_adapter@2026-06-05 Confidence: high |
β |
Full changelog
What's New
β¨ Features
-
DELETE /policy endpoint for removing egress rules β new
DELETE /policyhandler accepts a JSON array of target strings and removes matching rules case-insensitively. Targets not found are silently ignored (idempotent). API spec and README updated. (#864) -
Supervisor + cleanup hook β egress now runs under a dedicated single-worker supervisor (
opensandbox-supervisor). Previously, a hard crash left stale iptables/nft rules and a zombie mitmdump holding port 18081; restarting the container would accumulate duplicate rules while the new mitmdump failed to bind, sending the in-process watchdog (#942) into a retry loop. The supervisor provides exponential backoff with jitter, a crashloop circuit breaker, JSONL event logging, and SIGTERM forwarding with a configurable grace period (20 s) before SIGKILL. A newcleanup.shscript runs as both pre-start and post-exit hook, idempotently resetting iptables DNS REDIRECT rules, transparent-HTTP rules, the nftablesopensandboxtable, and stray mitmdump processes. The script never exits non-zero so a misbehaving cleanup cannot block restarts. (#951) -
OTLP endpoint auto-discovery from node IP β when neither
OTEL_EXPORTER_OTLP_METRICS_ENDPOINTnorOTEL_EXPORTER_OTLP_ENDPOINTis set, egress now resolves the node IP from theHOST_IPenv var (then/etc/hostinfoas fallback) and points the OTLP/HTTP exporter at<node-ip>:4318over plaintext. No need to template the full endpoint URL in environments where only a node IP is available. (#963)
π Bug Fixes
- Retry mitmdump restart with backoff instead of giving up β previously, if
LaunchorWaitListenPortfailed during a restart (e.g. under node memory pressure that just OOM-killed mitmdump), the watchdog goroutine would log "giving up" and return, leaving egress in a silent dead state with no future restarts. Replaced the one-shot restart withrestartWithBackoff: retry forever with exponential backoff (1 s β 30 s), kill half-launched processes, drain stale exit signals on success, and respect context cancellation. The readiness gate stays false across the retry window so Kubernetes drains traffic until mitmdump is healthy again. (#942)
π¦ Misc
- Reduced outbound log verbosity. (#964)
π₯ Contributors
Thanks to these contributors β€οΈ
- @Pangjiping
- Docker Hub: opensandbox/egress:v1.0.13
- Aliyun Registry: sandbox-registry.cn-zhangjiakou.cr.aliyuncs.com/opensandbox/egress:v1.0.13
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]