Imugiii
b3521f7a56
feat(borne): menu Maxi agrandit la boisson en 50cl + transport explicite du format
...
CI / secret-scan (push) Successful in 18s
CI / js-tests (pull_request) Successful in 38s
CI / php-lint (push) Successful in 42s
CI / static-tests (push) Successful in 1m29s
CI / js-tests (push) Successful in 45s
CI / secret-scan (pull_request) Successful in 17s
CI / php-lint (pull_request) Successful in 40s
CI / static-tests (pull_request) Successful in 1m10s
Seed 0006 lie chaque soda fontaine 30cl a sa variante 50cl via
maxi_variant_product_id : en menu Maxi, resolveSelections substitue la
boisson vers la 50cl (meme mecanique que l'accompagnement Grande Frite),
sans code serveur. Les boissons en bouteille (sans variante) restent en
taille standard, le surcout Maxi etant porte par le menu.
La borne transporte desormais le format Normal/Maxi explicitement
(buildMenuCartItem) au lieu de l'inferer de supplement_cents>0 (faux
negatif si maxi==normal) ; checkout.js lit cartItem.format avec repli
historique pour les paniers serialises. Commentaire migration 0007
corrige (la substitution Maxi de la boisson est desormais voulue).
Tests : OrderRepositoryTest (boisson Maxi -> 50cl + bouteille inchangee),
checkout/composer-slots (format transporte). Seed valide idempotent sur
base jetable (5 sodas lies, frites intactes, bouteilles NULL).
2026-06-24 08:57:53 +00:00
8e2e0382ba
fix(devops): passer les variables SMTP/MAIL au conteneur wakdo-app ( #97 )
CI / secret-scan (push) Successful in 11s
CI / php-lint (push) Successful in 27s
CI / static-tests (push) Successful in 58s
CI / js-tests (push) Successful in 28s
2026-06-23 16:11:31 +02:00
ef71101453
feat(auth): envoi reel de l'email de reset via relais SMTP (Brevo) ( #96 )
CI / secret-scan (push) Successful in 14s
CI / php-lint (push) Successful in 28s
CI / static-tests (push) Successful in 1m3s
CI / js-tests (push) Successful in 1m29s
2026-06-23 15:34:27 +02:00
80b8272291
chore(devops): modeles versionnes docker-compose.prod.yml + .env de prod ( #95 )
CI / secret-scan (push) Successful in 12s
CI / php-lint (push) Successful in 25s
CI / static-tests (push) Successful in 58s
CI / js-tests (push) Successful in 36s
2026-06-23 15:01:02 +02:00
8c5d942de8
feat(devops): CD push-based vers Vision (prod) + preuve de version ( #94 )
CI / secret-scan (push) Successful in 14s
CI / php-lint (push) Successful in 24s
CI / static-tests (push) Successful in 1m4s
CI / js-tests (push) Successful in 35s
2026-06-23 11:32:57 +02:00
193a15abf7
fix(front): bouton police adaptee en bas-gauche (evite la collision panier) ( #92 )
CI / secret-scan (push) Successful in 17s
CI / php-lint (push) Successful in 24s
CI / static-tests (push) Successful in 1m0s
CI / js-tests (push) Successful in 31s
CI / secret-scan (pull_request) Successful in 10s
CI / php-lint (pull_request) Successful in 23s
CI / static-tests (pull_request) Successful in 59s
CI / js-tests (pull_request) Successful in 35s
2026-06-23 10:02:52 +02:00
fe5ac06e04
fix(admin): racine du back-office redirige vers /login ( #91 )
CI / secret-scan (push) Successful in 9s
CI / php-lint (push) Successful in 22s
CI / static-tests (push) Successful in 50s
CI / js-tests (push) Successful in 30s
2026-06-23 09:56:18 +02:00
82adc77879
fix(borne): affiche la Grande en menu Maxi (accompagnement) ( #90 )
CI / secret-scan (push) Successful in 9s
CI / php-lint (push) Successful in 24s
CI / static-tests (push) Successful in 55s
CI / js-tests (push) Successful in 27s
2026-06-22 16:23:39 +02:00
042c30a5fe
fix(borne): persiste + garde le mode de consommation (corrige 422 paiement) ( #89 )
CI / secret-scan (push) Successful in 14s
CI / php-lint (push) Successful in 30s
CI / static-tests (push) Successful in 1m1s
CI / js-tests (push) Successful in 30s
2026-06-22 15:43:32 +02:00
545aa19cf1
feat(borne): tailles 30/50cl boissons a la carte (R4) ( #88 )
CI / secret-scan (push) Successful in 18s
CI / php-lint (push) Successful in 33s
CI / static-tests (push) Successful in 1m9s
CI / js-tests (push) Successful in 41s
2026-06-22 14:07:46 +02:00
034038a31f
feat(orders): UI modificateurs composeur comptoir/drive (R3c) ( #87 )
CI / secret-scan (push) Successful in 13s
CI / php-lint (push) Successful in 28s
CI / static-tests (push) Successful in 56s
CI / js-tests (push) Successful in 31s
2026-06-22 13:39:30 +02:00
6347c66a7e
feat(orders): composeur de menus (slots + format) saisie comptoir/drive ( #86 )
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 21s
CI / static-tests (push) Successful in 48s
CI / js-tests (push) Successful in 28s
2026-06-22 12:28:13 +02:00
5cc879c3ea
feat(orders): saisie commande comptoir/drive - fondation produits (mlt 4.1) ( #85 )
CI / secret-scan (push) Successful in 10s
CI / php-lint (push) Successful in 20s
CI / static-tests (push) Successful in 49s
CI / js-tests (push) Successful in 27s
2026-06-22 12:09:11 +02:00
ea1654c21a
feat(menu): accompagnement Maxi en variante Grande automatique (variante en base) ( #84 )
CI / secret-scan (push) Successful in 9s
CI / php-lint (push) Successful in 24s
CI / static-tests (push) Successful in 58s
CI / js-tests (push) Successful in 32s
2026-06-22 11:52:04 +02:00
741cfdb02b
feat(orders): annulation de commande (CANCEL_ORDER) - PIN + audit + restock (mlt 7.1) ( #83 )
CI / secret-scan (push) Successful in 12s
CI / php-lint (push) Successful in 23s
CI / static-tests (push) Successful in 47s
CI / js-tests (push) Successful in 25s
2026-06-22 11:35:55 +02:00
4206452a7e
fix(devops): deploy.sh build depuis Dockerfiles + pull main Forgejo ( #82 )
CI / secret-scan (push) Successful in 9s
CI / php-lint (push) Successful in 22s
CI / static-tests (push) Successful in 48s
CI / js-tests (push) Successful in 29s
2026-06-22 11:05:39 +02:00
10705858ac
feat(stock): enrichissement nutritionnel via API externe OpenFoodFacts (Cr 3.a.3) ( #79 )
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 20s
CI / static-tests (push) Successful in 49s
CI / js-tests (push) Successful in 26s
2026-06-22 09:31:15 +02:00
80919f62c1
feat(orders): KDS cuisine + transition paid vers delivered (P3 operationnel) ( #81 )
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 21s
CI / static-tests (push) Successful in 43s
CI / js-tests (push) Successful in 33s
2026-06-22 09:28:39 +02:00
9e3346181d
docs: strategie de test (couverture + E2E hors CI) ( #80 )
CI / secret-scan (push) Successful in 10s
CI / php-lint (push) Successful in 27s
CI / static-tests (push) Successful in 52s
CI / js-tests (push) Successful in 29s
2026-06-22 09:19:31 +02:00
8af17842b9
feat(borne): SEO demonstratif + @supports + validation chevalet temps reel (Cr 1.e/1.b.3/2.b.1) ( #78 )
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 18s
CI / static-tests (push) Successful in 58s
CI / js-tests (push) Successful in 26s
2026-06-22 08:59:25 +02:00
cb990404e3
feat(api): suivi public du statut commande GET /api/orders/{number} (P4) ( #77 )
CI / secret-scan (push) Successful in 9s
CI / php-lint (push) Successful in 20s
CI / static-tests (push) Successful in 47s
CI / js-tests (push) Successful in 26s
2026-06-22 08:53:36 +02:00
918420c497
docs(architecture): schema fonctionnel des vues (Cr 4.a.4) ( #76 )
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 18s
CI / static-tests (push) Successful in 43s
CI / js-tests (push) Successful in 23s
2026-06-22 08:50:10 +02:00
09ac9e5a3f
chore(devops): hooks Git versionnes + scripts deploy et restore (Cr 4.f.2 / 7.b.2) ( #75 )
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 22s
CI / static-tests (push) Successful in 45s
CI / js-tests (push) Successful in 23s
2026-06-22 08:44:45 +02:00
a1d4332714
docs: aligner PROJECT_CONTEXT et README sur l'etat reel ( #74 )
CI / secret-scan (push) Has been cancelled
CI / static-tests (push) Has been cancelled
CI / php-lint (push) Has been cancelled
CI / js-tests (push) Has been cancelled
2026-06-22 08:43:02 +02:00
66aaa77f87
feat(borne): police OpenDyslexic auto-hebergee + bascule accessibilite (RGAA Cr 1.c.2) ( #73 )
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 20s
CI / static-tests (push) Successful in 47s
CI / js-tests (push) Successful in 24s
2026-06-22 08:38:46 +02:00
121877ea65
feat(admin): page d'information RGPD sur le traitement des donnees (Cr 3.d.2) ( #72 )
CI / secret-scan (push) Successful in 10s
CI / php-lint (push) Successful in 27s
CI / static-tests (push) Successful in 58s
CI / js-tests (push) Successful in 27s
2026-06-22 08:29:22 +02:00
7ab9a5a8cf
feat(api): endpoint public /api/allergens (P4 optionnel) ( #71 )
CI / secret-scan (push) Successful in 9s
CI / php-lint (push) Successful in 25s
CI / static-tests (push) Successful in 49s
CI / js-tests (push) Successful in 29s
2026-06-19 20:30:12 +02:00
1d56d5b574
feat(admin): liste des commandes + KPIs de vente (P4) ( #70 )
CI / secret-scan (push) Successful in 9s
CI / php-lint (push) Successful in 22s
CI / static-tests (push) Successful in 47s
CI / js-tests (push) Successful in 24s
2026-06-19 20:24:33 +02:00
6c431af197
chore(borne): memoisation loaders data.js + contraste a11y selection ( #69 )
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 23s
CI / static-tests (push) Successful in 48s
CI / js-tests (push) Successful in 27s
2026-06-19 20:07:48 +02:00
7575d0458a
feat(borne): soumission reelle de commande + ecran chevalet (P5 L4) ( #68 )
CI / secret-scan (push) Successful in 11s
CI / php-lint (push) Successful in 23s
CI / static-tests (push) Successful in 54s
CI / js-tests (push) Successful in 28s
2026-06-19 20:02:01 +02:00
dfbf1bbe0f
feat(stock): seed ingredients + recettes des 53 produits (P4) ( #67 )
CI / secret-scan (push) Successful in 9s
CI / php-lint (push) Successful in 21s
CI / static-tests (push) Successful in 41s
CI / js-tests (push) Successful in 25s
2026-06-19 19:41:00 +02:00
22a4bacc22
feat(borne): modale options produit + grille en modales (P5 L3) ( #66 )
CI / secret-scan (push) Successful in 9s
CI / php-lint (push) Successful in 22s
CI / static-tests (push) Successful in 54s
CI / js-tests (push) Successful in 29s
2026-06-19 18:41:57 +02:00
6e5a5f9334
feat(borne): composeur menu pilote par les slots /api/menus (P5 L2) ( #65 )
CI / secret-scan (push) Successful in 11s
CI / php-lint (push) Successful in 31s
CI / static-tests (push) Successful in 58s
CI / js-tests (push) Successful in 33s
2026-06-19 18:30:38 +02:00
c73afdf471
feat(borne): panneau commande persistant + bandeau categories (P5 L1) ( #64 )
CI / secret-scan (push) Successful in 10s
CI / php-lint (push) Successful in 21s
CI / static-tests (push) Successful in 53s
CI / js-tests (push) Successful in 26s
2026-06-19 16:54:47 +02:00
f2fdaea89a
docs(design): decomposition maquette borne + ecrans + tracabilite vs build ( #63 )
CI / secret-scan (push) Successful in 9s
CI / php-lint (push) Successful in 21s
CI / static-tests (push) Successful in 47s
CI / js-tests (push) Successful in 24s
2026-06-19 16:25:18 +02:00
6c6a34db9f
fix(borne): passerelle /api same-origin sur le vhost kiosk ( #62 )
CI / secret-scan (push) Successful in 10s
CI / php-lint (push) Successful in 25s
CI / static-tests (push) Successful in 52s
CI / js-tests (push) Successful in 28s
2026-06-19 16:15:41 +02:00
7a0702ff6e
feat(borne): cablage de la borne sur l'API (CORS + data.js) ( #61 )
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 23s
CI / static-tests (push) Successful in 52s
CI / js-tests (push) Successful in 26s
2026-06-18 16:46:17 +02:00
a35db88d2f
feat(api): P4 chunk 2 - read API catalogue borne (categories/produits/menus) ( #60 )
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 18s
CI / static-tests (push) Successful in 44s
CI / js-tests (push) Successful in 27s
2026-06-18 16:10:36 +02:00
9bc0140b9a
feat(admin): ecran Roles humanise ( #53 )
CI / secret-scan (push) Successful in 27s
CI / php-lint (push) Successful in 40s
CI / static-tests (push) Successful in 1m14s
CI / js-tests (push) Successful in 30s
2026-06-18 15:00:54 +02:00
7a2528a280
docs(journal): retro de session 2026-06-18 ( #59 )
CI / secret-scan (push) Successful in 22s
CI / php-lint (push) Has been cancelled
CI / static-tests (push) Has been cancelled
CI / js-tests (push) Has been cancelled
2026-06-18 14:51:32 +02:00
05eca6aea2
ci: retire le job auto-merge redondant ( #58 )
CI / secret-scan (push) Successful in 15s
CI / php-lint (push) Successful in 31s
CI / static-tests (push) Successful in 1m9s
CI / js-tests (push) Successful in 32s
2026-06-18 14:44:25 +02:00
60ce3460a5
feat(api): P4 chunk 1b - encaissement + decrement stock ( #57 )
CI / secret-scan (push) Successful in 18s
CI / php-lint (push) Successful in 27s
CI / static-tests (push) Successful in 55s
CI / js-tests (push) Successful in 31s
CI / auto-merge (push) Has been skipped
2026-06-18 14:29:22 +02:00
a6ac3d6421
fix(admin): logo reel dans la sidebar back-office ( #56 )
CI / secret-scan (push) Waiting to run
CI / php-lint (push) Waiting to run
CI / static-tests (push) Waiting to run
CI / js-tests (push) Waiting to run
CI / auto-merge (push) Blocked by required conditions
2026-06-18 14:24:34 +02:00
29a191e506
feat(api): P4 chunk 1a - creation de commande + chevalet ( #55 )
CI / secret-scan (push) Successful in 10s
CI / js-tests (push) Successful in 35s
CI / auto-merge (push) Has been skipped
CI / php-lint (push) Successful in 29s
CI / static-tests (push) Successful in 1m5s
2026-06-18 14:09:35 +02:00
1697b94b62
feat(admin): humanise les libelles restants (Reference/Variation/Auteur) ( #54 )
CI / secret-scan (push) Successful in 12s
CI / php-lint (push) Successful in 21s
CI / js-tests (push) Successful in 24s
CI / auto-merge (push) Has been skipped
CI / static-tests (push) Successful in 52s
2026-06-18 13:45:46 +02:00
60535bbe00
feat(admin): modal de re-autorisation PIN ( #52 )
CI / secret-scan (push) Successful in 15s
CI / php-lint (push) Successful in 19s
CI / static-tests (push) Successful in 1m5s
CI / js-tests (push) Successful in 32s
CI / auto-merge (push) Has been skipped
2026-06-18 13:17:59 +02:00
88e3cbc1bb
fix(borne): logo d'en-tete centre ( #51 )
CI / php-lint (push) Successful in 19s
CI / static-tests (push) Successful in 48s
CI / js-tests (push) Successful in 25s
CI / auto-merge (push) Has been skipped
CI / secret-scan (push) Successful in 8s
2026-06-18 12:40:23 +02:00
1b29cd420f
feat(admin): dashboard donnees reelles (lot 2) ( #50 )
CI / secret-scan (push) Successful in 10s
CI / php-lint (push) Successful in 22s
CI / static-tests (push) Successful in 47s
CI / js-tests (push) Successful in 30s
CI / auto-merge (push) Has been skipped
2026-06-18 12:24:43 +02:00
8d1a69f5cf
feat(admin): design system back-office (direction A+C, lot 1) ( #49 )
CI / secret-scan (push) Successful in 9s
CI / static-tests (push) Successful in 1m10s
CI / js-tests (push) Successful in 27s
CI / php-lint (push) Successful in 21s
CI / auto-merge (push) Has been skipped
2026-06-18 12:03:39 +02:00
7281d958b4
feat(admin): relooking des pages auth (login/forgot/reset) ( #48 )
CI / secret-scan (push) Successful in 11s
CI / php-lint (push) Successful in 30s
CI / static-tests (push) Successful in 1m6s
CI / js-tests (push) Successful in 35s
CI / auto-merge (push) Has been skipped
2026-06-18 11:19:21 +02:00