From 1f11cd8e9d0e1e7a9e693239781ebbdfa17912a7 Mon Sep 17 00:00:00 2001 From: Spark Date: Fri, 30 Oct 2026 11:43:42 -0400 Subject: [PATCH 1/4] =?UTF-8?q?Kanbante=200.45.5=20:=20alertes=20unifi?= =?UTF-8?q?=C3=A9es=20=E2=80=94=20variables=20d'h=C3=B4te=20branch=C3=A9es?= =?UTF-8?q?=20sur=20les=20jetons=20Kanbante,=20panneau=20lisible=20en=20th?= =?UTF-8?q?=C3=A8me=20clair=20(static/css/style.css)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- static/css/style.css | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/static/css/style.css b/static/css/style.css index a03a06e..43ec143 100644 --- a/static/css/style.css +++ b/static/css/style.css @@ -1961,6 +1961,21 @@ html[data-theme="light"] .draco-bar { --ink: #1b1d1a; --ink-2: #5c615a; --ink-3: #787d75; --line: #dedfd9; } +/* Alertes unifiées (Fusion #69, retour de Bruno 2026-10-30) : + le CSS neutre draco-alertes.css attend des variables d'hôte + (--bg-primary, --text-dim, --text-tertiary) que Kanbante ne + définissait pas — le panneau retombait sur ses replis + sombres alors que --text suit le thème : en mode clair, + texte sombre sur fond sombre, panneau illisible. On branche + les variables sur les jetons Kanbante, qui suivent déjà + html[data-theme] — le panneau devient correct dans les + deux thèmes. (--text et --border existent déjà.) */ +.draco-alertes-box { + --bg-primary: var(--surface); + --text-dim: var(--text-2); + --text-tertiary: var(--text-3); +} + /* Squelette de chargement (#65) : tuiles et colonnes, sans JS. */ .skeleton { background: var(--surface-2); border-radius: var(--radius); animation: skeleton-pulse 1.4s ease-in-out infinite; } @keyframes skeleton-pulse { 0%, 100% { opacity: 0.55; } 50% { opacity: 1; } } From d9887c3d70b5e1b9c4b0a568165bfa3665133b4f Mon Sep 17 00:00:00 2001 From: Spark Date: Fri, 30 Oct 2026 11:43:43 -0400 Subject: [PATCH 2/4] =?UTF-8?q?Kanbante=200.45.5=20:=20tests=20du=20pannea?= =?UTF-8?q?u=20d'alertes=20et=20des=20th=C3=A8mes=20(tests/test=5Falertes?= =?UTF-8?q?=5Ftheme.py)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tests/test_alertes_theme.py | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 tests/test_alertes_theme.py diff --git a/tests/test_alertes_theme.py b/tests/test_alertes_theme.py new file mode 100644 index 0000000..98e0c37 --- /dev/null +++ b/tests/test_alertes_theme.py @@ -0,0 +1,25 @@ +"""Panneau d'alertes unifiées (Fusion #69) et thèmes. + +Le CSS neutre draco-alertes.css attend des variables d'hôte +(--bg-primary, --text-dim, --text-tertiary). Kanbante ne les +définissait pas : le panneau retombait sur ses replis sombres, +illisible en thème clair (retour de Bruno, 2026-10-30). +L'hôte les branche sur ses propres jetons, qui suivent +html[data-theme]. +""" + + +def test_alertes_variables_hote_branchees(client, fake_gitea): + css = client.get("/static/css/style.css").text + assert ".draco-alertes-box {" in css + assert "--bg-primary: var(--surface);" in css + assert "--text-dim: var(--text-2);" in css + assert "--text-tertiary: var(--text-3);" in css + + +def test_alertes_css_neutre_inchange(client, fake_gitea): + # Le fichier partagé n'est pas modifié côté Kanbante : + # il continue de consommer les variables d'hôte. + css = client.get("/static/css/draco-alertes.css").text + assert "background: var(--bg-primary, #1f1f1f);" in css + assert "color: var(--text-dim, #999);" in css From 1d98f1464c0ba9cc12c1ca0c58217799469b96d7 Mon Sep 17 00:00:00 2001 From: Spark Date: Fri, 30 Oct 2026 11:43:43 -0400 Subject: [PATCH 3/4] Kanbante 0.45.5 : version (app/config.py) --- app/config.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/config.py b/app/config.py index 96d36a2..615fdf6 100644 --- a/app/config.py +++ b/app/config.py @@ -177,7 +177,7 @@ from urllib.parse import urlparse BASE_DIR = Path(__file__).resolve().parent.parent -APP_VERSION = "0.45.4" +APP_VERSION = "0.45.5" def _env_bool(name: str, default: bool) -> bool: From 61d88fd7fc9ef0e611709051fafe1437f0823280 Mon Sep 17 00:00:00 2001 From: Spark Date: Fri, 30 Oct 2026 11:43:43 -0400 Subject: [PATCH 4/4] =?UTF-8?q?Kanbante=200.45.5=20:=20panneau=20d'alertes?= =?UTF-8?q?=20lisible=20en=20th=C3=A8me=20clair=20(CHANGELOG.md)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index b994c41..c73ece9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +## 0.45.5 — 2026-10-30 — Panneau d'alertes unifiées lisible en thème clair + +- **Retour de Bruno (capture)** : en mode clair, le panneau « Alertes unifiées » s'affichait sombre et illisible — titre invisible, onglets vides. Cause : le CSS neutre `draco-alertes.css` (Fusion #69) attend des variables d'hôte (`--bg-primary`, `--text-dim`, `--text-tertiary`) que Kanbante ne définissait pas ; le panneau retombait sur ses replis sombres pendant que `--text` suivait le thème clair → texte sombre sur fond sombre. +- **Correctif côté hôte** (le fichier neutre partagé n'est pas modifié) : `.draco-alertes-box` reçoit ses variables branchées sur les jetons Kanbante — `--bg-primary: var(--surface)`, `--text-dim: var(--text-2)`, `--text-tertiary: var(--text-3)` — qui suivent déjà `html[data-theme]`. Le panneau est donc correct dans les deux thèmes ; `--text` et `--border` existaient déjà. +- **Tests** : `tests/test_alertes_theme.py` (variables branchées + fichier neutre inchangé). Vérification navigateur réel : styles calculés et captures relues en clair et en sombre. + ## 0.45.4 — 2026-10-30 — Logo officiel en barre latérale, board clair, badge d'âge lisible Retours de Bruno (captures du 2026-10-30), trois correctifs :