Skip to content

chore: Combine Snaps build flags#29320

Merged
FrederikBolding merged 3 commits into
mainfrom
fb/combine-snaps-build-flags
Apr 24, 2026
Merged

chore: Combine Snaps build flags#29320
FrederikBolding merged 3 commits into
mainfrom
fb/combine-snaps-build-flags

Conversation

@FrederikBolding

@FrederikBolding FrederikBolding commented Apr 24, 2026

Copy link
Copy Markdown
Member

Description

Combine the preinstalled-snaps and external-snaps build flags into one snaps flag. The separation was originally meant to exclude sensitive installation logic used for external Snaps. At this point, this logic is already used in production to support preinstalled Snaps and as such mostly unfinished components were currently excluded. These components won't be visible in production though.

External Snaps are still unable to be installed unless the build is configured with build type Flask.

Changelog

CHANGELOG entry: null

Related issues

https://consensyssoftware.atlassian.net/browse/WPC-984


Note

Medium Risk
Medium risk because it changes build-time feature gating and navigation/engine wiring for Snaps, which could unintentionally include or exclude Snaps middleware and screens in certain build configurations. Runtime behavior is additionally gated by CAN_INSTALL_THIRD_PARTY_SNAPS, but misconfiguration could affect Snap approvals or settings availability.

Overview
Unifies Snaps feature gating by replacing the separate preinstalled-snaps/external-snaps code fences with a single snaps flag across approvals, UI components, routes, engine wiring, and build tooling (builds.yml, metro.transform.js, verify-build-config.js).

Adds an explicit runtime gate for third‑party Snaps UI via CAN_INSTALL_THIRD_PARTY_SNAPS (Flask-only), and uses it to conditionally register the Snaps settings stack and Settings entry, while aligning Snap controller initialization to use the same constant for disableSnapInstallation.

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

@metamaskbotv2 metamaskbotv2 Bot added the team-core-platform Core Platform team label Apr 24, 2026
@github-actions

Copy link
Copy Markdown
Contributor

🔍 Smart E2E Test Selection

⏭️ Smart E2E selection skipped - draft PR

All E2E tests pre-selected.

View GitHub Actions results

@metamaskbotv2 metamaskbotv2 Bot added the INVALID-PR-TEMPLATE PR's body doesn't match template label Apr 24, 2026
@github-actions

Copy link
Copy Markdown
Contributor

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

@sonarqubecloud

Copy link
Copy Markdown

@FrederikBolding FrederikBolding marked this pull request as ready for review April 24, 2026 13:11
@FrederikBolding FrederikBolding requested review from a team as code owners April 24, 2026 13:11
@FrederikBolding FrederikBolding added this pull request to the merge queue Apr 24, 2026
Merged via the queue into main with commit 64e158a Apr 24, 2026
224 of 228 checks passed
@FrederikBolding FrederikBolding deleted the fb/combine-snaps-build-flags branch April 24, 2026 16:55
@github-actions github-actions Bot locked and limited conversation to collaborators Apr 24, 2026
@metamaskbotv2 metamaskbotv2 Bot added the release-7.76.0 Issue or pull request that will be included in release 7.76.0 label Apr 24, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

INVALID-PR-TEMPLATE PR's body doesn't match template release-7.76.0 Issue or pull request that will be included in release 7.76.0 size-M team-core-platform Core Platform team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants