=== HS Dynamic Pricing & Discount Rules for WooCommerce ===
Contributors: hoockspark
Tags: woocommerce, discounts, dynamic pricing
Requires at least: 6.8
Tested up to: 7.1
Requires PHP: 8.2
Stable tag: 0.1.0-alpha.3
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Predictable pricing rules with a cart simulator. Local development alpha, not a production release.

== Description ==
Create product and cart discounts, bulk or progressive quantity bands, and buy-X-discount-Y offers. Choose the best complete offer, the first eligible offer, or sequential stacking. New rules are inactive by default. Sale products and coupons are excluded by default.

Supports simple products and individual variations with whole quantities. Discounts change in-memory cart prices, preserving catalog prices. Complex product types, other pricing engines, multicurrency and subscriptions have not been validated.

The Cart simulator uses saved rules and catalog prices, validates entered native coupons, calculates product taxes for the selected customer/address, and estimates supported shipping methods. It does not create orders or reserve stock, coupon usage or campaign capacity. Fees, custom shipping packages and other checkout conditions require a real checkout check.

Local tests: WordPress 7.1, WooCommerce 11.1, PHP 8.2.29. Minimum requirements: WordPress 6.8, WooCommerce 10.6 and PHP 8.2. Native lifecycle and combined-cart checks cover WordPress 6.8 / WooCommerce 10.6.0 and WordPress 7.1 / WooCommerce 11.1.0 on PHP 8.2.29. Other PHP branches are not yet verified. Do not use this alpha on production stores.

== Installation ==
1. Upload the plugin to a staging or local WooCommerce site.
2. Activate it. Open HookSpark > Pricing & Discounts.
3. Create a promotion restricted to test products. Save, then activate when ready.
4. Check the simulator and a real test checkout before enabling broader rules.

== Frequently Asked Questions ==
= Does BOGO insert gifts? =
No. All qualifying and reward units must already be in the cart. The cheapest eligible units receive the reward.

= What does Best complete offer mean? =
It selects one whole rule with the greatest cart saving. It does not combine discounts from several rules. Use sequential stacking explicitly if needed.

= Are rules deleted when deactivating or deleting the plugin? =
No. Rules are retained in the database. Catalog prices are never persisted by this plugin.

= Does it depend on another HookSpark plugin? =
No. It bundles its own isolated Core navigation and switch components.

== Changelog ==

= Theme integration — 19 September 2026 =

* Shared admin confirmation for unsaved changes, with visible recovery and consistent exit behavior across HookSpark plugins.
* Storefront components inherit theme typography and neutral surfaces. Messages buttons use native theme classes; explicit message colors/fonts and semantic presets remain available.


= Local candidate quality fixes — 19 September 2026 =
* Suspend integration when WooCommerce is absent or below 10.6, with an administrator explanation and preserved settings.
* Batch native catalog caches without storing customer prices or promotion outcomes.
* Defer product-panel translations until init. Mark invalid discount values, quantity ranges and end dates at their fields; focus rejected submissions.


= 0.1.0-alpha.3 =
* Discover the HookSpark collection in a shared catalog tab, with local assets and native WordPress plugin actions.
* Native product and variation panels link to the shared rule editor, with product preselection and no duplicate settings.
* Add bundled Italian localization for the admin interface, validation, simulator and storefront messages.
* Development candidate: automatic gift planning and native cart lifecycle, including simulator quantity checks with Min/Max.
* Add targeted coupon controls, expanded product targeting, support diagnostics and historical reporting improvements.
* Preserve affected campaign units on new discounted order lines. Add campaign unit quotas with atomic checkout reservations, confirmed usage and order review/recheck; deferred-payment and refund policies remain under development.
* Add free-shipping campaigns for selected zone methods, package-specific quantities and original-net spending thresholds, with cache-aware eligibility and private order attribution.
* Add contextual shipping editor guidance and missing-method validation; simulate native zone flat rates, free shipping and local pickup with explicit destination and Min/Max amount checks. Advanced shipping contexts remain under validation.
* Show bulk and progressive product price examples with average unit prices, stock and Min/Max checks. Refresh previews at scheduled promotion boundaries and when returning to the tab.
* Avoid unrelated variable-product previews when promotions target explicit product IDs.
* Find product quantity examples that meet the promotion's minimum net subtotal, including tax-inclusive catalogs. Preserve later tiers and omit offers beyond the promotion maximum.
* Match duplicate simulator lines and selective native coupon calculations to the cart.
* Optimize first-rule cart calculations while retaining complete simulator explanations.
* This candidate is under local testing. The local handbook, downloads and demo template are synchronized; broader feature, translation and release acceptance remain incomplete.

= 0.1.0-alpha.2 =
* Fixed repeated BOGO discounts during checkout after WooCommerce normalized repeating decimal prices.
* Show exact whole-line promotion savings before coupons and label rounded average unit prices in Cart/Checkout.
* Fixed accessible labels for dynamically added simulator selectors in shared Core.
* Verified 50 local browser orders and added regression coverage.

= 0.1.0-alpha.1 =
* Aligned admin controls and navigation with Min/Max; reused Core action icons and accessible SelectWoo labels.
* Initial local alpha: pricing engine, rule editor, simulator, revision protection and WooCommerce cart/order integration.
* Added reproducible engine/schema tests and local WooCommerce verification.
* Not cleared for public release; see the project's feature and verification registers.
