The fail-if-empty is working as designed here. That is not what you’re looking for semantically (it applies to what’s selected from a resource, not to make the resource itself optional - subtle maybe but I think it’s a different topic).
We want optional for a requirement/resource. This was requested a while back so we need to get it in.
Not a bug - the fail-on-empty is a different meaning altogether (it applies when we know what the run is but there are no files selected for it). We don’t want to overload this to mean “this dependency is optional”.
This is related to this topic:
I think optional here is what we want. This applies to the required resource itself, not what gets selected from it.