Skip to content

v0.1.73: Security Hardening, Performance Optimizations & Multi-Review Remediations

Choose a tag to compare

@sheepdestroyer sheepdestroyer released this 10 Sep 19:28
· 15 commits to master since this release
61d3d91

Release v0.1.73: Security Hardening, Performance Optimizations & Multi-Review Remediations

Highlights

  • Proxy Client Authentication & Path Security (#680, #687, #690): Enforce fail-closed Bearer client authentication on /v1/memory and /v1/audio (ROUTER_API_KEY, LITELLM_MASTER_KEY, GATEWAY_KEY, MEMORY_API_KEY). Eliminate double-encoded path traversal attacks (%252e%252e%252f) via iterative decoding, preserve exact root URLs, and redirect stdio MCP diagnostics in memory_mcp.py to sys.stderr.
  • Parallel Startup Model Registration & Atomic Swap (#681, #688, #690): Concurrently register OpenRouter and Ollama model rosters at startup with asyncio.Semaphore(10), defensive dictionary lookups, and atomic in-memory roster swap into _registered_free_models.
  • Visualizer UX Accessibility (#682, #686, #690): Migrate Clear Annotation action to semantic <button type="button">, WCAG AA contrast ratio compliance, and focus-visible indicators.
  • Chat Streaming Normalization & Tests (#683, #685, #690): Parse standard message payloads and streaming SSE delta chunks while preserving token boundary whitespaces and indentation.
  • High-Performance Annotations Cache (#684, #689, #690): Read raw async bytes with orjson deserialization, freshness invalidation tracking st_ino, st_mtime_ns, and st_size, with immediate cache eviction on decode failure to prevent persistent cache poisoning.
  • Quality Gates & Test Coverage: 100.00% statement and branch coverage gate maintained across 878 unit tests and 319 integration tests, clean ruff and mypy static analysis.