Skip to content

Auto-register miners with XvB raffle (xvb client) — no manual signup #263

Description

@VijitSingh97

Summary

The stack currently never registers miners with XMRvsBeast (XvB). We only (1) mine to the XvB pool with donor_id as the stratum username and (2) read raffle stats via GET .../p2pool_bonus_history.cgi. There is no call to XvB's registration endpoint.

The XvB operator confirmed (via DM) that there is a raffle-miner registration API, and that hitting it is what actually enters a wallet into the raffle — "it will register the wallet address provided it has a share in the p2pool PPLNS window." Without this call, users who enable XvB may be donating/mining but not properly entered.

We should add an auto-registration step to the XvB client so users are entered in the raffle automatically once they have a PPLNS share — no manual signup required.

⚠️ Do not paste the exact endpoint in this public repo. The operator deliberately does not publish this API ("to mitigate abuse"). The full URL is in the maintainer's XvB DM. Reference it only as p2pool_bonus_submit_api.cgi?address=WALLET_ADDRESS when implementing; keep the host/path out of committed code comments and docs where reasonable.

What we know about the API

  • It's a GET taking ?address=<full Monero wallet address>.
  • It only registers if the wallet has a share in the P2Pool PPLNS window — so calling it before we've found a share is a no-op. We must call it (and likely retry) once a PPLNS share exists.
  • It registers the full wallet address (the raffle then tracks the donor by the first-8-char donor_id, which is what we already mine with).

Proposed implementation

Acceptance criteria

  • With xvb.enabled: true and at least one PPLNS share, the wallet is auto-registered with XvB with no manual step.
  • No registration call is made when xvb.enabled: false or before a PPLNS share exists.
  • The call is routed over Tor (no clearnet leak of the wallet address).
  • Re-registration happens on a sane cadence (idempotent).
  • The exact endpoint URL is not committed to this public repo / docs.
  • Docs: add a short "you're auto-registered with XvB once you have a share" note (replaces the otherwise-needed manual-registration instructions).

Context / notes

Metadata

Metadata

Assignees

No one assigned

    Labels

    dashboardMining dashboard web UIenhancementNew feature or requestsecuritySecurity-sensitive issue or hardeningwave-4-dashboardv1.1 Wave 4 — dashboard observability & XvB

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions