<data_dir>/scenarios. Commit them and they are the regression suite for every provider change you have survived.
From a drift event
contractVersion. It seeds a resource with the baseline’s value, reads it back, and asserts the old shape: the field exists, the type matches, the value is in the known set, the status is what it was. It passes while your sandbox still honours that baseline and fails the moment you re-import a spec that adopts the provider’s change, so the break happens here rather than in production.
Exit 1 on a failed replay confirms the sandbox already reproduces the drifted behaviour: your integration breaks here, not in production.
Some drift kinds cannot be pinned deterministically: a field inside a nested array, a baseline that knew several status codes, nullability and error-shape changes, and endpoints with a non-trailing or multiple path parameters. For those the command says so and you write the scenario by hand from the pack format.
From an incident
From recorded traffic
{{chain_n}} variables, so the pack follows the same resource through the flow. Short literals, enum words, amounts and booleans never chain. Review the pack before relying on it.