I don't know how. If I open an assembly with the API and it has missing subassemblies or parts, the only way I know to detect that is if they're in ConstituentFilePaths but not on disk. However, since the path part of those filenames is unreliable, I might have to do a risky and expensive search...