This repository was archived by the owner on Jun 7, 2026. It is now read-only.
Releases: algonormative/sample-curator
Releases · algonormative/sample-curator
Release list
Sample Curator v0.1.11
v0.1.11 — fix: NSMicrophoneUsageDescription for prod recording Adds the Info.plist key macOS requires before it will prompt for or grant microphone access. Without it, signed prod bundles open the cpal input stream but receive only silence — the symptom that v0.1.7-v0.1.10 shipped.
Sample Curator v0.1.10
v0.1.10 — fix: load_model for worker-delegated ML kinds CLAP, Whisper, Demucs, and HF LLM Reload/Retry now succeed in production. The frozen sidecar can't load these libs locally — they live in the runtime venv where the worker subprocess runs — so _instantiate_model returns a marker for them and inference goes through the worker.
Sample Curator v0.1.9
v0.1.9 — Studio microphone app icon Replaces the Tauri scaffold placeholder icons with 🎙️ rendered from Apple Color Emoji. Full set: 32x32, 128x128, 128x128@2x, .icns, .ico, plus iOS/Android sizes for future targets.
Sample Curator v0.1.8
v0.1.8 — Stem separation (vault-2nnt) Auto-separate stems on new recordings, retroactive multi-select for existing clips. Demucs runs in the runtime worker subprocess (installable via Settings → Analysis & ML → Stems extra). Slices: - 81f7653: sidecar [stems] extra + ml_worker.separate_demucs handler (apply_model API, MPS device, model.eval); runtime-pyproject.toml build fix ([tool.uv] package = false) - ca88f74: Rust stems.rs module + separate_stems Tauri command + sidecar separate_stems handler + JobType::StemSeparation + BatchActionsPanel "Separate stems" button with progress events - c19623d: RecorderConfig.auto_stem_separation + Settings → Stems toggle + recorder_save_to_library auto-trigger + arm_session inherits global default at arm-on Tags applied: - parent:<source_id> + stem:<role> on each stem sample - stems-done on the source (idempotency) Acceptance criteria all met: install, non-blocking jobs, parent/stem tagging, idempotency, duration threshold, global Settings toggle, active-session toggle, multi-select retroactive path. Tests: 118 sidecar, 511 frontend, 202 rust — all green.
Sample Curator v0.1.7
v0.1.7 — runtime ML deps install (vault-347l) Phase 1 (deps detection): - importlib.util.find_spec detection in sidecar - Frontend Dependencies card with extras + missing modules Phase 2 (install workflow + nested-sidecar bridge): - Bundled uv binary in .app for runtime venv management - deps_install / deps_uninstall Tauri commands - ml_worker.py JSON-RPC subprocess - WorkerManager + delegation for CLAP/Whisper/Demucs/LLM-HF - Frontend Install UI with live progress modal - 118 sidecar tests passing
Sample Curator v0.1.6
Sample Curator v0.1.6 — LLM naming refinement backend selector The LLM-refined filename feature now offers three explicit backends. Pick one in Settings → Analysis & ML → LLM naming refinement: - **Apple Foundation Models** — zero install, runs on-device. Requires macOS 26.0+, Apple Silicon, Apple Intelligence enabled. - **Ollama** — local daemon, fast quantized inference. Requires `brew install ollama` + `ollama pull <model>`. - **HuggingFace Transformers** — runs in the bundled sidecar. First use downloads ~1 GB for Qwen 2.5 0.5B Instruct. Existing installs with `model_id: "ollama:..."` migrate silently. Also: bundled .app launches cleanly on macOS 26 (the previous build referenced @rpath/libswift_Concurrency.dylib which couldn't resolve). Closes vault-3ume + vault-15i9.
Sample Curator v0.1.5
feat(sidecar): bundle Python sidecar in .app via PyInstaller (vault-3…
Sample Curator v0.1.4
feat(updater): in-app banner + Settings → Updates section (v0.1.4) Replaces the native modal `ask()` dialog with an in-app surface: - New `UpdateBanner` mounted just below HeaderBar (alongside OllamaBanner). When `status === 'available'` it shows the new version with `Install & Restart` and `Later`. `Later` dismisses for the session; the next launch's startup check resurfaces it. - New `Settings → Updates` section: current version, last-checked (relative time, persisted in localStorage), `Check for Updates` button, install button when an update is available, and a status line that reflects every state of the check (idle/checking/up-to- date/available/installing/error). - State centralized in `useUpdaterStore` (Zustand) so the banner and Settings see the same check/install machine. Errors now surface in Settings (no longer silent — useful for debugging the endpoint config). - Startup hook (`useUpdater`) is now a thin wrapper that triggers the store's `check()` once on mount. Tested: TS + Vite clean; cargo check clean; auto-update path mechanically identical to v0.1.2/0.1.3 (same plugin calls).
Sample Curator v0.1.3
chore(release): bump version to 0.1.3 (auto-update test target)