Repli de l'Accueil et de l'Atelier : le lien « Ouvrir l'ancien » ouvre l'ancien (STUD-1227) #1690
Loading…
Reference in a new issue
No description provided.
Delete branch "hermes/repli-accueil-atelier"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Branche
hermes/repli-accueil-atelier, tête19b3b2d6, rebasée surmain1ddf57d1.Cause. Les deux replis de
_tableau/tableau.jsavalaient le clic.accueilEchecfaisaite.preventDefault(); t.click();sur l'onglet caché#o-ancien-accueil;atelierEchecfaisait demême sur
#o-ancien-atelierdepuis son lien. Or les gestionnaires de clic ne sont posés que sur lesonglets VISIBLES de la barre (
tous.filter(function(x){return !x.hidden;})) : un clic sur un ongletcaché n'appelle personne, et le
preventDefault()empêche même le navigateur de poser l'ancre.L'opérateur cliquait dans le vide.
Remède.
window.ouvrirOnglet("<id de l'onglet caché>")— la fonction déjà poséesur
mainpar le repli de l'Analytique (#1655), réutilisée telle quelle, sans redéfinition ;atelierEchecpose son gestionnaire parc.querySelector("a"), commeaccueilEchec;_tableau/test_navigateur_repli_accueil_atelier.py(Chromium sans tête, le vraitableau.js, le balisage servi, sans réseau).Le banc, rouge avant, vert après (
python3 _tableau/test_navigateur_repli_accueil_atelier.py) :Portes.
python3 _tableau/garde_fous.py:rien à redire, code 0 (tableau.js 865 lignes).python3 _tableau/lancer-tests.py --tout: 183 bancs verts, aucun rouge ; le lanceur sort en 1 surle seul CLIQUET de couverture (cœur 100 %, ensemble 99.0 % < 99.1 %). Mesuré identique sur
main1ddf57d1sans ce changement (182 bancs verts, même cliquet) : refus pré-existant, pas de cette carte.npx vitest run: 39 fichiers / 318 tests verts.npx vite build: code 0,dist/peuplé (app.js 148 495 o, base.js 336 772 o).rendu-fige.py, ouverte enfile://) : le clic ouvre l'ancien Accueil et l'ancienAtelier ; captures sombre/clair, 1600 et 390 dans
/home/atelier/captures-t_5d6cc41d-rebase/.Aucune fusion de ma part. Seuls
_tableau/tableau.jset le banc neuf sont touchés.Cause : les deux replis de `tableau.js` avalaient le clic. `accueilEchec` faisait `e.preventDefault(); t.click();` sur l'onglet caché `#o-ancien-accueil` ; `atelierEchec` ne posait aucun gestionnaire sur son lien `#o-ancien-atelier`. Or les gestionnaires de clic ne sont posés que sur les onglets VISIBLES de la barre (`tous.filter(function(x){return !x.hidden;})`) : un clic sur un onglet caché n'appelle personne, et le `preventDefault()` empêche même le navigateur de poser l'ancre. Mesuré dans Chromium sans tête, sur le vrai `tableau.js`, avant correctif : après le clic, `ancienAccueil=false, neufAccueil=true` et `ancienAtelier=false, neufAtelier=true` — l'ancien panneau ne s'ouvrait jamais, l'opérateur cliquait dans le vide. Remède : - tableau.js : les deux replis passent par `window.ouvrirOnglet("<id de l'onglet caché>")` au lieu de `t.click()`. La fonction est posée à côté de `choisir`, sous garde `if (!window.ouvrirOnglet)` : la définition du repli de l'Analytique (t_83d870fa, PR #1655), quand elle arrivera, fait foi ; - tableau.js : `atelierEchec` reçoit le gestionnaire de clic que son lien n'avait pas, comme `accueilEchec` ; - banc navigateur `test_navigateur_repli_accueil_atelier.py`, frère de `test_navigateur_repli_analytique.py` : après le clic, `#p-ancien-accueil` (resp. `#p-atelier`) est ouvert et `#p-accueil` (resp. `#p-atelier-neuf`) fermé, l'onglet ancien marqué choisi ; un Svelte monté n'est jamais annoncé en échec ; une page sans place de montage ne lève pas. Il exécute le vrai `tableau.js` sur le balisage servi (barre d'onglets, quatre panneaux), sans réseau. Vérifié — banc rouge avant, vert après : - sur `origin/main` (52de10c3), le banc sort en 1 : AssertionError, « le clic sur le lien du repli ouvre #p-ancien-accueil » avec `{ancienAccueil: False, neufAccueil: True}`, et pour l'Atelier `{ancienAtelier: False, neufAtelier: True}` ; - sur la branche, il sort en 0 en 3,4 s, et le relevé donne `{ancienAccueil: True, neufAccueil: False, choisiAncienAccueil: True}` / `{ancienAtelier: True, neufAtelier: False, choisiAncienAtelier: True}` ; - page réelle (`rendu-fige.py`), ouverte en file:// : le clic ouvre bien l'ancien panneau (captures dans `captures-t_5d6cc41d/`). Vérifié — portes : - `python3 _tableau/garde_fous.py` : rien à redire, code 0 (tableau.js 850 lignes / 900). - `python3 _tableau/lancer-tests.py --tout` : les bancs passent tous (168 verts, aucun rouge) ; le launcher sort en 1 sur le CLIQUET de couverture (cœur 99,1 % < 99,4 %, ensemble 96,6 % < 99,0 %). Mesuré IDENTIQUE sur `origin/main` (e7886778) sans ce changement : le refus est pré-existant, il n'est pas de cette carte. - `npx vitest run` : 195/196 — `tests/stockage.test.js` échoue (« relevé à 22 h 44 » attendu, « relevé hier à 22 h 44 » rendu) parce que son relevé figé est daté du 14/10 ; mesuré IDENTIQUE sur `origin/main` : banc dépendant de la date, rouge depuis le 15/10 à 0 h. Aucun fichier du front n'est touché par cette carte.fusion-auto: pas de fusion, la CI est rouge (Front Svelte). Le chef de l'atelier renvoie la carte à l'agent ; l'étiquette tombera d'elle-même une fois corrigé.fusion-auto: pas de fusion, la PR est en conflit avec main : à rebaser. Le chef de l'atelier renvoie la carte à l'agent ; l'étiquette tombera d'elle-même une fois corrigé.03d32d857e19b3b2d646Fusionnée automatiquement par
fusion-auto(forge) : CI verte (Rust et Front Svelte), PR relue (étiquetterelu), sans conflit.