zksync_protobuf_config 0.1.0

Protobuf deserialization for ZKsync configs
Documentation
syntax = "proto3";

package zksync.config.api;

import "zksync/config/utils.proto";

message MaxResponseSizeOverride {
  optional string method = 1; // required
  optional uint64 size_mb = 2; // optional; MB
}

message Web3JsonRpc {
  optional uint32 http_port = 1; // required; u16
  optional string http_url = 2; // required
  optional uint32 ws_port = 3; // required; u16
  optional string ws_url = 4; // required
  optional uint32 req_entities_limit = 5; // optional
  optional uint32 filters_limit = 6; // optional
  optional uint32 subscriptions_limit = 7; // optional
  optional uint64 pubsub_polling_interval = 8; // optional
  optional uint32 max_nonce_ahead = 9; // required
  optional double gas_price_scale_factor = 10; // required
  optional uint64 request_timeout = 11; // seconds
  repeated string account_pks = 12; // optional
  optional double estimate_gas_scale_factor = 13; // required
  optional uint32 estimate_gas_acceptable_overestimation = 14; // required
  optional uint64 max_tx_size = 16; // required; B
  optional uint64 vm_execution_cache_misses_limit = 17; // optional
  optional uint64 vm_concurrency_limit = 18; // optional
  optional uint64 factory_deps_cache_size_mb = 19; // optional; MB
  optional uint64 initial_writes_cache_size_mb = 20; // optional; MB
  optional uint64 latest_values_cache_size_mb = 21; // optional; MB
  optional uint64 fee_history_limit = 22; // optional
  optional uint64 max_batch_request_size = 23; // optional
  optional uint64 max_response_body_size_mb = 24; // optional; MB
  optional uint32 websocket_requests_per_minute_limit = 25; // optional
  optional string tree_api_url = 26; // optional
  optional bool filters_disabled = 27; // optional
  optional uint64 mempool_cache_update_interval = 28; // optional
  optional uint64 mempool_cache_size = 29; // optional
  repeated string whitelisted_tokens_for_aa = 30; // optional
  repeated MaxResponseSizeOverride max_response_body_size_overrides = 31;
  repeated string api_namespaces = 32; // Optional, if empty all namespaces are available
  optional bool extended_api_tracing = 33; // optional, default false
  reserved 15; reserved "l1_to_l2_transactions_compatibility_mode";
}



message HealthCheck {
  optional uint32 port = 1; // required; u16
  optional uint64 slow_time_limit_ms = 2; // optional; ms
  optional uint64 hard_time_limit_ms = 3; // optional; ms
}

message MerkleTreeApi {
  optional uint32 port = 1; // required; u16
}

message Api {
  optional Web3JsonRpc web3_json_rpc = 1; // required
  optional utils.Prometheus prometheus = 3; // required
  optional HealthCheck healthcheck = 4; // required
  optional MerkleTreeApi merkle_tree = 5; // required
}