Aller au contenu principal
Avancé15 min

Module 8 — Workflow Research → Plan → Implement


Objectif

À la fin de ce module, tu auras une méthode de production éprouvée pour travailler sur des codebases brownfield avec des agents de codage.


Le workflow en 3 étapes

Research → Plan → Implement
   ↑         ↑         ↓
  Human    Human    Agent (+ human review)

Principe : L’humain review le research et le plan (levier max). L’agent implémente. Pas l’inverse.


Étape 1 : Research

Objectif : Comprendre le codebase, identifier les fichiers pertinents, et formuler des hypothèses.

Prompt type (à adapter selon ton agent) :

# Research Task

## Goal
[Description claire du bug ou de la feature]

## Context
- Codebase : [langage, framework, taille approximative]
- Entry points connus : [si applicable]
- Contraintes : [ne pas casser X, maintenir compatibilité Y]

## Deliverable
Un document de recherche structuré avec :
1. Fichiers pertinents identifiés
2. Flow d'information tracé
3. Hypothèses de cause (pour un bug) ou d'approche (pour une feature)
4. Recommandation sur par où commencer

Durée : 15-45 min selon la complexité Output : Document markdown structuré


Étape 2 : Plan

Objectif : Décrire les étapes exactes, les fichiers à modifier, et les tests par phase.

Prompt type :

# Implementation Plan

## Based on Research
[Insérer le document de research]

## Plan
Phase 1 : [Action concrète]
- Files : [liste]
- Tests : [comment vérifier]

Phase 2 : [Action concrète]
- Files : [liste]
- Tests : [comment vérifier]

## Verification
[Comment valider que tout fonctionne à la fin]

Durée : 10-30 min Output : Plan markdown avec phases numérotées


Étape 3 : Implement

Objectif : Exécuter le plan phase par phase.

Prompt type :

# Implementation

## Plan
[Insérer le plan approuvé]

## Current Phase
Phase N : [la phase en cours]

## Instructions
- Implémenter cette phase uniquement
- Ne pas passer à la phase suivante sans validation
- Après chaque phase, mettre à jour le fichier de status

Durée : Variable (5 min à 2h par phase) Output : Code + tests + fichier de status mis à jour


La compaction entre phases

Après chaque phase vérifiée, compacter le status :

## Status Update (après Phase 1)

### Completed
- [x] auth/controller.ts : fix regex email
- [x] tests/auth.test.ts : 3 nouveaux cas de test

### Current State
- 17 tests passants, 0 échouant

### Next
Phase 2 : Ajouter retry logic sur Redis

Pourquoi ça marche

Étape Levier humain Pourquoi c’est critique
Research Haut Une mauvaise compréhension = mauvais plan = mauvais code
Plan Haut Une mauvaise ligne dans le plan = centaines de lignes de code mauvaises
Implement Bas Le code est facile à corriger si le plan est bon

Citation clé :

“Une mauvaise ligne de code est… une mauvaise ligne de code. Mais une mauvaise ligne de plan peut entraîner des centaines de mauvaises lignes de code. Et une mauvaise ligne de research peut t’envoyer dans une direction complètement fausse.”


Exemple concret : BAML (300K LOC Rust)

Contexte : Amateur Rust, jamais touché le codebase.

Research (30 min) :

  • Exploration des fichiers liés au bug
  • Traçage du flow d’assertions
  • Hypothèse : regex de validation trop stricte

Plan (15 min) :

  • Phase 1 : Localiser et corriger la regex
  • Phase 2 : Ajouter des cas de test edge cases
  • Phase 3 : Vérifier la rétrocompatibilité

Implement (30 min) :

  • Exécution phase par phase
  • PR approuvée le lendemain matin

Résultat : Bugfix merged en 1h de travail effectif.


Checklist de validation

  • J’ai un document de research structuré avant de planifier
  • Mon plan a des phases avec fichiers et tests explicites
  • Je compacte le status après chaque phase vérifiée
  • Je review le research et le plan avant d’implémenter
  • Je ne laisse pas l’agent improviser hors du plan

Piège courant

Sauter le research pour aller plus vite. → Dexter Horthy a essayé : “J’ai lancé un plan sans research pour voir. Le plan avec research a corrigé le bug au bon endroit avec les bonnes conventions de test. L’autre plan aurait marché aussi, mais moins bien.” 30 min de research = 2h de refacto en moins.


Prochaine étape

→ Module 9 (Context engineering par modèle) pour adapter selon Claude vs Codex