mirror of
https://github.com/JMP-MS/ASPIC.git
synced 2026-10-27 17:17:08 +00:00
V1.23.24 Externalisation des prompts et évolutions des collaborateurs
This commit is contained in:
@@ -8,6 +8,8 @@
|
||||
|
||||
Pour les trois documents de ce projet (ce journal — résumé/index —, les Réflexions stratégiques, la Documentation utilisateur), **ainsi que pour les fichiers de section individuels du journal détaillé** (`/journal` sur GitHub, 28 sections numérotées 00 à 27 au 2 septembre 2026) : les mises à jour de contenu ne sont faites qu'**en toute fin de session**, jamais au fil de l'eau pendant les essais — pour éviter d'enregistrer un état intermédiaire ou instable. À ce moment-là, en plus d'écrire la mise à jour dans le document du projet le cas échéant, Claude fournit systématiquement une **copie téléchargeable** (fichier `.md`) de chaque document ou section modifié(e), pour que Jean-Marc puisse la sauvegarder de son côté et la déposer dans le dépôt GitHub. Pour une section du journal détaillé, le fichier téléchargeable reprend le nom exact utilisé dans `/journal` sur GitHub, pour un dépôt direct sans renommage.
|
||||
|
||||
**Mise à jour du 11 septembre 2026 (soir) — obsolète depuis le passage à Claude Code sur le serveur.** Le mécanisme ci-dessus (lecture via token GitHub, copie téléchargeable à redéposer) supposait l'ancien environnement cloud éphémère sans accès direct aux fichiers (voir consigne plus bas sur la fin de cet environnement). Désormais, Claude lit et modifie directement les fichiers de `/docker/aspic/src/journal` sur le serveur — la règle de fond (mise à jour de contenu en fin de session seulement, jamais au fil de l'eau) reste entière, mais l'étape de copie téléchargeable/dépôt manuel du contenu ne l'est plus : les fichiers sont déjà à jour sur le disque, prêts pour le `git add`/`commit`/`push` que Jean-Marc effectue lui-même.
|
||||
|
||||
**Cas particulier des fichiers de code livrés en session (2 septembre 2026) :** un fichier `.js` n'est pas téléchargeable tel quel depuis le client utilisé par Jean-Marc. Pour tout fichier JavaScript livré (`micro.js` et les suivants), fournir systématiquement, en plus du fichier `.js` normal, une copie strictement identique au format `.txt` (même nom, extension changée — ex. `micro.js.txt`), pour qu'elle soit récupérable.
|
||||
|
||||
**Précision du 2 septembre 2026 (fin de session) sur les exports SQL transmis par Jean-Marc :** un `CREATE TABLE`/`INSERT` envoyé par Jean-Marc est le compte-rendu d'une modification déjà faite à la main côté base (il travaille en éditant directement, puis exporte pour informer Claude) — jamais une commande à exécuter côté Claude. Claude peut donc lire ces exports comme l'état réel de la base au moment de l'envoi, sans jamais chercher à les "lancer".
|
||||
@@ -18,13 +20,15 @@ Pour les trois documents de ce projet (ce journal — résumé/index —, les R
|
||||
|
||||
- Format : `V<majeur>.<code>.<conception>` (ex. `V1.12.14`), sans zéro de tête sur aucun des trois nombres — pas de largeur fixe supposée à l'avance.
|
||||
- `<code>` : inchangé par rapport à la règle déjà en place depuis le début (incrémenté à la main une seule fois par session avec du code réellement livré et poussé, jamais à chaque fichier reçu).
|
||||
- `<conception>` : reprend le numéro de la dernière section **créée** dans les Réflexions stratégiques — jamais un simple complément apporté à une section déjà existante. Critère de Jean-Marc pour ouvrir une nouvelle section plutôt qu'un addendum : le jugement qu'une évolution de la conception est **majeure**, y compris sur un sujet déjà effleuré auparavant (auquel cas la nouvelle section peut reprendre l'ancien titre suivi de *"[Évolutions majeures]"*) — une évolution mineure ou un abandon reste un addendum dans la section existante, sans faire avancer ce compteur. Les "trous" de numérotation que ça peut produire (ex. de 10 à 28) sont acceptés sciemment par Jean-Marc, ce n'est pas une anomalie à corriger.
|
||||
- `<conception>` : compteur **libre**, incrémenté de 1 chaque fois que Jean-Marc juge qu'une évolution de la conception est **majeure**, y compris sur un sujet déjà effleuré auparavant (auquel cas la nouvelle section des Réflexions stratégiques peut reprendre l'ancien titre suivi de *"[Évolutions majeures]"*) — une évolution mineure ou un abandon reste un addendum dans la section existante, sans faire avancer ce compteur. **Correction du 11 septembre 2026** : ce paragraphe affirmait jusqu'ici, à tort, que `<conception>` "reprend le numéro de la dernière section créée" dans les Réflexions stratégiques — Jean-Marc a confirmé que ça n'a jamais été une règle réelle, seulement une coïncidence fréquente ces derniers temps (les sections récentes s'étant enchaînées sans saut). Les deux numérotations (le compteur de version, et le numéro qu'une section prend dans les Réflexions stratégiques, qui peut lui sauter — ex. de 10 à 28) restent indépendantes.
|
||||
- `<majeur>` : change uniquement quand Jean-Marc juge qu'ASPIC franchit un cap de maturité important — décision, pas calcul. À cette occasion, `<code>` repart à 1 (V1.58 → V2.1, jamais V2.59) tandis que `<conception>` continue sa suite normale sans saut ni retour à 1 (V1.58.67 → V2.1.68), puisque franchir ce cap est lui-même consigné comme une nouvelle section des Réflexions stratégiques.
|
||||
|
||||
**Consigne du 11 septembre 2026 — hygiène des sessions Claude Code, indépendante d'ASPIC.** En discutant d'une consommation inattendue sur la clé API (voir journal, section 32), Jean-Marc a réalisé que cette conversation même (Claude Code) tourne sur le même forfait que l'application, et coûte pour la même raison structurelle qu'un appel Anthropic classique : l'API est sans état, donc chaque nouvelle réponse renvoie (et refacture) tout l'historique du fil depuis le début — plus un fil est long, plus chaque tour coûte cher, quel que soit le sujet traité. Décision de Jean-Marc : fermer une session Claude Code dès qu'un sujet aboutit (un chantier de code livré, une décision stratégique actée) plutôt que de laisser un même fil grossir indéfiniment sur plusieurs sujets — un aller-retour de recherche web a par exemple consommé plus de 400 000 tokens à lui seul le 11 septembre 2026.
|
||||
|
||||
**Partage de responsabilité pour signaler un changement de version, en début ou en fin de session :** si Jean-Marc sait dès le début d'une session que le code va évoluer, il peut demander à Claude de faire évoluer `<code>` immédiatement plutôt que d'attendre la fin de session. Pour `<conception>`, par défaut c'est à Claude de juger et de signaler en fin de session si l'évolution a été assez majeure pour justifier une nouvelle section — sauf si Jean-Marc sait déjà en début de session que ce sera le cas, auquel cas il le dit d'emblée (c'est par exemple déjà acté pour la session suivant celle du 6 septembre 2026).
|
||||
|
||||
**Consigne du 11 septembre 2026 (soir) — fin de l'environnement cloud éphémère, mise à jour de la consigne du 2 septembre 2026 ci-dessus.** Confirmé en direct au fil d'une session : Claude Code tourne désormais sur le serveur de Jean-Marc lui-même (accès fichier direct à `/docker/aspic`, aux conteneurs Docker via `docker ps`/`docker exec`), et non plus dans un environnement cloud entièrement neuf à chaque fenêtre. La continuité entre deux fenêtres de conversation n'est donc plus assurée par les seuls documents de ce projet (journal, Réflexions stratégiques, Documentation utilisateur) : les fichiers de travail eux-mêmes persistent d'une session à l'autre sur le serveur. Cette consigne ne change rien à la discipline de mise à jour de fin de session décrite ci-dessus (elle reste le seul filet pour la mémoire *de Claude*, l'historique d'une conversation n'étant lui-même jamais garanti de survivre) ; en revanche, transmettre un fichier à Claude ne nécessite plus de le coller dans le chat — le déposer n'importe où sur le serveur (Jean-Marc envisage un répertoire dédié) suffit.
|
||||
|
||||
**Sur la pérennité des trois documents, précisé le 6 septembre 2026 :** Jean-Marc prévoit qu'un jour ce journal de développement (résumé/index, et les sections détaillées de `/journal`) sera repris et expurgé de ce qui sera devenu inutile — en conservant les anciennes versions via l'historique Git, projet non commencé et pas à l'ordre du jour. **Les Réflexions stratégiques, en revanche, ne seront jamais expurgées** : la méthode d'écriture qu'on vient d'adopter (addendum sur une évolution mineure, nouvelle section sur une évolution majeure, jamais de réécriture de l'existant) fait de ce document une trace chronologique complète et volontairement définitive de l'évolution de la pensée stratégique — utile en particulier pour retrouver, en relecture, des pistes un moment abordées puis laissées de côté qui mériteraient d'être reprises.
|
||||
|
||||
## Sommaire des sections (`/journal` sur GitHub)
|
||||
@@ -62,10 +66,11 @@ Pour les trois documents de ce projet (ce journal — résumé/index —, les R
|
||||
- 30. Chantier des consignes — moteur générique
|
||||
- 31. Compétences, Missions et premier chantier agentique — Sophia et les sites web
|
||||
- 32. BackOffice — Collaborateurs, Compétences, Espaces disque et coût IA
|
||||
- 33. Vision des compétences, champ Relationnel et sortie des prompts IA du code
|
||||
|
||||
*(Numérotation et titres repris du découpage fait par Jean-Marc le 31 août 2026, légèrement reformulés par lui à cette occasion — se référer aux fichiers eux-mêmes pour le libellé exact. Section 27 (Pilotage vocal) validée de bout en bout et son fichier définitif déposé dans `/journal` le 2 septembre 2026. Section 28 (Écran de fond) ouverte le 2 septembre 2026, toujours **en cours** — passée d'une maquette graphique exploratoire à un premier essai fonctionnel réel, puis (soirée du 2 au 3 septembre) à une pastille de comptage sur le classeur Contacts et à un premier affichage réel des post-its personnels sur le tableau de liège, puis (8 septembre 2026, matin) à un bureau à trois fonds interchangeables (liège actuel, futur écran assistants, futur tableau de bord) navigables par deux flèches, avant-plan désormais séparé du code des fonds, puis (9-10 septembre 2026) à un écran 2 ("assistants") réellement présenté (portraits, couleurs, rôles) et à une nouvelle répartition des 9 classeurs suivant le cycle de vie d'une affaire, puis (10 septembre 2026, soir) au renommage "collaborateurs" et à deux outils plein écran intégrés à cet écran 2 pour construire et tester l'identité de chaque collaborateur, avec un premier dialogue réel dans ASPIC via l'API Anthropic — fichier de section mis à jour ce jour-là, à déposer par Jean-Marc, voir Statut actuel. Section 29 (Interprétation vocale des contacts par LLM) ouverte et son fichier définitif déposé le 4 septembre 2026 après validation de bout en bout sur un premier corpus réel ; fichiers de section à déposer par Jean-Marc, voir Statut actuel. Section 30 (Chantier des consignes — moteur générique) ouverte le 6 septembre 2026, fichier définitif rédigé le soir même après validation de bout en bout du mécanisme sur des cas réels ; **substantiellement complétée le 7 septembre 2026** (hiérarchisation cohérence/Tests/IA, traçabilité de l'agent, `REA_NomAffiche`, premier appel IA réel dans une consigne avec avertissement bloquant) ; **complétée à nouveau le 8 septembre 2026** (unicité mail/portable, retrait des points sur les numéros, échecs de `consigne_completer_code_postal()` rendus non-silencieux) — fichier de section mis à jour à déposer par Jean-Marc, voir Statut actuel.)*
|
||||
|
||||
## Statut actuel (2-10 septembre 2026)
|
||||
## Statut actuel (2-11 septembre 2026)
|
||||
|
||||
**Écrans "Identification" et "Liste des contacts"** (avec panneau détail intégré) : aboutis depuis le 25 août 2026, testés en production. **Prospection** (formulaire externe, vérification mail, envoi de doc) : livrée et testée en conditions réelles le 26 août 2026 (section 18). **Dépôt Git** en place depuis le 27-28 août (section 20), avec circuit de livraison FileZilla → SSH VPS → `git push` (section 23) — l'écriture directe par Claude reste bloquée côté proxy Anthropic, contournement adopté sans gêne. **MIRADOR** (authentification centralisée multi-bases, identifiant = email) branché et validé à deux utilisateurs le 30 août 2026, déployé sur `aspic.mvl-tls.fr` (développement) et `crm.aspic.bzh` (test), chacun avec son propre environnement Docker (sections 21, 24, 25).
|
||||
|
||||
@@ -131,6 +136,8 @@ Version incrémentée une seule fois pour l'ensemble de cette session (uniquemen
|
||||
|
||||
**11 septembre 2026 (après-midi) : le BackOffice — Collaborateurs, Compétences, Espaces disque, coût IA (V1.22.23).** Détail technique complet en section 32 du journal ; fil stratégique en Réflexions stratégiques, section 23. Jean-Marc a réalisé qu'ASPIC a désormais deux univers distincts — l'écran utilisateur final, et la mécanique interne (identités, compétences, missions-types) — et a demandé un vrai BackOffice ("BO", terme repris de Prestashop) pour héberger cette mécanique : esthétique terminal minimale, menu à gauche, Échap pour en sortir uniquement depuis le menu. Accès piloté par `MIR_Users.MIR_BO`, bouton "BO" discret sur le bureau. Les outils "Construire une identité"/"Tester l'identité" ont été débranchés d'`ecran_fond.html` (718 lignes retirées) et migrés dans le BO ; nouvelle page Compétences (catalogue + attribution, `AGN_Competences` pas encore câblé). Espaces disque privés automatisés : la proposition initiale de Jean-Marc (SHA256 tronqué) a été remplacée par un HMAC à clé secrète pour le dossier de chaque base de travail et un jeton aléatoire pour chaque utilisateur (bug trouvé au passage : `MIR_Code` n'est pas unique dans `MIR_Users`, corrigé en utilisant `MIR_Email`). Enfin, après la découverte de plus de 20€ de consommation Anthropic inexpliquée, mise en place d'un cache de prompt (`cache_control`) et d'une journalisation réelle du coût de chaque appel (nouvelle page BO "Coût IA") — non prévu au départ, ajouté à la demande de Jean-Marc en cours de session.
|
||||
|
||||
**11 septembre 2026 (soir) : vision des compétences, champ Relationnel, sortie des prompts IA du code (V1.23.24).** Détail technique complet en section 33 du journal ; fil stratégique en Réflexions stratégiques, section 24. Nouvel onglet "Compétences" en lecture seule dans `bo_collaborateurs.html`. Bug de récitation découvert au premier essai (une compétence posée en test, "savoir faire un bon café", citée telle quelle par Sophia) : `$blocCompetences` ne portait pas la garde anti-récitation d'`AGN_Identite`/`AGN_Experience`, corrigé. Clarification conceptuelle en quatre facettes (Identité/Compétences/Expérience/Relationnel, voir Réflexions stratégiques) aboutissant à un nouveau champ **`AGN_Relationnel`** (posture envers l'équipe, statique), saisi dans un nouvel onglet et injecté dans le prompt de `collaborateur_dialogue.php`. Chantier plus large ensuite, à la demande de Jean-Marc : sortir les quatre prompts système du projet du code PHP vers une nouvelle table `ASP_Prompts`, avec auto-amorçage depuis un texte par défaut (`moteur_prompts.php`) et une nouvelle page BO `bo_prompts.html`/`prompts.php`. Au passage, retrait de toute occurrence du prénom "Jean-Marc" réellement transmise à un modèle ou journalisée, remplacée par le prénom de la session en cours (`USR_Prenom`) — Jean-Marc ayant réalisé que ce prénom en dur poserait problème le jour où ASPIC serait fourni à un autre patron (lien avec l'objectif fondateur de vente SaaS, réflexions stratégiques section 23). `AGN_Couleur` (pastel par collaborateur) branchée pour la première fois quelque part : les bulles du panneau "Tester" du BO, aux côtés du jaune classique (`#fbe14a`) pour l'utilisateur — l'usage sur le tableau de liège (post-its) reste, lui, à faire (voir chantier des attributions ci-dessous). `<code>` et `<conception>` avancés tous les deux à la demande explicite de Jean-Marc — nouvelle version **V1.23.24**.
|
||||
|
||||
**Prochain chantier annoncé par Jean-Marc : gérer les attributions de tâches des assistants.** L'écran 2 ("assistants"/"collaborateurs") est désormais présenté (portraits, couleurs, rôles, identité) mais ne porte encore aucune action réelle de répartition de tâches — à rapprocher des points déjà notés plus bas dans "Reste à faire" (discriminant humain/agent sur `ASP_ToDoList`, répartition dynamique des 70% par charge de tâches, exploitation réelle d'`AGN_Couleur`) — rien de plus précisé à ce stade sur le périmètre exact.
|
||||
|
||||
**Reste à faire, noté au passage :**
|
||||
@@ -170,6 +177,9 @@ Version incrémentée une seule fois pour l'ensemble de cette session (uniquemen
|
||||
- Lien concret entre une Mission close et l'enrichissement réel de `AGN_Experience` (pas `AGN_Identite`, voir réflexions stratégiques section 22 qui corrige la section 20) au fil du temps — intention actée, rien conçu ni codé à ce stade (`MIS_Statut`/`MIS_BilanCloture` existent en base, mais aucun endpoint de clôture n'a encore été écrit).
|
||||
- Stockage de documents utilisateur (PDF) — architecture actée par anticipation (réflexions stratégiques, section 21 : stockage hors racine servie par le serveur web, endpoint PHP dédié, sous-dossier opaque par client en défense en profondeur), aucun développement engagé, pas de besoin immédiat.
|
||||
- **Compétence "sites web" de Sophia (section 31, 10-11 septembre 2026), points laissés ouverts :** lecture réelle du catalogue/documents de l'entreprise (dépend de classeurs encore vides, section 19) ; support des images/fichiers binaires dans un site (texte seul pour l'instant) ; rattachement d'un site publié à un vrai nom de domaine (vhost Apache ou `npm-app-1`, étape manuelle) ; synchronisation du schéma des 5 nouvelles tables vers `MS-TST` (pas encore faite) ; vérification détaillée par Jean-Marc de ce que Sophia a réellement écrit lors du premier essai réel.
|
||||
- **BackOffice (section 32, 11 septembre 2026), points laissés ouverts :** `ASP_Agents.AGN_Competences` (champ dénormalisé, écrasé/recalculé à chaque modification des compétences d'un collaborateur, lu par `mission_agent.php` ET par le dialogue de test de `bo_collaborateurs.html` en plus d'`AGN_Identite`/`AGN_Experience`) — décrit et validé avec Jean-Marc, pas encore codé. Endpoint de téléchargement de fichier depuis un espace disque utilisateur (`telecharger_fichier.php` ou équivalent) — architecture posée (section 32), rien construit. Comportement réel du cache de prompt et de la journalisation du coût IA à confirmer sur un premier vrai appel après ce soir (aucun appel réseau réel déclenché depuis l'environnement de développement).
|
||||
- **Travail non poussé sur GitHub, découvert le 11 septembre 2026, toujours en attente :** les chantiers des 10 et 11 septembre (collaborateurs, compétences/missions, BackOffice) n'ont jamais été committés/poussés — `git status` montre tout en attente. Décision de Jean-Marc à prendre sur le commit/push groupé.
|
||||
- **BackOffice (section 32, 11 septembre 2026), points laissés ouverts :** `ASP_Agents.AGN_Competences` — **câblé en addendum le 11 septembre 2026** (`agents_competences.php` l'écrase/recalcule à chaque attribution/retrait de compétence ; lu par `mission_agent.php` et par `collaborateur_dialogue.php`, en plus d'`AGN_Identite`/`AGN_Experience`), non encore vérifié en conditions réelles. Endpoint de téléchargement de fichier depuis un espace disque utilisateur (`telecharger_fichier.php` ou équivalent) — architecture posée (section 32), rien construit. Comportement réel du cache de prompt et de la journalisation du coût IA à confirmer sur un premier vrai appel après ce soir (aucun appel réseau réel déclenché depuis l'environnement de développement).
|
||||
- **Travail non poussé sur GitHub, découvert le 11 septembre 2026, toujours en attente :** les chantiers des 10 et 11 septembre (collaborateurs, compétences/missions, BackOffice, puis vision des compétences/Relationnel/sortie des prompts le soir) n'ont jamais été committés/poussés — `git status` montre tout en attente. Décision prise par Jean-Marc (11 septembre, soir) : il gère lui-même le commit/push, y compris la rédaction du message — pas une tâche à déléguer à Claude, "ça m'oblige aussi à continuer à manipuler".
|
||||
- Vérifier que la colonne `AGN_Relationnel` (ajoutée par Jean-Marc le 11 septembre 2026, sans type précisé par Claude) est assez large pour un texte libre, cohérente avec `AGN_Identite`/`AGN_Experience` (MEDIUMTEXT).
|
||||
- Affiner individuellement l'identité/le relationnel de chaque collaborateur (Matilda, Viktor, Léon, Nikita, Sophia) — explicitement reporté par Jean-Marc le 11 septembre 2026 à plus tard ("quand je n'aurai que ça à faire").
|
||||
- Créer un répertoire dédié sur le serveur pour transmettre directement des fichiers à Claude (photos notamment) — envisagé par Jean-Marc le 11 septembre 2026, pas encore fait.
|
||||
- **Services externes pour les futurs chantiers (prospection, réseaux sociaux) — réflexions stratégiques section 23 (11 septembre 2026) :** décision de méthode actée (préférer un service externe existant au cas par cas, internaliser ensuite si besoin réel constaté), mais aucun service concret encore choisi ni intégré — recherche à reprendre spécifiquement pour ces deux chantiers quand ils s'ouvriront.
|
||||
|
||||
Reference in New Issue
Block a user