---
description: Run the pre-deploy checklist and surface blockers.
argument-hint: [environment]
---

# /prepare-deploy

## Purpose

Confirm the branch is deploy-ready: tests, migrations, env, security, and changelog.

## Required context

- `docs/runbooks/deploy.md`, `docs/runbooks/db-migrations.md`, `.gitlab-ci.yml`

## Inputs

- `$1` — target environment (`staging` | `uat` | `production`)

## Execution steps

1. `pnpm validate && pnpm test && dotnet test`.
2. Confirm migrations are committed + reversible; check the breaking-change path.
3. Verify required env vars exist in the target's secret store (names only).
4. Run `/security-audit` quick pass.
5. Confirm changelog + version bump.

## Validation checklist

- [ ] All tests green
- [ ] Migrations safe + committed
- [ ] Env vars present (names verified, values never printed)
- [ ] No high/critical vulns
- [ ] Changelog updated

## Expected output

A go / no-go report with any blockers.

## Failure handling

Any blocker = no-go. Never deploy with a failing migration path.
