- test_search_by_content: format_search_result() does not include
body_text, so check for the expected message_id instead.
- test_search_no_results: vector cosine similarity always returns
nearest neighbors; use a date filter far in the future to
guarantee zero results instead.
- Integration tests for search_emails and read_email against live Qdrant
- Indexes 3 test emails, tests search by content/participant/date
- CI: new 'integration-test' job with qdrant service, runs before build
- Unit test job ignores integration test file
- Unit tests for normalize_email_address, payload_matches_participant,
format_search_result (9 test cases across 3 test classes)
- New 'test' job in CI workflow (runs before build)
- pytest.ini for pythonpath config