* feat: display app version in settings panel
* fix(onboarding): auto-refresh accessibility state after grant (#351)
* style(onboarding): apply formatter for issue #351 fix
* fix(onboarding): ESLint + typed mock for ScreenPermissionsStep; clear flag in handler
Consolidate tauriCommands imports and drop redundant mock cast.
Handle granted accessibility in focus/visibility callback instead of a follow-up effect.
Made-with: Cursor
* fix(release): gate OAuth deep links on minimum app version (#365)
- Add semver helpers and VITE_MINIMUM_SUPPORTED_APP_VERSION / download URL in app config
- Block openhuman://oauth/success when desktop build is below minimum; enqueue error,
open latest-release URL, dispatch oauth:stale-app
- Pass new Vite env vars through release.yml and build-windows.yml Build frontend
- Document policy in docs/RELEASE_POLICY.md; note vars in app/.env.example
Closes#365
Made-with: Cursor
* fix: import React in SkillSetupWizard component
* fix: address CodeRabbit review (OAuth gate, semver, logging)
- Anchor semver regex to full string; arrow-style exports; tests for bad inputs
- Never throw from evaluateOAuthAppVersionGate; try/catch in deep link + omit raw URL from error logs
- Document build-time vs runtime policy in config JSDoc and RELEASE_POLICY
- Remove unused React import in SkillSetupWizard (tsc)
Made-with: Cursor
* fix: CodeRabbit — fail-closed OAuth gate, tauri-action Vite env, runbook
- Block OAuth when minimum is set but getVersion fails or version is unparseable
- Pass VITE_MINIMUM_* through tauri-action env (release + Windows) so bundles match yarn build
- Expand RELEASE_POLICY: artifact retirement, dual workflow env note
- Friendlier copy when current version is unknown
Made-with: Cursor