One thread per product. Vetka: every pull request gets a branched Postgres with production-shaped data. One click (or zero, auto-branch on PR), copy-on-write storage (pay the diff, not the database), cursed-rows fixtures included (nulls where impossible, emoji in latin1, 1970 timestamps, all of them).
Numbers: 4,900 MRR, 60 teams, NDR 121% (branches multiply with the team). The developer-testing-migrations-voluntarily stat: 73% of branches run migrations unprompted. Friction was the bottleneck. Friction: removed.
Security: scrubbed seeds (deterministic fakes, joins still work), PII scanner fails dirty branches, production secrets never (separate role, read-only, always).