fix(options): T-197 bouton radio desactivation module fonctionnel (bloquant MEP v1)#179
Merged
antonyblain merged 1 commit intodevelopfrom Apr 20, 2026
Conversation
…rapper
Cause racine : le wrapper visuel du switch etait un <div> sans liaison
avec le checkbox sous-jacent. Cliquer sur le switch visuel (span.toggle-switch)
n'emettait aucun evenement 'change' -> saveConfig jamais appele -> storage
non mis a jour. Tous les 7 modules concernes (M2/M3/M5/M6/M7/M9/M17).
Fix : switchWrapper passe de document.createElement('div') a
document.createElement('label') avec htmlFor=inputId. L'association HTML
native garantit que le clic sur la zone switch declenche le changement d'etat.
Tests : 11 nouveaux cas TC-01 a TC-10b dans options-module-toggle.test.ts
couvrant : structure label, liaison htmlFor, desactivation/reactivation,
saveConfig avec modules[id]:false, tous les 7 modules, accessibilite.
Impact : CA-GLOBAL-02 (desactivation module) satisfait + RGPD Art. 7.3
(droit de retrait consentement M7) restaure. Bloquant MEP v1 leve.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
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.
Cause racine
Le wrapper visuel du switch (
div.toggle-switch-wrapper) était un élément<div>sans aucune liaison avec le checkbox sous-jacent. Cliquer sur le switch visuel (span.toggle-switch) n'émettait aucun événementchange→saveConfigjamais appelé →chrome.storage.localnon mis à jour. Tous les 7 modules concernés (M2/M3/M5/M6/M7/M9/M17).Fix
switchWrapperpasse dedocument.createElement('div')àdocument.createElement('label')+switchWrapper.htmlFor = inputId(1 ligne ajoutée). L'association HTML native garantit que cliquer sur la zone switch déclenche lechangeevent sur le checkbox lié.Fichiers modifiés
src/pages/options/options.ts—createModuleToggle: div → label (fix, +5 lignes commentaire)tests/unit/pages/options/options-module-toggle.test.ts— 11 cas de test TC-01 à TC-10b (nouveau)Tests
modules[id]:false, tous les 7 modules (TC-07/TC-08), accessibilité (TC-09)Impact
Test plan
config.modules.<id>est passé àfalsetrue🤖 Generated with Claude Code