Expert knowledge of the Courvux + Tauri 2 desktop-app blueprint (reference repo: `courvux-tauri-example`, aka "Courvux Notepad"). Use when the user works on: a Courvux UI running inside a Tauri webview, the `courvux-precompile` Vite plugin + strict CSP (`script-src 'self'`, no `unsafe-eval`), thin `invoke()` wrappers, native menus via `MenuBuilder`/`PredefinedMenuItem`, file associations with `tauri-plugin-single-instance`, the `asset://` protocol + `convertFileSrc`, atomic Rust file IO (tmp + fsync + rename), `tauri-plugin-dialog` / `-opener` / `-window-state`, capability allowlists, or the `pnpm tauri:dev` / `pnpm tauri:build` pipeline.
2026-05-20