From 736216ae8c97e50e223a49e864d17e3be9889dd2 Mon Sep 17 00:00:00 2001 From: Yahor Tsaryk Date: Fri, 21 Jun 2024 11:15:45 +0200 Subject: [PATCH] Release 5.3.1 (with modified OpenGov Support Curves) (#366) ## Description ## Types of Changes Please select the branch type you are merging and fill in the relevant template. - [ ] Hotfix - [ ] Release - [ ] Fix or Feature ## Fix or Feature ### Types of Changes - [ ] Tech Debt (Code improvements) - [ ] Bug fix (non-breaking change which fixes an issue) - [ ] New feature (non-breaking change which adds functionality) - [ ] Breaking change (fix or feature that would cause existing functionality to change) - [ ] Dependency upgrade (A change in substrate or any 3rd party crate version) ### Migrations and Hooks - [ ] This change requires a runtime migration. - [ ] Modifies `on_initialize` - [ ] Modifies `on_finalize` ### Checklist for Fix or Feature - [ ] Change has been tested locally. - [ ] Change adds / updates tests if applicable. - [ ] Changelog doc updated. - [ ] `spec_version` has been incremented. - [ ] `network-relayer`'s [events](https://github.com/Cerebellum-Network/network-relayer/blob/dev-cere/shared/substrate/events.go) have been updated according to the blockchain events if applicable. - [ ] All CI checks have been passed successfully ## Checklist for Hotfix - [ ] Changelog has been updated. - [ ] Crate version has been updated. - [ ] `spec_version` has been incremented. - [ ] Transaction version has been updated if required. - [ ] Pull Request to `dev` has been created. - [ ] Pull Request to `staging` has been created. - [ ] `network-relayer`'s [events](https://github.com/Cerebellum-Network/network-relayer/blob/dev-cere/shared/substrate/events.go) have been updated according to the blockchain events if applicable. - [ ] All CI checks have been passed successfully ## Checklist for Release - [ ] Change has been deployed to Devnet. - [ ] Change has been tested in Devnet. - [ ] Change has been deployed to Qanet. - [ ] Change has been tested in Qanet. - [ ] Change has been deployed to Testnet. - [ ] Change has been tested in Testnet. - [ ] Changelog has been updated. - [ ] Crate version has been updated. - [ ] Spec version has been updated. - [ ] Transaction version has been updated if required. - [ ] All CI checks have been passed successfully --------- Co-authored-by: rakanalh Co-authored-by: Maksim Ramanenkau Co-authored-by: Ayush Mishra Co-authored-by: Pavel --- CHANGELOG.md | 1 + runtime/cere-dev/src/governance/origins.rs | 3 - runtime/cere-dev/src/governance/tracks.rs | 77 +++++++++--------- runtime/cere-dev/src/lib.rs | 2 +- runtime/cere/src/governance/origins.rs | 3 - runtime/cere/src/governance/tracks.rs | 93 +++++++++------------- runtime/cere/src/lib.rs | 2 +- 7 files changed, 75 insertions(+), 106 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1b20007dd..98106c5ab 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,6 +16,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - [C,D] `WhitelistOrigin` is set to the Technical Committee Collective Body +- [C,D] The _Support Curve_ in OpenGov Tracks is made more strict ## [5.3.0] diff --git a/runtime/cere-dev/src/governance/origins.rs b/runtime/cere-dev/src/governance/origins.rs index 57e2c98cc..8f7e3d944 100644 --- a/runtime/cere-dev/src/governance/origins.rs +++ b/runtime/cere-dev/src/governance/origins.rs @@ -22,8 +22,6 @@ pub mod pallet_custom_origins { /// Origin for spending up to $10,000,000 DOT from the treasury as well as generally /// administering it. Treasurer, - /// Origin for managing the composition of the fellowship. - FellowshipAdmin, /// Origin for managing the registrar. GeneralAdmin, /// Origin able to cancel referenda. @@ -77,7 +75,6 @@ pub mod pallet_custom_origins { decl_unit_ensures!( StakingAdmin, Treasurer, - FellowshipAdmin, GeneralAdmin, ReferendumCanceller, ReferendumKiller, diff --git a/runtime/cere-dev/src/governance/tracks.rs b/runtime/cere-dev/src/governance/tracks.rs index d4c813a46..a3365b9d1 100644 --- a/runtime/cere-dev/src/governance/tracks.rs +++ b/runtime/cere-dev/src/governance/tracks.rs @@ -1,49 +1,59 @@ //! Track configurations for governance. +use pallet_referenda::Curve; + use super::*; const fn percent(x: i32) -> sp_arithmetic::FixedI64 { sp_arithmetic::FixedI64::from_rational(x as u128, 100) } -use pallet_referenda::Curve; + +const fn percent_perbill(x: Perbill) -> sp_arithmetic::FixedI64 { + sp_arithmetic::FixedI64::from_perbill(x) +} + const APP_ROOT: Curve = Curve::make_reciprocal(4, 28, percent(80), percent(50), percent(100)); -const SUP_ROOT: Curve = Curve::make_linear(28, 28, percent(0), percent(50)); +const SUP_ROOT: Curve = Curve::make_linear(28, 28, percent(20), percent(50)); const APP_STAKING_ADMIN: Curve = Curve::make_linear(17, 28, percent(50), percent(100)); const SUP_STAKING_ADMIN: Curve = - Curve::make_reciprocal(12, 28, percent(1), percent(0), percent(50)); + Curve::make_reciprocal(12, 28, percent(11), percent(10), percent(50)); const APP_TREASURER: Curve = Curve::make_reciprocal(4, 28, percent(80), percent(50), percent(100)); -const SUP_TREASURER: Curve = Curve::make_linear(28, 28, percent(0), percent(50)); -const APP_FELLOWSHIP_ADMIN: Curve = Curve::make_linear(17, 28, percent(50), percent(100)); -const SUP_FELLOWSHIP_ADMIN: Curve = - Curve::make_reciprocal(12, 28, percent(1), percent(0), percent(50)); +const SUP_TREASURER: Curve = Curve::make_linear(28, 28, percent(10), percent(50)); const APP_GENERAL_ADMIN: Curve = Curve::make_reciprocal(4, 28, percent(80), percent(50), percent(100)); const SUP_GENERAL_ADMIN: Curve = - Curve::make_reciprocal(7, 28, percent(10), percent(0), percent(50)); + Curve::make_reciprocal(7, 28, percent(20), percent(10), percent(50)); const APP_REFERENDUM_CANCELLER: Curve = Curve::make_linear(17, 28, percent(50), percent(100)); const SUP_REFERENDUM_CANCELLER: Curve = - Curve::make_reciprocal(12, 28, percent(1), percent(0), percent(50)); + Curve::make_reciprocal(12, 28, percent(11), percent(10), percent(50)); const APP_REFERENDUM_KILLER: Curve = Curve::make_linear(17, 28, percent(50), percent(100)); const SUP_REFERENDUM_KILLER: Curve = - Curve::make_reciprocal(12, 28, percent(1), percent(0), percent(50)); + Curve::make_reciprocal(12, 28, percent(11), percent(10), percent(50)); const APP_SMALL_TIPPER: Curve = Curve::make_linear(10, 28, percent(50), percent(100)); -const SUP_SMALL_TIPPER: Curve = Curve::make_reciprocal(1, 28, percent(4), percent(0), percent(50)); +const SUP_SMALL_TIPPER: Curve = + Curve::make_reciprocal(1, 28, percent(14), percent(10), percent(50)); const APP_BIG_TIPPER: Curve = Curve::make_linear(10, 28, percent(50), percent(100)); -const SUP_BIG_TIPPER: Curve = Curve::make_reciprocal(8, 28, percent(1), percent(0), percent(50)); +const SUP_BIG_TIPPER: Curve = Curve::make_reciprocal(8, 28, percent(11), percent(10), percent(50)); const APP_SMALL_SPENDER: Curve = Curve::make_linear(17, 28, percent(50), percent(100)); const SUP_SMALL_SPENDER: Curve = - Curve::make_reciprocal(12, 28, percent(1), percent(0), percent(50)); + Curve::make_reciprocal(12, 28, percent(11), percent(10), percent(50)); const APP_MEDIUM_SPENDER: Curve = Curve::make_linear(23, 28, percent(50), percent(100)); const SUP_MEDIUM_SPENDER: Curve = - Curve::make_reciprocal(16, 28, percent(1), percent(0), percent(50)); + Curve::make_reciprocal(16, 28, percent(11), percent(10), percent(50)); const APP_BIG_SPENDER: Curve = Curve::make_linear(28, 28, percent(50), percent(100)); -const SUP_BIG_SPENDER: Curve = Curve::make_reciprocal(20, 28, percent(1), percent(0), percent(50)); +const SUP_BIG_SPENDER: Curve = + Curve::make_reciprocal(20, 28, percent(11), percent(10), percent(50)); const APP_WHITELISTED_CALLER: Curve = Curve::make_reciprocal(16, 28 * 24, percent(96), percent(50), percent(100)); -const SUP_WHITELISTED_CALLER: Curve = - Curve::make_reciprocal(1, 28, percent(20), percent(5), percent(50)); +const SUP_WHITELISTED_CALLER: Curve = Curve::make_reciprocal( + 1, + 28, + percent_perbill(Perbill::from_parts(1_000_000)), // 0.1 % + percent_perbill(Perbill::from_parts(250_000)), // 0.025 % + percent(50), +); -const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 13] = [ +const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 12] = [ ( 0, pallet_referenda::TrackInfo { @@ -77,7 +87,7 @@ const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 13 pallet_referenda::TrackInfo { name: "staking_admin", max_deciding: 10, - decision_deposit: 5 * GRAND, + decision_deposit: 10 * GRAND, prepare_period: 2 * HOURS, decision_period: 28 * DAYS, confirm_period: 3 * HOURS, @@ -91,7 +101,7 @@ const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 13 pallet_referenda::TrackInfo { name: "treasurer", max_deciding: 10, - decision_deposit: GRAND, + decision_deposit: 10 * GRAND, prepare_period: 2 * HOURS, decision_period: 28 * DAYS, confirm_period: 3 * HOURS, @@ -100,26 +110,12 @@ const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 13 min_support: SUP_TREASURER, }, ), - ( - 13, - pallet_referenda::TrackInfo { - name: "fellowship_admin", - max_deciding: 10, - decision_deposit: 5 * GRAND, - prepare_period: 2 * HOURS, - decision_period: 28 * DAYS, - confirm_period: 3 * HOURS, - min_enactment_period: 10 * MINUTES, - min_approval: APP_FELLOWSHIP_ADMIN, - min_support: SUP_FELLOWSHIP_ADMIN, - }, - ), ( 14, pallet_referenda::TrackInfo { name: "general_admin", max_deciding: 10, - decision_deposit: 5 * GRAND, + decision_deposit: 10 * GRAND, prepare_period: 2 * HOURS, decision_period: 28 * DAYS, confirm_period: 3 * HOURS, @@ -161,7 +157,7 @@ const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 13 pallet_referenda::TrackInfo { name: "small_tipper", max_deciding: 200, - decision_deposit: DOLLARS, + decision_deposit: 10 * GRAND, prepare_period: MINUTES, decision_period: 7 * DAYS, confirm_period: 10 * MINUTES, @@ -175,7 +171,7 @@ const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 13 pallet_referenda::TrackInfo { name: "big_tipper", max_deciding: 100, - decision_deposit: 10 * DOLLARS, + decision_deposit: 10 * GRAND, prepare_period: 10 * MINUTES, decision_period: 7 * DAYS, confirm_period: HOURS, @@ -189,7 +185,7 @@ const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 13 pallet_referenda::TrackInfo { name: "small_spender", max_deciding: 50, - decision_deposit: 100 * DOLLARS, + decision_deposit: 10 * GRAND, prepare_period: 4 * HOURS, decision_period: 28 * DAYS, confirm_period: 12 * HOURS, @@ -203,7 +199,7 @@ const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 13 pallet_referenda::TrackInfo { name: "medium_spender", max_deciding: 50, - decision_deposit: 200 * DOLLARS, + decision_deposit: 10 * GRAND, prepare_period: 4 * HOURS, decision_period: 28 * DAYS, confirm_period: 24 * HOURS, @@ -217,7 +213,7 @@ const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 13 pallet_referenda::TrackInfo { name: "big_spender", max_deciding: 50, - decision_deposit: 400 * DOLLARS, + decision_deposit: 10 * GRAND, prepare_period: 4 * HOURS, decision_period: 28 * DAYS, confirm_period: 48 * HOURS, @@ -247,7 +243,6 @@ impl pallet_referenda::TracksInfo for TracksInfo { // General admin origins::Origin::StakingAdmin => Ok(10), origins::Origin::Treasurer => Ok(11), - origins::Origin::FellowshipAdmin => Ok(13), origins::Origin::GeneralAdmin => Ok(14), // Referendum admins origins::Origin::ReferendumCanceller => Ok(20), diff --git a/runtime/cere-dev/src/lib.rs b/runtime/cere-dev/src/lib.rs index 566cc5bfa..ed70235b4 100644 --- a/runtime/cere-dev/src/lib.rs +++ b/runtime/cere-dev/src/lib.rs @@ -140,7 +140,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { // and set impl_version to 0. If only runtime // implementation changes and behavior does not, then leave spec_version as // is and increment impl_version. - spec_version: 53100, + spec_version: 53102, impl_version: 0, apis: RUNTIME_API_VERSIONS, transaction_version: 17, diff --git a/runtime/cere/src/governance/origins.rs b/runtime/cere/src/governance/origins.rs index dbbfebe20..7278e2bfa 100644 --- a/runtime/cere/src/governance/origins.rs +++ b/runtime/cere/src/governance/origins.rs @@ -21,8 +21,6 @@ pub mod pallet_custom_origins { /// Origin for spending up to $10,000,000 DOT from the treasury as well as generally /// administering it. Treasurer, - /// Origin for managing the composition of the fellowship. - FellowshipAdmin, /// Origin for managing the registrar. GeneralAdmin, /// Origin able to cancel referenda. @@ -76,7 +74,6 @@ pub mod pallet_custom_origins { decl_unit_ensures!( StakingAdmin, Treasurer, - FellowshipAdmin, GeneralAdmin, ReferendumCanceller, ReferendumKiller, diff --git a/runtime/cere/src/governance/tracks.rs b/runtime/cere/src/governance/tracks.rs index da3b0dce1..a3365b9d1 100644 --- a/runtime/cere/src/governance/tracks.rs +++ b/runtime/cere/src/governance/tracks.rs @@ -1,65 +1,59 @@ -// Copyright 2023 Parity Technologies (UK) Ltd. -// This file is part of Polkadot. - -// Polkadot is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// Polkadot is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with Polkadot. If not, see . - //! Track configurations for governance. +use pallet_referenda::Curve; + use super::*; const fn percent(x: i32) -> sp_arithmetic::FixedI64 { sp_arithmetic::FixedI64::from_rational(x as u128, 100) } -use pallet_referenda::Curve; + +const fn percent_perbill(x: Perbill) -> sp_arithmetic::FixedI64 { + sp_arithmetic::FixedI64::from_perbill(x) +} + const APP_ROOT: Curve = Curve::make_reciprocal(4, 28, percent(80), percent(50), percent(100)); -const SUP_ROOT: Curve = Curve::make_linear(28, 28, percent(0), percent(50)); +const SUP_ROOT: Curve = Curve::make_linear(28, 28, percent(20), percent(50)); const APP_STAKING_ADMIN: Curve = Curve::make_linear(17, 28, percent(50), percent(100)); const SUP_STAKING_ADMIN: Curve = - Curve::make_reciprocal(12, 28, percent(1), percent(0), percent(50)); + Curve::make_reciprocal(12, 28, percent(11), percent(10), percent(50)); const APP_TREASURER: Curve = Curve::make_reciprocal(4, 28, percent(80), percent(50), percent(100)); -const SUP_TREASURER: Curve = Curve::make_linear(28, 28, percent(0), percent(50)); -const APP_FELLOWSHIP_ADMIN: Curve = Curve::make_linear(17, 28, percent(50), percent(100)); -const SUP_FELLOWSHIP_ADMIN: Curve = - Curve::make_reciprocal(12, 28, percent(1), percent(0), percent(50)); +const SUP_TREASURER: Curve = Curve::make_linear(28, 28, percent(10), percent(50)); const APP_GENERAL_ADMIN: Curve = Curve::make_reciprocal(4, 28, percent(80), percent(50), percent(100)); const SUP_GENERAL_ADMIN: Curve = - Curve::make_reciprocal(7, 28, percent(10), percent(0), percent(50)); + Curve::make_reciprocal(7, 28, percent(20), percent(10), percent(50)); const APP_REFERENDUM_CANCELLER: Curve = Curve::make_linear(17, 28, percent(50), percent(100)); const SUP_REFERENDUM_CANCELLER: Curve = - Curve::make_reciprocal(12, 28, percent(1), percent(0), percent(50)); + Curve::make_reciprocal(12, 28, percent(11), percent(10), percent(50)); const APP_REFERENDUM_KILLER: Curve = Curve::make_linear(17, 28, percent(50), percent(100)); const SUP_REFERENDUM_KILLER: Curve = - Curve::make_reciprocal(12, 28, percent(1), percent(0), percent(50)); + Curve::make_reciprocal(12, 28, percent(11), percent(10), percent(50)); const APP_SMALL_TIPPER: Curve = Curve::make_linear(10, 28, percent(50), percent(100)); -const SUP_SMALL_TIPPER: Curve = Curve::make_reciprocal(1, 28, percent(4), percent(0), percent(50)); +const SUP_SMALL_TIPPER: Curve = + Curve::make_reciprocal(1, 28, percent(14), percent(10), percent(50)); const APP_BIG_TIPPER: Curve = Curve::make_linear(10, 28, percent(50), percent(100)); -const SUP_BIG_TIPPER: Curve = Curve::make_reciprocal(8, 28, percent(1), percent(0), percent(50)); +const SUP_BIG_TIPPER: Curve = Curve::make_reciprocal(8, 28, percent(11), percent(10), percent(50)); const APP_SMALL_SPENDER: Curve = Curve::make_linear(17, 28, percent(50), percent(100)); const SUP_SMALL_SPENDER: Curve = - Curve::make_reciprocal(12, 28, percent(1), percent(0), percent(50)); + Curve::make_reciprocal(12, 28, percent(11), percent(10), percent(50)); const APP_MEDIUM_SPENDER: Curve = Curve::make_linear(23, 28, percent(50), percent(100)); const SUP_MEDIUM_SPENDER: Curve = - Curve::make_reciprocal(16, 28, percent(1), percent(0), percent(50)); + Curve::make_reciprocal(16, 28, percent(11), percent(10), percent(50)); const APP_BIG_SPENDER: Curve = Curve::make_linear(28, 28, percent(50), percent(100)); -const SUP_BIG_SPENDER: Curve = Curve::make_reciprocal(20, 28, percent(1), percent(0), percent(50)); +const SUP_BIG_SPENDER: Curve = + Curve::make_reciprocal(20, 28, percent(11), percent(10), percent(50)); const APP_WHITELISTED_CALLER: Curve = Curve::make_reciprocal(16, 28 * 24, percent(96), percent(50), percent(100)); -const SUP_WHITELISTED_CALLER: Curve = - Curve::make_reciprocal(1, 28, percent(20), percent(5), percent(50)); +const SUP_WHITELISTED_CALLER: Curve = Curve::make_reciprocal( + 1, + 28, + percent_perbill(Perbill::from_parts(1_000_000)), // 0.1 % + percent_perbill(Perbill::from_parts(250_000)), // 0.025 % + percent(50), +); -const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 13] = [ +const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 12] = [ ( 0, pallet_referenda::TrackInfo { @@ -93,7 +87,7 @@ const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 13 pallet_referenda::TrackInfo { name: "staking_admin", max_deciding: 10, - decision_deposit: 5 * GRAND, + decision_deposit: 10 * GRAND, prepare_period: 2 * HOURS, decision_period: 28 * DAYS, confirm_period: 3 * HOURS, @@ -107,7 +101,7 @@ const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 13 pallet_referenda::TrackInfo { name: "treasurer", max_deciding: 10, - decision_deposit: GRAND, + decision_deposit: 10 * GRAND, prepare_period: 2 * HOURS, decision_period: 28 * DAYS, confirm_period: 3 * HOURS, @@ -116,26 +110,12 @@ const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 13 min_support: SUP_TREASURER, }, ), - ( - 13, - pallet_referenda::TrackInfo { - name: "fellowship_admin", - max_deciding: 10, - decision_deposit: 5 * GRAND, - prepare_period: 2 * HOURS, - decision_period: 28 * DAYS, - confirm_period: 3 * HOURS, - min_enactment_period: 10 * MINUTES, - min_approval: APP_FELLOWSHIP_ADMIN, - min_support: SUP_FELLOWSHIP_ADMIN, - }, - ), ( 14, pallet_referenda::TrackInfo { name: "general_admin", max_deciding: 10, - decision_deposit: 5 * GRAND, + decision_deposit: 10 * GRAND, prepare_period: 2 * HOURS, decision_period: 28 * DAYS, confirm_period: 3 * HOURS, @@ -177,7 +157,7 @@ const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 13 pallet_referenda::TrackInfo { name: "small_tipper", max_deciding: 200, - decision_deposit: DOLLARS, + decision_deposit: 10 * GRAND, prepare_period: MINUTES, decision_period: 7 * DAYS, confirm_period: 10 * MINUTES, @@ -191,7 +171,7 @@ const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 13 pallet_referenda::TrackInfo { name: "big_tipper", max_deciding: 100, - decision_deposit: 10 * DOLLARS, + decision_deposit: 10 * GRAND, prepare_period: 10 * MINUTES, decision_period: 7 * DAYS, confirm_period: HOURS, @@ -205,7 +185,7 @@ const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 13 pallet_referenda::TrackInfo { name: "small_spender", max_deciding: 50, - decision_deposit: 100 * DOLLARS, + decision_deposit: 10 * GRAND, prepare_period: 4 * HOURS, decision_period: 28 * DAYS, confirm_period: 12 * HOURS, @@ -219,7 +199,7 @@ const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 13 pallet_referenda::TrackInfo { name: "medium_spender", max_deciding: 50, - decision_deposit: 200 * DOLLARS, + decision_deposit: 10 * GRAND, prepare_period: 4 * HOURS, decision_period: 28 * DAYS, confirm_period: 24 * HOURS, @@ -233,7 +213,7 @@ const TRACKS_DATA: [(u16, pallet_referenda::TrackInfo); 13 pallet_referenda::TrackInfo { name: "big_spender", max_deciding: 50, - decision_deposit: 400 * DOLLARS, + decision_deposit: 10 * GRAND, prepare_period: 4 * HOURS, decision_period: 28 * DAYS, confirm_period: 48 * HOURS, @@ -263,7 +243,6 @@ impl pallet_referenda::TracksInfo for TracksInfo { // General admin origins::Origin::StakingAdmin => Ok(10), origins::Origin::Treasurer => Ok(11), - origins::Origin::FellowshipAdmin => Ok(13), origins::Origin::GeneralAdmin => Ok(14), // Referendum admins origins::Origin::ReferendumCanceller => Ok(20), diff --git a/runtime/cere/src/lib.rs b/runtime/cere/src/lib.rs index 7004749aa..45d264f86 100644 --- a/runtime/cere/src/lib.rs +++ b/runtime/cere/src/lib.rs @@ -135,7 +135,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { // and set impl_version to 0. If only runtime // implementation changes and behavior does not, then leave spec_version as // is and increment impl_version. - spec_version: 53101, + spec_version: 53102, impl_version: 0, apis: RUNTIME_API_VERSIONS, transaction_version: 17,