Skip to content

fix(desktop): disable mesh-llm auto-build to prevent git config corruption#819

Merged
wpfleger96 merged 2 commits into
mainfrom
wpfleger/fix-mesh-llm-git-escape
Jun 2, 2026
Merged

fix(desktop): disable mesh-llm auto-build to prevent git config corruption#819
wpfleger96 merged 2 commits into
mainfrom
wpfleger/fix-mesh-llm-git-escape

Conversation

@wpfleger96

Copy link
Copy Markdown
Collaborator

The skippy-ffi build.rs in mesh-llm-sdk auto-runs prepare-llama.sh when llama.cpp static archives are missing. That script uses git -C which walks upward into the enclosing Sprout repo when .deps/llama.cpp/.git doesn't exist, corrupting origin remote URL, user identity, and HEAD state for every developer who runs cargo clippy/cargo build on the desktop Tauri crate.

This adds desktop/src-tauri/.cargo/config.toml setting SKIPPY_LLAMA_AUTO_BUILD=0, scoped to only the desktop crate. Native inference still works via explicit just llama-build. Builds, tests, clippy, and CI are all unaffected — the auto-build path was already broken (it corrupts the repo before completing).

  • Add desktop/src-tauri/.cargo/config.toml with SKIPPY_LLAMA_AUTO_BUILD = "0"
  • Scoped to desktop crate only — zero effect on workspace-level cargo commands

Upstream fix: Mesh-LLM/mesh-llm#780. Remove this workaround once mesh-llm-sdk is bumped past that fix.

…ption

The `skippy-ffi` build.rs in mesh-llm-sdk auto-runs prepare-llama.sh
when llama.cpp static archives are missing. That script uses `git -C`
which walks upward into the enclosing Sprout repo when
.deps/llama.cpp/.git doesn't exist, corrupting origin remote URL, user
identity, and HEAD state. Disabling auto-build prevents the script from
running. Native inference still works via explicit `just llama-build`.

Upstream fix: Mesh-LLM/mesh-llm#780 (GIT_CEILING_DIRECTORIES guard).
Remove this workaround once mesh-llm-sdk is bumped past that fix.
Rust 1.95 clippy flags these in the desktop Tauri crate, blocking
pre-push hooks on all branches.
@wpfleger96 wpfleger96 marked this pull request as ready for review June 2, 2026 18:38
@wpfleger96 wpfleger96 requested a review from a team as a code owner June 2, 2026 18:38
@wpfleger96 wpfleger96 enabled auto-merge (squash) June 2, 2026 18:39
@wpfleger96 wpfleger96 merged commit 5b572d6 into main Jun 2, 2026
15 checks passed
@wpfleger96 wpfleger96 deleted the wpfleger/fix-mesh-llm-git-escape branch June 2, 2026 18:49
michaelneale added a commit that referenced this pull request Jun 4, 2026
* origin/main: (36 commits)
  fix: use immutable commit-SHA URLs in screenshot PR comments (#842)
  feat(mobile+desktop): two-tier Slack-style app icon badge (#802)
  chore: simplify file-size check to a flat 1000-line limit (#839)
  fix(desktop): robust emoji picker — unify picker + fix custom emoji in editing, status, reactions (#837)
  feat(desktop): reusable screenshot workflow for agents (#826)
  desktop(mesh-llm): let a serving node route a different model (#833)
  chore(release): release version 0.3.9 (#832)
  fix: native arbitrary-file download + image context-menu flash (#830)
  fix(desktop): custom emoji reaction rendering + picker autofocus (#831)
  Mesh-LLM v1: relay-gated direct-iroh inference between users (WAN) (#822)
  chore(release): release version 0.3.8 (#829)
  chore(release): release version 0.3.7 (#825)
  feat: code block rendering, syntax highlighting, and compose fixes (#803)
  feat: custom emoji — user-owned NIP-30 sets with a client-side union (#816)
  Install sprout-cli skill at repo root + fix desktop clippy (#818)
  fix(desktop): use public re-export path for ensure_client_node_for_model (#824)
  refactor(desktop): feature-gate mesh-llm-sdk behind optional Cargo feature (#823)
  fix(desktop): align workflow read/save commands to the frontend contract (#820)
  fix(desktop): disable mesh-llm auto-build to prevent git config corruption (#819)
  fix(desktop): clear clippy lints in agents/mesh_llm commands (#817)
  ...

# Conflicts:
#	Cargo.lock
#	desktop/scripts/check-file-sizes.mjs
#	desktop/src-tauri/Cargo.toml
#	desktop/src/app/AppShell.tsx
#	desktop/src/app/AppTopChrome.tsx
#	desktop/src/features/messages/hooks.ts
#	desktop/src/features/workspaces/useWorkspaceInit.ts
#	desktop/src/shared/api/tauri.ts
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.

2 participants