refactor(compat): Capability-Interface, DiviFeature implementiert es

Grundlage der generischen Kompatibilitätsschicht für Fremd-Plugins mit inoffiziellen Schnittstellen (Plan docs/superpowers/plans/2026-11-06-kompatibilitaetsschicht.md).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Jan-Niclas Loosen
2026-11-06 12:03:30 +01:00
co-authored by Claude Opus 5.5
parent 691231f776
commit 9beb55e228
4 changed files with 147 additions and 1 deletions
+23
View File
@@ -0,0 +1,23 @@
<?php
declare(strict_types=1);
namespace LIT\MCP\Compatibility;
defined('ABSPATH') || exit;
/**
* One capability of an integration that a third-party plugin update may break separately. id() is unique across all
* integrations, so a bare ID is enough to find its capability.
*/
interface Capability
{
/** Stable, globally unique ID such as 'page-read' or 'pods-field-write'. */
public function id(): string;
/** Name for messages and the admin tab (German). */
public function label(): string;
/** Whether the capability changes data. */
public function isWrite(): bool;
}