Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Chain-Config update logic #208

Open
wants to merge 32 commits into
base: feat/chain-config
Choose a base branch
from
Open

Conversation

andreiblt1304
Copy link
Contributor

No description provided.

Copy link

github-actions bot commented Dec 13, 2024

Coverage Summary

Totals

Count Covered %
Lines 8072 4586 56.81
Regions 2060 829 40.24
Functions 845 418 49.47
Instantiations 3556 872 24.52

Files

Expand
File Lines Regions Functions Instantiations
/chain-config/meta/src/main.rs 0.00% 0.00% 0.00% 0.00%
/chain-config/src/lib.rs 95.24% 87.50% 100.00% 28.79%
/chain-config/src/validator_rules.rs 63.16% 18.18% 30.00% 15.79%
/chain-config/tests/chain_config_unit_tests.rs 98.92% 89.47% 100.00% 100.00%
/chain-factory/meta/src/main.rs 0.00% 0.00% 0.00% 0.00%
/chain-factory/src/complete_phases.rs 0.00% 0.00% 0.00% 0.00%
/chain-factory/src/factory.rs 80.00% 75.00% 83.33% 27.27%
/chain-factory/src/lib.rs 100.00% 100.00% 100.00% 32.61%
/chain-factory/tests/chain_factory_tests.rs 96.15% 90.00% 100.00% 100.00%
/common/interactor/src/interactor_config.rs 0.00% 0.00% 0.00% 0.00%
/common/interactor/src/interactor_state.rs 0.00% 0.00% 0.00% 0.00%
/common/max-bridged-amount-module/src/lib.rs 76.92% 62.50% 75.00% 18.18%
/common/proxies/src/chain_config_proxy.rs 36.84% 36.36% 36.36% 43.33%
/common/proxies/src/chain_factory_proxy.rs 48.80% 46.15% 46.15% 43.33%
/common/proxies/src/enshrine_esdt_safe_proxy.rs 56.17% 52.38% 52.38% 24.00%
/common/proxies/src/esdt_safe_proxy.rs 31.93% 33.33% 33.33% 26.42%
/common/proxies/src/fee_market_proxy.rs 50.68% 29.17% 40.00% 29.03%
/common/proxies/src/header_verifier_proxy.rs 82.42% 75.00% 75.00% 47.46%
/common/proxies/src/sovereign_forge_proxy.rs 67.57% 64.29% 64.29% 23.26%
/common/proxies/src/testing_sc_proxy.rs 0.00% 0.00% 0.00% 0.00%
/common/proxies/src/token_handler_proxy.rs 83.33% 80.00% 80.00% 63.16%
/common/setup-phase/src/lib.rs 100.00% 83.33% 100.00% 14.86%
/common/token-whitelist/src/lib.rs 26.67% 31.25% 50.00% 12.50%
/common/transaction/src/lib.rs 57.28% 34.88% 40.96% 28.61%
/common/transaction/src/transaction_status.rs 0.00% 0.00% 0.00% 0.00%
/common/tx-batch-module/src/lib.rs 100.00% 83.33% 100.00% 28.57%
/common/utils/src/lib.rs 81.25% 67.74% 80.00% 21.88%
/enshrine-esdt-safe/interactor/src/enshrine_esdt_safe_interactor.rs 0.00% 0.00% 0.00% 0.00%
/enshrine-esdt-safe/interactor/src/enshrine_esdt_safe_interactor_main.rs 0.00% 0.00% 0.00% 0.00%
/enshrine-esdt-safe/interactor/tests/enshrine-esdt-safe_interactor_tests.rs 0.00% 0.00% 0.00% 0.00%
/enshrine-esdt-safe/meta/src/main.rs 0.00% 0.00% 0.00% 0.00%
/enshrine-esdt-safe/src/common/storage.rs 100.00% 66.67% 100.00% 26.32%
/enshrine-esdt-safe/src/from_sovereign/events.rs 100.00% 66.67% 100.00% 16.67%
/enshrine-esdt-safe/src/from_sovereign/transfer_tokens.rs 90.08% 82.35% 83.33% 32.56%
/enshrine-esdt-safe/src/lib.rs 91.43% 82.35% 100.00% 24.07%
/enshrine-esdt-safe/src/to_sovereign/create_tx.rs 95.41% 93.75% 100.00% 34.29%
/enshrine-esdt-safe/src/to_sovereign/events.rs 100.00% 66.67% 100.00% 16.67%
/enshrine-esdt-safe/tests/enshrine_esdt_safe_blackbox_test.rs 99.88% 98.51% 100.00% 100.00%
/esdt-safe/interactor/src/esdt_safe_interactor.rs 0.00% 0.00% 0.00% 0.00%
/esdt-safe/interactor/src/esdt_safe_interactor_main.rs 0.00% 0.00% 0.00% 0.00%
/esdt-safe/interactor/tests/esdt_safe_interactor_tests.rs 0.00% 0.00% 0.00% 0.00%
/esdt-safe/meta/src/main.rs 0.00% 0.00% 0.00% 0.00%
/esdt-safe/src/from_sovereign/events.rs 100.00% 66.67% 100.00% 12.50%
/esdt-safe/src/from_sovereign/token_mapping.rs 1.10% 5.41% 5.26% 5.21%
/esdt-safe/src/from_sovereign/transfer_tokens.rs 41.63% 50.00% 75.00% 22.39%
/esdt-safe/src/lib.rs 76.47% 75.00% 66.67% 22.86%
/esdt-safe/src/to_sovereign/create_tx.rs 45.51% 50.94% 62.50% 20.41%
/esdt-safe/src/to_sovereign/events.rs 100.00% 66.67% 100.00% 12.50%
/esdt-safe/tests/bridge_blackbox_tests.rs 86.16% 92.86% 91.67% 91.67%
/fee-market/meta/src/main.rs 0.00% 0.00% 0.00% 0.00%
/fee-market/src/fee_common.rs 100.00% 75.00% 100.00% 27.59%
/fee-market/src/fee_type.rs 85.29% 53.66% 64.29% 25.74%
/fee-market/src/lib.rs 66.67% 85.71% 66.67% 30.30%
/fee-market/src/price_aggregator.rs 0.00% 0.00% 0.00% 0.00%
/fee-market/src/subtract_fee.rs 42.86% 37.50% 43.75% 14.67%
/fee-market/tests/fee_market_blackbox_test.rs 91.30% 88.64% 100.00% 100.00%
/header-verifier/meta/src/main.rs 0.00% 0.00% 0.00% 0.00%
/header-verifier/src/lib.rs 74.74% 77.50% 84.62% 43.27%
/header-verifier/tests/header_verifier_blackbox_test.rs 100.00% 100.00% 100.00% 100.00%
/sovereign-forge/interactor/src/config.rs 0.00% 0.00% 0.00% 0.00%
/sovereign-forge/interactor/src/interact.rs 0.00% 0.00% 0.00% 0.00%
/sovereign-forge/interactor/src/interactor_main.rs 0.00% 0.00% 0.00% 0.00%
/sovereign-forge/interactor/tests/interact_cs_tests.rs 0.00% 0.00% 0.00% 0.00%
/sovereign-forge/interactor/tests/interact_tests.rs 0.00% 0.00% 0.00% 0.00%
/sovereign-forge/meta/src/main.rs 0.00% 0.00% 0.00% 0.00%
/sovereign-forge/src/common/sc_deploy.rs 96.55% 57.14% 80.00% 22.22%
/sovereign-forge/src/common/storage.rs 100.00% 33.33% 100.00% 15.79%
/sovereign-forge/src/common/utils.rs 89.02% 56.36% 66.67% 29.69%
/sovereign-forge/src/lib.rs 100.00% 100.00% 100.00% 23.26%
/sovereign-forge/src/phases.rs 98.95% 90.00% 100.00% 27.50%
/sovereign-forge/tests/sovereign_forge_unit_tests.rs 99.68% 95.65% 100.00% 100.00%
/testing-sc/meta/src/main.rs 0.00% 0.00% 0.00% 0.00%
/testing-sc/src/lib.rs 0.00% 0.00% 0.00% 0.00%
/token-handler/meta/src/main.rs 0.00% 0.00% 0.00% 0.00%
/token-handler/src/common_storage.rs 100.00% 50.00% 100.00% 21.05%
/token-handler/src/lib.rs 100.00% 100.00% 100.00% 27.91%
/token-handler/src/transfer_tokens.rs 50.52% 36.67% 66.67% 30.30%
/token-handler/tests/token_handler_blackbox_tests.rs 94.85% 95.24% 100.00% 100.00%

Copy link

github-actions bot commented Dec 13, 2024

Contract comparison - from 85d3429 to 051ae2c

Path                                                                                             size                  has-allocator                     has-format
chain-config-full.wasm 4761 ➡️ 6510 🔴 false without message
chain-config-view.wasm 626 false None
chain-config.wasm 4761 ➡️ 6510 🔴 false without message
enshrine-esdt-safe-full.wasm 21879 false without message
enshrine-esdt-safe-view.wasm 626 false None
enshrine-esdt-safe.wasm 21878 false without message
esdt-safe.wasm 22938 false without message
esdt-safe-view.wasm 626 false None
esdt-safe-full.wasm 22938 false without message
testing-sc.wasm 461 false None
testing-view.wasm 626 false None
testing-sc-full.wasm 461 false None
fee-market.wasm 11570 false without message
fee-market-view.wasm 626 false None
soveriegn-forge-view.wasm 626 false None
sovereign-forge-full.wasm 9264 ➡️ 9737 🔴 false without message
sovereign-forge.wasm 9264 ➡️ 9737 🔴 false without message
chain-factory-full.wasm 7364 ➡️ 7708 🔴 false without message
chain-factory-view.wasm 626 false None
chain-factory.wasm 7364 ➡️ 7708 🔴 false without message
header-verifier-full.wasm 5678 false without message
header-verifier.wasm 5678 false without message
multisig-view.wasm 626 false None
token-handler-view.wasm 626 false None
token-handler-full.wasm 9359 false without message
token-handler.wasm 9359 false without message

Signed-off-by: Andrei Baltariu <[email protected]>
@andreiblt1304 andreiblt1304 marked this pull request as ready for review December 13, 2024 14:33
@axenteoctavian axenteoctavian self-requested a review December 16, 2024 08:03
chain-config/src/validator_rules.rs Show resolved Hide resolved
chain-config/src/lib.rs Show resolved Hide resolved
common/transaction/src/lib.rs Show resolved Hide resolved
chain-config/src/lib.rs Show resolved Hide resolved
Signed-off-by: Andrei Baltariu <[email protected]>
Signed-off-by: Andrei Baltariu <[email protected]>
Signed-off-by: Andrei Baltariu <[email protected]>
Signed-off-by: Andrei Baltariu <[email protected]>
Signed-off-by: Andrei Baltariu <[email protected]>
Signed-off-by: Andrei Baltariu <[email protected]>
Signed-off-by: Andrei Baltariu <[email protected]>
Signed-off-by: Andrei Baltariu <[email protected]>
Signed-off-by: Andrei Baltariu <[email protected]>
Signed-off-by: Andrei Baltariu <[email protected]>
Signed-off-by: Andrei Baltariu <[email protected]>
Signed-off-by: Andrei Baltariu <[email protected]>
Signed-off-by: Andrei Baltariu <[email protected]>
Signed-off-by: Andrei Baltariu <[email protected]>
Signed-off-by: Andrei Baltariu <[email protected]>
Signed-off-by: Andrei Baltariu <[email protected]>
Signed-off-by: Andrei Baltariu <[email protected]>
Signed-off-by: Andrei Baltariu <[email protected]>
);
}

fn require_validator_range(&self, min_validators: u64, max_validators: u64) {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be called in require_config_set

@@ -15,43 +17,21 @@ pub struct TokenIdAmountPair<M: ManagedTypeApi> {
pub trait ValidatorRulesModule {
fn require_config_set(&self) {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
fn require_config_set(&self) {
fn require_valid_config(&self) {

Also, we can send a config as argument and validate it. This should be better because we first check the config, then we set it in storage

self.min_validators().set(min_validators);
self.max_validators().set(max_validators);
self.min_stake().set(min_stake);
fn init(&self, config: SovereignConfig<Self::Api>, admin: ManagedAddress) {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

call require_valid_config in init

let value = TokenIdAmountPair { token_id, amount };
#[endpoint(updateConfig)]
fn update_config(&self, new_config: SovereignConfig<Self::Api>) {
self.require_config_set();

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
self.require_config_set();
self.require_config_set(new_config);

We check if it's valid before setting it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants