CI: real-Qdrant smoke tests (closes the manual release-verification gap) - #128
Merged
Conversation
…elease scenarios on qdrant/qdrant:v1.15.4 (env-gated module, local runs unaffected)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #127.
The v1.2.0 text-search release scenarios were verified against a real Qdrant server manually. This PR makes that verification permanent CI:
tests/test_qdrant_server_smoke.py— the seven scenarios (sparse IDF ordering, sparse tenant boundary, MatchText gate against a real full-text index, gate∘tenant, named-layout scroll dense-vector preservation, the post-hoc sparse-space refusal, thehas_vectorcoverage-gap →sparse-backfillflow), each on a unique collection with guaranteed cleanup.MNEMOSTACK_TEST_QDRANT_URL: unset → module skips (local runs unaffected); set → an unreachable server FAILS after bounded readiness retries rather than skipping — a green smoke job that exercised nothing would be exactly the false signal this module exists to prevent. Point the variable at any reachable Qdrant to smoke your own deployment.test-qdrant-server— aqdrant/qdrant:v1.15.4service container, the same version the deployment docs' compose example pins, so the documented deployment is the tested one.Verified three ways before pushing: 7 passed against a live v1.15.4 binary; 7 skipped with the variable unset; 7 failures (not skips) against a dead endpoint.
Full suite: 1422 passed / 16 skipped; ruff + mypy clean; workflow YAML validated.