The moment you change a state machine's definition, every instance already running it is still running the old one. polyvers classifies the change, seeds it against real in-flight state pulled from the live fleet, and gates the deploy on the verdict.
You are changing a machine's definition while instances are running the old one — the order half-shipped, the session half-negotiated — and you need to know if the deploy strands any of them.
A compatibility report that blocks the deploy when it should, names the in-flight instances the new rule would break, and scaffolds the migration for the rest.
What goes in, the stages it runs, what it leaves behind. Step through the stages to trace the run.
The step most verification tooling skips entirely.
Every version diff is sorted into a compatibility lane before anything else happens: additive, migrated, or breaking.
The new definition is checked against snapshots of instances that are actually running right now, not a clean synthetic dataset.
A breaking change with no valid migration for in-flight state is blocked before it ships, named offenders included.