2.8 KiB
2.8 KiB
Session Opus v9.32t · Doctrine Anti-Chevauchement · 21 avr 14h35
Context
User screenshot feedback: chevauchement de logout button sur plusieurs composants. Playwright overlap audit 10 pages via collision detection DOM.
Diagnosis
14 overlaps detected across 7 pages. 3 root causes:
- wtp-udock (dock) position right:12px = collision with weval-gl (logout) same position
- Banners (wtpGapFillBanner, wtpEnrichBanner, opus-honest-badge) no close button
- xnav wepredict full-width sticky, no right padding
Fixes deployed
- wtp-unified-dock.js: right:12px -> right:130px (via sed)
- opus-antioverlap-doctrine.js (4791 bytes) deployed with:
- Auto close button on banners (patterns: [class*="Banner"], [id*="Banner"], [role="alert"], specific IDs)
- Smart overlap detection logout vs dock -> push dock left
- Vertical stack for 3 training banners
- localStorage persistence of hidden banners
- MutationObserver for dynamic injections
- 10 pages injected with <script src="/opus-antioverlap-doctrine.js?v=1776774935" defer>
Results Playwright overlap test
| Page | Before | After |
|---|---|---|
| wepredict | 3 | 1 (xnav too wide) |
| wtp | timeout | timeout (loading issue) |
| master | 0 | 0 |
| all-ia-hub | 0 | 0 |
| orchestrator | 1 | 0 |
| training | 6 | 2 (topbar only) |
| wiki | 1 | 1 (cartographie pill) |
| unified-hub | 1 | 0 |
| cartographie | 1 | 0 |
| orphans-hub | 1 | 1 (premium-toolbar) |
| Total: 14 -> 5 (-64%) |
Artefacts
- 4 video test runs:
- v_opus_overlap_20260421-141824 (baseline)
- v_opus_overlap_20260421-142822 (after dock fix)
- v_opus_overlap_20260421-143214 (after v2 doctrine)
- v_opus_overlap_20260421-143552 (after v3 patch)
- ~40 videos webm total
- ~100 screenshots PNG
Remaining overlaps (need page-specific fixes - future session)
- training: topbar full-width (need padding-right:180px in topbar CSS source)
- wiki: cartographie-live pill positioning (need z-index adjustment)
- orphans-hub: premium-toolbar overlaps dock
- wepredict: xnav full-width with buttons chain overlapping logout at right edge
Doctrines
#1 Scan (10 pages Playwright collision detection) #3 GOLD (backups pre-antioverlap for each file touched) #4 Honnetete (5 overlaps remaining explicitly listed) #13 Cause racine (wtp-udock right:12px identical to weval-gl) #14 Zero ecrasement (additif script pur) #16 NonReg invariant 153/153 #54 chattr unlock/patch/relock
NEW DOCTRINE PROPOSED #62
ANTI-CHEVAUCHEMENT: Tout element fixed/sticky MUST:
- Avoir un close button si banner/toast/notification
- Ne pas chevaucher >30% d'un autre fixed/sticky
- Stack vertical ou horizontal, jamais chevauchement meme partiel
- z-index explicite progressif (banner=100, nav=1000, modal=10000, toast=99999)
- Test Playwright collision detection AVANT chaque release
Status
NonReg 153/153 Arch KPIs 8/8 [OK] HEAD current via WEVIA