mirror of
https://github.com/0glabs/0g-chain.git
synced 2024-12-24 23:35:19 +00:00
(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
This commit is contained in:
parent
3767030005
commit
4d62f47773
@ -39,6 +39,7 @@ Ref: https://keepachangelog.com/en/1.0.0/
|
|||||||
### Features
|
### Features
|
||||||
|
|
||||||
- (cli) [#1785] Add `shard` CLI command to support creating partitions of data for standalone nodes
|
- (cli) [#1785] Add `shard` CLI command to support creating partitions of data for standalone nodes
|
||||||
|
- (cdp) [#1814] Add module param and logic for running x/cdp begin blocker every `n` blocks
|
||||||
- (cli) [#1804] Add `rocksdb compact` command for manual DB compaction of state or blockstore.
|
- (cli) [#1804] Add `rocksdb compact` command for manual DB compaction of state or blockstore.
|
||||||
|
|
||||||
## [v0.25.0]
|
## [v0.25.0]
|
||||||
@ -69,6 +70,7 @@ Ref: https://keepachangelog.com/en/1.0.0/
|
|||||||
## [v0.24.3]
|
## [v0.24.3]
|
||||||
|
|
||||||
### Bug Fixes
|
### Bug Fixes
|
||||||
|
|
||||||
- (deps) [#1770] Bump ledger-cosmos-go to v0.13.1 to resolve signing error with
|
- (deps) [#1770] Bump ledger-cosmos-go to v0.13.1 to resolve signing error with
|
||||||
- (rocksdb) [#1767] Fix resolution of rocksdb database path introduced in v0.24.2
|
- (rocksdb) [#1767] Fix resolution of rocksdb database path introduced in v0.24.2
|
||||||
|
|
||||||
@ -324,7 +326,6 @@ the [changelog](https://github.com/cosmos/cosmos-sdk/blob/v0.38.4/CHANGELOG.md).
|
|||||||
[#1804]: https://github.com/Kava-Labs/kava/pull/1804
|
[#1804]: https://github.com/Kava-Labs/kava/pull/1804
|
||||||
[#1785]: https://github.com/Kava-Labs/kava/pull/1785
|
[#1785]: https://github.com/Kava-Labs/kava/pull/1785
|
||||||
[#1784]: https://github.com/Kava-Labs/kava/pull/1784
|
[#1784]: https://github.com/Kava-Labs/kava/pull/1784
|
||||||
[#1776]: https://github.com/Kava-Labs/kava/pull/1776
|
|
||||||
[#1770]: https://github.com/Kava-Labs/kava/pull/1770
|
[#1770]: https://github.com/Kava-Labs/kava/pull/1770
|
||||||
[#1755]: https://github.com/Kava-Labs/kava/pull/1755
|
[#1755]: https://github.com/Kava-Labs/kava/pull/1755
|
||||||
[#1761]: https://github.com/Kava-Labs/kava/pull/1761
|
[#1761]: https://github.com/Kava-Labs/kava/pull/1761
|
||||||
@ -384,7 +385,6 @@ the [changelog](https://github.com/cosmos/cosmos-sdk/blob/v0.38.4/CHANGELOG.md).
|
|||||||
[v0.24.1]: https://github.com/Kava-Labs/kava/compare/v0.24.1...v0.24.0
|
[v0.24.1]: https://github.com/Kava-Labs/kava/compare/v0.24.1...v0.24.0
|
||||||
[v0.24.0]: https://github.com/Kava-Labs/kava/compare/v0.24.0...v0.23.2
|
[v0.24.0]: https://github.com/Kava-Labs/kava/compare/v0.24.0...v0.23.2
|
||||||
[v0.23.2]: https://github.com/Kava-Labs/kava/compare/v0.23.1...v0.23.2
|
[v0.23.2]: https://github.com/Kava-Labs/kava/compare/v0.23.1...v0.23.2
|
||||||
[v0.23.1]: https://github.com/Kava-Labs/kava/compare/v0.23.0...v0.23.1
|
|
||||||
[v0.23.0]: https://github.com/Kava-Labs/kava/compare/v0.21.1...v0.23.0
|
[v0.23.0]: https://github.com/Kava-Labs/kava/compare/v0.21.1...v0.23.0
|
||||||
[v0.16.1]: https://github.com/Kava-Labs/kava/compare/v0.16.0...v0.16.1
|
[v0.16.1]: https://github.com/Kava-Labs/kava/compare/v0.16.0...v0.16.1
|
||||||
[v0.16.0]: https://github.com/Kava-Labs/kava/compare/v0.15.2...v0.16.0
|
[v0.16.0]: https://github.com/Kava-Labs/kava/compare/v0.15.2...v0.16.0
|
||||||
|
1
Makefile
1
Makefile
@ -330,6 +330,7 @@ start-remote-sims:
|
|||||||
-—container-override environment=[{SIM_NAME=master-$(VERSION)}]
|
-—container-override environment=[{SIM_NAME=master-$(VERSION)}]
|
||||||
|
|
||||||
update-kvtool:
|
update-kvtool:
|
||||||
|
git submodule init || true
|
||||||
git submodule update
|
git submodule update
|
||||||
cd tests/e2e/kvtool && make install
|
cd tests/e2e/kvtool && make install
|
||||||
|
|
||||||
|
1
ci/env/kava-protonet/genesis.json
vendored
1
ci/env/kava-protonet/genesis.json
vendored
@ -837,6 +837,7 @@
|
|||||||
"gov_denom": "ukava",
|
"gov_denom": "ukava",
|
||||||
"params": {
|
"params": {
|
||||||
"circuit_breaker": false,
|
"circuit_breaker": false,
|
||||||
|
"begin_blocker_execution_block_interval": 500,
|
||||||
"collateral_params": [
|
"collateral_params": [
|
||||||
{
|
{
|
||||||
"auction_size": "50000000000",
|
"auction_size": "50000000000",
|
||||||
|
@ -3505,6 +3505,9 @@ paths:
|
|||||||
type: string
|
type: string
|
||||||
circuit_breaker:
|
circuit_breaker:
|
||||||
type: boolean
|
type: boolean
|
||||||
|
begin_blocker_execution_block_interval:
|
||||||
|
type: string
|
||||||
|
format: int64
|
||||||
description: Params defines the parameters for the cdp module.
|
description: Params defines the parameters for the cdp module.
|
||||||
description: >-
|
description: >-
|
||||||
QueryParamsResponse defines the response type for the Query/Params
|
QueryParamsResponse defines the response type for the Query/Params
|
||||||
@ -51628,6 +51631,9 @@ definitions:
|
|||||||
type: string
|
type: string
|
||||||
circuit_breaker:
|
circuit_breaker:
|
||||||
type: boolean
|
type: boolean
|
||||||
|
begin_blocker_execution_block_interval:
|
||||||
|
type: string
|
||||||
|
format: int64
|
||||||
description: Params defines the parameters for the cdp module.
|
description: Params defines the parameters for the cdp module.
|
||||||
kava.cdp.v1beta1.QueryAccountsResponse:
|
kava.cdp.v1beta1.QueryAccountsResponse:
|
||||||
type: object
|
type: object
|
||||||
@ -52161,6 +52167,9 @@ definitions:
|
|||||||
type: string
|
type: string
|
||||||
circuit_breaker:
|
circuit_breaker:
|
||||||
type: boolean
|
type: boolean
|
||||||
|
begin_blocker_execution_block_interval:
|
||||||
|
type: string
|
||||||
|
format: int64
|
||||||
description: Params defines the parameters for the cdp module.
|
description: Params defines the parameters for the cdp module.
|
||||||
description: >-
|
description: >-
|
||||||
QueryParamsResponse defines the response type for the Query/Params RPC
|
QueryParamsResponse defines the response type for the Query/Params RPC
|
||||||
|
@ -38,10 +38,10 @@ Then restart the service with the updated settings
|
|||||||
|
|
||||||
## Running local prometheus collector and grafana services
|
## Running local prometheus collector and grafana services
|
||||||
|
|
||||||
To collect app metrics and visualize them locally, you can run the prometheus collector and grafana services with docker compose from the repo root directory
|
To collect app metrics and visualize them locally, you can run the prometheus collector and grafana services with docker compose from the repo root directory (after updating `config.toml` and `app.toml` as detailed above)
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker compose -f prometheus.docker-compose.yml
|
docker compose -f prometheus.docker-compose.yml up
|
||||||
```
|
```
|
||||||
|
|
||||||
Navigate to localhost:3000 to view the grafana unix
|
Navigate to localhost:3000 to view the grafana unix
|
||||||
@ -54,13 +54,13 @@ See [grafana docs](https://grafana.com/docs/grafana/latest/dashboards/) for info
|
|||||||
|
|
||||||
### Collecting from local host
|
### Collecting from local host
|
||||||
|
|
||||||
Update [prometheus config](../prometheus.yml) to collect metrics from your local source
|
Update [prometheus config](../prometheus.yml) to collect metrics from your local source, where the port matches the value set for `config.toml/instrumentation.prometheus_listen_addr`
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
metrics_path: /
|
metrics_path: /
|
||||||
static_configs:
|
static_configs:
|
||||||
- targets:
|
- targets:
|
||||||
- localhost:8888
|
- docker-host:8888
|
||||||
```
|
```
|
||||||
|
|
||||||
### Collecting from remote host
|
### Collecting from remote host
|
||||||
|
@ -1681,6 +1681,7 @@ Params defines the parameters for the cdp module.
|
|||||||
| `debt_auction_threshold` | [string](#string) | | |
|
| `debt_auction_threshold` | [string](#string) | | |
|
||||||
| `debt_auction_lot` | [string](#string) | | |
|
| `debt_auction_lot` | [string](#string) | | |
|
||||||
| `circuit_breaker` | [bool](#bool) | | |
|
| `circuit_breaker` | [bool](#bool) | | |
|
||||||
|
| `begin_blocker_execution_block_interval` | [int64](#int64) | | |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -34,3 +34,10 @@ services:
|
|||||||
- 9090
|
- 9090
|
||||||
networks:
|
networks:
|
||||||
- monitoring
|
- monitoring
|
||||||
|
docker-host:
|
||||||
|
image: qoomon/docker-host
|
||||||
|
cap_add: [ 'NET_ADMIN', 'NET_RAW' ]
|
||||||
|
mem_limit: 8M
|
||||||
|
restart: on-failure
|
||||||
|
networks:
|
||||||
|
- monitoring
|
||||||
|
@ -3,8 +3,7 @@ global:
|
|||||||
evaluation_interval: 15s
|
evaluation_interval: 15s
|
||||||
scrape_configs:
|
scrape_configs:
|
||||||
- job_name: proxy
|
- job_name: proxy
|
||||||
scheme: https
|
|
||||||
metrics_path: /
|
metrics_path: /
|
||||||
static_configs:
|
static_configs:
|
||||||
- targets:
|
- targets:
|
||||||
- 4efb-18-207-102-158.ngrok-free.app
|
- docker-host:8888
|
||||||
|
@ -66,6 +66,8 @@ message Params {
|
|||||||
(gogoproto.nullable) = false
|
(gogoproto.nullable) = false
|
||||||
];
|
];
|
||||||
bool circuit_breaker = 8;
|
bool circuit_breaker = 8;
|
||||||
|
|
||||||
|
int64 begin_blocker_execution_block_interval = 9;
|
||||||
}
|
}
|
||||||
|
|
||||||
// DebtParam defines governance params for debt assets
|
// DebtParam defines governance params for debt assets
|
||||||
|
@ -1 +1 @@
|
|||||||
Subproject commit e1085562d203fd81c5dd8576170b29715b2de9ef
|
Subproject commit b9669f6a5d16658ffe8ea667b688fb174e656f43
|
@ -20,6 +20,16 @@ func BeginBlocker(ctx sdk.Context, req abci.RequestBeginBlock, k keeper.Keeper)
|
|||||||
|
|
||||||
params := k.GetParams(ctx)
|
params := k.GetParams(ctx)
|
||||||
|
|
||||||
|
// only run CDP Begin Blocker every `BeginBlockerExecutionBlockInterval` blocks
|
||||||
|
blockHeight := ctx.BlockHeight()
|
||||||
|
|
||||||
|
if blockHeight%params.BeginBlockerExecutionBlockInterval != 0 {
|
||||||
|
ctx.Logger().Info("skipping x/cdp begin blocker")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
ctx.Logger().Debug("running x/cdp begin blocker")
|
||||||
|
|
||||||
for _, cp := range params.CollateralParams {
|
for _, cp := range params.CollateralParams {
|
||||||
ok := k.UpdatePricefeedStatus(ctx, cp.SpotMarketID)
|
ok := k.UpdatePricefeedStatus(ctx, cp.SpotMarketID)
|
||||||
if !ok {
|
if !ok {
|
||||||
|
@ -205,11 +205,12 @@ func (suite *GenesisTestSuite) Test_InitExportGenesis() {
|
|||||||
|
|
||||||
cdpGenesis := types.GenesisState{
|
cdpGenesis := types.GenesisState{
|
||||||
Params: types.Params{
|
Params: types.Params{
|
||||||
GlobalDebtLimit: sdk.NewInt64Coin("usdx", 1000000000000),
|
GlobalDebtLimit: sdk.NewInt64Coin("usdx", 1000000000000),
|
||||||
SurplusAuctionThreshold: types.DefaultSurplusThreshold,
|
SurplusAuctionThreshold: types.DefaultSurplusThreshold,
|
||||||
SurplusAuctionLot: types.DefaultSurplusLot,
|
SurplusAuctionLot: types.DefaultSurplusLot,
|
||||||
DebtAuctionThreshold: types.DefaultDebtThreshold,
|
DebtAuctionThreshold: types.DefaultDebtThreshold,
|
||||||
DebtAuctionLot: types.DefaultDebtLot,
|
DebtAuctionLot: types.DefaultDebtLot,
|
||||||
|
BeginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
CollateralParams: types.CollateralParams{
|
CollateralParams: types.CollateralParams{
|
||||||
{
|
{
|
||||||
Denom: "xrp",
|
Denom: "xrp",
|
||||||
|
@ -113,11 +113,12 @@ func NewPricefeedGenStateMulti(cdc codec.JSONCodec) app.GenesisState {
|
|||||||
func NewCDPGenStateMulti(cdc codec.JSONCodec) app.GenesisState {
|
func NewCDPGenStateMulti(cdc codec.JSONCodec) app.GenesisState {
|
||||||
cdpGenesis := types.GenesisState{
|
cdpGenesis := types.GenesisState{
|
||||||
Params: types.Params{
|
Params: types.Params{
|
||||||
GlobalDebtLimit: sdk.NewInt64Coin("usdx", 1000000000000),
|
GlobalDebtLimit: sdk.NewInt64Coin("usdx", 1000000000000),
|
||||||
SurplusAuctionThreshold: types.DefaultSurplusThreshold,
|
SurplusAuctionThreshold: types.DefaultSurplusThreshold,
|
||||||
SurplusAuctionLot: types.DefaultSurplusLot,
|
SurplusAuctionLot: types.DefaultSurplusLot,
|
||||||
DebtAuctionThreshold: types.DefaultDebtThreshold,
|
DebtAuctionThreshold: types.DefaultDebtThreshold,
|
||||||
DebtAuctionLot: types.DefaultDebtLot,
|
DebtAuctionLot: types.DefaultDebtLot,
|
||||||
|
BeginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
CollateralParams: types.CollateralParams{
|
CollateralParams: types.CollateralParams{
|
||||||
{
|
{
|
||||||
Denom: "xrp",
|
Denom: "xrp",
|
||||||
|
@ -47,6 +47,7 @@ func NewCDPGenState(cdc codec.JSONCodec, asset string, liquidationRatio sdk.Dec)
|
|||||||
SurplusAuctionLot: types.DefaultSurplusLot,
|
SurplusAuctionLot: types.DefaultSurplusLot,
|
||||||
DebtAuctionThreshold: types.DefaultDebtThreshold,
|
DebtAuctionThreshold: types.DefaultDebtThreshold,
|
||||||
DebtAuctionLot: types.DefaultDebtLot,
|
DebtAuctionLot: types.DefaultDebtLot,
|
||||||
|
BeginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
CollateralParams: types.CollateralParams{
|
CollateralParams: types.CollateralParams{
|
||||||
{
|
{
|
||||||
Denom: asset,
|
Denom: asset,
|
||||||
@ -155,11 +156,12 @@ func NewPricefeedGenStateMulti(cdc codec.JSONCodec) app.GenesisState {
|
|||||||
func NewCDPGenStateMulti(cdc codec.JSONCodec) app.GenesisState {
|
func NewCDPGenStateMulti(cdc codec.JSONCodec) app.GenesisState {
|
||||||
cdpGenesis := types.GenesisState{
|
cdpGenesis := types.GenesisState{
|
||||||
Params: types.Params{
|
Params: types.Params{
|
||||||
GlobalDebtLimit: sdk.NewInt64Coin("usdx", 2000000000000),
|
GlobalDebtLimit: sdk.NewInt64Coin("usdx", 2000000000000),
|
||||||
SurplusAuctionThreshold: types.DefaultSurplusThreshold,
|
SurplusAuctionThreshold: types.DefaultSurplusThreshold,
|
||||||
SurplusAuctionLot: types.DefaultSurplusLot,
|
SurplusAuctionLot: types.DefaultSurplusLot,
|
||||||
DebtAuctionThreshold: types.DefaultDebtThreshold,
|
DebtAuctionThreshold: types.DefaultDebtThreshold,
|
||||||
DebtAuctionLot: types.DefaultDebtLot,
|
DebtAuctionLot: types.DefaultDebtLot,
|
||||||
|
BeginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
CollateralParams: types.CollateralParams{
|
CollateralParams: types.CollateralParams{
|
||||||
{
|
{
|
||||||
Denom: "xrp",
|
Denom: "xrp",
|
||||||
@ -253,6 +255,7 @@ func NewCDPGenStateHighDebtLimit(cdc codec.JSONCodec) app.GenesisState {
|
|||||||
SurplusAuctionLot: types.DefaultSurplusLot,
|
SurplusAuctionLot: types.DefaultSurplusLot,
|
||||||
DebtAuctionThreshold: types.DefaultDebtThreshold,
|
DebtAuctionThreshold: types.DefaultDebtThreshold,
|
||||||
DebtAuctionLot: types.DefaultDebtLot,
|
DebtAuctionLot: types.DefaultDebtLot,
|
||||||
|
BeginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
CollateralParams: types.CollateralParams{
|
CollateralParams: types.CollateralParams{
|
||||||
{
|
{
|
||||||
Denom: "xrp",
|
Denom: "xrp",
|
||||||
|
@ -33,12 +33,13 @@ func migrateParams(params v015cdp.Params) v016cdp.Params {
|
|||||||
ConversionFactor: params.DebtParam.ConversionFactor,
|
ConversionFactor: params.DebtParam.ConversionFactor,
|
||||||
DebtFloor: params.DebtParam.DebtFloor,
|
DebtFloor: params.DebtParam.DebtFloor,
|
||||||
},
|
},
|
||||||
GlobalDebtLimit: params.GlobalDebtLimit,
|
GlobalDebtLimit: params.GlobalDebtLimit,
|
||||||
SurplusAuctionThreshold: params.SurplusAuctionThreshold,
|
SurplusAuctionThreshold: params.SurplusAuctionThreshold,
|
||||||
SurplusAuctionLot: params.SurplusAuctionLot,
|
SurplusAuctionLot: params.SurplusAuctionLot,
|
||||||
DebtAuctionThreshold: params.DebtAuctionThreshold,
|
DebtAuctionThreshold: params.DebtAuctionThreshold,
|
||||||
DebtAuctionLot: params.DebtAuctionLot,
|
DebtAuctionLot: params.DebtAuctionLot,
|
||||||
CircuitBreaker: params.CircuitBreaker,
|
CircuitBreaker: params.CircuitBreaker,
|
||||||
|
BeginBlockerExecutionBlockInterval: v016cdp.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -163,11 +163,12 @@ func (s *migrateTestSuite) TestMigrate_GenState() {
|
|||||||
ConversionFactor: sdkmath.NewInt(6),
|
ConversionFactor: sdkmath.NewInt(6),
|
||||||
DebtFloor: sdkmath.NewInt(100),
|
DebtFloor: sdkmath.NewInt(100),
|
||||||
},
|
},
|
||||||
GlobalDebtLimit: sdk.NewInt64Coin("usdx", 1000000000000),
|
GlobalDebtLimit: sdk.NewInt64Coin("usdx", 1000000000000),
|
||||||
SurplusAuctionThreshold: sdkmath.NewInt(6),
|
SurplusAuctionThreshold: sdkmath.NewInt(6),
|
||||||
SurplusAuctionLot: sdkmath.NewInt(7),
|
SurplusAuctionLot: sdkmath.NewInt(7),
|
||||||
DebtAuctionThreshold: sdkmath.NewInt(8),
|
DebtAuctionThreshold: sdkmath.NewInt(8),
|
||||||
DebtAuctionLot: sdkmath.NewInt(9),
|
DebtAuctionLot: sdkmath.NewInt(9),
|
||||||
|
BeginBlockerExecutionBlockInterval: v016cdp.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
CDPs: v016cdp.CDPs{
|
CDPs: v016cdp.CDPs{
|
||||||
{
|
{
|
||||||
|
63
x/cdp/legacy/v0_16/testdata/v16-cdp.json
vendored
63
x/cdp/legacy/v0_16/testdata/v16-cdp.json
vendored
@ -5,7 +5,10 @@
|
|||||||
"denom": "bnb",
|
"denom": "bnb",
|
||||||
"type": "bnb-a",
|
"type": "bnb-a",
|
||||||
"liquidation_ratio": "1.500000000000000000",
|
"liquidation_ratio": "1.500000000000000000",
|
||||||
"debt_limit": { "denom": "usdx", "amount": "20000000000000" },
|
"debt_limit": {
|
||||||
|
"denom": "usdx",
|
||||||
|
"amount": "20000000000000"
|
||||||
|
},
|
||||||
"stability_fee": "1.000000000782997700",
|
"stability_fee": "1.000000000782997700",
|
||||||
"auction_size": "50000000000",
|
"auction_size": "50000000000",
|
||||||
"liquidation_penalty": "0.050000000000000000",
|
"liquidation_penalty": "0.050000000000000000",
|
||||||
@ -19,7 +22,10 @@
|
|||||||
"denom": "hbtc",
|
"denom": "hbtc",
|
||||||
"type": "hbtc-a",
|
"type": "hbtc-a",
|
||||||
"liquidation_ratio": "1.500000000000000000",
|
"liquidation_ratio": "1.500000000000000000",
|
||||||
"debt_limit": { "denom": "usdx", "amount": "10000000000000" },
|
"debt_limit": {
|
||||||
|
"denom": "usdx",
|
||||||
|
"amount": "10000000000000"
|
||||||
|
},
|
||||||
"stability_fee": "1.000000001547125958",
|
"stability_fee": "1.000000001547125958",
|
||||||
"auction_size": "1000000000000",
|
"auction_size": "1000000000000",
|
||||||
"liquidation_penalty": "0.075000000000000000",
|
"liquidation_penalty": "0.075000000000000000",
|
||||||
@ -36,21 +42,34 @@
|
|||||||
"conversion_factor": "6",
|
"conversion_factor": "6",
|
||||||
"debt_floor": "10000000"
|
"debt_floor": "10000000"
|
||||||
},
|
},
|
||||||
"global_debt_limit": { "denom": "usdx", "amount": "43000000000000" },
|
"global_debt_limit": {
|
||||||
|
"denom": "usdx",
|
||||||
|
"amount": "43000000000000"
|
||||||
|
},
|
||||||
"surplus_auction_threshold": "500000000000",
|
"surplus_auction_threshold": "500000000000",
|
||||||
"surplus_auction_lot": "10000000000",
|
"surplus_auction_lot": "10000000000",
|
||||||
"debt_auction_threshold": "100000000000",
|
"debt_auction_threshold": "100000000000",
|
||||||
"debt_auction_lot": "10000000000",
|
"debt_auction_lot": "10000000000",
|
||||||
"circuit_breaker": false
|
"circuit_breaker": false,
|
||||||
|
"begin_blocker_execution_block_interval": "1"
|
||||||
},
|
},
|
||||||
"cdps": [
|
"cdps": [
|
||||||
{
|
{
|
||||||
"id": "19",
|
"id": "19",
|
||||||
"owner": "kava1u4p6a2yse66ewfndw4j7ppsa777vdcex3m4n9s",
|
"owner": "kava1u4p6a2yse66ewfndw4j7ppsa777vdcex3m4n9s",
|
||||||
"type": "bnb-a",
|
"type": "bnb-a",
|
||||||
"collateral": { "denom": "bnb", "amount": "40911876" },
|
"collateral": {
|
||||||
"principal": { "denom": "usdx", "amount": "10016831" },
|
"denom": "bnb",
|
||||||
"accumulated_fees": { "denom": "usdx", "amount": "36088" },
|
"amount": "40911876"
|
||||||
|
},
|
||||||
|
"principal": {
|
||||||
|
"denom": "usdx",
|
||||||
|
"amount": "10016831"
|
||||||
|
},
|
||||||
|
"accumulated_fees": {
|
||||||
|
"denom": "usdx",
|
||||||
|
"amount": "36088"
|
||||||
|
},
|
||||||
"fees_updated": "2021-11-05T21:13:12.856088470Z",
|
"fees_updated": "2021-11-05T21:13:12.856088470Z",
|
||||||
"interest_factor": "1.002881426571765716"
|
"interest_factor": "1.002881426571765716"
|
||||||
},
|
},
|
||||||
@ -58,9 +77,18 @@
|
|||||||
"id": "22",
|
"id": "22",
|
||||||
"owner": "kava1e8xjfylam4nvugcmkxwvuxh22uvvad5vknu4yh",
|
"owner": "kava1e8xjfylam4nvugcmkxwvuxh22uvvad5vknu4yh",
|
||||||
"type": "bnb-a",
|
"type": "bnb-a",
|
||||||
"collateral": { "denom": "bnb", "amount": "88268546" },
|
"collateral": {
|
||||||
"principal": { "denom": "usdx", "amount": "10000000" },
|
"denom": "bnb",
|
||||||
"accumulated_fees": { "denom": "usdx", "amount": "156662" },
|
"amount": "88268546"
|
||||||
|
},
|
||||||
|
"principal": {
|
||||||
|
"denom": "usdx",
|
||||||
|
"amount": "10000000"
|
||||||
|
},
|
||||||
|
"accumulated_fees": {
|
||||||
|
"denom": "usdx",
|
||||||
|
"amount": "156662"
|
||||||
|
},
|
||||||
"fees_updated": "2021-11-05T21:13:12.856088470Z",
|
"fees_updated": "2021-11-05T21:13:12.856088470Z",
|
||||||
"interest_factor": "1.002881426571765716"
|
"interest_factor": "1.002881426571765716"
|
||||||
}
|
}
|
||||||
@ -69,12 +97,18 @@
|
|||||||
{
|
{
|
||||||
"cdp_id": "19",
|
"cdp_id": "19",
|
||||||
"depositor": "kava1u4p6a2yse66ewfndw4j7ppsa777vdcex3m4n9s",
|
"depositor": "kava1u4p6a2yse66ewfndw4j7ppsa777vdcex3m4n9s",
|
||||||
"amount": { "denom": "bnb", "amount": "40911876" }
|
"amount": {
|
||||||
|
"denom": "bnb",
|
||||||
|
"amount": "40911876"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cdp_id": "22",
|
"cdp_id": "22",
|
||||||
"depositor": "kava1e8xjfylam4nvugcmkxwvuxh22uvvad5vknu4yh",
|
"depositor": "kava1e8xjfylam4nvugcmkxwvuxh22uvvad5vknu4yh",
|
||||||
"amount": { "denom": "bnb", "amount": "88268546" }
|
"amount": {
|
||||||
|
"denom": "bnb",
|
||||||
|
"amount": "88268546"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"starting_cdp_id": "1",
|
"starting_cdp_id": "1",
|
||||||
@ -88,6 +122,9 @@
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
"total_principals": [
|
"total_principals": [
|
||||||
{ "collateral_type": "bnb-a", "total_principal": "9285009581820" }
|
{
|
||||||
|
"collateral_type": "bnb-a",
|
||||||
|
"total_principal": "9285009581820"
|
||||||
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -134,14 +134,15 @@ func (m *GenesisState) GetTotalPrincipals() GenesisTotalPrincipals {
|
|||||||
|
|
||||||
// Params defines the parameters for the cdp module.
|
// Params defines the parameters for the cdp module.
|
||||||
type Params struct {
|
type Params struct {
|
||||||
CollateralParams CollateralParams `protobuf:"bytes,1,rep,name=collateral_params,json=collateralParams,proto3,castrepeated=CollateralParams" json:"collateral_params"`
|
CollateralParams CollateralParams `protobuf:"bytes,1,rep,name=collateral_params,json=collateralParams,proto3,castrepeated=CollateralParams" json:"collateral_params"`
|
||||||
DebtParam DebtParam `protobuf:"bytes,2,opt,name=debt_param,json=debtParam,proto3" json:"debt_param"`
|
DebtParam DebtParam `protobuf:"bytes,2,opt,name=debt_param,json=debtParam,proto3" json:"debt_param"`
|
||||||
GlobalDebtLimit types.Coin `protobuf:"bytes,3,opt,name=global_debt_limit,json=globalDebtLimit,proto3" json:"global_debt_limit"`
|
GlobalDebtLimit types.Coin `protobuf:"bytes,3,opt,name=global_debt_limit,json=globalDebtLimit,proto3" json:"global_debt_limit"`
|
||||||
SurplusAuctionThreshold github_com_cosmos_cosmos_sdk_types.Int `protobuf:"bytes,4,opt,name=surplus_auction_threshold,json=surplusAuctionThreshold,proto3,customtype=github.com/cosmos/cosmos-sdk/types.Int" json:"surplus_auction_threshold"`
|
SurplusAuctionThreshold github_com_cosmos_cosmos_sdk_types.Int `protobuf:"bytes,4,opt,name=surplus_auction_threshold,json=surplusAuctionThreshold,proto3,customtype=github.com/cosmos/cosmos-sdk/types.Int" json:"surplus_auction_threshold"`
|
||||||
SurplusAuctionLot github_com_cosmos_cosmos_sdk_types.Int `protobuf:"bytes,5,opt,name=surplus_auction_lot,json=surplusAuctionLot,proto3,customtype=github.com/cosmos/cosmos-sdk/types.Int" json:"surplus_auction_lot"`
|
SurplusAuctionLot github_com_cosmos_cosmos_sdk_types.Int `protobuf:"bytes,5,opt,name=surplus_auction_lot,json=surplusAuctionLot,proto3,customtype=github.com/cosmos/cosmos-sdk/types.Int" json:"surplus_auction_lot"`
|
||||||
DebtAuctionThreshold github_com_cosmos_cosmos_sdk_types.Int `protobuf:"bytes,6,opt,name=debt_auction_threshold,json=debtAuctionThreshold,proto3,customtype=github.com/cosmos/cosmos-sdk/types.Int" json:"debt_auction_threshold"`
|
DebtAuctionThreshold github_com_cosmos_cosmos_sdk_types.Int `protobuf:"bytes,6,opt,name=debt_auction_threshold,json=debtAuctionThreshold,proto3,customtype=github.com/cosmos/cosmos-sdk/types.Int" json:"debt_auction_threshold"`
|
||||||
DebtAuctionLot github_com_cosmos_cosmos_sdk_types.Int `protobuf:"bytes,7,opt,name=debt_auction_lot,json=debtAuctionLot,proto3,customtype=github.com/cosmos/cosmos-sdk/types.Int" json:"debt_auction_lot"`
|
DebtAuctionLot github_com_cosmos_cosmos_sdk_types.Int `protobuf:"bytes,7,opt,name=debt_auction_lot,json=debtAuctionLot,proto3,customtype=github.com/cosmos/cosmos-sdk/types.Int" json:"debt_auction_lot"`
|
||||||
CircuitBreaker bool `protobuf:"varint,8,opt,name=circuit_breaker,json=circuitBreaker,proto3" json:"circuit_breaker,omitempty"`
|
CircuitBreaker bool `protobuf:"varint,8,opt,name=circuit_breaker,json=circuitBreaker,proto3" json:"circuit_breaker,omitempty"`
|
||||||
|
BeginBlockerExecutionBlockInterval int64 `protobuf:"varint,9,opt,name=begin_blocker_execution_block_interval,json=beginBlockerExecutionBlockInterval,proto3" json:"begin_blocker_execution_block_interval,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
func (m *Params) Reset() { *m = Params{} }
|
func (m *Params) Reset() { *m = Params{} }
|
||||||
@ -205,6 +206,13 @@ func (m *Params) GetCircuitBreaker() bool {
|
|||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *Params) GetBeginBlockerExecutionBlockInterval() int64 {
|
||||||
|
if m != nil {
|
||||||
|
return m.BeginBlockerExecutionBlockInterval
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
// DebtParam defines governance params for debt assets
|
// DebtParam defines governance params for debt assets
|
||||||
type DebtParam struct {
|
type DebtParam struct {
|
||||||
Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"`
|
Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"`
|
||||||
@ -456,81 +464,84 @@ func init() {
|
|||||||
func init() { proto.RegisterFile("kava/cdp/v1beta1/genesis.proto", fileDescriptor_e4494a90aaab0034) }
|
func init() { proto.RegisterFile("kava/cdp/v1beta1/genesis.proto", fileDescriptor_e4494a90aaab0034) }
|
||||||
|
|
||||||
var fileDescriptor_e4494a90aaab0034 = []byte{
|
var fileDescriptor_e4494a90aaab0034 = []byte{
|
||||||
// 1179 bytes of a gzipped FileDescriptorProto
|
// 1223 bytes of a gzipped FileDescriptorProto
|
||||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x57, 0xcd, 0x6e, 0x1b, 0x37,
|
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x57, 0x4f, 0x6f, 0x1b, 0x45,
|
||||||
0x10, 0xf6, 0x3a, 0x8a, 0x23, 0xd1, 0x8a, 0x24, 0x33, 0x4e, 0xb2, 0x76, 0x50, 0x49, 0x75, 0xd1,
|
0x14, 0xcf, 0x26, 0x6e, 0x6a, 0x4f, 0xd2, 0xd8, 0x99, 0xa6, 0xed, 0x26, 0x15, 0xb6, 0x09, 0xa2,
|
||||||
0xc6, 0x3d, 0x58, 0x42, 0x52, 0x20, 0x40, 0x81, 0xa2, 0xa9, 0x65, 0xc1, 0x81, 0x11, 0x17, 0x10,
|
0x0d, 0x87, 0xda, 0x6a, 0x91, 0x2a, 0x21, 0x21, 0x4a, 0x1d, 0xd3, 0x2a, 0x6a, 0x91, 0xa2, 0x4d,
|
||||||
0xd6, 0x3e, 0xb5, 0x87, 0x05, 0x97, 0x4b, 0xc9, 0x84, 0x56, 0xcb, 0x2d, 0x49, 0xa9, 0xb6, 0x5f,
|
0x4e, 0x70, 0x58, 0xcd, 0xce, 0xbe, 0x6c, 0x46, 0x5e, 0xef, 0x2c, 0x33, 0x63, 0x93, 0xf6, 0x2b,
|
||||||
0xa1, 0x28, 0x1a, 0xf4, 0x25, 0x0a, 0xe4, 0xdc, 0x87, 0x48, 0x6f, 0x41, 0x4f, 0x45, 0x0f, 0x72,
|
0x20, 0x44, 0xc5, 0x97, 0x40, 0xea, 0x99, 0x4f, 0xc0, 0xa9, 0xdc, 0x2a, 0x4e, 0x88, 0x43, 0x8a,
|
||||||
0x21, 0xdf, 0xfb, 0x0c, 0x05, 0x7f, 0xf4, 0x63, 0xc9, 0x02, 0x02, 0x5b, 0xbd, 0x58, 0xcb, 0x19,
|
0xdc, 0x2f, 0x82, 0xe6, 0x8f, 0xff, 0xc4, 0x4e, 0xa4, 0x2a, 0x09, 0x97, 0x78, 0xe7, 0xfd, 0xf9,
|
||||||
0xce, 0xf7, 0xcd, 0x90, 0x33, 0xc3, 0x31, 0x28, 0xb6, 0x51, 0x0f, 0x55, 0x71, 0x98, 0x54, 0x7b,
|
0xbd, 0x3f, 0xf3, 0xde, 0x9b, 0x17, 0x54, 0xed, 0x90, 0x3e, 0x69, 0xd2, 0x38, 0x6f, 0xf6, 0xef,
|
||||||
0xcf, 0x02, 0x22, 0xd1, 0xb3, 0x6a, 0x8b, 0xc4, 0x44, 0x50, 0x51, 0x49, 0x38, 0x93, 0x0c, 0x16,
|
0x47, 0xa0, 0xc8, 0xfd, 0x66, 0x02, 0x19, 0x48, 0x26, 0x1b, 0xb9, 0xe0, 0x8a, 0xe3, 0x8a, 0xe6,
|
||||||
0x94, 0xbe, 0x82, 0xc3, 0xa4, 0x62, 0xf5, 0x9b, 0x45, 0xcc, 0x44, 0x87, 0x89, 0x6a, 0x80, 0x04,
|
0x37, 0x68, 0x9c, 0x37, 0x1c, 0x7f, 0xa3, 0x4a, 0xb9, 0xec, 0x72, 0xd9, 0x8c, 0x88, 0x84, 0x91,
|
||||||
0x19, 0x19, 0x61, 0x46, 0x63, 0x63, 0xb1, 0xb9, 0x61, 0xf4, 0xbe, 0x5e, 0x55, 0xcd, 0xc2, 0xaa,
|
0x12, 0xe5, 0x2c, 0xb3, 0x1a, 0x1b, 0xeb, 0x96, 0x1f, 0x9a, 0x53, 0xd3, 0x1e, 0x1c, 0x6b, 0x2d,
|
||||||
0xd6, 0x5b, 0xac, 0xc5, 0x8c, 0x5c, 0x7d, 0x59, 0x69, 0xa9, 0xc5, 0x58, 0x2b, 0x22, 0x55, 0xbd,
|
0xe1, 0x09, 0xb7, 0x74, 0xfd, 0xe5, 0xa8, 0xb5, 0x84, 0xf3, 0x24, 0x85, 0xa6, 0x39, 0x45, 0xbd,
|
||||||
0x0a, 0xba, 0xcd, 0xaa, 0xa4, 0x1d, 0x22, 0x24, 0xea, 0x24, 0x76, 0xc3, 0xe6, 0x8c, 0x8f, 0xca,
|
0x83, 0xa6, 0x62, 0x5d, 0x90, 0x8a, 0x74, 0x73, 0x27, 0xb0, 0x31, 0xe3, 0xa3, 0xf6, 0xc7, 0xf0,
|
||||||
0x1f, 0xad, 0xdb, 0xfa, 0x23, 0x05, 0xb2, 0xaf, 0x8c, 0xc7, 0x47, 0x12, 0x49, 0x02, 0x5f, 0x80,
|
0x36, 0xff, 0x2c, 0xa0, 0xe5, 0xa7, 0xd6, 0xe3, 0x3d, 0x45, 0x14, 0xe0, 0x87, 0x68, 0x31, 0x27,
|
||||||
0x95, 0x04, 0x71, 0xd4, 0x11, 0xae, 0x53, 0x76, 0xb6, 0x57, 0x9f, 0xbb, 0x95, 0xe9, 0x08, 0x2a,
|
0x82, 0x74, 0xa5, 0xef, 0xd5, 0xbd, 0xad, 0xa5, 0x07, 0x7e, 0x63, 0x3a, 0x82, 0xc6, 0xae, 0xe1,
|
||||||
0x0d, 0xad, 0xaf, 0xa5, 0xde, 0xf5, 0x4b, 0x4b, 0x9e, 0xdd, 0x0d, 0x5f, 0x82, 0x14, 0x0e, 0x13,
|
0xb7, 0x0a, 0x6f, 0x8e, 0x6b, 0x73, 0x81, 0x93, 0xc6, 0x8f, 0x50, 0x81, 0xc6, 0xb9, 0xf4, 0xe7,
|
||||||
0xe1, 0x2e, 0x97, 0xef, 0x6c, 0xaf, 0x3e, 0x7f, 0x38, 0x6b, 0xb5, 0x57, 0x6f, 0xd4, 0xd6, 0x95,
|
0xeb, 0x0b, 0x5b, 0x4b, 0x0f, 0x6e, 0xcc, 0x6a, 0x6d, 0xb7, 0x77, 0x5b, 0x6b, 0x5a, 0x65, 0x70,
|
||||||
0xc9, 0xa0, 0x5f, 0x4a, 0xed, 0xd5, 0x1b, 0xe2, 0xed, 0x85, 0xf9, 0xf5, 0xb4, 0x21, 0x7c, 0x05,
|
0x5c, 0x2b, 0x6c, 0xb7, 0x77, 0xe5, 0xeb, 0x77, 0xf6, 0x37, 0x30, 0x8a, 0xf8, 0x29, 0x2a, 0xc6,
|
||||||
0xd2, 0x21, 0x49, 0x98, 0xa0, 0x52, 0xb8, 0x77, 0x34, 0xc8, 0xc6, 0x2c, 0x48, 0xdd, 0xec, 0xa8,
|
0x90, 0x73, 0xc9, 0x94, 0xf4, 0x17, 0x0c, 0xc8, 0xfa, 0x2c, 0x48, 0xdb, 0x4a, 0xb4, 0x2a, 0x1a,
|
||||||
0x15, 0x14, 0xd0, 0xdb, 0x8b, 0x52, 0xda, 0x0a, 0x84, 0x37, 0x32, 0x86, 0x5f, 0x82, 0xbc, 0x90,
|
0xe8, 0xf5, 0xbb, 0x5a, 0xd1, 0x11, 0x64, 0x30, 0x52, 0xc6, 0x5f, 0xa0, 0xb2, 0x54, 0x44, 0x28,
|
||||||
0x88, 0x4b, 0x1a, 0xb7, 0x7c, 0x1c, 0x26, 0x3e, 0x0d, 0xdd, 0x54, 0xd9, 0xd9, 0x4e, 0xd5, 0xd6,
|
0x96, 0x25, 0x21, 0x8d, 0xf3, 0x90, 0xc5, 0x7e, 0xa1, 0xee, 0x6d, 0x15, 0x5a, 0xab, 0x83, 0xe3,
|
||||||
0x06, 0xfd, 0xd2, 0xfd, 0x23, 0xab, 0xda, 0x0b, 0x93, 0x83, 0xba, 0x77, 0x5f, 0x4c, 0x2c, 0x43,
|
0xda, 0xb5, 0x3d, 0xc7, 0xda, 0x8e, 0xf3, 0x9d, 0x76, 0x70, 0x4d, 0x4e, 0x1c, 0x63, 0xfc, 0x11,
|
||||||
0xf8, 0x11, 0x00, 0x21, 0x09, 0xa4, 0x1f, 0x92, 0x98, 0x75, 0xdc, 0xbb, 0x65, 0x67, 0x3b, 0xe3,
|
0x42, 0x31, 0x44, 0x2a, 0x8c, 0x21, 0xe3, 0x5d, 0xff, 0x4a, 0xdd, 0xdb, 0x2a, 0x05, 0x25, 0x4d,
|
||||||
0x65, 0x94, 0xa4, 0xae, 0x04, 0xf0, 0x09, 0xc8, 0xb4, 0x58, 0xcf, 0x6a, 0x57, 0xb4, 0x36, 0xdd,
|
0x69, 0x6b, 0x02, 0xbe, 0x8d, 0x4a, 0x09, 0xef, 0x3b, 0xee, 0xa2, 0xe1, 0x16, 0x13, 0xde, 0xb7,
|
||||||
0x62, 0x3d, 0xa3, 0xfc, 0xc9, 0x01, 0x4f, 0x12, 0x4e, 0x7a, 0x94, 0x75, 0x85, 0x8f, 0x30, 0xee,
|
0xcc, 0x9f, 0x3c, 0x74, 0x3b, 0x17, 0xd0, 0x67, 0xbc, 0x27, 0x43, 0x42, 0x69, 0xaf, 0xdb, 0x4b,
|
||||||
0x76, 0xba, 0x11, 0x92, 0x94, 0xc5, 0xbe, 0xbe, 0x0f, 0xf7, 0x9e, 0x8e, 0xe9, 0xf3, 0xd9, 0x98,
|
0x89, 0x62, 0x3c, 0x0b, 0xcd, 0x7d, 0xf8, 0x57, 0x4d, 0x4c, 0x9f, 0xcd, 0xc6, 0xe4, 0xd2, 0xff,
|
||||||
0xec, 0xf1, 0xef, 0x4e, 0x98, 0x1c, 0xd3, 0x0e, 0xa9, 0x95, 0x6d, 0x8c, 0xee, 0x9c, 0x0d, 0xc2,
|
0x78, 0x42, 0x65, 0x9f, 0x75, 0xa1, 0x55, 0x77, 0x31, 0xfa, 0x67, 0x08, 0xc8, 0x60, 0x7d, 0x68,
|
||||||
0xdb, 0x18, 0xf2, 0xcd, 0xa8, 0x20, 0x07, 0x05, 0xc9, 0x24, 0x8a, 0xfc, 0x84, 0xd3, 0x18, 0xd3,
|
0x6f, 0x86, 0x85, 0x05, 0xaa, 0x28, 0xae, 0x48, 0x1a, 0xe6, 0x82, 0x65, 0x94, 0xe5, 0x24, 0x95,
|
||||||
0x04, 0x45, 0xc2, 0x4d, 0x6b, 0x0f, 0x9e, 0xce, 0xf5, 0xe0, 0x58, 0x19, 0x34, 0x86, 0xfb, 0x6b,
|
0x7e, 0xd1, 0x78, 0x70, 0xf7, 0x4c, 0x0f, 0xf6, 0xb5, 0xc2, 0xee, 0x50, 0xbe, 0x55, 0x75, 0xf6,
|
||||||
0x45, 0xcb, 0xff, 0xe8, 0x5a, 0xb5, 0xf0, 0xf2, 0xf2, 0xaa, 0x60, 0xeb, 0xdf, 0xbb, 0x60, 0xc5,
|
0x6f, 0x9e, 0xca, 0x96, 0x41, 0x59, 0x9d, 0x24, 0x6c, 0xfe, 0xb1, 0x88, 0x16, 0x6d, 0x6d, 0xe0,
|
||||||
0xe4, 0x06, 0x3c, 0x01, 0x6b, 0x98, 0x45, 0x11, 0x92, 0x84, 0x2b, 0x1f, 0x86, 0x09, 0xa5, 0xf8,
|
0x43, 0xb4, 0x4a, 0x79, 0x9a, 0x12, 0x05, 0x42, 0xfb, 0x30, 0x2c, 0x28, 0x6d, 0xff, 0xe3, 0x53,
|
||||||
0x3f, 0xbe, 0x26, 0x35, 0x46, 0x5b, 0xb5, 0x79, 0xcd, 0xb5, 0xcc, 0x85, 0x29, 0x85, 0xf0, 0x0a,
|
0x4a, 0x63, 0x24, 0x6a, 0xd4, 0x5b, 0xbe, 0xb3, 0x5c, 0x99, 0x62, 0xc8, 0xa0, 0x42, 0xa7, 0x28,
|
||||||
0x78, 0x4a, 0x02, 0xbf, 0xb1, 0x57, 0xa6, 0x39, 0xdc, 0x65, 0x9d, 0xb3, 0x4f, 0xae, 0x4b, 0x9c,
|
0xf8, 0x6b, 0x77, 0x65, 0xc6, 0x86, 0x3f, 0x6f, 0x6a, 0xf6, 0xf6, 0x69, 0x85, 0x13, 0x29, 0x0b,
|
||||||
0x40, 0x1a, 0x70, 0x93, 0xb6, 0xfa, 0x56, 0xb5, 0x00, 0xbe, 0x06, 0x6b, 0xad, 0x88, 0x05, 0x28,
|
0x6e, 0xcb, 0xd6, 0xdc, 0xaa, 0x21, 0xe0, 0x67, 0x68, 0x35, 0x49, 0x79, 0x44, 0xd2, 0xd0, 0x00,
|
||||||
0xf2, 0x35, 0x50, 0x44, 0x3b, 0x54, 0xba, 0x77, 0x34, 0xd0, 0x46, 0xc5, 0xd6, 0x9f, 0x2a, 0xd6,
|
0xa5, 0xac, 0xcb, 0x94, 0xbf, 0x60, 0x80, 0xd6, 0x1b, 0xae, 0xff, 0x74, 0xb3, 0x4e, 0xb8, 0xcb,
|
||||||
0x09, 0x77, 0x69, 0x6c, 0x61, 0xf2, 0xc6, 0x52, 0xa1, 0x1f, 0x2a, 0x3b, 0x78, 0x0a, 0x36, 0x44,
|
0x32, 0x07, 0x53, 0xb6, 0x9a, 0x1a, 0xfd, 0xb9, 0xd6, 0xc3, 0x47, 0x68, 0x5d, 0xf6, 0x44, 0x9e,
|
||||||
0x97, 0x27, 0x91, 0xca, 0x81, 0x2e, 0x36, 0xd7, 0x7f, 0xc2, 0x89, 0x38, 0x61, 0x91, 0x49, 0xc3,
|
0xea, 0x1a, 0xe8, 0x51, 0x7b, 0xfd, 0x87, 0x02, 0xe4, 0x21, 0x4f, 0x6d, 0x19, 0x96, 0x5a, 0x5f,
|
||||||
0x4c, 0xed, 0x2b, 0x65, 0xf9, 0x77, 0xbf, 0xf4, 0x59, 0x8b, 0xca, 0x93, 0x6e, 0x50, 0xc1, 0xac,
|
0x6a, 0xcd, 0x7f, 0x8e, 0x6b, 0x77, 0x12, 0xa6, 0x0e, 0x7b, 0x51, 0x83, 0xf2, 0xae, 0x6b, 0x73,
|
||||||
0x63, 0xcb, 0xdc, 0xfe, 0xec, 0x88, 0xb0, 0x5d, 0x95, 0x67, 0x09, 0x11, 0x95, 0x83, 0x58, 0xfe,
|
0xf7, 0x73, 0x4f, 0xc6, 0x9d, 0xa6, 0x7a, 0x91, 0x83, 0x6c, 0xec, 0x64, 0xea, 0xaf, 0xdf, 0xef,
|
||||||
0xf9, 0xfb, 0x0e, 0xb0, 0x5e, 0x1c, 0xc4, 0xd2, 0x7b, 0x6c, 0xe1, 0x77, 0x0d, 0xfa, 0xf1, 0x10,
|
0x21, 0xe7, 0xc5, 0x4e, 0xa6, 0x82, 0x5b, 0x0e, 0xfe, 0xb1, 0x45, 0xdf, 0x1f, 0x82, 0xe3, 0x14,
|
||||||
0x1c, 0x46, 0xe0, 0xc1, 0x34, 0x73, 0xc4, 0xa4, 0x49, 0xe2, 0x5b, 0x72, 0xae, 0x5d, 0xe5, 0x3c,
|
0x5d, 0x9f, 0xb6, 0x9c, 0x72, 0x65, 0x8b, 0xf8, 0x82, 0x36, 0x57, 0x4f, 0xda, 0x7c, 0xce, 0x15,
|
||||||
0x64, 0x12, 0x72, 0xf0, 0x48, 0x9f, 0xd6, 0x6c, 0x90, 0x2b, 0x0b, 0x20, 0x5c, 0x57, 0xd8, 0x33,
|
0x16, 0xe8, 0xa6, 0xc9, 0xd6, 0x6c, 0x90, 0x8b, 0x97, 0x60, 0x70, 0x4d, 0x63, 0xcf, 0x44, 0x78,
|
||||||
0x11, 0x36, 0x41, 0xe1, 0x0a, 0xa7, 0x0a, 0xef, 0xde, 0x02, 0xd8, 0x72, 0x13, 0x6c, 0x2a, 0xb6,
|
0x80, 0x2a, 0x27, 0x6c, 0xea, 0xf0, 0xae, 0x5e, 0x82, 0xb5, 0x95, 0x09, 0x6b, 0x3a, 0xb6, 0xbb,
|
||||||
0xa7, 0x20, 0x8f, 0x29, 0xc7, 0x5d, 0x2a, 0xfd, 0x80, 0x13, 0xd4, 0x26, 0xdc, 0x4d, 0x97, 0x9d,
|
0xa8, 0x4c, 0x99, 0xa0, 0x3d, 0xa6, 0xc2, 0x48, 0x00, 0xe9, 0x80, 0xf0, 0x8b, 0x75, 0x6f, 0xab,
|
||||||
0xed, 0xb4, 0x97, 0xb3, 0xe2, 0x9a, 0x91, 0x6e, 0xfd, 0xba, 0x0c, 0x32, 0xa3, 0xc4, 0x82, 0xeb,
|
0x18, 0xac, 0x38, 0x72, 0xcb, 0x52, 0x71, 0x80, 0xee, 0x44, 0x90, 0xb0, 0x2c, 0x8c, 0x52, 0x4e,
|
||||||
0xe0, 0xae, 0xe9, 0x0c, 0x8e, 0xee, 0x0c, 0x66, 0xa1, 0xc0, 0x38, 0x69, 0x12, 0x4e, 0x62, 0x4c,
|
0x3b, 0x20, 0x42, 0x38, 0x02, 0xda, 0x33, 0xbe, 0x19, 0x4a, 0xc8, 0x32, 0x05, 0xa2, 0x4f, 0x52,
|
||||||
0x7c, 0x24, 0x04, 0x91, 0x3a, 0x49, 0x33, 0x5e, 0x6e, 0x24, 0xde, 0x55, 0x52, 0x48, 0x55, 0xc9,
|
0xbf, 0x54, 0xf7, 0xb6, 0x16, 0x82, 0x4d, 0x23, 0xdd, 0xb2, 0xc2, 0xdf, 0x0c, 0x65, 0xcd, 0x79,
|
||||||
0xc4, 0x3d, 0xc2, 0x85, 0x8a, 0xad, 0x89, 0xb0, 0x64, 0x5c, 0xa7, 0xe1, 0x6d, 0xc3, 0x2b, 0x8c,
|
0xc7, 0x49, 0x6e, 0xfe, 0x3a, 0x8f, 0x4a, 0xa3, 0x62, 0xc5, 0x6b, 0xe8, 0x8a, 0x9d, 0x36, 0x9e,
|
||||||
0x61, 0xf7, 0x35, 0x2a, 0xfc, 0xde, 0xd6, 0x4c, 0x33, 0x62, 0x8c, 0x2f, 0x24, 0x2b, 0x75, 0x39,
|
0x99, 0x36, 0xf6, 0xa0, 0x1d, 0x14, 0x70, 0x00, 0x02, 0x32, 0x0a, 0x21, 0x91, 0x12, 0x94, 0x29,
|
||||||
0xed, 0x2b, 0xb8, 0xad, 0x5f, 0xd2, 0x20, 0x3f, 0x55, 0xb7, 0x73, 0x8e, 0x06, 0x82, 0x94, 0xc2,
|
0xfc, 0x52, 0xb0, 0x32, 0x22, 0x3f, 0xd6, 0x54, 0xcc, 0x74, 0x1b, 0x66, 0x7d, 0x10, 0x52, 0xfb,
|
||||||
0xb3, 0xe7, 0xa1, 0xbf, 0xd5, 0x29, 0x44, 0xf4, 0x87, 0x2e, 0x0d, 0x4d, 0xeb, 0xe4, 0xea, 0xe7,
|
0x74, 0x40, 0xa8, 0xe2, 0xc2, 0x94, 0xf6, 0x45, 0x53, 0x56, 0x19, 0xc3, 0x3e, 0x31, 0xa8, 0xf8,
|
||||||
0x06, 0xa7, 0x50, 0x27, 0x78, 0xc2, 0xc3, 0x3a, 0xc1, 0x5e, 0x61, 0x02, 0xd6, 0x53, 0x7f, 0xe1,
|
0x7b, 0xd7, 0x87, 0x07, 0x29, 0xe7, 0xe2, 0x52, 0x2a, 0xdd, 0xb4, 0xe8, 0x13, 0x0d, 0xb7, 0xf9,
|
||||||
0xd7, 0xf6, 0x14, 0x4c, 0xc1, 0xa7, 0x3e, 0xac, 0xe0, 0x75, 0xa0, 0xa6, 0xd4, 0x11, 0x50, 0xaf,
|
0x4b, 0x11, 0x95, 0xa7, 0x66, 0xc1, 0x19, 0xa9, 0xc1, 0xa8, 0xa0, 0xf1, 0x5c, 0x3e, 0xcc, 0xb7,
|
||||||
0x47, 0x40, 0x23, 0x2a, 0xcf, 0xfc, 0x26, 0x21, 0x37, 0x28, 0xb5, 0x59, 0x37, 0xb3, 0x23, 0xc8,
|
0xce, 0x42, 0xca, 0x7e, 0xe8, 0xb1, 0xd8, 0x8e, 0x63, 0xa1, 0x7f, 0xce, 0x91, 0x85, 0x36, 0xd0,
|
||||||
0x7d, 0x42, 0xa0, 0x0f, 0xb2, 0xc3, 0x64, 0x17, 0xf4, 0x9c, 0x2c, 0xa4, 0xb6, 0x56, 0x2d, 0xe2,
|
0x09, 0x0f, 0xdb, 0x40, 0x83, 0xca, 0x04, 0x6c, 0xa0, 0xff, 0xe2, 0xaf, 0x5c, 0x16, 0xec, 0x10,
|
||||||
0x11, 0x3d, 0x27, 0xb0, 0x03, 0x1e, 0x4c, 0x1e, 0x77, 0x42, 0x62, 0x14, 0xc9, 0xb3, 0x1b, 0x54,
|
0x29, 0x7c, 0xd8, 0x10, 0x31, 0x81, 0xda, 0xf1, 0x41, 0x90, 0x7e, 0x91, 0x22, 0x96, 0x32, 0xf5,
|
||||||
0xd5, 0x6c, 0x24, 0x70, 0x02, 0xb8, 0x61, 0x70, 0xe1, 0x0b, 0x90, 0x13, 0x09, 0x93, 0x7e, 0x07,
|
0x22, 0x3c, 0x00, 0x38, 0x47, 0xfb, 0xce, 0xba, 0xb9, 0x3c, 0x82, 0x7c, 0x02, 0x80, 0x43, 0xb4,
|
||||||
0xf1, 0x36, 0x91, 0xea, 0x65, 0x4e, 0x6b, 0xa6, 0xc2, 0xa0, 0x5f, 0xca, 0x1e, 0x25, 0x4c, 0x7e,
|
0x3c, 0x6c, 0x20, 0xc9, 0x5e, 0xc2, 0xa5, 0xf4, 0xeb, 0x92, 0x43, 0xdc, 0x63, 0x2f, 0x01, 0x77,
|
||||||
0xab, 0x15, 0x07, 0x75, 0x2f, 0x2b, 0xc6, 0xab, 0x10, 0xbe, 0x06, 0x0f, 0x27, 0xdd, 0x1c, 0x9b,
|
0xd1, 0xf5, 0xc9, 0x74, 0xe7, 0x90, 0x91, 0x54, 0xbd, 0x38, 0x47, 0xa7, 0xce, 0x46, 0x82, 0x27,
|
||||||
0x67, 0xb4, 0xf9, 0xe3, 0x41, 0xbf, 0xf4, 0xe0, 0x70, 0xbc, 0x61, 0x84, 0x32, 0x19, 0xdc, 0x08,
|
0x80, 0x77, 0x2d, 0x2e, 0x7e, 0x88, 0x56, 0x64, 0xce, 0x55, 0xd8, 0x25, 0xa2, 0x03, 0x4a, 0xbf,
|
||||||
0xac, 0x07, 0xdc, 0x36, 0x21, 0x09, 0xe1, 0x3e, 0x27, 0x3f, 0x22, 0x1e, 0xfa, 0x09, 0xe1, 0x98,
|
0xf6, 0x45, 0x63, 0xa9, 0x32, 0x38, 0xae, 0x2d, 0xef, 0xe5, 0x5c, 0x7d, 0x6b, 0x18, 0x3b, 0xed,
|
||||||
0xc4, 0x12, 0xb5, 0x88, 0x0b, 0x16, 0x10, 0xf8, 0x23, 0x83, 0xee, 0x69, 0xf0, 0xc6, 0x08, 0x5b,
|
0x60, 0x59, 0x8e, 0x4f, 0x31, 0x7e, 0x86, 0x6e, 0x4c, 0xba, 0x39, 0x56, 0x2f, 0x19, 0xf5, 0x5b,
|
||||||
0x0d, 0x08, 0x9f, 0xe0, 0x13, 0x82, 0xdb, 0xfe, 0xf8, 0x11, 0xa3, 0xe7, 0x26, 0x22, 0x1a, 0x87,
|
0x83, 0xe3, 0xda, 0xf5, 0xe7, 0x63, 0x81, 0x11, 0xca, 0x64, 0x70, 0x23, 0xb0, 0x3e, 0xf2, 0x3b,
|
||||||
0xe4, 0xd4, 0xc7, 0xac, 0x1b, 0x4b, 0x77, 0x75, 0x01, 0x97, 0x5c, 0xd6, 0x44, 0x7b, 0xd3, 0x3c,
|
0x00, 0x39, 0x88, 0x50, 0xc0, 0x8f, 0x44, 0xc4, 0x61, 0x0e, 0x82, 0x42, 0xa6, 0x48, 0x02, 0x3e,
|
||||||
0x07, 0x8a, 0x66, 0x4f, 0xb1, 0x5c, 0xdf, 0x6e, 0xb2, 0xff, 0x47, 0xbb, 0xd9, 0xfa, 0x79, 0x19,
|
0xba, 0x84, 0xc0, 0x6f, 0x5a, 0xf4, 0xc0, 0x80, 0xef, 0x8e, 0xb0, 0xf5, 0xd2, 0xf1, 0x09, 0x3d,
|
||||||
0x3c, 0x9e, 0x33, 0xc3, 0xe8, 0x5e, 0x3b, 0x1e, 0x14, 0x74, 0x3b, 0x30, 0x3d, 0x22, 0x37, 0x16,
|
0x04, 0xda, 0x09, 0xc7, 0x0f, 0x23, 0x7b, 0x69, 0x23, 0x62, 0x59, 0x0c, 0x47, 0x21, 0xe5, 0xbd,
|
||||||
0x1f, 0xab, 0xc6, 0x10, 0x80, 0xcd, 0xf9, 0xd3, 0x95, 0x7d, 0xf7, 0x37, 0x2b, 0x66, 0x14, 0xae,
|
0x4c, 0xf9, 0x4b, 0x97, 0x70, 0xc9, 0x75, 0x63, 0x68, 0x7b, 0xda, 0xce, 0x8e, 0x36, 0xb3, 0xad,
|
||||||
0x0c, 0x47, 0xe1, 0xca, 0xf1, 0x70, 0x14, 0xae, 0xa5, 0x55, 0x50, 0x6f, 0x2e, 0x4a, 0x8e, 0xe7,
|
0xad, 0x9c, 0x3e, 0x6e, 0x96, 0xff, 0x8f, 0x71, 0xb3, 0xf9, 0xf3, 0x3c, 0xba, 0x75, 0xc6, 0x5e,
|
||||||
0xce, 0x9b, 0x9a, 0x20, 0x01, 0x79, 0x1a, 0x4b, 0xc2, 0x89, 0x90, 0x37, 0x6f, 0xc0, 0xb3, 0x09,
|
0x64, 0xe6, 0xf7, 0x78, 0xf9, 0x30, 0xe3, 0xc0, 0xce, 0x88, 0x95, 0x31, 0x79, 0x5f, 0x0f, 0x86,
|
||||||
0x91, 0x1b, 0x82, 0xda, 0xf3, 0xf8, 0xcd, 0x01, 0x0f, 0xaf, 0x9d, 0xa9, 0x3e, 0xfc, 0x34, 0x08,
|
0x08, 0x6d, 0x9c, 0xbd, 0xb1, 0xb9, 0x5d, 0x62, 0xa3, 0x61, 0xd7, 0xeb, 0xc6, 0x70, 0xbd, 0x6e,
|
||||||
0xc8, 0x4f, 0x8d, 0x77, 0xa6, 0x8b, 0xde, 0xf6, 0x25, 0xbc, 0x3a, 0xd2, 0xd5, 0x5e, 0xbe, 0x1b,
|
0xec, 0x0f, 0xd7, 0xeb, 0x56, 0x51, 0x07, 0xf5, 0xea, 0x5d, 0xcd, 0x0b, 0xfc, 0xb3, 0x36, 0x31,
|
||||||
0x14, 0x9d, 0xf7, 0x83, 0xa2, 0xf3, 0xcf, 0xa0, 0xe8, 0xbc, 0xb9, 0x2c, 0x2e, 0xbd, 0xbf, 0x2c,
|
0x0c, 0xa8, 0x6c, 0x5e, 0x01, 0x90, 0xea, 0xfc, 0x03, 0x78, 0xb6, 0x20, 0x56, 0x86, 0xa0, 0x2e,
|
||||||
0x2e, 0xfd, 0x75, 0x59, 0x5c, 0xfa, 0xee, 0xd3, 0x09, 0x7c, 0x35, 0x6c, 0xed, 0x44, 0x28, 0x10,
|
0x1f, 0xbf, 0x79, 0xe8, 0xc6, 0xa9, 0x7b, 0xda, 0x87, 0x67, 0x03, 0x50, 0x79, 0x6a, 0x65, 0xb4,
|
||||||
0xfa, 0xab, 0x7a, 0xaa, 0xff, 0xd5, 0xd0, 0x14, 0xc1, 0x8a, 0xbe, 0x89, 0x2f, 0xfe, 0x0b, 0x00,
|
0x53, 0xf4, 0xa2, 0xaf, 0xeb, 0xc9, 0x35, 0xb1, 0xf5, 0xe8, 0xcd, 0xa0, 0xea, 0xbd, 0x1d, 0x54,
|
||||||
0x00, 0xff, 0xff, 0xe6, 0x31, 0x9b, 0x4e, 0x27, 0x0d, 0x00, 0x00,
|
0xbd, 0x7f, 0x07, 0x55, 0xef, 0xd5, 0xfb, 0xea, 0xdc, 0xdb, 0xf7, 0xd5, 0xb9, 0xbf, 0xdf, 0x57,
|
||||||
|
0xe7, 0xbe, 0xfb, 0x74, 0x02, 0x5f, 0x2f, 0x70, 0xf7, 0x52, 0x12, 0x49, 0xf3, 0xd5, 0x3c, 0x32,
|
||||||
|
0xff, 0xbe, 0x18, 0x13, 0xd1, 0xa2, 0xb9, 0x89, 0xcf, 0xff, 0x0b, 0x00, 0x00, 0xff, 0xff, 0x25,
|
||||||
|
0x77, 0x77, 0x4d, 0x7b, 0x0d, 0x00, 0x00,
|
||||||
}
|
}
|
||||||
|
|
||||||
func (m *GenesisState) Marshal() (dAtA []byte, err error) {
|
func (m *GenesisState) Marshal() (dAtA []byte, err error) {
|
||||||
@ -661,6 +672,11 @@ func (m *Params) MarshalToSizedBuffer(dAtA []byte) (int, error) {
|
|||||||
_ = i
|
_ = i
|
||||||
var l int
|
var l int
|
||||||
_ = l
|
_ = l
|
||||||
|
if m.BeginBlockerExecutionBlockInterval != 0 {
|
||||||
|
i = encodeVarintGenesis(dAtA, i, uint64(m.BeginBlockerExecutionBlockInterval))
|
||||||
|
i--
|
||||||
|
dAtA[i] = 0x48
|
||||||
|
}
|
||||||
if m.CircuitBreaker {
|
if m.CircuitBreaker {
|
||||||
i--
|
i--
|
||||||
if m.CircuitBreaker {
|
if m.CircuitBreaker {
|
||||||
@ -1108,6 +1124,9 @@ func (m *Params) Size() (n int) {
|
|||||||
if m.CircuitBreaker {
|
if m.CircuitBreaker {
|
||||||
n += 2
|
n += 2
|
||||||
}
|
}
|
||||||
|
if m.BeginBlockerExecutionBlockInterval != 0 {
|
||||||
|
n += 1 + sovGenesis(uint64(m.BeginBlockerExecutionBlockInterval))
|
||||||
|
}
|
||||||
return n
|
return n
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1798,6 +1817,25 @@ func (m *Params) Unmarshal(dAtA []byte) error {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
m.CircuitBreaker = bool(v != 0)
|
m.CircuitBreaker = bool(v != 0)
|
||||||
|
case 9:
|
||||||
|
if wireType != 0 {
|
||||||
|
return fmt.Errorf("proto: wrong wireType = %d for field BeginBlockerExecutionBlockInterval", wireType)
|
||||||
|
}
|
||||||
|
m.BeginBlockerExecutionBlockInterval = 0
|
||||||
|
for shift := uint(0); ; shift += 7 {
|
||||||
|
if shift >= 64 {
|
||||||
|
return ErrIntOverflowGenesis
|
||||||
|
}
|
||||||
|
if iNdEx >= l {
|
||||||
|
return io.ErrUnexpectedEOF
|
||||||
|
}
|
||||||
|
b := dAtA[iNdEx]
|
||||||
|
iNdEx++
|
||||||
|
m.BeginBlockerExecutionBlockInterval |= int64(b&0x7F) << shift
|
||||||
|
if b < 0x80 {
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
iNdEx = preIndex
|
iNdEx = preIndex
|
||||||
skippy, err := skipGenesis(dAtA[iNdEx:])
|
skippy, err := skipGenesis(dAtA[iNdEx:])
|
||||||
|
@ -13,18 +13,19 @@ import (
|
|||||||
|
|
||||||
// Parameter keys
|
// Parameter keys
|
||||||
var (
|
var (
|
||||||
KeyGlobalDebtLimit = []byte("GlobalDebtLimit")
|
KeyGlobalDebtLimit = []byte("GlobalDebtLimit")
|
||||||
KeyCollateralParams = []byte("CollateralParams")
|
KeyCollateralParams = []byte("CollateralParams")
|
||||||
KeyDebtParam = []byte("DebtParam")
|
KeyDebtParam = []byte("DebtParam")
|
||||||
KeyCircuitBreaker = []byte("CircuitBreaker")
|
KeyCircuitBreaker = []byte("CircuitBreaker")
|
||||||
KeyDebtThreshold = []byte("DebtThreshold")
|
KeyDebtThreshold = []byte("DebtThreshold")
|
||||||
KeyDebtLot = []byte("DebtLot")
|
KeyDebtLot = []byte("DebtLot")
|
||||||
KeySurplusThreshold = []byte("SurplusThreshold")
|
KeySurplusThreshold = []byte("SurplusThreshold")
|
||||||
KeySurplusLot = []byte("SurplusLot")
|
KeySurplusLot = []byte("SurplusLot")
|
||||||
DefaultGlobalDebt = sdk.NewCoin(DefaultStableDenom, sdk.ZeroInt())
|
KeyBeginBlockerExecutionBlockInterval = []byte("BeginBlockerExecutionBlockInterval")
|
||||||
DefaultCircuitBreaker = false
|
DefaultGlobalDebt = sdk.NewCoin(DefaultStableDenom, sdk.ZeroInt())
|
||||||
DefaultCollateralParams = CollateralParams{}
|
DefaultCircuitBreaker = false
|
||||||
DefaultDebtParam = DebtParam{
|
DefaultCollateralParams = CollateralParams{}
|
||||||
|
DefaultDebtParam = DebtParam{
|
||||||
Denom: "usdx",
|
Denom: "usdx",
|
||||||
ReferenceAsset: "usd",
|
ReferenceAsset: "usd",
|
||||||
ConversionFactor: sdkmath.NewInt(6),
|
ConversionFactor: sdkmath.NewInt(6),
|
||||||
@ -39,22 +40,25 @@ var (
|
|||||||
DefaultSurplusLot = sdkmath.NewInt(10000000000)
|
DefaultSurplusLot = sdkmath.NewInt(10000000000)
|
||||||
DefaultDebtLot = sdkmath.NewInt(10000000000)
|
DefaultDebtLot = sdkmath.NewInt(10000000000)
|
||||||
stabilityFeeMax = sdk.MustNewDecFromStr("1.000000051034942716") // 500% APR
|
stabilityFeeMax = sdk.MustNewDecFromStr("1.000000051034942716") // 500% APR
|
||||||
|
// Run every block
|
||||||
|
DefaultBeginBlockerExecutionBlockInterval = int64(1)
|
||||||
)
|
)
|
||||||
|
|
||||||
// NewParams returns a new params object
|
// NewParams returns a new params object
|
||||||
func NewParams(
|
func NewParams(
|
||||||
debtLimit sdk.Coin, collateralParams CollateralParams, debtParam DebtParam, surplusThreshold,
|
debtLimit sdk.Coin, collateralParams CollateralParams, debtParam DebtParam, surplusThreshold,
|
||||||
surplusLot, debtThreshold, debtLot sdkmath.Int, breaker bool,
|
surplusLot, debtThreshold, debtLot sdkmath.Int, breaker bool, beginBlockerExecutionBlockInterval int64,
|
||||||
) Params {
|
) Params {
|
||||||
return Params{
|
return Params{
|
||||||
GlobalDebtLimit: debtLimit,
|
GlobalDebtLimit: debtLimit,
|
||||||
CollateralParams: collateralParams,
|
CollateralParams: collateralParams,
|
||||||
DebtParam: debtParam,
|
DebtParam: debtParam,
|
||||||
SurplusAuctionThreshold: surplusThreshold,
|
SurplusAuctionThreshold: surplusThreshold,
|
||||||
SurplusAuctionLot: surplusLot,
|
SurplusAuctionLot: surplusLot,
|
||||||
DebtAuctionThreshold: debtThreshold,
|
DebtAuctionThreshold: debtThreshold,
|
||||||
DebtAuctionLot: debtLot,
|
DebtAuctionLot: debtLot,
|
||||||
CircuitBreaker: breaker,
|
CircuitBreaker: breaker,
|
||||||
|
BeginBlockerExecutionBlockInterval: beginBlockerExecutionBlockInterval,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -63,7 +67,7 @@ func DefaultParams() Params {
|
|||||||
return NewParams(
|
return NewParams(
|
||||||
DefaultGlobalDebt, DefaultCollateralParams, DefaultDebtParam, DefaultSurplusThreshold,
|
DefaultGlobalDebt, DefaultCollateralParams, DefaultDebtParam, DefaultSurplusThreshold,
|
||||||
DefaultSurplusLot, DefaultDebtThreshold, DefaultDebtLot,
|
DefaultSurplusLot, DefaultDebtThreshold, DefaultDebtLot,
|
||||||
DefaultCircuitBreaker,
|
DefaultCircuitBreaker, DefaultBeginBlockerExecutionBlockInterval,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -122,6 +126,7 @@ func (p *Params) ParamSetPairs() paramtypes.ParamSetPairs {
|
|||||||
paramtypes.NewParamSetPair(KeySurplusLot, &p.SurplusAuctionLot, validateSurplusAuctionLotParam),
|
paramtypes.NewParamSetPair(KeySurplusLot, &p.SurplusAuctionLot, validateSurplusAuctionLotParam),
|
||||||
paramtypes.NewParamSetPair(KeyDebtThreshold, &p.DebtAuctionThreshold, validateDebtAuctionThresholdParam),
|
paramtypes.NewParamSetPair(KeyDebtThreshold, &p.DebtAuctionThreshold, validateDebtAuctionThresholdParam),
|
||||||
paramtypes.NewParamSetPair(KeyDebtLot, &p.DebtAuctionLot, validateDebtAuctionLotParam),
|
paramtypes.NewParamSetPair(KeyDebtLot, &p.DebtAuctionLot, validateDebtAuctionLotParam),
|
||||||
|
paramtypes.NewParamSetPair(KeyBeginBlockerExecutionBlockInterval, &p.BeginBlockerExecutionBlockInterval, validateBeginBlockerExecutionBlockIntervalParam),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -200,6 +205,10 @@ func (p Params) Validate() error {
|
|||||||
collateralParamsDebtLimit, p.GlobalDebtLimit)
|
collateralParamsDebtLimit, p.GlobalDebtLimit)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if err := validateBeginBlockerExecutionBlockIntervalParam(p.BeginBlockerExecutionBlockInterval); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -346,3 +355,16 @@ func validateDebtAuctionLotParam(i interface{}) error {
|
|||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func validateBeginBlockerExecutionBlockIntervalParam(i interface{}) error {
|
||||||
|
bbebi, ok := i.(int64)
|
||||||
|
if !ok {
|
||||||
|
return fmt.Errorf("invalid parameter type: %T", i)
|
||||||
|
}
|
||||||
|
|
||||||
|
if bbebi <= 0 {
|
||||||
|
return fmt.Errorf("begin blocker execution block interval param should be positive: %d", bbebi)
|
||||||
|
}
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
@ -20,14 +20,15 @@ func (suite *ParamsTestSuite) SetupTest() {
|
|||||||
|
|
||||||
func (suite *ParamsTestSuite) TestParamValidation() {
|
func (suite *ParamsTestSuite) TestParamValidation() {
|
||||||
type args struct {
|
type args struct {
|
||||||
globalDebtLimit sdk.Coin
|
globalDebtLimit sdk.Coin
|
||||||
collateralParams types.CollateralParams
|
collateralParams types.CollateralParams
|
||||||
debtParam types.DebtParam
|
debtParam types.DebtParam
|
||||||
surplusThreshold sdkmath.Int
|
surplusThreshold sdkmath.Int
|
||||||
surplusLot sdkmath.Int
|
surplusLot sdkmath.Int
|
||||||
debtThreshold sdkmath.Int
|
debtThreshold sdkmath.Int
|
||||||
debtLot sdkmath.Int
|
debtLot sdkmath.Int
|
||||||
breaker bool
|
breaker bool
|
||||||
|
beginBlockerExecutionBlockInterval int64
|
||||||
}
|
}
|
||||||
type errArgs struct {
|
type errArgs struct {
|
||||||
expectPass bool
|
expectPass bool
|
||||||
@ -42,14 +43,15 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
{
|
{
|
||||||
name: "default",
|
name: "default",
|
||||||
args: args{
|
args: args{
|
||||||
globalDebtLimit: types.DefaultGlobalDebt,
|
globalDebtLimit: types.DefaultGlobalDebt,
|
||||||
collateralParams: types.DefaultCollateralParams,
|
collateralParams: types.DefaultCollateralParams,
|
||||||
debtParam: types.DefaultDebtParam,
|
debtParam: types.DefaultDebtParam,
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: true,
|
expectPass: true,
|
||||||
@ -82,11 +84,12 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
ConversionFactor: sdkmath.NewInt(6),
|
ConversionFactor: sdkmath.NewInt(6),
|
||||||
DebtFloor: sdkmath.NewInt(10000000),
|
DebtFloor: sdkmath.NewInt(10000000),
|
||||||
},
|
},
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: true,
|
expectPass: true,
|
||||||
@ -119,11 +122,12 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
ConversionFactor: sdkmath.NewInt(6),
|
ConversionFactor: sdkmath.NewInt(6),
|
||||||
DebtFloor: sdkmath.NewInt(10000000),
|
DebtFloor: sdkmath.NewInt(10000000),
|
||||||
},
|
},
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: false,
|
expectPass: false,
|
||||||
@ -156,11 +160,12 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
ConversionFactor: sdkmath.NewInt(6),
|
ConversionFactor: sdkmath.NewInt(6),
|
||||||
DebtFloor: sdkmath.NewInt(10000000),
|
DebtFloor: sdkmath.NewInt(10000000),
|
||||||
},
|
},
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: false,
|
expectPass: false,
|
||||||
@ -207,11 +212,12 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
ConversionFactor: sdkmath.NewInt(6),
|
ConversionFactor: sdkmath.NewInt(6),
|
||||||
DebtFloor: sdkmath.NewInt(10000000),
|
DebtFloor: sdkmath.NewInt(10000000),
|
||||||
},
|
},
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: true,
|
expectPass: true,
|
||||||
@ -258,11 +264,12 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
ConversionFactor: sdkmath.NewInt(6),
|
ConversionFactor: sdkmath.NewInt(6),
|
||||||
DebtFloor: sdkmath.NewInt(10000000),
|
DebtFloor: sdkmath.NewInt(10000000),
|
||||||
},
|
},
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: false,
|
expectPass: false,
|
||||||
@ -309,11 +316,12 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
ConversionFactor: sdkmath.NewInt(6),
|
ConversionFactor: sdkmath.NewInt(6),
|
||||||
DebtFloor: sdkmath.NewInt(10000000),
|
DebtFloor: sdkmath.NewInt(10000000),
|
||||||
},
|
},
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: false,
|
expectPass: false,
|
||||||
@ -345,11 +353,12 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
ConversionFactor: sdkmath.NewInt(6),
|
ConversionFactor: sdkmath.NewInt(6),
|
||||||
DebtFloor: sdkmath.NewInt(10000000),
|
DebtFloor: sdkmath.NewInt(10000000),
|
||||||
},
|
},
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: false,
|
expectPass: false,
|
||||||
@ -382,11 +391,12 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
ConversionFactor: sdkmath.NewInt(6),
|
ConversionFactor: sdkmath.NewInt(6),
|
||||||
DebtFloor: sdkmath.NewInt(10000000),
|
DebtFloor: sdkmath.NewInt(10000000),
|
||||||
},
|
},
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: false,
|
expectPass: false,
|
||||||
@ -433,11 +443,12 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
ConversionFactor: sdkmath.NewInt(6),
|
ConversionFactor: sdkmath.NewInt(6),
|
||||||
DebtFloor: sdkmath.NewInt(10000000),
|
DebtFloor: sdkmath.NewInt(10000000),
|
||||||
},
|
},
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: false,
|
expectPass: false,
|
||||||
@ -484,11 +495,12 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
ConversionFactor: sdkmath.NewInt(6),
|
ConversionFactor: sdkmath.NewInt(6),
|
||||||
DebtFloor: sdkmath.NewInt(10000000),
|
DebtFloor: sdkmath.NewInt(10000000),
|
||||||
},
|
},
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: true,
|
expectPass: true,
|
||||||
@ -521,11 +533,12 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
ConversionFactor: sdkmath.NewInt(6),
|
ConversionFactor: sdkmath.NewInt(6),
|
||||||
DebtFloor: sdkmath.NewInt(10000000),
|
DebtFloor: sdkmath.NewInt(10000000),
|
||||||
},
|
},
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: false,
|
expectPass: false,
|
||||||
@ -558,11 +571,12 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
ConversionFactor: sdkmath.NewInt(6),
|
ConversionFactor: sdkmath.NewInt(6),
|
||||||
DebtFloor: sdkmath.NewInt(10000000),
|
DebtFloor: sdkmath.NewInt(10000000),
|
||||||
},
|
},
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: false,
|
expectPass: false,
|
||||||
@ -595,11 +609,12 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
ConversionFactor: sdkmath.NewInt(6),
|
ConversionFactor: sdkmath.NewInt(6),
|
||||||
DebtFloor: sdkmath.NewInt(10000000),
|
DebtFloor: sdkmath.NewInt(10000000),
|
||||||
},
|
},
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: false,
|
expectPass: false,
|
||||||
@ -632,11 +647,12 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
ConversionFactor: sdkmath.NewInt(6),
|
ConversionFactor: sdkmath.NewInt(6),
|
||||||
DebtFloor: sdkmath.NewInt(10000000),
|
DebtFloor: sdkmath.NewInt(10000000),
|
||||||
},
|
},
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: false,
|
expectPass: false,
|
||||||
@ -663,12 +679,13 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
CheckCollateralizationIndexCount: sdkmath.NewInt(10),
|
CheckCollateralizationIndexCount: sdkmath.NewInt(10),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
debtParam: types.DefaultDebtParam,
|
debtParam: types.DefaultDebtParam,
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: false,
|
expectPass: false,
|
||||||
@ -701,11 +718,12 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
ConversionFactor: sdkmath.NewInt(6),
|
ConversionFactor: sdkmath.NewInt(6),
|
||||||
DebtFloor: sdkmath.NewInt(10000000),
|
DebtFloor: sdkmath.NewInt(10000000),
|
||||||
},
|
},
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: false,
|
expectPass: false,
|
||||||
@ -715,14 +733,15 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
{
|
{
|
||||||
name: "nil debt limit",
|
name: "nil debt limit",
|
||||||
args: args{
|
args: args{
|
||||||
globalDebtLimit: sdk.Coin{},
|
globalDebtLimit: sdk.Coin{},
|
||||||
collateralParams: types.DefaultCollateralParams,
|
collateralParams: types.DefaultCollateralParams,
|
||||||
debtParam: types.DefaultDebtParam,
|
debtParam: types.DefaultDebtParam,
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: false,
|
expectPass: false,
|
||||||
@ -732,14 +751,15 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
{
|
{
|
||||||
name: "zero surplus auction threshold",
|
name: "zero surplus auction threshold",
|
||||||
args: args{
|
args: args{
|
||||||
globalDebtLimit: types.DefaultGlobalDebt,
|
globalDebtLimit: types.DefaultGlobalDebt,
|
||||||
collateralParams: types.DefaultCollateralParams,
|
collateralParams: types.DefaultCollateralParams,
|
||||||
debtParam: types.DefaultDebtParam,
|
debtParam: types.DefaultDebtParam,
|
||||||
surplusThreshold: sdk.ZeroInt(),
|
surplusThreshold: sdk.ZeroInt(),
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: false,
|
expectPass: false,
|
||||||
@ -749,14 +769,15 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
{
|
{
|
||||||
name: "zero debt auction threshold",
|
name: "zero debt auction threshold",
|
||||||
args: args{
|
args: args{
|
||||||
globalDebtLimit: types.DefaultGlobalDebt,
|
globalDebtLimit: types.DefaultGlobalDebt,
|
||||||
collateralParams: types.DefaultCollateralParams,
|
collateralParams: types.DefaultCollateralParams,
|
||||||
debtParam: types.DefaultDebtParam,
|
debtParam: types.DefaultDebtParam,
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: sdk.ZeroInt(),
|
debtThreshold: sdk.ZeroInt(),
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: false,
|
expectPass: false,
|
||||||
@ -766,14 +787,15 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
{
|
{
|
||||||
name: "zero surplus auction lot",
|
name: "zero surplus auction lot",
|
||||||
args: args{
|
args: args{
|
||||||
globalDebtLimit: types.DefaultGlobalDebt,
|
globalDebtLimit: types.DefaultGlobalDebt,
|
||||||
collateralParams: types.DefaultCollateralParams,
|
collateralParams: types.DefaultCollateralParams,
|
||||||
debtParam: types.DefaultDebtParam,
|
debtParam: types.DefaultDebtParam,
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: sdk.ZeroInt(),
|
surplusLot: sdk.ZeroInt(),
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: types.DefaultDebtLot,
|
debtLot: types.DefaultDebtLot,
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: false,
|
expectPass: false,
|
||||||
@ -783,14 +805,15 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
{
|
{
|
||||||
name: "zero debt auction lot",
|
name: "zero debt auction lot",
|
||||||
args: args{
|
args: args{
|
||||||
globalDebtLimit: types.DefaultGlobalDebt,
|
globalDebtLimit: types.DefaultGlobalDebt,
|
||||||
collateralParams: types.DefaultCollateralParams,
|
collateralParams: types.DefaultCollateralParams,
|
||||||
debtParam: types.DefaultDebtParam,
|
debtParam: types.DefaultDebtParam,
|
||||||
surplusThreshold: types.DefaultSurplusThreshold,
|
surplusThreshold: types.DefaultSurplusThreshold,
|
||||||
surplusLot: types.DefaultSurplusLot,
|
surplusLot: types.DefaultSurplusLot,
|
||||||
debtThreshold: types.DefaultDebtThreshold,
|
debtThreshold: types.DefaultDebtThreshold,
|
||||||
debtLot: sdk.ZeroInt(),
|
debtLot: sdk.ZeroInt(),
|
||||||
breaker: types.DefaultCircuitBreaker,
|
breaker: types.DefaultCircuitBreaker,
|
||||||
|
beginBlockerExecutionBlockInterval: types.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
},
|
},
|
||||||
errArgs: errArgs{
|
errArgs: errArgs{
|
||||||
expectPass: false,
|
expectPass: false,
|
||||||
@ -800,7 +823,7 @@ func (suite *ParamsTestSuite) TestParamValidation() {
|
|||||||
}
|
}
|
||||||
for _, tc := range testCases {
|
for _, tc := range testCases {
|
||||||
suite.Run(tc.name, func() {
|
suite.Run(tc.name, func() {
|
||||||
params := types.NewParams(tc.args.globalDebtLimit, tc.args.collateralParams, tc.args.debtParam, tc.args.surplusThreshold, tc.args.surplusLot, tc.args.debtThreshold, tc.args.debtLot, tc.args.breaker)
|
params := types.NewParams(tc.args.globalDebtLimit, tc.args.collateralParams, tc.args.debtParam, tc.args.surplusThreshold, tc.args.surplusLot, tc.args.debtThreshold, tc.args.debtLot, tc.args.breaker, tc.args.beginBlockerExecutionBlockInterval)
|
||||||
err := params.Validate()
|
err := params.Validate()
|
||||||
if tc.errArgs.expectPass {
|
if tc.errArgs.expectPass {
|
||||||
suite.Require().NoError(err)
|
suite.Require().NoError(err)
|
||||||
|
@ -13,11 +13,12 @@ import (
|
|||||||
func NewCDPGenState(cdc codec.JSONCodec, denom, asset string, liquidationRatio sdk.Dec) app.GenesisState {
|
func NewCDPGenState(cdc codec.JSONCodec, denom, asset string, liquidationRatio sdk.Dec) app.GenesisState {
|
||||||
cdpGenesis := cdptypes.GenesisState{
|
cdpGenesis := cdptypes.GenesisState{
|
||||||
Params: cdptypes.Params{
|
Params: cdptypes.Params{
|
||||||
GlobalDebtLimit: sdk.NewInt64Coin("usdx", 1000000000000),
|
GlobalDebtLimit: sdk.NewInt64Coin("usdx", 1000000000000),
|
||||||
SurplusAuctionThreshold: cdptypes.DefaultSurplusThreshold,
|
SurplusAuctionThreshold: cdptypes.DefaultSurplusThreshold,
|
||||||
SurplusAuctionLot: cdptypes.DefaultSurplusLot,
|
SurplusAuctionLot: cdptypes.DefaultSurplusLot,
|
||||||
DebtAuctionThreshold: cdptypes.DefaultDebtThreshold,
|
DebtAuctionThreshold: cdptypes.DefaultDebtThreshold,
|
||||||
DebtAuctionLot: cdptypes.DefaultDebtLot,
|
DebtAuctionLot: cdptypes.DefaultDebtLot,
|
||||||
|
BeginBlockerExecutionBlockInterval: cdptypes.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
CollateralParams: cdptypes.CollateralParams{
|
CollateralParams: cdptypes.CollateralParams{
|
||||||
{
|
{
|
||||||
Denom: denom,
|
Denom: denom,
|
||||||
|
@ -23,11 +23,12 @@ func c(denom string, amount int64) sdk.Coin { return sdk.NewInt64Coin(denom, amo
|
|||||||
func NewCDPGenStateMulti(cdc codec.JSONCodec) app.GenesisState {
|
func NewCDPGenStateMulti(cdc codec.JSONCodec) app.GenesisState {
|
||||||
cdpGenesis := cdptypes.GenesisState{
|
cdpGenesis := cdptypes.GenesisState{
|
||||||
Params: cdptypes.Params{
|
Params: cdptypes.Params{
|
||||||
GlobalDebtLimit: sdk.NewInt64Coin("usdx", 2000000000000),
|
GlobalDebtLimit: sdk.NewInt64Coin("usdx", 2000000000000),
|
||||||
SurplusAuctionThreshold: cdptypes.DefaultSurplusThreshold,
|
SurplusAuctionThreshold: cdptypes.DefaultSurplusThreshold,
|
||||||
SurplusAuctionLot: cdptypes.DefaultSurplusLot,
|
SurplusAuctionLot: cdptypes.DefaultSurplusLot,
|
||||||
DebtAuctionThreshold: cdptypes.DefaultDebtThreshold,
|
DebtAuctionThreshold: cdptypes.DefaultDebtThreshold,
|
||||||
DebtAuctionLot: cdptypes.DefaultDebtLot,
|
DebtAuctionLot: cdptypes.DefaultDebtLot,
|
||||||
|
BeginBlockerExecutionBlockInterval: cdptypes.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
CollateralParams: cdptypes.CollateralParams{
|
CollateralParams: cdptypes.CollateralParams{
|
||||||
{
|
{
|
||||||
Denom: "xrp",
|
Denom: "xrp",
|
||||||
|
@ -29,11 +29,12 @@ func dcs(coins ...sdk.DecCoin) sdk.DecCoins { return sdk.NewDecCoins(coins...) }
|
|||||||
func NewCDPGenStateMulti(cdc codec.JSONCodec) app.GenesisState {
|
func NewCDPGenStateMulti(cdc codec.JSONCodec) app.GenesisState {
|
||||||
cdpGenesis := cdptypes.GenesisState{
|
cdpGenesis := cdptypes.GenesisState{
|
||||||
Params: cdptypes.Params{
|
Params: cdptypes.Params{
|
||||||
GlobalDebtLimit: sdk.NewInt64Coin("usdx", 2000000000000),
|
GlobalDebtLimit: sdk.NewInt64Coin("usdx", 2000000000000),
|
||||||
SurplusAuctionThreshold: cdptypes.DefaultSurplusThreshold,
|
SurplusAuctionThreshold: cdptypes.DefaultSurplusThreshold,
|
||||||
SurplusAuctionLot: cdptypes.DefaultSurplusLot,
|
SurplusAuctionLot: cdptypes.DefaultSurplusLot,
|
||||||
DebtAuctionThreshold: cdptypes.DefaultDebtThreshold,
|
DebtAuctionThreshold: cdptypes.DefaultDebtThreshold,
|
||||||
DebtAuctionLot: cdptypes.DefaultDebtLot,
|
DebtAuctionLot: cdptypes.DefaultDebtLot,
|
||||||
|
BeginBlockerExecutionBlockInterval: cdptypes.DefaultBeginBlockerExecutionBlockInterval,
|
||||||
CollateralParams: cdptypes.CollateralParams{
|
CollateralParams: cdptypes.CollateralParams{
|
||||||
{
|
{
|
||||||
Denom: "xrp",
|
Denom: "xrp",
|
||||||
|
Loading…
Reference in New Issue
Block a user