Using this example from docs:
fn multiple_resources(conn: Res<MyConnection>, config: Res<MyConfig>) {
// a reference to the resources configured in the Worker below
// can be access within the Job handler
}
Accessing conn returns an Option<MyConnection> which forces the user to unsafely unwrap if they know it can't be nil, which is unnecessary, unnatural and tedious, but most importantly fails to capture user intent with types.
If the user configures the system for Res<T>, then they should get T back. If T can indeed be nil, then providing Res<Option<T>> should do the trick.