102cc0fff3
* add new field upgrade_time_set_staking_rewards_per_second with intention of integrating into the disable inflation logic to set an initial staking reward time * when the disable inflation upgrade time occurs, set the staking rewards per second to the value specified by the new upgrade_time_set_staking_rewards_per_second. This will allow a decoupled implementation between the ugprade switching logic, and the core functionality of paying staking rewards from the pool * add staking rewards state to community keeper and community module genesis that is required to calculate and track staking reward payouts accross blocks * add implementation of staking reward payouts * remove unused error * touch up tests and add a test case that fully tests behavior when pool is drained * add function comments * refactor and pull out main calculation to private pure function with no dependence on keeper * zero out default parameters -- these are too chain specific to have useful defaults * small touch ups on comments, test cases * use correct Int from sdkmath, not old sdk types; update protonet genesis for new parmater * fix copy pasta comment * use bond denom from staking keeper instead of referncing ukava directly * add staking reward state for valid genesis * update kvtool genesis for new params and rewards state |
||
---|---|---|
.github | ||
app | ||
build | ||
ci/env | ||
cli_test | ||
client | ||
cmd/kava | ||
contracts | ||
contrib | ||
docs | ||
migrate | ||
networks/local | ||
proto | ||
simulations | ||
tests | ||
third_party/proto | ||
x | ||
.dockerignore | ||
.gitignore | ||
.gitmodules | ||
.tool-versions | ||
buf.work.yaml | ||
CHANGELOG.md | ||
docker-compose.yml | ||
Dockerfile | ||
Dockerfile-rocksdb | ||
go.mod | ||
go.sum | ||
golangci.yml | ||
hard.svg | ||
kava-logo.svg | ||
LICENSE.md | ||
Makefile | ||
README.md | ||
swp.svg |
Reference implementation of Kava, a blockchain for cross-chain DeFi. Built using the cosmos-sdk.
Mainnet
The current recommended version of the software for mainnet is v0.24.0. The master branch of this repository often contains considerable development work since the last mainnet release and is not runnable on mainnet.
Installation and Setup
For detailed instructions see the Kava docs.
git checkout v0.24.0
make install
End-to-end tests of Kava use a tool for generating networks with different configurations: kvtool.
This is included as a git submodule at tests/e2e/kvtool
.
When first cloning the repository, if you intend to run the e2e integration tests, you must also
clone the submodules:
git clone --recurse-submodules https://github.com/Kava-Labs/kava.git
Or, if you have already cloned the repo: git submodule update --init
Testnet
For further information on joining the testnet, head over to the testnet repo.
Docs
Kava protocol and client documentation can be found in the Kava docs.
If you have technical questions or concerns, ask a developer or community member in the Kava discord.
Security
If you find a security issue, please report it to security [at] kava.io. Depending on the verification and severity, a bug bounty may be available.
License
Copyright © Kava Labs, Inc. All rights reserved.
Licensed under the Apache v2 License.