Build
Architecture
Modules
observer
Messages

Authorized: admin policy group 2.

message MsgAddObserver {
	string creator = 1;
	string observer_address = 2;
	string zetaclient_grantee_pubkey = 3;
	bool add_node_account_only = 4;
}

UpdateObserver handles updating an observer address Authorized: admin policy group 2 (admin update), old observer address (if the reason is that the observer was tombstoned).

message MsgUpdateObserver {
	string creator = 1;
	string old_observer_address = 2;
	string new_observer_address = 3;
	ObserverUpdateReason update_reason = 4;
}

UpdateChainParams updates chain parameters for a specific chain, or add a new one. Chain parameters include: confirmation count, outbound transaction schedule interval, ZETA token, connector and ERC20 custody contract addresses, etc. Only the admin policy account is authorized to broadcast this message.

message MsgUpdateChainParams {
	string creator = 1;
	ChainParams chainParams = 2;
}

RemoveChainParams removes chain parameters for a specific chain.

message MsgRemoveChainParams {
	string creator = 1;
	int64 chain_id = 2;
}
message MsgAddBlameVote {
	string creator = 1;
	int64 chain_id = 2;
	Blame blame_info = 3;
}

UpdateCrosschainFlags updates the crosschain related flags.

Aurthorized: admin policy group 1 (except enabling/disabled inbounds/outbounds and gas price increase), admin policy group 2 (all).

message MsgUpdateCrosschainFlags {
	string creator = 1;
	bool isInboundEnabled = 3;
	bool isOutboundEnabled = 4;
	GasPriceIncreaseFlags gasPriceIncreaseFlags = 5;
	BlockHeaderVerificationFlags blockHeaderVerificationFlags = 6;
}

UpdateKeygen updates the block height of the keygen and sets the status to "pending keygen".

Authorized: admin policy group 1.

message MsgUpdateKeygen {
	string creator = 1;
	int64 block = 2;
}

AddBlockHeader handles adding a block header to the store, through majority voting of observers

message MsgAddBlockHeader {
	string creator = 1;
	int64 chain_id = 2;
	bytes block_hash = 3;
	int64 height = 4;
	common.HeaderData header = 5;
}