Skip to content

Start Qdrant the way the runner can, not the way Linux can - #118

Merged
tonytonycoder11 merged 1 commit into
mainfrom
fix/cli-proof-on-a-runner-without-docker
Aug 6, 2026
Merged

Start Qdrant the way the runner can, not the way Linux can#118
tonytonycoder11 merged 1 commit into
mainfrom
fix/cli-proof-on-a-runner-without-docker

Conversation

@tonytonycoder11

Copy link
Copy Markdown
Contributor

The v2.2.0 release got further and stopped again, one step short.

What passed

The Linux CLI job succeeded, which is the proof the previous fix needed. The binary did this
against a real Qdrant:

copying cli-source -> cli-target (batch 256, recall >= 0.99, checkpoint .../cli.checkpoint)
target: one 4-dimension vector, DOT, 1 shard(s), 1 replica(s)
copied 2 point(s); source 2, target 2
recall 1.0
wrote 64512 bytes to .../cli.snapshot

It created the target from the source's own vectors, copied, verified, snapshotted and scrolled.

What failed

The macOS job, on docker: command not found. A GitHub macOS runner has no Docker, and this repository
already knew that: ci.yml's native-contract-macos job downloads the released Qdrant binary for
exactly this reason. The release workflow was written without reusing that, which is a harness bug and
not a product one.

Starting Qdrant is now its own step that picks by RUNNER_OS: the image on Linux, the released
aarch64-apple-darwin binary on macOS. Proving the binary is a second step that assumes only that
something is answering on 6333.

Proving the binary only on Linux was the other option and is the wrong one. The macOS binary is the one
most people will download onto a laptop, so skipping it would leave the one that matters most as the
only artefact in the release nobody had ever run.

Nothing was published

publish has needs: cli and was skipped, twice now. There is no 2.2.0 on Maven Central and no
GitHub Release. The tag moves to this merge commit when it lands.

The macOS runner has no Docker, so the step that proves the CLI binary died on
docker: command not found before it ran anything. This repository already knew
that: ci.yml's native-contract-macos job downloads the released Qdrant binary
for exactly this reason, and the release workflow was written without reusing
it.

Starting Qdrant is now its own step and picks by RUNNER_OS: the image on
Linux, the released aarch64-apple-darwin binary on macOS. Proving the binary
is a second step that assumes only a Qdrant on 6333.

The Linux job passed on the run that found this, which is what makes the fix
narrow: kdrant migrate created its target, copied both points, verified at
recall 1.0, took a snapshot and scrolled it back. The macOS binary is the one
most people will download onto a laptop, so proving it only on Linux would
have left the one that matters most unrun.
@tonytonycoder11
tonytonycoder11 requested a review from a team as a code owner August 6, 2026 08:26
@trueup-by-nacode-studios

Copy link
Copy Markdown

This pull request adds no capability the code did not already have.

1 file read · 8 ms · against aa58721

@tonytonycoder11
tonytonycoder11 merged commit c269704 into main Aug 6, 2026
12 checks passed
@tonytonycoder11
tonytonycoder11 deleted the fix/cli-proof-on-a-runner-without-docker branch August 6, 2026 08:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant