Skip to content

Latest commit

 

History

History
54 lines (48 loc) · 1.88 KB

Requirements.md

File metadata and controls

54 lines (48 loc) · 1.88 KB

Requirements of BDjuno

The BDjuno is working as a backend for Big Dipper. The followings are the features currently supported in Big Dipper in the backend which BDjuno should adapt.

On every block

Done by Juno by default

  • Parsing all blocks
  • Parsing all transactions
  • Store validator set of the block

Custom BDJuno implementations

  • Update miss block records
  • Read the latest consensus state
  • [x/staking] Update validator information
  • [x/staking] Calculate validator voting power percentage
  • [x/staking] Calculate validator self delegation ratio
  • [x/staking] Update the total staked tokens
  • [x/supply] Update the total supply
  • [x/mint] Update the inflation
  • [x/distribution] Update community pool
  • [x/gov] Get gov proposals
  • [x/gov] Calculate the tally result

Achievable using GraphQL APIs

  • Calculate the average block time

On intervals

  • Get token price and marketcap (per 30 seconds)
  • [x/staking] Calculate average delegation ratio (per hour, per day) *
  • [x/staking] Calculate voting power distribution (per hour) *
  • [x/staking] Record all delegations (per day) *
  • [x/staking] Record all undelegatios (per day) *
  • [x/staking] Record all redelegations (per day) *

* These should be duable using the average method inside GraphQL

Not on Big Dipper now but we are considering to add

  • Validators signing-info (slashing)
  • All wallets activities
  • Alert on events:
    • Proposal creation
    • Slashing
    • Huge delegation
    • Validator low uptime
    • Huge undelegation
    • Proposal start voting
    • Proposal voting ends
  • Validators information update history
  • Validators rating
    • Self-delegation
    • Uptime
    • Ever slashed
    • Gov participation
    • Community contributions
    • Number of delegators