LogoLogo
  • General
    • 👋Welcome to Kinto
    • 📔Terminology
    • 📃Litepaper
    • 📄One Pager
    • 🔗Links
    • 🤝Partners and Collaborators
    • ❓FAQ
  • User Guides
    • 🌟Sign Up Walkthrough
    • 🗝️KYC Walkthrough
      • 🔑Synaps Walkthrough
      • 🔑Plaid Walkthrough
    • 📄KYB Walkthrough
    • 🪟Passkeys on Windows Walkthrough
    • Setting up a 1Password Passkey
    • ❔Troubleshooting/Help
    • 💰Kinto Deposits
      • Onramp on Kinto
    • 💸Kinto Withdrawals
      • 🗝️Recover funds from my Passkey address
      • 🎁Wrapping ETH in your Kinto Wallet
      • Offramp on Kinto
    • Swap on Kinto
    • Lending & Borrowing
    • Hyperliquid
      • Fees
      • Deposits
      • Creating Orders
      • Closing an Order
      • Withdrawals
    • Send to other Kinto Wallets
    • Token Sale Participation
    • Full Account Recovery
    • $K Transfer
      • Withdraw $K
      • Send $K on Kinto
      • Deposit $K
      • Swap $K on Kinto
    • Recover Funds from an X Signer
    • $K Lend and Borrow Market
      • Supply USDC to $K Lending Market
      • Withdraw USDC from $K Lending Market
      • Add $K and Borrow USDC
      • Repay USDC and Withdraw $K
  • Security/KYC/AML
    • 🔑Securing Kinto
    • 📃Security One Pager
    • 🔐Security and Risk Management
    • 🛡️Wallet Insurance
    • ⚙️User Owned KYC
    • 🏳️Enabled Countries
    • 🔒Beware of Scams
    • ✅Kinto Validators
    • 🤺Security Council
  • Building on Kinto
    • ℹ️Network Information
    • 🧱Kinto Rollup Architecture
    • ❕Differences with other rollups
    • 🤖Rollup Features
      • ⚙️Create2
      • 🔥Kinto Account Abstraction
      • 🛡️KintoWallet
      • 🪢Musubi - Chain Abstraction
    • 💻Development guide
      • 1️⃣1️⃣ Setup your Deployer EOA
      • 2️⃣2️⃣ Environment setup
      • 3️⃣3️⃣ Creating your Kinto App
    • ⛩️Interacting with your Kinto App
      • 🤖Interacting with contracts
      • 👩‍🏭Create a Web Dapp
    • 📗Smart Contract Reference
      • KintoAppRegistry
      • KintoID
      • KintoWalletFactory
      • Kinto Wallet
      • SponsorPaymaster
      • Kinto EntryPoint
      • KYCViewer
      • Faucet
      • EngenCredits
      • EngenGovernance
    • 🌍Kinto Wallet Web SDK
    • 🏪Running kinto nodes
    • ⚒️Tools
      • ⛈️Node RPC
      • 🏗️Build Tools
      • 🗺️Block Explorer
      • 🐞Debugging and monitoring
      • 🔮Oracle - Pyth
      • Firewall - Venn
    • 🚀ICO Platform
  • Governance
    • 🧠Introduction to the Kinto DAO
    • 📓Kinto Constitution
    • 📃KIP Proposal Template
    • 🌄Engen Proto-Governance
    • ⛩️Kinto Token
      • Information, addresses and links
  • 💧Liquidity Programs
    • 🛠️Mining Program
    • ⚫Engen - Launch Program
    • 🪙K Token Sale
  • Sakura Mining Season
Powered by GitBook
On this page
  • Basics
  • Voting Parameters
  • State Functions
  • View Functions
  1. Building on Kinto
  2. Smart Contract Reference

EngenGovernance

PreviousEngenCreditsNextKinto Wallet Web SDK

Last updated 1 year ago

Deployment Address:

Mainnet:

Interface:


Basics

The EngenGovernance contract is an implementation of a Governor contract for the Engen governance. It uses the GovernorVotes and GovernorVotesQuorumFraction modules from OpenZeppelin for voting and quorum functionality.

For example, if you want to check the quorum at a specific block number, you can call:

quorum(<BLOCK_NUMBER>)

Voting Parameters

These are the key parameters used in the contract.

Parameter
Value

Voting Delay

1 day

Voting Period

3 weeks

Proposal Threshold

5 ENG

Using the following call method, you can check the voting delay:

votingDelay()

State Functions

Anyone can call the following functions to get information about the governance parameters.


function votingDelay() public pure returns (uint256);

function votingPeriod() public pure returns (uint256);

function proposalThreshold() public pure returns (uint256);

function quorum(uint256 blockNumber) public view returns (uint256);

1. votingDelay

This function returns the delay period for voting.

Function Interface:

function votingDelay() public pure override returns (uint256);
Parameter
Type
Explanation

Returns the voting delay in days


2. votingPeriod

This function returns the voting period.

Function Interface:

function votingPeriod() public pure override returns (uint256);
Parameter
Type
Explanation

Returns the voting period in weeks


3. proposalThreshold

This function returns the threshold needed to create a proposal.

Function Interface:

function proposalThreshold() public pure override returns (uint256);
Parameter
Type
Explanation

Returns the proposal threshold in ENG


4. quorum

This function returns the quorum at a specific block number.

Function Interface:

function quorum(uint256 blockNumber) public view override(IGovernor, GovernorVotesQuorumFraction) returns (uint256);
Parameter
Type
Explanation

blockNumber

uint256

The block number to get the quorum at


View Functions

Anyone can call the following functions without a transaction to retrieve information from the contract.

function votingDelay() public pure returns (uint256);

function votingPeriod() public pure returns (uint256);

function proposalThreshold() public pure returns (uint256);

function quorum(uint256 blockNumber) public view returns (uint256);

1. votingDelay

This function returns the delay period for voting.

Function Interface:

function votingDelay() public pure override returns (uint256);
Parameter
Type
Explanation

Returns the voting delay in days

2. votingPeriod

This function returns the voting period.

Function Interface:

function votingPeriod() public pure override returns (uint256);
Parameter
Type
Explanation

Returns the voting period in weeks


3. proposalThreshold

This function returns the threshold needed to create a proposal.

Function Interface:

function proposalThreshold() public pure override returns (uint256);
Parameter
Type
Explanation

Returns the proposal threshold in ENG


4. quorum

This function returns the quorum at a specific block number.

Function Interface:

function quorum(uint256 blockNumber) public view override(IGovernor, GovernorVotesQuorumFraction) returns (uint256);
Parameter
Type
Explanation

blockNumber

uint256

The block number to get the quorum at

📗
0x27926a991BB0193Bf5b679bdb6Cb3d3B6581084E
IGovernor.sol