Skip to content
This repository was archived by the owner on Dec 8, 2024. It is now read-only.
This repository was archived by the owner on Dec 8, 2024. It is now read-only.

Bounty 7 - Proposal #24

@moul

Description

@moul

Plan

I've started working on a tool that will:

  • connects to a running Gaia's RPC server
  • iterates over the range of a specified block
  • apply filters/rules that compute events
  • a binary that allows calling the library with some filters directly configurable using flags (more a demo than really useful)
  • use filters to compute a score and other metadata per account
  • bundled with common filters/rules as templates/helpers
  • display/export the data in a usable way (csv, genesis, ...)
  • tested (not sure yet how it can be done in a nice way)
  • well structured to be easily readable/extendable/reusable library
  • comments, code examples, CI/CD

Current Status

  • Exploration mode (all-in-one file)
  • What it does "well" -> processing blocks, txs, events with Go
  • What is not yet implemented -> score computing; codebase structure enhancements

Repo: https://github.com/moul/cosmos-snapshot

$> go run -v . -h
Usage of cosmos-snapshot:
  -debug
        verbose output
  -max-height int
        last block to process (default 5797010)
  -min-height int
        first block to process (default 5200791)
  -rpc-addr string
        Cosmos RPC Address (default "http://localhost:26657")

go run -v . --min-height=5200800 --max-height=5200900 --debug

Screenshot 2022-04-08 at 02 40 44


go run -v . --min-height=5200800 --max-height=5200900 (without --debug, you just get a progress bar)

Screenshot 2022-04-08 at 02 38 50

Questions

  • @jaekwon Do you think I'm on the right track and can continue, or am I completely off track?
  • some filters in the brief are not clear, I'll need some help to complete my list of filters when the project will be mostly finished

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions