diff --git a/weval-technology-platform.html b/weval-technology-platform.html index 80e4afcd2..4136b1dec 100644 --- a/weval-technology-platform.html +++ b/weval-technology-platform.html @@ -358,39 +358,6 @@ a{color:inherit;text-decoration:none} - - - diff --git a/wiki/plan-action.md b/wiki/plan-action.md index e0013cb6a..dbdf587cf 100644 --- a/wiki/plan-action.md +++ b/wiki/plan-action.md @@ -2074,3 +2074,30 @@ Plus Opus5/V27 train parallele (V89 skill scale 40 etc) - Opus5 6sigma: strike rule + doctrines 92-94 orphans/kpi/autonomy-honest - V86 auth guard (autre Opus deja vault pre-v86auth) + +## V44 · 2026-04-19 18:56 · FIX SPINNER INFINI VÉRIFICATION AUTHENTIFICATION + +### Symptôme Yacine +Page WTP bloquée sur spinner "VÉRIFICATION AUTHENTIFICATION" · jamais de redirect login + +### Cause racine (doctrine #13) +- 2 auth guards cohabitent dans WTP : V86 (autre Opus) lignes 4-52 + V1 (moi) lignes 361-393 +- V1 crée overlay full-screen #wtp-auth-gate z-index 99999 (spinner visible) +- V1 redirige vers /weval-login.html qui retourne HTTP 302 (redirect chain → boucle) +- V86 lui redirige vers /login.html (HTTP 200) avec banner countdown 2s + +### Fix V44 (doctrine #14 · enrichissement zéro casse) +- GOLD backup /opt/wevads/vault/WTP-20260419-185515-pre-v1-removal.gold.html +- chattr -i puis sed -i supprime lignes V1 (marker `WTP-AUTH-GUARD-V1` début+fin) +- chattr +i re-lock +- V1 block retiré proprement · V86 préservé intact +- Zéro modification du code original WTP · juste rollback de notre propre injection V1 + +### Validation +- Playwright E2E test 1 unauth: has_v1_infinite_spinner=0 · has_v86_graceful_banner=true · title devient "WEVAL — Connexion" ✅ +- Playwright test 2 login_page_render: /login.html OK ✅ +- NonReg: 153/153 (100%) · doctrine #2 préservée ✅ +- WTP HTTP 200 · 165ms · 160121 bytes + +### Doctrines respectées +#2 NR maintenue · #3 GOLD backup · #4 honnêteté root cause · #13 fix structurel · #14 zéro écrasement · #16 NR mandatory