Some of the "better" arguments i've seen are obsoleting/maintaining anything that is quasi public record. Think all sorts of land/legal transactions where it's basically "once x and y and z have said yes, process transaction from x to z"
Codifying ANY logic is doable, but especially simple logic like that has it's upsides in how many middle men it can help eliminate, and the TONS of human error that comes with it.
In the examples you're giving, you could have codified "here's what happens if the supplier cannot complete the transaction" or "here's what happens if parties cannot agree on the quality of the work" or a zillion other things that already exist.
You did, however, hit on the big one, that when something goes wrong or something is misunderstood or somehow someone needs to talk to a human...well good fucking luck.
The obvious downside of all the decentralization mantra is that of course it means you're liable for your own mistakes, which is just NOT a business model that ever works. That said, the crypto space has gotten massively more centralized (because it turns out market forces still don't give a fuck about your philosophy), and I think the future of the tech lies somewhere else entirely, where end users functionally never interact with it.