Normal contracts are written by lawyers. They are reviewed by both parties' lawyer. Sometimes, after the contracts are signed, the lawyers disagree what a particular provision or clause means.
At which point, they either negotiate or sue. In which case, a human judge weighs up the case and decides.
How do disagreements work with smart contracts?
I assume some contracts will be buggy - mostly because programmers are just as fallible as lawyers. So how are disagreements resolved in an equitable way?