Repository navigation
The streaming, caching, and binary-efficiency update, with the TLS dependency patched before publication. The v0.5.0 tag was retained without publishing a release after the dependency audit found newly published Rustls advisories.
Changes
- Update Rustls to 0.23.46, addressing RUSTSEC-2026-0346, RUSTSEC-2026-0347, RUSTSEC-2026-0348, and RUSTSEC-2026-0349.
- Scan fragmented SSE lines once. A synthetic 4 MiB event in 16 KiB chunks decoded in 1.875 ms versus 123.169 ms before; ordinary proxy latency and provider generation speed are unchanged.
- Embed compressed dashboard text and omit unused SQLite full-text/spatial modules. Matching Linux builds measured a 4.96% smaller executable; the ten dashboard text assets transfer 71.6% fewer bytes with gzip. ETags and conditional requests avoid downloading unchanged assets. These measurements precede the Rustls patch.
- Add optional client/workspace cache-key scopes, namespaces, incompatible-hint policies, and requested/applied diagnostics across HTTP and native Codex WebSockets. Caller keys, client isolation, account affinity, and session-scope defaults are preserved.
- Avoid redundant copies in request translation, response parsing, and continuation history; reduce time holding the routing lock.
- Add optional HTTP body, concurrency, and aggregate decoded-body limits, with permits held through response completion or cancellation. Aggregate admission remains unlimited by default.
- Cache Docker dependencies separately from application/UI changes and cache release build outputs by target.
- Match Claude Code 2.1.299 in the default client identity.
See the implementation report for measurement methods and limits, and the configuration reference for the new settings.
Full Changelog: v0.5.0...v0.5.1