Declared Age Range in sandbox: no sheet at launch, and the set per scenario

We are testing the Declared Age Range API with sandbox testers on an iPhone 17e with iOS 26.6.2 (Xcode 26.6, iOS 26.5 SDK). The app is not yet released; everything here is pre-release testing. We have filed three focused reports: FB25530441 (requestAgeRange returned .declinedSharing with no sheet), FB25530501 (the age that Age Assurance first shows at a sign-in against what the API reads), and FB25530513 (a selected scenario not reflected in requiredRegulatoryFeatures). Four questions remain that are not defects:

  1. When a sandbox tester has an Age Assurance scenario selected, should requestAgeRange present the sheet at launch, or answer from the scenario without showing one?
  2. Is there a way to see the sheet at launch in sandbox, as a first-time user would, so we can test the share and decline paths end to end?
  3. The article "Requesting people's age range information in your app" says the set's values "tell you which actions you need to take for compliance", and the sandbox page lists each scenario's age range, but we found neither saying which members each scenario produces. Please confirm: for each Age Assurance scenario, and for a tester with no scenario selected, what should requiredRegulatoryFeatures contain?
  4. Does the tester's App Store territory or creation date matter in sandbox?

On 1 and 2. Our app calls requestAgeRange at launch when requiredRegulatoryFeatures contains .declaredAgeRangeRequired. On four days between October 31 and November 7, 2026, at every launch where we know it did make the request, Apple's age range sheet did not appear. Some requests we made by hand from a debug console returned the scenario's range with no sheet: on November 7, one on each of two testers on '13 - 15' returned a shared range of 13 to 15. One such request on October 31 did present the sheet; it is the only sheet on record across the four days (at a few launches the sheet was not written down separately).

On 3. What we read on one tester, in this order, each scenario read before and after a relaunch unless noted:

  • No scenario selected (signed in for the first time; Age Assurance showed no option selected), read after a relaunch only: none of the three members.
  • '13 - 15, significant change approved', then '16 - 17, significant change declined', then 'Under 13, significant change approved': .declaredAgeRangeRequired and .significantAppChangeRequiresParentalConsent.
  • '18+, age confirmed, significant change not applicable': .declaredAgeRangeRequired only.
  • '18+, age confirmed, significant change applicable': .declaredAgeRangeRequired and .significantAppChangeRequiresAdultNotification.
  • '18+, age not confirmed, significant change not applicable': .declaredAgeRangeRequired only.

For these rows we read contains for the three members the iOS 26.5 SDK defines, so a member outside those three would not show. On November 5 we printed the whole set on 15 reads of sandbox testers, and no other member appeared.