File tree Expand file tree Collapse file tree 1 file changed +8
-4
lines changed Expand file tree Collapse file tree 1 file changed +8
-4
lines changed Original file line number Diff line number Diff line change @@ -1191,15 +1191,19 @@ impl AgentTask {
1191
1191
// TOCTOU?
1192
1192
if !self . handle . is_finished ( ) {
1193
1193
self . handle . abort ( ) ;
1194
+ let sub_id = self . sub_id . clone ( ) ;
1195
+ let is_review = self . kind == AgentTaskKind :: Review ;
1196
+ let sess = self . sess ;
1194
1197
let event = Event {
1195
- id : self . sub_id . clone ( ) ,
1198
+ id : sub_id. clone ( ) ,
1196
1199
msg : EventMsg :: TurnAborted ( TurnAbortedEvent { reason } ) ,
1197
1200
} ;
1198
- let sess = self . sess ;
1199
1201
tokio:: spawn ( async move {
1200
- if self . kind == AgentTaskKind :: Review {
1201
- exit_review_mode ( sess. clone ( ) , self . sub_id , None ) . await ;
1202
+ if is_review {
1203
+ exit_review_mode ( sess. clone ( ) , sub_id. clone ( ) , None ) . await ;
1202
1204
}
1205
+ // Ensure active turn state is cleared when a task is aborted.
1206
+ sess. remove_task ( & sub_id) . await ;
1203
1207
sess. send_event ( event) . await ;
1204
1208
} ) ;
1205
1209
}
You can’t perform that action at this time.
0 commit comments