From b4ce751dcab294ede9a86aadd62acaf6e268ab4e Mon Sep 17 00:00:00 2001 From: Finn Reinhardt Date: Wed, 15 Oct 2025 16:24:05 +0200 Subject: [PATCH 1/3] Add Observer to add the Clear-Site-Data header after idempotent cart action --- Observer/AddClearSiteDataHeader.php | 32 +++++++++++++++++++++++++++++ etc/events.xml | 13 ++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 Observer/AddClearSiteDataHeader.php create mode 100644 etc/events.xml diff --git a/Observer/AddClearSiteDataHeader.php b/Observer/AddClearSiteDataHeader.php new file mode 100644 index 0000000..3e912c8 --- /dev/null +++ b/Observer/AddClearSiteDataHeader.php @@ -0,0 +1,32 @@ +getResponse(); + + if (!$response) { + return; + } + + $response->setHeader( + 'Clear-Site-Data', + '"prefetchCache", "prerenderCache"', + true + ); + } +} diff --git a/etc/events.xml b/etc/events.xml new file mode 100644 index 0000000..baee178 --- /dev/null +++ b/etc/events.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + From aa06a0211ac18a690de5ecdde787b788ff0a8a89 Mon Sep 17 00:00:00 2001 From: Finn Reinhardt Date: Wed, 15 Oct 2025 16:28:21 +0200 Subject: [PATCH 2/3] Update class path to match module --- Observer/AddClearSiteDataHeader.php | 2 +- etc/events.xml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Observer/AddClearSiteDataHeader.php b/Observer/AddClearSiteDataHeader.php index 3e912c8..1c66d33 100644 --- a/Observer/AddClearSiteDataHeader.php +++ b/Observer/AddClearSiteDataHeader.php @@ -2,7 +2,7 @@ declare(strict_types=1); -namespace Basecom\Catalog\Observer; +namespace MageOS\ThemeOptimization\Observer; use Magento\Framework\App\Response\HttpInterface; use Magento\Framework\Event\Observer; diff --git a/etc/events.xml b/etc/events.xml index baee178..4d2a7da 100644 --- a/etc/events.xml +++ b/etc/events.xml @@ -4,10 +4,10 @@ xsi:noNamespaceSchemaLocation="urn:magento:framework:Event/etc/events.xsd"> - + - + From ee0d72920e1c3fdfac697e077e189a17756bf80e Mon Sep 17 00:00:00 2001 From: Finn Reinhardt Date: Wed, 15 Oct 2025 17:09:20 +0200 Subject: [PATCH 3/3] Update comments --- Observer/AddClearSiteDataHeader.php | 2 +- etc/events.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Observer/AddClearSiteDataHeader.php b/Observer/AddClearSiteDataHeader.php index 1c66d33..11897f0 100644 --- a/Observer/AddClearSiteDataHeader.php +++ b/Observer/AddClearSiteDataHeader.php @@ -9,7 +9,7 @@ use Magento\Framework\Event\ObserverInterface; /** - * Stale prefetches can be cleared using the `prefetchCache` and `prerenderCache` value of the `Clear-Site-Data response header. + * Stale speculative loads can be cleared using the `prefetchCache` and `prerenderCache` value of the `Clear-Site-Data` response header. * See [MDN documentation](https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Clear-Site-Data#prefetchcache) */ class AddClearSiteDataHeader implements ObserverInterface diff --git a/etc/events.xml b/etc/events.xml index 4d2a7da..c88bb4a 100644 --- a/etc/events.xml +++ b/etc/events.xml @@ -6,7 +6,7 @@ - +