Skip to content

Instantly share code, notes, and snippets.

@okdas
Last active December 6, 2023 00:12
Show Gist options
  • Save okdas/39c7f12bcfda86ee787f250a226b5a2a to your computer and use it in GitHub Desktop.
Save okdas/39c7f12bcfda86ee787f250a226b5a2a to your computer and use it in GitHub Desktop.
# This is a TOML config file.
# For more information, see https://github.com/toml-lang/toml
###############################################################################
### Base Configuration ###
###############################################################################
# The minimum gas prices a validator is willing to accept for processing a
# transaction. A transaction's fees must meet the minimum of any denomination
# specified in this config (e.g. 0.25token1;0.0001token2).
minimum-gas-prices = "0upokt"
# default: the last 362880 states are kept, pruning at 10 block intervals
# nothing: all historic states will be saved, nothing will be deleted (i.e. archiving node)
# everything: 2 latest states will be kept; pruning at 10 block intervals.
# custom: allow pruning options to be manually specified through 'pruning-keep-recent', and 'pruning-interval'
pruning = "default"
# These are applied if and only if the pruning strategy is custom.
pruning-keep-recent = "0"
pruning-interval = "0"
# HaltHeight contains a non-zero block height at which a node will gracefully
# halt and shutdown that can be used to assist upgrades and testing.
#
# Note: Commitment of state will be attempted on the corresponding block.
halt-height = 0
# HaltTime contains a non-zero minimum block time (in Unix seconds) at which
# a node will gracefully halt and shutdown that can be used to assist upgrades
# and testing.
#
# Note: Commitment of state will be attempted on the corresponding block.
halt-time = 0
# MinRetainBlocks defines the minimum block height offset from the current
# block being committed, such that all blocks past this offset are pruned
# from Tendermint. It is used as part of the process of determining the
# ResponseCommit.RetainHeight value during ABCI Commit. A value of 0 indicates
# that no blocks should be pruned.
#
# This configuration value is only responsible for pruning Tendermint blocks.
# It has no bearing on application state pruning which is determined by the
# "pruning-*" configurations.
#
# Note: Tendermint block pruning is dependant on this parameter in conunction
# with the unbonding (safety threshold) period, state pruning and state sync
# snapshot parameters to determine the correct minimum value of
# ResponseCommit.RetainHeight.
min-retain-blocks = 0
# InterBlockCache enables inter-block caching.
inter-block-cache = true
# IndexEvents defines the set of events in the form {eventType}.{attributeKey},
# which informs Tendermint what to index. If empty, all events will be indexed.
#
# Example:
# ["message.sender", "message.recipient"]
index-events = []
# IavlCacheSize set the size of the iavl tree cache (in number of nodes).
iavl-cache-size = 781250
# IAVLDisableFastNode enables or disables the fast node feature of IAVL.
# Default is false.
iavl-disable-fastnode = false
# IAVLLazyLoading enable/disable the lazy loading of iavl store.
# Default is false.
iavl-lazy-loading = false
# AppDBBackend defines the database backend type to use for the application and snapshots DBs.
# An empty string indicates that a fallback will be used.
# First fallback is the deprecated compile-time types.DBBackend value.
# Second fallback (if the types.DBBackend also isn't set), is the db-backend value set in Tendermint's config.toml.
app-db-backend = ""
###############################################################################
### Telemetry Configuration ###
###############################################################################
[telemetry]
# Prefixed with keys to separate services.
service-name = ""
# Enabled enables the application telemetry functionality. When enabled,
# an in-memory sink is also enabled by default. Operators may also enabled
# other sinks such as Prometheus.
enabled = false
# Enable prefixing gauge values with hostname.
enable-hostname = false
# Enable adding hostname to labels.
enable-hostname-label = false
# Enable adding service to labels.
enable-service-label = false
# PrometheusRetentionTime, when positive, enables a Prometheus metrics sink.
prometheus-retention-time = 0
# GlobalLabels defines a global set of name/value label tuples applied to all
# metrics emitted using the wrapper functions defined in telemetry package.
#
# Example:
# [["chain_id", "cosmoshub-1"]]
global-labels = [
]
###############################################################################
### API Configuration ###
###############################################################################
[api]
# Enable defines if the API server should be enabled.
enable = false
# Swagger defines if swagger documentation should automatically be registered.
swagger = false
# Address defines the API server to listen on.
address = "tcp://localhost:1317"
# MaxOpenConnections defines the number of maximum open connections.
max-open-connections = 1000
# RPCReadTimeout defines the Tendermint RPC read timeout (in seconds).
rpc-read-timeout = 10
# RPCWriteTimeout defines the Tendermint RPC write timeout (in seconds).
rpc-write-timeout = 0
# RPCMaxBodyBytes defines the Tendermint maximum request body (in bytes).
rpc-max-body-bytes = 1000000
# EnableUnsafeCORS defines if CORS should be enabled (unsafe - use it at your own risk).
enabled-unsafe-cors = false
###############################################################################
### Rosetta Configuration ###
###############################################################################
[rosetta]
# Enable defines if the Rosetta API server should be enabled.
enable = false
# Address defines the Rosetta API server to listen on.
address = ":8080"
# Network defines the name of the blockchain that will be returned by Rosetta.
blockchain = "app"
# Network defines the name of the network that will be returned by Rosetta.
network = "network"
# Retries defines the number of retries when connecting to the node before failing.
retries = 3
# Offline defines if Rosetta server should run in offline mode.
offline = false
# EnableDefaultSuggestedFee defines if the server should suggest fee by default.
# If 'construction/medata' is called without gas limit and gas price,
# suggested fee based on gas-to-suggest and denom-to-suggest will be given.
enable-fee-suggestion = false
# GasToSuggest defines gas limit when calculating the fee
gas-to-suggest = 200000
# DenomToSuggest defines the defult denom for fee suggestion.
# Price must be in minimum-gas-prices.
denom-to-suggest = "uatom"
###############################################################################
### gRPC Configuration ###
###############################################################################
[grpc]
# Enable defines if the gRPC server should be enabled.
enable = true
# Address defines the gRPC server address to bind to.
address = "localhost:9090"
# MaxRecvMsgSize defines the max message size in bytes the server can receive.
# The default value is 10MB.
max-recv-msg-size = "10485760"
# MaxSendMsgSize defines the max message size in bytes the server can send.
# The default value is math.MaxInt32.
max-send-msg-size = "2147483647"
###############################################################################
### gRPC Web Configuration ###
###############################################################################
[grpc-web]
# GRPCWebEnable defines if the gRPC-web should be enabled.
# NOTE: gRPC must also be enabled, otherwise, this configuration is a no-op.
enable = true
# Address defines the gRPC-web server address to bind to.
address = "localhost:9091"
# EnableUnsafeCORS defines if CORS should be enabled (unsafe - use it at your own risk).
enable-unsafe-cors = false
###############################################################################
### State Sync Configuration ###
###############################################################################
# State sync snapshots allow other nodes to rapidly join the network without replaying historical
# blocks, instead downloading and applying a snapshot of the application state at a given height.
[state-sync]
# snapshot-interval specifies the block interval at which local state sync snapshots are
# taken (0 to disable).
snapshot-interval = 0
# snapshot-keep-recent specifies the number of recent snapshots to keep and serve (0 to keep all).
snapshot-keep-recent = 2
###############################################################################
### Store / State Streaming ###
###############################################################################
[store]
streamers = []
[streamers]
[streamers.file]
keys = ["*", ]
write_dir = ""
prefix = ""
# output-metadata specifies if output the metadata file which includes the abci request/responses
# during processing the block.
output-metadata = "true"
# stop-node-on-error specifies if propagate the file streamer errors to consensus state machine.
stop-node-on-error = "true"
# fsync specifies if call fsync after writing the files.
fsync = "false"
###############################################################################
### Mempool ###
###############################################################################
[mempool]
# Setting max-txs to 0 will allow for a unbounded amount of transactions in the mempool.
# Setting max_txs to negative 1 (-1) will disable transactions from being inserted into the mempool.
# Setting max_txs to a positive number (> 0) will limit the number of transactions in the mempool, by the specified amount.
#
# Note, this configuration only applies to SDK built-in app-side mempool
# implementations.
max-txs = "5000"
# This is a TOML config file.
# For more information, see https://github.com/toml-lang/toml
###############################################################################
### Client Configuration ###
###############################################################################
# The network chain ID
chain-id = "poktroll"
# The keyring's backend, where the keys are stored (os|file|kwallet|pass|test|memory)
keyring-backend = "test"
# CLI output format (text|json)
output = "text"
# <host>:<port> to Tendermint RPC interface for this chain
node = "tcp://localhost:26657"
# Transaction broadcasting mode (sync|async)
broadcast-mode = "sync"
# This is a TOML config file.
# For more information, see https://github.com/toml-lang/toml
# NOTE: Any path below can be absolute (e.g. "/var/myawesomeapp/data") or
# relative to the home directory (e.g. "data"). The home directory is
# "$HOME/.cometbft" by default, but could be changed via $CMTHOME env variable
# or --home cmd flag.
#######################################################################
### Main Base Config Options ###
#######################################################################
# TCP or UNIX socket address of the ABCI application,
# or the name of an ABCI application compiled in with the CometBFT binary
proxy_app = "tcp://127.0.0.1:26658"
# A custom human readable name for this node
moniker = "sequencer1"
# If this node is many blocks behind the tip of the chain, BlockSync
# allows them to catchup quickly by downloading blocks in parallel
# and verifying their commits
#
# Deprecated: this key will be removed and BlockSync will be enabled
# unconditionally in the next major release.
block_sync = true
# Database backend: goleveldb | cleveldb | boltdb | rocksdb | badgerdb
# * goleveldb (github.com/syndtr/goleveldb - most popular implementation)
# - pure go
# - stable
# * cleveldb (uses levigo wrapper)
# - fast
# - requires gcc
# - use cleveldb build tag (go build -tags cleveldb)
# * boltdb (uses etcd's fork of bolt - github.com/etcd-io/bbolt)
# - EXPERIMENTAL
# - may be faster is some use-cases (random reads - indexer)
# - use boltdb build tag (go build -tags boltdb)
# * rocksdb (uses github.com/tecbot/gorocksdb)
# - EXPERIMENTAL
# - requires gcc
# - use rocksdb build tag (go build -tags rocksdb)
# * badgerdb (uses github.com/dgraph-io/badger)
# - EXPERIMENTAL
# - use badgerdb build tag (go build -tags badgerdb)
db_backend = "goleveldb"
# Database directory
db_dir = "data"
# Output level for logging, including package level options
log_level = "info"
# Output format: 'plain' (colored text) or 'json'
log_format = "plain"
##### additional base config options #####
# Path to the JSON file containing the initial validator set and other meta data
genesis_file = "config/genesis.json"
# Path to the JSON file containing the private key to use as a validator in the consensus protocol
priv_validator_key_file = "config/priv_validator_key.json"
# Path to the JSON file containing the last sign state of a validator
priv_validator_state_file = "data/priv_validator_state.json"
# TCP or UNIX socket address for CometBFT to listen on for
# connections from an external PrivValidator process
priv_validator_laddr = ""
# Path to the JSON file containing the private key to use for node authentication in the p2p protocol
node_key_file = "config/node_key.json"
# Mechanism to connect to the ABCI application: socket | grpc
abci = "socket"
# If true, query the ABCI app on connecting to a new peer
# so the app can decide if we should keep the connection or not
filter_peers = false
#######################################################################
### Advanced Configuration Options ###
#######################################################################
#######################################################
### RPC Server Configuration Options ###
#######################################################
[rpc]
# TCP or UNIX socket address for the RPC server to listen on
laddr = "tcp://127.0.0.1:26657"
# A list of origins a cross-domain request can be executed from
# Default value '[]' disables cors support
# Use '["*"]' to allow any origin
cors_allowed_origins = []
# A list of methods the client is allowed to use with cross-domain requests
cors_allowed_methods = ["HEAD", "GET", "POST", ]
# A list of non simple headers the client is allowed to use with cross-domain requests
cors_allowed_headers = ["Origin", "Accept", "Content-Type", "X-Requested-With", "X-Server-Time", ]
# TCP or UNIX socket address for the gRPC server to listen on
# NOTE: This server only supports /broadcast_tx_commit
grpc_laddr = ""
# Maximum number of simultaneous connections.
# Does not include RPC (HTTP&WebSocket) connections. See max_open_connections
# If you want to accept a larger number than the default, make sure
# you increase your OS limits.
# 0 - unlimited.
# Should be < {ulimit -Sn} - {MaxNumInboundPeers} - {MaxNumOutboundPeers} - {N of wal, db and other open files}
# 1024 - 40 - 10 - 50 = 924 = ~900
grpc_max_open_connections = 900
# Activate unsafe RPC commands like /dial_seeds and /unsafe_flush_mempool
unsafe = false
# Maximum number of simultaneous connections (including WebSocket).
# Does not include gRPC connections. See grpc_max_open_connections
# If you want to accept a larger number than the default, make sure
# you increase your OS limits.
# 0 - unlimited.
# Should be < {ulimit -Sn} - {MaxNumInboundPeers} - {MaxNumOutboundPeers} - {N of wal, db and other open files}
# 1024 - 40 - 10 - 50 = 924 = ~900
max_open_connections = 900
# Maximum number of unique clientIDs that can /subscribe
# If you're using /broadcast_tx_commit, set to the estimated maximum number
# of broadcast_tx_commit calls per block.
max_subscription_clients = 100
# Maximum number of unique queries a given client can /subscribe to
# If you're using GRPC (or Local RPC client) and /broadcast_tx_commit, set to
# the estimated # maximum number of broadcast_tx_commit calls per block.
max_subscriptions_per_client = 5
# Experimental parameter to specify the maximum number of events a node will
# buffer, per subscription, before returning an error and closing the
# subscription. Must be set to at least 100, but higher values will accommodate
# higher event throughput rates (and will use more memory).
experimental_subscription_buffer_size = 200
# Experimental parameter to specify the maximum number of RPC responses that
# can be buffered per WebSocket client. If clients cannot read from the
# WebSocket endpoint fast enough, they will be disconnected, so increasing this
# parameter may reduce the chances of them being disconnected (but will cause
# the node to use more memory).
#
# Must be at least the same as "experimental_subscription_buffer_size",
# otherwise connections could be dropped unnecessarily. This value should
# ideally be somewhat higher than "experimental_subscription_buffer_size" to
# accommodate non-subscription-related RPC responses.
experimental_websocket_write_buffer_size = 200
# If a WebSocket client cannot read fast enough, at present we may
# silently drop events instead of generating an error or disconnecting the
# client.
#
# Enabling this experimental parameter will cause the WebSocket connection to
# be closed instead if it cannot read fast enough, allowing for greater
# predictability in subscription behavior.
experimental_close_on_slow_client = false
# How long to wait for a tx to be committed during /broadcast_tx_commit.
# WARNING: Using a value larger than 10s will result in increasing the
# global HTTP write timeout, which applies to all connections and endpoints.
# See https://github.com/tendermint/tendermint/issues/3435
timeout_broadcast_tx_commit = "10s"
# Maximum size of request body, in bytes
max_body_bytes = 1000000
# Maximum size of request header, in bytes
max_header_bytes = 1048576
# The path to a file containing certificate that is used to create the HTTPS server.
# Might be either absolute path or path related to CometBFT's config directory.
# If the certificate is signed by a certificate authority,
# the certFile should be the concatenation of the server's certificate, any intermediates,
# and the CA's certificate.
# NOTE: both tls_cert_file and tls_key_file must be present for CometBFT to create HTTPS server.
# Otherwise, HTTP server is run.
tls_cert_file = ""
# The path to a file containing matching private key that is used to create the HTTPS server.
# Might be either absolute path or path related to CometBFT's config directory.
# NOTE: both tls-cert-file and tls-key-file must be present for CometBFT to create HTTPS server.
# Otherwise, HTTP server is run.
tls_key_file = ""
# pprof listen address (https://golang.org/pkg/net/http/pprof)
pprof_laddr = "localhost:6060"
#######################################################
### P2P Configuration Options ###
#######################################################
[p2p]
# Address to listen for incoming connections
laddr = "tcp://0.0.0.0:26656"
# Address to advertise to peers for them to dial
# If empty, will use the same port as the laddr,
# and will introspect on the listener or use UPnP
# to figure out the address. ip and port are required
# example: 159.89.10.97:26656
external_address = ""
# Comma separated list of seed nodes to connect to
seeds = ""
# Comma separated list of nodes to keep persistent connections to
persistent_peers = ""
# UPNP port forwarding
upnp = false
# Path to address book
addr_book_file = "config/addrbook.json"
# Set true for strict address routability rules
# Set false for private or local networks
addr_book_strict = true
# Maximum number of inbound peers
max_num_inbound_peers = 40
# Maximum number of outbound peers to connect to, excluding persistent peers
max_num_outbound_peers = 10
# List of node IDs, to which a connection will be (re)established ignoring any existing limits
unconditional_peer_ids = ""
# Maximum pause when redialing a persistent peer (if zero, exponential backoff is used)
persistent_peers_max_dial_period = "0s"
# Time to wait before flushing messages out on the connection
flush_throttle_timeout = "100ms"
# Maximum size of a message packet payload, in bytes
max_packet_msg_payload_size = 1024
# Rate at which packets can be sent, in bytes/second
send_rate = 5120000
# Rate at which packets can be received, in bytes/second
recv_rate = 5120000
# Set true to enable the peer-exchange reactor
pex = true
# Seed mode, in which node constantly crawls the network and looks for
# peers. If another node asks it for addresses, it responds and disconnects.
#
# Does not work if the peer-exchange reactor is disabled.
seed_mode = false
# Comma separated list of peer IDs to keep private (will not be gossiped to other peers)
private_peer_ids = ""
# Toggle to disable guard against peers connecting from the same ip.
allow_duplicate_ip = false
# Peer connection configuration.
handshake_timeout = "20s"
dial_timeout = "3s"
#######################################################
### Mempool Configuration Option ###
#######################################################
[mempool]
# Mempool version to use:
# 1) "v0" - (default) FIFO mempool.
# 2) "v1" - prioritized mempool (deprecated; will be removed in the next release).
version = "v0"
recheck = true
broadcast = true
wal_dir = ""
# Maximum number of transactions in the mempool
size = 5000
# Limit the total size of all txs in the mempool.
# This only accounts for raw transactions (e.g. given 1MB transactions and
# max_txs_bytes=5MB, mempool will only accept 5 transactions).
max_txs_bytes = 1073741824
# Size of the cache (used to filter transactions we saw earlier) in transactions
cache_size = 10000
# Do not remove invalid transactions from the cache (default: false)
# Set to true if it's not possible for any invalid transaction to become valid
# again in the future.
keep-invalid-txs-in-cache = false
# Maximum size of a single transaction.
# NOTE: the max size of a tx transmitted over the network is {max_tx_bytes}.
max_tx_bytes = 1048576
# Maximum size of a batch of transactions to send to a peer
# Including space needed by encoding (one varint per transaction).
# XXX: Unused due to https://github.com/tendermint/tendermint/issues/5796
max_batch_bytes = 0
# ttl-duration, if non-zero, defines the maximum amount of time a transaction
# can exist for in the mempool.
#
# Note, if ttl-num-blocks is also defined, a transaction will be removed if it
# has existed in the mempool at least ttl-num-blocks number of blocks or if it's
# insertion time into the mempool is beyond ttl-duration.
ttl-duration = "0s"
# ttl-num-blocks, if non-zero, defines the maximum number of blocks a transaction
# can exist for in the mempool.
#
# Note, if ttl-duration is also defined, a transaction will be removed if it
# has existed in the mempool at least ttl-num-blocks number of blocks or if
# it's insertion time into the mempool is beyond ttl-duration.
ttl-num-blocks = 0
#######################################################
### State Sync Configuration Options ###
#######################################################
[statesync]
# State sync rapidly bootstraps a new node by discovering, fetching, and restoring a state machine
# snapshot from peers instead of fetching and replaying historical blocks. Requires some peers in
# the network to take and serve state machine snapshots. State sync is not attempted if the node
# has any local state (LastBlockHeight > 0). The node will have a truncated block history,
# starting from the height of the snapshot.
enable = false
# RPC servers (comma-separated) for light client verification of the synced state machine and
# retrieval of state data for node bootstrapping. Also needs a trusted height and corresponding
# header hash obtained from a trusted source, and a period during which validators can be trusted.
#
# For Cosmos SDK-based chains, trust_period should usually be about 2/3 of the unbonding time (~2
# weeks) during which they can be financially punished (slashed) for misbehavior.
rpc_servers = ""
trust_height = 0
trust_hash = ""
trust_period = "168h0m0s"
# Time to spend discovering snapshots before initiating a restore.
discovery_time = "15s"
# Temporary directory for state sync snapshot chunks, defaults to the OS tempdir (typically /tmp).
# Will create a new, randomly named directory within, and remove it when done.
temp_dir = ""
# The timeout duration before re-requesting a chunk, possibly from a different
# peer (default: 1 minute).
chunk_request_timeout = "10s"
# The number of concurrent chunk fetchers to run (default: 1).
chunk_fetchers = "4"
#######################################################
### Block Sync Configuration Options ###
#######################################################
[blocksync]
# Block Sync version to use:
#
# In v0.37, v1 and v2 of the block sync protocols were deprecated.
# Please use v0 instead.
#
# 1) "v0" - the default block sync implementation
version = "v0"
#######################################################
### Consensus Configuration Options ###
#######################################################
[consensus]
wal_file = "data/cs.wal/wal"
# How long we wait for a proposal block before prevoting nil
timeout_propose = "3s"
# How much timeout_propose increases with each round
timeout_propose_delta = "500ms"
# How long we wait after receiving +2/3 prevotes for “anything” (ie. not a single block or nil)
timeout_prevote = "1s"
# How much the timeout_prevote increases with each round
timeout_prevote_delta = "500ms"
# How long we wait after receiving +2/3 precommits for “anything” (ie. not a single block or nil)
timeout_precommit = "1s"
# How much the timeout_precommit increases with each round
timeout_precommit_delta = "500ms"
# How long we wait after committing a block, before starting on the new
# height (this gives us a chance to receive some more precommits, even
# though we already have +2/3).
timeout_commit = "5s"
# How many blocks to look back to check existence of the node's consensus votes before joining consensus
# When non-zero, the node will panic upon restart
# if the same consensus key was used to sign {double_sign_check_height} last blocks.
# So, validators should stop the state machine, wait for some blocks, and then restart the state machine to avoid panic.
double_sign_check_height = 0
# Make progress as soon as we have all the precommits (as if TimeoutCommit = 0)
skip_timeout_commit = false
# EmptyBlocks mode and possible interval between empty blocks
create_empty_blocks = true
create_empty_blocks_interval = "0s"
# Reactor sleep duration parameters
peer_gossip_sleep_duration = "100ms"
peer_query_maj23_sleep_duration = "2s"
#######################################################
### Storage Configuration Options ###
#######################################################
[storage]
# Set to true to discard ABCI responses from the state store, which can save a
# considerable amount of disk space. Set to false to ensure ABCI responses are
# persisted. ABCI responses are required for /block_results RPC queries, and to
# reindex events in the command-line tool.
discard_abci_responses = false
#######################################################
### Transaction Indexer Configuration Options ###
#######################################################
[tx_index]
# What indexer to use for transactions
#
# The application will set which txs to index. In some cases a node operator will be able
# to decide which txs to index based on configuration set in the application.
#
# Options:
# 1) "null"
# 2) "kv" (default) - the simplest possible indexer, backed by key-value storage (defaults to levelDB; see DBBackend).
# - When "kv" is chosen "tx.height" and "tx.hash" will always be indexed.
# 3) "psql" - the indexer services backed by PostgreSQL.
# When "kv" or "psql" is chosen "tx.height" and "tx.hash" will always be indexed.
indexer = "kv"
# The PostgreSQL connection configuration, the connection format:
# postgresql://<user>:<password>@<host>:<port>/<db>?<opts>
psql-conn = ""
#######################################################
### Instrumentation Configuration Options ###
#######################################################
[instrumentation]
# When true, Prometheus metrics are served under /metrics on
# PrometheusListenAddr.
# Check out the documentation for the list of available metrics.
prometheus = false
# Address to listen for Prometheus collector(s) connections
prometheus_listen_addr = ":26660"
# Maximum number of simultaneous connections.
# If you want to accept a larger number than the default, make sure
# you increase your OS limits.
# 0 - unlimited.
max_open_connections = 3
# Instrumentation namespace
namespace = "cometbft"
{
"genesis_time": "2023-12-05T17:53:46.90468Z",
"chain_id": "poktroll",
"initial_height": "1",
"consensus_params": {
"block": {
"max_bytes": "22020096",
"max_gas": "-1"
},
"evidence": {
"max_age_num_blocks": "100000",
"max_age_duration": "172800000000000",
"max_bytes": "1048576"
},
"validator": {
"pub_key_types": [
"ed25519"
]
},
"version": {
"app": "0"
}
},
"app_hash": "",
"app_state": {
"06-solomachine": null,
"07-tendermint": null,
"application": {
"applicationList": [
{
"address": "pokt1mrqt5f7qh8uxs27cjm9t7v9e74a9vvdnq5jva4",
"delegatee_gateway_addresses": [],
"service_configs": [
{
"service": {
"id": "anvil",
"name": ""
}
}
],
"stake": {
"amount": "1000",
"denom": "upokt"
}
}
],
"params": {
"maxDelegatedGateways": 7,
"max_delegated_gateways": "7"
}
},
"auth": {
"params": {
"max_memo_characters": "256",
"tx_sig_limit": "7",
"tx_size_cost_per_byte": "10",
"sig_verify_cost_ed25519": "590",
"sig_verify_cost_secp256k1": "1000"
},
"accounts": [
{
"@type": "/cosmos.auth.v1beta1.BaseAccount",
"address": "pokt1awtlw5sjmw2f5lgj8ekdkaqezphgz88rdk93sk",
"pub_key": null,
"account_number": "0",
"sequence": "0"
},
{
"@type": "/cosmos.auth.v1beta1.BaseAccount",
"address": "pokt18kk3aqe2pjz7x7993qp2pjt95ghurra9682tyn",
"pub_key": null,
"account_number": "1",
"sequence": "0"
},
{
"@type": "/cosmos.auth.v1beta1.BaseAccount",
"address": "pokt1mrqt5f7qh8uxs27cjm9t7v9e74a9vvdnq5jva4",
"pub_key": null,
"account_number": "2",
"sequence": "0"
},
{
"@type": "/cosmos.auth.v1beta1.BaseAccount",
"address": "pokt184zvylazwu4queyzpl0gyz9yf5yxm2kdhh9hpm",
"pub_key": null,
"account_number": "3",
"sequence": "0"
},
{
"@type": "/cosmos.auth.v1beta1.BaseAccount",
"address": "pokt1lqyu4v88vp8tzc86eaqr4lq8rwhssyn6rfwzex",
"pub_key": null,
"account_number": "4",
"sequence": "0"
},
{
"@type": "/cosmos.auth.v1beta1.BaseAccount",
"address": "pokt19a3t4yunp0dlpfjrp7qwnzwlrzd5fzs2gjaaaj",
"pub_key": null,
"account_number": "5",
"sequence": "0"
},
{
"@type": "/cosmos.auth.v1beta1.BaseAccount",
"address": "pokt1re27pw4llwnatx4sq7rlggqzcm6j3f39epq2wa",
"pub_key": null,
"account_number": "6",
"sequence": "0"
},
{
"@type": "/cosmos.auth.v1beta1.BaseAccount",
"address": "pokt1j6dun0x8eyq5mmsmq83zs3c2utt85q8478c89u",
"pub_key": null,
"account_number": "7",
"sequence": "0"
},
{
"@type": "/cosmos.auth.v1beta1.BaseAccount",
"address": "pokt15vzxjqklzjtlz7lahe8z2dfe9nm5vxwwmscne4",
"pub_key": null,
"account_number": "8",
"sequence": "0"
},
{
"@type": "/cosmos.auth.v1beta1.BaseAccount",
"address": "pokt15w3fhfyc0lttv7r585e2ncpf6t2kl9uh8rsnyz",
"pub_key": null,
"account_number": "9",
"sequence": "0"
},
{
"@type": "/cosmos.auth.v1beta1.BaseAccount",
"address": "pokt1zhmkkd0rh788mc9prfq0m2h88t9ge0j83gnxya",
"pub_key": null,
"account_number": "10",
"sequence": "0"
}
]
},
"authz": {
"authorization": []
},
"bank": {
"params": {
"send_enabled": [],
"default_send_enabled": true
},
"balances": [
{
"address": "pokt1zhmkkd0rh788mc9prfq0m2h88t9ge0j83gnxya",
"coins": [
{
"denom": "upokt",
"amount": "300000000"
}
]
},
{
"address": "pokt1re27pw4llwnatx4sq7rlggqzcm6j3f39epq2wa",
"coins": [
{
"denom": "upokt",
"amount": "220000000"
}
]
},
{
"address": "pokt19a3t4yunp0dlpfjrp7qwnzwlrzd5fzs2gjaaaj",
"coins": [
{
"denom": "upokt",
"amount": "110000000"
}
]
},
{
"address": "pokt184zvylazwu4queyzpl0gyz9yf5yxm2kdhh9hpm",
"coins": [
{
"denom": "upokt",
"amount": "200000000"
}
]
},
{
"address": "pokt18kk3aqe2pjz7x7993qp2pjt95ghurra9682tyn",
"coins": [
{
"denom": "upokt",
"amount": "900000000000000"
}
]
},
{
"address": "pokt1j6dun0x8eyq5mmsmq83zs3c2utt85q8478c89u",
"coins": [
{
"denom": "upokt",
"amount": "330000000"
}
]
},
{
"address": "pokt15vzxjqklzjtlz7lahe8z2dfe9nm5vxwwmscne4",
"coins": [
{
"denom": "upokt",
"amount": "100000000"
}
]
},
{
"address": "pokt15w3fhfyc0lttv7r585e2ncpf6t2kl9uh8rsnyz",
"coins": [
{
"denom": "upokt",
"amount": "200000000"
}
]
},
{
"address": "pokt1mrqt5f7qh8uxs27cjm9t7v9e74a9vvdnq5jva4",
"coins": [
{
"denom": "upokt",
"amount": "100000000"
}
]
},
{
"address": "pokt1awtlw5sjmw2f5lgj8ekdkaqezphgz88rdk93sk",
"coins": [
{
"denom": "upokt",
"amount": "999999999999999999"
}
]
},
{
"address": "pokt1lqyu4v88vp8tzc86eaqr4lq8rwhssyn6rfwzex",
"coins": [
{
"denom": "upokt",
"amount": "300000000"
}
]
}
],
"supply": [],
"denom_metadata": [],
"send_enabled": []
},
"capability": {
"index": "1",
"owners": []
},
"consensus": null,
"crisis": {
"constant_fee": {
"amount": "10000",
"denom": "upokt"
}
},
"distribution": {
"delegator_starting_infos": [],
"delegator_withdraw_infos": [],
"fee_pool": {
"community_pool": []
},
"outstanding_rewards": [],
"params": {
"base_proposer_reward": "0.000000000000000000",
"bonus_proposer_reward": "0.000000000000000000",
"community_tax": "0.020000000000000000",
"withdraw_addr_enabled": true
},
"previous_proposer": "",
"validator_accumulated_commissions": [],
"validator_current_rewards": [],
"validator_historical_rewards": [],
"validator_slash_events": []
},
"evidence": {
"evidence": []
},
"feegrant": {
"allowances": []
},
"gateway": {
"gatewayList": [],
"params": {}
},
"genutil": {
"gen_txs": [
{
"body": {
"messages": [
{
"@type": "/cosmos.staking.v1beta1.MsgCreateValidator",
"description": {
"moniker": "sequencer1",
"identity": "",
"website": "",
"security_contact": "",
"details": ""
},
"commission": {
"rate": "0.100000000000000000",
"max_rate": "0.200000000000000000",
"max_change_rate": "0.010000000000000000"
},
"min_self_delegation": "1",
"delegator_address": "pokt18kk3aqe2pjz7x7993qp2pjt95ghurra9682tyn",
"validator_address": "poktvaloper18kk3aqe2pjz7x7993qp2pjt95ghurra9c5ef0t",
"pubkey": {
"@type": "/cosmos.crypto.ed25519.PubKey",
"key": "RJO6kuOHELMgXrpMMLz2hHlvE1Xb+EgKpTspSwDKADE="
},
"value": {
"denom": "upokt",
"amount": "900000000"
}
}
],
"memo": "34a87bc1359a77268b9bdd258000dbeeb54262e8@192.168.88.112:26656",
"timeout_height": "0",
"extension_options": [],
"non_critical_extension_options": []
},
"auth_info": {
"signer_infos": [
{
"public_key": {
"@type": "/cosmos.crypto.secp256k1.PubKey",
"key": "Ao8usGLm8DesmcEEJ/iIMMr0fnA+mKCCmIJ/aG0HSbwy"
},
"mode_info": {
"single": {
"mode": "SIGN_MODE_DIRECT"
}
},
"sequence": "0"
}
],
"fee": {
"amount": [],
"gas_limit": "200000",
"payer": "",
"granter": ""
},
"tip": null
},
"signatures": [
"LD6vpBtwQZqXgtlMO1/7Pfxidh2yI3FLx1zS0sN9HgE0/2/NtKSNnkbdz717hbzOamoLp8ZIhAUYi//pzNMQJA=="
]
}
]
},
"gov": {
"deposit_params": null,
"deposits": [],
"params": {
"burn_proposal_deposit_prevote": false,
"burn_vote_quorum": false,
"burn_vote_veto": true,
"max_deposit_period": "172800s",
"min_deposit": [
{
"amount": "10000",
"denom": "upokt"
}
],
"min_initial_deposit_ratio": "0.000000000000000000",
"quorum": "0.334000000000000000",
"threshold": "0.500000000000000000",
"veto_threshold": "0.334000000000000000",
"voting_period": "172800s"
},
"proposals": [],
"starting_proposal_id": "1",
"tally_params": null,
"votes": [],
"voting_params": null
},
"group": {
"group_members": [],
"group_policies": [],
"group_policy_seq": "0",
"group_seq": "0",
"groups": [],
"proposal_seq": "0",
"proposals": [],
"votes": []
},
"ibc": {
"channel_genesis": {
"ack_sequences": [],
"acknowledgements": [],
"channels": [],
"commitments": [],
"next_channel_sequence": "0",
"receipts": [],
"recv_sequences": [],
"send_sequences": []
},
"client_genesis": {
"clients": [],
"clients_consensus": [],
"clients_metadata": [],
"create_localhost": false,
"next_client_sequence": "0",
"params": {
"allowed_clients": [
"06-solomachine",
"07-tendermint",
"09-localhost"
]
}
},
"connection_genesis": {
"client_connection_paths": [],
"connections": [],
"next_connection_sequence": "0",
"params": {
"max_expected_time_per_block": "30000000000"
}
}
},
"interchainaccounts": {
"controller_genesis_state": {
"active_channels": [],
"interchain_accounts": [],
"params": {
"controller_enabled": true
},
"ports": []
},
"host_genesis_state": {
"active_channels": [],
"interchain_accounts": [],
"params": {
"allow_messages": [
"*"
],
"host_enabled": true
},
"port": "icahost"
}
},
"mint": {
"minter": {
"annual_provisions": "0.000000000000000000",
"inflation": "0.130000000000000000"
},
"params": {
"blocks_per_year": "6311520",
"goal_bonded": "0.670000000000000000",
"inflation_max": "0.200000000000000000",
"inflation_min": "0.070000000000000000",
"inflation_rate_change": "0.130000000000000000",
"mint_denom": "upokt"
}
},
"params": null,
"pocket": {
"params": {}
},
"service": {
"params": {}
},
"session": {
"params": {}
},
"slashing": {
"missed_blocks": [],
"params": {
"downtime_jail_duration": "600s",
"min_signed_per_window": "0.500000000000000000",
"signed_blocks_window": "100",
"slash_fraction_double_sign": "0.050000000000000000",
"slash_fraction_downtime": "0.010000000000000000"
},
"signing_infos": []
},
"staking": {
"delegations": [],
"exported": false,
"last_total_power": "0",
"last_validator_powers": [],
"params": {
"bond_denom": "upokt",
"historical_entries": 10000,
"max_entries": 7,
"max_validators": 100,
"min_commission_rate": "0.000000000000000000",
"unbonding_time": "1814400s"
},
"redelegations": [],
"unbonding_delegations": [],
"validators": []
},
"supplier": {
"params": {},
"supplierList": [
{
"address": "pokt19a3t4yunp0dlpfjrp7qwnzwlrzd5fzs2gjaaaj",
"services": [
{
"endpoints": [
{
"configs": [],
"rpc_type": "JSON_RPC",
"url": "http://relayminers:8545"
}
],
"service": {
"id": "anvil",
"name": ""
}
}
],
"stake": {
"amount": "1000",
"denom": "upokt"
}
}
]
},
"transfer": {
"denom_traces": [],
"params": {
"receive_enabled": true,
"send_enabled": true
},
"port_id": "transfer",
"total_escrowed": []
},
"upgrade": {},
"vesting": {}
},
"validators": [
{
"address": "9E5032CAE5AEE2A57D9CEE0A2921970C09324759",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "RJO6kuOHELMgXrpMMLz2hHlvE1Xb+EgKpTspSwDKADE="
},
"power": "1000",
"name": "Pocket Sequencer"
}
]
}
{"priv_key":{"type":"tendermint/PrivKeyEd25519","value":"GJVCp6Kq9WHduP3eH5/Z3JzA5VWbY4X2hxBSighLGSYX1gVgMX4tm3EdsgpFEC5AWKsG7HHCTkP0o14MppLzlA=="}}
{
"address": "9E5032CAE5AEE2A57D9CEE0A2921970C09324759",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "RJO6kuOHELMgXrpMMLz2hHlvE1Xb+EgKpTspSwDKADE="
},
"priv_key": {
"type": "tendermint/PrivKeyEd25519",
"value": "eT+cl13VqjArOvGiFjr7xp/wT0nWRuPs+ahjtW0wRpxEk7qS44cQsyBeukwwvPaEeW8TVdv4SAqlOylLAMoAMQ=="
}
}
/root/.pocket/config/priv_validator_key.json:
{
"address": "9E5032CAE5AEE2A57D9CEE0A2921970C09324759",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "RJO6kuOHELMgXrpMMLz2hHlvE1Xb+EgKpTspSwDKADE="
},
"priv_key": {
"type": "tendermint/PrivKeyEd25519",
"value": "eT+cl13VqjArOvGiFjr7xp/wT0nWRuPs+ahjtW0wRpxEk7qS44cQsyBeukwwvPaEeW8TVdv4SAqlOylLAMoAMQ=="
}
}
/root/.pocket/config/node_key.json:
{"priv_key":{"type":"tendermint/PrivKeyEd25519","value":"GJVCp6Kq9WHduP3eH5/Z3JzA5VWbY4X2hxBSighLGSYX1gVgMX4tm3EdsgpFEC5AWKsG7HHCTkP0o14MppLzlA=="}}
/root/.pocket/config/genesis.json | jq '.validators':
[
{
"address": "9E5032CAE5AEE2A57D9CEE0A2921970C09324759",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "RJO6kuOHELMgXrpMMLz2hHlvE1Xb+EgKpTspSwDKADE="
},
"power": "1000",
"name": "Pocket Sequencer"
}
]
11:24PM INF starting node with Rollkit in-process module=server
11:24PM INF service start impl=multiAppConn module=proxy msg="Starting multiAppConn service"
11:24PM INF service start connection=query impl=localClient module=abci-client msg="Starting localClient service"
11:24PM INF service start connection=snapshot impl=localClient module=abci-client msg="Starting localClient service"
11:24PM INF service start connection=mempool impl=localClient module=abci-client msg="Starting localClient service"
11:24PM INF service start connection=consensus impl=localClient module=abci-client msg="Starting localClient service"
11:24PM INF service start impl=EventBus module=events msg="Starting EventBus service"
11:24PM INF service start impl=PubSub module=pubsub msg="Starting PubSub service"
11:24PM INF InitChain chainID=poktroll initialHeight=1 module=server
11:24PM INF initializing blockchain state from genesis.json module=server
11:24PM INF asserting crisis invariants inv=1/13 module=x/crisis name=distribution/nonnegative-outstanding
11:24PM INF asserting crisis invariants inv=2/13 module=x/crisis name=distribution/can-withdraw
11:24PM INF asserting crisis invariants inv=3/13 module=x/crisis name=distribution/reference-count
11:24PM INF asserting crisis invariants inv=4/13 module=x/crisis name=distribution/module-account
11:24PM INF asserting crisis invariants inv=5/13 module=x/crisis name=gov/module-account
11:24PM INF asserting crisis invariants inv=6/13 module=x/crisis name=bank/nonnegative-outstanding
11:24PM INF asserting crisis invariants inv=7/13 module=x/crisis name=bank/total-supply
11:24PM INF asserting crisis invariants inv=8/13 module=x/crisis name=staking/module-accounts
11:24PM INF asserting crisis invariants inv=9/13 module=x/crisis name=staking/nonnegative-power
11:24PM INF asserting crisis invariants inv=10/13 module=x/crisis name=staking/positive-delegation
11:24PM INF asserting crisis invariants inv=11/13 module=x/crisis name=staking/delegator-shares
11:24PM INF asserting crisis invariants inv=12/13 module=x/crisis name=transfer/total-escrow-per-denom
11:24PM INF asserting crisis invariants inv=13/13 module=x/crisis name=group/Group-TotalWeight
11:24PM INF asserted all invariants duration=0.678666 height=0 module=x/crisis
11:24PM INF created new capability module=ibc name=ports/transfer
11:24PM INF port binded module=x/ibc/port port=transfer
11:24PM INF claimed capability capability=1 module=transfer name=ports/transfer
11:24PM INF created new capability module=ibc name=ports/icahost
11:24PM INF port binded module=x/ibc/port port=icahost
11:24PM INF claimed capability capability=2 module=icahost name=ports/icahost
panic: genesisValidators[0] != req.Validators[0]
goroutine 15 [running]:
github.com/cosmos/cosmos-sdk/baseapp.(*BaseApp).InitChain(0x400064e1e0, {{0x35ec5240, 0xedd015aaa, 0x0}, {0x40023e5998, 0x8}, 0x4000bd0840, {0x4000bd4498, 0x1, 0x1}, ...})
/Users/dk/.asdf/installs/golang/1.20.10/packages/pkg/mod/github.com/rollkit/cosmos-sdk@v0.47.6-rollkit-v0.10.7-no-fraud-proofs-fixed/baseapp/abci.go:96 +0x944
github.com/cometbft/cometbft/abci/client.(*localClient).InitChainSync(0x40023b1e60, {{0x35ec5240, 0xedd015aaa, 0x0}, {0x40023e5998, 0x8}, 0x4000bd0840, {0x4000bd4498, 0x1, 0x1}, ...})
/Users/dk/.asdf/installs/golang/1.20.10/packages/pkg/mod/github.com/cometbft/cometbft@v0.37.2/abci/client/local_client.go:275 +0x160
github.com/cometbft/cometbft/proxy.(*appConnConsensus).InitChainSync(0x40023fe690, {{0x35ec5240, 0xedd015aaa, 0x0}, {0x40023e5998, 0x8}, 0x4000bd0840, {0x4000bd4498, 0x1, 0x1}, ...})
/Users/dk/.asdf/installs/golang/1.20.10/packages/pkg/mod/github.com/cometbft/cometbft@v0.37.2/proxy/app_conn.go:85 +0x23c
github.com/rollkit/rollkit/state.(*BlockExecutor).InitChain(0x40007c84d0, 0x40023f5080)
/Users/dk/.asdf/installs/golang/1.20.10/packages/pkg/mod/github.com/rollkit/rollkit@v0.10.7/state/executor.go:67 +0x438
github.com/rollkit/rollkit/block.NewManager({0x45355a0, 0x40023fe168}, {0x3b9aca00, 0x37e11d600, 0x708, {0xd1, 0xfa, 0x17, 0xb2, 0x7f, ...}}, ...)
/Users/dk/.asdf/installs/golang/1.20.10/packages/pkg/mod/github.com/rollkit/rollkit@v0.10.7/block/manager.go:145 +0x48c
github.com/rollkit/rollkit/node.initBlockManager({_, _}, {{0xffffeaa0855b, 0xe}, {0x40006c8100, 0x4}, {{0x4000fd3800, 0x16}, {0x0, 0x0}, ...}, ...}, ...)
/Users/dk/.asdf/installs/golang/1.20.10/packages/pkg/mod/github.com/rollkit/rollkit@v0.10.7/node/full.go:240 +0x208
github.com/rollkit/rollkit/node.newFullNode({_, _}, {{0xffffeaa0855b, 0xe}, {0x40006c8100, 0x4}, {{0x4000fd3800, 0x16}, {0x0, 0x0}, ...}, ...}, ...)
/Users/dk/.asdf/installs/golang/1.20.10/packages/pkg/mod/github.com/rollkit/rollkit@v0.10.7/node/full.go:138 +0x7b0
github.com/rollkit/rollkit/node.NewNode({_, _}, {{0xffffeaa0855b, 0xe}, {0x40006c8100, 0x4}, {{0x4000fd3800, 0x16}, {0x0, 0x0}, ...}, ...}, ...)
/Users/dk/.asdf/installs/golang/1.20.10/packages/pkg/mod/github.com/rollkit/rollkit@v0.10.7/node/node.go:36 +0x16c
github.com/cosmos/cosmos-sdk/server.startInProcess(_, {{0x0, 0x0, 0x0}, {0x454a700, 0x4000e0a8a0}, 0x0, {0x400109bf80, 0x8}, {0x4553fb0, ...}, ...}, ...)
/Users/dk/.asdf/installs/golang/1.20.10/packages/pkg/mod/github.com/rollkit/cosmos-sdk@v0.47.6-rollkit-v0.10.7-no-fraud-proofs-fixed/server/start.go:404 +0x9f0
github.com/cosmos/cosmos-sdk/server.StartCmd.func2.2()
/Users/dk/.asdf/installs/golang/1.20.10/packages/pkg/mod/github.com/rollkit/cosmos-sdk@v0.47.6-rollkit-v0.10.7-no-fraud-proofs-fixed/server/start.go:157 +0x64
github.com/cosmos/cosmos-sdk/server.wrapCPUProfile.func2()
/Users/dk/.asdf/installs/golang/1.20.10/packages/pkg/mod/github.com/rollkit/cosmos-sdk@v0.47.6-rollkit-v0.10.7-no-fraud-proofs-fixed/server/start.go:654 +0x30
created by github.com/cosmos/cosmos-sdk/server.wrapCPUProfile
/Users/dk/.asdf/installs/golang/1.20.10/packages/pkg/mod/github.com/rollkit/cosmos-sdk@v0.47.6-rollkit-v0.10.7-no-fraud-proofs-fixed/server/start.go:653 +0x348
[event: pod sequencer-poktroll-sequencer-7545c6c8f7-s8j7x] Back-off restarting failed container poktrolld-sequencer in pod sequencer-poktroll-sequencer-7545c6c8f7-s8j7x_default(7d766d25-c92f-4bc0-8ccb-cf2b62d2a376)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment