fix(desktop): use a managed headless Ollama runtime - #137
Merged
Conversation
tulayha
force-pushed
the
fix/desktop-ollama-onboarding
branch
from
September 1, 2026 09:47
6578246 to
5c2a5d5
Compare
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.
Related issue
No linked issue.
Summary
The managed Ollama behavior is a user-visible Desktop fix. The dependency and deployment safeguards are internal-only. This does not change stored repository/index formats and does not require a model or repository rebuild.
Validation
$env:TAURI_CONFIG = '{"bundle":{"resources":[]}}'; cargo test --release --locked --manifest-path desktop/src-tauri/Cargo.toml— 91 native Desktop tests passed, including Windows ZIP and macOS tar.gz extraction coveragecargo test --locked --manifest-path desktop/src-tauri/Cargo.toml query_setup::tests -- --nocapture— 5 focused managed-runtime tests passednpm --prefix desktop run check— TypeScript typecheck, ESLint, 47 Vitest tests, and the production Vite build passedcargo about --version— confirmed the CI-pinned cargo-about 0.9.1 locallynpm --prefix desktop run notices:check— the regenerated locked Rust and frontend notice inventory passeduv run --no-sync pytest -q tests/test_packaging.py -k "bundled_chroma_service_is_not_published or codex_benchmark_omits_unused_optional_providers or optional_ollama_profile_never_pulls_a_model_implicitly"— 3 targeted packaging tests passed; pytest also reported its existing local cache-path warninguv run --no-sync ruff check tests/test_packaging.py— passednpm ci --ignore-scripts --forceinbenchmarks/codex-mcp— test-only engine override installed 374 packages, omitted the unrelated optional provider tree, and audited 0 installed vulnerabilities; the normal install correctly rejected local Node 22.19 because the benchmark requires Node 22.22+npm ls @openai/codex-sdk --depth=0— confirmed the direct Codex SDK remains installednpm ls @openai/codex-security @huggingface/transformers onnxruntime-node sharp adm-zip extract-zip --all— confirmed the unused optional packages are absentnpx --yes markdownlint-cli2@0.23.2— passedcargo fmt --manifest-path desktop/src-tauri/Cargo.toml -- --check— passedgit diff --check— passedThe real 1.36 GiB Windows runtime download and a real macOS runtime launch were not exercised locally. The archive paths were covered with synthetic ZIP and tar.gz fixtures, and the published asset metadata was verified. Promptfoo validation was not run because the local Node 22.19 runtime is below its enforced Node 22.22 minimum. Lychee was unavailable locally and Docker Desktop was not running, so the link and Compose configuration checks were not run; no external links were added and the Chroma invariant has direct regression coverage.