Generated Solidity Inventory¶
This appendix is generated by tools/extract_solidity_inventory.py from the local Solidity snapshot.
Source root: /Users/marcos/Desktop/centurion_phase1_upgradeable_refactor
Generator version: 2026-05-20.1
Source manifest lock: docs/appendices/source-manifest.lock.json
It is an inventory aid, not a compiler. Treat policy conclusions as valid only after source review.
Summary¶
| File | Declarations | Public/external functions | Privileged candidates | Events | Errors |
|---|---|---|---|---|---|
CenturionBaselineCheckLib.sol | 1 | 2 | 0 | 0 | 0 |
CenturionClaimGatekeeper.sol | 1 | 30 | 10 | 0 | 9 |
CenturionClaimPolicyLib.sol | 1 | 7 | 0 | 0 | 0 |
CenturionClaimViewLib.sol | 1 | 12 | 0 | 0 | 0 |
CenturionConsensusSmoothingLib.sol | 1 | 1 | 1 | 0 | 0 |
CenturionDustAccountingLib.sol | 1 | 9 | 0 | 0 | 0 |
CenturionEconomicController.sol | 3 | 97 | 36 | 44 | 0 |
CenturionFinalizeFlowLib.sol | 1 | 1 | 1 | 0 | 4 |
CenturionInitializable.sol | 1 | 3 | 1 | 1 | 2 |
CenturionPayoutLib.sol | 1 | 10 | 2 | 0 | 6 |
CenturionProxy.sol | 4 | 27 | 1 | 5 | 14 |
CenturionReadinessLib.sol | 1 | 1 | 0 | 0 | 0 |
CenturionReceiptAccountingLib.sol | 1 | 3 | 1 | 0 | 0 |
CenturionReserveConfigLib.sol | 1 | 3 | 2 | 0 | 3 |
CenturionRiskUpdateLib.sol | 1 | 4 | 0 | 0 | 1 |
CenturionSettlementFinalizeLib.sol | 1 | 2 | 1 | 0 | 0 |
CenturionSettlementFlowLib.sol | 1 | 2 | 2 | 0 | 4 |
CenturionSmoothingFundingLib.sol | 1 | 1 | 0 | 0 | 0 |
CenturionTypes.sol | 1 | 3 | 0 | 0 | 0 |
CenturionUpgradeGovernor.sol | 5 | 50 | 19 | 18 | 33 |
CenturionVaultFactory.sol | 3 | 18 | 7 | 5 | 14 |
CenturionWithdrawalVault.sol | 2 | 13 | 4 | 4 | 13 |
DepositContractCTN.sol | 8 | 66 | 10 | 12 | 57 |
interfaces/ICenturionWithdrawalVault.sol | 1 | 13 | 3 | 0 | 0 |
CenturionBaselineCheckLib.sol¶
Declarations
library CenturionBaselineCheckLib
Implementation metadata
- Contract kind:
Evidence required - Implementation version:
Evidence required - Economic policy hash label:
Evidence required
Public constants
- None found by extractor.
Important state variables
- None found by extractor.
Modifiers
- None found by extractor.
External/public functions
expectedGovernorCodehash() - external (bytes32)expectedBeaconCodehash() - external (bytes32)
Privileged function candidates
- No privileged candidates found by extractor.
Events
- None found by extractor.
Errors
- None found by extractor.
Source-derived notes
- No implementation metadata constants were found in this file; likely an interface or library.
- No obvious privileged entrypoint was found by the extractor.
CenturionClaimGatekeeper.sol¶
Declarations
contract CenturionClaimGatekeeper
Implementation metadata
- Contract kind:
CENTURION_KIND_CLAIM_GATEKEEPER - Implementation version:
CenturionClaimGatekeeperUpgradeableV1 - Economic policy hash label:
EFFECTIVE_BALANCE_COVERAGE_HYBRID
Public constants
uint8 public constant EXEC_SCOPE_RUNNING_INITIATE = 1 << 0uint8 public constant EXEC_SCOPE_RUNNING_FINALIZE = 1 << 1uint8 public constant EXEC_SCOPE_EXIT_REWARD_CLAIM = 1 << 2uint8 internal constant _ALL_EXEC_SCOPES =uint256 public constant CLAIM_PERIOD = 30 daysuint256 public constant EXECUTOR_PERIOD = 1 daysbytes32 public constant IMPLEMENTATION_VERSION = keccak256("CenturionClaimGatekeeperUpgradeableV1")bytes32 public constant ECONOMIC_POLICY_HASH = keccak256("EFFECTIVE_BALANCE_COVERAGE_HYBRID")bytes32 public constant CONTRACT_KIND = keccak256("CENTURION_KIND_CLAIM_GATEKEEPER")
Important state variables
address public controllerbool public claimExecutorsPausedmapping(address => CenturionTypes.PendingClaim) public pendingClaimmapping(address => CenturionTypes.PeriodState) public claimPeriodStateuint256[48] private __gap
Modifiers
modifier onlyController()
External/public functions
initialize(address controller_) - external initializerimplementationVersion() - public (bytes32)economicPolicyHash() - public (bytes32)contractKind() - public (bytes32)setClaimExecutorGrant(address vault, address executor, uint8 scopeMask, uint64 expiresAt) - external onlyControllersetClaimExecutorsPaused(bool paused) - external onlyControllerrevokeClaimExecutorGrant(address vault, address executor) - external onlyControllerclaimExecutorAuthorized(address vault, address executor, uint8 requiredScope) - public (bool)remainingClaimInPeriod(address vault, uint128 capWei) - public (uint256)remainingExecutorClaimInDay(address vault, address executor, uint128 capWei) - public (uint256)classifyReceipt(CenturionTypes.ReceiptKind receiptKind, uint256 amountWei, uint64 consensusEpoch, uint64 clearedSafeEpoch, bool snapshotExists, bool snapshotFinalized, bool snapshotSafeForReceipts, CenturionTypes.RiskState snapshotState, CenturionTypes.CredentialType snapshotCredentialType, uint256 snapshotEffectiveBalanceWei, uint256 snapshotMaxEffectiveBalanceWei, CenturionTypes.ClaimState claimState, uint256 runningUncoveredDeficitWei) - external (uint256 rewardWei, uint256 principalRepairWei, uint256 recoveryWei, uint256 holdbackWei)deriveRiskState(CenturionTypes.CredentialType expectedCredentialType, uint256 principalTargetWei, uint256 effectiveBalanceTargetWei, uint256 expectedMaxEffectiveBalanceWei, uint256 actualBalanceWei, uint256 effectiveBalanceWei, uint256 maxEffectiveBalanceWei, uint8 credentialType, bool active, bool slashed, bool exitFlag, bool ejectionRisk) - external (CenturionTypes.RiskState)conflictClosedState(uint256 actualBalanceWei, uint256 effectiveBalanceWei, uint256 maxEffectiveBalanceWei, bool slashed, bool exitFlag, bool ejectionRisk) - external (CenturionTypes.RiskState)deriveClaimState(bool seatInitialized, CenturionTypes.SettlementPhase settlementPhase, bool exitRequested, bool exitAccepted, CenturionTypes.RiskState observationState, bool triggerArmed, bool reserveCoverageUsable, bool observationQuarantined, bool riskFresh, CenturionTypes.DustState dustState, CenturionTypes.ReserveHealth reserveHealth, CenturionTypes.NetworkPhase networkPhase, uint256 runningUncoveredDeficitWei) - external (CenturionTypes.ClaimState)classifyDustState(CenturionTypes.RiskState liveRiskState, bool riskFresh, bool sameEpochConflict, bool observationQuarantined, bool exitRequested, bool exitAccepted, uint256 principalTargetWei, uint256 effectiveBalanceTargetWei, uint256 actualBalanceWei, uint256 effectiveBalanceWei, uint256 microDustLimitWei, uint256 greenCoveredDustLimitWei, uint256 amberDustLimitWei, uint256 hardQuarantineThresholdWei) - external (CenturionTypes.DustState)deriveClaimMode(bool seatInitialized, CenturionTypes.SettlementPhase settlementPhase, bool exitRequested, bool exitAccepted, CenturionTypes.RiskState observationState, bool triggerArmed, bool reserveCoverageUsable, bool observationQuarantined, bool riskFresh, CenturionTypes.DustState dustState, CenturionTypes.ReserveHealth reserveHealth, CenturionTypes.NetworkPhase networkPhase) - public (CenturionTypes.ClaimMode mode, uint16 advanceBps)authorizeAndCheckClaim(address vault, address caller, address beneficiary, uint8 requiredScope, uint128 beneficiaryCapWei, uint128 executorCapWei, uint256 amountWei, bool consume) - external onlyController (bool byExecutor)initiatePendingClaim(address vault, address caller, address beneficiary, uint8 requiredScope, uint128 beneficiaryCapWei, uint128 executorCapWei, uint256 amountWei, uint64 claimDelay) - external onlyController (uint256 readyAt, bool byExecutor)finalizePendingClaim(address vault, address caller, uint8 requiredScope, uint128 beneficiaryCapWei, uint128 executorCapWei) - external onlyController (address beneficiary, uint256 amountWei, bool byExecutor)cancelPendingClaim(address vault, address caller, address seatBeneficiary, address owner_) - external onlyControllerclearPendingClaimIfAny(address vault) - external onlyController (bool cleared)forceSetPendingClaim(address vault, uint256 amountWei, uint256 readyAt, address beneficiary, bool initiatedByExecutor, bool exists) - external onlyController
Privileged function candidates
initialize(address controller_) - external initializersetClaimExecutorGrant(address vault, address executor, uint8 scopeMask, uint64 expiresAt) - external onlyControllersetClaimExecutorsPaused(bool paused) - external onlyControllerrevokeClaimExecutorGrant(address vault, address executor) - external onlyControllerauthorizeAndCheckClaim(address vault, address caller, address beneficiary, uint8 requiredScope, uint128 beneficiaryCapWei, uint128 executorCapWei, uint256 amountWei, bool consume) - external onlyController (bool byExecutor)initiatePendingClaim(address vault, address caller, address beneficiary, uint8 requiredScope, uint128 beneficiaryCapWei, uint128 executorCapWei, uint256 amountWei, uint64 claimDelay) - external onlyController (uint256 readyAt, bool byExecutor)finalizePendingClaim(address vault, address caller, uint8 requiredScope, uint128 beneficiaryCapWei, uint128 executorCapWei) - external onlyController (address beneficiary, uint256 amountWei, bool byExecutor)cancelPendingClaim(address vault, address caller, address seatBeneficiary, address owner_) - external onlyControllerclearPendingClaimIfAny(address vault) - external onlyController (bool cleared)forceSetPendingClaim(address vault, uint256 amountWei, uint256 readyAt, address beneficiary, bool initiatedByExecutor, bool exists) - external onlyController
Events
- None found by extractor.
Errors
ClaimLimitExceededClaimNotReadyExecutorDailyCapExceededExecutorNotAuthorizedInvalidExecutorGrantNoPendingClaimPendingClaimExistsUnauthorizedZeroAddress
Source-derived notes
- Metadata constants expose contract kind, version, and economic policy label for governor policy checks.
- Review privileged candidates against the permission matrix before production use.
CenturionClaimPolicyLib.sol¶
Declarations
library CenturionClaimPolicyLib
Implementation metadata
- Contract kind:
Evidence required - Implementation version:
Evidence required - Economic policy hash label:
Evidence required
Public constants
- None found by extractor.
Important state variables
- None found by extractor.
Modifiers
- None found by extractor.
External/public functions
currentDustState(CenturionClaimGatekeeper gatekeeper, CenturionTypes.NetworkPhase networkPhase, CenturionTypes.SeatConfig memory seat, CenturionTypes.RiskObservation memory obs, uint8 liveRiskState, bool riskFresh, uint256 principalFloorWei) - public (CenturionTypes.DustState)currentClaimModeAndAdvance(CenturionClaimGatekeeper gatekeeper, CenturionTypes.NetworkPhase networkPhase, CenturionTypes.SeatConfig memory seat, CenturionTypes.RiskObservation memory obs, bool reserveCoverageUsable_, bool riskFresh, CenturionTypes.DustState dustState, CenturionTypes.ReserveHealth reserveHealth) - public (CenturionTypes.ClaimMode mode, uint16 advanceBps)currentClaimState(CenturionClaimGatekeeper gatekeeper, CenturionTypes.NetworkPhase networkPhase, CenturionTypes.SeatConfig memory seat, CenturionTypes.RiskObservation memory obs, bool reserveCoverageUsable_, bool riskFresh, CenturionTypes.DustState dustState, CenturionTypes.ReserveHealth reserveHealth, uint256 runningUncoveredDeficitWei) - public (CenturionTypes.ClaimState)
Privileged function candidates
- No privileged candidates found by extractor.
Events
- None found by extractor.
Errors
- None found by extractor.
Source-derived notes
- No implementation metadata constants were found in this file; likely an interface or library.
- No obvious privileged entrypoint was found by the extractor.
CenturionClaimViewLib.sol¶
Declarations
library CenturionClaimViewLib
Implementation metadata
- Contract kind:
Evidence required - Implementation version:
Evidence required - Economic policy hash label:
Evidence required
Public constants
- None found by extractor.
Important state variables
- None found by extractor.
Modifiers
- None found by extractor.
External/public functions
currentRiskState(mapping(address => CenturionTypes.RiskObservation) storage observations, address vault, uint256 riskFreshnessWindow) - public (uint8)currentDustState(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.RiskObservation) storage observations, CenturionClaimGatekeeper claimGatekeeper, address vault, CenturionTypes.NetworkPhase networkPhase, uint256 riskFreshnessWindow, uint256 principalFloorWei) - public (CenturionTypes.DustState)currentClaimModeAndAdvance(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.RiskObservation) storage observations, CenturionClaimGatekeeper claimGatekeeper, address vault, CenturionTypes.NetworkPhase networkPhase, uint256 riskFreshnessWindow, uint256 principalFloorWei, uint256 totalReserveCoverageLimitWei, uint256 totalLockedReserveCoverageWei) - public (CenturionTypes.ClaimMode mode, uint16 advanceBps)currentClaimState(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.RiskObservation) storage observations, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, CenturionClaimGatekeeper claimGatekeeper, address vault, CenturionTypes.NetworkPhase networkPhase, uint256 riskFreshnessWindow, uint256 principalFloorWei, uint256 totalReserveCoverageLimitWei, uint256 totalLockedReserveCoverageWei) - public (CenturionTypes.ClaimState)runningUncoveredPrincipalDeficitWei(mapping(address => CenturionTypes.RiskObservation) storage observations, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, address vault, uint256 principalFloorWei) - public (uint256)runningClaimableRewardsWei(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.RiskObservation) storage observations, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, mapping(address => CenturionTypes.DustAccounting) storage dustStates, CenturionClaimGatekeeper claimGatekeeper, address vault, CenturionTypes.NetworkPhase networkPhase, uint256 riskFreshnessWindow, uint256 principalFloorWei, uint256 totalReserveCoverageLimitWei, uint256 totalLockedReserveCoverageWei) - public (uint256)
Privileged function candidates
- No privileged candidates found by extractor.
Events
- None found by extractor.
Errors
- None found by extractor.
Source-derived notes
- No implementation metadata constants were found in this file; likely an interface or library.
- No obvious privileged entrypoint was found by the extractor.
CenturionConsensusSmoothingLib.sol¶
Declarations
library CenturionConsensusSmoothingLib
Implementation metadata
- Contract kind:
Evidence required - Implementation version:
Evidence required - Economic policy hash label:
Evidence required
Public constants
- None found by extractor.
Important state variables
- None found by extractor.
Modifiers
- None found by extractor.
External/public functions
applyConsensusDeltaSmoothing(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.RiskObservation) storage observations, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, mapping(address => CenturionTypes.DustAccounting) storage dustStates, mapping(address => mapping(uint64 => uint256)) storage smoothedPayoutByEpoch, address vault, uint64 epoch, uint256 previousActualBalanceWei, uint256 verifiedConsensusRewardDeltaWei, CenturionTypes.ClaimMode claimMode, uint16 advanceBps, CenturionTypes.NetworkPhase networkPhase, uint256 principalFloorWei, uint256 totalReserveCoverageLimitWei, uint256 totalLockedReserveCoverageWei, uint256 maxAggregateAdvanceWei) - public (ApplyResult memory result)
Privileged function candidates
applyConsensusDeltaSmoothing(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.RiskObservation) storage observations, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, mapping(address => CenturionTypes.DustAccounting) storage dustStates, mapping(address => mapping(uint64 => uint256)) storage smoothedPayoutByEpoch, address vault, uint64 epoch, uint256 previousActualBalanceWei, uint256 verifiedConsensusRewardDeltaWei, CenturionTypes.ClaimMode claimMode, uint16 advanceBps, CenturionTypes.NetworkPhase networkPhase, uint256 principalFloorWei, uint256 totalReserveCoverageLimitWei, uint256 totalLockedReserveCoverageWei, uint256 maxAggregateAdvanceWei) - public (ApplyResult memory result)
Events
- None found by extractor.
Errors
- None found by extractor.
Source-derived notes
- No implementation metadata constants were found in this file; likely an interface or library.
- Review privileged candidates against the permission matrix before production use.
CenturionDustAccountingLib.sol¶
Declarations
library CenturionDustAccountingLib
Implementation metadata
- Contract kind:
Evidence required - Implementation version:
Evidence required - Economic policy hash label:
Evidence required
Public constants
- None found by extractor.
Important state variables
- None found by extractor.
Modifiers
- None found by extractor.
External/public functions
refreshDustAccounting(mapping(address => CenturionTypes.DustAccounting) storage dustStates, address vault, CenturionTypes.SeatConfig storage seat, CenturionTypes.RiskObservation storage obs, uint64 epoch, CenturionTypes.DustState nextState, CenturionTypes.NetworkPhase networkPhase, uint256 principalTargetWei, uint256 totalReserveCoverageLimitWei, uint256 totalLockedReserveCoverageWei) - public ( uint256 newTotalLockedReserveCoverageWei, uint256 lockedWei, uint256 releasedWei, CenturionTypes.DustState previousState, bool stateChanged, uint256 actualGapWei )syncLockedReserveCoverage(mapping(address => CenturionTypes.DustAccounting) storage dustStates, address vault, CenturionTypes.SeatConfig storage seat, CenturionTypes.RiskObservation storage obs, CenturionTypes.NetworkPhase networkPhase, uint256 principalTargetWei, uint256 totalReserveCoverageLimitWei, uint256 totalLockedReserveCoverageWei, uint256 actualGapOverrideWei) - public (uint256 newTotalLockedReserveCoverageWei, uint256 lockedWei, uint256 releasedWei, uint256 actualGapWei)bookReserveAdvance(mapping(address => CenturionTypes.DustAccounting) storage dustStates, address vault, CenturionTypes.SeatConfig storage seat, CenturionTypes.RiskObservation storage obs, CenturionTypes.NetworkPhase networkPhase, uint256 principalTargetWei, uint256 totalReserveCoverageLimitWei, uint256 totalLockedReserveCoverageWei, uint256 requestedAdvanceWei, uint256 maxAggregateAdvanceWei) - public (uint256 bookedWei, uint256 newTotalLockedReserveCoverageWei, uint256 lockedWei, uint256 releasedWei)reserveHealth(bool reserveCoverageUsable, uint256 seatReserveCoverageLimitWei, uint256 seatLockedReserveCoverageWei, CenturionTypes.NetworkPhase networkPhase, uint256 totalReserveCoverageLimitWei, uint256 totalLockedReserveCoverageWei, uint256 requestedWei) - public (CenturionTypes.ReserveHealth)
Privileged function candidates
- No privileged candidates found by extractor.
Events
- None found by extractor.
Errors
- None found by extractor.
Source-derived notes
- No implementation metadata constants were found in this file; likely an interface or library.
- No obvious privileged entrypoint was found by the extractor.
CenturionEconomicController.sol¶
Declarations
interface ICenturionVaultFactoryRegistryinterface ICenturionUpgradePolicyRegistryViewcontract CenturionEconomicController
Implementation metadata
- Contract kind:
CENTURION_KIND_CONTROLLER - Implementation version:
CenturionEconomicControllerUpgradeableV1 - Economic policy hash label:
EFFECTIVE_BALANCE_COVERAGE_HYBRID
Public constants
uint256 public constant MIN_CLAIM_DELAY = 1 hoursuint256 public constant MAX_CLAIM_DELAY = 30 daysuint8 public constant EXEC_SCOPE_RUNNING_INITIATE = 1 << 0uint8 public constant EXEC_SCOPE_RUNNING_FINALIZE = 1 << 1uint8 public constant EXEC_SCOPE_EXIT_REWARD_CLAIM = 1 << 2uint256 internal constant MIN_FUNDED_SMOOTHING_RESERVE_WEI = CenturionTypes.CANONICAL_LAUNCH_SMOOTHING_RESERVE_WEIuint8 internal constant SOURCE_FLAG_SMOOTHED = 1 << 0uint8 internal constant SOURCE_FLAG_RECOUPED = 1 << 1uint8 internal constant SOURCE_FLAG_PHYSICAL_INFLOW_ACCOUNTED = 1 << 2uint8 internal constant SOURCE_FLAG_ACCOUNTED = 1 << 3uint8 internal constant SOURCE_FLAG_RECEIPT_ACCOUNTED =uint8 internal constant SOURCE_FLAG_MASK =uint8 internal constant SOURCE_KIND_SHIFT = 4bytes32 public constant IMPLEMENTATION_VERSION = keccak256("CenturionEconomicControllerUpgradeableV1")bytes32 public constant ECONOMIC_POLICY_HASH = keccak256("EFFECTIVE_BALANCE_COVERAGE_HYBRID")bytes32 public constant CONTRACT_KIND = keccak256("CENTURION_KIND_CONTROLLER")
Important state variables
address public owneraddress public factoryaddress public exitRequestContractaddress public exitRequestFallbackContractaddress public pendingExitRequestFallbackContractuint256 public pendingExitRequestFallbackReadyAtCenturionClaimGatekeeper public claimGatekeeperbytes32 public factoryConfigHashbytes32 public moduleSetHashuint256 public addressDerivationVersionuint64 public protocolStartTimestampuint256 public riskFreshnessWindowCenturionTypes.NetworkPhase public networkPhaseuint256 public totalReserveCoverageLimitWeiuint256 public totalLockedReserveCoverageWeiuint16 private aggregateExposureCapBpsuint256 private totalActiveProtectedPrincipalWeiuint256 private aggregateSmoothingExposureWeibool private finalSmoothingModeEnabledbool private authoritativeDeltaModeEnabledbool private sourceLedgerStrictModeEnabledbool private recoupConfigEnabledmapping(address => CenturionTypes.SeatConfig) private seatsmapping(address => CenturionTypes.RiskObservation) private observationsmapping(address => CenturionTypes.ReceiptLedger) private ledgersmapping(address => CenturionTypes.DustAccounting) private dustStatesmapping(address => CenturionTypes.SettlementSnapshot) private settlementsmapping(bytes32 => bool) public receiptProcessedmapping(bytes32 => uint8) private economicSourceProcessedFlagsmapping(bytes32 => uint8) private economicSourceGroupProcessedFlagsmapping(address => bool) public slashingObservedbool private enteredaddress public pendingOwneraddress public upgradeGovernorbytes32 public claimGatekeeperPolicyHashuint256[45] private __gap
Modifiers
modifier onlyOwner()modifier onlyFactory()modifier nonReentrant()
External/public functions
isVault(address vault) - external (bool)assertTransparentProxyPolicy(address proxy, bytes32 contractKind, bytes32 expectedPolicyHash) - external (address implementation, bytes32 version, bytes32 codeHash)initialize(address owner_, address exitRequestContract_, bytes32 factoryConfigHash_, bytes32 moduleSetHash_, uint256 addressDerivationVersion_, address claimGatekeeper_) - external initializerimplementationVersion() - public (bytes32)economicPolicyHash() - public (bytes32)contractKind() - public (bytes32)transferOwnership(address newOwner) - external onlyOwnercancelOwnershipTransfer() - external onlyOwneracceptOwnership() - externalsetUpgradeGovernor(address upgradeGovernor_, bytes32 claimGatekeeperPolicyHash_) - external onlyOwnerbindClaimGatekeeper(address claimGatekeeper_) - external onlyOwnersetFactory(address factory_) - external onlyOwnersetRiskFreshnessWindow(uint256 newWindow) - external onlyOwnersetAggregateExposureCapBps(uint16 newCapBps) - external onlyOwnersetFinalModelModes(bool smoothingModeEnabled, bool verifiedDeltaModeEnabled, bool strictSourceLedgerEnabled, bool recoupEnabled) - external onlyOwnerhardenNetworkPhase(CenturionTypes.NetworkPhase nextPhase) - external onlyOwnersetClaimExecutorGrant(address vault, address executor, uint8 scopeMask, uint64 expiresAt) - external onlyOwnersetClaimExecutorsPaused(bool paused) - external onlyOwnerrevokeClaimExecutorGrant(address vault, address executor) - external onlyOwnerproposeExitRequestFallback(address fallbackContract) - external onlyOwnercancelExitRequestFallbackProposal() - external onlyOwneractivateExitRequestFallback() - external onlyOwnerinitializeSeat(address vault, bytes32 validatorPubkeyHash, address beneficiary, address principalDestination, uint8 expectedCredentialType, uint256 principalTargetWei, uint256 effectiveBalanceTargetWei, uint256 expectedMaxEffectiveBalanceWei, uint64 claimDelay, uint128 maxClaimPerPeriodWei, uint128 executorDailyCapWei, bytes32 vaultConfigHash) - external onlyFactorysetTriggerArmed(address vault, bool armed) - external onlyOwnersetReserveCoverage(address vault, uint256 reserveCoverageLimitWei, uint256 minimumReserveCoverageWei, bytes32 reserveProofHash) - external onlyOwnersetClearedSafeEpoch(address vault, uint64 safeEpoch) - external onlyOwnerclearReserveCoverage(address vault) - external onlyOwnerupdateRiskObservationFinalModel(address vault, uint64 epoch, ObservationUpdate calldata obs, AuthoritativeDelta calldata delta) - external onlyOwnerrecordVaultReceipt(address vault, bytes32 receiptId, uint256 amountWei, uint8 kind, uint64 consensusEpoch) - external onlyOwnerrecordVaultReceiptFinalModel(address vault, bytes32 receiptId, uint256 amountWei, uint8 kind, uint64 consensusEpoch, bytes32 economicSourceGroupId, uint8 sourceKind) - external onlyOwnerapplyReserveTopUp(address vault, bytes32 receiptId) - external onlyOwner nonReentrantinitiateClaim(address vault, uint256 amountWei) - externalfinalizeClaim(address vault) - external nonReentrantcancelClaim(address vault) - externalrequestValidatorExitDynamic(address vault, bytes calldata validatorPubkey) - external nonReentrantrequestValidatorExitWithManualFee(address vault, bytes calldata validatorPubkey, uint256 feeWei) - external nonReentrantrecordExitAccepted(address vault) - external onlyOwnerproposeSettlementWithGuard(address vault, bool emergency, uint256 maxRewardsClaimedWei) - external onlyOwnercancelEmergencySettlement(address vault) - external onlyOwnerfinalizeSettlement(address vault) - external onlyOwnerclaimPrincipal(address vault, address payable to, uint256 amountWei) - external onlyOwner nonReentrantclaimSettlementRewards(address vault, uint256 amountWei) - external nonReentrantdrainRemainder(address vault, address payable to) - external onlyOwner nonReentrantseatRiskMetadata(address vault) - external ( uint8 settlementPhase_, uint64 clearedSafeEpoch_, bool exitRequested_, bool exitAccepted_, bool observationQuarantined_, bool observationSameEpochConflict_ )runningAccounting(address vault) - external (uint256 rewardWei, uint256 holdbackWei, uint256 reservedWei, uint256 liquidityWei)aggregateExposureAccounting() - external ( uint256 totalActiveProtectedPrincipalWei_, uint256 aggregateExposureCapWei, uint256 aggregateSmoothingExposureWei_ )vaultPrefundedSmoothingReserveAccounting(address vault) - external ( uint256 freeWei, uint256 requiredWei, uint256 allocatedClaimableWei, uint256 outstandingAdvanceDebtWei, bool readinessFunded )runningClaimableBreakdown(address vault) - external ( uint256 verifiedRewardClaimableWei, uint256 reserveFundedSmoothingClaimableWei, uint256 totalClaimableWei, uint256 recoupPendingWei, uint256 principalProtectionGapWei )runningClaimableRewardsWei(address vault) - external (uint256)claimablePrincipalWei(address vault) - external (uint256)claimableSettlementRewardsWei(address vault) - external (uint256)depositReadiness(address vault) - external (CenturionTypes.DepositReadiness memory readiness)dustAccounting(address vault) - external ( uint256 coveredPrincipalGapWei, uint256 reserveAdvanceDebtWei, uint256 rollingAdvanceUsedWei, uint64 firstDustEpoch, uint64 lastDustEpoch, uint256 totalSmoothingAdvancedWei, uint256 totalSmoothingRecoupedWei, uint64 rollingWindowStartedAt, CenturionTypes.DustState lastDustState )
Privileged function candidates
initialize(address owner_, address exitRequestContract_, bytes32 factoryConfigHash_, bytes32 moduleSetHash_, uint256 addressDerivationVersion_, address claimGatekeeper_) - external initializertransferOwnership(address newOwner) - external onlyOwnercancelOwnershipTransfer() - external onlyOwneracceptOwnership() - externalsetUpgradeGovernor(address upgradeGovernor_, bytes32 claimGatekeeperPolicyHash_) - external onlyOwnerbindClaimGatekeeper(address claimGatekeeper_) - external onlyOwnersetFactory(address factory_) - external onlyOwnersetRiskFreshnessWindow(uint256 newWindow) - external onlyOwnersetAggregateExposureCapBps(uint16 newCapBps) - external onlyOwnersetFinalModelModes(bool smoothingModeEnabled, bool verifiedDeltaModeEnabled, bool strictSourceLedgerEnabled, bool recoupEnabled) - external onlyOwnerhardenNetworkPhase(CenturionTypes.NetworkPhase nextPhase) - external onlyOwnersetClaimExecutorGrant(address vault, address executor, uint8 scopeMask, uint64 expiresAt) - external onlyOwnersetClaimExecutorsPaused(bool paused) - external onlyOwnerrevokeClaimExecutorGrant(address vault, address executor) - external onlyOwnerproposeExitRequestFallback(address fallbackContract) - external onlyOwnercancelExitRequestFallbackProposal() - external onlyOwneractivateExitRequestFallback() - external onlyOwnerinitializeSeat(address vault, bytes32 validatorPubkeyHash, address beneficiary, address principalDestination, uint8 expectedCredentialType, uint256 principalTargetWei, uint256 effectiveBalanceTargetWei, uint256 expectedMaxEffectiveBalanceWei, uint64 claimDelay, uint128 maxClaimPerPeriodWei, uint128 executorDailyCapWei, bytes32 vaultConfigHash) - external onlyFactorysetTriggerArmed(address vault, bool armed) - external onlyOwnersetReserveCoverage(address vault, uint256 reserveCoverageLimitWei, uint256 minimumReserveCoverageWei, bytes32 reserveProofHash) - external onlyOwnersetClearedSafeEpoch(address vault, uint64 safeEpoch) - external onlyOwnerclearReserveCoverage(address vault) - external onlyOwnerupdateRiskObservationFinalModel(address vault, uint64 epoch, ObservationUpdate calldata obs, AuthoritativeDelta calldata delta) - external onlyOwnerrecordVaultReceipt(address vault, bytes32 receiptId, uint256 amountWei, uint8 kind, uint64 consensusEpoch) - external onlyOwnerrecordVaultReceiptFinalModel(address vault, bytes32 receiptId, uint256 amountWei, uint8 kind, uint64 consensusEpoch, bytes32 economicSourceGroupId, uint8 sourceKind) - external onlyOwnerapplyReserveTopUp(address vault, bytes32 receiptId) - external onlyOwner nonReentrantfinalizeClaim(address vault) - external nonReentrantcancelClaim(address vault) - externalrequestValidatorExitDynamic(address vault, bytes calldata validatorPubkey) - external nonReentrantrequestValidatorExitWithManualFee(address vault, bytes calldata validatorPubkey, uint256 feeWei) - external nonReentrantrecordExitAccepted(address vault) - external onlyOwnerproposeSettlementWithGuard(address vault, bool emergency, uint256 maxRewardsClaimedWei) - external onlyOwnercancelEmergencySettlement(address vault) - external onlyOwnerfinalizeSettlement(address vault) - external onlyOwnerclaimPrincipal(address vault, address payable to, uint256 amountWei) - external onlyOwner nonReentrantdrainRemainder(address vault, address payable to) - external onlyOwner nonReentrant
Events
ClaimCancelledClaimExecutorGrantRevokedClaimExecutorGrantSetClaimExecutorsPausedSetClaimFinalizedClaimGatekeeperBoundClaimInitiatedClaimSmoothingAppliedClearedSafeEpochSetDustStateChangedEmergencySettlementCancelledExitAcceptedRecordedExitFallbackUpdateCanceledExitFallbackUpdateProposedExitFallbackUpdatedExitRequestedFactorySetHoldbackReleasedToRewardsNetworkPhaseChangedOracleConflictDetectedOwnershipTransferCancelledOwnershipTransferStartedOwnershipTransferredPrincipalClaimedReceiptClassifiedReducedEffectiveBalanceEnteredRemainderDrainedReserveAdvanceBookedReserveAdvanceRepaidReserveCoverageLockedReserveCoverageReleasedReserveCoverageSetReserveTopUpAppliedRiskFreshnessWindowUpdatedRiskObservationAcceptedSameEpochConflictClosedSameEpochReplayIgnoredSeatInitializedSettlementFinalizedSettlementProposedSettlementRewardsClaimedTriggerArmedSetUpgradeGovernorBoundVaultReceiptRecorded
Errors
- None found by extractor.
Source-derived notes
- Metadata constants expose contract kind, version, and economic policy label for governor policy checks.
- Review privileged candidates against the permission matrix before production use.
CenturionFinalizeFlowLib.sol¶
Declarations
library CenturionFinalizeFlowLib
Implementation metadata
- Contract kind:
Evidence required - Implementation version:
Evidence required - Economic policy hash label:
Evidence required
Public constants
- None found by extractor.
Important state variables
- None found by extractor.
Modifiers
- None found by extractor.
External/public functions
finalizeSettlement(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.RiskObservation) storage observations, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, mapping(address => CenturionTypes.DustAccounting) storage dustStates, mapping(address => CenturionTypes.SettlementSnapshot) storage settlements, CenturionClaimGatekeeper claimGatekeeper, address vault, CenturionTypes.NetworkPhase networkPhase, uint256 totalReserveCoverageLimitWei, uint256 totalLockedReserveCoverageWei) - public (FinalizeSettlementResult memory result)
Privileged function candidates
finalizeSettlement(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.RiskObservation) storage observations, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, mapping(address => CenturionTypes.DustAccounting) storage dustStates, mapping(address => CenturionTypes.SettlementSnapshot) storage settlements, CenturionClaimGatekeeper claimGatekeeper, address vault, CenturionTypes.NetworkPhase networkPhase, uint256 totalReserveCoverageLimitWei, uint256 totalLockedReserveCoverageWei) - public (FinalizeSettlementResult memory result)
Events
- None found by extractor.
Errors
FinalWithdrawalNotRecordedSettlementAlreadyFinalizedSettlementDelayNotElapsedSettlementNotProposed
Source-derived notes
- No implementation metadata constants were found in this file; likely an interface or library.
- Review privileged candidates against the permission matrix before production use.
CenturionInitializable.sol¶
Declarations
contract CenturionInitializable
Implementation metadata
- Contract kind:
Evidence required - Implementation version:
Evidence required - Economic policy hash label:
Evidence required
Public constants
bytes32 private constant _INITIALIZABLE_STORAGE_SLOT =
Important state variables
- None found by extractor.
Modifiers
modifier initializer()modifier reinitializer(modifier onlyInitializing()
External/public functions
initializedVersion() - external (uint64)
Privileged function candidates
initializedVersion() - external (uint64)
Events
Initialized
Errors
InvalidInitializationNotInitializing
Source-derived notes
- No implementation metadata constants were found in this file; likely an interface or library.
- Review privileged candidates against the permission matrix before production use.
CenturionPayoutLib.sol¶
Declarations
library CenturionPayoutLib
Implementation metadata
- Contract kind:
Evidence required - Implementation version:
Evidence required - Economic policy hash label:
Evidence required
Public constants
- None found by extractor.
Important state variables
- None found by extractor.
Modifiers
- None found by extractor.
External/public functions
claimPrincipal(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, address vault, address payable to, uint256 amountWei) - public (address destination, uint256 amount)claimSettlementRewards(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, CenturionClaimGatekeeper claimGatekeeper, address vault, address caller, uint256 amountWei, uint8 execScopeExitRewardClaim) - public (address beneficiary, uint256 amount, bool byExecutor)drainRemainder(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.SettlementSnapshot) storage settlements, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, address vault, address payable to) - public (address destination, uint256 amount, uint256 principalComponent, uint256 rewardComponent)
Privileged function candidates
claimPrincipal(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, address vault, address payable to, uint256 amountWei) - public (address destination, uint256 amount)drainRemainder(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.SettlementSnapshot) storage settlements, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, address vault, address payable to) - public (address destination, uint256 amount, uint256 principalComponent, uint256 rewardComponent)
Events
- None found by extractor.
Errors
DrainDelayNotElapsedInsufficientPrincipalInsufficientRewardsInvalidPayoutDestinationNothingToClaimSettlementNotProposed
Source-derived notes
- No implementation metadata constants were found in this file; likely an interface or library.
- Review privileged candidates against the permission matrix before production use.
CenturionProxy.sol¶
Declarations
interface ICenturionBeaconcontract CenturionTransparentProxycontract CenturionUpgradeableBeaconcontract CenturionBeaconProxy
Implementation metadata
- Contract kind:
Evidence required - Implementation version:
Evidence required - Economic policy hash label:
Evidence required
Public constants
bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbcbytes32 internal constant _ADMIN_SLOT = 0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103bytes32 internal constant _INITIALIZABLE_STORAGE_SLOT =bytes32 internal constant _BEACON_SLOT = 0xa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d50bytes32 internal constant _INITIALIZABLE_STORAGE_SLOT =
Important state variables
address public upgradeAuthorityaddress private _implementationbool public frozen
Modifiers
modifier ifAdmin()modifier onlyAuthority()
External/public functions
implementation() - external (address)admin() - external ifAdmin (address)implementation() - external ifAdmin (address)changeAdmin(address newAdmin) - external ifAdminupgradeToAndCall(address newImplementation, bytes calldata data) - external ifAdminproxyAdmin() - external (address)proxyImplementation() - external (address)proxyInitializedVersion() - external (uint64)implementation() - external (address)upgradeTo(address newImplementation) - external onlyAuthorityfreezeForever() - external onlyAuthoritybeacon() - external (address)
Privileged function candidates
freezeForever() - external onlyAuthority
Events
AdminChangedBeaconFrozenForeverBeaconSetBeaconUpgradedUpgraded
Errors
BeaconFrozenBeaconImplementationNotContractBeaconInitializationFailedBeaconInitializationIncompleteBeaconNotContractBeaconZeroAddressInvalidImplementationProxyAdminZeroAddressProxyCallFailedProxyDeniedAdminAccessProxyImplementationNotContractProxyImplementationZeroAddressProxyInitializationIncompleteUnauthorized
Source-derived notes
- No implementation metadata constants were found in this file; likely an interface or library.
- Review privileged candidates against the permission matrix before production use.
CenturionReadinessLib.sol¶
Declarations
library CenturionReadinessLib
Implementation metadata
- Contract kind:
Evidence required - Implementation version:
Evidence required - Economic policy hash label:
Evidence required
Public constants
- None found by extractor.
Important state variables
- None found by extractor.
Modifiers
- None found by extractor.
External/public functions
buildReadiness(CenturionTypes.SeatConfig memory seat, CenturionTypes.RiskObservation memory obs, CenturionTypes.RiskState liveRiskState, bool reserveUsable, bool finalModelConfigured, bool safeRiskOrNoObservation, bool fallbackUnset, uint8 currentClaimState, address exitRequestContract, bytes32 expectedWithdrawalCredentials) - public (CenturionTypes.DepositReadiness memory readiness)
Privileged function candidates
- No privileged candidates found by extractor.
Events
- None found by extractor.
Errors
- None found by extractor.
Source-derived notes
- No implementation metadata constants were found in this file; likely an interface or library.
- No obvious privileged entrypoint was found by the extractor.
CenturionReceiptAccountingLib.sol¶
Declarations
library CenturionReceiptAccountingLib
Implementation metadata
- Contract kind:
Evidence required - Implementation version:
Evidence required - Economic policy hash label:
Evidence required
Public constants
- None found by extractor.
Important state variables
- None found by extractor.
Modifiers
- None found by extractor.
External/public functions
recordReceipt(CenturionClaimGatekeeper claimGatekeeper, mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.RiskObservation) storage observations, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, mapping(address => CenturionTypes.DustAccounting) storage dustStates, mapping(address => mapping(uint64 => CenturionTypes.EpochSnapshot)) storage epochSnapshots, address vault, uint256 amountWei, uint8 kind, uint64 consensusEpoch, RecordReceiptContext memory ctx) - public (RecordReceiptResult memory result)
Privileged function candidates
recordReceipt(CenturionClaimGatekeeper claimGatekeeper, mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.RiskObservation) storage observations, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, mapping(address => CenturionTypes.DustAccounting) storage dustStates, mapping(address => mapping(uint64 => CenturionTypes.EpochSnapshot)) storage epochSnapshots, address vault, uint256 amountWei, uint8 kind, uint64 consensusEpoch, RecordReceiptContext memory ctx) - public (RecordReceiptResult memory result)
Events
- None found by extractor.
Errors
- None found by extractor.
Source-derived notes
- No implementation metadata constants were found in this file; likely an interface or library.
- Review privileged candidates against the permission matrix before production use.
CenturionReserveConfigLib.sol¶
Declarations
library CenturionReserveConfigLib
Implementation metadata
- Contract kind:
Evidence required - Implementation version:
Evidence required - Economic policy hash label:
Evidence required
Public constants
- None found by extractor.
Important state variables
- None found by extractor.
Modifiers
- None found by extractor.
External/public functions
setReserveCoverage(mapping(address => CenturionTypes.SeatConfig) storage seats, CenturionClaimGatekeeper claimGatekeeper, address vault, uint256 reserveCoverageLimitWei, uint256 minimumReserveCoverageWei, bytes32 reserveProofHash, uint256 totalReserveCoverageLimitWei) - public (SetReserveCoverageResult memory result)setClearedSafeEpoch(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.RiskObservation) storage observations, CenturionClaimGatekeeper claimGatekeeper, address vault, uint64 safeEpoch, uint256 riskFreshnessWindow) - public (SetClearedSafeEpochResult memory result)clearReserveCoverage(mapping(address => CenturionTypes.SeatConfig) storage seats, CenturionClaimGatekeeper claimGatekeeper, address vault, uint256 totalReserveCoverageLimitWei, uint256 totalLockedReserveCoverageWei) - public (ClearReserveCoverageResult memory result)
Privileged function candidates
setReserveCoverage(mapping(address => CenturionTypes.SeatConfig) storage seats, CenturionClaimGatekeeper claimGatekeeper, address vault, uint256 reserveCoverageLimitWei, uint256 minimumReserveCoverageWei, bytes32 reserveProofHash, uint256 totalReserveCoverageLimitWei) - public (SetReserveCoverageResult memory result)setClearedSafeEpoch(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.RiskObservation) storage observations, CenturionClaimGatekeeper claimGatekeeper, address vault, uint64 safeEpoch, uint256 riskFreshnessWindow) - public (SetClearedSafeEpochResult memory result)
Events
- None found by extractor.
Errors
InvalidEpochInvalidReserveCoverageInvalidReserveProof
Source-derived notes
- No implementation metadata constants were found in this file; likely an interface or library.
- Review privileged candidates against the permission matrix before production use.
CenturionRiskUpdateLib.sol¶
Declarations
library CenturionRiskUpdateLib
Implementation metadata
- Contract kind:
Evidence required - Implementation version:
Evidence required - Economic policy hash label:
Evidence required
Public constants
- None found by extractor.
Important state variables
- None found by extractor.
Modifiers
- None found by extractor.
External/public functions
updateRiskObservation(CenturionClaimGatekeeper claimGatekeeper, mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.RiskObservation) storage observations, mapping(address => mapping(uint64 => CenturionTypes.EpochSnapshot)) storage epochSnapshots, mapping(address => bool) storage slashingObserved, address vault, RiskUpdateInput memory input) - public (RiskUpdateResult memory result)
Privileged function candidates
- No privileged candidates found by extractor.
Events
- None found by extractor.
Errors
StaleRiskObservation
Source-derived notes
- No implementation metadata constants were found in this file; likely an interface or library.
- No obvious privileged entrypoint was found by the extractor.
CenturionSettlementFinalizeLib.sol¶
Declarations
library CenturionSettlementFinalizeLib
Implementation metadata
- Contract kind:
Evidence required - Implementation version:
Evidence required - Economic policy hash label:
Evidence required
Public constants
- None found by extractor.
Important state variables
- None found by extractor.
Modifiers
- None found by extractor.
External/public functions
finalizeSettlement(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.RiskObservation) storage observations, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, mapping(address => CenturionTypes.DustAccounting) storage dustStates, mapping(address => CenturionTypes.SettlementSnapshot) storage settlements, address vault, CenturionTypes.NetworkPhase networkPhase, uint256 totalReserveCoverageLimitWei, uint256 totalLockedReserveCoverageWei) - public ( uint256 newTotalLockedReserveCoverageWei, uint256 lockedWei, uint256 releasedWei, uint256 coveredPrincipalWei, uint256 settlementExcessWei, CenturionTypes.SettlementOutcome outcome, uint256 repaidFromRewardBucketWei, uint256 repaidFromExcessWei, uint256 canceledUnclaimedSmoothingWei )
Privileged function candidates
finalizeSettlement(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.RiskObservation) storage observations, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, mapping(address => CenturionTypes.DustAccounting) storage dustStates, mapping(address => CenturionTypes.SettlementSnapshot) storage settlements, address vault, CenturionTypes.NetworkPhase networkPhase, uint256 totalReserveCoverageLimitWei, uint256 totalLockedReserveCoverageWei) - public ( uint256 newTotalLockedReserveCoverageWei, uint256 lockedWei, uint256 releasedWei, uint256 coveredPrincipalWei, uint256 settlementExcessWei, CenturionTypes.SettlementOutcome outcome, uint256 repaidFromRewardBucketWei, uint256 repaidFromExcessWei, uint256 canceledUnclaimedSmoothingWei )
Events
- None found by extractor.
Errors
- None found by extractor.
Source-derived notes
- No implementation metadata constants were found in this file; likely an interface or library.
- Review privileged candidates against the permission matrix before production use.
CenturionSettlementFlowLib.sol¶
Declarations
library CenturionSettlementFlowLib
Implementation metadata
- Contract kind:
Evidence required - Implementation version:
Evidence required - Economic policy hash label:
Evidence required
Public constants
- None found by extractor.
Important state variables
- None found by extractor.
Modifiers
- None found by extractor.
External/public functions
proposeSettlement(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.SettlementSnapshot) storage settlements, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, mapping(address => CenturionTypes.RiskObservation) storage observations, CenturionClaimGatekeeper claimGatekeeper, address vault, bool emergency, uint256 maxRewardsClaimedWei) - public (ProposeSettlementResult memory result)cancelEmergencySettlement(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.SettlementSnapshot) storage settlements, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, mapping(address => CenturionTypes.RiskObservation) storage observations, mapping(address => bool) storage slashingObserved, address vault) - public
Privileged function candidates
proposeSettlement(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.SettlementSnapshot) storage settlements, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, mapping(address => CenturionTypes.RiskObservation) storage observations, CenturionClaimGatekeeper claimGatekeeper, address vault, bool emergency, uint256 maxRewardsClaimedWei) - public (ProposeSettlementResult memory result)cancelEmergencySettlement(mapping(address => CenturionTypes.SeatConfig) storage seats, mapping(address => CenturionTypes.SettlementSnapshot) storage settlements, mapping(address => CenturionTypes.ReceiptLedger) storage ledgers, mapping(address => CenturionTypes.RiskObservation) storage observations, mapping(address => bool) storage slashingObserved, address vault) - public
Events
- None found by extractor.
Errors
SettlementAlreadyProposedSettlementNotProposedSettlementRewardClaimsExceededUnauthorized
Source-derived notes
- No implementation metadata constants were found in this file; likely an interface or library.
- Review privileged candidates against the permission matrix before production use.
CenturionSmoothingFundingLib.sol¶
Declarations
library CenturionSmoothingFundingLib
Implementation metadata
- Contract kind:
Evidence required - Implementation version:
Evidence required - Economic policy hash label:
Evidence required
Public constants
- None found by extractor.
Important state variables
- None found by extractor.
Modifiers
- None found by extractor.
External/public functions
- No external/public functions found by extractor.
Privileged function candidates
- No privileged candidates found by extractor.
Events
- None found by extractor.
Errors
- None found by extractor.
Source-derived notes
- No implementation metadata constants were found in this file; likely an interface or library.
- No obvious privileged entrypoint was found by the extractor.
CenturionTypes.sol¶
Declarations
library CenturionTypes
Implementation metadata
- Contract kind:
Evidence required - Implementation version:
Evidence required - Economic policy hash label:
Evidence required
Public constants
uint256 internal constant PROTECTED_PRINCIPAL_WEI = 32 etheruint256 internal constant STANDARD_MAX_EFFECTIVE_BALANCE_WEI = 32 etheruint256 internal constant COMPOUNDING_MAX_EFFECTIVE_BALANCE_WEI = 2048 etheruint256 internal constant EFFECTIVE_BALANCE_INCREMENT_WEI = 1 etheruint256 internal constant DOWNWARD_HYSTERESIS_THRESHOLD_WEI = 0.25 etheruint256 internal constant UPWARD_HYSTERESIS_THRESHOLD_WEI = 1.25 etheruint256 internal constant WARNING_ACTUAL_BALANCE_WEI = 30 etheruint256 internal constant WARNING_EFFECTIVE_BALANCE_WEI = 30 etheruint256 internal constant STOP_LOSS_ACTUAL_BALANCE_WEI = 25 etheruint256 internal constant STOP_LOSS_EFFECTIVE_BALANCE_WEI = 25 etheruint256 internal constant EJECTION_EFFECTIVE_BALANCE_WEI = 16 etheruint256 internal constant DEFAULT_RISK_FRESHNESS_WINDOW = 2 hoursuint256 internal constant MAX_RISK_FRESHNESS_WINDOW = 7 daysuint256 internal constant MAX_RESERVE_PROOF_AGE = 7 daysuint256 internal constant SETTLEMENT_DELAY = 1 hoursuint256 internal constant EMERGENCY_SETTLEMENT_DELAY = 7 daysuint256 internal constant POST_SETTLEMENT_DRAIN_DELAY = 90 daysuint256 internal constant DUST_ROLLING_WINDOW = 180 daysuint256 internal constant MICRO_DUST_LIMIT_LAUNCH_WEI = 0.003 etheruint256 internal constant CANONICAL_LAUNCH_SMOOTHING_RESERVE_WEI = 0.03 etheruint256 internal constant GREEN_DUST_LIMIT_LAUNCH_WEI = 0.075 etheruint256 internal constant AMBER_DUST_LIMIT_LAUNCH_WEI = 0.125 etheruint256 internal constant HARD_QUARANTINE_LIMIT_LAUNCH_WEI = 0.15 etheruint256 internal constant MICRO_DUST_LIMIT_GROWTH_WEI = 0.003 etheruint256 internal constant GREEN_DUST_LIMIT_GROWTH_WEI = 0.035 etheruint256 internal constant AMBER_DUST_LIMIT_GROWTH_WEI = 0.075 etheruint256 internal constant HARD_QUARANTINE_LIMIT_GROWTH_WEI = 0.2 etheruint256 internal constant MICRO_DUST_LIMIT_MATURE_WEI = 0.001 etheruint256 internal constant GREEN_DUST_LIMIT_MATURE_WEI = 0.02 etheruint256 internal constant AMBER_DUST_LIMIT_MATURE_WEI = 0.05 etheruint256 internal constant HARD_QUARANTINE_LIMIT_MATURE_WEI = 0.15 etheruint16 internal constant BPS_DENOMINATOR = 10_000uint16 internal constant AGGREGATE_EXPOSURE_CAP_LAUNCH_BPS = 2500uint16 internal constant AGGREGATE_EXPOSURE_CAP_GROWTH_BPS = 1500uint16 internal constant AGGREGATE_EXPOSURE_CAP_MATURE_BPS = 1000uint16 internal constant GREEN_ADVANCE_LAUNCH_HEALTHY_BPS = 7500uint16 internal constant GREEN_ADVANCE_LAUNCH_PARTIAL_BPS = 0uint16 internal constant GREEN_ADVANCE_GROWTH_HEALTHY_BPS = 6000uint16 internal constant GREEN_ADVANCE_GROWTH_PARTIAL_BPS = 2500uint16 internal constant GREEN_ADVANCE_MATURE_HEALTHY_BPS = 5000uint16 internal constant GREEN_ADVANCE_MATURE_PARTIAL_BPS = 2500uint16 internal constant AMBER_ADVANCE_LAUNCH_HEALTHY_BPS = 7500uint16 internal constant AMBER_ADVANCE_LAUNCH_PARTIAL_BPS = 0uint16 internal constant AMBER_ADVANCE_GROWTH_HEALTHY_BPS = 1500uint16 internal constant AMBER_ADVANCE_GROWTH_PARTIAL_BPS = 0uint16 internal constant AMBER_ADVANCE_MATURE_HEALTHY_BPS = 0uint16 internal constant AMBER_ADVANCE_MATURE_PARTIAL_BPS = 0uint16 internal constant RECOUP_HEALTHY_BPS = 7500uint16 internal constant RECOUP_PARTIAL_BPS = 7500uint16 internal constant RECOUP_EXHAUSTED_BPS = 10_000uint256 internal constant GREEN_ADVANCE_OUTSTANDING_CAP_WEI = 0.05 etheruint256 internal constant ROLLING_ADVANCE_CAP_LAUNCH_WEI = 0.1 etheruint256 internal constant ROLLING_ADVANCE_CAP_GROWTH_WEI = 0.1 etheruint256 internal constant ROLLING_ADVANCE_CAP_MATURE_WEI = 0.04 etherbytes32 internal constant DEPOSIT_POLICY_VERSION = keccak256("EFFECTIVE_BALANCE_COVERAGE_HYBRID")uint16 internal constant READINESS_SCHEMA_VERSION = 3uint16 internal constant ORACLE_SCHEMA_VERSION = 2uint16 internal constant RECEIPT_SCHEMA_VERSION = 2
Important state variables
- None found by extractor.
Modifiers
- None found by extractor.
External/public functions
- No external/public functions found by extractor.
Privileged function candidates
- No privileged candidates found by extractor.
Events
- None found by extractor.
Errors
- None found by extractor.
Source-derived notes
- No implementation metadata constants were found in this file; likely an interface or library.
- No obvious privileged entrypoint was found by the extractor.
CenturionUpgradeGovernor.sol¶
Declarations
interface ICenturionTransparentProxyAdminViewinterface ICenturionBeaconAdminViewinterface ICenturionBeaconAuthorityViewinterface ICenturionImplementationMetadatacontract CenturionUpgradeGovernor
Implementation metadata
- Contract kind:
Evidence required - Implementation version:
Evidence required - Economic policy hash label:
Evidence required
Public constants
uint256 public constant MINIMUM_LONG_TIMELOCK = 7 daysbytes32 public constant PROPOSER_ROLE = keccak256("CENTURION_UPGRADE_PROPOSER_ROLE")bytes32 public constant QUEUER_ROLE = keccak256("CENTURION_UPGRADE_QUEUER_ROLE")bytes32 public constant EXECUTOR_ROLE = keccak256("CENTURION_UPGRADE_EXECUTOR_ROLE")bytes32 public constant CANCELLER_ROLE = keccak256("CENTURION_UPGRADE_CANCELLER_ROLE")bytes32 public constant FREEZER_ROLE = keccak256("CENTURION_UPGRADE_FREEZER_ROLE")bytes32 public constant REGISTRAR_ROLE = keccak256("CENTURION_UPGRADE_REGISTRAR_ROLE")bytes32 public constant KIND_DEPOSIT = keccak256("CENTURION_KIND_DEPOSIT")bytes32 public constant KIND_CONTROLLER = keccak256("CENTURION_KIND_CONTROLLER")bytes32 public constant KIND_FACTORY = keccak256("CENTURION_KIND_FACTORY")bytes32 public constant KIND_CLAIM_GATEKEEPER = keccak256("CENTURION_KIND_CLAIM_GATEKEEPER")bytes32 public constant KIND_WITHDRAWAL_VAULT = keccak256("CENTURION_KIND_WITHDRAWAL_VAULT")
Important state variables
address public roleAdminaddress public pendingRoleAdminuint256 public pendingRoleAdminReadyAtuint256 public minDelaybool public genesisApprovalsSealedbool public finalFrozenmapping(bytes32 => Operation) private operationsmapping(bytes32 => bool) public operationKnownmapping(address => ImplementationApproval) private implementationApprovalsmapping(address => bool) public registeredTransparentProxymapping(address => bool) public registeredBeaconmapping(address => bytes32) public registeredTargetKindmapping(bytes32 => PendingRoleGrant) private pendingRoleGrantsaddress[] private _registeredBeaconList
Modifiers
modifier onlyRole(modifier onlyRoleAdmin()modifier notFinalFrozen()
External/public functions
proxyAdmin() - external (address)proxyImplementation() - external (address)proxyInitializedVersion() - external (uint64)upgradeToAndCall(address newImplementation, bytes calldata data) - externalimplementation() - external (address)upgradeTo(address newImplementation) - externalfreezeForever() - externalupgradeAuthority() - external (address)implementationVersion() - external (bytes32)economicPolicyHash() - external (bytes32)contractKind() - external (bytes32)expectedTransparentProxyCodehash() - public (bytes32)expectedUpgradeableBeaconCodehash() - public (bytes32)proposeRoleGrant(bytes32 role, address account) - external onlyRoleAdminexecuteRoleGrant(bytes32 role, address account) - external onlyRoleAdmincancelRoleGrant(bytes32 role, address account) - external onlyRoleAdminrevokeRole(bytes32 role, address account) - external onlyRoleAdmintransferRoleAdmin(address newAdmin) - external onlyRoleAdmincancelRoleAdminTransfer() - external onlyRoleAdminacceptRoleAdmin() - externalpendingRoleGrant(bytes32 role, address account) - external (uint256 readyAt, bool exists)registerTransparentProxy(address proxy, bytes32 contractKind) - external onlyRole(REGISTRAR_ROLE) notFinalFrozenregisterBeacon(address beacon, bytes32 contractKind) - external onlyRole(REGISTRAR_ROLE) notFinalFrozenregisteredBeaconCount() - external (uint256)registeredBeaconAt(uint256 index) - external (address)recordGenesisImplementation(bytes32 contractKind, address implementation, bytes32 version, bytes32 policyHash) - external onlyRole(REGISTRAR_ROLE) notFinalFrozensealGenesisApprovals() - external onlyRole(REGISTRAR_ROLE) notFinalFrozenproposeUpgrade(TargetType targetType, address target, address implementation, bytes32 contractKind, bytes32 version, bytes32 policyHash, bytes32 salt, bytes calldata callData, uint64 expectedInitializedVersion) - external onlyRole(PROPOSER_ROLE) notFinalFrozen (bytes32 operationId)queueUpgrade(bytes32 operationId) - external onlyRole(QUEUER_ROLE) notFinalFrozencancelUpgrade(bytes32 operationId) - external onlyRole(CANCELLER_ROLE)executeUpgrade(bytes32 operationId) - external onlyRole(EXECUTOR_ROLE) notFinalFrozenfinalFreeze(bytes32 reasonHash) - external onlyRole(FREEZER_ROLE)getOperation(bytes32 operationId) - external (Operation memory)implementationPolicy(address implementation) - external (bytes32 contractKind, bytes32 version, bytes32 policyHash, bytes32 codeHash, bool approved)getTransparentProxyImplementation(address proxy) - public (address implementation)getBeaconImplementation(address beacon) - public (address implementation)assertTransparentProxyPolicy(address proxy, bytes32 contractKind, bytes32 expectedPolicyHash) - external (address implementation, bytes32 version, bytes32 codeHash)assertBeaconPolicy(address beacon, bytes32 contractKind, bytes32 expectedPolicyHash) - external (address implementation, bytes32 version, bytes32 codeHash)hashOperation(TargetType targetType, address target, address implementation, bytes32 contractKind, bytes32 version, bytes32 policyHash, bytes32 salt, bytes calldata callData, uint64 expectedInitializedVersion) - public (bytes32)
Privileged function candidates
freezeForever() - externalproposeRoleGrant(bytes32 role, address account) - external onlyRoleAdminexecuteRoleGrant(bytes32 role, address account) - external onlyRoleAdmincancelRoleGrant(bytes32 role, address account) - external onlyRoleAdminrevokeRole(bytes32 role, address account) - external onlyRoleAdmintransferRoleAdmin(address newAdmin) - external onlyRoleAdmincancelRoleAdminTransfer() - external onlyRoleAdminacceptRoleAdmin() - externalregisterTransparentProxy(address proxy, bytes32 contractKind) - external onlyRole(REGISTRAR_ROLE) notFinalFrozenregisterBeacon(address beacon, bytes32 contractKind) - external onlyRole(REGISTRAR_ROLE) notFinalFrozenregisteredBeaconCount() - external (uint256)registeredBeaconAt(uint256 index) - external (address)recordGenesisImplementation(bytes32 contractKind, address implementation, bytes32 version, bytes32 policyHash) - external onlyRole(REGISTRAR_ROLE) notFinalFrozensealGenesisApprovals() - external onlyRole(REGISTRAR_ROLE) notFinalFrozenproposeUpgrade(TargetType targetType, address target, address implementation, bytes32 contractKind, bytes32 version, bytes32 policyHash, bytes32 salt, bytes calldata callData, uint64 expectedInitializedVersion) - external onlyRole(PROPOSER_ROLE) notFinalFrozen (bytes32 operationId)queueUpgrade(bytes32 operationId) - external onlyRole(QUEUER_ROLE) notFinalFrozencancelUpgrade(bytes32 operationId) - external onlyRole(CANCELLER_ROLE)executeUpgrade(bytes32 operationId) - external onlyRole(EXECUTOR_ROLE) notFinalFrozenfinalFreeze(bytes32 reasonHash) - external onlyRole(FREEZER_ROLE)
Events
BeaconFrozenInFinalFreezeBeaconRegisteredFinalFreezeGenesisApprovalsSealedGenesisImplementationApprovedRoleAdminTransferReadyAtUpdatedRoleAdminTransferStartedRoleAdminTransferredRoleGrantCancelledRoleGrantExecutedRoleGrantProposedRoleGrantedRoleRevokedTransparentProxyRegisteredUpgradeCancelledUpgradeExecutedUpgradeProposedUpgradeQueued
Errors
BeaconAuthorityMismatchBeaconRuntimeCodehashMismatchFinalFrozenGenesisApprovalsAlreadySealedImplementationMetadataMismatchImplementationNotApprovedInitializedVersionInsufficientInitializedVersionUnavailableInvalidContractKindInvalidDelayInvalidImplementationInvalidOperationTargetTypeInvalidRuntimeCodehashNoPendingRoleAdminNoPendingRoleGrantOperationAlreadyExistsOperationAlreadyFinalizedOperationCallFailedOperationNotQueuedOperationNotReadyOperationUnknownPendingRoleAdminNotReadyPendingRoleAdminOnlyPendingRoleGrantExistsPendingRoleGrantNotReadyProxyAdminMismatchProxyRuntimeCodehashMismatchTargetAlreadyRegisteredAsOtherTypeTargetKindMismatchTargetNotRegisteredUnauthorizedUpgradeValueNotPermittedZeroAddress
Source-derived notes
- No implementation metadata constants were found in this file; likely an interface or library.
- Review privileged candidates against the permission matrix before production use.
CenturionVaultFactory.sol¶
Declarations
interface ICenturionUpgradeableBeaconAuthorityinterface ICenturionSeatInitializercontract CenturionVaultFactory
Implementation metadata
- Contract kind:
CENTURION_KIND_FACTORY - Implementation version:
CenturionVaultFactoryUpgradeableV1 - Economic policy hash label:
EFFECTIVE_BALANCE_COVERAGE_HYBRID
Public constants
bytes32 public constant IMPLEMENTATION_VERSION = keccak256("CenturionVaultFactoryUpgradeableV1")bytes32 public constant ECONOMIC_POLICY_HASH = keccak256("EFFECTIVE_BALANCE_COVERAGE_HYBRID")bytes32 public constant CONTRACT_KIND = keccak256("CENTURION_KIND_FACTORY")
Important state variables
address public owneraddress public controlleraddress public exitRequestContractaddress public treasuryRouterbytes32 public factoryConfigHashbytes32 public moduleSetHashbytes32 public immutableConfigHashuint256 public addressDerivationVersionaddress public upgradeGovernoraddress public vaultBeaconbool public policyBootstrapOpenmapping(address => bool) public isVaultmapping(bytes32 => address) public vaultByValidatorPubkeyHashaddress public pendingOwnerbytes32 public upgradeGovernorCodehashbytes32 public vaultBeaconCodehashuint256[45] private __gap
Modifiers
modifier onlyOwner()
External/public functions
upgradeAuthority() - external (address)initializeSeat(address vault, bytes32 validatorPubkeyHash, address beneficiary, address principalDestination, uint8 expectedCredentialType, uint256 principalTargetWei, uint256 effectiveBalanceTargetWei, uint256 expectedMaxEffectiveBalanceWei, uint64 claimDelay, uint128 maxClaimPerPeriodWei, uint128 executorDailyCapWei, bytes32 vaultConfigHash) - externalinitialize(address owner_, address controller_, address exitRequestContract_, bytes32 factoryConfigHash_, bytes32 moduleSetHash_, uint256 addressDerivationVersion_, address upgradeGovernor_, address vaultBeacon_, bytes32 expectedUpgradeGovernorCodehash_, bytes32 expectedVaultBeaconCodehash_) - external initializerimplementationVersion() - public (bytes32)economicPolicyHash() - public (bytes32)contractKind() - public (bytes32)transferOwnership(address newOwner) - external onlyOwnercancelOwnershipTransfer() - external onlyOwneracceptOwnership() - externalsetPolicyBootstrapOpen(bool open) - external onlyOwnerdeployVault(bytes calldata validatorPubkey, address beneficiary, address principalDestination, uint8 credentialType, uint256 maxEffectiveBalanceWei, uint64 claimDelay, uint128 maxClaimPerPeriodWei, uint128 executorDailyCapWei) - external onlyOwner (address vault)previewVaultAddress(bytes calldata validatorPubkey) - external (address)previewExecutionWithdrawalCredentials(bytes calldata validatorPubkey, bytes32 vaultConfigHash) - external (bytes32)vaultRuntimeCodeHash() - external (bytes32)
Privileged function candidates
initializeSeat(address vault, bytes32 validatorPubkeyHash, address beneficiary, address principalDestination, uint8 expectedCredentialType, uint256 principalTargetWei, uint256 effectiveBalanceTargetWei, uint256 expectedMaxEffectiveBalanceWei, uint64 claimDelay, uint128 maxClaimPerPeriodWei, uint128 executorDailyCapWei, bytes32 vaultConfigHash) - externalinitialize(address owner_, address controller_, address exitRequestContract_, bytes32 factoryConfigHash_, bytes32 moduleSetHash_, uint256 addressDerivationVersion_, address upgradeGovernor_, address vaultBeacon_, bytes32 expectedUpgradeGovernorCodehash_, bytes32 expectedVaultBeaconCodehash_) - external initializertransferOwnership(address newOwner) - external onlyOwnercancelOwnershipTransfer() - external onlyOwneracceptOwnership() - externalsetPolicyBootstrapOpen(bool open) - external onlyOwnerdeployVault(bytes calldata validatorPubkey, address beneficiary, address principalDestination, uint8 credentialType, uint256 maxEffectiveBalanceWei, uint64 claimDelay, uint128 maxClaimPerPeriodWei, uint128 executorDailyCapWei) - external onlyOwner (address vault)
Events
OwnershipTransferCancelledOwnershipTransferStartedOwnershipTransferredPolicyBootstrapOpenSetVaultDeployed
Errors
InvalidCredentialTypeInvalidMaxEffectiveBalanceInvalidPubkeyLengthInvalidUpgradeGovernorInvalidUpgradeGovernorCodehashInvalidVaultBeaconInvalidVaultBeaconAuthorityInvalidVaultBeaconCodehashNoPendingOwnerPendingOwnerOnlyUnauthorizedVaultAlreadyExistsVaultDeploymentFailedZeroAddress
Source-derived notes
- Metadata constants expose contract kind, version, and economic policy label for governor policy checks.
- Review privileged candidates against the permission matrix before production use.
CenturionWithdrawalVault.sol¶
Declarations
interface ICenturionReadinessSourcecontract CenturionWithdrawalVault
Implementation metadata
- Contract kind:
CENTURION_KIND_WITHDRAWAL_VAULT - Implementation version:
CenturionWithdrawalVaultUpgradeableV1 - Economic policy hash label:
EFFECTIVE_BALANCE_COVERAGE_HYBRID
Public constants
bytes32 public constant IMPLEMENTATION_VERSION = keccak256("CenturionWithdrawalVaultUpgradeableV1")bytes32 public constant ECONOMIC_POLICY_HASH = keccak256("EFFECTIVE_BALANCE_COVERAGE_HYBRID")bytes32 public constant CONTRACT_KIND = keccak256("CENTURION_KIND_WITHDRAWAL_VAULT")
Important state variables
address public factoryaddress public controllerbytes32 public validatorPubkeyHashaddress public exitRequestContractaddress public exitRequestFallbackContractbytes32 public vaultConfigHashuint256 public addressDerivationVersionbool public exitSubmittedbool private entereduint256[48] private __gap
Modifiers
modifier onlyController()modifier nonReentrant()
External/public functions
depositReadiness(address vault) - external (CenturionTypes.DepositReadiness memory)initialize(address factory_, address controller_, bytes32 validatorPubkeyHash_, address exitRequestContract_, bytes32 vaultConfigHash_, uint256 addressDerivationVersion_) - external initializerimplementationVersion() - public (bytes32)economicPolicyHash() - public (bytes32)contractKind() - public (bytes32)executionWithdrawalCredentials() - public (bytes32)isBoundToPubkey(bytes calldata validatorPubkey) - external (bool)currentExitRequestFeeWei() - external (uint256 feeWei)depositProtectionReadiness() - external (CenturionTypes.DepositReadiness memory readiness)setExitRequestFallback(address fallbackContract) - external onlyControllertransferETH(address payable to, uint256 amountWei) - external onlyController nonReentrantrequestExit(bytes calldata validatorPubkey, uint256 feeWei) - external onlyController nonReentrant
Privileged function candidates
initialize(address factory_, address controller_, bytes32 validatorPubkeyHash_, address exitRequestContract_, bytes32 vaultConfigHash_, uint256 addressDerivationVersion_) - external initializersetExitRequestFallback(address fallbackContract) - external onlyControllertransferETH(address payable to, uint256 amountWei) - external onlyController nonReentrantrequestExit(bytes calldata validatorPubkey, uint256 feeWei) - external onlyController nonReentrant
Events
ETHReceivedETHTransferredExitRequestFallbackUpdatedExitRequested
Errors
ExitAlreadySubmittedExitFeeUnavailableExitRequestUnavailableInsufficientBalanceInsufficientFeeInvalidExitRequestContractInvalidExitRequestFallbackContractInvalidPubkeyLengthReentrancyTransferFailedUnauthorizedValidatorPubkeyMismatchZeroAddress
Source-derived notes
- Metadata constants expose contract kind, version, and economic policy label for governor policy checks.
- Review privileged candidates against the permission matrix before production use.
DepositContractCTN.sol¶
Declarations
interface ICenturionUpgradePolicyRegistryinterface ICenturionBeaconProxyViewinterface ICenturionUpgradeableBeaconAuthorityinterface ITreasuryRouterBootstrapinterface IBaselineVaultFactoryRegistryinterface IBaselineVaultMetadatainterface IBaselineControllerMetadatacontract DepositContractCTN
Implementation metadata
- Contract kind:
CENTURION_KIND_DEPOSIT - Implementation version:
DepositContractCTNUpgradeableV2 - Economic policy hash label:
EFFECTIVE_BALANCE_COVERAGE_HYBRID
Public constants
uint256 public constant DEPOSIT_CONTRACT_TREE_DEPTH = 32uint256 internal constant MAX_DEPOSIT_COUNT = 2 ** DEPOSIT_CONTRACT_TREE_DEPTH - 1uint256 internal constant PHASE1_DEPOSIT_AMOUNT_GWEI = 32_000_000_000uint256 internal constant PHASE1_PRINCIPAL_TARGET_WEI = 32 etheruint64 public constant DEFAULT_ALLOWED_AMOUNT_GWEI = 32_000_000_000uint64 public constant MIN_DEPOSIT_AMOUNT_GWEI = 1_000_000_000bytes32 internal constant DEPOSIT_POLICY_VERSION = keccak256("EFFECTIVE_BALANCE_COVERAGE_HYBRID")uint16 internal constant READINESS_SCHEMA_VERSION = 3uint16 internal constant ORACLE_SCHEMA_VERSION = 2uint16 internal constant RECEIPT_SCHEMA_VERSION = 2uint256 internal constant MAX_RESERVE_PROOF_AGE = 7 daysuint8 internal constant CREDENTIAL_TYPE_EXECUTION_0X01 = 1uint8 internal constant SETTLEMENT_PHASE_RUNNING = 0uint8 internal constant RISK_STATE_UNKNOWN = 0uint8 internal constant RISK_STATE_CONSENSUS_HEALTHY = 1uint8 internal constant RISK_STATE_CONSENSUS_HEALTHY_WITH_DUST = 2bytes32 public constant IMPLEMENTATION_VERSION = keccak256("DepositContractCTNUpgradeableV2")bytes32 public constant ECONOMIC_POLICY_HASH = keccak256("EFFECTIVE_BALANCE_COVERAGE_HYBRID")bytes32 public constant CONTRACT_KIND = keccak256("CENTURION_KIND_DEPOSIT")bytes32 internal constant UPGRADE_KIND_DEPOSIT = keccak256("CENTURION_KIND_DEPOSIT")bytes32 internal constant UPGRADE_KIND_CONTROLLER = keccak256("CENTURION_KIND_CONTROLLER")bytes32 internal constant UPGRADE_KIND_FACTORY = keccak256("CENTURION_KIND_FACTORY")bytes32 internal constant UPGRADE_KIND_CLAIM_GATEKEEPER = keccak256("CENTURION_KIND_CLAIM_GATEKEEPER")bytes32 internal constant UPGRADE_KIND_WITHDRAWAL_VAULT = keccak256("CENTURION_KIND_WITHDRAWAL_VAULT")
Important state variables
uint256 public depositCountbytes32[DEPOSIT_CONTRACT_TREE_DEPTH] public branchbytes32[DEPOSIT_CONTRACT_TREE_DEPTH] public zeroHashesaddress public allowlistAdminaddress public pendingAllowlistAdminuint64 public allowlistEpochmapping(bytes32 => bool) public allowedDepositsmapping(bytes32 => bool) public consumedIntentsaddress public baselineVaultFactorybytes32 public baselineFactoryConfigHashbytes32 public baselineModuleSetHashbytes32 public baselineImmutableConfigHashuint256 public baselineAddressDerivationVersionbytes32 public baselineVaultRuntimeCodehashaddress public baselineControlleraddress public baselineClaimGatekeeperaddress public baselineExitRequestContractbytes32 public baselineExitRequestCodehashaddress public baselineUpgradeGovernoraddress public baselineVaultBeaconmapping(bytes32 => bool) public phase1ValidatorActivateduint256[64] private __gap
Modifiers
modifier onlyAllowlistAdmin()
External/public functions
assertTransparentProxyPolicy(address proxy, bytes32 contractKind, bytes32 expectedPolicyHash) - external (address implementation, bytes32 version, bytes32 codeHash)assertBeaconPolicy(address beacon, bytes32 contractKind, bytes32 expectedPolicyHash) - external (address implementation, bytes32 version, bytes32 codeHash)beacon() - external (address)upgradeAuthority() - external (address)policyBootstrapOpen() - external (bool)isVault(address vault) - external (bool)vaultByValidatorPubkeyHash(bytes32 pubkeyHash) - external (address)treasuryRouter() - external (address)exitRequestContract() - external (address)controller() - external (address)factoryConfigHash() - external (bytes32)moduleSetHash() - external (bytes32)immutableConfigHash() - external (bytes32)addressDerivationVersion() - external (uint256)vaultRuntimeCodeHash() - external (bytes32)upgradeGovernor() - external (address)vaultBeacon() - external (address)previewExecutionWithdrawalCredentials(bytes calldata validatorPubkey, bytes32 vaultConfigHash) - external (bytes32)validatorPubkeyHash() - external (bytes32)executionWithdrawalCredentials() - external (bytes32)vaultConfigHash() - external (bytes32)addressDerivationVersion() - external (uint256)exitRequestContract() - external (address)controller() - external (address)factoryConfigHash() - external (bytes32)moduleSetHash() - external (bytes32)addressDerivationVersion() - external (uint256)exitRequestContract() - external (address)exitRequestFallbackContract() - external (address)claimGatekeeper() - external (address)depositReadiness(address vault) - external ( bool ok, bytes32 policyVersion, uint16 readinessSchemaVersion, uint16 oracleSchemaVersion, uint16 receiptSchemaVersion, uint8 credentialType, uint256 principalTarget, uint256 effectiveBalanceTarget, uint256 maxEffectiveBalance, uint8 phase, uint8 currentRiskState, uint8 currentClaimState, bool triggerArmed, bool reservePolicyInitialized, bool reserveCoverageUsable, uint256 reserveCoverageLimitWei, uint256 minimumReserveCoverageWei, uint256 reserveCoverageProvenAt, bool beneficiaryInitialized, address exitRequestContract, bytes32 exitRequestContractCodehash, bytes32 pubkeyHash, bytes32 expectedWithdrawalCredentials )initialize(address baselineVaultFactory_, address upgradeGovernor_, address vaultBeacon_, address controller_, address claimGatekeeper_, address exitRequestContract_, address allowlistAdmin_) - external initializerimplementationVersion() - public (bytes32)economicPolicyHash() - public (bytes32)contractKind() - public (bytes32)deposit(bytes calldata pubkey, bytes calldata withdrawal_credentials, bytes calldata signature, bytes32 deposit_data_root) - externalget_deposit_root() - external (bytes32)get_deposit_count() - external (bytes memory)supportsInterface(bytes4 interfaceId) - external (bool)addAllowedDeposit(bytes calldata pubkey, bytes calldata withdrawal_credentials) - external onlyAllowlistAdminaddAllowedDeposits(bytes[] calldata pubkeys, bytes[] calldata withdrawalCredentialsList) - external onlyAllowlistAdminaddAllowedDepositFor(bytes calldata pubkey, bytes calldata withdrawal_credentials, uint64 amountGwei, address authorizedDepositor) - external onlyAllowlistAdminaddAllowedDepositsFor(bytes[] calldata pubkeys, bytes[] calldata withdrawalCredentialsList, uint64[] calldata amountGweiList, address[] calldata authorizedDepositorList) - external onlyAllowlistAdminremoveAllowedDeposit(bytes calldata pubkey, bytes calldata withdrawal_credentials) - external onlyAllowlistAdminremoveAllowedDepositFor(bytes calldata pubkey, bytes calldata withdrawal_credentials, uint64 amountGwei, address authorizedDepositor) - external onlyAllowlistAdminisAllowedDepositIntent(bytes calldata pubkey, bytes calldata withdrawal_credentials) - external (bool)isAllowedDepositIntentFor(bytes calldata pubkey, bytes calldata withdrawal_credentials, uint64 amountGwei, address authorizedDepositor) - external (bool)transferAllowlistAdmin(address newAdmin) - external onlyAllowlistAdminacceptAllowlistAdmin() - externalcancelAllowlistAdminTransfer() - external onlyAllowlistAdmin
Privileged function candidates
initialize(address baselineVaultFactory_, address upgradeGovernor_, address vaultBeacon_, address controller_, address claimGatekeeper_, address exitRequestContract_, address allowlistAdmin_) - external initializeraddAllowedDeposit(bytes calldata pubkey, bytes calldata withdrawal_credentials) - external onlyAllowlistAdminaddAllowedDeposits(bytes[] calldata pubkeys, bytes[] calldata withdrawalCredentialsList) - external onlyAllowlistAdminaddAllowedDepositFor(bytes calldata pubkey, bytes calldata withdrawal_credentials, uint64 amountGwei, address authorizedDepositor) - external onlyAllowlistAdminaddAllowedDepositsFor(bytes[] calldata pubkeys, bytes[] calldata withdrawalCredentialsList, uint64[] calldata amountGweiList, address[] calldata authorizedDepositorList) - external onlyAllowlistAdminremoveAllowedDeposit(bytes calldata pubkey, bytes calldata withdrawal_credentials) - external onlyAllowlistAdminremoveAllowedDepositFor(bytes calldata pubkey, bytes calldata withdrawal_credentials, uint64 amountGwei, address authorizedDepositor) - external onlyAllowlistAdmintransferAllowlistAdmin(address newAdmin) - external onlyAllowlistAdminacceptAllowlistAdmin() - externalcancelAllowlistAdminTransfer() - external onlyAllowlistAdmin
Events
AllowlistAdminTransferCancelledAllowlistAdminTransferStartedAllowlistAdminTransferredBaselineConfiguredBaselineMetadataConfiguredDepositEventDepositIntentAllowedDepositIntentAllowedForDepositIntentConsumedDepositIntentConsumedForDepositIntentRemovedDepositIntentRemovedFor
Errors
ArrayLengthMismatchBaselineAddressDerivationVersionMismatchBaselineClaimGatekeeperMismatchBaselineComponentHasNoCodeBaselineControllerUnavailableBaselineFactoryConfigHashMismatchBaselineImmutableConfigHashMismatchBaselineMetadataMismatchBaselineModuleSetHashMismatchBaselineUpgradeGovernorMismatchBaselineUpgradeGovernorUnavailableBaselineVaultBeaconAuthorityMismatchBaselineVaultBeaconMismatchBaselineVaultBeaconUnavailableBaselineVaultControllerMismatchBaselineVaultFactoryHasNoCodeBaselineVaultFactoryNotConfiguredBaselineVaultRuntimeCodehashMismatchDepositDataRootMismatchDepositIntentAlreadyConsumedDepositIntentNotAllowlistedDepositValueNotMultipleOfGweiDepositValueTooHighDepositValueTooLowExitRequestContractUnavailableInvalidAllowedDepositAmountInvalidAuthorizedDepositorInvalidPubkeyLengthInvalidSignatureLengthInvalidWithdrawalCredentialsLengthMerkleTreeFullNoPendingAllowlistAdminNonCanonicalWithdrawalCredentialsPendingAllowlistAdminOnlyPhase1DepositMustBeExactly32CTNPhase1ValidatorAlreadyActivatedUnauthorizedVaultNotFactoryRegisteredVaultPubkeyBindingMismatchVaultReadinessExitFallbackActiveVaultReadinessInsufficientReserveCoverageVaultReadinessMalformedVaultReadinessReserveFloorTooLowVaultReadinessReserveProofStaleVaultReadinessRouterBootstrapOpenVaultReadinessRouterBootstrapStatusUnavailableVaultReadinessUnprovenVaultReadinessUnsafeStateVaultReadinessWrongCredentialTypeVaultReadinessWrongExitRequestCodehashVaultReadinessWrongExitRequestContractVaultReadinessWrongPolicyVaultReadinessWrongPrincipalConfigVaultReadinessWrongSchemaVaultReadinessWrongWithdrawalCredentialsWithdrawalCredentialsMustBeExecutionAddressZeroAddress
Source-derived notes
- Metadata constants expose contract kind, version, and economic policy label for governor policy checks.
- Review privileged candidates against the permission matrix before production use.
interfaces/ICenturionWithdrawalVault.sol¶
Declarations
interface ICenturionWithdrawalVault
Implementation metadata
- Contract kind:
Evidence required - Implementation version:
Evidence required - Economic policy hash label:
Evidence required
Public constants
- None found by extractor.
Important state variables
- None found by extractor.
Modifiers
- None found by extractor.
External/public functions
factory() - external (address)controller() - external (address)validatorPubkeyHash() - external (bytes32)executionWithdrawalCredentials() - external (bytes32)vaultConfigHash() - external (bytes32)addressDerivationVersion() - external (uint256)exitRequestContract() - external (address)exitRequestFallbackContract() - external (address)currentExitRequestFeeWei() - external (uint256)isBoundToPubkey(bytes calldata validatorPubkey) - external (bool)setExitRequestFallback(address fallbackContract) - externaltransferETH(address payable to, uint256 amountWei) - externalrequestExit(bytes calldata validatorPubkey, uint256 feeWei) - external
Privileged function candidates
setExitRequestFallback(address fallbackContract) - externaltransferETH(address payable to, uint256 amountWei) - externalrequestExit(bytes calldata validatorPubkey, uint256 feeWei) - external
Events
- None found by extractor.
Errors
- None found by extractor.
Source-derived notes
- No implementation metadata constants were found in this file; likely an interface or library.
- Review privileged candidates against the permission matrix before production use.