{"record":{"id":"d602cd4b172b0f5e","repo":"langchain-ai/langgraph","slug":"extension-name-must-be-non-empty-d602cd","errorCode":null,"errorMessage":"extension name must be non-empty.","messagePattern":"extension name must be non-empty\\.","errorType":"exception","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"libs/sdk-py/langgraph_sdk/_sync/stream.py","lineNumber":1028,"sourceCode":"                root_inbox.put_nowait(None)\n\n\nclass _SyncExtensionsProjection:\n    \"\"\"Mapping from extension name to custom event payload stream.\n\n    Repeated access for the same `name` returns the cached projection so that\n    callers receive the same subscription handle across multiple references to\n    `thread.extensions[\"foo\"]` within one session.\n    \"\"\"\n\n    def __init__(self, thread: SyncThreadStream, namespace: list[str]) -> None:\n        self._thread = thread\n        self._namespace = namespace\n        self._cache: dict[str, _SyncExtensionProjection] = {}\n\n    def __getitem__(self, name: str) -> _SyncExtensionProjection:\n        if not name:\n            raise ValueError(\"extension name must be non-empty.\")\n        if name not in self._cache:\n            self._cache[name] = _SyncExtensionProjection(\n                self._thread,\n                name=name,\n                namespace=self._namespace,\n            )\n        return self._cache[name]\n\n\nclass _SyncExtensionProjection:\n    def __init__(\n        self,\n        thread: SyncThreadStream,\n        *,\n        name: str,\n        namespace: list[str],\n    ) -> None:\n        self._thread = thread","sourceCodeStart":1010,"sourceCodeEnd":1046,"githubUrl":"https://github.com/langchain-ai/langgraph/blob/38031739e551638e373fb553453256c23feeb41f/libs/sdk-py/langgraph_sdk/_sync/stream.py#L1010-L1046","documentation":"Error \"extension name must be non-empty.\" thrown in langchain-ai/langgraph.","triggerScenarios":"Thrown at libs/sdk-py/langgraph_sdk/_sync/stream.py:1028 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"38031739e551638e373fb553453256c23feeb41f","analyzedAt":"2026-08-26T18:02:49.312Z","schemaVersion":2},"datasetVersion":"2026-08-26T21:11:00.512Z"}