Skip to content

⚡ Bounty: Multi-Node Sync Protocol — 3-Node Consensus Hardening (100 RTC) #36

@Scottcjn

Description

@Scottcjn

Bounty: Multi-Node Sync Protocol

Reward: 200 RTC (~$20 at reference rate)

Background

RustChain runs 3 attestation nodes (50.28.86.131, 50.28.86.153, 76.8.228.245:8099). Each maintains its own SQLite database. We need a proper sync protocol.

Requirements

  1. Database sync protocol between all 3 nodes:
    • Sync miner_attest_recent (attestations)
    • Sync balances (RTC balances)
    • Sync epoch_rewards (reward history)
    • Sync ledger (transactions)
  2. Conflict resolution: Latest timestamp wins for attestations, primary node authoritative for epochs
  3. Sync mechanism: HTTP API on existing port 8099
  4. Verification: Merkle root of synced tables
  5. Monitoring: /sync/status endpoint showing last sync time per peer

Security

  • Admin key required in header for all sync requests
  • HTTPS only
  • Rate limit: Max 1 sync per minute per peer
  • Reject sync that would reduce any balance

Deliverables

  • rustchain_sync.py — Sync module
  • Updated node code with sync endpoints
  • Test script validating 3-node consistency
  • PR to this repo

Claiming

Comment with approach and timeline. Major bounty — thorough review expected.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions