Thread index and split source chat
Apply drizzle/0001_thread_titles.sql to an existing database before starting this version. The migration copies previous workspace threads into separate indexed rows without removing originals. Workspace loading returns at most 100 title/metadata records; /api/threads paginates titles and returns full messages only for a requested thread ID. All queries are scoped to the authenticated owner. Title-only sync updates preserve unloaded messages.
The AI search command supports indexed thread-title search and opening an agent request. Source details provide a resizable source chat with authenticated source context, editable notes, and explicit delete confirmation. Source removal retains the database row. Thread deletion moves the thread to Trash and can be restored.
Agent UI uses assistant-ui's ExternalStoreRuntime adapter over the existing Eve stream. Source chat uses message and composer primitives; the main composer shares the adapter. See design/unslop/analysis.md and design/unslop/skill.md for the reference-specific UI review and its limitations.
Source captured: 2026-10-11