Skip to content

chore: Remove QA workflows, variants, and conditions#29830

Merged
Cal-L merged 18 commits into
mainfrom
chore/remove-qa-workflows
May 8, 2026
Merged

chore: Remove QA workflows, variants, and conditions#29830
Cal-L merged 18 commits into
mainfrom
chore/remove-qa-workflows

Conversation

@Cal-L

@Cal-L Cal-L commented May 6, 2026

Copy link
Copy Markdown
Contributor

Description

These changes removes most QA workflows, variants, and conditions related to builds

Changelog

CHANGELOG entry:

Related issues

Fixes: https://consensyssoftware.atlassian.net/browse/MCWP-591

Manual testing steps

Feature: my feature name

  Scenario: user [verb for user action]
    Given [describe expected initial app state]

    When user [verb for user action]
    Then [describe expected outcome]

Screenshots/Recordings

Before

After

Pre-merge author checklist

Performance checks (if applicable)

  • I've tested on Android
    • Ideally on a mid-range device; emulator is acceptable
  • I've tested with a power user scenario
    • Use these power-user SRPs to import wallets with many accounts and tokens
  • I've instrumented key operations with Sentry traces for production performance metrics

For performance guidelines and tooling, see the Performance Guide.

Pre-merge reviewer checklist

  • I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed).
  • I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.

Note

Medium Risk
Medium risk because it removes the qa build target across CI and native projects, which can break builds/tests or artifact expectations if any remaining jobs or external tooling still reference QA outputs.

Overview
Removes the QA build variant/target across the repo and standardizes CI on main/flask + e2e env. GitHub Actions E2E build/test workflows drop keystore_target/qa defaults and update metamask_environment defaults to e2e.

Android build config removes the qa flavor, QA signing config, and QA-specific Google Services and resources, and tightens NDK path selection to production only. iOS drops the MetaMask-QA target/scheme and related export options/plists, and CocoaPods config is updated accordingly.

Build scripts and tooling (scripts/build.sh, metro.transform.js, scripts/rename-artifacts.js, package.json) remove qa handling/commands and adjust Sentry properties selection to be environment-based (production vs non-production). Docs are updated to remove legacy QA/Appium references and point BrowserStack upload instructions to GitHub Actions artifacts.

Reviewed by Cursor Bugbot for commit 88d2e04. Bugbot is set up for automated code reviews on this repo. Configure here.

@Cal-L Cal-L requested a review from a team as a code owner May 6, 2026 23:20
@github-actions

github-actions Bot commented May 6, 2026

Copy link
Copy Markdown
Contributor

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.

@metamaskbotv2 metamaskbotv2 Bot added the team-mobile-platform Mobile Platform team label May 6, 2026
@Cal-L Cal-L added needs-dev-review PR needs reviews from other engineers (in order to receive required approvals) no-changelog no-changelog Indicates no external facing user changes, therefore no changelog documentation needed no changelog required No changelog entry is required for this change labels May 6, 2026
@github-project-automation github-project-automation Bot moved this to Needs dev review in PR review queue May 6, 2026
@Cal-L Cal-L added the No QA Needed Apply this label when your PR does not need any QA effort. label May 6, 2026
@github-actions github-actions Bot added the size-L label May 6, 2026
Comment thread scripts/build.sh
tommasini
tommasini previously approved these changes May 7, 2026

@tommasini tommasini left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ler me just confirm @cortisiko something around the e2e performance I would swear that we found a workaround but a qa build was a possibility to fix a blocker on migrating e2e performance tests to gh action

@github-project-automation github-project-automation Bot moved this from Needs dev review to Review finalised - Ready to be merged in PR review queue May 7, 2026
Comment thread scripts/build.sh
Comment thread ios/MetaMask.xcodeproj/project.pbxproj
Comment thread scripts/rename-artifacts.js
Comment thread ios/MetaMask.xcodeproj/project.pbxproj
@Cal-L Cal-L enabled auto-merge May 7, 2026 20:23
@Cal-L Cal-L requested a review from a team as a code owner May 7, 2026 20:35
tommasini
tommasini previously approved these changes May 7, 2026
weitingsun
weitingsun previously approved these changes May 7, 2026
Comment thread .github/actions/setup-e2e-env/action.yml
@Cal-L Cal-L added this pull request to the merge queue May 7, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to Branch Protection failures May 7, 2026
You're not authorized to push to this branch. Visit "About protected branches" for more information.
@Cal-L Cal-L dismissed stale reviews from weitingsun and tommasini via 8e5dba4 May 7, 2026 21:09

@cursor cursor Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ 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 3e54020. Configure here.

Comment thread .github/workflows/build-android-e2e.yml
@Cal-L Cal-L requested a review from a team as a code owner May 8, 2026 03:07
tommasini
tommasini previously approved these changes May 8, 2026
cortisiko
cortisiko previously approved these changes May 8, 2026
@Cal-L Cal-L dismissed stale reviews from cortisiko and tommasini via 88d2e04 May 8, 2026 18:18
@github-actions

github-actions Bot commented May 8, 2026

Copy link
Copy Markdown
Contributor

🔍 Smart E2E Test Selection

  • Selected E2E tags: SmokeAccounts, SmokeConfirmations, SmokeWalletPlatform, SmokeNetworkAbstractions, SmokeSwap, SmokeBrowser
  • Selected Performance tags: None (no tests recommended)
  • Risk Level: medium
  • AI Confidence: 82%
click to see 🤖 AI reasoning details

E2E Test Selection:
This PR removes the qa Android build flavor entirely and updates CI workflows to use e2e environment instead of qa. Key changes:

  1. android/app/build.gradle: Removes qa product flavor, qaProd signing config, qaDebug from debuggable variants, and updates ndkPath() to no longer check for QA environment.
  2. CI workflows (build-android-e2e.yml, build-ios-e2e.yml, run-e2e-smoke-tests-ios.yml, run-e2e-regression-tests-android.yml, ci.yml): Removes keystore_target: 'qa' and changes metamask_environment defaults from 'qa' to 'e2e'.
  3. android/app/google-services-example.json: Removes io.metamask.qa client entry.
  4. Android QA resources: Image/drawable/layout assets for the removed QA flavor.
  5. AGENTS.md, build.yml, setup-e2e-env/action.yml: Minor documentation/comment updates.

No app logic, controllers, or user-facing features are changed. This is purely a CI/build infrastructure change consolidating the QA build flavor into the e2e environment.

Since the E2E build pipeline configuration is changing (how the app is built for testing), it's important to run a representative set of smoke tests to validate that the new build configuration produces a working app that can be tested. I'm selecting a broad set of core smoke tags to validate the pipeline works correctly across different test areas, without needing to run every single tag since no app functionality changed.

Performance Test Selection:
No app code, UI components, controllers, or performance-sensitive paths were changed. This PR only modifies CI/build configuration (removing the QA Android build flavor and updating workflow environment variables). Performance characteristics of the app are unaffected.

View GitHub Actions results

@sonarqubecloud

sonarqubecloud Bot commented May 8, 2026

Copy link
Copy Markdown

@Cal-L Cal-L merged commit e124dd0 into main May 8, 2026
184 of 189 checks passed
@Cal-L Cal-L deleted the chore/remove-qa-workflows branch May 8, 2026 22:44
@github-actions github-actions Bot locked and limited conversation to collaborators May 8, 2026
@github-actions github-actions Bot removed the needs-dev-review PR needs reviews from other engineers (in order to receive required approvals) label May 8, 2026
@metamaskbotv2 metamaskbotv2 Bot added the release-7.78.0 Issue or pull request that will be included in release 7.78.0 label May 8, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

no changelog required No changelog entry is required for this change No QA Needed Apply this label when your PR does not need any QA effort. no-changelog no-changelog Indicates no external facing user changes, therefore no changelog documentation needed release-7.78.0 Issue or pull request that will be included in release 7.78.0 size-XL team-mobile-platform Mobile Platform team

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

4 participants