Skip to content

v0.7.5 — Live reasoning, sturdier streaming & resilience

Choose a tag to compare

@acodercat acodercat released this 17 Jul 10:22
· 23 commits to master since this release
de8fe1e

Hardening pass across the model layer, runtime, and context handling, plus live
reasoning support.

Highlights

  • Live reasoning — reasoning models stream their thinking as THINKING_CHUNK
    events, rendered live in the terminal.
  • Sturdier streaming — typed StreamDelta contract, SSE connect-retry, an
    idle-timeout watchdog, and proper cleanup (aclose() + async context manager).
  • Typed errors — provider failures mapped to PromptTooLongError /
    ProviderBillingError; billing exhaustion no longer burns retries.
  • Smarter compaction — CJK-aware token estimation and reactive overflow
    recovery.
  • Security & runtime — hardened AST rules (submodule imports, call aliasing,
    whole-module regex) and isolated per-runtime IPython shells.
  • Wall-clock cap — new max_run_time bounds a whole run across turns.
  • Dependency floors bumped to latest, py.typed marker added, slimmer sdist.

⚠️ Breaking

  • OpenAIServerModel is renamed to OpenAIModel.