preserve cleared names in thread list

This commit is contained in:
anais
2026-06-21 15:25:47 -07:00
parent 694fbfa828
commit 681edda7c8
2 changed files with 19 additions and 10 deletions
+8 -5
View File
@@ -1814,14 +1814,17 @@ fn thread_item_from_state_list_item(item: codex_state::ThreadListItem) -> Thread
let source = serde_json::from_str(item.source.as_str())
.or_else(|_| serde_json::from_value(Value::String(item.source)))
.unwrap_or(SessionSource::Unknown);
let name = item
.name
.filter(|name| !name.trim().is_empty())
.or_else(|| {
let name = match item.name {
Some(name) => {
let name = name.trim();
(!name.is_empty()).then(|| name.to_string())
}
None => {
let title = item.title.trim();
(!title.is_empty() && item.first_user_message.as_deref().map(str::trim) != Some(title))
.then(|| item.title.clone())
});
}
};
ThreadItem {
path: item.rollout_path,
thread_id: Some(item.id),
+11 -5
View File
@@ -188,11 +188,17 @@ pub(super) fn stored_thread_from_state_list_item(
let preview = preview
.or_else(|| first_user_message.clone())
.unwrap_or_default();
let name = name.filter(|name| !name.trim().is_empty()).or_else(|| {
let title = title.trim();
(!title.is_empty() && first_user_message.as_deref().map(str::trim) != Some(title))
.then(|| title.to_string())
});
let name = match name {
Some(name) => {
let name = name.trim();
(!name.is_empty()).then(|| name.to_string())
}
None => {
let title = title.trim();
(!title.is_empty() && first_user_message.as_deref().map(str::trim) != Some(title))
.then(|| title.to_string())
}
};
let git_info = git_info_from_parts(git_sha, git_branch, git_origin_url);
let rollout_path = codex_rollout::plain_rollout_path(rollout_path.as_path());
let model_provider = if model_provider.is_empty() {