@@ -30,7 +30,7 @@
|
||||
"@polkadot/api": "1.16.0-beta.2",
|
||||
"@polkadot/rpc-core": "1.16.0-beta.2",
|
||||
"@polkadot/types": "1.16.0-beta.2",
|
||||
"@polkadot/util": "^2.10.1",
|
||||
"@polkadot/util": "^2.11.0-beta.2",
|
||||
"bn.js": "^5.1.2",
|
||||
"rxjs": "^6.5.5"
|
||||
}
|
||||
|
||||
@@ -32,13 +32,13 @@
|
||||
"@polkadot/rpc-core": "1.16.0-beta.2",
|
||||
"@polkadot/rpc-provider": "1.16.0-beta.2",
|
||||
"@polkadot/types": "1.16.0-beta.2",
|
||||
"@polkadot/util": "^2.10.1",
|
||||
"@polkadot/util-crypto": "^2.10.1",
|
||||
"@polkadot/util": "^2.11.0-beta.2",
|
||||
"@polkadot/util-crypto": "^2.11.0-beta.2",
|
||||
"bn.js": "^5.1.2",
|
||||
"memoizee": "^0.4.14",
|
||||
"rxjs": "^6.5.5"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@polkadot/keyring": "^2.10.1"
|
||||
"@polkadot/keyring": "^2.11.0-beta.2"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -28,19 +28,19 @@
|
||||
"dependencies": {
|
||||
"@babel/runtime": "^7.9.6",
|
||||
"@polkadot/api-derive": "1.16.0-beta.2",
|
||||
"@polkadot/keyring": "^2.10.1",
|
||||
"@polkadot/keyring": "^2.11.0-beta.2",
|
||||
"@polkadot/metadata": "1.16.0-beta.2",
|
||||
"@polkadot/rpc-core": "1.16.0-beta.2",
|
||||
"@polkadot/rpc-provider": "1.16.0-beta.2",
|
||||
"@polkadot/types": "1.16.0-beta.2",
|
||||
"@polkadot/types-known": "1.16.0-beta.2",
|
||||
"@polkadot/util": "^2.10.1",
|
||||
"@polkadot/util-crypto": "^2.10.1",
|
||||
"@polkadot/util": "^2.11.0-beta.2",
|
||||
"@polkadot/util-crypto": "^2.11.0-beta.2",
|
||||
"bn.js": "^5.1.2",
|
||||
"eventemitter3": "^4.0.4",
|
||||
"rxjs": "^6.5.5"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@polkadot/keyring": "^2.10.1"
|
||||
"@polkadot/keyring": "^2.11.0-beta.2"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,7 +16,7 @@ import { AccountId, AccountIndex, Address, Balance, BalanceOf, BlockNumber, Call
|
||||
import { Period, Priority } from '@polkadot/types/interfaces/scheduler';
|
||||
import { Keys } from '@polkadot/types/interfaces/session';
|
||||
import { SocietyJudgement } from '@polkadot/types/interfaces/society';
|
||||
import { CompactAssignments, EraIndex, PhragmenScore, RewardDestination, ValidatorIndex, ValidatorPrefs } from '@polkadot/types/interfaces/staking';
|
||||
import { CompactAssignments, ElectionSize, EraIndex, PhragmenScore, RewardDestination, ValidatorIndex, ValidatorPrefs } from '@polkadot/types/interfaces/staking';
|
||||
import { Key } from '@polkadot/types/interfaces/system';
|
||||
import { Timepoint } from '@polkadot/types/interfaces/utility';
|
||||
import { VestingInfo } from '@polkadot/types/interfaces/vesting';
|
||||
@@ -2363,45 +2363,22 @@ declare module '@polkadot/api/types/submittable' {
|
||||
* minimized (to ensure less variance)
|
||||
*
|
||||
* # <weight>
|
||||
* E: number of edges. m: size of winner committee. n: number of nominators. d: edge degree
|
||||
* (16 for now) v: number of on-chain validator candidates.
|
||||
*
|
||||
* NOTE: given a solution which is reduced, we can enable a new check the ensure `|E| < n +
|
||||
* m`. We don't do this _yet_, but our offchain worker code executes it nonetheless.
|
||||
*
|
||||
* major steps (all done in `check_and_replace_solution`):
|
||||
*
|
||||
* - Storage: O(1) read `ElectionStatus`.
|
||||
* - Storage: O(1) read `PhragmenScore`.
|
||||
* - Storage: O(1) read `ValidatorCount`.
|
||||
* - Storage: O(1) length read from `SnapshotValidators`.
|
||||
*
|
||||
* - Storage: O(v) reads of `AccountId` to fetch `snapshot_validators`.
|
||||
* - Memory: O(m) iterations to map winner index to validator id.
|
||||
* - Storage: O(n) reads `AccountId` to fetch `snapshot_nominators`.
|
||||
* - Memory: O(n + m) reads to map index to `AccountId` for un-compact.
|
||||
*
|
||||
* - Storage: O(e) accountid reads from `Nomination` to read correct nominations.
|
||||
* - Storage: O(e) calls into `slashable_balance_of_vote_weight` to convert ratio to staked.
|
||||
*
|
||||
* - Memory: build_support_map. O(e).
|
||||
* - Memory: evaluate_support: O(E).
|
||||
*
|
||||
* - Storage: O(e) writes to `QueuedElected`.
|
||||
* - Storage: O(1) write to `QueuedScore`
|
||||
*
|
||||
* The weight of this call is 1/10th of the blocks total weight.
|
||||
* See `crate::weight` module.
|
||||
* # </weight>
|
||||
**/
|
||||
submitElectionSolution: AugmentedSubmittable<(winners: Vec<ValidatorIndex> | (ValidatorIndex | AnyNumber | Uint8Array)[], compactAssignments: CompactAssignments | { votes1?: any; votes2?: any; votes3?: any; votes4?: any; votes5?: any; votes6?: any; votes7?: any; votes8?: any; votes9?: any; votes10?: any; votes11?: any; votes12?: any; votes13?: any; votes14?: any; votes15?: any; votes16?: any } | string | Uint8Array, score: PhragmenScore, era: EraIndex | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>>;
|
||||
submitElectionSolution: AugmentedSubmittable<(winners: Vec<ValidatorIndex> | (ValidatorIndex | AnyNumber | Uint8Array)[], compact: CompactAssignments | { votes1?: any; votes2?: any; votes3?: any; votes4?: any; votes5?: any; votes6?: any; votes7?: any; votes8?: any; votes9?: any; votes10?: any; votes11?: any; votes12?: any; votes13?: any; votes14?: any; votes15?: any; votes16?: any } | string | Uint8Array, score: PhragmenScore, era: EraIndex | AnyNumber | Uint8Array, size: ElectionSize | { validators?: any; nominators?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>>;
|
||||
/**
|
||||
* Unsigned version of `submit_election_solution`.
|
||||
*
|
||||
* Note that this must pass the [`ValidateUnsigned`] check which only allows transactions
|
||||
* from the local node to be included. In other words, only the block author can include a
|
||||
* transaction in the block.
|
||||
*
|
||||
* # <weight>
|
||||
* See `crate::weight` module.
|
||||
* # </weight>
|
||||
**/
|
||||
submitElectionSolutionUnsigned: AugmentedSubmittable<(winners: Vec<ValidatorIndex> | (ValidatorIndex | AnyNumber | Uint8Array)[], compactAssignments: CompactAssignments | { votes1?: any; votes2?: any; votes3?: any; votes4?: any; votes5?: any; votes6?: any; votes7?: any; votes8?: any; votes9?: any; votes10?: any; votes11?: any; votes12?: any; votes13?: any; votes14?: any; votes15?: any; votes16?: any } | string | Uint8Array, score: PhragmenScore, era: EraIndex | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>>;
|
||||
submitElectionSolutionUnsigned: AugmentedSubmittable<(winners: Vec<ValidatorIndex> | (ValidatorIndex | AnyNumber | Uint8Array)[], compact: CompactAssignments | { votes1?: any; votes2?: any; votes3?: any; votes4?: any; votes5?: any; votes6?: any; votes7?: any; votes8?: any; votes9?: any; votes10?: any; votes11?: any; votes12?: any; votes13?: any; votes14?: any; votes15?: any; votes16?: any } | string | Uint8Array, score: PhragmenScore, era: EraIndex | AnyNumber | Uint8Array, size: ElectionSize | { validators?: any; nominators?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>>;
|
||||
/**
|
||||
* Schedule a portion of the stash to be unlocked ready for transfer out after the bond
|
||||
* period ends. If this leaves an amount actively bonded less than
|
||||
|
||||
@@ -29,11 +29,11 @@
|
||||
"@babel/runtime": "^7.9.6",
|
||||
"@polkadot/types": "1.16.0-beta.2",
|
||||
"@polkadot/types-known": "1.16.0-beta.2",
|
||||
"@polkadot/util": "^2.10.1",
|
||||
"@polkadot/util-crypto": "^2.10.1",
|
||||
"@polkadot/util": "^2.11.0-beta.2",
|
||||
"@polkadot/util-crypto": "^2.11.0-beta.2",
|
||||
"bn.js": "^5.1.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@polkadot/keyring": "^2.10.1"
|
||||
"@polkadot/keyring": "^2.11.0-beta.2"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3015,7 +3015,7 @@
|
||||
"type": "Vec<ValidatorIndex>"
|
||||
},
|
||||
{
|
||||
"name": "compact_assignments",
|
||||
"name": "compact",
|
||||
"type": "CompactAssignments"
|
||||
},
|
||||
{
|
||||
@@ -3025,6 +3025,10 @@
|
||||
{
|
||||
"name": "era",
|
||||
"type": "EraIndex"
|
||||
},
|
||||
{
|
||||
"name": "size",
|
||||
"type": "ElectionSize"
|
||||
}
|
||||
],
|
||||
"documentation": [
|
||||
@@ -3073,34 +3077,7 @@
|
||||
" minimized (to ensure less variance)",
|
||||
"",
|
||||
" # <weight>",
|
||||
" E: number of edges. m: size of winner committee. n: number of nominators. d: edge degree",
|
||||
" (16 for now) v: number of on-chain validator candidates.",
|
||||
"",
|
||||
" NOTE: given a solution which is reduced, we can enable a new check the ensure `|E| < n +",
|
||||
" m`. We don't do this _yet_, but our offchain worker code executes it nonetheless.",
|
||||
"",
|
||||
" major steps (all done in `check_and_replace_solution`):",
|
||||
"",
|
||||
" - Storage: O(1) read `ElectionStatus`.",
|
||||
" - Storage: O(1) read `PhragmenScore`.",
|
||||
" - Storage: O(1) read `ValidatorCount`.",
|
||||
" - Storage: O(1) length read from `SnapshotValidators`.",
|
||||
"",
|
||||
" - Storage: O(v) reads of `AccountId` to fetch `snapshot_validators`.",
|
||||
" - Memory: O(m) iterations to map winner index to validator id.",
|
||||
" - Storage: O(n) reads `AccountId` to fetch `snapshot_nominators`.",
|
||||
" - Memory: O(n + m) reads to map index to `AccountId` for un-compact.",
|
||||
"",
|
||||
" - Storage: O(e) accountid reads from `Nomination` to read correct nominations.",
|
||||
" - Storage: O(e) calls into `slashable_balance_of_vote_weight` to convert ratio to staked.",
|
||||
"",
|
||||
" - Memory: build_support_map. O(e).",
|
||||
" - Memory: evaluate_support: O(E).",
|
||||
"",
|
||||
" - Storage: O(e) writes to `QueuedElected`.",
|
||||
" - Storage: O(1) write to `QueuedScore`",
|
||||
"",
|
||||
" The weight of this call is 1/10th of the blocks total weight.",
|
||||
" See `crate::weight` module.",
|
||||
" # </weight>"
|
||||
]
|
||||
},
|
||||
@@ -3112,7 +3089,7 @@
|
||||
"type": "Vec<ValidatorIndex>"
|
||||
},
|
||||
{
|
||||
"name": "compact_assignments",
|
||||
"name": "compact",
|
||||
"type": "CompactAssignments"
|
||||
},
|
||||
{
|
||||
@@ -3122,6 +3099,10 @@
|
||||
{
|
||||
"name": "era",
|
||||
"type": "EraIndex"
|
||||
},
|
||||
{
|
||||
"name": "size",
|
||||
"type": "ElectionSize"
|
||||
}
|
||||
],
|
||||
"documentation": [
|
||||
@@ -3129,7 +3110,11 @@
|
||||
"",
|
||||
" Note that this must pass the [`ValidateUnsigned`] check which only allows transactions",
|
||||
" from the local node to be included. In other words, only the block author can include a",
|
||||
" transaction in the block."
|
||||
" transaction in the block.",
|
||||
"",
|
||||
" # <weight>",
|
||||
" See `crate::weight` module.",
|
||||
" # </weight>"
|
||||
]
|
||||
}
|
||||
],
|
||||
@@ -3404,6 +3389,12 @@
|
||||
" The claimed score does not match with the one computed from the data."
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "PhragmenBogusElectionSize",
|
||||
"documentation": [
|
||||
" The election size is invalid."
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "CallNotAllowed",
|
||||
"documentation": [
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -30,11 +30,11 @@
|
||||
"@polkadot/metadata": "1.16.0-beta.2",
|
||||
"@polkadot/rpc-provider": "1.16.0-beta.2",
|
||||
"@polkadot/types": "1.16.0-beta.2",
|
||||
"@polkadot/util": "^2.10.1",
|
||||
"@polkadot/util": "^2.11.0-beta.2",
|
||||
"memoizee": "^0.4.14",
|
||||
"rxjs": "^6.5.5"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@polkadot/keyring": "^2.10.1"
|
||||
"@polkadot/keyring": "^2.11.0-beta.2"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,15 +29,15 @@
|
||||
"@babel/runtime": "^7.9.6",
|
||||
"@polkadot/metadata": "1.16.0-beta.2",
|
||||
"@polkadot/types": "1.16.0-beta.2",
|
||||
"@polkadot/util": "^2.10.1",
|
||||
"@polkadot/util-crypto": "^2.10.1",
|
||||
"@polkadot/util": "^2.11.0-beta.2",
|
||||
"@polkadot/util-crypto": "^2.11.0-beta.2",
|
||||
"bn.js": "^5.1.2",
|
||||
"eventemitter3": "^4.0.4",
|
||||
"isomorphic-fetch": "^2.2.1",
|
||||
"websocket": "^1.0.31"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@polkadot/keyring": "^2.10.1",
|
||||
"@polkadot/keyring": "^2.11.0-beta.2",
|
||||
"mock-socket": "^9.0.3",
|
||||
"nock": "^12.0.3"
|
||||
}
|
||||
|
||||
@@ -40,7 +40,7 @@
|
||||
"@polkadot/metadata": "1.16.0-beta.2",
|
||||
"@polkadot/rpc-provider": "1.16.0-beta.2",
|
||||
"@polkadot/types": "1.16.0-beta.2",
|
||||
"@polkadot/util": "^2.10.1",
|
||||
"@polkadot/util": "^2.11.0-beta.2",
|
||||
"handlebars": "^4.7.6",
|
||||
"websocket": "^1.0.31",
|
||||
"yargs": "^15.3.1"
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
"dependencies": {
|
||||
"@babel/runtime": "^7.9.6",
|
||||
"@polkadot/types": "1.16.0-beta.2",
|
||||
"@polkadot/util": "^2.10.1",
|
||||
"@polkadot/util": "^2.11.0-beta.2",
|
||||
"bn.js": "^5.1.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
@@ -28,15 +28,15 @@
|
||||
"dependencies": {
|
||||
"@babel/runtime": "^7.9.6",
|
||||
"@polkadot/metadata": "1.16.0-beta.2",
|
||||
"@polkadot/util": "^2.10.1",
|
||||
"@polkadot/util-crypto": "^2.10.1",
|
||||
"@polkadot/util": "^2.11.0-beta.2",
|
||||
"@polkadot/util-crypto": "^2.11.0-beta.2",
|
||||
"@types/bn.js": "^4.11.6",
|
||||
"bn.js": "^5.1.2",
|
||||
"memoizee": "^0.4.14",
|
||||
"rxjs": "^6.5.5"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@polkadot/keyring": "^2.10.1",
|
||||
"@polkadot/keyring": "^2.11.0-beta.2",
|
||||
"@types/memoizee": "^0.4.4"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -35,7 +35,7 @@ import { AccountId, AccountIdOf, AccountIndex, Address, AssetId, Balance, Balanc
|
||||
import { Period, Priority, SchedulePeriod, SchedulePriority, Scheduled, TaskAddress } from '@polkadot/types/interfaces/scheduler';
|
||||
import { FullIdentification, IdentificationTuple, Keys, MembershipProof, SessionIndex, SessionKeys1, SessionKeys2, SessionKeys3, SessionKeys4, SessionKeys5, SessionKeys6, ValidatorCount } from '@polkadot/types/interfaces/session';
|
||||
import { Bid, BidKind, SocietyJudgement, SocietyVote, StrikeCount, VouchingStatus } from '@polkadot/types/interfaces/society';
|
||||
import { ActiveEraInfo, CompactAssignments, CompactScore, ElectionCompute, ElectionResult, ElectionStatus, EraIndex, EraPoints, EraRewardPoints, EraRewards, Exposure, Forcing, IndividualExposure, KeyType, MomentOf, Nominations, NominatorIndex, OffchainAccuracy, PerU16, PhragmenScore, Points, ReleasesStaking, RewardDestination, RewardPoint, SlashJournalEntry, SlashingSpans, SlashingSpansTo204, SpanIndex, SpanRecord, StakingLedger, StakingLedgerTo223, StakingLedgerTo240, UnappliedSlash, UnappliedSlashOther, UnlockChunk, ValidatorIndex, ValidatorPrefs, ValidatorPrefsTo145, ValidatorPrefsTo196 } from '@polkadot/types/interfaces/staking';
|
||||
import { ActiveEraInfo, CompactAssignments, CompactScore, ElectionCompute, ElectionResult, ElectionSize, ElectionStatus, EraIndex, EraPoints, EraRewardPoints, EraRewards, Exposure, Forcing, IndividualExposure, KeyType, MomentOf, Nominations, NominatorIndex, OffchainAccuracy, PerU16, PhragmenScore, Points, ReleasesStaking, RewardDestination, RewardPoint, SlashJournalEntry, SlashingSpans, SlashingSpansTo204, SpanIndex, SpanRecord, StakingLedger, StakingLedgerTo223, StakingLedgerTo240, UnappliedSlash, UnappliedSlashOther, UnlockChunk, ValidatorIndex, ValidatorPrefs, ValidatorPrefsTo145, ValidatorPrefsTo196 } from '@polkadot/types/interfaces/staking';
|
||||
import { ApiId, KeyValueOption, ReadProof, RuntimeVersion, RuntimeVersionApi, StorageChangeSet } from '@polkadot/types/interfaces/state';
|
||||
import { WeightToFeeCoefficient } from '@polkadot/types/interfaces/support';
|
||||
import { AccountInfo, ChainProperties, ChainType, DigestOf, DispatchError, DispatchErrorModule, DispatchErrorTo198, DispatchResult, DispatchResultOf, DispatchResultTo198, Event, EventId, EventIndex, EventRecord, EventRecordTo76, Health, Key, LastRuntimeUpgradeInfo, NetworkState, NetworkStatePeerset, NetworkStatePeersetInfo, NodeRole, NotConnectedPeer, Peer, PeerEndpoint, PeerEndpointAddr, PeerInfo, PeerPing, Phase, RefCount } from '@polkadot/types/interfaces/system';
|
||||
@@ -882,6 +882,9 @@ declare module '@polkadot/types/types/registry' {
|
||||
ElectionResult: ElectionResult;
|
||||
'Option<ElectionResult>': Option<ElectionResult>;
|
||||
'Vec<ElectionResult>': Vec<ElectionResult>;
|
||||
ElectionSize: ElectionSize;
|
||||
'Option<ElectionSize>': Option<ElectionSize>;
|
||||
'Vec<ElectionSize>': Vec<ElectionSize>;
|
||||
ElectionStatus: ElectionStatus;
|
||||
'Option<ElectionStatus>': Option<ElectionStatus>;
|
||||
'Vec<ElectionStatus>': Vec<ElectionStatus>;
|
||||
|
||||
@@ -51,6 +51,10 @@ export default {
|
||||
electedStashes: 'Vec<AccountId>',
|
||||
exposures: 'Vec<(AccountId, Exposure)>'
|
||||
},
|
||||
ElectionSize: {
|
||||
validators: 'ValidatorIndex',
|
||||
nominators: 'NominatorIndex'
|
||||
},
|
||||
ElectionStatus: {
|
||||
_enum: {
|
||||
Close: 'Null',
|
||||
|
||||
@@ -50,6 +50,12 @@ export interface ElectionResult extends Struct {
|
||||
readonly exposures: Vec<ITuple<[AccountId, Exposure]>>;
|
||||
}
|
||||
|
||||
/** @name ElectionSize */
|
||||
export interface ElectionSize extends Struct {
|
||||
readonly validators: ValidatorIndex;
|
||||
readonly nominators: NominatorIndex;
|
||||
}
|
||||
|
||||
/** @name ElectionStatus */
|
||||
export interface ElectionStatus extends Enum {
|
||||
readonly isClose: boolean;
|
||||
|
||||
Reference in New Issue
Block a user