fix: emitToolProgress recover on closed channel

This commit is contained in:
2026-06-28 11:36:27 +08:00
parent 5725075a31
commit 9b20f14ab9
@@ -171,6 +171,7 @@ func (s *Synthesizer) emitToolProgress(eventCh chan<- model.StreamEvent, name, s
if eventCh == nil { if eventCh == nil {
return return
} }
defer func() { recover() }() // channel may be closed by caller
select { select {
case eventCh <- model.StreamEvent{ case eventCh <- model.StreamEvent{
Type: model.StreamToolProgress, Type: model.StreamToolProgress,