I don't think this is correct. My understanding is that file_select is used to select which files to make a promise about. Therefore if no file matches, then you have not promised anything at all, and so the promise is NOOP.