From 2b4c167f7b55d368ddaff3aca5e06ff82fba3bb1 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 15 Oct 2023 10:53:24 +0000 Subject: [PATCH] [CI Skip] release/stable 0.0.277 skip-checks: true --- CONTRIBUTORS | 2 +- docs/kusama/constants.md | 108 +++++++--- docs/kusama/errors.md | 166 +++++++++++++--- docs/kusama/events.md | 59 ++++-- docs/kusama/extrinsics.md | 178 ++++++++++++----- docs/kusama/runtime.md | 32 +++ docs/kusama/storage.md | 256 +++++++++++++++++------- docs/polkadot/constants.md | 197 ++----------------- docs/polkadot/errors.md | 370 +++-------------------------------- docs/polkadot/events.md | 262 ++----------------------- docs/polkadot/extrinsics.md | 312 ++++------------------------- docs/polkadot/runtime.md | 15 ++ docs/polkadot/storage.md | 280 ++++---------------------- docs/substrate/constants.md | 143 +++++++++++--- docs/substrate/errors.md | 320 ++++++++++++++++++++++++++++-- docs/substrate/events.md | 234 ++++++++++++++++++++-- docs/substrate/extrinsics.md | 213 ++++++++++++++++++-- docs/substrate/runtime.md | 43 +++- docs/substrate/storage.md | 193 +++++++++++++----- package.json | 6 +- 20 files changed, 1786 insertions(+), 1603 deletions(-) diff --git a/CONTRIBUTORS b/CONTRIBUTORS index d369875fbe..57106a3567 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -1,4 +1,4 @@ - 290 Jaco Bump dev deps (#450) + 291 Jaco Bump API (#453) 7 Kevin Veros Hamonangan Update ss58.md (#81) 5 brettkolodny Contract query subscriptions workaround in Contract FAQ (#60) 5 Jhon Update types.basics.md (#165) diff --git a/docs/kusama/constants.md b/docs/kusama/constants.md index d80f73bb66..9cbd35b5c4 100644 --- a/docs/kusama/constants.md +++ b/docs/kusama/constants.md @@ -12,6 +12,8 @@ The following sections contain the module constants, also known as parameter typ - **[balances](#balances)** +- **[beefy](#beefy)** + - **[bounties](#bounties)** - **[childBounties](#childbounties)** @@ -64,6 +66,8 @@ The following sections contain the module constants, also known as parameter typ - **[staking](#staking)** +- **[stateTrieMigration](#statetriemigration)** + - **[system](#system)** - **[timestamp](#timestamp)** @@ -116,6 +120,10 @@ ___ ### maxAuthorities: `u32` - **interface**: `api.consts.babe.maxAuthorities` - **summary**: Max number of authorities allowed + +### maxNominators: `u32` +- **interface**: `api.consts.babe.maxNominators` +- **summary**: The maximum number of nominators for each validator. ___ @@ -149,6 +157,25 @@ ___ ___ +## beefy + +### maxAuthorities: `u32` +- **interface**: `api.consts.beefy.maxAuthorities` +- **summary**: The maximum number of authorities that can be added. + +### maxNominators: `u32` +- **interface**: `api.consts.beefy.maxNominators` +- **summary**: The maximum number of nominators for each validator. + +### maxSetIdSessionEntries: `u64` +- **interface**: `api.consts.beefy.maxSetIdSessionEntries` +- **summary**: The maximum number of entries to keep in the set id to session index mapping. + + Since the `SetIdSession` map is only used for validating equivocations this value should relate to the bonding duration of whatever staking system is being used (if any). If equivocation handling is not enabled then this value can be zero. + +___ + + ## bounties ### bountyDepositBase: `u128` @@ -236,11 +263,11 @@ ___ ### minContribution: `u128` - **interface**: `api.consts.crowdloan.minContribution` -- **summary**: The minimum amount that may be contributed into a crowdloan. Should almost certainly be at least `ExistentialDeposit`. +- **summary**: The minimum amount that may be contributed into a crowdloan. Should almost certainly be at least `ExistentialDeposit`. ### palletId: `FrameSupportPalletId` - **interface**: `api.consts.crowdloan.palletId` -- **summary**: `PalletId` for the crowdloan pallet. An appropriate value could be `PalletId(*b"py/cfund")` +- **summary**: `PalletId` for the crowdloan pallet. An appropriate value could be `PalletId(*b"py/cfund")` ### removeKeysLimit: `u32` - **interface**: `api.consts.crowdloan.removeKeysLimit` @@ -259,14 +286,6 @@ ___ - **interface**: `api.consts.electionProviderMultiPhase.betterUnsignedThreshold` - **summary**: The minimum amount of improvement to the solution score that defines a solution as "better" in the Unsigned phase. -### maxElectableTargets: `u16` -- **interface**: `api.consts.electionProviderMultiPhase.maxElectableTargets` -- **summary**: The maximum number of electable targets to put in the snapshot. - -### maxElectingVoters: `u32` -- **interface**: `api.consts.electionProviderMultiPhase.maxElectingVoters` -- **summary**: The maximum number of electing voters to put in the snapshot. At the moment, snapshots are only over a single block, but once multi-block elections are introduced they will take place over multiple blocks. - ### maxWinners: `u32` - **interface**: `api.consts.electionProviderMultiPhase.maxWinners` - **summary**: The maximum number of winners that can be elected by this `ElectionProvider` implementation. @@ -378,6 +397,10 @@ ___ - **interface**: `api.consts.grandpa.maxAuthorities` - **summary**: Max Authorities in use +### maxNominators: `u32` +- **interface**: `api.consts.grandpa.maxNominators` +- **summary**: The maximum number of nominators for each validator. + ### maxSetIdSessionEntries: `u64` - **interface**: `api.consts.grandpa.maxSetIdSessionEntries` - **summary**: The maximum number of entries to keep in the set id to session index mapping. @@ -686,7 +709,7 @@ ___ ### paraDeposit: `u128` - **interface**: `api.consts.registrar.paraDeposit` -- **summary**: The deposit to be paid to run a parathread. This should include the cost for storing the genesis head and validation code. +- **summary**: The deposit to be paid to run a on-demand parachain. This should include the cost for storing the genesis head and validation code. ___ @@ -721,25 +744,29 @@ ___ ## society -### candidateDeposit: `u128` -- **interface**: `api.consts.society.candidateDeposit` -- **summary**: The minimum amount of a deposit required for a bid to be made. - ### challengePeriod: `u32` - **interface**: `api.consts.society.challengePeriod` - **summary**: The number of blocks between membership challenges. -### maxCandidateIntake: `u32` -- **interface**: `api.consts.society.maxCandidateIntake` -- **summary**: The maximum number of candidates that we accept per round. +### claimPeriod: `u32` +- **interface**: `api.consts.society.claimPeriod` +- **summary**: The number of blocks on which new candidates can claim their membership and be the named head. + +### graceStrikes: `u32` +- **interface**: `api.consts.society.graceStrikes` +- **summary**: The maximum number of strikes before a member gets funds slashed. + +### maxBids: `u32` +- **interface**: `api.consts.society.maxBids` +- **summary**: The maximum number of bids at once. ### maxLockDuration: `u32` - **interface**: `api.consts.society.maxLockDuration` - **summary**: The maximum duration of the payout lock. -### maxStrikes: `u32` -- **interface**: `api.consts.society.maxStrikes` -- **summary**: The number of times a member may vote the wrong way (or not at all, when they are a skeptic) before they become suspended. +### maxPayouts: `u32` +- **interface**: `api.consts.society.maxPayouts` +- **summary**: The maximum number of payouts a member may have waiting unclaimed. ### palletId: `FrameSupportPalletId` - **interface**: `api.consts.society.palletId` @@ -749,13 +776,9 @@ ___ - **interface**: `api.consts.society.periodSpend` - **summary**: The amount of incentive paid within each period. Doesn't include VoterTip. -### rotationPeriod: `u32` -- **interface**: `api.consts.society.rotationPeriod` -- **summary**: The number of blocks between candidate/membership rotation periods. - -### wrongSideDeduction: `u128` -- **interface**: `api.consts.society.wrongSideDeduction` -- **summary**: The amount of the unpaid reward that gets deducted in the case that either a skeptic doesn't vote or someone votes in the wrong way. +### votingPeriod: `u32` +- **interface**: `api.consts.society.votingPeriod` +- **summary**: The number of blocks on which new candidates should be voted on. Together with `ClaimPeriod`, this sums to the number of blocks between candidate intake periods. ___ @@ -778,10 +801,6 @@ ___ Note: `HistoryDepth` is used as the upper bound for the `BoundedVec` item `StakingLedger.claimed_rewards`. Setting this value lower than the existing value can lead to inconsistencies in the `StakingLedger` and will need to be handled properly in a migration. The test `reducing_history_depth_abrupt` shows this effect. -### maxNominations: `u32` -- **interface**: `api.consts.staking.maxNominations` -- **summary**: Maximum number of nominations per nominator. - ### maxNominatorRewardedPerValidator: `u32` - **interface**: `api.consts.staking.maxNominatorRewardedPerValidator` - **summary**: The maximum number of nominators rewarded for each validator. @@ -807,6 +826,31 @@ ___ ___ +## stateTrieMigration + +### maxKeyLen: `u32` +- **interface**: `api.consts.stateTrieMigration.maxKeyLen` +- **summary**: Maximal number of bytes that a key can have. + + FRAME itself does not limit the key length. The concrete value must therefore depend on your storage usage. A [`frame_support::storage::StorageNMap`] for example can have an arbitrary number of keys which are then hashed and concatenated, resulting in arbitrarily long keys. + + Use the *state migration RPC* to retrieve the length of the longest key in your storage: + + The migration will halt with a `Halted` event if this value is too small. Since there is no real penalty from over-estimating, it is advised to use a large value. The default is 512 byte. + + Some key lengths for reference: + + - [`frame_support::storage::StorageValue`]: 32 byte + + - [`frame_support::storage::StorageMap`]: 64 byte + + - [`frame_support::storage::StorageDoubleMap`]: 96 byte + + For more info see + +___ + + ## system ### blockHashCount: `u32` diff --git a/docs/kusama/errors.md b/docs/kusama/errors.md index d8e3076d52..343560732d 100644 --- a/docs/kusama/errors.md +++ b/docs/kusama/errors.md @@ -12,6 +12,8 @@ This page lists the errors that can be encountered in the different modules. - **[balances](#balances)** +- **[beefy](#beefy)** + - **[bounties](#bounties)** - **[childBounties](#childbounties)** @@ -82,6 +84,8 @@ This page lists the errors that can be encountered in the different modules. - **[staking](#staking)** +- **[stateTrieMigration](#statetriemigration)** + - **[system](#system)** - **[treasury](#treasury)** @@ -199,6 +203,23 @@ ___ ___ +## beefy + +### DuplicateOffenceReport +- **interface**: `api.errors.beefy.DuplicateOffenceReport.is` +- **summary**: A given equivocation report is valid but already previously reported. + +### InvalidEquivocationProof +- **interface**: `api.errors.beefy.InvalidEquivocationProof.is` +- **summary**: An equivocation proof provided as part of an equivocation report is invalid. + +### InvalidKeyOwnershipProof +- **interface**: `api.errors.beefy.InvalidKeyOwnershipProof.is` +- **summary**: A key ownership proof provided as part of an equivocation report is invalid. + +___ + + ## bounties ### HasActiveChildBounty @@ -277,7 +298,7 @@ ___ ### PotUnderflow - **interface**: `api.errors.claims.PotUnderflow.is` -- **summary**: There's not enough in the pot to pay out some unvested amount. Generally implies a logic error. +- **summary**: There's not enough in the pot to pay out some unvested amount. Generally implies a logic error. ### SenderHasNoClaim - **interface**: `api.errors.claims.SenderHasNoClaim.is` @@ -440,7 +461,7 @@ ___ ### NotReadyToDissolve - **interface**: `api.errors.crowdloan.NotReadyToDissolve.is` -- **summary**: The crowdloan is not ready to dissolve. Potentially still has a slot or in retirement period. +- **summary**: The crowdloan is not ready to dissolve. Potentially still has a slot or in retirement period. ### Overflow - **interface**: `api.errors.crowdloan.Overflow.is` @@ -898,6 +919,12 @@ ___ - **interface**: `api.errors.messageQueue.Queued.is` - **summary**: The message is queued for future execution. +### QueuePaused +- **interface**: `api.errors.messageQueue.QueuePaused.is` +- **summary**: The queue is paused and no message can be executed from it. + + This can change at any time and may resolve in the future by re-trying. + ### TemporarilyUnprocessable - **interface**: `api.errors.messageQueue.TemporarilyUnprocessable.is` - **summary**: This message is temporarily unprocessable. @@ -1104,6 +1131,10 @@ ___ - **interface**: `api.errors.nominationPools.CommissionChangeThrottled.is` - **summary**: Not enough blocks have surpassed since the last commission update. +### CommissionExceedsGlobalMaximum +- **interface**: `api.errors.nominationPools.CommissionExceedsGlobalMaximum.is` +- **summary**: The supplied commission exceeds global maximum commission. + ### CommissionExceedsMaximum - **interface**: `api.errors.nominationPools.CommissionExceedsMaximum.is` - **summary**: The supplied commission exceeds the max allowed commission. @@ -1219,14 +1250,14 @@ ___ - **interface**: `api.errors.paraInclusion.BitfieldReferencesFreedCore.is` - **summary**: A bitfield that references a freed core, either intentionally or as part of a concluded invalid dispute. -### CandidateNotInParentContext -- **interface**: `api.errors.paraInclusion.CandidateNotInParentContext.is` -- **summary**: Candidate not in parent context. - ### CandidateScheduledBeforeParaFree - **interface**: `api.errors.paraInclusion.CandidateScheduledBeforeParaFree.is` - **summary**: Candidate scheduled despite pending candidate already existing for the para. +### DisallowedRelayParent +- **interface**: `api.errors.paraInclusion.DisallowedRelayParent.is` +- **summary**: The candidate's relay-parent was not allowed. Either it was not recent enough or it didn't advance based on the last parachain block. + ### HeadDataTooLarge - **interface**: `api.errors.paraInclusion.HeadDataTooLarge.is` - **summary**: Head data exceeds the configured maximum. @@ -1243,6 +1274,10 @@ ___ - **interface**: `api.errors.paraInclusion.InsufficientBacking.is` - **summary**: Insufficient (non-majority) backing. +### InvalidAssignment +- **interface**: `api.errors.paraInclusion.InvalidAssignment.is` +- **summary**: Failed to compute group index for the core: either it's out of bounds or the relay parent doesn't belong to the current session. + ### InvalidBacking - **interface**: `api.errors.paraInclusion.InvalidBacking.is` - **summary**: Invalid (bad signature, unknown validator, etc.) backing. @@ -1277,7 +1312,7 @@ ___ ### ParaHeadMismatch - **interface**: `api.errors.paraInclusion.ParaHeadMismatch.is` -- **summary**: The `para_head` hash in the candidate descriptor doesn't match the hash of the actual para head in the commitments. +- **summary**: The `para_head` hash in the candidate descriptor doesn't match the hash of the actual para head in the commitments. ### PrematureCodeUpgrade - **interface**: `api.errors.paraInclusion.PrematureCodeUpgrade.is` @@ -1318,10 +1353,6 @@ ___ ### WrongBitfieldSize - **interface**: `api.errors.paraInclusion.WrongBitfieldSize.is` - **summary**: Availability bitfield has unexpected size. - -### WrongCollator -- **interface**: `api.errors.paraInclusion.WrongCollator.is` -- **summary**: Candidate included with the wrong collator. ___ @@ -1359,7 +1390,7 @@ ___ ### CannotDowngrade - **interface**: `api.errors.paras.CannotDowngrade.is` -- **summary**: Para cannot be downgraded to a parathread. +- **summary**: Para cannot be downgraded to an on-demand parachain. ### CannotOffboard - **interface**: `api.errors.paras.CannotOffboard.is` @@ -1371,7 +1402,7 @@ ___ ### CannotUpgrade - **interface**: `api.errors.paras.CannotUpgrade.is` -- **summary**: Para cannot be upgraded to a parachain. +- **summary**: Para cannot be upgraded to a lease holding parachain. ### CannotUpgradeCode - **interface**: `api.errors.paras.CannotUpgradeCode.is` @@ -1682,15 +1713,15 @@ ___ ### CannotDowngrade - **interface**: `api.errors.registrar.CannotDowngrade.is` -- **summary**: Cannot schedule downgrade of parachain to parathread +- **summary**: Cannot schedule downgrade of lease holding parachain to on-demand parachain ### CannotSwap - **interface**: `api.errors.registrar.CannotSwap.is` -- **summary**: Cannot perform a parachain slot / lifecycle swap. Check that the state of both paras are correct for the swap to work. +- **summary**: Cannot perform a parachain slot / lifecycle swap. Check that the state of both paras are correct for the swap to work. ### CannotUpgrade - **interface**: `api.errors.registrar.CannotUpgrade.is` -- **summary**: Cannot schedule upgrade of parathread to parachain +- **summary**: Cannot schedule upgrade of on-demand parachain to lease holding parachain ### CodeTooLarge - **interface**: `api.errors.registrar.CodeTooLarge.is` @@ -1714,7 +1745,7 @@ ___ ### NotParathread - **interface**: `api.errors.registrar.NotParathread.is` -- **summary**: Para is not a Parathread. +- **summary**: Para is not a Parathread (on-demand parachain). ### NotRegistered - **interface**: `api.errors.registrar.NotRegistered.is` @@ -1726,7 +1757,7 @@ ___ ### ParaLocked - **interface**: `api.errors.registrar.ParaLocked.is` -- **summary**: Para is locked from manipulation by the manager. Must use parachain or relay chain governance. +- **summary**: Para is locked from manipulation by the manager. Must use parachain or relay chain governance. ___ @@ -1804,6 +1835,10 @@ ___ - **interface**: `api.errors.society.AlreadyCandidate.is` - **summary**: User is already a candidate. +### AlreadyElevated +- **interface**: `api.errors.society.AlreadyElevated.is` +- **summary**: The member is already elevated to this rank. + ### AlreadyFounded - **interface**: `api.errors.society.AlreadyFounded.is` - **summary**: Society already founded. @@ -1812,13 +1847,21 @@ ___ - **interface**: `api.errors.society.AlreadyMember.is` - **summary**: User is already a member. +### AlreadyPunished +- **interface**: `api.errors.society.AlreadyPunished.is` +- **summary**: The skeptic has already been punished for this offence. + ### AlreadyVouching - **interface**: `api.errors.society.AlreadyVouching.is` - **summary**: Member is already vouching or banned from vouching again. -### BadPosition -- **interface**: `api.errors.society.BadPosition.is` -- **summary**: An incorrect position was provided. +### Approved +- **interface**: `api.errors.society.Approved.is` +- **summary**: The candidacy cannot be dropped as the candidate was clearly approved. + +### Expired +- **interface**: `api.errors.society.Expired.is` +- **summary**: The skeptic need not vote on candidates from expired rounds. ### Founder - **interface**: `api.errors.society.Founder.is` @@ -1828,6 +1871,14 @@ ___ - **interface**: `api.errors.society.Head.is` - **summary**: Cannot remove the head of the chain. +### InProgress +- **interface**: `api.errors.society.InProgress.is` +- **summary**: The candidacy cannot be concluded as the voting is still in progress. + +### InsufficientFunds +- **interface**: `api.errors.society.InsufficientFunds.is` +- **summary**: Funds are insufficient to pay off society debts. + ### InsufficientPot - **interface**: `api.errors.society.InsufficientPot.is` - **summary**: Not enough in pot to accept candidate. @@ -1836,10 +1887,22 @@ ___ - **interface**: `api.errors.society.MaxMembers.is` - **summary**: Too many members in the society. +### NoDefender +- **interface**: `api.errors.society.NoDefender.is` +- **summary**: There is no defender currently. + ### NoPayout - **interface**: `api.errors.society.NoPayout.is` - **summary**: Nothing to payout. +### NotApproved +- **interface**: `api.errors.society.NotApproved.is` +- **summary**: The membership cannot be claimed as the candidate was not clearly approved. + +### NotBidder +- **interface**: `api.errors.society.NotBidder.is` +- **summary**: User is not a bidder. + ### NotCandidate - **interface**: `api.errors.society.NotCandidate.is` - **summary**: User is not a candidate. @@ -1848,6 +1911,10 @@ ___ - **interface**: `api.errors.society.NotFounder.is` - **summary**: The caller is not the founder. +### NotGroup +- **interface**: `api.errors.society.NotGroup.is` +- **summary**: Group doesn't exist. + ### NotHead - **interface**: `api.errors.society.NotHead.is` - **summary**: The caller is not the head. @@ -1856,17 +1923,37 @@ ___ - **interface**: `api.errors.society.NotMember.is` - **summary**: User is not a member. +### NotRejected +- **interface**: `api.errors.society.NotRejected.is` +- **summary**: The candidate cannot be kicked as the candidate was not clearly rejected. + ### NotSuspended - **interface**: `api.errors.society.NotSuspended.is` - **summary**: User is not suspended. -### NotVouching -- **interface**: `api.errors.society.NotVouching.is` +### NotVouchingOnBidder +- **interface**: `api.errors.society.NotVouchingOnBidder.is` - **summary**: Member is not vouching. +### NoVotes +- **interface**: `api.errors.society.NoVotes.is` +- **summary**: The candidate/defender has no stale votes to remove. + +### Rejected +- **interface**: `api.errors.society.Rejected.is` +- **summary**: The candidacy cannot be bestowed as the candidate was clearly rejected. + ### Suspended - **interface**: `api.errors.society.Suspended.is` - **summary**: User is suspended. + +### TooEarly +- **interface**: `api.errors.society.TooEarly.is` +- **summary**: The candidacy cannot be pruned until a full additional intake period has passed. + +### Voted +- **interface**: `api.errors.society.Voted.is` +- **summary**: The skeptic already voted. ___ @@ -1976,6 +2063,37 @@ ___ ___ +## stateTrieMigration + +### BadChildRoot +- **interface**: `api.errors.stateTrieMigration.BadChildRoot.is` +- **summary**: Bad child root provided. + +### BadWitness +- **interface**: `api.errors.stateTrieMigration.BadWitness.is` +- **summary**: Bad witness data provided. + +### KeyTooLong +- **interface**: `api.errors.stateTrieMigration.KeyTooLong.is` +- **summary**: A key was longer than the configured maximum. + + This means that the migration halted at the current [`Progress`] and can be resumed with a larger [`crate::Config::MaxKeyLen`] value. Retrying with the same [`crate::Config::MaxKeyLen`] value will not work. The value should only be increased to avoid a storage migration for the currently stored [`crate::Progress::LastKey`]. + +### MaxSignedLimits +- **interface**: `api.errors.stateTrieMigration.MaxSignedLimits.is` +- **summary**: Max signed limits not respected. + +### NotEnoughFunds +- **interface**: `api.errors.stateTrieMigration.NotEnoughFunds.is` +- **summary**: submitter does not have enough funds. + +### SignedMigrationNotAllowed +- **interface**: `api.errors.stateTrieMigration.SignedMigrationNotAllowed.is` +- **summary**: Signed migration is not allowed because the maximum limit is not set yet. + +___ + + ## system ### CallFiltered @@ -2164,7 +2282,7 @@ ___ ### SendFailure - **interface**: `api.errors.xcmPallet.SendFailure.is` -- **summary**: There was some other issue (i.e. not to do with routing) in sending the message. Perhaps a lack of space for buffering the message. +- **summary**: There was some other issue (i.e. not to do with routing) in sending the message. Perhaps a lack of space for buffering the message. ### TooManyAssets - **interface**: `api.errors.xcmPallet.TooManyAssets.is` diff --git a/docs/kusama/events.md b/docs/kusama/events.md index 2ce70f2099..74d7889ea3 100644 --- a/docs/kusama/events.md +++ b/docs/kusama/events.md @@ -76,6 +76,8 @@ Events are emitted for certain operations on the runtime. The following sections - **[staking](#staking)** +- **[stateTrieMigration](#statetriemigration)** + - **[system](#system)** - **[transactionPayment](#transactionpayment)** @@ -112,7 +114,7 @@ ___ ### ReserveConfiscated(`u32`, `AccountId32`, `u128`) - **interface**: `api.events.auctions.ReserveConfiscated.is` -- **summary**: Someone attempted to lease the same slot twice for a parachain. The amount is held in reserve but no parachain slot has been leased. +- **summary**: Someone attempted to lease the same slot twice for a parachain. The amount is held in reserve but no parachain slot has been leased. ### Reserved(`AccountId32`, `u128`, `u128`) - **interface**: `api.events.auctions.Reserved.is` @@ -124,7 +126,7 @@ ___ ### WinningOffset(`u32`, `u32`) - **interface**: `api.events.auctions.WinningOffset.is` -- **summary**: The winning offset was chosen for an auction. This will map into the `Winning` storage map. +- **summary**: The winning offset was chosen for an auction. This will map into the `Winning` storage map. ___ @@ -860,15 +862,15 @@ ___ ## paraInclusion -### CandidateBacked(`PolkadotPrimitivesV4CandidateReceipt`, `Bytes`, `u32`, `u32`) +### CandidateBacked(`PolkadotPrimitivesV5CandidateReceipt`, `Bytes`, `u32`, `u32`) - **interface**: `api.events.paraInclusion.CandidateBacked.is` - **summary**: A candidate was backed. `[candidate, head_data]` -### CandidateIncluded(`PolkadotPrimitivesV4CandidateReceipt`, `Bytes`, `u32`, `u32`) +### CandidateIncluded(`PolkadotPrimitivesV5CandidateReceipt`, `Bytes`, `u32`, `u32`) - **interface**: `api.events.paraInclusion.CandidateIncluded.is` - **summary**: A candidate was included. `[candidate, head_data]` -### CandidateTimedOut(`PolkadotPrimitivesV4CandidateReceipt`, `Bytes`, `u32`) +### CandidateTimedOut(`PolkadotPrimitivesV5CandidateReceipt`, `Bytes`, `u32`) - **interface**: `api.events.paraInclusion.CandidateTimedOut.is` - **summary**: A candidate timed out. `[candidate, head_data]` @@ -1165,6 +1167,10 @@ ___ - **interface**: `api.events.society.Deposit.is` - **summary**: Some funds were deposited into the society account. +### Elevated(`AccountId32`, `u32`) +- **interface**: `api.events.society.Elevated.is` +- **summary**: A \[member\] got elevated to \[rank\]. + ### Founded(`AccountId32`) - **interface**: `api.events.society.Founded.is` - **summary**: The society is founded by the given identity. @@ -1177,13 +1183,9 @@ ___ - **interface**: `api.events.society.MemberSuspended.is` - **summary**: A member has been suspended -### NewMaxMembers(`u32`) -- **interface**: `api.events.society.NewMaxMembers.is` -- **summary**: A new \[max\] member count has been set - -### SkepticsChosen(`Vec`) -- **interface**: `api.events.society.SkepticsChosen.is` -- **summary**: A group of members has been choosen as Skeptics +### NewParams(`PalletSocietyGroupParams`) +- **interface**: `api.events.society.NewParams.is` +- **summary**: A new set of \[params\] has been set for the group. ### SuspendedMemberJudgement(`AccountId32`, `bool`) - **interface**: `api.events.society.SuspendedMemberJudgement.is` @@ -1256,6 +1258,14 @@ ___ - **interface**: `api.events.staking.SlashReported.is` - **summary**: A slash for the given validator, for the given percentage of their stake, at the given era as been reported. +### SnapshotTargetsSizeExceeded(`u32`) +- **interface**: `api.events.staking.SnapshotTargetsSizeExceeded.is` +- **summary**: Targets size limit reached. + +### SnapshotVotersSizeExceeded(`u32`) +- **interface**: `api.events.staking.SnapshotVotersSizeExceeded.is` +- **summary**: Voters size limit reached. + ### StakersElected() - **interface**: `api.events.staking.StakersElected.is` - **summary**: A new set of stakers was elected. @@ -1279,6 +1289,27 @@ ___ ___ +## stateTrieMigration + +### AutoMigrationFinished() +- **interface**: `api.events.stateTrieMigration.AutoMigrationFinished.is` +- **summary**: The auto migration task finished. + +### Halted(`PalletStateTrieMigrationError`) +- **interface**: `api.events.stateTrieMigration.Halted.is` +- **summary**: Migration got halted due to an error or miss-configuration. + +### Migrated(`u32`, `u32`, `PalletStateTrieMigrationMigrationCompute`) +- **interface**: `api.events.stateTrieMigration.Migrated.is` +- **summary**: Given number of `(top, child)` keys were migrated respectively, with the given `compute`. + +### Slashed(`AccountId32`, `u128`) +- **interface**: `api.events.stateTrieMigration.Slashed.is` +- **summary**: Some account got slashed by the given amount. + +___ + + ## system ### CodeUpdated() @@ -1479,7 +1510,7 @@ ___ ### NotifyOverweight(`u64`, `u8`, `u8`, `SpWeightsWeightV2Weight`, `SpWeightsWeightV2Weight`) - **interface**: `api.events.xcmPallet.NotifyOverweight.is` -- **summary**: Query response has been received and query is removed. The registered notification could not be dispatched because the dispatch weight is greater than the maximum weight originally budgeted by this runtime for the query result. +- **summary**: Query response has been received and query is removed. The registered notification could not be dispatched because the dispatch weight is greater than the maximum weight originally budgeted by this runtime for the query result. ### NotifyTargetMigrationFail(`XcmVersionedMultiLocation`, `u64`) - **interface**: `api.events.xcmPallet.NotifyTargetMigrationFail.is` @@ -1525,4 +1556,4 @@ ___ ### VersionNotifyUnrequested(`XcmV3MultiLocation`, `XcmV3MultiassetMultiAssets`, `[u8;32]`) - **interface**: `api.events.xcmPallet.VersionNotifyUnrequested.is` -- **summary**: We have requested that a remote chain stops sending us XCM version change notifications. +- **summary**: We have requested that a remote chain stops sending us XCM version change notifications. diff --git a/docs/kusama/extrinsics.md b/docs/kusama/extrinsics.md index ad0f6ff45f..567db6a61f 100644 --- a/docs/kusama/extrinsics.md +++ b/docs/kusama/extrinsics.md @@ -12,6 +12,8 @@ The following sections contain Extrinsics methods are part of the default Kusama - **[balances](#balances)** +- **[beefy](#beefy)** + - **[bounties](#bounties)** - **[childBounties](#childbounties)** @@ -86,6 +88,8 @@ The following sections contain Extrinsics methods are part of the default Kusama - **[staking](#staking)** +- **[stateTrieMigration](#statetriemigration)** + - **[system](#system)** - **[timestamp](#timestamp)** @@ -181,6 +185,19 @@ ___ ___ +## beefy + +### reportEquivocation(equivocation_proof: `SpConsensusBeefyEquivocationProof`, key_owner_proof: `SpSessionMembershipProof`) +- **interface**: `api.tx.beefy.reportEquivocation` +- **summary**: See [`Pallet::report_equivocation`]. + +### reportEquivocationUnsigned(equivocation_proof: `SpConsensusBeefyEquivocationProof`, key_owner_proof: `SpSessionMembershipProof`) +- **interface**: `api.tx.beefy.reportEquivocationUnsigned` +- **summary**: See [`Pallet::report_equivocation_unsigned`]. + +___ + + ## bounties ### acceptCurator(bounty_id: `Compact`) @@ -290,10 +307,6 @@ ___ - **interface**: `api.tx.configuration.setBypassConsistencyCheck` - **summary**: See [`Pallet::set_bypass_consistency_check`]. -### setChainAvailabilityPeriod(new: `u32`) -- **interface**: `api.tx.configuration.setChainAvailabilityPeriod` -- **summary**: See [`Pallet::set_chain_availability_period`]. - ### setCodeRetentionPeriod(new: `u32`) - **interface**: `api.tx.configuration.setCodeRetentionPeriod` - **summary**: See [`Pallet::set_code_retention_period`]. @@ -306,7 +319,7 @@ ___ - **interface**: `api.tx.configuration.setDisputePostConclusionAcceptancePeriod` - **summary**: See [`Pallet::set_dispute_post_conclusion_acceptance_period`]. -### setExecutorParams(new: `PolkadotPrimitivesV4ExecutorParams`) +### setExecutorParams(new: `PolkadotPrimitivesV5ExecutorParams`) - **interface**: `api.tx.configuration.setExecutorParams` - **summary**: See [`Pallet::set_executor_params`]. @@ -338,14 +351,6 @@ ___ - **interface**: `api.tx.configuration.setHrmpMaxParachainOutboundChannels` - **summary**: See [`Pallet::set_hrmp_max_parachain_outbound_channels`]. -### setHrmpMaxParathreadInboundChannels(new: `u32`) -- **interface**: `api.tx.configuration.setHrmpMaxParathreadInboundChannels` -- **summary**: See [`Pallet::set_hrmp_max_parathread_inbound_channels`]. - -### setHrmpMaxParathreadOutboundChannels(new: `u32`) -- **interface**: `api.tx.configuration.setHrmpMaxParathreadOutboundChannels` -- **summary**: See [`Pallet::set_hrmp_max_parathread_outbound_channels`]. - ### setHrmpOpenRequestTtl(new: `u32`) - **interface**: `api.tx.configuration.setHrmpOpenRequestTtl` - **summary**: See [`Pallet::set_hrmp_open_request_ttl`]. @@ -414,17 +419,37 @@ ___ - **interface**: `api.tx.configuration.setNoShowSlots` - **summary**: See [`Pallet::set_no_show_slots`]. -### setParathreadCores(new: `u32`) -- **interface**: `api.tx.configuration.setParathreadCores` -- **summary**: See [`Pallet::set_parathread_cores`]. +### setOnDemandBaseFee(new: `u128`) +- **interface**: `api.tx.configuration.setOnDemandBaseFee` +- **summary**: See [`Pallet::set_on_demand_base_fee`]. + +### setOnDemandCores(new: `u32`) +- **interface**: `api.tx.configuration.setOnDemandCores` +- **summary**: See [`Pallet::set_on_demand_cores`]. + +### setOnDemandFeeVariability(new: `Perbill`) +- **interface**: `api.tx.configuration.setOnDemandFeeVariability` +- **summary**: See [`Pallet::set_on_demand_fee_variability`]. + +### setOnDemandQueueMaxSize(new: `u32`) +- **interface**: `api.tx.configuration.setOnDemandQueueMaxSize` +- **summary**: See [`Pallet::set_on_demand_queue_max_size`]. -### setParathreadRetries(new: `u32`) -- **interface**: `api.tx.configuration.setParathreadRetries` -- **summary**: See [`Pallet::set_parathread_retries`]. +### setOnDemandRetries(new: `u32`) +- **interface**: `api.tx.configuration.setOnDemandRetries` +- **summary**: See [`Pallet::set_on_demand_retries`]. -### setPvfCheckingEnabled(new: `bool`) -- **interface**: `api.tx.configuration.setPvfCheckingEnabled` -- **summary**: See [`Pallet::set_pvf_checking_enabled`]. +### setOnDemandTargetQueueUtilization(new: `Perbill`) +- **interface**: `api.tx.configuration.setOnDemandTargetQueueUtilization` +- **summary**: See [`Pallet::set_on_demand_target_queue_utilization`]. + +### setOnDemandTtl(new: `u32`) +- **interface**: `api.tx.configuration.setOnDemandTtl` +- **summary**: See [`Pallet::set_on_demand_ttl`]. + +### setParasAvailabilityPeriod(new: `u32`) +- **interface**: `api.tx.configuration.setParasAvailabilityPeriod` +- **summary**: See [`Pallet::set_paras_availability_period`]. ### setPvfVotingTtl(new: `u32`) - **interface**: `api.tx.configuration.setPvfVotingTtl` @@ -438,10 +463,6 @@ ___ - **interface**: `api.tx.configuration.setSchedulingLookahead` - **summary**: See [`Pallet::set_scheduling_lookahead`]. -### setThreadAvailabilityPeriod(new: `u32`) -- **interface**: `api.tx.configuration.setThreadAvailabilityPeriod` -- **summary**: See [`Pallet::set_thread_availability_period`]. - ### setValidationUpgradeCooldown(new: `u32`) - **interface**: `api.tx.configuration.setValidationUpgradeCooldown` - **summary**: See [`Pallet::set_validation_upgrade_cooldown`]. @@ -1005,7 +1026,7 @@ ___ ## paraInherent -### enter(data: `PolkadotPrimitivesV4InherentData`) +### enter(data: `PolkadotPrimitivesV5InherentData`) - **interface**: `api.tx.paraInherent.enter` - **summary**: See [`Pallet::enter`]. @@ -1038,7 +1059,11 @@ ___ - **interface**: `api.tx.paras.forceSetCurrentHead` - **summary**: See [`Pallet::force_set_current_head`]. -### includePvfCheckStatement(stmt: `PolkadotPrimitivesV4PvfCheckStatement`, signature: `PolkadotPrimitivesV4ValidatorAppSignature`) +### forceSetMostRecentContext(para: `u32`, context: `u32`) +- **interface**: `api.tx.paras.forceSetMostRecentContext` +- **summary**: See [`Pallet::force_set_most_recent_context`]. + +### includePvfCheckStatement(stmt: `PolkadotPrimitivesV5PvfCheckStatement`, signature: `PolkadotPrimitivesV5ValidatorAppSignature`) - **interface**: `api.tx.paras.includePvfCheckStatement` - **summary**: See [`Pallet::include_pvf_check_statement`]. @@ -1065,7 +1090,7 @@ ___ ## parasSlashing -### reportDisputeLostUnsigned(dispute_proof: `PolkadotPrimitivesVstagingSlashingDisputeProof`, key_owner_proof: `SpSessionMembershipProof`) +### reportDisputeLostUnsigned(dispute_proof: `PolkadotPrimitivesV5SlashingDisputeProof`, key_owner_proof: `SpSessionMembershipProof`) - **interface**: `api.tx.parasSlashing.reportDisputeLostUnsigned` - **summary**: See [`Pallet::report_dispute_lost_unsigned`]. @@ -1322,43 +1347,71 @@ ___ ## society +### bestowMembership(candidate: `AccountId32`) +- **interface**: `api.tx.society.bestowMembership` +- **summary**: See [`Pallet::bestow_membership`]. + ### bid(value: `u128`) - **interface**: `api.tx.society.bid` - **summary**: See [`Pallet::bid`]. +### claimMembership() +- **interface**: `api.tx.society.claimMembership` +- **summary**: See [`Pallet::claim_membership`]. + +### cleanupCandidacy(candidate: `AccountId32`, max: `u32`) +- **interface**: `api.tx.society.cleanupCandidacy` +- **summary**: See [`Pallet::cleanup_candidacy`]. + +### cleanupChallenge(challenge_round: `u32`, max: `u32`) +- **interface**: `api.tx.society.cleanupChallenge` +- **summary**: See [`Pallet::cleanup_challenge`]. + ### defenderVote(approve: `bool`) - **interface**: `api.tx.society.defenderVote` - **summary**: See [`Pallet::defender_vote`]. -### found(founder: `MultiAddress`, max_members: `u32`, rules: `Bytes`) -- **interface**: `api.tx.society.found` -- **summary**: See [`Pallet::found`]. +### dissolve() +- **interface**: `api.tx.society.dissolve` +- **summary**: See [`Pallet::dissolve`]. + +### dropCandidate(candidate: `AccountId32`) +- **interface**: `api.tx.society.dropCandidate` +- **summary**: See [`Pallet::drop_candidate`]. -### judgeSuspendedCandidate(who: `MultiAddress`, judgement: `PalletSocietyJudgement`) -- **interface**: `api.tx.society.judgeSuspendedCandidate` -- **summary**: See [`Pallet::judge_suspended_candidate`]. +### foundSociety(founder: `MultiAddress`, max_members: `u32`, max_intake: `u32`, max_strikes: `u32`, candidate_deposit: `u128`, rules: `Bytes`) +- **interface**: `api.tx.society.foundSociety` +- **summary**: See [`Pallet::found_society`]. ### judgeSuspendedMember(who: `MultiAddress`, forgive: `bool`) - **interface**: `api.tx.society.judgeSuspendedMember` - **summary**: See [`Pallet::judge_suspended_member`]. +### kickCandidate(candidate: `AccountId32`) +- **interface**: `api.tx.society.kickCandidate` +- **summary**: See [`Pallet::kick_candidate`]. + ### payout() - **interface**: `api.tx.society.payout` - **summary**: See [`Pallet::payout`]. -### setMaxMembers(max: `u32`) -- **interface**: `api.tx.society.setMaxMembers` -- **summary**: See [`Pallet::set_max_members`]. +### punishSkeptic() +- **interface**: `api.tx.society.punishSkeptic` +- **summary**: See [`Pallet::punish_skeptic`]. -### unbid(pos: `u32`) +### resignCandidacy() +- **interface**: `api.tx.society.resignCandidacy` +- **summary**: See [`Pallet::resign_candidacy`]. + +### setParameters(max_members: `u32`, max_intake: `u32`, max_strikes: `u32`, candidate_deposit: `u128`) +- **interface**: `api.tx.society.setParameters` +- **summary**: See [`Pallet::set_parameters`]. + +### unbid() - **interface**: `api.tx.society.unbid` - **summary**: See [`Pallet::unbid`]. -### unfound() -- **interface**: `api.tx.society.unfound` -- **summary**: See [`Pallet::unfound`]. - -### unvouch(pos: `u32`) +### unvouch() - **interface**: `api.tx.society.unvouch` - **summary**: See [`Pallet::unvouch`]. @@ -1369,6 +1422,10 @@ ___ ### vouch(who: `MultiAddress`, value: `u128`, tip: `u128`) - **interface**: `api.tx.society.vouch` - **summary**: See [`Pallet::vouch`]. + +### waiveRepay(amount: `u128`) +- **interface**: `api.tx.society.waiveRepay` +- **summary**: See [`Pallet::waive_repay`]. ___ @@ -1482,6 +1539,35 @@ ___ ___ +## stateTrieMigration + +### continueMigrate(limits: `PalletStateTrieMigrationMigrationLimits`, real_size_upper: `u32`, witness_task: `PalletStateTrieMigrationMigrationTask`) +- **interface**: `api.tx.stateTrieMigration.continueMigrate` +- **summary**: See [`Pallet::continue_migrate`]. + +### controlAutoMigration(maybe_config: `Option`) +- **interface**: `api.tx.stateTrieMigration.controlAutoMigration` +- **summary**: See [`Pallet::control_auto_migration`]. + +### forceSetProgress(progress_top: `PalletStateTrieMigrationProgress`, progress_child: `PalletStateTrieMigrationProgress`) +- **interface**: `api.tx.stateTrieMigration.forceSetProgress` +- **summary**: See [`Pallet::force_set_progress`]. + +### migrateCustomChild(root: `Bytes`, child_keys: `Vec`, total_size: `u32`) +- **interface**: `api.tx.stateTrieMigration.migrateCustomChild` +- **summary**: See [`Pallet::migrate_custom_child`]. + +### migrateCustomTop(keys: `Vec`, witness_size: `u32`) +- **interface**: `api.tx.stateTrieMigration.migrateCustomTop` +- **summary**: See [`Pallet::migrate_custom_top`]. + +### setSignedMaxLimits(limits: `PalletStateTrieMigrationMigrationLimits`) +- **interface**: `api.tx.stateTrieMigration.setSignedMaxLimits` +- **summary**: See [`Pallet::set_signed_max_limits`]. + +___ + + ## system ### killPrefix(prefix: `Bytes`, subkeys: `u32`) @@ -1613,6 +1699,10 @@ ___ - **interface**: `api.tx.voterList.putInFrontOf` - **summary**: See [`Pallet::put_in_front_of`]. +### putInFrontOfOther(heavier: `MultiAddress`, lighter: `MultiAddress`) +- **interface**: `api.tx.voterList.putInFrontOfOther` +- **summary**: See [`Pallet::put_in_front_of_other`]. + ### rebag(dislocated: `MultiAddress`) - **interface**: `api.tx.voterList.rebag` - **summary**: See [`Pallet::rebag`]. diff --git a/docs/kusama/runtime.md b/docs/kusama/runtime.md index dc0b229976..7e5194cc62 100644 --- a/docs/kusama/runtime.md +++ b/docs/kusama/runtime.md @@ -12,6 +12,8 @@ The following section contains known runtime calls that may be available on spec - **[beefyApi](#beefyapi)** +- **[beefyMmrApi](#beefymmrapi)** + - **[blockBuilder](#blockbuilder)** - **[core](#core)** @@ -122,6 +124,21 @@ ___ ___ +## BeefyMmrApi + +### authoritySetProof(): `BeefyAuthoritySet` +- **interface**: `api.call.beefyMmrApi.authoritySetProof` +- **runtime**: `BeefyMmrApi_authority_set_proof` +- **summary**: Return the currently active BEEFY authority set proof. + +### nextAuthoritySetProof(): `BeefyNextAuthoritySet` +- **interface**: `api.call.beefyMmrApi.nextAuthoritySetProof` +- **runtime**: `BeefyMmrApi_next_authority_set_proof` +- **summary**: Return the next/queued BEEFY authority set proof. + +___ + + ## BlockBuilder ### applyExtrinsic(extrinsic: `Extrinsic`): `ApplyExtrinsicResult` @@ -309,6 +326,11 @@ ___ - **runtime**: `ParachainHost_inbound_hrmp_channels_contents` - **summary**: Get the contents of all channels addressed to the given recipient. +### keyOwnershipProof(validatorId: `ValidatorId`): `Option` +- **interface**: `api.call.parachainHost.keyOwnershipProof` +- **runtime**: `ParachainHost_key_ownership_proof` +- **summary**: Returns a merkle proof of a validator session key + ### onChainVotes(): `Option` - **interface**: `api.call.parachainHost.onChainVotes` - **runtime**: `ParachainHost_on_chain_votes` @@ -344,6 +366,16 @@ ___ - **runtime**: `ParachainHost_submit_pvf_check_statement` - **summary**: Submits a PVF pre-checking statement into the transaction pool. +### submitReportDisputeLost(disputeProof: `DisputeProof`, keyOwnershipProof: `OpaqueKeyOwnershipProof`): `Option` +- **interface**: `api.call.parachainHost.submitReportDisputeLost` +- **runtime**: `ParachainHost_submit_report_dispute_lost` +- **summary**: Submit an unsigned extrinsic to slash validators who lost a dispute about a candidate of a past session + +### unappliedSlashes(): `Vec<(SessionIndex, CandidateHash, PendingSlashes)>` +- **interface**: `api.call.parachainHost.unappliedSlashes` +- **runtime**: `ParachainHost_unapplied_slashes` +- **summary**: Returns a list of validators that lost a past session dispute and need to be slashed + ### validationCode(paraId: `ParaId`, assumption: `OccupiedCoreAssumption`): `ValidationCode` - **interface**: `api.call.parachainHost.validationCode` - **runtime**: `ParachainHost_validation_code` diff --git a/docs/kusama/storage.md b/docs/kusama/storage.md index 56cc050300..173b6c2b38 100644 --- a/docs/kusama/storage.md +++ b/docs/kusama/storage.md @@ -14,6 +14,10 @@ The following sections contain Storage methods are part of the default Kusama ru - **[balances](#balances)** +- **[beefy](#beefy)** + +- **[beefyMmrLeaf](#beefymmrleaf)** + - **[bounties](#bounties)** - **[childBounties](#childbounties)** @@ -50,6 +54,8 @@ The following sections contain Storage methods are part of the default Kusama ru - **[messageQueue](#messagequeue)** +- **[mmr](#mmr)** + - **[multisig](#multisig)** - **[nis](#nis)** @@ -60,6 +66,8 @@ The following sections contain Storage methods are part of the default Kusama ru - **[offences](#offences)** +- **[paraAssignmentProvider](#paraassignmentprovider)** + - **[paraInclusion](#parainclusion)** - **[paraInherent](#parainherent)** @@ -96,6 +104,8 @@ The following sections contain Storage methods are part of the default Kusama ru - **[staking](#staking)** +- **[stateTrieMigration](#statetriemigration)** + - **[substrate](#substrate)** - **[system](#system)** @@ -282,6 +292,50 @@ ___ ___ +## beefy + +### authorities(): `Vec` +- **interface**: `api.query.beefy.authorities` +- **summary**: The current authorities set + +### genesisBlock(): `Option` +- **interface**: `api.query.beefy.genesisBlock` +- **summary**: Block number where BEEFY consensus is enabled/started. By changing this (through governance or sudo), BEEFY consensus is effectively restarted from the new block number. + +### nextAuthorities(): `Vec` +- **interface**: `api.query.beefy.nextAuthorities` +- **summary**: Authorities set scheduled to be used with the next session + +### setIdSession(`u64`): `Option` +- **interface**: `api.query.beefy.setIdSession` +- **summary**: A mapping from BEEFY set ID to the index of the *most recent* session for which its members were responsible. + + This is only used for validating equivocation proofs. An equivocation proof must contains a key-ownership proof for a given session, therefore we need a way to tie together sessions and BEEFY set ids, i.e. we need to validate that a validator was the owner of a given key on a given session, and what the active set ID was during that session. + + TWOX-NOTE: `ValidatorSetId` is not under user control. + +### validatorSetId(): `u64` +- **interface**: `api.query.beefy.validatorSetId` +- **summary**: The current validator set id + +___ + + +## beefyMmrLeaf + +### beefyAuthorities(): `SpConsensusBeefyMmrBeefyAuthoritySet` +- **interface**: `api.query.beefyMmrLeaf.beefyAuthorities` +- **summary**: Details of current BEEFY authority set. + +### beefyNextAuthorities(): `SpConsensusBeefyMmrBeefyAuthoritySet` +- **interface**: `api.query.beefyMmrLeaf.beefyNextAuthorities` +- **summary**: Details of next BEEFY authority set. + + This storage entry is used as cache for calls to `update_beefy_next_authority_set`. + +___ + + ## bounties ### bounties(`u32`): `Option` @@ -698,7 +752,7 @@ ___ - **interface**: `api.query.hrmp.hrmpWatermarks` - **summary**: The HRMP watermark associated with each para. Invariant: - - each para `P` used here as a key should satisfy `Paras::is_valid_para(P)` within a session. + - each para `P` used here as a key should satisfy `Paras::is_valid_para(P)` within a session. ___ @@ -750,9 +804,9 @@ ___ - **interface**: `api.query.imOnline.keys` - **summary**: The current set of keys that may issue a heartbeat. -### receivedHeartbeats(`u32, u32`): `Option>` +### receivedHeartbeats(`u32, u32`): `Option` - **interface**: `api.query.imOnline.receivedHeartbeats` -- **summary**: For each session index, we keep a mapping of `SessionIndex` and `AuthIndex` to `WrapperOpaque`. +- **summary**: For each session index, we keep a mapping of `SessionIndex` and `AuthIndex`. ___ @@ -782,7 +836,7 @@ ___ Semantically a `bool`, but this guarantees it should never hit the trie, as this is cleared in `on_finalize` and Frame optimizes `None` values to be empty values. - As a `bool`, `set(false)` and `remove()` both lead to the next `get()` being false, but one of them writes to the trie and one does not. This confusion makes `Option<()>` more suitable for the semantics of this variable. + As a `bool`, `set(false)` and `remove()` both lead to the next `get()` being false, but one of them writes to the trie and one does not. This confusion makes `Option<()>` more suitable for the semantics of this variable. ___ @@ -804,6 +858,25 @@ ___ ___ +## mmr + +### nodes(`u64`): `Option` +- **interface**: `api.query.mmr.nodes` +- **summary**: Hashes of the nodes in the MMR. + + Note this collection only contains MMR peaks, the inner nodes (and leaves) are pruned and only stored in the Offchain DB. + +### numberOfLeaves(): `u64` +- **interface**: `api.query.mmr.numberOfLeaves` +- **summary**: Current size of the MMR (number of leaves). + +### rootHash(): `H256` +- **interface**: `api.query.mmr.rootHash` +- **summary**: Latest MMR Root hash. + +___ + + ## multisig ### multisigs(`AccountId32, [u8;32]`): `Option` @@ -987,6 +1060,11 @@ ___ ___ +## paraAssignmentProvider + +___ + + ## paraInclusion ### availabilityBitfields(`u32`): `Option` @@ -997,7 +1075,7 @@ ___ - **interface**: `api.query.paraInclusion.pendingAvailability` - **summary**: Candidates pending availability by `ParaId`. -### pendingAvailabilityCommitments(`u32`): `Option` +### pendingAvailabilityCommitments(`u32`): `Option` - **interface**: `api.query.paraInclusion.pendingAvailabilityCommitments` - **summary**: The commitments of candidates pending availability, by `ParaId`. @@ -1014,7 +1092,7 @@ ___ If this is `None` at the end of the block, we panic and render the block invalid. -### onChainVotes(): `Option` +### onChainVotes(): `Option` - **interface**: `api.query.paraInherent.onChainVotes` - **summary**: Scraped on chain data for extracting resolved disputes as well as backing votes. @@ -1057,9 +1135,13 @@ ___ - **interface**: `api.query.paras.heads` - **summary**: The head-data of every registered para. +### mostRecentContext(`u32`): `Option` +- **interface**: `api.query.paras.mostRecentContext` +- **summary**: The context (relay-chain block number) of the most recent parachain head. + ### parachains(): `Vec` - **interface**: `api.query.paras.parachains` -- **summary**: All parachains. Ordered ascending by `ParaId`. Parathreads are not included. +- **summary**: All lease holding parachains. Ordered ascending by `ParaId`. On demand parachains are not included. Consider using the [`ParachainsCache`] type of modifying. @@ -1079,7 +1161,7 @@ ___ ### pastCodePruning(): `Vec<(u32,u32)>` - **interface**: `api.query.paras.pastCodePruning` -- **summary**: Which paras have past code that needs pruning and the relay-chain block at which the code was replaced. Note that this is the actual height of the included block, not the expected height at which the code upgrade would be applied, although they may be equal. This is to ensure the entire acceptance period is covered, not an offset acceptance period starting from the time at which the parachain perceives a code upgrade as having occurred. Multiple entries for a single para are permitted. Ordered ascending by block number. +- **summary**: Which paras have past code that needs pruning and the relay-chain block at which the code was replaced. Note that this is the actual height of the included block, not the expected height at which the code upgrade would be applied, although they may be equal. This is to ensure the entire acceptance period is covered, not an offset acceptance period starting from the time at which the parachain perceives a code upgrade as having occurred. Multiple entries for a single para are permitted. Ordered ascending by block number. ### pvfActiveVoteList(): `Vec` - **interface**: `api.query.paras.pvfActiveVoteList` @@ -1111,15 +1193,15 @@ ___ Ordered ascending by block number. -### upgradeGoAheadSignal(`u32`): `Option` +### upgradeGoAheadSignal(`u32`): `Option` - **interface**: `api.query.paras.upgradeGoAheadSignal` -- **summary**: This is used by the relay-chain to communicate to a parachain a go-ahead with in the upgrade procedure. +- **summary**: This is used by the relay-chain to communicate to a parachain a go-ahead with in the upgrade procedure. - This value is absent when there are no upgrades scheduled or during the time the relay chain performs the checks. It is set at the first relay-chain block when the corresponding parachain can switch its upgrade function. As soon as the parachain's block is included, the value gets reset to `None`. + This value is absent when there are no upgrades scheduled or during the time the relay chain performs the checks. It is set at the first relay-chain block when the corresponding parachain can switch its upgrade function. As soon as the parachain's block is included, the value gets reset to `None`. NOTE that this field is used by parachains via merkle storage proofs, therefore changing the format will require migration of parachains. -### upgradeRestrictionSignal(`u32`): `Option` +### upgradeRestrictionSignal(`u32`): `Option` - **interface**: `api.query.paras.upgradeRestrictionSignal` - **summary**: This is used by the relay-chain to communicate that there are restrictions for performing an upgrade for this parachain. @@ -1132,9 +1214,9 @@ ___ ## paraScheduler -### availabilityCores(): `Vec>` +### availabilityCores(): `Vec` - **interface**: `api.query.paraScheduler.availabilityCores` -- **summary**: One entry for each availability core. Entries are `None` if the core is not currently occupied. Can be temporarily `Some` if scheduled but not occupied. The i'th parachain belongs to the i'th core, with the remaining cores all being parathread-multiplexers. +- **summary**: One entry for each availability core. Entries are `None` if the core is not currently occupied. Can be temporarily `Some` if scheduled but not occupied. The i'th parachain belongs to the i'th core, with the remaining cores all being parathread-multiplexers. Bounded by the maximum of either of these two values: @@ -1142,29 +1224,13 @@ ___ * The number of validators divided by `configuration.max_validators_per_core`. -### parathreadClaimIndex(): `Vec` -- **interface**: `api.query.paraScheduler.parathreadClaimIndex` -- **summary**: An index used to ensure that only one claim on a parathread exists in the queue or is currently being handled by an occupied core. - - Bounded by the number of parathread cores and scheduling lookahead. Reasonably, 10 * 50 = 500. - -### parathreadQueue(): `PolkadotRuntimeParachainsSchedulerParathreadClaimQueue` -- **interface**: `api.query.paraScheduler.parathreadQueue` -- **summary**: A queue of upcoming claims and which core they should be mapped onto. - - The number of queued claims is bounded at the `scheduling_lookahead` multiplied by the number of parathread multiplexer cores. Reasonably, 10 * 50 = 500. - -### scheduled(): `Vec` -- **interface**: `api.query.paraScheduler.scheduled` -- **summary**: Currently scheduled cores - free but up to be occupied. - - Bounded by the number of cores: one for each parachain and parathread multiplexer. - - The value contained here will not be valid after the end of a block. Runtime APIs should be used to determine scheduled cores/ for the upcoming block. +### claimQueue(): `BTreeMap>>` +- **interface**: `api.query.paraScheduler.claimQueue` +- **summary**: One entry for each availability core. The `VecDeque` represents the assignments to be scheduled on that core. `None` is used to signal to not schedule the next para of the core as there is one currently being scheduled. Not using `None` here would overwrite the `CoreState` in the runtime API. The value contained here will not be valid after the end of a block. Runtime APIs should be used to determine scheduled cores/ for the upcoming block. ### sessionStartBlock(): `u32` - **interface**: `api.query.paraScheduler.sessionStartBlock` -- **summary**: The block number where the session start occurred. Used to track how many group rotations have occurred. +- **summary**: The block number where the session start occurred. Used to track how many group rotations have occurred. Note that in the context of parachains modules the session change is signaled during the block and enacted at the end of the block (at the finalization stage, to be exact). Thus for all intents and purposes the effect of the session change is observed at the block following the session change, block number of which we save in this storage value. @@ -1172,7 +1238,7 @@ ___ - **interface**: `api.query.paraScheduler.validatorGroups` - **summary**: All the validator groups. One for each core. Indices are into `ActiveValidators` - not the broader set of Polkadot validators, but instead just the subset used for parachains during this session. - Bound: The number of cores is the sum of the numbers of parachains and parathread multiplexers. Reasonably, 100-1000. The dominant factor is the number of validators: safe upper bound at 10k. + Bound: The number of cores is the sum of the numbers of parachains and parathread multiplexers. Reasonably, 100-1000. The dominant factor is the number of validators: safe upper bound at 10k. ___ @@ -1183,7 +1249,7 @@ ___ - **interface**: `api.query.parasDisputes.backersOnDisputes` - **summary**: Backing votes stored for each dispute. This storage is used for slashing. -### disputes(`u32, H256`): `Option` +### disputes(`u32, H256`): `Option` - **interface**: `api.query.parasDisputes.disputes` - **summary**: All ongoing or concluded disputes for the last several sessions. @@ -1208,7 +1274,7 @@ ___ - **interface**: `api.query.paraSessionInfo.accountKeys` - **summary**: The validator account keys of the validators actively participating in parachain consensus. -### assignmentKeysUnsafe(): `Vec` +### assignmentKeysUnsafe(): `Vec` - **interface**: `api.query.paraSessionInfo.assignmentKeysUnsafe` - **summary**: Assignment keys for the current session. Note that this API is private due to it being prone to 'off-by-one' at session boundaries. When in doubt, use `Sessions` API instead. @@ -1216,11 +1282,11 @@ ___ - **interface**: `api.query.paraSessionInfo.earliestStoredSession` - **summary**: The earliest session for which previous session info is stored. -### sessionExecutorParams(`u32`): `Option` +### sessionExecutorParams(`u32`): `Option` - **interface**: `api.query.paraSessionInfo.sessionExecutorParams` - **summary**: Executor parameter set for a given session index -### sessions(`u32`): `Option` +### sessions(`u32`): `Option` - **interface**: `api.query.paraSessionInfo.sessions` - **summary**: Session information in a rolling window. Should have an entry in range `EarliestStoredSession..=CurrentSessionIndex`. Does not have any entries before the session index in the first session change notification. @@ -1233,9 +1299,13 @@ ___ - **interface**: `api.query.parasShared.activeValidatorIndices` - **summary**: All the validators actively participating in parachain consensus. Indices are into the broader validator set. -### activeValidatorKeys(): `Vec` +### activeValidatorKeys(): `Vec` - **interface**: `api.query.parasShared.activeValidatorKeys` -- **summary**: The parachain attestation keys of the validators actively participating in parachain consensus. This should be the same length as `ActiveValidatorIndices`. +- **summary**: The parachain attestation keys of the validators actively participating in parachain consensus. This should be the same length as `ActiveValidatorIndices`. + +### allowedRelayParents(): `PolkadotRuntimeParachainsSharedAllowedRelayParentsTracker` +- **interface**: `api.query.parasShared.allowedRelayParents` +- **summary**: All allowed relay-parents. ### currentSessionIndex(): `u32` - **interface**: `api.query.parasShared.currentSessionIndex` @@ -1246,7 +1316,7 @@ ___ ## parasSlashing -### unappliedSlashes(`u32, H256`): `Option` +### unappliedSlashes(`u32, H256`): `Option` - **interface**: `api.query.parasSlashing.unappliedSlashes` - **summary**: Validators pending dispute slashes. @@ -1342,7 +1412,7 @@ ___ - **interface**: `api.query.registrar.paras` - **summary**: Amount held on deposit for each para and the original depositor. - The given account ID is responsible for registering the code and initial head data, but may only do so if it isn't yet registered. (After that, it's up to governance to do so.) + The given account ID is responsible for registering the code and initial head data, but may only do so if it isn't yet registered. (After that, it's up to governance to do so.) ### pendingSwap(`u32`): `Option` - **interface**: `api.query.registrar.pendingSwap` @@ -1410,7 +1480,7 @@ ___ - **interface**: `api.query.slots.leases` - **summary**: Amounts held on deposit for each (possibly future) leased parachain. - The actual amount locked on its behalf by any account at any time is the maximum of the second values of the items in this list whose first value is the account. + The actual amount locked on its behalf by any account at any time is the maximum of the second values of the items in this list whose first value is the account. The first item in the list is the amount locked for the current Lease Period. Following items are for the subsequent lease periods. @@ -1429,17 +1499,20 @@ ___ - **interface**: `api.query.society.bids` - **summary**: The current bids, stored ordered by the value of the bid. -### candidates(): `Vec` +### candidates(`AccountId32`): `Option` - **interface**: `api.query.society.candidates` -- **summary**: The current set of candidates; bidders that are attempting to become members. -### defender(): `Option` -- **interface**: `api.query.society.defender` -- **summary**: The defending member currently being challenged. +### challengeRoundCount(): `u32` +- **interface**: `api.query.society.challengeRoundCount` +- **summary**: The number of challenge rounds there have been. Used to identify stale DefenderVotes. -### defenderVotes(`AccountId32`): `Option` +### defenderVotes(`u32, AccountId32`): `Option` - **interface**: `api.query.society.defenderVotes` -- **summary**: Votes for the defender. +- **summary**: Votes for the defender, keyed by challenge round. + +### defending(): `Option<(AccountId32,AccountId32,PalletSocietyTally)>` +- **interface**: `api.query.society.defending` +- **summary**: The defending member currently being challenged, along with a running tally of votes. ### founder(): `Option` - **interface**: `api.query.society.founder` @@ -1447,47 +1520,59 @@ ___ ### head(): `Option` - **interface**: `api.query.society.head` -- **summary**: The most primary from the most recently approved members. +- **summary**: The most primary from the most recently approved rank 0 members in the society. -### maxMembers(): `u32` -- **interface**: `api.query.society.maxMembers` -- **summary**: The max number of members for the society at one time. +### memberByIndex(`u32`): `Option` +- **interface**: `api.query.society.memberByIndex` +- **summary**: The current items in `Members` keyed by their unique index. Keys are densely populated `0..MemberCount` (does not include `MemberCount`). -### members(): `Vec` +### memberCount(): `u32` +- **interface**: `api.query.society.memberCount` +- **summary**: The number of items in `Members` currently. (Doesn't include `SuspendedMembers`.) + +### members(`AccountId32`): `Option` - **interface**: `api.query.society.members` -- **summary**: The current set of members, ordered. +- **summary**: The current members and their rank. Doesn't include `SuspendedMembers`. + +### nextHead(): `Option` +- **interface**: `api.query.society.nextHead` +- **summary**: At the end of the claim period, this contains the most recently approved members (along with their bid and round ID) who is from the most recent round with the lowest bid. They will become the new `Head`. -### payouts(`AccountId32`): `Vec<(u32,u128)>` +### parameters(): `Option` +- **interface**: `api.query.society.parameters` +- **summary**: The max number of members for the society at one time. + +### payouts(`AccountId32`): `PalletSocietyPayoutRecord` - **interface**: `api.query.society.payouts` -- **summary**: Pending payouts; ordered by block number, with the amount that should be paid out. +- **summary**: Information regarding rank-0 payouts, past and future. ### pot(): `u128` - **interface**: `api.query.society.pot` - **summary**: Amount of our account balance that is specifically for the next round's bid(s). +### roundCount(): `u32` +- **interface**: `api.query.society.roundCount` +- **summary**: The number of rounds which have passed. + ### rules(): `Option` - **interface**: `api.query.society.rules` - **summary**: A hash of the rules of this society concerning membership. Can only be set once and only by the founder. -### strikes(`AccountId32`): `u32` -- **interface**: `api.query.society.strikes` -- **summary**: The ongoing number of losing votes cast by the member. - -### suspendedCandidates(`AccountId32`): `Option<(u128,PalletSocietyBidKind)>` -- **interface**: `api.query.society.suspendedCandidates` -- **summary**: The set of suspended candidates. +### skeptic(): `Option` +- **interface**: `api.query.society.skeptic` +- **summary**: The current skeptic. -### suspendedMembers(`AccountId32`): `bool` +### suspendedMembers(`AccountId32`): `Option` - **interface**: `api.query.society.suspendedMembers` -- **summary**: The set of suspended members. +- **summary**: The set of suspended members, with their old membership record. + +### voteClearCursor(`AccountId32`): `Option` +- **interface**: `api.query.society.voteClearCursor` +- **summary**: Clear-cursor for Vote, map from Candidate -> (Maybe) Cursor. ### votes(`AccountId32, AccountId32`): `Option` - **interface**: `api.query.society.votes` - **summary**: Double map from Candidate -> Voter -> (Maybe) Vote. - -### vouching(`AccountId32`): `Option` -- **interface**: `api.query.society.vouching` -- **summary**: Members currently vouching or banned from vouching again ___ @@ -1636,7 +1721,7 @@ ___ - **interface**: `api.query.staking.nominators` - **summary**: The map from nominator stash key to their nomination preferences, namely the validators that they wish to support. - Note that the keys of this storage map might become non-decodable in case the [`Config::MaxNominations`] configuration is decreased. In this rare case, these nominators are still existent in storage, their key is correct and retrievable (i.e. `contains_key` indicates that they exist), but their value cannot be decoded. Therefore, the non-decodable nominators will effectively not-exist, until they re-submit their preferences such that it is within the bounds of the newly set `Config::MaxNominations`. + Note that the keys of this storage map might become non-decodable in case the account's [`NominationsQuota::MaxNominations`] configuration is decreased. In this rare case, these nominators are still existent in storage, their key is correct and retrievable (i.e. `contains_key` indicates that they exist), but their value cannot be decoded. Therefore, the non-decodable nominators will effectively not-exist, until they re-submit their preferences such that it is within the bounds of the newly set `Config::MaxNominations`. This implies that `::iter_keys().count()` and `::iter().count()` might return different values for this map. Moreover, the main `::count()` is aligned with the former, namely the number of keys that exist. @@ -1695,6 +1780,29 @@ ___ ___ +## stateTrieMigration + +### autoLimits(): `Option` +- **interface**: `api.query.stateTrieMigration.autoLimits` +- **summary**: The limits that are imposed on automatic migrations. + + If set to None, then no automatic migration happens. + +### migrationProcess(): `PalletStateTrieMigrationMigrationTask` +- **interface**: `api.query.stateTrieMigration.migrationProcess` +- **summary**: Migration progress. + + This stores the snapshot of the last migrated keys. It can be set into motion and move forward by any of the means provided by this pallet. + +### signedMigrationMaxLimits(): `Option` +- **interface**: `api.query.stateTrieMigration.signedMigrationMaxLimits` +- **summary**: The maximum limits that the signed migration could use. + + If not set, no signed submission is allowed. + +___ + + ## substrate _These are well-known keys that are always available to the runtime implementation of any Substrate-based network._ @@ -1762,7 +1870,7 @@ ___ All topic vectors have deterministic storage locations depending on the topic. This allows light-clients to leverage the changes trie storage tracking mechanism and in case of changes fetch the list of events of interest. - The value has the type `(T::BlockNumber, EventIndex)` because if we used only just the `EventIndex` then in case if the topic has the same contents on the next block no notification will be triggered thus the event might be lost. + The value has the type `(BlockNumberFor, EventIndex)` because if we used only just the `EventIndex` then in case if the topic has the same contents on the next block no notification will be triggered thus the event might be lost. ### executionPhase(): `Option` - **interface**: `api.query.system.executionPhase` diff --git a/docs/polkadot/constants.md b/docs/polkadot/constants.md index ff4ef59111..2fd046f7ad 100644 --- a/docs/polkadot/constants.md +++ b/docs/polkadot/constants.md @@ -20,12 +20,8 @@ The following sections contain the module constants, also known as parameter typ - **[convictionVoting](#convictionvoting)** -- **[council](#council)** - - **[crowdloan](#crowdloan)** -- **[democracy](#democracy)** - - **[electionProviderMultiPhase](#electionprovidermultiphase)** - **[fastUnstake](#fastunstake)** @@ -46,8 +42,6 @@ The following sections contain the module constants, also known as parameter typ - **[paras](#paras)** -- **[phragmenElection](#phragmenelection)** - - **[proxy](#proxy)** - **[referenda](#referenda)** @@ -62,12 +56,8 @@ The following sections contain the module constants, also known as parameter typ - **[system](#system)** -- **[technicalCommittee](#technicalcommittee)** - - **[timestamp](#timestamp)** -- **[tips](#tips)** - - **[transactionPayment](#transactionpayment)** - **[treasury](#treasury)** @@ -116,6 +106,10 @@ ___ ### maxAuthorities: `u32` - **interface**: `api.consts.babe.maxAuthorities` - **summary**: Max number of authorities allowed + +### maxNominators: `u32` +- **interface**: `api.consts.babe.maxNominators` +- **summary**: The maximum number of nominators for each validator. ___ @@ -232,24 +226,15 @@ ___ ___ -## council - -### maxProposalWeight: `SpWeightsWeightV2Weight` -- **interface**: `api.consts.council.maxProposalWeight` -- **summary**: The maximum weight of a dispatch call that can be proposed and executed. - -___ - - ## crowdloan ### minContribution: `u128` - **interface**: `api.consts.crowdloan.minContribution` -- **summary**: The minimum amount that may be contributed into a crowdloan. Should almost certainly be at least `ExistentialDeposit`. +- **summary**: The minimum amount that may be contributed into a crowdloan. Should almost certainly be at least `ExistentialDeposit`. ### palletId: `FrameSupportPalletId` - **interface**: `api.consts.crowdloan.palletId` -- **summary**: `PalletId` for the crowdloan pallet. An appropriate value could be `PalletId(*b"py/cfund")` +- **summary**: `PalletId` for the crowdloan pallet. An appropriate value could be `PalletId(*b"py/cfund")` ### removeKeysLimit: `u32` - **interface**: `api.consts.crowdloan.removeKeysLimit` @@ -258,65 +243,6 @@ ___ ___ -## democracy - -### cooloffPeriod: `u32` -- **interface**: `api.consts.democracy.cooloffPeriod` -- **summary**: Period in blocks where an external proposal may not be re-submitted after being vetoed. - -### enactmentPeriod: `u32` -- **interface**: `api.consts.democracy.enactmentPeriod` -- **summary**: The period between a proposal being approved and enacted. - - It should generally be a little more than the unstake period to ensure that voting stakers have an opportunity to remove themselves from the system in the case where they are on the losing side of a vote. - -### fastTrackVotingPeriod: `u32` -- **interface**: `api.consts.democracy.fastTrackVotingPeriod` -- **summary**: Minimum voting period allowed for a fast-track referendum. - -### instantAllowed: `bool` -- **interface**: `api.consts.democracy.instantAllowed` -- **summary**: Indicator for whether an emergency origin is even allowed to happen. Some chains may want to set this permanently to `false`, others may want to condition it on things such as an upgrade having happened recently. - -### launchPeriod: `u32` -- **interface**: `api.consts.democracy.launchPeriod` -- **summary**: How often (in blocks) new public referenda are launched. - -### maxBlacklisted: `u32` -- **interface**: `api.consts.democracy.maxBlacklisted` -- **summary**: The maximum number of items which can be blacklisted. - -### maxDeposits: `u32` -- **interface**: `api.consts.democracy.maxDeposits` -- **summary**: The maximum number of deposits a public proposal may have at any time. - -### maxProposals: `u32` -- **interface**: `api.consts.democracy.maxProposals` -- **summary**: The maximum number of public proposals that can exist at any time. - -### maxVotes: `u32` -- **interface**: `api.consts.democracy.maxVotes` -- **summary**: The maximum number of votes for an account. - - Also used to compute weight, an overly big value can lead to extrinsic with very big weight: see `delegate` for instance. - -### minimumDeposit: `u128` -- **interface**: `api.consts.democracy.minimumDeposit` -- **summary**: The minimum amount to be used as a deposit for a public referendum proposal. - -### voteLockingPeriod: `u32` -- **interface**: `api.consts.democracy.voteLockingPeriod` -- **summary**: The minimum period of vote locking. - - It should be no shorter than enactment period to ensure that in the case of an approval, those successful voters are locked into the consequences that their votes entail. - -### votingPeriod: `u32` -- **interface**: `api.consts.democracy.votingPeriod` -- **summary**: How often (in blocks) to check for new votes. - -___ - - ## electionProviderMultiPhase ### betterSignedThreshold: `Perbill` @@ -327,14 +253,6 @@ ___ - **interface**: `api.consts.electionProviderMultiPhase.betterUnsignedThreshold` - **summary**: The minimum amount of improvement to the solution score that defines a solution as "better" in the Unsigned phase. -### maxElectableTargets: `u16` -- **interface**: `api.consts.electionProviderMultiPhase.maxElectableTargets` -- **summary**: The maximum number of electable targets to put in the snapshot. - -### maxElectingVoters: `u32` -- **interface**: `api.consts.electionProviderMultiPhase.maxElectingVoters` -- **summary**: The maximum number of electing voters to put in the snapshot. At the moment, snapshots are only over a single block, but once multi-block elections are introduced they will take place over multiple blocks. - ### maxWinners: `u32` - **interface**: `api.consts.electionProviderMultiPhase.maxWinners` - **summary**: The maximum number of winners that can be elected by this `ElectionProvider` implementation. @@ -421,6 +339,10 @@ ___ - **interface**: `api.consts.grandpa.maxAuthorities` - **summary**: Max Authorities in use +### maxNominators: `u32` +- **interface**: `api.consts.grandpa.maxNominators` +- **summary**: The maximum number of nominators for each validator. + ### maxSetIdSessionEntries: `u64` - **interface**: `api.consts.grandpa.maxSetIdSessionEntries` - **summary**: The maximum number of entries to keep in the set id to session index mapping. @@ -548,63 +470,6 @@ ___ ___ -## phragmenElection - -### candidacyBond: `u128` -- **interface**: `api.consts.phragmenElection.candidacyBond` -- **summary**: How much should be locked up in order to submit one's candidacy. - -### desiredMembers: `u32` -- **interface**: `api.consts.phragmenElection.desiredMembers` -- **summary**: Number of members to elect. - -### desiredRunnersUp: `u32` -- **interface**: `api.consts.phragmenElection.desiredRunnersUp` -- **summary**: Number of runners_up to keep. - -### maxCandidates: `u32` -- **interface**: `api.consts.phragmenElection.maxCandidates` -- **summary**: The maximum number of candidates in a phragmen election. - - Warning: This impacts the size of the election which is run onchain. Chose wisely, and consider how it will impact `T::WeightInfo::election_phragmen`. - - When this limit is reached no more candidates are accepted in the election. - -### maxVoters: `u32` -- **interface**: `api.consts.phragmenElection.maxVoters` -- **summary**: The maximum number of voters to allow in a phragmen election. - - Warning: This impacts the size of the election which is run onchain. Chose wisely, and consider how it will impact `T::WeightInfo::election_phragmen`. - - When the limit is reached the new voters are ignored. - -### maxVotesPerVoter: `u32` -- **interface**: `api.consts.phragmenElection.maxVotesPerVoter` -- **summary**: Maximum numbers of votes per voter. - - Warning: This impacts the size of the election which is run onchain. Chose wisely, and consider how it will impact `T::WeightInfo::election_phragmen`. - -### palletId: `[u8;8]` -- **interface**: `api.consts.phragmenElection.palletId` -- **summary**: Identifier for the elections-phragmen pallet's lock - -### termDuration: `u32` -- **interface**: `api.consts.phragmenElection.termDuration` -- **summary**: How long each seat is kept. This defines the next block number at which an election round will happen. If set to zero, no elections are ever triggered and the module will be in passive mode. - -### votingBondBase: `u128` -- **interface**: `api.consts.phragmenElection.votingBondBase` -- **summary**: Base deposit associated with voting. - - This should be sensibly high to economically ensure the pallet cannot be attacked by creating a gigantic number of votes. - -### votingBondFactor: `u128` -- **interface**: `api.consts.phragmenElection.votingBondFactor` -- **summary**: The amount of bond that need to be locked for each vote (32 bytes). - -___ - - ## proxy ### announcementDepositBase: `u128` @@ -675,7 +540,7 @@ ___ ### paraDeposit: `u128` - **interface**: `api.consts.registrar.paraDeposit` -- **summary**: The deposit to be paid to run a parathread. This should include the cost for storing the genesis head and validation code. +- **summary**: The deposit to be paid to run a on-demand parachain. This should include the cost for storing the genesis head and validation code. ___ @@ -726,10 +591,6 @@ ___ Note: `HistoryDepth` is used as the upper bound for the `BoundedVec` item `StakingLedger.claimed_rewards`. Setting this value lower than the existing value can lead to inconsistencies in the `StakingLedger` and will need to be handled properly in a migration. The test `reducing_history_depth_abrupt` shows this effect. -### maxNominations: `u32` -- **interface**: `api.consts.staking.maxNominations` -- **summary**: Maximum number of nominations per nominator. - ### maxNominatorRewardedPerValidator: `u32` - **interface**: `api.consts.staking.maxNominatorRewardedPerValidator` - **summary**: The maximum number of nominators rewarded for each validator. @@ -786,15 +647,6 @@ ___ ___ -## technicalCommittee - -### maxProposalWeight: `SpWeightsWeightV2Weight` -- **interface**: `api.consts.technicalCommittee.maxProposalWeight` -- **summary**: The maximum weight of a dispatch call that can be proposed and executed. - -___ - - ## timestamp ### minimumPeriod: `u64` @@ -804,33 +656,6 @@ ___ ___ -## tips - -### dataDepositPerByte: `u128` -- **interface**: `api.consts.tips.dataDepositPerByte` -- **summary**: The amount held on deposit per byte within the tip report reason or bounty description. - -### maximumReasonLength: `u32` -- **interface**: `api.consts.tips.maximumReasonLength` -- **summary**: Maximum acceptable reason length. - - Benchmarks depend on this value, be sure to update weights file when changing this value - -### tipCountdown: `u32` -- **interface**: `api.consts.tips.tipCountdown` -- **summary**: The period for which a tip remains open after is has achieved threshold tippers. - -### tipFindersFee: `Percent` -- **interface**: `api.consts.tips.tipFindersFee` -- **summary**: The percent of the final tip which goes to the original reporter of the tip. - -### tipReportDepositBase: `u128` -- **interface**: `api.consts.tips.tipReportDepositBase` -- **summary**: The amount held on deposit for placing a tip report. - -___ - - ## transactionPayment ### operationalFeeMultiplier: `u8` diff --git a/docs/polkadot/errors.md b/docs/polkadot/errors.md index 2ff13d84d5..fbf0a9efa7 100644 --- a/docs/polkadot/errors.md +++ b/docs/polkadot/errors.md @@ -22,12 +22,8 @@ This page lists the errors that can be encountered in the different modules. - **[convictionVoting](#convictionvoting)** -- **[council](#council)** - - **[crowdloan](#crowdloan)** -- **[democracy](#democracy)** - - **[electionProviderMultiPhase](#electionprovidermultiphase)** - **[fastUnstake](#fastunstake)** @@ -58,8 +54,6 @@ This page lists the errors that can be encountered in the different modules. - **[parasSlashing](#parasslashing)** -- **[phragmenElection](#phragmenelection)** - - **[preimage](#preimage)** - **[proxy](#proxy)** @@ -78,12 +72,6 @@ This page lists the errors that can be encountered in the different modules. - **[system](#system)** -- **[technicalCommittee](#technicalcommittee)** - -- **[technicalMembership](#technicalmembership)** - -- **[tips](#tips)** - - **[treasury](#treasury)** - **[utility](#utility)** @@ -277,7 +265,7 @@ ___ ### PotUnderflow - **interface**: `api.errors.claims.PotUnderflow.is` -- **summary**: There's not enough in the pot to pay out some unvested amount. Generally implies a logic error. +- **summary**: There's not enough in the pot to pay out some unvested amount. Generally implies a logic error. ### SenderHasNoClaim - **interface**: `api.errors.claims.SenderHasNoClaim.is` @@ -356,51 +344,6 @@ ___ ___ -## council - -### AlreadyInitialized -- **interface**: `api.errors.council.AlreadyInitialized.is` -- **summary**: Members are already initialized! - -### DuplicateProposal -- **interface**: `api.errors.council.DuplicateProposal.is` -- **summary**: Duplicate proposals not allowed - -### DuplicateVote -- **interface**: `api.errors.council.DuplicateVote.is` -- **summary**: Duplicate vote ignored - -### NotMember -- **interface**: `api.errors.council.NotMember.is` -- **summary**: Account is not a member - -### ProposalMissing -- **interface**: `api.errors.council.ProposalMissing.is` -- **summary**: Proposal must exist - -### TooEarly -- **interface**: `api.errors.council.TooEarly.is` -- **summary**: The close call was made too early, before the end of the voting. - -### TooManyProposals -- **interface**: `api.errors.council.TooManyProposals.is` -- **summary**: There can only be a maximum of `MaxProposals` active proposals. - -### WrongIndex -- **interface**: `api.errors.council.WrongIndex.is` -- **summary**: Mismatched index - -### WrongProposalLength -- **interface**: `api.errors.council.WrongProposalLength.is` -- **summary**: The given length bound for the proposal was too low. - -### WrongProposalWeight -- **interface**: `api.errors.council.WrongProposalWeight.is` -- **summary**: The given weight bound for the proposal was too low. - -___ - - ## crowdloan ### AlreadyInNewRaise @@ -485,7 +428,7 @@ ___ ### NotReadyToDissolve - **interface**: `api.errors.crowdloan.NotReadyToDissolve.is` -- **summary**: The crowdloan is not ready to dissolve. Potentially still has a slot or in retirement period. +- **summary**: The crowdloan is not ready to dissolve. Potentially still has a slot or in retirement period. ### Overflow - **interface**: `api.errors.crowdloan.Overflow.is` @@ -498,107 +441,6 @@ ___ ___ -## democracy - -### AlreadyCanceled -- **interface**: `api.errors.democracy.AlreadyCanceled.is` -- **summary**: Cannot cancel the same proposal twice - -### AlreadyDelegating -- **interface**: `api.errors.democracy.AlreadyDelegating.is` -- **summary**: The account is already delegating. - -### AlreadyVetoed -- **interface**: `api.errors.democracy.AlreadyVetoed.is` -- **summary**: Identity may not veto a proposal twice - -### DuplicateProposal -- **interface**: `api.errors.democracy.DuplicateProposal.is` -- **summary**: Proposal already made - -### InstantNotAllowed -- **interface**: `api.errors.democracy.InstantNotAllowed.is` -- **summary**: The instant referendum origin is currently disallowed. - -### InsufficientFunds -- **interface**: `api.errors.democracy.InsufficientFunds.is` -- **summary**: Too high a balance was provided that the account cannot afford. - -### InvalidHash -- **interface**: `api.errors.democracy.InvalidHash.is` -- **summary**: Invalid hash - -### MaxVotesReached -- **interface**: `api.errors.democracy.MaxVotesReached.is` -- **summary**: Maximum number of votes reached. - -### NoneWaiting -- **interface**: `api.errors.democracy.NoneWaiting.is` -- **summary**: No proposals waiting - -### Nonsense -- **interface**: `api.errors.democracy.Nonsense.is` -- **summary**: Delegation to oneself makes no sense. - -### NoPermission -- **interface**: `api.errors.democracy.NoPermission.is` -- **summary**: The actor has no permission to conduct the action. - -### NoProposal -- **interface**: `api.errors.democracy.NoProposal.is` -- **summary**: No external proposal - -### NotDelegating -- **interface**: `api.errors.democracy.NotDelegating.is` -- **summary**: The account is not currently delegating. - -### NotSimpleMajority -- **interface**: `api.errors.democracy.NotSimpleMajority.is` -- **summary**: Next external proposal not simple majority - -### NotVoter -- **interface**: `api.errors.democracy.NotVoter.is` -- **summary**: The given account did not vote on the referendum. - -### PreimageNotExist -- **interface**: `api.errors.democracy.PreimageNotExist.is` -- **summary**: The preimage does not exist. - -### ProposalBlacklisted -- **interface**: `api.errors.democracy.ProposalBlacklisted.is` -- **summary**: Proposal still blacklisted - -### ProposalMissing -- **interface**: `api.errors.democracy.ProposalMissing.is` -- **summary**: Proposal does not exist - -### ReferendumInvalid -- **interface**: `api.errors.democracy.ReferendumInvalid.is` -- **summary**: Vote given for invalid referendum - -### TooMany -- **interface**: `api.errors.democracy.TooMany.is` -- **summary**: Maximum number of items reached. - -### ValueLow -- **interface**: `api.errors.democracy.ValueLow.is` -- **summary**: Value too low - -### VotesExist -- **interface**: `api.errors.democracy.VotesExist.is` -- **summary**: The account currently has votes attached to it and the operation cannot succeed until these are removed, either through `unvote` or `reap_vote`. - -### VotingPeriodLow -- **interface**: `api.errors.democracy.VotingPeriodLow.is` -- **summary**: Voting period too low - -### WrongUpperBound -- **interface**: `api.errors.democracy.WrongUpperBound.is` -- **summary**: Invalid upper bound. - -___ - - ## electionProviderMultiPhase ### BoundNotMet @@ -946,6 +788,12 @@ ___ - **interface**: `api.errors.messageQueue.Queued.is` - **summary**: The message is queued for future execution. +### QueuePaused +- **interface**: `api.errors.messageQueue.QueuePaused.is` +- **summary**: The queue is paused and no message can be executed from it. + + This can change at any time and may resolve in the future by re-trying. + ### TemporarilyUnprocessable - **interface**: `api.errors.messageQueue.TemporarilyUnprocessable.is` - **summary**: This message is temporarily unprocessable. @@ -1042,6 +890,10 @@ ___ - **interface**: `api.errors.nominationPools.CommissionChangeThrottled.is` - **summary**: Not enough blocks have surpassed since the last commission update. +### CommissionExceedsGlobalMaximum +- **interface**: `api.errors.nominationPools.CommissionExceedsGlobalMaximum.is` +- **summary**: The supplied commission exceeds global maximum commission. + ### CommissionExceedsMaximum - **interface**: `api.errors.nominationPools.CommissionExceedsMaximum.is` - **summary**: The supplied commission exceeds the max allowed commission. @@ -1157,14 +1009,14 @@ ___ - **interface**: `api.errors.paraInclusion.BitfieldReferencesFreedCore.is` - **summary**: A bitfield that references a freed core, either intentionally or as part of a concluded invalid dispute. -### CandidateNotInParentContext -- **interface**: `api.errors.paraInclusion.CandidateNotInParentContext.is` -- **summary**: Candidate not in parent context. - ### CandidateScheduledBeforeParaFree - **interface**: `api.errors.paraInclusion.CandidateScheduledBeforeParaFree.is` - **summary**: Candidate scheduled despite pending candidate already existing for the para. +### DisallowedRelayParent +- **interface**: `api.errors.paraInclusion.DisallowedRelayParent.is` +- **summary**: The candidate's relay-parent was not allowed. Either it was not recent enough or it didn't advance based on the last parachain block. + ### HeadDataTooLarge - **interface**: `api.errors.paraInclusion.HeadDataTooLarge.is` - **summary**: Head data exceeds the configured maximum. @@ -1181,6 +1033,10 @@ ___ - **interface**: `api.errors.paraInclusion.InsufficientBacking.is` - **summary**: Insufficient (non-majority) backing. +### InvalidAssignment +- **interface**: `api.errors.paraInclusion.InvalidAssignment.is` +- **summary**: Failed to compute group index for the core: either it's out of bounds or the relay parent doesn't belong to the current session. + ### InvalidBacking - **interface**: `api.errors.paraInclusion.InvalidBacking.is` - **summary**: Invalid (bad signature, unknown validator, etc.) backing. @@ -1215,7 +1071,7 @@ ___ ### ParaHeadMismatch - **interface**: `api.errors.paraInclusion.ParaHeadMismatch.is` -- **summary**: The `para_head` hash in the candidate descriptor doesn't match the hash of the actual para head in the commitments. +- **summary**: The `para_head` hash in the candidate descriptor doesn't match the hash of the actual para head in the commitments. ### PrematureCodeUpgrade - **interface**: `api.errors.paraInclusion.PrematureCodeUpgrade.is` @@ -1256,10 +1112,6 @@ ___ ### WrongBitfieldSize - **interface**: `api.errors.paraInclusion.WrongBitfieldSize.is` - **summary**: Availability bitfield has unexpected size. - -### WrongCollator -- **interface**: `api.errors.paraInclusion.WrongCollator.is` -- **summary**: Candidate included with the wrong collator. ___ @@ -1297,7 +1149,7 @@ ___ ### CannotDowngrade - **interface**: `api.errors.paras.CannotDowngrade.is` -- **summary**: Para cannot be downgraded to a parathread. +- **summary**: Para cannot be downgraded to an on-demand parachain. ### CannotOffboard - **interface**: `api.errors.paras.CannotOffboard.is` @@ -1309,7 +1161,7 @@ ___ ### CannotUpgrade - **interface**: `api.errors.paras.CannotUpgrade.is` -- **summary**: Para cannot be upgraded to a parachain. +- **summary**: Para cannot be upgraded to a lease holding parachain. ### CannotUpgradeCode - **interface**: `api.errors.paras.CannotUpgradeCode.is` @@ -1416,79 +1268,6 @@ ___ ___ -## phragmenElection - -### DuplicatedCandidate -- **interface**: `api.errors.phragmenElection.DuplicatedCandidate.is` -- **summary**: Duplicated candidate submission. - -### InsufficientCandidateFunds -- **interface**: `api.errors.phragmenElection.InsufficientCandidateFunds.is` -- **summary**: Candidate does not have enough funds. - -### InvalidRenouncing -- **interface**: `api.errors.phragmenElection.InvalidRenouncing.is` -- **summary**: The renouncing origin presented a wrong `Renouncing` parameter. - -### InvalidReplacement -- **interface**: `api.errors.phragmenElection.InvalidReplacement.is` -- **summary**: Prediction regarding replacement after member removal is wrong. - -### InvalidVoteCount -- **interface**: `api.errors.phragmenElection.InvalidVoteCount.is` -- **summary**: The provided count of number of votes is incorrect. - -### InvalidWitnessData -- **interface**: `api.errors.phragmenElection.InvalidWitnessData.is` -- **summary**: The provided count of number of candidates is incorrect. - -### LowBalance -- **interface**: `api.errors.phragmenElection.LowBalance.is` -- **summary**: Cannot vote with stake less than minimum balance. - -### MaximumVotesExceeded -- **interface**: `api.errors.phragmenElection.MaximumVotesExceeded.is` -- **summary**: Cannot vote more than maximum allowed. - -### MemberSubmit -- **interface**: `api.errors.phragmenElection.MemberSubmit.is` -- **summary**: Member cannot re-submit candidacy. - -### MustBeVoter -- **interface**: `api.errors.phragmenElection.MustBeVoter.is` -- **summary**: Must be a voter. - -### NotMember -- **interface**: `api.errors.phragmenElection.NotMember.is` -- **summary**: Not a member. - -### NoVotes -- **interface**: `api.errors.phragmenElection.NoVotes.is` -- **summary**: Must vote for at least one candidate. - -### RunnerUpSubmit -- **interface**: `api.errors.phragmenElection.RunnerUpSubmit.is` -- **summary**: Runner cannot re-submit candidacy. - -### TooManyCandidates -- **interface**: `api.errors.phragmenElection.TooManyCandidates.is` -- **summary**: Too many candidates have been created. - -### TooManyVotes -- **interface**: `api.errors.phragmenElection.TooManyVotes.is` -- **summary**: Cannot vote more than candidates. - -### UnableToPayBond -- **interface**: `api.errors.phragmenElection.UnableToPayBond.is` -- **summary**: Voter can not pay voting bond. - -### UnableToVote -- **interface**: `api.errors.phragmenElection.UnableToVote.is` -- **summary**: Cannot vote when no candidates or members exist. - -___ - - ## preimage ### AlreadyNoted @@ -1624,15 +1403,15 @@ ___ ### CannotDowngrade - **interface**: `api.errors.registrar.CannotDowngrade.is` -- **summary**: Cannot schedule downgrade of parachain to parathread +- **summary**: Cannot schedule downgrade of lease holding parachain to on-demand parachain ### CannotSwap - **interface**: `api.errors.registrar.CannotSwap.is` -- **summary**: Cannot perform a parachain slot / lifecycle swap. Check that the state of both paras are correct for the swap to work. +- **summary**: Cannot perform a parachain slot / lifecycle swap. Check that the state of both paras are correct for the swap to work. ### CannotUpgrade - **interface**: `api.errors.registrar.CannotUpgrade.is` -- **summary**: Cannot schedule upgrade of parathread to parachain +- **summary**: Cannot schedule upgrade of on-demand parachain to lease holding parachain ### CodeTooLarge - **interface**: `api.errors.registrar.CodeTooLarge.is` @@ -1656,7 +1435,7 @@ ___ ### NotParathread - **interface**: `api.errors.registrar.NotParathread.is` -- **summary**: Para is not a Parathread. +- **summary**: Para is not a Parathread (on-demand parachain). ### NotRegistered - **interface**: `api.errors.registrar.NotRegistered.is` @@ -1668,7 +1447,7 @@ ___ ### ParaLocked - **interface**: `api.errors.registrar.ParaLocked.is` -- **summary**: Para is locked from manipulation by the manager. Must use parachain or relay chain governance. +- **summary**: Para is locked from manipulation by the manager. Must use parachain or relay chain governance. ___ @@ -1872,97 +1651,6 @@ ___ ___ -## technicalCommittee - -### AlreadyInitialized -- **interface**: `api.errors.technicalCommittee.AlreadyInitialized.is` -- **summary**: Members are already initialized! - -### DuplicateProposal -- **interface**: `api.errors.technicalCommittee.DuplicateProposal.is` -- **summary**: Duplicate proposals not allowed - -### DuplicateVote -- **interface**: `api.errors.technicalCommittee.DuplicateVote.is` -- **summary**: Duplicate vote ignored - -### NotMember -- **interface**: `api.errors.technicalCommittee.NotMember.is` -- **summary**: Account is not a member - -### ProposalMissing -- **interface**: `api.errors.technicalCommittee.ProposalMissing.is` -- **summary**: Proposal must exist - -### TooEarly -- **interface**: `api.errors.technicalCommittee.TooEarly.is` -- **summary**: The close call was made too early, before the end of the voting. - -### TooManyProposals -- **interface**: `api.errors.technicalCommittee.TooManyProposals.is` -- **summary**: There can only be a maximum of `MaxProposals` active proposals. - -### WrongIndex -- **interface**: `api.errors.technicalCommittee.WrongIndex.is` -- **summary**: Mismatched index - -### WrongProposalLength -- **interface**: `api.errors.technicalCommittee.WrongProposalLength.is` -- **summary**: The given length bound for the proposal was too low. - -### WrongProposalWeight -- **interface**: `api.errors.technicalCommittee.WrongProposalWeight.is` -- **summary**: The given weight bound for the proposal was too low. - -___ - - -## technicalMembership - -### AlreadyMember -- **interface**: `api.errors.technicalMembership.AlreadyMember.is` -- **summary**: Already a member. - -### NotMember -- **interface**: `api.errors.technicalMembership.NotMember.is` -- **summary**: Not a member. - -### TooManyMembers -- **interface**: `api.errors.technicalMembership.TooManyMembers.is` -- **summary**: Too many members. - -___ - - -## tips - -### AlreadyKnown -- **interface**: `api.errors.tips.AlreadyKnown.is` -- **summary**: The tip was already found/started. - -### NotFinder -- **interface**: `api.errors.tips.NotFinder.is` -- **summary**: The account attempting to retract the tip is not the finder of the tip. - -### Premature -- **interface**: `api.errors.tips.Premature.is` -- **summary**: The tip cannot be claimed/closed because it's still in the countdown period. - -### ReasonTooBig -- **interface**: `api.errors.tips.ReasonTooBig.is` -- **summary**: The reason given is just too big. - -### StillOpen -- **interface**: `api.errors.tips.StillOpen.is` -- **summary**: The tip cannot be claimed/closed because there are not enough tippers yet. - -### UnknownTip -- **interface**: `api.errors.tips.UnknownTip.is` -- **summary**: The tip hash is unknown. - -___ - - ## treasury ### InsufficientPermission @@ -2120,7 +1808,7 @@ ___ ### SendFailure - **interface**: `api.errors.xcmPallet.SendFailure.is` -- **summary**: There was some other issue (i.e. not to do with routing) in sending the message. Perhaps a lack of space for buffering the message. +- **summary**: There was some other issue (i.e. not to do with routing) in sending the message. Perhaps a lack of space for buffering the message. ### TooManyAssets - **interface**: `api.errors.xcmPallet.TooManyAssets.is` diff --git a/docs/polkadot/events.md b/docs/polkadot/events.md index 6c433927b0..472ceb2e7f 100644 --- a/docs/polkadot/events.md +++ b/docs/polkadot/events.md @@ -18,12 +18,8 @@ Events are emitted for certain operations on the runtime. The following sections - **[convictionVoting](#convictionvoting)** -- **[council](#council)** - - **[crowdloan](#crowdloan)** -- **[democracy](#democracy)** - - **[electionProviderMultiPhase](#electionprovidermultiphase)** - **[fastUnstake](#fastunstake)** @@ -52,8 +48,6 @@ Events are emitted for certain operations on the runtime. The following sections - **[parasDisputes](#parasdisputes)** -- **[phragmenElection](#phragmenelection)** - - **[preimage](#preimage)** - **[proxy](#proxy)** @@ -72,12 +66,6 @@ Events are emitted for certain operations on the runtime. The following sections - **[system](#system)** -- **[technicalCommittee](#technicalcommittee)** - -- **[technicalMembership](#technicalmembership)** - -- **[tips](#tips)** - - **[transactionPayment](#transactionpayment)** - **[treasury](#treasury)** @@ -112,7 +100,7 @@ ___ ### ReserveConfiscated(`u32`, `AccountId32`, `u128`) - **interface**: `api.events.auctions.ReserveConfiscated.is` -- **summary**: Someone attempted to lease the same slot twice for a parachain. The amount is held in reserve but no parachain slot has been leased. +- **summary**: Someone attempted to lease the same slot twice for a parachain. The amount is held in reserve but no parachain slot has been leased. ### Reserved(`AccountId32`, `u128`, `u128`) - **interface**: `api.events.auctions.Reserved.is` @@ -124,7 +112,7 @@ ___ ### WinningOffset(`u32`, `u32`) - **interface**: `api.events.auctions.WinningOffset.is` -- **summary**: The winning offset was chosen for an auction. This will map into the `Winning` storage map. +- **summary**: The winning offset was chosen for an auction. This will map into the `Winning` storage map. ___ @@ -294,39 +282,6 @@ ___ ___ -## council - -### Approved(`H256`) -- **interface**: `api.events.council.Approved.is` -- **summary**: A motion was approved by the required threshold. - -### Closed(`H256`, `u32`, `u32`) -- **interface**: `api.events.council.Closed.is` -- **summary**: A proposal was closed because its threshold was reached or after its duration was up. - -### Disapproved(`H256`) -- **interface**: `api.events.council.Disapproved.is` -- **summary**: A motion was not approved by the required threshold. - -### Executed(`H256`, `Result`) -- **interface**: `api.events.council.Executed.is` -- **summary**: A motion was executed; result will be `Ok` if it returned without error. - -### MemberExecuted(`H256`, `Result`) -- **interface**: `api.events.council.MemberExecuted.is` -- **summary**: A single member did some action; result will be `Ok` if it returned without error. - -### Proposed(`AccountId32`, `u32`, `H256`, `u32`) -- **interface**: `api.events.council.Proposed.is` -- **summary**: A motion (given hash) has been proposed (by given account) with a threshold (given `MemberCount`). - -### Voted(`AccountId32`, `H256`, `bool`, `u32`, `u32`) -- **interface**: `api.events.council.Voted.is` -- **summary**: A motion (given hash) has been voted on by given account, leaving a tally (yes votes and no votes given respectively as `MemberCount`). - -___ - - ## crowdloan ### AddedToNewRaise(`u32`) @@ -372,79 +327,6 @@ ___ ___ -## democracy - -### Blacklisted(`H256`) -- **interface**: `api.events.democracy.Blacklisted.is` -- **summary**: A proposal_hash has been blacklisted permanently. - -### Cancelled(`u32`) -- **interface**: `api.events.democracy.Cancelled.is` -- **summary**: A referendum has been cancelled. - -### Delegated(`AccountId32`, `AccountId32`) -- **interface**: `api.events.democracy.Delegated.is` -- **summary**: An account has delegated their vote to another account. - -### ExternalTabled() -- **interface**: `api.events.democracy.ExternalTabled.is` -- **summary**: An external proposal has been tabled. - -### MetadataCleared(`PalletDemocracyMetadataOwner`, `H256`) -- **interface**: `api.events.democracy.MetadataCleared.is` -- **summary**: Metadata for a proposal or a referendum has been cleared. - -### MetadataSet(`PalletDemocracyMetadataOwner`, `H256`) -- **interface**: `api.events.democracy.MetadataSet.is` -- **summary**: Metadata for a proposal or a referendum has been set. - -### MetadataTransferred(`PalletDemocracyMetadataOwner`, `PalletDemocracyMetadataOwner`, `H256`) -- **interface**: `api.events.democracy.MetadataTransferred.is` -- **summary**: Metadata has been transferred to new owner. - -### NotPassed(`u32`) -- **interface**: `api.events.democracy.NotPassed.is` -- **summary**: A proposal has been rejected by referendum. - -### Passed(`u32`) -- **interface**: `api.events.democracy.Passed.is` -- **summary**: A proposal has been approved by referendum. - -### ProposalCanceled(`u32`) -- **interface**: `api.events.democracy.ProposalCanceled.is` -- **summary**: A proposal got canceled. - -### Proposed(`u32`, `u128`) -- **interface**: `api.events.democracy.Proposed.is` -- **summary**: A motion has been proposed by a public account. - -### Seconded(`AccountId32`, `u32`) -- **interface**: `api.events.democracy.Seconded.is` -- **summary**: An account has secconded a proposal - -### Started(`u32`, `PalletDemocracyVoteThreshold`) -- **interface**: `api.events.democracy.Started.is` -- **summary**: A referendum has begun. - -### Tabled(`u32`, `u128`) -- **interface**: `api.events.democracy.Tabled.is` -- **summary**: A public proposal has been tabled for referendum vote. - -### Undelegated(`AccountId32`) -- **interface**: `api.events.democracy.Undelegated.is` -- **summary**: An account has cancelled a previous delegation operation. - -### Vetoed(`AccountId32`, `H256`, `u32`) -- **interface**: `api.events.democracy.Vetoed.is` -- **summary**: An external proposal has been vetoed. - -### Voted(`AccountId32`, `u32`, `PalletDemocracyVoteAccountVote`) -- **interface**: `api.events.democracy.Voted.is` -- **summary**: An account has voted in a referendum - -___ - - ## electionProviderMultiPhase ### ElectionFailed() @@ -756,15 +638,15 @@ ___ ## paraInclusion -### CandidateBacked(`PolkadotPrimitivesV4CandidateReceipt`, `Bytes`, `u32`, `u32`) +### CandidateBacked(`PolkadotPrimitivesV5CandidateReceipt`, `Bytes`, `u32`, `u32`) - **interface**: `api.events.paraInclusion.CandidateBacked.is` - **summary**: A candidate was backed. `[candidate, head_data]` -### CandidateIncluded(`PolkadotPrimitivesV4CandidateReceipt`, `Bytes`, `u32`, `u32`) +### CandidateIncluded(`PolkadotPrimitivesV5CandidateReceipt`, `Bytes`, `u32`, `u32`) - **interface**: `api.events.paraInclusion.CandidateIncluded.is` - **summary**: A candidate was included. `[candidate, head_data]` -### CandidateTimedOut(`PolkadotPrimitivesV4CandidateReceipt`, `Bytes`, `u32`) +### CandidateTimedOut(`PolkadotPrimitivesV5CandidateReceipt`, `Bytes`, `u32`) - **interface**: `api.events.paraInclusion.CandidateTimedOut.is` - **summary**: A candidate timed out. `[candidate, head_data]` @@ -829,41 +711,6 @@ ___ ___ -## phragmenElection - -### CandidateSlashed(`AccountId32`, `u128`) -- **interface**: `api.events.phragmenElection.CandidateSlashed.is` -- **summary**: A candidate was slashed by amount due to failing to obtain a seat as member or runner-up. - - Note that old members and runners-up are also candidates. - -### ElectionError() -- **interface**: `api.events.phragmenElection.ElectionError.is` -- **summary**: Internal error happened while trying to perform election. - -### EmptyTerm() -- **interface**: `api.events.phragmenElection.EmptyTerm.is` -- **summary**: No (or not enough) candidates existed for this round. This is different from `NewTerm(\[\])`. See the description of `NewTerm`. - -### MemberKicked(`AccountId32`) -- **interface**: `api.events.phragmenElection.MemberKicked.is` -- **summary**: A member has been removed. This should always be followed by either `NewTerm` or `EmptyTerm`. - -### NewTerm(`Vec<(AccountId32,u128)>`) -- **interface**: `api.events.phragmenElection.NewTerm.is` -- **summary**: A new term with new_members. This indicates that enough candidates existed to run the election, not that enough have has been elected. The inner value must be examined for this purpose. A `NewTerm(\[\])` indicates that some candidates got their bond slashed and none were elected, whilst `EmptyTerm` means that no candidates existed to begin with. - -### Renounced(`AccountId32`) -- **interface**: `api.events.phragmenElection.Renounced.is` -- **summary**: Someone has renounced their candidacy. - -### SeatHolderSlashed(`AccountId32`, `u128`) -- **interface**: `api.events.phragmenElection.SeatHolderSlashed.is` -- **summary**: A seat holder was slashed by amount by being forcefully removed from the set. - -___ - - ## preimage ### Cleared(`H256`) @@ -1085,6 +932,14 @@ ___ - **interface**: `api.events.staking.SlashReported.is` - **summary**: A slash for the given validator, for the given percentage of their stake, at the given era as been reported. +### SnapshotTargetsSizeExceeded(`u32`) +- **interface**: `api.events.staking.SnapshotTargetsSizeExceeded.is` +- **summary**: Targets size limit reached. + +### SnapshotVotersSizeExceeded(`u32`) +- **interface**: `api.events.staking.SnapshotVotersSizeExceeded.is` +- **summary**: Voters size limit reached. + ### StakersElected() - **interface**: `api.events.staking.StakersElected.is` - **summary**: A new set of stakers was elected. @@ -1137,93 +992,6 @@ ___ ___ -## technicalCommittee - -### Approved(`H256`) -- **interface**: `api.events.technicalCommittee.Approved.is` -- **summary**: A motion was approved by the required threshold. - -### Closed(`H256`, `u32`, `u32`) -- **interface**: `api.events.technicalCommittee.Closed.is` -- **summary**: A proposal was closed because its threshold was reached or after its duration was up. - -### Disapproved(`H256`) -- **interface**: `api.events.technicalCommittee.Disapproved.is` -- **summary**: A motion was not approved by the required threshold. - -### Executed(`H256`, `Result`) -- **interface**: `api.events.technicalCommittee.Executed.is` -- **summary**: A motion was executed; result will be `Ok` if it returned without error. - -### MemberExecuted(`H256`, `Result`) -- **interface**: `api.events.technicalCommittee.MemberExecuted.is` -- **summary**: A single member did some action; result will be `Ok` if it returned without error. - -### Proposed(`AccountId32`, `u32`, `H256`, `u32`) -- **interface**: `api.events.technicalCommittee.Proposed.is` -- **summary**: A motion (given hash) has been proposed (by given account) with a threshold (given `MemberCount`). - -### Voted(`AccountId32`, `H256`, `bool`, `u32`, `u32`) -- **interface**: `api.events.technicalCommittee.Voted.is` -- **summary**: A motion (given hash) has been voted on by given account, leaving a tally (yes votes and no votes given respectively as `MemberCount`). - -___ - - -## technicalMembership - -### Dummy() -- **interface**: `api.events.technicalMembership.Dummy.is` -- **summary**: Phantom member, never used. - -### KeyChanged() -- **interface**: `api.events.technicalMembership.KeyChanged.is` -- **summary**: One of the members' keys changed. - -### MemberAdded() -- **interface**: `api.events.technicalMembership.MemberAdded.is` -- **summary**: The given member was added; see the transaction for who. - -### MemberRemoved() -- **interface**: `api.events.technicalMembership.MemberRemoved.is` -- **summary**: The given member was removed; see the transaction for who. - -### MembersReset() -- **interface**: `api.events.technicalMembership.MembersReset.is` -- **summary**: The membership was reset; see the transaction for who the new set is. - -### MembersSwapped() -- **interface**: `api.events.technicalMembership.MembersSwapped.is` -- **summary**: Two members were swapped; see the transaction for who. - -___ - - -## tips - -### NewTip(`H256`) -- **interface**: `api.events.tips.NewTip.is` -- **summary**: A new tip suggestion has been opened. - -### TipClosed(`H256`, `AccountId32`, `u128`) -- **interface**: `api.events.tips.TipClosed.is` -- **summary**: A tip suggestion has been closed. - -### TipClosing(`H256`) -- **interface**: `api.events.tips.TipClosing.is` -- **summary**: A tip suggestion has reached threshold and is closing. - -### TipRetracted(`H256`) -- **interface**: `api.events.tips.TipRetracted.is` -- **summary**: A tip suggestion has been retracted. - -### TipSlashed(`H256`, `AccountId32`, `u128`) -- **interface**: `api.events.tips.TipSlashed.is` -- **summary**: A tip suggestion has been slashed. - -___ - - ## transactionPayment ### TransactionFeePaid(`AccountId32`, `u128`, `u128`) @@ -1395,7 +1163,7 @@ ___ ### NotifyOverweight(`u64`, `u8`, `u8`, `SpWeightsWeightV2Weight`, `SpWeightsWeightV2Weight`) - **interface**: `api.events.xcmPallet.NotifyOverweight.is` -- **summary**: Query response has been received and query is removed. The registered notification could not be dispatched because the dispatch weight is greater than the maximum weight originally budgeted by this runtime for the query result. +- **summary**: Query response has been received and query is removed. The registered notification could not be dispatched because the dispatch weight is greater than the maximum weight originally budgeted by this runtime for the query result. ### NotifyTargetMigrationFail(`XcmVersionedMultiLocation`, `u64`) - **interface**: `api.events.xcmPallet.NotifyTargetMigrationFail.is` @@ -1441,4 +1209,4 @@ ___ ### VersionNotifyUnrequested(`XcmV3MultiLocation`, `XcmV3MultiassetMultiAssets`, `[u8;32]`) - **interface**: `api.events.xcmPallet.VersionNotifyUnrequested.is` -- **summary**: We have requested that a remote chain stops sending us XCM version change notifications. +- **summary**: We have requested that a remote chain stops sending us XCM version change notifications. diff --git a/docs/polkadot/extrinsics.md b/docs/polkadot/extrinsics.md index ce17a51356..132c3e6413 100644 --- a/docs/polkadot/extrinsics.md +++ b/docs/polkadot/extrinsics.md @@ -22,12 +22,8 @@ The following sections contain Extrinsics methods are part of the default Polkad - **[convictionVoting](#convictionvoting)** -- **[council](#council)** - - **[crowdloan](#crowdloan)** -- **[democracy](#democracy)** - - **[electionProviderMultiPhase](#electionprovidermultiphase)** - **[fastUnstake](#fastunstake)** @@ -62,8 +58,6 @@ The following sections contain Extrinsics methods are part of the default Polkad - **[parasSlashing](#parasslashing)** -- **[phragmenElection](#phragmenelection)** - - **[preimage](#preimage)** - **[proxy](#proxy)** @@ -82,14 +76,8 @@ The following sections contain Extrinsics methods are part of the default Polkad - **[system](#system)** -- **[technicalCommittee](#technicalcommittee)** - -- **[technicalMembership](#technicalmembership)** - - **[timestamp](#timestamp)** -- **[tips](#tips)** - - **[treasury](#treasury)** - **[utility](#utility)** @@ -290,10 +278,6 @@ ___ - **interface**: `api.tx.configuration.setBypassConsistencyCheck` - **summary**: See [`Pallet::set_bypass_consistency_check`]. -### setChainAvailabilityPeriod(new: `u32`) -- **interface**: `api.tx.configuration.setChainAvailabilityPeriod` -- **summary**: See [`Pallet::set_chain_availability_period`]. - ### setCodeRetentionPeriod(new: `u32`) - **interface**: `api.tx.configuration.setCodeRetentionPeriod` - **summary**: See [`Pallet::set_code_retention_period`]. @@ -306,7 +290,7 @@ ___ - **interface**: `api.tx.configuration.setDisputePostConclusionAcceptancePeriod` - **summary**: See [`Pallet::set_dispute_post_conclusion_acceptance_period`]. -### setExecutorParams(new: `PolkadotPrimitivesV4ExecutorParams`) +### setExecutorParams(new: `PolkadotPrimitivesV5ExecutorParams`) - **interface**: `api.tx.configuration.setExecutorParams` - **summary**: See [`Pallet::set_executor_params`]. @@ -338,14 +322,6 @@ ___ - **interface**: `api.tx.configuration.setHrmpMaxParachainOutboundChannels` - **summary**: See [`Pallet::set_hrmp_max_parachain_outbound_channels`]. -### setHrmpMaxParathreadInboundChannels(new: `u32`) -- **interface**: `api.tx.configuration.setHrmpMaxParathreadInboundChannels` -- **summary**: See [`Pallet::set_hrmp_max_parathread_inbound_channels`]. - -### setHrmpMaxParathreadOutboundChannels(new: `u32`) -- **interface**: `api.tx.configuration.setHrmpMaxParathreadOutboundChannels` -- **summary**: See [`Pallet::set_hrmp_max_parathread_outbound_channels`]. - ### setHrmpOpenRequestTtl(new: `u32`) - **interface**: `api.tx.configuration.setHrmpOpenRequestTtl` - **summary**: See [`Pallet::set_hrmp_open_request_ttl`]. @@ -414,17 +390,37 @@ ___ - **interface**: `api.tx.configuration.setNoShowSlots` - **summary**: See [`Pallet::set_no_show_slots`]. -### setParathreadCores(new: `u32`) -- **interface**: `api.tx.configuration.setParathreadCores` -- **summary**: See [`Pallet::set_parathread_cores`]. +### setOnDemandBaseFee(new: `u128`) +- **interface**: `api.tx.configuration.setOnDemandBaseFee` +- **summary**: See [`Pallet::set_on_demand_base_fee`]. + +### setOnDemandCores(new: `u32`) +- **interface**: `api.tx.configuration.setOnDemandCores` +- **summary**: See [`Pallet::set_on_demand_cores`]. + +### setOnDemandFeeVariability(new: `Perbill`) +- **interface**: `api.tx.configuration.setOnDemandFeeVariability` +- **summary**: See [`Pallet::set_on_demand_fee_variability`]. + +### setOnDemandQueueMaxSize(new: `u32`) +- **interface**: `api.tx.configuration.setOnDemandQueueMaxSize` +- **summary**: See [`Pallet::set_on_demand_queue_max_size`]. + +### setOnDemandRetries(new: `u32`) +- **interface**: `api.tx.configuration.setOnDemandRetries` +- **summary**: See [`Pallet::set_on_demand_retries`]. -### setParathreadRetries(new: `u32`) -- **interface**: `api.tx.configuration.setParathreadRetries` -- **summary**: See [`Pallet::set_parathread_retries`]. +### setOnDemandTargetQueueUtilization(new: `Perbill`) +- **interface**: `api.tx.configuration.setOnDemandTargetQueueUtilization` +- **summary**: See [`Pallet::set_on_demand_target_queue_utilization`]. -### setPvfCheckingEnabled(new: `bool`) -- **interface**: `api.tx.configuration.setPvfCheckingEnabled` -- **summary**: See [`Pallet::set_pvf_checking_enabled`]. +### setOnDemandTtl(new: `u32`) +- **interface**: `api.tx.configuration.setOnDemandTtl` +- **summary**: See [`Pallet::set_on_demand_ttl`]. + +### setParasAvailabilityPeriod(new: `u32`) +- **interface**: `api.tx.configuration.setParasAvailabilityPeriod` +- **summary**: See [`Pallet::set_paras_availability_period`]. ### setPvfVotingTtl(new: `u32`) - **interface**: `api.tx.configuration.setPvfVotingTtl` @@ -438,10 +434,6 @@ ___ - **interface**: `api.tx.configuration.setSchedulingLookahead` - **summary**: See [`Pallet::set_scheduling_lookahead`]. -### setThreadAvailabilityPeriod(new: `u32`) -- **interface**: `api.tx.configuration.setThreadAvailabilityPeriod` -- **summary**: See [`Pallet::set_thread_availability_period`]. - ### setValidationUpgradeCooldown(new: `u32`) - **interface**: `api.tx.configuration.setValidationUpgradeCooldown` - **summary**: See [`Pallet::set_validation_upgrade_cooldown`]. @@ -486,35 +478,6 @@ ___ ___ -## council - -### close(proposal_hash: `H256`, index: `Compact`, proposal_weight_bound: `SpWeightsWeightV2Weight`, length_bound: `Compact`) -- **interface**: `api.tx.council.close` -- **summary**: See [`Pallet::close`]. - -### disapproveProposal(proposal_hash: `H256`) -- **interface**: `api.tx.council.disapproveProposal` -- **summary**: See [`Pallet::disapprove_proposal`]. - -### execute(proposal: `Call`, length_bound: `Compact`) -- **interface**: `api.tx.council.execute` -- **summary**: See [`Pallet::execute`]. - -### propose(threshold: `Compact`, proposal: `Call`, length_bound: `Compact`) -- **interface**: `api.tx.council.propose` -- **summary**: See [`Pallet::propose`]. - -### setMembers(new_members: `Vec`, prime: `Option`, old_count: `u32`) -- **interface**: `api.tx.council.setMembers` -- **summary**: See [`Pallet::set_members`]. - -### vote(proposal: `H256`, index: `Compact`, approve: `bool`) -- **interface**: `api.tx.council.vote` -- **summary**: See [`Pallet::vote`]. - -___ - - ## crowdloan ### addMemo(index: `u32`, memo: `Bytes`) @@ -556,87 +519,6 @@ ___ ___ -## democracy - -### blacklist(proposal_hash: `H256`, maybe_ref_index: `Option`) -- **interface**: `api.tx.democracy.blacklist` -- **summary**: See [`Pallet::blacklist`]. - -### cancelProposal(prop_index: `Compact`) -- **interface**: `api.tx.democracy.cancelProposal` -- **summary**: See [`Pallet::cancel_proposal`]. - -### cancelReferendum(ref_index: `Compact`) -- **interface**: `api.tx.democracy.cancelReferendum` -- **summary**: See [`Pallet::cancel_referendum`]. - -### clearPublicProposals() -- **interface**: `api.tx.democracy.clearPublicProposals` -- **summary**: See [`Pallet::clear_public_proposals`]. - -### delegate(to: `MultiAddress`, conviction: `PalletDemocracyConviction`, balance: `u128`) -- **interface**: `api.tx.democracy.delegate` -- **summary**: See [`Pallet::delegate`]. - -### emergencyCancel(ref_index: `u32`) -- **interface**: `api.tx.democracy.emergencyCancel` -- **summary**: See [`Pallet::emergency_cancel`]. - -### externalPropose(proposal: `FrameSupportPreimagesBounded`) -- **interface**: `api.tx.democracy.externalPropose` -- **summary**: See [`Pallet::external_propose`]. - -### externalProposeDefault(proposal: `FrameSupportPreimagesBounded`) -- **interface**: `api.tx.democracy.externalProposeDefault` -- **summary**: See [`Pallet::external_propose_default`]. - -### externalProposeMajority(proposal: `FrameSupportPreimagesBounded`) -- **interface**: `api.tx.democracy.externalProposeMajority` -- **summary**: See [`Pallet::external_propose_majority`]. - -### fastTrack(proposal_hash: `H256`, voting_period: `u32`, delay: `u32`) -- **interface**: `api.tx.democracy.fastTrack` -- **summary**: See [`Pallet::fast_track`]. - -### propose(proposal: `FrameSupportPreimagesBounded`, value: `Compact`) -- **interface**: `api.tx.democracy.propose` -- **summary**: See [`Pallet::propose`]. - -### removeOtherVote(target: `MultiAddress`, index: `u32`) -- **interface**: `api.tx.democracy.removeOtherVote` -- **summary**: See [`Pallet::remove_other_vote`]. - -### removeVote(index: `u32`) -- **interface**: `api.tx.democracy.removeVote` -- **summary**: See [`Pallet::remove_vote`]. - -### second(proposal: `Compact`) -- **interface**: `api.tx.democracy.second` -- **summary**: See [`Pallet::second`]. - -### setMetadata(owner: `PalletDemocracyMetadataOwner`, maybe_hash: `Option`) -- **interface**: `api.tx.democracy.setMetadata` -- **summary**: See [`Pallet::set_metadata`]. - -### undelegate() -- **interface**: `api.tx.democracy.undelegate` -- **summary**: See [`Pallet::undelegate`]. - -### unlock(target: `MultiAddress`) -- **interface**: `api.tx.democracy.unlock` -- **summary**: See [`Pallet::unlock`]. - -### vetoExternal(proposal_hash: `H256`) -- **interface**: `api.tx.democracy.vetoExternal` -- **summary**: See [`Pallet::veto_external`]. - -### vote(ref_index: `Compact`, vote: `PalletDemocracyVoteAccountVote`) -- **interface**: `api.tx.democracy.vote` -- **summary**: See [`Pallet::vote`]. - -___ - - ## electionProviderMultiPhase ### governanceFallback(maybe_max_voters: `Option`, maybe_max_targets: `Option`) @@ -971,7 +853,7 @@ ___ ## paraInherent -### enter(data: `PolkadotPrimitivesV4InherentData`) +### enter(data: `PolkadotPrimitivesV5InherentData`) - **interface**: `api.tx.paraInherent.enter` - **summary**: See [`Pallet::enter`]. @@ -1004,7 +886,11 @@ ___ - **interface**: `api.tx.paras.forceSetCurrentHead` - **summary**: See [`Pallet::force_set_current_head`]. -### includePvfCheckStatement(stmt: `PolkadotPrimitivesV4PvfCheckStatement`, signature: `PolkadotPrimitivesV4ValidatorAppSignature`) +### forceSetMostRecentContext(para: `u32`, context: `u32`) +- **interface**: `api.tx.paras.forceSetMostRecentContext` +- **summary**: See [`Pallet::force_set_most_recent_context`]. + +### includePvfCheckStatement(stmt: `PolkadotPrimitivesV5PvfCheckStatement`, signature: `PolkadotPrimitivesV5ValidatorAppSignature`) - **interface**: `api.tx.paras.includePvfCheckStatement` - **summary**: See [`Pallet::include_pvf_check_statement`]. @@ -1031,42 +917,13 @@ ___ ## parasSlashing -### reportDisputeLostUnsigned(dispute_proof: `PolkadotPrimitivesVstagingSlashingDisputeProof`, key_owner_proof: `SpSessionMembershipProof`) +### reportDisputeLostUnsigned(dispute_proof: `PolkadotPrimitivesV5SlashingDisputeProof`, key_owner_proof: `SpSessionMembershipProof`) - **interface**: `api.tx.parasSlashing.reportDisputeLostUnsigned` - **summary**: See [`Pallet::report_dispute_lost_unsigned`]. ___ -## phragmenElection - -### cleanDefunctVoters(num_voters: `u32`, num_defunct: `u32`) -- **interface**: `api.tx.phragmenElection.cleanDefunctVoters` -- **summary**: See [`Pallet::clean_defunct_voters`]. - -### removeMember(who: `MultiAddress`, slash_bond: `bool`, rerun_election: `bool`) -- **interface**: `api.tx.phragmenElection.removeMember` -- **summary**: See [`Pallet::remove_member`]. - -### removeVoter() -- **interface**: `api.tx.phragmenElection.removeVoter` -- **summary**: See [`Pallet::remove_voter`]. - -### renounceCandidacy(renouncing: `PalletElectionsPhragmenRenouncing`) -- **interface**: `api.tx.phragmenElection.renounceCandidacy` -- **summary**: See [`Pallet::renounce_candidacy`]. - -### submitCandidacy(candidate_count: `Compact`) -- **interface**: `api.tx.phragmenElection.submitCandidacy` -- **summary**: See [`Pallet::submit_candidacy`]. - -### vote(votes: `Vec`, value: `Compact`) -- **interface**: `api.tx.phragmenElection.vote` -- **summary**: See [`Pallet::vote`]. - -___ - - ## preimage ### notePreimage(bytes: `Bytes`) @@ -1420,68 +1277,6 @@ ___ ___ -## technicalCommittee - -### close(proposal_hash: `H256`, index: `Compact`, proposal_weight_bound: `SpWeightsWeightV2Weight`, length_bound: `Compact`) -- **interface**: `api.tx.technicalCommittee.close` -- **summary**: See [`Pallet::close`]. - -### disapproveProposal(proposal_hash: `H256`) -- **interface**: `api.tx.technicalCommittee.disapproveProposal` -- **summary**: See [`Pallet::disapprove_proposal`]. - -### execute(proposal: `Call`, length_bound: `Compact`) -- **interface**: `api.tx.technicalCommittee.execute` -- **summary**: See [`Pallet::execute`]. - -### propose(threshold: `Compact`, proposal: `Call`, length_bound: `Compact`) -- **interface**: `api.tx.technicalCommittee.propose` -- **summary**: See [`Pallet::propose`]. - -### setMembers(new_members: `Vec`, prime: `Option`, old_count: `u32`) -- **interface**: `api.tx.technicalCommittee.setMembers` -- **summary**: See [`Pallet::set_members`]. - -### vote(proposal: `H256`, index: `Compact`, approve: `bool`) -- **interface**: `api.tx.technicalCommittee.vote` -- **summary**: See [`Pallet::vote`]. - -___ - - -## technicalMembership - -### addMember(who: `MultiAddress`) -- **interface**: `api.tx.technicalMembership.addMember` -- **summary**: See [`Pallet::add_member`]. - -### changeKey(new: `MultiAddress`) -- **interface**: `api.tx.technicalMembership.changeKey` -- **summary**: See [`Pallet::change_key`]. - -### clearPrime() -- **interface**: `api.tx.technicalMembership.clearPrime` -- **summary**: See [`Pallet::clear_prime`]. - -### removeMember(who: `MultiAddress`) -- **interface**: `api.tx.technicalMembership.removeMember` -- **summary**: See [`Pallet::remove_member`]. - -### resetMembers(members: `Vec`) -- **interface**: `api.tx.technicalMembership.resetMembers` -- **summary**: See [`Pallet::reset_members`]. - -### setPrime(who: `MultiAddress`) -- **interface**: `api.tx.technicalMembership.setPrime` -- **summary**: See [`Pallet::set_prime`]. - -### swapMember(remove: `MultiAddress`, add: `MultiAddress`) -- **interface**: `api.tx.technicalMembership.swapMember` -- **summary**: See [`Pallet::swap_member`]. - -___ - - ## timestamp ### set(now: `Compact`) @@ -1491,35 +1286,6 @@ ___ ___ -## tips - -### closeTip(hash: `H256`) -- **interface**: `api.tx.tips.closeTip` -- **summary**: See [`Pallet::close_tip`]. - -### reportAwesome(reason: `Bytes`, who: `MultiAddress`) -- **interface**: `api.tx.tips.reportAwesome` -- **summary**: See [`Pallet::report_awesome`]. - -### retractTip(hash: `H256`) -- **interface**: `api.tx.tips.retractTip` -- **summary**: See [`Pallet::retract_tip`]. - -### slashTip(hash: `H256`) -- **interface**: `api.tx.tips.slashTip` -- **summary**: See [`Pallet::slash_tip`]. - -### tip(hash: `H256`, tip_value: `Compact`) -- **interface**: `api.tx.tips.tip` -- **summary**: See [`Pallet::tip`]. - -### tipNew(reason: `Bytes`, who: `MultiAddress`, tip_value: `Compact`) -- **interface**: `api.tx.tips.tipNew` -- **summary**: See [`Pallet::tip_new`]. - -___ - - ## treasury ### approveProposal(proposal_id: `Compact`) @@ -1605,6 +1371,10 @@ ___ - **interface**: `api.tx.voterList.putInFrontOf` - **summary**: See [`Pallet::put_in_front_of`]. +### putInFrontOfOther(heavier: `MultiAddress`, lighter: `MultiAddress`) +- **interface**: `api.tx.voterList.putInFrontOfOther` +- **summary**: See [`Pallet::put_in_front_of_other`]. + ### rebag(dislocated: `MultiAddress`) - **interface**: `api.tx.voterList.rebag` - **summary**: See [`Pallet::rebag`]. diff --git a/docs/polkadot/runtime.md b/docs/polkadot/runtime.md index dc0b229976..73aa9f2160 100644 --- a/docs/polkadot/runtime.md +++ b/docs/polkadot/runtime.md @@ -309,6 +309,11 @@ ___ - **runtime**: `ParachainHost_inbound_hrmp_channels_contents` - **summary**: Get the contents of all channels addressed to the given recipient. +### keyOwnershipProof(validatorId: `ValidatorId`): `Option` +- **interface**: `api.call.parachainHost.keyOwnershipProof` +- **runtime**: `ParachainHost_key_ownership_proof` +- **summary**: Returns a merkle proof of a validator session key + ### onChainVotes(): `Option` - **interface**: `api.call.parachainHost.onChainVotes` - **runtime**: `ParachainHost_on_chain_votes` @@ -344,6 +349,16 @@ ___ - **runtime**: `ParachainHost_submit_pvf_check_statement` - **summary**: Submits a PVF pre-checking statement into the transaction pool. +### submitReportDisputeLost(disputeProof: `DisputeProof`, keyOwnershipProof: `OpaqueKeyOwnershipProof`): `Option` +- **interface**: `api.call.parachainHost.submitReportDisputeLost` +- **runtime**: `ParachainHost_submit_report_dispute_lost` +- **summary**: Submit an unsigned extrinsic to slash validators who lost a dispute about a candidate of a past session + +### unappliedSlashes(): `Vec<(SessionIndex, CandidateHash, PendingSlashes)>` +- **interface**: `api.call.parachainHost.unappliedSlashes` +- **runtime**: `ParachainHost_unapplied_slashes` +- **summary**: Returns a list of validators that lost a past session dispute and need to be slashed + ### validationCode(paraId: `ParaId`, assumption: `OccupiedCoreAssumption`): `ValidationCode` - **interface**: `api.call.parachainHost.validationCode` - **runtime**: `ParachainHost_validation_code` diff --git a/docs/polkadot/storage.md b/docs/polkadot/storage.md index a560e9001c..85e59db299 100644 --- a/docs/polkadot/storage.md +++ b/docs/polkadot/storage.md @@ -24,12 +24,8 @@ The following sections contain Storage methods are part of the default Polkadot - **[convictionVoting](#convictionvoting)** -- **[council](#council)** - - **[crowdloan](#crowdloan)** -- **[democracy](#democracy)** - - **[dmp](#dmp)** - **[electionProviderMultiPhase](#electionprovidermultiphase)** @@ -72,8 +68,6 @@ The following sections contain Storage methods are part of the default Polkadot - **[parasSlashing](#parasslashing)** -- **[phragmenElection](#phragmenelection)** - - **[preimage](#preimage)** - **[proxy](#proxy)** @@ -94,14 +88,8 @@ The following sections contain Storage methods are part of the default Polkadot - **[system](#system)** -- **[technicalCommittee](#technicalcommittee)** - -- **[technicalMembership](#technicalmembership)** - - **[timestamp](#timestamp)** -- **[tips](#tips)** - - **[transactionPayment](#transactionpayment)** - **[treasury](#treasury)** @@ -385,35 +373,6 @@ ___ ___ -## council - -### members(): `Vec` -- **interface**: `api.query.council.members` -- **summary**: The current members of the collective. This is stored sorted (just by value). - -### prime(): `Option` -- **interface**: `api.query.council.prime` -- **summary**: The prime member that helps determine the default vote behavior in case of absentations. - -### proposalCount(): `u32` -- **interface**: `api.query.council.proposalCount` -- **summary**: Proposals so far. - -### proposalOf(`H256`): `Option` -- **interface**: `api.query.council.proposalOf` -- **summary**: Actual proposal for a given hash, if it's current. - -### proposals(): `Vec` -- **interface**: `api.query.council.proposals` -- **summary**: The hashes of the active proposals. - -### voting(`H256`): `Option` -- **interface**: `api.query.council.voting` -- **summary**: Votes on a given proposal, if it is ongoing. - -___ - - ## crowdloan ### endingsCount(): `u32` @@ -435,71 +394,6 @@ ___ ___ -## democracy - -### blacklist(`H256`): `Option<(u32,Vec)>` -- **interface**: `api.query.democracy.blacklist` -- **summary**: A record of who vetoed what. Maps proposal hash to a possible existent block number (until when it may not be resubmitted) and who vetoed it. - -### cancellations(`H256`): `bool` -- **interface**: `api.query.democracy.cancellations` -- **summary**: Record of all proposals that have been subject to emergency cancellation. - -### depositOf(`u32`): `Option<(Vec,u128)>` -- **interface**: `api.query.democracy.depositOf` -- **summary**: Those who have locked a deposit. - - TWOX-NOTE: Safe, as increasing integer keys are safe. - -### lastTabledWasExternal(): `bool` -- **interface**: `api.query.democracy.lastTabledWasExternal` -- **summary**: True if the last referendum tabled was submitted externally. False if it was a public proposal. - -### lowestUnbaked(): `u32` -- **interface**: `api.query.democracy.lowestUnbaked` -- **summary**: The lowest referendum index representing an unbaked referendum. Equal to `ReferendumCount` if there isn't a unbaked referendum. - -### metadataOf(`PalletDemocracyMetadataOwner`): `Option` -- **interface**: `api.query.democracy.metadataOf` -- **summary**: General information concerning any proposal or referendum. The `PreimageHash` refers to the preimage of the `Preimages` provider which can be a JSON dump or IPFS hash of a JSON file. - - Consider a garbage collection for a metadata of finished referendums to `unrequest` (remove) large preimages. - -### nextExternal(): `Option<(FrameSupportPreimagesBounded,PalletDemocracyVoteThreshold)>` -- **interface**: `api.query.democracy.nextExternal` -- **summary**: The referendum to be tabled whenever it would be valid to table an external proposal. This happens when a referendum needs to be tabled and one of two conditions are met: - - - `LastTabledWasExternal` is `false`; or - - - `PublicProps` is empty. - -### publicPropCount(): `u32` -- **interface**: `api.query.democracy.publicPropCount` -- **summary**: The number of (public) proposals that have been made so far. - -### publicProps(): `Vec<(u32,FrameSupportPreimagesBounded,AccountId32)>` -- **interface**: `api.query.democracy.publicProps` -- **summary**: The public proposals. Unsorted. The second item is the proposal. - -### referendumCount(): `u32` -- **interface**: `api.query.democracy.referendumCount` -- **summary**: The next free referendum index, aka the number of referenda started so far. - -### referendumInfoOf(`u32`): `Option` -- **interface**: `api.query.democracy.referendumInfoOf` -- **summary**: Information concerning any given referendum. - - TWOX-NOTE: SAFE as indexes are not under an attacker’s control. - -### votingOf(`AccountId32`): `PalletDemocracyVoteVoting` -- **interface**: `api.query.democracy.votingOf` -- **summary**: All votes for a particular voter. We store the balance for the number of votes that we have recorded. The second item is the total amount of delegations, that will be added. - - TWOX-NOTE: SAFE as `AccountId`s are crypto hashes anyway. - -___ - - ## dmp ### deliveryFeeFactor(`u32`): `u128` @@ -735,7 +629,7 @@ ___ - **interface**: `api.query.hrmp.hrmpWatermarks` - **summary**: The HRMP watermark associated with each para. Invariant: - - each para `P` used here as a key should satisfy `Paras::is_valid_para(P)` within a session. + - each para `P` used here as a key should satisfy `Paras::is_valid_para(P)` within a session. ___ @@ -787,9 +681,9 @@ ___ - **interface**: `api.query.imOnline.keys` - **summary**: The current set of keys that may issue a heartbeat. -### receivedHeartbeats(`u32, u32`): `Option>` +### receivedHeartbeats(`u32, u32`): `Option` - **interface**: `api.query.imOnline.receivedHeartbeats` -- **summary**: For each session index, we keep a mapping of `SessionIndex` and `AuthIndex` to `WrapperOpaque`. +- **summary**: For each session index, we keep a mapping of `SessionIndex` and `AuthIndex`. ___ @@ -819,7 +713,7 @@ ___ Semantically a `bool`, but this guarantees it should never hit the trie, as this is cleared in `on_finalize` and Frame optimizes `None` values to be empty values. - As a `bool`, `set(false)` and `remove()` both lead to the next `get()` being false, but one of them writes to the trie and one does not. This confusion makes `Option<()>` more suitable for the semantics of this variable. + As a `bool`, `set(false)` and `remove()` both lead to the next `get()` being false, but one of them writes to the trie and one does not. This confusion makes `Option<()>` more suitable for the semantics of this variable. ___ @@ -966,7 +860,7 @@ ___ - **interface**: `api.query.paraInclusion.pendingAvailability` - **summary**: Candidates pending availability by `ParaId`. -### pendingAvailabilityCommitments(`u32`): `Option` +### pendingAvailabilityCommitments(`u32`): `Option` - **interface**: `api.query.paraInclusion.pendingAvailabilityCommitments` - **summary**: The commitments of candidates pending availability, by `ParaId`. @@ -983,7 +877,7 @@ ___ If this is `None` at the end of the block, we panic and render the block invalid. -### onChainVotes(): `Option` +### onChainVotes(): `Option` - **interface**: `api.query.paraInherent.onChainVotes` - **summary**: Scraped on chain data for extracting resolved disputes as well as backing votes. @@ -1026,9 +920,13 @@ ___ - **interface**: `api.query.paras.heads` - **summary**: The head-data of every registered para. +### mostRecentContext(`u32`): `Option` +- **interface**: `api.query.paras.mostRecentContext` +- **summary**: The context (relay-chain block number) of the most recent parachain head. + ### parachains(): `Vec` - **interface**: `api.query.paras.parachains` -- **summary**: All parachains. Ordered ascending by `ParaId`. Parathreads are not included. +- **summary**: All lease holding parachains. Ordered ascending by `ParaId`. On demand parachains are not included. Consider using the [`ParachainsCache`] type of modifying. @@ -1048,7 +946,7 @@ ___ ### pastCodePruning(): `Vec<(u32,u32)>` - **interface**: `api.query.paras.pastCodePruning` -- **summary**: Which paras have past code that needs pruning and the relay-chain block at which the code was replaced. Note that this is the actual height of the included block, not the expected height at which the code upgrade would be applied, although they may be equal. This is to ensure the entire acceptance period is covered, not an offset acceptance period starting from the time at which the parachain perceives a code upgrade as having occurred. Multiple entries for a single para are permitted. Ordered ascending by block number. +- **summary**: Which paras have past code that needs pruning and the relay-chain block at which the code was replaced. Note that this is the actual height of the included block, not the expected height at which the code upgrade would be applied, although they may be equal. This is to ensure the entire acceptance period is covered, not an offset acceptance period starting from the time at which the parachain perceives a code upgrade as having occurred. Multiple entries for a single para are permitted. Ordered ascending by block number. ### pvfActiveVoteList(): `Vec` - **interface**: `api.query.paras.pvfActiveVoteList` @@ -1080,15 +978,15 @@ ___ Ordered ascending by block number. -### upgradeGoAheadSignal(`u32`): `Option` +### upgradeGoAheadSignal(`u32`): `Option` - **interface**: `api.query.paras.upgradeGoAheadSignal` -- **summary**: This is used by the relay-chain to communicate to a parachain a go-ahead with in the upgrade procedure. +- **summary**: This is used by the relay-chain to communicate to a parachain a go-ahead with in the upgrade procedure. - This value is absent when there are no upgrades scheduled or during the time the relay chain performs the checks. It is set at the first relay-chain block when the corresponding parachain can switch its upgrade function. As soon as the parachain's block is included, the value gets reset to `None`. + This value is absent when there are no upgrades scheduled or during the time the relay chain performs the checks. It is set at the first relay-chain block when the corresponding parachain can switch its upgrade function. As soon as the parachain's block is included, the value gets reset to `None`. NOTE that this field is used by parachains via merkle storage proofs, therefore changing the format will require migration of parachains. -### upgradeRestrictionSignal(`u32`): `Option` +### upgradeRestrictionSignal(`u32`): `Option` - **interface**: `api.query.paras.upgradeRestrictionSignal` - **summary**: This is used by the relay-chain to communicate that there are restrictions for performing an upgrade for this parachain. @@ -1101,9 +999,9 @@ ___ ## paraScheduler -### availabilityCores(): `Vec>` +### availabilityCores(): `Vec` - **interface**: `api.query.paraScheduler.availabilityCores` -- **summary**: One entry for each availability core. Entries are `None` if the core is not currently occupied. Can be temporarily `Some` if scheduled but not occupied. The i'th parachain belongs to the i'th core, with the remaining cores all being parathread-multiplexers. +- **summary**: One entry for each availability core. Entries are `None` if the core is not currently occupied. Can be temporarily `Some` if scheduled but not occupied. The i'th parachain belongs to the i'th core, with the remaining cores all being parathread-multiplexers. Bounded by the maximum of either of these two values: @@ -1111,29 +1009,13 @@ ___ * The number of validators divided by `configuration.max_validators_per_core`. -### parathreadClaimIndex(): `Vec` -- **interface**: `api.query.paraScheduler.parathreadClaimIndex` -- **summary**: An index used to ensure that only one claim on a parathread exists in the queue or is currently being handled by an occupied core. - - Bounded by the number of parathread cores and scheduling lookahead. Reasonably, 10 * 50 = 500. - -### parathreadQueue(): `PolkadotRuntimeParachainsSchedulerParathreadClaimQueue` -- **interface**: `api.query.paraScheduler.parathreadQueue` -- **summary**: A queue of upcoming claims and which core they should be mapped onto. - - The number of queued claims is bounded at the `scheduling_lookahead` multiplied by the number of parathread multiplexer cores. Reasonably, 10 * 50 = 500. - -### scheduled(): `Vec` -- **interface**: `api.query.paraScheduler.scheduled` -- **summary**: Currently scheduled cores - free but up to be occupied. - - Bounded by the number of cores: one for each parachain and parathread multiplexer. - - The value contained here will not be valid after the end of a block. Runtime APIs should be used to determine scheduled cores/ for the upcoming block. +### claimQueue(): `BTreeMap>>` +- **interface**: `api.query.paraScheduler.claimQueue` +- **summary**: One entry for each availability core. The `VecDeque` represents the assignments to be scheduled on that core. `None` is used to signal to not schedule the next para of the core as there is one currently being scheduled. Not using `None` here would overwrite the `CoreState` in the runtime API. The value contained here will not be valid after the end of a block. Runtime APIs should be used to determine scheduled cores/ for the upcoming block. ### sessionStartBlock(): `u32` - **interface**: `api.query.paraScheduler.sessionStartBlock` -- **summary**: The block number where the session start occurred. Used to track how many group rotations have occurred. +- **summary**: The block number where the session start occurred. Used to track how many group rotations have occurred. Note that in the context of parachains modules the session change is signaled during the block and enacted at the end of the block (at the finalization stage, to be exact). Thus for all intents and purposes the effect of the session change is observed at the block following the session change, block number of which we save in this storage value. @@ -1141,7 +1023,7 @@ ___ - **interface**: `api.query.paraScheduler.validatorGroups` - **summary**: All the validator groups. One for each core. Indices are into `ActiveValidators` - not the broader set of Polkadot validators, but instead just the subset used for parachains during this session. - Bound: The number of cores is the sum of the numbers of parachains and parathread multiplexers. Reasonably, 100-1000. The dominant factor is the number of validators: safe upper bound at 10k. + Bound: The number of cores is the sum of the numbers of parachains and parathread multiplexers. Reasonably, 100-1000. The dominant factor is the number of validators: safe upper bound at 10k. ___ @@ -1152,7 +1034,7 @@ ___ - **interface**: `api.query.parasDisputes.backersOnDisputes` - **summary**: Backing votes stored for each dispute. This storage is used for slashing. -### disputes(`u32, H256`): `Option` +### disputes(`u32, H256`): `Option` - **interface**: `api.query.parasDisputes.disputes` - **summary**: All ongoing or concluded disputes for the last several sessions. @@ -1177,7 +1059,7 @@ ___ - **interface**: `api.query.paraSessionInfo.accountKeys` - **summary**: The validator account keys of the validators actively participating in parachain consensus. -### assignmentKeysUnsafe(): `Vec` +### assignmentKeysUnsafe(): `Vec` - **interface**: `api.query.paraSessionInfo.assignmentKeysUnsafe` - **summary**: Assignment keys for the current session. Note that this API is private due to it being prone to 'off-by-one' at session boundaries. When in doubt, use `Sessions` API instead. @@ -1185,11 +1067,11 @@ ___ - **interface**: `api.query.paraSessionInfo.earliestStoredSession` - **summary**: The earliest session for which previous session info is stored. -### sessionExecutorParams(`u32`): `Option` +### sessionExecutorParams(`u32`): `Option` - **interface**: `api.query.paraSessionInfo.sessionExecutorParams` - **summary**: Executor parameter set for a given session index -### sessions(`u32`): `Option` +### sessions(`u32`): `Option` - **interface**: `api.query.paraSessionInfo.sessions` - **summary**: Session information in a rolling window. Should have an entry in range `EarliestStoredSession..=CurrentSessionIndex`. Does not have any entries before the session index in the first session change notification. @@ -1202,9 +1084,13 @@ ___ - **interface**: `api.query.parasShared.activeValidatorIndices` - **summary**: All the validators actively participating in parachain consensus. Indices are into the broader validator set. -### activeValidatorKeys(): `Vec` +### activeValidatorKeys(): `Vec` - **interface**: `api.query.parasShared.activeValidatorKeys` -- **summary**: The parachain attestation keys of the validators actively participating in parachain consensus. This should be the same length as `ActiveValidatorIndices`. +- **summary**: The parachain attestation keys of the validators actively participating in parachain consensus. This should be the same length as `ActiveValidatorIndices`. + +### allowedRelayParents(): `PolkadotRuntimeParachainsSharedAllowedRelayParentsTracker` +- **interface**: `api.query.parasShared.allowedRelayParents` +- **summary**: All allowed relay-parents. ### currentSessionIndex(): `u32` - **interface**: `api.query.parasShared.currentSessionIndex` @@ -1215,7 +1101,7 @@ ___ ## parasSlashing -### unappliedSlashes(`u32, H256`): `Option` +### unappliedSlashes(`u32, H256`): `Option` - **interface**: `api.query.parasSlashing.unappliedSlashes` - **summary**: Validators pending dispute slashes. @@ -1226,41 +1112,6 @@ ___ ___ -## phragmenElection - -### candidates(): `Vec<(AccountId32,u128)>` -- **interface**: `api.query.phragmenElection.candidates` -- **summary**: The present candidate list. A current member or runner-up can never enter this vector and is always implicitly assumed to be a candidate. - - Second element is the deposit. - - Invariant: Always sorted based on account id. - -### electionRounds(): `u32` -- **interface**: `api.query.phragmenElection.electionRounds` -- **summary**: The total number of vote rounds that have happened, excluding the upcoming one. - -### members(): `Vec` -- **interface**: `api.query.phragmenElection.members` -- **summary**: The current elected members. - - Invariant: Always sorted based on account id. - -### runnersUp(): `Vec` -- **interface**: `api.query.phragmenElection.runnersUp` -- **summary**: The current reserved runners-up. - - Invariant: Always sorted based on rank (worse to best). Upon removal of a member, the last (i.e. _best_) runner-up will be replaced. - -### voting(`AccountId32`): `PalletElectionsPhragmenVoter` -- **interface**: `api.query.phragmenElection.voting` -- **summary**: Votes and locked stake of a particular voter. - - TWOX-NOTE: SAFE as `AccountId` is a crypto hash. - -___ - - ## preimage ### preimageFor(`(H256,u32)`): `Option` @@ -1325,7 +1176,7 @@ ___ - **interface**: `api.query.registrar.paras` - **summary**: Amount held on deposit for each para and the original depositor. - The given account ID is responsible for registering the code and initial head data, but may only do so if it isn't yet registered. (After that, it's up to governance to do so.) + The given account ID is responsible for registering the code and initial head data, but may only do so if it isn't yet registered. (After that, it's up to governance to do so.) ### pendingSwap(`u32`): `Option` - **interface**: `api.query.registrar.pendingSwap` @@ -1393,7 +1244,7 @@ ___ - **interface**: `api.query.slots.leases` - **summary**: Amounts held on deposit for each (possibly future) leased parachain. - The actual amount locked on its behalf by any account at any time is the maximum of the second values of the items in this list whose first value is the account. + The actual amount locked on its behalf by any account at any time is the maximum of the second values of the items in this list whose first value is the account. The first item in the list is the amount locked for the current Lease Period. Following items are for the subsequent lease periods. @@ -1550,7 +1401,7 @@ ___ - **interface**: `api.query.staking.nominators` - **summary**: The map from nominator stash key to their nomination preferences, namely the validators that they wish to support. - Note that the keys of this storage map might become non-decodable in case the [`Config::MaxNominations`] configuration is decreased. In this rare case, these nominators are still existent in storage, their key is correct and retrievable (i.e. `contains_key` indicates that they exist), but their value cannot be decoded. Therefore, the non-decodable nominators will effectively not-exist, until they re-submit their preferences such that it is within the bounds of the newly set `Config::MaxNominations`. + Note that the keys of this storage map might become non-decodable in case the account's [`NominationsQuota::MaxNominations`] configuration is decreased. In this rare case, these nominators are still existent in storage, their key is correct and retrievable (i.e. `contains_key` indicates that they exist), but their value cannot be decoded. Therefore, the non-decodable nominators will effectively not-exist, until they re-submit their preferences such that it is within the bounds of the newly set `Config::MaxNominations`. This implies that `::iter_keys().count()` and `::iter().count()` might return different values for this map. Moreover, the main `::count()` is aligned with the former, namely the number of keys that exist. @@ -1676,7 +1527,7 @@ ___ All topic vectors have deterministic storage locations depending on the topic. This allows light-clients to leverage the changes trie storage tracking mechanism and in case of changes fetch the list of events of interest. - The value has the type `(T::BlockNumber, EventIndex)` because if we used only just the `EventIndex` then in case if the topic has the same contents on the next block no notification will be triggered thus the event might be lost. + The value has the type `(BlockNumberFor, EventIndex)` because if we used only just the `EventIndex` then in case if the topic has the same contents on the next block no notification will be triggered thus the event might be lost. ### executionPhase(): `Option` - **interface**: `api.query.system.executionPhase` @@ -1713,48 +1564,6 @@ ___ ___ -## technicalCommittee - -### members(): `Vec` -- **interface**: `api.query.technicalCommittee.members` -- **summary**: The current members of the collective. This is stored sorted (just by value). - -### prime(): `Option` -- **interface**: `api.query.technicalCommittee.prime` -- **summary**: The prime member that helps determine the default vote behavior in case of absentations. - -### proposalCount(): `u32` -- **interface**: `api.query.technicalCommittee.proposalCount` -- **summary**: Proposals so far. - -### proposalOf(`H256`): `Option` -- **interface**: `api.query.technicalCommittee.proposalOf` -- **summary**: Actual proposal for a given hash, if it's current. - -### proposals(): `Vec` -- **interface**: `api.query.technicalCommittee.proposals` -- **summary**: The hashes of the active proposals. - -### voting(`H256`): `Option` -- **interface**: `api.query.technicalCommittee.voting` -- **summary**: Votes on a given proposal, if it is ongoing. - -___ - - -## technicalMembership - -### members(): `Vec` -- **interface**: `api.query.technicalMembership.members` -- **summary**: The current membership, stored as an ordered Vec. - -### prime(): `Option` -- **interface**: `api.query.technicalMembership.prime` -- **summary**: The current prime member, if one exists. - -___ - - ## timestamp ### didUpdate(): `bool` @@ -1768,19 +1577,6 @@ ___ ___ -## tips - -### reasons(`H256`): `Option` -- **interface**: `api.query.tips.reasons` -- **summary**: Simple preimage lookup from the reason's hash to the original data. Again, has an insecure enumerable hash since the key is guaranteed to be the result of a secure hash. - -### tips(`H256`): `Option` -- **interface**: `api.query.tips.tips` -- **summary**: TipsMap that are not yet completed. Keyed by the hash of `(reason, who)` from the value. This has the insecure enumerable hash function since the key itself is already guaranteed to be a secure hash. - -___ - - ## transactionPayment ### nextFeeMultiplier(): `u128` diff --git a/docs/substrate/constants.md b/docs/substrate/constants.md index 8c549eb4a1..972a11d4c9 100644 --- a/docs/substrate/constants.md +++ b/docs/substrate/constants.md @@ -20,6 +20,8 @@ The following sections contain the module constants, also known as parameter typ - **[bounties](#bounties)** +- **[broker](#broker)** + - **[childBounties](#childbounties)** - **[contracts](#contracts)** @@ -70,6 +72,8 @@ The following sections contain the module constants, also known as parameter typ - **[referenda](#referenda)** +- **[safeMode](#safemode)** + - **[salary](#salary)** - **[scheduler](#scheduler)** @@ -94,6 +98,8 @@ The following sections contain the module constants, also known as parameter typ - **[treasury](#treasury)** +- **[txPause](#txpause)** + - **[uniques](#uniques)** - **[utility](#utility)** @@ -221,6 +227,10 @@ ___ ### maxAuthorities: `u32` - **interface**: `api.consts.babe.maxAuthorities` - **summary**: Max number of authorities allowed + +### maxNominators: `u32` +- **interface**: `api.consts.babe.maxNominators` +- **summary**: The maximum number of nominators for each validator. ___ @@ -299,6 +309,27 @@ ___ ___ +## broker + +### maxLeasedCores: `u32` +- **interface**: `api.consts.broker.maxLeasedCores` +- **summary**: Maximum number of legacy leases. + +### maxReservedCores: `u32` +- **interface**: `api.consts.broker.maxReservedCores` +- **summary**: Maximum number of system cores. + +### palletId: `FrameSupportPalletId` +- **interface**: `api.consts.broker.palletId` +- **summary**: Identifier from which the internal Pot is generated. + +### timeslicePeriod: `u32` +- **interface**: `api.consts.broker.timeslicePeriod` +- **summary**: Number of Relay-chain blocks per timeslice. + +___ + + ## childBounties ### childBountyValueMinimum: `u128` @@ -314,6 +345,10 @@ ___ ## contracts +### codeHashLockupDepositPercent: `Perbill` +- **interface**: `api.consts.contracts.codeHashLockupDepositPercent` +- **summary**: The percentage of the storage deposit that should be held for using a code hash. Instantiating a contract, or calling [`chain_extension::Ext::add_delegate_dependency`] protects the code from being removed. In order to prevent abuse these actions are protected with a percentage of the code deposit. + ### defaultDepositLimit: `u128` - **interface**: `api.consts.contracts.defaultDepositLimit` - **summary**: Fallback value to limit the storage deposit if it's not being set by the caller. @@ -334,9 +369,15 @@ ___ Changing this value for an existing chain might need a storage migration. +### environment: `PalletContractsEnvironment` +- **interface**: `api.consts.contracts.environment` +- **summary**: Type that bundles together all the runtime configurable interface types. + + This is not a real config. We just mention the type here as constant so that its type appears in the metadata. Only valid value is `()`. + ### maxCodeLen: `u32` - **interface**: `api.consts.contracts.maxCodeLen` -- **summary**: The maximum length of a contract code in bytes. This limit applies to the instrumented version of the code. Therefore `instantiate_with_code` can fail even when supplying a wasm binary below this maximum size. +- **summary**: The maximum length of a contract code in bytes. The value should be chosen carefully taking into the account the overall memory limit your runtime has, as well as the [maximum allowed callstack depth](#associatedtype.CallStack). Look into the `integrity_test()` for some insights. @@ -344,6 +385,10 @@ ___ - **interface**: `api.consts.contracts.maxDebugBufferLen` - **summary**: The maximum length of the debug buffer in bytes. +### maxDelegateDependencies: `u32` +- **interface**: `api.consts.contracts.maxDelegateDependencies` +- **summary**: The maximum number of delegate_dependencies that a contract can lock with [`chain_extension::Ext::add_delegate_dependency`]. + ### maxStorageKeyLen: `u32` - **interface**: `api.consts.contracts.maxStorageKeyLen` - **summary**: The maximum allowable length in bytes for storage keys. @@ -469,14 +514,6 @@ ___ - **interface**: `api.consts.electionProviderMultiPhase.betterUnsignedThreshold` - **summary**: The minimum amount of improvement to the solution score that defines a solution as "better" in the Unsigned phase. -### maxElectableTargets: `u16` -- **interface**: `api.consts.electionProviderMultiPhase.maxElectableTargets` -- **summary**: The maximum number of electable targets to put in the snapshot. - -### maxElectingVoters: `u32` -- **interface**: `api.consts.electionProviderMultiPhase.maxElectingVoters` -- **summary**: The maximum number of electing voters to put in the snapshot. At the moment, snapshots are only over a single block, but once multi-block elections are introduced they will take place over multiple blocks. - ### maxWinners: `u32` - **interface**: `api.consts.electionProviderMultiPhase.maxWinners` - **summary**: The maximum number of winners that can be elected by this `ElectionProvider` implementation. @@ -620,6 +657,10 @@ ___ - **interface**: `api.consts.grandpa.maxAuthorities` - **summary**: Max Authorities in use +### maxNominators: `u32` +- **interface**: `api.consts.grandpa.maxNominators` +- **summary**: The maximum number of nominators for each validator. + ### maxSetIdSessionEntries: `u64` - **interface**: `api.consts.grandpa.maxSetIdSessionEntries` - **summary**: The maximum number of entries to keep in the set id to session index mapping. @@ -1046,6 +1087,41 @@ ___ ___ +## safeMode + +### enterDepositAmount: `Option` +- **interface**: `api.consts.safeMode.enterDepositAmount` +- **summary**: The amount that will be reserved upon calling [`Pallet::enter`]. + + `None` disallows permissionlessly enabling the safe-mode and is a sane default. + +### enterDuration: `u32` +- **interface**: `api.consts.safeMode.enterDuration` +- **summary**: For how many blocks the safe-mode will be entered by [`Pallet::enter`]. + +### extendDepositAmount: `Option` +- **interface**: `api.consts.safeMode.extendDepositAmount` +- **summary**: The amount that will be reserved upon calling [`Pallet::extend`]. + + `None` disallows permissionlessly extending the safe-mode and is a sane default. + +### extendDuration: `u32` +- **interface**: `api.consts.safeMode.extendDuration` +- **summary**: For how many blocks the safe-mode can be extended by each [`Pallet::extend`] call. + + This does not impose a hard limit as the safe-mode can be extended multiple times. + +### releaseDelay: `Option` +- **interface**: `api.consts.safeMode.releaseDelay` +- **summary**: The minimal duration a deposit will remain reserved after safe-mode is entered or extended, unless [`Pallet::force_release_deposit`] is successfully called sooner. + + Every deposit is tied to a specific activation or extension, thus each deposit can be released independently after the delay for it has passed. + + `None` disallows permissionlessly releasing the safe-mode deposits and is a sane default. + +___ + + ## salary ### budget: `u128` @@ -1086,25 +1162,29 @@ ___ ## society -### candidateDeposit: `u128` -- **interface**: `api.consts.society.candidateDeposit` -- **summary**: The minimum amount of a deposit required for a bid to be made. - ### challengePeriod: `u32` - **interface**: `api.consts.society.challengePeriod` - **summary**: The number of blocks between membership challenges. -### maxCandidateIntake: `u32` -- **interface**: `api.consts.society.maxCandidateIntake` -- **summary**: The maximum number of candidates that we accept per round. +### claimPeriod: `u32` +- **interface**: `api.consts.society.claimPeriod` +- **summary**: The number of blocks on which new candidates can claim their membership and be the named head. + +### graceStrikes: `u32` +- **interface**: `api.consts.society.graceStrikes` +- **summary**: The maximum number of strikes before a member gets funds slashed. + +### maxBids: `u32` +- **interface**: `api.consts.society.maxBids` +- **summary**: The maximum number of bids at once. ### maxLockDuration: `u32` - **interface**: `api.consts.society.maxLockDuration` - **summary**: The maximum duration of the payout lock. -### maxStrikes: `u32` -- **interface**: `api.consts.society.maxStrikes` -- **summary**: The number of times a member may vote the wrong way (or not at all, when they are a skeptic) before they become suspended. +### maxPayouts: `u32` +- **interface**: `api.consts.society.maxPayouts` +- **summary**: The maximum number of payouts a member may have waiting unclaimed. ### palletId: `FrameSupportPalletId` - **interface**: `api.consts.society.palletId` @@ -1114,13 +1194,9 @@ ___ - **interface**: `api.consts.society.periodSpend` - **summary**: The amount of incentive paid within each period. Doesn't include VoterTip. -### rotationPeriod: `u32` -- **interface**: `api.consts.society.rotationPeriod` -- **summary**: The number of blocks between candidate/membership rotation periods. - -### wrongSideDeduction: `u128` -- **interface**: `api.consts.society.wrongSideDeduction` -- **summary**: The amount of the unpaid reward that gets deducted in the case that either a skeptic doesn't vote or someone votes in the wrong way. +### votingPeriod: `u32` +- **interface**: `api.consts.society.votingPeriod` +- **summary**: The number of blocks on which new candidates should be voted on. Together with `ClaimPeriod`, this sums to the number of blocks between candidate intake periods. ___ @@ -1143,10 +1219,6 @@ ___ Note: `HistoryDepth` is used as the upper bound for the `BoundedVec` item `StakingLedger.claimed_rewards`. Setting this value lower than the existing value can lead to inconsistencies in the `StakingLedger` and will need to be handled properly in a migration. The test `reducing_history_depth_abrupt` shows this effect. -### maxNominations: `u32` -- **interface**: `api.consts.staking.maxNominations` -- **summary**: Maximum number of nominations per nominator. - ### maxNominatorRewardedPerValidator: `u32` - **interface**: `api.consts.staking.maxNominatorRewardedPerValidator` - **summary**: The maximum number of nominators rewarded for each validator. @@ -1354,6 +1426,17 @@ ___ ___ +## txPause + +### maxNameLen: `u32` +- **interface**: `api.consts.txPause.maxNameLen` +- **summary**: Maximum length for pallet name and call name SCALE encoded string names. + + TOO LONG NAMES WILL BE TREATED AS PAUSED. + +___ + + ## uniques ### attributeDepositBase: `u128` diff --git a/docs/substrate/errors.md b/docs/substrate/errors.md index 83942e812a..b650679302 100644 --- a/docs/substrate/errors.md +++ b/docs/substrate/errors.md @@ -22,6 +22,8 @@ This page lists the errors that can be encountered in the different modules. - **[bounties](#bounties)** +- **[broker](#broker)** + - **[childBounties](#childbounties)** - **[contracts](#contracts)** @@ -80,6 +82,8 @@ This page lists the errors that can be encountered in the different modules. - **[remark](#remark)** +- **[safeMode](#safemode)** + - **[salary](#salary)** - **[scheduler](#scheduler)** @@ -106,6 +110,8 @@ This page lists the errors that can be encountered in the different modules. - **[treasury](#treasury)** +- **[txPause](#txpause)** + - **[uniques](#uniques)** - **[utility](#utility)** @@ -239,6 +245,10 @@ ___ - **interface**: `api.errors.allianceMotion.NotMember.is` - **summary**: Account is not a member +### PrimeAccountNotMember +- **interface**: `api.errors.allianceMotion.PrimeAccountNotMember.is` +- **summary**: Prime account is not a member + ### ProposalMissing - **interface**: `api.errors.allianceMotion.ProposalMissing.is` - **summary**: Proposal must exist @@ -268,14 +278,18 @@ ___ ## assetConversion -### AmountLessThanMinimal -- **interface**: `api.errors.assetConversion.AmountLessThanMinimal.is` +### AmountOneLessThanMinimal +- **interface**: `api.errors.assetConversion.AmountOneLessThanMinimal.is` - **summary**: Provided amount should be greater than or equal to the existential deposit/asset's minimal amount. ### AmountOutTooHigh - **interface**: `api.errors.assetConversion.AmountOutTooHigh.is` - **summary**: Desired amount can't be equal to the pool reserve. +### AmountTwoLessThanMinimal +- **interface**: `api.errors.assetConversion.AmountTwoLessThanMinimal.is` +- **summary**: Provided amount should be greater than or equal to the existential deposit/asset's minimal amount. + ### AssetOneDepositDidNotMeetMinimum - **interface**: `api.errors.assetConversion.AssetOneDepositDidNotMeetMinimum.is` - **summary**: The minimal amount requirement for the first token in the pair wasn't met. @@ -292,10 +306,18 @@ ___ - **interface**: `api.errors.assetConversion.AssetTwoWithdrawalDidNotMeetMinimum.is` - **summary**: The minimal amount requirement for the second token in the pair wasn't met. +### CorrespondenceError +- **interface**: `api.errors.assetConversion.CorrespondenceError.is` +- **summary**: Unable to find an element in an array/vec that should have one-to-one correspondence with another. For example, an array of assets constituting a `path` should have a corresponding array of `amounts` along the path. + ### EqualAssets - **interface**: `api.errors.assetConversion.EqualAssets.is` - **summary**: Provided assets are equal. +### IncorrectPoolAssetId +- **interface**: `api.errors.assetConversion.IncorrectPoolAssetId.is` +- **summary**: It was not possible to get or increment the Id of the pool. + ### InsufficientLiquidity - **interface**: `api.errors.assetConversion.InsufficientLiquidity.is` - **summary**: Insufficient liquidity in the pool. @@ -348,6 +370,10 @@ ___ - **interface**: `api.errors.assetConversion.ReserveLeftLessThanMinimal.is` - **summary**: Reserve needs to always be greater than or equal to the existential deposit/asset's minimal amount. +### UnsupportedAsset +- **interface**: `api.errors.assetConversion.UnsupportedAsset.is` +- **summary**: Provided asset is not supported for pool. + ### WrongDesiredAmount - **interface**: `api.errors.assetConversion.WrongDesiredAmount.is` - **summary**: Desired amount can't be zero. @@ -369,8 +395,8 @@ ___ - **interface**: `api.errors.assetRate.AlreadyExists.is` - **summary**: The given asset ID already has an assigned conversion rate and cannot be re-created. -### UnknownAssetId -- **interface**: `api.errors.assetRate.UnknownAssetId.is` +### UnknownAssetKind +- **interface**: `api.errors.assetRate.UnknownAssetKind.is` - **summary**: The given asset ID is unknown. ___ @@ -576,6 +602,123 @@ ___ ___ +## broker + +### AlreadyExpired +- **interface**: `api.errors.broker.AlreadyExpired.is` +- **summary**: The lease expiry time has already passed. + +### CompletePivot +- **interface**: `api.errors.broker.CompletePivot.is` +- **summary**: The pivot mask for the interlacing is complete (and therefore not a strict subset). + +### CorruptWorkplan +- **interface**: `api.errors.broker.CorruptWorkplan.is` +- **summary**: The workplan of the pallet's state is invalid. This indicates a state corruption. + +### ExteriorPivot +- **interface**: `api.errors.broker.ExteriorPivot.is` +- **summary**: The pivot mask for the interlacing is not contained within the region's interlace mask. + +### IncompleteAssignment +- **interface**: `api.errors.broker.IncompleteAssignment.is` +- **summary**: The workload assigned for renewal is incomplete. This is unexpected and indicates a logic error. + +### InvalidConfig +- **interface**: `api.errors.broker.InvalidConfig.is` +- **summary**: The configuration could not be applied because it is invalid. + +### NoHistory +- **interface**: `api.errors.broker.NoHistory.is` +- **summary**: The history item does not exist. + +### NoSales +- **interface**: `api.errors.broker.NoSales.is` +- **summary**: There is no sale happening currently. + +### NotAllowed +- **interface**: `api.errors.broker.NotAllowed.is` +- **summary**: Invalid attempt to renew. + +### NothingToDo +- **interface**: `api.errors.broker.NothingToDo.is` +- **summary**: There is no work to be done. + +### NotOwner +- **interface**: `api.errors.broker.NotOwner.is` +- **summary**: The owner of the region is not the origin. + +### Overpriced +- **interface**: `api.errors.broker.Overpriced.is` +- **summary**: The price limit is exceeded. + +### PivotTooEarly +- **interface**: `api.errors.broker.PivotTooEarly.is` +- **summary**: The pivot point of the partition at the beginning of the region. + +### PivotTooLate +- **interface**: `api.errors.broker.PivotTooLate.is` +- **summary**: The pivot point of the partition at or after the end of the region. + +### SoldOut +- **interface**: `api.errors.broker.SoldOut.is` +- **summary**: The sale limit has been reached. + +### StillValid +- **interface**: `api.errors.broker.StillValid.is` +- **summary**: An item cannot be dropped because it is still valid. + +### TooEarly +- **interface**: `api.errors.broker.TooEarly.is` +- **summary**: The purchase cannot happen yet as the sale period is yet to begin. + +### TooManyLeases +- **interface**: `api.errors.broker.TooManyLeases.is` +- **summary**: The maximum amount of leases has already been reached. + +### TooManyReservations +- **interface**: `api.errors.broker.TooManyReservations.is` +- **summary**: The maximum amount of reservations has already been reached. + +### Unavailable +- **interface**: `api.errors.broker.Unavailable.is` +- **summary**: There are no cores available. + +### Uninitialized +- **interface**: `api.errors.broker.Uninitialized.is` +- **summary**: This pallet has not yet been initialized. + +### UnknownContribution +- **interface**: `api.errors.broker.UnknownContribution.is` +- **summary**: The identified contribution to the Instantaneous Core Pool is unknown. + +### UnknownRegion +- **interface**: `api.errors.broker.UnknownRegion.is` +- **summary**: The given region identity is not known. + +### UnknownRenewal +- **interface**: `api.errors.broker.UnknownRenewal.is` +- **summary**: The renewal record cannot be found. + +### UnknownReservation +- **interface**: `api.errors.broker.UnknownReservation.is` +- **summary**: No reservation of the given index exists. + +### UnknownRevenue +- **interface**: `api.errors.broker.UnknownRevenue.is` +- **summary**: The revenue for the Instantaneous Core Sales of this period is not (yet) known and thus this operation cannot proceed. + +### VoidPivot +- **interface**: `api.errors.broker.VoidPivot.is` +- **summary**: The pivot mask for the interlacing is void (and therefore unschedulable). + +### WrongTime +- **interface**: `api.errors.broker.WrongTime.is` +- **summary**: The renewal operation is not valid at the current time (it may become valid in the next sale). + +___ + + ## childBounties ### InsufficientBountyBalance @@ -595,6 +738,14 @@ ___ ## contracts +### CannotAddSelfAsDelegateDependency +- **interface**: `api.errors.contracts.CannotAddSelfAsDelegateDependency.is` +- **summary**: Can not add a delegate dependency to the code hash of the contract itself. + +### CodeInfoNotFound +- **interface**: `api.errors.contracts.CodeInfoNotFound.is` +- **summary**: No code info could be found at the supplied code hash. + ### CodeInUse - **interface**: `api.errors.contracts.CodeInUse.is` - **summary**: Code removal was denied because the code is still in use by at least one contract. @@ -605,7 +756,7 @@ ___ ### CodeRejected - **interface**: `api.errors.contracts.CodeRejected.is` -- **summary**: The contract's code was found to be invalid during validation or instrumentation. +- **summary**: The contract's code was found to be invalid during validation. The most likely cause of this is that an API was used which is not supported by the node. This happens if an older node is used with a new version of ink!. Try updating your node to the newest available version. @@ -631,6 +782,14 @@ ___ - **interface**: `api.errors.contracts.DecodingFailed.is` - **summary**: Input passed to a contract API function failed to decode as expected type. +### DelegateDependencyAlreadyExists +- **interface**: `api.errors.contracts.DelegateDependencyAlreadyExists.is` +- **summary**: The contract already depends on the given delegate dependency. + +### DelegateDependencyNotFound +- **interface**: `api.errors.contracts.DelegateDependencyNotFound.is` +- **summary**: The dependency was not found in the contract's delegate dependencies. + ### DuplicateContract - **interface**: `api.errors.contracts.DuplicateContract.is` - **summary**: A contract with the same AccountId already exists. @@ -647,14 +806,18 @@ ___ - **interface**: `api.errors.contracts.InvalidCallFlags.is` - **summary**: Invalid combination of flags supplied to `seal_call` or `seal_delegate_call`. -### InvalidScheduleVersion -- **interface**: `api.errors.contracts.InvalidScheduleVersion.is` -- **summary**: A new schedule must have a greater version than the current one. +### InvalidSchedule +- **interface**: `api.errors.contracts.InvalidSchedule.is` +- **summary**: Invalid schedule supplied, e.g. with zero weight of a basic operation. ### MaxCallDepthReached - **interface**: `api.errors.contracts.MaxCallDepthReached.is` - **summary**: Performing a call was denied because the calling depth reached the limit of what is specified in the schedule. +### MaxDelegateDependenciesReached +- **interface**: `api.errors.contracts.MaxDelegateDependenciesReached.is` +- **summary**: The contract has reached its maximum number of delegate dependencies. + ### MigrationInProgress - **interface**: `api.errors.contracts.MigrationInProgress.is` - **summary**: A pending migration needs to complete before the extrinsic can be called. @@ -832,6 +995,10 @@ ___ - **interface**: `api.errors.council.NotMember.is` - **summary**: Account is not a member +### PrimeAccountNotMember +- **interface**: `api.errors.council.PrimeAccountNotMember.is` +- **summary**: Prime account is not a member + ### ProposalMissing - **interface**: `api.errors.council.ProposalMissing.is` - **summary**: Proposal must exist @@ -1132,6 +1299,10 @@ ___ - **summary**: The pallet was already initialized. Set `witness_count` to `Some` to bypass this error. + +### InsaneLimit +- **interface**: `api.errors.glutton.InsaneLimit.is` +- **summary**: The limit was over [`crate::RESOURCE_HARD_LIMIT`]. ___ @@ -1343,6 +1514,12 @@ ___ - **interface**: `api.errors.messageQueue.Queued.is` - **summary**: The message is queued for future execution. +### QueuePaused +- **interface**: `api.errors.messageQueue.QueuePaused.is` +- **summary**: The queue is paused and no message can be executed from it. + + This can change at any time and may resolve in the future by re-trying. + ### TemporarilyUnprocessable - **interface**: `api.errors.messageQueue.TemporarilyUnprocessable.is` - **summary**: This message is temporarily unprocessable. @@ -1710,6 +1887,10 @@ ___ - **interface**: `api.errors.nominationPools.CommissionChangeThrottled.is` - **summary**: Not enough blocks have surpassed since the last commission update. +### CommissionExceedsGlobalMaximum +- **interface**: `api.errors.nominationPools.CommissionExceedsGlobalMaximum.is` +- **summary**: The supplied commission exceeds global maximum commission. + ### CommissionExceedsMaximum - **interface**: `api.errors.nominationPools.CommissionExceedsMaximum.is` - **summary**: The supplied commission exceeds the max allowed commission. @@ -2199,6 +2380,39 @@ ___ ___ +## safeMode + +### AlreadyDeposited +- **interface**: `api.errors.safeMode.AlreadyDeposited.is` +- **summary**: The account already has a deposit reserved and can therefore not enter or extend again. + +### CannotReleaseYet +- **interface**: `api.errors.safeMode.CannotReleaseYet.is` +- **summary**: This deposit cannot be released yet. + +### CurrencyError +- **interface**: `api.errors.safeMode.CurrencyError.is` +- **summary**: An error from the underlying `Currency`. + +### Entered +- **interface**: `api.errors.safeMode.Entered.is` +- **summary**: The safe-mode is (already or still) entered. + +### Exited +- **interface**: `api.errors.safeMode.Exited.is` +- **summary**: The safe-mode is (already or still) exited. + +### NoDeposit +- **interface**: `api.errors.safeMode.NoDeposit.is` +- **summary**: There is no balance reserved. + +### NotConfigured +- **interface**: `api.errors.safeMode.NotConfigured.is` +- **summary**: This functionality of the pallet is disabled by the configuration. + +___ + + ## salary ### AlreadyInducted @@ -2319,6 +2533,10 @@ ___ - **interface**: `api.errors.society.AlreadyCandidate.is` - **summary**: User is already a candidate. +### AlreadyElevated +- **interface**: `api.errors.society.AlreadyElevated.is` +- **summary**: The member is already elevated to this rank. + ### AlreadyFounded - **interface**: `api.errors.society.AlreadyFounded.is` - **summary**: Society already founded. @@ -2327,13 +2545,21 @@ ___ - **interface**: `api.errors.society.AlreadyMember.is` - **summary**: User is already a member. +### AlreadyPunished +- **interface**: `api.errors.society.AlreadyPunished.is` +- **summary**: The skeptic has already been punished for this offence. + ### AlreadyVouching - **interface**: `api.errors.society.AlreadyVouching.is` - **summary**: Member is already vouching or banned from vouching again. -### BadPosition -- **interface**: `api.errors.society.BadPosition.is` -- **summary**: An incorrect position was provided. +### Approved +- **interface**: `api.errors.society.Approved.is` +- **summary**: The candidacy cannot be dropped as the candidate was clearly approved. + +### Expired +- **interface**: `api.errors.society.Expired.is` +- **summary**: The skeptic need not vote on candidates from expired rounds. ### Founder - **interface**: `api.errors.society.Founder.is` @@ -2343,6 +2569,14 @@ ___ - **interface**: `api.errors.society.Head.is` - **summary**: Cannot remove the head of the chain. +### InProgress +- **interface**: `api.errors.society.InProgress.is` +- **summary**: The candidacy cannot be concluded as the voting is still in progress. + +### InsufficientFunds +- **interface**: `api.errors.society.InsufficientFunds.is` +- **summary**: Funds are insufficient to pay off society debts. + ### InsufficientPot - **interface**: `api.errors.society.InsufficientPot.is` - **summary**: Not enough in pot to accept candidate. @@ -2351,10 +2585,22 @@ ___ - **interface**: `api.errors.society.MaxMembers.is` - **summary**: Too many members in the society. +### NoDefender +- **interface**: `api.errors.society.NoDefender.is` +- **summary**: There is no defender currently. + ### NoPayout - **interface**: `api.errors.society.NoPayout.is` - **summary**: Nothing to payout. +### NotApproved +- **interface**: `api.errors.society.NotApproved.is` +- **summary**: The membership cannot be claimed as the candidate was not clearly approved. + +### NotBidder +- **interface**: `api.errors.society.NotBidder.is` +- **summary**: User is not a bidder. + ### NotCandidate - **interface**: `api.errors.society.NotCandidate.is` - **summary**: User is not a candidate. @@ -2363,6 +2609,10 @@ ___ - **interface**: `api.errors.society.NotFounder.is` - **summary**: The caller is not the founder. +### NotGroup +- **interface**: `api.errors.society.NotGroup.is` +- **summary**: Group doesn't exist. + ### NotHead - **interface**: `api.errors.society.NotHead.is` - **summary**: The caller is not the head. @@ -2371,17 +2621,37 @@ ___ - **interface**: `api.errors.society.NotMember.is` - **summary**: User is not a member. +### NotRejected +- **interface**: `api.errors.society.NotRejected.is` +- **summary**: The candidate cannot be kicked as the candidate was not clearly rejected. + ### NotSuspended - **interface**: `api.errors.society.NotSuspended.is` - **summary**: User is not suspended. -### NotVouching -- **interface**: `api.errors.society.NotVouching.is` +### NotVouchingOnBidder +- **interface**: `api.errors.society.NotVouchingOnBidder.is` - **summary**: Member is not vouching. +### NoVotes +- **interface**: `api.errors.society.NoVotes.is` +- **summary**: The candidate/defender has no stale votes to remove. + +### Rejected +- **interface**: `api.errors.society.Rejected.is` +- **summary**: The candidacy cannot be bestowed as the candidate was clearly rejected. + ### Suspended - **interface**: `api.errors.society.Suspended.is` - **summary**: User is suspended. + +### TooEarly +- **interface**: `api.errors.society.TooEarly.is` +- **summary**: The candidacy cannot be pruned until a full additional intake period has passed. + +### Voted +- **interface**: `api.errors.society.Voted.is` +- **summary**: The skeptic already voted. ___ @@ -2580,6 +2850,10 @@ ___ - **interface**: `api.errors.technicalCommittee.NotMember.is` - **summary**: Account is not a member +### PrimeAccountNotMember +- **interface**: `api.errors.technicalCommittee.PrimeAccountNotMember.is` +- **summary**: Prime account is not a member + ### ProposalMissing - **interface**: `api.errors.technicalCommittee.ProposalMissing.is` - **summary**: Proposal must exist @@ -2735,6 +3009,26 @@ ___ ___ +## txPause + +### IsPaused +- **interface**: `api.errors.txPause.IsPaused.is` +- **summary**: The call is paused. + +### IsUnpaused +- **interface**: `api.errors.txPause.IsUnpaused.is` +- **summary**: The call is unpaused. + +### NotFound +- **interface**: `api.errors.txPause.NotFound.is` + +### Unpausable +- **interface**: `api.errors.txPause.Unpausable.is` +- **summary**: The call is whitelisted and cannot be paused. + +___ + + ## uniques ### AlreadyExists diff --git a/docs/substrate/events.md b/docs/substrate/events.md index 7a320525a3..34463f2b68 100644 --- a/docs/substrate/events.md +++ b/docs/substrate/events.md @@ -12,6 +12,8 @@ Events are emitted for certain operations on the runtime. The following sections - **[assetConversion](#assetconversion)** +- **[assetConversionTxPayment](#assetconversiontxpayment)** + - **[assetRate](#assetrate)** - **[assets](#assets)** @@ -22,6 +24,8 @@ Events are emitted for certain operations on the runtime. The following sections - **[bounties](#bounties)** +- **[broker](#broker)** + - **[childBounties](#childbounties)** - **[contracts](#contracts)** @@ -84,6 +88,8 @@ Events are emitted for certain operations on the runtime. The following sections - **[remark](#remark)** +- **[safeMode](#safemode)** + - **[salary](#salary)** - **[scheduler](#scheduler)** @@ -114,6 +120,8 @@ Events are emitted for certain operations on the runtime. The following sections - **[treasury](#treasury)** +- **[txPause](#txpause)** + - **[uniques](#uniques)** - **[utility](#utility)** @@ -228,7 +236,7 @@ ___ - **interface**: `api.events.assetConversion.LiquidityRemoved.is` - **summary**: A successful call of the `RemoveLiquidity` extrinsic will create this event. -### PoolCreated(`AccountId32`, `(PalletAssetConversionNativeOrAssetId,PalletAssetConversionNativeOrAssetId)`, `u32`) +### PoolCreated(`AccountId32`, `(PalletAssetConversionNativeOrAssetId,PalletAssetConversionNativeOrAssetId)`, `AccountId32`, `u32`) - **interface**: `api.events.assetConversion.PoolCreated.is` - **summary**: A successful call of the `CretaPool` extrinsic will create this event. @@ -243,6 +251,19 @@ ___ ___ +## assetConversionTxPayment + +### AssetRefundFailed(`u128`) +- **interface**: `api.events.assetConversionTxPayment.AssetRefundFailed.is` +- **summary**: A swap of the refund in native currency back to asset failed. + +### AssetTxFeePaid(`AccountId32`, `u128`, `u128`, `u32`) +- **interface**: `api.events.assetConversionTxPayment.AssetTxFeePaid.is` +- **summary**: A transaction fee `actual_fee`, of which `tip` was added to the minimum inclusion fee, has been paid by `who` in an asset `asset_id`. + +___ + + ## assetRate ### AssetRateCreated(`u32`, `u128`) @@ -489,6 +510,123 @@ ___ ___ +## broker + +### AllowedRenewalDropped(`u32`, `u16`) +- **interface**: `api.events.broker.AllowedRenewalDropped.is` +- **summary**: Some historical Instantaneous Core Pool payment record has been dropped. + +### Assigned(`PalletBrokerRegionId`, `u32`, `u32`) +- **interface**: `api.events.broker.Assigned.is` +- **summary**: A Region has been assigned to a particular task. + +### ClaimsReady(`u32`, `u128`, `u128`) +- **interface**: `api.events.broker.ClaimsReady.is` +- **summary**: Some historical Instantaneous Core Pool Revenue is ready for payout claims. + +### ContributionDropped(`PalletBrokerRegionId`) +- **interface**: `api.events.broker.ContributionDropped.is` +- **summary**: Some historical Instantaneous Core Pool contribution record has been dropped. + +### CoreAssigned(`u16`, `u32`, `Vec<(PalletBrokerCoretimeInterfaceCoreAssignment,u16)>`) +- **interface**: `api.events.broker.CoreAssigned.is` +- **summary**: A Core has been assigned to one or more tasks and/or the Pool on the Relay-chain. + +### CoreCountChanged(`u16`) +- **interface**: `api.events.broker.CoreCountChanged.is` +- **summary**: The number of cores available for scheduling has changed. + +### CoreCountRequested(`u16`) +- **interface**: `api.events.broker.CoreCountRequested.is` +- **summary**: A new number of cores has been requested. + +### CreditPurchased(`AccountId32`, `AccountId32`, `u128`) +- **interface**: `api.events.broker.CreditPurchased.is` +- **summary**: Some Instantaneous Coretime Pool credit has been purchased. + +### HistoryDropped(`u32`, `u128`) +- **interface**: `api.events.broker.HistoryDropped.is` +- **summary**: Some historical Instantaneous Core Pool payment record has been dropped. + +### HistoryIgnored(`u32`, `u128`) +- **interface**: `api.events.broker.HistoryIgnored.is` +- **summary**: Some historical Instantaneous Core Pool payment record has been ignored because the timeslice was already known. Governance may need to intervene. + +### HistoryInitialized(`u32`, `u32`, `u32`) +- **interface**: `api.events.broker.HistoryInitialized.is` +- **summary**: Some historical Instantaneous Core Pool payment record has been initialized. + +### Interlaced(`PalletBrokerRegionId`, `(PalletBrokerRegionId,PalletBrokerRegionId)`) +- **interface**: `api.events.broker.Interlaced.is` +- **summary**: A Region has been converted into two overlapping Regions each of lesser regularity. + +### Leased(`u32`, `u32`) +- **interface**: `api.events.broker.Leased.is` +- **summary**: A new lease has been created. + +### LeaseEnding(`u32`, `u32`) +- **interface**: `api.events.broker.LeaseEnding.is` +- **summary**: A lease is about to end. + +### Partitioned(`PalletBrokerRegionId`, `(PalletBrokerRegionId,PalletBrokerRegionId)`) +- **interface**: `api.events.broker.Partitioned.is` +- **summary**: A Region has been split into two non-overlapping Regions. + +### Pooled(`PalletBrokerRegionId`, `u32`) +- **interface**: `api.events.broker.Pooled.is` +- **summary**: A Region has been added to the Instantaneous Coretime Pool. + +### Purchased(`AccountId32`, `PalletBrokerRegionId`, `u128`, `u32`) +- **interface**: `api.events.broker.Purchased.is` +- **summary**: A Region of Bulk Coretime has been purchased. + +### RegionDropped(`PalletBrokerRegionId`, `u32`) +- **interface**: `api.events.broker.RegionDropped.is` +- **summary**: A Region has been dropped due to being out of date. + +### Renewable(`u16`, `u128`, `u32`, `Vec`) +- **interface**: `api.events.broker.Renewable.is` +- **summary**: The workload of a core has become renewable. + +### Renewed(`AccountId32`, `u128`, `u16`, `u16`, `u32`, `u32`, `Vec`) +- **interface**: `api.events.broker.Renewed.is` +- **summary**: A workload has been renewed. + +### ReservationCancelled(`u32`, `Vec`) +- **interface**: `api.events.broker.ReservationCancelled.is` +- **summary**: A reservation for a workload has been cancelled. + +### ReservationMade(`u32`, `Vec`) +- **interface**: `api.events.broker.ReservationMade.is` +- **summary**: There is a new reservation for a workload. + +### RevenueClaimBegun(`PalletBrokerRegionId`, `u32`) +- **interface**: `api.events.broker.RevenueClaimBegun.is` +- **summary**: The act of claiming revenue has begun. + +### RevenueClaimItem(`u32`, `u128`) +- **interface**: `api.events.broker.RevenueClaimItem.is` +- **summary**: A particular timeslice has a non-zero claim. + +### RevenueClaimPaid(`AccountId32`, `u128`, `Option`) +- **interface**: `api.events.broker.RevenueClaimPaid.is` +- **summary**: A revenue claim has (possibly only in part) been paid. + +### SaleInitialized(`u32`, `u32`, `u128`, `u128`, `u32`, `u32`, `u16`, `u16`) +- **interface**: `api.events.broker.SaleInitialized.is` +- **summary**: A new sale has been initialized. + +### SalesStarted(`u128`, `u16`) +- **interface**: `api.events.broker.SalesStarted.is` +- **summary**: The sale rotation has been started and a new sale is imminent. + +### Transferred(`PalletBrokerRegionId`, `u32`, `AccountId32`, `AccountId32`) +- **interface**: `api.events.broker.Transferred.is` +- **summary**: Ownership of a Region has been transferred. + +___ + + ## childBounties ### Added(`u32`, `u32`) @@ -520,11 +658,11 @@ ___ Please keep in mind that like all events this is only emitted for successful calls. This is because on failure all storage changes including events are rolled back. -### CodeRemoved(`H256`) +### CodeRemoved(`H256`, `u128`, `AccountId32`) - **interface**: `api.events.contracts.CodeRemoved.is` - **summary**: A code with the specified hash was removed. -### CodeStored(`H256`) +### CodeStored(`H256`, `u128`, `AccountId32`) - **interface**: `api.events.contracts.CodeStored.is` - **summary**: Code with the specified hash has been stored. @@ -548,6 +686,14 @@ ___ - **interface**: `api.events.contracts.Instantiated.is` - **summary**: Contract deployed by address at the specified address. +### StorageDepositTransferredAndHeld(`AccountId32`, `AccountId32`, `u128`) +- **interface**: `api.events.contracts.StorageDepositTransferredAndHeld.is` +- **summary**: Some funds have been transferred and held as storage deposit. + +### StorageDepositTransferredAndReleased(`AccountId32`, `AccountId32`, `u128`) +- **interface**: `api.events.contracts.StorageDepositTransferredAndReleased.is` +- **summary**: Some storage deposit funds have been transferred and released. + ### Terminated(`AccountId32`, `AccountId32`) - **interface**: `api.events.contracts.Terminated.is` - **summary**: Contract has been removed. @@ -820,7 +966,7 @@ ___ ## glutton -### ComputationLimitSet(`Perbill`) +### ComputationLimitSet(`u64`) - **interface**: `api.events.glutton.ComputationLimitSet.is` - **summary**: The computation limit has been updated. @@ -828,7 +974,7 @@ ___ - **interface**: `api.events.glutton.PalletInitialized.is` - **summary**: The pallet has been (re)initialized. -### StorageLimitSet(`Perbill`) +### StorageLimitSet(`u64`) - **interface**: `api.events.glutton.StorageLimitSet.is` - **summary**: The storage limit has been updated. @@ -1109,7 +1255,7 @@ ___ - **interface**: `api.events.nfts.ItemTransferUnlocked.is` - **summary**: An `item` became transferable. -### NextCollectionIdIncremented(`u32`) +### NextCollectionIdIncremented(`Option`) - **interface**: `api.events.nfts.NextCollectionIdIncremented.is` - **summary**: Event gets emitted when the `NextCollectionId` gets incremented. @@ -1627,6 +1773,47 @@ ___ ___ +## safeMode + +### CannotDeposit() +- **interface**: `api.events.safeMode.CannotDeposit.is` +- **summary**: Could not hold funds for entering or extending the safe-mode. + + This error comes from the underlying `Currency`. + +### CannotRelease() +- **interface**: `api.events.safeMode.CannotRelease.is` +- **summary**: Could not release funds for entering or extending the safe-mode. + + This error comes from the underlying `Currency`. + +### DepositPlaced(`AccountId32`, `u128`) +- **interface**: `api.events.safeMode.DepositPlaced.is` +- **summary**: An account reserved funds for either entering or extending the safe-mode. + +### DepositReleased(`AccountId32`, `u128`) +- **interface**: `api.events.safeMode.DepositReleased.is` +- **summary**: An account had a reserve released that was reserved. + +### DepositSlashed(`AccountId32`, `u128`) +- **interface**: `api.events.safeMode.DepositSlashed.is` +- **summary**: An account had reserve slashed that was reserved. + +### Entered(`u32`) +- **interface**: `api.events.safeMode.Entered.is` +- **summary**: The safe-mode was entered until inclusively this block. + +### Exited(`PalletSafeModeExitReason`) +- **interface**: `api.events.safeMode.Exited.is` +- **summary**: Exited the safe-mode for a specific reason. + +### Extended(`u32`) +- **interface**: `api.events.safeMode.Extended.is` +- **summary**: The safe-mode was extended until inclusively this block. + +___ + + ## salary ### CycleStarted(`u32`) @@ -1712,6 +1899,10 @@ ___ - **interface**: `api.events.society.Deposit.is` - **summary**: Some funds were deposited into the society account. +### Elevated(`AccountId32`, `u32`) +- **interface**: `api.events.society.Elevated.is` +- **summary**: A \[member\] got elevated to \[rank\]. + ### Founded(`AccountId32`) - **interface**: `api.events.society.Founded.is` - **summary**: The society is founded by the given identity. @@ -1724,13 +1915,9 @@ ___ - **interface**: `api.events.society.MemberSuspended.is` - **summary**: A member has been suspended -### NewMaxMembers(`u32`) -- **interface**: `api.events.society.NewMaxMembers.is` -- **summary**: A new \[max\] member count has been set - -### SkepticsChosen(`Vec`) -- **interface**: `api.events.society.SkepticsChosen.is` -- **summary**: A group of members has been choosen as Skeptics +### NewParams(`PalletSocietyGroupParams`) +- **interface**: `api.events.society.NewParams.is` +- **summary**: A new set of \[params\] has been set for the group. ### SuspendedMemberJudgement(`AccountId32`, `bool`) - **interface**: `api.events.society.SuspendedMemberJudgement.is` @@ -1803,6 +1990,14 @@ ___ - **interface**: `api.events.staking.SlashReported.is` - **summary**: A slash for the given validator, for the given percentage of their stake, at the given era as been reported. +### SnapshotTargetsSizeExceeded(`u32`) +- **interface**: `api.events.staking.SnapshotTargetsSizeExceeded.is` +- **summary**: Targets size limit reached. + +### SnapshotVotersSizeExceeded(`u32`) +- **interface**: `api.events.staking.SnapshotVotersSizeExceeded.is` +- **summary**: Voters size limit reached. + ### StakersElected() - **interface**: `api.events.staking.StakersElected.is` - **summary**: A new set of stakers was elected. @@ -2056,6 +2251,19 @@ ___ ___ +## txPause + +### CallPaused(`(Bytes,Bytes)`) +- **interface**: `api.events.txPause.CallPaused.is` +- **summary**: This pallet, or a specific call is now paused. + +### CallUnpaused(`(Bytes,Bytes)`) +- **interface**: `api.events.txPause.CallUnpaused.is` +- **summary**: This pallet, or a specific call is now unpaused. + +___ + + ## uniques ### ApprovalCancelled(`u32`, `u32`, `AccountId32`, `AccountId32`) diff --git a/docs/substrate/extrinsics.md b/docs/substrate/extrinsics.md index cc0f5fedcd..feb97fe331 100644 --- a/docs/substrate/extrinsics.md +++ b/docs/substrate/extrinsics.md @@ -22,6 +22,8 @@ The following sections contain Extrinsics methods are part of the default Substr - **[bounties](#bounties)** +- **[broker](#broker)** + - **[childBounties](#childbounties)** - **[contracts](#contracts)** @@ -84,6 +86,8 @@ The following sections contain Extrinsics methods are part of the default Substr - **[rootTesting](#roottesting)** +- **[safeMode](#safemode)** + - **[salary](#salary)** - **[scheduler](#scheduler)** @@ -112,6 +116,8 @@ The following sections contain Extrinsics methods are part of the default Substr - **[treasury](#treasury)** +- **[txPause](#txpause)** + - **[uniques](#uniques)** - **[utility](#utility)** @@ -255,15 +261,15 @@ ___ ## assetRate -### create(asset_id: `u32`, rate: `u128`) +### create(asset_kind: `u32`, rate: `u128`) - **interface**: `api.tx.assetRate.create` - **summary**: See [`Pallet::create`]. -### remove(asset_id: `u32`) +### remove(asset_kind: `u32`) - **interface**: `api.tx.assetRate.remove` - **summary**: See [`Pallet::remove`]. -### update(asset_id: `u32`, rate: `u128`) +### update(asset_kind: `u32`, rate: `u128`) - **interface**: `api.tx.assetRate.update` - **summary**: See [`Pallet::update`]. @@ -502,6 +508,87 @@ ___ ___ +## broker + +### assign(region_id: `PalletBrokerRegionId`, task: `u32`, finality: `PalletBrokerFinality`) +- **interface**: `api.tx.broker.assign` +- **summary**: See [`Pallet::assign`]. + +### claimRevenue(region_id: `PalletBrokerRegionId`, max_timeslices: `u32`) +- **interface**: `api.tx.broker.claimRevenue` +- **summary**: See [`Pallet::claim_revenue`]. + +### configure(config: `PalletBrokerConfigRecord`) +- **interface**: `api.tx.broker.configure` +- **summary**: See [`Pallet::configure`]. + +### dropContribution(region_id: `PalletBrokerRegionId`) +- **interface**: `api.tx.broker.dropContribution` +- **summary**: See [`Pallet::drop_contribution`]. + +### dropHistory(when: `u32`) +- **interface**: `api.tx.broker.dropHistory` +- **summary**: See [`Pallet::drop_history`]. + +### dropRegion(region_id: `PalletBrokerRegionId`) +- **interface**: `api.tx.broker.dropRegion` +- **summary**: See [`Pallet::drop_region`]. + +### dropRenewal(core: `u16`, when: `u32`) +- **interface**: `api.tx.broker.dropRenewal` +- **summary**: See [`Pallet::drop_renewal`]. + +### interlace(region_id: `PalletBrokerRegionId`, pivot: `PalletBrokerCoreMask`) +- **interface**: `api.tx.broker.interlace` +- **summary**: See [`Pallet::interlace`]. + +### partition(region_id: `PalletBrokerRegionId`, pivot: `u32`) +- **interface**: `api.tx.broker.partition` +- **summary**: See [`Pallet::partition`]. + +### pool(region_id: `PalletBrokerRegionId`, payee: `AccountId32`, finality: `PalletBrokerFinality`) +- **interface**: `api.tx.broker.pool` +- **summary**: See [`Pallet::pool`]. + +### purchase(price_limit: `u128`) +- **interface**: `api.tx.broker.purchase` +- **summary**: See [`Pallet::purchase`]. + +### purchaseCredit(amount: `u128`, beneficiary: `AccountId32`) +- **interface**: `api.tx.broker.purchaseCredit` +- **summary**: See [`Pallet::purchase_credit`]. + +### renew(core: `u16`) +- **interface**: `api.tx.broker.renew` +- **summary**: See [`Pallet::renew`]. + +### requestCoreCount(core_count: `u16`) +- **interface**: `api.tx.broker.requestCoreCount` +- **summary**: See [`Pallet::request_core_count`]. + +### reserve(workload: `Vec`) +- **interface**: `api.tx.broker.reserve` +- **summary**: See [`Pallet::reserve`]. + +### setLease(task: `u32`, until: `u32`) +- **interface**: `api.tx.broker.setLease` +- **summary**: See [`Pallet::set_lease`]. + +### startSales(initial_price: `u128`, core_count: `u16`) +- **interface**: `api.tx.broker.startSales` +- **summary**: See [`Pallet::start_sales`]. + +### transfer(region_id: `PalletBrokerRegionId`, new_owner: `AccountId32`) +- **interface**: `api.tx.broker.transfer` +- **summary**: See [`Pallet::transfer`]. + +### unreserve(item_index: `u32`) +- **interface**: `api.tx.broker.unreserve` +- **summary**: See [`Pallet::unreserve`]. + +___ + + ## childBounties ### acceptCurator(parent_bounty_id: `Compact`, child_bounty_id: `Compact`) @@ -837,11 +924,11 @@ ___ - **interface**: `api.tx.glutton.initializePallet` - **summary**: See [`Pallet::initialize_pallet`]. -### setCompute(compute: `Perbill`) +### setCompute(compute: `u64`) - **interface**: `api.tx.glutton.setCompute` - **summary**: See [`Pallet::set_compute`]. -### setStorage(storage: `Perbill`) +### setStorage(storage: `u64`) - **interface**: `api.tx.glutton.setStorage` - **summary**: See [`Pallet::set_storage`]. @@ -1697,6 +1784,43 @@ ___ ___ +## safeMode + +### enter() +- **interface**: `api.tx.safeMode.enter` +- **summary**: See [`Pallet::enter`]. + +### extend() +- **interface**: `api.tx.safeMode.extend` +- **summary**: See [`Pallet::extend`]. + +### forceEnter() +- **interface**: `api.tx.safeMode.forceEnter` +- **summary**: See [`Pallet::force_enter`]. + +### forceExit() +- **interface**: `api.tx.safeMode.forceExit` +- **summary**: See [`Pallet::force_exit`]. + +### forceExtend() +- **interface**: `api.tx.safeMode.forceExtend` +- **summary**: See [`Pallet::force_extend`]. + +### forceReleaseDeposit(account: `AccountId32`, block: `u32`) +- **interface**: `api.tx.safeMode.forceReleaseDeposit` +- **summary**: See [`Pallet::force_release_deposit`]. + +### forceSlashDeposit(account: `AccountId32`, block: `u32`) +- **interface**: `api.tx.safeMode.forceSlashDeposit` +- **summary**: See [`Pallet::force_slash_deposit`]. + +### releaseDeposit(account: `AccountId32`, block: `u32`) +- **interface**: `api.tx.safeMode.releaseDeposit` +- **summary**: See [`Pallet::release_deposit`]. + +___ + + ## salary ### bump() @@ -1774,43 +1898,71 @@ ___ ## society +### bestowMembership(candidate: `AccountId32`) +- **interface**: `api.tx.society.bestowMembership` +- **summary**: See [`Pallet::bestow_membership`]. + ### bid(value: `u128`) - **interface**: `api.tx.society.bid` - **summary**: See [`Pallet::bid`]. +### claimMembership() +- **interface**: `api.tx.society.claimMembership` +- **summary**: See [`Pallet::claim_membership`]. + +### cleanupCandidacy(candidate: `AccountId32`, max: `u32`) +- **interface**: `api.tx.society.cleanupCandidacy` +- **summary**: See [`Pallet::cleanup_candidacy`]. + +### cleanupChallenge(challenge_round: `u32`, max: `u32`) +- **interface**: `api.tx.society.cleanupChallenge` +- **summary**: See [`Pallet::cleanup_challenge`]. + ### defenderVote(approve: `bool`) - **interface**: `api.tx.society.defenderVote` - **summary**: See [`Pallet::defender_vote`]. -### found(founder: `MultiAddress`, max_members: `u32`, rules: `Bytes`) -- **interface**: `api.tx.society.found` -- **summary**: See [`Pallet::found`]. +### dissolve() +- **interface**: `api.tx.society.dissolve` +- **summary**: See [`Pallet::dissolve`]. + +### dropCandidate(candidate: `AccountId32`) +- **interface**: `api.tx.society.dropCandidate` +- **summary**: See [`Pallet::drop_candidate`]. -### judgeSuspendedCandidate(who: `MultiAddress`, judgement: `PalletSocietyJudgement`) -- **interface**: `api.tx.society.judgeSuspendedCandidate` -- **summary**: See [`Pallet::judge_suspended_candidate`]. +### foundSociety(founder: `MultiAddress`, max_members: `u32`, max_intake: `u32`, max_strikes: `u32`, candidate_deposit: `u128`, rules: `Bytes`) +- **interface**: `api.tx.society.foundSociety` +- **summary**: See [`Pallet::found_society`]. ### judgeSuspendedMember(who: `MultiAddress`, forgive: `bool`) - **interface**: `api.tx.society.judgeSuspendedMember` - **summary**: See [`Pallet::judge_suspended_member`]. +### kickCandidate(candidate: `AccountId32`) +- **interface**: `api.tx.society.kickCandidate` +- **summary**: See [`Pallet::kick_candidate`]. + ### payout() - **interface**: `api.tx.society.payout` - **summary**: See [`Pallet::payout`]. -### setMaxMembers(max: `u32`) -- **interface**: `api.tx.society.setMaxMembers` -- **summary**: See [`Pallet::set_max_members`]. +### punishSkeptic() +- **interface**: `api.tx.society.punishSkeptic` +- **summary**: See [`Pallet::punish_skeptic`]. + +### resignCandidacy() +- **interface**: `api.tx.society.resignCandidacy` +- **summary**: See [`Pallet::resign_candidacy`]. -### unbid(pos: `u32`) +### setParameters(max_members: `u32`, max_intake: `u32`, max_strikes: `u32`, candidate_deposit: `u128`) +- **interface**: `api.tx.society.setParameters` +- **summary**: See [`Pallet::set_parameters`]. + +### unbid() - **interface**: `api.tx.society.unbid` - **summary**: See [`Pallet::unbid`]. -### unfound() -- **interface**: `api.tx.society.unfound` -- **summary**: See [`Pallet::unfound`]. - -### unvouch(pos: `u32`) +### unvouch() - **interface**: `api.tx.society.unvouch` - **summary**: See [`Pallet::unvouch`]. @@ -1821,6 +1973,10 @@ ___ ### vouch(who: `MultiAddress`, value: `u128`, tip: `u128`) - **interface**: `api.tx.society.vouch` - **summary**: See [`Pallet::vouch`]. + +### waiveRepay(amount: `u128`) +- **interface**: `api.tx.society.waiveRepay` +- **summary**: See [`Pallet::waive_repay`]. ___ @@ -2163,6 +2319,19 @@ ___ ___ +## txPause + +### pause(full_name: `(Bytes,Bytes)`) +- **interface**: `api.tx.txPause.pause` +- **summary**: See [`Pallet::pause`]. + +### unpause(ident: `(Bytes,Bytes)`) +- **interface**: `api.tx.txPause.unpause` +- **summary**: See [`Pallet::unpause`]. + +___ + + ## uniques ### approveTransfer(collection: `u32`, item: `u32`, delegate: `MultiAddress`) @@ -2332,6 +2501,10 @@ ___ - **interface**: `api.tx.voterList.putInFrontOf` - **summary**: See [`Pallet::put_in_front_of`]. +### putInFrontOfOther(heavier: `MultiAddress`, lighter: `MultiAddress`) +- **interface**: `api.tx.voterList.putInFrontOfOther` +- **summary**: See [`Pallet::put_in_front_of_other`]. + ### rebag(dislocated: `MultiAddress`) - **interface**: `api.tx.voterList.rebag` - **summary**: See [`Pallet::rebag`]. diff --git a/docs/substrate/runtime.md b/docs/substrate/runtime.md index 2c7cbe39a2..aad60527b9 100644 --- a/docs/substrate/runtime.md +++ b/docs/substrate/runtime.md @@ -6,6 +6,8 @@ The following section contains known runtime calls that may be available on spec - **[accountNonceApi](#accountnonceapi)** +- **[assetConversionApi](#assetconversionapi)** + - **[assetsApi](#assetsapi)** - **[auraApi](#auraapi)** @@ -94,6 +96,26 @@ ___ ___ +## AssetConversionApi + +### getReserves(asset1: `XcmV3MultiLocation`, asset2: `XcmV3MultiLocation`): `Option<(Balance,Balance)>` +- **interface**: `api.call.assetConversionApi.getReserves` +- **runtime**: `AssetConversionApi_get_reserves` +- **summary**: Get pool reserves + +### quotePriceExactTokensForTokens(asset1: `XcmV3MultiLocation`, asset2: `XcmV3MultiLocation`, amount: `u128`, include_fee: `bool`): `Option<(Balance)>` +- **interface**: `api.call.assetConversionApi.quotePriceExactTokensForTokens` +- **runtime**: `AssetConversionApi_quote_price_exact_tokens_for_tokens` +- **summary**: Quote price: exact tokens for tokens + +### quotePriceTokensForExactTokens(asset1: `XcmV3MultiLocation`, asset2: `XcmV3MultiLocation`, amount: `u128`, include_fee: `bool`): `Option<(Balance)>` +- **interface**: `api.call.assetConversionApi.quotePriceTokensForExactTokens` +- **runtime**: `AssetConversionApi_quote_price_tokens_for_exact_tokens` +- **summary**: Quote price: tokens for exact tokens + +___ + + ## AssetsApi ### accountBalances(account: `AccountId`): `Vec<(u32, TAssetBalance)>` @@ -361,7 +383,7 @@ ___ - **runtime**: `EthereumRuntimeRPCApi_author` - **summary**: Returns the converted FindAuthor::find_author authority id. -### call(from: `H160`, to: `H160`, data: `Vec`, value: `U256`, gasLimit: `U256`, maxFeePerGas: `Option`, maxPriorityFeePerGas: `Option`, nonce: `Option`, estimate: `bool`, accessList: `Option)>>`): `Result` +### call(from: `H160`, to: `H160`, data: `Vec`, value: `U256`, gasLimit: `U256`, maxFeePerGas: `Option`, maxPriorityFeePerGas: `Option`, nonce: `Option`, estimate: `bool`, accessList: `Option)>>`): `Result` - **interface**: `api.call.ethereumRuntimeRPCApi.call` - **runtime**: `EthereumRuntimeRPCApi_call` - **summary**: Returns a frame_ethereum::call response. If `estimate` is true, @@ -371,7 +393,7 @@ ___ - **runtime**: `EthereumRuntimeRPCApi_chain_id` - **summary**: Returns runtime defined pallet_evm::ChainId. -### create(from: `H160`, data: `Vec`, value: `U256`, gasLimit: `U256`, maxFeePerGas: `Option`, maxPriorityFeePerGas: `Option`, nonce: `Option`, estimate: `bool`, accessList: `Option)>>`): `Result` +### create(from: `H160`, data: `Vec`, value: `U256`, gasLimit: `U256`, maxFeePerGas: `Option`, maxPriorityFeePerGas: `Option`, nonce: `Option`, estimate: `bool`, accessList: `Option)>>`): `Result` - **interface**: `api.call.ethereumRuntimeRPCApi.create` - **runtime**: `EthereumRuntimeRPCApi_create` - **summary**: Returns a frame_ethereum::call response. If `estimate` is true, @@ -421,7 +443,7 @@ ___ ## FungiblesApi -### queryAccountBalances(account: `AccountId`): `Result, FungiblesAccessError>` +### queryAccountBalances(account: `AccountId`): `Result` - **interface**: `api.call.fungiblesApi.queryAccountBalances` - **runtime**: `FungiblesApi_query_account_balances` - **summary**: Returns the list of all `MultiAsset` that an `AccountId` has @@ -641,6 +663,11 @@ ___ - **runtime**: `ParachainHost_inbound_hrmp_channels_contents` - **summary**: Get the contents of all channels addressed to the given recipient. +### keyOwnershipProof(validatorId: `ValidatorId`): `Option` +- **interface**: `api.call.parachainHost.keyOwnershipProof` +- **runtime**: `ParachainHost_key_ownership_proof` +- **summary**: Returns a merkle proof of a validator session key + ### onChainVotes(): `Option` - **interface**: `api.call.parachainHost.onChainVotes` - **runtime**: `ParachainHost_on_chain_votes` @@ -676,6 +703,16 @@ ___ - **runtime**: `ParachainHost_submit_pvf_check_statement` - **summary**: Submits a PVF pre-checking statement into the transaction pool. +### submitReportDisputeLost(disputeProof: `DisputeProof`, keyOwnershipProof: `OpaqueKeyOwnershipProof`): `Option` +- **interface**: `api.call.parachainHost.submitReportDisputeLost` +- **runtime**: `ParachainHost_submit_report_dispute_lost` +- **summary**: Submit an unsigned extrinsic to slash validators who lost a dispute about a candidate of a past session + +### unappliedSlashes(): `Vec<(SessionIndex, CandidateHash, PendingSlashes)>` +- **interface**: `api.call.parachainHost.unappliedSlashes` +- **runtime**: `ParachainHost_unapplied_slashes` +- **summary**: Returns a list of validators that lost a past session dispute and need to be slashed + ### validationCode(paraId: `ParaId`, assumption: `OccupiedCoreAssumption`): `ValidationCode` - **interface**: `api.call.parachainHost.validationCode` - **runtime**: `ParachainHost_validation_code` diff --git a/docs/substrate/storage.md b/docs/substrate/storage.md index 6bb563ce85..a32bdd206e 100644 --- a/docs/substrate/storage.md +++ b/docs/substrate/storage.md @@ -26,6 +26,8 @@ The following sections contain Storage methods are part of the default Substrate - **[bounties](#bounties)** +- **[broker](#broker)** + - **[childBounties](#childbounties)** - **[contracts](#contracts)** @@ -90,6 +92,8 @@ The following sections contain Storage methods are part of the default Substrate - **[referenda](#referenda)** +- **[safeMode](#safemode)** + - **[salary](#salary)** - **[scheduler](#scheduler)** @@ -122,6 +126,8 @@ The following sections contain Storage methods are part of the default Substrate - **[treasury](#treasury)** +- **[txPause](#txpause)** + - **[uniques](#uniques)** - **[vesting](#vesting)** @@ -215,7 +221,7 @@ ___ - **interface**: `api.query.assetRate.conversionRateToNative` - **summary**: Maps an asset to its fixed point representation in the native balance. - E.g. `native_amount = asset_amount * ConversionRateToNative::::get(asset_id)` + E.g. `native_amount = asset_amount * ConversionRateToNative::::get(asset_kind)` ___ @@ -416,6 +422,59 @@ ___ ___ +## broker + +### allowedRenewals(`PalletBrokerAllowedRenewalId`): `Option` +- **interface**: `api.query.broker.allowedRenewals` +- **summary**: Records of allowed renewals. + +### configuration(): `Option` +- **interface**: `api.query.broker.configuration` +- **summary**: The current configuration of this pallet. + +### instaPoolContribution(`PalletBrokerRegionId`): `Option` +- **interface**: `api.query.broker.instaPoolContribution` +- **summary**: Record of a single contribution to the Instantaneous Coretime Pool. + +### instaPoolHistory(`u32`): `Option` +- **interface**: `api.query.broker.instaPoolHistory` +- **summary**: Total InstaPool rewards for each Timeslice and the number of core parts which contributed. + +### instaPoolIo(`u32`): `PalletBrokerPoolIoRecord` +- **interface**: `api.query.broker.instaPoolIo` +- **summary**: Record of Coretime entering or leaving the Instantaneous Coretime Pool. + +### leases(): `Vec` +- **interface**: `api.query.broker.leases` +- **summary**: The Polkadot Core legacy leases. + +### regions(`PalletBrokerRegionId`): `Option` +- **interface**: `api.query.broker.regions` +- **summary**: The current (unassigned) Regions. + +### reservations(): `Vec>` +- **interface**: `api.query.broker.reservations` +- **summary**: The Polkadot Core reservations (generally tasked with the maintenance of System Chains). + +### saleInfo(): `Option` +- **interface**: `api.query.broker.saleInfo` +- **summary**: The details of the current sale, including its properties and status. + +### status(): `Option` +- **interface**: `api.query.broker.status` +- **summary**: The current status of miscellaneous subsystems of this pallet. + +### workload(`u16`): `Vec` +- **interface**: `api.query.broker.workload` +- **summary**: The current workload of each core. This gets updated with workplan as timeslices pass. + +### workplan(`(u32,u16)`): `Option>` +- **interface**: `api.query.broker.workplan` +- **summary**: The work we plan on having each core do at a particular time in the future. + +___ + + ## childBounties ### childBounties(`u32, u32`): `Option` @@ -443,9 +502,9 @@ ___ ## contracts -### codeStorage(`H256`): `Option` -- **interface**: `api.query.contracts.codeStorage` -- **summary**: A mapping between an original code hash and instrumented wasm code, ready for execution. +### codeInfoOf(`H256`): `Option` +- **interface**: `api.query.contracts.codeInfoOf` +- **summary**: A mapping from a contract's code hash to its code info. ### contractInfoOf(`AccountId32`): `Option` - **interface**: `api.query.contracts.contractInfoOf` @@ -465,6 +524,7 @@ ___ ### migrationInProgress(): `Option` - **interface**: `api.query.contracts.migrationInProgress` +- **summary**: A migration can span across multiple blocks. This storage defines a cursor to track the progress of the migration, enabling us to resume from the last completed position. ### nonce(): `u64` - **interface**: `api.query.contracts.nonce` @@ -480,13 +540,9 @@ ___ Do not use it to determine the number of contracts. It won't be decremented if a contract is destroyed. -### ownerInfoOf(`H256`): `Option` -- **interface**: `api.query.contracts.ownerInfoOf` -- **summary**: A mapping between an original code hash and its owner information. - ### pristineCode(`H256`): `Option` - **interface**: `api.query.contracts.pristineCode` -- **summary**: A mapping from an original code hash to the original code, untouched by instrumentation. +- **summary**: A mapping from a contract's code hash to its code. ___ @@ -750,13 +806,17 @@ ___ ## glutton -### compute(): `Perbill` +### compute(): `u64` - **interface**: `api.query.glutton.compute` -- **summary**: Storage value used to specify what percentage of the left over `ref_time` to consume during `on_idle`. +- **summary**: The proportion of the remaining `ref_time` to consume during `on_idle`. + + `1.0` is mapped to `100%`. Must be at most [`crate::RESOURCE_HARD_LIMIT`]. Setting this to over `1.0` could stall the chain. -### storage(): `Perbill` +### storage(): `u64` - **interface**: `api.query.glutton.storage` -- **summary**: Storage value used the specify what percentage of left over `proof_size` to consume during `on_idle`. +- **summary**: The proportion of the remaining `proof_size` to consume during `on_idle`. + + `1.0` is mapped to `100%`. Must be at most [`crate::RESOURCE_HARD_LIMIT`]. Setting this to over `1.0` could stall the chain. ### trashData(`u32`): `Option<[u8;1024]>` - **interface**: `api.query.glutton.trashData` @@ -851,9 +911,9 @@ ___ - **interface**: `api.query.imOnline.keys` - **summary**: The current set of keys that may issue a heartbeat. -### receivedHeartbeats(`u32, u32`): `Option>` +### receivedHeartbeats(`u32, u32`): `Option` - **interface**: `api.query.imOnline.receivedHeartbeats` -- **summary**: For each session index, we keep a mapping of `SessionIndex` and `AuthIndex` to `WrapperOpaque`. +- **summary**: For each session index, we keep a mapping of `SessionIndex` and `AuthIndex`. ___ @@ -1353,6 +1413,25 @@ ___ ___ +## safeMode + +### deposits(`AccountId32, u32`): `Option` +- **interface**: `api.query.safeMode.deposits` +- **summary**: Holds the reserve that was taken from an account at a specific block number. + + This helps governance to have an overview of outstanding deposits that should be returned or slashed. + +### enteredUntil(): `Option` +- **interface**: `api.query.safeMode.enteredUntil` +- **summary**: Contains the last block number that the safe-mode will remain entered in. + + Set to `None` when safe-mode is exited. + + Safe-mode is automatically exited when the current block number exceeds this value. + +___ + + ## salary ### claimant(`AccountId32`): `Option` @@ -1425,17 +1504,20 @@ ___ - **interface**: `api.query.society.bids` - **summary**: The current bids, stored ordered by the value of the bid. -### candidates(): `Vec` +### candidates(`AccountId32`): `Option` - **interface**: `api.query.society.candidates` -- **summary**: The current set of candidates; bidders that are attempting to become members. -### defender(): `Option` -- **interface**: `api.query.society.defender` -- **summary**: The defending member currently being challenged. +### challengeRoundCount(): `u32` +- **interface**: `api.query.society.challengeRoundCount` +- **summary**: The number of challenge rounds there have been. Used to identify stale DefenderVotes. -### defenderVotes(`AccountId32`): `Option` +### defenderVotes(`u32, AccountId32`): `Option` - **interface**: `api.query.society.defenderVotes` -- **summary**: Votes for the defender. +- **summary**: Votes for the defender, keyed by challenge round. + +### defending(): `Option<(AccountId32,AccountId32,PalletSocietyTally)>` +- **interface**: `api.query.society.defending` +- **summary**: The defending member currently being challenged, along with a running tally of votes. ### founder(): `Option` - **interface**: `api.query.society.founder` @@ -1443,47 +1525,59 @@ ___ ### head(): `Option` - **interface**: `api.query.society.head` -- **summary**: The most primary from the most recently approved members. +- **summary**: The most primary from the most recently approved rank 0 members in the society. -### maxMembers(): `u32` -- **interface**: `api.query.society.maxMembers` -- **summary**: The max number of members for the society at one time. +### memberByIndex(`u32`): `Option` +- **interface**: `api.query.society.memberByIndex` +- **summary**: The current items in `Members` keyed by their unique index. Keys are densely populated `0..MemberCount` (does not include `MemberCount`). -### members(): `Vec` +### memberCount(): `u32` +- **interface**: `api.query.society.memberCount` +- **summary**: The number of items in `Members` currently. (Doesn't include `SuspendedMembers`.) + +### members(`AccountId32`): `Option` - **interface**: `api.query.society.members` -- **summary**: The current set of members, ordered. +- **summary**: The current members and their rank. Doesn't include `SuspendedMembers`. + +### nextHead(): `Option` +- **interface**: `api.query.society.nextHead` +- **summary**: At the end of the claim period, this contains the most recently approved members (along with their bid and round ID) who is from the most recent round with the lowest bid. They will become the new `Head`. -### payouts(`AccountId32`): `Vec<(u32,u128)>` +### parameters(): `Option` +- **interface**: `api.query.society.parameters` +- **summary**: The max number of members for the society at one time. + +### payouts(`AccountId32`): `PalletSocietyPayoutRecord` - **interface**: `api.query.society.payouts` -- **summary**: Pending payouts; ordered by block number, with the amount that should be paid out. +- **summary**: Information regarding rank-0 payouts, past and future. ### pot(): `u128` - **interface**: `api.query.society.pot` - **summary**: Amount of our account balance that is specifically for the next round's bid(s). +### roundCount(): `u32` +- **interface**: `api.query.society.roundCount` +- **summary**: The number of rounds which have passed. + ### rules(): `Option` - **interface**: `api.query.society.rules` - **summary**: A hash of the rules of this society concerning membership. Can only be set once and only by the founder. -### strikes(`AccountId32`): `u32` -- **interface**: `api.query.society.strikes` -- **summary**: The ongoing number of losing votes cast by the member. +### skeptic(): `Option` +- **interface**: `api.query.society.skeptic` +- **summary**: The current skeptic. -### suspendedCandidates(`AccountId32`): `Option<(u128,PalletSocietyBidKind)>` -- **interface**: `api.query.society.suspendedCandidates` -- **summary**: The set of suspended candidates. - -### suspendedMembers(`AccountId32`): `bool` +### suspendedMembers(`AccountId32`): `Option` - **interface**: `api.query.society.suspendedMembers` -- **summary**: The set of suspended members. +- **summary**: The set of suspended members, with their old membership record. + +### voteClearCursor(`AccountId32`): `Option` +- **interface**: `api.query.society.voteClearCursor` +- **summary**: Clear-cursor for Vote, map from Candidate -> (Maybe) Cursor. ### votes(`AccountId32, AccountId32`): `Option` - **interface**: `api.query.society.votes` - **summary**: Double map from Candidate -> Voter -> (Maybe) Vote. - -### vouching(`AccountId32`): `Option` -- **interface**: `api.query.society.vouching` -- **summary**: Members currently vouching or banned from vouching again ___ @@ -1632,7 +1726,7 @@ ___ - **interface**: `api.query.staking.nominators` - **summary**: The map from nominator stash key to their nomination preferences, namely the validators that they wish to support. - Note that the keys of this storage map might become non-decodable in case the [`Config::MaxNominations`] configuration is decreased. In this rare case, these nominators are still existent in storage, their key is correct and retrievable (i.e. `contains_key` indicates that they exist), but their value cannot be decoded. Therefore, the non-decodable nominators will effectively not-exist, until they re-submit their preferences such that it is within the bounds of the newly set `Config::MaxNominations`. + Note that the keys of this storage map might become non-decodable in case the account's [`NominationsQuota::MaxNominations`] configuration is decreased. In this rare case, these nominators are still existent in storage, their key is correct and retrievable (i.e. `contains_key` indicates that they exist), but their value cannot be decoded. Therefore, the non-decodable nominators will effectively not-exist, until they re-submit their preferences such that it is within the bounds of the newly set `Config::MaxNominations`. This implies that `::iter_keys().count()` and `::iter().count()` might return different values for this map. Moreover, the main `::count()` is aligned with the former, namely the number of keys that exist. @@ -1790,7 +1884,7 @@ ___ All topic vectors have deterministic storage locations depending on the topic. This allows light-clients to leverage the changes trie storage tracking mechanism and in case of changes fetch the list of events of interest. - The value has the type `(T::BlockNumber, EventIndex)` because if we used only just the `EventIndex` then in case if the topic has the same contents on the next block no notification will be triggered thus the event might be lost. + The value has the type `(BlockNumberFor, EventIndex)` because if we used only just the `EventIndex` then in case if the topic has the same contents on the next block no notification will be triggered thus the event might be lost. ### executionPhase(): `Option` - **interface**: `api.query.system.executionPhase` @@ -1959,6 +2053,15 @@ ___ ___ +## txPause + +### pausedCalls(`(Bytes,Bytes)`): `Option` +- **interface**: `api.query.txPause.pausedCalls` +- **summary**: The set of calls that are explicitly paused. + +___ + + ## uniques ### account(`AccountId32, u32, u32`): `Option` diff --git a/package.json b/package.json index 383e45f590..2f6ac41a88 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "polkadot-js", - "version": "0.0.276", + "version": "0.0.277", "engine-strict": true, "engines": { "node": ">=18.14" @@ -45,7 +45,7 @@ "@cmfcmf/docusaurus-search-local": "^1.1.0" }, "versions": { - "git": "0.0.276", - "npm": "0.0.276" + "git": "0.0.277", + "npm": "0.0.277" } }