pub struct PotOConfig {Show 19 fields
pub admin: Pubkey,
pub difficulty: u64,
pub mml_threshold: u64,
pub path_distance_max: u32,
pub reward_per_proof: u64,
pub total_proofs: u64,
pub pool_type: u8,
pub swap_program_id: Pubkey,
pub bump: u8,
pub tensor_enabled: u8,
pub s_max: u64,
pub bond_dimension: u32,
pub max_pool_size: u32,
pub entropy_weight_factor: u64,
pub network_entropy: u64,
pub total_miners: u32,
pub active_pools: u32,
pub average_coherence: u64,
pub reserved: [u8; 200],
}Expand description
Global PoT-O configuration account. Stores network-wide settings for proof validation, reward distribution, and tensor network parameters. This is a singleton account (one per program) created by the admin during initialization.
Fields§
§admin: PubkeyAdmin/authority account that can update configuration
difficulty: u64Base difficulty threshold for mining proofs
mml_threshold: u64Minimum MML score required for valid proofs
path_distance_max: u32Maximum neural path distance allowed
reward_per_proof: u64Base reward amount per validated proof
total_proofs: u64Total number of proofs submitted since inception
pool_type: u8Pool type: 0 = legacy v0.1.x, 1 = tensor-aware v0.2.0
swap_program_id: PubkeyProgram ID of the swap program for fee collection
bump: u8PDA bump seed for this account
tensor_enabled: u8Whether tensor network enhancements are enabled
s_max: u64Maximum entropy (1e6 scale)
bond_dimension: u32Quantum bond dimension for tensor network calculations
max_pool_size: u32Maximum miners allowed per entanglement pool
entropy_weight_factor: u64Weight factor for entropy in reward calculations (1e6 scale)
network_entropy: u64Current network-wide entropy measurement
total_miners: u32Total number of active miners in the network
active_pools: u32Number of active entanglement pools
average_coherence: u64Average coherence score across all devices (1e6 scale)
reserved: [u8; 200]Reserved space for future updates without breaking ABI compatibility
Trait Implementations§
Source§impl AccountDeserialize for PotOConfig
impl AccountDeserialize for PotOConfig
Source§fn try_deserialize(buf: &mut &[u8]) -> Result<Self>
fn try_deserialize(buf: &mut &[u8]) -> Result<Self>
Mint account into a token
Account.Source§fn try_deserialize_unchecked(buf: &mut &[u8]) -> Result<Self>
fn try_deserialize_unchecked(buf: &mut &[u8]) -> Result<Self>
Source§impl AccountSerialize for PotOConfig
impl AccountSerialize for PotOConfig
Source§impl BorshDeserialize for PotOConfigwhere
Pubkey: BorshDeserialize,
u64: BorshDeserialize,
u32: BorshDeserialize,
u8: BorshDeserialize,
[u8; 200]: BorshDeserialize,
impl BorshDeserialize for PotOConfigwhere
Pubkey: BorshDeserialize,
u64: BorshDeserialize,
u32: BorshDeserialize,
u8: BorshDeserialize,
[u8; 200]: BorshDeserialize,
fn deserialize_reader<R: Read>(reader: &mut R) -> Result<Self, Error>
Source§fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
Source§fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_reader<R>(reader: &mut R) -> Result<Self, Error>where
R: Read,
Source§impl BorshSerialize for PotOConfigwhere
Pubkey: BorshSerialize,
u64: BorshSerialize,
u32: BorshSerialize,
u8: BorshSerialize,
[u8; 200]: BorshSerialize,
impl BorshSerialize for PotOConfigwhere
Pubkey: BorshSerialize,
u64: BorshSerialize,
u32: BorshSerialize,
u8: BorshSerialize,
[u8; 200]: BorshSerialize,
Source§impl Clone for PotOConfig
impl Clone for PotOConfig
Source§fn clone(&self) -> PotOConfig
fn clone(&self) -> PotOConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Discriminator for PotOConfig
impl Discriminator for PotOConfig
const DISCRIMINATOR: [u8; 8]
fn discriminator() -> [u8; 8]
Auto Trait Implementations§
impl Freeze for PotOConfig
impl RefUnwindSafe for PotOConfig
impl Send for PotOConfig
impl Sync for PotOConfig
impl Unpin for PotOConfig
impl UnsafeUnpin for PotOConfig
impl UnwindSafe for PotOConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more