Historie doplňku MUGA: Clean URLs, Fair to Every Click - 10 verzí
MUGA: Clean URLs, Fair to Every Click od yocreoquesi
Se starými verzemi opatrně! Tyto verze jsou zde dostupné jen pro testovací a referenční účely.Používat byste vždy měli nejnovější verzi doplňku.
Nejnovější verze
Verze 1.11.0
Vydáno 26. dub 2026 – 149,51 KBFunguje s: firefox 128.0 a novější, android 128.0 a novějšíAdded- Popup now surfaces when MUGA preserved a third-party creator's affiliate tag on the current URL. New "Creator referral preserved" badge inside the preview section, with a tooltip explaining the policy. Fires regardless of whether the URL was otherwise modified — including on URLs MUGA leaves untouched. Wedge of "fair to creators" made tangible. New cleaner result field
preservedAffiliateexposing{ param, value, store, group }. Independent of the existingnotifyForeignAffiliatetoast preference: this is a passive UI signal, not a notification. New i18n keyspreview_preserved_creatorandpreview_preserved_creator_hintin en/es/pt/de. (#327) - New collaborative report link in the popup: "Still see tracking? Help us improve" (i18n key
report_unclean_url). Visible only when MUGA modified the URL andshowReportButtonis on, alongside the existing "Report a problem with this URL" link. Opens a pre-filled GitHub issue taggedunclean-urlwith hostname, version, browser and the params MUGA already removed — never the full URL or query string. Same zero-network, no-new-permissions model as the broken-site report. Feeds the remote-rules catalog with real-world misses. (#271)
Zdrojový kód zveřejněn pod licencí Pouze GNU General Public License v3.0
- Popup now surfaces when MUGA preserved a third-party creator's affiliate tag on the current URL. New "Creator referral preserved" badge inside the preview section, with a tooltip explaining the policy. Fires regardless of whether the URL was otherwise modified — including on URLs MUGA leaves untouched. Wedge of "fair to creators" made tangible. New cleaner result field
Starší verze
Verze 1.10.2
Vydáno 24. dub 2026 – 148,05 KBFunguje s: firefox 128.0 a novější, android 128.0 a novějšíChanged- Options page: the "Remote rule updates" section now appears before the "Advanced" block, so Advanced remains the last section on the page.
- Remote-rules copy softened to reflect the on-wake refresh model introduced in 1.10.1: "Enable rule updates" (toggle) and "Periodically checks for signed updates… about once a week, while you browse" (description). No behavioral change — the max cadence is still ~7 days.
Added- Popup now reacts live to settings changes. Toggling MUGA on/off, or adding the current domain to the per-domain-disable list (blacklist entries of the form
domain::disabled), updates the preview without reopening the popup. The trigger is both an optimistic in-popup re-render on the enabled-toggle click AND achrome.storage.onChangedlistener that catches changes made from the Options page in another tab. - Distinct popup status when MUGA is globally active but the current site is on the per-domain-disable list. Previously only "MUGA is disabled" (global) was shown; now "MUGA is disabled on this site" surfaces the per-domain state. New i18n key
muga_disabled_for_domainin all four locales.
Zdrojový kód zveřejněn pod licencí Pouze GNU General Public License v3.0
Verze 1.10.1
Vydáno 24. dub 2026 – 146,86 KBFunguje s: firefox 128.0 a novější, android 128.0 a novějšíChanged- Remote rule updates no longer require the
alarmspermission. The weekly refresh now piggybacks on natural service-worker wake events (browser startup, page visits, popup messages) and is throttled by a storedfetchedAttimestamp — at most one fetch per 7 days, short-circuited immediately when the feature is off. This drops one permission from the manifest without changing the opt-in default or the privacy posture.
Removedalarmspermission frommanifest.jsonandmanifest.v2.json.
Zdrojový kód zveřejněn pod licencí Pouze GNU General Public License v3.0
- Remote rule updates no longer require the
Verze 1.10.0
Vydáno 24. dub 2026 – 146,4 KBFunguje s: firefox 128.0 a novější, android 128.0 a novějšíAdded- Optional weekly updates for the tracking parameter list, off by default. Ed25519-signed payloads fetched from a public GitHub Pages endpoint (
https://yocreoquesi.github.io/muga/rules/v1/params.json). Enable in Settings → Remote rule updates. Zero outbound requests on a default install. Seedocs/transparency.html. (#270)
Zdrojový kód zveřejněn pod licencí Pouze GNU General Public License v3.0
- Optional weekly updates for the tracking parameter list, off by default. Ed25519-signed payloads fetched from a public GitHub Pages endpoint (
Verze 1.9.10
Vydáno 13. dub 2026 – 120,12 KBFunguje s: firefox 128.0 a novější, android 128.0 a novějšíFixed- Firefox TDZ:
_contentPrefsdeclarations hoisted to top of the content script IIFE so early-firing event handlers (copy, click, runtime.onMessage) can no longer reference them before initialization (#298) - Security:
navigate()now enforces the 2000-char URL length cap before parsing - Security: hostname extraction in the affiliate toast wrapped in
safeHostname()— malformed URLs no longer throw inside event handlers
Added- Static-analysis regression tests asserting
_contentPrefs/_contentPrefsPendingdeclarations stay above any reader and within the first 120 lines ofcleaner.js
Zdrojový kód zveřejněn pod licencí Pouze GNU General Public License v3.0
- Firefox TDZ:
Verze 1.9.9
Vydáno 10. dub 2026 – 118,63 KBFunguje s: firefox 128.0 a novější, android 128.0 a novějšíFixed- Security: add URL payload length limit, reject non-HTTP schemes, harden sanitizeHTML
- Robustness: cache version counter prevents stale prefs, time-based rewrite loop eviction
- Firefox MV2: shim chrome.runtime.sendMessage, deduplicate browser-polyfill loading
- MutationObserver ping blocking debounced via requestAnimationFrame
- Document silent .catch() handlers in content scripts
- Safe manifest swap script with trap-based restoration
Added- Automated Firefox AMO submission on tag push
- Automated Chrome Web Store submission on tag push
- README: Chrome Web Store install badge (no longer "Coming soon")
Zdrojový kód zveřejněn pod licencí Pouze GNU General Public License v3.0
Verze 1.9.6
Vydáno 5. dub 2026 – 110,59 KBFunguje s: firefox 128.0 a novější, android 128.0 a novějšíVersion 1.9.6
Fixes:
- Click handler no longer intercepts all link clicks. Only intercepts clicks to affiliate store domains. Non-affiliate clicks pass through unmodified, preserving SPA navigation on YouTube, forums, and all other sites.
- Click, copy, and self-clean handlers now check if the extension is enabled before any interception. Extension is fully inert when disabled.
- Prefs loaded eagerly at content script init for synchronous access.
852 passing tests. No permission changes.Zdrojový kód zveřejněn pod licencí Pouze GNU General Public License v3.0
Verze 1.9.4
Vydáno 1. dub 2026 – 109,57 KBFunguje s: firefox 128.0 a novější, android 128.0 a novějšíVersion 1.9.4
Changes in this version:
- Consent gate: extension is now fully disabled (no URL processing, popup blocked, options redirected) until the user accepts the Terms of Use in onboarding. Enforcement points: service-worker.js (handleProcessUrl), popup.js (consent-gate overlay), options.js (redirect), content/cleaner.js (ping blocking).
- 120+ new domain-specific tracking parameters (Amazon, Facebook, TikTok, Google, LinkedIn, Reddit, eBay, YouTube, Spotify, Netflix, NYTimes, BBC, AliExpress, Bing, Yahoo, Twitter/X, Etsy). Sourced from ClearURLs, AdGuard Filter 17, Neat-URL, and Mozilla's built-in strip list.
- 5 new Shopify recommendation tracking params (pr_prod_strat, pr_rec_id, pr_ref_pid, pr_rec_pid, pr_seq) added to global tracking list.
- Fixed: double onboarding tab caused by both onInstalled and fallback IIFE opening tabs. Now uses a dedup flag (openOnboardingOnce).
- Fixed: Promise shim (shimChromePromises in storage.js) was probing each API call by invoking it without a callback. For side-effectful methods like chrome.tabs.create, this executed the action twice. Now detects environment once at startup.Zdrojový kód zveřejněn pod licencí Pouze GNU General Public License v3.0
Verze 1.9.2
Vydáno 1. dub 2026 – 106,49 KBFunguje s: firefox 140.0 a novější, android 140.0 a novějšíVersion 1.9.2
Changes in this version:
- Redesigned onboarding (privacy-first messaging, 3 features)
- Affiliate redirect unwrapping (Awin, Admitad, ShareASale, VigLink, Tradedoubler)
- Strip awc/wt_mc from redirect-based affiliate networks
- Fix collapsible store groups in Settings
- Rename "Report broken site" to "Report a bug or suggest an improvement"
- 730 passing tests
No permission changes from previous versionZdrojový kód zveřejněn pod licencí Pouze GNU General Public License v3.0
Verze 1.8.0
Vydáno 29. bře 2026 – 99,61 KBFunguje s: firefox 140.0 a novější, android 140.0 a novějšíZdrojový kód zveřejněn pod licencí Pouze GNU General Public License v3.0