Commit Graph

66 Commits

Author SHA1 Message Date
drklee3
3c53e72220
feat: Add x/precisebank module basic setup (#1906)
- Add initial setup and empty genesis type for x/precisebank
- Basic tests with mostly empty values, to be filled out with additional implementation
2024-05-10 09:30:28 -07:00
Adam Robert Turman
2a93c41fcc
Internal testnet: include EVM contracts & funds for remaining bep3 denoms (#1868)
* include remaining bep3 denoms

* typos
2024-04-04 12:21:05 -05:00
Adam Robert Turman
198b620cb4
Add "axlBNB" to internal testnet (#1860)
* - add contract address for axlBNB
- seed EVM wallets with axlBNB

* update proposal to include new contract address

* Feedback

Co-authored-by: Ruaridh <rhuairahrighairidh@users.noreply.github.com>

* reorder coins in alphabetical order

* clean up

---------

Co-authored-by: Ruaridh <rhuairahrighairidh@users.noreply.github.com>
2024-03-28 10:56:38 -05:00
Draco
5c0f27b952
Add ibc packet forward middleware for ibc transfer (#1839)
* Add ibc packet forward middleware for ibc transfer

* Update changelog for ibc packet forwarding
2024-03-07 16:47:46 -05:00
Adam Robert Turman
9bfd1ffd7d
fund internal testnet e2e account with USDt (#1841) 2024-03-06 14:07:26 -06:00
Draco
614d4e40fe
Update cosmos-sdk to v0.47.7 (#1811)
* Update cometbft, cosmos, ethermint, and ibc-go

* Replace github.com/tendermint/tendermint by github.com/cometbft/cometbft

* Replace github.com/tendermint/tm-db by github.com/cometbft/cometbft-db

* Replace gogo/protobuf with cosmos/gogoproto & simapp replacement

* Replace cosmos-sdk/simapp/helpers with cosmos-sdk/testutil/sims

* Remove no longer used simulations

* Replace ibchost with ibcexported
See https://github.com/cosmos/ibc-go/blob/v7.2.2/docs/migrations/v6-to-v7.md#ibc-module-constants

* Add new consensus params keeper

* Add consensus keeper to blockers

* Fix keeper and module issues in app.go

* Add IsSendEnabledCoins and update SetParams interface changes

* Fix protobuf build for cosmos 47 (#1800)

* fix cp errors by using -f; fix lint by only linting our proto dir;
and use proofs.proto directly from ics23 for ibc-go v7

* run proto-all; commit updated third party deps and swagger changes

* regenerate proto files

* use correct gocosmos build plugin for buf

* re-gen all protobuf files to update paths for new gocosmos plugin

* update protoc and buf to latest versions

* fix staking keeper issues in app.go

* update tally handler for gov changes

* chain id fix and flag fixes

* update deps for cometbft 47.7 upgrade

* remove all module legacy queriers

* update stakingKeeper to pointer

* Replace ModuleCdc from govv1beta1 to govcodec

* remove simulations

* abci.LastCommitInfo → abci.CommitInfo

* Remove unused code in keys.go

* simapp.MakeTestEncodingConfig -> moduletestutil.MakeTestEncodingConfi

* Fix chain id issues in tests

* Fix remaining unit test issues

* Update changelog for upgrade

* Fix e2e tests using updated kvtool

* Update protonet to v47 compatible genesis

* Bump cometbft-db to v0.9.1-kava.1

* Update kvtool

* Remove extra changelog

* Fix merged rocksdb issues

* go mod cleanup

* Bump cometbft-db to v9 and go to 1.21

* Bump rocksdb version to v8.10.0

* Update kvtool to latest version

* Update gin to v1.9.0

* Use ibctm.ModuleName in app_test

* Fallback to genesis chain id instead of client toml

* Remove all simulations

* Fix cdp migrations issue with v47

* Update dependencies to correct tags

---------

Co-authored-by: Nick DeLuca <nickdeluca08@gmail.com>
2024-02-06 17:54:10 -05:00
Levi Schoen
c59a491788
feat(x/cdp): update begin bloocker to run liquidations every X blocks based off params (#1818)
* (feat) update x/cdp to run every X blocks based off params (#1814)

* add new cdp module param to protonet genesis

* update cdp / cdp related tests for new module param

* update telemetry docs and setup for collecting against local node

* update kvool commit for new cdp param

(cherry picked from commit 4d62f47773)

* add tests for configurable x/cdp begin blocker interval param
add migration for default value of param

* make adjustments based off pr feedback

* fix proto back compat check
2024-02-02 13:21:11 -05:00
Nick DeLuca
2bccb6deaf
Revert "(feat) update x/cdp to run every X blocks based off params" (#1816) 2024-01-25 09:35:56 -07:00
Levi Schoen
4d62f47773
(feat) update x/cdp to run every X blocks based off params (#1814)
* add new cdp module param to protonet genesis

* update cdp / cdp related tests for new module param

* update telemetry docs and setup for collecting against local node

* update kvool commit for new cdp param
2024-01-24 17:10:07 -05:00
Nick DeLuca
102cc0fff3
Community Pool Staking Rewards Implementation & Improvements (#1742)
* 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
2023-10-03 08:41:54 -07:00
Ruaridh
bc260d8091
feat(community): add switchover param (#1704)
* add community params type

* add get/set params methods

* add community genesis state type

* add community init/export genesis

* add querier methods for params

* add query cli cmd

* update changelog

* update protonet genesis

* Add `RewardsPerSecond` param to `x/community` module (#1707)

* Add RewardsPerSecond param to community

* Update rewards per second param to int

* Add rewards_per_second to protonet genesis

* Use default rewards per second of 744191

* Include value if negative in Validate error

* Rename RewardsPerSecond param to StakingRewardsPerSecond

* Add changelog entry

* Add param migration, update consensus version to 2

* Update proto docs

* Update staking_rewards_per_second param name in protonet genesis (#1730)

* Update godoc

Co-authored-by: Robert Pirtle <Astropirtle@gmail.com>

* add genesis state tests

* document what 0 upgrade time means

* update kvtool to include new params

---------

Co-authored-by: drklee3 <derrick@dlee.dev>
Co-authored-by: Robert Pirtle <Astropirtle@gmail.com>
2023-09-22 09:05:12 -07:00
Evgeniy Scherbina
495444586a
Update version of protonet (#1695) 2023-09-05 09:52:20 -04:00
Evgeniy Scherbina
71a8cee566
Update kava version for internal testnet (#1670) 2023-08-25 10:30:28 -04:00
Evgeniy Scherbina
b01062a991
Fix kava version for internal testnet (#1667)
* Fix kava version for internal testnet

* Fix kava version for protonet
2023-08-23 13:36:23 -04:00
Robert Pirtle
667b6d084e
ci: update internal testnet cdp collateral types param (#1657)
* ci: update internal testnet usdt cdp collateral type

* match mainnet global debt limit
2023-07-26 12:33:26 -07:00
samcode206
8a7d3aa52c
Add x/cdp msgs to eip712_allowed_msgs list (#1650) 2023-07-14 14:07:21 -07:00
samcode206
5f0a723dea
add erc20/tether/usdt to internal testnet cdp collateral_params (#1649) 2023-07-14 11:59:27 -07:00
Robert Pirtle
1c7911aabf
ci: add USDT to internal testnet (#1632) 2023-06-21 16:05:48 -07:00
Adam Robert Turman
c0820fc51b
seed dev wallet with atom on internal testnet (#1628) 2023-06-16 16:07:02 -05:00
Robert Pirtle
141e8ac450
test(e2e): add Committee & Upgrade query clients (#1618)
Also:
- updates kvtool
- adds helper comment to upgrade e2e file
- adjusts e2e account funding logging
- [testnets] enable eip712 signing of cosmos coin msgs
- [testnets] enable cosmos coin conversion for HARD
2023-06-06 14:51:42 -07:00
Adam Robert Turman
0ec64c9378
axlwBTC Lend money market (#1613)
* clean up naming around axlwBTC
reenable lend money market
assign incentives

* Update .github/scripts/seed-protonet.sh

* alphabetical order of denoms

* alphabetical order of denoms

* alphabetical order of denoms pt 3

* alphabetical order of denoms
2023-06-05 18:37:00 -05:00
Adam Robert Turman
12e3dfecc3
Update internal testnet commit hash (#1611)
* Update KAVA.VERSION

Updated to match: dc1f8eb153

* Update ci/env/kava-internal-testnet/KAVA.VERSION

* Update ci/env/kava-internal-testnet/KAVA.VERSION

* update internal genesis params

---------

Co-authored-by: Robert Pirtle <astropirtle@gmail.com>
2023-06-01 13:31:34 -05:00
Robert Pirtle
d4cbc759f8
update new names, NativeCoin -> CosmosCoin (#1596)
* rename contract NativeCoin -> CosmosCoin

* rename all entities NativeCoin -> CosmosCoin

* update changelog

* update protonet genesis.json
2023-05-23 12:32:27 -07:00
Robert Pirtle
ff709d73e1
feat(evmutil): add allow list for evm-convertible sdk denoms (#1590)
* add proto for allowed sdk denoms -> evm conversion

* add validation for AllowedNativeCoinERC20Token

* add validation for AllowedNativeCoinERC20Tokens

* add AllowedNativeDenoms into params & genesis

* add evmutil Params.Validate() test

* fix eip712 ante test

* update changelog

* update internal testnet genesis.json

* update state & param specs

updates to the sections describing functionality will be updated once
that functionality actually exists... :)

* update field decimal -> decimals

field now matches erc20 spec

* add validation decimals will cast to uint8

* add v2 store migration for evmutil

* create & register evmutil migrations

* adds migrator to evmutil's keeper
* sets up Migrate1To2 migration
* registers migration in module
* updates GetParams to properly handle historic block queries

* add unit test for GetParams with historic store
2023-05-19 16:01:46 -07:00
Robert Pirtle
250801dd77
fix ci & sort denoms in internal testnet genesis coins (#1580)
* fix internal genesis validation ci

* sort coins in internal testnet genesis
2023-04-27 07:49:55 -07:00
Paul Downing
ea3f2511d4
update multichain btc denom (#1579)
denom in prod is `erc20/multichain/wbtc` apparently instead of `erc20/multichain/btc`
2023-04-25 12:58:34 -05:00
drklee3
95d9fb9aca
feat: add CommunityCDPWithdrawCollateralPermission (#1568)
* Add CommunityCDPWithdrawCollateralPermission

* Add changelog entry

* Move permission Allow func closer to its other cdp friend
2023-04-20 17:13:02 -07:00
Robert Pirtle
14a0860ddb
feat: add CommunityCDPRepayDebtPermission (#1566)
* feat: add CommunityCDPRepayDebtPermission

When granted, the new permission allows a committee to submit a
CommunityCDPRepayDebtProposal to lower principal owed on a cdp
owned by the x/community module.

* update changelog

* update protonet genesis.json
2023-04-20 14:42:11 -07:00
Draco
99890b9c84
add authorizations for x/gov (#1569) 2023-04-20 16:43:33 -04:00
Paul Downing
9b0a348239
Update protonet json earn vaults (#1564)
* Update protonet json earn vaults

Currently our `/kava/incentive/v1beta1/apy` endpoint is expecting there to be an earn vault for each `earn_reward_period` returned by `kava/incentive/v1beta1/params`. Right now, the genesis state for testnet (and protonet) aren't providing all the vaults as options.

Our two choices are:
1. Remove the incentive params for the vaults not included
2 Add the vaults so there is a vault for each incentive param

Going with option 2 here because mainnet has vaults for the denoms which are currently missing

* update protonet genesis earn vaults
2023-04-18 18:55:57 -05:00
Levi Schoen
be2db71cb0 update-protonet-committee-params
allow protonet committee members to update evmutil EnabledConversionPairs param
2023-04-14 12:25:57 -07:00
Adam Robert Turman
40d390c24b
align internal testnet markets with upcoming release (#1557) 2023-04-13 16:10:19 -05:00
Levi Schoen
6bf654aca7 give internal testnet permissions to update evmutil EnabledConversionPairs param 2023-04-13 12:27:45 -07:00
Adam Robert Turman
70d9d61357
add multichain assets to evmutils (#1554) 2023-04-13 12:15:17 -05:00
Paul Downing
22231db05a
update kava version to the correct current commit (#1552)
* update kava version to the correct current commit

https://github.com/Kava-Labs/kava/pull/1551/files used the id instead of the commit hash 😞 
Use the commit hash not the id

* use eternal release tag

* use kava version for current commit when validating internal testnet genesis

---------

Co-authored-by: Levi Schoen <levismschoen@gmail.com>
2023-04-13 03:34:52 -05:00
Paul Downing
e81507a242
update version internalTestnet to match mainnet (#1551)
mainnet is currently returning:
```
{
  "node_info": {
    "protocol_version": {
      "p2p": "8",
      "block": "11",
      "app": "0"
    },
    "id": "7f57dae02b4f732fac4cf5f53379728d92578d5f",
    "listen_addr": "tcp://0.0.0.0:26656",
    "network": "kava_2222-10",
    "version": "v0.34.24",
    "channels": "40202122233038606100",
    "moniker": "kava-outbound-pruning",
    "other": {
      "tx_index": "on",
      "rpc_address": "tcp://0.0.0.0:26657"
    }
  },
```
Update the internal testnet to match since we aren't testing any unique backend changes in internal testnet and I believe this is just out of date
2023-04-12 20:58:22 -05:00
Adam Robert Turman
c756748dd6
add incentivized lend money markets for multichain wBTC, USDC, and USDT (#1549) 2023-04-12 16:20:11 -05:00
Levi Schoen
03a897216a fix: use matching kava version when running seed script against a network 2023-04-06 13:55:29 -07:00
Levi Schoen
f75eebb310 match internal testnet genesis to kava version 2023-04-06 12:34:06 -07:00
Levi Schoen
c7f26e47e4 feat: only deploy to internal testnet if version or genesis change 2023-04-04 15:33:25 -07:00
Robert Pirtle
646e376698
fix e2e test in CI pipeline (#1528)
* update docker image to go 1.19

* update kvtool

* add .tool-versions for automagic go version usage

* update prtotonet genesis with missing params

* update kvtool (fixes evm port exposure)

* fix changed error message for insufficient fee

* add error message on failed contract deployment

* update kvtool (set consensus_params.block.max_gas)

* temporarily disable ibc e2e tests

* update kvtool to master
2023-04-04 14:22:18 -07:00
drklee3
f757d7ab15
feat: upgrade to Cosmos v0.46 (#1477)
* Update cosmos-sdk to v0.45.10-kava

* Add RegisterNodeService to app

* Update cosmos proto files

* Update cosmos proto files

* Use tagged v0.45.10-kava-v0.19-0.21 cosmos version

* update x/auth/legacy to x/auth/migrations

* Delete rest packages and registration

* Remove rest from proposal handlers

* Remove legacy types referencing removed sdk types

* Remove legacy tx broadcast handler

* Update incentive staking hooks to return error

* Remove grpc replace directive, use new grpc version

* Fix storetypes import

* Update tally_handler with updated gov types

* Delete legacy types

* Use new gov default config

* Update RegisterTendermintService params

Signed-off-by: drklee3 <derrick@dlee.dev>

* Replace sdk.StoreKey with storetypes.StoreKey

* Replace sdk.Int#ToDec with sdk.NewDecFromInt

* Replace sdk.NewUintFromBigInt with sdkmath.NewUintFromBigInt

Signed-off-by: drklee3 <derrick@dlee.dev>

* Update most intances of govtypes to govv1beta1

* Unpack coin slice for Coins#Sub and Coins#SafeSub

Signed-off-by: drklee3 <derrick@dlee.dev>

* Update committee gov codec registration

Signed-off-by: drklee3 <derrick@dlee.dev>

* Update migrate utils period_vesting Coins#Sub

Signed-off-by: drklee3 <derrick@dlee.dev>

* Update Coin#Sub in community proposal handler

Signed-off-by: drklee3 <derrick@dlee.dev>

* Update Coin#Sub, FundModuleAccount/FundAccount in banktestutil

Signed-off-by: drklee3 <derrick@dlee.dev>

* Update community, earn, kavadist proposal gov registration

* Update evm cli client EthSecp256k1Type check

* AccAddressFromHex to AccAddressFromHexUnsafe

* Add mint DefaultInflationCalculationFn to earn test

* Update use of removed staking.NewHandler

* Rename FlagIAVLFastNode -> FlagDisableIAVLFastNode

* cmd: Update new snapshot app option

Signed-off-by: drklee3 <derrick@dlee.dev>

* cmd: Add tendermint default config, use cosmos rpc status command

Signed-off-by: drklee3 <derrick@dlee.dev>

* Update ethermint import path

github.com/tharsis/ethermint -> github.com/evmos/ethermint

* Upgrade ibc-go to v6

* Update proto dependencies

Signed-off-by: drklee3 <derrick@dlee.dev>

* Update Tally handler test with new gov types

* Update helpers.GenTx -> helpers.GenSignedMockTx

* Update evmkeeper.NewKeeper params

Signed-off-by: drklee3 <derrick@dlee.dev>

* Update ante authz, tests

* Add feemarket transient key, pass subspaces to evm/feemarket keepers

* Update new ante decorators

* Add new addModuleInitFlags to server commands

* Pass codec to keyring.New in genaccounts

* Pass codec to client keys add

* Add SendCoins to evmutil bank_keeper

* Use github.com/cosmos/iavl@v0.19.5

* Add ante HandlerOptions

* Add unimplemented SendCoins to evmutil bank keeper

Ethermint x/evm does not use this method

* Update init-new-chain script to disable post-london blocks

* Modify test genesis states to append 1 validator

* Update tally handler test to use string values

* Prevent querying balance for empty sdk.AccAddress in auction bidding test

* Set default bond denom to ukava

* Remove overwritten bank genesis total supply in committee proposal test

Signed-off-by: drklee3 <derrick@dlee.dev>

* Use ukava for testing staked balance

* Disable minting in community proposal handler test

Previously stake denom is used, which resulted in 0 minted coins

* Update hard APYToSPY test expected value

Increased iterations in sdk.ApproxRoot, updated closer to real value

* Fix NewDecCoinsFromCoins bug in incentive collectDerivativeStakingRewards

* Allow bkava earn incentive test values to match within small margin for rounding

Signed-off-by: drklee3 <derrick@dlee.dev>

* Update invalid denom in issuance message coin validation

Colons are now valid in denoms

Signed-off-by: drklee3 <derrick@dlee.dev>

* Remove genesis validator in incentive delegation tests

* Update pricefeed market test for invalid denom

Signed-off-by: drklee3 <derrick@dlee.dev>

* Update incentive delegator rewards test without genesis validator

Signed-off-by: drklee3 <derrick@dlee.dev>

* Add validator to export test

* Clear bank state in minting tests

Signed-off-by: drklee3 <derrick@dlee.dev>

* Remove validator for no stake tally test

Signed-off-by: drklee3 <derrick@dlee.dev>

* Clear incentive state before InitGenesis in incentive genesis export test

* Update swagger

Signed-off-by: drklee3 <derrick@dlee.dev>

* Update ethermint version to match replaced version

* Remove legacy swagger

* Add NewEthEmitEventDecorator

* Remove redundant func for AddModuleInitFlags

* Remove unused addBankBalanceForAddress func

* Add SetIAVLLazyLoading option to app cmd

* Use legacy.RegisterAminoMsg for committee msg concrete registration

* Remove unnecessary Amino field

* Add evm_util bankkeeper SendCoins comment

* Update test method ResetBankState to DeleteGenesisValidatorCoins to be more clear

* Validate incentive params.RewardsPerSecond to be non-zero

* Validate swap pools to disallow colons in token denoms

* Register all legacy amino types on gov modulecdc

* Remove redundant Comittee interface registration

* Pin goleveldb to v1.0.1-0.20210819022825-2ae1ddf74ef7

Causes failed to load state at height errors

* Update ethermint to new pinned version with minGasPrices parse error fix

* Update cosmos fork dependcy commit to include reverted account constructor patch

* Update Cosmos v0.46.11 and cometbft v0.34.27

* Bump minimum go version to 1.19

* Update tendermint proto

* Update internal testnet genesis

* Move NewCanTransferDecorator before NewEthGasConsumeDecorator

* Add hard borrow store tests (#1514)

* add store tests for Borrow type

* refactor Deposit tests to match

* Fix old bep3 tests (#1515)

* Update Ethermint to 1b17445 to fix duplicate proto registration

* Add custom status command to use snake_case and stdout

* Add SetInflation helper

* Reduce ambiguity with evm CanSignEthTx error

* Remove init genesis validator claim in test

* Add disabled evmante.NewMinGasPriceDecorator with x/feemarket note

* chore: use tagged versions for Cosmos and Ethermint forks

* update kvtool & increase wait for ibc transfer test

---------

Signed-off-by: drklee3 <derrick@dlee.dev>
Co-authored-by: Ruaridh <rhuairahrighairidh@users.noreply.github.com>
Co-authored-by: Robert Pirtle <astropirtle@gmail.com>
2023-04-03 20:08:45 -04:00
Levi Schoen
7bb707b174 add genesis file for internal protocol testnet 2023-04-03 10:04:12 -07:00
Adam Robert Turman
ecafc08409
Evm params to mirror mainnet (#1518)
* evm params to mirror mainnet

* copypasta

* close it out

* cleanup diff
2023-03-27 15:42:26 -05:00
Adam Robert Turman
3d456aa527
add market, incentives, and funds (#1517) 2023-03-27 13:27:09 -05:00
samcode206
03510c3ec4
add e2e whale account for erc20 funding (webapp) (#1516) 2023-03-24 12:02:51 -07:00
Adam Robert Turman
5d5d6a8dc4
remove wBTC and wETH (axelar) from lend money markets (#1507) 2023-03-17 13:39:58 -05:00
samcode206
400e101cba
add End To End Whale account to internal testnet (#1502) 2023-03-15 13:58:40 -07:00
Adam Robert Turman
f069566bbb
Add contract address for axlUSDC (#1501)
* add updated contract address

* add updated contract address
2023-03-15 11:29:18 -05:00
Paul Downing
1cd1b3b84e
update testnet seeding (#1497)
* update testnet seeding

* fix missing syntax

* remove extra commas
2023-03-14 13:38:39 -05:00