# scripts/

Dev orchestration + manual demo tool. NOT test.

## dev-start.sh / dev-stop.sh

Local dev stack: backend (:4001, sqlite) + frontend (:3999, server mode).
One command. Writes env vars for you. Logs to `tmp/server.log`, `tmp/fe.log`.

```bash
./scripts/dev-start.sh   # start (idempotent: leaves running ports as-is)
./scripts/dev-stop.sh    # stop both
```

## replay-combat.js

Live backend demo. Drives full combat via server adapter (same contract as App).
Player display live-updates. Watch UI react to state changes.

```bash
# start backend + frontend first (see docs/DEVELOPMENT.md)
node scripts/replay-combat.js [rounds] [delayMs]
# defaults: 100 rounds, 200ms/step
```

Coverage per round: damage, heal, all 22 conditions, toggleActive,
removeParticipant, addParticipant (reinforcements), updateParticipant,
pause/resume, reorderParticipants, endEncounter. Revives dead each round
to sustain full round count.

## See also

- `tests/audit/` — exploratory bug-finders (manual run, non-deterministic)
- `{shared,server,src}/tests/` — jest unit/integration/characterization
- `scratch/` — gitignored throwaway
