Royal MCP 1.4.29 — DB migration recovery hardening
Summary
Restore the runtime DB-migration retry semantic that regressed in 1.4.27, plus three additional table-recovery hardening fixes so any install whose tables go missing (auto-update race, externally-dropped tables, uninstall/reinstall cycle) self-heals on the next pageload without user intervention.
- Restore
maybe_upgrade_db()success-tracking —db_versiononly advances when every required migration actually ran, with a force-load fallback so a transient autoloader miss can't latch the install. - Defensive
/registerself-heal — OAuth client registration now attempts to create missing tables once and retries before returning 500. maybe_upgrade_db()table-existence probe — the version-string short-circuit now also verifies required tables physically exist before returning early, closing a recovery gap where externally-dropped tables couldn't be self-healed by the runtime migration.uninstall.phpclearsroyal_mcp_db_version— pre-1.4.29 the option survived uninstall and could short-circuit the next install's runtime healer on the same WP install.
Recommended for everyone on 1.4.27 and 1.4.28.