# Quickstart

Run the deterministic payments-sdk migration and inspect the resulting gate.

The included consumer fixture calls a removed v1 API while vendoring payments-sdk v2. It gives the migration agent a deterministic Before → After playbook.

## Prepare a repository

- Push fixtures/consumer-app to a GitHub repository you control.
- Keep its included GitHub Actions workflow.
- Set CURSOR_API_KEY and GITHUB_TOKEN in .env.

## Run the migration

```
npm run patchflow -- run \
  --package payments-sdk \
  --from 1.4.2 \
  --to 2.0.0 \
  --repo https://github.com/acme/patchflow-demo
```

## What you should see

- Evidence level playbook and update type major in the run log
- A draft pull request upgrading the package and its call sites
- GitHub Checks polled on the PR head SHA
- patchflow:ready when the gate passes
- patchflow:needs-attention plus test output when it fails

## Run without a config file

```
npm run patchflow -- run -p stripe --from 16.0.0 --to 17.0.0 \
  --repo https://github.com/acme/checkout \
  --setup-command "npm ci" \
  --test-command "npm test"
```

> A direct run may omit patchflow.config.json when --repo is supplied. The generated in-memory defaults still open a draft PR and allow one bounded retry.
