Aller au contenu principal

Carnet de produit KySpectra

  • DocumentStrategielancement/01-produit/30-carnet-produit.md
  • Version1.0
  • Date2026-08-17
  • StatutLivré
  • Publicinterne
  • MarqueKySpectra (par Kyrieva)

Strategielancement/01-produit/30-carnet-produit.mdFichier source

#Sommaire

§ Section
1 Objet du carnet et règles de lecture
2 Conventions : statuts, MoSCoW, effort, preuve
3 Carte des 21 épopées
4 Épopée E01 — Comprendre l'existant
5 Épopée E02 — Spécification exécutable
6 Épopée E03 — Copilote de spécification
7 Épopée E04 — Traçabilité et analyse d'impact
8 Épopée E05 — Conception et artefacts projetés
9 Épopée E06 — Métamodèle, collaboration et revues
10 Épopée E07 — Espace de travail projet
11 Épopée E08 — Orchestration agentique et AgentOps
12 Épopée E09 — Registre central d'agents et capacités
13 Épopée E10 — Personnel virtuel IA
14 Épopée E11 — Exécution de code gouvernée
15 Épopée E12 — Vérification et qualité
16 Épopée E13 — Livraison et pipeline CI/CD
17 Épopée E14 — Mise en ligne du produit client
18 Épopée E15 — Plan de contrôle d'administration
19 Épopée E16 — Identité, RBAC et multi-locataire
20 Épopée E17 — Audit, conformité et Loi 25
21 Épopée E18 — Commercialisation, budgets et quotas
22 Épopée E19 — Retours utilisateurs et feuille de route publique
23 Épopée E20 — Bilingue, accessibilité et expérience de portail
24 Épopée E21 — Documentation publique et prise en main
25 Carte des dépendances entre épopées
26 Feuille de route par vagues — dates absolues
27 Dette technique connue et assumée
28 Récapitulatif statistique du carnet

#1. Objet du carnet et règles de lecture

Ce carnet est la vue unique et opposable de ce que KySpectra fait aujourd'hui, de ce qui est en chantier, et de ce qui reste à faire. Il sert trois usages :

Usage Public Ce qu'il en attend
Arbitrage de portée avant le jour J Direction produit, direction technique Savoir ce qui peut être promis publiquement le 2026-11-10
Séquencement des vagues Équipe de livraison Savoir dans quel ordre construire
Réponse à une question client ou analyste Ventes, avant-vente, relations publiques Ne jamais annoncer une capacité qui n'existe pas

Trois règles gouvernent la rédaction de ce carnet.

  1. Aucune ligne n'est écrite sans preuve. La colonne Preuve porte une route d'interface, un chemin de service, un drapeau de fonctionnalité, ou une trace de vérification en navigateur réel. Une fonctionnalité sans preuve est marquée Planifié et sa preuve porte la mention .
  2. Le statut prime sur l'enthousiasme. Une fonctionnalité écrite, testée, mais non déployée est En cours, pas Livré. Une fonctionnalité déployée mais jamais exercée en navigateur réel est En cours, pas Livré.
  3. La dette est nommée, pas dissimulée. La section 27 recense les écarts assumés. Un carnet qui cache ses écarts se détruit au premier essai client.

#2. Conventions : statuts, MoSCoW, effort, preuve

#2.1 Les quatre statuts

Statut Pastille Définition opérationnelle
Livré 🟢 Code présent, déployé sur au moins un environnement en ligne, et exercé au moins une fois par un chemin utilisateur réel
En cours 🟡 Code présent et testé, mais non déployé, ou déployé derrière un drapeau désactivé, ou non encore exercé en navigateur réel
Planifié Conception seule, ou implémentation absente du dépôt
Bloqué 🔴 Implémentation présente, mais empêchée par une cause externe vérifiée empiriquement

#2.2 La priorisation MoSCoW

Code Signification Critère d'attribution dans ce carnet
M Must — indispensable Sans elle, la promesse « de l'intention au logiciel en production, gouverné » ne tient pas
S Should — importante Améliore fortement la valeur, mais la chaîne fonctionne sans elle
C Could — souhaitable Confort, différenciation secondaire, ou automatisation d'un geste déjà possible
W Won't — hors périmètre de la première année Explicitement écarté, pour éviter qu'il revienne par la porte du marketing

#2.3 L'échelle d'effort

Toutes les valeurs d'effort sont des estimations internes non contractuelles, donc systématiquement étiquetées [Hypothèse].

Code Ordre de grandeur [Hypothèse] Repère
S 1 à 3 jours-personne Correctif d'interface, clé de traduction, drapeau à positionner
M 1 à 2 semaines-personne Route serveur avec persistance et tests
L 3 à 6 semaines-personne Nouvelle surface d'interface complète, ou nouveau service
XL plus de 6 semaines-personne Nouveau plan transversal, ou intégration d'un fournisseur externe complet

#2.4 Ce que contient la colonne Preuve

Forme Exemple Ce que cela signifie
Route d'interface /projects/[projectId]/workspace Écran réellement présent dans le portail client
Route de service POST /api/v1/reverse-engineering/jobs Point d'accès réel, atteignable par la passerelle
Fichier de code frontend/client-portal/src/lib/workspace/views.ts Registre ou table de vérité dans le dépôt
Drapeau DEPLOY_LIVE Interrupteur qui conditionne le comportement
Trace de vérification WORKFORCE 5/5 dev+prod Exercice en navigateur réel consigné
Aucune preuve : la fonctionnalité est Planifiée

#3. Carte des 21 épopées

ID Épopée Maillon de la chaîne de valeur Fonctionnalités Statut dominant
E01 Comprendre l'existant 1 · Comprendre 12 🟢 Livré
E02 Spécification exécutable 2 · Spécifier 12 🟢 Livré
E03 Copilote de spécification 2 · Spécifier 10 🟢 Livré
E04 Traçabilité et analyse d'impact 2 · Spécifier 9 🟢 Livré
E05 Conception et artefacts projetés 3 · Concevoir 12 🟢 Livré
E06 Métamodèle, collaboration et revues 3 · Concevoir 10 🟢 Livré
E07 Espace de travail projet Transversal surfaces 13 🟢 Livré
E08 Orchestration agentique et AgentOps 4 · Fabriquer 11 🟢 Livré
E09 Registre central d'agents et capacités Plan de contrôle 12 🟢 Livré
E10 Personnel virtuel IA 4 · Fabriquer 11 🟢 Livré phase 1
E11 Exécution de code gouvernée 4 · Fabriquer 10 🟢 Livré
E12 Vérification et qualité 5 · Vérifier 12 🟢 Livré
E13 Livraison et pipeline CI/CD 6 · Livrer 14 🟢 Livré (Kubernetes)
E14 Mise en ligne du produit client 6 · Livrer 11 🟡 Partiel
E15 Plan de contrôle d'administration Plan de contrôle 16 🟢 Livré
E16 Identité, RBAC et multi-locataire Plan de contrôle 12 🟢 Livré
E17 Audit, conformité et Loi 25 Plan de contrôle 10 🟢 Livré
E18 Commercialisation, budgets et quotas Plan de contrôle 13 🟡 Partiel
E19 Retours utilisateurs et feuille de route publique Transversal 9 🟢 Livré
E20 Bilingue, accessibilité et expérience de portail Transversal surfaces 10 🟢 Livré
E21 Documentation publique et prise en main Transversal 9 🟡 En cours
Total 238

#4. Épopée E01 — Comprendre l'existant

Intention. Partir du système réel du client, pas d'une page blanche. On importe un dépôt, on en extrait des faits horodatés par fichier:ligne, on en infère des candidats de spécification, et on ne promeut rien sans porte de validation.

Ce qui la rend défendable. La rétro-ingénierie ne fabrique jamais : une entrée reconnue mais non analysable devient un unsupported déclaré, pas une hypothèse maquillée.

Nuance à ne jamais omettre en communication. L'analyse de code source par arbre syntaxique complet ne concerne que Python. JavaScript, TypeScript, Go, Java, Ruby et C# sont détectés puis signalés comme non pris en charge — jamais analysés en silence.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-01-01 E01 Comprendre Enregistrement d'une source de projet durable Rattacher un dépôt, une base ou un contrat d'interface à un projet, avec référence de secret par chemin de coffre Le projet garde la mémoire de ses sources M 🟢 Livré POST /api/v1/reverse-engineering/projects/{id}/sources M [Hypothèse]
F-01-02 E01 Comprendre Clonage superficiel authentifié Clone --depth 1 --single-branch, jeton injecté par en-tête, jamais dans l'URL ni dans la configuration du dépôt Import d'un dépôt privé sans fuite de secret M 🟢 Livré backend/reverse-engineering-serviceingestion.py M [Hypothèse]
F-01-03 E01 Comprendre Analyse statique Python par arbre syntaxique Modules, classes, fonctions, complexité cyclomatique, graphe d'appels, points d'accès HTTP, entités, événements Faits objectifs, pas d'intuition M 🟢 Livré static_python.pyanalyze_python L [Hypothèse]
F-01-04 E01 Comprendre Déclaration honnête des langages non pris en charge Une extension reconnue sans analyseur produit une entrée unsupported visible Honnêteté d'ingénierie opposable M 🟢 Livré ingestion.py — liste unsupported S [Hypothèse]
F-01-05 E01 Comprendre Ingestion de schéma de base et de contrat d'interface Tables, colonnes, clés étrangères par expressions régulières ; OpenAPI analysé réellement Reconstruire le modèle de données réel M 🟢 Livré POST …/jobs avec system=db_schema ou openapi M [Hypothèse]
F-01-06 E01 Comprendre Sept émetteurs d'artefacts d'architecture C4, modèle entité-relation, OpenAPI, machines à états, séquences, dictionnaire de données, traçabilité L'architecture réelle devient lisible M 🟢 Livré GET …/jobs/{id}/emit — drapeau REVERSE_EMIT_ENABLED à true L [Hypothèse]
F-01-07 E01 Comprendre File de validation humaine des candidats Chaque inférence ouvre une tâche ; l'approbation crée l'objet de spécification réel Aucune promotion sans décision M 🟢 Livré POST …/validation-tasks/{id}/decision — rôle PUBLISHER M [Hypothèse]
F-01-08 E01 Comprendre Promotion automatique au-dessus d'un seuil de confiance Seuil par défaut 0,7 ; emprunte exactement le chemin d'une approbation humaine Réduire la file sans contourner la porte S 🟢 Livré AUTO_PROMOTE_ENABLED à true, seuil 0.7 M [Hypothèse]
F-01-09 E01 Comprendre Détection de dérive entre spécification et code Constats persistés, filtrables par projet et par nature Voir vieillir un système S 🟢 Livré POST …/jobs/{id}/drift/analyze M [Hypothèse]
F-01-10 E01 Comprendre Analyse incrémentale déclenchée par un crochet de dépôt Signature HMAC vérifiée, différentiel, ensemble impacté Garder la carte à jour sans tout rejouer S 🟢 Livré POST …/jobs/{id}/incremental M [Hypothèse]
F-01-11 E01 Comprendre Exploration en direct d'une application cible Parcours en largeur borné par périmètre, routes et formulaires découverts Comprendre une application sans son code C 🟡 En cours POST …/target-envs/{id}/discoveries501 sans moteur de navigation configuré L [Hypothèse]
F-01-12 E01 Comprendre Analyseurs pour JavaScript, TypeScript, Go, Java, C# Extension de l'analyse statique au-delà de Python Élargir le marché adressable S ⚪ Planifié XL [Hypothèse]

#5. Épopée E02 — Spécification exécutable

Intention. Faire de l'exigence un objet de données typé, versionné et relié, et non un paragraphe dans un document mort.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-02-01 E02 Spécifier Entité projet propriétaire Le service de spécification possède l'entité projet nue ; tout autre service y accède par son périmètre Un seul propriétaire, pas de collision de routes M 🟢 Livré GET /api/v1/projectsspec-service port 4107 M [Hypothèse]
F-02-02 E02 Spécifier Objets de spécification typés Exigences fonctionnelles, non fonctionnelles, règles d'affaires, entités, contrats d'interface, décisions Un critère d'acceptation n'est plus confondu avec une contrainte M 🟢 Livré /api/v1/spec-items L [Hypothèse]
F-02-03 E02 Spécifier Versionnement des objets Chaque modification produit une version consultable Savoir ce qui a changé, quand et par qui M 🟢 Livré /api/v1/spec-items — historique de version M [Hypothèse]
F-02-04 E02 Spécifier Explorateur de spécification Liste filtrable par type, statut, propriétaire, texte libre Retrouver une exigence en secondes M 🟢 Livré /projects/[projectId]/spec M [Hypothèse]
F-02-05 E02 Spécifier Fiche de détail d'un objet Attributs, liens entrants et sortants, historique, commentaires Comprendre un objet sans quitter l'écran M 🟢 Livré /projects/[projectId]/spec/[itemId] M [Hypothèse]
F-02-06 E02 Spécifier Validation de grammaire EARS Vérification de la forme des exigences à la génération Éviter la revue humaine tardive de forme M 🟢 Livré /api/v1/ears — drapeau EARS_GENERATION_ENABLED à true M [Hypothèse]
F-02-07 E02 Spécifier Documents d'orientation de projet Contraintes transverses appliquées à la génération Le projet impose son cadre aux agents S 🟢 Livré /api/v1/steering — drapeau STEERING_ENABLED à true M [Hypothèse]
F-02-08 E02 Spécifier Tableau de bord par statut du cycle de vie Vue en colonnes des objets par étape Piloter l'avancement sans tableur S 🟢 Livré Vue boards de l'espace de travail M [Hypothèse]
F-02-09 E02 Spécifier Recherche plein texte sur la spécification Index de recherche adossé au service de spécification Trouver par mots plutôt que par arborescence S 🟢 Livré spec-service → moteur de recherche M [Hypothèse]
F-02-10 E02 Spécifier Approche spécification d'abord Le cycle démarre par l'exigence, pas par le ticket Le carnet cesse d'être la source de vérité M 🟢 Livré Drapeau SPEC_FIRST_ENABLED à true M [Hypothèse]
F-02-11 E02 Spécifier Application automatique d'un changement de spécification au code Propagation directe d'une modification vers l'implémentation Fermer la boucle sans geste manuel C 🟡 En cours Drapeau SPEC_APPLY_ENABLED à false par défaut L [Hypothèse]
F-02-12 E02 Spécifier Import d'un document existant vers des exigences Pipeline document vers spécification Récupérer un cahier des charges hérité S 🟢 Livré /api/v1/ingestioningestion-service port 4125 M [Hypothèse]

#6. Épopée E03 — Copilote de spécification

Intention. Passer du langage naturel à des objets de spécification vérifiables, en montrant le travail de l'agent au lieu de le cacher.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-03-01 E03 Copilote Génération d'exigences depuis le langage naturel Une intention écrite en français produit des objets typés Démarrer un projet en minutes M 🟢 Livré /api/v1/copilotcopilot-service port 4118 L [Hypothèse]
F-03-02 E03 Copilote Écran de spécification assistée Formulaire de saisie, prévisualisation, acceptation objet par objet L'humain garde la main sur ce qui entre M 🟢 Livré /projects/[projectId]/specify M [Hypothèse]
F-03-03 E03 Copilote Tableau d'agents en direct Flux d'événements serveur montrant les étapes de l'agent Voir ce que fait l'agent, pas seulement son résultat S 🟢 Livré /projects/[projectId]/agents M [Hypothèse]
F-03-04 E03 Copilote Écriture d'objets par l'agent L'agent crée les objets acceptés dans le service de spécification Pas de copier-coller manuel M 🟢 Livré copilot-service — écriture d'objets M [Hypothèse]
F-03-05 E03 Copilote Injection du métamodèle du projet dans la génération Les types et liens autorisés du projet contraignent l'agent L'agent respecte le cadre du projet S 🟢 Livré collaboration-service/api/v1/metamodel M [Hypothèse]
F-03-06 E03 Copilote Passerelle de modèles de langage Fournisseur unique en façade, priorité au modèle Claude, repli configuré Changer de fournisseur sans réécrire M 🟢 Livré llm-gateway-service M [Hypothèse]
F-03-07 E03 Copilote Prompts personnels et catalogue de prompts Prompts d'utilisateur, prompts d'organisation, prompts globaux Capitaliser sur ce qui marche S 🟢 Livré /prompts et /api/v1/prompt-orchestration M [Hypothèse]
F-03-08 E03 Copilote Budget de jetons appliqué à la génération Plafond journalier et mensuel, erreur explicite à l'épuisement Sobriété assumée M 🟢 Livré packages/agent-sdktoken_budget.py, code 402 M [Hypothèse]
F-03-09 E03 Copilote Assistants guidés du portail Six parcours pas à pas, dont l'identité de locataire, la base de données et l'intégration continue Prise en main sans documentation S 🟢 Livré portal-experience-service/api/v1/wizards, vérifié en production M [Hypothèse]
F-03-10 E03 Copilote Compagnon conversationnel du plan de contrôle Navigation assistée dans le portail d'administration Confort d'exploitation C 🟡 En cours admin-portalcompanion.tsx, message companion.notWired explicite M [Hypothèse]

#7. Épopée E04 — Traçabilité et analyse d'impact

Intention. Relier chaque artefact à l'exigence qui l'a produit, dans les deux sens, pour que la question « pourquoi ce code existe-t-il ? » ait une réponse.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-04-01 E04 Traçabilité Graphe de traçabilité du projet Nœuds d'exigences, d'artefacts, de tests et de défauts, arêtes typées Une seule carte pour tout le projet M 🟢 Livré Vue graph de l'espace de travail L [Hypothèse]
F-04-02 E04 Traçabilité Écran de traçabilité dédié Page projet avec matrice et filtres Répondre à un auditeur sans export manuel M 🟢 Livré /projects/[projectId]/trace M [Hypothèse]
F-04-03 E04 Traçabilité Analyse des écarts Exigences sans artefact, artefacts sans exigence, tests sans critère Voir les trous, pas seulement les liens M 🟢 Livré /projects/[projectId]/analyze M [Hypothèse]
F-04-04 E04 Traçabilité Ancres de code reliées aux exigences Arêtes implements et traces_to produites par l'émetteur de traçabilité Le code cesse d'être orphelin M 🟢 Livré traceability.pybuild_traceability M [Hypothèse]
F-04-05 E04 Traçabilité Taux de couverture et trous de traçabilité Calcul de couverture et liste des manques Un chiffre défendable en comité S 🟢 Livré GET …/jobs/{id}/emit/traceability S [Hypothèse]
F-04-06 E04 Traçabilité Graphe de dépendances entre composants Couplages internes et externes Anticiper l'onde de choc d'un changement S 🟢 Livré dependency-graph-service port 4117 M [Hypothèse]
F-04-07 E04 Traçabilité Remontée d'un défaut vers son exigence Le défaut porte le lien vers l'objet source Corriger la cause, pas le symptôme M 🟢 Livré Vue review de l'espace de travail M [Hypothèse]
F-04-08 E04 Traçabilité Réutilisation d'une exigence entre méthodes Un document produit par une méthode est consommé par une autre, avec provenance conservée Ne pas ressaisir entre cadres méthodologiques S 🟢 Livré Arêtes traces_to en base de vérité M [Hypothèse]
F-04-09 E04 Traçabilité Export de la matrice de traçabilité vers un tableur Sortie tabulaire téléchargeable Livrable d'audit hors ligne C ⚪ Planifié S [Hypothèse]

#8. Épopée E05 — Conception et artefacts projetés

Intention. Projeter la spécification en artefacts de conception normalisés, sans ressaisie.

Nuance à ne jamais omettre en communication. Le vocabulaire de diagrammes UML accepté compte 14 types, verrouillé par une assertion au démarrage du service. En profondeur, 5 types possèdent un générateur spécialisé ; les 9 autres retombent sur un rendu d'organigramme générique. La seule sortie graphique est du texte Mermaid — ni PlantUML, ni SVG, ni PNG.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-05-01 E05 Concevoir Document d'exigences produit Projection structurée depuis les objets de spécification Un livrable de cadrage sans ressaisie M 🟢 Livré artifact-service port 4129 — /api/v1/artifacts M [Hypothèse]
F-05-02 E05 Concevoir Rendu UML — vocabulaire de 14 types Vocabulaire verrouillé par assertion ; toute autre valeur rejetée Contrat de types stable M 🟢 Livré POST /api/v1/diagrams/umlUML_DIAGRAM_TYPES M [Hypothèse]
F-05-03 E05 Concevoir Générateurs spécialisés pour 5 types UML Rendu dédié, les 9 autres types en organigramme générique Qualité de rendu là où elle compte S 🟢 Livré mermaid.py — 5 générateurs, 9 replis M [Hypothèse]
F-05-04 E05 Concevoir Diagrammes BPMN Processus d'affaires projetés Le métier lit son propre processus S 🟢 Livré artifact-service/diagrams M [Hypothèse]
F-05-05 E05 Concevoir Vues d'architecture d'entreprise TOGAF Cartographie par cycle de développement d'architecture Alignement avec le cadre de l'entreprise S 🟢 Livré artifact-service/togaf M [Hypothèse]
F-05-06 E05 Concevoir Artefacts de sécurité Surface d'attaque, diagramme de flux de données, modèle de menace, écarts de confiance zéro Sécurité conçue, pas ajoutée M 🟢 Livré artifact-service/sec-artifacts L [Hypothèse]
F-05-07 E05 Concevoir Documentation comme code Markdown exportable, diagrammes rendus, projection bilingue La documentation suit la spécification M 🟢 Livré artifact-service/documentation M [Hypothèse]
F-05-08 E05 Concevoir Détection de dérive de documentation Écart entre la spécification et la documentation projetée Documentation qui ne ment pas S 🟢 Livré artifact-service — détection de dérive M [Hypothèse]
F-05-09 E05 Concevoir Vue Artefacts de l'espace de travail Consultation et export de tous les artefacts du projet Un seul point d'accès M 🟢 Livré Vue artifacts — capacité docs:export M [Hypothèse]
F-05-10 E05 Concevoir Vue Docs de l'espace de travail Documentation exportable, diagramme intégré Livrer une documentation présentable M 🟢 Livré Vue docs — capacité docs:export M [Hypothèse]
F-05-11 E05 Concevoir Conception dirigée par le domaine Contextes bornés, carte de contexte, agrégats Découper un monolithe avec méthode S 🟢 Livré GET …/jobs/{id}/ddd et collaboration-service/ddd M [Hypothèse]
F-05-12 E05 Concevoir Export d'un diagramme en image matricielle ou vectorielle Sortie image en plus du texte Mermaid Insertion dans une présentation C ⚪ Planifié M [Hypothèse]

#9. Épopée E06 — Métamodèle, collaboration et revues

Intention. Permettre à chaque projet de définir ses types et ses liens autorisés, puis d'organiser la revue humaine autour d'eux.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-06-01 E06 Collaboration Métamodèle par projet Types d'objets et relations autorisées, propres au projet Un cadre commun sans camisole M 🟢 Livré collaboration-service/api/v1/metamodel L [Hypothèse]
F-06-02 E06 Collaboration Validation d'un objet contre le métamodèle Rejet explicite d'un objet non conforme Cohérence garantie à l'écriture M 🟢 Livré spec-service — validation de modèle M [Hypothèse]
F-06-03 E06 Collaboration Espaces de travail collaboratifs Regroupement d'objets et de personnes Travailler à plusieurs sur un même périmètre S 🟢 Livré collaboration-service/api/v1/spaces M [Hypothèse]
F-06-04 E06 Collaboration Commentaires sur les objets Fil de discussion attaché à l'objet, pas à un canal externe La décision reste avec l'exigence M 🟢 Livré collaboration-service/comments M [Hypothèse]
F-06-05 E06 Collaboration Machine à états de revue Création, soumission, commentaire, décision, avec transitions contrôlées Une revue traçable M 🟢 Livré collaboration-service/reviews M [Hypothèse]
F-06-06 E06 Collaboration Séparation des devoirs sur la décision de revue L'auteur ne peut pas décider de sa propre soumission Contrôle interne réel M 🟢 Livré review_state_machine.pyensure_separation_of_duties S [Hypothèse]
F-06-07 E06 Collaboration Rôle minimal par transition Création et soumission par un rédacteur, décision par un publieur Droits alignés sur la responsabilité M 🟢 Livré routes_reviews.py — gardes de rôle S [Hypothèse]
F-06-08 E06 Collaboration Vue Revue de l'espace de travail Écarts, matrice de traçabilité et file de revue Un écran pour la qualité de la spécification M 🟢 Livré Vue review — capacité review:read M [Hypothèse]
F-06-09 E06 Collaboration Champs personnalisés par type d'entité Schéma d'exécution par locataire et par type Adapter sans redéployer S 🟢 Livré custom-fields-service port 4124 M [Hypothèse]
F-06-10 E06 Collaboration File de revue transverse à tous les projets Vue unique des décisions en attente pour un relecteur Ne rien laisser dormir S ⚪ Planifié — · écart affiché dans le portail d'administration M [Hypothèse]

#10. Épopée E07 — Espace de travail projet

Intention. Offrir une surface unique où le projet se pilote de bout en bout, avec un lien profond partageable et un cloisonnement par capacité.

Nuance à ne jamais omettre en communication. L'espace de travail compte 11 vues canoniques, verrouillées par un test unitaire. Le portail client compte 27 routes utilisateur et 15 destinations dans son rail de navigation.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-07-01 E07 Espace de travail Registre des 11 vues canoniques Donnée pure, sans dépendance d'interface, partagée par la coquille, la palette et le routeur Une seule table de vérité M 🟢 Livré frontend/client-portal/src/lib/workspace/views.ts M [Hypothèse]
F-07-02 E07 Espace de travail Lien profond partageable La vue active et l'objet ouvert vivent dans la chaîne de requête Partager un écran exact à un collègue M 🟢 Livré ?view=<vue>&item=<objet>view-state.ts M [Hypothèse]
F-07-03 E07 Espace de travail Mémoire du dernier écran par projet Stockage local par projet, utilisé seulement au premier atterrissage Reprendre où l'on s'était arrêté S 🟢 Livré Clé kyspectra.client-portal.workspace.view.<projet> S [Hypothèse]
F-07-04 E07 Espace de travail Cloisonnement des vues par capacité Chaque vue déclare la capacité qui l'ouvre Un lecteur ne voit pas ce qu'il ne peut pas faire M 🟢 Livré views.ts — champ capability M [Hypothèse]
F-07-05 E07 Espace de travail Neutralisation d'une valeur d'URL invalide Toute vue inconnue retombe sur la vue par défaut Aucun écran blanc sur lien corrompu M 🟢 Livré coerceView — vue par défaut spec S [Hypothèse]
F-07-06 E07 Espace de travail Vue réservée aux projets de test Une seule vue porte une restriction de nature de projet Ne pas polluer un projet de production S 🟢 Livré views.tsprojectKind === "test_only" sur la vue test S [Hypothèse]
F-07-07 E07 Espace de travail Palette de commandes Accès clavier à toutes les destinations et vues Navigation sans souris S 🟢 Livré ALL_NAVnav.tsx M [Hypothèse]
F-07-08 E07 Espace de travail Rail de navigation à trois sections et un pied Espace de travail, Opérer, Compte, plus notifications et paramètres Structure mentale stable M 🟢 Livré nav.tsxNAV_SECTIONS et NAV_FOOTER M [Hypothèse]
F-07-09 E07 Espace de travail Fil d'Ariane contextuel Chemin lisible depuis la racine jusqu'à l'objet Ne jamais se perdre S 🟢 Livré nav.crumbs — 20 libellés S [Hypothèse]
F-07-10 E07 Espace de travail Export statique et réécriture des routes dynamiques Site statique servi par sentinelle réécrite, identifiant lu côté client Coût d'exploitation nul M 🟢 Livré dynamic-route.ts — sentinelle __id__ M [Hypothèse]
F-07-11 E07 Espace de travail Politique de sécurité de contenu stricte Origines de connexion limitées, intégration dans un cadre interdite Réduction de la surface d'attaque du navigateur M 🟢 Livré public/_headersframe-ancestors 'none' S [Hypothèse]
F-07-12 E07 Espace de travail Page de retours et feuille de route par projet Idées, votes et statut, à l'intérieur du projet Boucler avec les utilisateurs S 🟢 Livré /projects/[projectId]/feedback M [Hypothèse]
F-07-13 E07 Espace de travail Application mobile native Application installable sur iOS et Android Consultation hors navigateur W ⚪ Planifié — · aucun code mobile dans le dépôt XL [Hypothèse]

#11. Épopée E08 — Orchestration agentique et AgentOps

Intention. Faire travailler des agents sous contrainte explicite, et rendre leur travail observable.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-08-01 E08 AgentOps Orchestrateur de graphes d'états Enchaînement d'agents par graphe, avec reprise Des tâches longues fiables M 🟢 Livré ai-orchestrator port 4106 — /api/v1/ai L [Hypothèse]
F-08-02 E08 AgentOps Cœur agentique Boucle d'agent, registre local, intervention humaine dans la boucle Le moteur commun de tous les agents M 🟢 Livré agentic-core-service port 8095 L [Hypothèse]
F-08-03 E08 AgentOps Neuf services d'agents spécialisés Analyste, rédacteur, relecteur, extracteur, calculateur, conseiller, mémoire, conversation, cœur Spécialisation plutôt qu'agent unique S 🟢 Livré services/ — 9 services XL [Hypothèse]
F-08-04 E08 AgentOps Trousse de développement d'agents Agent de base, orchestrateur, clients de modèle et d'outils, budget de jetons Écrire un agent sans repartir de zéro S 🟢 Livré packages/agent-sdk L [Hypothèse]
F-08-05 E08 AgentOps Compétences génériques réutilisables Résumé, extraction, traduction, questions-réponses Capitaliser sur des briques éprouvées S 🟢 Livré packages/skills/global M [Hypothèse]
F-08-06 E08 AgentOps Passerelle de protocole de contexte Outils externes exposés aux agents par un protocole unique Ouvrir sans coder chaque intégration S 🟢 Livré mcp-gateway port 8080 — périmètre /api/v1/mcp L [Hypothèse]
F-08-07 E08 AgentOps Mémoire et recherche augmentée Mémoire d'agent et recherche vectorielle Des agents qui n'oublient pas S 🟢 Livré memory-rag-service port 8096 L [Hypothèse]
F-08-08 E08 AgentOps Page Opérations agents Suivi des exécutions au niveau du locataire Piloter la flotte au quotidien M 🟢 Livré /agents — portail client M [Hypothèse]
F-08-09 E08 AgentOps Vue AgentOps de l'espace de travail Exécutions d'agents du projet, en direct Voir l'activité là où elle a lieu M 🟢 Livré Vue agentops — capacité agentops:read M [Hypothèse]
F-08-10 E08 AgentOps Interruption d'une exécution Arrêt d'un travail en cours, avec confirmation et acteur consigné Reprendre la main immédiatement M 🟢 Livré POST /runs/{id}/interrupt — capacité fleet:interrupt M [Hypothèse]
F-08-11 E08 AgentOps Flux d'activité par événements serveur dans le plan de contrôle Remplacement du sondage périodique par un flux poussé Fraîcheur d'affichage C 🟡 En cours admin-portallive.ts en sondage toutes les 10 secondes M [Hypothèse]

#12. Épopée E09 — Registre central d'agents et capacités

Intention. Un agent n'existe que s'il est inscrit, et ne peut que ce qui lui a été explicitement accordé.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-09-01 E09 Registre Registre central d'agents Source de vérité unique : nom, nature, capacités, compétences, serveurs d'outils, jetons, santé Un inventaire opposable M 🟢 Livré agent-registry-service port 4133 · destination /agents du plan de contrôle L [Hypothèse]
F-09-02 E09 Registre Synchronisation depuis l'orchestrateur Alimentation du registre par le plan agentique Pas de saisie manuelle d'inventaire M 🟢 Livré POST /agents/central/sync M [Hypothèse]
F-09-03 E09 Registre Activation et désactivation d'un agent Interrupteur par agent, depuis le plan de contrôle Retirer un agent en un geste M 🟢 Livré PATCH /agents/{id} — capacité agents:manage S [Hypothèse]
F-09-04 E09 Registre Catalogue unifié de capacités Compétences, outils et prompts dans un catalogue commun Une seule grammaire d'octroi M 🟢 Livré extension-registry-service/api/v1/catalog/capabilities L [Hypothèse]
F-09-05 E09 Registre Trois niveaux de visibilité Global de plateforme, locataire, utilisateur — ce dernier pour les prompts Partager sans imposer M 🟢 Livré constants.pyVIS_GLOBAL, VIS_TENANT, VIS_USER L [Hypothèse]
F-09-06 E09 Registre Adoption d'une capacité globale par un locataire Table d'adoption, avec périmètre et activation L'organisation choisit ce qu'elle ouvre M 🟡 En cours /api/v1/catalog/adoptions — drapeau REGISTRY_TIERED_SCOPES_ENABLED à false M [Hypothèse]
F-09-07 E09 Registre Refus par défaut sur les permissions d'outil Sans autorisation explicite, l'appel est refusé et journalisé Sûreté avant confort M 🟢 Livré app_tool_permission — effet par défaut deny M [Hypothèse]
F-09-08 E09 Registre Grammaire de portée des octrois tenant, project:<id>, agent:<id>, avec spécificité croissante Accorder au bon niveau M 🟢 Livré catalog.py_match_enabled_binding M [Hypothèse]
F-09-09 E09 Registre Import gouverné d'une compétence externe Provenance, signature, recherche de secret, classement de risque, mise en revue Ouvrir sans importer de risque M 🟢 Livré POST /api/v1/catalog/import — pipeline en 7 étapes L [Hypothèse]
F-09-10 E09 Registre Révocation avec propagation immédiate Transition d'état et désactivation des octrois dépendants Couper vite et partout M 🟢 Livré POST /api/v1/extensions/{genre}/{id}/revoke M [Hypothèse]
F-09-11 E09 Registre Rôles virtuels et plafond d'autonomie Roster de rôles, plafond N0 à N3, plafonné par le plan commercial Gouverner l'IA comme du personnel M 🟡 En cours /api/v1/virtual-roles — drapeau REGISTRY_VIRTUAL_ROLES_ENABLED à false L [Hypothèse]
F-09-12 E09 Registre Place de marché de capacités avec audience ciblée Curation d'audience, duplication à la volée, provenance de dérivation Écosystème de capacités S 🟡 En cours Code présent et testé, non déployé, non prouvé en ligne L [Hypothèse]

#13. Épopée E10 — Personnel virtuel IA

Intention. Traiter un agent comme un membre d'équipe : un rôle, une file de travail, une activité, une place dans l'organigramme.

Nuance à ne jamais omettre en communication. Seule la phase 1 est livrée : recruter, assigner, suivre la file, consulter l'activité et l'organigramme. L'autonomie déléguée, l'escalade et la chaîne d'imputabilité sont Planifiées.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-10-01 E10 Personnel IA Recrutement d'un membre depuis l'interface Formulaire de recrutement, rôle et équipe à la création Constituer une équipe en minutes M 🟢 Livré Vue workforce — vérifié en navigateur réel sur développement et production M [Hypothèse]
F-10-02 E10 Personnel IA Assignation d'une tâche à un membre Fenêtre d'assignation, bouton conditionné par la capacité Confier un travail nommé M 🟢 Livré AssignTaskModaluseAssignTask M [Hypothèse]
F-10-03 E10 Personnel IA File de travail par membre Tâches ouvertes et terminées, rafraîchissement après assignation Voir la charge réelle M 🟢 Livré GET /workforce/staff M [Hypothèse]
F-10-04 E10 Personnel IA Flux d'activité du personnel Journal des actions par membre Suivre sans interrompre S 🟢 Livré Vue workforce — flux d'activité M [Hypothèse]
F-10-05 E10 Personnel IA Organigramme des équipes Hiérarchie lisible des membres et des équipes Comprendre la structure d'un coup d'œil S 🟢 Livré Vue workforce — organigramme M [Hypothèse]
F-10-06 E10 Personnel IA Suspension et reprise d'un membre Interrupteur par membre depuis le plan de contrôle Mettre en pause sans supprimer M 🟢 Livré PATCH /workforce/staff/{id} — destination /workforce S [Hypothèse]
F-10-07 E10 Personnel IA Vue d'ensemble du personnel dans le plan de contrôle Compteurs de personnel, d'équipes et de tâches Pilotage d'exploitation S 🟢 Livré GET /workforce/overview M [Hypothèse]
F-10-08 E10 Personnel IA Plafond d'autonomie par membre Niveau N0 à N3 affiché et respecté Le contrat d'autonomie est visible M 🟢 Livré Roster de personnel — colonne autonomie M [Hypothèse]
F-10-09 E10 Personnel IA Autonomie déléguée et escalade Un membre délègue ou remonte selon des règles Organisation qui se régule S ⚪ Planifié — · conception seule XL [Hypothèse]
F-10-10 E10 Personnel IA Registre d'imputabilité Chaîne de responsabilité par tâche et par décision Répondre à « qui a décidé quoi » S ⚪ Planifié — · conception seule L [Hypothèse]
F-10-11 E10 Personnel IA Console de direction virtuelle Vue consolidée de niveau direction sur le personnel virtuel Pilotage de haut niveau C ⚪ Planifié — · conception seule XL [Hypothèse]

#14. Épopée E11 — Exécution de code gouvernée

Intention. Exécuter du code produit par un agent dans une enveloppe dont on connaît les limites avant de la lancer.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-11-01 E11 Exécution Exécuteur en tâches éphémères Espace de noms dédié, contrôle d'accès dédié, politique réseau dédiée Exécution isolée et jetable M 🟢 Livré agent-runtime-service port 4119 — espace de noms d'exécution dédié L [Hypothèse]
F-11-02 E11 Exécution Moteur de politique en liste d'autorisations Toute action non couverte est refusée et journalisée Refus par défaut réel M 🟢 Livré policy/engine.pypolicy_id="deny-by-default" M [Hypothèse]
F-11-03 E11 Exécution Journalisation des décisions de politique Chaque évaluation écrit une ligne consultable Preuve de contrôle M 🟢 Livré Table app_policy_check S [Hypothèse]
F-11-04 E11 Exécution Politiques d'exécution paramétrables Politique réseau devant commencer par un refus, liste de sorties autorisées, durée maximale, politique de fichiers Enveloppe déclarée avant l'exécution M 🟢 Livré /policies du plan de contrôle — execution-policies M [Hypothèse]
F-11-05 E11 Exécution Garde-fous par motif d'action Motif, effet autoriser ou refuser, priorité, exigence d'approbation Régler la granularité sans code M 🟢 Livré /policiesguardrail-policies M [Hypothèse]
F-11-06 E11 Exécution Évaluation d'une action à la volée Simulation d'une décision avant activation Tester une règle sans risque S 🟢 Livré POST /guardrail-policies/evaluate S [Hypothèse]
F-11-07 E11 Exécution Graphe d'exécution et tiroir de détail Visualisation des exécutions et de leur enchaînement Diagnostiquer vite S 🟢 Livré /fleet du plan de contrôle — GraphCanvas M [Hypothèse]
F-11-08 E11 Exécution Budget de jetons avec erreur explicite Plafond journalier et mensuel, code d'erreur dédié à l'épuisement Pas de dépassement silencieux M 🟢 Livré token_budget.py402 M [Hypothèse]
F-11-09 E11 Exécution Liaison de capacité de session Octroi temporaire borné dans le temps, ou extension persistante payante Ouvrir juste ce qu'il faut, le temps qu'il faut S 🟢 Livré POST /api/v1/sessions/{id}/capability-bindings M [Hypothèse]
F-11-10 E11 Exécution Agrégat d'exécutions entre locataires Vue consolidée pour l'exploitant de la plateforme Supervision globale S ⚪ Planifié — · écart affiché dans le portail d'administration M [Hypothèse]

#15. Épopée E12 — Vérification et qualité

Intention. Prouver que ce qui est fabriqué satisfait ce qui était demandé, sans jamais utiliser de donnée personnelle réelle.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-12-01 E12 Vérifier Génération de tests depuis les critères d'acceptation Éditeur de scénarios intégré, dérivation depuis l'exigence Le test naît de l'exigence M 🟢 Livré Vue test — capacité test:read L [Hypothèse]
F-12-02 E12 Vérifier Carte de chaleur de couverture Couverture des critères d'acceptation par exigence Voir ce qui n'est pas prouvé M 🟢 Livré Vue test de l'espace de travail M [Hypothèse]
F-12-03 E12 Vérifier Données de test synthétiques Génération de jeux de données sans donnée personnelle réelle Conformité par construction M 🟢 Livré test-data-factory-service port 4110 L [Hypothèse]
F-12-04 E12 Vérifier Test navigateur réel Exécution d'un navigateur réel en tâche, contre l'application déployée Preuve d'usage, pas seulement d'API M 🟢 Livré POST /api/v1/deploy/uat/browser — vérifié en développement L [Hypothèse]
F-12-05 E12 Vérifier Test de fumée par requêtes HTTP Vérification rapide d'une adresse déployée Détection immédiate d'une régression grossière S 🟢 Livré POST /api/v1/deploy/uat/run S [Hypothèse]
F-12-06 E12 Vérifier Analyse d'une base de données en exploitation Index manquants ou inutilisés, tables sans clé primaire, taux de cache Conseil fondé sur le réel S 🟢 Livré POST /api/v1/deploy/db/analyze — vérifié en développement et en production M [Hypothèse]
F-12-07 E12 Vérifier Recommandations de conception de base de données Heuristiques sur un schéma décrit Aider sans se connecter S 🟢 Livré POST /api/v1/deploy/db/advise M [Hypothèse]
F-12-08 E12 Vérifier Portes de qualité et brèches de niveau de service Panneau de brèches, seuils par indicateur Décider sur la base d'un seuil M 🟢 Livré /overview du plan de contrôle — /gates/breaches M [Hypothèse]
F-12-09 E12 Vérifier Catalogue d'indicateurs Liste filtrable et virtualisée des indicateurs disponibles Choisir ce que l'on mesure S 🟢 Livré observability-board-service/metrics/catalog M [Hypothèse]
F-12-10 E12 Vérifier Comparaison visuelle entre deux états Détection de régression d'interface Attraper ce qu'un test fonctionnel ne voit pas S 🟢 Livré Drapeau VISUAL_COMPARE_ENABLED à true M [Hypothèse]
F-12-11 E12 Vérifier Automatisation robotisée de navigateur Scénarios pilotés sur une application tierce Tester une application sans interface de programmation C 🟡 En cours Drapeau RPA_BROWSER_ENABLED à false par défaut L [Hypothèse]
F-12-12 E12 Vérifier Regroupement automatique des échecs par cause Classement des échecs par famille Réduire le bruit de diagnostic C 🟡 En cours Drapeau TRIAGE_CLUSTERING_ENABLED à false par défaut M [Hypothèse]

#16. Épopée E13 — Livraison et pipeline CI/CD

Intention. Fermer la boucle jusqu'à la production, avec un pipeline non contournable et une approbation humaine.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-13-01 E13 Livrer Pipeline en six étapes ordonnées Construction, test, analyse, porte, déploiement, surveillance Aucune étape sautée M 🟢 Livré deploy-service port 4121 — six étapes, ordre vérifié L [Hypothèse]
F-13-02 E13 Livrer Refus d'avancement hors ordre Erreur typée si une étape antérieure n'est pas franchie Le pipeline est une règle, pas un usage M 🟢 Livré 409 gate/out-of-order S [Hypothèse]
F-13-03 E13 Livrer Interdiction de marquer le déploiement à la main L'étape de déploiement ne se valide que par son point d'accès dédié Pas de raccourci humain M 🟢 Livré 409 deploy/via-deploy-endpoint S [Hypothèse]
F-13-04 E13 Livrer Analyse de sécurité en trois dimensions Analyse statique, dépendances, secrets ; un outil absent produit une erreur nommée Jamais de vert fabriqué M 🟢 Livré Étape scan501 nommant les analyseurs manquants M [Hypothèse]
F-13-05 E13 Livrer Simulation avant exécution Cible résolue, portes non franchies, approbation, obstacles listés, aucune écriture Savoir avant d'agir M 🟢 Livré POST …/deploy-runs/{id}/plan M [Hypothèse]
F-13-06 E13 Livrer Approbation humaine avec séparation des devoirs L'approbateur doit différer du demandeur Contrôle interne opposable M 🟢 Livré 409 deploy/approval-self — drapeau DEPLOY_REQUIRE_APPROVAL M [Hypothèse]
F-13-07 E13 Livrer Déploiement réel réinterrogé Application puis relecture de l'état ; vivant seulement si toutes les répliques convergent Pas de succès déclaratif M 🟢 Livré Étape deploy — relecture d'état M [Hypothèse]
F-13-08 E13 Livrer Retour arrière tracé Nouvelle ligne portant le lien vers le déploiement annulé Revenir en arrière sans perdre l'histoire M 🟢 Livré POST …/deployments/{id}/rollback M [Hypothèse]
F-13-09 E13 Livrer Construction et publication d'image sans démon Construction en tâche, secret de registre éphémère Construire sans privilège permanent M 🟢 Livré POST /api/v1/deploy/images/build-push — vérifié en développement L [Hypothèse]
F-13-10 E13 Livrer Vérification du lien au registre Poignée de main réelle avec le registre d'images Détecter une mauvaise clé avant la construction S 🟢 Livré POST /api/v1/deploy/registries/verify M [Hypothèse]
F-13-11 E13 Livrer Génération de pipeline pour quatre fournisseurs Fichier de pipeline produit, puis commité dans le dépôt Adopter sans réécrire M 🟢 Livré POST …/cicd/generate et …/cicd/setup — commit réel vérifié M [Hypothèse]
F-13-12 E13 Livrer Vue Livraison de l'espace de travail Pipeline du projet, export vers deux outils de suivi externes Le suivi externe reste possible S 🟢 Livré Vue delivery de l'espace de travail M [Hypothèse]
F-13-13 E13 Livrer Session d'accès administrateur à certificat court Certificat signé, renvoyé une seule fois, jamais persisté Accès exceptionnel tracé S 🟢 Livré POST /api/v1/deploy/bastion-sessions M [Hypothèse]
F-13-14 E13 Livrer Déclencheurs d'intégration continue externes Réaction à un événement de la chaîne du client Intégration bidirectionnelle S ⚪ Planifié L [Hypothèse]

#17. Épopée E14 — Mise en ligne du produit client

Intention. Servir le produit du client sur un sous-domaine, avec chiffrement du transport, à partir de la chaîne complète.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-14-01 E14 Mise en ligne Mise en ligne sur sous-domaine avec certificat Espace de noms, charge de travail, service, entrée, certificat automatique La boucle est fermée M 🟢 Livré POST /api/v1/deploy/go-live/{projet} — vérifié en production L [Hypothèse]
F-14-02 E14 Mise en ligne Interrupteur maître de mise en ligne Sans lui, réponse explicite de non-implémentation Pas de déploiement accidentel M 🟢 Livré Drapeau GOLIVE_ENABLED à false par défaut S [Hypothèse]
F-14-03 E14 Mise en ligne Interrupteur maître d'exécution réelle Sans lui, aucune exécution n'est simulée Honnêteté d'ingénierie M 🟢 Livré Drapeau DEPLOY_LIVE à false par défaut S [Hypothèse]
F-14-04 E14 Mise en ligne Publication d'un front statique vers un réseau de diffusion Tâche exécutant l'outil de publication, adresse publique renvoyée Front en ligne en une commande S 🟢 Livré POST /api/v1/deploy/deploy/cloudflare-pages — vérifié en développement M [Hypothèse]
F-14-05 E14 Mise en ligne Publication d'un front vers un stockage objet Téléversement réel et adresse signée Alternative sans réseau de diffusion S 🟢 Livré POST …/targets/publish-s3 M [Hypothèse]
F-14-06 E14 Mise en ligne Publication d'archive d'artefact Archive construite, servie, adresse signée Livrable téléchargeable C 🟢 Livré POST …/artifacts/publish-zip S [Hypothèse]
F-14-07 E14 Mise en ligne Déploiement par ligne de commande de fournisseur d'infonuagique Exécution d'un outil en ligne de commande dans une tâche, avec les identifiants déposés Couvrir tous les fournisseurs par un mécanisme unique S 🟢 Livré POST …/deploy/cloud-cli — vérifié sur un fournisseur M [Hypothèse]
F-14-08 E14 Mise en ligne Coffre de secrets par projet Dépôt réel d'une valeur, relue indépendamment, jamais renvoyée Aucun secret dans la réponse M 🟢 Livré POST …/credentials/deposit — vérifié en développement et en production M [Hypothèse]
F-14-09 E14 Mise en ligne Pilotes natifs pour trois plateformes de conteneurs gérés Intégration dédiée par fournisseur Confort d'exploitation S ⚪ Planifié — · réponse explicite de non-implémentation XL [Hypothèse]
F-14-10 E14 Mise en ligne Échange de jetons pour trois registres d'infonuagique Obtention d'un jeton court par fournisseur Publier vers le registre du client S ⚪ Planifié L [Hypothèse]
F-14-11 E14 Mise en ligne Provisionnement automatique d'un fournisseur d'identité Création d'un espace d'identité et d'un client pour le produit livré Le produit livré a son propre accès M 🔴 Bloqué POST …/idp/apply — refus d'autorisation vérifiés empiriquement sur le serveur d'identité M [Hypothèse]

#18. Épopée E15 — Plan de contrôle d'administration

Intention. Donner à l'exploitant de la plateforme un poste de pilotage unique, cloisonné par capacité.

Nuance à ne jamais omettre en communication. Le portail d'administration compte exactement 16 destinations, verrouillées par un test unitaire, et croise 3 rôles de plateforme avec 16 capacités.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-15-01 E15 Plan de contrôle État système Santé de neuf services, indicateurs de projet, distribution par sévérité, brèches de seuil Un écran pour savoir si tout va bien M 🟢 Livré /overviewadmin-portal M [Hypothèse]
F-15-02 E15 Plan de contrôle Flotte d'agents Compteurs par statut, graphe d'exécution, tiroir de détail, interruption Piloter l'activité agentique M 🟢 Livré /fleet M [Hypothèse]
F-15-03 E15 Plan de contrôle Locataires Sélection, création avec identifiant court et plan, registre d'organisations Ouvrir un client en quelques champs M 🟢 Livré /tenantsPOST /admin/tenants M [Hypothèse]
F-15-04 E15 Plan de contrôle Utilisateurs et contrôle d'accès Cycle de vie complet, attribution de rôles, permissions effectives, dérogations Gérer les accès sans base annexe M 🟢 Livré /users — capacités users:manage et rbac:edit L [Hypothèse]
F-15-05 E15 Plan de contrôle Gouvernance et séparation des devoirs Chargement des revues, approbation ou rejet, blocage de l'auto-approbation Contrôle interne exécutable M 🟢 Livré /governancePOST /extensions/{genre}/{id}/review M [Hypothèse]
F-15-06 E15 Plan de contrôle Budgets et fenêtres de quota Création et modification de budgets, jauges de consommation Maîtrise du coût M 🟢 Livré /budgets — capacité budgets:manage M [Hypothèse]
F-15-07 E15 Plan de contrôle Audit et conformité Recherche, vérification de la chaîne, rapport de conformité, export local Répondre à un auditeur M 🟢 Livré /audit — capacité audit:export M [Hypothèse]
F-15-08 E15 Plan de contrôle Drapeaux de fonctionnalité Création avec clé contrôlée, portée, déploiement progressif de 0 à 100 % Livrer sans redéployer M 🟢 Livré /flagsplatform-config-service port 4112 M [Hypothèse]
F-15-09 E15 Plan de contrôle Modèles et adaptateurs Configurations de modèles et d'assistants, chemin de coffre, valeur par défaut Changer de modèle sans livraison M 🟢 Livré /models — capacité models:manage M [Hypothèse]
F-15-10 E15 Plan de contrôle Garde-fous et politiques d'exécution Deux familles de politiques, plus un évaluateur à la volée Régler la sécurité d'exécution M 🟢 Livré /policies — capacité policies:manage M [Hypothèse]
F-15-11 E15 Plan de contrôle Registre à trois onglets Compétences, outils, prompts ; rédaction, import de graine curée, révocation Un seul écran pour le catalogue M 🟢 Livré /registry — capacité registry:manage L [Hypothèse]
F-15-12 E15 Plan de contrôle Agents IA Registre central lisible, détail par agent, activation Inventaire opposable M 🟢 Livré /agents — capacité agents:manage M [Hypothèse]
F-15-13 E15 Plan de contrôle Personnel IA Compteurs, roster, équipes, suspension et reprise Exploitation du personnel virtuel S 🟢 Livré /workforceagentic-core-service M [Hypothèse]
F-15-14 E15 Plan de contrôle Rôles IA Bundle résolu, liaison de capacités, plafond d'autonomie, découverte en ligne Composer un rôle sans code S 🟡 En cours /roles — dépend du drapeau de rôles virtuels M [Hypothèse]
F-15-15 E15 Plan de contrôle Module de démonstration Statut, provisionnement, réinitialisation, suppression du locataire de démonstration Démonstration reproductible S 🟡 En cours /demo — drapeau DEMO_MODULE_ENABLED à false par défaut M [Hypothèse]
F-15-16 E15 Plan de contrôle Configuration Identité agissante, rôles de plateforme, adresses de service Diagnostic d'exploitation S 🟢 Livré /config — capacité config:read S [Hypothèse]

#19. Épopée E16 — Identité, RBAC et multi-locataire

Intention. Une seule chaîne d'autorisation, du navigateur jusqu'à la ligne de base de données, et aucune fuite entre clients.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-16-01 E16 Identité Authentification par code d'autorisation avec vérificateur Clients publics sans secret dans le navigateur Standard d'authentification moderne M 🟢 Livré Clients publics, méthode de vérification S256 M [Hypothèse]
F-16-02 E16 Identité Vérification de jeton par la passerelle Clés publiques mises en cache, rafraîchies, servies même périmées en cas de panne Résilience de l'authentification M 🟢 Livré api-gateway — cache de clés, cinq tentatives M [Hypothèse]
F-16-03 E16 Identité Cinq rôles hiérarchiques Lecteur, rédacteur, publieur, administrateur, propriétaire ; un rang supérieur satisfait un rang inférieur Modèle simple et prévisible M 🟢 Livré shared/auth/rbac.py — hiérarchie de rôles M [Hypothèse]
F-16-04 E16 Identité Résolution du locataire à trois niveaux En-tête dédié, puis revendication du jeton, puis paramètre de requête Prévisible et testable M 🟢 Livré shared/middleware/tenant.py S [Hypothèse]
F-16-05 E16 Identité Masquage d'existence entre locataires Un identifiant en désaccord avec le jeton produit une absence, pas un refus Minimisation de la divulgation M 🟢 Livré Réponse 404 au lieu de 403 S [Hypothèse]
F-16-06 E16 Identité Isolation au niveau des lignes en base Politique de sécurité forcée par locataire sur les tables applicatives Défense en profondeur M 🟢 Livré Politiques *_tenant_iso forcées L [Hypothèse]
F-16-07 E16 Identité Moteur de permissions en cascade Défaut de rôle, puis dérogation la plus spécifique, sinon refus Réglage fin sans exception codée M 🟢 Livré services/permission_engine.py L [Hypothèse]
F-16-08 E16 Identité Journal des évaluations de permission Chaque décision est écrite Expliquer un refus S 🟢 Livré Table app_permission_audit_log S [Hypothèse]
F-16-09 E16 Identité Cloisonnement d'interface par capacité Bouton conditionné avant même l'appel serveur, serveur toujours autoritatif Confort sans faux sentiment de sécurité M 🟢 Livré GatedButtonfrontend/admin-portal M [Hypothèse]
F-16-10 E16 Identité Invitations avec durée de vie Jeton d'invitation résolu publiquement, acceptation créant l'utilisateur et l'adhésion Ouvrir une équipe sans administration lourde M 🟢 Livré POST /api/v1/users/invite — durée de sept jours M [Hypothèse]
F-16-11 E16 Identité Second facteur et gestion des sessions Activation, codes de secours, révocation de session Sécurité du compte S 🟢 Livré /security/2fa/* et /security/sessions M [Hypothèse]
F-16-12 E16 Identité Mode strict d'authentification imposé par manifeste Fixer explicitement le mode par environnement Fermer la posture par défaut M 🟡 En cours Mode dev-headers par défaut du code, à surcharger S [Hypothèse]

#20. Épopée E17 — Audit, conformité et Loi 25

Intention. Rendre la trace opposable, pas seulement disponible.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-17-01 E17 Audit Journal d'audit à chaîne de hachage Chaque événement scelle le précédent Altération détectable M 🟢 Livré audit-compliance-service port 4113 — /audit/events L [Hypothèse]
F-17-02 E17 Audit Vérification de l'intégrité de la chaîne Recalcul complet à la demande Preuve, pas promesse M 🟢 Livré GET /audit/verify-chain M [Hypothèse]
F-17-03 E17 Audit Recherche multicritère Par acteur, action, ressource, texte libre Retrouver un événement en enquête M 🟢 Livré /audit du plan de contrôle M [Hypothèse]
F-17-04 E17 Audit Rapport de conformité sur période Génération et export local Livrable d'audit daté M 🟢 Livré POST /compliance/reports de genre loi25 M [Hypothèse]
F-17-05 E17 Audit Journal des appels d'outils Trace paginée, empreintes seulement Traçabilité sans exposition de contenu M 🟢 Livré GET /api/v1/audit/tool-calls M [Hypothèse]
F-17-06 E17 Audit Export du journal d'appels en deux formats Sortie tabulaire et sortie imprimable fidèles Transmettre à un tiers S 🟢 Livré GET …/audit/tool-calls/export S [Hypothèse]
F-17-07 E17 Audit Registre de consentement en ajout seul Preuve de consentement horodatée Exigence réglementaire M 🟢 Livré Table app_consent_records M [Hypothèse]
F-17-08 E17 Audit Demandes d'accès et d'export de données personnelles Traitement des demandes de personnes concernées Exigence réglementaire M 🟢 Livré Tables app_dsar_requests et app_data_export_jobs M [Hypothèse]
F-17-09 E17 Audit Rattachement d'une juridiction à un utilisateur Adhésion multi-juridiction, propagée en en-tête Règles locales appliquées S 🟢 Livré /api/v1/users/me/jurisdictions M [Hypothèse]
F-17-10 E17 Audit Émission d'audit systématique par intergiciel Chaque service émet ses événements sans code dédié Couverture homogène M 🟢 Livré AuditEmitMiddleware dans les services de vague 2 M [Hypothèse]

#21. Épopée E18 — Commercialisation, budgets et quotas

Intention. Vendre l'usage sans jamais inventer un montant.

Nuance à ne jamais omettre en communication. Le nettoyage du catalogue de plans est un préalable bloquant : trois jeux de données de démarrage incompatibles coexistent dans le dépôt, dont un sur un schéma périmé.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-18-01 E18 Commercial Catalogue de plans lisible publiquement Plans affichés sur les pages d'inscription et de tarification Parcours d'achat sans authentification M 🟢 Livré GET /api/v1/billing/plans — table app_plans M [Hypothèse]
F-18-02 E18 Commercial Devise unique Dollar canadien, seule devise présente dans le code Pas de conversion inventée M 🟢 Livré Colonne currency avec valeur par défaut CAD S [Hypothèse]
F-18-03 E18 Commercial Nettoyage du catalogue de plans Un seul jeu de données de démarrage, vocabulaire générique Préalable bloquant au lancement M 🟡 En cours Trois jeux de données incompatibles constatés M [Hypothèse]
F-18-04 E18 Commercial Abonnement, changement de plan, résiliation Cycle de vie complet, avec calcul au prorata Autonomie du client M 🟢 Livré POST /billing/subscription/change-plan et …/cancel L [Hypothèse]
F-18-05 E18 Commercial Essai sans carte Quatorze jours, rappels à sept, trois et un jour, rétrogradation à l'échéance Essai sans friction S 🟢 Livré Profils de facturation — mode sans paiement M [Hypothèse]
F-18-06 E18 Commercial Traitement des événements du prestataire de paiement Signature vérifiée et idempotence Facturation fiable M 🟢 Livré POST /billing/webhooks/stripe — journal d'événements M [Hypothèse]
F-18-07 E18 Commercial Droits d'usage par plan Dix drapeaux et six quotas résolus par plan Le plan devient exécutable M 🟡 En cours Drapeau REGISTRY_VIRTUAL_ROLES_ENABLED à false par défaut L [Hypothèse]
F-18-08 E18 Commercial Plafonnement de l'autonomie par le plan Niveau effectif égal au minimum entre rôle et plan ; repli vers le bas en cas d'incertitude Gouvernance liée au contrat M 🟡 En cours cap_autonomy — repli sur N1 M [Hypothèse]
F-18-09 E18 Commercial Budgets par périmètre Limite, seuil d'avertissement, seuil critique Maîtrise du coût par équipe M 🟢 Livré billing-usage-service port 4115 — /budgets M [Hypothèse]
F-18-10 E18 Commercial Fenêtres de quota par modèle Consommation, pourcentage utilisé, date de réinitialisation Anticiper la coupure M 🟢 Livré /quota-windows M [Hypothèse]
F-18-11 E18 Commercial Reçu honnête sans service de facturation Marqueur explicite de non-comptabilisation, jamais de montant inventé Honnêteté d'ingénierie M 🟢 Livré shared/billing/credit_guard.py S [Hypothèse]
F-18-12 E18 Commercial Sauvegarde d'une nouvelle configuration de facturation Écriture chiffrée au repos Sécurité des clés de paiement M 🔴 Bloqué Clé de chiffrement à provisionner depuis le coffre vers le cluster S [Hypothèse]
F-18-13 E18 Commercial Compteurs d'usage réels sur la page d'usage Remplacement des compteurs figés par des mesures Ne rien afficher de factice M 🟡 En cours GET /billing/usage — compteurs codés en dur constatés M [Hypothèse]

#22. Épopée E19 — Retours utilisateurs et feuille de route publique

Intention. Faire remonter la voix de l'utilisateur jusqu'à l'exigence, sans passer par une boîte de courriel.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-19-01 E19 Retours Boîte de réception des retours par projet Idées reçues, filtrées, triées Un seul entonnoir M 🟢 Livré feedback-service port 4130 — /projects/[projectId]/feedback M [Hypothèse]
F-19-02 E19 Retours Vote sur une idée Signal de priorité par les utilisateurs Prioriser sur des faits S 🟢 Livré Vue de retours — action de vote S [Hypothèse]
F-19-03 E19 Retours Commentaire et réponse publique Fil attaché à l'idée Boucler avec l'auteur S 🟢 Livré Vue de retours — commentaire et réponse S [Hypothèse]
F-19-04 E19 Retours Changement de statut d'une idée Cycle de vie de l'idée jusqu'à la livraison Transparence de traitement S 🟢 Livré Vue de retours — statut S [Hypothèse]
F-19-05 E19 Retours Tableau public de retours Page accessible sans authentification Collecter au-delà des utilisateurs connectés S 🟢 Livré /public/feedback M [Hypothèse]
F-19-06 E19 Retours Feuille de route et journal des changements publics Onglets publics de suivi Montrer l'avancement S 🟢 Livré Onglets publics du tableau de retours M [Hypothèse]
F-19-07 E19 Retours Exemption d'authentification sur les routes publiques Le garde d'authentification laisse passer le préfixe public Ne pas rediriger un visiteur anonyme M 🟢 Livré Garde d'authentification du portail client S [Hypothèse]
F-19-08 E19 Retours Widget de collecte embarquable Paquet autonome intégrable dans l'application du client Collecter dans le produit livré S 🟢 Livré frontend/packages/feedback-widget M [Hypothèse]
F-19-09 E19 Retours Promotion d'une idée en exigence Création d'un objet de spécification depuis une idée Fermer la boucle jusqu'à la spécification S ⚪ Planifié M [Hypothèse]

#23. Épopée E20 — Bilingue, accessibilité et expérience de portail

Intention. Le français est la langue par défaut du produit, pas une traduction tardive.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-20-01 E20 Expérience Français par défaut dans les deux portails Locale par défaut définie au niveau de la configuration d'internationalisation Produit québécois de naissance M 🟢 Livré src/i18n/config.ts des deux portails M [Hypothèse]
F-20-02 E20 Expérience Parité stricte des clés de traduction Même nombre de clés en français et en anglais Aucune bascule qui casse l'écran M 🟢 Livré admin-portal — 841 clés strictement identiques M [Hypothèse]
F-20-03 E20 Expérience Bascule de langue sans rechargement Changement de locale côté client Confort d'usage S 🟢 Livré locale-provider.tsx S [Hypothèse]
F-20-04 E20 Expérience Thème clair, sombre et système Trois états, script de thème sans clignotement Confort et accessibilité S 🟢 Livré Script de thème bloquant du portail client S [Hypothèse]
F-20-05 E20 Expérience Système de conception partagé Jetons de couleur, typographie, espacements, élévations, durées Cohérence entre surfaces M 🟢 Livré frontend/packages/design-system L [Hypothèse]
F-20-06 E20 Expérience Rail repliable et mémorisé Préférence conservée entre sessions Adapter à l'écran C 🟢 Livré Clé de préférence de rail S [Hypothèse]
F-20-07 E20 Expérience Notifications avec compteur non lu Libellé énonçant le nombre de messages non lus Accessibilité au lecteur d'écran S 🟢 Livré Clé nav.notificationsWithCount S [Hypothèse]
F-20-08 E20 Expérience Clé de traduction manquante pour la destination Personnel IA Libellé absent en français et en anglais dans le plan de contrôle Correctif d'interface M 🟡 En cours Clé nav.workforce absente des deux fichiers de messages S [Hypothèse]
F-20-09 E20 Expérience Libellé unique pour la vue de personnel virtuel Deux libellés français concurrents désignent le même écran Cohérence de vocabulaire S 🟡 En cours Écart constaté entre le sélecteur de vue et le titre de la vue S [Hypothèse]
F-20-10 E20 Expérience Alignement du nom d'application sur la marque publique L'interface affiche encore le nom de code interne Préalable de marque au jour J M 🟡 En cours Clé de nom d'application du portail client S [Hypothèse]

#24. Épopée E21 — Documentation publique et prise en main

Intention. Publier une documentation qui décrit le produit réel, avec ses statuts.

ID Épopée Fonctionnalité Description Valeur MoSCoW Statut réel Preuve (route/service) Effort [Hypothèse]
F-21-01 E21 Documentation Portail de documentation publique Surface web dédiée, distincte des deux portails applicatifs Point d'entrée public unique M 🟡 En cours frontend/docs-portal — destiné à kyspectradoc.kyrieva.com L [Hypothèse]
F-21-02 E21 Documentation Domaine public tranché Zone détenue et vérifiée dans le compte de l'éditeur Publication sans surprise de zone M 🟢 Livré kyspectradoc.kyrieva.com — zone kyrieva.com active S [Hypothèse]
F-21-03 E21 Documentation Adresse technique de repli Adresse du projet de pages statiques Continuité en cas d'incident de zone S 🟢 Livré Projet kyspectra-docs-prod S [Hypothèse]
F-21-04 E21 Documentation Documentation bilingue Français et anglais, sans traduction au rabais Cohérent avec le produit M 🟡 En cours Chantier du programme de lancement L [Hypothèse]
F-21-05 E21 Documentation Statuts affichés sur chaque capacité documentée Livré, En cours, Planifié, Bloqué Aucune promesse implicite M 🟡 En cours Convention de ce dossier S [Hypothèse]
F-21-06 E21 Documentation Parcours de prise en main guidé Accompagnement pas à pas dans le portail Réduire le délai de première valeur S 🟢 Livré portal-experience-service/api/v1/onboarding M [Hypothèse]
F-21-07 E21 Documentation Écrans d'accueil et vues sauvegardées Page d'accueil configurable, filtres mémorisés Adapter le portail au métier S 🟢 Livré /api/v1/home et /saved-views M [Hypothèse]
F-21-08 E21 Documentation Journal des changements du produit Publication des évolutions par version Confiance dans le rythme S 🟡 En cours Onglet de journal des changements du tableau public M [Hypothèse]
F-21-09 E21 Documentation Fichiers de logo de la marque Production des fichiers d'identité visuelle Préalable de marque au jour J M 🟡 En cours Aucun fichier de logo dans le dépôt à ce jour S [Hypothèse]

#25. Carte des dépendances entre épopées

La lecture se fait de gauche à droite : une flèche pleine signifie « ne peut pas fonctionner sans », une flèche pointillée signifie « gagne fortement en valeur avec ».

Aucun diagramme à afficher

Diagramme 1 — flowchart

#25.1 Chemin critique du lancement

Le chemin le plus court entre « une organisation découvre KySpectra » et « une organisation en tire une valeur mesurable » passe par sept épopées.

Aucun diagramme à afficher

Diagramme 2 — flowchart

#25.2 Dépendances bloquantes déclarées

Épopée dépendante Dépend de Nature Conséquence si non levée
E09 Registre — adoption de capacités globales Activation du drapeau de portées à trois niveaux Configuration Les routes de catalogue global répondent une absence
E09 Registre — rôles virtuels Activation du drapeau de rôles virtuels Configuration Le plafonnement d'autonomie n'est jamais appliqué
E18 Commercialisation — droits d'usage Amorçage d'un catalogue de plans propre Données Les droits résolus retombent sur le palier gratuit
E14 Mise en ligne — fournisseur d'identité Droits d'administration sur le serveur d'identité Exploitation Le produit livré n'a pas son propre accès
E18 Commercialisation — configuration de facturation Provisionnement d'une clé de chiffrement Exploitation Toute nouvelle sauvegarde échoue en position fermée
E21 Documentation — publication Achèvement du portail de documentation Chantier Aucun point d'entrée public au jour J

#26. Feuille de route par vagues — dates absolues

Fuseau de référence : America/Toronto. Les bornes sont celles du calendrier de lancement officiel.

#26.1 Vue d'ensemble

Vague Nom Bornes absolues Repère Objectif de sortie
V0 Fondations et durcissement 2026-08-17 → 2026-09-06 J-85 → J-65 Aucune posture par défaut permissive, catalogue propre, marque alignée
V1 Pilotes fermés 2026-09-07 → 2026-10-04 J-64 → J-37 Trois à cinq partenaires de conception vont du dépôt importé au produit servi
V2 Bêta ouverte 2026-10-05 → 2026-11-08 J-36 → J-2 Inscription autonome, documentation publique, tableau de retours actif
GEL Gel de code et répétition 2026-11-08 → 2026-11-09 J-2 → J-1 Aucune modification hors correctif de blocage
J0 Lancement public 2026-11-10 J0 Ouverture publique sur quatre fuseaux
V3 Quatre-vingt-dix jours 2026-11-10 → 2027-02-07 J0 → J+89 Élargissement des cibles de livraison et du personnel virtuel

#26.2 Vague 0 — Fondations et durcissement · 2026-08-17 → 2026-09-06

Ordre Élément du carnet Statut d'entrée Résultat attendu à la sortie Blocage si non fait
1 F-18-03 Nettoyage du catalogue de plans 🟡 En cours Un seul jeu de données, vocabulaire générique Oui — préalable bloquant déclaré
2 F-16-12 Mode strict d'authentification par manifeste 🟡 En cours Mode strict fixé sur les trois environnements Oui — posture de sécurité
3 F-20-10 Alignement du nom d'application 🟡 En cours La marque publique s'affiche dans l'interface Oui — préalable de marque
4 F-21-09 Fichiers de logo 🟡 En cours Jeu de fichiers d'identité disponible Oui — préalable de marque
5 F-20-08 Clé de traduction manquante 🟡 En cours Libellé présent en français et en anglais Non — visible mais non bloquant
6 F-20-09 Libellé unique du personnel virtuel 🟡 En cours Un seul libellé retenu Non
7 F-18-12 Clé de chiffrement de facturation 🔴 Bloqué Clé provisionnée du coffre vers le cluster Oui — écriture de configuration impossible
8 Retrait des rôles sectoriels hérités 🟡 En cours Hiérarchie de rôles sans résidu d'un domaine antérieur Oui — clarté et sécurité
9 F-18-13 Compteurs d'usage réels 🟡 En cours Aucun compteur figé affiché Oui — honnêteté d'affichage
10 Sondes de vivacité découplées de la base 🟢 Livré Deux répliques minimum sur les services critiques Non — déjà appliqué, à généraliser

#26.3 Vague 1 — Pilotes fermés · 2026-09-07 → 2026-10-04

Ordre Élément du carnet Statut d'entrée Résultat attendu à la sortie
1 F-09-06 Adoption de capacités globales 🟡 En cours Drapeau de portées à trois niveaux activé sur au moins un environnement
2 F-09-11 Rôles virtuels et plafond d'autonomie 🟡 En cours Drapeau activé après amorçage des plans, plafonnement observé en ligne
3 F-18-07 Droits d'usage par plan 🟡 En cours Résolution des droits vérifiée pour les trois paliers
4 F-18-08 Plafonnement de l'autonomie par le plan 🟡 En cours Plafonnement prouvé en navigateur réel
5 F-03-10 Compagnon du plan de contrôle 🟡 En cours Raccordement à un modèle, ou message d'indisponibilité conservé
6 F-15-15 Module de démonstration 🟡 En cours Locataire de démonstration reproductible pour les pilotes
7 F-01-11 Exploration en direct d'une application cible 🟡 En cours Moteur de navigation configuré sur un environnement
8 F-21-01 Portail de documentation publique 🟡 En cours Première version publiée sur le domaine tranché

#26.4 Vague 2 — Bêta ouverte · 2026-10-05 → 2026-11-08

Ordre Élément du carnet Statut d'entrée Résultat attendu à la sortie
1 F-21-04 Documentation bilingue 🟡 En cours Parité des deux langues sur les pages de référence
2 F-21-05 Statuts affichés sur chaque capacité 🟡 En cours Aucune page publique sans statut
3 F-19-06 Feuille de route et journal des changements publics 🟢 Livré Alimentés en continu pendant la bêta
4 F-08-11 Flux d'activité par événements serveur 🟡 En cours Sondage remplacé, ou choix documenté de le conserver
5 F-09-12 Place de marché de capacités 🟡 En cours Déploiement et première preuve en ligne, ou report explicite en V3
6 F-02-11 Application automatique d'un changement de spécification 🟡 En cours Drapeau activé sur un environnement de qualification
7 F-12-11 Automatisation robotisée de navigateur 🟡 En cours Activation contrôlée sur un périmètre pilote
8 F-12-12 Regroupement des échecs par cause 🟡 En cours Activation contrôlée sur un périmètre pilote

#26.5 Gel de code et répétition générale · 2026-11-08 → 2026-11-09

Élément Attendu
Portée du gel Aucune fusion hors correctif de blocage, sur les trois environnements
Répétition Parcours complet d'un compte neuf, du dépôt importé au produit servi, en navigateur réel
Sortie de gel Décision explicite consignée, avec la liste des correctifs entrés

#26.6 Jour J — 2026-11-10

Fuseau Décalage par rapport à la référence Ce qui doit être servi
America/Toronto référence Portail client, portail d'administration, documentation publique
Europe/Paris +6 h Idem, en français par défaut
Africa/Abidjan +4 h Idem
America/Los_Angeles −3 h Idem

#26.7 Vague 3 — Quatre-vingt-dix jours · 2026-11-10 → 2027-02-07

Ordre Élément du carnet Statut d'entrée Résultat visé
1 F-14-09 Pilotes natifs pour trois plateformes de conteneurs gérés ⚪ Planifié Au moins un pilote natif livré
2 F-14-10 Échange de jetons pour trois registres d'infonuagique ⚪ Planifié Au moins un fournisseur couvert
3 F-13-14 Déclencheurs d'intégration continue externes ⚪ Planifié Réception d'un événement de la chaîne du client
4 F-10-09 Autonomie déléguée et escalade ⚪ Planifié Conception validée et première implémentation
5 F-10-10 Registre d'imputabilité ⚪ Planifié Chaîne de responsabilité par tâche
6 F-01-12 Analyseurs pour les langages hors Python ⚪ Planifié Au moins un langage supplémentaire analysé réellement
7 F-11-10 Agrégat d'exécutions entre locataires ⚪ Planifié Vue consolidée pour l'exploitant
8 F-06-10 File de revue transverse ⚪ Planifié Vue unique des décisions en attente
9 F-19-09 Promotion d'une idée en exigence ⚪ Planifié Boucle fermée du retour à la spécification
10 F-07-13 Application mobile native ⚪ Planifié Décision de lancement ou de report, sans annonce prématurée

#26.8 Ce qui n'est pas au programme de la première année

Élément Motif du refus
Application mobile native publiée sur un magasin d'applications Aucun code mobile n'existe ; les portails sont responsives et utilisables sur mobile via navigateur
Portail « business » distinct Il n'existe pas : « business » est une persona à l'intérieur du portail client
Conformité réglementaire automatique La plateforme fournit la trace, pas le verdict de conformité
Comparaison chiffrée de productivité Aucune mesure défendable n'existe à ce jour

#27. Dette technique connue et assumée

Cette section existe parce qu'un carnet qui cache ses écarts se détruit au premier essai client. Chaque ligne est vérifiée par lecture directe du dépôt au 2026-08-17.

#27.1 Dette de posture et de sécurité

# Dette Manifestation observable Risque Statut Vague de résolution
D-01 Le mode d'authentification par en-têtes auto-déclarés est la valeur par défaut du code et n'est surchargé dans aucun manifeste Les gardes de rôle ne s'appliquent pas si le mode strict n'est pas fixé Élevé 🟡 En cours V0
D-02 Cinq rôles sectoriels hérités d'un domaine antérieur subsistent hors hiérarchie Ils ne satisfont jamais une exigence de rang minimum et brouillent la lecture Moyen 🟡 En cours V0
D-03 Un service du plan agentique n'a aucune garde de rôle sur ses routes de lecture Seule la résolution du locataire protège l'accès Moyen 🟡 En cours V0
D-04 Une clé publiable de test d'un prestataire de paiement est présente en clair dans un jeu de données de démarrage Aucune valeur secrète, mais mauvaise pratique visible Faible 🟡 En cours V0
D-05 Un coupon de remise totale, illimité et sans expiration, est présent dans un jeu de données de démarrage Risque commercial si le jeu est appliqué en production Élevé 🟡 En cours V0
D-06 Le clonage d'un dépôt distant s'exécute sans délai maximal Un dépôt lent peut immobiliser un travailleur Moyen ⚪ Planifié V1
D-07 Aucune limite de taille ni de nombre de fichiers à l'import d'un dépôt Consommation de ressources non bornée Moyen ⚪ Planifié V1
D-08 La règle de sortie réseau de la rétro-ingénierie autorise tout le port 443 public Surface de sortie plus large que nécessaire Moyen ⚪ Planifié V2

#27.2 Dette de données et de catalogue

# Dette Manifestation observable Risque Statut Vague de résolution
D-09 Trois jeux de données de démarrage de plans coexistent, dont un sur un schéma périmé Prix et limites incohérents selon l'origine Élevé 🟡 En cours V0
D-10 Le plan gratuit affiche encore un vocabulaire hérité d'un autre domaine Message commercial incohérent avec le produit Élevé 🟡 En cours V0
D-11 Les limites renvoyées par le catalogue sont vides pour deux plans, faute de correspondance de champs Le client ne voit pas ses limites réelles Moyen 🟡 En cours V0
D-12 Les compteurs d'usage affichés sont figés dans le code Donnée factice présentée comme réelle Élevé 🟡 En cours V0
D-13 Un point d'accès permet d'activer un abonnement sans passer par le prestataire quand le total est nul, à partir d'un montant fourni par le client Contournement de facturation possible Élevé 🟡 En cours V0
D-14 Les types de candidats produits par certains émetteurs sont hors du vocabulaire persistable Ces artefacts restent en lecture seule Faible ⚪ Planifié V3

#27.3 Dette d'interface et de marque

# Dette Manifestation observable Risque Statut Vague de résolution
D-15 L'interface affiche encore le nom de code interne au lieu de la marque publique Incohérence de marque visible par tout visiteur Élevé 🟡 En cours V0
D-16 Aucun fichier de logo n'existe dans le dépôt ; le logo est un tracé dessiné en ligne Impossible de fournir un jeu d'éléments visuels à un partenaire Élevé 🟡 En cours V0
D-17 La clé de traduction de la destination Personnel IA est absente en français et en anglais Message manquant dans cinq composants du plan de contrôle Moyen 🟡 En cours V0
D-18 Deux libellés français concurrents désignent la vue de personnel virtuel Vocabulaire incohérent dans une même surface Faible 🟡 En cours V0
D-19 Le commentaire d'en-tête du registre des vues n'énumère que dix vues sur onze Documentation interne périmée Faible ⚪ Planifié V1
D-20 L'export statique commité du portail d'administration est antérieur à l'ajout d'une destination Artefact de dépôt trompeur Faible ⚪ Planifié V1
D-21 Le fichier de présentation du portail d'administration décrit encore une coquille sans code métier Documentation interne périmée Faible ⚪ Planifié V1
D-22 Un tableau de manifeste du module de démonstration est alimenté par une liste vide codée en dur Tableau jamais rendu Faible ⚪ Planifié V1

#27.4 Dette d'architecture et d'exploitation

# Dette Manifestation observable Risque Statut Vague de résolution
D-23 Le portail d'administration remplace le flux d'événements serveur par un sondage toutes les dix secondes Fraîcheur d'affichage dégradée Faible 🟡 En cours V2
D-24 La latence de santé affichée vaut toujours zéro en mode passerelle Indicateur non exploitable Faible ⚪ Planifié V2
D-25 Deux fonctions du client de registre sont exportées sans être référencées Code mort Faible ⚪ Planifié V1
D-26 Le module d'agrégation de la passerelle référence deux services absents du registre Entrées silencieusement filtrées Faible ⚪ Planifié V1
D-27 Le client de gestion de zone du fournisseur de noms de domaine est écrit et testé, mais jamais branché Deux réglages déclarés et jamais lus Faible ⚪ Planifié V2
D-28 Un test d'attribut sur un code d'erreur inexistant renvoie toujours le même code générique Diagnostic moins précis Faible ⚪ Planifié V1
D-29 Vingt-cinq noms de drapeaux figurent dans un document de conception sans exister dans le code Écart entre conception et réalité Moyen 🟡 En cours V1
D-30 Aucun outil de migration de schéma n'est utilisé pour le service d'identité ; six fichiers de définition de données sont appliqués à la main Reproductibilité dépendante d'un geste humain Moyen ⚪ Planifié V3
D-31 Les stocks de jetons d'autorisation déléguée pour quatre familles d'intégrations sont introuvables dans l'arbre Aucune persistance de jeton pour ces intégrations Moyen ⚪ Planifié V3
D-32 La résolution de noms externe échoue depuis les pods de l'environnement de développement Certaines chaînes ne sont vérifiables qu'en qualification ou en production Moyen 🟡 En cours V1

#27.5 Politique de dette

Règle Formulation
Ce qui est admis Une dette nommée, datée, chiffrée en effort et assignée à une vague
Ce qui est refusé Une dette découverte par un client avant d'être écrite ici
Seuil de blocage Toute dette classée « risque élevé » interdit la sortie de la vague 0
Revue Relecture de cette section à chaque bascule de vague, aux dates du § 26.1

#28. Récapitulatif statistique du carnet

#28.1 Par statut

Statut Fonctionnalités Part
🟢 Livré 167 70,2 %
🟡 En cours 39 16,4 %
⚪ Planifié 29 12,2 %
🔴 Bloqué 3 1,3 %
Total 238 100 %

#28.2 Par priorité MoSCoW

Priorité Fonctionnalités Part
M — indispensable 118 49,6 %
S — importante 100 42,0 %
C — souhaitable 19 8,0 %
W — hors périmètre 1 0,4 %
Total 238 100 %

#28.3 Par maillon de la chaîne de valeur

Maillon Épopées concernées Fonctionnalités Statut dominant
1 · Comprendre E01 12 🟢 Livré
2 · Spécifier E02, E03, E04 31 🟢 Livré
3 · Concevoir E05, E06 22 🟢 Livré
4 · Fabriquer E08, E10, E11 32 🟢 Livré
5 · Vérifier E12 12 🟢 Livré
6 · Livrer E13, E14 25 🟢 Livré pour Kubernetes
Plan de contrôle E09, E15, E16, E17, E18 63 🟢 Livré
Surfaces et adoption E07, E19, E20, E21 41 🟢 Livré sauf documentation
Total 21 épopées 238

#28.4 Ce que ce carnet engage

Engagement Portée
Chaque fonctionnalité citée porte une preuve, ou le statut Planifié et une preuve Vérifié par lecture directe du dépôt au 2026-08-17
Aucune fonctionnalité Planifiée n'est présentée comme disponible Contrôlé ligne par ligne
Chaque dette connue figure au § 27 Aucune omission volontaire
Toutes les estimations d'effort sont étiquetées comme hypothèses Aucune valeur contractuelle
Les dates de la feuille de route sont celles du calendrier officiel de lancement Fuseau de référence America/Toronto

KySpectra — Plateforme agentique SDD/SDLC · par Kyrieva
Documentation : kyspectradoc.kyrieva.com · Dossier de lancement : Strategielancement/
Document interne de pré-lancement — version 1.0 du 2026-08-17. Les données marquées « [Gabarit : … ] » doivent être renseignées ou revalidées avant diffusion externe.