- Layer 2 semantic search now queries both curated and raw types,
closing the blind spot for turns past the 50-turn window pre-curation
- Layer 3 skips turns already returned by Layer 2 to avoid duplicate
context and wasted token budget
- get_recent_turns uses Qdrant OrderBy for server-side timestamp sort
with payload index; fallback to client-side sort if unavailable
- Bump version to 2.0.4
Add conftest.py with shared fixtures, new test_qdrant_service.py covering
all QdrantService methods, and expand curator/proxy/integration/utils tests
to cover debug_log, forward_to_ollama, curator.run(), load_system_prompt,
and health check edge cases.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>