Repository navigation
Add memory support, release automation, and full test coverage - #22
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configuration
You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
like that ? @elfominty |
@ahmeda-cominty Perfect ! Thanks |
BREAKING CHANGE: client.memory methods no longer send user_id. Every call (except list()) now requires a namespace, a caller-chosen bag name (max 128 chars). create()/get()/update()/delete() require it as a keyword argument; list(namespace=None) filters when given, lists every bag when omitted. MemoryFileOut and MemoryFileSummaryOut gain a namespace field. New list_namespaces() lists every bag with at least one file. chat.start() gains an optional memory_namespace kwarg that attaches the new thread to a bag, frozen for its lifetime. chat.send() does not accept it: a follow-up cannot change a thread's namespace.
Enable ruff's TID252 with ban-relative-imports = "parents": only same-package, single-dot relative imports stay relative, imports reaching into a parent package are absolute (cominty_sdk.foo) instead. Fixes resources/*.py accordingly. Also drops the types.EllipsisType import in resources/memory.py, which pyright rejected under the 3.9 floor (it's 3.10+ even under TYPE_CHECKING). Uses typeshed's synthesized "ellipsis" forward-ref instead, which needs no import and works down to 3.9.
BREAKING CHANGE: ThreadSummary.agent (and Thread.agent) is removed. The
local API no longer returns an agent on the thread itself: verified live
against a running instance. Read the agent from each Message instead.
Message gains agent (Agent | Literal["ARCHIVED"] | None) and error_code
(str | None, e.g. "budget_exhausted"). ThreadSummary gains inception, a new
ThreadInception enum ("conversational" | "routine").
Found and confirmed via the playground scenarios against a real local
backend: chat.start and threads.list both raised a pydantic ValidationError
on the missing required `agent` field before this fix.
Bumps the python-dependencies group with 4 updates: pydantic (2.13.4 -> 2.13.5), typing-extensions (4.15.0 -> 4.16.0), pyright (1.1.411 -> 1.1.414), ruff (0.15.14 -> 0.16.8). ruff 0.16 formats fenced Python code blocks in Markdown files; AGENTS.md and README.md are reformatted accordingly (double blank line before top-level defs/classes, single space before trailing comments). No prose changed.
|
Before merging and releasing, we'll need to deploy ENG-997: Add organization-scoped memory namespaces |
…message ref ENG-1206 Added `max_steps` to `chat.start` and `chat.send` methods, allowing users to cap the number of tool rounds for individual messages. The parameter accepts integers `>= 1` and the sentinel `SERVER_DEFAULT` to use the server's default (currently 60). Invalid values raise `InvalidParams`. Updated documentation and examples to reflect this new feature.
Bump the version to 0.5.0 in pyproject.toml and uv.lock. Split the CHANGELOG per release (0.2.0 to 0.5.0) from the tag history, and point .env.example and examples/README.md at the staging base URL https://ds-staging.cominty.com.
Uh oh!
There was an error while loading. Please reload this page.