Originally created by: Akarsh-Hegde
Summary
- Adds a
get_app_info Tauri command returning { version, channel } — version is the binary's baked tauri.conf.json version (what the DMG updater already compares against); channel is dev (debug/tauri dev), staging (baked via a new MERIDIAN_CHANNEL compile-time env var, same option_env! pattern already used for the runtime-manifest/HF-endpoint bakes), or prod (default).
- Bakes
MERIDIAN_CHANNEL=staging into the staging release workflow (release-staging.yml) and the build:staging npm script, alongside the existing MERIDIAN_RUNTIME_MANIFEST_URL/MERIDIAN_HF_ENDPOINT bakes. Production leaves it unset.
- Tray popover: a small mono-font line under the footer (
tray/src/index.html/app.js/style.css) — muted for prod, colored (purple/amber) for dev/staging.
- Dashboard: a new "About" card in Settings → Account (
AccountSection.tsx) showing the same version/channel.
Test plan
- [x]
cargo check / cargo fmt --check / cargo clippy -D warnings / cargo test all pass (tray/src-tauri)
- [x] Verified from Tauri's own codegen source (
tauri-codegen) that package_info().version reads tauri.conf.json's top-level version field, not Cargo.toml's
- [x]
bun test ui/__tests__/popover-health-panel.test.ts passes (8/8)
- [x]
tsc --noEmit clean on the touched dashboard files
- [x] Manually ran
tauri dev locally (temporary alternate port to avoid clashing with a concurrent dev session) and confirmed the popover footer badge and the Settings → Account "About" card both render v1.69.1 · dev in the dev color
- [x] Pre-push hook suite (fmt, clippy, ui build/tests, security audit, cargo test) passed
🤖 Generated with Claude Code
https://claude.ai/code/session_019UUn5ezNxQMTsebRNKXxRn
Originally posted by: coderabbitai[bot]
✨ Finishing Touches
🧪 Generate unit tests (beta)
- [ ] Create PR with unit tests - [ ] Commit unit tests in branch `feat/app-version-channel-badge`Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.
❤️ Share
- [X](https://twitter.com/intent/tweet?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A&url=https%3A//coderabbit.ai) - [Mastodon](https://mastodon.social/share?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A%20https%3A%2F%2Fcoderabbit.ai) - [Reddit](https://www.reddit.com/submit?title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&text=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code.%20Check%20it%20out%3A%20https%3A//coderabbit.ai) - [LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fcoderabbit.ai&mini=true&title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&summary=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code)Comment
@coderabbitai helpto get the list of available commands.Ticket changed by: Akarsh-Hegde