Marin Veršić
Marin Veršić
I would prefer config to have private fields with constructors and getters for the following reasons: 1. consistency - access to some fields has to be done through getters because...
Look into `TransactionBuilder::set_ttl`. This might be API breaking change
Invalid transactions take a lot of time to process. This is probably because they require cloning of `wsv`. When there is a batch of invalid transactions in a block the...
This was introduced in #4263 to prevent consensus from operating if there is a bug in the implementation. We should make sure that consensus operation is well covered with tests...
why would you do this? _Originally posted by @mversic in https://github.com/hyperledger/iroha/pull/4181#discussion_r1465216449_
Is it necessary to return algorithm here, isn't it a known fact which algorithm is used in `p2p` crate? _Originally posted by @mversic in https://github.com/hyperledger/iroha/pull/4181#discussion_r1469344793_
When genesis is received via listen for genesis via `sumeragi_listen_for_genesis`(`BlockCreated`/`BlockSyncUpdate`) it is not verified that genesis is signed with `IROHA_GENESIS_PUBLIC_KEY`. Not even leader that creates the genesis block verifies that...
Let's see what should be the default set of permissions and what should their names be. Currently we have (as listed in `smart_contract/executor/src/default/tokens.rs`): ``` CanUnregisterAnyPeer, CanUnregisterDomain, CanSetKeyValueInDomain, CanRemoveKeyValueInDomain, CanRegisterAccountInDomain, CanRegisterAssetDefinitionInDomain,...
I propose that we move `PeerId::address` into `Peer` struct
Reasons: 1. Peers are uniquely identified only with a public key 2. it's hard to replay blocks in a new environment 3. reduces chain size of blocks