This has been my gripe for a long time. I feel like many in tech have conflated two problems. With current software the problem of perception (ie "understanding its surroundings") is largely solved*, but this shouldn't be conflated with the much more difficult problem of self-driving.
*for sure, there have been issues with perception. A glaring example is the Uber fatality in AZ.
Also, we can drive just fine with two cameras and a neural net, no LIDAR.
In engineering, you don't add something unless it's necessary, not because "well we may as well have it."
And no, a neural net and two cameras are not "just fine". The day cameras will be as good as your eyes and your neural net will be on the level of human intelligence (AGI) then maybe it would be possible. But until then you will need to rely on extra hardware to get there.
Go check on youtube how FSD behaves in city with 1/10th the complexity of SF/Waymo. And remember the difficulty is with the long tail of unexpected events.
Even your basic non-fancy non-AI car these days have a variety of sonar/radar assists to help out their cameras. Tesla is just being cheap (and getting people killed because of it).