@@ -123,6 +123,12 @@ class DecisionEvents:
123123 replay : bool
124124 replay_current_time_milliseconds : int
125125 next_decision_event_id : int
126+ markers : List [HistoryEvent ] = field (default_factory = list )
127+
128+ def __post_init__ (self ):
129+ for event in self .decision_events :
130+ if event .event_type == EventType .MarkerRecorded :
131+ self .markers .append (event )
126132
127133 def get_optional_decision_event (self , event_id ) -> HistoryEvent :
128134 index = event_id - self .next_decision_event_id
@@ -542,6 +548,9 @@ def process_decision_events(self, decision_events: DecisionEvents):
542548 self .decision_context .set_replay_current_time_milliseconds (decision_events .replay_current_time_milliseconds )
543549
544550 self .handle_decision_task_started (decision_events )
551+ for event in decision_events .markers :
552+ if not event .marker_recorded_event_attributes .marker_name == LOCAL_ACTIVITY_MARKER_NAME :
553+ self .process_event (event );
545554 for event in decision_events .events :
546555 self .process_event (event )
547556 if self .completed :
@@ -929,4 +938,4 @@ def respond_decisions(self, task_token: bytes, decisions: List[Decision]):
929938 logger .debug ("RespondDecisionTaskCompleted: %s" , response )
930939
931940
932- from cadence .clock_decision_context import ClockDecisionContext , TimerCancellationHandler
941+ from cadence .clock_decision_context import ClockDecisionContext , TimerCancellationHandler , LOCAL_ACTIVITY_MARKER_NAME
0 commit comments