This commit is contained in:
Hardhat Chad
2025-10-09 16:52:26 -07:00
parent 838f059a33
commit 6d83cb525d
8 changed files with 2 additions and 246 deletions

View File

@@ -10,8 +10,6 @@ mod close;
mod deploy;
mod deposit;
mod log;
// mod migrate_miner;
mod migrate_treasury;
mod reset;
mod set_admin;
mod set_fee_collector;
@@ -31,8 +29,6 @@ use close::*;
use deploy::*;
use deposit::*;
use log::*;
// use migrate_miner::*;
// use migrate_treasury::*;
use reset::*;
use set_admin::*;
use set_fee_collector::*;

View File

@@ -1,60 +0,0 @@
use ore_api::prelude::*;
use solana_program::rent::Rent;
use steel::*;
/// Sets the admin.
pub fn process_migrate_miner(accounts: &[AccountInfo<'_>], data: &[u8]) -> ProgramResult {
// Load accounts.
let [signer_info, config_info, miner_info, system_program] = accounts else {
return Err(ProgramError::NotEnoughAccountKeys);
};
signer_info.is_signer()?;
let config = config_info
.as_account_mut::<Config>(&ore_api::ID)?
.assert_mut_err(
|c| c.admin == *signer_info.key,
OreError::NotAuthorized.into(),
)?;
let miner = miner_info.as_account_mut::<MinerOLD>(&ore_api::ID)?;
system_program.is_program(&system_program::ID)?;
// Record old values.
let authority = miner.authority;
let deployed = miner.deployed;
let cumulative = miner.cumulative;
let checkpoint_fee = miner.checkpoint_fee;
let checkpoint_id = miner.checkpoint_id;
let rewards_sol = miner.rewards_sol;
let rewards_ore = miner.rewards_ore;
let round_id = miner.round_id;
let lifetime_rewards_sol = miner.lifetime_rewards_sol;
let lifetime_rewards_ore = miner.lifetime_rewards_ore;
// Realloc miner.
let new_size = 8 + std::mem::size_of::<Miner>();
let old_size = 8 + std::mem::size_of::<MinerOLD>();
let new_rent = Rent::get()?.minimum_balance(new_size);
let old_rent = Rent::get()?.minimum_balance(old_size);
let additional_rent = new_rent - old_rent;
miner_info.realloc(new_size, false)?;
miner_info.collect(additional_rent, &signer_info)?;
// Update miner.
let miner = miner_info.as_account_mut::<Miner>(&ore_api::ID)?;
miner.authority = authority;
miner.deployed = deployed;
miner.cumulative = cumulative;
miner.checkpoint_fee = checkpoint_fee;
miner.checkpoint_id = checkpoint_id;
miner.rewards_sol = rewards_sol;
miner.rewards_ore = rewards_ore;
miner.round_id = round_id;
miner.lifetime_rewards_sol = lifetime_rewards_sol;
miner.lifetime_rewards_ore = lifetime_rewards_ore;
miner.last_claim_ore_at = 0;
miner.last_claim_sol_at = 0;
miner.rewards_factor = Numeric::ZERO;
miner.refined_ore = 0;
Ok(())
}

View File

@@ -1,46 +0,0 @@
use ore_api::prelude::*;
use solana_program::{pubkey, rent::Rent};
use steel::*;
/// Sets the admin.
pub fn process_migrate_treasury(accounts: &[AccountInfo<'_>], data: &[u8]) -> ProgramResult {
// Load accounts.
let [signer_info, config_info, system_program] = accounts else {
return Err(ProgramError::NotEnoughAccountKeys);
};
signer_info.is_signer()?;
let config = config_info
.as_account_mut::<ConfigOLD>(&ore_api::ID)?
.assert_mut_err(
|c| c.admin == *signer_info.key,
OreError::NotAuthorized.into(),
)?;
system_program.is_program(&system_program::ID)?;
// Record old values.
let admin = config.admin;
let fee_collector = config.fee_collector;
let last_boost = config.last_boost;
let is_seeker_activation_enabled = config.is_seeker_activation_enabled;
// Realloc treasury.
let new_size = 8 + std::mem::size_of::<Config>();
let old_size = 8 + std::mem::size_of::<ConfigOLD>();
let new_rent = Rent::get()?.minimum_balance(new_size);
let old_rent = Rent::get()?.minimum_balance(old_size);
config_info.realloc(new_size, false)?;
if new_size > old_size {
let additional_rent = new_rent.saturating_sub(old_rent);
config_info.collect(additional_rent, &signer_info)?;
}
// Update config.
let config = config_info.as_account_mut::<Config>(&ore_api::ID)?;
config.admin = admin;
config.fee_collector = fee_collector;
config.bury_authority = pubkey!("HNWhK5f8RMWBqcA7mXJPaxdTPGrha3rrqUrri7HSKb3T");
config.last_boost = last_boost;
config.is_seeker_activation_enabled = is_seeker_activation_enabled;
Ok(())
}