Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
5be1ad7
feat: Add rustchain_exporter.py
Joshualover Mar 1, 2026
ccc8a0a
feat: Add requirements.txt
Joshualover Mar 1, 2026
080cc3a
feat: Add rustchain-exporter.service
Joshualover Mar 1, 2026
58dc1d9
feat: Add grafana_dashboard.json
Joshualover Mar 1, 2026
846af63
feat: Add README.md
Joshualover Mar 1, 2026
9b18bae
docs: Add swagger.html
Joshualover Mar 1, 2026
4c900c3
docs: Add README.md
Joshualover Mar 1, 2026
4db1d80
fix: standardize Explorer URL to HTTPS
jeanmiliuiu-boop Feb 28, 2026
0fe5979
test: add attestation fuzz testing
Feb 28, 2026
1f83ebf
miners/macos: v2.5.0 — embedded TLS proxy fallback for legacy Macs
Scottcjn Feb 28, 2026
533e83c
fix: update HTTP links to HTTPS for security (#449)
scooter7777 Feb 28, 2026
9dea904
feat: improve fingerprint test coverage with comprehensive test suite…
Joshualover Feb 28, 2026
2d055a1
Migrate all user-facing URLs from raw IP to rustchain.org domain
Feb 28, 2026
1a18d3f
Add Telegram Tip Bot for RTC transfers (#426)
xunwen-art Feb 28, 2026
7822d3a
Add Epoch Settlement Visualizer (#433)
xunwen-art Feb 28, 2026
1bdba42
RIP-201: Fleet Detection Immune System + Moltbook solver improvements
Scottcjn Feb 28, 2026
7edaf1f
security: remove hardcoded Gemini API key, use env var only
Scottcjn Feb 28, 2026
26e8d04
fix: resolve 6 CI test failures — missing challenge var and empty evi…
Feb 28, 2026
3824040
RIP-301 Phase 1: Route withdrawal fees to mining pool
Feb 28, 2026
a5a52a1
feat: add Email/SMS miner alert system (tools/miner_alerts)
writsop Feb 28, 2026
63c683a
feat: RustChain CLI - Command-line network inspector (#503)
Joshualover Mar 1, 2026
3b9d50f
fix(ci): add missing beacon_anchor.py module
Scottcjn Mar 1, 2026
cdc23e5
fix(ci): resolve 32 test failures — align tests with hardened server …
Mar 1, 2026
d40f084
feat: RIP-304 — Retro Console Mining via Pico Serial Bridge
Mar 1, 2026
9005be8
docs: add comprehensive wRTC Quickstart Guide with technical integration
Mar 1, 2026
29b0f5b
Add Japanese translation of README (README_JA.md)
Mar 1, 2026
97da793
docs: add BoTTube platform badge to README
Joshualover Mar 2, 2026
edb440f
docs: Add CONTRIBUTING.md
Joshualover Mar 2, 2026
40a12b7
docs: Add CODE_OF_CONDUCT.md
Joshualover Mar 2, 2026
5f9cb82
Add miner dashboard - personal stats and reward history page
Mar 2, 2026
632c9f9
feat: Wownero dual-mining integration - 10 RTC bounty #470
Joshualover Mar 2, 2026
247c0f7
feat: Salvium dual-mining integration - 10 RTC bounty #471
Joshualover Mar 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 41 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Contributor Covenant Code of Conduct

## Our Pledge

We as members, contributors, and leaders pledge to make participation in our community a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, religion, or sexual identity and orientation.

## Our Standards

Examples of behavior that contributes to a positive environment:

* Demonstrating empathy and kindness toward other people
* Being respectful of differing opinions, viewpoints, and experiences
* Giving and gracefully accepting constructive feedback
* Accepting responsibility and apologizing to those affected by our mistakes
* Focusing on what is best for the overall community

Examples of unacceptable behavior:

* The use of sexualized language or imagery, and sexual attention or advances of any kind
* Trolling, insulting or derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information without explicit permission
* Other conduct which could reasonably be considered inappropriate

## Enforcement Responsibilities

Community leaders are responsible for clarifying and enforcing our standards of acceptable behavior and will take appropriate and fair corrective action in response to any behavior that they deem inappropriate, threatening, offensive, or harmful.

## Scope

This Code of Conduct applies within all community spaces, and also applies when an individual is officially representing the community in public spaces.

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be reported to the community leaders responsible for enforcement. All complaints will be reviewed and investigated promptly and fairly.

## Attribution

This Code of Conduct is adapted from the [Contributor Covenant](https://www.contributor-covenant.org), version 2.0, available at https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.

For answers to common questions about this code of conduct, see https://www.contributor-covenant.org/faq.
146 changes: 34 additions & 112 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,130 +1,52 @@
# Contributing to RustChain
# Contributing to this Project

Thanks for your interest in contributing to RustChain! We pay bounties in RTC tokens for quality contributions.
Thank you for your interest in contributing! This document provides guidelines for contributing to the project.

## Quick Start
## How to Contribute

1. **Browse open bounties**: Check [Issues](https://github.com/Scottcjn/Rustchain/issues?q=is%3Aissue+is%3Aopen+label%3Abounty) labeled `bounty`
2. **Comment on the issue** you want to work on (prevents duplicate work)
3. **Fork the repo** and create a feature branch
4. **Submit a PR** referencing the issue number
5. **Get paid** in RTC on merge
### Reporting Bugs

## Bounty Tiers
Before creating bug reports, please check existing issues as you might find out that you don't need to create one. When you are creating a bug report, please include as many details as possible:

| Tier | RTC Range | Example |
|------|-----------|---------|
| Micro | 1-10 RTC | Star + share, small docs fixes |
| Standard | 20-50 RTC | Docker setup, monitoring tools, calculators |
| Major | 75-100 RTC | SDK, CLI tools, CI pipeline, Windows installer |
| Critical | 100-150 RTC | Security audits, protocol work, bridges |
* **Use a clear and descriptive title**
* **Describe the exact steps to reproduce the problem**
* **Provide specific examples to demonstrate the steps**
* **Describe the behavior you observed and what behavior you expected**
* **Include screenshots if possible**
* **Include system information (OS, version, etc.)**

**Reference rate: 1 RTC = $0.10 USD**
### Suggesting Enhancements

## What Gets Merged
Enhancement suggestions are tracked as GitHub issues. When creating an enhancement suggestion, please include:

- Code that works against the live node (`https://50.28.86.131`)
- Tests that actually test something meaningful
- Documentation that a human can follow end-to-end
- Security fixes with proof of concept
- Tools that make the ecosystem more useful
* **Use a clear and descriptive title**
* **Provide a detailed description of the suggested enhancement**
* **Explain why this enhancement would be useful**
* **List some examples of how this enhancement would be used**

## What Gets Rejected
### Pull Requests

- AI-generated bulk PRs with no testing evidence
- PRs that include all code from prior PRs (we track this)
- "Fixes" that break existing functionality
- Submissions that don't match the bounty requirements
- Placeholder data, fake screenshots, or fabricated metrics
* Fill in the required template
* Follow the project's coding standards
* Include appropriate tests
* Update documentation as needed
* Add an entry to the changelog if applicable

## Development Setup

```bash
# Clone
git clone https://github.com/Scottcjn/Rustchain.git
cd Rustchain
1. Fork the repository
2. Clone your fork: `git clone https://github.com/YOUR_USERNAME/REPO_NAME.git`
3. Create a branch: `git checkout -b feature/your-feature-name`
4. Make your changes and commit: `git commit -m 'Add some feature'`
5. Push to your fork: `git push origin feature/your-feature-name`
6. Open a Pull Request

# Python environment
python3 -m venv venv && source venv/bin/activate
pip install -r requirements.txt
## Code of Conduct

# Test against live node
curl -sk https://50.28.86.131/health
curl -sk https://50.28.86.131/api/miners
curl -sk https://50.28.86.131/epoch
```

## Live Infrastructure

| Endpoint | URL |
|----------|-----|
| Node Health | `https://50.28.86.131/health` |
| Active Miners | `https://50.28.86.131/api/miners` |
| Current Epoch | `https://50.28.86.131/epoch` |
| Block Explorer | `https://50.28.86.131/explorer` |
| wRTC Bridge | `https://bottube.ai/bridge` |

## RTC Payout Process

1. PR gets reviewed and merged
2. We comment asking for your wallet address
3. RTC is transferred from the community fund
4. Bridge RTC to wRTC (Solana) via [bottube.ai/bridge](https://bottube.ai/bridge)
5. Trade on [Raydium](https://raydium.io/swap/?inputMint=sol&outputMint=12TAdKXxcGf6oCv4rqDz2NkgxjyHq6HQKoxKZYGf5i4X)


## Documentation Quality Checklist

Before opening a docs PR, please verify:

- [ ] Instructions work exactly as written (commands are copy-pastable).
- [ ] OS/architecture assumptions are explicit (Linux/macOS/Windows).
- [ ] New terms are defined at first use.
- [ ] Broken links are removed or corrected.
- [ ] At least one `example` command/output is updated if behavior changed.
- [ ] File and section names follow existing naming conventions.

## Common Troubleshooting Entries

If you changed setup or CLI docs, add at least one section covering common failures, for example:

- `Command not found`: verify PATH and virtualenv activation.
- `Permission denied` on scripts: ensure execute bit and shell compatibility.
- `Connection error to live node`: include curl timeout/retry guidance and fallback endpoint checks.

This keeps bounty-quality docs usable by new contributors and operators.

## Code Style

- Python 3.8+ compatible
- Type hints appreciated but not yet enforced
- Keep PRs focused — one issue per PR
- Test against the live node, not just local mocks

## BCOS (Beacon Certified Open Source)

RustChain uses BCOS checks to keep contributions auditable and license-clean without forcing rewrites of legacy code.

- **Tier label required (non-doc PRs)**: Add `BCOS-L1` or `BCOS-L2` (also accepted: `bcos:l1`, `bcos:l2`).
- **Doc-only exception**: PRs that only touch `docs/**`, `*.md`, or common image/PDF files do not require a tier label.
- **SPDX required (new code files only)**: Newly added code files must include an SPDX header near the top, e.g. `# SPDX-License-Identifier: MIT`.
- **Evidence artifacts**: CI uploads `bcos-artifacts` (SBOM, license report, hashes, and a machine-readable attestation JSON).

When to pick a tier:
- `BCOS-L1`: normal features, refactors, non-sensitive changes.
- `BCOS-L2`: security-sensitive changes, transfer/wallet logic, consensus/rewards, auth/crypto, supply-chain touching changes.

## Start Mining

Don't just code — mine! Install the miner and earn RTC while you contribute:

```bash
pip install clawrtc
clawrtc --wallet YOUR_NAME
```

Vintage hardware (PowerPC G4/G5, POWER8) earns **2-2.5x** more than modern PCs.
Please note that this project is released with a [Code of Conduct](CODE_OF_CONDUCT.md). By participating in this project you agree to abide by its terms.

## Questions?

Open an issue or join the community. We're friendly.
Feel free to open an issue for any questions or concerns.

Thank you for contributing! 🎉
20 changes: 10 additions & 10 deletions INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ tail -f ~/.rustchain/miner.log
### Balance Check
```bash
# Note: Using -k flag because node may use self-signed SSL certificate
curl -sk "https://50.28.86.131/wallet/balance?miner_id=YOUR_WALLET_NAME"
curl -sk "https://rustchain.org/wallet/balance?miner_id=YOUR_WALLET_NAME"
```

Example output:
Expand All @@ -166,17 +166,17 @@ Example output:

### Active Miners
```bash
curl -sk https://50.28.86.131/api/miners
curl -sk https://rustchain.org/api/miners
```

### Node Health
```bash
curl -sk https://50.28.86.131/health
curl -sk https://rustchain.org/health
```

### Current Epoch
```bash
curl -sk https://50.28.86.131/epoch
curl -sk https://rustchain.org/epoch
```

## Manual Operation
Expand Down Expand Up @@ -304,14 +304,14 @@ cat ~/.rustchain/miner.log

**Check:**
1. Internet connection is working
2. Node is accessible: `curl -sk https://50.28.86.131/health`
2. Node is accessible: `curl -sk https://rustchain.org/health`
3. Firewall isn't blocking HTTPS (port 443)

### Miner not earning rewards

**Check:**
1. Miner is actually running: `systemctl --user status rustchain-miner` or `launchctl list | grep rustchain`
2. Wallet balance: `curl -sk "https://50.28.86.131/wallet/balance?miner_id=YOUR_WALLET_NAME"`
2. Wallet balance: `curl -sk "https://rustchain.org/wallet/balance?miner_id=YOUR_WALLET_NAME"`
3. Miner logs for errors: `journalctl --user -u rustchain-miner -f` or `tail -f ~/.rustchain/miner.log`
4. Hardware attestation passes: Look for "fingerprint validation" messages in logs

Expand All @@ -338,7 +338,7 @@ curl -sSL https://raw.githubusercontent.com/Scottcjn/Rustchain/main/install-mine

- **Documentation:** https://github.com/Scottcjn/Rustchain
- **Issues:** https://github.com/Scottcjn/Rustchain/issues
- **Explorer:** http://50.28.86.131/explorer
- **Explorer:** https://rustchain.org/explorer
- **Bounties:** https://github.com/Scottcjn/rustchain-bounties

## Security Notes
Expand All @@ -353,17 +353,17 @@ curl -sSL https://raw.githubusercontent.com/Scottcjn/Rustchain/main/install-mine
To view the certificate SHA-256 fingerprint:

```bash
openssl s_client -connect 50.28.86.131:443 < /dev/null 2>/dev/null | openssl x509 -fingerprint -sha256 -noout
openssl s_client -connect rustchain.org:443 < /dev/null 2>/dev/null | openssl x509 -fingerprint -sha256 -noout
```

If you want to avoid using `-k`, you can save the certificate locally and pin it:

```bash
# Save the cert once (overwrite if it changes)
openssl s_client -connect 50.28.86.131:443 < /dev/null 2>/dev/null | openssl x509 > ~/.rustchain/rustchain-cert.pem
openssl s_client -connect rustchain.org:443 < /dev/null 2>/dev/null | openssl x509 > ~/.rustchain/rustchain-cert.pem

# Then use it instead of -k
curl --cacert ~/.rustchain/rustchain-cert.pem "https://50.28.86.131/wallet/balance?miner_id=YOUR_WALLET_NAME"
curl --cacert ~/.rustchain/rustchain-cert.pem "https://rustchain.org/wallet/balance?miner_id=YOUR_WALLET_NAME"
```

## Contributing
Expand Down
22 changes: 14 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,13 @@
[![License](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
[![GitHub Stars](https://img.shields.io/github/stars/Scottcjn/Rustchain?style=flat&color=gold)](https://github.com/Scottcjn/Rustchain/stargazers)
[![Contributors](https://img.shields.io/github/contributors/Scottcjn/Rustchain?color=brightgreen)](https://github.com/Scottcjn/Rustchain/graphs/contributors)

[![Powered by BoTTube](https://bottube.ai/badge/platform.svg)](https://bottube.ai)

[![Last Commit](https://img.shields.io/github/last-commit/Scottcjn/Rustchain?color=blue)](https://github.com/Scottcjn/Rustchain/commits/main)

[![Powered by BoTTube](https://bottube.ai/badge/platform.svg)](https://bottube.ai)

[![Open Issues](https://img.shields.io/github/issues/Scottcjn/Rustchain?color=orange)](https://github.com/Scottcjn/Rustchain/issues)
[![PowerPC](https://img.shields.io/badge/PowerPC-G3%2FG4%2FG5-orange)](https://github.com/Scottcjn/Rustchain)
[![Blockchain](https://img.shields.io/badge/Consensus-Proof--of--Antiquity-green)](https://github.com/Scottcjn/Rustchain)
Expand Down Expand Up @@ -164,22 +170,22 @@ If an issue persists, include logs and OS details in a new issue or bounty comme
**Check your wallet balance:**
```bash
# Note: Using -sk flags because the node may use a self-signed SSL certificate
curl -sk "https://50.28.86.131/wallet/balance?miner_id=YOUR_WALLET_NAME"
curl -sk "https://rustchain.org/wallet/balance?miner_id=YOUR_WALLET_NAME"
```

**List active miners:**
```bash
curl -sk https://50.28.86.131/api/miners
curl -sk https://rustchain.org/api/miners
```

**Check node health:**
```bash
curl -sk https://50.28.86.131/health
curl -sk https://rustchain.org/health
```

**Get current epoch:**
```bash
curl -sk https://50.28.86.131/epoch
curl -sk https://rustchain.org/epoch
```

**Manage the miner service:**
Expand Down Expand Up @@ -310,16 +316,16 @@ This provides cryptographic proof that RustChain state existed at a specific tim

```bash
# Check network health
curl -sk https://50.28.86.131/health
curl -sk https://rustchain.org/health

# Get current epoch
curl -sk https://50.28.86.131/epoch
curl -sk https://rustchain.org/epoch

# List active miners
curl -sk https://50.28.86.131/api/miners
curl -sk https://rustchain.org/api/miners

# Check wallet balance
curl -sk "https://50.28.86.131/wallet/balance?miner_id=YOUR_WALLET"
curl -sk "https://rustchain.org/wallet/balance?miner_id=YOUR_WALLET"

# Block explorer (web browser)
open https://rustchain.org/explorer
Expand Down
16 changes: 8 additions & 8 deletions README.zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -95,22 +95,22 @@ curl -sSL https://raw.githubusercontent.com/Scottcjn/Rustchain/main/install-mine
**检查钱包余额:**
```bash
# 注意:使用 -sk 标志,因为节点可能使用自签名 SSL 证书
curl -sk "https://50.28.86.131/wallet/balance?miner_id=YOUR_WALLET_NAME"
curl -sk "https://rustchain.org/wallet/balance?miner_id=YOUR_WALLET_NAME"
```

**列出活跃矿工:**
```bash
curl -sk https://50.28.86.131/api/miners
curl -sk https://rustchain.org/api/miners
```

**检查节点健康:**
```bash
curl -sk https://50.28.86.131/health
curl -sk https://rustchain.org/health
```

**获取当前纪元:**
```bash
curl -sk https://50.28.86.131/epoch
curl -sk https://rustchain.org/epoch
```

**管理矿工服务:**
Expand Down Expand Up @@ -240,16 +240,16 @@ RustChain 纪元 → 承诺哈希 → Ergo 交易(R4 寄存器)

```bash
# 检查网络健康
curl -sk https://50.28.86.131/health
curl -sk https://rustchain.org/health

# 获取当前纪元
curl -sk https://50.28.86.131/epoch
curl -sk https://rustchain.org/epoch

# 列出活跃矿工
curl -sk https://50.28.86.131/api/miners
curl -sk https://rustchain.org/api/miners

# 检查钱包余额
curl -sk "https://50.28.86.131/wallet/balance?miner_id=YOUR_WALLET"
curl -sk "https://rustchain.org/wallet/balance?miner_id=YOUR_WALLET"

# 区块浏览器(网页浏览器)
open https://rustchain.org/explorer
Expand Down
Loading