This is along the lines I am thinking of. I am able to create the list of all the feature sources in the repository like you mentioned but it is so long that opening the XML for each feature sources isn't practical.
I am interested to get more information about using the Maestro API since you mention that there might be a helper extension method that could help identify the feature sources with managed data files.
I also notice a Resources Call named EnumerateUnmanageData. I receive an error when attempting this call but I am interested to know what the output is.
Out Data folder in the Repository is over 10GB so we need to focus on moving the managed feature sources to unmnanaged aliased locations to facilitate future upgrades.
The official api has a MgResourceService.GetResourceContents method that lets you fetch XML content for a *series* of resource ids. This should be more efficient than individual GetResourceContent calls.
Unfortunately this api is not available in the mapagent or Maestro API