---
name: finance-model-build
description: Build or revise a financial model from a clear request or model plan. Use for spreadsheet, CSV, notebook, or script-based finance models including forecasts, unit economics, pricing, valuation, capacity, budget, variance, and scenario models.
---

# Finance Model Build

Execute a clear finance model build end to end. Do not use this for open-ended model design; use `finance-model-plan` first when the model contract is unclear.

## Workflow

1. Read `../../references/finance-workflow.md`.
2. Read the model plan or clear user request. Identify outputs, sources, assumptions, and required checks.
3. Inspect existing files before editing or rebuilding. Preserve user work unless replacement is explicitly requested.
4. Build with auditable structure:
   - inputs/source data
   - assumptions
   - calculations
   - scenarios
   - outputs
   - checks or verification log
5. Keep assumptions centralized. Do not scatter unlabelled hardcodes through calculations.
6. Add finance-native checks from the shared workflow reference.
7. Run verification:
   - tie source totals where possible
   - inspect formulas or calculations for hardcodes
   - test scenario movement
   - check units and time periods
   - confirm output answers the stated decision
8. Return a concise completion note with changed files, verification performed, and unresolved risks.

## Guardrails

- Never invent missing historical data. Ask, leave blank, or create an explicit assumption.
- Never mix source facts and assumptions without labels.
- Never overwrite an original workbook without preserving a copy or creating a new output file.
- For high-stakes or current public-company facts, verify from primary sources before using numbers.
- If formulas, exports, or source files cannot be inspected reliably, say what could not be verified.

## Completion Note

```markdown
## Model build complete

- Files changed/created:
- Decision supported:
- Key assumptions:
- Verification performed:
- Could not verify:
- Suggested next review:
```
