Development of analytics and alerting tool & API for SSV Operators

Summary of Proposal

Laine requests a grant from the SSV DAO to implement an operator and validator analytics, explorer and alerting website and associated public APIs.

The website will provide key metrics around operators, including our own aggregation and classification of metrics into a scoring system, allowing users to easily compare and review operators.

We have been an operator on SSV and experienced the current SSV Explorer and would like to contribute to an evolution of this critical area of tooling.

Separately, but related to this proposal, we wish to help create a proposal for an open standard for operator metadata publication that all tools and explorers can utilise to increase the transparency and visibility of the real operators behind the nodes.

Proposal Details

The website will consist of three components:

  • SSV Exporter Node, a dedicated exporter node, operated by us, which reads relevant data from the SSV Network on-chain contracts and returns information about operators, validators and validator events (decided events)

  • Backend / API / Database, a backend that consumes the data from the exporter, aggregates and stores it into a relational database as well as possibly a NoSQL solution for decided events (Elastic Search or MongoDB). The need for the NoSQL solution needs to be further studied before making a final decision on the architecture.
    The backend will expose various API endpoints which will be published for third parties to consume, allowing anyone to easily access data about operators and validators

  • Frontend built in Next.js which consumes the backend APIs and presents lists of operators and validators, with the ability to search, filter and order the operators based on key criteria.

The website will allow users to find operators or see the performance of their validators.

We believe in the importance of decentralisation and censorship resistance and would like to integrate metrics into our scoring that help further those goals. This will help promote smaller operators that are performing well to distribute validators equally across the eco system.

We will allow a user to connect their wallet to easily view all their deposited validators and how they are performing.

Users can set up alerts for the performance of an operator or a validator, so that they can receive notifications should they be inactive for a prolonged period.

Alerts will be available via Email, Telegram and Webhook initially, with other channels under consideration.

The goal is to integrate validator deposit functionality in phase II which will permit users to use the site to identify and select operators interactively, then deposit their validator to the SSV network. This will be subject to a separate grant proposal and is not in the scope of this proposal.

Motivation for Proposing

We are a software development company that is transitioning from web2.0 to web3 and has been getting more and more involved in various blockchain projects over the past 18 months. We have extensive experience building APIs, integrating to remote systems and building websites. We operate validators/operators on Solana, Velas and SSV currently and are a verified operator on SSV since late 2021.

We have built for Solana which implements some of the functionality proposed in this grant proposal, though the data structures and concepts aren’t completely analogous.

We have seen the evolution of SSV since we first started our operator node in November 2021 and have been in close contact with some of the team members, which has given us great confidence in the technology, road map and future of this product.

At the same time we have found the existing explorer lacking some functionalities we would’ve liked to see and think that we have the right mindset and skills to deliver a product that will be beneficial to the community as a whole, while also enabling further tools to be built on top of the APIs we will release alongside it.

Non-technical ELI5 of proposal

A website that lets you see all operators, compare them with each other and see key numbers and scores in order to choose which are best so that you can deposit your validator with them, while also giving you the option of setting up alerts and being informed if your operators or validators aren’t performing well.

Reasons supporting the proposal

SSV Network has a functional back bone that has been proven in the Primus testnet and is well on its way to a successful deployment to Mainnet, however it lacks tools and interfaces to easily dissect and analyse the multitude of data points on the network. For a successful appeal to a broad base of users the composition and functioning of the network must be easily understood.

Our website will create a visually pleasing and simple method to view, compare and choose operators, as well as track performance of one’s validators, lessening the overall information burden.

Reasons against the proposal

Blox has built an existing open source explorer which can be expanded to incorporate better UI and additional functionality, which might be less time consuming, however we prefer a fresh approach to a more analytics driven user experience rather than an explorer.

Currently this proposal does not include the functionality to deposit a validator, which might make it less attractive, however we see this firmly as a Phase II objective.

We have not performed much work on the Ethereum network, though we have already set up the SSV Exporter Node and familiarised ourselves with the data structures and workings of it to establish the feasibility of this proposal. We firmly believe we are able to deliver on the promised functionality.

Grant Amount & Payment Plan

Phase I is a fully functional standalone website that provides analytics/alerting capability for the SSV Network, with the primary purpose of listing all operators and their validators, key information about them, easy filtering and searching as well as performance scores and graphs showing performance over time. We will continuously track performance of operators and validators via decided events and implement an alerting mechanism that users can subscribe to.

The infrastructure for the website encompasses an SSV Exporter Node, a standalone REST API and RDBMS (PostgreSQL) with either MongoDB or ElasticSearch to store “decided” messages from the network, as well as a Next.js frontend.

We estimate a three month period for design, development and testing with four resources. The grant will also contribute towards a minimum 12 month period of maintenance and upkeep as well as preparation and transition to mainnet.

This grant includes the transition to mainnet, assuming there are no major differences between TestnetV2 and Mainnet.

For the above we request a grant for $55,000.

Based on interaction and feedback as well as comments on other grants we are prepared to forego any upfront payment as we understand this can be a difficult position for the DAO, we wish to be a long term contributor and build the trust through delivery on our promises.

Thus we propose the following payment schedule:

Payment Deliverable Amount
Payment 1 Basic operator & validator ingestion and REST API, UI canvas and listing/search 50% ($27,500)
Payment 2 Final delivery with operator details, validator listings and performance metrics, public API and alerting 50% ($27,500)

Payment will be accepted in USDC or SSV.

We invite the whole community to review this proposal and comment on features they agree with, think are missing or don’t think are necessary, as well as any other suggestions or changes.

  • Yes to this proposal
  • Abstain
  • No to this proposal

0 voters

1 Like

Could you add the voting widget we add to all new proposals?
@shadi can help

done, thanks wasn’t aware of that option