brand-string sweep: 11 files, remove leaked upstream product names - #152
Merged
Conversation
Audit found 13 places where 'Firefox 150 fork' / 'LibreWolf-mirror' / 'Firefox ETP strict' / 'Firefox Downloads' etc. shipped in user-visible or shipped-code contexts. This lands the sweep across all 11 files on the punch list — README (marketing), 5 packaging metadata files (visible via apt/snap/winget/rpm show), 2 shipped-string files. Kept (audit classified as legal attribution / technical fact): - hostname strings the monitor blocks by name (aus5.mozilla.org, etc.) - XPCOM contract-ids (@mozilla.org/binaryinputstream;1) - extension IDs (react-devtools@mozilla.org, firefox@tampermonkey.net) - MPL 2.0 copyright headers - Chocolatey LICENSE.txt (MPL requires attribution) - gecko-patches/ (patches ARE against Firefox source; naming is correct) Added regression guard: - scripts/verify-brand-strings.sh — 11 file checklist, greps for the exact banned patterns. Runs local + CI. - .github/workflows/brand-string-sweep.yml — fires on any change to README, settings/actors/, settings/extensions/, packaging/, or the script itself. If someone reintroduces one of the swept patterns, PR fails. Meta-principle: any 'sweep' PR must land its own regression check in the same commit, otherwise the sweep undoes itself in months.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Audit found 13 places where
Firefox 150 fork/LibreWolf-mirror/Firefox ETP strict/Firefox Downloadsetc. shipped in user-visible or shipped-code contexts (README marketing, package metadata visible viaapt show/winget show/snap info/rpm -qi, and shipped module strings a curious user opens in DevTools).Fixed (11 files)
README.md— top-of-repo marketing linessettings/actors/BearCaptureParent.sys.mjs— JSDoc 'via Firefox's download manager'settings/extensions/registry.json— 5 rationale strings (Firefox ETP strict,Firefox native HTTPS-only,Firefox Downloads,Firefox layout.css,Firefox ETP strict ships Disconnect list)packaging/linux/deb/control— 'built on Firefox 150'packaging/linux/rpm/bearbrowser.spec— 'Firefox 150 fork'packaging/linux/snap/snapcraft.yaml— 'built on Firefox ESR'packaging/linux/binary-source.env— 'Firefox 150 fork'packaging/chocolatey/README.md— 'installs Firefox ESR'packaging/RELEASE.md— 'Mozilla BearBrowser', 'Firefox 150 fork (LibreWolf mirror)', 'Firefox-ESR fallback'packaging/oci/README.md— 'LibreWolf-derived workspace'packaging/winget/manifests/s/SourceOS/BearBrowser/150.0.1/SourceOS.BearBrowser.locale.en-US.yaml— ShortDescription + Description parenthetical +firefoxtagKept (attribution — not leaks)
aus5.mozilla.orgetc.)@mozilla.org/binaryinputstream;1)react-devtools@mozilla.org,firefox@tampermonkey.net)gecko-patches/(patches ARE against Firefox source; naming is correct)README.md:69meta-policy line ('Upstream engine names such as LibreWolf, Firefox, Mozilla, and Gecko are allowed as provenance')Regression guard
scripts/verify-brand-strings.sh— 11-file checklist, greps for the exact banned patterns.github/workflows/brand-string-sweep.yml— fires on any change toREADME,settings/actors/,settings/extensions/,packaging/, or the scriptMeta: any 'sweep' PR must land its own regression check in the same commit, otherwise the sweep undoes itself in months.
Adversarial-review checklist
Test plan
bash scripts/verify-brand-strings.sh→brand-string sweep: OK