fix: separate read/write sqlite connections to eliminate search lock contention
Search queries were blocked 2-4s waiting on the mutex while sync held
the write lock for batch inserts. WAL mode supports concurrent readers
with separate connections — search now uses a dedicated read-only
connection with no mutex, so it never blocks on writes.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>