p59c
This commit is contained in:
@@ -1238,6 +1238,44 @@ final readonly class RetriexEffectiveConfigProvider
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
$reviewPathGroups = $definition['review_path_groups'] ?? null;
|
||||
if (array_key_exists('review_path_groups', $definition)) {
|
||||
if (!is_array($reviewPathGroups) || $reviewPathGroups === []) {
|
||||
$errors[] = sprintf('genre.adaptation_surface.%s.review_path_groups must be a non-empty map when declared.', $group);
|
||||
continue;
|
||||
}
|
||||
|
||||
foreach ($reviewPathGroups as $reviewGroup => $reviewDefinition) {
|
||||
if (!is_string($reviewGroup) || trim($reviewGroup) === '') {
|
||||
$errors[] = sprintf('genre.adaptation_surface.%s.review_path_groups keys must be non-empty strings.', $group);
|
||||
continue;
|
||||
}
|
||||
if (!is_array($reviewDefinition)) {
|
||||
$errors[] = sprintf('genre.adaptation_surface.%s.review_path_groups.%s must be a map.', $group, $reviewGroup);
|
||||
continue;
|
||||
}
|
||||
|
||||
$paths = $reviewDefinition['paths'] ?? null;
|
||||
if (!is_array($paths) || $paths === []) {
|
||||
$errors[] = sprintf('genre.adaptation_surface.%s.review_path_groups.%s.paths must be a non-empty list.', $group, $reviewGroup);
|
||||
continue;
|
||||
}
|
||||
|
||||
foreach ($paths as $path) {
|
||||
if (!is_string($path) || trim($path) === '') {
|
||||
$errors[] = sprintf('genre.adaptation_surface.%s.review_path_groups.%s.paths must contain non-empty strings.', $group, $reviewGroup);
|
||||
continue;
|
||||
}
|
||||
|
||||
$path = trim($path);
|
||||
if (!isset($flattened[$path])) {
|
||||
$warnings[] = sprintf('genre.adaptation_surface.%s.review_path_groups.%s references unknown review path: %s.', $group, $reviewGroup, $path);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
foreach ($this->collectGenreConfigurationValueSourcePaths($configurationValues) as $valuePath => $sourcePaths) {
|
||||
|
||||
Reference in New Issue
Block a user