Technical reference
Anchors (keel-anchors)
Cross-chain and off-chain anchoring: portable commitments, permissionless L2 state proofs, and zk verification backends.
Module boundary
Cross-chain and off-chain anchoring: portable commitments, permissionless L2 state proofs, and zk verification backends.
keel-anchors
Cross-chain and off-chain anchoring: portable commitments, permissionless L2 state proofs, and zk verification backends.
- Version
- 0.3.0
- Dependencies
- keel-kernel, keel-codecs, keel-artifacts, keel-graph, keel-hold
- Source revision
- ace3fed7aff1765c7d2ee9bba4d0232246f86ffb
KeelProofUpgradeController
ABI reference at contracts revision ace3fed7aff1. Tuple fields are listed in declaration order. Overloads remain separate.
KeelProofUpgradeController
view / pure calls read state; nonpayable / payable calls require a transaction. Source ABI is a versioned interface reference; deployed addresses can be older versions. Compare the target’s implementation and ABI before a write.
| Signature / parameters | Returns | Mutability |
|---|---|---|
EXECUTION_WINDOW() | uint64 | view |
REVIEW_DELAY() | uint64 | view |
activate(bytes32 id) | — | nonpayable |
approve(bytes32 id) | — | nonpayable |
cancel(bytes32 id) | — | nonpayable |
isAdmitted(bytes32 id, address adapter, uint8 family, uint32 network) | bool | view |
manager() | address | view |
profileId((uint8,uint32,address,bytes32,bytes32,bytes32) profile) | bytes32 | view |
proposal(bytes32 id) | (bool,bool,uint64,uint64,uint64,address,(uint8,uint32,address,bytes32,bytes32,bytes32)) | view |
propose((uint8,uint32,address,bytes32,bytes32,bytes32) profile, string manifestURI) | bytes32 id | nonpayable |
recommended(bytes32 route) | bytes32 | view |
routeId(uint8 family, uint32 network) | bytes32 | pure |
suspend(bytes32 id) | — | nonpayable |
Events · 5 entries
| Signature / parameters |
|---|
Activated(bytes32 indexed id, bytes32 indexed route) |
Approved(uint64 readyAt, uint64 expiresAt, bytes32 indexed id) |
Cancelled(bytes32 indexed id) |
Proposed(bytes32 indexed id, address indexed proposer, (uint8,uint32,address,bytes32,bytes32,bytes32) profile, string manifestURI) |
Suspended(bytes32 indexed id) |
Custom errors · 7 entries
| Signature / parameters |
|---|
CodeChanged() |
DuplicateProfile() |
InvalidProfile() |
InvalidState() |
NotReady() |
Unauthorized() |
UnknownProfile() |
| Signature / parameters | Mutability |
|---|---|
constructor(address manager_) | nonpayable |
KeelAnchorReplicationBridge
ABI reference at contracts revision ace3fed7aff1. Tuple fields are listed in declaration order. Overloads remain separate.
KeelAnchorReplicationBridge
view / pure calls read state; nonpayable / payable calls require a transaction. Source ABI is a versioned interface reference; deployed addresses can be older versions. Compare the target’s implementation and ABI before a write.
| Signature / parameters | Returns | Mutability |
|---|---|---|
ANCHOR_STATUS_VERIFIED() | uint8 | view |
CARRIER_ORDINALS() | uint8 | view |
CARRIER_TEZOS() | uint8 | view |
FAMILY_BITCOIN() | uint8 | view |
FAMILY_TEZOS() | uint8 | view |
NETWORK_BITCOIN_MAINNET() | uint32 | view |
NETWORK_TEZOS_MAINNET() | uint32 | view |
PROOF_STATUS_PENDING() | uint8 | view |
anchorRegistry() | address | view |
applyVerifiedAnchor(address replicationRegistry_, bytes32 campaignId, uint8 carrier, bytes32 anchorId) | — | nonpayable |
Events · 1 entries
| Signature / parameters |
|---|
CarrierProofBridged(bytes32 indexed campaignId, uint8 indexed carrier, bytes32 indexed anchorId, address caller) |
Custom errors · 9 entries
| Signature / parameters |
|---|
AnchorNotVerified() |
CampaignMismatch() |
CampaignMissing() |
InvalidContract() |
LocatorMismatch() |
ProofNotPending() |
UnsupportedCarrier() |
WrongSourceNetwork() |
ZeroAddress() |
| Signature / parameters | Mutability |
|---|---|
constructor(address anchorRegistry_) | nonpayable |
KeelAttestedAnchorRegistry
ABI reference at contracts revision ace3fed7aff1. Tuple fields are listed in declaration order. Overloads remain separate.
KeelAttestedAnchorRegistry
view / pure calls read state; nonpayable / payable calls require a transaction. Source ABI is a versioned interface reference; deployed addresses can be older versions. Compare the target’s implementation and ABI before a write.
Functions · 71 entries
| Signature / parameters | Returns | Mutability |
|---|---|---|
ANCHOR_CLAIM_LEASE() | uint64 | view |
ANCHOR_DOMAIN() | bytes | view |
ANCHOR_POLICY_RESTRICT_FLAG() | uint256 | view |
ATTESTED_ANCHOR_DOMAIN() | bytes32 | view |
DEFAULT_ADMIN_ROLE() | bytes32 | view |
DIGEST_ALGORITHM_SHA256() | uint8 | view |
DIGEST_KIND_CHUNK_KECCAK256() | uint8 | view |
DIGEST_KIND_DECODED_SHA256() | uint8 | view |
EMISSION_SCALE() | uint256 | view |
MAX_ANCHOR_TASKS() | uint256 | view |
MAX_FAMILY_LABEL_BYTES() | uint256 | view |
MAX_LOCATOR_BYTES() | uint256 | view |
NATIVE_EVENT_DOMAIN() | bytes32 | view |
NATIVE_VERIFIER_ID() | bytes32 | view |
PLUGIN_ID_VALUE() | bytes32 | view |
PLUGIN_PROTOCOL_VALUE() | bytes32 | view |
SOURCE_FAMILY_BITCOIN() | uint8 | view |
SOURCE_FAMILY_ETHEREUM() | uint8 | view |
SOURCE_FAMILY_TEZOS() | uint8 | view |
TRUST_CLASS_ATTESTED() | uint8 | view |
TRUST_CLASS_CLIENT() | uint8 | view |
TRUST_CLASS_NATIVE() | uint8 | view |
TRUST_CLASS_OPTIMISTIC() | uint8 | view |
administratorCount() | uint256 | view |
anchorByRoot(bytes32 anchorRoot) | bytes32 | view |
anchorState(bytes32 anchorId) | (bytes32,uint64,(uint8,uint32,bytes32,bytes32,uint64,bytes32),bytes32,bytes32,bytes32,address,address,uint32,uint32,uint64,uint64,uint64,uint64,uint8) | view |
anchorSummary(bytes32 anchorId) | uint8 status, bytes32 objectId, uint64 artifactRevision, uint8 sourceFamily, uint32 sourceNetwork, bytes32 anchorRoot, address contributor, uint32 taskCount | view |
anchorTask(bytes32 anchorId, uint32 taskIndex) | (bytes32,bytes32,uint8,uint64,uint64,uint8,string) | view |
anchorVerificationContext(bytes32 anchorId, uint32 taskIndex) | uint8 anchorStatus, uint64 nonce, address verifierAdapter, address contributor, uint8 sourceFamily, uint32 sourceNetwork, uint8 taskStatus, uint8 digestKind, bytes32 expectedDigest, string locator | view |
anchorVerifier(bytes32 verifierId) | (address,uint256,bytes32,uint8,uint64,uint64,bool,bool) | view |
artifactRegistry() | address | view |
cancelAnchor(bytes32 anchorId) | — | nonpayable |
chainFamily(uint8 familyId) | (string,string,uint64,bool,bool) | view |
computeAnchorRoot(bytes32 portableRoot, uint8 sourceFamily, uint32 sourceNetwork, bytes32 sourceRegistry, bytes32 sourceObjectKey, uint64 sourceRevision, bytes32 sourceEventDigest) | bytes32 | pure |
contributorStats(address contributor) | (uint128,uint64,uint64,uint256) | view |
driveAnchor(bytes32 objectId, uint64 artifactRevision, (uint8,uint32,bytes32,bytes32,uint64,bytes32) source, bytes32 verifierId, string[] locators, bytes32[] slugIds) | bytes32 anchorId | nonpayable |
effectiveEmission(uint8 familyId, uint32 network) | (uint128,uint64,uint56,bool) rate | view |
familyEmission(uint8 familyId) | (uint128,uint64,uint56,bool) | view |
getRoleAdmin(bytes32 role) | bytes32 | view |
grantRole(bytes32 role, address account) | — | nonpayable |
grip(bytes32 objectId) | uint256 | view |
hasRole(bytes32 role, address account) | bool | view |
isChainAnchored(bytes32 objectId, uint64 artifactRevision, uint8 family, uint32 network) | bool | view |
lastAdministratorProtectionEnabled() | bool | pure |
networkAnchor(bytes32 objectId, uint64 artifactRevision, uint8 family, uint32 network) | bytes32 | view |
networkEmission(uint8 familyId, uint32 network) | (uint128,uint64,uint56,bool) | view |
objectAnchorFamilyAllowed(bytes32 objectId, uint8 family) | bool | view |
objectAnchorPolicy(bytes32 objectId) | uint256 | view |
objectAnchorStamp(bytes32 objectId, uint64 artifactRevision) | uint8 nativeStatus, bytes32 nativeAnchorRoot, uint256 attestedFamilyMask, bool frozen | view |
objectAnchoredChainAt(bytes32 objectId, uint256 index) | (uint8,uint32,uint64,bytes32,bytes32) | view |
objectAnchoredChains(bytes32 objectId) | (uint8,uint32,uint64,bytes32,bytes32)[] | view |
objectAttestedFamilyMask(bytes32 objectId) | uint256 | view |
objectChainAnchored(bytes32 objectId, uint8 family, uint32 network) | bool | view |
objectFamilyAnchored(bytes32 objectId, uint8 family) | bool | view |
pluginId() | bytes32 | pure |
pluginProtocol() | bytes32 | pure |
pluginVersion() | uint64 | pure |
predictAnchorId(bytes32 objectId, uint64 artifactRevision, (uint8,uint32,bytes32,bytes32,uint64,bytes32) source) | bytes32 | view |
registerChainFamily(uint8 familyId, string name, string locatorScheme) | — | nonpayable |
registerVerifier(bytes32 verifierId, address adapter, uint256 familyMask, uint8 trustClass, uint64 version, bytes32 specDigest) | — | nonpayable |
renounceRole(bytes32 role, address callerConfirmation) | — | nonpayable |
retireChainFamily(uint8 familyId) | — | nonpayable |
retireVerifier(bytes32 verifierId) | — | nonpayable |
revokeRole(bytes32 role, address account) | — | nonpayable |
setAnchor(bytes32 anchorId) | — | nonpayable |
setFamilyEmission(uint8 familyId, uint128 perByteMilli, uint64 perTaskBonus, uint56 perAnchorBonus) | — | nonpayable |
setNetworkEmission(uint8 familyId, uint32 network, uint128 perByteMilli, uint64 perTaskBonus, uint56 perAnchorBonus) | — | nonpayable |
setObjectAnchorPolicy(bytes32 objectId, uint256 policy) | — | nonpayable |
stampNative(bytes32 objectId, uint64 artifactRevision) | bytes32 anchorId | nonpayable |
submitTaskResult(bytes32 anchorId, uint64 nonce, uint32 taskIndex, bytes32 verifiedDigest, uint64 verifiedByteLength, bool verified) | — | nonpayable |
supportsInterface(bytes4 interfaceId) | bool | view |
Events · 18 entries
| Signature / parameters |
|---|
AnchorCancelled(bytes32 indexed anchorId, uint64 nonce) |
AnchorDriven(bytes32 indexed anchorId, bytes32 indexed objectId, uint8 indexed sourceFamily, uint64 artifactRevision, uint32 sourceNetwork, bytes32 sourceRegistry, bytes32 sourceObjectKey, uint64 sourceRevision, bytes32 verifierId, address contributor, uint32 taskCount, uint64 nonce) |
AnchorEmissionCredited(bytes32 indexed anchorId, address indexed contributor, uint256 emission) |
AnchorRejected(bytes32 indexed anchorId, uint64 nonce) |
AnchorTaskOpened(bytes32 indexed anchorId, uint32 taskIndex, bytes32 expectedDigest, uint8 digestKind, string locator) |
AnchorTaskRejected(bytes32 indexed anchorId, uint32 taskIndex, bytes32 reportedDigest) |
AnchorTaskVerified(bytes32 indexed anchorId, uint32 taskIndex, bytes32 verifiedDigest, uint64 byteLength) |
AnchorVerified(bytes32 indexed anchorId, bytes32 indexed anchorRoot, bytes32 indexed objectId, uint64 artifactRevision, uint8 sourceFamily, uint32 sourceNetwork, address contributor) |
AnchorVerifierRegistered(bytes32 indexed verifierId, address indexed adapter, uint256 familyMask, uint8 trustClass, uint64 version, bytes32 specDigest) |
AnchorVerifierRetired(bytes32 indexed verifierId) |
ChainFamilyRegistered(uint8 indexed familyId, string name, string locatorScheme) |
ChainFamilyRetired(uint8 indexed familyId) |
FamilyEmissionSet(uint8 indexed familyId, uint128 perByteMilli, uint64 perTaskBonus, uint56 perAnchorBonus) |
NetworkEmissionSet(uint8 indexed familyId, uint32 indexed network, uint128 perByteMilli, uint64 perTaskBonus, uint56 perAnchorBonus) |
ObjectAnchorPolicySet(bytes32 indexed objectId, uint256 policy, address setter) |
RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole) |
RoleGranted(bytes32 indexed role, address indexed account, address indexed sender) |
RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender) |
Custom errors · 28 entries
| Signature / parameters |
|---|
AccessControlBadConfirmation() |
AccessControlUnauthorizedAccount(address account, bytes32 neededRole) |
AnchorActive() |
AnchorMissing() |
AnchorNotPending() |
FamilyDisabledForObject() |
FamilyExists() |
FamilyMissing() |
FamilyRetired() |
InvalidCommitment() |
InvalidContract() |
InvalidFamily() |
InvalidLocator() |
InvalidNonce() |
InvalidSource() |
InvalidTasks() |
InvalidTrustClass() |
InvalidVerifier() |
LastAdministrator() |
RevisionMissing() |
StringsInsufficientHexLength(uint256 value, uint256 length) |
TaskNotPending() |
Unauthorized() |
UnsupportedDigestAlgorithm() |
VerifierExists() |
VerifierMissing() |
VerifierRetired() |
ZeroAddress() |
| Signature / parameters | Mutability |
|---|---|
constructor(address artifactRegistry_, address admin) | nonpayable |
KeelIpfsCidVerifier
ABI reference at contracts revision ace3fed7aff1. Tuple fields are listed in declaration order. Overloads remain separate.
KeelIpfsCidVerifier
view / pure calls read state; nonpayable / payable calls require a transaction. Source ABI is a versioned interface reference; deployed addresses can be older versions. Compare the target’s implementation and ABI before a write.
Functions · 20 entries
| Signature / parameters | Returns | Mutability |
|---|---|---|
ANCHOR_STATUS_PENDING() | uint8 | view |
DEFAULT_ADMIN_ROLE() | bytes32 | view |
DIGEST_KIND_DECODED_SHA256() | uint8 | view |
TASK_STATUS_PENDING() | uint8 | view |
administratorCount() | uint256 | view |
anchorRegistry() | address | view |
getRoleAdmin(bytes32 role) | bytes32 | view |
grantRole(bytes32 role, address account) | — | nonpayable |
hasRole(bytes32 role, address account) | bool | view |
ipfsFamily() | uint8 | view |
keelHold() | address | view |
lastAdministratorProtectionEnabled() | bool | pure |
maxVerifiableBytes() | uint64 | view |
previewCidDigest(bytes32 keelHoldObjectId) | bytes32 | view |
renounceRole(bytes32 role, address callerConfirmation) | — | nonpayable |
revokeRole(bytes32 role, address account) | — | nonpayable |
setIpfsFamily(uint8 familyId) | — | nonpayable |
setMaxVerifiableBytes(uint64 maxBytes) | — | nonpayable |
supportsInterface(bytes4 interfaceId) | bool | view |
verifyIpfsAnchor(bytes32 anchorId, uint32 taskIndex, bytes32 keelHoldObjectId) | — | nonpayable |
Events · 6 entries
| Signature / parameters |
|---|
IpfsAnchorVerified(bytes32 indexed anchorId, uint64 nonce, uint32 taskIndex, bytes32 cidDigest, uint64 byteLength) |
IpfsFamilyConfigured(uint8 familyId) |
MaxVerifiableBytesConfigured(uint64 maxBytes) |
RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole) |
RoleGranted(bytes32 indexed role, address indexed account, address indexed sender) |
RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender) |
Custom errors · 14 entries
| Signature / parameters |
|---|
AccessControlBadConfirmation() |
AccessControlUnauthorizedAccount(address account, bytes32 neededRole) |
AdapterNotPinned() |
AnchorNotPending() |
CidMismatch(bytes32 computed, bytes32 claimed) |
ContentDigestMismatch() |
ContentTooLarge(uint256 length, uint64 limit) |
DagTooDeep(uint256 slugCount) |
FamilyNotConfigured() |
LastAdministrator() |
TaskNotPending() |
UnsupportedDigestKind() |
WrongFamily() |
ZeroAddress() |
| Signature / parameters | Mutability |
|---|---|
constructor(address anchorRegistry_, address keelHold_, address admin) | nonpayable |
KeelL2AnchorVerifier
ABI reference at contracts revision ace3fed7aff1. Tuple fields are listed in declaration order. Overloads remain separate.
KeelL2AnchorVerifier
view / pure calls read state; nonpayable / payable calls require a transaction. Source ABI is a versioned interface reference; deployed addresses can be older versions. Compare the target’s implementation and ABI before a write.
| Signature / parameters | Returns | Mutability |
|---|---|---|
DEFAULT_ADMIN_ROLE() | bytes32 | view |
administratorCount() | uint256 | view |
anchorRegistry() | address | view |
getRoleAdmin(bytes32 role) | bytes32 | view |
grantRole(bytes32 role, address account) | — | nonpayable |
hasRole(bytes32 role, address account) | bool | view |
lastAdministratorProtectionEnabled() | bool | pure |
lockConfiguration() | — | nonpayable |
locked() | bool | view |
remoteObjectStore(uint32 network) | address objectStore | view |
renounceRole(bytes32 role, address callerConfirmation) | — | nonpayable |
revokeRole(bytes32 role, address account) | — | nonpayable |
setRemoteObjectStore(uint32 network, address objectStore) | — | nonpayable |
stateVerifier() | address | view |
submitArbitrumAnchor(bytes32 anchorId, uint32 taskIndex, bytes32 sendRoot, bytes header, bytes32 slot, bytes[] accountProof, bytes[] storageProof) | — | nonpayable |
submitOpStackAnchor(bytes32 anchorId, uint32 taskIndex, bytes32 versionByte, bytes32 stateRoot, bytes32 messagePasserStorageRoot, bytes32 latestBlockHash, bytes32 slot, bytes[] accountProof, bytes[] storageProof) | — | nonpayable |
supportsInterface(bytes4 interfaceId) | bool | view |
Events · 6 entries
| Signature / parameters |
|---|
ConfigurationLocked() |
L2AnchorApplied(bytes32 indexed anchorId, uint64 nonce, uint32 taskIndex, bytes32 digest, uint32 network) |
RemoteObjectStoreSet(uint32 indexed network, address objectStore) |
RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole) |
RoleGranted(bytes32 indexed role, address indexed account, address indexed sender) |
RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender) |
Custom errors · 10 entries
| Signature / parameters |
|---|
AccessControlBadConfirmation() |
AccessControlUnauthorizedAccount(address account, bytes32 neededRole) |
AdapterNotPinned() |
AnchorNotPending() |
ConfigurationIsLocked() |
DigestMismatch(bytes32 expected, bytes32 proven) |
LastAdministrator() |
NoRemoteStore(uint32 network) |
TaskNotPending() |
ZeroAddress() |
| Signature / parameters | Mutability |
|---|---|
constructor(address anchorRegistry_, address stateVerifier_, address admin) | nonpayable |
KeelL2StateVerifier
ABI reference at contracts revision ace3fed7aff1. Tuple fields are listed in declaration order. Overloads remain separate.
KeelL2StateVerifier
view / pure calls read state; nonpayable / payable calls require a transaction. Source ABI is a versioned interface reference; deployed addresses can be older versions. Compare the target’s implementation and ABI before a write.
| Signature / parameters | Returns | Mutability |
|---|---|---|
arbitrumStateRoot(uint64 chainId, bytes32 sendRoot, bytes header) | bytes32 stateRoot, uint256 blockNumber | view |
opStackStateRoot(uint64 chainId, bytes32 versionByte, bytes32 stateRoot, bytes32 messagePasserStorageRoot, bytes32 latestBlockHash) | bytes32 | view |
opStackStateRootAtGame(uint64 chainId, uint256 gameIndex, bytes32 versionByte, bytes32 stateRoot, bytes32 messagePasserStorageRoot, bytes32 latestBlockHash) | bytes32 root, uint256 l2BlockNumber | view |
registry() | address | view |
storageValue(bytes32 stateRoot, address account, bytes[] accountProof, bytes32 slot, bytes[] storageProof) | bytes | pure |
Custom errors · 17 entries
| Signature / parameters |
|---|
BadTerminalDepth(uint256 depth) |
EmbeddedNodeUnsupported(uint256 length) |
GameNotResolvedForProposer(uint8 status) |
GameTypeNotRespected(uint32 gameType, uint32 respected) |
HeaderHashMismatch(bytes32 expected, bytes32 actual) |
MalformedNode(uint256 items) |
MalformedRlp() |
NoSettlementContract() |
NoValue() |
NodeHashMismatch(uint256 index) |
NotAHeader(uint256 items) |
NotAnAccount() |
OutputRootMismatch(bytes32 expected, bytes32 actual) |
PathMismatch(uint256 depth) |
SendRootNotConfirmed(bytes32 sendRoot) |
TrailingNodes() |
WrongStackForThisPath(uint8 stack) |
| Signature / parameters | Mutability |
|---|---|
constructor(address registry_) | nonpayable |
KeelNodeRegistry
ABI reference at contracts revision ace3fed7aff1. Tuple fields are listed in declaration order. Overloads remain separate.
KeelNodeRegistry
view / pure calls read state; nonpayable / payable calls require a transaction. Source ABI is a versioned interface reference; deployed addresses can be older versions. Compare the target’s implementation and ABI before a write.
| Signature / parameters | Returns | Mutability |
|---|---|---|
GOVERNOR() | address | view |
MAX_NODES() | uint256 | view |
MAX_URI_BYTES() | uint256 | view |
NODE_SET_DOMAIN() | bytes32 | view |
commitNodeSet(uint256 chainId, bytes32 digest) | — | nonpayable |
committedDigest(uint256 chainId) | bytes32 | view |
epochFor(uint256 chainId) | uint64 | view |
nodeSetDigest(uint256 chainId, string[] endpoints) | bytes32 | pure |
nodesFor(uint256 chainId) | string[] | view |
publishNodeSet(uint256 chainId, string[] endpoints) | uint64 epoch | nonpayable |
Events · 2 entries
| Signature / parameters |
|---|
NodeSetCommitted(uint256 indexed chainId, bytes32 digest, address indexed by) |
NodeSetPublished(uint256 indexed chainId, bytes32 digest, uint64 epoch, address indexed relayedBy) |
Custom errors · 8 entries
| Signature / parameters |
|---|
CredentialsInUri(string uri) |
EmptySet() |
NotGovernor() |
NotHttps(string uri) |
NothingCommitted(uint256 chainId) |
SetDoesNotMatchCommitment(bytes32 supplied, bytes32 committed) |
TooManyNodes(uint256 supplied, uint256 maximum) |
UriTooLong(uint256 length, uint256 maximum) |
| Signature / parameters | Mutability |
|---|---|
constructor(address governor) | nonpayable |
KeelPortableAnchorRegistry
ABI reference at contracts revision ace3fed7aff1. Tuple fields are listed in declaration order. Overloads remain separate.
KeelPortableAnchorRegistry
view / pure calls read state; nonpayable / payable calls require a transaction. Source ABI is a versioned interface reference; deployed addresses can be older versions. Compare the target’s implementation and ABI before a write.
| Signature / parameters | Returns | Mutability |
|---|---|---|
ANCHOR_DOMAIN() | bytes | view |
DIGEST_ALGORITHM_SHA256() | uint8 | view |
MAX_PORTABLE_MANIFEST_BYTES() | uint64 | view |
PORTABLE_MANIFEST_MEDIA_TYPE_DIGEST() | bytes32 | view |
SOURCE_EVENT_DOMAIN() | bytes32 | view |
SOURCE_FAMILY_ETHEREUM() | uint8 | view |
SOURCE_REF_DOMAIN() | bytes32 | view |
anchor(bytes32 anchorRoot) | (bytes32,uint64,bytes32,uint64,bytes32,bytes32,address,bool) | view |
artifactRegistry() | address | view |
computeAnchorRoot(bytes32 portableRoot, uint8 sourceFamily, uint32 sourceNetwork, bytes32 sourceRegistry, bytes32 sourceObjectKey, uint64 sourceRevision, bytes32 sourceEventDigest) | bytes32 | pure |
portableAnchor(bytes32 portableRoot) | bytes32 | view |
publishObjectAnchor(bytes32 manifestObjectId, uint64 manifestObjectRevision, bytes32 decodedObjectId, uint64 decodedObjectRevision, bytes32 portableRoot) | bytes32 anchorRoot | nonpayable |
revisionSourceDigest(bytes32 objectId, uint64 artifactRevision) | bytes32 | view |
sourceAnchor(bytes32 objectId, uint64 artifactRevision) | bytes32 | view |
Events · 1 entries
| Signature / parameters |
|---|
PortableRootAnchored(bytes32 indexed anchorRoot, bytes32 indexed portableRoot, bytes32 indexed objectId, uint64 artifactRevision, bytes32 decodedObjectId, uint64 decodedObjectRevision, bytes32 sourceEventDigest, address registrar) |
Custom errors · 8 entries
| Signature / parameters |
|---|
InvalidContract() |
InvalidPortableManifestSource() |
InvalidPortableRoot() |
PortableRootAlreadyAnchored() |
SourceAlreadyAnchored() |
Unauthorized() |
UnsupportedNetwork() |
ZeroAddress() |
| Signature / parameters | Mutability |
|---|---|
constructor(address artifactRegistry_) | nonpayable |
KeelSettlementRegistry
ABI reference at contracts revision ace3fed7aff1. Tuple fields are listed in declaration order. Overloads remain separate.
KeelSettlementRegistry
view / pure calls read state; nonpayable / payable calls require a transaction. Source ABI is a versioned interface reference; deployed addresses can be older versions. Compare the target’s implementation and ABI before a write.
| Signature / parameters | Returns | Mutability |
|---|---|---|
DEFAULT_ADMIN_ROLE() | bytes32 | view |
administratorCount() | uint256 | view |
chainOf(uint64 chainId) | (bool,uint8,uint64,uint8,uint8,uint8,address) | view |
getRoleAdmin(bytes32 role) | bytes32 | view |
grantRole(bytes32 role, address account) | — | nonpayable |
hasRole(bytes32 role, address account) | bool | view |
isRecorded(uint64 chainId) | bool | view |
lastAdministratorProtectionEnabled() | bool | pure |
lockConfiguration() | — | nonpayable |
locked() | bool | view |
pathToRoot(uint64 chainId) | uint256 hops, bool fullyOnChain | view |
recordChain(uint64 chainId, (bool,uint8,uint64,uint8,uint8,uint8,address) chain) | — | nonpayable |
recordedChains() | uint64[] | view |
renounceRole(bytes32 role, address callerConfirmation) | — | nonpayable |
revokeRole(bytes32 role, address account) | — | nonpayable |
supportsInterface(bytes4 interfaceId) | bool | view |
Events · 5 entries
| Signature / parameters |
|---|
ChainRecorded(uint64 indexed chainId, uint8 depth, uint8 stack, uint8 da) |
ConfigurationLocked() |
RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole) |
RoleGranted(bytes32 indexed role, address indexed account, address indexed sender) |
RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender) |
Custom errors · 7 entries
| Signature / parameters |
|---|
AccessControlBadConfirmation() |
AccessControlUnauthorizedAccount(address account, bytes32 neededRole) |
ConfigurationIsLocked() |
InvalidTopology() |
LastAdministrator() |
UnknownChain(uint64 chainId) |
ZeroAddress() |
| Signature / parameters | Mutability |
|---|---|
constructor(address admin) | nonpayable |
KeelSp1GatewayProofBackend
ABI reference at contracts revision ace3fed7aff1. Tuple fields are listed in declaration order. Overloads remain separate.
KeelSp1GatewayProofBackend
view / pure calls read state; nonpayable / payable calls require a transaction. Source ABI is a versioned interface reference; deployed addresses can be older versions. Compare the target’s implementation and ABI before a write.
| Signature / parameters | Returns | Mutability |
|---|---|---|
DEFAULT_ADMIN_ROLE() | bytes32 | view |
administratorCount() | uint256 | view |
configLocked() | bool | view |
configurationHash() | bytes32 | view |
configure(bytes32 programVKey_) | — | nonpayable |
gateway() | address | view |
getRoleAdmin(bytes32 role) | bytes32 | view |
grantRole(bytes32 role, address account) | — | nonpayable |
hasRole(bytes32 role, address account) | bool | view |
lastAdministratorProtectionEnabled() | bool | pure |
lockConfiguration() | — | nonpayable |
programVKey() | bytes32 | view |
renounceRole(bytes32 role, address callerConfirmation) | — | nonpayable |
revokeRole(bytes32 role, address account) | — | nonpayable |
supportsInterface(bytes4 interfaceId) | bool | view |
verifierCodeHash() | bytes32 | view |
verifyAnchorProof(bytes publicValues, bytes proofData) | bool | view |
Events · 5 entries
| Signature / parameters |
|---|
BackendConfigured(bytes32 programVKey) |
ConfigurationLockedEvent(address locker) |
RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole) |
RoleGranted(bytes32 indexed role, address indexed account, address indexed sender) |
RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender) |
Custom errors · 6 entries
| Signature / parameters |
|---|
AccessControlBadConfirmation() |
AccessControlUnauthorizedAccount(address account, bytes32 neededRole) |
ConfigMissing() |
ConfigurationLocked() |
LastAdministrator() |
ZeroAddress() |
| Signature / parameters | Mutability |
|---|---|
constructor(address gateway_, address admin) | nonpayable |
KeelSp1GatewayProofVerifier
ABI reference at contracts revision ace3fed7aff1. Tuple fields are listed in declaration order. Overloads remain separate.
KeelSp1GatewayProofVerifier
view / pure calls read state; nonpayable / payable calls require a transaction. Source ABI is a versioned interface reference; deployed addresses can be older versions. Compare the target’s implementation and ABI before a write.
| Signature / parameters | Returns | Mutability |
|---|---|---|
DEFAULT_ADMIN_ROLE() | bytes32 | view |
administratorCount() | uint256 | view |
configLocked() | bool | view |
gateway() | address | view |
getRoleAdmin(bytes32 role) | bytes32 | view |
grantRole(bytes32 role, address account) | — | nonpayable |
hasRole(bytes32 role, address account) | bool | view |
lastAdministratorProtectionEnabled() | bool | pure |
lockConfiguration() | — | nonpayable |
programVKey() | bytes32 | view |
renounceRole(bytes32 role, address callerConfirmation) | — | nonpayable |
revokeRole(bytes32 role, address account) | — | nonpayable |
setProgram(bytes32 programVKey_) | — | nonpayable |
supportsInterface(bytes4 interfaceId) | bool | view |
verifyAnchorProof(bytes publicValues, bytes proofData) | bool | view |
Events · 5 entries
| Signature / parameters |
|---|
ConfigurationLockedEvent(address locker) |
ProgramConfigured(bytes32 programVKey) |
RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole) |
RoleGranted(bytes32 indexed role, address indexed account, address indexed sender) |
RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender) |
Custom errors · 6 entries
| Signature / parameters |
|---|
AccessControlBadConfirmation() |
AccessControlUnauthorizedAccount(address account, bytes32 neededRole) |
ConfigMissing() |
ConfigurationLocked() |
LastAdministrator() |
ZeroAddress() |
| Signature / parameters | Mutability |
|---|---|
constructor(address gateway_, address admin) | nonpayable |
KeelZkAnchorVerifier
ABI reference at contracts revision ace3fed7aff1. Tuple fields are listed in declaration order. Overloads remain separate.
KeelZkAnchorVerifier
view / pure calls read state; nonpayable / payable calls require a transaction. Source ABI is a versioned interface reference; deployed addresses can be older versions. Compare the target’s implementation and ABI before a write.
Functions · 38 entries
| Signature / parameters | Returns | Mutability |
|---|---|---|
ANCHOR_STATUS_PENDING() | uint8 | view |
DEFAULT_ADMIN_ROLE() | bytes32 | view |
MAX_FUTURE_SECONDS() | uint32 | view |
MAX_TIP_AGE() | uint32 | view |
TASK_STATUS_PENDING() | uint8 | view |
administratorCount() | uint256 | view |
anchorPoint(bytes32 blockHash) | (uint32,uint32,uint32,uint32,bool) | view |
anchorRegistry() | address | view |
bestAnchorHeight() | uint32 | view |
bestChainWork() | uint256 | view |
bestHeadersRoot() | bytes32 | view |
bestTipHash() | bytes32 | view |
bitcoinLocator(bytes32 txid, uint32 inputIndex) | string | pure |
bitcoinSourceSchema() | bytes32 | pure |
bootstrapHash() | bytes32 | view |
configLocked() | bool | view |
configurationHash() | bytes32 | view |
encodePublicValues((bytes32,uint32,uint32,uint32,uint32,bytes32,uint32,uint32,uint32,uint32,bytes32,uint64,bytes32,uint32,uint32,bytes32,bytes32,uint32,bytes32,uint32,uint8) values) | bytes | pure |
familyPolicy(uint8 familyId) | (uint32,uint256,bool) | view |
getRoleAdmin(bytes32 role) | bytes32 | view |
grantRole(bytes32 role, address account) | — | nonpayable |
hasRole(bytes32 role, address account) | bool | view |
lastAdministratorProtectionEnabled() | bool | pure |
lockConfiguration() | — | nonpayable |
proofBackend() | address | view |
proofController() | address | view |
proofProfileId() | bytes32 | view |
receipts(bytes32 anchorId) | uint32 blockHeight, uint64 acceptedAt, uint64 nonce, bytes32 blockHash, bytes32 evidenceHash, bytes32 acceptedTip, bytes32 acceptedRoot | view |
renounceRole(bytes32 role, address callerConfirmation) | — | nonpayable |
revokeRole(bytes32 role, address account) | — | nonpayable |
seedAnchorPoint(bytes32 blockHash, uint32 height, uint32 bits, uint32 timestamp, uint32 epochStart) | — | nonpayable |
setFamilyPolicy(uint8 familyId, uint32 minConfirmations, uint256 minCumulativeWork) | — | nonpayable |
setProofBackend(address backend) | — | nonpayable |
setProofProfile(address controller, bytes32 profileId) | — | nonpayable |
sourceStatus(bytes32 anchorId, bytes32 currentBlockHash, bytes32[] path) | uint8 | view |
submitHeaderChain((bytes32,uint32,uint32,uint32,uint32,bytes32,uint32,uint32,uint32,uint32,bytes32,uint64,bytes32,uint32,uint32,bytes32,bytes32,uint32,bytes32,uint32,uint8) values, bytes proofData) | — | nonpayable |
submitZkAnchor(bytes32 anchorId, uint32 taskIndex, (bytes32,uint32,uint32,uint32,uint32,bytes32,uint32,uint32,uint32,uint32,bytes32,uint64,bytes32,uint32,uint32,bytes32,bytes32,uint32,bytes32,uint32,uint8) values, bytes proofData) | — | nonpayable |
supportsInterface(bytes4 interfaceId) | bool | view |
Events · 10 entries
| Signature / parameters |
|---|
AnchorPointAdvanced(bytes32 indexed blockHash, uint32 height, uint32 previousBest) |
AnchorPointSeeded(bytes32 indexed blockHash, uint32 height) |
BestBranchSelected(bytes32 indexed tipHash, bytes32 headersRoot, uint256 chainWork, uint32 height) |
ConfigurationLockedEvent(address locker) |
FamilyConfigured(uint8 indexed familyId, uint32 minConfirmations, uint256 minCumulativeWork) |
ProofBackendConfigured(address backend) |
RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole) |
RoleGranted(bytes32 indexed role, address indexed account, address indexed sender) |
RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender) |
ZkAnchorApplied(bytes32 indexed anchorId, uint64 nonce, uint32 taskIndex, bytes32 anchorRoot, uint32 blockHeight, uint32 confirmations) |
Custom errors · 25 entries
| Signature / parameters |
|---|
AccessControlBadConfirmation() |
AccessControlUnauthorizedAccount(address account, bytes32 neededRole) |
AdapterNotPinned() |
AlreadySeeded() |
AnchorNotPending() |
ConfigMissing() |
ConfigurationLocked() |
DigestMismatch() |
HeaderOnlyClaim() |
InsufficientConfirmations() |
InsufficientWork() |
InvalidChainEvidence() |
LastAdministrator() |
LocalContentMismatch() |
LosingBranch() |
OriginRecordMismatch() |
ProfileNotAdmitted() |
ProofRejected() |
SourceBindingMismatch() |
StaleBranch() |
StringsInsufficientHexLength(uint256 value, uint256 length) |
TaskNotPending() |
UnknownOrigin(bytes32 originHash) |
UnsupportedLocalCompression() |
ZeroAddress() |
| Signature / parameters | Mutability |
|---|---|
constructor(address anchorRegistry_, address admin) | nonpayable |
KeelZkVerifyProofBackend
ABI reference at contracts revision ace3fed7aff1. Tuple fields are listed in declaration order. Overloads remain separate.
KeelZkVerifyProofBackend
view / pure calls read state; nonpayable / payable calls require a transaction. Source ABI is a versioned interface reference; deployed addresses can be older versions. Compare the target’s implementation and ABI before a write.
Functions · 19 entries
| Signature / parameters | Returns | Mutability |
|---|---|---|
DEFAULT_ADMIN_ROLE() | bytes32 | view |
PROVING_SYSTEM_ID() | bytes32 | view |
administratorCount() | uint256 | view |
configLocked() | bool | view |
configure(uint256 domainId_, bytes32 programVKey_, string proofVersion_) | — | nonpayable |
domainId() | uint256 | view |
getRoleAdmin(bytes32 role) | bytes32 | view |
grantRole(bytes32 role, address account) | — | nonpayable |
hasRole(bytes32 role, address account) | bool | view |
lastAdministratorProtectionEnabled() | bool | pure |
leafDigest(bytes publicValues) | bytes32 | view |
lockConfiguration() | — | nonpayable |
programVKey() | bytes32 | view |
proofVersion() | string | view |
renounceRole(bytes32 role, address callerConfirmation) | — | nonpayable |
revokeRole(bytes32 role, address account) | — | nonpayable |
supportsInterface(bytes4 interfaceId) | bool | view |
verifyAnchorProof(bytes publicValues, bytes proofData) | bool | view |
zkVerify() | address | view |
Events · 5 entries
| Signature / parameters |
|---|
BackendConfigured(uint256 domainId, bytes32 programVKey, string proofVersion) |
ConfigurationLockedEvent(address locker) |
RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole) |
RoleGranted(bytes32 indexed role, address indexed account, address indexed sender) |
RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender) |
Custom errors · 6 entries
| Signature / parameters |
|---|
AccessControlBadConfirmation() |
AccessControlUnauthorizedAccount(address account, bytes32 neededRole) |
ConfigMissing() |
ConfigurationLocked() |
LastAdministrator() |
ZeroAddress() |
| Signature / parameters | Mutability |
|---|---|
constructor(address zkVerify_, address admin) | nonpayable |
KeelZkVerifyProofVerifier
ABI reference at contracts revision ace3fed7aff1. Tuple fields are listed in declaration order. Overloads remain separate.
KeelZkVerifyProofVerifier
view / pure calls read state; nonpayable / payable calls require a transaction. Source ABI is a versioned interface reference; deployed addresses can be older versions. Compare the target’s implementation and ABI before a write.
Functions · 20 entries
| Signature / parameters | Returns | Mutability |
|---|---|---|
DEFAULT_ADMIN_ROLE() | bytes32 | view |
PROVING_SYSTEM_ID() | bytes32 | view |
administratorCount() | uint256 | view |
configLocked() | bool | view |
domainId() | uint256 | view |
getRoleAdmin(bytes32 role) | bytes32 | view |
grantRole(bytes32 role, address account) | — | nonpayable |
hasRole(bytes32 role, address account) | bool | view |
lastAdministratorProtectionEnabled() | bool | pure |
leafDigest(bytes publicValues) | bytes32 | view |
lockConfiguration() | — | nonpayable |
programVKey() | bytes32 | view |
proofVersion() | string | view |
renounceRole(bytes32 role, address callerConfirmation) | — | nonpayable |
revokeRole(bytes32 role, address account) | — | nonpayable |
setDomain(uint256 domainId_) | — | nonpayable |
setProgram(bytes32 programVKey_, string proofVersion_) | — | nonpayable |
supportsInterface(bytes4 interfaceId) | bool | view |
verifyAnchorProof(bytes publicValues, bytes proofData) | bool | view |
zkVerify() | address | view |
Events · 6 entries
| Signature / parameters |
|---|
ConfigurationLockedEvent(address locker) |
DomainConfigured(uint256 domainId) |
ProgramConfigured(bytes32 programVKey, string proofVersion) |
RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole) |
RoleGranted(bytes32 indexed role, address indexed account, address indexed sender) |
RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender) |
Custom errors · 6 entries
| Signature / parameters |
|---|
AccessControlBadConfirmation() |
AccessControlUnauthorizedAccount(address account, bytes32 neededRole) |
ConfigMissing() |
ConfigurationLocked() |
LastAdministrator() |
ZeroAddress() |
| Signature / parameters | Mutability |
|---|---|
constructor(address zkVerify_, address admin) | nonpayable |
Native Tezos implementation
SmartPy entrypoints and views come from native source, not an EVM ABI translation. This source inventory does not assert deployment or EVM behavioral parity.
SmartPy contracts
KeelBtcHeaderChain, KeelEthStateProof
Entrypoints and views
For exact parameter and storage types follow the SmartPy source; an originated target’s /entrypoints RPC is the authoritative deployed parameter schema.
| Name | Kind | Source file |
|---|---|---|
seed_anchor | entrypoint | keel_btc_header_chain.py |
lock_configuration | entrypoint | keel_btc_header_chain.py |
submit_headers | entrypoint | keel_btc_header_chain.py |
verify_inscription | entrypoint | keel_btc_header_chain.py |
is_anchor | onchain_view | keel_btc_header_chain.py |
anchor_of | onchain_view | keel_btc_header_chain.py |
is_verified | onchain_view | keel_btc_header_chain.py |
best | onchain_view | keel_btc_header_chain.py |
verify_inclusion | entrypoint | keel_eth_state_proof.py |
last | onchain_view | keel_eth_state_proof.py |
verify | onchain_view | keel_eth_state_proof.py |
verify_account | onchain_view | keel_eth_state_proof.py |
verify_account | onchain_view | keel_eth_state_proof.py |

