RECEIPT / 002

Checkout does not wait for PerkRule servers.

Live promotion eligibility is designed to remain local and bounded. Licensing, updates, telemetry, migrations and other remote services are not checkout dependencies.

Why it matters

A promotion plugin sits inside a revenue-critical request path. A licensing timeout, telemetry outage or schema migration should never become the reason a customer cannot finish an order.

Implementation

  1. Compiled rule structures and candidate data are local/cached inputs to runtime evaluation.
  2. RuleContext contains request-scoped facts and no remote-service dependency.
  3. PerkRule validation only adds restrictions; it does not override a coupon WooCommerce already considers invalid.
  4. Storefront boot does not execute migrations or DDL. Schema-dependent services can be skipped when the installed schema is stale.
  5. The architecture explicitly forbids license, updater, telemetry, CSV/reporting and full-dataset work from the live cart hot path.

Evidence

  • Integration coverage exercises actual WC_Cart coupon application and WooCommerce discount validation paths.
  • Stale-schema tests prove schema-dependent services can be withheld without turning the storefront into a migration runner.
  • Rule compilation and evaluation use bounded size/depth/value limits and explicit invalid results rather than permissive failure.

Known boundary

Blocks/Store API end-to-end smoke coverage is a later compatibility gate and is not claimed complete by this receipt.