Skip to content

feat: legacy-ios-feature-flag cp-7.71.0#27848

Merged
ieow merged 7 commits into
mainfrom
cw/legacy-ios-feature-flag
Mar 24, 2026
Merged

feat: legacy-ios-feature-flag cp-7.71.0#27848
ieow merged 7 commits into
mainfrom
cw/legacy-ios-feature-flag

Conversation

@ieow

@ieow ieow commented Mar 24, 2026

Copy link
Copy Markdown
Contributor

Description

Fixes: https://github.com/MetaMask/MetaMask-planning/issues/7148
Support webcredential for ios google login
Part 2/4 - Add feature flag

This pr add feature flag for the ios google login

PR list
Part 1/ 4 - #27741
Part 2/ 4 - #27848
Part 3/ 4 - #27850
Part 4/ 4 - #27875

Changelog

CHANGELOG entry: added legacyIosGoogleConfigEnabled feature flag

Related issues

Fixes:

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

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

Low Risk
Low risk: adds a new remote feature flag and selector with env override, without changing authentication flow yet; main risk is misconfiguration since the selector defaults to enabled.

Overview
Adds a new remote feature flag, legacyIosGoogleConfigEnabled, including registry metadata and a dedicated selector selectLegacyIosGoogleConfigEnabled (defaulting to true) that can be force-overridden via MM_LEGACY_IOS_GOOGLE_CONFIG_ENABLED.

Includes unit tests covering default/remote/env override behavior, and updates babel.config.tests.js to avoid inlining env vars for the new selector and its tests.

Written by Cursor Bugbot for commit ca7e813. This will update automatically on new commits. Configure here.

@github-actions

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.

@metamaskbot metamaskbot added the team-onboarding Onboarding team label Mar 24, 2026
@ieow ieow changed the title Cw/legacy-ios-feature-flag feat: legacy-ios-feature-flag Mar 24, 2026
@ieow ieow requested a review from aganglada March 24, 2026 10:33
@ieow ieow marked this pull request as ready for review March 24, 2026 10:33
@ieow ieow enabled auto-merge March 24, 2026 10:33
@github-actions

Copy link
Copy Markdown
Contributor

E2E Fixture Validation — Schema is up to date
17 value mismatches detected (expected — fixture represents an existing user).
View details

@github-actions github-actions Bot added the risk-low Low testing needed · Low bug introduction risk label Mar 24, 2026
@himanshuchawla009 himanshuchawla009 dismissed their stale review March 24, 2026 12:41

quality gate failing

@github-actions github-actions Bot added risk-low Low testing needed · Low bug introduction risk and removed risk-low Low testing needed · Low bug introduction risk labels Mar 24, 2026

@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.

Comment thread babel.config.tests.js
@github-actions github-actions Bot added risk-low Low testing needed · Low bug introduction risk and removed risk-low Low testing needed · Low bug introduction risk labels Mar 24, 2026
@github-actions

Copy link
Copy Markdown
Contributor

🔍 Smart E2E Test Selection

  • Selected E2E tags: None (no tests recommended)
  • Selected Performance tags: None (no tests recommended)
  • Risk Level: low
  • AI Confidence: 97%
click to see 🤖 AI reasoning details

E2E Test Selection:
This PR introduces a new feature flag legacyIosGoogleConfigEnabled with purely additive, infrastructure-level changes:

  1. New feature flag enum value in featureFlags.ts — additive, no existing code modified.
  2. New Redux selector (selectLegacyIosGoogleConfigEnabled) — not yet consumed by any component or hook in the app (confirmed via grep: zero importers outside the test file itself).
  3. New unit test file for the selector — only affects Jest test runs, not E2E.
  4. Feature flag registry entry — registers the flag as Remote, active, default true (preserves legacy behavior).
  5. babel.config.tests.js — adds the new files to Babel test overrides for proper process.env inlining in unit tests; no impact on E2E test compilation or execution.

Since the selector is not yet wired into any UI component, navigation flow, controller, or user-facing feature, there is no E2E test surface affected. The default value of true means even if it were consumed, it would preserve existing behavior. No E2E tags are warranted.

Performance Test Selection:
No performance-sensitive code paths are affected. The new selector is not consumed by any component, and the changes are purely additive infrastructure work (feature flag registration, selector creation, unit tests, babel config). No UI rendering, data loading, or critical user flows are impacted.

View GitHub Actions results

@codecov-commenter

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 0% with 4 lines in your changes missing coverage. Please review.
✅ Project coverage is 41.62%. Comparing base (c56e9d0) to head (ca7e813).
⚠️ Report is 30 commits behind head on main.

Files with missing lines Patch % Lines
...atureFlagController/legacyIosGoogleConfig/index.ts 0.00% 4 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##             main   #27848       +/-   ##
===========================================
- Coverage   82.46%   41.62%   -40.85%     
===========================================
  Files        4801     4805        +4     
  Lines      123807   124002      +195     
  Branches    27602    27635       +33     
===========================================
- Hits       102101    51611    -50490     
- Misses      14634    67414    +52780     
+ Partials     7072     4977     -2095     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@sonarqubecloud

Copy link
Copy Markdown

@ieow ieow changed the title feat: legacy-ios-feature-flag feat: legacy-ios-feature-flag cp-7.71.0 Mar 24, 2026
@ieow ieow added this pull request to the merge queue Mar 24, 2026
Merged via the queue into main with commit 6ae4c95 Mar 24, 2026
99 of 111 checks passed
@ieow ieow deleted the cw/legacy-ios-feature-flag branch March 24, 2026 15:04
@github-actions github-actions Bot locked and limited conversation to collaborators Mar 24, 2026
@metamaskbot metamaskbot added the release-7.72.0 Issue or pull request that will be included in release 7.72.0 label Mar 24, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

release-7.72.0 Issue or pull request that will be included in release 7.72.0 risk-low Low testing needed · Low bug introduction risk size-S team-onboarding Onboarding team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants