isFromExpectedPackage function
Returns true if namedType originates from expectedPackage.
If the type can't be resolved (e.g. unresolved import), returns true
to avoid false negatives — the rule should still fire rather than
silently skipping a real issue just because the type didn't resolve.
Implementation
bool isFromExpectedPackage(NamedType namedType, String expectedPackage) {
final type = namedType.type;
if (type == null || type is! InterfaceType) return true;
final uri = Uri.tryParse(type.element.library.identifier);
if (uri != null && uri.scheme == 'package') {
return uri.pathSegments.firstOrNull == expectedPackage;
}
return true;
}