@@ -69,6 +69,7 @@ class StreamEndEvent:
6969 memory_entries : list [str ]
7070 anthropic_calls : list [str ]
7171 skipped : bool
72+ excuse_reasons : list [str ] = field (default_factory = list )
7273
7374 def to_dict (self ) -> dict :
7475 """Convert to dict for backward compatibility with existing consumers."""
@@ -81,6 +82,7 @@ def to_dict(self) -> dict:
8182 "memory_entries" : self .memory_entries ,
8283 "anthropic_calls" : self .anthropic_calls ,
8384 "skipped" : self .skipped ,
85+ "excuse_reasons" : self .excuse_reasons ,
8486 }
8587
8688
@@ -106,6 +108,7 @@ class ResponseAccumulator:
106108 skip_tool_called : bool = False
107109 memory_entries : list [str ] = field (default_factory = list )
108110 anthropic_calls : list [str ] = field (default_factory = list )
111+ excuse_reasons : list [str ] = field (default_factory = list )
109112 # Hook capture lists - these get mutated by PostToolUse hooks
110113 skip_tool_capture : list [bool ] = field (default_factory = list )
111114
@@ -207,6 +210,7 @@ def create_end_event(
207210 memory_entries = self .memory_entries ,
208211 anthropic_calls = self .anthropic_calls ,
209212 skipped = skipped ,
213+ excuse_reasons = self .excuse_reasons ,
210214 )
211215
212216 def create_interrupted_end_event (
0 commit comments