fix(mobile): remove links to web billing for App Review 3.1.1
Why
App Review rejected iOS 1.2.1 (build 140) on 2026-11-06 under 3.1.1 (and 2.5.4, see below). Reviewers sign in with Sign in with Apple, which creates a new Free "John Apple" org every time, so they always land on the Pro paywall. Its "Upgrade on superset.sh" button links to a page where a plan is bought. Outside the US storefront that is not allowed (this reviewer was on GB), and we ship one build worldwide.
apps/mobile/RELEASE.md already said "no links to where a plan can be bought". Three PRs added such links after that line was written: #7375 (plan alert), #7502 (paywall button), #8318 (share-sheet invite alert).
What
- Remove all three links and the
billingSettingsUrlhelper. The screens still explain that the plan is managed on the web; they just don't link to it. - Add
apps/mobile/no-purchase-links.test.ts: it fails when mobile source contains a/settings/billing,/pricing,/checkoutor/upgradepath. I checked that it fails on main'sweb-links.ts. - Review notes (
store.config.js): open with "sign in with the demo account", say there are no purchase links or calls to action, and add a 2.5.4 background audio entry for voice mode, with an optionalAPP_REVIEW_VOICE_VIDEO_URLfor the device recording. 3,749 of 4,000 characters. RELEASE.mdpre-flight: mention the test and the Sign in with Apple behavior, and add a check that everyUIBackgroundModesentry is reachable or recorded.UIBackgroundModes: ["audio"]stays: voice mode needs it while the phone is locked. 2.5.4 gets a device recording, not a removal.- Lingui catalogs: only the two removed messages ("Upgrade on {0}", "Manage on {0}") are dropped. No new strings.
JS-only (no native change), so after merge it can also reach the approved build over the air.
Not in this PR
- Pro as an in-app purchase, the long-term 3.1.1 answer: SUPER-3197.
- Reply to App Review asking to approve 1.2.1 as a bug-fix submission: sent separately from App Store Connect.
Testing
bun testinapps/mobile: 257 pass, 0 fail.bun run check:i18n: passes; catalogs stable after rebase.biome checkon changed files: clean.bun run typecheckinapps/mobile: 187 errors in this worktree, none in the changed files. They come from@superset/host-servicenot being built here.- Not run in the simulator.
Summary by cubic
Removes all in-app links to web pages where a plan can be purchased, fixing the App Review 3.1.1 rejection. The paywall "Upgrade on superset.sh" button, the share-invite alert, and the settings screen no longer link to /settings/billing; the screens still say plans are managed on the web.
- Adds
no-purchase-links.test.ts, which fails CI when mobile source references billing, pricing, checkout, or upgrade paths. - Updates App Store review notes to lead with the demo account (reviewers using Sign in with Apple always see the paywall as a fresh free org) and adds a 2.5.4 background audio entry for voice mode.
- Keeps
UIBackgroundModes: ["audio"]since voice mode needs it while the phone is locked; review notes expect a physical-device recording instead. - Adds a
RELEASE.mdpre-flight check that everyUIBackgroundModesentry is reachable or recorded. - No new i18n strings; only the two removed messages drop from the catalogs.
Summary by CodeRabbit
- App Updates
- Removed links and buttons for managing or upgrading a plan on the company website from the mobile app.
- Paid-plan notices now offer a Dismiss action instead of a link to plan management.
- Updated app review guidance with sign-in, background audio, and microphone-use details.