MetaMask / MetaMask/metamask-mobile
Release Improvements to Prevent main-rc Feature Flag Version Shipping in Production
- Dominant language
- TypeScript
- Stars
- 3k
- Forks
- 1.7k
- Avg merge
- 1d 14h
- Merged PRs (30d)
- 669
Description
### What is this about?
## **Description:**
We need to implement comprehensive measures to ensure that the `main-rc` feature flag version does not ship in production. This issue addresses the critical problem where the wrong feature flag configuration is being deployed to production environments.
## **Sub-tasks:**
### **Add an easy way to check feature flag configuration:**
- [x] chore: add environment to the state logs
### **Add a production environment test before QA sign-off:**
- [ ] Confirm the LD environment is mapping correctly (e.g., app in store === main-prod)
- [ ] Manual validation at first
- [ ] Plan to automate
### **Add a pre-release identifier:**
- [ ] iOS implementation
- [ ] Android implementation
### **Feature Flag Visibility on RWY (or other system):**
- [ ] Implement feature flag visibility system
- [ ] Complete security review
### **Diagram the current release process and future:**
- [x] Create visual representation of current release process
- [x] Document proposed future release process
- https://github.com/MetaMask/threatmodels/pull/50
### **Guarantee no duplicate build numbers:**
- [ ] Block Duplicate Version Builds Via CI Logic
- [ ] Create a CI step to validate that the version being used hasn't already been built and uploaded
### Scenario
_No response_
### Design
_No response_
### Technical Details
_No response_
### Threat Modeling Framework
_No response_
### Acceptance Criteria
_No response_
### Stakeholder review needed before the work gets merged
- [x] Engineering (needed in most cases)
- [ ] Design
- [ ] Product
- [ ] QA (automation tests are required to pass before merging PRs but not all changes are covered by automation tests - please review if QA is needed beyond automation tests)
- [ ] Security
- [ ] Legal
- [ ] Marketing
- [ ] Management (please specify)
- [ ] Other (please specify)
### References
_No response_
Contributor guide
Research direction
The issue spans production feature-flag validation, iOS and Android pre-release identifiers, feature-flag visibility, release-process documentation, and CI checks for duplicate builds. Start by breaking the unchecked subtasks into separate work items and identifying the relevant mobile release and CI entry points; done is defined only after each listed measure has an implementation plan and validation path.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, ios, react-native, typescript
- Domain
- ci-cd, mobile, release
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100