← library
promptexample · tested🧰 Engineering practicev1 · published 2026-10-15 · updated 2026-11-03

Turn a feature into a buildable plan

Produce contracts, failure modes, a test matrix and 2-hour tasks for a scoped feature before coding starts.

By Uplift Duo

Run it as a prompt

Paste this into any AI agent, or fetch it: curl -s https://uplift.page/api/v1/prompts/feature-spec-and-plan/raw

prompt.md
# Turn a feature into a buildable plan

Turn a scoped feature into a plan an engineer can build from without another meeting.

## Context
- Feature (already scoped to an MVP): [FEATURE DESCRIPTION]
- Stack and key data model: [STACK AND ENTITIES]
- Constraints (performance, security, deadline): [CONSTRAINTS]

If you can read the codebase, read the relevant modules first and list the files you looked at.

## Produce
1. Goals, non-goals, and invariants that must always hold (e.g. "an order is charged at most once").
2. Components touched and the data flow as a numbered sequence, including state transitions.
3. Contracts: routes or function signatures with request/response shapes and error cases; schema changes with column types, indexes, and a reversible migration (in the repo's migrations folder; if there is none, say where schema changes are applied today and put the up/down SQL inline).
4. Trust boundaries: where untrusted input enters, who may call what, and where that is enforced.
5. Edge cases and failure modes (timeouts, retries, partial writes, concurrent edits, empty and very large inputs), each with its mitigation.
6. Test matrix: 5-10 named tests across unit, integration and end-to-end, each with setup, action, and the exact assertion.
7. Task breakdown: tasks of 2 hours or less, in order, with the files each touches; mark which can run in parallel.
8. Rollout: flag or no flag, the metrics to watch, and the specific signal that triggers a rollback.

## Rules
- State assumptions and keep going; do not stall on ambiguity.
- Name the one trade-off most likely to hurt later, and the simplest safe choice.
- No code beyond short signatures and schema snippets.

## Output
Markdown with the 8 numbered sections above, then a 5-line summary that can open the PR description.

The full prompt

Turn a scoped feature into a plan an engineer can build from without another meeting.

Context

  • Feature (already scoped to an MVP): [FEATURE DESCRIPTION]
  • Stack and key data model: [STACK AND ENTITIES]
  • Constraints (performance, security, deadline): [CONSTRAINTS]

If you can read the codebase, read the relevant modules first and list the files you looked at.

Produce

  1. Goals, non-goals, and invariants that must always hold (e.g. "an order is charged at most once").
  2. Components touched and the data flow as a numbered sequence, including state transitions.
  3. Contracts: routes or function signatures with request/response shapes and error cases; schema changes with column types, indexes, and a reversible migration (in the repo's migrations folder; if there is none, say where schema changes are applied today and put the up/down SQL inline).
  4. Trust boundaries: where untrusted input enters, who may call what, and where that is enforced.
  5. Edge cases and failure modes (timeouts, retries, partial writes, concurrent edits, empty and very large inputs), each with its mitigation.
  6. Test matrix: 5-10 named tests across unit, integration and end-to-end, each with setup, action, and the exact assertion.
  7. Task breakdown: tasks of 2 hours or less, in order, with the files each touches; mark which can run in parallel.
  8. Rollout: flag or no flag, the metrics to watch, and the specific signal that triggers a rollback.

Rules

  • State assumptions and keep going; do not stall on ambiguity.
  • Name the one trade-off most likely to hurt later, and the simplest safe choice.
  • No code beyond short signatures and schema snippets.

Output

Markdown with the 8 numbered sections above, then a 5-line summary that can open the PR description.

Served from the uplift.page library and refreshed within 5 minutes of every update.