PilotageReste à faire

Reste à faire


title: Reste à faire description: La seule liste de ce qu’il reste à faire pour BoostEcom : actions du propriétaire, travail de l’app, décisions ouvertes.

Page unique. C’est la seule liste de ce qui reste à faire, pour le propriétaire comme pour l’app. Aucune autre page de cette documentation ne tient de liste « à faire », de statut ou de backlog : elles décrivent le comment et renvoient ici pour le quoi. Les items eux-mêmes restent dans backlog/ de l’app, un fichier par item (ils alimentent le Dev Studio et le manifeste de la flotte) : cette page en est le récit, l’ordre et les dépendances, pas une copie. Une tâche finie se retire d’ici (et part dans « Fait récemment ») dans la même PR que le travail.

État actuel en une ligne

BoostEcom est en ligne sur https://www.boostecom.app, déployé par Vercel, sans CI GitHub depuis le 2 octobre 2026 (facturation, platform-ops/2950), avec Stripe en mode test ; le nettoyage « rollback-first » des surfaces opérateur internes (49 PR, #1685 à #1733, du 3 au 8 octobre) est fusionné, ses résidus restent à solder, et la documentation d’ingénierie déménage de l’app vers ce dépôt.

Point de reprise pour une prochaine session

Relevé du 8 octobre 2026 (lecture seule, sans E2E) :

  • app : main = cee5f0f0 (PR #1733) ; aucune PR ouverte ; origin n’a que main ;
  • Vercel : sept builds de production en erreur le 8 octobre (#1723 à #1729), corrigés par #1730 ; le build de production est la seule porte automatique ;
  • gardes rapides (node, sans dépendance) : pnpm docs:claims rouge (13 comptes périmés : crons 71 contre 70, routes API 460 contre 456, clés de .env.example 184 contre 182), pnpm docs:links rouge (32 liens morts, dont 28 dans un seul audit du 19 septembre), pnpm fleet:derive:check rouge (manifeste de la flotte périmé) ; pnpm app:links, pnpm backlog:ids et pnpm fleet:scope verts ; les 70 chemins de crons de vercel.json résolvent ;
  • backlog : 402 items ouverts, 877 archivés ; 309 prêts, 32 pris ou en cours, 59 bloqués ;
  • documentation : ce dépôt est posé (navigation, gardes, pages de découverte, gouvernance, agents) ; la copie de la prose de l’app (ADR, architecture, runbooks, économie, audits, flotte, migration) arrive à côté.

Par où reprendre : côté propriétaire, actions 1 et 2 (CI et Redis) ; côté app, le P0 « tests qui lisent des fichiers supprimés », puis la régénération des fichiers dérivés et la remise au vert de pnpm docs:claims, pnpm docs:links et pnpm fleet:derive:check. L’ordre du propriétaire du 8 octobre reste « rollback-first » : aucun retrait des deux Studios ne s’annonce comme terminé tant que la parité de leur remplaçant n’est pas prouvée.

Côté propriétaire

Dans l’ordre. Chaque action se fait dans un tableau de bord ; aucune valeur secrète ne se colle dans un fichier, une PR ou une conversation. Le pas à pas est dans le runbook cité (pages de operations/runbooks/).

1. GitHub Actions : facturation (platform-ops/2950)

  • GitHub → organisation BoostEcom → Settings → Billing & plans : régler le paiement en échec ou relever la limite de dépense. Les runners ne démarrent plus depuis le 2 octobre ; ça ne revient pas seul.
  • En attendant, dans ce dépôt de documentation : Settings → Secrets and variables → Actions → onglet Variables → CI_PAUSED = true (les jobs passent en « skipped » au lieu d’échouer). La preuve d’une PR est alors locale : node scripts/audit-docs.mjs.
  • Quand les runners reviennent : supprimer CI_PAUSED, relancer un passage complet sur main dans les deux dépôts.

2. Vercel : Redis (platform-ops/3155)

Runbook : operations/runbooks/vercel-env-checklist.

  • Le code lit KV_REST_API_URL et KV_REST_API_TOKEN, supprimées du projet Vercel le 2 octobre : la production tourne dégradée (limites de débit et verrous sans stockage partagé). Reposer ces deux variables en Production (intégration Upstash ou valeurs du store), puis redéployer.

3. Vercel : variables à poser ou vérifier

Runbook : operations/runbooks/vercel-env-checklist.

  • ADMIN_EMAIL sur un domaine vérifié chez Resend (platform-ops/3150) ; vérifier qu’une alerte arrive.
  • TURNSTILE_SECRET_KEY et NEXT_PUBLIC_TURNSTILE_SITE_KEY.
  • RESEND_SUPPORT_DOMAIN.
  • TOKEN_ENCRYPTION_KEY.
  • INTELLIGENCE_ANON_SECRET.
  • MAX_CONVERSATION_USD.
  • Supprimer les variables mortes que src/env/server.ts ne déclare plus (comparer la liste Vercel à ce fichier).
  • DataFast : relier le webhook de revenu au compte DataFast.

4. Parcours complet en sandbox, puis Stripe live (platform-ops/3151 puis billing/3140)

Runbook : operations/runbooks/lancement-checklist.

  • Jouer le parcours complet comme un vrai utilisateur, en sandbox : attribution, e-mails, MCP, paiement, remboursement (platform-ops/3151).
  • Ensuite seulement (décision du 2 octobre) : passage en live Stripe (billing/3140), produits et prix créés en live, webhooks en live.

5. Builds Vercel : Enhanced builds (platform-ops/0088)

  • Le build meurt par manque de mémoire du conteneur, pas par lenteur. Décider d’activer les Enhanced builds (dépense) ; c’est un item type: decision.

6. Chrome Web Store (growth-web/0620)

  • Re-téléverser le ZIP de l’extension sur le Chrome Web Store.
  • Renseigner le champ Website du tableau de bord CWS : l’installation ouvre encore une page tierce au lieu de la page d’installation de BoostEcom.

7. Neon : branche de production (platform-ops/3160)

  • Cocher la case « Production » de la branche de production dans la console Neon.
  • Vérifier que le marqueur [ignore-build] coupe bien les builds inutiles, puis relever les coûts sur sept jours.

8. Dev Studio : secrets GitHub (platform-ops/2723)

  • Poser GITHUB_WEBHOOK_SECRET (webhook GitHub du dépôt de l’app) et GITHUB_FLEET_TOKEN dans Vercel : sans eux, la console de développement reste inerte.

9. Export fondateur et données du studio interne retiré (data-platform/3122)

  • Exécuter l’export fondateur (le script est livré par #1693) et vérifier l’archive hors base.
  • Attester par écrit l’unique écrivain de la publication sociale avant toute autre migration (Growth interne retiré).
  • Portes de migration encore à prouver : décisions D-02, D-03, D-18, D-28 et import E2E-26.

10. Secrets de l’outil de publication sociale retiré

  • Révoquer les clés Postiz (outil retiré de l’app le 8 octobre) dans le tableau de bord du fournisseur et dans Vercel, une fois l’export (action 9) prouvé.

11. Documentation : domaine et audits

Runbook : Checklist de publication.

  • docs.boostecom.app est le domaine de toute la documentation (décision du 8 octobre 2026) : retirer la redirection 308 de l’app vers /docs (src/lib/subdomain-routing.ts, décision growth-web/3018) et pointer le domaine vers Documentation.AI.
  • Relier le dépôt BoostEcom/docs.boostecom.app à Documentation.AI ; Access Control en mode Partial, JWT ou OAuth 2.0, claims accessRoles.
  • Créer le secret BOOSTECOM_READ_TOKEN dans ce dépôt : jeton fin d’organisation limité à BoostEcom/boostecom.app, Contents: read-only et Metadata: read-only, expiration courte.
  • Créer la variable BOOSTECOM_CLAIMS_ENABLED = true : le job hebdomadaire boostecom-claims ne tourne pas sans elle.

Côté app

Les items vivent dans backlog/ de l’app ; un identifiant s’écrit <pilier>/<id> (des identifiants se répètent d’un pilier à l’autre).

P0

  1. Tests qui lisent des fichiers supprimés (relevé du 8 octobre, à confirmer en lançant Vitest sur eux seuls) : src/test/creative-qc-conventions.test.ts, src/test/studio-surfaces-conventions.test.ts, src/test/feedback-loop.test.ts, src/test/a-render-says-when-it-is-done.test.ts, src/test/one-inventory-of-renders.test.ts, src/test/academy-tutorials-match-the-product.test.ts (ce dernier lit une page du handbook retirée). Un test se supprime seulement avec ce qu’il garde.
  2. Fichiers dérivés : pnpm docs:claims:fix (13 comptes périmés) et pnpm fleet:derive (manifeste), une seule fois, après les autres changements ; puis réparer les 32 liens morts de pnpm docs:links.
  3. Redis (platform-ops/3155) : suit l’action 2 du propriétaire, ou le code lit les variables que Vercel fournit.
  4. Parcours complet en sandbox (platform-ops/3151), préalable du live Stripe.
  5. Verrous fantômes : ai-platform 3046, 3050, 3060, 3062, 3064, 3068, app-shell 3063, commerce-systems 3061 sont pris depuis le 26 septembre sur des branches claude/* absentes d’origin ; les 32 items pris ou en cours citent tous une branche absente. Les libérer ou les reprendre.
  6. P0 prêts : ai-platform/2642 (job durable d’audit : le worker importe le moteur de scan ou passe par une entrée signée), ai-platform/2955 (Builder = éditeur Onlook), commerce-systems/2644 (RevenueDaily découpe les jours en UTC, pas dans le fuseau du marchand).
  7. P0 probablement périmés, à requalifier : growth-web/2689, growth-web/2905 (l’interface du Studio marchand est retirée).

P1

  1. Résidus du nettoyage (relevé du 8 octobre, chaque constat à revérifier avant d’agir) :
    • fichiers de production importés par personne, gardés en vie par des tests qui lisent leur source : composants et modules de src/features/studio/, src/services/creative/capability-run.ts et generated-assets.ts, scripts/derive-brand-assets.mjs et les scripts brand:derive* (aussi dans le crochet pre-push) ;
    • src/components/studio/ : déplacer à côté du Dev Studio ce qu’il utilise (studio-shell.tsx, stage-chip.ts, studio.css), supprimer le reste ;
    • un prompt d’IA vivant renvoie vers des routes retirées (src/features/ai/platform-skills/platform-general/prompt.md) ; la recherche du handbook pointe vers /ops/docs, route absente (src/lib/content/docs-search.ts) ;
    • allow-list de sécurité morte pour le cinéma retiré (src/lib/security/service-session-claims.ts, branche de session de service dans src/proxy.ts) ;
    • permissions sans rien derrière (src/lib/security/permissions.ts) ; src/features/studio/writes.ts revalide des routes retirées ;
    • environ 918 clés i18n orphelines sous studio.*, dans les six langues ;
    • .claude/fleet/ownership.json possède encore des dossiers retirés ;
    • skills et CLAUDE.md locaux qui renvoient vers les skills de contenu et de création retirés ; les faits vivent désormais dans content/platform/verified-facts.md.
  2. Pages publiques qui vendent encore le Studio retiré (src/app/(marketing)/features/studio, src/app/llms.txt/route.ts) : en attente de la décision du propriétaire (garder, réécrire, retirer).
  3. Modèles de base sans lecteur (GrowthUnit, ContentRender, ContentReview, AttributionEvent) : les garder jusqu’à l’export fondateur prouvé, puis les retirer dans une migration séparée.
  4. Backlog P1 notables : billing/3142 (Free = clé API + MCP, à prouver de bout en bout), app-shell/3156 (vue unique des actions du propriétaire dans le Dev Studio), marketplace/3143 et marketplace/3144, ai-platform/2958 (aucun plafond global devant streamText), platform-ops/2663 (aucun job QStash n’aboutit depuis sept jours), platform-ops/2960 (le bonus quotidien saute des organisations après 300 s), marketplace/3028 et marketplace/3029, platform-ops/0552 (Node 24 casse le build).
  5. Items en retard sur la réalité : growth-web/3114 et growth-web/3115 encore bloqués alors qu’ils sont en grande partie exécutés ; platform-ops/3164 en cours avec sa définition de fini non cochée ; data-platform/3122 en cours (script livré, export non prouvé) ; platform-ops/3160 (restes côté propriétaire, action 7).

P2

  1. Consommateurs du dossier docs/ de l’app (vague 2, une fois la prose arrivée ici) : environ 378 références dans 255 fichiers de code ; les gardes de chemins et de liens de documentation ; une trentaine de tests qui lisent de la prose, à porter dans scripts/audit-boostecom-claims.mjs (registre : node scripts/audit-boostecom-claims.mjs --list) ; les scripts scripts/check-doc-claims.mjs, scripts/check-doc-links.mjs, scripts/fleet-status.mjs, scripts/fleet-scope-check.mjs ; src/services/fleet/prompt.ts ; les globs docs/** de .claude/fleet/ownership.json.
  2. Runners GitHub : les 16 jobs de l’app tournent sur ubuntu-latest, qui passe à Ubuntu 26 le 19 octobre ; les épingler.
  3. Qualité du backlog : 3161 et 3162 marqués done hors de _archive ; deux items en in_progress au lieu de in-progress ; identifiants signalés en double (2950, 2993, 0596, 0589, 2945, 2947, 3061) ; environ 48 items ouverts visent des surfaces retirées (Studio, Postiz, Cinéma, Academy, Remotion retirés).
  4. Dérive du processus : des PR récentes ont utilisé des branches hors du format fleet/<pilier>/<id>-<slug> et n’ont pas mis à jour leur item ; #1702 a été fusionnée en brouillon.
  5. Petits restes : src/app/(dashboard)/ops/README.md commence par un `

littéral ;src/test/admin-conventions.test.tsliste encore une page retirée ;knip.jsonignore le binaire du renderer, encore nécessaire tant que.github/workflows/creative-render.ymlreste. 6. **Extractions ultérieures**, seulement après la preuve de non-régression des médias Shopify :src/features/studio, src/components/studio, src/services/creative, src/lib/studio, les outils studio-*desrc/features/ai/tools/(découpler d’abordstudio-voice-tools`).

Décisions ouvertes

Aucun agent ne les tranche : ce sont des items type: decision du backlog, ou des choix que seul le propriétaire peut faire.

  1. Pages publiques du Studio retiré : garder, réécrire ou retirer.
  2. P1 : billing/0596 (le plan Free n’ouvre ni le cockpit ni le chat), billing/2704, billing/0369, billing/0612, billing/2811, billing/2964, billing/2786, billing/2787, billing/2788, data-platform/2789, security-identity/0601, security-identity/2790, growth-web/0628 (mentions légales LCEN, médiateur), platform-ops/0367 (quota QStash).
  3. P2 : app-shell/0365, commerce-systems/0370, commerce-systems/0527, commerce-systems/3013, data-platform/0520 (RGPD), integrations/0714, integrations/2962, intelligence/0598, marketplace/2999, marketplace/3000, platform-ops/0368, security-identity/0600, security-identity/0602.
  4. P3 : app-shell/0502, app-shell/3154.
  5. Bloquante : platform-ops/0088 (Enhanced builds, action 5).
  6. Items « à décider » hors type decision : ai-platform/0366, ai-platform/2703, billing/2988.
  7. Les décisions créatives billing/2786 à billing/2788, data-platform/2789 et security-identity/2790 sont à reformuler : le Studio opérateur est retiré, la vidéo du chat et des Workflows existe toujours.

Fait récemment

Du 3 au 8 octobre 2026, sur le main de l’app :

  • FinOps et Neon (#1685 à #1687) : fin de la tempête de builds, garde-fous de coût, état FinOps et nettoyage Neon consignés (platform-ops/3160).
  • Films et vidéo de démonstration sortis de l’app (#1688, #1689).
  • Consentement cookies porté depuis l’autre produit (#1690).
  • Rendus créatifs sourcés depuis le Studio de l’écosystème, moteur épinglé (#1691, #1703) ; 51 documents de skills dupliqués retirés (#1697).
  • Préparation du nettoyage C-5 et C-6 consignée (#1692) ; export fondateur préparé (#1693, data-platform/3122).
  • Frontières : audit des frontières entre dépôts et portes de bascule (#1696), classement Studio écosystème, Studio de l’autre produit et chat/Workflow Shopify (#1694), médias des Workflows isolés avec autorisation de boutique partagée (#1695).
  • 72 skills opérateur internes retirés, faits fondateur empaquetés pour le chat (#1698, content/platform/verified-facts.md) ; traçage du chat corrigé (#1699).
  • Nettoyage « rollback-first » du 8 octobre (#1700 à #1731) : alias de garde retiré, thèse Shopify isolée du Growth interne, états médias inatteignables retirés, bureaux et actions opérateur retirés, routes créatives internes retirées, chat et lecture HTTP du Growth interne retirés, cron d’attribution interne retiré, modules Growth et Postiz retirés, Academy et Cinéma opérateur retirés, ancien Studio marchand retiré sans toucher aux capacités médias (#1728), frontière Shopify/Studio documentée (#1729).
  • Correctif de production : résolveur de tenant fondateur rétabli pour les faits vérifiés du chat (#1730), après sept builds de production en erreur.
  • Dev Studio natif dans l’Admin : raccourcis Studio retirés du profil (#1731), cockpit Admin unifié et flux de travail relu par le propriétaire (#1732), mise en page native et rédaction du backlog (#1733).