PASS: final 6.0.3 ZIP installed and activated through native WordPress browser upload.
PASS: remove all 300 demo products through actual browser UI; reactivation does not re-seed.
PASS: repeat cleanup leaves own products; missing explicit deletion confirmation rejected.
PASS: unused own product deleted with confirmation; cleanup persists no-reseed intent even when the old seed marker was absent.
PASS: empty inventory -> real WooCommerce simple and variation import, stock 8 and 6; unmanaged skipped.
PASS: WooCommerce-linked product deletion blocked; repeat import remains duplicate-free.
PASS: product at zero stock with historical movements remains protected and ledger intact.
PASS: draft purchase-order reference protects deletion.
PASS: operator lacks deletion controls and server rejects unauthorized demo cleanup.
PASS: mobile cleanup visible; no JavaScript exceptions.

UPGRADE CHECK
PASS: real 6.0.2 -> 6.0.3 upgrade recognizes exact untouched demo rows; preserves edited/own products and demo stock/purchase history; deletes 297 safely.

FULL REGRESSION CHECK
BROWSER: Chrome 151.0.7922.34
READINESS PASS: WooCommerce inactive; import and enable controls disabled; no import request.
DISCOVERY PASS: zero-stock catalog provides visible opening-stock buttons and direct stock actions.
STOCK PASS: product create/edit; direct catalog opening 10.5, receive 2.25, issue 1.25 = 11.5.
STOCK PASS: transfer, absolute physical count, location balances and five audited movements.
PURCHASING PASS: supplier create/edit, draft/order, partial/full receipts and balances.
WOOCOMMERCE: 11.2.1 real plugin, simple and own-stock variation fixtures.
WC IMPORT PASS: configured import/reimport = two linked products, unsupported skipped; no HTTP 400.
PRECISION PASS: six-decimal trailing zeros normalize exactly; meaningful excess precision and negatives rejected.
WC SYNC PASS: manual sync, stock-change hook, real order deduction/restoration and independent warehouse stock.
READINESS PASS: disabled integration, currency mismatch, global inventory off, inactive mirror and unsupported linked product cannot trigger unusable controls.
ACTIONABLE ERROR PASS: WooCommerce deactivated after page load; one expected HTTP 409, actionable admin error and controls refreshed/disabled.
MOBILE PASS: 390px catalog stock action and receipt; Arabic RTL/English LTR; no page overflow.
ROLE PASS: operator sees allowed catalog stock actions but cannot edit/count/change settings.
BROWSER PASS: no JavaScript exceptions or failed inventory AJAX responses during normal workflows.
