Commit aa6ae85db19 for woocommerce

commit aa6ae85db199addd3f964692d755d23d89190f3d
Author: Tung Du <dinhtungdu@gmail.com>
Date:   Fri Jun 12 01:03:14 2026 +0700

    Remove Product Filters store locks (#65675)

    tweak: remove Product Filters store locks

diff --git a/plugins/woocommerce/changelog/remove-product-filters-store-locks b/plugins/woocommerce/changelog/remove-product-filters-store-locks
new file mode 100644
index 00000000000..ff1c4dd6fd9
--- /dev/null
+++ b/plugins/woocommerce/changelog/remove-product-filters-store-locks
@@ -0,0 +1,3 @@
+Significance: patch
+Type: dev
+Comment: Remove Interactivity API locks from the Product Filters store.
diff --git a/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/constants.ts b/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/constants.ts
index 61dccfe5f72..51c4bb821d3 100644
--- a/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/constants.ts
+++ b/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/constants.ts
@@ -1,6 +1,4 @@
 export const PRODUCT_FILTERS_STORE_NAME = 'woocommerce/product-filters';
-export const PRODUCT_FILTERS_STORE_LOCK =
-	'I acknowledge that using a private store means my plugin will inevitably break on the next store release.';

 export const EXCLUDED_BLOCKS = [
 	PRODUCT_FILTERS_STORE_NAME,
diff --git a/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/frontend.ts b/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/frontend.ts
index 120023fa8f4..666598f173e 100644
--- a/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/frontend.ts
+++ b/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/frontend.ts
@@ -15,10 +15,7 @@ import type {
 	ProductFiltersContext,
 } from './types';
 import { getClosestColor } from './utils/get-closest-color';
-import {
-	PRODUCT_FILTERS_STORE_LOCK,
-	PRODUCT_FILTERS_STORE_NAME,
-} from './constants';
+import { PRODUCT_FILTERS_STORE_NAME } from './constants';

 const { getContext, getElement, store, getServerContext, getConfig } = iAPI;

@@ -325,6 +322,5 @@ export type ProductFiltersStore = typeof productFiltersStore;

 const { state, actions } = store< ProductFiltersStore >(
 	BLOCK_NAME,
-	productFiltersStore,
-	{ lock: PRODUCT_FILTERS_STORE_LOCK }
+	productFiltersStore
 );
diff --git a/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/active-filters/frontend.ts b/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/active-filters/frontend.ts
index c8c6c68e22a..3ed35755697 100644
--- a/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/active-filters/frontend.ts
+++ b/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/active-filters/frontend.ts
@@ -12,10 +12,7 @@ import type {
 	RemovableItem,
 	RemovableItemsParentStore,
 } from '../../../../types/type-defs/removable-items';
-import {
-	PRODUCT_FILTERS_STORE_LOCK,
-	PRODUCT_FILTERS_STORE_NAME,
-} from '../../constants';
+import { PRODUCT_FILTERS_STORE_NAME } from '../../constants';

 type RemovableItemContext = {
 	item: RemovableItem;
@@ -68,6 +65,4 @@ activeFiltersStore satisfies RemovableItemsParentStore;

 const { state, actions } = store<
 	ProductFiltersStore & typeof activeFiltersStore
->( PRODUCT_FILTERS_STORE_NAME, activeFiltersStore, {
-	lock: PRODUCT_FILTERS_STORE_LOCK,
-} );
+>( PRODUCT_FILTERS_STORE_NAME, activeFiltersStore );
diff --git a/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/checkbox-list/frontend.ts b/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/checkbox-list/frontend.ts
index 17d7ab4cd38..8e702ae4363 100644
--- a/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/checkbox-list/frontend.ts
+++ b/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/checkbox-list/frontend.ts
@@ -15,10 +15,6 @@ import {
 	isVisualAttributeTermEmpty,
 } from '../../../../base/utils/visual-attribute-terms';
 import type { VisualAttributeTerm } from '../../../../base/utils/visual-attribute-terms';
-import {
-	PRODUCT_FILTERS_STORE_LOCK,
-	PRODUCT_FILTERS_STORE_NAME,
-} from '../../constants';

 type CheckboxListItem = SelectableItem< {
 	visual?: VisualAttributeTerm;
@@ -48,11 +44,6 @@ type CheckboxListStore = {

 function getParentStore( storeNamespace?: string ) {
 	if ( ! storeNamespace ) return undefined;
-	if ( storeNamespace === PRODUCT_FILTERS_STORE_NAME ) {
-		return store<
-			SelectableItemsParentStore< { visual?: VisualAttributeTerm } >
-		>( storeNamespace, undefined, { lock: PRODUCT_FILTERS_STORE_LOCK } );
-	}
 	return store<
 		SelectableItemsParentStore< { visual?: VisualAttributeTerm } >
 	>( storeNamespace );
diff --git a/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/chips/frontend.ts b/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/chips/frontend.ts
index 223abbc9316..309910ccfde 100644
--- a/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/chips/frontend.ts
+++ b/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/chips/frontend.ts
@@ -16,10 +16,6 @@ import {
 } from '../../../../base/utils/visual-attribute-terms';
 import type { VisualAttributeTerm } from '../../../../base/utils/visual-attribute-terms';
 import { getClosestColor } from '../../utils/get-closest-color';
-import {
-	PRODUCT_FILTERS_STORE_LOCK,
-	PRODUCT_FILTERS_STORE_NAME,
-} from '../../constants';

 type ChipsItem = SelectableItem< {
 	visual?: VisualAttributeTerm;
@@ -53,11 +49,6 @@ type ChipsStore = {

 function getParentStore( storeNamespace?: string ) {
 	if ( ! storeNamespace ) return undefined;
-	if ( storeNamespace === PRODUCT_FILTERS_STORE_NAME ) {
-		return store<
-			SelectableItemsParentStore< { visual?: VisualAttributeTerm } >
-		>( storeNamespace, undefined, { lock: PRODUCT_FILTERS_STORE_LOCK } );
-	}
 	return store<
 		SelectableItemsParentStore< { visual?: VisualAttributeTerm } >
 	>( storeNamespace );
diff --git a/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/price-filter/frontend.ts b/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/price-filter/frontend.ts
index 320920fd01d..b101b9b1880 100644
--- a/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/price-filter/frontend.ts
+++ b/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/price-filter/frontend.ts
@@ -11,10 +11,7 @@ import type { ProductFiltersContext } from '../../types';
 import type { ProductFiltersStore } from '../../frontend';
 import { formatPrice, getCurrency } from '../../utils/price-currency';
 import type { RangeInputParentStore } from '../../../../types/type-defs/range-input';
-import {
-	PRODUCT_FILTERS_STORE_LOCK,
-	PRODUCT_FILTERS_STORE_NAME,
-} from '../../constants';
+import { PRODUCT_FILTERS_STORE_NAME } from '../../constants';

 const { store, getContext, getServerContext, getConfig } = iAPI;

@@ -183,6 +180,4 @@ export type ProductFilterPriceStore = typeof productFilterPriceStore;

 const { state, actions } = store<
 	ProductFiltersStore & ProductFilterPriceStore
->( PRODUCT_FILTERS_STORE_NAME, productFilterPriceStore, {
-	lock: PRODUCT_FILTERS_STORE_LOCK,
-} );
+>( PRODUCT_FILTERS_STORE_NAME, productFilterPriceStore );
diff --git a/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/price-slider/frontend.ts b/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/price-slider/frontend.ts
index fed17cc173a..adec56da502 100644
--- a/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/price-slider/frontend.ts
+++ b/plugins/woocommerce/client/blocks/assets/js/blocks/product-filters/inner-blocks/price-slider/frontend.ts
@@ -12,10 +12,7 @@ import type {
 	ProductFilterPriceContext,
 	ProductFilterPriceStore,
 } from '../price-filter/frontend';
-import {
-	PRODUCT_FILTERS_STORE_LOCK,
-	PRODUCT_FILTERS_STORE_NAME,
-} from '../../constants';
+import { PRODUCT_FILTERS_STORE_NAME } from '../../constants';

 const { store, getContext, getElement, withScope, getServerContext } = iAPI;

@@ -77,6 +74,4 @@ const { state, actions } = store<
 	ProductFiltersStore &
 		ProductFilterPriceStore &
 		typeof productFilterPriceSliderStore
->( PRODUCT_FILTERS_STORE_NAME, productFilterPriceSliderStore, {
-	lock: PRODUCT_FILTERS_STORE_LOCK,
-} );
+>( PRODUCT_FILTERS_STORE_NAME, productFilterPriceSliderStore );