Contracts
CoreTex settlement lives in BotcoinMiningV4. CoreTex state-transition
serialization lives in CoreTexRegistry. Stake and tier eligibility currently
come from the staking contract.
| Contract | Role |
|---|---|
BotcoinMiningV4 |
Verified receipt, credit, funding, epoch, and claim contract used by the client for epoch context and post-reveal eval replay |
CoreTexRegistry |
Verified registry contract that publishes live roots, epoch context pins, transition events, and the replay surface this client validates |
| BOTCOIN ERC-20 | Reward, funding, staking, and claim token |
| Staking contract | Stake, tier, and eligibility source while V4 external staking mode is active |
V4 exposes genesisTimestamp(), epochDuration(), and currentEpoch().
CoreTex epoch context is set on V4, then the registry reads V4 context through
stable views. Registry state advances are accepted from V4 through
submitStateAdvance.
Registry finalization (CoreTexRegistry.finalizeEpoch) is a validator/replay
seal only: it records the epoch header and emits CoreTexEpochFinalized so
independent validators can bind their replayed root to the chain's. V4 funding,
finalization, and claims are independent of this seal, so a missed seal cannot
block standard-lane or CoreTex rewards. Credits close at epoch rollover because
receipts are accepted only for currentEpoch(). The epoch-cutover orchestrator
seals each completed CoreTex epoch automatically. A sealed registry epoch also
rejects further CoreTex receipts for that epoch.
Important V4 functions:
submitCoreTexReceipt(CoreTexReceipt)
setCoreTexEpochContext(uint64, CoreTexEpochContext)
setEpochCommit(uint64, bytes32)
revealEpochSecret(uint64, bytes32)
fundEpoch(uint64, uint256)
finalizeEpoch(uint64)
claim(uint64[])
Runtime code should read addresses from env, config, or deployment artifacts:
export BASE_RPC_URL=https://mainnet.base.org
export CORETEX_REGISTRY_ADDRESS=0x79A9e5a1Ab4D7834CB4f4fB952f1F583032021Bb
export BOTCOIN_MINING_CONTRACT_ADDRESS=0xBc71E2428cc0955b3dF9f38F5cF5DE22a1fC1D9b
Deployment records should mirror these verified mainnet addresses.