* feat: defer embedding messages * fix: rm gauges * feat: embed messages immediately on create with reconciler fallback (#766) Adds embed_messages_now background task so newly created messages are searchable within seconds instead of waiting up to the reconciler interval. Three-phase claim/lease → embed → persist never holds a DB session across the embedding call; the reconciler remains the fallback for failures and stragglers. * fix: harden immediate-embed fast path and cover its error branches Wrap embed_messages_now in a top-level try/except so a failure in the claim or persist phase degrades to "reconciler will retry" instead of escaping into the background-task runner; the rows stay pending+leased and the reconciler heals them. Add tests for the previously-uncovered branches: external-store-unavailable persist path, the file-upload endpoint's embed scheduling, and direct unit tests for the shared compute_chunk_positions / build_message_vector_record helpers. Document the semantic-search eventual-consistency window in search.mdx (keyword matches are immediate; vector matches lag creation by seconds). * fix: don't hold DB session across vector-store upserts * fix: align semantic-search function to filter null rows --------- Co-authored-by: Vineeth Voruganti <13438633+VVoruganti@users.noreply.github.com> |
||
|---|---|---|
| .. | ||
| dreaming.mdx | ||
| file-uploads.mdx | ||
| overview.mdx | ||
| peer-card.mdx | ||
| queue-status.mdx | ||
| reasoning-configuration.mdx | ||
| representation-scopes.mdx | ||
| search.mdx | ||
| streaming-response.mdx | ||
| summarizer.mdx | ||
| using-filters.mdx | ||