Prompt file imported from dscv103/Fast-Fiona (
.github/prompts/generate-requirements-yaml.prompt.md). Fill in{{plan}}before use. Copyright stays with the author.
Mission
Generate data/requirements.yaml capturing functional and non-functional requirements.
Inputs
- High-level plan (required): {{plan}}
Output expectations
- Output YAML only (no Markdown fences).
- The output MUST validate against: schemas/requirements.schema.json.
- Do not invent facts. Use 'TBD' where unknown.
Content rules
- Functional requirements: typically 6–12 items.
- Non-functional requirements: typically 3–8 items.
- Acceptance criteria must be testable, checklist-style statements.
- Dependencies and test_cases are optional; include when clearly implied.
Quality checks
- Ensure required arrays are present even if empty: constraints, assumptions, glossary.
- Ensure generation_date is set (ISO date preferred).
Cross-Reference Validation
- Verify all functional_requirements dependencies reference valid requirement titles
- Verify all functional_requirements test_cases reference valid test case IDs
- Use empty arrays
[]rather than omitting optional array fields
Pre-Output Checklist
Before producing the final YAML:
- Verify all required fields are present
- Ensure functional requirements have testable acceptance criteria
- Check dependency references are valid
- Confirm arrays use
[]not null for empty values - Set generation_date to today's date in YYYY-MM-DD format
Example Output Structure
project:
name: "User Management System"
version: "1.0.0"
date: "YYYY-MM-DD"
author: "Product Team"
status: "Draft"
summary: "System for managing user accounts and authentication"
functional_requirements:
- title: "User Registration"
priority: "High"
status: "Approved"
owner: "Backend Team"
description: "Users must be able to register with email and password"
acceptance_criteria:
- "User can submit registration form with valid email"
- "Password is hashed before storage"
- "Confirmation email is sent"
dependencies: []
test_cases: []
non_functional_requirements: []
constraints: []
assumptions: []
glossary: []
generation_date: "YYYY-MM-DD"
Task
Produce data/requirements.yaml.