Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

[QoS Feature] Consensus/quorum based auto-validation of RPC requests (customizable by # of nodes)

Open
#147 1 comment 0 reactions 1 assignee View on GitHub

@fredteumer is already working on this.

Since Mar 12, 2025.

Assessment

This issue has not been assessed yet.

Description

qos

Objective

Implement consensus-based verification for critical RPC calls in Portal to ensure data reliability across multiple nodes.

Origin Document

In Pocket's decentralized environment, node quality varies.

For critical operations (e.g. wallet balances, block heights), data accuracy needs verification through multi-node consensus.

Request verification could be enabled via HTTP headers, requiring exact response matches across specified number of nodes.

Goals

  • Ensure data reliability for critical RPC operations
  • Allow configurable consensus requirements
  • Maintain reasonable response times while verifying data

Deliverables

  • Design & implement consensus verification mechanism in PATH repo
  • Add HTTP header support for enabling consensus checks
  • Allow configuration of required number of matching responses
  • Implement response comparison logic (byte-by-byte)
  • Add failure responses when consensus isn't reached
  • Add metrics for verification attempts and consensus rates

Non-goals / Non-deliverables

  • Implementing consensus for non-critical endpoints
  • Building complex voting mechanisms
  • Adding verification for non-RPC calls

General deliverables

  • Comments: Document verification logic and configuration
  • Testing: Add unit tests for consensus mechanism
  • Documentation: Update Portal docs with verification details
  • Makefile: Add targets for testing consensus functionality

Creator: @bulutcambazi
Co-owner: @Olshansk @fredteumer

Dominant language
Go
Stars
12
Forks
8
PR merge metrics
No merged PRs in 30d

Getting set up

We have not checked this project's setup files yet. Start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from pokt-network/path

All issues in pokt-network/path

Similar issues

More Go issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.