agent: Fix thread summary generation (#28143)

#28102 introduced a bug where thread summaries wouldn't get generated
because they would get set to the default title instead of `None`.

Not adding a release note because the bug didn't make it to Preview.

Release Notes:

- N/A
This commit is contained in:
Agus Zubiaga 2025-04-05 09:34:23 -03:00 committed by GitHub
parent c1259c136e
commit ec7d28648a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -391,17 +391,20 @@ impl Thread {
self.summary.clone().unwrap_or(Self::DEFAULT_SUMMARY)
}
pub fn set_summary(&mut self, summary: impl Into<SharedString>, cx: &mut Context<Self>) {
let summary = summary.into();
let old_summary = self.summary_or_default();
self.summary = if summary.is_empty() {
Some(Self::DEFAULT_SUMMARY)
} else {
Some(summary)
pub fn set_summary(&mut self, new_summary: impl Into<SharedString>, cx: &mut Context<Self>) {
let Some(current_summary) = &self.summary else {
// Don't allow setting summary until generated
return;
};
if Some(old_summary) != self.summary {
let mut new_summary = new_summary.into();
if new_summary.is_empty() {
new_summary = Self::DEFAULT_SUMMARY;
}
if current_summary != &new_summary {
self.summary = Some(new_summary);
cx.emit(ThreadEvent::SummaryChanged);
}
}