Deployment Strategy
Where should Stoney run?
Recommended: Staging
Run Stoney against staging environments.
Benefits:
- Safe validation
- Production-like data
- No user impact
- Fast feedback in PRs
Production Validation
Production checks are appropriate for:
- Health endpoints
- Read-only SQL invariants
- Availability guarantees
Avoid destructive checks in production (and keep assertions stable).
Private Networks
If staging is inside a VPC or VPN, use self-hosted runners.
Stoney executes wherever your runner lives.
Architecture Model
Public staging:
GitHub-hosted runner → Public API/DBPrivate staging:
Self-hosted runner → Private API/DBBest Practices
- Use read-only DB users for SQL checks
- Keep invariants stable (avoid time-based/flaky assertions)
- Avoid volatile data assertions (e.g., “latest row id equals …”)
- Prefer staging for most checks; validate production intentionally
- Consider
--fail-fastfor faster PR feedback when appropriate
Stoney enforces system guarantees — not dynamic behavior.
Last updated on