At the risk of further HN reproach,
You're exactly right --and there are some ways to solve the problem while remaining decentralized.
The ideas you bring up are, essentially: credit, insurance, risk, reputation.
Tracking reputation on-chain is workable, and already exists. For instance, some airdrops have been done based on on-chain activity and reputation. Decentralized founders wanted to reward those with "good on-chain behavior."
The way I imagine this would work for a decentralized Uber:
- Pay for fares on-chain (ideally, a 2nd or 3rd layer, e.g. a ZK rollup)
- Drivers rate users on-chain, using the payment address
- Possibly use other on-chain information to form a "credit/reputation profile"
It's possible this entire idea of reputation/credit could be packaged into a dedicated protocol that could be referenced by any number of other on-chain systems (such as this decentralized uber). There are some projects along these lines in existence, I believe, but none have gotten traction yet, and are mostly focused around lending.
To protect privacy, we'd need to take extra care to shield user info (using e.g. ZK proofs), or just make everything completely transparent. It's also possible to use privacy for the payments/assets system, and make the reputation system transparent.
I do not think we'd want to be storing ride data, etc. on-chain. I'd look into something like OrbitDB, or some other decentralized system that's meant to be a database.