mirror of
https://github.com/d0zingcat/ore.git
synced 2026-05-14 15:10:13 +00:00
bc68d45cfc528a2fa18c4ade97d0ad5a876fda4d
Upgrade Instruction Builder
ORE
ORE is a fair-launch, proof-of-work, cross-border digital currency anyone can mine.
Install
cargo install ore-cli
Program
Consts– Program constants.Entrypoint– The program entrypoint.Errors– Custom program errors.Idl– Interface for clients, explorers, and programs.Instruction– Declared instructions and arguments.Loaders– Validation logic for loading Solana accounts.
Instructions
Initialize– Initializes the Ore program, creating the bus, mint, and treasury accounts.Reset– Resets the program for a new epoch.Register– Creates a new proof account for a prospective miner.Mine– Verifies a hash provided by a miner and issues claimable rewards.Claim– Distributes claimable rewards as tokens from the treasury to a miner.UpdateAdmin– Updates the admin authority.UpdateDifficulty- Updates the hashing difficulty.
State
Bus- An account (8 total) which tracks and limits the amount mined rewards each epoch.Proof- An account (1 per miner) which tracks a miner's hash, claimable rewards, and lifetime stats.Treasury– A singleton account which manages program-wide variables and authorities.
Tests
To run the test suite, use the Solana toolchain:
cargo test-sbf
For line coverage, use llvm-cov:
cargo llvm-cov
Description
Languages
Rust
99.5%
Shell
0.5%