refactor(sdk)!: remove deprecated backend compatibility shims#4541
refactor(sdk)!: remove deprecated backend compatibility shims#4541Mason Daugherty (mdrxy) wants to merge 10 commits into
Conversation
| self, | ||
| runtime: object = None, | ||
| *, | ||
| namespace: NamespaceFactory, |
There was a problem hiding this comment.
🟡 StoreBackend signature breaks eval test
Making namespace mandatory leaves at least one in-repo call site broken: libs/evals/tests/evals/test_memory.py still constructs StoreBackend(store=store) for the composite memory backend. That test now raises TypeError: StoreBackend.__init__() missing 1 required keyword-only argument: 'namespace' before the agent is built. Please update that caller (and its seeded store value) along with the SDK tests so the eval suite can still run against this API change.
(Refers to line 102)
Your feedback helps Open SWE learn. React with 👍 or 👎 to tell us if this review comment was useful.
There was a problem hiding this comment.
ignore for now
|
TODO (follow-up PR): update The eval still constructs
|
|
Open question: how should we handle The v1 Should we:
|
…oval # Conflicts: # libs/deepagents/deepagents/backends/protocol.py # libs/deepagents/tests/unit_tests/backends/test_protocol.py
Deprecated backend compatibility paths and their related legacy symbols are now removed. Users should pass backend instances instead of callable factories, configure
StoreBackendwith an explicit namespace, rely on stringFileData.content, and use the currentls/glob/grep/ReadResultAPIs. The deprecatedruntimeparameters onStateBackendandStoreBackendare removed, along with the compatibility symbolsBackendFactory,BACKEND_TYPES,FileFormat, andUnset.Removes expired SDK compatibility paths and related legacy storage controls, so backend APIs now use the current storage and middleware contracts directly. This tightens the public surface around
BackendProtocolinstances, explicitStoreBackendnamespaces, modern file data storage, and virtual filesystem defaults.Changes
backendfactories acrosscreate_deep_agentand SDK middleware; callers now pass concreteBackendProtocolinstances. TheBackendFactoryandBACKEND_TYPESaliases are also removed.runtimeparameters fromStateBackendandStoreBackend.files_updatefields and theirUnsetsentinel, legacyls_info/glob_info/grep_rawshims, and plain-stringread()compatibility.list[str]content handling, theFileFormatalias, andfile_formatknobs;FileData.contentis now treated as a string-only storage field.StoreBackend(namespace=...), removesBackendContext, and removes legacy assistant-id namespace fallback.FilesystemBackendandLocalShellBackenddefault tovirtual_mode=Truewithout the old migration warning.history_path_prefixand uses the configured backend instance directly for conversation-history offloading.