=== Prodiseum – Remote Maintenance Agent ===
Contributors: prodiseum
Tags: maintenance, remote management, updates, agency, rollback
Requires at least: 6.4
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.0.1
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Secure companion connector for remote site maintenance, controlled updates, health checks and Safety Update rollback.

== Description ==
Prodiseum – Remote Maintenance Agent is installed on each client site that you want to manage from a compatible remote maintenance Manager.

The Agent exposes a private HMAC-SHA256-signed REST API. A Manager that has the site URL and connection secret can read maintenance status, inspect the installed plugin/theme inventory, run audits, and execute controlled updates one item at a time.

= How it works =
1. Install and activate this Agent on the site to be maintained.
2. Open the Agent settings page and copy the Connection Secret.
3. In your remote maintenance Manager, add this site's public URL and Connection Secret.
4. Test the connection before running maintenance.

The Agent does not require a third-party cloud account. It communicates only with the remote Manager that you explicitly configure.

= Safety Update and Recovery Layer =
Before updating a plugin or theme, the Agent can save the current files as a temporary safety snapshot. If verification fails, it can restore that snapshot.

For emergency recovery, the Agent installs a minimal must-use recovery component in `wp-content/mu-plugins/prodiseum-remote-maintenance-recovery.php`. This allows a signed recovery request to restore a safety snapshot even when a failed update prevents ordinary plugins from loading. The recovery component is removed when the Agent is deactivated.

A current full-site backup is still recommended before maintenance. File rollback does not replace a complete database and filesystem backup.

= Privacy and security =
* Remote requests are authenticated with HMAC-SHA256 signatures, timestamps and one-time nonces.
* The Connection Secret is stored on the managed site and should be kept private.
* No telemetry or account registration is required.
* Site maintenance data is sent only to the Manager that you configure.

More information and the Manager are available at https://prodiseum.com/praesidium/.

== Installation ==
1. Upload the plugin through Plugins > Add New, or install it from the WordPress.org directory when available.
2. Activate the plugin.
3. Open the Agent settings page.
4. Copy the Connection Secret into your remote maintenance Manager.
5. Keep the secret private and rotate it if you believe it has been exposed.

== Frequently Asked Questions ==

= Does the Agent work by itself? =
The Agent is the managed-site endpoint. To perform remote maintenance, connect it to a compatible Manager.

= Does it send data to Prodiseum servers? =
No. The Agent communicates with the Manager URL that you configure. It does not require a Prodiseum cloud account.

= Is the Recovery Layer a full backup? =
No. It is a file-level safety mechanism for plugin and theme updates. Keep a proper full-site backup strategy as well.

== Changelog ==

= 1.0.1 =
* Moves the Agent interface into the shared Prodiseum admin menu.
* Opens the Agent connection page immediately after activation.
* Adds one-click copy controls for the Site URL and Connection Secret.


= 1.0.0 =
* First WordPress.org-ready release under the Prodiseum public naming scheme.
* Adds GPL-compatible license headers and current repository metadata.
* Replaces flagged direct filesystem operations with the WordPress Filesystem API.
* Uses `wp_parse_url()` for site hostname parsing.
* Removes discouraged execution-time overrides.
* Cleans read-only admin status flags reported by Plugin Check.
* Improves Safety Update snapshots so multi-file plugins are backed up and restored as complete plugin directories.
* Updates the emergency Recovery Layer to use WordPress filesystem helpers and removes it when the Agent is deactivated.
