Conversation
|
CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 4ce382630c
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 3fca3b7. Configure here.
🔍 Smart E2E Test Selection
click to see 🤖 AI reasoning detailsE2E Test Selection:
Since no app code changed, there is no risk to app functionality. However, these changes directly affect the E2E pipeline infrastructure - specifically how tests are triggered, which builds happen, and when E2E is skipped. The Running a representative subset of E2E tests is appropriate to validate:
I'm selecting a moderate set of smoke tests (SmokeAccounts, SmokeConfirmations, SmokeNetworkAbstractions, SmokeWalletPlatform) to validate the pipeline works correctly without running the full suite, since the app code itself is unchanged. Performance Test Selection: |
|
|
✅ E2E Fixture Validation — Schema is up to date |
| uses: actions/checkout@v6 | ||
| with: | ||
| fetch-depth: 1 | ||
| ref: ${{ env.HEAD_COMMIT_HASH }} |
There was a problem hiding this comment.
We're running these checks on the wrong commit.
pull_request triggered workflows run on the head of the merge branch (which is what github.sha points at, which is the default for actions/checkout). This merge branch includes the latest changes from the base branch. This is very different from the head commit hash, which never has the changes from the base branch merged in.
This is currently breaking all open PRs that don't yet include this commit, and it'll break again each time this workflow or the filters change. We need to be consistent about which commit we're using.




Description
Introduces an E2E readiness gate via the new
pr-not-ready-for-e2elabel which is auto-applied on PR open, causes E2E builds/tests to be skipped, and block merge until the label is removed (and E2E tests run and pass)Also CI control flow for E2E tests is refactored:
flowchart TD CI[CI run starts - Android and iOS] --> GR[Check conditions] GR -->|Merge Queue | MQ[No E2E] GR -->|Fork PR| FK[No E2E] GR -->|PR label: skip-e2e| HS[No E2E] GR -->|PR label: pr-not-ready-for-e2e| L2[No E2E] L2 -->|ignorable-only changes| NoBlock[No merge block] L2 -->|non-ignorable changes| Skip2[Merge blocked] GR -->|PR ignorable-only changes| Ignorable[No E2E - merge not blocked] GR -->|PR has Android-only changes| Android[Android Build + Tests needed] GR -->|PR has iOS-only changes| iOS[iOS Build + Test needed] GR -->|PR other files changed| Both[Both Build + Tests needed] GR -->|Scheduled and Push to main | Full[Run all E2E Suites for Both] Android & iOS & Both --> LABEL{{PR label: skip-smart-e2e-selection ?}} LABEL -->|yes| AllTags[Run all E2E needed] LABEL -->|no| AI[🤖 AI selects test suites + confidence score] AI --> CONF{{Confidence >= 80% ?}} CONF -->|yes| SelectedTags[Run selected E2E suites] CONF -->|no| AllTagsFallback[Run all E2E needed]NOTE: It will be activated in a follow up PR so we can test the whole approach in dedicated branches
Changelog
CHANGELOG entry:
Related issues
Fixes: https://consensyssoftware.atlassian.net/browse/MMQA-1738
Manual testing steps
Screenshots/Recordings
Before
After
Pre-merge author checklist
Performance checks (if applicable)
trace()for usage andaddTokenfor an exampleFor performance guidelines and tooling, see the Performance Guide.
Pre-merge reviewer checklist
Note
Medium Risk
Touches core CI/E2E gating and merge-blocking logic, so misconfiguration could skip required E2E runs or incorrectly block merges. Changes are mostly workflow refactors, but they affect critical automation paths.
Overview
Adds an E2E readiness gate driven by the new
pr-not-ready-for-e2elabel: a new workflow auto-applies the label on PR open (temporarily scoped totest-e2e-readiness-label-*branches), CI skips E2E while it’s present, andci.ymlfails the final gate to block merge unless the PR is ignorable-only.Refactors CI control flow by replacing
needs-e2e-build.ymlande2e-check-build-needed.mjswith a new reusableget-requirements.ymlthat computes skip/build/run flags (labels,[skip-e2e], forks, merge queue, and path filtering via new.github/rules/filter-rules.yml) and feedssmart-e2e-selection+ platform E2E build/test jobs, including passingchanged_filesfor flakiness detection.Simplifies
smart-e2e-selectionto only respectskip-smart-e2e-selection(removing release-branch/draft/event gating andforce_runoutput), updates comment formatting, and bumps multiple workflows toactions/checkout@v6andactions/setup-node@v6. Documentation is updated with a newE2E_DECISION_TREE.mdand expanded labeling guidelines; CODEOWNERS is adjusted accordingly.Reviewed by Cursor Bugbot for commit 93b4427. Bugbot is set up for automated code reviews on this repo. Configure here.