* Added a "Recheck Licenses" button above the licence table on the Super Speedy Settings page so customers have a clear way to refresh licence status after a renewal or upgrade without scrolling down to the licence-key field. The button is disabled until a licence key is entered/saved and re-enables as you type.
* The Recheck flow now also force-bypasses the auth-server's own 1-hour licence cache (via a `force=1` flag on the `wpiapi/check_product_key` call), so renewals/upgrades that completed less than an hour before a recheck no longer show as expired/exceeded. Normal admin page loads continue to use both caches as before — only an explicit Recheck click bypasses them. (Lives in the `super-speedy-settings` submodule, so the change propagates to every Super Speedy plugin.)
* Fixed possible infinite recursion in the license error handler: `wp_error_added` callback in Super Speedy Settings re-added the same WP_Error without unhooking, causing a stack overflow whenever another plugin (e.g. a GitHub update check) triggered a WP_Error with a JSON body containing a `message` field; the handler now unhooks during mutation, skips errors already enhanced, and only enhances errors originating from superspeedyplugins.com when the source URL is available
* Fixed Drop All Indexes on multisite subsites dropping indexes across every subsite instead of only the current one
* Indexes button now reads "Create All Indexes" when no indexes are selected, and "Update Active Indexes" when one or more are selected; "Create All Indexes" now creates every index regardless of checkbox state
* Promoted the existing Drop All Indexes link to a proper secondary button so it is visible whenever any indexes exist
* Checkboxes now update live as each index is created or dropped during Create/Update, and the Create/Drop buttons swap visibility automatically when the index set becomes empty or non-empty
* Added new WP All Export optimisation for when editing exports to speed up or avoid the wp_postmeta scan to grab all postmeta keys
* Added preview and customizer check for "Remove OR check for private items on front end" optimisation
* Added full namespacing for plugin update checker to prevent conflicts with 3rd party plugins
* Fixed bug with admin notice for term filtering where if you ran the rebuild from the GUI, it kept telling you it was in progress (term rebuild required to clear the notice though)
* Removed 'remove private check' option - it was causing many support issues and has limited value - it can still be added through Custom Query alterations where desired
* Moved the 'optimise group by' to operate in all cases when enabled as it has its own built-in safety checks to ensure query functionality remains identical, just faster
* Moved the 'Remove CAST' option to operate in all cases when enabled since it safely only affects the WHERE clause when implicit casting is enough for equality/inequality checks - it never runs on comparison checks like >, <, BETWEEN etc
* Performance boost for term filtering maintenance
* Removed excess debug from term maintenance optimisation
* Term filtering re-enabled with improved table maintenance performance
* Additional conditional logic added to 'remove private' optimisation to fix Mollie Payments payment-status update issue
* Term filtering optimisation disabled - accidentally went out too early
* Removed 'WHERE EXISTS' optimisation