barre-apps v0.1.6 : vendange (dérivation -dev, menu •••, avatar compte) #27

Merged
bruno merged 3 commits from barre-apps-v0.1.6-flowdeck into main 2026-10-28 10:34:19 -04:00
Owner

barre-apps v0.1.6 — Flowdeck

Source : Projets/dracodev-commons PR #1, branche barre-apps-derivation-dev-v0.1.6 (barre v0.1.6). JS/CSS repris verbatim depuis cette branche, relus sur place — pas de recopie de mémoire. Agent-commun n'utilise pas la barre : non touché. Rien mergé, rien publié, aucune issue fermée, VERSION non bumpée dans cette PR.

Note dépôt : le dépôt n'est PAS Projets/flowdeck (404 vérifié) mais bien bruno/flowdeck (vérifié par API avant toute écriture) — cette PR est donc ouverte sur bruno/flowdeck.

Fichiers changés

  • app/templates/_draco_bar.html — en-tête vendangé v0.1.4 → v0.1.6 ; bouton ••• : aria-expanded ajouté ; avatar ; branche menu remplacée (voir ci-dessous).
  • static/js/vendor/draco-barre.js — copie verbatim de ui/barre-apps/barre-apps.js (branche commons #1).
  • static/css/draco-barre.css — copie verbatim de ui/barre-apps/barre-apps.css (styles menus •••/compte + avatar bouton).

Choix menu •••

Vérifié sur place : l'hôte ne gérait PAS réellement menu — la branche existante n'était qu'un toast placeholder « Menu commun : arrive avec la fédération ». Choix : le placeholder est remplacé par if (act === "menu") { return false; } (commenté), qui demande explicitement le menu par défaut v0.1.6 (Console agent + 4 applications, URL résolues donc dérivées -dev sur un hôte -dev). Supprimer simplement la branche n'aurait pas suffi : avec un onAction existant, le nouveau JS laisse la main à l'hôte sauf retour false. Toutes les autres branches onAction (rail → hamburger natif, alertes → cloche native, palette, spark, rappel-entête) sont inchangées.

Choix avatar

<span> → vrai <button data-act="compte" aria-haspopup="menu" aria-expanded="false">, en préservant le title (full_name) et l'initiale serveur (1re lettre de full_name, repli F). Le nouveau JS dérive l'initiale du title — identique à l'initiale serveur déjà rendue. Le menu compte affiche l'identité ; Profil/Déconnexion sont relayés mais non gérés par l'hôte (même limite que dans le contrat commons, pas de gestionnaire inventé ici).

Ce qui n'a PAS été changé

  • Onglets, href rendus (draco_urls()), compteurs, domaine, rail, palette, alertes, Spark : inchangés.
  • Nonce CSP : le <script nonce="{{ csp_nonce() }}" du fragment est inchangé (la modification est à l'intérieur de ce script) ; l'inclusion du JS vendangé dans base.html n'est pas touchée.
  • Aucun DRACO_BAR_CONFIG.urls ajouté.

Vérifications (chiffres réels)

  • JS vendangé : 491 lignes (ancien : 128), CSS : 193 lignes (ancien : 166) ; diff JS/CSS vs commons v0.1.6 = vide.
  • node --check OK sur le JS vendangé ; logique de dérivation présente (resolveUrls, isDevHost, og-dev/agent-dev).
  • Test commons re-exécuté sur les fichiers exacts de la branche #1 : 21 passés, 0 échoué ; 75 assertions, 0 en échec.
  • Aucun DRACO_BAR_CONFIG.urls ajouté : la config explicite reste prioritaire partout (ordre : explicite > hôte -dev dérivé > href rendu > défaut prod) ; aucun secret dans le code.
  • Aucune capture, aucun test déployé : la vérification en direct des liens sur les hôtes -dev reste à faire après merge/release, comme le prescrit fusion-trois-apps #60.
# barre-apps v0.1.6 — Flowdeck Source : Projets/dracodev-commons PR #1, branche barre-apps-derivation-dev-v0.1.6 (barre v0.1.6). JS/CSS repris verbatim depuis cette branche, relus sur place — pas de recopie de mémoire. Agent-commun n'utilise pas la barre : non touché. Rien mergé, rien publié, aucune issue fermée, VERSION non bumpée dans cette PR. Note dépôt : le dépôt n'est PAS `Projets/flowdeck` (404 vérifié) mais bien `bruno/flowdeck` (vérifié par API avant toute écriture) — cette PR est donc ouverte sur `bruno/flowdeck`. ## Fichiers changés - `app/templates/_draco_bar.html` — en-tête vendangé v0.1.4 → v0.1.6 ; bouton ••• : `aria-expanded` ajouté ; avatar ; branche `menu` remplacée (voir ci-dessous). - `static/js/vendor/draco-barre.js` — copie verbatim de `ui/barre-apps/barre-apps.js` (branche commons #1). - `static/css/draco-barre.css` — copie verbatim de `ui/barre-apps/barre-apps.css` (styles menus •••/compte + avatar bouton). ## Choix menu ••• Vérifié sur place : l'hôte ne gérait PAS réellement `menu` — la branche existante n'était qu'un toast placeholder « Menu commun : arrive avec la fédération ». Choix : le placeholder est remplacé par `if (act === "menu") { return false; }` (commenté), qui demande explicitement le menu par défaut v0.1.6 (Console agent + 4 applications, URL résolues donc dérivées `-dev` sur un hôte `-dev`). Supprimer simplement la branche n'aurait pas suffi : avec un `onAction` existant, le nouveau JS laisse la main à l'hôte sauf retour `false`. Toutes les autres branches `onAction` (rail → hamburger natif, alertes → cloche native, palette, spark, rappel-entête) sont inchangées. ## Choix avatar `<span>` → vrai `<button data-act="compte" aria-haspopup="menu" aria-expanded="false">`, en préservant le `title` (`full_name`) et l'initiale serveur (1re lettre de `full_name`, repli `F`). Le nouveau JS dérive l'initiale du `title` — identique à l'initiale serveur déjà rendue. Le menu compte affiche l'identité ; Profil/Déconnexion sont relayés mais non gérés par l'hôte (même limite que dans le contrat commons, pas de gestionnaire inventé ici). ## Ce qui n'a PAS été changé - Onglets, href rendus (`draco_urls()`), compteurs, domaine, rail, palette, alertes, Spark : inchangés. - Nonce CSP : le `<script nonce="{{ csp_nonce() }}"` du fragment est inchangé (la modification est à l'intérieur de ce script) ; l'inclusion du JS vendangé dans `base.html` n'est pas touchée. - Aucun `DRACO_BAR_CONFIG.urls` ajouté. ## Vérifications (chiffres réels) - JS vendangé : 491 lignes (ancien : 128), CSS : 193 lignes (ancien : 166) ; diff JS/CSS vs commons v0.1.6 = vide. - `node --check` OK sur le JS vendangé ; logique de dérivation présente (`resolveUrls`, `isDevHost`, `og-dev`/`agent-dev`). - Test commons re-exécuté sur les fichiers exacts de la branche #1 : 21 passés, 0 échoué ; 75 assertions, 0 en échec. - Aucun `DRACO_BAR_CONFIG.urls` ajouté : la config explicite reste prioritaire partout (ordre : explicite > hôte -dev dérivé > href rendu > défaut prod) ; aucun secret dans le code. - Aucune capture, aucun test déployé : la vérification en direct des liens sur les hôtes -dev reste à faire après merge/release, comme le prescrit fusion-trois-apps #60.
bruno added 3 commits 2026-10-28 10:33:07 -04:00
barre-apps v0.1.6 : fragment (avatar bouton compte, menu par defaut demande, nonce CSP inchange)
FlowDeck CI / lint (push) Failing after 1s
FlowDeck CI / test (push) Failing after 0s
FlowDeck CI / docker (push) Skipped
7a43ca00ad
barre-apps v0.1.6 : JS vendange (derivation -dev, menus)
FlowDeck CI / lint (push) Failing after 1s
FlowDeck CI / test (push) Failing after 0s
FlowDeck CI / docker (push) Skipped
ecafeecda0
barre-apps v0.1.6 : CSS vendange (menus, avatar bouton)
FlowDeck CI / lint (push) Failing after 2s
FlowDeck CI / test (push) Failing after 2s
FlowDeck CI / docker (push) Skipped
FlowDeck CI / lint (pull_request) Failing after 1s
FlowDeck CI / test (pull_request) Failing after 0s
FlowDeck CI / docker (pull_request) Skipped
c582856051
bruno merged commit da205feec1 into main 2026-10-28 10:34:19 -04:00
Sign in to join this conversation.