feat: Add Verus dual-mining integration (#459)#541
Closed
Joshualover wants to merge 32 commits intoScottcjn:mainfrom
Closed
feat: Add Verus dual-mining integration (#459)#541Joshualover wants to merge 32 commits intoScottcjn:mainfrom
Joshualover wants to merge 32 commits intoScottcjn:mainfrom
Conversation
* Fix: Node URL defaults inconsistent across files - Unify Node URL to https://50.28.86.131 - Fix wallet and miners default URLs Fixes Scottcjn#400 ## Bounty Payment **Wallet (Base):** 0xd7C80bdf514dd0029e20e442E227872A63a91A2D **Token:** RTC * fix: standardize node URL to HTTPS in INSTALL.md explorer link --------- Co-authored-by: JeanmiLiu <>
Clean HTTP→HTTPS fixes for explorer URL and rustchain.org link
…Scottcjn#448) Comprehensive fingerprint test suite with 20+ test cases covering hardware ID uniqueness, consistency, validation, anti-emulation, evidence requirements, and clock drift
All miners, SDK, wallet, tools, docs, and installer code now use https://rustchain.org instead of http://50.28.86.131:8088 or https://50.28.86.131. This enables proper TLS with domain-verified certificates and eliminates verify=False workarounds. Deprecated files and infrastructure tables retain IP for reference. 85 files changed across miners/, sdk/, wallet/, tools/, docs/, node/ Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Standalone Telegram bot in integrations/telegram-tip-bot/ for RTC tipping. No core node modifications.
Interactive web visualization for epoch settlements in integrations/epoch-viz/. Pure HTML/CSS/JS, dark mode, responsive. No core node modifications.
- fleet_immune_system.py: Equal Bucket Split, IP/fingerprint/timing detection - rip201_server_patch.py: Automated server integration patcher - moltbook_solver.py: Two-tier solver (regex + LLM) with agent rotation - RIP-0201 specification document
…dence check
Bug 1: submit_attestation() referenced `challenge` variable at line 2141
but never extracted it from request data, causing NameError → HTTP 500
on any attestation request. Added `challenge = _attest_text(data.get('challenge'))`.
Bug 2: validate_fingerprint_data() checked evidence key presence with
`"vm_indicators" in data` which is True even for empty lists `[]`.
Changed to `bool(data.get("vm_indicators"))` to require non-empty values.
Updated test fixtures to include proper evidence fields (dmesg_scanned,
paths_checked) for tests that represent real hardware with no VM indicators.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Withdrawal fees (0.01 RTC) were previously burned (deducted from user balance but never credited anywhere). Now they are recycled to the founder_community wallet which funds bounties and mining rewards. Changes: - fee_events tracking table for audit trail - Credit WITHDRAWAL_FEE to founder_community after each withdrawal - /api/fee_pool endpoint for fee statistics and recent events - Badge endpoint sync from production deployment Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Implements issue Scottcjn#28 - Miner Alert System. Alert types: - Miner goes offline (no attestation within threshold) - Rewards received (balance increase detected) - Large transfers from wallet (configurable threshold) - Attestation failures (miner dropped from active list) Features: - Email alerts via SMTP (Gmail, SendGrid, any provider) - Optional SMS via Twilio REST API (no SDK dependency) - SQLite database for subscriptions, state tracking, alert history - Per-alert-type cooldowns to prevent spam - CLI for managing subscriptions (subscribe/unsubscribe/list) - Systemd service file for daemon deployment - Auto-recovery detection (back-online notifications) Co-authored-by: writsop <writsop@users.noreply.github.com>
Adds tools/cli/rustchain_cli.py - a stdlib-only CLI tool for querying the RustChain network. Commands: status, miners, balance, epoch, hall, fees. Supports --json output and --node URL override. Bounty Scottcjn#503 (50 RTC) claimed by @Joshualover. Co-authored-by: Joshualover <Joshualover@users.noreply.github.com>
The server imports beacon_anchor at line 10 but the file was only on production, never committed to the repo. This caused all CI runs to fail with ModuleNotFoundError since the import was added. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…code
Test fixes:
- test_fingerprint*.py: Include both anti_emulation AND clock_drift in all
fingerprint payloads (hardened validate_fingerprint_data requires both
for modern hardware). Fix error string expectations.
- test_api.py: Remove 8 tests for non-existent features (_TRUSTED_PROXY_IPS,
enforce_mock_signature_runtime_guard, visibility field). Fix remaining
tests to match actual endpoint behavior.
Server hardening (submit_attestation):
- Add type guard rejecting non-dict JSON root payloads (null, array, scalar)
- Add type guards for device, signals, report fields (coerce non-dict to {})
- Coerce non-string miner values to str for sqlite3 safety
- Use isinstance checks in check_vm_signatures_server_side to handle
non-string cpu/hostname values from fuzz payloads
- Coerce commitment to str before sqlite3 binding
All 102 tests pass (was 70/102).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
First blockchain to mine on vintage game console silicon. Adds support for NES, SNES, N64, Genesis, Game Boy, Saturn, PS1, and GBA via a Raspberry Pi Pico serial-to-controller bridge. Changes: - RIP-304 specification document - 15+ console CPU aliases in ANTIQUITY_MULTIPLIERS (2.3x-2.8x) - retro_console fleet bucket in RIP-201 - console family in server HARDWARE_WEIGHTS - Bridge-type fingerprint validation for Pico serial consoles Proven by Legend of Elya: nano-GPT running on real N64 R4300i at 1-3 tok/s. Closes Scottcjn#463 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add complete wRTC quickstart documentation (Issue Scottcjn#58) - Include anti-scam checklist with verification steps - Document Raydium swap process (SOL → wRTC) - Document BoTTube bridge flows (RTC ↔ wRTC) - Add technical integration section with Solana SDK examples - Include code samples for balance checks, transfers, and bridge API - Add troubleshooting guide and FAQ - Link from main README Reward: 40 RTC
- Translated full README.md to Japanese - Preserves all badges, links, and formatting - Addresses issue Scottcjn#468 for Japanese translation bounty
- Single self-contained HTML page with inline CSS/JS - Miner ID input with shareable URL support (?miner=id) - Displays: balance, epoch participation, total earned, countdown - Hardware info: architecture, year, rust score, badge - Attestation timeline (24h hourly) - Fleet view for multi-machine operators - Earnings performance chart (last 20 epochs) - Reward history table - Mobile responsive design - CRT terminal aesthetic matching rustchain.org Implements bounty Scottcjn#501 requirements (75 RTC)
- Complete Prometheus exporter scraping all node API endpoints - Metrics: node health, miners, epoch, Hall of Fame, fee pool - Systemd service file for production deployment - Pre-built Grafana dashboard with 9 panels - Bonus: Docker-ready configuration Fixes Scottcjn#504
- Complete API documentation for all public endpoints - Interactive Swagger UI for testing - Request/response schemas for all operations - Authentication documentation for admin endpoints Fixes Scottcjn#502
- Node RPC proof (localhost:10225 getmininginfo) - 1.5x bonus - Pool proof (Flockpool, Suprnova APIs) - 1.3x bonus - Process detection (raptoreumd, cpuminer-gr, xmrig) - 1.15x bonus - Subprocess launch support for managed mining Algorithm: GhostRider (multi-algo CPU rotation) Big CPU mining community = lots of potential dual-miners Fixes Scottcjn#469 Wallet: joshualover-dev RTC Claim: 15 RTC
- Node RPC proof (localhost:10321) - Pool proof (HeroMiners, etc.) - Process detection (scalad, scala-miner, xmrig) Algorithm: RandomX variant (CPU-focused) Fixes Scottcjn#473 Wallet: joshualover-dev
- Add openapi.yaml with complete API specification (OpenAPI 3.0) - Add self-contained swagger.html for interactive API docs - Document all public endpoints: health, epoch, miners, hall of fame, fee pool, balance, lottery - Document admin endpoints: attest/submit, wallet/transfer, withdraw/request - Include request/response schemas and examples - Add security scheme for X-Admin-Key authentication Bounty: Scottcjn#502 - OpenAPI/Swagger Documentation for Node API (30 RTC) Wallet: joshualover-dev Tested against live node at https://rustchain.org
added 2 commits
March 3, 2026 01:57
- Conceal (CryptoNight-GPU) - Scottcjn#472 - 10 RTC - Salvium (RandomX) - Scottcjn#471 - 10 RTC Both with node RPC, pool, and process detection Wallet: joshualover-dev Total: 20 RTC
- Created verus_dual_mining.py with full proof generation - Node RPC proof (1.5x) via localhost:27486 getinfo - Pool proof (1.3x) via Luckpool and Herominers - Process detection (1.15x) for verusd, ccminer, nheqminer - VerusHash 2.2 algorithm support Wallet: joshualover-dev
Owner
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Verus Dual-Mining Integration - #459
Bounty: 20 RTC
Implementation:
Created
tools/dual_mining/verus_dual_mining.pywith complete proof generation.Features:
Node RPC Proof (1.5x bonus)
localhost:27486withgetinfoPool Proof (1.3x bonus)
Process Detection (1.15x bonus)
PR
Wallet: joshualover-dev