Code That Does What It Says, Whether You Like It or Not
There is a quote that circulates in blockchain communities, sometimes attributed to early developers associated with Ethereum: “Code is law.” The idea is simple enough. In a world of smart contracts, the rules of a transaction are defined by software, and the software executes automatically when the required conditions are met. No court filings. No enforcement petitions. No waiting three years for a judgment over something that should have taken three weeks.
You can understand why people find this attractive. Traditional dispute resolution systems are often slow, expensive, and frustrating. The appeal of transactions that enforce themselves is obvious.
But the moment you move from theory to real commercial relationships, the limitations appear very quickly. Smart contracts are useful. They are already handling substantial transaction volumes in decentralised finance, digital assets, supply-chain systems, and automated payments. But there is a very large distance between “smart contracts reduce certain categories of disputes” and “smart contracts eliminate the need for dispute resolution.”
The first claim is true. The second almost certainly is not.
What Smart Contracts Are Actually Good At The sensible way to think about smart contracts is as highly specialised tools. They work extremely well in situations where obligations can be translated into objective, machine readable conditions.
If a payment should be released once a shipment is confirmed by a logistics system, code can handle that efficiently. If a royalty payment should be triggered every time a digital asset is accessed, automation works well. If collateral should be liquidated once a defined financial threshold is breached, software can execute the instruction faster and more consistently than any human process.
In these environments, smart contracts reduce counterparty risk. They reduce enforcement costs. And most importantly, they reduce opportunities for strategic non-performance. A party cannot simply decide not to pay if the payment mechanism is automated and irrevocable.
This matters because a remarkable amount of commercial litigation ultimately comes down to one simple issue: somebody did not perform an obligation they had already agreed to perform.
Smart contracts remove a significant portion of those disputes by making performance automatic. The dispute reduction benefit here is real and should not be understated.
The Oracle Problem: Where Code Meets Reality
The difficulty begins the moment a smart contract needs reliable information about the physical world.
This is the famous oracle problem. A smart contract can execute only based on the information it receives. If the information is inaccurate, manipulated, incomplete, or disputed, the contract may be executed incorrectly.
Consider a contract that automatically releases payment when goods are delivered “in acceptable condition.” Delivery itself is relatively easy to verify through logistics data. But an acceptable condition is not a purely digital fact. Someone must determine whether the products were damaged, contaminated, defective, or non-compliant with specifications.
That determination may depend on human inspection, sensor systems, third-party certifications, or a combination of all three. Each of those inputs can fail. Sensors malfunction. Inspectors disagree. Data feeds can be manipulated. Once that happens, the supposedly automatic system becomes the source of the dispute rather than the solution to it.
The same issue appears in insurance, construction, employment relationships, and almost every other domain involving contextual judgment. Code handles binary conditions extremely well. Human life is very rarely binary.
Commercial Relationships Depend on Flexibility
There is another problem that smart contract enthusiasts sometimes underestimate: good commercial relationships survive because people can adapt to changing circumstances.
Traditional contract law contains doctrines precisely for this reason. Force majeure. Frustration. Good faith obligations. Reasonableness standards. Judicial discretion in assessing damages. These mechanisms exist because rigid enforcement can produce absurd or unjust outcomes.
Imagine a supplier delayed by a natural disaster, a port shutdown, or sudden government restrictions. A traditional legal framework allows the parties, or ultimately a court or arbitral tribunal, to distinguish between unavoidable disruption and negligent delay.
A purely automated system generally does not. The late-delivery penalty is imposed because the condition for the penalty has been triggered. The code does not care whether the delay resulted from incompetence or catastrophe.
This rigidity is not necessarily a flaw in engineering. It is a consequence of formalising obligations into executable rules. The more precision you demand from automation, the less room there is for contextual judgment.
And contextual judgment turns out to matter quite a lot in human affairs.
Smart Contracts Do Not Eliminate Power Imbalances
There is also a political dimension to the “code is law” philosophy that deserves more scrutiny than it usually receives.
Traditional legal systems, imperfect as they are, at least recognise concepts like unconscionability, coercion, unequal bargaining power, and procedural fairness. Courts can invalidate oppressive contract terms. Regulators can intervene where markets fail. Consumer protection frameworks exist because not all parties negotiate from equal positions.
A self-executing smart contract does not inherently solve these problems. In some cases, it may worsen them.
If a dominant platform or financial actor writes the code governing a transaction, the weaker party may have even less practical ability to challenge unfair terms than they would under conventional systems. Automation can enforce unfairness just as efficiently as fairness. A perfectly functioning exploitative system is still exploitative.
This is why legal oversight continues to matter. The question is not merely whether the code executes correctly. The question is whether the underlying arrangement should be enforced at all.
Decentralised Dispute Resolution: A Radical Experiment
The blockchain sector’s response to these problems has been the development of decentralised dispute resolution systems. Platforms such as Kleros attempt to resolve disputes through randomly selected jurors drawn from token-holder communities.
The model is genuinely innovative. Jurors review evidence, vote on outcomes, and are economically incentivised to align with what the system considers the “honest” consensus outcome. The process is borderless, pseudonymous, and independent of national courts.
For blockchain-native disputes, this has a certain internal coherence. If the assets, parties, and transactions already exist entirely within decentralised ecosystems, a decentralised dispute process may feel natural.
But from the perspective of conventional legal systems, the unanswered questions are substantial.
What is the legal status of such decisions? Can they be enforced through national courts? Who bears liability if the process produces an irrational or manifestly unjust result? What procedural safeguards exist for due process, evidentiary standards, or conflicts of interest? How do consumer protection laws apply when adjudicators are anonymous and globally distributed?
These are not trivial technicalities. They go to the heart of legitimacy in dispute resolution.
Traditional legal systems derive authority from democratic institutions, constitutional structures, and procedural accountability. Decentralised systems derive authority from network participation and economic incentives. Whether those foundations can adequately substitute for legal legitimacy remains uncertain.
The Indian Legal Framework Is Still Taking Shape
India has not yet developed a comprehensive legal framework specifically addressing smart contracts and decentralised dispute systems.
The Indian Contract Act, 1872, and the Information Technology Act, 2000, provide some relevant principles regarding electronic agreements and enforceability. But neither statute was drafted with autonomous blockchain execution systems in mind.
Indian courts have not yet had to answer many of the most difficult questions:
• Does self-executing code satisfy all requirements of contractual consent?
• How should courts treat coding errors that produce unintended transfers?
• Can automated execution itself constitute a breach or fraud?
• What remedies are available when irreversible blockchain transactions produce unjust outcomes?
• Can decentralised adjudication systems qualify as arbitration under Indian law?
Eventually, these questions will reach Indian courts, because the commercial use of blockchain systems is expanding, whether regulators move quickly or slowly.
That legal uncertainty is not catastrophic. Every transformative commercial technology passes through a period where the law adapts incrementally through legislation, judicial interpretation, and market practice. The important thing is beginning the conversation before large-scale disputes emerge.
India is actually in a useful position here because it does not need to invent every framework independently. Jurisdictions such as Singapore, the United Kingdom, and several American states have already experimented with recognising smart contracts within existing legal systems. Comparative learning is possible.
The Real Future Is Probably Hybrid
The most realistic future is neither total automation nor complete rejection of automation.
Smart contracts are exceptionally good at handling routine, measurable, low-discretion obligations. Human dispute resolution remains much better at dealing with ambiguity, fairness, interpretation, and changing circumstances.
The interesting design challenge is figuring out how the two systems interact.
One possible model is layered enforcement: automated execution for routine obligations combined with human override mechanisms for exceptional situations. Another is embedding arbitration clauses directly into smart contract architecture so disputed outcomes can pause execution pending neutral review. Yet another is sector-specific use, where highly standardised financial transactions rely heavily on automation while relational commercial arrangements continue using conventional dispute systems.
That hybrid approach is less ideologically satisfying than “code replaces law,” but it is much closer to how complex societies actually function.
Technology tends to work best not when it eliminates human institutions entirely, but when it removes the parts of those institutions that are slow, repetitive, or unnecessarily expensive while preserving human judgment where judgment genuinely matters.
Smart contracts can absolutely make dispute resolution faster, cheaper, and more reliable in certain contexts. What they cannot do, at least for now, is eliminate the need for human interpretation in a world where human relationships remain stubbornly resistant to binary logic.
