@@ -1379,10 +1379,6 @@ def wrap_handler(
1379
1379
handler : "Optional[AgentEventHandler]" = None ,
1380
1380
span : "Optional[AbstractSpan]" = None ,
1381
1381
) -> "Optional[AgentEventHandler]" :
1382
- # Do not create a handler wrapper if we do not have handler in the first place.
1383
- if not handler :
1384
- return None
1385
-
1386
1382
if isinstance (handler , _AgentEventHandlerTraceWrapper ):
1387
1383
return handler
1388
1384
@@ -1396,10 +1392,6 @@ def wrap_async_handler(
1396
1392
handler : "Optional[AsyncAgentEventHandler]" = None ,
1397
1393
span : "Optional[AbstractSpan]" = None ,
1398
1394
) -> "Optional[AsyncAgentEventHandler]" :
1399
- # Do not create a handler wrapper if we do not have handler in the first place.
1400
- if not handler :
1401
- return None
1402
-
1403
1395
if isinstance (handler , _AsyncAgentEventHandlerTraceWrapper ):
1404
1396
return handler
1405
1397
@@ -1975,22 +1967,30 @@ def initialize(
1975
1967
response_iterator = response_iterator ,
1976
1968
submit_tool_outputs = submit_tool_outputs ,
1977
1969
)
1970
+ else :
1971
+ super ().initialize (
1972
+ response_iterator = response_iterator ,
1973
+ submit_tool_outputs = submit_tool_outputs ,
1974
+ )
1978
1975
1979
1976
def __next__ (self ) -> Any :
1980
1977
if self .inner_handler :
1981
1978
event_bytes = self .inner_handler .__next_impl__ ()
1982
1979
return self ._process_event (event_bytes .decode ("utf-8" ))
1983
- return None
1980
+ return super (). __next__ ()
1984
1981
1985
1982
# pylint: disable=R1710
1986
1983
def on_message_delta (self , delta : "MessageDeltaChunk" ) -> None : # type: ignore[func-returns-value]
1987
1984
if self .inner_handler :
1988
1985
return self .inner_handler .on_message_delta (delta ) # type: ignore
1986
+ return super ().on_message_delta (delta ) # type: ignore
1989
1987
1990
1988
def on_thread_message (self , message : "ThreadMessage" ) -> None : # type: ignore[func-returns-value]
1991
1989
retval = None
1992
1990
if self .inner_handler :
1993
1991
retval = self .inner_handler .on_thread_message (message ) # type: ignore
1992
+ else :
1993
+ retval = super ().on_thread_message (message ) # pylint: disable=assignment-from-none # type: ignore
1994
1994
1995
1995
if message .status in {"completed" , "incomplete" }:
1996
1996
self .last_message = message
@@ -2002,6 +2002,8 @@ def on_thread_run(self, run: "ThreadRun") -> None: # type: ignore[func-returns-
2002
2002
2003
2003
if self .inner_handler :
2004
2004
retval = self .inner_handler .on_thread_run (run ) # type: ignore
2005
+ else :
2006
+ retval = super ().on_thread_run (run ) # pylint: disable=assignment-from-none # type: ignore
2005
2007
self .last_run = run
2006
2008
2007
2009
return retval # type: ignore
@@ -2010,6 +2012,8 @@ def on_run_step(self, step: "RunStep") -> None: # type: ignore[func-returns-val
2010
2012
retval = None
2011
2013
if self .inner_handler :
2012
2014
retval = self .inner_handler .on_run_step (step ) # type: ignore
2015
+ else :
2016
+ retval = super ().on_run_step (step ) # pylint: disable=assignment-from-none # type: ignore
2013
2017
2014
2018
if (
2015
2019
step .type == "tool_calls"
@@ -2035,20 +2039,23 @@ def on_run_step(self, step: "RunStep") -> None: # type: ignore[func-returns-val
2035
2039
def on_run_step_delta (self , delta : "RunStepDeltaChunk" ) -> None : # type: ignore[func-returns-value]
2036
2040
if self .inner_handler :
2037
2041
return self .inner_handler .on_run_step_delta (delta ) # type: ignore
2042
+ return super ().on_run_step_delta (delta ) # type: ignore
2038
2043
2039
2044
def on_error (self , data : str ) -> None : # type: ignore[func-returns-value]
2040
2045
if self .inner_handler :
2041
2046
return self .inner_handler .on_error (data ) # type: ignore
2047
+ return super ().on_error (data ) # type: ignore
2042
2048
2043
2049
def on_done (self ) -> None : # type: ignore[func-returns-value]
2044
2050
if self .inner_handler :
2045
2051
return self .inner_handler .on_done () # type: ignore
2052
+ return super ().on_done () # type: ignore
2046
2053
# it could be called multiple tines (for each step) __exit__
2047
2054
2048
2055
def on_unhandled_event (self , event_type : str , event_data : Any ) -> None : # type: ignore[func-returns-value]
2049
2056
if self .inner_handler :
2050
2057
return self .inner_handler .on_unhandled_event (event_type , event_data ) # type: ignore
2051
-
2058
+ return super (). on_unhandled_event ( event_type , event_data ) # type: ignore
2052
2059
# pylint: enable=R1710
2053
2060
2054
2061
def __exit__ (self , exc_type , exc_val , exc_tb ):
@@ -2093,23 +2100,33 @@ def initialize(
2093
2100
response_iterator = response_iterator ,
2094
2101
submit_tool_outputs = submit_tool_outputs ,
2095
2102
)
2103
+ else :
2104
+ super ().initialize (
2105
+ response_iterator = response_iterator ,
2106
+ submit_tool_outputs = submit_tool_outputs ,
2107
+ )
2096
2108
2097
2109
# cspell:disable-next-line
2098
2110
async def __anext__ (self ) -> Any :
2099
2111
if self .inner_handler :
2100
2112
# cspell:disable-next-line
2101
2113
event_bytes = await self .inner_handler .__anext_impl__ ()
2102
2114
return await self ._process_event (event_bytes .decode ("utf-8" ))
2115
+ # cspell:disable-next-line
2116
+ return await super ().__anext__ ()
2103
2117
2104
2118
# pylint: disable=R1710
2105
2119
async def on_message_delta (self , delta : "MessageDeltaChunk" ) -> None : # type: ignore[func-returns-value]
2106
2120
if self .inner_handler :
2107
2121
return await self .inner_handler .on_message_delta (delta ) # type: ignore
2122
+ return await super ().on_message_delta (delta ) # type: ignore
2108
2123
2109
2124
async def on_thread_message (self , message : "ThreadMessage" ) -> None : # type: ignore[func-returns-value]
2110
2125
retval = None
2111
2126
if self .inner_handler :
2112
2127
retval = await self .inner_handler .on_thread_message (message ) # type: ignore
2128
+ else :
2129
+ retval = await super ().on_thread_message (message ) # type: ignore
2113
2130
2114
2131
if message .status in {"completed" , "incomplete" }:
2115
2132
self .last_message = message
@@ -2121,6 +2138,8 @@ async def on_thread_run(self, run: "ThreadRun") -> None: # type: ignore[func-re
2121
2138
2122
2139
if self .inner_handler :
2123
2140
retval = await self .inner_handler .on_thread_run (run ) # type: ignore
2141
+ else :
2142
+ retval = await super ().on_thread_run (run ) # type: ignore
2124
2143
self .last_run = run
2125
2144
2126
2145
return retval # type: ignore
@@ -2129,6 +2148,8 @@ async def on_run_step(self, step: "RunStep") -> None: # type: ignore[func-retur
2129
2148
retval = None
2130
2149
if self .inner_handler :
2131
2150
retval = await self .inner_handler .on_run_step (step ) # type: ignore
2151
+ else :
2152
+ retval = await super ().on_run_step (step ) # type: ignore
2132
2153
2133
2154
if (
2134
2155
step .type == "tool_calls"
@@ -2154,19 +2175,23 @@ async def on_run_step(self, step: "RunStep") -> None: # type: ignore[func-retur
2154
2175
async def on_run_step_delta (self , delta : "RunStepDeltaChunk" ) -> None : # type: ignore[func-returns-value]
2155
2176
if self .inner_handler :
2156
2177
return await self .inner_handler .on_run_step_delta (delta ) # type: ignore
2178
+ return await super ().on_run_step_delta (delta ) # type: ignore
2157
2179
2158
2180
async def on_error (self , data : str ) -> None : # type: ignore[func-returns-value]
2159
2181
if self .inner_handler :
2160
2182
return await self .inner_handler .on_error (data ) # type: ignore
2183
+ return await super ().on_error (data ) # type: ignore
2161
2184
2162
2185
async def on_done (self ) -> None : # type: ignore[func-returns-value]
2163
2186
if self .inner_handler :
2164
2187
return await self .inner_handler .on_done () # type: ignore
2188
+ return await super ().on_done () # type: ignore
2165
2189
# it could be called multiple tines (for each step) __exit__
2166
2190
2167
2191
async def on_unhandled_event (self , event_type : str , event_data : Any ) -> None : # type: ignore[func-returns-value]
2168
2192
if self .inner_handler :
2169
2193
return await self .inner_handler .on_unhandled_event (event_type , event_data ) # type: ignore
2194
+ return await super ().on_unhandled_event (event_type , event_data ) # type: ignore
2170
2195
2171
2196
# pylint: enable=R1710
2172
2197
0 commit comments