Skip to main content
Generated packs are ordinary YAML under <data_dir>/scenarios. Commit them and they are the regression suite for every provider change you have survived.

From a drift event

The pack pins the contract you integrated against via 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

Arms the same failure and replays the recorded request. See Reproduce.

From recorded traffic

The pack replays the window’s requests in recorded order with a status assertion on each. Identifier-shaped values that a response produced and a later request consumed become captures and {{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.

From plain English

See Plain English.