Dry-run before live is not optional
2026-08-27 · VireMost “bot setup” failures are not clever strategy bugs. They are plumbing bugs that only show up when a public URL can place a real order.
If the first webhook that hits your server can open mainnet size, you do not have an automation stack. You have a loaded gun bolted to the open internet.
What dry-run must prove
- Payload parsing for buy, sell, and close
- Auth rejection when the secret is wrong
- No exchange write path when dry-run is on
- Status or logs that show the intended transition
- A kill switch you can hit without rediscovering the deploy
The cheap test
Send three synthetic webhooks. Confirm three state changes. Confirm the venue account did nothing. Only then flip live flags, with size caps that will not ruin the week if a signal double-fires.
Why teams skip it
Speed theater. Demo pressure. “It’s just a small size.” Small size is still a real order path. Once the path is live, every future misconfig inherits it.
Vire Launch starts in dry-run on purpose. Live cutover is a separate, supervised step in Desk — not a silent default.