A version move replaces files. The time to find out it was a bad idea is before it runs, not after.
versions/check-asset-rollback answers every question the write would hit, and touches nothing: is the asset on WordPress.org, does that exact version exist, does this site hold a local archive of it, is the target older or newer than what is installed — and the two consequences people forget.
Those two are the reason this ability exists separately. On a multisite, rolling back a network-activated plugin affects every site on the network, not just this one. And rolling back the active theme changes what visitors see the moment the files land. Both are easy to forget and expensive to remember late.
At a glance
| Ability | versions/check-asset-rollback |
| Toolset | WP Rollback — toolset/wp-rollback |
| Group | Version Targeting › Versions & Pre-flight |
| Requires | Nothing |
| Capability | manage_options, plus update_plugins or update_themes |
| Safety | Read-only — the whole point is that it changes nothing |
| Repeatable | Idempotent |
| Ships in | AcrossAI Abilities Manager 0.0.45 and later |
How it works
Pass type and the matching identifier. Add version to check a specific target; omit it to ask only whether the asset is eligible at all.
It returns can_roll_back as a single verdict, plus reasons for anything blocking it and warnings for anything that would proceed but deserves a second thought. The split matters: a reason stops you, a warning does not.
Input
| Name | Type | Required | What it is |
|---|---|---|---|
type | string | Yes | plugin or theme. |
plugin | string | When type is plugin | Plugin file, folder name, display name or partial match. |
stylesheet | string | When type is theme | Theme directory name. |
version | string | No | The version you intend to move to. Omit to check general eligibility only. |
What comes back
| Name | Type | What it is |
|---|---|---|
can_roll_back | boolean | The verdict. True when nothing blocks the move. |
reasons | array | What would block it. Empty when it can proceed. |
warnings | array | Things that will not stop the move but change what it means. |
relation | string | older, same, newer, or unknown when the two strings cannot be compared. |
on_wordpress_org | boolean | Whether the directory publishes this asset at all. |
target_published | boolean | Whether that exact version is published. |
target_archived | boolean | Whether this site holds a local archive of it. |
used_on_other_sites | string | yes, no, or unknown — a string, not a boolean, because “single-site” and “could not ask” are not the same as “no”. |
is_active_theme | boolean | Whether this is the theme visitors currently see. |
validation_note | string | States plainly that a successful move means files replaced, not files verified. |
Example
Ask your assistant:
Is it safe to put Akismet back on 5.7.1?
{
"ability": "versions/check-asset-rollback",
"parameters": {
"type": "plugin",
"plugin": "akismet",
"version": "5.7.1"
}
}Worth knowing
- Asking for the version already installed returns
relation: sameand a warning that the move would change nothing — use the reinstall abilities to re-apply files at the current version. used_on_other_sitesis deliberately a string. On a single site, and when the multisite service cannot be consulted, the honest answer is not “no”.- Neither WordPress core nor WP Rollback’s free tier verifies package integrity. A successful rollback means the files were replaced;
plugins/verify-plugin-checksumsis what verifies them.
Related abilities
- Roll Back Plugin — perform the move this checked
- Roll Back Theme — the theme equivalent
- List Asset Versions — which versions are valid targets
Get the plugins:
AcrossAI Abilities Manager · AcrossAI MCP Manager
Browse the rest: Every ability, by category