Driving a known "autonomous safe" route, or map region, and simply not driving if the conditions aren't ok (it's snowing, there is construction in the area so maps or lanes are poor etc) works. But that's basically taking the "mostly autonomous"-level driving, and just adapting either the environment and/or the restrictions/schedule/routes to that.
Uber could probably also just have defensive systems that simply park the car and wait for a human driver to arrive, if there is a problem. It's good business for them to have 3 cars per driver. It still doesn't approach the interesting problem though, which is autonomous driving on a human level (Autonomous Uber without backup drivers, in an entire city). That I think is far away.