WP Manifestindependent plugin directory
manifest / updates / alynt-drime-backups-dashboard

Alynt Drime Backups Dashboard

Read-only WordPress admin dashboard for Alynt Drime Backups site status monitoring.

by Alynt · github.com/nichlasb/alynt-drime-backups-dashboard · website

0stars
29release downloads
0forks

Install

The author publishes release zips, so WP-CLI can install straight from GitHub:

wp plugin install https://github.com/nichlasb/alynt-drime-backups-dashboard/releases/download/v0.1.15/alynt-drime-backups-dashboard-0.1.15.zip

Declares an update source (NichlasB/alynt-drime-backups-dashboard), so updates arrive through the plugin's own updater.

Readme

Alynt Drime Backups Dashboard

Read-only central monitoring dashboard for WordPress sites running Alynt Drime Backups Uploader.

This repository is the separate dashboard plugin package. The current dashboard host is control-sitesmanage in live-only mode. Version 1 remains read-only monitoring. The current V2.1 release candidate adds one separately opted-in, bounded remote action: asking a client uploader to scan for ready backup packages and upload eligible items using its own local settings and Drime credentials.

v1 Boundary

  • Dashboard-generated one-time pairing token.
  • Client-site opt-in before any status endpoint is enabled.
  • Dashboard polling of a fixed read-only client status endpoint.
  • No remote backup, restore, delete, cleanup, settings, credential, Drime token, or arbitrary command actions.

V2.1 Boundary

  • Requires V1 pairing first.
  • Requires a separate dashboard-generated adb2a action opt-in token pasted on the client site.
  • Uses per-site signed action intents with short expiry, idempotency, and client-side rate/lock enforcement.
  • Allows only scan_upload_now: the client scans for ready backup packages and schedules eligible uploads.
  • Does not create fresh WPvivid/server-runner backups, restore, delete, clean up, change schedules/settings, expose filesystem paths, or store Drime API credentials in the dashboard.

Package Identity

  • Plugin name: Alynt Drime Backups Dashboard
  • Slug/folder: alynt-drime-backups-dashboard
  • Main file: alynt-drime-backups-dashboard.php
  • Text domain: alynt-drime-backups-dashboard
  • Composer package: alynt/alynt-drime-backups-dashboard
  • GitHub Plugin URI: NichlasB/alynt-drime-backups-dashboard
  • PHP class prefix: Alynt_Drime_Backups_Dashboard_
  • Function/option/action prefix: alynt_drime_backups_dashboard_
  • Constant prefix: ALYNT_DRIME_BACKUPS_DASHBOARD_

Current Status

Version 0.1.15 currently includes:

  • WordPress plugin header and requirement gate.
  • Local custom table migration hooks for dashboard-owned sites and snapshots.
  • Admin page under Tools > Drime Backups Dashboard for creating local pending enrollments and displaying one-time pairing tokens.
  • Protocol-v1 pairing-token helper primitives with public-HTTPS origin validation.
  • Local dashboard-record revocation scaffolding that does not contact client sites.
  • Credential-vault foundation for encrypted dashboard-side polling credential storage.
  • Safe transport foundation that prepares the fixed read-only status request without executing outbound HTTP.
  • Protocol-v1 REST enrollment endpoint for authenticated uploader opt-in completion.
  • Manual Check Now for enrolled sites using the fixed authenticated read-only status route.
  • Scheduled read-only polling with bounded batches, locks, jitter, retry backoff, and snapshot retention cleanup.
  • Responsive, WordPress-native Sites, Attention, and Site Detail views with status summaries, polling evidence, accessible status badges, bounded recent snapshot history, and local-only revoke/check actions.
  • Redacted admin Diagnostics tab for scheduler state, retention defaults, polling counts, recent safe poll outcomes, and progressively enhanced support-copy/export controls.
  • Optional structured diagnostics logging, disabled by default, with a bounded redacted local event buffer for support troubleshooting.
  • Always-on, bounded, redacted operator action history for dashboard-local actions such as pairing-token creation, local revocation, manual Check Now, and diagnostics changes.
  • Optional dashboard-side display of redacted per-source backup freshness and inventory evidence from schema-1 uploader status payloads.
  • Redacted WPvivid source-activity hints that distinguish local WPvivid activity evidence from Alynt upload proof.
  • At-a-glance Sites-row source summaries for Server and WPvivid freshness, current package counts, latest backup/package time, and latest upload time when clients report that evidence.
  • V2.1 dashboard-generated action opt-in tokens, encrypted dashboard-side signing-key storage, signed Request Backup Now dispatch, and redacted remote-action history for the single scan_upload_now action.
  • Credential-aware Sites-tab manual-check state copy for active, pending, revoked, and missing-credential rows.
  • Sites-tab layout protection for action buttons and hiding of superseded revoked duplicate rows when a healthy active enrollment exists for the same origin.
  • Harmless per-request cache-busting for read-only status polling so managed page caches cannot serve stale authenticated status payloads.
  • Implementation plan in docs/IMPLEMENTATION_PLAN.md.
  • Approved Phase 3 protocol contract in docs/PROTOCOL_V1.md.
  • Approved Phase 3 threat model in docs/THREAT_MODEL_V1.md.
  • Future v2 remote-actions planning in docs/V2_REMOTE_ACTIONS_PLAN.md.
  • Settings reference in docs/SETTINGS.md.
  • Hook reference in docs/HOOKS.md.

Before broad implementation work, create or verify a restore point. For the new dashboard repo, use a baseline commit after this scaffold and then create an external restore point before adding enrollment, polling, or schema migrations. For companion uploader changes, run the toolkit restore-point prompt against the uploader repository first.

Development

Requirements

  • WordPress 6.0 or higher.
  • PHP 7.4 or higher.
  • Composer dependencies installed for local linting and tests.
  • Node.js/npm for optional asset-build and deployment helper scripts.

Installation

  1. Copy the alynt-drime-backups-dashboard folder to wp-content/plugins/.
  2. Activate Alynt Drime Backups Dashboard from the WordPress Plugins screen.
  3. Open Tools > Drime Backups Dashboard in WordPress admin.

Usage

Use the dashboard to generate one-time V1 pairing tokens, complete client-site opt-in enrollment, and monitor read-only client backup status snapshots. For V2.1-capable paired clients, a dashboard administrator can generate a separate one-time action opt-in token and then use Request Backup Now to send one signed scan_upload_now intent. The dashboard still does not create fresh backups, restore, delete, clean up, change settings, store Drime credentials, or run arbitrary commands.

Diagnostics live under Tools > Drime Backups Dashboard > Diagnostics. Structured diagnostics logging is disabled by default. When an administrator explicitly enables it, the plugin stores a bounded local event buffer with redaction applied before persistence/export. Pairing tokens, polling secrets, authorization headers, cookies, nonces, raw payloads, raw response bodies, filesystem paths, SQL, salts, and Drime credentials are not stored in diagnostics events.

FAQ

Can the dashboard run backups, restores, or cleanup on client sites?

Version 1 cannot run any remote actions. The V2.1 release candidate adds only a bounded Request Backup Now action after separate client-side opt-in. That action asks the client uploader to scan for ready packages and upload eligible items; it does not create fresh WPvivid/server-runner backups and cannot restore, delete, clean up, change settings, expose Drime credentials, or run arbitrary commands.

What happens when I generate a pairing token?

The dashboard creates a pending local enrollment for the expected client origin and displays a one-time pairing credential. The client site must opt in by submitting the enrollment payload back to the dashboard REST endpoint before the dashboard can poll status.

Does diagnostics logging store secrets?

No. Diagnostics logging is disabled by default and redacts sensitive fields before local persistence or export. Pairing tokens, polling secrets, authorization headers, cookies, nonces, raw payloads, raw response bodies, filesystem paths, SQL, salts, and Drime credentials must not be stored.

Where are implementation details documented?

See docs/IMPLEMENTATION_PLAN.md for the implementation sequence, docs/PROTOCOL_V1.md for the read-only dashboard/uploader contract, docs/PROTOCOL_V2.md and docs/THREAT_MODEL_V2.md for the V2.1 signed-action boundary, docs/V2_REMOTE_ACTIONS_PLAN.md for later remote-operation planning, docs/SETTINGS.md for stored options, and docs/HOOKS.md for hook ownership.

Changelog Summary

See CHANGELOG.md for the current unreleased changelog and release notes.

License

GPL-2.0-or-later. See LICENSE.

Local Checks

Run the configured checks before packaging:

npm test
npm run lint
npm run build

For targeted PHP syntax checks during development, run php -l against changed PHP files. The configured lint script covers the committed PHP paths.

Release Packaging

Alynt Plugin Updater distribution uses GitHub release assets from NichlasB/alynt-drime-backups-dashboard.

  • Release tags use vX.Y.Z.
  • The release workflow packages alynt-drime-backups-dashboard-X.Y.Z.zip.
  • The ZIP top-level folder is alynt-drime-backups-dashboard/.
  • CI builds runtime assets with npm ci and npm run build.
  • Composer dependencies are development-only; release packages exclude vendor/.
  • Release packages exclude test suites, source assets, build scripts, Composer/npm manifests, local deployment helpers, and internal engineering docs.
  • Release publication, release-asset validation, and WordPress updater runtime acceptance remain separate approval-gated workflows.

Read the full README on GitHub →

Releases

TagPublishedAssetDownloads
v0.1.15 Aug 20, 2026 alynt-drime-backups-dashboard-0.1.15.zip 3
v0.1.14 Aug 20, 2026 alynt-drime-backups-dashboard-0.1.14.zip 1
v0.1.13 Aug 19, 2026 alynt-drime-backups-dashboard-0.1.13.zip 1
v0.1.12 Aug 18, 2026 alynt-drime-backups-dashboard-0.1.12.zip 1
v0.1.11 Aug 18, 2026 alynt-drime-backups-dashboard-0.1.11.zip 1
v0.1.10 Aug 17, 2026 alynt-drime-backups-dashboard-0.1.10.zip 1
v0.1.9 Aug 17, 2026 alynt-drime-backups-dashboard-0.1.9.zip 1
v0.1.8 Aug 17, 2026 alynt-drime-backups-dashboard-0.1.8.zip 2
v0.1.7 Aug 16, 2026 alynt-drime-backups-dashboard-0.1.7.zip 0
v0.1.6 Aug 13, 2026 alynt-drime-backups-dashboard-0.1.6.zip 2
v0.1.5 Aug 13, 2026 alynt-drime-backups-dashboard-0.1.5.zip 1
v0.1.4 Aug 13, 2026 alynt-drime-backups-dashboard-0.1.4.zip 3
v0.1.3 Aug 13, 2026 alynt-drime-backups-dashboard-0.1.3.zip 3
v0.1.2 Aug 13, 2026 alynt-drime-backups-dashboard-0.1.2.zip 3
v0.1.1 Aug 11, 2026 alynt-drime-backups-dashboard-0.1.1.zip 3
v0.1.0 Aug 11, 2026 alynt-drime-backups-dashboard-0.1.0.zip 3