feat: onboarding backup choice + localized App Store metadata (13 locales) - #16
Merged
Conversation
…tion Adds a fourth onboarding slide (iOS only): one sentence on why backup matters - a lost iPad, a hard crash, a deleted app - with an explicit choice: 'Enable iCloud backup' or 'Continue without backup'. Skipping onboarding keeps the default (on). Automatic backup syncs are now gated on onboarding completion at the service level, so nothing is mirrored before a fresh user has answered the question (the catalog-persist trigger previously scheduled a sync during onboarding - caught by simulator E2E). An explicit choice syncs immediately; declining means never backed up, not backed-up-then- stopped. Verified on iPad simulator: no mirror during onboarding 12s+ past the sync debounce; Enable writes the flag and mirrors immediately; decline persists false with no sync. Claude-Session: https://claude.ai/code/session_01SC2VXhehZBBpXybNBsGqBs
App Store metadata (name, subtitle, description, keywords, promotional text, release notes, URLs) for en-US, de-DE, fr-FR, es-ES, es-MX, it, pt-BR, ja, ko, zh-Hans, zh-Hant, nl-NL, ru, generated with hard character-limit validation. The en-US description is minimally updated: 'no cloud sync, notes never leave your device' becomes an honest description of optional backup to the user's own iCloud, matching the upcoming release. Deliverfile uploads metadata only (no binary, no screenshots). Upload requires an interactive 'fastlane deliver' sign-in or an App Store Connect API key. Claude-Session: https://claude.ai/code/session_01SC2VXhehZBBpXybNBsGqBs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Onboarding backup choice
A fourth onboarding slide (iOS only) explains in one sentence why backup matters and asks explicitly:
Primary: Enable iCloud backup (syncs immediately). Secondary: Continue without backup (persists off, no confirmation nag — it's already an explicit answer). Skip keeps the default (on).
Review-driven hardening: automatic backup syncs are now gated on onboarding completion at the service level — simulator E2E caught that the catalog-persist trigger scheduled a mirror during onboarding, before consent. Now: nothing mirrors until the user answers (verified 12s+ past the sync debounce), declining means never backed up, and an explicit Enable syncs instantly.
Localized App Store metadata (fastlane deliver)
fastlane/metadata/for en-US, de-DE, fr-FR, es-ES, es-MX, it, pt-BR, ja, ko, zh-Hans, zh-Hant, nl-NL, ru — name, subtitle, description, keywords, promotional text, 1.3 release notes, and support/marketing/privacy URLs, all generated with hard character-limit validation (name/subtitle 30, keywords 100, promo 170).The en-US description is minimally edited: the live listing's "no cloud sync, and your notes never leave your device" would become false when backup ships, so it now honestly describes optional backup to the user's own iCloud.
To upload (needs your ASC auth, one interactive sign-in):
cdto the repo and runfastlane deliver. Note this will overwrite the existing keywords/subtitle in ASC with the ones here — reviewfastlane/metadata/en-US/first.Verification
https://claude.ai/code/session_01SC2VXhehZBBpXybNBsGqBs