SPS Validator Development Update and Invoice #2

avatar

Validators Development #2
JPTR Corporation
This document offers a clear and thoughtful summary of the tickets we’ve successfully closed over the past 30 days, along with an overview of the work currently in progress. It’s designed to give you a comprehensive snapshot of our significant achievements, all presented in an easy-to-read format, with insights summarized by ChatGPT from Jira issues.

We hope this overview highlights the hard work and dedication that has gone into each task, ensuring that our development efforts are both transparent and impactful.

A payment of $40,000.00 is required to be made to JPTR, Corporation. Please ensure the payment is made in the form of USDC to the Ethereum address: 0x57d917726073D7582022897F753B034aA593220c

Note: Before submitting the full amount, please send a minimal test transaction to verify the accuracy of the transfer. Once confirmed, proceed with the full payment.

Special Note: The validator repository is now publicly available at the SPSDAO GitHub. While this marks an exciting step towards open-source collaboration, please note that the repository is not yet ready for production use. The current version is still undergoing rigorous testing and validation, and there may be additional updates or changes before it is fully stable for live environments. We encourage community contributions but recommend caution for anyone considering deploying the validator in production settings at this stage.

TL;DR

  • Implemented license staking/unstaking and check-in system for validator reward pool.
  • Introduced a new running validator reward pool for validators sending periodic check-ins.
  • Configured test environment to verify validator check-ins and reward distribution.
  • Fixed memory leak, reducing validator memory usage to 100MB.
    Updated delegation market ops and staking rewards claim to match Splinterlands standards.
  • Corrected unstaking issues in the SPS reward pool.
  • Applied 1% monthly decline to SPS and validator reward pools.
  • Cleaned up the validator repository and made it publicly available on SPSDAO GitHub.
  • Started internal QA to ensure Splinterlands integration with the validator.
  • Updated build scripts and packaged validator for public deployment.
  • Added Hive Proxy feature to store the latest 1,000 blocks in block storage.
  • Upgraded infrastructure for sl-validator and maintained EC2/Terraform code.

Running Validator Reward Pools: Optimizing Validator Operations and Expanding Features

  • Introduction of License Staking/Unstaking for Validator Reward Pool: We successfully integrated license staking and unstaking functionality to support the running validator reward pool. This new feature ensures that validators have the required stake to participate, providing a more secure and reliable reward distribution system.
  • Validator Check-In System for Continuous Operation Verification: To further safeguard the integrity of the running validator reward pool, we implemented a check-in system that mandates validators to publish a transaction every X blocks. This continuous verification mechanism ensures that validators remain operational, bolstering both trust and system reliability.
  • Check-In Verification for License Holders: We developed a check-in verification system, which verifies that only active validators with valid licenses can participate in the reward pool. This additional security layer ensures that only legitimate validators are rewarded, enhancing the overall quality of the network.
  • New "Running Validator" Reward Pool: A new reward pool specifically for running validators was introduced. Entry to this pool is exclusive to validators that send periodic check-ins, adding an incentive for validators to maintain uptime and meet operational requirements.
  • Configurable Check-In Requirements via Block Ops: To provide greater flexibility and control over the check-in system, we added a configuration mechanism that can be updated through block operations. This allows the DAO to dynamically adjust when check-ins are required to participate in the reward pool, enabling the community to respond to evolving conditions and requirements.
  • Test Environment Setup and Validation: A test environment consisting of two validator nodes was configured to check in daily. The reward and check-in systems were thoroughly verified, confirming that all components function as intended in a controlled environment.

Validator Performance Optimization: Reducing Resource Usage

  • Memory Leak Resolution in Validator: We identified and resolved a memory leak caused by a third-party library, significantly improving the validator's performance. As a result, the validator's memory usage has been reduced to only 5% of the container's available memory. This means that for a container with 2GB of available memory, the validator now uses only 100MB, drastically improving resource efficiency and stability.

Enhancements to Validator and Market Operations: Aligning with Splinterlands Standards

  • Updated Delegation Market Operations and Staking Rewards Claim: The delegation market operations and claim_staking_reward operations were updated to allow the posting of keys that match Splinterlands' operational standards. This update ensures a seamless experience for users interacting with the Splinterlands ecosystem, further aligning the validator system with Splinterlands' requirements.
  • Corrections to Unstaking from SPS Reward Pool: We corrected several issues related to the unstaking process in the SPS reward pool. This ensures that users can smoothly withdraw their staked tokens, maintaining the integrity of the staking system and preventing potential disruptions.

Reward Pool Adjustments: Ensuring Long-Term Sustainability

  • Implementation of 1% Decline in SPS and Running Validator Reward Pools: In accordance with the SPS whitepaper and validator nodes article, we implemented a 1% decline per month in both the SPS reward pool and the running validator reward pool. This change was made to ensure the long-term sustainability of the reward pools, gradually reducing rewards over time as outlined in the governance documents.

Repository Clean-Up and Public Release: Enabling Open Source Collaboration

  • Validator Repository Clean-Up for Public Release: The validator repository was extensively cleaned up in preparation for its public release. The code was thoroughly reviewed and refined to ensure clarity and ease of use, enabling external developers to contribute to the project. The cleaned-up repository was then pushed to the SPSDAO repository, marking a significant milestone in the open-source collaboration process.
  • Internal QA for Splinterlands Integration: We initiated an internal QA process against a Splinterlands test environment to confirm that all Splinterlands integrations are functioning correctly when the validator is enabled. This validation is critical to ensuring that the validator operates seamlessly within the broader Splinterlands ecosystem.

Public Deployment and Community Tools: Supporting Public Validator Usage

  • Public Validator Code Deployment: The validator code has been officially deployed to a public repository, providing external developers and the community with full access. The repository can be found at https://github.com/TheSPSDAO/SPS-Validator, and the accompanying readme documentation will be updated shortly to provide detailed guidance on running and maintaining the validator.
  • Dev-Hive Container for Community Use: In addition to the validator code, the Hive Dev Container was provided in the dev-hive-container repository. This container allows the community to easily replicate the development environment and contribute to the project without unnecessary setup complexity.
  • Validator Build Script Updates and Public Packaging: We updated the build scripts and packaging for the validator to enable the general public to easily run their own validators. This includes simplifying the deployment process and ensuring that users have access to all necessary tools and resources.
  • Snapshot Validator to CDN for Fast-Forwarding: A feature was added to snapshot the validator to a CDN, allowing users to fast forward to the latest block. This feature enhances the user experience by enabling faster setup times for new validators.

Hive Proxy Enhancements: Improving Data Availability and Storage Efficiency

  • Hive Proxy Update for Block Object Storage: A new feature was added to the Hive Proxy, allowing it to store the latest 1,000 blocks from cache into block object storage. This enhancement ensures that the most recent data is readily available, improving both performance and data access speeds.

Infrastructure Upgrades: Enhancing Validator Stability and Performance

  • Infrastructure Changes to sl-validator: Significant infrastructure changes were made to the sl-validator environment to enable the smooth operation of the validator. These updates also included backporting all changes to the Splinterlands QA environments, ensuring compatibility and stability across the board.
  • EC2 and Terraform Code Maintenance: Updates and maintenance work were conducted on EC2 and Terraform code to ensure that the underlying infrastructure supporting the validator is robust and scalable. These improvements will help maintain operational efficiency and reliability as the validator system grows.

Posted using Splintertalk



0
0
0.000
5 comments
avatar

Congratulations @jptrcorp! You have completed the following achievement on the Hive blockchain And have been rewarded with New badge(s)

You received more than 50 upvotes.
Your next target is to reach 100 upvotes.

You can view your badges on your board and compare yourself to others in the Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

0
0
0.000
avatar

There's definitely a lot of work to be done, but this is a massive step forward in my opinion. I'm excited to dive in and start testing everything!

I noticed that the https://github.com/TheSPSDAO/dev-hive-container repository is still empty—maybe this could be updated soon.

Also, in the .env files, it seems like the NPM_TOKEN is required. I assume the validator is using some custom Node packages that are only accessible to the team. Will these packages eventually be made public, or are they specific to the internal team? // npm.pkg.github.com/:_authToken=${NPM_TOKEN}
@steem-monsters:registry=https://npm.pkg.github.com/

0
0
0.000
avatar

Great to see that we are getting close to completing another important step for decentralization.

0
0
0.000