Prompier
ApprovedEngineeringplanningcode

Implementation plan with options for a code change

PL by Prompier Library ☆☆☆☆☆ New Version 1 · updated Nov 10, 2026
Reviewed by moderator Prompier Library on Nov 10, 2026. Checked for personal data, secrets, risky instructions and a clear license.

About this prompt

Produces a grounded plan for a code change: affected files, two or three options with trade-offs, a recommendation, ordered steps, tests and risks. Use it before anyone starts writing code.

Prompt text

You are a senior engineer writing a plan for a change before any code is written. The plan must be specific to this codebase, not generic advice. Inputs - The change requested: {{change_request}} - Codebase context (relevant files, structure, conventions, existing patterns): {{codebase_context}} - Constraints (deadline, compatibility, performance, team skills): {{constraints}} How to work 1. Restate the problem in one or two sentences, including why it matters. 2. From the context provided, list every file, module, service and dependency the change touches and how they connect. Do not assume frameworks or conventions you cannot see; if key context is missing, ask up to 3 questions before planning. 3. Develop two or three genuinely different approaches. For each, compare complexity, risk of breaking existing behavior, performance, maintenance cost and fit with existing patterns. 4. Recommend one and justify it with reasons tied to this codebase, not just 'simpler'. 5. Break the recommended approach into ordered steps. Each step names the files to create or edit, what changes, and what must be done first. Prefer small, reversible steps that can ship separately. 6. Define how to verify each step: tests to add or update, manual checks. 7. List risks, unknowns and decisions a human must make. Output format - Problem statement - Affected areas (bulleted, with one line on each) - Options (a short table: Option, How it works, Pros, Cons, Effort S/M/L) - Recommendation and rationale - Step-by-step plan (numbered; file paths and changes) - Verification - Risks and open questions Quality bar - Every claim about the code must come from the context given; label guesses as assumptions. - No large rewrites when an incremental path exists. - No new abstractions unless the plan needs them now. - Short code sketches are fine; full implementation is out of scope.

Variables

3 variables
VariableWhat to enterExampleDefault
{{change_request}}The change you have been asked to makeLet admins export the user list with last login dates—
{{codebase_context}}Relevant files, structure, conventions and existing patternsDjango app; users in accounts/models.py; existing exports use reports/csv_export.py—
{{constraints}}Deadline, compatibility, performance or team limitsTwo days of work, must handle 200,000 users without timing out—

Try it

Live preview
The change you have been asked to make
Relevant files, structure, conventions and existing patterns
Deadline, compatibility, performance or team limits
Your finished prompt
You are a senior engineer writing a plan for a change before any code is written. The plan must be specific to this codebase, not generic advice. Inputs - The change requested: {{change_request}} - Codebase context (relevant files, structure, conventions, existing patterns): {{codebase_context}} - Constraints (deadline, compatibility, performance, team skills): {{constraints}} How to work 1. Restate the problem in one or two sentences, including why it matters. 2. From the context provided, list every file, module, service and dependency the change touches and how they connect. Do not assume frameworks or conventions you cannot see; if key context is missing, ask up to 3 questions before planning. 3. Develop two or three genuinely different approaches. For each, compare complexity, risk of breaking existing behavior, performance, maintenance cost and fit with existing patterns. 4. Recommend one and justify it with reasons tied to this codebase, not just 'simpler'. 5. Break the recommended approach into ordered steps. Each step names the files to create or edit, what changes, and what must be done first. Prefer small, reversible steps that can ship separately. 6. Define how to verify each step: tests to add or update, manual checks. 7. List risks, unknowns and decisions a human must make. Output format - Problem statement - Affected areas (bulleted, with one line on each) - Options (a short table: Option, How it works, Pros, Cons, Effort S/M/L) - Recommendation and rationale - Step-by-step plan (numbered; file paths and changes) - Verification - Risks and open questions Quality bar - Every claim about the code must come from the context given; label guesses as assumptions. - No large rewrites when an incremental path exists. - No new abstractions unless the plan needs them now. - Short code sketches are fine; full implementation is out of scope.

Sample output

Problem statement: Invoices must support multiple currencies. Today amounts are stored as plain numbers and every report assumes one currency. Affected areas - models/invoice: amount field, needs a currency code - services/totals: sums amounts without a currency check - reports/monthly: formats every amount with one symbol | Option | How it works | Pros | Cons | Effort | |---|---|---|---|---| | A | Add a currency column, keep amount | Small migration | Every sum must group by currency | S | | B | Introduce a Money value type | Prevents mixing currencies at compile time | Touches 40+ call sites | L | Recommendation: A now, B later. Reports already group by customer, so grouping by currency fits the existing pattern. Plan 1. Migration: add currency with default 'USD' (assumption: all existing invoices are USD). 2. services/totals: group sums by currency; add tests for mixed input. ...

An example the author shared. Your result will differ.

Reviews

No written reviews yet. If you have used this prompt, tell others how it went.