Skip navigation
XChain Docs

The seven primitives — the narrow waist

Last updated: 08/06/20262 min read

This is the heart of XChain: seven primitives, each specified hard (RFC 2119 — MUST / MUST NOT / SHOULD), so that everything above can plug in with total freedom. And because We hold Ourselves to honesty, the table below shows not just what each primitive is, but exactly how real it is today — including the one piece that is still a stand-in.

#PrimitiveModuleThe invariant it guardsStatus, told straight
1UIR — Universal Identity Rootx/uirOne global identity; per-chain accounts derived deterministically; one signature to actReal
2UAC — Universal Asset Commitmentx/uacThe total-supply invariant total == Σ perChain + lockedInTransit; a minimum security-class per assetReal — signature-gated mint
3XMP — XChain Messaging Protocolx/xmpTrust-minimized messaging; a clean split of READ and WRITEReal — anti-replay + pessimistic containment
4PAI — Proof Aggregation Interfacex/paiA parent verifies its children without re-executing them; recursive aggregationAggregation real · prover still MOCK (see §9)
5DA Interface (tiered)fabric/da + tools/dasidecarCommitted data stays retrievable / sampleable per the tier's policyReal — segments published to Celestia mocha, commitment verified on-chain
6VLC — Verifiable Log Commitmentx/vlcAppend-only logs: tamper-evident + timestamped + inclusion-provable; value-freeReal — RFC 6962 Merkle + on-chain DACommitment
7SC — Settlement Contractx/settlementMinimal logic at the Global Root: finalize cross-region value, consume aggregated proofsReal — reconciles the total-supply invariant; no blind commitments

⚠️ Primitive #4 (PAI) uses a MOCK prover. The aggregation circuit (STC → Cell → Root) is real and running; the cryptographic proof underneath is still a mock. By the spec's own rules, ProofSystem.MOCK is rejected on every network that is not a testnet. A real prover (SP1/Boojum) is open, honest work — see §9. We would rather you know this than be impressed by a claim We can't back.

The seven aren't a wish-list; they compose in a strict dependency order — UIR → (UAC, XMP) ; DA → (VLC, PAI) ; (UAC, XMP, PAI, VLC) → SC:

Why a narrow waist is a superpower: freeze a small, correct core, and thousands of people can build wildly different things above it that all still interoperate. The internet did this with TCP/IP. XChain does it for verifiable data.

The seven primitives — the narrow waist — XChain Docs