GUI: fix build health, add OpenRouter to settings, harden browser fallback#29
Merged
Conversation
- SettingsPanel: add OpenRouter (id `openrouter`) as a provider option, presented like the existing providers; model list defaults to google/gemini-2.5-flash (matches the new backend provider, which reads OPENROUTER_API_KEY) - Tauri backend: pass OPENROUTER_API_KEY to the solver process when the openrouter provider is selected - Cargo.toml: declare the libc dependency used by stop_mining on unix (libc::kill was an undeclared-crate compile error on non-Windows) - App.tsx: handle listen() rejection when running outside Tauri (e.g. vite preview in a plain browser) so event wiring degrades to a no-op instead of raising unhandled promise rejections - index.html: drop dead /vite.svg favicon reference (no public/ dir) - cargo fmt over gui/src-tauri - commit gui/package-lock.json for reproducible installs Build status: - npm run build (tsc && vite build): passing - cargo fmt --check: clean - cargo check / cargo test: environment-blocked — Tauri 1.x needs the webkit2gtk-4.0/javascriptcoregtk-4.0 system libs, which Ubuntu 24.04 no longer ships (only 4.1 is available; GTK3 and libsoup2.4 dev libs install fine and were not the blocker) - python -m pytest tests/ -q: 314 passed, 9 skipped (untouched) E2E: built app served via vite preview and screenshotted with playwright; mining view and settings view (OpenRouter selected, google/gemini-2.5-flash auto-selected) render correctly in a plain browser with no unhandled errors. https://claude.ai/code/session_01KAKnLjpFZ9oF74GNW9QNtN
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.
What
Makes the GUI actually buildable and wires OpenRouter into the settings UI.
npm install+npm run build(tsc strict + vite) pass cleanly; committedpackage-lock.jsonfor reproducible installs.main.rscallslibc::killbutlibcwas never declared inCargo.toml— the Tauri crate could not have compiled on Linux/macOS (consistent with CI never having run).App.tsx/SettingsPanel.tsxwithgoogle/gemini-2.5-flashdefault, plus theOPENROUTER_API_KEYenv mapping inmain.rsso the key reaches the spawned solver sidecar.listen()promises rejected unhandled outside Tauri; now degrade to no-op (5 page errors → 0). Dead/vite.svgfavicon link removed.cargo fmtapplied and clean.Verification
Vite preview screenshotted at 1440×900 (mining view and Settings tab with OpenRouter selected) and visually inspected. Environment-blocked:
cargo check/cargo testneed webkit2gtk-4.0 system libs that Ubuntu 24.04 no longer ships (apt also broken in the container) — addressed in the CI PR by pinning rust jobs to ubuntu-22.04. Full Python suite unaffected (314 passed, 9 skipped).Part of the project-wide polish batch.
https://claude.ai/code/session_01KAKnLjpFZ9oF74GNW9QNtN
Generated by Claude Code