It shouldn't matter at all how dark the roads were, the vehicle was equipped with LIDAR.
Look how much time has passed to learn of the fact that it was Uber's sloppy programming at fault in this tragedy.
The good news for Uber is that this comes out far after the event when people are in general less likely to care, or even remember the details of the accident.
What's there to "sloppily" program here? Most likely, somebody set an arbitrary threshold constant 0.05 too low. The data that threshold was working with will still have been provided by the machine learning system, which is opaque to humans.
We'll have to face it that if we want self-driving cars, there isn't some magic procedure we can follow to not have accidents due to false classifications.