Comments (6)
Need to add the functionality regarding to 1/4 of amount
from governance-token-contracts.
so add it up and finalise it with docs by tommorow . will have separate v2 and v1 branch for testnet
from governance-token-contracts.
@shivasai780 when it will be done...
from governance-token-contracts.
This Solidity contract, named GLV, serves as a vault for receiving and storing funds from the Burning contract for a specific protocol. The contract allows the Burning contract to deposit funds into it, tracks the accumulated amounts for different protocols, and enables the foundation to interact with certain functions. Here's a detailed breakdown of its features:
Contract Overview: The GlipsVault contract acts as an intermediary between the Burning contract, associated protocols, and a minting pool. It's used to securely manage and distribute funds for a particular protocol.
Modifiers:
OnlyBurning: This modifier ensures that only the Burning contract is allowed to call the function it's applied to.
OnlyWeuFoundation: This modifier ensures that only the specified foundation (WeuFoundation) is allowed to call the function it's applied to.
State Variables:
ProtocolAmount: A mapping that stores the accumulated amounts for each protocol. The keys are protocol addresses, and the values represent the total amount of funds received for that protocol.
BurningPool: The address of the Burning contract that is allowed to interact with this vault.
ProtocolAddress: The address of the associated protocol for which funds are being managed.
WeuFoundation: The address of the foundation that manages the contract and has permission to call certain functions.
MintingPool: The address of the minting pool contract associated with this vault.
Functions:
initialize(...): This function is used to initialize the contract with essential addresses. It can only be called by the Burning contract. It sets the addresses of the Burning contract, the associated protocol, the foundation managing the contract, and the minting pool.
ReceiveAmount(...): This function allows the Burning contract to deposit funds for a specific protocol. The protocol address, amount, and the USD token used are specified as arguments. The function checks the allowance of the contract and then transfers the funds from the Burning contract to the vault. It updates the accumulated amount for the protocol.
sendAmount(...): This function sends a quarter of the accumulated funds for the associated protocol back to the Burning contract. Additionally, it decreases the maximum minted amount in the Minting contract by the sent amount. This function helps manage the balance of funds and prevents over-minting.
The GLV contract provides a mechanism for safely handling and distributing funds between the Burning contract, protocols, and the minting pool. Its functionality is geared towards maintaining proper fund management and preventing unauthorized access to key actions.
from governance-token-contracts.
Its GLV - Generation Lineage Vault .
The last function send amount will be used for two way - when a protocol is not able to go mainnet within 50 timechain ( which means the GDV pool has a zero balance related to the protocol and minting pool also has 0 bal. , then it will allow the certain minting contract to send a request for reallocation of 1/4 funds , if approved then the funds will be send to the GDV pool and the same proportion will be added to mint from the minting pool .
You can add a function like- Bal of GDV is always proportional to minting pool .
2 . send amount will also be used to send the funds to protocol contract if the protocol is launched within 50 timechains - remaining funds will be transferred. @shivasai780
from governance-token-contracts.
hey @shivasai780 no changes being made...
from governance-token-contracts.
Related Issues (20)
- In the burning contract we need send the slashed amount into the glip pool,so we need to create glip pool contract and send the slashed amount into that contract HOT 2
- Burning and minting docs HOT 4
- multisig docs HOT 6
- Updated mintingPool/Vault HOT 7
- SS
- SS
- Write a Foundation Treasury Pool Smart contract HOT 6
- Create the Foundation Members Contract HOT 3
- Create A document File For NFT Contract HOT 2
- Create a contract for session keys for V1 ( technical (3) and research committee (1) HOT 3
- GENERATE TESTNET BRANCH
- GDV pool HOT 9
- Create a pipeline system for our repositries . HOT 2
- Create a test version for erc-4973 . HOT 3
- MintingOfInput HOT 1
- LTV HOT 5
- BondingStakingPool HOT 1
- slashedStakeWithProposal HOT 7
- testINT HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from governance-token-contracts.