Décisions techniques et architecturales prises durant le développement.
Décision : Commencer par un script minimal Python avant toute infrastructure.
Contexte : La règle 9 du document stratégique impose un Walking Skeleton validé avant DB, API, Docker.
Choix :
- Script unique
walking-skeleton.py - 6 tickets (3 techniques, 3 émotionnels)
- 5 epochs, boucle complète Performance → Critic → Learning → Problem Generator
- SQLite pour stockage des poids
- Pas de framework web, pas de Docker, pas de dashboard
Résultat : +0.61/5 (+21%) sur les 6 tickets, +0.67/5 (+25%) sur holdout.
Décision : Gemini + OpenAI, pas Anthropic.
Contexte : L'utilisateur n'avait pas de clé API Anthropic.
Choix :
- Gemini 2.5 Flash → Performance Element (génération rapide et économique)
- OpenAI GPT-4o-mini → Critic + Problem Generator (
response_format=json_objectfiable)
Conséquence : La couverture "Anthropic" dans la matrix n'est pas remplie par P5.
Décision : Poids d'instructions avec mise à jour delta, pas de réseau de neurones.
Contexte : L'apprentissage tabulaire est plus simple, plus transparent, et suffisant pour < 100 instructions.
Formule :
weight(t+1) = weight(t) + (score - 3.0) × learning_rate(0.3)
Sélection : Proportionnelle pondérée (pas top-K greedy) pour garantir l'exploration.
Décision : Embedding via API Gemini + similarité cosinus en Python, pas de vector DB.
Contexte : Pour < 1000 épisodes, une vector DB est de la surcharge inutile.
Trade-off : Latence ~500ms par embedding (appel API), mais acceptable car l'embedding est fait à la volée et non en batch.
Décision : Table SQL avec poids par catégorie, mise à jour delta.
Formule :
delta = (score - 3.0) × 0.3
poids = clamp(poids + delta, 0.5, 2.0)
Initialisation : Tous les providers commencent à poids 1.0 pour chaque catégorie.
Décision : Ajouter mémoire épisodique, prompt adaptatif, multi-LLM routing dans le même projet, pas dans des branches séparées.
Raison : Ces 3 variantes sont des améliorations du même cœur Learning Agent, pas des projets indépendants. Les ajouter séparément aurait créé 3 projets quasi-identiques.
Impact sur la matrix : P5 couvre désormais plus de patterns que prévu initialement.