feat(ai): semantic-search backfill worker + Ollama compose profile (RECOMMENDATIONS #4a)
CI / backend (pull_request) Successful in 49s
CI / frontend (pull_request) Successful in 12s
CI / format (pull_request) Successful in 50s
CI / db-tests (pull_request) Successful in 51s
Security / secrets (pull_request) Successful in 4s
Security / dependencies (pull_request) Successful in 52s
CI / backend (pull_request) Successful in 49s
CI / frontend (pull_request) Successful in 12s
CI / format (pull_request) Successful in 50s
CI / db-tests (pull_request) Successful in 51s
Security / secrets (pull_request) Successful in 4s
Security / dependencies (pull_request) Successful in 52s
First activation slice of semantic search (docs/discovery/05+06): - EmbeddingBackfillWorker: fills Email.Embedding in small batches (32, 2s pause, newest first; subject+snippet, truncated) so interactive load is never starved. Exits immediately when the embedding provider is unavailable — AI-off deployments are untouched, Ollama hiccups back off instead of crashing the host. - compose: optional 'ollama' service under the 'ai' profile (persistent model volume, commented GPU passthrough for the RTX 3080); api gets Ai__OllamaBaseUrl pointing at it. - LiveDb test proves the worker persists 768-dim vectors against real pgvector (deterministic fake provider); LiveDb classes serialised into one xUnit collection (concurrent MigrateAsync on a fresh DB races — found while testing). Verified against REAL Ollama locally: pulled nomic-embed-text in a container and confirmed the /api/embeddings contract the provider uses returns 768-dim vectors. Full suite 55 green (4 LiveDb vs real pgvector); format clean. Next slice: hybrid RRF ranking in SearchService once embeddings exist. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -32,4 +32,7 @@
|
||||
<ProjectReference Include="..\InboxIntel.Application\InboxIntel.Application.csproj" />
|
||||
<ProjectReference Include="..\InboxIntel.Domain\InboxIntel.Domain.csproj" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<InternalsVisibleTo Include="InboxIntel.IntegrationTests" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
|
||||
Reference in New Issue
Block a user