Skip to content

test: add React Native remote push E2E (MBL-2302) - #645

Draft
Shahroz16 wants to merge 3 commits into
codex/mbl-2234-rn-maestro-e2efrom
codex/mbl-2233-rn-remote-push-e2e
Draft

test: add React Native remote push E2E (MBL-2302)#645
Shahroz16 wants to merge 3 commits into
codex/mbl-2234-rn-maestro-e2efrom
codex/mbl-2233-rn-remote-push-e2e

Conversation

@Shahroz16

@Shahroz16 Shahroz16 commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add a local or trusted-CI Maestro flow for real React Native APNs delivery and opened-attribution validation
  • identify a fresh profile, wait for its iOS device registration, trigger the dedicated Maestro React Native APNs E2E automation (campaign 68), and verify the exact event reached Customer.io
  • require delivered, capture a non-empty message ID, activate the real system notification, and require opened for that same message ID
  • build the existing APN sample and notification service extension with matching ignored local configuration, without committing credentials

Stack

Stacked on #643. That PR provides deterministic scene-configured notification routing coverage. This PR adds the separate remote APNs delivery and attribution loop.

Scope

This is APNs-only validation. It does not claim FCM, deep-link destination routing, or multiple-push-provider coverage. No credentialed PR workflow is added.

Validation

  • Release simulator build of the React Native APN sample and notification service extension passed
  • fresh profile creation, iOS device registration, exact event ingestion, campaign 68 delivery, physical notification activation, and backend opened attribution for the same message passed against the Mobile: React Native workspace
  • Bash syntax, ShellCheck, ESLint, pre-commit, pre-push, and diff checks passed
  • credentials and raw artifacts remain ignored; exported artifacts are redacted before copying
  • independent adversarial review findings around registration proof, artifact handling, simulator ownership, and shared-campaign overlap were addressed

Remaining automation boundary

Maestro 2.8.0 sees the exact SpringBoard notification on iOS 26.5, but its tapOn command does not activate that system notification cell. A physical accessibility click opens the app and records both human_opened and opened, so the SDK/backend path is verified, but the fully unattended Maestro loop is not. This PR remains draft until that system-UI interaction is deterministic; the assertion is intentionally not weakened.

@github-actions

github-actions Bot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Sample app builds 📱

Below you will find the list of the latest versions of the sample apps. It's recommended to always download the latest builds of the sample apps to accurately test the pull request.


  • iOS APN: 645.2.0 (29796062)
  • Android APN: 645.2.0 (29796062)
  • iOS FCM: 645.2.0 (29796062)

@Shahroz16 Shahroz16 changed the title test: add React Native remote push E2E (MBL-2233) test: add React Native remote push E2E (MBL-2302) Aug 26, 2026
@Shahroz16
Shahroz16 force-pushed the codex/mbl-2234-rn-maestro-e2e branch from 27abe03 to 98b8f9c Compare August 26, 2026 05:04
@Shahroz16
Shahroz16 force-pushed the codex/mbl-2233-rn-remote-push-e2e branch from 5fb2a0e to a1dfcbd Compare August 26, 2026 05:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant