Preserve renamed thread titles during reconciliation (#25624)

## Summary
- preserve existing explicit SQLite thread titles during rollout
reconciliation/backfill when the incoming rollout title is only
first-message-derived
- keep stale inferred-title repair behavior while avoiding session-index
scans during startup backfill
- add a regression test for renamed titles surviving reconcile

## Testing
- just fmt
- just test -p codex-rollout
- just test -p codex-state
This commit is contained in:
jif-oai authored and GitHub committed 2026-06-01 18:33:05 +02:00
1 parent f1d029cf75
commit 3cdce52865
5 files changed
+113 -2

No files matched your search

+1
View File
@@ -514,6 +514,7 @@ pub async fn reconcile_rollout(
metadata.cwd = normalize_cwd_for_state_db(&metadata.cwd);
if let Ok(Some(existing_metadata)) = ctx.get_thread(metadata.id).await {
metadata.prefer_existing_git_info(&existing_metadata);
metadata.prefer_existing_explicit_title(&existing_metadata);
}
match archived_only {
Some(true) if metadata.archived_at.is_none() => {