RECEIPT / 003
Automatic does not mean uncontrolled.
PerkRule only auto-removes coupon mutations it can prove it applied automatically. Configuration alone does not grant mutation ownership.
Why it matters
A coupon can be configured for Auto Apply and still be entered manually by a customer. Treating configuration as ownership would let automation undo deliberate customer actions.
Implementation
- Auto Apply is an application mode for a native WooCommerce coupon, not a synthetic discount type.
- Application and removal use WooCommerce public cart APIs.
- Successful automatic mutations are recorded separately from coupon configuration.
- Manual coupons remain protected, including a coupon that was previously auto-applied, removed and then manually re-applied.
- Candidate discovery is bounded; capacity overflow fails with zero partial automatic mutation.
Evidence
- Runtime tests cover automatic apply/remove behavior and protection of unrelated manual coupons.
- Native individual-use behavior remains a hard constraint rather than being weakened for automation.
- A request-local recursion guard is always released through a finally path to avoid persistent request state after failures.
Known boundary
Visual-builder preview environments and full Store API request-path testing remain separate compatibility gates.