This commit is contained in:
Javier Casares 2026-06-03 06:30:49 +00:00
commit 4402f3570d
20 changed files with 1683 additions and 382 deletions

View file

@ -1,5 +1,41 @@
== Changelog ==
= 1.7.0 =
_Release date: 2026-05-11_
**Added**
* New **Alerts** admin page (Media Audit → Alerts) with two tabs:
* *Active Alerts* — lists all attachments with active (non-dismissed) alert-domain matches. Each row has a "Dismiss" button that expands an inline form to add optional notes.
* *Dismissed Alerts* — lists alerts that have been manually dismissed, with the dismissal notes, who dismissed them, and when. Each row has a "Reactivate" button to restore the alert.
* New DB table `mra_dismissed_alerts` (schema migration 1.2.0): stores attachment ID, dismissed-by user ID, timestamp, and free-text notes (up to 1,000 characters).
* Dashboard "Alert" card now counts only active (non-dismissed) alerts.
* Alert filter in the Media Audit list now excludes dismissed alerts.
* External Status column shows a grey "Dismissed" badge instead of the red "Alert" badge for dismissed attachments.
* "Export CSV (Alerts only)" bulk action now excludes dismissed alerts. Both CSV exports include new "Dismissed" and "Dismissed Notes" columns.
* `top_domains` stored per provider raised from 10 to 50 entries to prevent low-frequency alert domains from being silently discarded.
**Fixed**
* Alert filter in Media Audit list was incorrectly restricted to `external_status = 'matches'`, causing it to miss attachments whose alert domains were found but whose aggregate status had not yet been updated to `matches`. The filter now correctly matches the dashboard card count.
* Capability checks in `AuditPage` (render, AJAX handler, CSV export, bulk actions) used the weaker `edit_posts` capability instead of the `edit_others_posts` used in the menu registration.
**Schema changes:** `ROBOTSTXT_MEDIAAUDIT_DB_VERSION` → `1.2.0`
**Compatibility**
* WordPress: 6.8 - 7.0
* PHP: 8.2 - 8.5
* WP-CLI: 2.x
**Tests**
* PHP Coding Standards: WPCS 3.x / PHPCS 3.x
* PHPStan: level 9
* PHPCompatibility: PHP 8.2 - 8.5
* PHPUnit: 48 tests, 78 assertions
= 1.6.0 =
_Release date: 2026-05-05_