Repository navigation
Conversation
…bKit iPhone) Banc de recette séparé (tests/recette/, configuration Playwright dédiée, jamais lancé par `npm run test:e2e`) et workflow « Recette Phase T » : - parcours utilisateur cliqué : connexion Google simulée → dossier dédié → liste des versions → « Vérifier et télécharger » (SHA-256 du fichier reçu comparé à la copie chiffrée fictive) ; - exploration systématique de tous les boutons, liens et champs visibles de chaque écran, état réinitialisé avant chaque élément, matrice OK / KO / DÉSACTIVÉ-SANS-EXPLICATION / NON TESTABLE et couverture n/N ; - session « monkey » de 5 min par navigateur (graine reproductible) ; - erreurs console / exceptions capturées et expliquées, captures par étape, traces Playwright, sorties recette-output/ (matrix.json, MATRICE.md, errors.json, screenshots/, traces/) ; - reproductions BUG-01 à BUG-05 marquées test.fail(), sans correctif. Données fictives uniquement ; Google, Picker et Drive entièrement simulés, toute autre requête bloquée. Aucun changement dans src/. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01E5jwZntqAvJaRThsuEjgja
| try { return JSON.parse(readFileSync(join(OUT, 'partials', file), 'utf8')) as T; } catch { return null; } | ||
| } | ||
| const pct = (n: number, d: number) => (d ? Math.round((1000 * n) / d) / 10 : 0); | ||
| const md = (s: unknown) => String(s ?? '').replace(/\|/g, '\\|').replace(/\n/g, ' '); |
…G-06
- erreurs console reçues pendant une capture d'écran marquées (pendantCapture) ;
sous WebKit, Playwright insère <style>body {}</style> avant chaque capture
(synchronisation des animations) et la CSP style-src 'self' la refuse :
classée « attendue », artefact du banc et non de l'application ;
- BUG-06 : « Annuler » de la sauvegarde désactivé sans explication pendant le
contrôle de l'empreinte (test.fail, aucun correctif).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E5jwZntqAvJaRThsuEjgja
L'état « Annuler désactivé » dure trop peu pour un sondage : un observateur dans la page enregistre l'instant exact et la description éventuelle. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01E5jwZntqAvJaRThsuEjgja
This was referenced Oct 29, 2026
This branch has not been deployed
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.
Recette « testeur » du code actuellement en production (
main@551f3d9). Cette PR n’ajoute que des fichiers de recette et un workflow ; aucune ligne desrc/n’est modifiée et aucune anomalie n’est corrigée ici.Contenu
tests/recette/: banc séparé, configuration Playwright dédiée (playwright.recette.config.ts), jamais exécuté parnpm run test:e2e(testDirtests/e2e).display-mode: standalone/navigator.standalone) : connexion Google simulée → confirmation du compte → dossier dédié → « Actualiser les versions » → « Vérifier et télécharger » (téléchargement réel, SHA-256 du fichier = SHA-256 de la copie chiffrée fictive, « octets vérifiés » affiché).recette-output/→matrix.json,MATRICE.md,errors.json,screenshots/,traces/, rapport HTML..github/workflows/recette.yml:pull_request(cheminstests/recette/**, le workflow) +workflow_dispatch,permissions: contents: read, actions épinglées par SHA (mêmes SHA quepipeline.yml), imagemcr.microsoft.com/playwright:v1.56.1-noble, aucun secret ni variable Google, artefactrecette-phase-t-<run_id>conservé 14 jours.Données et réseau
Données fictives uniquement : paquets Race Control chiffrés par le codec propriétaire épinglé (
tests/fixtures/race-packet.ts), compterecette-fictive@example.invalid, configuration publique inventée. GIS, Picker et Drive v3 sont entièrement simulés par des routes Playwright (repris detests/e2e/connected-drive.spec.ts) ; toute autre requête est interrompue. Aucun contact avec Google, Drive ou un compte réel. Service worker bloqué pendant la recette.Anomalies trouvées (reproductions marquées
test.fail(), aucun correctif)BUG-01 connexion : fermer (ou bloquer) la fenêtre de consentement Google affiche « Session Google expirée »BUG-02 connexion : refuser l’autorisation Google Drive affiche « Session Google expirée » …drive.filedécochée → même message « Session expirée », la permission manquante n’est pas expliquée.BUG-03 dossier : annuler le sélecteur Google Drive affiche « Erreur — action nécessaire » …BUG-04 cohérence : sur l’origine connectable, l’Accueil annonce « Google Drive — Connexion vérifiée » …BUG-05 accessibilité : « Restaurer cette version » est désactivé sans description accessible …aria-describedby/title(mineur, a11y).BUG-06 sauvegarde : « Annuler » devient désactivé pendant le contrôle de l’empreinte sans aucune explicationToutes reproduites sous Chromium bureau et WebKit iPhone dans le run CI. Ces tests ne tournent que dans « Recette Phase T » ; un
test.fail()devient rouge (« unexpectedly passed ») le jour où l’anomalie est corrigée.Résultats CI (run « Recette Phase T » sur la tête
bddb22f, fusion de testec1fec5)« Désactivé sans explication » = « Restaurer cette version » (BUG-05) et « Annuler » de la sauvegarde (BUG-06, état bref). « Non testable » = liens externes (Race Control, Reconversion Control) et éléments transitoires. 602 erreurs console, toutes expliquées : 8 × 404 nominal « réserver puis relire » du Drive simulé, 594 × feuille
body {}injectée par Playwright WebKit avant chaque capture et refusée par la CSPstyle-src 'self'(artefact du banc, absent sous Chromium).Ajouter ce workflow fait échouer 2 tests unitaires existants de
tests/unit/pipeline.test.ts(« un seul workflow existe », « aucun déclenchement manuel ni externe ») : « Vérification complète » sera rouge sur cette PR. Les garde-fous n’ont volontairement pas été modifiés (changement CI/sécurité sensible, hors périmètre). Décision propriétaire requise : autoriser explicitementrecette.ymldans ces garde-fous, retirerworkflow_dispatch, ou garder la recette hors demain.Exécution locale
/opt/pw-browsers/chromium, viaRECETTE_CHROMIUM_PATH) : parcours RÉUSSI, exploration complète, monkey 5 min sans erreur, BUG-01…06 reproduits.Non testable automatiquement (à faire à la main)
Vraie connexion Google et vrai Picker, vrai iPhone/Safari/PWA écran d’accueil, téléchargement réel dans Fichiers puis import et déchiffrement dans Race Control, liens externes, service worker / hors ligne réel.
Impact, risques, retour arrière
src/, pas de publication ; workflow lecture seule, sans secret).test/recette-phase-t; aucune donnée ni configuration à restaurer.https://claude.ai/code/session_01E5jwZntqAvJaRThsuEjgja
Generated by Claude Code