=== Error Division Radar ===
Contributors: errordivision
Tags: monitoring, diagnostics, audit, changes, incident
Requires at least: 6.4
Tested up to: 7.1
Requires PHP: 8.0
Stable tag: 1.9.6
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Local operational change monitoring, system fingerprints and database incident capsules.

== Description ==

Error Division Radar records plugin, theme, core and privileged-user changes, correlates them with system fingerprints and preserves incident snapshots in the WordPress database. It includes runtime fatal capture after the plugin has loaded, signal filtering, repeat condensation, JSON export and a printable system dossier. Version 1.9.6 also includes a read-only Performance Intelligence screen and a non-destructive Rescue Readiness Check. Browser timing comparisons are not PHP-only or external visitor benchmarks.

Database capsule checksums detect inconsistent payloads. SHA-256 checksums are not keyed authentication and do not establish evidence authenticity against an attacker who can change the database.

On standalone WordPress installations, Radar includes assisted recovery inside the WordPress administrator dashboard. On Multisite, observation and database capsules work per website, while Rescue and plugin isolation are disabled. It lists plugins paused by WordPress in the current Recovery Mode session and permits administrator-confirmed deactivation using WordPress APIs. Known active plugin dependencies block this action. Themes are managed through the WordPress Themes screen.

A manual homepage response check sends a cookie-free request to the configured site URL. It does not send data to Error Division. HTTP success is not proof of complete recovery. No external service, separate host plugin or paid account is required.

Radar does not provide an independent recovery login, create executable files, install MU plugins, rename plugin directories or download external executable code.

This release uses separate tables, settings and hooks. It does not migrate or delete evidence from ED Change Radar Review25. Do not delete the old plugin or its vault as a migration shortcut.

== Installation ==

1. Upload this ZIP and activate Error Division Radar on a standalone WordPress installation or on an individual Multisite website (network activation is also supported).
2. Open Error Division Radar to inspect the baseline and configure signal families.
3. Open Settings > Recovery Console for WordPress recovery assistance. Enter WordPress Recovery Mode using the administrator email link when available.

== Privacy ==

Data remains in the local WordPress database. Administrative user IDs, component names, relative error paths and message fingerprints can be recorded. Complete error messages are opt-in. The Core does not record visitor tracking, transmit telemetry or store Recovery credentials.

== Frequently Asked Questions ==

= What does Error Division Radar actually monitor? =

Radar records relevant WordPress changes involving plugins, themes, core and privileged users. It compares system fingerprints, filters repeated or neutral events and groups related signals into incident timelines. It is designed to help administrators investigate what changed, not to replace every activity log or security product.

= Will Radar slow down my website? =

Radar is designed for passive monitoring and avoids blocking normal requests. Recording events and maintaining local database tables still consumes some resources. The impact depends on your hosting environment and activity volume; no universal zero-overhead guarantee is possible. Performance Intelligence provides read-only diagnostics to help investigate latency.

= What is Performance Intelligence? =

It displays available PHP runtime, OPcache, object-cache and database micro-probe observations. Optional browser probes compare static asset and authenticated WordPress AJAX request timing. These are browser-observed measurements, not an isolated PHP-only benchmark, server-worker profile or proof that a particular component is the bottleneck.

= Does Radar identify Redis and PHP-FPM bottlenecks automatically? =

Not conclusively. Radar can report the PHP SAPI and inspect certain cache and OPcache signals, but it does not reliably identify the underlying Redis backend, PHP-FPM worker saturation or the full execution path. Confirm host-level causes with server diagnostics before changing configuration.

= What is the Signal Console? =

The Signal Console groups locally recorded signals into inspectable component timelines. It helps operators compare changes and their surrounding context. Events close together in time do not, by themselves, prove causation.

= What does Black Box preserve? =

Black Box stores qualifying incident snapshots in the local WordPress database. A SHA-256 consistency checksum can reveal that a stored capsule differs from its expected contents. It is not a cryptographic guarantee of authenticity against an attacker who can also modify the database or its checksums.

= Can Radar recover a broken WordPress installation? =

Radar can provide assisted recovery only after WordPress and Radar have loaded. In a native WordPress Recovery Mode session, it can list eligible paused plugins and offer administrator-confirmed deactivation through WordPress APIs. If WordPress cannot bootstrap, the database is unavailable or Radar itself cannot load, use your hosting or independently installed recovery tools.

= What is Rescue Readiness Check, and does it trigger an error? =

It is a non-destructive inspection of available Rescue components and configuration indicators. It does not intentionally generate a fatal error, deactivate plugins or modify files. A passed readiness inspection is not proof that a real emergency recovery will succeed. Test any destructive drill only on isolated staging with a verified rollback path.

= Do I need the ED Rescue Deployment Manager? =

No. Radar Core works without the optional, separately installed Rescue Deployment Manager. Independent emergency recovery requires separate installation and configuration; the Core does not download or install executable Rescue components or provide its own out-of-band login.

= Does Radar work with WordPress Multisite? =

Yes, for observation and local incident capsules on individual sites; network activation is also supported. Rescue and plugin-isolation actions are disabled on Multisite. Each site's monitoring data is handled in its own WordPress context.

= Does Radar send data to Error Division or other external services? =

The Core does not require an Error Division account and does not transmit telemetry to Error Division. Its monitoring evidence is stored in the local WordPress database. A manually requested homepage response check makes a cookie-free HTTP request to your configured site URL; this is not a guarantee that the site has fully recovered.

= What personal or sensitive information can Radar record? =

Depending on events, Radar can store administrative user IDs, component names, relative error paths and message fingerprints. Full error-message storage is optional because messages can contain sensitive application information. Review retention and privacy settings before enabling additional capture.

= Can I export a report for technical support? =

Yes. Radar supports JSON evidence export and a printable, sanitized System Dossier. The dossier summarizes available environment and operational data; it is not a full server audit or a substitute for independent incident forensics.

= Can I customize the interface? =

Yes. Radar includes Commander Gold, Sensor Tactical and Tactical Light operator themes, plus per-user text-size controls. The printable System Dossier adapts its visual palette to the selected operator theme.

= What happens to my data if I deactivate or uninstall Radar? =

Deactivation and uninstall are different actions. The Core's cleanup behavior applies to its own database tables and settings according to the selected cleanup options. It does not migrate or delete the separate evidence vault from the earlier ED Change Radar Review25 project. Export material you need to preserve before any removal.

== Screenshots ==

1. Radar Overview: system-state intelligence, operational signals and Black Box capsules.
2. Signal Console: incident chains and attribution timelines.
3. Black Box: sealed incident capsules and evidence inspection.
4. Radar Settings: configuration, personal interface themes and Recovery Console.
5. Performance Intelligence: read-only PHP runtime, OPcache and browser latency diagnostics.

== Changelog ==

= 1.9.6 =
* Introduce read-only Performance Intelligence with PHP runtime, OPcache and cache diagnostics, plus explicitly labeled browser timing probes.
* Add a non-destructive Rescue Readiness Check; it does not trigger fatal errors or claim to validate a full recovery.
* Make the System Dossier print palette follow the current operator theme while retaining print-friendly report pages.
* Version Radar CSS/JS assets by modification time to avoid stale browser styles.
* Improve Recovery section heading contrast and Documentation mission styling.
* Differentiate Compact, Standard and Large navigation text sizes in Sensor Tactical and Tactical Light.



= 1.9.5 =
* Prevent event/capsule writes during early Multisite site creation and temporary WordPress installation contexts.
* Verify per-site Radar tables before marking the schema initialized.
* Preserve isolated network-site monitoring while keeping Multisite Rescue actions disabled.


= 1.9.4 =
* Limit the admin menu icon to 20 x 20 pixels across WordPress admin screens.
* Add per-site database table verification/repair for existing Multisite subsites.
* Provision Radar tables for newly initialized Multisite sites.

= 1.9.2 =
* Add per-site Multisite observation, tables and capsules with the WordPress blog prefix.
* Allow network and individual-site activation without blocking or falsely reporting deactivation.
* Keep independent Rescue and plugin isolation disabled on Multisite pending a separate security review.
* Initialize network-enabled sites on their first WordPress request to avoid unbounded network activation work.


= 1.9.1 =
* Prevent incomplete multisite activation: gracefully roll back network and per-site activation attempts without wp_die or activation output.
* Display an administrator notice explaining the single-site-only limitation.
* Stop loading Radar menu styling globally on unrelated WordPress administration screens.


= 1.9.0 =
* Finalize Bridge 03 incident correlation and optional Rescue download guidance.
* Replace host integration with WordPress-native assisted recovery and a cookie-free homepage response check.
* Preserve automatic per-user text size, themes and full-height backgrounds.
