fix: name the WordPress revision screen for library and layout revisions (audit L3)

lit/revision-restore takes only content types, so a write to a library entry
or a Theme Builder layout now answers with restore_url (wp-admin
revision.php for its revision_id), also per page in lit/divi-replace-text.
The guides and readme no longer present lit/revision-restore as the way back
for these types.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01At3V6SjwbMe6eMzVGW3Hs7
This commit is contained in:
2026-09-27 23:05:05 +02:00
co-authored by Claude Opus 5.5
parent 79f2fdbda6
commit dcae2d4b91
11 changed files with 48 additions and 12 deletions
@@ -206,6 +206,8 @@ final class GlobalEditsTest extends TestCase
self::assertTrue($result['ok']);
self::assertSame(SaveScope::GlobalItem, $this->saved[0][1]);
self::assertSame(811, $result['revision_id']);
// Audit L3: lit/revision-restore does not take library entries – the WordPress revision screen does.
self::assertSame('https://kunde.test/wp-admin/revision.php?revision=811', $result['restore_url']);
self::assertSame(2, $result['affected_count']);
self::assertArrayNotHasKey('backup_id', $result);
self::assertSame(0, $this->backups);
@@ -537,6 +539,7 @@ final class GlobalEditsTest extends TestCase
self::assertSame(1, $result['results'][0]['count']);
self::assertSame(SaveScope::LibraryItem, $this->saved[0][1]);
self::assertStringContainsString('Bibliotheksmodul', $this->saved[0][0]);
self::assertSame('https://kunde.test/wp-admin/revision.php?revision=811', $result['results'][0]['restore_url']);
}
/** Ruling P1 / answer F2: a global entry is never changed without the dry run that names its pages. */