From a7c6da1881570adc5b477b0ac285170d3f16c9db Mon Sep 17 00:00:00 2001 From: Hardhat Chad Date: Mon, 1 Jul 2024 14:14:42 -0500 Subject: [PATCH] remove staking program --- Cargo.toml | 2 +- README.md | 42 ++++++++++++++++++-- {core/api => api}/Cargo.toml | 0 {core/api => api}/src/consts.rs | 0 {core/api => api}/src/error.rs | 0 {core/api => api}/src/event.rs | 0 {core/api => api}/src/instruction.rs | 0 {core/api => api}/src/lib.rs | 0 {core/api => api}/src/state/bus.rs | 0 {core/api => api}/src/state/config.rs | 0 {core/api => api}/src/state/mod.rs | 0 {core/api => api}/src/state/proof.rs | 0 {core/api => api}/src/state/treasury.rs | 0 core/README.md | 44 --------------------- {core/program => program}/Cargo.toml | 0 {core/program => program}/src/claim.rs | 0 {core/program => program}/src/close.rs | 0 {core/program => program}/src/crown.rs | 0 {core/program => program}/src/initialize.rs | 0 {core/program => program}/src/lib.rs | 0 {core/program => program}/src/loaders.rs | 0 {core/program => program}/src/mine.rs | 0 {core/program => program}/src/open.rs | 0 {core/program => program}/src/reset.rs | 0 {core/program => program}/src/stake.rs | 0 {core/program => program}/src/update.rs | 0 {core/program => program}/src/upgrade.rs | 0 stake/api/Cargo.toml | 0 stake/api/src/lib.rs | 0 stake/program/Cargo.toml | 0 stake/program/src/lib.rs | 0 31 files changed, 40 insertions(+), 48 deletions(-) rename {core/api => api}/Cargo.toml (100%) rename {core/api => api}/src/consts.rs (100%) rename {core/api => api}/src/error.rs (100%) rename {core/api => api}/src/event.rs (100%) rename {core/api => api}/src/instruction.rs (100%) rename {core/api => api}/src/lib.rs (100%) rename {core/api => api}/src/state/bus.rs (100%) rename {core/api => api}/src/state/config.rs (100%) rename {core/api => api}/src/state/mod.rs (100%) rename {core/api => api}/src/state/proof.rs (100%) rename {core/api => api}/src/state/treasury.rs (100%) delete mode 100644 core/README.md rename {core/program => program}/Cargo.toml (100%) rename {core/program => program}/src/claim.rs (100%) rename {core/program => program}/src/close.rs (100%) rename {core/program => program}/src/crown.rs (100%) rename {core/program => program}/src/initialize.rs (100%) rename {core/program => program}/src/lib.rs (100%) rename {core/program => program}/src/loaders.rs (100%) rename {core/program => program}/src/mine.rs (100%) rename {core/program => program}/src/open.rs (100%) rename {core/program => program}/src/reset.rs (100%) rename {core/program => program}/src/stake.rs (100%) rename {core/program => program}/src/update.rs (100%) rename {core/program => program}/src/upgrade.rs (100%) delete mode 100644 stake/api/Cargo.toml delete mode 100644 stake/api/src/lib.rs delete mode 100644 stake/program/Cargo.toml delete mode 100644 stake/program/src/lib.rs diff --git a/Cargo.toml b/Cargo.toml index 9e3dcb0..99d4d7e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [workspace] resolver = "2" -members = ["core/*", "utils"] +members = ["api", "program", "utils"] [workspace.package] version = "2.0.0" diff --git a/README.md b/README.md index 2264f89..816aaeb 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,42 @@ **ORE is a fair-launch, proof-of-work, digital currency everyone can mine.** -## Programs -- [`Core`](core) - ORE mining program. -- [`Stake`](stake) - ORE staking program. +## API +- [`Consts`](api/src/consts.rs) – Program constants. +- [`Entrypoint`](api/src/lib.rs) – The program entrypoint. +- [`Error`](api/src/error.rs) – Custom program errors. +- [`Event`](api/src/error.rs) – Custom program events. +- [`Instruction`](api/src/instruction.rs) – Declared instructions and arguments. + +## Instructions +- [`Claim`](program/src/claim.rs) – Distributes claimable rewards as tokens from the treasury to a miner. +- [`Close`](program/src/close.rs) – Closes a proof account returns the rent to the owner. +- [`Crown`](program/src/crown.rs) – Flags a proof account as the top staker on the network. +- [`Open`](program/src/open.rs) – Creates a new proof account for a prospective miner. +- [`Mine`](program/src/mine.rs) – Verifies a hash provided by a miner and issues claimable rewards. +- [`Stake`](program/src/stake.rs) – Stakes ORE with a miner to increase their multiplier. +- [`Reset`](program/src/reset.rs) – Resets the program for a new epoch. +- [`Update`](program/src/update.rs) – Updates a proof account's miner authority. +- [`Upgrade`](program/src/upgrade.rs) – Migrates ORE v1 tokens to ORE v2, one-for-one. +- [`Initialize`](program/src/initialize.rs) – Initializes the Ore program, creating the bus, mint, and treasury accounts. + +## State + - [`Bus`](api/src/state/bus.rs) - An account (8 total) which tracks and limits the amount ORE mined each epoch. + - [`Config`](api/src/state/config.rs) – A singleton account which manages program-wide variables. + - [`Proof`](api/src/state/proof.rs) - An account (1 per user) which tracks a miner's current hash and current stake. + - [`Treasury`](api/src/state/treasury.rs) – A singleton account which has authority to mint ORE and holds onto user stake. + + +## Tests + +To run the test suite, use the Solana toolchain: + +``` +cargo test-sbf +``` + +For line coverage, use llvm-cov: + +``` +cargo llvm-cov +``` diff --git a/core/api/Cargo.toml b/api/Cargo.toml similarity index 100% rename from core/api/Cargo.toml rename to api/Cargo.toml diff --git a/core/api/src/consts.rs b/api/src/consts.rs similarity index 100% rename from core/api/src/consts.rs rename to api/src/consts.rs diff --git a/core/api/src/error.rs b/api/src/error.rs similarity index 100% rename from core/api/src/error.rs rename to api/src/error.rs diff --git a/core/api/src/event.rs b/api/src/event.rs similarity index 100% rename from core/api/src/event.rs rename to api/src/event.rs diff --git a/core/api/src/instruction.rs b/api/src/instruction.rs similarity index 100% rename from core/api/src/instruction.rs rename to api/src/instruction.rs diff --git a/core/api/src/lib.rs b/api/src/lib.rs similarity index 100% rename from core/api/src/lib.rs rename to api/src/lib.rs diff --git a/core/api/src/state/bus.rs b/api/src/state/bus.rs similarity index 100% rename from core/api/src/state/bus.rs rename to api/src/state/bus.rs diff --git a/core/api/src/state/config.rs b/api/src/state/config.rs similarity index 100% rename from core/api/src/state/config.rs rename to api/src/state/config.rs diff --git a/core/api/src/state/mod.rs b/api/src/state/mod.rs similarity index 100% rename from core/api/src/state/mod.rs rename to api/src/state/mod.rs diff --git a/core/api/src/state/proof.rs b/api/src/state/proof.rs similarity index 100% rename from core/api/src/state/proof.rs rename to api/src/state/proof.rs diff --git a/core/api/src/state/treasury.rs b/api/src/state/treasury.rs similarity index 100% rename from core/api/src/state/treasury.rs rename to api/src/state/treasury.rs diff --git a/core/README.md b/core/README.md deleted file mode 100644 index 816aaeb..0000000 --- a/core/README.md +++ /dev/null @@ -1,44 +0,0 @@ -# ORE - -**ORE is a fair-launch, proof-of-work, digital currency everyone can mine.** - - -## API -- [`Consts`](api/src/consts.rs) – Program constants. -- [`Entrypoint`](api/src/lib.rs) – The program entrypoint. -- [`Error`](api/src/error.rs) – Custom program errors. -- [`Event`](api/src/error.rs) – Custom program events. -- [`Instruction`](api/src/instruction.rs) – Declared instructions and arguments. - -## Instructions -- [`Claim`](program/src/claim.rs) – Distributes claimable rewards as tokens from the treasury to a miner. -- [`Close`](program/src/close.rs) – Closes a proof account returns the rent to the owner. -- [`Crown`](program/src/crown.rs) – Flags a proof account as the top staker on the network. -- [`Open`](program/src/open.rs) – Creates a new proof account for a prospective miner. -- [`Mine`](program/src/mine.rs) – Verifies a hash provided by a miner and issues claimable rewards. -- [`Stake`](program/src/stake.rs) – Stakes ORE with a miner to increase their multiplier. -- [`Reset`](program/src/reset.rs) – Resets the program for a new epoch. -- [`Update`](program/src/update.rs) – Updates a proof account's miner authority. -- [`Upgrade`](program/src/upgrade.rs) – Migrates ORE v1 tokens to ORE v2, one-for-one. -- [`Initialize`](program/src/initialize.rs) – Initializes the Ore program, creating the bus, mint, and treasury accounts. - -## State - - [`Bus`](api/src/state/bus.rs) - An account (8 total) which tracks and limits the amount ORE mined each epoch. - - [`Config`](api/src/state/config.rs) – A singleton account which manages program-wide variables. - - [`Proof`](api/src/state/proof.rs) - An account (1 per user) which tracks a miner's current hash and current stake. - - [`Treasury`](api/src/state/treasury.rs) – A singleton account which has authority to mint ORE and holds onto user stake. - - -## Tests - -To run the test suite, use the Solana toolchain: - -``` -cargo test-sbf -``` - -For line coverage, use llvm-cov: - -``` -cargo llvm-cov -``` diff --git a/core/program/Cargo.toml b/program/Cargo.toml similarity index 100% rename from core/program/Cargo.toml rename to program/Cargo.toml diff --git a/core/program/src/claim.rs b/program/src/claim.rs similarity index 100% rename from core/program/src/claim.rs rename to program/src/claim.rs diff --git a/core/program/src/close.rs b/program/src/close.rs similarity index 100% rename from core/program/src/close.rs rename to program/src/close.rs diff --git a/core/program/src/crown.rs b/program/src/crown.rs similarity index 100% rename from core/program/src/crown.rs rename to program/src/crown.rs diff --git a/core/program/src/initialize.rs b/program/src/initialize.rs similarity index 100% rename from core/program/src/initialize.rs rename to program/src/initialize.rs diff --git a/core/program/src/lib.rs b/program/src/lib.rs similarity index 100% rename from core/program/src/lib.rs rename to program/src/lib.rs diff --git a/core/program/src/loaders.rs b/program/src/loaders.rs similarity index 100% rename from core/program/src/loaders.rs rename to program/src/loaders.rs diff --git a/core/program/src/mine.rs b/program/src/mine.rs similarity index 100% rename from core/program/src/mine.rs rename to program/src/mine.rs diff --git a/core/program/src/open.rs b/program/src/open.rs similarity index 100% rename from core/program/src/open.rs rename to program/src/open.rs diff --git a/core/program/src/reset.rs b/program/src/reset.rs similarity index 100% rename from core/program/src/reset.rs rename to program/src/reset.rs diff --git a/core/program/src/stake.rs b/program/src/stake.rs similarity index 100% rename from core/program/src/stake.rs rename to program/src/stake.rs diff --git a/core/program/src/update.rs b/program/src/update.rs similarity index 100% rename from core/program/src/update.rs rename to program/src/update.rs diff --git a/core/program/src/upgrade.rs b/program/src/upgrade.rs similarity index 100% rename from core/program/src/upgrade.rs rename to program/src/upgrade.rs diff --git a/stake/api/Cargo.toml b/stake/api/Cargo.toml deleted file mode 100644 index e69de29..0000000 diff --git a/stake/api/src/lib.rs b/stake/api/src/lib.rs deleted file mode 100644 index e69de29..0000000 diff --git a/stake/program/Cargo.toml b/stake/program/Cargo.toml deleted file mode 100644 index e69de29..0000000 diff --git a/stake/program/src/lib.rs b/stake/program/src/lib.rs deleted file mode 100644 index e69de29..0000000