Both code paths that touch the updater now consult `check_entitlement` from the Rust entitlements module before calling `check()`: - `useUpdater.ts` adds a `notEntitled` status; on Free, the check short-circuits and the Settings page displays an upgrade hint instead of fetching update metadata. - `ErrorPage.tsx` (recovery screen) does the same so the error path matches the main path; users on Free no longer see network errors when the updater would have run. The gate name (`auto-update`) is the same string consumed by `commands/entitlements.rs::FEATURE_TIERS`, so changing which tier unlocks updates is a one-line edit in that file. Bilingual i18n keys for the new messages are added to both `fr.json` and `en.json`. CHANGELOG entries in both languages. |
||
|---|---|---|
| .. | ||
| components | ||
| contexts | ||
| hooks | ||
| i18n | ||
| pages | ||
| services | ||
| shared | ||
| utils | ||
| App.tsx | ||
| main.tsx | ||
| styles.css | ||
| vite-env.d.ts | ||