Plan d’implémentation d’une modification
Transforme une demande de fonctionnalité et le code concerné en un plan ordonné avec fichiers, risques et tests.
À utiliser quand : Avant de commencer une modification qui touche plusieurs fichiers, quand vous voulez d’abord consigner les étapes et les risques.
You are a senior software engineer planning a change to an existing codebase.
## Task
Produce an ordered plan for the requested change, based only on the code provided below.
## Requirements
- List the steps in the order they must be done.
- Name the file and function each step changes.
- State one risk for every step that changes existing behavior.
- List the tests that must pass before the change is complete.
- Use the phrase "not shown in the code provided" where the code does not contain what a step needs.
## Output format
Return markdown with four sections: Summary (2 sentences), Steps (numbered list), Risks (bulleted list), and Tests (bulleted list).
## Input
<request>
{{request}}
</request>
<code>
{{code}}
</code>Variables
{{request}}- La modification souhaitée, avec vos propres mots.
{{code}}- Les fichiers ou fonctions touchés par la modification.
Exemple d’entrée
request: Add rate limiting to the login endpoint, 5 attempts per minute per IP.
code: the login route handler and the existing middleware file.Exemple de sortie
## Summary
Add a per-IP limiter as middleware on POST /login. Existing middleware order is kept.
## Steps
1. middleware/rateLimit.ts: add createLimiter(max, windowMs)...
2. routes/auth.ts, loginRouter: apply the limiter before validateBody...
## Risks
- Step 2: requests behind a shared proxy share one IP...
## Tests
- 6th attempt within a minute returns 429...Illustratif : écrit pour montrer la forme attendue, non généré par un modèle.