Skip to content

v0.102.0

Choose a tag to compare

@sboily sboily released this 14 Oct 15:18
· 1408 commits to main since this release

What's Changed

  • docs(changelog): promote 0.102.0, mark its breaking changes, and name it the minimum version
  • fix(ai): the tool digest vouches only for what the agent said from a result it read whole (RMK-739)
  • fix(ai): an image a tool returned no longer blocks the room, and replayed images are counted, cleaned and filed (RMK-738)
  • fix(voice): a voice heard alone on a closed STT stream names nobody on the next (RMK-737)
  • fix(voice): a later partial of a response's echo cuts no later response (RMK-736)
  • fix(voice): the response queue holds: one response at a time, a session left after its drain, say() first (RMK-735)
  • fix(gemini): an image injected while audio flows is sent as a video frame
  • feat(tts): Kokoro speaks through SherpaOnnxTTSProvider
  • chore(typing): class-level dispatch and lookup tables are ClassVar (RUF012) (RMK-733)
  • chore(security): drop the three nosec comments bandit no longer needs (RMK-732)
  • chore(lint): drop the noqa directives that silence nothing in src (RMK-731)
  • fix(store): PostgresStore.claim_voice_delivery refuses a missing room with ValueError (RMK-730)
  • test(providers): the PersonaPlex and Anam tests load their own copy of the module under fakes (RMK-729)
  • fix(store): update_room keeps the stored event counters (RMK-727)
  • fix(store): room pages come in the same order from every store, and SQLite pages in SQL (RMK-726)
  • fix(delivery): every backend lists its dead letters the most recent first (RMK-725)
  • fix(conference): ConferenceChannel.info is a property, like every channel's (RMK-724)
  • fix(video): an A/V backend is a voice backend whose calls' video is its video facet (RMK-723)
  • fix(delivery): a failed delivery is retried after a growing delay, and max_retries counts retries (RMK-722)
  • fix(store): a read marker is the highest read event index, in every store (RMK-721)
  • fix(store): PostgresStore.update_room refuses a missing room and returns the stored delivery cursor (RMK-720)
  • fix(tasks): a repeated delegate_task call gets the completed task's result, and room locks are let go (RMK-719)
  • fix(knowledge): PostgresKnowledgeSource indexes and searches in the language it is given (RMK-718)
  • refactor: standard-library imports sit at the top of their module (RMK-717)
  • docs(claude): the project structure names all 26 packages (RMK-716)
  • build(make): audit writes to a directory of its own, and .PHONY names every target (RMK-715)
  • chore(security): nosec comments set their reason apart with a # (RMK-714)
  • build(ty): only optional dependencies may stay unresolved (RMK-713)
  • fix(types): two imports for type checking named modules that hold nothing of the kind (RMK-712)
  • Begin 0.102.0.dev0 development

Full Changelog: v0.101.0...v0.102.0