chat: index chat events incrementally on write
append_chat_event now triggers index_file on the segment chat.jsonl after
the write lock is released and before the callosum broadcast. Chat events
become searchable through /app/search immediately, without requiring a
sol indexer --rescan.
Indexer exceptions are logged as warnings (exc_info=True) and never
re-raised, so transient index failures cannot break chat writes. The
indexer is already idempotent on re-run.
Co-Authored-By: OpenAI Codex <codex@openai.com>