|null $checks Label => check; null = defaults(). */ public function __construct(private ?array $checks = null) { } /** @return list Labels of the checks that failed or threw. */ public function problems(): array { return ManifestCheck::failed($this->checks ?? self::defaults()); } /** @return array */ public static function defaults(?ManifestCheck $check = null): array { $check ??= new ManifestCheck(); return array_merge($check->codeChecks(), $check->registrationChecks(), $check->mirrorChecks()); } }