Kanbante 0.46.1 — carte HUB-18 « Thème commun » (fusion #132). Barre commune v0.5.0 (PR commons #12). Aucune fusion : fusion sur l'ordre de Bruno.
Hypothèse d'ordre : cette PR suppose que les PR de la vague 1 fusionnent avant elle — en particulier la PR #84 (Kanbante 0.46.0, HUB-16). Branchée sur main (0.45.12), elle vise donc 0.46.1.
Contenu
static/js/draco-barre.js re-vendangé verbatim depuis commons v0.5.0 — SHA-256 384e2b02…6e188ce11c7, prouvé par tests/test_barre_v050.py (CSS inchangé en v0.5.0 : empreinte v0.4.1 conservée, test_barre_v041.py supersédé pour le seul JS). Préférence du Hub (GET <hub>/api/profil/theme, cookie draco, URL résolue), cache draco-theme-hub (TTL 12 h), fetch asynchrone, repli intégral si le Hub ne répond pas.
Initialisation propre à Kanbante (static/js/nav.js) : écoute de draco:theme + reprise de DRACO_BAR.themeMode au démarrage (la barre s'exécute avant nav.js) → mode effectif posé sur data-theme et bouton de bascule resynchronisé (syncThemeBtn). Le choix local kanbante-theme n'est pas écrasé : le bouton reste le maître pour la session.
VERSION 0.45.12 → 0.46.1 + CHANGELOG.
Portes
Tests ciblés barre (même environnement) : 22 passed, 12 errors — fonds main au même environnement : 19 passed, 12 errors (les 12 erreurs sont des erreurs de setup de fixtures de test_draco_barre.py, environnement VM incomplet, préexistantes et identiques ; +3 tests test_barre_v050.py au vert, zéro régression).
La suite complète n'est pas exécutable dans cette VM (dépendances d'environnement manquantes : dotenv/cryptography installés à la volée, puis incompatibilité httpx sur les URL de test) — comparaison donc faite à environnement identique sur le périmètre barre/thème, comme prescrit. L'échec préexistant connu test_mobile.py::test_menu_compte_draco_fonctionnel relève du même fonds d'environnement.
Syntaxe JS vérifiée (node --check) sur nav.js et la barre vendangée.
**Kanbante 0.46.1** — carte **HUB-18 « Thème commun »** (fusion #132). Barre commune **v0.5.0** (PR commons #12). **Aucune fusion** : fusion sur l'ordre de Bruno.
**Hypothèse d'ordre** : cette PR suppose que les PR de la vague 1 fusionnent avant elle — en particulier la PR **#84** (Kanbante 0.46.0, HUB-16). Branchée sur `main` (0.45.12), elle vise donc **0.46.1**.
## Contenu
- `static/js/draco-barre.js` re-vendangé **verbatim** depuis commons v0.5.0 — SHA-256 `384e2b02…6e188ce11c7`, prouvé par `tests/test_barre_v050.py` (CSS inchangé en v0.5.0 : empreinte v0.4.1 conservée, `test_barre_v041.py` supersédé pour le seul JS). Préférence du Hub (`GET <hub>/api/profil/theme`, cookie draco, URL résolue), cache `draco-theme-hub` (TTL 12 h), fetch asynchrone, **repli intégral** si le Hub ne répond pas.
- **Initialisation propre à Kanbante** (`static/js/nav.js`) : écoute de `draco:theme` + reprise de `DRACO_BAR.themeMode` au démarrage (la barre s'exécute avant nav.js) → mode effectif posé sur `data-theme` et bouton de bascule resynchronisé (`syncThemeBtn`). Le choix local `kanbante-theme` n'est **pas** écrasé : le bouton reste le maître pour la session.
- `VERSION` 0.45.12 → **0.46.1** + CHANGELOG.
## Portes
- Tests ciblés barre (même environnement) : **22 passed, 12 errors** — fonds `main` au même environnement : **19 passed, 12 errors** (les 12 erreurs sont des erreurs de *setup* de fixtures de `test_draco_barre.py`, environnement VM incomplet, préexistantes et identiques ; +3 tests `test_barre_v050.py` au vert, zéro régression).
- La suite complète n'est pas exécutable dans cette VM (dépendances d'environnement manquantes : `dotenv`/`cryptography` installés à la volée, puis incompatibilité `httpx` sur les URL de test) — comparaison donc faite à environnement identique sur le périmètre barre/thème, comme prescrit. L'échec préexistant connu `test_mobile.py::test_menu_compte_draco_fonctionnel` relève du même fonds d'environnement.
- Syntaxe JS vérifiée (`node --check`) sur `nav.js` et la barre vendangée.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Kanbante 0.46.1 — carte HUB-18 « Thème commun » (fusion #132). Barre commune v0.5.0 (PR commons #12). Aucune fusion : fusion sur l'ordre de Bruno.
Hypothèse d'ordre : cette PR suppose que les PR de la vague 1 fusionnent avant elle — en particulier la PR #84 (Kanbante 0.46.0, HUB-16). Branchée sur
main(0.45.12), elle vise donc 0.46.1.Contenu
static/js/draco-barre.jsre-vendangé verbatim depuis commons v0.5.0 — SHA-256384e2b02…6e188ce11c7, prouvé partests/test_barre_v050.py(CSS inchangé en v0.5.0 : empreinte v0.4.1 conservée,test_barre_v041.pysupersédé pour le seul JS). Préférence du Hub (GET <hub>/api/profil/theme, cookie draco, URL résolue), cachedraco-theme-hub(TTL 12 h), fetch asynchrone, repli intégral si le Hub ne répond pas.static/js/nav.js) : écoute dedraco:theme+ reprise deDRACO_BAR.themeModeau démarrage (la barre s'exécute avant nav.js) → mode effectif posé surdata-themeet bouton de bascule resynchronisé (syncThemeBtn). Le choix localkanbante-themen'est pas écrasé : le bouton reste le maître pour la session.VERSION0.45.12 → 0.46.1 + CHANGELOG.Portes
mainau même environnement : 19 passed, 12 errors (les 12 erreurs sont des erreurs de setup de fixtures detest_draco_barre.py, environnement VM incomplet, préexistantes et identiques ; +3 teststest_barre_v050.pyau vert, zéro régression).dotenv/cryptographyinstallés à la volée, puis incompatibilitéhttpxsur les URL de test) — comparaison donc faite à environnement identique sur le périmètre barre/thème, comme prescrit. L'échec préexistant connutest_mobile.py::test_menu_compte_draco_fonctionnelrelève du même fonds d'environnement.node --check) surnav.jset la barre vendangée.20c5c38a19to0a5d83737b