rembric-smoke-testslisted
Install: claude install-skill susomejias/rembric
# Rembric smoke pattern
Real-stack verification of a change before opening the PR. Read `docker-compose.dev.yml`, `apps/server/Dockerfile`, and `package.json::dev:docker:up` for the source of truth on ports, mounts, and the dev target — this file gives you only the pattern that survives those changing.
## 0. Preflight: free the RAM the build needs
`/tmp` is a tmpfs on this box, so everything under it is RAM. Every vitest run leaves a `rembric-test-*` directory behind and nothing cleans them: 1624 of them once held 8 GB, leaving 2.4 GB free, and `pnpm run dev:docker:up` died with `exit code: 137` (`Killed`) mid-`pnpm install`. That failure reads like a network or lockfile problem and is neither.
```bash
free -h # the `shared` column is the tmpfs
find /tmp -maxdepth 1 -name 'rembric-test-*' -mmin +60 -exec rm -rf {} +
```
Keep the `-mmin +60`: other sessions may be mid-run, and a bare glob takes their fixtures with it.
## 1. Bring up from the change's worktree
```bash
cd <your-worktree>
[ -f .env ] || cp <main-worktree>/.env .env
pnpm run dev:docker:up # background OK
```
## 2. Verify YOUR source is mounted
The compose project name is global across worktrees, so `docker compose up` will silently attach to a stack another worktree already owns. Always confirm:
```bash
docker inspect rembric-dev --format '{{range .Mounts}}{{.Source}} -> {{.Destination}}{{println}}{{end}}'
```
Sources must point to the current