Skip to content

Commit cf69e09

Browse files
chore(streaming): add runtime type check for better error messages (#826)
1 parent d0de8e5 commit cf69e09

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

src/anthropic/lib/streaming/_messages.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
from typing_extensions import Self, Iterator, Awaitable, AsyncIterator, assert_never
66

77
import httpx
8+
from pydantic import BaseModel
89

910
from ._types import (
1011
TextEvent,
@@ -346,6 +347,9 @@ def accumulate_event(
346347
event: RawMessageStreamEvent,
347348
current_snapshot: Message | None,
348349
) -> Message:
350+
if not isinstance(event, BaseModel): # pyright: ignore[reportUnnecessaryIsInstance]
351+
raise TypeError(f'Unexpected event runtime type - {event}')
352+
349353
if current_snapshot is None:
350354
if event.type == "message_start":
351355
return Message.construct(**cast(Any, event.message.to_dict()))

0 commit comments

Comments
 (0)