mirror of
https://github.com/tinyhumansai/openhuman.git
synced 2026-07-30 15:03:57 +00:00
fix(onboarding): surface LocalAI download failures with retry notification (#271)
* fix(onboarding): surface LocalAI download failures with retry notification
Replace silent .catch(() => {}) in LocalAIStep with error reporting
that surfaces a dismissible portal-based error banner in Onboarding.tsx.
Both download failures are combined into a single notification with a
Retry button. Auto-dismisses after 10 seconds.
Closes #194
* fix(onboarding): add retry re-entry guard to prevent duplicate downloads
Address CodeRabbit review: guard retryDownload with a ref to prevent
overlapping concurrent download attempts on rapid Retry clicks. Uses
Promise.allSettled to reset the guard after both promises settle.
* docs(memory): document LocalAI download error handling and macOS Tahoe build workaround
- Add guidance on surfacing LocalAI download errors with an error banner in onboarding (#194).
- Detail build issues with `whisper-rs` on macOS Tahoe and provide a temporary patch workaround for Apple Silicon.
This commit is contained in:
@@ -57,6 +57,14 @@ Quick reference for anyone starting with Claude on this project. Updated by the
|
||||
- **Patch is fragile** — Resets on `cargo clean`, crate version bump, or registry re-download. Deleting build cache alone (`target/debug/build/whisper-rs-sys-*`) is NOT enough — cmake regenerates with the same bad flags.
|
||||
- **Correct fix** — Needs an upstream patch in `whisper-rs-sys` or a Cargo feature to opt out of `GGML_NATIVE` on Apple Silicon cross-builds.
|
||||
|
||||
## Build Blockers: macOS Tahoe + whisper-rs
|
||||
|
||||
- **`whisper-rs` breaks `cargo build` on macOS Tahoe (Apple Silicon)** — Added in main via `whisper-rs = "0.16"` (voice feature #178). Apple clang 21+ refuses `-mcpu=native` when `--target=arm64-apple-macosx` is also set. This is NOT fixable by updating CLT.
|
||||
- **Root cause** — ggml cmake sets `GGML_NATIVE=ON` by default; the cmake crate appends `--target` to clang, triggering the incompatibility. Happens even with the latest toolchain.
|
||||
- **Workaround** — Patch `~/.cargo/registry/src/index.crates.io-*/whisper-rs-sys-0.15.0/build.rs`: add `config.define("GGML_NATIVE", "OFF");` (for `target_os = "macos" && target_arch = "aarch64"`) just before the `config.build()` call.
|
||||
- **Patch is fragile** — Resets on `cargo clean`, crate version bump, or registry re-download. Deleting build cache alone (`target/debug/build/whisper-rs-sys-*`) is NOT enough — cmake regenerates with the same bad flags.
|
||||
- **Correct fix** — Needs an upstream patch in `whisper-rs-sys` or a Cargo feature to opt out of `GGML_NATIVE` on Apple Silicon cross-builds.
|
||||
|
||||
## Environment
|
||||
|
||||
- **Core sidecar port** — `7788` (default). Check with `lsof -i :7788`.
|
||||
|
||||
Reference in New Issue
Block a user