XRC-137 in simple terms: one rule, one deterministic step

A lot of blockchain discussions jump too quickly from “here is a transaction” to “here is the result.”

But in many real processes, the important part is the logic in between.

That is one of the reasons we think in smaller, explicit process units.

One way to describe that idea is through XRC-137.

In simple terms, XRC-137 is about treating one validation or rule-driven operation as one deterministic step.

Instead of mixing everything together, the idea is to make each step explicit:

  • what input is expected
  • what rules are applied
  • what counts as valid
  • what happens when validation succeeds
  • what happens when validation fails

That last point matters a lot.

In many systems, failure is treated as a generic error.
But in real process logic, “invalid” is often not a technical failure at all.

It can be a legitimate and expected branch of the process.

That means:

onInvalid is not automatically a broken system state — it can be an intentional business outcome.

This distinction sounds small, but it changes how you think about process design.

You move away from:

  • success vs crash

and toward:

  • valid branch vs invalid branch
  • continue vs stop
  • approve vs reject
  • path A vs path B

That makes workflows more explicit, more auditable, and often easier to reason about.

The broader architectural question is whether blockchain systems should do more of this natively, instead of leaving all structured validation logic scattered across frontends, middleware, and ad hoc integrations.

So the real question is:

Should rule-based validation be treated as a first-class building block in on-chain systems, or is that better left outside the chain entirely?

Posted Mar 10, 2026, 6:00 PM UTC

10
Loading comments…