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

refactor(mainnet): ready runtime config #458

Draft
wants to merge 8 commits into
base: main
Choose a base branch
from

Conversation

al3mart
Copy link
Collaborator

@al3mart al3mart commented Jan 31, 2025

This PR refactors the mainnet runtime config grouping different pallets into configuration modules.
It also updates certain configurations to be mainnet aligned and extends the testing for the configuration.

Changes:

In preferred merge order:


Other relevant mainnet changes that are currently not present in this branch. (Needs rebasing)

[sc-2205]

@Daanvdplas
Copy link
Collaborator

Can we add a requirement to this PR that the treasury account is correctly refactored (as my understanding is that this is required)

@al3mart al3mart force-pushed the al3mart/refactor-mainnet-config branch from 809c784 to 9b1f3e2 Compare February 5, 2025 09:08
al3mart and others added 6 commits February 7, 2025 04:07
* refactor(mainnet): add governance & pallet_sudo tests

* refactor(sudo): sudo account defined in governance & unit test

fix(governance): make governance mod public & better sudo declaration
* refactor(mainnet): add pallet_multisig to utility

* test(mainnet): add pallet_multisig tests

* refactor(mainnet): add pallet_utility to utility

* test(mainnet): add pallet_utility tests

* refactor(mainnet): add pallet_preimage to utility

* test(mainnet): add pallet_preimage tests

* refactor(mainnet): add pallet_scheduler to utility

* test(mainnet): add pallet_scheduler tests
* refactor(mainnet): pallet_proxy config & tests

* style(proxy): tests follow config order

* refactor(proxy): remove asset related ProxyTypes

* refactor(proxy): update ProxyDepositBase price

* refactor(proxy): revert d3bfc6c and redefine ProxyType for mainnet

typo

* fix(proxy): amend proxy_has_deposit_base test

* docs(proxy): Clarify new ProxyType definition

* docs(proxy): add is_superset comments

* test(proxy): clarify deposit byte size lenght
* refactor(mainnet): add frame_system to system

* test(mainnet): add pallet_system test

* fix(mainnet): rebase fixes

* fix(system): bring missing types in scope

* refactor(system): add cumulus_parachain_system to system config module

* test(system): add cumulus_parachain_system tests

* refactor(system): add parachain_info into system config module

* refactor(system): add pallet_timestamp into system config module

* style(system): add ConsensusHook comment

* refactor(system): separate tests by module

* docs(system): document public config modules

* fix(system): allow unused_imports to remove Executive warning

* refactor(system): reintroduce FilteredCalls

* style(system): get rid of test prefixes

* style(system): relocate max_block_weigth comment

* test(system): check for Hash type config

* docs(system): amend outdated comments

* Update runtime/mainnet/src/config/mod.rs

Co-authored-by: Daan van der Plas <[email protected]>

* Update runtime/mainnet/src/config/mod.rs

Co-authored-by: Daan van der Plas <[email protected]>

* Update runtime/mainnet/src/config/mod.rs

Co-authored-by: Daan van der Plas <[email protected]>

* Update runtime/mainnet/src/config/mod.rs

Co-authored-by: Daan van der Plas <[email protected]>

---------

Co-authored-by: Daan van der Plas <[email protected]>
* refactor(mainnet): pallet_balances & fee constants

* test(mainnet): add pallet_balances tests

* refactor(mainnet): add pallet_transaction_payment to monetary config

* test(mainnet): add transaction_payment tests

* fix(mainnet): rebase fixes

* fix(monetary): don't burn dust

* refactor(monetary): use treasury account instead of sudo

remove extra clone

* refactor(monetary): use existential_deposit instead of UNIT in dust test

* refactor(monetary): Don't use DOLLARS & CENTS is defined in terms of UNITS

* fix(monetary): missing doc for fn deposit

* docs(monetary): remove src from docs

* docs(monetary): update TransactionByteFee comments

* refactor(monetary): reorg tests into modules

* style(monetary): remove confussing comment

* style(monetar): remove prefixes from tests

changes after rebase

more changes after reabse
* refactor(mainnet): add pallet_authorship to collation

* test(mainnet): add pallet_auhtorship test

* refactor(mainnet): add pallet_aura to collation

* test(mainnet): add pallet_aura tests

* refactor(mainnet): add collator_selection to collation

* test(mainnet): add collator_selection tests

* refactor(mainnet): add pallet_session & aura_ext to collation

* test(mainnet): add pallet_session tests

* chore(aura): MaxAuthorities matches max possible blocks produced

* remove unnused imports

* style(collation): order tests following pallet config

* style(collation): remove unnecessary qualifications

* style(collation): max_authorities_is_3600

* style(collation): reorg definition in session_keys_provided_by_aura test

* style(collation): better Period  comment

* style(collation): clarify session::SessionHandler comment

* refactor(collation): separate tests in modules by pallet

* style(collation): Explain SessionHandler config

fixes after rebase

* style(collation): remove prefixes from tests

* style(collation): Period comment was not helpful

changes after rebase
@al3mart al3mart force-pushed the al3mart/refactor-mainnet-config branch from 9b1f3e2 to c81b9d6 Compare February 7, 2025 04:34
style(utility): fmt

rebase

fmt

fmt
@al3mart al3mart force-pushed the al3mart/refactor-mainnet-config branch from c81b9d6 to 702b7f2 Compare February 7, 2025 10:32
@codecov-commenter
Copy link

codecov-commenter commented Feb 7, 2025

Codecov Report

Attention: Patch coverage is 97.74775% with 40 lines in your changes missing coverage. Please review.

Project coverage is 75.78%. Comparing base (168cf85) to head (cae5b19).

Files with missing lines Patch % Lines
runtime/mainnet/src/config/monetary.rs 93.54% 24 Missing and 3 partials ⚠️
runtime/mainnet/src/config/proxy.rs 93.68% 6 Missing ⚠️
runtime/mainnet/src/config/system.rs 98.25% 6 Missing ⚠️
runtime/mainnet/src/apis.rs 0.00% 1 Missing ⚠️
@@            Coverage Diff             @@
##             main     #458      +/-   ##
==========================================
+ Coverage   73.50%   75.78%   +2.27%     
==========================================
  Files          78       83       +5     
  Lines       15696    17127    +1431     
  Branches    15696    17127    +1431     
==========================================
+ Hits        11538    12980    +1442     
+ Misses       3897     3884      -13     
- Partials      261      263       +2     
Files with missing lines Coverage Δ
node/src/chain_spec.rs 10.17% <ø> (ø)
node/src/command.rs 0.00% <ø> (ø)
runtime/mainnet/src/config/collation.rs 100.00% <100.00%> (ø)
runtime/mainnet/src/config/governance.rs 100.00% <100.00%> (ø)
runtime/mainnet/src/config/utility.rs 100.00% <100.00%> (ø)
runtime/mainnet/src/config/xcm.rs 100.00% <100.00%> (ø)
runtime/mainnet/src/lib.rs 66.23% <ø> (-15.15%) ⬇️
runtime/mainnet/src/apis.rs 0.00% <0.00%> (ø)
runtime/mainnet/src/config/proxy.rs 83.17% <93.68%> (+83.17%) ⬆️
runtime/mainnet/src/config/system.rs 98.25% <98.25%> (ø)
... and 1 more

* refactor(mainnet): rebase changes

* chore(mainnet): update Cargo.lock

* refactor(mainnet): utility config (#438)

* refactor(mainnet): add pallet_multisig to utility

* test(mainnet): add pallet_multisig tests

* refactor(mainnet): add pallet_utility to utility

* test(mainnet): add pallet_utility tests

* refactor(mainnet): add pallet_preimage to utility

* test(mainnet): add pallet_preimage tests

* refactor(mainnet): add pallet_scheduler to utility

* test(mainnet): add pallet_scheduler tests

* refactor(mainnet): system config (#442)

* refactor(mainnet): add frame_system to system

* test(mainnet): add pallet_system test

* fix(mainnet): rebase fixes

* fix(system): bring missing types in scope

* refactor(system): add cumulus_parachain_system to system config module

* test(system): add cumulus_parachain_system tests

* refactor(system): add parachain_info into system config module

* refactor(system): add pallet_timestamp into system config module

* style(system): add ConsensusHook comment

* refactor(system): separate tests by module

* docs(system): document public config modules

* fix(system): allow unused_imports to remove Executive warning

* refactor(system): reintroduce FilteredCalls

* style(system): get rid of test prefixes

* style(system): relocate max_block_weigth comment

* test(system): check for Hash type config

* docs(system): amend outdated comments

* Update runtime/mainnet/src/config/mod.rs

Co-authored-by: Daan van der Plas <[email protected]>

* Update runtime/mainnet/src/config/mod.rs

Co-authored-by: Daan van der Plas <[email protected]>

* Update runtime/mainnet/src/config/mod.rs

Co-authored-by: Daan van der Plas <[email protected]>

* Update runtime/mainnet/src/config/mod.rs

Co-authored-by: Daan van der Plas <[email protected]>

---------

Co-authored-by: Daan van der Plas <[email protected]>

* refactor(mainnet): collation config (#439)

* refactor(mainnet): add pallet_authorship to collation

* test(mainnet): add pallet_auhtorship test

* refactor(mainnet): add pallet_aura to collation

* test(mainnet): add pallet_aura tests

* refactor(mainnet): add collator_selection to collation

* test(mainnet): add collator_selection tests

* refactor(mainnet): add pallet_session & aura_ext to collation

* test(mainnet): add pallet_session tests

* chore(aura): MaxAuthorities matches max possible blocks produced

* remove unnused imports

* style(collation): order tests following pallet config

* style(collation): remove unnecessary qualifications

* style(collation): max_authorities_is_3600

* style(collation): reorg definition in session_keys_provided_by_aura test

* style(collation): better Period  comment

* style(collation): clarify session::SessionHandler comment

* refactor(collation): separate tests in modules by pallet

* style(collation): Explain SessionHandler config

fixes after rebase

* style(collation): remove prefixes from tests

* style(collation): Period comment was not helpful

changes after rebase

* refactor(xcm): add pallet_message_queue into xcm config module

* test(xcm): add message_queue tests

* test(xcm): test location, transactor and barrier type definitions

* refactor(xcm): include pallet_xcmp_queue into xcm config module

* test(xcm): add pallet_xcmp_queue configuration tests

* test(xcm): add xcm_executor configuration tests

* test(xcm): adding pallet_xcm config tests

* fix(xcm): typo

fix(xcm): XcmReserveTransferFilter is Everything

* refactor(xcm): use unitype for MaxRemoteLockConsumers

* style(xcm): tests separated in modules

* style(xcm): better naming for XcmTeleportFilter test

* style(xcm): test naming and order

* docs(xcm): clarifying comments for specific xcmp_queueu types

* style(xcm): typo

* style(xcm): better name for reserves tests

* refactor(xcm): Use `NativeAssetFrom<T>` as `XcmReserveTransferFilter` (#459)

* refactor(xcm): Use NativeAssetFrom<T> as XcmReserveTransferFilter

style:fmt

* fix(xcm): NativeAssetFrom<AssetHub> filters everything but DOT from AH

* fix(xcm): XcmReserveTransferFilter filters only by asset

fix

changes after rebase

fmt

* fix(xcm): remove waived locations (#456)

* fix(xcm): no locations are waived

* test(xcm): improved waived_location test

changes after rebase

* style(xcm): clarify that we are not waiving fees for any location

* fix(xcm): charge delivery fees (#457)

* resolve rebase conflicts

* fix(xcm): reserve_transfer_native_asset_from_para_to_system_para accounts for delivery fees

* fix(integration-tests): handle delivery_fees only with mainnet feature on

fmt after rebase

fmt

changes after rebase

fmt

fmt

* test(xcm): address feedback from #459

typos

AssetFilter

* style(xcm): locate reserve tests within executor

lint

* fix(integration-test): improve tests & remove feature gated compilation

unnecessary Fungibles

* refactor: integration tests mainnet xcm (#466)

* refactor: integration tests mainnet xcm

* fix: remove unused ED

rebase

fmt

fmt

* Update runtime/mainnet/src/config/xcm.rs

Co-authored-by: Daan van der Plas <[email protected]>

* refactor(xcm): use TreasuryAccount from monetary

* chore(xcm): unused imports

* chore(xcm): amend test modules

* chore(integration-tests): amend reserve_transfer_native_asset_from_para_to_system

* chore(xcm): divive reserve filter test in two

* chore(xcm): fmt

* style(integration-tests): fix unwanted indentation

* test(xcm): more focused unit tests

* Update runtime/mainnet/src/config/xcm.rs

Co-authored-by: Daan van der Plas <[email protected]>

* Update runtime/mainnet/src/config/xcm.rs

Co-authored-by: Daan van der Plas <[email protected]>

* fix(test): amend suggestions

---------

Co-authored-by: Daan van der Plas <[email protected]>
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.

3 participants