All projects
EIP-7943 CONTRACTS

ADRToken

The EIP-7943 reference contract for architecture decisions.

Solidity / Forge

ADRToken implements IERC7943NonFungible: an architecture decision minted as a non-fungible regulated asset. Every transfer runs through canSend / canReceive plus a frozen check, and decisions are tagged by origin — HUMAN, AI or INFRA. An AI decision with no human review auto-freezes until approveAIDecision is called.

tokenId = keccak256(record) — deterministic, verifiable identity
Origin tagging: HUMAN · AI · INFRA
AI-unreviewed decisions auto-freeze (canTransfer = false)
approveAIDecision() releases · forcedTransfer() quarantines
RBAC: MINTER_ROLE · ENFORCER_ROLE · COMPLIANCE_ROLE

Internal architecture

Interface

IERC7943NonFungible

EIP-7943 regulated-asset surface

canSend · canReceive

Transfer gates consulted on every move

Compliance state

frozen check

canTransfer = false while frozen

setFrozenTokens()

ENFORCER freezes / unfreezes

approveAIDecision()

Human review unfreezes an AI decision

forcedTransfer()

Quarantine path for rejected records

Identity & roles

tokenId = keccak256(record)

Deterministic content identifier

setBitcoinAnchor()

Attaches the OTS proof to the token

MINTER · ENFORCER · COMPLIANCE

Separated, auditable roles

Position in the protocol

adr-ledger mint(tokenId)ADRToken
ADRToken eventsCerebro
ADRToken policy gatePhantom