Aller au contenu principal

Changelog

Toutes les nouveautes Digisimma Pages.

v0.63.0-pagesCorrectif

Scanner caisse repare et outils marketing qui marchent

Le scanner caisse trouvait "introuvables" des cartes qui existaient : la saisie forcait les majuscules alors que les numeros contiennent des minuscules. Corrige en profondeur : la recherche ignore desormais la casse, et la saisie a ete repensee (prefixe DGS- pre-rempli, deux blocs avec avance automatique, collage du numero complet reconnu). Egalement repares : l apercu PDF des supports imprimes (flyer, carte de visite, affiche) qui restait gris, et le compteur de clics des liens courts qui perdait des clics. Le QR, le lien court et le generateur UTM ont ete testes de bout en bout.

  • La caisse fidelite retrouve toutes les cartes
  • Apercu PDF fonctionnel pour vos supports imprimes
  • Distribution (QR, liens courts, UTM) verifiee de bout en bout
  • Scanner caisse : les numeros de serie sont reconnus quelle que soit la casse (majuscules ou minuscules). Saisie repensee : DGS- pre-rempli, deux blocs avec avance auto, collage intelligent du numero complet.
  • Print PDF : l apercu s affiche enfin (il restait gris) pour les trois formats, avec telechargement correct.
  • Liens courts : chaque clic est desormais compte de maniere fiable.
  • QR, lien court et UTM verifies de bout en bout : le QR scanne vers la bonne URL, le lien court redirige et trace, l UTM construit des URLs propres.
v0.62.0-pagesFeature

Reglages complets dans le builder, bloc Carte de fidelite, fidelite lisible

Tous les reglages d une page (nom, URL, statut de publication, SEO, reseaux, footer) s editent desormais au meme endroit : le panneau Reglages du builder (engrenage), sans changer de page. Nouveau dans le SEO : titre et description personnalises, image de partage, et une option pour masquer la page des moteurs de recherche. Cote fidelite, un nouveau bloc "Carte de fidelite" (distinct de la carte de visite Wallet) permet a vos visiteurs de rejoindre votre programme directement depuis votre page. Et la fiche d un programme affiche enfin un apercu visuel de la carte et des regles en francais clair, plus de code brut.

  • Tous les reglages au meme endroit, dans le builder
  • Vos visiteurs rejoignent votre programme de fidelite depuis votre page
  • Des fiches programme enfin lisibles
  • Panneau Reglages du builder enrichi : statut de la page (brouillon, publiee, archivee) et onglet SEO complet (meta title, meta description, image de partage OG, option noindex). L ancienne page Reglages redirige vers le builder.
  • Nouveau bloc "Carte de fidelite" dans la bibliotheque : liez un de vos programmes, vos visiteurs le rejoignent en un clic et recoivent leur carte Apple/Google Wallet. Bien distinct du bloc "Carte de visite Wallet".
  • Fiche programme de fidelite : l apercu de la carte (fond, logo, couleurs) et les regles ("10 tampons = 1 cafe offert") s affichent en clair, plus de donnees techniques brutes.
v0.61.0-pagesFeature

Project Hub vivant, contact editable dans le builder, palettes premium

Le Project Hub (panneau lateral droit) affiche desormais vos vraies donnees : vos pages avec leur statut et leurs vues, une liste de choses a faire deduite de votre compte (brouillons a publier, leads a traiter avec bouton Marquer traite), vos notifications et votre journal d activite. Chaque element mene a sa page complete. Dans le builder, le bloc Enregistrer le contact permet d editer nom, poste, entreprise, telephone et email sans quitter la page. Et l editeur de carte de visite propose 8 palettes premium accordees (plans Pro et plus).

  • Un Project Hub branche sur vos vraies donnees
  • Edition du contact sans quitter le builder
  • Palettes premium pour la carte de visite
  • Project Hub : projets (vos pages, statut, vues), taches reelles (brouillons a publier, leads a traiter en 1 clic), liens (URLs publiques copiables + acces rapides), ressources, journal d activite et notifications. Adapte a votre profil (entrees agence dediees).
  • Builder : les coordonnees du bloc Enregistrer le contact (nom, poste, entreprise, telephone, email) s editent directement dans le panneau du bloc. L editeur complet reste accessible pour les adresses, photo et champs multiples.
  • Carte de visite : 8 palettes premium (fond, texte et labels accordes) appliquees en 1 clic, pour les plans Pro et superieurs.
  • Les apercus de templates n affichent plus le bandeau cookies a l interieur de chaque vignette.
v0.60.0-pagesFeature

Messages enfin visibles, branding concret, apercus live des templates

Trois ameliorations directes de l experience. Les messages de confirmation et d erreur de l espace connecte etaient invisibles (un clic sur Creer sans nom complet ne disait rien : on croyait la carte creee). Ils s affichent desormais partout, et le champ manquant est signale sous le formulaire. Le choix de layout d une page montre des apercus concrets et compacts, avec une bibliotheque de 8 fonds premium (plans Pro et plus). Et la galerie de templates affiche un apercu reel et scrollable de chaque template directement sur sa carte.

  • Plus aucune action silencieuse dans l espace connecte
  • Des apercus concrets pour se projeter (layouts et templates)
  • Fonds premium Pro+
  • Notifications de l espace connecte reparees : succes et erreurs (creation de carte, sauvegardes...) etaient invisibles. Le clic Creer sans nom complet affichait... rien. Desormais un message clair apparait, plus une indication sous le champ concerne.
  • Choix du layout repense : grille compacte de 6 apercus visuels concrets, description du layout selectionne, plus de gros blocs de texte.
  • Bibliotheque de fonds premium (8 degrades) appliques a toute la page, pour les plans Pro et superieurs.
  • Galerie de templates : chaque carte montre un apercu live et scrollable du template (survolez pour faire defiler), bouton Agrandir pour l apercu complet.
v0.59.0-pagesFeature

Preparation lancement : lisibilite, tests de bout en bout, mesure

Audit complet de preparation au lancement, puis fermeture des ecarts. La lisibilite des textes secondaires et des liens bleus est remontee au standard d accessibilite WCAG AA sur tout le site (clair et sombre). Une suite de tests automatiques couvre desormais les 7 parcours critiques (connexion, creation et publication de page, capture de lead, carte Wallet, fidelite, paiement, deconnexion) et sert de barriere avant chaque mise en production. La mesure d audience (PostHog) et le suivi d erreurs (Sentry) sont cables dans le code et s activeront des la pose des cles.

  • Contrastes au standard WCAG AA partout
  • 7 parcours critiques testes automatiquement
  • Observabilite prete a activer (cles a poser)
  • Lisibilite : les textes attenues et les liens bleus passaient sous le seuil de contraste WCAG AA (notamment en theme clair). Recalibres sur tout le site, sans changer la couleur de marque des boutons.
  • Tests automatiques de bout en bout sur les 7 parcours critiques du produit, executes contre la production avec les comptes de demonstration, sans laisser aucune donnee residuelle.
  • Mesure d audience enrichie : visites des pages publiques, creation et publication de page, leads captures, ouvertures du mur d upgrade, paiements inities, tours de roue fidelite, deconnexions.
  • Scores Lighthouse mesures en reel : 96 a 100 sur ordinateur pour l accueil, les tarifs et les pages publiques.
v0.58.0-pagesFeature

Partage repare, menu compte avec deconnexion, theme clair sur le site

Trois irritants majeurs corriges d un coup. Le hub Partager d une page est enfin fonctionnel de bout en bout : chaque bouton ouvre un vrai outil, l email part (ou explique pourquoi il ne part pas), et le lien court se genere sur place. Un menu compte apparait au clic sur votre avatar, avec une vraie deconnexion. Et le site public se met au theme clair si vous preferez.

  • Toutes les actions du hub Partager fonctionnent
  • Menu compte et deconnexion enfin disponibles
  • Site public en clair ou sombre, au choix
  • Hub Partager d une page : les boutons QR personnalise, Templates SMS, Print PDF et Templates LinkedIn ouvraient des pages inexistantes (erreur 404 depuis leur creation). Ils ouvrent desormais les vrais outils marketing, avec l adresse de votre page pre-remplie.
  • Envoi d email depuis le hub Partager : il echouait systematiquement et en silence (et sans champ destinataire). Repare : destinataire, messages d erreur visibles, et indication honnete si l envoi est simule.
  • Lien court : genere directement dans le hub Partager avec bouton copier (avant, le bouton menait a une page sans l outil). Acces direct a l UTM Builder de la page ajoute.
  • Menu compte : cliquez sur votre avatar en bas de la barre laterale pour acceder a Mon compte, Facturation et plan, Centre d aide, et surtout Se deconnecter (il n existait aucun moyen de se deconnecter).
  • Theme clair ou sombre sur tout le site public (accueil, tarifs, templates, aide...) : un selecteur Clair / Auto / Sombre est disponible dans la navigation. Le sombre reste le defaut.
  • Administration : les modes de simulation (voir comme un plan / impersonation) sont retires, ils creaient des incoherences d affichage. Les comptes de demonstration par plan les remplacent.
v0.57.1-pagesFeature

Correctif -- l indicateur Abonnes remplace par Vues totales

L indicateur "Abonnes newsletter" du tableau de bord restait toujours a zero : les inscriptions newsletter proviennent du site public et ne sont rattachees a aucune page personnelle, elles ne pouvaient donc jamais y apparaitre. Il est remplace par "Vues totales" (le cumul reel des vues de vos pages depuis leur creation). Le compteur d abonnes newsletter est desormais visible la ou il a du sens : sur le tableau de bord d administration.

  • Plus aucun indicateur condamne a zero sur le tableau de bord
  • Tableau de bord : la carte "Abonnes" (toujours a zero par construction) devient "Vues totales", un cumul reel des vues de vos pages depuis leur creation.
  • Tableau de bord admin : nouvel indicateur "Abonnes newsletter" comptant les inscriptions reelles a la newsletter du site.
v0.57.0-pagesFeature

Campagne 361 -- audit complet du produit puis corrections en profondeur

Un audit de 15 domaines (pages, API, donnees, securite, accessibilite, performance, design) a passe tout le produit au crible, puis les corrections ont ete livrees en une vague. Les plus visibles : les statistiques qui affichaient zero en silence (rapport hebdo des agences, leads du hub Analyses, scans IA) comptent enfin juste ; l inscription newsletter fonctionne (elle echouait depuis toujours) ; les onglets d analyse d une page et la sauvegarde du design wallet sont accessibles au proprietaire (plus de blocage admin) ; le dashboard affiche les clics et le taux de clic avec les tendances ; le dashboard admin estime le MRR et la repartition par plan ; les tarifs affiches sont desormais exacts partout (Business 19 EUR) ; et les pages publiques ne contiennent plus aucun contenu invente.

  • Des chiffres enfin justes partout (stats, tarifs, compteurs)
  • Newsletter et onglets d analyse enfin fonctionnels
  • Zero contenu invente sur les pages publiques
  • Statistiques a zero en silence reparees : rapport hebdomadaire des agences, leads et conversion du hub Analyses, compteur de scans IA (les requetes visaient des colonnes inexistantes et echouaient sans erreur visible).
  • Inscription newsletter reparee : elle echouait systematiquement depuis sa creation (triple cause technique). Testee et fonctionnelle.
  • Onglets d analyse d une page (Contact, Leads, Scanner, Signature, Heatmap, Engagement, A/B) et sauvegarde du design wallet : accessibles au proprietaire de la page (renvoyaient "non autorise"). L isolation entre comptes reste verrouillee (verifie dans les deux sens).
  • Dashboard : clics 30 jours et taux de clic (CTR) ajoutes, tendances en pourcentage sur les indicateurs, top pages calcule sur les 30 derniers jours. Dashboard admin : MRR estime, repartition des comptes par plan, nouveaux comptes sur 30 jours.
  • Tarifs exacts partout : les pages d accueil et tarifs affichaient d anciens prix (Business 29 au lieu de 19 EUR). Tous les montants derivent desormais d une source unique. Chaque carte de plan a son bouton d inscription.
  • Contenu invente retire des pages publiques : temoignages et logos clients fabriques sur l accueil, fausse equipe et fausses statistiques sur la page A propos. Remplaces par du contenu factuel et verifiable.
  • Securite renforcee sur les routes publiques : protections anti-abus (limites de frequence sur newsletter, contact, QR), validation stricte des URLs testees par les integrations.
  • Accessibilite : liens sociaux et formulaires des pages publiques annonces correctement aux lecteurs d ecran, navigation clavier des fenetres modales (Echap, focus), boutons icones nommes.
  • Performance : export PDF sorti du chargement initial (3 outils marketing), page status remise en cache, tableau de bord accelere (requetes parallelisees), theme clair corrige sur les hubs de l espace connecte.
v0.56.0-pagesFeature

Reprise fondation E -- fin des doublons de navigation et des liens morts

Les entrees "Donnees" et "Analyses" de la sidebar atterrissaient sur la meme page : chacune pointe desormais son vrai tableau de bord (Donnees = vues, clics, wallet, scans ; Analyses = indicateurs agreges 90 jours de toutes vos pages, avec export PDF). Deux ecrans complets qui existaient mais n etaient relies nulle part. Egalement repares : deux liens morts (la vue agregee depuis le selecteur d analyses, le guide funnels), les cartes "Bientot" des reglages de page retirees (fonctionnalites non disponibles), et les ecrans qui renvoyaient les visiteurs non connectes vers le mauvais ecran de connexion.

  • Donnees et Analyses : deux vrais tableaux de bord distincts
  • Plus de liens morts ni de cartes "Bientot"
  • Redirection de connexion unifiee vers /signin
  • Sidebar "Donnees" -> vrai hub de donnees (vues, clics, wallet, scans QR, A/B tests) et "Analyses" -> vrai hub agrege 90 jours (KPIs, evolution, top pages, export PDF). Avant, les deux menaient au meme selecteur de page.
  • Lien "Vue agregee cross-pages" du selecteur d analyses : pointait vers une page inexistante (404), pointe desormais vers le hub Analyses.
  • Guide funnels : le lien d aide pointait vers une page inexistante (404), pointe desormais vers l article A/B testing et funnels.
  • Reglages de page (studio) : les 3 cartes "Bientot" (SEO, Confidentialite, Avance) sont retirees, plus de fonctionnalites annoncees non disponibles.
  • Connexion : 15 ecrans renvoyaient les visiteurs non connectes vers l ancien ecran de connexion par mot de passe (sans champ email, impasse) au lieu de la connexion SaaS. Tous redirigent vers /signin.
v0.55.0-pagesFeature

Reprise fondation D -- deux produits wallet enfin separes (carte de visite vs fidelite)

Deux produits "wallet" coexistaient sans separation claire : la carte de visite digitale (votre pass perso Apple/Google) et la carte de fidelite (tampons, roue). Desormais la sidebar les distingue : "Carte de visite" dans Marketing, et une section "Fidelite" dediee (Mes programmes, Scanner caisse, Caisse fidelite). Dans le studio, l onglet "Wallet" d une page devient "Pass Wallet" pour ne plus se confondre avec la carte de visite. L ancienne entree en doublon (Wallet Designer) renvoie vers le hub unique, et la page publique Carte de visite n affiche plus "Early-access Q1 2027" alors que la fonctionnalite est disponible.

  • Carte de visite et Fidelite enfin distinguees dans la navigation
  • Onglet "Pass Wallet" dans le studio
  • Page publique Carte de visite alignee sur la realite (live, pas early-access)
  • Separation claire des deux produits wallet dans la navigation : "Carte de visite" (Marketing) et section "Fidelite" aux libelles clarifies (Mes programmes, Scanner caisse, Caisse fidelite), cote utilisateur comme cote agence.
  • Onglet studio "Wallet" renomme "Pass Wallet" : le pass d une page publiee ne se confond plus avec la carte de visite perso.
  • Hub en doublon /app/wallet-designer : redirige vers le hub unique /app/wallet-card, qui affiche desormais un lien vers le pass d une page (studio).
  • Page publique Carte de visite : retrait du badge "Early-access Q1 2027" (la fonctionnalite est live, des le plan Discovery) + bouton "Creer ma carte".
  • Finition theme : le hub Cartes de visite est compatible theme clair (il etait exclu du correctif theme global pour proteger les apercus de pass).
v0.54.1-pagesCorrectif

Reprise fondation C (hotfix) -- acces proprietaire aux Donnees/Analyses + funnels robuste

Complement au correctif precedent : les onglets Donnees et Analyses d une page sont maintenant reellement accessibles au proprietaire (le filtre de securite global bloquait encore l acces avant que la page ne verifie la propriete). La page Funnels ne renvoie plus d erreur 500 (rendue robuste).

  • Donnees et Analyses enfin chargees pour le proprietaire
  • Page Funnels qui ne plante plus
  • Acces proprietaire aux Donnees/Analyses d une page : le middleware laisse passer la session pour ces deux routes (la route verifie elle-meme la propriete), au lieu d exiger un role admin.
  • Page Funnels robuste : plus de 500 (lecture utilisateur et requete protegees).
v0.54.0-pagesCorrectif

Reprise fondation C -- pages cassees reparees (Donnees/Analyses, Partage) + finitions

Plusieurs ecrans renvoyaient une erreur. Les onglets Donnees et Analyses d une page renvoyaient "non autorise" au proprietaire (ils verifiaient un acces admin au lieu de l acces proprietaire) : repare. L onglet Partage tombait en 404 (il lisait des colonnes inexistantes) : repare. Le compteur de pages de la facturation appelait une adresse absente : creee. Cote confort : le badge admin ne recouvre plus les icones en haut a droite, et le site public reste toujours en theme sombre premium (le clair/sombre est reserve a l espace connecte).

  • Donnees et Analyses d une page enfin accessibles au proprietaire
  • Onglet Partage repare
  • Badge admin qui ne cache plus les icones du haut
  • Onglets Donnees et Analyses d une page : accessibles au proprietaire (etaient en "non autorise" car verifiaient un acces admin). Securise aussi la suppression de leads (qui n avait aucune verification).
  • Onglet Partage d une page : ne tombe plus en 404 (lisait des colonnes inexistantes title/published au lieu de client_name/published_at).
  • Compteur de pages dans la facturation : adresse /api/app/pages-count creee (etait 404).
  • Badge admin (haut-droite) repositionne sous la barre : ne recouvre plus le selecteur de theme, le Project Hub ni les notifications.
  • Site public toujours en theme sombre premium : le clair/sombre est reserve a l espace connecte (corrige le rendu clair casse des pages publiques).
v0.53.0-pagesFeature

Reprise fondation B -- navigation unifiee (une seule sidebar) + Project Hub repare

La navigation etait incoherente : une barre a gauche, un mega-menu en haut qui repetait les memes liens, et un rail vertical a droite dans le builder, la sidebar disparaissant des qu on editait une page. Desormais : UNE seule sidebar a gauche partout. En editant une page, ses sous-sections (Builder, Donnees, Analyses, Leads, Contact, Wallet, Partage, Versions, Reglages) s ajoutent a la sidebar au lieu de la remplacer. Le mega-menu du haut, redondant, est retire. Et le panneau Project Hub (en haut a droite) s ouvre maintenant en plein ecran au lieu d etre cache derriere la page.

  • Une seule barre de navigation a gauche, partout
  • Le builder ne fait plus disparaitre la navigation
  • Project Hub qui s ouvre enfin correctement
  • Navigation unifiee (principe une-seule-sidebar) : shell de nav constant sur tous les ecrans. En editant une page, ses 9 sous-sections sont injectees dans la sidebar (fin de la sidebar qui disparaissait dans le builder + suppression du rail vertical droit et du sous-menu mobile).
  • Mega-menu du haut retire : il dupliquait les liens de la sidebar (Pages/Analyses/Donnees/Equipe/Compte). Moins de chrome, plus de clarte.
  • Project Hub (haut-droite) : le panneau s ouvre desormais en plein ecran (il etait pince a la hauteur de la barre et cache derriere la page a cause du flou du header). Marque "demo" car les donnees sont des exemples.
v0.52.0-pagesCorrectif

Reprise fondation A -- theme clair repare (tokens de theme)

Le mode clair etait casse : de nombreuses cartes et panneaux restaient noirs sur fond blanc avec du texte illisible, car ils utilisaient des couleurs codees en dur au lieu des couleurs du theme. Tous les ecrans de l espace (dashboard, facturation, leads, donnees, fidelite, integrations, parametres, agence, admin) ont ete migres vers les variables de theme. Le mode clair et le mode sombre s affichent desormais correctement. La banniere cookies, presente sur toutes les pages, est aussi corrigee.

  • Mode clair desormais lisible sur tout l espace
  • Mode sombre inchange
  • Banniere cookies corrigee partout
  • Theme clair repare sur tout l espace authentifie : les surfaces suivent les couleurs du theme selectionne, plus de bloc noir illisible en clair. Le mode sombre reste identique.
  • Banniere de consentement cookies migree aux couleurs du theme (offenseur global present sur toutes les pages).
v0.51.0-pagesFeature

EPIC Fidelite vague 2 -- designer de roue premium + scan caisse hors-ligne + page produit fidelite

Trois ameliorations de la fidelite. Le commercant peut maintenant reordonner ses lots par glisser-deposer, editer chaque lot (couleur, poids, stock) et lui associer une image affichee sur la roue. Le scanner de caisse devient resilient : un scan fait hors connexion est mis en file et synchronise automatiquement au retour du reseau. Enfin, une page publique dediee presente le produit fidelite (roue, parrainage, carte wallet) aux prospects.

  • Reordonner et personnaliser les lots de la roue (image, couleur)
  • Scan caisse qui ne perd aucun passage, meme hors-ligne
  • Page produit fidelite pour convertir les prospects
  • Designer de roue premium : reordonner les lots par glisser-deposer, editer un lot existant (libelle, couleur, poids, stock) et ajouter une image par lot, affichee directement sur la roue. Apercu en direct.
  • Scan en caisse hors-ligne : les scans realises sans connexion sont mis en file localement, un bandeau indique le nombre en attente, et la synchronisation se fait automatiquement (ou manuellement) au retour du reseau. Plus aucun scan perdu.
  • Page produit publique /fidelite : presentation du programme de fidelite (roue a tourner, parrainage viral, carte Apple/Google Wallet, scan caisse, portail client) avec roue de demonstration, lien ajoute au menu Produit.
v0.50.0-pagesFeature

EPIC Fidelite -- roue a tourner premium dans l espace client + landing brandee

La roue a tourner devient une vraie experience. Le client la fait tourner directement depuis son espace fidelite (avant : un simple bouton sans roue), avec les lots affiches sur la roue, une animation qui s arrete pile sur le lot decide par le serveur, et une celebration en cas de gain. La landing publique reprend la meme roue, aux couleurs du programme. Cote commercant, un apercu en direct montre la roue telle que la verra le client.

  • Roue a tourner premium, jouable depuis l espace client
  • Landing brandee : lots affiches sur la roue, aux couleurs du programme
  • Apercu en direct de la roue cote commercant
  • Espace client /my : la roue de fidelite est jouable avec une vraie roue animee (lots affiches sur la roue). Le tour reste gagne par parrainage et le bouton n est actif que si un tour est reellement disponible.
  • Landing publique /l : roue reconstruite aux couleurs du programme (logo au centre, libelles lisibles sur chaque part, pointeur), animation qui s arrete sur le lot decide par le serveur.
  • Experience : celebration (confetti) en cas de gain, respect du mode mouvement reduit, lecture vocale du resultat (accessibilite), et distinction claire entre un gain, un lot perdant et l absence de lot.
  • Cote commercant : apercu en direct de la roue dans la configuration, pour voir le rendu client avant publication.
v0.49.0-pagesFeature

EPIC Fidelite -- utiliser une recompense en caisse (securise) + funnel d upgrade

Le commercant peut deduire une recompense du compteur d un client de facon sure : verification du solde (points ou tampons) et du stock, impossible d utiliser deux fois la meme recompense en rupture. Et les fonctionnalites Business (roue, scan, portail) affichent un appel a passer au plan superieur pour les plans inferieurs.

  • Utiliser une recompense en caisse, de facon securisee
  • Appel a l upgrade sur les fonctionnalites Business
  • Utilisation de recompense en caisse : verification atomique du solde (points ou tampons) et du stock, deduction et historisation (event), impossible d utiliser une recompense en rupture ou sans solde suffisant.
  • Funnel : les fonctionnalites de fidelite reservees au plan Business (roue, scan, portail client) affichent un bouton Passer au plan Business pour les comptes de plan inferieur.
v0.48.0-pagesFeature

EPIC Fidelite -- boucle complete : carte au wallet 1-clic sur /l, roue jouable dans /my, designer de carte

La boucle de fidelite virale est complete bout en bout. Un visiteur de la landing rejoint le programme et ajoute sa carte a Apple/Google Wallet en un clic ; s il arrive via un lien de parrainage, le parrain gagne un tour de roue qu il peut jouer depuis son espace. Le commercant peut aussi personnaliser le visuel de sa carte (couleurs, logo, fond) avec apercu en direct.

  • Ajout de la carte au wallet en 1 clic depuis la landing
  • Boucle parrainage -> tour de roue jouable dans l espace client
  • Personnalisation visuelle de la carte avec apercu en direct
  • Landing /l : bouton Rejoindre + ajouter au wallet -> cree la carte du client et l ajoute a Apple/Google Wallet en 1 clic (reutilise les generateurs de pass existants), et active le parrainage si on arrive via un lien ?ref=. Partage -> landing -> carte au wallet -> le parrain gagne un tour : la boucle est bouclee.
  • Portail /my : un client qui a gagne des tours de roue grace a ses parrainages peut les jouer directement depuis son espace (tirage cote serveur).
  • Designer de carte (commercant) : couleur principale et d accent, logo, image de fond, avec apercu en direct. La marque du programme est consommee par la carte Wallet.
v0.47.0-pagesFeature

EPIC Fidelite -- configuration commercant : creer sa roue, ses lots et ses recompenses depuis l interface

Le commercant peut desormais TOUT configurer depuis l interface (avant : seulement par API). Sur la page d un programme de fidelite, nouvel ecran Roue et recompenses : creer la roue (toujours gagnant ou cotes personnalisees), ajouter et supprimer ses segments (libelle, lot, couleur, poids, stock), et gerer le catalogue de recompenses.

  • Configuration de la roue et des recompenses depuis l interface commercant
  • Catalogue de recompenses gerable (creation / suppression)
  • Ecran de configuration commercant (page Roue et recompenses sous un programme de fidelite) : creation de la roue, gestion des segments, catalogue de recompenses. Rend la roue et les recompenses configurables sans passer par l API.
  • API recompenses : creation, liste, modification et suppression du catalogue de recompenses (owner only).
v0.46.1-pagesFeature

EPIC Fidelite (suite) -- roue jouable sur la landing publique /l + capture de parrainage

La roue a tourner devient jouable : page publique /l/[programme] avec roue animee (le resultat est decide cote serveur, l animation l illustre) et capture du parrainage via un lien ?ref=. L ajout de carte au wallet en 1 clic reste a venir.

  • Roue a tourner jouable sur une page publique
  • Lien de parrainage ?ref= qui active le tour du parrain
  • Landing publique /l/[programme] : roue a tourner jouable (saisie email puis tourner -> lot annonce par le serveur), et activation du parrainage quand on arrive via un lien ?ref= (debloque le tour de roue du parrain).
v0.46.0-pagesFeature

EPIC Fidelite virale (1/2) -- roue a tourner, portail client, parrainage (backends prouves + espace /my)

Premiere vague de l epic fidelite : la fidelite devient un moteur d acquisition. Roue a tourner avec tirage cote serveur (toujours gagnant par defaut, ou cotes personnalisables), portail client final accessible par lien magique (cartes, depenses, progression, recompenses), et parrainage viral (un client parraine un ami, l ami active sa carte, le parrain gagne un tour de roue). Les nouvelles donnees sont isolees par client des la conception.

  • Roue a tourner toujours-gagnant ou cotes personnalisables, tirage serveur anti-triche
  • Portail client par lien magique : cartes, depenses, recompenses, isolation stricte
  • Parrainage viral : parrainer un ami fait gagner un tour de roue
  • Roue a tourner : moteur de tirage cote serveur (anti-triche), mode toujours-gagnant par defaut ou cotes personnalisables par segment, stock par lot, anti-fraude (nombre de tours max + delai entre tours). Le tirage et la consommation du droit a tourner sont atomiques (impossible de gagner deux fois le meme droit).
  • Portail client /my : connexion par lien magique envoye par email (sans mot de passe). Tableau de bord avec ses cartes, ses depenses (graphique), sa progression de palier et ses recompenses disponibles.
  • Parrainage viral : depuis son espace, un client genere un lien de parrainage. Quand l ami active sa carte, le parrain gagne un tour de roue. Anti auto-parrainage.
  • Securite : les nouvelles tables (roue, segments, tours, parrainages, sessions client) sont protegees des leur creation (acces service + proprietaire uniquement, zero lecture anonyme). Isolation du portail verifiee : un client ne voit jamais les donnees d un autre.
v0.45.0-pagesFeature

Sprint 53-54 -- securite CRM/chat, navigation coherente, god-mode admin, sync carte<->page

Durcissement securite et coherence. Fuite de lecture anonyme fermee sur les tables CRM/business (clients, leads, devis, contacts...) et trou d integrite du chat interne (lecture/ecriture/suppression anonymes) ferme en base. La barre laterale reflete desormais votre ROLE reel et non la zone visitee (un administrateur ne voit plus le menu d un utilisateur standard en passant sur /app). L administrateur (proprietaire) retrouve un acces total : les blocs Pro du builder ne sont plus verrouilles a tort (cause : le contexte de plan manquait dans le studio). L identite d une page se propage a la carte Wallet liee a la sauvegarde.

  • Securite : fermeture de la lecture anonyme sur 7 tables CRM/business (clients, leads, contacts, devis...) + fermeture lecture/ecriture/suppression anonymes sur le chat interne. Verifie : la cle publique ne lit plus ces tables (401), service_role intact.
  • Navigation : la barre laterale suit le role reel de l utilisateur, plus la zone du site. Un administrateur garde son menu sur /app, /agency et le studio (le studio reste minimaliste, par choix).
  • Acces administrateur : centralisation du fournisseur d entitlements dans le shell -> les blocs Pro du builder et les fonctionnalites gated sont deverrouilles pour l administrateur sur toutes les zones (auparavant verrouilles a tort dans le studio).
  • Carte Wallet : l identite partagee d une page (nom, poste, entreprise, email, telephone, photo, reseaux) se propage automatiquement a la carte Wallet liee a la sauvegarde de la page. Champs propres a la carte (visuel, couleurs) jamais ecrases.
  • Editeur de carte : les champs synchronises depuis la page deviennent en lecture seule avec un lien vers la page (coherence d edition).
  • Navigation publique : les entrees du mega-menu qui menaient les visiteurs deconnectes vers un mur de connexion pointent desormais vers des pages publiques.
v0.44.5-pagesFeature

Sprint 52 -- GTM polish (changelog repare, legal conforme, gate MCP, suppression carte)

Finition pre-lancement. Le changelog public lit desormais sa source versionnee (src/data/changelog.ts) au lieu d une table dont la requete selectionnait une colonne inexistante (d ou "Aucune entree" alors que 8 lignes etaient publiees). Pages legales : vraies coordonnees d entite + alignement sur les 6 plans + correction TVA (franchise art. 293 B, pas de TVA 20%). Lien de retour legal contextuel. Message du gate MCP rendu coherent. Bouton de suppression sur les cartes Wallet. Donnees de test loyalty nettoyees.

  • Changelog : la page /changelog lit src/data/changelog.ts (convention DUAL). L ancienne version interrogeait pages_changelog en selectionnant une colonne change_type inexistante -> requete en erreur -> liste vide.
  • Legal : mentions legales + CGU + CGV cablees avec les vraies coordonnees (DIGISIMMA EI, SIRET 923 225 452 00013, Arpajon). TVA non applicable art. 293 B CGI (etait "TVA 20% incluse"). Plans alignes sur les 6 tiers (Business 19, etait 29). Validation juridique = action restante (flag conserve).
  • Legal : lien de retour contextuel (utilisateur connecte -> son espace SaaS par role ; visiteur -> accueil), au lieu d ejecter systematiquement vers la landing.
  • Integrations : message du gate MCP rendu coherent -> "cles API et serveur MCP : plans Studio et Agency" (Studio lecture, Agency complet), au lieu de deux phrases contradictoires.
  • Wallet cards : bouton de suppression sur chaque carte du hub (confirmation + appel de l endpoint DELETE existant + retrait immediat de la liste).
  • Hydratation : date du changelog formatee en UTC (deterministe serveur/client). Nettoyage de 4 programmes loyalty de test (compte owner, 0 carte). JSON-LD offerCount 4 -> 6.
v0.44.4-pagesCorrectif

Sprint 51 -- home / navbar / landing public (header unifie + fix CTA Templates + kill badge dev)

La home utilisait LandingHeader alors que tout le reste du site utilise PublicNavigation -> incoherence visuelle. Home migree sur PublicNavigation + PublicFooter (meme header/footer que /pricing, verifie par signatures HTML). CTA Templates du hero /app/templates (mur login) -> /templates public. Badge dev "Sprint 17 LIVE" -> value-prop. Zone publique uniquement.

  • app/page.tsx : header LandingHeader -> PublicNavigation + footer custom -> PublicFooter. / a le meme header/footer que /pricing (signatures "SaaS agency-ready" + "Remplacez Linktree" sur les deux).
  • HeroSection : CTA Templates /app/templates (groupe authentifie -> signin) -> /templates (galerie publique).
  • HeroSection : badge dev public "Glassmorphism 2026 - Sprint 17 LIVE" -> "Carte Apple Wallet native - 14 jours gratuit". Mega-menu PublicNavigation garde des liens /app|/agency (auth) = differe.
v0.44.3-pagesFeature

Sprint 50 suite -- loyalty 0->1 enrolment marchand (UI cablee sur l endpoint existant)

Cause racine du "loyalty reste a 0" : le backend POST /api/loyalty/cards (le marchand enrole un client) existait mais aucune UI ne l appelait -> 3 programmes actifs tous a 0 carte. Ajoute la modal d enrolement dans le dashboard vendor, cablee sur l endpoint existant. Carte livrable (lien Apple Wallet au succes). Pass loyalty verifie (200 + pkpass signe). Scope marchand only ; self-signup QR public differe.

  • VendorLoyaltyDashboardClient : modal Enroler-un-client (nom/email/telephone, email-ou-telephone requis) + bouton header -> POST /api/loyalty/cards existant + refetch silencieux (cards_total flip 0->1 live).
  • Success state : serial + lien telechargement Apple Wallet /api/wallet/apple/loyalty/[cardId] -> la carte est livrable au client.
  • Preuve : write-path MCP insert->1->delete->0 (cleanup) + pass loyalty 200 application/vnd.apple.pkpass 8943 bytes. INTERDITS : zero modif lib/wallet/* + endpoints wallet/loyalty.
v0.44.2-pagesFeature

Sprint 49 close + Sprint 50 cause racine upload (downscale studio)

Ferme le reste Sprint 49 (redirects alias + render-rule status, PAS de refactor unification). Sprint 50 : corrige la cause racine du pkpass surdimensionne en bornant la dimension des images A L UPLOAD cote studio (sans toucher le pass-builder, INTERDIT). Freeze diagnostique (poids image, pas de boucle). Loyalty customer E2E + sync carte<->page = suite ciblee (navigateur).

  • next.config : redirects alias /vendor -> /vendor/scan, /pro -> /pricing (evite la chute sur /[slug] public 404).
  • config/navigation : type NavItemStatus (live|gated|soon|hidden) + champ status + render-rule cablee dans les 4 renderers + filtre lib (hidden jamais rendu).
  • lib/images/downscale-client : downscale canvas (maxDimension 1280, sans dep) cable avant upload dans ImageUploader + editeur wallet -> previent les images surdimensionnees (cause du pkpass 5MB).
  • Freeze editeur diagnostique : pas de boucle rAF/canvas (paint image lourde), mitige par le downscale. INTERDITS respectes : zero modif lib/wallet/* + endpoints wallet/loyalty.
v0.44.1-pagesFeature

Sprint 48-AUTH UNBLOCK -- cascade 401 admin + builder + mur agence (middleware dual auth)

Root cause : le middleware gatait /api/admin + /api/pages + pages admin legacy sur le seul cookie maison dashboard_auth ; un admin connecte via Supabase Auth ne l a pas -> 401 en cascade (builder ne sauvegarde pas, insights/impersonate 401, rebond mur mot de passe agence). Le middleware accepte desormais aussi la session Supabase ; chaque route applique role/ownership. Apple Wallet 16453 preserve.

  • middleware : accepte session Supabase (role=admin pour /api/admin + pages legacy, session+ownership pour /api/pages) en plus du cookie legacy. Redirect /signin au lieu de /login.
  • PATCH /api/pages/[id] (builder studio), GET /api/admin/insights/[id], POST /api/admin/impersonate, /studio/[id]/data : plus de 401 en session admin.
  • /admin/wallet-config, /admin/share-analytics, /admin/bulk-qr, /admin/email-signature : accessibles en session admin (plus de rebond mur mot de passe agence).
  • lib/auth/page-access.ts : helper getPageAccess (admin | owner pages_pages.user_id/agency_id | token edition) applique a /api/pages/* (route, publish, variants, goals, edit-token).
  • /api/pages GET scope (admin = toutes, sinon ses pages) + POST assigne user_id/agency_id proprietaire.
  • Defense in depth : requireAdminDual sur /api/admin/insights + /api/admin/data. INTERDITS respectes : zero modif builders wallet + endpoints /api/wallet + permissions core + middleware core (enrichissement only).
v0.43.0-pagesFeature

Sprint 43 WALLET DESIGNER UNIFIE -- FUSION vCard|Loyalty + DRAG-DROP + PRESETS + CACHE

Phase 0 audits forensiques 3 sous-agents + advisor + Supabase prod : A et B PAS doublons. B (4 pages publiees prod) INTACT. Etend /app/wallet-card avec type switcher vCard|Loyalty + Layout drag-drop + presets metier + cache localStorage. Apple Wallet baseline 16453 preserve.

  • P1 WalletCardEditorClient type switcher vCard|Loyalty + 5 nouveaux tabs loyalty (Programme/Regles/Recompense/Images/Style) + save dispatch endpoints
  • P1 Migration 053 layout_json colonnes + GIN indexes pages_wallet_cards + pages_loyalty_programs (applied Supabase MCP)
  • P1 components/wallet-card/ColorPicker + Toggle portes de B (dual input ARIA accessible)
  • P1 API /api/loyalty/programs/[id]/route.ts (GET + PATCH + DELETE) comble gap Sprint 33.0
  • P2 components/wallet-card/LayoutEditor.tsx drag-drop @dnd-kit pattern REUSE Builder.tsx Sprint 21.1 (texte/couleur/image upload)
  • P3 lib/wallet-cards/presets.ts 4 vCard + 5 loyalty metiers (cafe/coiffeur/restaurant/gym/esthetique) 1-click apply
  • P3 Autosave localStorage create-mode debounce 2s + restore au mount + badge UI brouillon enregistre/restaure
  • INTERDIT respecte : zero modif lib/wallet/* builders + endpoints /api/wallet/apple/* + Designer B intact prod-active 4 pages publiees
  • Defer Sprint 43.1 : decomposition Editor sous-composants + WalletPreview iPhone port + categorizeWalletError + fix zod desync B + quota plan enforce + tests E2E + WYSIWYG canvas avance
v0.30.4-pagesCorrectif

Sprint 30.4 REAL EXHAUSTIVE 404 AUDIT + FIX ALL BROKEN LINKS

6 real 404 broken links fixed (Sprint 30.3 audit etait incomplet). Methode audit reel : extract all hrefs config/navigation + mega-menu + app/page.tsx + components/navigation -> verify backing file exists -> live prod check curl HEAD. Apple Wallet 16453 bytes preserve 3 checkpoints.

  • F1 /app/wallet-card (sidebar line 183, Flavien-reported Sprint 30.3) MISSING -> redirect /wallet-card (public Sprint 22+)
  • F2 /agency/pages (sidebar line 122) + /agency/pages/new (quickAction line 112) MISSING -> redirects /studio + /studio/new
  • F3 Landing footer /help/mcp + /help/webhooks 404 -> fix href /help/api-mcp/mcp-server + /help/api-mcp/webhooks (articles existants)
  • F4 Mega-menu Deconnexion /api/auth/signout 404 -> fix href /api/auth/logout (route existante)
  • Methode Sprint 30.4 audit reel via cross-refs filesystem superieure a Sprint 30.3 pattern matching vapor only
v0.30.3-pagesCorrectif

Sprint 30.3 AUDIT EXHAUSTIF + KILL VAPOR FEATURES

9 vapor pages fixees + 1 orphelin nav link resolu. ZERO link menu sidebar pointant vers page "en construction" ou 404. Apple Wallet 16453 bytes preserve 3 checkpoints.

  • F1 kill 4 stubs "construction Sprint 14" : /app/pages -> /studio, /app/team -> /agency/team ou EmptyState upgrade, /agency/settings -> /app/settings, /agency/billing -> /app/billing
  • F2 convert 4 "Sprint 23 soon" EmptyStates : /app/email-signature + /app/bulk-qr -> redirects /app/marketing/* (Sprint 23 functional), /app/utm-builder + /app/scan -> EmptyState propre (features page-scoped via /studio)
  • F3 /admin/integrations orphelin nav line 95 -> permanentRedirect /app/integrations (PlanGuard studio+)
  • INTERDITS respectes : zero modif lib/auth/* lib/billing/* lib/wallet/* api/billing/* api/wallet/* middleware/* next.config + VersionBadge Sprint 29.3 + Sentry/PostHog Sprint 30.1 preserves
v0.30.2-pagesFeature

Sprint 30.2 FRONTEND TIGI VISUAL RESCUE

Port pages publiques manquantes TIGI vers main + adaptation Plans v3 (templates galerie + sell-white-label kit vente + pricing CTA agency + HelpHub premium banner). Apple Wallet 16453 bytes preserve 3 checkpoints.

  • F1 /(public)/templates + [slug] galerie publique 17 templates + TemplatesShowcase 162 LOC layout SVG mockups distincts par type (classic/showcase/bento/editorial/profile-card/minimalist)
  • F2 /sell-white-label kit vente 605 LOC (ROI calc + value props + comparison + FAQ + CTA demo) + /pitch 185 LOC imprimable - conversion Agency 99 EUR P0
  • F3 pricing Agency White-Label CTA block + lien /sell-white-label + Plans v3 6 tiers description metadata
  • F3 HelpHubClient Premium banner + UpgradeModal mount + Plans v3 prices corriges (Discovery 3 + Pro 9 + Business 19 + Studio 49 + Agency 99)
  • Business 29 EUR -> 19 EUR sync Plans v3 schema
v0.30.1-pagesFeature

Sprint 30.1 PLAYWRIGHT + LIGHTHOUSE + SENTRY + POSTHOG OBSERVABILITY FOUNDATIONS

5 features observability (CI workflow + Lighthouse config + Sentry doc + PostHog catalog 38 events + 11 nouveaux tests E2E Sprint 29.x). Apple Wallet 16453 bytes preserve 3 checkpoints.

  • F1 tests/e2e/gating-v29.spec.ts (NEW) : 11 tests Sprint 29.1/29.2/29.3 coverage (help articles + whitelabel API + plans v3 + gating surfaces + VersionBadge + wallet baseline) - 11/11 PASS chromium
  • F2 Lighthouse CI : .lighthouserc.json 5 URLs publiques + @lhci/cli devDep + assertions warn-only perf/a11y/best-practices/seo
  • F3 Sentry alerting setup doc : code 100% pret (3 config files + global-error + helpers), env vars + Slack alerting Dashboard manual setup defer
  • F4 PostHog events catalog 38 type-safe : 12 core + 22 nouveaux (auth/page/gating/wallet/pricing/tour). 10 wired runtime + 28 defer wiring + 3 funnels recommandes
  • F5 .github/workflows/pages-e2e-lighthouse.yml : CI E2E (Playwright subset + plan-permissions) + Lighthouse autorun, trigger PR + push main
v0.29.3-pagesFeature

Sprint 29.3 PLANGUARD PATTERN + VERSION DISPLAY + CLOSURE DEFERS

PlanGuard reusable wrapper + apply /app/integrations studio+ + VersionBadge sous logo 5 emplacements + next.config NEXT_PUBLIC_APP_VERSION. Stripe LIVE skipped (zero STRIPE env vars Vercel).

  • F1a PlanGuard wrapper reusable autour GatedOverlay (server + client indirection) - API simplifiee minPlan + feature + context props
  • F1b /app/integrations wrap PlanGuard studio+ - API keys + MCP server + webhooks + CRM integrations gated
  • F1c VersionBadge component link /changelog + 5 emplacements (AppSidebar app/agency/admin + LandingHeader + PublicFooter + PublicNavigation)
  • F1c next.config.mjs expose NEXT_PUBLIC_APP_VERSION depuis package.json build-time
  • Stripe LIVE Phase 2+3 SKIPPED : zero STRIPE_* env vars Vercel production. Defer 29.4 quand SIREN actif + keys pushed
  • F1d /studio/wallet auth uniformisation DEFER : risk/reward defavorable, Discovery+ ont /app/wallet-designer existant
v0.29.2-pagesFeature

Sprint 29.2 PERMISSIONS HELPERS + GATING SURFACES : closure defers Sprint 29.1

4 features Plans v3 (helpers permissions etendus + GatedOverlay multi-plan + wallet gating + whitelabel gating + billing handler auto-checkout). Apple Wallet 16453 bytes preserve.

  • F1 lib/auth/permissions.ts : 8 nouveaux helpers (hasFullAccess + getEffectivePlan + hasAgencyEntitlements + canAccessWhiteLabel + canAccessABTesting + canAccessHeatmap + canAccessUnlimitedPages + canAccessMCPServer + getMaxPages + getMaxLeadsMonthly + requirePlan)
  • F1 tests/plan-permissions : 33 assertions adaptees Plans v3 -> PASS 100%
  • F2 GatedOverlay etendu : prop unlocked + targetPlan + ctaLabel (5 plans Discovery/Pro/Business/Studio/Agency)
  • F2 /app/wallet-designer hub : GatedOverlay premium wallet gating discovery+
  • F3 /agency/whitelabel hub : GatedOverlay studio+ + form GET/PUT /api/agency/whitelabel
  • F4 BillingClient : handler ?upgrade=<plan>&period=<period> auto-checkout Stripe (fallback 503 TEST mode)
  • canAccessAgencyView loosen pour role=agency any-plan (membres equipe agence-1)
v0.29.1-pagesFeature

Sprint 29.1 TIGI FUSION : Gating monetization + Whitelabel API + Help articles + Public navigation

7 features portees depuis backup TIGI vers main, adaptees Plans v3 6 tiers. Apple Wallet baseline 16453 bytes preserve.

  • F1 content/help/agency/ 3 articles MDX (whitelabel + api-mcp + billing) + category agency dans loader
  • F2 UpgradeProvider + useUpgradeGate hook (compatible Plans v3 6 tiers via hasAgencyAccess role/plan check)
  • F3 UpgradeModal monetization 3 plans focus upgrade-path Pro 9/89 + Business 19/189 + Agency 99/990 EUR
  • F4 GatedOverlay glassmorphism reusable pour features Agency-only
  • F5 /api/agency/whitelabel GET+PUT endpoint + seed agency-white-label-demo
  • F6 PublicNavigation 3 mega-menus + PublicFooter + layouts help/integrations/docs
  • F7 tests/plan-permissions reference + inventories MONETIZATION + reference 360-NEXUS-PANTHERA
  • Em-dashes stripped : 36 occurrences cross-files (3 MDX + GatedOverlay + 3 inventories) remplaces par : (rule canonique)
v0.28.10-pagesFeature

Templates Unification MP1 - reprise main thread

Galerie templates unifiee : source unique pages_templates (17 templates riches), TemplatePreviewModal premium 3-cols, bouton Apercu + Utiliser direct sans friction API key.

  • /api/v1/templates retourne TemplateRow normalisee depuis snapshot JSONB (15 categories metier)
  • /api/templates/[slug]/clone source pages_templates + fallback templates_premium retrocompat
  • TemplatesClient grid 4 cols + TemplateCard avec Apercu (oeil) + Utiliser direct sans friction
  • TemplatePreviewModal premium 3-cols : info + iframe live device toggle + actions + similaires
  • Filtres enrichis : category + layout + premium + featured + search + tri (featured/clones/recent/rating)
  • /app/templates redirect serveur vers /studio/templates (deduplication)
v0.28.9-pagesFeature

Hotfix Gaps + Polish

6 fixes chirurgicaux post Sprint 28.8 : email-share + changelog data + PDF export + marketing tracking + integrations test connection.

  • /api/marketing/email-share endpoint Resend + rate limit 10/min + audit log
  • src/data/changelog.ts data statique versionne 15+ tags
  • PDF export /app/analyses via react-pdf branded
  • Marketing usage tracking 6 features + table pages_marketing_usage migration 042
  • Integrations test connection real API call par type (notion/calendly/stripe/resend/slack/discord/telegram/webhook)
  • /app/refer canonical (audit /app/referrals confirme inutile)
v0.28.8-pagesFeature

Paroxysme All Pages - 8 sub-agents

~6800 lignes livrees par 8 sub-agents Task tool paralleles. 25+ pages completes au paroxysme.

  • /app/dashboard 6 KPIs reels + /studio Mes pages ViewToggle Grid/List
  • /app/leads + /app/data hub 5 tabs + /app/analyses global KPIs
  • /studio/marketing enrich + /app/wallet-card NEW + /app/integrations 12 cards
  • /app/billing enrich Stripe + /app/refer NEW parrainage + notifications enrich
  • 13 items APP_NAVIGATION relinkes vers bonnes routes
  • /about NEW + /contact enrich + /changelog filter par type
  • Insights 12 tabs all functional + Share Hub 8 channels NEW
  • 4 specs E2E Playwright 45 test cases + Lighthouse PageSpeed + smoke 100 endpoints
  • Migration 041 pages_referrals appliquee
v0.28.7-pagesFeature

Templates Unification MP1-retry

12 templates premium contenus metier appliques DB (5 insert + 7 update). Main thread retry apres MP1 sub-agent "Prompt too long".

  • seeds/templates-premium-v3.ts 1248 lignes 12 templates contenus reels (Le Gourmet, NextStack, Maison Lambert, etc.)
  • seeds/apply-templates-v3.ts script Supabase upsert idempotent
  • /preview/restaurant-gastronomique route iframe OK pour TemplatePreviewModal
v0.28.6-pagesFeature

Night Session 2 - 5/6 MPs

6 sub-agents Task tool en parallele worktrees isoles. 5/6 success (MP1 fail). ~6800 lignes total.

  • MP2 Agency 5 pages completes (clients/team/api-keys/webhooks/custom-domains) 2797 lignes
  • MP3 Insights 3 tabs ab/heatmap/engagement + Marketing hub 998 lignes
  • MP4 Backend API v1 + MCP 4 tools + Sentry + rate-limit Upstash 524 lignes
  • MP5 8 hubs/pages 404 transformes en hubs reels 1178 lignes
  • MP6 5 loading skeletons + 3 specs E2E + TemplatePreviewModal enrich 1301 lignes
  • pages_users role=admin + plan=agency flavien@digisimma.com (DB UPDATE)
v0.28.0-pagesFeature

Phase 1 Admin 5 pages complete

Phase 1 admin paroxysme : templates curation + cross-tenant pages + global analytics + users management + audit log real DB.

  • /admin/templates : table + filters + bulk + Top 5 clones
  • /admin/pages cross-tenant + suspend/reactivate + RowActions
  • /admin/analytics : 6 KPI cards + 3 charts Recharts
  • /admin/users-saas : table + inline role/plan + detail drawer
  • /admin/audit-log : real DB pages_audit_log + filters + export CSV
  • Migration 028 pages_audit_log extend (severity + actor_email + 4 indexes)
v0.27.0-pagesFeature

Launch Clean 8 fixes

11 fixes audit Claude Chrome ramenes a 8 effectifs (4 NO-OP confirmes).

  • F1 hide 4 admin stubs via enabled flag (Analytics/Pages/Templates/Users)
  • F2 hide 5 agency stubs + add Projects nav
  • F4 /app/notifications EmptyState MVP
  • F5 /app/settings wire SettingsClient Sprint 19
  • F7 /agency/projects role check admin platform plan=agency
  • F11 /admin/audit-log MVP table + filters + 6 mock entries
v0.26.4-pagesCorrectif

Recovery Builder.tsx Sprint 20 Popups

Restore Builder.tsx depuis v0.25.0-pages : 611 lignes Popups + dnd-kit. Regression entre v0.25 et v0.26 corrigee.

  • Builder.tsx restored : BrandingPopup + SettingsPopup + AnalyticsPopup + WalletPopup imports
  • PopupType state 5 valeurs + shortcuts Cmd+K/B/,/Shift+A + Alt+W
  • dnd-kit drag-drop Sprint 21.1 preserve
v0.26.3-pagesFeature

Paroxysme SEO + perf

Schema.org JSON-LD + next/font auto-host + Twitter cards.

  • Schema.org Organization + WebSite SearchAction + SoftwareApplication AggregateOffer
  • next/font/google auto-host Plus Jakarta + Inter + JetBrains Mono (CSS vars alignes tailwind)
  • Twitter card summary_large_image + OpenGraph siteName + keywords 7 termes
v0.26.2-pagesFeature

Consolidation 6 sub-agents

Landing premium 11 sections + Pricing calculator + Help center 24 articles MDX + Templates v2 + Lighthouse + Tests E2E.

  • Landing page premium 11 sections (Hero/Logos/Problem/Features/Templates/Testimonials/Pricing/Integrations/FAQ/CTA/Tracking)
  • Pricing calculator interactif slider log scale 100-1M vues
  • Help center 24 articles MDX (3 par 8 categories) + search Fuse.js client
  • seeds/templates-premium-v2.ts 12 templates types Block
  • 4 specs E2E + smoke 64 endpoints + HTML report
v0.26.1-pagesCorrectif

Emergency Middleware Preventive Fix

Recovery Supabase Postgres overload : middleware getSession + Promise.race 3s + let-pass.

  • middleware.ts : getUser() (API call sync) remplace par getSession() (JWT local) wrapped Promise.race 3s
  • lib/auth/user.ts : same pattern + Promise.race 3s sur pages_users
  • Documentation EMERGENCY-RECOVERY + SUPABASE-SHARED-OVERLOAD-RECOVERY-PLAN + SUPABASE-MIGRATION-PLAN-DEDICATED-PROJECT
v0.26.0-pagesFeature

MP1 Auth Security partiel

5 auth pages + 3 error pages premium + permissions.ts helpers.

  • Login loop root cause : window.location.href = next (race condition cookie sync)
  • Pages /signin /signup /forgot /reset /verify-email premium
  • Pages errors 404 + 500 + 503 premium glassmorphism
  • lib/auth/permissions.ts 12 helpers role/plan gating