diff --git a/genesis/upgrade4/config.toml b/genesis/upgrade4/config.toml new file mode 100644 index 00000000..5fb270b0 --- /dev/null +++ b/genesis/upgrade4/config.toml @@ -0,0 +1,252 @@ +# For more information, see https://github.com/toml-lang/toml + +##### main base config options ##### + +# TCP or UNIX socket address of the ABCI application, +# or the name of an ABCI application compiled in with the Tendermint binary +proxy_app = "tcp://127.0.0.1:26658" + +# A custom human readable name for this node +moniker = "" + +# If this node is many blocks behind the tip of the chain, FastSync +# allows them to catchup quickly by downloading blocks in parallel +# and verifying their commits +fast_sync = true + +# Database backend: leveldb | memdb | cleveldb +db_backend = "cleveldb" + +# Database directory +db_dir = "data" + +# Output level for logging, including package level options +log_level = "main:info,state:info,*:error" + +# 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 Tendermint 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" + +# TCP or UNIX socket address for the profiling server to listen on +prof_laddr = "localhost:6060" + +# 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://0.0.0.0: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 = 60000 + +# 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 = 60000 + +##### peer to peer 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. +external_address = "" + +# Comma separated list of seed nodes to connect to +seeds = "" + +# Comma separated list of nodes to keep persistent connections to +persistent_peers = "81f06cdc8ab5fd32a31f14bf592999611d6d7265@100.25.255.5:26656,ba632392438114c9c7b08c3139bcd62c3eb85cf4@18.213.116.0:26656" + +# 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 + +# 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 = 128000000 + +# Rate at which packets can be received, in bytes/second +recv_rate = 128000000 + +# 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 = true + +# Peer connection configuration. +handshake_timeout = "20s" +dial_timeout = "3s" + +##### mempool configuration options ##### +[mempool] + +recheck = true +broadcast = true +wal_dir = "" + +# size of the mempool +size = 5000 + +# size of the cache (used to filter transactions we saw earlier) +cache_size = 10000 + +##### consensus configuration options ##### +[consensus] + +wal_file = "data/cs.wal/wal" + +timeout_propose = "3s" +timeout_propose_delta = "500ms" +timeout_prevote = "1s" +timeout_prevote_delta = "500ms" +timeout_precommit = "1s" +timeout_precommit_delta = "500ms" +timeout_commit = "3s" + +# 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" + +# Block time parameters. Corresponds to the minimum time increment between consecutive blocks. +blocktime_iota = "1s" + +##### transactions indexer configuration options ##### +[tx_index] + +# What indexer to use for transactions +# +# Options: +# 1) "null" +# 2) "kv" (default) - the simplest possible indexer, backed by key-value storage (defaults to levelDB; see DBBackend). +indexer = "kv" + +# Comma-separated list of tags to index (by default the only tag is "tx.hash") +# +# You can also index transactions by height by adding "tx.height" tag here. +# +# It's recommended to index only a subset of tags due to possible memory +# bloat. This is, of course, depends on the indexer's DB and the volume of +# transactions. +index_tags = "" + +# When set to true, tells indexer to index all tags (predefined tags: +# "tx.hash", "tx.height" and all tags from DeliverTx responses). +# +# Note this may be not desirable (see the comment above). IndexTags has a +# precedence over IndexAllTags (i.e. when given both, IndexTags will be +# indexed). +index_all_tags = true + +##### 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 = 100 + +# Instrumentation namespace +namespace = "tendermint" + diff --git a/genesis/upgrade4/genesis.json b/genesis/upgrade4/genesis.json new file mode 100644 index 00000000..752afccf --- /dev/null +++ b/genesis/upgrade4/genesis.json @@ -0,0 +1,162 @@ +{ + "genesis_time": "TODO", + "chain_id": "lino-testnet-upgrade4", + "consensus_params": { + "block": { + "time_iota_ms": "1000", + "max_bytes": "22020096", + "max_gas": "-1" + }, + "evidence": { + "max_age": "100000" + }, + "validator": { + "pub_key_types": [ + "ed25519" + ] + } + }, + "validators": [], + "app_hash": "", + "app_state": { + "load_prev_states": true, + "accounts": [], + "reserve_pool": { + "amount": "0" + }, + "init_coin_price": "1200", + "developers": [], + "genesis_param": { + "init_from_config": true, + "GlobalAllocationParam": { + "global_growth_rate": "0.005", + "content_creator_allocation": "0.4", + "developer_allocation": "0.55", + "validator_allocation": "0.05" + }, + "VoteParam": { + "voter_coin_return_interval_second": "86401", + "voter_coin_return_times": "1", + "delegator_coin_return_interval_second": "86401", + "delegator_coin_return_times": "1", + "min_stake_in": { + "amount": "100000000" + } + }, + "ProposalParam": { + "content_censorship_decide_second": "259200", + "content_censorship_min_deposit": { + "amount": "10000000" + }, + "content_censorship_pass_ratio": "0.5", + "content_censorship_pass_votes": { + "amount": "1000000000" + }, + "change_param_decide_second": "259200", + "change_param_execution_second": "0", + "change_param_min_deposit": { + "amount": "1000000000000" + }, + "change_param_pass_ratio": "0.7", + "change_param_pass_votes": { + "amount": "10000000000000" + }, + "protocol_upgrade_decide_second": "259200", + "protocol_upgrade_min_deposit": { + "amount": "10000000000000" + }, + "protocol_upgrade_pass_ratio": "0.8", + "protocol_upgrade_pass_votes": { + "amount": "100000000000000" + } + }, + "DeveloperParam": { + "developer_min_deposit": { + "amount": "1000000000000" + }, + "developer_coin_return_interval_second": "604800", + "developer_coin_return_times": "12" + }, + "ValidatorParam": { + "validator_min_deposit": { + "amount": "10000000000" + }, + "validator_coin_return_second": "604800", + "validator_coin_return_times": "7", + "penalty_miss_commit": { + "amount": "20000000" + }, + "penalty_byzantine": { + "amount": "100000000" + }, + "absent_commit_limitation": "600", + "oncall_size": "16", + "standby_size": "5", + "validator_revoke_pending_sec": "604800", + "oncall_inflation_weight": "2", + "standby_inflation_weight": "1", + "max_voted_validators": "3" + }, + "CoinDayParam": { + "seconds_to_recover_coin_day": "604800" + }, + "BandwidthParam": { + "seconds_to_recover_bandwidth": "604800", + "capacity_usage_per_transaction": { + "amount": "100000" + }, + "virtual_coin": { + "amount": "100000" + }, + "general_msg_quota_ratio": "0.2", + "general_msg_ema_factor": "0.025", + "app_msg_quota_ratio": "0.8", + "app_msg_ema_factor": "0.025", + "expected_max_mps": "300", + "msg_fee_factor_a": "6", + "msg_fee_factor_b": "10", + "max_mps_decay_rate": "0.99", + "app_bandwidth_pool_size": "10", + "app_vacancy_factor": "0.69", + "app_punishment_factor": "2.8" + }, + "AccountParam": { + "minimum_balance": { + "amount": "0" + }, + "register_fee": { + "amount": "10000" + }, + "first_deposit_full_coin_day_limit": { + "amount": "100000" + }, + "max_num_frozen_money": "10" + }, + "PostParam": { + "report_or_upvote_interval_second": "60", + "post_interval_sec": "30", + "max_report_reputation": { + "amount": "1000000000" + } + }, + "ReputationParam": { + "best_content_index_n": "200", + "user_max_n": "50" + }, + "PriceParam": { + "testnet_mode": true, + "update_every": "3600", + "feed_every": "600", + "history_max_len": "71", + "penalty_miss_feed": { + "amount": "1000000000" + } + } + }, + "init_global_meta": { + "max_tps": "500", + "consumption_friction_rate": "0.099", + "consumption_freezing_period_second": "604800" + } + } +}