Function not returning expected object
There's a implicit pipeline there, and pipelines tend to "unroll" arrays, collections and arraylists one level.
Try this:
return ,$CORules
Or you can force the variable $CORulesResult to an Array with [Array]
in front
[Array]$CORulesResults = Get-ContentOrganizerRules $web.URL;
if($CORulesResults.Count -gt 0){
$Results.AddRange($CORulesResults);
}