feat(core): generate session titles from first prompt
Add SessionTitle service that generates a session title from the session's sole user message via the customizable "title" agent, then renames the session. Runs once per session, gated on durable history having exactly one user message (no default-title string comparison). Wire it into SessionRunner as a background fork after the first turn's prompt promotion makes the user message visible; forking before promotion caused the first-message lookup to see zero rows and silently no-op. Closes #34364
D
Dax Raad committed
5710064ae173592c2e1568be16d3c9114f1feb1b
Parent: 4617b03