Crate timechain_runtime

Source
Expand description

This is the official timechain runtime.

§Timechain Runtime and Environments

New code is first tested on development (develop), then integrated with all other projects on integration.

Once ready for release, new features start long term testing on testnet (testnet). Once everybody is happy, including the community and external partners, features are brought to timechain (mainnet).

The staging can be optionally used to test any mainnet specific migrations, features or other oddities.

NameFeaturesProfile
mainnetdefaultmainnet
stagingdeveloptestnet
testnettestnettestnet
developtestnet,developtestnet

Until we can extract individual package config a bit better, please check Runtime and the individual pallets.

§Frame Configuration

§Nominated Proof of Stake

§On-chain services

§On-chain governance

§Custom pallets

§Weights and Fees

§Governance

The main body of governance is responsible for maintaining the chain and keeping it operational.

§Technical Committee

The technical committee is managed using the [pallet_collective], [pallet_membership] and our own custom pallet_governance.

While the first two pallets tally the votes and manage the membership of the committee, our custom pallet it used to elevate committee origin to more privileged level for selected calls.

Can be compiled with #[no_std], ready for Wasm.

Re-exports§

Modules§

  • Runtime API Implementation
  • benches 🔒
    Runtime benchmark list Runtime Benchmarks List.
  • The runtime configuration by sections
  • Offchain signing implementation.
  • Automatically generated nomination bag boundaries Autogenerated bag thresholds.
  • Helpers to handle variant flags
  • weights 🔒
    Benchmarked pallet weights Automatically generated runtime weight selected based on features flags

Macros§

  • Calls add_benchmark with all configs from define_benchmarks and passes the first two parameters on.
  • Calls list_benchmark with all configs from define_benchmarks and passes the first two parameters on.
  • Macro to set value based on testnet feature flag
  • Macro to set a value (e.g. when using the parameter_types macro) based on the current runtime variant being build.
  • Macro to set value based on develop feature flag

Structs§

  • Time to execute an empty block. Calculated by multiplying the Average with 1.0 and adding 0.
  • The number of eras that a bonded stake must remain locked after the owner has requested to unbond. This value represents 21 days, assuming each era is 12 hours long. This delay is intended to increase network security by preventing stakers from immediately withdrawing funds after participating in staking.
  • An epoch is a unit of time used for key operations in the consensus mechanism, such as validator rotations and randomness generation. Once set at genesis, this value cannot be changed without breaking block production.
  • This defines the interval at which new blocks are produced in the blockchain. It impacts the speed of transaction processing and finality, as well as the load on the network and validators. The value is defined in milliseconds.
  • Time to execute a NO-OP extrinsic, for example System::remark. Calculated by multiplying the Average with 1.0 and adding 0.
  • Maximum numbers of authorities
  • The maximum number of validators a nominator can nominate. This sets an upper limit on how many validators can be supported by a single nominator. A higher number allows more decentralization but increases the complexity of the staking system.
  • Provides an implementation of PalletInfo to provide information about the pallet setup in the runtime.
  • The runtime origin type representing the origin of a call.
  • The number of sessions that constitute an era. An era is the time period over which staking rewards are distributed, and validator set changes can occur. The era duration is a function of the number of sessions and the length of each session.

Enums§

Constants§

Traits§

Functions§

  • Shared fee structure for items put in storage

Type Aliases§