coreRoutes() as $route) { $path = trim((string) ($route['path'] ?? '')); $target = trim((string) ($route['target'] ?? '')); if ($path === '' || $target === '') { continue; } $coreRoutePaths[$path] = $target; Router::addRoute($path, $target); } $modulePaths = []; foreach ($this->moduleRegistry->getRoutes() as $route) { $path = trim((string) ($route['path'] ?? '')); $target = trim((string) ($route['target'] ?? '')); $moduleId = trim((string) ($route['module_id'] ?? '')); if ($path === '' || $target === '') { continue; } if (isset($coreRoutePaths[$path])) { throw new RuntimeException( "Module route path conflict: '{$path}' from module '{$moduleId}' collides with core route target '{$coreRoutePaths[$path]}'." ); } if (isset($modulePaths[$path])) { throw new RuntimeException( "Module route path conflict: '{$path}' from module '{$moduleId}' collides with module '{$modulePaths[$path]}'." ); } $modulePaths[$path] = $moduleId; Router::addRoute($path, $target); } } }