Feat/desktop multi kb picker#266
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
|
@plind-junior Please review |
2b79fe5 to
55f92bc
Compare
|
@plind-junior Please review |
55f92bc to
8d31ac1
Compare
|
Vouch is hardly reshaped and all the previous issues and PRs are unnecessary. I will create the issue tickets |
What changed
Adds a Tauri native shell under
desktop/app/with File → Open KB…, File → Recent KBs (last five), and File → New KB…. Switching KBs restarts thevouch review-uisidecar against the new project root; recent opens persist in~/.config/vouch-desktop/state.json. Shared Python helpers live insrc/vouch/desktop/withvouch desktop *CLI commands. Review-ui/healthzand templates now exposekb_label;vouch init --jsonsupports structured init output for the shell.Closes #207
Why
Real users keep a
.vouch/per project; the CLI walks up from cwd to find it, but a desktop app needs an explicit picker so you can switch projects without env-var dance or restarting the app (#207).What might break
No breaking changes to existing
.vouch/directories or kb.* protocol./healthzgainskb_label; review-ui masthead/title show the active project name instead of the generic "review console" string.vouch init --json,vouch desktop …subcommands.VEP
Not required — new desktop packaging layer and additive CLI/web fields only; no object-model or kb.* surface change.
Tests
make checkpasses locally (lint + mypy + pytest)tests/test_desktop.py,tests/test_desktop_ports.py,tests/test_desktop_sidecar.py, updatedtests/test_web.py)CHANGELOG.mdupdated under## [Unreleased]