WP Manifestindependent plugin directory
manifest / updates / update-doctor

Update Doctor WP Registry grade A. No security issues foundWP RegistryNo security issues foundOpen the reportA

A diagnostic plugin that helps WordPress site owners figure out why automatic updates aren't running. Designed to replace months of methodical troubleshooting that may not surface a root cause.

★ 0stars
30release downloads
v1.2.11latest · 3mo ago

Install

Download update-doctor-1.2.11.zip From the v1.2.11 release on GitHub, Jul 17, 2026

Upload it under Plugins → Add New Plugin → Upload Plugin, then activate.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/csmcneill/update-doctor/releases/download/v1.2.11/update-doctor-1.2.11.zip
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

Update Doctor

A WordPress diagnostic plugin that tells you why your automatic updates aren't running.

WordPress's auto-update decision involves a long chain — PHP constants in wp-config.php, callbacks attached to half a dozen filter hooks, scheduled cron events, filesystem permissions, database options and transients, and per-item opt-ins. There's no single place that says "X is the reason updates aren't running for plugin Y." Update Doctor walks every layer of that chain and reports its findings in plain language, including the source file and line number for each filter callback so you can find third-party code that's interfering.

What it checks

  • Constants — AUTOMATIC_UPDATER_DISABLED, DISALLOW_FILE_MODS, WP_AUTO_UPDATE_CORE, DISABLE_WP_CRON, ALTERNATE_WP_CRON, FS_METHOD, WP_DEBUG_LOG.
  • Filters and Hooks — every callback registered to automatic_updater_disabled, auto_update_plugin, auto_update_theme, auto_update_core, auto_update_translation, file_mod_allowed, and the update transient filters, with file path and line number.
  • Cron Schedule — whether wp_maybe_auto_update, wp_update_plugins, wp_update_themes, and wp_version_check are scheduled and not overdue.
  • Filesystem — writability of wp-content/upgrade/, upgrade-temp-backup/, plugin and theme directories. Free disk space. WP_Filesystem method.
  • Options and Transients — stale auto_updater.lock, age of update transients, per-item opt-ins.
  • Per-Plugin and Per-Theme Decisions — uses WP_Automatic_Updater::should_update() to ask WordPress directly whether each item would auto-update right now.
  • String Scanner — searches wp-content/plugins/, mu-plugins/, and uploads/ for code referencing the auto-update kill-switches, including cached snippet libraries that aren't currently loaded as filters.
  • Error Log — tails recent entries from the WordPress debug log and surfaces anything related to background updates.

What you can do with it

  • Run Background Update Now — manually trigger wp_maybe_auto_update() and capture the output without waiting 12 hours.
  • Copy Markdown Report — share findings with your host's support team or paste them into a GitHub issue.
  • Opt-in failure notifications — when enabled, Update Doctor sends one email per 24 hours (max) if it detects a failed or silently skipped auto-update. The email is intentionally minimal and points back to the diagnostic page for details.

What it does not do

  • It does not apply fixes automatically — diagnostics only.
  • It does not phone home or send any data outside your site.
  • It does not depend on any external service.

Installation

  1. Clone or download this repository.
  2. Place the update-doctor directory in your site's wp-content/plugins/ folder.
  3. Activate Update Doctor from the Plugins screen in wp-admin.
  4. Open Tools → Update Doctor.

Alternatively, package the directory as a zip and upload it via Plugins → Add New → Upload Plugin.

Requirements

  • WordPress 5.5 or newer (for the modern auto-update infrastructure).
  • PHP 7.4 or newer.

Contributing

Issues and pull requests welcome at https://github.com/csmcneill/update-doctor. Please include:

  • WordPress version
  • PHP version
  • The full Markdown diagnostic report (use the "Copy Markdown Report" button)
  • A description of what you expected to happen and what actually happened.

License

GPL-2.0-or-later. See LICENSE.

Author

Built by Chris McNeill.

Releases

23 releases. Each count is every asset in that release; expand a row for the breakdown.

Tag
Published
Assets
Downloads
v1.2.11 latest
Jul 17, 2026 3mo ago
update-doctor-1.2.11.zip
4
Jul 16, 2026 3mo ago
update-doctor-1.2.10.zip
1
Jul 7, 2026 3mo ago
update-doctor-1.2.9.zip
1
Jun 26, 2026 4mo ago
update-doctor-1.2.8.zip
1
Jun 25, 2026 4mo ago
update-doctor-1.2.7.zip
1
Jun 25, 2026 4mo ago
update-doctor-1.2.6.zip
1
Jun 24, 2026 4mo ago
update-doctor-1.2.5.zip
1
Jun 24, 2026 4mo ago
update-doctor-1.2.4.zip
1
Jun 24, 2026 4mo ago
update-doctor-1.2.3.zip
1
Jun 24, 2026 4mo ago
update-doctor-1.2.2.zip
1
Jun 24, 2026 4mo ago
update-doctor-1.2.1.zip
2
Jun 23, 2026 4mo ago
update-doctor-1.2.0.zip
2
Jun 18, 2026 4mo ago
update-doctor-1.1.7.zip
1
Jun 18, 2026 4mo ago
update-doctor-1.1.6.zip
2
Jun 18, 2026 4mo ago
update-doctor-1.1.5.zip
1
Jun 12, 2026 4mo ago
update-doctor-1.1.4.zip
1
Jun 12, 2026 4mo ago
update-doctor-1.1.3.zip
1
May 28, 2026 5mo ago
update-doctor-1.1.2.zip
1
May 5, 2026 6mo ago
update-doctor-1.1.1.zip
1
May 1, 2026 6mo ago
update-doctor-1.1.0.zip
3
May 1, 2026 6mo ago
update-doctor-1.0.2.zip
0
May 1, 2026 6mo ago
update-doctor-1.0.1.zip
1
Apr 28, 2026 6mo ago
update-doctor-1.0.0.zip
1
A grade

Security

Update Doctor 1.2.11 · audited by WP Registry

No security issues found.

Audited release
1.2.11
Findings
none
Worst severity
—
Content hash
0123d9128bf2e91faa6a9a47…

WP Registry hashes the installable build and reports on that exact bytes-for-bytes copy. Embargoed findings are withheld until they are disclosed, so a clean verdict means nothing public is outstanding. WP Manifest does not audit code itself.