Council pallet
Derived from live runtime metadata on TRN root (pallet index 57, captured 2026-05-02). For prose-style documentation see Council on the curated reference side.
- Pallet index
57- Calls
- 6
- Events
- 7
- Errors
- 10
- Storage items
- 6
- Constants
- 1
Calls (extrinsics)
Council.set_members
See [
Pallet::set_members].
api.tx.council.set_members(new_members: Vec<SeedPrimitivesSignatureAccountId20>, prime: Option<SeedPrimitivesSignatureAccountId20>, old_count: u32)| Argument | Type | Doc |
|---|---|---|
new_members | Vec<SeedPrimitivesSignatureAccountId20> | Vec<T::AccountId> |
prime | Option<SeedPrimitivesSignatureAccountId20> | Option<T::AccountId> |
old_count | u32 | MemberCount |
Call index: 0
Council.execute
See [
Pallet::execute].
api.tx.council.execute(proposal: Call, length_bound: Compact<u32>)| Argument | Type | Doc |
|---|---|---|
proposal | Call | Box<<T as Config<I>>::Proposal> |
length_bound | Compact<u32> | u32 |
Call index: 1
Council.propose
See [
Pallet::propose].
api.tx.council.propose(threshold: Compact<u32>, proposal: Call, length_bound: Compact<u32>)| Argument | Type | Doc |
|---|---|---|
threshold | Compact<u32> | MemberCount |
proposal | Call | Box<<T as Config<I>>::Proposal> |
length_bound | Compact<u32> | u32 |
Call index: 2
Council.vote
See [
Pallet::vote].
api.tx.council.vote(proposal: H256, index: Compact<u32>, approve: bool)| Argument | Type | Doc |
|---|---|---|
proposal | H256 | T::Hash |
index | Compact<u32> | ProposalIndex |
approve | bool | bool |
Call index: 3
Council.disapprove_proposal
See [
Pallet::disapprove_proposal].
api.tx.council.disapprove_proposal(proposal_hash: H256)| Argument | Type | Doc |
|---|---|---|
proposal_hash | H256 | T::Hash |
Call index: 5
Council.close
See [
Pallet::close].
api.tx.council.close(proposal_hash: H256, index: Compact<u32>, proposal_weight_bound: {"refTime":"Compact<u64>","proofSize":"Compact<u64>"}, length_bound: Compact<u32>)| Argument | Type | Doc |
|---|---|---|
proposal_hash | H256 | T::Hash |
index | Compact<u32> | ProposalIndex |
proposal_weight_bound | {"refTime":"Compact<u64>","proofSize":"Compact<u64>"} | Weight |
length_bound | Compact<u32> | u32 |
Call index: 6
Events
Council.Proposed
A motion (given hash) has been proposed (by given account) with a threshold (given
MemberCount).
| Field | Type | Doc |
|---|---|---|
account | [u8;20] | |
proposal_index | u32 | |
proposal_hash | H256 | |
threshold | u32 |
Council.Voted
A motion (given hash) has been voted on by given account, leaving a tally (yes votes and no votes given respectively as
MemberCount).
| Field | Type | Doc |
|---|---|---|
account | [u8;20] | |
proposal_hash | H256 | |
voted | bool | |
yes | u32 | |
no | u32 |
Council.Approved
A motion was approved by the required threshold.
| Field | Type | Doc |
|---|---|---|
proposal_hash | H256 |
Council.Disapproved
A motion was not approved by the required threshold.
| Field | Type | Doc |
|---|---|---|
proposal_hash | H256 |
Council.Executed
A motion was executed; result will be
Okif it returned without error.
| Field | Type | Doc |
|---|---|---|
proposal_hash | H256 | |
result | Result<Null, SpRuntimeDispatchError> |
Council.MemberExecuted
A single member did some action; result will be
Okif it returned without error.
| Field | Type | Doc |
|---|---|---|
proposal_hash | H256 | |
result | Result<Null, SpRuntimeDispatchError> |
Council.Closed
A proposal was closed because its threshold was reached or after its duration was up.
| Field | Type | Doc |
|---|---|---|
proposal_hash | H256 | |
yes | u32 | |
no | u32 |
Errors
Council.NotMember
Account is not a member
Council.DuplicateProposal
Duplicate proposals not allowed
Council.ProposalMissing
Proposal must exist
Council.WrongIndex
Mismatched index
Council.DuplicateVote
Duplicate vote ignored
Council.AlreadyInitialized
Members are already initialized!
Council.TooEarly
The close call was made too early, before the end of the voting.
Council.TooManyProposals
There can only be a maximum of
MaxProposalsactive proposals.
Council.WrongProposalWeight
The given weight bound for the proposal was too low.
Council.WrongProposalLength
The given length bound for the proposal was too low.
Storage
Council.Proposals
The hashes of the active proposals.
await api.query.council.proposals()Returns: Vec<H256>
Modifier: Default
Council.ProposalOf
Actual proposal for a given hash, if it's current.
await api.query.council.proposalOf(key1)- Key:
H256(hasher: Identity) - Returns:
Call
Modifier: Optional
Council.Voting
Votes on a given proposal, if it is ongoing.
await api.query.council.voting(key1)- Key:
H256(hasher: Identity) - Returns:
{"index":"u32","threshold":"u32","ayes":"Vec<SeedPrimitivesSignatureAccountId20>","nays":"Vec<SeedPrimitivesSignatureAccountId20>","end":"u32"}
Modifier: Optional
Council.ProposalCount
Proposals so far.
await api.query.council.proposalCount()Returns: u32
Modifier: Default
Council.Members
The current members of the collective. This is stored sorted (just by value).
await api.query.council.members()Returns: Vec<SeedPrimitivesSignatureAccountId20>
Modifier: Default
Council.Prime
The prime member that helps determine the default vote behavior in case of absentations.
await api.query.council.prime()Returns: [u8;20]
Modifier: Optional
Constants
Council.MaxProposalWeight
The maximum weight of a dispatch call that can be proposed and executed.
Type: {"refTime":"Compact<u64>","proofSize":"Compact<u64>"}
SCALE-encoded value: 0x070088526a7413ffffffffffffff7f
wss://root.rootnet.live/archive/ws · captured 2026-05-02