Skip to content

[PM-33505] feat: Add MobilePremiumUpgrade feature flag#6655

Merged
SaintPatrck merged 1 commit into
mainfrom
premium-upgrade/PM-33505-mobile-premium-upgrade-flag
Mar 13, 2026
Merged

[PM-33505] feat: Add MobilePremiumUpgrade feature flag#6655
SaintPatrck merged 1 commit into
mainfrom
premium-upgrade/PM-33505-mobile-premium-upgrade-flag

Conversation

@SaintPatrck
Copy link
Copy Markdown
Contributor

@SaintPatrck SaintPatrck commented Mar 12, 2026

🎟️ Tracking

PM-33505

📔 Objective

Add MobilePremiumUpgrade feature flag to FlagKey.kt and register it in activePasswordManagerFlags. This is the foundation flag that gates the entire premium upgrade flow. Default is off; controlled via LaunchDarkly.

@SaintPatrck SaintPatrck added the ai-review Request a Claude code review label Mar 12, 2026
@github-actions github-actions Bot added app:password-manager Bitwarden Password Manager app context app:authenticator Bitwarden Authenticator app context t:feature Change Type - Feature Development labels Mar 12, 2026
@claude
Copy link
Copy Markdown
Contributor

claude Bot commented Mar 12, 2026

Claude finished @SaintPatrck's task in 2m 36s —— View job


I'll analyze this and get back to you.

@codecov
Copy link
Copy Markdown

codecov Bot commented Mar 12, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 86.42%. Comparing base (d9f8c3d) to head (94f10ee).
⚠️ Report is 5 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #6655      +/-   ##
==========================================
+ Coverage   85.80%   86.42%   +0.62%     
==========================================
  Files         848      789      -59     
  Lines       58851    56809    -2042     
  Branches     8351     8310      -41     
==========================================
- Hits        50497    49098    -1399     
+ Misses       5455     4827     -628     
+ Partials     2899     2884      -15     
Flag Coverage Δ
app-data 17.61% <ø> (+0.40%) ⬆️
app-ui-auth-tools 20.83% <ø> (-0.21%) ⬇️
app-ui-platform 15.10% <ø> (-0.42%) ⬇️
app-ui-vault 25.85% <ø> (-0.69%) ⬇️
authenticator 6.66% <ø> (ø)
lib-core-network-bridge 4.30% <ø> (ø)
lib-data-ui 0.96% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

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

@claude
Copy link
Copy Markdown
Contributor

claude Bot commented Mar 12, 2026

Code Review Summary

PR: PM-33505 feat: Add MobilePremiumUpgrade feature flag
Risk Level: Low (4 files, 17 additions, feature flag registration only)

Overview

This PR adds a new MobilePremiumUpgrade feature flag to gate the premium upgrade flow. The flag is registered in activePasswordManagerFlags, added to the debug menu, and has a corresponding test. The structure follows the established pattern.


CRITICAL: keyName mismatch between implementation and test

Files: FlagKey.kt line 115 vs FlagKeyTest.kt line 41

The implementation defines:

  • FlagKey.kt: keyName = "PM-31697-premium-upgrade-path"

But the test asserts:

  • FlagKeyTest.kt: keyName == "mobile-premium-upgrade"

These are entirely different strings. The test will fail. More importantly, it is unclear which value is the correct LaunchDarkly key. Please verify against the LaunchDarkly configuration and update whichever side is wrong.


SUGGESTED: Casing convention

File: FlagKey.kt line 115

All other PM-prefixed flag keys in this file use lowercase prefixes:

  • pm-18021-force-update-kdf-settings
  • pm-23995-no-logout-on-kdf-change
  • pm-20558-migrate-myvault-to-myitems
  • pm-19148-innovation-archive
  • pm-19051-send-email-verification

The new key uses uppercase: PM-31697-premium-upgrade-path. If the LaunchDarkly key is truly cased this way, this is fine, but it breaks the established convention.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Mar 12, 2026

Logo
Checkmarx One – Scan Summary & Details5a8d9581-395f-4060-b779-2e7d9ab16433

Great job! No new security vulnerabilities introduced in this pull request

@SaintPatrck SaintPatrck force-pushed the premium-upgrade/PM-33505-mobile-premium-upgrade-flag branch from 9e13eb8 to 94f10ee Compare March 13, 2026 11:46
@claude
Copy link
Copy Markdown
Contributor

claude Bot commented Mar 13, 2026

Code Review Summary

PR: PM-33505 feat: Add MobilePremiumUpgrade feature flag
Risk Level: Low (4 files, 17 additions, feature flag registration only)

Overview

This PR adds a new MobilePremiumUpgrade feature flag to gate the premium upgrade flow. The flag is registered in activePasswordManagerFlags, added to the debug menu, and has corresponding test assertions. The implementation follows the established pattern correctly.

Correction from previous review

The previous review flagged a CRITICAL keyName mismatch between FlagKey.kt and FlagKeyTest.kt. This was a false positive. Both the implementation (FlagKey.kt line 115) and the test (FlagKeyTest.kt line 41) use the same value: "PM-31697-premium-upgrade-path". The test is correct and will pass.

Findings

SUGGESTED: Casing convention for keyName (retained from previous review)

All other PM-prefixed flag keys in FlagKey.kt use lowercase prefixes:

  • pm-18021-force-update-kdf-settings
  • pm-23995-no-logout-on-kdf-change
  • pm-20558-migrate-myvault-to-myitems
  • pm-19148-innovation-archive
  • pm-19051-send-email-verification

The new key uses uppercase: PM-31697-premium-upgrade-path. Since the keyName comment states "This must match the network value," this is correct if the LaunchDarkly key is cased this way. If there is flexibility in the LD configuration, lowercase pm- would be more consistent with the existing convention.

Verdict

Clean PR. Follows established patterns, includes appropriate test coverage, and is purely additive. Approving.

@SaintPatrck SaintPatrck marked this pull request as ready for review March 13, 2026 12:10
@SaintPatrck SaintPatrck requested review from a team and david-livefront as code owners March 13, 2026 12:10
@SaintPatrck SaintPatrck enabled auto-merge March 13, 2026 13:49
@SaintPatrck SaintPatrck added this pull request to the merge queue Mar 13, 2026
Merged via the queue into main with commit 026a348 Mar 13, 2026
26 checks passed
@SaintPatrck SaintPatrck deleted the premium-upgrade/PM-33505-mobile-premium-upgrade-flag branch March 13, 2026 15:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ai-review Request a Claude code review app:authenticator Bitwarden Authenticator app context app:password-manager Bitwarden Password Manager app context t:feature Change Type - Feature Development

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants