We weren't reporting errors (like file not found) from "process load", because when you just passed one string and no paths, the utility function didn't actually gather the error. Fix that and add a test.
The only weak part of the patch is that the error string comes from the platform plugin so I don't actually know what it is going to look like. So I tested that we don't produce the "unknown error" string instead. That's not really API, it's just what the only current implementation produces when it couldn't get the error. If we get a second implementation, we'll either just ensure it produces the same string or extract that somewhere and set it as the generic error. But that seemed overkill for this patch.