Define one disposable fixture

Use a fake contact and a clearly synthetic purpose such as marketing-updates. Name the preference source, at least two preparation routes, the reconciliation owner, a correction route, and a rollback-to-hold route. Do not connect the exercise to a live sender or real contact.

Fixture fact It does not prove
A purpose and channel are recorded The request has a universal or legal effect
Two sender routes are listed Every sender is included or suppressed
The next preparation action is held A queued message was cancelled
An owner is named A preference was reconciled correctly

Exercise the local declaration

node --test sites/howtox.com/evidence/P236/preference-withdrawal-reconciliation.test.mjs

The suite accepts a synthetic record only when purpose, authoritative source, distinct sender routes, hold, owner, correction route, unknown downstream effect, and rollback are explicit. It rejects a claim that all senders were suppressed and any send action. A pass makes the supplied fixture inspectable; it does not verify a provider, deliverability, consent, or compliance.

Hold when scope is unclear

Pause the next in-scope follow-up when the team cannot identify the purpose, authoritative record, route owner, or correction route. Keep service or transactional-message classification out of this exercise unless an authorised policy owner supplies it. For transport-level notification testing, see Test an Application Notification Before Enabling It for Coworkers. This rehearsal does not send, suppress, or classify a message.

Verify before human review

  • Run the local synthetic receipt test and retain its result with the fixture.
  • Ask a named technical operator to inspect the real authoritative record, route inventory, correction route, and safe hold.
  • Keep the next in-scope follow-up on hold when any of those inputs is unknown.

The fixture test does not approve a production workflow or establish a provider result.