refactor(compat): Prüfbausteine nach src/Compatibility, Matrix und ManifestCheck generisch

Requirement, Call, ConstantRequirement, Mirror, Problem, FeatureStatus, CompatibilityMatrix, Manifest, ManifestCheck sowie Fingerprints und LineDiff liegen jetzt im divi-freien Kern. Neu: GlobalRequirement, CompatibilityMatrix::fromProblems(), ManifestCheck-Option signatures, DiviManifestCheck::create() und DiviAreas. Divi-Verhalten unverändert.

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 9beb55e228
commit b511ef6348
92 changed files with 1185 additions and 636 deletions
+6 -6
View File
@@ -4,10 +4,10 @@ declare(strict_types=1);
namespace LIT\MCP\Tests\Support;
use LIT\MCP\Integrations\Divi\Release\CompatibilityMatrix;
use LIT\MCP\Compatibility\ReleaseState;
use LIT\MCP\Compatibility\CompatibilityMatrix;
use LIT\MCP\Integrations\Divi\Release\DiviFeature;
use LIT\MCP\Integrations\Divi\Release\FeatureStatus;
use LIT\MCP\Integrations\Divi\Release\ReleaseState;
use LIT\MCP\Compatibility\FeatureStatus;
use LIT\MCP\Integrations\Divi\Release\ReleaseStatus;
/**
@@ -30,7 +30,7 @@ final class ReleaseMatrices
: new FeatureStatus($feature, ReleaseState::Released, [], ReleaseStatus::SOURCE_CODE);
}
return new CompatibilityMatrix($features);
return new CompatibilityMatrix(DiviFeature::cases(), $features);
}
/** @param list<DiviFeature> $locked */
@@ -52,7 +52,7 @@ final class ReleaseMatrices
string $source = ReleaseStatus::SOURCE_CODE,
?array $release = null
): ReleaseStatus {
return ReleaseStatus::of($version, CompatibilityMatrix::allReleased($source), $release);
return ReleaseStatus::of($version, CompatibilityMatrix::allReleased(DiviFeature::cases(), $source), $release);
}
/**
@@ -62,6 +62,6 @@ final class ReleaseMatrices
*/
public static function uniform(ReleaseState $state, string $version = '5.3.0', array $problems = []): ReleaseStatus
{
return ReleaseStatus::of($version, CompatibilityMatrix::uniform($state, $problems));
return ReleaseStatus::of($version, CompatibilityMatrix::uniform(DiviFeature::cases(), $state, $problems));
}
}