From e76880f89c8bc2c87932ecb8be52776b3287a09a Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Fri, 30 Sep 2022 14:01:19 -0400 Subject: [PATCH 01/19] issue-#232 --- consensus/module.go | 2 +- persistence/db.go | 22 + persistence/debug.go | 2 +- persistence/docs/CHANGELOG.md | 43 +- persistence/gov.go | 11 +- persistence/module.go | 20 +- persistence/test/gov_test.go | 44 +- persistence/test/module_test.go | 10 +- persistence/test/setup_test.go | 12 +- persistence/types/persistence_genesis.go | 61 +- shared/CHANGELOG.md | 4 + shared/codec/codec.go | 6 +- shared/crypto/keys.go | 2 +- shared/modules/bus_module.go | 2 +- shared/modules/consensus_module.go | 6 +- shared/modules/doc/README.md | 67 +++ shared/modules/module.go | 3 - shared/modules/persistence_module.go | 20 +- shared/modules/types.go | 128 +---- shared/test_artifacts/generator.go | 2 +- utility/actor.go | 39 +- utility/gov.go | 544 +++++++++--------- utility/indexer/doc/README.md | 13 + {shared => utility}/indexer/indexer.go | 14 - {shared => utility}/indexer/indexer_test.go | 0 .../indexer/proto/transaction_indexer.proto | 2 +- utility/test/actor_test.go | 52 +- utility/test/block_test.go | 13 +- utility/test/gov_test.go | 218 +++---- utility/test/module_test.go | 2 +- utility/types/gov.go | 120 ++++ 31 files changed, 781 insertions(+), 703 deletions(-) create mode 100644 utility/indexer/doc/README.md rename {shared => utility}/indexer/indexer.go (88%) rename {shared => utility}/indexer/indexer_test.go (100%) rename {shared => utility}/indexer/proto/transaction_indexer.proto (87%) create mode 100644 utility/types/gov.go diff --git a/consensus/module.go b/consensus/module.go index d2e3e1481..14bd467ff 100644 --- a/consensus/module.go +++ b/consensus/module.go @@ -323,6 +323,6 @@ func (m *ConsensusModule) CurrentHeight() uint64 { return m.Height } -func (m *ConsensusModule) ValidatorMap() modules.ValidatorMap { +func (m *ConsensusModule) ValidatorMap() modules.ValidatorMap { // TODO: This needs to be dynamically updated during various operations and network changes. return typesCons.ValidatorMapToModulesValidatorMap(m.validatorMap) } diff --git a/persistence/db.go b/persistence/db.go index 3a495596c..0665454ff 100644 --- a/persistence/db.go +++ b/persistence/db.go @@ -4,6 +4,7 @@ import ( "context" "errors" "fmt" + "log" "github.com/pokt-network/pocket/persistence/types" @@ -54,6 +55,27 @@ func (pg *PostgresContext) GetCtx() (context.Context, error) { return context.TODO(), nil } +func (pg *PostgresContext) ResetContext() error { + if pg == nil { + return nil + } + tx := pg.GetTx() + if tx == nil { + return nil + } + conn := tx.Conn() + if conn == nil { + return nil + } + if !conn.IsClosed() { + if err := pg.Release(); err != nil { + log.Println("[TODO][ERROR] Error releasing write context...", err) + } + } + pg.tx = nil + return nil +} + // TECHDEBT: Implement proper connection pooling func connectToDatabase(postgresUrl string, schema string) (*pgx.Conn, error) { ctx := context.TODO() diff --git a/persistence/debug.go b/persistence/debug.go index 3fdc583a4..5bfa942ad 100644 --- a/persistence/debug.go +++ b/persistence/debug.go @@ -49,7 +49,7 @@ func (m *PersistenceModule) clearState(_ *debug.DebugMessage) { log.Printf("Error creating new context: %s \n", err) return } - if err := context.(PostgresContext).DebugClearAll(); err != nil { + if err := context.(*PostgresContext).DebugClearAll(); err != nil { log.Printf("Error clearing state: %s \n", err) return } diff --git a/persistence/docs/CHANGELOG.md b/persistence/docs/CHANGELOG.md index 378ce22f3..77da91416 100644 --- a/persistence/docs/CHANGELOG.md +++ b/persistence/docs/CHANGELOG.md @@ -7,31 +7,34 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] -## [0.0.0.0] - 2022-08-08 +## [0.0.0.1] - 2022-09-30 +- Deprecated `persMod.ResetContext()` for -> `persRWContext.ResetContext()` for more appropriate encapsulation +- Added ticks to CHANGELOG.md +- Removed reference to Utility Mod's `BigIntToString()` and used internal `BigIntToString()` -// TODO(andrew): Use backticks around variable types to improve readability (e.g. see the first couple of examples) +## [0.0.0.0] - 2022-08-08 - Deprecated old placeholder `genesis_state` and `genesis_config` - Added `utility_genesis_state` to `genesis_state` -- Added consensus_genesis_state to genesis_state -- Added genesis_time to consensus_genesis_state -- Added chainID to consensus_genesis_state -- Added max_block_bytes to consensus_genesis_state -- Added accounts and pools to utility_genesis_state -- Added validators to utility_genesis_state -- Added applications to utility_genesis_state -- Added service_nodes to utility_genesis_state -- Added fishermen to utility_genesis_state -- Deprecated shared/config/ +- Added `consensus_genesis_state` to `genesis_state` +- Added `genesis_time` to `consensus_genesis_state` +- Added `chainID` to `consensus_genesis_state` +- Added `max_block_bytes` to `consensus_genesis_state` +- Added `accounts` and `pools` to `utility_genesis_state` +- Added `validators` to `utility_genesis_state` +- Added `applications` to `utility_genesis_state` +- Added `service_nodes` to `utility_genesis_state` +- Added `fishermen to` `utility_genesis_state` +- Deprecated `shared/config/` - Added new shared config proto3 structure -- Added base_config to config -- Added utility_config to config -- Added consensus_config to config -- Added persistence_config to config -- Added p2p_config to config -- Added telemetry_config to config +- Added `base_config` to `config` +- Added `utility_config` to `config` +- Added `consensus_config` to `config` +- Added `persistence_config` to `config` +- Added `p2p_config` to `config` +- Added `telemetry_config` to `config` - Opened followup issue #163 - Added config and genesis generator to build package - Deprecated old build files -- Use new config and genesis files for make compose_and_watch -- Use new config and genesis files for make client_start && make client_connect +- Use new config and genesis files for `make compose_and_watch` +- Use new config and genesis files for `make client_start && make client_connect` diff --git a/persistence/gov.go b/persistence/gov.go index 4908c095f..09d049143 100644 --- a/persistence/gov.go +++ b/persistence/gov.go @@ -7,18 +7,23 @@ import ( "strconv" "github.com/pokt-network/pocket/persistence/types" - "github.com/pokt-network/pocket/shared/modules" +) + +// TODO : Deprecate these two constants when we change the persistenceRWContext interface to pass the `paramName` +const ( + BlocksPerSessionParamName = "blocks_per_session" + ServiceNodesPerSessionParamName = "service_nodes_per_session" ) // TODO (Team) BUG setting parameters twice on the same height causes issues. We need to move the schema away from 'end_height' and // more towards the height_constraint architecture func (p PostgresContext) GetBlocksPerSession(height int64) (int, error) { - return p.GetIntParam(modules.BlocksPerSessionParamName, height) + return p.GetIntParam(BlocksPerSessionParamName, height) } func (p PostgresContext) GetServiceNodesPerSessionAt(height int64) (int, error) { - return p.GetIntParam(modules.ServiceNodesPerSessionParamName, height) + return p.GetIntParam(ServiceNodesPerSessionParamName, height) } func (p PostgresContext) InitParams() error { diff --git a/persistence/module.go b/persistence/module.go index 33bd827bd..2aebc913d 100644 --- a/persistence/module.go +++ b/persistence/module.go @@ -20,6 +20,8 @@ var _ modules.PersistenceRWContext = &PostgresContext{} var _ modules.PersistenceGenesisState = &types.PersistenceGenesisState{} var _ modules.PersistenceConfig = &types.PersistenceConfig{} +// TODO: convert address and public key to string not bytes in all account and actor functions +// TODO: remove address parameter from all pool operations type PersistenceModule struct { bus modules.Bus @@ -168,7 +170,7 @@ func (m *PersistenceModule) NewRWContext(height int64) (modules.PersistenceRWCon blockstore: m.blockStore, } - return *m.writeContext, nil + return m.writeContext, nil } @@ -194,22 +196,14 @@ func (m *PersistenceModule) NewReadContext(height int64) (modules.PersistenceRea }, nil } -func (m *PersistenceModule) ResetContext() error { - if m.writeContext != nil { - if !m.writeContext.GetTx().Conn().IsClosed() { - if err := m.writeContext.Release(); err != nil { - log.Println("[TODO][ERROR] Error releasing write context...", err) - } - } - m.writeContext = nil - } - return nil -} - func (m *PersistenceModule) GetBlockStore() kvstore.KVStore { return m.blockStore } +func (m *PersistenceModule) GetWriteContext() modules.PersistenceRWContext { + return m.writeContext +} + func initializeBlockStore(blockStorePath string) (kvstore.KVStore, error) { if blockStorePath == "" { return kvstore.NewMemKVStore(), nil diff --git a/persistence/test/gov_test.go b/persistence/test/gov_test.go index 21815b279..9c9208022 100644 --- a/persistence/test/gov_test.go +++ b/persistence/test/gov_test.go @@ -2,12 +2,18 @@ package test import ( "encoding/hex" - "github.com/pokt-network/pocket/shared/modules" "testing" "github.com/stretchr/testify/require" ) +// TODO : Remove these testing_artifacts when we nail down a design for parameter name sharing / owning +const ( + AppMaxChainsParamName = "app_max_chains" + ServiceNodeMinimumStakeParamName = "service_node_minimum_stake" + ServiceNodeUnstakingBlocksOwner = "service_node_unstaking_blocks_owner" +) + func TestInitParams(t *testing.T) { db := NewTestPostgresContext(t, 0) err := db.InitParams() @@ -22,13 +28,13 @@ func TestGetSetIntParam(t *testing.T) { newMaxChains := 42 - err = db.SetParam(modules.AppMaxChainsParamName, newMaxChains) + err = db.SetParam(AppMaxChainsParamName, newMaxChains) require.NoError(t, err) height, err := db.GetHeight() require.NoError(t, err) - maxChains, err := db.GetIntParam(modules.AppMaxChainsParamName, height) + maxChains, err := db.GetIntParam(AppMaxChainsParamName, height) require.NoError(t, err) require.Equal(t, newMaxChains, maxChains) @@ -42,13 +48,13 @@ func TestGetSetStringParam(t *testing.T) { newServiceNodeMinimumStake := "99999999" - err = db.SetParam(modules.ServiceNodeMinimumStakeParamName, newServiceNodeMinimumStake) + err = db.SetParam(ServiceNodeMinimumStakeParamName, newServiceNodeMinimumStake) require.NoError(t, err) height, err := db.GetHeight() require.NoError(t, err) - serviceNodeMinimumStake, err := db.GetStringParam(modules.ServiceNodeMinimumStakeParamName, height) + serviceNodeMinimumStake, err := db.GetStringParam(ServiceNodeMinimumStakeParamName, height) require.NoError(t, err) require.Equal(t, newServiceNodeMinimumStake, serviceNodeMinimumStake) @@ -63,13 +69,13 @@ func TestGetSetByteArrayParam(t *testing.T) { newOwner, err := hex.DecodeString("63585955783252764a6e576a5631647542486168426c63774e4655345a57617468545532637a6330516e4d5978575977674553537857644e4a6b4c7734575335416a65616c6d57494a47535364555933686d565a706e57564a6d6143526c54594248626864465a72646c624f646c59704a45536a6c6c52794d32527849545733566c6557464763745a465377466a57324a316157314562554a6c564b6c325470394753696c58544846474e786331567a70554d534a6c5335566d4c356f305157684663726c6b4e4a4e305931496c624a4e58537035554d4a7058564a705561506c3259484a47614b6c585a") require.NoError(t, err) - err = db.SetParam(modules.ServiceNodeUnstakingBlocksOwner, newOwner) + err = db.SetParam(ServiceNodeUnstakingBlocksOwner, newOwner) require.NoError(t, err) height, err := db.GetHeight() require.NoError(t, err) - owner, err := db.GetBytesParam(modules.ServiceNodeUnstakingBlocksOwner, height) + owner, err := db.GetBytesParam(ServiceNodeUnstakingBlocksOwner, height) require.NoError(t, err) require.Equal(t, newOwner, owner) @@ -84,13 +90,13 @@ func TestGetSetToggleIntFlag(t *testing.T) { newMaxChains := 42 // insert with false - err = db.SetFlag(modules.AppMaxChainsParamName, newMaxChains, false) + err = db.SetFlag(AppMaxChainsParamName, newMaxChains, false) require.NoError(t, err) height, err := db.GetHeight() require.NoError(t, err) - maxChains, enabled, err := db.GetIntFlag(modules.AppMaxChainsParamName, height) + maxChains, enabled, err := db.GetIntFlag(AppMaxChainsParamName, height) require.NoError(t, err) require.Equal(t, newMaxChains, maxChains) @@ -98,13 +104,13 @@ func TestGetSetToggleIntFlag(t *testing.T) { require.Equal(t, false, enabled) // toggle to true - err = db.SetFlag(modules.AppMaxChainsParamName, newMaxChains, true) + err = db.SetFlag(AppMaxChainsParamName, newMaxChains, true) require.NoError(t, err) height, err = db.GetHeight() require.NoError(t, err) - maxChains, enabled, err = db.GetIntFlag(modules.AppMaxChainsParamName, height) + maxChains, enabled, err = db.GetIntFlag(AppMaxChainsParamName, height) require.NoError(t, err) require.Equal(t, newMaxChains, maxChains) @@ -121,26 +127,26 @@ func TestGetSetToggleStringFlag(t *testing.T) { newServiceNodeMinimumStake := "99999999" // insert with false - err = db.SetFlag(modules.ServiceNodeMinimumStakeParamName, newServiceNodeMinimumStake, false) + err = db.SetFlag(ServiceNodeMinimumStakeParamName, newServiceNodeMinimumStake, false) require.NoError(t, err) height, err := db.GetHeight() require.NoError(t, err) - serviceNodeMinimumStake, enabled, err := db.GetStringFlag(modules.ServiceNodeMinimumStakeParamName, height) + serviceNodeMinimumStake, enabled, err := db.GetStringFlag(ServiceNodeMinimumStakeParamName, height) require.NoError(t, err) require.Equal(t, newServiceNodeMinimumStake, serviceNodeMinimumStake) require.Equal(t, false, enabled) //toggle to true - err = db.SetFlag(modules.ServiceNodeMinimumStakeParamName, newServiceNodeMinimumStake, true) + err = db.SetFlag(ServiceNodeMinimumStakeParamName, newServiceNodeMinimumStake, true) require.NoError(t, err) height, err = db.GetHeight() require.NoError(t, err) - serviceNodeMinimumStake, enabled, err = db.GetStringFlag(modules.ServiceNodeMinimumStakeParamName, height) + serviceNodeMinimumStake, enabled, err = db.GetStringFlag(ServiceNodeMinimumStakeParamName, height) require.NoError(t, err) require.Equal(t, newServiceNodeMinimumStake, serviceNodeMinimumStake) @@ -158,26 +164,26 @@ func TestGetSetToggleByteArrayFlag(t *testing.T) { require.NoError(t, err) // insert with false - err = db.SetFlag(modules.ServiceNodeUnstakingBlocksOwner, newOwner, false) + err = db.SetFlag(ServiceNodeUnstakingBlocksOwner, newOwner, false) require.NoError(t, err) height, err := db.GetHeight() require.NoError(t, err) - owner, enabled, err := db.GetBytesFlag(modules.ServiceNodeUnstakingBlocksOwner, height) + owner, enabled, err := db.GetBytesFlag(ServiceNodeUnstakingBlocksOwner, height) require.NoError(t, err) require.Equal(t, newOwner, owner) require.Equal(t, false, enabled) //toggle to true - err = db.SetFlag(modules.ServiceNodeUnstakingBlocksOwner, newOwner, true) + err = db.SetFlag(ServiceNodeUnstakingBlocksOwner, newOwner, true) require.NoError(t, err) height, err = db.GetHeight() require.NoError(t, err) - owner, enabled, err = db.GetBytesFlag(modules.ServiceNodeUnstakingBlocksOwner, height) + owner, enabled, err = db.GetBytesFlag(ServiceNodeUnstakingBlocksOwner, height) require.NoError(t, err) require.Equal(t, newOwner, owner) diff --git a/persistence/test/module_test.go b/persistence/test/module_test.go index 3bee636c5..f4a3f9cf0 100644 --- a/persistence/test/module_test.go +++ b/persistence/test/module_test.go @@ -7,12 +7,9 @@ import ( ) func TestPersistenceContextParallelReadWrite(t *testing.T) { - // Cleanup previous contexts - testPersistenceMod.ResetContext() t.Cleanup(func() { - testPersistenceMod.ResetContext() + require.NoError(t, testPersistenceMod.GetWriteContext().ResetContext()) }) - // variables for testing poolName := "fake" poolAddress := []byte("address") @@ -52,12 +49,9 @@ func TestPersistenceContextParallelReadWrite(t *testing.T) { } func TestPersistenceContextTwoWritesErrors(t *testing.T) { - // Cleanup previous contexts - testPersistenceMod.ResetContext() t.Cleanup(func() { - testPersistenceMod.ResetContext() + require.NoError(t, testPersistenceMod.GetWriteContext().ResetContext()) }) - // Opening up first write context succeeds _, err := testPersistenceMod.NewRWContext(0) require.NoError(t, err) diff --git a/persistence/test/setup_test.go b/persistence/test/setup_test.go index 459472cf6..99acee97e 100644 --- a/persistence/test/setup_test.go +++ b/persistence/test/setup_test.go @@ -65,15 +65,15 @@ func NewTestPostgresContext(t *testing.T, height int64) *persistence.PostgresCon ctx, err := testPersistenceMod.NewRWContext(height) require.NoError(t, err) - db, ok := ctx.(persistence.PostgresContext) + db, ok := ctx.(*persistence.PostgresContext) require.True(t, ok) t.Cleanup(func() { require.NoError(t, db.Release()) - require.NoError(t, testPersistenceMod.ResetContext()) + require.NoError(t, db.ResetContext()) }) - return &db + return db } func NewFuzzTestPostgresContext(f *testing.F, height int64) *persistence.PostgresContext { @@ -82,7 +82,7 @@ func NewFuzzTestPostgresContext(f *testing.F, height int64) *persistence.Postgre log.Fatalf("Error creating new context: %v\n", err) } - db, ok := ctx.(persistence.PostgresContext) + db, ok := ctx.(*persistence.PostgresContext) if !ok { log.Fatalf("Error casting RW context to Postgres context") } @@ -91,12 +91,12 @@ func NewFuzzTestPostgresContext(f *testing.F, height int64) *persistence.Postgre if err := db.Release(); err != nil { f.FailNow() } - if err := testPersistenceMod.ResetContext(); err != nil { + if err := db.ResetContext(); err != nil { f.FailNow() } }) - return &db + return db } // TODO(andrew): Take in `t testing.T` as a parameter and error if there's an issue diff --git a/persistence/types/persistence_genesis.go b/persistence/types/persistence_genesis.go index a7250a5ae..9154e2e08 100644 --- a/persistence/types/persistence_genesis.go +++ b/persistence/types/persistence_genesis.go @@ -5,7 +5,6 @@ import ( "github.com/pokt-network/pocket/shared/crypto" "github.com/pokt-network/pocket/shared/modules" - "github.com/pokt-network/pocket/utility/types" ) // TODO (Research) is there anyway to not have to name these protobuf files uniquely? @@ -62,25 +61,25 @@ var ( func DefaultParams() *Params { // TODO this is just a test / demo artifact and should be deprecated by genesis file return &Params{ BlocksPerSession: 4, - AppMinimumStake: types.BigIntToString(big.NewInt(15000000000)), + AppMinimumStake: BigIntToString(big.NewInt(15000000000)), AppMaxChains: 15, AppBaselineStakeRate: 100, AppStakingAdjustment: 0, AppUnstakingBlocks: 2016, AppMinimumPauseBlocks: 4, AppMaxPauseBlocks: 672, - ServiceNodeMinimumStake: types.BigIntToString(big.NewInt(15000000000)), + ServiceNodeMinimumStake: BigIntToString(big.NewInt(15000000000)), ServiceNodeMaxChains: 15, ServiceNodeUnstakingBlocks: 2016, ServiceNodeMinimumPauseBlocks: 4, ServiceNodeMaxPauseBlocks: 672, ServiceNodesPerSession: 24, - FishermanMinimumStake: types.BigIntToString(big.NewInt(15000000000)), + FishermanMinimumStake: BigIntToString(big.NewInt(15000000000)), FishermanMaxChains: 15, FishermanUnstakingBlocks: 2016, FishermanMinimumPauseBlocks: 4, FishermanMaxPauseBlocks: 672, - ValidatorMinimumStake: types.BigIntToString(big.NewInt(15000000000)), + ValidatorMinimumStake: BigIntToString(big.NewInt(15000000000)), ValidatorUnstakingBlocks: 2016, ValidatorMinimumPauseBlocks: 4, ValidatorMaxPauseBlocks: 672, @@ -89,32 +88,32 @@ func DefaultParams() *Params { // TODO this is just a test / demo artifact and s ProposerPercentageOfFees: 10, MissedBlocksBurnPercentage: 1, DoubleSignBurnPercentage: 5, - MessageDoubleSignFee: types.BigIntToString(big.NewInt(10000)), - MessageSendFee: types.BigIntToString(big.NewInt(10000)), - MessageStakeFishermanFee: types.BigIntToString(big.NewInt(10000)), - MessageEditStakeFishermanFee: types.BigIntToString(big.NewInt(10000)), - MessageUnstakeFishermanFee: types.BigIntToString(big.NewInt(10000)), - MessagePauseFishermanFee: types.BigIntToString(big.NewInt(10000)), - MessageUnpauseFishermanFee: types.BigIntToString(big.NewInt(10000)), - MessageFishermanPauseServiceNodeFee: types.BigIntToString(big.NewInt(10000)), - MessageTestScoreFee: types.BigIntToString(big.NewInt(10000)), - MessageProveTestScoreFee: types.BigIntToString(big.NewInt(10000)), - MessageStakeAppFee: types.BigIntToString(big.NewInt(10000)), - MessageEditStakeAppFee: types.BigIntToString(big.NewInt(10000)), - MessageUnstakeAppFee: types.BigIntToString(big.NewInt(10000)), - MessagePauseAppFee: types.BigIntToString(big.NewInt(10000)), - MessageUnpauseAppFee: types.BigIntToString(big.NewInt(10000)), - MessageStakeValidatorFee: types.BigIntToString(big.NewInt(10000)), - MessageEditStakeValidatorFee: types.BigIntToString(big.NewInt(10000)), - MessageUnstakeValidatorFee: types.BigIntToString(big.NewInt(10000)), - MessagePauseValidatorFee: types.BigIntToString(big.NewInt(10000)), - MessageUnpauseValidatorFee: types.BigIntToString(big.NewInt(10000)), - MessageStakeServiceNodeFee: types.BigIntToString(big.NewInt(10000)), - MessageEditStakeServiceNodeFee: types.BigIntToString(big.NewInt(10000)), - MessageUnstakeServiceNodeFee: types.BigIntToString(big.NewInt(10000)), - MessagePauseServiceNodeFee: types.BigIntToString(big.NewInt(10000)), - MessageUnpauseServiceNodeFee: types.BigIntToString(big.NewInt(10000)), - MessageChangeParameterFee: types.BigIntToString(big.NewInt(10000)), + MessageDoubleSignFee: BigIntToString(big.NewInt(10000)), + MessageSendFee: BigIntToString(big.NewInt(10000)), + MessageStakeFishermanFee: BigIntToString(big.NewInt(10000)), + MessageEditStakeFishermanFee: BigIntToString(big.NewInt(10000)), + MessageUnstakeFishermanFee: BigIntToString(big.NewInt(10000)), + MessagePauseFishermanFee: BigIntToString(big.NewInt(10000)), + MessageUnpauseFishermanFee: BigIntToString(big.NewInt(10000)), + MessageFishermanPauseServiceNodeFee: BigIntToString(big.NewInt(10000)), + MessageTestScoreFee: BigIntToString(big.NewInt(10000)), + MessageProveTestScoreFee: BigIntToString(big.NewInt(10000)), + MessageStakeAppFee: BigIntToString(big.NewInt(10000)), + MessageEditStakeAppFee: BigIntToString(big.NewInt(10000)), + MessageUnstakeAppFee: BigIntToString(big.NewInt(10000)), + MessagePauseAppFee: BigIntToString(big.NewInt(10000)), + MessageUnpauseAppFee: BigIntToString(big.NewInt(10000)), + MessageStakeValidatorFee: BigIntToString(big.NewInt(10000)), + MessageEditStakeValidatorFee: BigIntToString(big.NewInt(10000)), + MessageUnstakeValidatorFee: BigIntToString(big.NewInt(10000)), + MessagePauseValidatorFee: BigIntToString(big.NewInt(10000)), + MessageUnpauseValidatorFee: BigIntToString(big.NewInt(10000)), + MessageStakeServiceNodeFee: BigIntToString(big.NewInt(10000)), + MessageEditStakeServiceNodeFee: BigIntToString(big.NewInt(10000)), + MessageUnstakeServiceNodeFee: BigIntToString(big.NewInt(10000)), + MessagePauseServiceNodeFee: BigIntToString(big.NewInt(10000)), + MessageUnpauseServiceNodeFee: BigIntToString(big.NewInt(10000)), + MessageChangeParameterFee: BigIntToString(big.NewInt(10000)), AclOwner: DefaultParamsOwner.Address().String(), BlocksPerSessionOwner: DefaultParamsOwner.Address().String(), AppMinimumStakeOwner: DefaultParamsOwner.Address().String(), diff --git a/shared/CHANGELOG.md b/shared/CHANGELOG.md index c56752bf4..cbedc491e 100644 --- a/shared/CHANGELOG.md +++ b/shared/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.0.1] - 2022-09-30 +- Used proper `TODO/INVESTIGATE/DISCUSS` convention across package +- Moved TxIndexer Package to Utility to properly encapsulate + ## [0.0.0] - 2022-08-25 ### [#163](https://github.com/pokt-network/pocket/issues/163) Minimization diff --git a/shared/codec/codec.go b/shared/codec/codec.go index ac7765673..7bbda2e28 100644 --- a/shared/codec/codec.go +++ b/shared/codec/codec.go @@ -5,7 +5,7 @@ import ( "google.golang.org/protobuf/types/known/anypb" ) -type Codec interface { // TODO (Team) move to shared. Possibly rename +type Codec interface { Marshal(proto.Message) ([]byte, error) Unmarshal([]byte, proto.Message) error ToAny(proto.Message) (*anypb.Any, error) @@ -48,7 +48,9 @@ func (p *ProtoCodec) FromAny(any *anypb.Any) (proto.Message, error) { return msg, nil } -// TODO(andrew): Retrieve this from the utility module via the application specific bus +// DISCUSS: Retrieve this from the utility module via the application specific bus? +// There are some parts of the code that does not have access to the bus; +// Example: txIndexer func GetCodec() Codec { return &ProtoCodec{} } diff --git a/shared/crypto/keys.go b/shared/crypto/keys.go index 3c825eb88..c446dbd06 100644 --- a/shared/crypto/keys.go +++ b/shared/crypto/keys.go @@ -7,7 +7,7 @@ import ( "log" ) -// TODO(discuss): Consider create a type for signature and having constraints for each type as well. +// DISCUSS Consider create a type for signature and having constraints for each type as well. type Address []byte type PublicKey interface { diff --git a/shared/modules/bus_module.go b/shared/modules/bus_module.go index b57a6bfe9..badd5a28d 100644 --- a/shared/modules/bus_module.go +++ b/shared/modules/bus_module.go @@ -8,7 +8,7 @@ import ( "github.com/pokt-network/pocket/shared/debug" ) -// TODO(design): Discuss if this channel should be of pointers to PocketEvents or not. Pointers +// DISCUSS if this channel should be of pointers to PocketEvents or not. Pointers // would avoid doing object copying, but might also be less thread safe if another goroutine changes // it, which could potentially be a feature rather than a bug. type EventsChannel chan debug.PocketEvent diff --git a/shared/modules/consensus_module.go b/shared/modules/consensus_module.go index cd05f73ec..5275e37aa 100644 --- a/shared/modules/consensus_module.go +++ b/shared/modules/consensus_module.go @@ -7,7 +7,7 @@ import ( "google.golang.org/protobuf/types/known/anypb" ) -type ValidatorMap map[string]Actor // TODO (Drewsky) deprecate Validator map or populate from persistence module +type ValidatorMap map[string]Actor // TODO : Validator map should be a shared interface not a structure type ConsensusModule interface { Module @@ -18,6 +18,6 @@ type ConsensusModule interface { // Consensus State CurrentHeight() uint64 - AppHash() string // DISCUSS: Why not call this a BlockHash or StateHash? Should it be a []byte or string? - ValidatorMap() ValidatorMap // TODO: This needs to be dynamically updated during various operations and network changes. + AppHash() string // DISCUSS: Why not call this a BlockHash or StateHash? Should it be a []byte or string? + ValidatorMap() ValidatorMap } diff --git a/shared/modules/doc/README.md b/shared/modules/doc/README.md index ebb206afd..6b1a2f818 100644 --- a/shared/modules/doc/README.md +++ b/shared/modules/doc/README.md @@ -37,3 +37,70 @@ genesis │   ├── gov.go # default testing parameters ``` + +### Module Typical Usage Example + +##### Create the module + +Module creation uses a typical constructor pattern signature `Create(configPath, genesisPath string) (module.Interface, error)` + +Currently, module creation is not embedded or enforced in the interface to prevent the initializer from having to use +clunky creation syntax -> `modPackage.new(module).Create(configPath, genesisPath)` rather `modPackage.Create(configPath, genesisPath)` + +Essentially, we are currently optimizing for code clarity rather than creation signature enforceability. + +NOTE: **This may change in the future.** + +```golang +newModule, err := newModule.Create(configFilePath, genesisFilePath) + +if err != nil { + // handle error +} +``` + +##### Set the module `bus` + +The `bus` is the specific integration mechanism that enables the greater application. + +Setting the `bus` allows the module to interact with its sibling modules + +```golang +newModule.SetBus(bus) +``` + +##### Start the module + +Starting the module, begins the service and enables operation. + +Starting always comes after creation and setting the bus. + +```golang +err := newModule.Start() + +if err != nil { + // handle error +} +``` + +##### Get the module `bus` + +The bus may be accessed by the module object at anytime using the `getter` + +```golang +bus := newModule.GetBus +``` + +##### Stop the module + +Stopping the module, ends the service and disables operation. + +This is the proper way to conclude the lifecycle of the module + +```golang +err := newModule.Stop() + +if err != nil { + // handle error +} +``` \ No newline at end of file diff --git a/shared/modules/module.go b/shared/modules/module.go index 1255d5cba..49d8f261f 100644 --- a/shared/modules/module.go +++ b/shared/modules/module.go @@ -1,8 +1,5 @@ package modules -// TODO(olshansky): Show an example of `TypicalUsage` -// TODO(drewsky): Add `Create` function; pocket/issues/163 -// TODO(drewsky): Do not embed this inside of modules but force it via an implicit cast at compile time type Module interface { InitializableModule IntegratableModule diff --git a/shared/modules/persistence_module.go b/shared/modules/persistence_module.go index edc0e30cc..41360e5e1 100644 --- a/shared/modules/persistence_module.go +++ b/shared/modules/persistence_module.go @@ -11,14 +11,8 @@ type PersistenceModule interface { Module NewRWContext(height int64) (PersistenceRWContext, error) NewReadContext(height int64) (PersistenceReadContext, error) - - // TODO(drewsky): Make this a context function only and do not expose it at the module level. - // The reason `Olshansky` originally made it a module level function is because - // the module was responsible for maintaining a single write context and assuring - // that a second can't be created (or a previous one is cleaned up) but there is - // likely a better and cleaner approach that simplifies the interface. - ResetContext() error GetBlockStore() kvstore.KVStore + GetWriteContext() PersistenceRWContext // Debugging / development only HandleDebugMessage(*debug.DebugMessage) error @@ -40,15 +34,15 @@ type PersistenceRWContext interface { // NOTE: There's not really a use case for a write only interface, // but it abstracts and contrasts nicely against the read only context -// TODO (andrew) convert address and public key to string not bytes #149 type PersistenceWriteContext interface { - // TODO: Simplify the interface (reference - https://dave.cheney.net/practical-go/presentations/gophercon-israel.html#_prefer_single_method_interfaces) + // DISCUSS: Simplify the interface (reference - https://dave.cheney.net/practical-go/presentations/gophercon-israel.html#_prefer_single_method_interfaces) // - Add general purpose methods such as `ActorOperation(enum_actor_type, ...)` which can be use like so: `Insert(FISHERMAN, ...)` // - Use general purpose parameter methods such as `Set(enum_gov_type, ...)` such as `Set(STAKING_ADJUSTMENT, ...)` // Context Operations NewSavePoint([]byte) error RollbackToSavePoint([]byte) error + ResetContext() error Reset() error Commit() error Release() error @@ -61,7 +55,7 @@ type PersistenceWriteContext interface { StoreTransaction(transactionProtoBytes []byte) error // Block Operations - // TODO_TEMPORARY: Including two functions for the SQL and KV Store as an interim solution + // TEMPORARY: Including two functions for the SQL and KV Store as an interim solution // until we include the schema as part of the SQL Store because persistence // currently has no access to the protobuf schema which is the source of truth. StoreBlock(blockProtoBytes []byte) error // Store the block in the KV Store @@ -72,7 +66,7 @@ type PersistenceWriteContext interface { SubtractPoolAmount(name string, amount string) error SetPoolAmount(name string, amount string) error - InsertPool(name string, address []byte, amount string) error // TODO (Andrew) remove address from pool #149 + InsertPool(name string, address []byte, amount string) error // Account Operations AddAccountAmount(address []byte, amount string) error @@ -117,8 +111,6 @@ type PersistenceWriteContext interface { SetValidatorPauseHeightAndMissedBlocks(address []byte, pauseHeight int64, missedBlocks int) error SetValidatorMissedBlocks(address []byte, missedBlocks int) error - /* TODO(olshansky): review/revisit this in more details */ - // Param Operations InitParams() error SetParam(paramName string, value interface{}) error @@ -193,8 +185,6 @@ type PersistenceReadContext interface { GetValidatorOutputAddress(operator []byte, height int64) (output []byte, err error) GetValidatorMissedBlocks(address []byte, height int64) (int, error) - /* TODO(olshansky): review/revisit this in more details */ - // Params GetIntParam(paramName string, height int64) (int, error) GetStringParam(paramName string, height int64) (string, error) diff --git a/shared/modules/types.go b/shared/modules/types.go index 3c179f3a5..4856c8902 100644 --- a/shared/modules/types.go +++ b/shared/modules/types.go @@ -14,7 +14,7 @@ type GenesisState struct { type BaseConfig struct { RootDirectory string `json:"root_directory"` - PrivateKey string `json:"private_key"` // TODO (pocket/issues/150) better architecture for key management (keybase, keyfiles, etc.) + PrivateKey string `json:"private_key"` // TODO (#150) better architecture for key management (keybase, keyfiles, etc.) } type Config struct { @@ -47,7 +47,7 @@ type PersistenceConfig interface { type P2PConfig interface { GetConsensusPort() uint32 GetUseRainTree() bool - IsEmptyConnType() bool // TODO (team) make enum + IsEmptyConnType() bool // TODO : make enum } type TelemetryConfig interface { @@ -88,7 +88,7 @@ type Actor interface { GetPausedHeight() int64 GetUnstakingHeight() int64 GetOutput() string - GetActorTyp() ActorType // TODO (research) this method has to be implemented manually which is a pain + GetActorTyp() ActorType // RESEARCH: this method has to be implemented manually which is a pain } type ActorType interface { @@ -231,126 +231,6 @@ var _ IConfig = UtilityConfig(nil) var _ IGenesis = PersistenceGenesisState(nil) var _ IGenesis = ConsensusGenesisState(nil) -// TODO think of a way to enforce these configuration interfaces as true configs/genesis, this is merely decorative at this point +// DISCUSS: need a way to enforce these configuration interfaces as true configs/genesis, this is merely decorative at this point type IConfig interface{} type IGenesis interface{} - -// TODO (Team) move to use proto string() and deprecate #149 -const ( - BlocksPerSessionParamName = "blocks_per_session" - - AppMinimumStakeParamName = "app_minimum_stake" - AppMaxChainsParamName = "app_max_chains" - AppBaselineStakeRateParamName = "app_baseline_stake_rate" - AppStakingAdjustmentParamName = "app_staking_adjustment" - AppUnstakingBlocksParamName = "app_unstaking_blocks" - AppMinimumPauseBlocksParamName = "app_minimum_pause_blocks" - AppMaxPauseBlocksParamName = "app_max_pause_blocks" - - ServiceNodeMinimumStakeParamName = "service_node_minimum_stake" - ServiceNodeMaxChainsParamName = "service_node_max_chains" - ServiceNodeUnstakingBlocksParamName = "service_node_unstaking_blocks" - ServiceNodeMinimumPauseBlocksParamName = "service_node_minimum_pause_blocks" - ServiceNodeMaxPauseBlocksParamName = "service_node_max_pause_blocks" - ServiceNodesPerSessionParamName = "service_nodes_per_session" - - FishermanMinimumStakeParamName = "fisherman_minimum_stake" - FishermanMaxChainsParamName = "fisherman_max_chains" - FishermanUnstakingBlocksParamName = "fisherman_unstaking_blocks" - FishermanMinimumPauseBlocksParamName = "fisherman_minimum_pause_blocks" - FishermanMaxPauseBlocksParamName = "fisherman_max_pause_blocks" - - ValidatorMinimumStakeParamName = "validator_minimum_stake" - ValidatorUnstakingBlocksParamName = "validator_unstaking_blocks" - ValidatorMinimumPauseBlocksParamName = "validator_minimum_pause_blocks" - ValidatorMaxPausedBlocksParamName = "validator_max_pause_blocks" - ValidatorMaximumMissedBlocksParamName = "validator_maximum_missed_blocks" - - ValidatorMaxEvidenceAgeInBlocksParamName = "validator_max_evidence_age_in_blocks" - ProposerPercentageOfFeesParamName = "proposer_percentage_of_fees" - MissedBlocksBurnPercentageParamName = "missed_blocks_burn_percentage" - DoubleSignBurnPercentageParamName = "double_sign_burn_percentage" - - MessageDoubleSignFee = "message_double_sign_fee" - MessageSendFee = "message_send_fee" - MessageStakeFishermanFee = "message_stake_fisherman_fee" - MessageEditStakeFishermanFee = "message_edit_stake_fisherman_fee" - MessageUnstakeFishermanFee = "message_unstake_fisherman_fee" - MessagePauseFishermanFee = "message_pause_fisherman_fee" - MessageUnpauseFishermanFee = "message_unpause_fisherman_fee" - MessageFishermanPauseServiceNodeFee = "message_fisherman_pause_service_node_fee" - MessageTestScoreFee = "message_test_score_fee" - MessageProveTestScoreFee = "message_prove_test_score_fee" - MessageStakeAppFee = "message_stake_app_fee" - MessageEditStakeAppFee = "message_edit_stake_app_fee" - MessageUnstakeAppFee = "message_unstake_app_fee" - MessagePauseAppFee = "message_pause_app_fee" - MessageUnpauseAppFee = "message_unpause_app_fee" - MessageStakeValidatorFee = "message_stake_validator_fee" - MessageEditStakeValidatorFee = "message_edit_stake_validator_fee" - MessageUnstakeValidatorFee = "message_unstake_validator_fee" - MessagePauseValidatorFee = "message_pause_validator_fee" - MessageUnpauseValidatorFee = "message_unpause_validator_fee" - MessageStakeServiceNodeFee = "message_stake_service_node_fee" - MessageEditStakeServiceNodeFee = "message_edit_stake_service_node_fee" - MessageUnstakeServiceNodeFee = "message_unstake_service_node_fee" - MessagePauseServiceNodeFee = "message_pause_service_node_fee" - MessageUnpauseServiceNodeFee = "message_unpause_service_node_fee" - MessageChangeParameterFee = "message_change_parameter_fee" - - AclOwner = "acl_owner" - BlocksPerSessionOwner = "blocks_per_session_owner" - AppMinimumStakeOwner = "app_minimum_stake_owner" - AppMaxChainsOwner = "app_max_chains_owner" - AppBaselineStakeRateOwner = "app_baseline_stake_rate_owner" - AppStakingAdjustmentOwner = "app_staking_adjustment_owner" - AppUnstakingBlocksOwner = "app_unstaking_blocks_owner" - AppMinimumPauseBlocksOwner = "app_minimum_pause_blocks_owner" - AppMaxPausedBlocksOwner = "app_max_paused_blocks_owner" - ServiceNodeMinimumStakeOwner = "service_node_minimum_stake_owner" - ServiceNodeMaxChainsOwner = "service_node_max_chains_owner" - ServiceNodeUnstakingBlocksOwner = "service_node_unstaking_blocks_owner" - ServiceNodeMinimumPauseBlocksOwner = "service_node_minimum_pause_blocks_owner" - ServiceNodeMaxPausedBlocksOwner = "service_node_max_paused_blocks_owner" - ServiceNodesPerSessionOwner = "service_nodes_per_session_owner" - FishermanMinimumStakeOwner = "fisherman_minimum_stake_owner" - FishermanMaxChainsOwner = "fisherman_max_chains_owner" - FishermanUnstakingBlocksOwner = "fisherman_unstaking_blocks_owner" - FishermanMinimumPauseBlocksOwner = "fisherman_minimum_pause_blocks_owner" - FishermanMaxPausedBlocksOwner = "fisherman_max_paused_blocks_owner" - ValidatorMinimumStakeOwner = "validator_minimum_stake_owner" - ValidatorUnstakingBlocksOwner = "validator_unstaking_blocks_owner" - ValidatorMinimumPauseBlocksOwner = "validator_minimum_pause_blocks_owner" - ValidatorMaxPausedBlocksOwner = "validator_max_paused_blocks_owner" - ValidatorMaximumMissedBlocksOwner = "validator_maximum_missed_blocks_owner" - ValidatorMaxEvidenceAgeInBlocksOwner = "validator_max_evidence_age_in_blocks_owner" - ProposerPercentageOfFeesOwner = "proposer_percentage_of_fees_owner" - MissedBlocksBurnPercentageOwner = "missed_blocks_burn_percentage_owner" - DoubleSignBurnPercentageOwner = "double_sign_burn_percentage_owner" - MessageDoubleSignFeeOwner = "message_double_sign_fee_owner" - MessageSendFeeOwner = "message_send_fee_owner" - MessageStakeFishermanFeeOwner = "message_stake_fisherman_fee_owner" - MessageEditStakeFishermanFeeOwner = "message_edit_stake_fisherman_fee_owner" - MessageUnstakeFishermanFeeOwner = "message_unstake_fisherman_fee_owner" - MessagePauseFishermanFeeOwner = "message_pause_fisherman_fee_owner" - MessageUnpauseFishermanFeeOwner = "message_unpause_fisherman_fee_owner" - MessageFishermanPauseServiceNodeFeeOwner = "message_fisherman_pause_service_node_fee_owner" - MessageTestScoreFeeOwner = "message_test_score_fee_owner" - MessageProveTestScoreFeeOwner = "message_prove_test_score_fee_owner" - MessageStakeAppFeeOwner = "message_stake_app_fee_owner" - MessageEditStakeAppFeeOwner = "message_edit_stake_app_fee_owner" - MessageUnstakeAppFeeOwner = "message_unstake_app_fee_owner" - MessagePauseAppFeeOwner = "message_pause_app_fee_owner" - MessageUnpauseAppFeeOwner = "message_unpause_app_fee_owner" - MessageStakeValidatorFeeOwner = "message_stake_validator_fee_owner" - MessageEditStakeValidatorFeeOwner = "message_edit_stake_validator_fee_owner" - MessageUnstakeValidatorFeeOwner = "message_unstake_validator_fee_owner" - MessagePauseValidatorFeeOwner = "message_pause_validator_fee_owner" - MessageUnpauseValidatorFeeOwner = "message_unpause_validator_fee_owner" - MessageStakeServiceNodeFeeOwner = "message_stake_service_node_fee_owner" - MessageEditStakeServiceNodeFeeOwner = "message_edit_stake_service_node_fee_owner" - MessageUnstakeServiceNodeFeeOwner = "message_unstake_service_node_fee_owner" - MessagePauseServiceNodeFeeOwner = "message_pause_service_node_fee_owner" - MessageUnpauseServiceNodeFeeOwner = "message_unpause_service_node_fee_owner" - MessageChangeParameterFeeOwner = "message_change_parameter_fee_owner" -) diff --git a/shared/test_artifacts/generator.go b/shared/test_artifacts/generator.go index 912e9fe2b..4786848f3 100644 --- a/shared/test_artifacts/generator.go +++ b/shared/test_artifacts/generator.go @@ -12,7 +12,7 @@ import ( "google.golang.org/protobuf/types/known/timestamppb" ) -// TODO (Team)/INVESTIGATE(olshansy) It seems improperly scoped that the modules have to have shared 'testing' code +// INVESTIGATE It seems improperly scoped that the modules have to have shared 'testing' code // It might be an inevitability to have shared testing code, but would like more eyes on it. // Look for opportunities to make testing completely modular diff --git a/utility/actor.go b/utility/actor.go index 1dfc28b91..f49f1b4fa 100644 --- a/utility/actor.go +++ b/utility/actor.go @@ -6,7 +6,6 @@ import ( typesGenesis "github.com/pokt-network/pocket/persistence/types" "github.com/pokt-network/pocket/shared/crypto" - "github.com/pokt-network/pocket/shared/modules" typesUtil "github.com/pokt-network/pocket/utility/types" ) @@ -158,13 +157,13 @@ func (u *UtilityContext) GetMaxPausedBlocks(actorType typesUtil.UtilActorType) ( switch actorType { case typesUtil.UtilActorType_App: - paramName = modules.AppMaxPauseBlocksParamName + paramName = typesUtil.AppMaxPauseBlocksParamName case typesUtil.UtilActorType_Fish: - paramName = modules.FishermanMaxPauseBlocksParamName + paramName = typesUtil.FishermanMaxPauseBlocksParamName case typesUtil.UtilActorType_Node: - paramName = modules.ServiceNodeMaxPauseBlocksParamName + paramName = typesUtil.ServiceNodeMaxPauseBlocksParamName case typesUtil.UtilActorType_Val: - paramName = modules.ValidatorMaxPausedBlocksParamName + paramName = typesUtil.ValidatorMaxPausedBlocksParamName } maxPausedBlocks, er = store.GetIntParam(paramName, height) @@ -186,13 +185,13 @@ func (u *UtilityContext) GetMinimumPauseBlocks(actorType typesUtil.UtilActorType switch actorType { case typesUtil.UtilActorType_App: - paramName = modules.AppMinimumPauseBlocksParamName + paramName = typesUtil.AppMinimumPauseBlocksParamName case typesUtil.UtilActorType_Fish: - paramName = modules.FishermanMinimumPauseBlocksParamName + paramName = typesUtil.FishermanMinimumPauseBlocksParamName case typesUtil.UtilActorType_Node: - paramName = modules.ServiceNodeMinimumPauseBlocksParamName + paramName = typesUtil.ServiceNodeMinimumPauseBlocksParamName case typesUtil.UtilActorType_Val: - paramName = modules.ValidatorMinimumPauseBlocksParamName + paramName = typesUtil.ValidatorMinimumPauseBlocksParamName } minPauseBlocks, er = store.GetIntParam(paramName, height) @@ -265,13 +264,13 @@ func (u *UtilityContext) GetMinimumStake(actorType typesUtil.UtilActorType) (*bi var minStake string switch actorType { case typesUtil.UtilActorType_App: - paramName = modules.AppMinimumStakeParamName + paramName = typesUtil.AppMinimumStakeParamName case typesUtil.UtilActorType_Fish: - paramName = modules.FishermanMinimumStakeParamName + paramName = typesUtil.FishermanMinimumStakeParamName case typesUtil.UtilActorType_Node: - paramName = modules.ServiceNodeMinimumStakeParamName + paramName = typesUtil.ServiceNodeMinimumStakeParamName case typesUtil.UtilActorType_Val: - paramName = modules.ValidatorMinimumStakeParamName + paramName = typesUtil.ValidatorMinimumStakeParamName } minStake, err = store.GetStringParam(paramName, height) @@ -319,13 +318,13 @@ func (u *UtilityContext) GetUnstakingHeight(actorType typesUtil.UtilActorType) ( var unstakingBlocks int switch actorType { case typesUtil.UtilActorType_App: - paramName = modules.AppUnstakingBlocksParamName + paramName = typesUtil.AppUnstakingBlocksParamName case typesUtil.UtilActorType_Fish: - paramName = modules.FishermanUnstakingBlocksParamName + paramName = typesUtil.FishermanUnstakingBlocksParamName case typesUtil.UtilActorType_Node: - paramName = modules.ServiceNodeUnstakingBlocksParamName + paramName = typesUtil.ServiceNodeUnstakingBlocksParamName case typesUtil.UtilActorType_Val: - paramName = modules.ValidatorUnstakingBlocksParamName + paramName = typesUtil.ValidatorUnstakingBlocksParamName } unstakingBlocks, err = store.GetIntParam(paramName, height) @@ -346,11 +345,11 @@ func (u *UtilityContext) GetMaxChains(actorType typesUtil.UtilActorType) (maxCha var paramName string switch actorType { case typesUtil.UtilActorType_App: - paramName = modules.AppMinimumStakeParamName + paramName = typesUtil.AppMinimumStakeParamName case typesUtil.UtilActorType_Fish: - paramName = modules.FishermanMinimumStakeParamName + paramName = typesUtil.FishermanMinimumStakeParamName case typesUtil.UtilActorType_Node: - paramName = modules.ServiceNodeMinimumStakeParamName + paramName = typesUtil.ServiceNodeMinimumStakeParamName } maxChains, err = store.GetIntParam(paramName, height) diff --git a/utility/gov.go b/utility/gov.go index fa9c16641..55541989e 100644 --- a/utility/gov.go +++ b/utility/gov.go @@ -4,8 +4,6 @@ import ( "log" "math/big" - "github.com/pokt-network/pocket/shared/modules" - typesUtil "github.com/pokt-network/pocket/utility/types" "google.golang.org/protobuf/types/known/wrapperspb" ) @@ -39,225 +37,225 @@ func (u *UtilityContext) GetBlocksPerSession() (int, typesUtil.Error) { store := u.Store() height, err := store.GetHeight() if err != nil { - return typesUtil.ZeroInt, typesUtil.ErrGetParam(modules.BlocksPerSessionParamName, err) + return typesUtil.ZeroInt, typesUtil.ErrGetParam(typesUtil.BlocksPerSessionParamName, err) } blocksPerSession, err := store.GetBlocksPerSession(height) if err != nil { - return typesUtil.ZeroInt, typesUtil.ErrGetParam(modules.BlocksPerSessionParamName, err) + return typesUtil.ZeroInt, typesUtil.ErrGetParam(typesUtil.BlocksPerSessionParamName, err) } return blocksPerSession, nil } func (u *UtilityContext) GetAppMinimumStake() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.AppMinimumStakeParamName) + return u.getBigIntParam(typesUtil.AppMinimumStakeParamName) } func (u *UtilityContext) GetAppMaxChains() (int, typesUtil.Error) { - return u.getIntParam(modules.AppMaxChainsParamName) + return u.getIntParam(typesUtil.AppMaxChainsParamName) } func (u *UtilityContext) GetBaselineAppStakeRate() (int, typesUtil.Error) { - return u.getIntParam(modules.AppBaselineStakeRateParamName) + return u.getIntParam(typesUtil.AppBaselineStakeRateParamName) } func (u *UtilityContext) GetStabilityAdjustment() (int, typesUtil.Error) { - return u.getIntParam(modules.AppStakingAdjustmentParamName) + return u.getIntParam(typesUtil.AppStakingAdjustmentParamName) } func (u *UtilityContext) GetAppUnstakingBlocks() (int64, typesUtil.Error) { - return u.getInt64Param(modules.AppUnstakingBlocksParamName) + return u.getInt64Param(typesUtil.AppUnstakingBlocksParamName) } func (u *UtilityContext) GetAppMinimumPauseBlocks() (int, typesUtil.Error) { - return u.getIntParam(modules.AppMinimumPauseBlocksParamName) + return u.getIntParam(typesUtil.AppMinimumPauseBlocksParamName) } func (u *UtilityContext) GetAppMaxPausedBlocks() (maxPausedBlocks int, err typesUtil.Error) { - return u.getIntParam(modules.AppMaxPauseBlocksParamName) + return u.getIntParam(typesUtil.AppMaxPauseBlocksParamName) } func (u *UtilityContext) GetServiceNodeMinimumStake() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.ServiceNodeMinimumStakeParamName) + return u.getBigIntParam(typesUtil.ServiceNodeMinimumStakeParamName) } func (u *UtilityContext) GetServiceNodeMaxChains() (int, typesUtil.Error) { - return u.getIntParam(modules.ServiceNodeMaxChainsParamName) + return u.getIntParam(typesUtil.ServiceNodeMaxChainsParamName) } func (u *UtilityContext) GetServiceNodeUnstakingBlocks() (int64, typesUtil.Error) { - return u.getInt64Param(modules.ServiceNodeUnstakingBlocksParamName) + return u.getInt64Param(typesUtil.ServiceNodeUnstakingBlocksParamName) } func (u *UtilityContext) GetServiceNodeMinimumPauseBlocks() (int, typesUtil.Error) { - return u.getIntParam(modules.ServiceNodeMinimumPauseBlocksParamName) + return u.getIntParam(typesUtil.ServiceNodeMinimumPauseBlocksParamName) } func (u *UtilityContext) GetServiceNodeMaxPausedBlocks() (maxPausedBlocks int, err typesUtil.Error) { - return u.getIntParam(modules.ServiceNodeMaxPauseBlocksParamName) + return u.getIntParam(typesUtil.ServiceNodeMaxPauseBlocksParamName) } func (u *UtilityContext) GetValidatorMinimumStake() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.ValidatorMinimumStakeParamName) + return u.getBigIntParam(typesUtil.ValidatorMinimumStakeParamName) } func (u *UtilityContext) GetValidatorUnstakingBlocks() (int64, typesUtil.Error) { - return u.getInt64Param(modules.ValidatorUnstakingBlocksParamName) + return u.getInt64Param(typesUtil.ValidatorUnstakingBlocksParamName) } func (u *UtilityContext) GetValidatorMinimumPauseBlocks() (int, typesUtil.Error) { - return u.getIntParam(modules.ValidatorMinimumPauseBlocksParamName) + return u.getIntParam(typesUtil.ValidatorMinimumPauseBlocksParamName) } func (u *UtilityContext) GetValidatorMaxPausedBlocks() (maxPausedBlocks int, err typesUtil.Error) { - return u.getIntParam(modules.ValidatorMaxPausedBlocksParamName) + return u.getIntParam(typesUtil.ValidatorMaxPausedBlocksParamName) } func (u *UtilityContext) GetProposerPercentageOfFees() (proposerPercentage int, err typesUtil.Error) { - return u.getIntParam(modules.ProposerPercentageOfFeesParamName) + return u.getIntParam(typesUtil.ProposerPercentageOfFeesParamName) } func (u *UtilityContext) GetValidatorMaxMissedBlocks() (maxMissedBlocks int, err typesUtil.Error) { - return u.getIntParam(modules.ValidatorMaximumMissedBlocksParamName) + return u.getIntParam(typesUtil.ValidatorMaximumMissedBlocksParamName) } func (u *UtilityContext) GetMaxEvidenceAgeInBlocks() (maxMissedBlocks int, err typesUtil.Error) { - return u.getIntParam(modules.ValidatorMaxEvidenceAgeInBlocksParamName) + return u.getIntParam(typesUtil.ValidatorMaxEvidenceAgeInBlocksParamName) } func (u *UtilityContext) GetDoubleSignBurnPercentage() (burnPercentage int, err typesUtil.Error) { - return u.getIntParam(modules.DoubleSignBurnPercentageParamName) + return u.getIntParam(typesUtil.DoubleSignBurnPercentageParamName) } func (u *UtilityContext) GetMissedBlocksBurnPercentage() (burnPercentage int, err typesUtil.Error) { - return u.getIntParam(modules.MissedBlocksBurnPercentageParamName) + return u.getIntParam(typesUtil.MissedBlocksBurnPercentageParamName) } func (u *UtilityContext) GetFishermanMinimumStake() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.FishermanMinimumStakeParamName) + return u.getBigIntParam(typesUtil.FishermanMinimumStakeParamName) } func (u *UtilityContext) GetFishermanMaxChains() (int, typesUtil.Error) { - return u.getIntParam(modules.FishermanMaxChainsParamName) + return u.getIntParam(typesUtil.FishermanMaxChainsParamName) } func (u *UtilityContext) GetFishermanUnstakingBlocks() (int64, typesUtil.Error) { - return u.getInt64Param(modules.FishermanUnstakingBlocksParamName) + return u.getInt64Param(typesUtil.FishermanUnstakingBlocksParamName) } func (u *UtilityContext) GetFishermanMinimumPauseBlocks() (int, typesUtil.Error) { - return u.getIntParam(modules.FishermanMinimumPauseBlocksParamName) + return u.getIntParam(typesUtil.FishermanMinimumPauseBlocksParamName) } func (u *UtilityContext) GetFishermanMaxPausedBlocks() (maxPausedBlocks int, err typesUtil.Error) { - return u.getIntParam(modules.FishermanMaxPauseBlocksParamName) + return u.getIntParam(typesUtil.FishermanMaxPauseBlocksParamName) } func (u *UtilityContext) GetMessageDoubleSignFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageDoubleSignFee) + return u.getBigIntParam(typesUtil.MessageDoubleSignFee) } func (u *UtilityContext) GetMessageSendFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageSendFee) + return u.getBigIntParam(typesUtil.MessageSendFee) } func (u *UtilityContext) GetMessageStakeFishermanFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageStakeFishermanFee) + return u.getBigIntParam(typesUtil.MessageStakeFishermanFee) } func (u *UtilityContext) GetMessageEditStakeFishermanFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageEditStakeFishermanFee) + return u.getBigIntParam(typesUtil.MessageEditStakeFishermanFee) } func (u *UtilityContext) GetMessageUnstakeFishermanFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageUnstakeFishermanFee) + return u.getBigIntParam(typesUtil.MessageUnstakeFishermanFee) } func (u *UtilityContext) GetMessagePauseFishermanFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessagePauseFishermanFee) + return u.getBigIntParam(typesUtil.MessagePauseFishermanFee) } func (u *UtilityContext) GetMessageUnpauseFishermanFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageUnpauseFishermanFee) + return u.getBigIntParam(typesUtil.MessageUnpauseFishermanFee) } func (u *UtilityContext) GetMessageFishermanPauseServiceNodeFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageFishermanPauseServiceNodeFee) + return u.getBigIntParam(typesUtil.MessageFishermanPauseServiceNodeFee) } func (u *UtilityContext) GetMessageTestScoreFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageTestScoreFee) + return u.getBigIntParam(typesUtil.MessageTestScoreFee) } func (u *UtilityContext) GetMessageProveTestScoreFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageProveTestScoreFee) + return u.getBigIntParam(typesUtil.MessageProveTestScoreFee) } func (u *UtilityContext) GetMessageStakeAppFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageStakeAppFee) + return u.getBigIntParam(typesUtil.MessageStakeAppFee) } func (u *UtilityContext) GetMessageEditStakeAppFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageEditStakeAppFee) + return u.getBigIntParam(typesUtil.MessageEditStakeAppFee) } func (u *UtilityContext) GetMessageUnstakeAppFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageUnstakeAppFee) + return u.getBigIntParam(typesUtil.MessageUnstakeAppFee) } func (u *UtilityContext) GetMessagePauseAppFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessagePauseAppFee) + return u.getBigIntParam(typesUtil.MessagePauseAppFee) } func (u *UtilityContext) GetMessageUnpauseAppFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageUnpauseAppFee) + return u.getBigIntParam(typesUtil.MessageUnpauseAppFee) } func (u *UtilityContext) GetMessageStakeValidatorFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageStakeValidatorFee) + return u.getBigIntParam(typesUtil.MessageStakeValidatorFee) } func (u *UtilityContext) GetMessageEditStakeValidatorFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageEditStakeValidatorFee) + return u.getBigIntParam(typesUtil.MessageEditStakeValidatorFee) } func (u *UtilityContext) GetMessageUnstakeValidatorFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageUnstakeValidatorFee) + return u.getBigIntParam(typesUtil.MessageUnstakeValidatorFee) } func (u *UtilityContext) GetMessagePauseValidatorFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessagePauseValidatorFee) + return u.getBigIntParam(typesUtil.MessagePauseValidatorFee) } func (u *UtilityContext) GetMessageUnpauseValidatorFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageUnpauseValidatorFee) + return u.getBigIntParam(typesUtil.MessageUnpauseValidatorFee) } func (u *UtilityContext) GetMessageStakeServiceNodeFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageStakeServiceNodeFee) + return u.getBigIntParam(typesUtil.MessageStakeServiceNodeFee) } func (u *UtilityContext) GetMessageEditStakeServiceNodeFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageEditStakeServiceNodeFee) + return u.getBigIntParam(typesUtil.MessageEditStakeServiceNodeFee) } func (u *UtilityContext) GetMessageUnstakeServiceNodeFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageUnstakeServiceNodeFee) + return u.getBigIntParam(typesUtil.MessageUnstakeServiceNodeFee) } func (u *UtilityContext) GetMessagePauseServiceNodeFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessagePauseServiceNodeFee) + return u.getBigIntParam(typesUtil.MessagePauseServiceNodeFee) } func (u *UtilityContext) GetMessageUnpauseServiceNodeFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageUnpauseServiceNodeFee) + return u.getBigIntParam(typesUtil.MessageUnpauseServiceNodeFee) } func (u *UtilityContext) GetMessageChangeParameterFee() (*big.Int, typesUtil.Error) { - return u.getBigIntParam(modules.MessageChangeParameterFee) + return u.getBigIntParam(typesUtil.MessageChangeParameterFee) } func (u *UtilityContext) GetDoubleSignFeeOwner() (owner []byte, err typesUtil.Error) { - return u.getByteArrayParam(modules.MessageDoubleSignFeeOwner) + return u.getByteArrayParam(typesUtil.MessageDoubleSignFeeOwner) } func (u *UtilityContext) GetParamOwner(paramName string) ([]byte, error) { @@ -270,222 +268,222 @@ func (u *UtilityContext) GetParamOwner(paramName string) ([]byte, error) { return nil, err } switch paramName { - case modules.AclOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.BlocksPerSessionParamName: - return store.GetBytesParam(modules.BlocksPerSessionOwner, height) - case modules.AppMaxChainsParamName: - return store.GetBytesParam(modules.AppMaxChainsOwner, height) - case modules.AppMinimumStakeParamName: - return store.GetBytesParam(modules.AppMinimumStakeOwner, height) - case modules.AppBaselineStakeRateParamName: - return store.GetBytesParam(modules.AppBaselineStakeRateOwner, height) - case modules.AppStakingAdjustmentParamName: - return store.GetBytesParam(modules.AppStakingAdjustmentOwner, height) - case modules.AppUnstakingBlocksParamName: - return store.GetBytesParam(modules.AppUnstakingBlocksOwner, height) - case modules.AppMinimumPauseBlocksParamName: - return store.GetBytesParam(modules.AppMinimumPauseBlocksOwner, height) - case modules.AppMaxPauseBlocksParamName: - return store.GetBytesParam(modules.AppMaxPausedBlocksOwner, height) - case modules.ServiceNodesPerSessionParamName: - return store.GetBytesParam(modules.ServiceNodesPerSessionOwner, height) - case modules.ServiceNodeMinimumStakeParamName: - return store.GetBytesParam(modules.ServiceNodeMinimumStakeOwner, height) - case modules.ServiceNodeMaxChainsParamName: - return store.GetBytesParam(modules.ServiceNodeMaxChainsOwner, height) - case modules.ServiceNodeUnstakingBlocksParamName: - return store.GetBytesParam(modules.ServiceNodeUnstakingBlocksOwner, height) - case modules.ServiceNodeMinimumPauseBlocksParamName: - return store.GetBytesParam(modules.ServiceNodeMinimumPauseBlocksOwner, height) - case modules.ServiceNodeMaxPauseBlocksParamName: - return store.GetBytesParam(modules.ServiceNodeMaxPausedBlocksOwner, height) - case modules.FishermanMinimumStakeParamName: - return store.GetBytesParam(modules.FishermanMinimumStakeOwner, height) - case modules.FishermanMaxChainsParamName: - return store.GetBytesParam(modules.FishermanMaxChainsOwner, height) - case modules.FishermanUnstakingBlocksParamName: - return store.GetBytesParam(modules.FishermanUnstakingBlocksOwner, height) - case modules.FishermanMinimumPauseBlocksParamName: - return store.GetBytesParam(modules.FishermanMinimumPauseBlocksOwner, height) - case modules.FishermanMaxPauseBlocksParamName: - return store.GetBytesParam(modules.FishermanMaxPausedBlocksOwner, height) - case modules.ValidatorMinimumStakeParamName: - return store.GetBytesParam(modules.ValidatorMinimumStakeOwner, height) - case modules.ValidatorUnstakingBlocksParamName: - return store.GetBytesParam(modules.ValidatorUnstakingBlocksOwner, height) - case modules.ValidatorMinimumPauseBlocksParamName: - return store.GetBytesParam(modules.ValidatorMinimumPauseBlocksOwner, height) - case modules.ValidatorMaxPausedBlocksParamName: - return store.GetBytesParam(modules.ValidatorMaxPausedBlocksOwner, height) - case modules.ValidatorMaximumMissedBlocksParamName: - return store.GetBytesParam(modules.ValidatorMaximumMissedBlocksOwner, height) - case modules.ProposerPercentageOfFeesParamName: - return store.GetBytesParam(modules.ProposerPercentageOfFeesOwner, height) - case modules.ValidatorMaxEvidenceAgeInBlocksParamName: - return store.GetBytesParam(modules.ValidatorMaxEvidenceAgeInBlocksOwner, height) - case modules.MissedBlocksBurnPercentageParamName: - return store.GetBytesParam(modules.MissedBlocksBurnPercentageOwner, height) - case modules.DoubleSignBurnPercentageParamName: - return store.GetBytesParam(modules.DoubleSignBurnPercentageOwner, height) - case modules.MessageDoubleSignFee: - return store.GetBytesParam(modules.MessageDoubleSignFeeOwner, height) - case modules.MessageSendFee: - return store.GetBytesParam(modules.MessageSendFeeOwner, height) - case modules.MessageStakeFishermanFee: - return store.GetBytesParam(modules.MessageStakeFishermanFeeOwner, height) - case modules.MessageEditStakeFishermanFee: - return store.GetBytesParam(modules.MessageEditStakeFishermanFeeOwner, height) - case modules.MessageUnstakeFishermanFee: - return store.GetBytesParam(modules.MessageUnstakeFishermanFeeOwner, height) - case modules.MessagePauseFishermanFee: - return store.GetBytesParam(modules.MessagePauseFishermanFeeOwner, height) - case modules.MessageUnpauseFishermanFee: - return store.GetBytesParam(modules.MessageUnpauseFishermanFeeOwner, height) - case modules.MessageFishermanPauseServiceNodeFee: - return store.GetBytesParam(modules.MessageFishermanPauseServiceNodeFeeOwner, height) - case modules.MessageTestScoreFee: - return store.GetBytesParam(modules.MessageTestScoreFeeOwner, height) - case modules.MessageProveTestScoreFee: - return store.GetBytesParam(modules.MessageProveTestScoreFeeOwner, height) - case modules.MessageStakeAppFee: - return store.GetBytesParam(modules.MessageStakeAppFeeOwner, height) - case modules.MessageEditStakeAppFee: - return store.GetBytesParam(modules.MessageEditStakeAppFeeOwner, height) - case modules.MessageUnstakeAppFee: - return store.GetBytesParam(modules.MessageUnstakeAppFeeOwner, height) - case modules.MessagePauseAppFee: - return store.GetBytesParam(modules.MessagePauseAppFeeOwner, height) - case modules.MessageUnpauseAppFee: - return store.GetBytesParam(modules.MessageUnpauseAppFeeOwner, height) - case modules.MessageStakeValidatorFee: - return store.GetBytesParam(modules.MessageStakeValidatorFeeOwner, height) - case modules.MessageEditStakeValidatorFee: - return store.GetBytesParam(modules.MessageEditStakeValidatorFeeOwner, height) - case modules.MessageUnstakeValidatorFee: - return store.GetBytesParam(modules.MessageUnstakeValidatorFeeOwner, height) - case modules.MessagePauseValidatorFee: - return store.GetBytesParam(modules.MessagePauseValidatorFeeOwner, height) - case modules.MessageUnpauseValidatorFee: - return store.GetBytesParam(modules.MessageUnpauseValidatorFeeOwner, height) - case modules.MessageStakeServiceNodeFee: - return store.GetBytesParam(modules.MessageStakeServiceNodeFeeOwner, height) - case modules.MessageEditStakeServiceNodeFee: - return store.GetBytesParam(modules.MessageEditStakeServiceNodeFeeOwner, height) - case modules.MessageUnstakeServiceNodeFee: - return store.GetBytesParam(modules.MessageUnstakeServiceNodeFeeOwner, height) - case modules.MessagePauseServiceNodeFee: - return store.GetBytesParam(modules.MessagePauseServiceNodeFeeOwner, height) - case modules.MessageUnpauseServiceNodeFee: - return store.GetBytesParam(modules.MessageUnpauseServiceNodeFeeOwner, height) - case modules.MessageChangeParameterFee: - return store.GetBytesParam(modules.MessageChangeParameterFeeOwner, height) - case modules.BlocksPerSessionOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.AppMaxChainsOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.AppMinimumStakeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.AppBaselineStakeRateOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.AppStakingAdjustmentOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.AppUnstakingBlocksOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.AppMinimumPauseBlocksOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.AppMaxPausedBlocksOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.ServiceNodeMinimumStakeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.ServiceNodeMaxChainsOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.ServiceNodeUnstakingBlocksOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.ServiceNodeMinimumPauseBlocksOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.ServiceNodeMaxPausedBlocksOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.ServiceNodesPerSessionOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.FishermanMinimumStakeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.FishermanMaxChainsOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.FishermanUnstakingBlocksOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.FishermanMinimumPauseBlocksOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.FishermanMaxPausedBlocksOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.ValidatorMinimumStakeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.ValidatorUnstakingBlocksOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.ValidatorMinimumPauseBlocksOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.ValidatorMaxPausedBlocksOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.ValidatorMaximumMissedBlocksOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.ProposerPercentageOfFeesOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.ValidatorMaxEvidenceAgeInBlocksOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MissedBlocksBurnPercentageOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.DoubleSignBurnPercentageOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageSendFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageStakeFishermanFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageEditStakeFishermanFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageUnstakeFishermanFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessagePauseFishermanFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageUnpauseFishermanFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageFishermanPauseServiceNodeFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageTestScoreFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageProveTestScoreFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageStakeAppFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageEditStakeAppFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageUnstakeAppFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessagePauseAppFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageUnpauseAppFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageStakeValidatorFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageEditStakeValidatorFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageUnstakeValidatorFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessagePauseValidatorFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageUnpauseValidatorFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageStakeServiceNodeFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageEditStakeServiceNodeFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageUnstakeServiceNodeFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessagePauseServiceNodeFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageUnpauseServiceNodeFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) - case modules.MessageChangeParameterFeeOwner: - return store.GetBytesParam(modules.AclOwner, height) + case typesUtil.AclOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.BlocksPerSessionParamName: + return store.GetBytesParam(typesUtil.BlocksPerSessionOwner, height) + case typesUtil.AppMaxChainsParamName: + return store.GetBytesParam(typesUtil.AppMaxChainsOwner, height) + case typesUtil.AppMinimumStakeParamName: + return store.GetBytesParam(typesUtil.AppMinimumStakeOwner, height) + case typesUtil.AppBaselineStakeRateParamName: + return store.GetBytesParam(typesUtil.AppBaselineStakeRateOwner, height) + case typesUtil.AppStakingAdjustmentParamName: + return store.GetBytesParam(typesUtil.AppStakingAdjustmentOwner, height) + case typesUtil.AppUnstakingBlocksParamName: + return store.GetBytesParam(typesUtil.AppUnstakingBlocksOwner, height) + case typesUtil.AppMinimumPauseBlocksParamName: + return store.GetBytesParam(typesUtil.AppMinimumPauseBlocksOwner, height) + case typesUtil.AppMaxPauseBlocksParamName: + return store.GetBytesParam(typesUtil.AppMaxPausedBlocksOwner, height) + case typesUtil.ServiceNodesPerSessionParamName: + return store.GetBytesParam(typesUtil.ServiceNodesPerSessionOwner, height) + case typesUtil.ServiceNodeMinimumStakeParamName: + return store.GetBytesParam(typesUtil.ServiceNodeMinimumStakeOwner, height) + case typesUtil.ServiceNodeMaxChainsParamName: + return store.GetBytesParam(typesUtil.ServiceNodeMaxChainsOwner, height) + case typesUtil.ServiceNodeUnstakingBlocksParamName: + return store.GetBytesParam(typesUtil.ServiceNodeUnstakingBlocksOwner, height) + case typesUtil.ServiceNodeMinimumPauseBlocksParamName: + return store.GetBytesParam(typesUtil.ServiceNodeMinimumPauseBlocksOwner, height) + case typesUtil.ServiceNodeMaxPauseBlocksParamName: + return store.GetBytesParam(typesUtil.ServiceNodeMaxPausedBlocksOwner, height) + case typesUtil.FishermanMinimumStakeParamName: + return store.GetBytesParam(typesUtil.FishermanMinimumStakeOwner, height) + case typesUtil.FishermanMaxChainsParamName: + return store.GetBytesParam(typesUtil.FishermanMaxChainsOwner, height) + case typesUtil.FishermanUnstakingBlocksParamName: + return store.GetBytesParam(typesUtil.FishermanUnstakingBlocksOwner, height) + case typesUtil.FishermanMinimumPauseBlocksParamName: + return store.GetBytesParam(typesUtil.FishermanMinimumPauseBlocksOwner, height) + case typesUtil.FishermanMaxPauseBlocksParamName: + return store.GetBytesParam(typesUtil.FishermanMaxPausedBlocksOwner, height) + case typesUtil.ValidatorMinimumStakeParamName: + return store.GetBytesParam(typesUtil.ValidatorMinimumStakeOwner, height) + case typesUtil.ValidatorUnstakingBlocksParamName: + return store.GetBytesParam(typesUtil.ValidatorUnstakingBlocksOwner, height) + case typesUtil.ValidatorMinimumPauseBlocksParamName: + return store.GetBytesParam(typesUtil.ValidatorMinimumPauseBlocksOwner, height) + case typesUtil.ValidatorMaxPausedBlocksParamName: + return store.GetBytesParam(typesUtil.ValidatorMaxPausedBlocksOwner, height) + case typesUtil.ValidatorMaximumMissedBlocksParamName: + return store.GetBytesParam(typesUtil.ValidatorMaximumMissedBlocksOwner, height) + case typesUtil.ProposerPercentageOfFeesParamName: + return store.GetBytesParam(typesUtil.ProposerPercentageOfFeesOwner, height) + case typesUtil.ValidatorMaxEvidenceAgeInBlocksParamName: + return store.GetBytesParam(typesUtil.ValidatorMaxEvidenceAgeInBlocksOwner, height) + case typesUtil.MissedBlocksBurnPercentageParamName: + return store.GetBytesParam(typesUtil.MissedBlocksBurnPercentageOwner, height) + case typesUtil.DoubleSignBurnPercentageParamName: + return store.GetBytesParam(typesUtil.DoubleSignBurnPercentageOwner, height) + case typesUtil.MessageDoubleSignFee: + return store.GetBytesParam(typesUtil.MessageDoubleSignFeeOwner, height) + case typesUtil.MessageSendFee: + return store.GetBytesParam(typesUtil.MessageSendFeeOwner, height) + case typesUtil.MessageStakeFishermanFee: + return store.GetBytesParam(typesUtil.MessageStakeFishermanFeeOwner, height) + case typesUtil.MessageEditStakeFishermanFee: + return store.GetBytesParam(typesUtil.MessageEditStakeFishermanFeeOwner, height) + case typesUtil.MessageUnstakeFishermanFee: + return store.GetBytesParam(typesUtil.MessageUnstakeFishermanFeeOwner, height) + case typesUtil.MessagePauseFishermanFee: + return store.GetBytesParam(typesUtil.MessagePauseFishermanFeeOwner, height) + case typesUtil.MessageUnpauseFishermanFee: + return store.GetBytesParam(typesUtil.MessageUnpauseFishermanFeeOwner, height) + case typesUtil.MessageFishermanPauseServiceNodeFee: + return store.GetBytesParam(typesUtil.MessageFishermanPauseServiceNodeFeeOwner, height) + case typesUtil.MessageTestScoreFee: + return store.GetBytesParam(typesUtil.MessageTestScoreFeeOwner, height) + case typesUtil.MessageProveTestScoreFee: + return store.GetBytesParam(typesUtil.MessageProveTestScoreFeeOwner, height) + case typesUtil.MessageStakeAppFee: + return store.GetBytesParam(typesUtil.MessageStakeAppFeeOwner, height) + case typesUtil.MessageEditStakeAppFee: + return store.GetBytesParam(typesUtil.MessageEditStakeAppFeeOwner, height) + case typesUtil.MessageUnstakeAppFee: + return store.GetBytesParam(typesUtil.MessageUnstakeAppFeeOwner, height) + case typesUtil.MessagePauseAppFee: + return store.GetBytesParam(typesUtil.MessagePauseAppFeeOwner, height) + case typesUtil.MessageUnpauseAppFee: + return store.GetBytesParam(typesUtil.MessageUnpauseAppFeeOwner, height) + case typesUtil.MessageStakeValidatorFee: + return store.GetBytesParam(typesUtil.MessageStakeValidatorFeeOwner, height) + case typesUtil.MessageEditStakeValidatorFee: + return store.GetBytesParam(typesUtil.MessageEditStakeValidatorFeeOwner, height) + case typesUtil.MessageUnstakeValidatorFee: + return store.GetBytesParam(typesUtil.MessageUnstakeValidatorFeeOwner, height) + case typesUtil.MessagePauseValidatorFee: + return store.GetBytesParam(typesUtil.MessagePauseValidatorFeeOwner, height) + case typesUtil.MessageUnpauseValidatorFee: + return store.GetBytesParam(typesUtil.MessageUnpauseValidatorFeeOwner, height) + case typesUtil.MessageStakeServiceNodeFee: + return store.GetBytesParam(typesUtil.MessageStakeServiceNodeFeeOwner, height) + case typesUtil.MessageEditStakeServiceNodeFee: + return store.GetBytesParam(typesUtil.MessageEditStakeServiceNodeFeeOwner, height) + case typesUtil.MessageUnstakeServiceNodeFee: + return store.GetBytesParam(typesUtil.MessageUnstakeServiceNodeFeeOwner, height) + case typesUtil.MessagePauseServiceNodeFee: + return store.GetBytesParam(typesUtil.MessagePauseServiceNodeFeeOwner, height) + case typesUtil.MessageUnpauseServiceNodeFee: + return store.GetBytesParam(typesUtil.MessageUnpauseServiceNodeFeeOwner, height) + case typesUtil.MessageChangeParameterFee: + return store.GetBytesParam(typesUtil.MessageChangeParameterFeeOwner, height) + case typesUtil.BlocksPerSessionOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.AppMaxChainsOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.AppMinimumStakeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.AppBaselineStakeRateOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.AppStakingAdjustmentOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.AppUnstakingBlocksOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.AppMinimumPauseBlocksOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.AppMaxPausedBlocksOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.ServiceNodeMinimumStakeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.ServiceNodeMaxChainsOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.ServiceNodeUnstakingBlocksOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.ServiceNodeMinimumPauseBlocksOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.ServiceNodeMaxPausedBlocksOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.ServiceNodesPerSessionOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.FishermanMinimumStakeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.FishermanMaxChainsOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.FishermanUnstakingBlocksOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.FishermanMinimumPauseBlocksOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.FishermanMaxPausedBlocksOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.ValidatorMinimumStakeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.ValidatorUnstakingBlocksOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.ValidatorMinimumPauseBlocksOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.ValidatorMaxPausedBlocksOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.ValidatorMaximumMissedBlocksOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.ProposerPercentageOfFeesOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.ValidatorMaxEvidenceAgeInBlocksOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MissedBlocksBurnPercentageOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.DoubleSignBurnPercentageOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageSendFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageStakeFishermanFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageEditStakeFishermanFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageUnstakeFishermanFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessagePauseFishermanFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageUnpauseFishermanFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageFishermanPauseServiceNodeFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageTestScoreFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageProveTestScoreFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageStakeAppFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageEditStakeAppFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageUnstakeAppFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessagePauseAppFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageUnpauseAppFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageStakeValidatorFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageEditStakeValidatorFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageUnstakeValidatorFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessagePauseValidatorFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageUnpauseValidatorFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageStakeServiceNodeFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageEditStakeServiceNodeFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageUnstakeServiceNodeFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessagePauseServiceNodeFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageUnpauseServiceNodeFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) + case typesUtil.MessageChangeParameterFeeOwner: + return store.GetBytesParam(typesUtil.AclOwner, height) default: return nil, typesUtil.ErrUnknownParam(paramName) } diff --git a/utility/indexer/doc/README.md b/utility/indexer/doc/README.md new file mode 100644 index 000000000..758bf407b --- /dev/null +++ b/utility/indexer/doc/README.md @@ -0,0 +1,13 @@ +## Transaction Indexer + + +`txIndexer` implementation uses a `KVStore` (interface) to index the transactions + +The transaction is indexed in the following formats: +- HASHKEY: "h/SHA3(TxResultProtoBytes)" VAL: TxResultProtoBytes store value by hash (the key here is equivalent to the VALs below) +- HEIGHTKEY: "b/height/index" VAL: HASHKEY store hashKey by height +- SENDERKEY: "s/senderAddr" VAL: HASHKEY store hashKey by sender +- RECIPIENTKEY: "r/recipientAddr" VAL: HASHKEY store hashKey by recipient (if not empty) + +FOOTNOTE: the height/index store is using [ELEN](https://github.com/jordanorelli/lexnum/blob/master/elen.pdf) +This is to ensure the results are stored sorted (assuming the `KVStore`` uses a byte-wise lexicographical sorting) \ No newline at end of file diff --git a/shared/indexer/indexer.go b/utility/indexer/indexer.go similarity index 88% rename from shared/indexer/indexer.go rename to utility/indexer/indexer.go index 559ca1f6e..0ea6cb537 100644 --- a/shared/indexer/indexer.go +++ b/utility/indexer/indexer.go @@ -15,7 +15,6 @@ import ( // Interface // `TxIndexer` interface defines methods to index and query transactions. -// TODO: Link to the `bus` module type TxIndexer interface { // `Index` analyzes, indexes and stores a single transaction result. // `Index` indexes by `(hash, height, sender, recipient)` @@ -58,19 +57,6 @@ type TxResult interface { var _ TxResult = &DefaultTxResult{} var _ TxIndexer = &txIndexer{} -// TODO(andrew): Move this documentation to a README. - -// `txIndexer` implementation uses a `KVStore` (interface) to index the transactions -// -// The transaction is indexed in the following formats: -// - HASHKEY: "h/SHA3(TxResultProtoBytes)" VAL: TxResultProtoBytes // store value by hash (the key here is equivalent to the VALs below) -// - HEIGHTKEY: "b/height/index" VAL: HASHKEY // store hashKey by height -// - SENDERKEY: "s/senderAddr" VAL: HASHKEY // store hashKey by sender -// - RECIPIENTKEY: "r/recipientAddr" VAL: HASHKEY // store hashKey by recipient (if not empty) -// -// FOOTNOTE: the height/index store is using [ELEN](https://github.com/jordanorelli/lexnum/blob/master/elen.pdf) -// This is to ensure the results are stored sorted (assuming the `KVStore`` uses a byte-wise lexicographical sorting) - const ( hashPrefix = 'h' heightPrefix = 'b' // b for block diff --git a/shared/indexer/indexer_test.go b/utility/indexer/indexer_test.go similarity index 100% rename from shared/indexer/indexer_test.go rename to utility/indexer/indexer_test.go diff --git a/shared/indexer/proto/transaction_indexer.proto b/utility/indexer/proto/transaction_indexer.proto similarity index 87% rename from shared/indexer/proto/transaction_indexer.proto rename to utility/indexer/proto/transaction_indexer.proto index 9a406bbaf..79edb8d1f 100644 --- a/shared/indexer/proto/transaction_indexer.proto +++ b/utility/indexer/proto/transaction_indexer.proto @@ -11,5 +11,5 @@ message DefaultTxResult { string error = 5; // INVESTIGATE(andrew): look into having a `utility.Error` enum for this string signer_addr = 6; string recipient_addr = 7; - string message_type = 8; // TODO(andrew): Add an enum for the different message types + string message_type = 8; } \ No newline at end of file diff --git a/utility/test/actor_test.go b/utility/test/actor_test.go index eece20852..1742dd5ee 100644 --- a/utility/test/actor_test.go +++ b/utility/test/actor_test.go @@ -111,13 +111,13 @@ func TestUtilityContext_HandleMessageUnpause(t *testing.T) { var err error switch actorType { case typesUtil.UtilActorType_Val: - err = ctx.Context.SetParam(modules.ValidatorMinimumPauseBlocksParamName, 0) + err = ctx.Context.SetParam(typesUtil.ValidatorMinimumPauseBlocksParamName, 0) case typesUtil.UtilActorType_Node: - err = ctx.Context.SetParam(modules.ServiceNodeMinimumPauseBlocksParamName, 0) + err = ctx.Context.SetParam(typesUtil.ServiceNodeMinimumPauseBlocksParamName, 0) case typesUtil.UtilActorType_App: - err = ctx.Context.SetParam(modules.AppMinimumPauseBlocksParamName, 0) + err = ctx.Context.SetParam(typesUtil.AppMinimumPauseBlocksParamName, 0) case typesUtil.UtilActorType_Fish: - err = ctx.Context.SetParam(modules.FishermanMinimumPauseBlocksParamName, 0) + err = ctx.Context.SetParam(typesUtil.FishermanMinimumPauseBlocksParamName, 0) default: t.Fatalf("unexpected actor type %s", actorType.GetActorName()) } @@ -155,13 +155,13 @@ func TestUtilityContext_HandleMessageUnstake(t *testing.T) { var err error switch actorType { case typesUtil.UtilActorType_App: - err = ctx.Context.SetParam(modules.AppMinimumPauseBlocksParamName, 0) + err = ctx.Context.SetParam(typesUtil.AppMinimumPauseBlocksParamName, 0) case typesUtil.UtilActorType_Val: - err = ctx.Context.SetParam(modules.ValidatorMinimumPauseBlocksParamName, 0) + err = ctx.Context.SetParam(typesUtil.ValidatorMinimumPauseBlocksParamName, 0) case typesUtil.UtilActorType_Fish: - err = ctx.Context.SetParam(modules.FishermanMinimumPauseBlocksParamName, 0) + err = ctx.Context.SetParam(typesUtil.FishermanMinimumPauseBlocksParamName, 0) case typesUtil.UtilActorType_Node: - err = ctx.Context.SetParam(modules.ServiceNodeMinimumPauseBlocksParamName, 0) + err = ctx.Context.SetParam(typesUtil.ServiceNodeMinimumPauseBlocksParamName, 0) default: t.Fatalf("unexpected actor type %s", actorType.GetActorName()) } @@ -196,13 +196,13 @@ func TestUtilityContext_BeginUnstakingMaxPaused(t *testing.T) { require.NoError(t, err) switch actorType { case typesUtil.UtilActorType_App: - err = ctx.Context.SetParam(modules.AppMaxPauseBlocksParamName, 0) + err = ctx.Context.SetParam(typesUtil.AppMaxPauseBlocksParamName, 0) case typesUtil.UtilActorType_Val: - err = ctx.Context.SetParam(modules.ValidatorMaxPausedBlocksParamName, 0) + err = ctx.Context.SetParam(typesUtil.ValidatorMaxPausedBlocksParamName, 0) case typesUtil.UtilActorType_Fish: - err = ctx.Context.SetParam(modules.FishermanMaxPauseBlocksParamName, 0) + err = ctx.Context.SetParam(typesUtil.FishermanMaxPauseBlocksParamName, 0) case typesUtil.UtilActorType_Node: - err = ctx.Context.SetParam(modules.ServiceNodeMaxPauseBlocksParamName, 0) + err = ctx.Context.SetParam(typesUtil.ServiceNodeMaxPauseBlocksParamName, 0) default: t.Fatalf("unexpected actor type %s", actorType.GetActorName()) } @@ -374,7 +374,7 @@ func TestUtilityContext_UnstakesPausedBefore(t *testing.T) { require.NoError(t, err) require.True(t, actor.GetUnstakingHeight() == -1, fmt.Sprintf("wrong starting status")) require.NoError(t, ctx.SetActorPauseHeight(typesUtil.UtilActorType_App, addrBz, 0), "set actor pause height") - err = ctx.Context.SetParam(modules.AppMaxPauseBlocksParamName, 0) + err = ctx.Context.SetParam(typesUtil.AppMaxPauseBlocksParamName, 0) require.NoError(t, err) require.NoError(t, ctx.UnstakeActorPausedBefore(0, typesUtil.UtilActorType_App), "unstake actor pause before") require.NoError(t, ctx.UnstakeActorPausedBefore(1, typesUtil.UtilActorType_App), "unstake actor pause before height 1") @@ -389,7 +389,7 @@ func TestUtilityContext_UnstakesPausedBefore(t *testing.T) { func TestUtilityContext_UnstakesThatAreReady(t *testing.T) { ctx := NewTestingUtilityContext(t, 0) ctx.SetPoolAmount("AppStakePool", big.NewInt(math.MaxInt64)) - err := ctx.Context.SetParam(modules.AppUnstakingBlocksParamName, 0) + err := ctx.Context.SetParam(typesUtil.AppUnstakingBlocksParamName, 0) require.NoError(t, err) actors := GetAllTestingApps(t, ctx) for _, actor := range actors { @@ -467,13 +467,13 @@ func TestUtilityContext_UnstakePausedBefore(t *testing.T) { var er error switch actorType { case typesUtil.UtilActorType_App: - er = ctx.Context.SetParam(modules.AppMaxPauseBlocksParamName, 0) + er = ctx.Context.SetParam(typesUtil.AppMaxPauseBlocksParamName, 0) case typesUtil.UtilActorType_Val: - er = ctx.Context.SetParam(modules.ValidatorMaxPausedBlocksParamName, 0) + er = ctx.Context.SetParam(typesUtil.ValidatorMaxPausedBlocksParamName, 0) case typesUtil.UtilActorType_Fish: - er = ctx.Context.SetParam(modules.FishermanMaxPauseBlocksParamName, 0) + er = ctx.Context.SetParam(typesUtil.FishermanMaxPauseBlocksParamName, 0) case typesUtil.UtilActorType_Node: - er = ctx.Context.SetParam(modules.ServiceNodeMaxPauseBlocksParamName, 0) + er = ctx.Context.SetParam(typesUtil.ServiceNodeMaxPauseBlocksParamName, 0) default: t.Fatalf("unexpected actor type %s", actorType.GetActorName()) } @@ -516,17 +516,17 @@ func TestUtilityContext_UnstakeActorsThatAreReady(t *testing.T) { var err1, err2 error switch actorType { case typesUtil.UtilActorType_App: - err1 = ctx.Context.SetParam(modules.AppUnstakingBlocksParamName, 0) - err2 = ctx.Context.SetParam(modules.AppMaxPauseBlocksParamName, 0) + err1 = ctx.Context.SetParam(typesUtil.AppUnstakingBlocksParamName, 0) + err2 = ctx.Context.SetParam(typesUtil.AppMaxPauseBlocksParamName, 0) case typesUtil.UtilActorType_Val: - err1 = ctx.Context.SetParam(modules.ValidatorUnstakingBlocksParamName, 0) - err2 = ctx.Context.SetParam(modules.ValidatorMaxPausedBlocksParamName, 0) + err1 = ctx.Context.SetParam(typesUtil.ValidatorUnstakingBlocksParamName, 0) + err2 = ctx.Context.SetParam(typesUtil.ValidatorMaxPausedBlocksParamName, 0) case typesUtil.UtilActorType_Fish: - err1 = ctx.Context.SetParam(modules.FishermanUnstakingBlocksParamName, 0) - err2 = ctx.Context.SetParam(modules.FishermanMaxPauseBlocksParamName, 0) + err1 = ctx.Context.SetParam(typesUtil.FishermanUnstakingBlocksParamName, 0) + err2 = ctx.Context.SetParam(typesUtil.FishermanMaxPauseBlocksParamName, 0) case typesUtil.UtilActorType_Node: - err1 = ctx.Context.SetParam(modules.ServiceNodeUnstakingBlocksParamName, 0) - err2 = ctx.Context.SetParam(modules.ServiceNodeMaxPauseBlocksParamName, 0) + err1 = ctx.Context.SetParam(typesUtil.ServiceNodeUnstakingBlocksParamName, 0) + err2 = ctx.Context.SetParam(typesUtil.ServiceNodeMaxPauseBlocksParamName, 0) default: t.Fatalf("unexpected actor type %s", actorType.GetActorName()) } diff --git a/utility/test/block_test.go b/utility/test/block_test.go index c1441e405..65c942f7d 100644 --- a/utility/test/block_test.go +++ b/utility/test/block_test.go @@ -3,7 +3,6 @@ package test import ( "encoding/hex" "fmt" - "github.com/pokt-network/pocket/shared/modules" "github.com/pokt-network/pocket/shared/test_artifacts" "math" "math/big" @@ -105,13 +104,13 @@ func TestUtilityContext_BeginUnstakingMaxPausedActors(t *testing.T) { var err error switch actorType { case typesUtil.UtilActorType_App: - err = ctx.Context.SetParam(modules.AppMaxPauseBlocksParamName, 0) + err = ctx.Context.SetParam(typesUtil.AppMaxPauseBlocksParamName, 0) case typesUtil.UtilActorType_Val: - err = ctx.Context.SetParam(modules.ValidatorMaxPausedBlocksParamName, 0) + err = ctx.Context.SetParam(typesUtil.ValidatorMaxPausedBlocksParamName, 0) case typesUtil.UtilActorType_Fish: - err = ctx.Context.SetParam(modules.FishermanMaxPauseBlocksParamName, 0) + err = ctx.Context.SetParam(typesUtil.FishermanMaxPauseBlocksParamName, 0) case typesUtil.UtilActorType_Node: - err = ctx.Context.SetParam(modules.ServiceNodeMaxPauseBlocksParamName, 0) + err = ctx.Context.SetParam(typesUtil.ServiceNodeMaxPauseBlocksParamName, 0) default: t.Fatalf("unexpected actor type %s", actorType.GetActorName()) } @@ -191,10 +190,10 @@ func TestUtilityContext_UnstakeValidatorsActorsThatAreReady(t *testing.T) { poolName := actorType.GetActorPoolName() ctx.SetPoolAmount(poolName, big.NewInt(math.MaxInt64)) - err := ctx.Context.SetParam(modules.AppUnstakingBlocksParamName, 0) + err := ctx.Context.SetParam(typesUtil.AppUnstakingBlocksParamName, 0) require.NoError(t, err) - err = ctx.Context.SetParam(modules.AppMaxPauseBlocksParamName, 0) + err = ctx.Context.SetParam(typesUtil.AppMaxPauseBlocksParamName, 0) require.NoError(t, err) actors := GetAllTestingActors(t, ctx, actorType) diff --git a/utility/test/gov_test.go b/utility/test/gov_test.go index 2dcb852fc..22e465438 100644 --- a/utility/test/gov_test.go +++ b/utility/test/gov_test.go @@ -634,7 +634,7 @@ func TestUtilityContext_HandleMessageChangeParameter(t *testing.T) { require.NoError(t, er) msg := &typesUtil.MessageChangeParameter{ Owner: paramOwnerPK.Address(), - ParameterKey: modules.MissedBlocksBurnPercentageParamName, + ParameterKey: typesUtil.MissedBlocksBurnPercentageParamName, ParameterValue: any, } require.NoError(t, ctx.HandleMessageChangeParameter(msg), "handle message change param") @@ -649,436 +649,436 @@ func TestUtilityContext_GetParamOwner(t *testing.T) { ctx := NewTestingUtilityContext(t, 0) defaultParams := DefaultTestingParams(t) defaultParam := defaultParams.GetAclOwner() - gotParam, err := ctx.GetParamOwner(modules.AclOwner) + gotParam, err := ctx.GetParamOwner(typesUtil.AclOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetBlocksPerSessionOwner() - gotParam, err = ctx.GetParamOwner(modules.BlocksPerSessionParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.BlocksPerSessionParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAppMaxChainsOwner() - gotParam, err = ctx.GetParamOwner(modules.AppMaxChainsParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.AppMaxChainsParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAppMinimumStakeOwner() - gotParam, err = ctx.GetParamOwner(modules.AppMinimumStakeParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.AppMinimumStakeParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAppBaselineStakeRateOwner() - gotParam, err = ctx.GetParamOwner(modules.AppBaselineStakeRateParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.AppBaselineStakeRateParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAppStakingAdjustmentOwner() - gotParam, err = ctx.GetParamOwner(modules.AppStakingAdjustmentOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.AppStakingAdjustmentOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAppUnstakingBlocksOwner() - gotParam, err = ctx.GetParamOwner(modules.AppUnstakingBlocksParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.AppUnstakingBlocksParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAppMinimumPauseBlocksOwner() - gotParam, err = ctx.GetParamOwner(modules.AppMinimumPauseBlocksParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.AppMinimumPauseBlocksParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAppMaxPausedBlocksOwner() - gotParam, err = ctx.GetParamOwner(modules.AppMaxPauseBlocksParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.AppMaxPauseBlocksParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetServiceNodesPerSessionOwner() - gotParam, err = ctx.GetParamOwner(modules.ServiceNodesPerSessionParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.ServiceNodesPerSessionParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetServiceNodeMinimumStakeOwner() - gotParam, err = ctx.GetParamOwner(modules.ServiceNodeMinimumStakeParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.ServiceNodeMinimumStakeParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetServiceNodeMaxChainsOwner() - gotParam, err = ctx.GetParamOwner(modules.ServiceNodeMaxChainsParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.ServiceNodeMaxChainsParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetServiceNodeUnstakingBlocksOwner() - gotParam, err = ctx.GetParamOwner(modules.ServiceNodeUnstakingBlocksParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.ServiceNodeUnstakingBlocksParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetServiceNodeMinimumPauseBlocksOwner() - gotParam, err = ctx.GetParamOwner(modules.ServiceNodeMinimumPauseBlocksParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.ServiceNodeMinimumPauseBlocksParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetServiceNodeMaxPausedBlocksOwner() - gotParam, err = ctx.GetParamOwner(modules.ServiceNodeMaxPauseBlocksParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.ServiceNodeMaxPauseBlocksParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetFishermanMinimumStakeOwner() - gotParam, err = ctx.GetParamOwner(modules.FishermanMinimumStakeParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.FishermanMinimumStakeParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetServiceNodeMaxChainsOwner() - gotParam, err = ctx.GetParamOwner(modules.ServiceNodeMaxPauseBlocksParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.ServiceNodeMaxPauseBlocksParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetFishermanUnstakingBlocksOwner() - gotParam, err = ctx.GetParamOwner(modules.FishermanUnstakingBlocksParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.FishermanUnstakingBlocksParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetFishermanMinimumPauseBlocksOwner() - gotParam, err = ctx.GetParamOwner(modules.FishermanMinimumPauseBlocksParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.FishermanMinimumPauseBlocksParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetFishermanMaxPausedBlocksOwner() - gotParam, err = ctx.GetParamOwner(modules.FishermanMaxPauseBlocksParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.FishermanMaxPauseBlocksParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetValidatorMinimumStakeOwner() - gotParam, err = ctx.GetParamOwner(modules.ValidatorMinimumStakeParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.ValidatorMinimumStakeParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetValidatorUnstakingBlocksOwner() - gotParam, err = ctx.GetParamOwner(modules.ValidatorUnstakingBlocksParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.ValidatorUnstakingBlocksParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetValidatorMinimumPauseBlocksOwner() - gotParam, err = ctx.GetParamOwner(modules.ValidatorMinimumPauseBlocksParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.ValidatorMinimumPauseBlocksParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetValidatorMaxPausedBlocksOwner() - gotParam, err = ctx.GetParamOwner(modules.ValidatorMaxPausedBlocksParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.ValidatorMaxPausedBlocksParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetValidatorMaximumMissedBlocksOwner() - gotParam, err = ctx.GetParamOwner(modules.ValidatorMaximumMissedBlocksParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.ValidatorMaximumMissedBlocksParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetProposerPercentageOfFeesOwner() - gotParam, err = ctx.GetParamOwner(modules.ProposerPercentageOfFeesParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.ProposerPercentageOfFeesParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetValidatorMaxEvidenceAgeInBlocksOwner() - gotParam, err = ctx.GetParamOwner(modules.ValidatorMaxEvidenceAgeInBlocksParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.ValidatorMaxEvidenceAgeInBlocksParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMissedBlocksBurnPercentageOwner() - gotParam, err = ctx.GetParamOwner(modules.MissedBlocksBurnPercentageParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.MissedBlocksBurnPercentageParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetDoubleSignBurnPercentageOwner() - gotParam, err = ctx.GetParamOwner(modules.DoubleSignBurnPercentageParamName) + gotParam, err = ctx.GetParamOwner(typesUtil.DoubleSignBurnPercentageParamName) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageDoubleSignFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageDoubleSignFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageDoubleSignFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageSendFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageSendFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageSendFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageStakeFishermanFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageStakeFishermanFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageStakeFishermanFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageEditStakeFishermanFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageEditStakeFishermanFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageEditStakeFishermanFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageUnstakeFishermanFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageUnstakeFishermanFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageUnstakeFishermanFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessagePauseFishermanFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessagePauseFishermanFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessagePauseFishermanFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageUnpauseFishermanFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageUnpauseFishermanFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageUnpauseFishermanFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageTestScoreFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageTestScoreFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageTestScoreFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageFishermanPauseServiceNodeFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageFishermanPauseServiceNodeFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageFishermanPauseServiceNodeFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageProveTestScoreFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageProveTestScoreFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageProveTestScoreFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageStakeAppFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageStakeAppFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageStakeAppFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageEditStakeAppFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageEditStakeAppFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageEditStakeAppFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageUnstakeAppFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageUnstakeAppFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageUnstakeAppFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessagePauseAppFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessagePauseAppFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessagePauseAppFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageUnpauseAppFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageUnpauseAppFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageUnpauseAppFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageStakeValidatorFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageStakeValidatorFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageStakeValidatorFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageEditStakeValidatorFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageEditStakeValidatorFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageEditStakeValidatorFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageUnstakeValidatorFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageUnstakeValidatorFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageUnstakeValidatorFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessagePauseValidatorFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessagePauseValidatorFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessagePauseValidatorFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageUnpauseValidatorFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageUnpauseValidatorFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageUnpauseValidatorFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageStakeServiceNodeFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageStakeServiceNodeFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageStakeServiceNodeFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageEditStakeServiceNodeFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageEditStakeServiceNodeFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageEditStakeServiceNodeFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageUnstakeServiceNodeFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageUnstakeServiceNodeFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageUnstakeServiceNodeFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessagePauseServiceNodeFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessagePauseServiceNodeFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessagePauseServiceNodeFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageUnpauseServiceNodeFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageUnpauseServiceNodeFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageUnpauseServiceNodeFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetMessageChangeParameterFeeOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageChangeParameterFee) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageChangeParameterFee) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) // owners defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.BlocksPerSessionOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.BlocksPerSessionOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.AppMaxChainsOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.AppMaxChainsOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.AppMinimumStakeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.AppMinimumStakeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.AppBaselineStakeRateOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.AppBaselineStakeRateOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.AppStakingAdjustmentOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.AppStakingAdjustmentOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.AppUnstakingBlocksOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.AppUnstakingBlocksOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.AppMinimumPauseBlocksOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.AppMinimumPauseBlocksOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.AppMaxPausedBlocksOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.AppMaxPausedBlocksOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.ServiceNodeMinimumPauseBlocksOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.ServiceNodeMinimumPauseBlocksOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.ServiceNodeMaxChainsOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.ServiceNodeMaxChainsOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.ServiceNodeUnstakingBlocksOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.ServiceNodeUnstakingBlocksOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.ServiceNodeMinimumStakeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.ServiceNodeMinimumStakeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.ServiceNodeMaxPausedBlocksOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.ServiceNodeMaxPausedBlocksOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.ServiceNodesPerSessionOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.ServiceNodesPerSessionOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.FishermanMinimumStakeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.FishermanMinimumStakeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.FishermanMaxChainsOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.FishermanMaxChainsOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.FishermanUnstakingBlocksOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.FishermanUnstakingBlocksOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.FishermanMinimumPauseBlocksOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.FishermanMinimumPauseBlocksOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.FishermanMaxPausedBlocksOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.FishermanMaxPausedBlocksOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.ValidatorMinimumStakeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.ValidatorMinimumStakeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.ValidatorUnstakingBlocksOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.ValidatorUnstakingBlocksOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.ValidatorMinimumPauseBlocksOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.ValidatorMinimumPauseBlocksOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.ValidatorMaxPausedBlocksOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.ValidatorMaxPausedBlocksOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.ValidatorMaxPausedBlocksOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.ValidatorMaxPausedBlocksOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.ProposerPercentageOfFeesOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.ProposerPercentageOfFeesOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.ValidatorMaxEvidenceAgeInBlocksOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.ValidatorMaxEvidenceAgeInBlocksOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MissedBlocksBurnPercentageOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MissedBlocksBurnPercentageOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.DoubleSignBurnPercentageOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.DoubleSignBurnPercentageOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageSendFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageSendFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageStakeFishermanFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageStakeFishermanFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageEditStakeFishermanFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageEditStakeFishermanFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageUnstakeFishermanFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageUnstakeFishermanFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessagePauseFishermanFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessagePauseFishermanFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageUnpauseFishermanFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageUnpauseFishermanFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageFishermanPauseServiceNodeFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageFishermanPauseServiceNodeFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageTestScoreFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageTestScoreFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageProveTestScoreFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageProveTestScoreFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageStakeAppFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageStakeAppFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageEditStakeAppFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageEditStakeAppFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageUnstakeAppFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageUnstakeAppFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessagePauseAppFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessagePauseAppFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageUnpauseAppFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageUnpauseAppFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageStakeValidatorFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageStakeValidatorFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageEditStakeValidatorFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageEditStakeValidatorFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageUnstakeValidatorFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageUnstakeValidatorFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessagePauseValidatorFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessagePauseValidatorFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageUnpauseValidatorFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageUnpauseValidatorFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageStakeServiceNodeFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageStakeServiceNodeFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageEditStakeServiceNodeFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageEditStakeServiceNodeFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageUnstakeServiceNodeFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageUnstakeServiceNodeFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessagePauseServiceNodeFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessagePauseServiceNodeFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageUnpauseServiceNodeFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageUnpauseServiceNodeFeeOwner) require.NoError(t, err) require.False(t, hex.EncodeToString(gotParam) != defaultParam, fmt.Sprintf("unexpected param value: expected %v got %v", defaultParam, gotParam)) defaultParam = defaultParams.GetAclOwner() - gotParam, err = ctx.GetParamOwner(modules.MessageChangeParameterFeeOwner) + gotParam, err = ctx.GetParamOwner(typesUtil.MessageChangeParameterFeeOwner) require.NoError(t, err) defaultParamBz, err := hex.DecodeString(defaultParam) require.NoError(t, err) diff --git a/utility/test/module_test.go b/utility/test/module_test.go index e8785baf1..154496ddc 100644 --- a/utility/test/module_test.go +++ b/utility/test/module_test.go @@ -46,7 +46,7 @@ func NewTestingUtilityContext(t *testing.T, height int64) utility.UtilityContext require.NoError(t, err) t.Cleanup(func() { - testPersistenceMod.ResetContext() + persistenceContext.ResetContext() }) return utility.UtilityContext{ diff --git a/utility/types/gov.go b/utility/types/gov.go new file mode 100644 index 000000000..6fecd9bc2 --- /dev/null +++ b/utility/types/gov.go @@ -0,0 +1,120 @@ +package types + +const ( + BlocksPerSessionParamName = "blocks_per_session" + + AppMinimumStakeParamName = "app_minimum_stake" + AppMaxChainsParamName = "app_max_chains" + AppBaselineStakeRateParamName = "app_baseline_stake_rate" + AppStakingAdjustmentParamName = "app_staking_adjustment" + AppUnstakingBlocksParamName = "app_unstaking_blocks" + AppMinimumPauseBlocksParamName = "app_minimum_pause_blocks" + AppMaxPauseBlocksParamName = "app_max_pause_blocks" + + ServiceNodeMinimumStakeParamName = "service_node_minimum_stake" + ServiceNodeMaxChainsParamName = "service_node_max_chains" + ServiceNodeUnstakingBlocksParamName = "service_node_unstaking_blocks" + ServiceNodeMinimumPauseBlocksParamName = "service_node_minimum_pause_blocks" + ServiceNodeMaxPauseBlocksParamName = "service_node_max_pause_blocks" + ServiceNodesPerSessionParamName = "service_nodes_per_session" + + FishermanMinimumStakeParamName = "fisherman_minimum_stake" + FishermanMaxChainsParamName = "fisherman_max_chains" + FishermanUnstakingBlocksParamName = "fisherman_unstaking_blocks" + FishermanMinimumPauseBlocksParamName = "fisherman_minimum_pause_blocks" + FishermanMaxPauseBlocksParamName = "fisherman_max_pause_blocks" + + ValidatorMinimumStakeParamName = "validator_minimum_stake" + ValidatorUnstakingBlocksParamName = "validator_unstaking_blocks" + ValidatorMinimumPauseBlocksParamName = "validator_minimum_pause_blocks" + ValidatorMaxPausedBlocksParamName = "validator_max_pause_blocks" + ValidatorMaximumMissedBlocksParamName = "validator_maximum_missed_blocks" + + ValidatorMaxEvidenceAgeInBlocksParamName = "validator_max_evidence_age_in_blocks" + ProposerPercentageOfFeesParamName = "proposer_percentage_of_fees" + MissedBlocksBurnPercentageParamName = "missed_blocks_burn_percentage" + DoubleSignBurnPercentageParamName = "double_sign_burn_percentage" + + MessageDoubleSignFee = "message_double_sign_fee" + MessageSendFee = "message_send_fee" + MessageStakeFishermanFee = "message_stake_fisherman_fee" + MessageEditStakeFishermanFee = "message_edit_stake_fisherman_fee" + MessageUnstakeFishermanFee = "message_unstake_fisherman_fee" + MessagePauseFishermanFee = "message_pause_fisherman_fee" + MessageUnpauseFishermanFee = "message_unpause_fisherman_fee" + MessageFishermanPauseServiceNodeFee = "message_fisherman_pause_service_node_fee" + MessageTestScoreFee = "message_test_score_fee" + MessageProveTestScoreFee = "message_prove_test_score_fee" + MessageStakeAppFee = "message_stake_app_fee" + MessageEditStakeAppFee = "message_edit_stake_app_fee" + MessageUnstakeAppFee = "message_unstake_app_fee" + MessagePauseAppFee = "message_pause_app_fee" + MessageUnpauseAppFee = "message_unpause_app_fee" + MessageStakeValidatorFee = "message_stake_validator_fee" + MessageEditStakeValidatorFee = "message_edit_stake_validator_fee" + MessageUnstakeValidatorFee = "message_unstake_validator_fee" + MessagePauseValidatorFee = "message_pause_validator_fee" + MessageUnpauseValidatorFee = "message_unpause_validator_fee" + MessageStakeServiceNodeFee = "message_stake_service_node_fee" + MessageEditStakeServiceNodeFee = "message_edit_stake_service_node_fee" + MessageUnstakeServiceNodeFee = "message_unstake_service_node_fee" + MessagePauseServiceNodeFee = "message_pause_service_node_fee" + MessageUnpauseServiceNodeFee = "message_unpause_service_node_fee" + MessageChangeParameterFee = "message_change_parameter_fee" + + AclOwner = "acl_owner" + BlocksPerSessionOwner = "blocks_per_session_owner" + AppMinimumStakeOwner = "app_minimum_stake_owner" + AppMaxChainsOwner = "app_max_chains_owner" + AppBaselineStakeRateOwner = "app_baseline_stake_rate_owner" + AppStakingAdjustmentOwner = "app_staking_adjustment_owner" + AppUnstakingBlocksOwner = "app_unstaking_blocks_owner" + AppMinimumPauseBlocksOwner = "app_minimum_pause_blocks_owner" + AppMaxPausedBlocksOwner = "app_max_paused_blocks_owner" + ServiceNodeMinimumStakeOwner = "service_node_minimum_stake_owner" + ServiceNodeMaxChainsOwner = "service_node_max_chains_owner" + ServiceNodeUnstakingBlocksOwner = "service_node_unstaking_blocks_owner" + ServiceNodeMinimumPauseBlocksOwner = "service_node_minimum_pause_blocks_owner" + ServiceNodeMaxPausedBlocksOwner = "service_node_max_paused_blocks_owner" + ServiceNodesPerSessionOwner = "service_nodes_per_session_owner" + FishermanMinimumStakeOwner = "fisherman_minimum_stake_owner" + FishermanMaxChainsOwner = "fisherman_max_chains_owner" + FishermanUnstakingBlocksOwner = "fisherman_unstaking_blocks_owner" + FishermanMinimumPauseBlocksOwner = "fisherman_minimum_pause_blocks_owner" + FishermanMaxPausedBlocksOwner = "fisherman_max_paused_blocks_owner" + ValidatorMinimumStakeOwner = "validator_minimum_stake_owner" + ValidatorUnstakingBlocksOwner = "validator_unstaking_blocks_owner" + ValidatorMinimumPauseBlocksOwner = "validator_minimum_pause_blocks_owner" + ValidatorMaxPausedBlocksOwner = "validator_max_paused_blocks_owner" + ValidatorMaximumMissedBlocksOwner = "validator_maximum_missed_blocks_owner" + ValidatorMaxEvidenceAgeInBlocksOwner = "validator_max_evidence_age_in_blocks_owner" + ProposerPercentageOfFeesOwner = "proposer_percentage_of_fees_owner" + MissedBlocksBurnPercentageOwner = "missed_blocks_burn_percentage_owner" + DoubleSignBurnPercentageOwner = "double_sign_burn_percentage_owner" + MessageDoubleSignFeeOwner = "message_double_sign_fee_owner" + MessageSendFeeOwner = "message_send_fee_owner" + MessageStakeFishermanFeeOwner = "message_stake_fisherman_fee_owner" + MessageEditStakeFishermanFeeOwner = "message_edit_stake_fisherman_fee_owner" + MessageUnstakeFishermanFeeOwner = "message_unstake_fisherman_fee_owner" + MessagePauseFishermanFeeOwner = "message_pause_fisherman_fee_owner" + MessageUnpauseFishermanFeeOwner = "message_unpause_fisherman_fee_owner" + MessageFishermanPauseServiceNodeFeeOwner = "message_fisherman_pause_service_node_fee_owner" + MessageTestScoreFeeOwner = "message_test_score_fee_owner" + MessageProveTestScoreFeeOwner = "message_prove_test_score_fee_owner" + MessageStakeAppFeeOwner = "message_stake_app_fee_owner" + MessageEditStakeAppFeeOwner = "message_edit_stake_app_fee_owner" + MessageUnstakeAppFeeOwner = "message_unstake_app_fee_owner" + MessagePauseAppFeeOwner = "message_pause_app_fee_owner" + MessageUnpauseAppFeeOwner = "message_unpause_app_fee_owner" + MessageStakeValidatorFeeOwner = "message_stake_validator_fee_owner" + MessageEditStakeValidatorFeeOwner = "message_edit_stake_validator_fee_owner" + MessageUnstakeValidatorFeeOwner = "message_unstake_validator_fee_owner" + MessagePauseValidatorFeeOwner = "message_pause_validator_fee_owner" + MessageUnpauseValidatorFeeOwner = "message_unpause_validator_fee_owner" + MessageStakeServiceNodeFeeOwner = "message_stake_service_node_fee_owner" + MessageEditStakeServiceNodeFeeOwner = "message_edit_stake_service_node_fee_owner" + MessageUnstakeServiceNodeFeeOwner = "message_unstake_service_node_fee_owner" + MessagePauseServiceNodeFeeOwner = "message_pause_service_node_fee_owner" + MessageUnpauseServiceNodeFeeOwner = "message_unpause_service_node_fee_owner" + MessageChangeParameterFeeOwner = "message_change_parameter_fee_owner" +) From ac49597359a130f34e0b0c18bf468ee22c8e0cf2 Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Wed, 5 Oct 2022 09:00:55 -0400 Subject: [PATCH 02/19] Update shared/modules/types.go Co-authored-by: Daniel Olshansky --- shared/modules/types.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shared/modules/types.go b/shared/modules/types.go index 4856c8902..5262a062d 100644 --- a/shared/modules/types.go +++ b/shared/modules/types.go @@ -231,6 +231,6 @@ var _ IConfig = UtilityConfig(nil) var _ IGenesis = PersistenceGenesisState(nil) var _ IGenesis = ConsensusGenesisState(nil) -// DISCUSS: need a way to enforce these configuration interfaces as true configs/genesis, this is merely decorative at this point +// TODO(#235): Remove these interfaces once the runtime config approach is implemented. type IConfig interface{} type IGenesis interface{} From df71b6c3f40e30327c2a7a7977c393ee14d1dda3 Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Wed, 5 Oct 2022 09:01:04 -0400 Subject: [PATCH 03/19] Update shared/test_artifacts/generator.go Co-authored-by: Daniel Olshansky --- shared/test_artifacts/generator.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shared/test_artifacts/generator.go b/shared/test_artifacts/generator.go index 4786848f3..adc41eca4 100644 --- a/shared/test_artifacts/generator.go +++ b/shared/test_artifacts/generator.go @@ -12,7 +12,7 @@ import ( "google.golang.org/protobuf/types/known/timestamppb" ) -// INVESTIGATE It seems improperly scoped that the modules have to have shared 'testing' code +// INVESTIGATE: It seems improperly scoped that the modules have to have shared 'testing' code // It might be an inevitability to have shared testing code, but would like more eyes on it. // Look for opportunities to make testing completely modular From cc1cf9eef6833183d98c3ec7877c2af6b3d0dae7 Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Wed, 5 Oct 2022 09:01:34 -0400 Subject: [PATCH 04/19] Update utility/indexer/doc/README.md Co-authored-by: Daniel Olshansky --- utility/indexer/doc/README.md | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/utility/indexer/doc/README.md b/utility/indexer/doc/README.md index 758bf407b..c08664eca 100644 --- a/utility/indexer/doc/README.md +++ b/utility/indexer/doc/README.md @@ -1,13 +1,16 @@ -## Transaction Indexer +# Transaction Indexer +`txIndexer` implementation uses a `KVStore` (interface) to index the transactions. -`txIndexer` implementation uses a `KVStore` (interface) to index the transactions +## Index Types -The transaction is indexed in the following formats: -- HASHKEY: "h/SHA3(TxResultProtoBytes)" VAL: TxResultProtoBytes store value by hash (the key here is equivalent to the VALs below) -- HEIGHTKEY: "b/height/index" VAL: HASHKEY store hashKey by height -- SENDERKEY: "s/senderAddr" VAL: HASHKEY store hashKey by sender -- RECIPIENTKEY: "r/recipientAddr" VAL: HASHKEY store hashKey by recipient (if not empty) +| Key | Index | Value | Description | +| ------------ | ---------------------------- | ------------------ | ------------------------------------------------------------------ | +| HASHKEY | `h/SHA3(TxResultProtoBytes)` | TxResultProtoBytes | store value by hash (the key here is equivalent to the VALs below) | +| HEIGHTKEY | `b/height/index` | HASHKEY | store hashKey by height | +| SENDERKEY | `s/senderAddr` | HASHKEY | store hashKey by sender | +| RECIPIENTKEY | `r/recipientAddr` | HASHKEY | store hashKey by recipient (if not empty) -FOOTNOTE: the height/index store is using [ELEN](https://github.com/jordanorelli/lexnum/blob/master/elen.pdf) -This is to ensure the results are stored sorted (assuming the `KVStore`` uses a byte-wise lexicographical sorting) \ No newline at end of file +## ELEN Index + +The height/index store uses [ELEN](https://github.com/jordanorelli/lexnum/blob/master/elen.pdf). This is to ensure the results are stored sorted (assuming the `KVStore` uses a byte-wise lexicographical sorting). \ No newline at end of file From 237ffed326013bd37976641dcbd47987f805e76f Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Wed, 5 Oct 2022 09:15:15 -0400 Subject: [PATCH 05/19] Update persistence/test/gov_test.go Co-authored-by: Daniel Olshansky --- persistence/test/gov_test.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/persistence/test/gov_test.go b/persistence/test/gov_test.go index 9c9208022..1cadfa46c 100644 --- a/persistence/test/gov_test.go +++ b/persistence/test/gov_test.go @@ -7,7 +7,7 @@ import ( "github.com/stretchr/testify/require" ) -// TODO : Remove these testing_artifacts when we nail down a design for parameter name sharing / owning +// TODO(#230): Remove these testing_artifacts when we nail down a design for parameter name sharing / owning const ( AppMaxChainsParamName = "app_max_chains" ServiceNodeMinimumStakeParamName = "service_node_minimum_stake" From 14b9b6a131026760ff9f70f15b954c4316b430dc Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Wed, 5 Oct 2022 09:15:22 -0400 Subject: [PATCH 06/19] Update shared/modules/doc/README.md Co-authored-by: Daniel Olshansky --- shared/modules/doc/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shared/modules/doc/README.md b/shared/modules/doc/README.md index 6b1a2f818..4b3cff614 100644 --- a/shared/modules/doc/README.md +++ b/shared/modules/doc/README.md @@ -91,7 +91,7 @@ The bus may be accessed by the module object at anytime using the `getter` bus := newModule.GetBus ``` -##### Stop the module +#### Stop the module Stopping the module, ends the service and disables operation. From fdc9e764433df0d42b16bf159c9a268bd48e974c Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Wed, 5 Oct 2022 09:15:41 -0400 Subject: [PATCH 07/19] Update shared/CHANGELOG.md Co-authored-by: Daniel Olshansky --- shared/CHANGELOG.md | 1 - 1 file changed, 1 deletion(-) diff --git a/shared/CHANGELOG.md b/shared/CHANGELOG.md index 852b8bd7b..1e572e8a1 100644 --- a/shared/CHANGELOG.md +++ b/shared/CHANGELOG.md @@ -19,7 +19,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Time mocking abilities via https://github.com/benbjohnson/clock and simple utility wrappers - Race conditions and concurrency fixes via sync.Mutex ->>>>>>> origin/main ## [0.0.0] - 2022-08-25 From fc22367460c7d846bfa7c13b4a9e5a93bf5571a6 Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Wed, 5 Oct 2022 09:15:46 -0400 Subject: [PATCH 08/19] Update shared/modules/doc/README.md Co-authored-by: Daniel Olshansky --- shared/modules/doc/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shared/modules/doc/README.md b/shared/modules/doc/README.md index 4b3cff614..df2e75af5 100644 --- a/shared/modules/doc/README.md +++ b/shared/modules/doc/README.md @@ -95,7 +95,7 @@ bus := newModule.GetBus Stopping the module, ends the service and disables operation. -This is the proper way to conclude the lifecycle of the module +This is the proper way to conclude the lifecycle of the module. ```golang err := newModule.Stop() From 0a79038de21abf9c2f0458506ccc05456b892dbe Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Wed, 5 Oct 2022 09:15:53 -0400 Subject: [PATCH 09/19] Update shared/modules/doc/README.md Co-authored-by: Daniel Olshansky --- shared/modules/doc/README.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/shared/modules/doc/README.md b/shared/modules/doc/README.md index df2e75af5..a26fd1da2 100644 --- a/shared/modules/doc/README.md +++ b/shared/modules/doc/README.md @@ -88,7 +88,12 @@ if err != nil { The bus may be accessed by the module object at anytime using the `getter` ```golang -bus := newModule.GetBus +bus := newModule.GetBus() + +# The bus enables access to interfaces exposed by other modules in the codebase +bus.GetP2PModule(). +bus.GetPersistenceModule(). +... ``` #### Stop the module From db1124ef3fae825fcc13e5107ad9261902f9709a Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Wed, 5 Oct 2022 09:16:04 -0400 Subject: [PATCH 10/19] Update shared/modules/doc/README.md Co-authored-by: Daniel Olshansky --- shared/modules/doc/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shared/modules/doc/README.md b/shared/modules/doc/README.md index a26fd1da2..e9fc7a1f9 100644 --- a/shared/modules/doc/README.md +++ b/shared/modules/doc/README.md @@ -73,7 +73,7 @@ newModule.SetBus(bus) Starting the module, begins the service and enables operation. -Starting always comes after creation and setting the bus. +Starting must come after creation and setting the bus. ```golang err := newModule.Start() From ab380ef187817afdd7ad579596b041453d2c95b1 Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Wed, 5 Oct 2022 09:16:08 -0400 Subject: [PATCH 11/19] Update shared/modules/doc/README.md Co-authored-by: Daniel Olshansky --- shared/modules/doc/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shared/modules/doc/README.md b/shared/modules/doc/README.md index e9fc7a1f9..3e4adbd2b 100644 --- a/shared/modules/doc/README.md +++ b/shared/modules/doc/README.md @@ -71,7 +71,7 @@ newModule.SetBus(bus) ##### Start the module -Starting the module, begins the service and enables operation. +Starting the module begins the service and enables operation. Starting must come after creation and setting the bus. From 6992d9d1072157c8867d33587aef6e3c8edc1a8c Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Wed, 5 Oct 2022 09:17:53 -0400 Subject: [PATCH 12/19] Update shared/modules/doc/README.md Co-authored-by: Daniel Olshansky --- shared/modules/doc/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shared/modules/doc/README.md b/shared/modules/doc/README.md index 3e4adbd2b..3aa7c2626 100644 --- a/shared/modules/doc/README.md +++ b/shared/modules/doc/README.md @@ -40,7 +40,7 @@ genesis ### Module Typical Usage Example -##### Create the module +#### Create the module Module creation uses a typical constructor pattern signature `Create(configPath, genesisPath string) (module.Interface, error)` From 32d24f9e9a55e6e8d963c9c2934f76aa3b7c4d5a Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Wed, 5 Oct 2022 09:18:07 -0400 Subject: [PATCH 13/19] Update shared/modules/doc/README.md Co-authored-by: Daniel Olshansky --- shared/modules/doc/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/shared/modules/doc/README.md b/shared/modules/doc/README.md index 3aa7c2626..5b149c8ca 100644 --- a/shared/modules/doc/README.md +++ b/shared/modules/doc/README.md @@ -38,6 +38,7 @@ genesis ``` +TODO(#235): Update once runtime configs are implemented ### Module Typical Usage Example #### Create the module From 896012b70bd4bf5fe88115f1c1afdf8bd79e359a Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Wed, 5 Oct 2022 09:18:28 -0400 Subject: [PATCH 14/19] Update shared/modules/doc/README.md Co-authored-by: Daniel Olshansky --- shared/modules/doc/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shared/modules/doc/README.md b/shared/modules/doc/README.md index 5b149c8ca..bee611280 100644 --- a/shared/modules/doc/README.md +++ b/shared/modules/doc/README.md @@ -84,7 +84,7 @@ if err != nil { } ``` -##### Get the module `bus` +#### Get the module `bus` The bus may be accessed by the module object at anytime using the `getter` From 8b01f1576c07e9c629e5ff7e24326414fa77e3b8 Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Wed, 5 Oct 2022 09:18:42 -0400 Subject: [PATCH 15/19] Update shared/modules/doc/README.md Co-authored-by: Daniel Olshansky --- shared/modules/doc/README.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/shared/modules/doc/README.md b/shared/modules/doc/README.md index bee611280..c44127597 100644 --- a/shared/modules/doc/README.md +++ b/shared/modules/doc/README.md @@ -48,9 +48,7 @@ Module creation uses a typical constructor pattern signature `Create(configPath, Currently, module creation is not embedded or enforced in the interface to prevent the initializer from having to use clunky creation syntax -> `modPackage.new(module).Create(configPath, genesisPath)` rather `modPackage.Create(configPath, genesisPath)` -Essentially, we are currently optimizing for code clarity rather than creation signature enforceability. - -NOTE: **This may change in the future.** +This is done to optimize for code clarity rather than creation signature enforceability but **may change in the future**. ```golang newModule, err := newModule.Create(configFilePath, genesisFilePath) From 42601744e055631761521fcda815fabde588dbf2 Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Wed, 5 Oct 2022 09:21:39 -0400 Subject: [PATCH 16/19] Update shared/modules/doc/README.md Co-authored-by: Daniel Olshansky --- shared/modules/doc/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shared/modules/doc/README.md b/shared/modules/doc/README.md index c44127597..39d75e8fd 100644 --- a/shared/modules/doc/README.md +++ b/shared/modules/doc/README.md @@ -58,7 +58,7 @@ if err != nil { } ``` -##### Set the module `bus` +#### Set the module `bus` The `bus` is the specific integration mechanism that enables the greater application. From 6feedb5f5e62d27fb598128a0eed207defe671dd Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Wed, 5 Oct 2022 09:21:53 -0400 Subject: [PATCH 17/19] olshansk r1 --- persistence/module.go | 2 +- persistence/test/module_test.go | 4 ++-- shared/modules/persistence_module.go | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/persistence/module.go b/persistence/module.go index 2aebc913d..da8df0c89 100644 --- a/persistence/module.go +++ b/persistence/module.go @@ -200,7 +200,7 @@ func (m *PersistenceModule) GetBlockStore() kvstore.KVStore { return m.blockStore } -func (m *PersistenceModule) GetWriteContext() modules.PersistenceRWContext { +func (m *PersistenceModule) NewWriteContext() modules.PersistenceRWContext { return m.writeContext } diff --git a/persistence/test/module_test.go b/persistence/test/module_test.go index f4a3f9cf0..0dbf2d580 100644 --- a/persistence/test/module_test.go +++ b/persistence/test/module_test.go @@ -8,7 +8,7 @@ import ( func TestPersistenceContextParallelReadWrite(t *testing.T) { t.Cleanup(func() { - require.NoError(t, testPersistenceMod.GetWriteContext().ResetContext()) + require.NoError(t, testPersistenceMod.NewWriteContext().ResetContext()) }) // variables for testing poolName := "fake" @@ -50,7 +50,7 @@ func TestPersistenceContextParallelReadWrite(t *testing.T) { func TestPersistenceContextTwoWritesErrors(t *testing.T) { t.Cleanup(func() { - require.NoError(t, testPersistenceMod.GetWriteContext().ResetContext()) + require.NoError(t, testPersistenceMod.NewWriteContext().ResetContext()) }) // Opening up first write context succeeds _, err := testPersistenceMod.NewRWContext(0) diff --git a/shared/modules/persistence_module.go b/shared/modules/persistence_module.go index 6c4cd062b..5a248c69a 100644 --- a/shared/modules/persistence_module.go +++ b/shared/modules/persistence_module.go @@ -12,7 +12,7 @@ type PersistenceModule interface { NewRWContext(height int64) (PersistenceRWContext, error) NewReadContext(height int64) (PersistenceReadContext, error) GetBlockStore() kvstore.KVStore - GetWriteContext() PersistenceRWContext + NewWriteContext() PersistenceRWContext // Debugging / development only HandleDebugMessage(*debug.DebugMessage) error @@ -42,7 +42,7 @@ type PersistenceWriteContext interface { NewSavePoint([]byte) error RollbackToSavePoint([]byte) error - ResetContext() error + ResetContext() error // TODO consolidate with Reset and Release Reset() error Commit() error Release() error From 92301e573d44164e52111613edd28d6296f9b924 Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Thu, 6 Oct 2022 14:08:46 -0400 Subject: [PATCH 18/19] olshansk r2 --- utility/indexer/proto/transaction_indexer.proto | 2 +- utility/test/actor_test.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/utility/indexer/proto/transaction_indexer.proto b/utility/indexer/proto/transaction_indexer.proto index 79edb8d1f..7ce075609 100644 --- a/utility/indexer/proto/transaction_indexer.proto +++ b/utility/indexer/proto/transaction_indexer.proto @@ -11,5 +11,5 @@ message DefaultTxResult { string error = 5; // INVESTIGATE(andrew): look into having a `utility.Error` enum for this string signer_addr = 6; string recipient_addr = 7; - string message_type = 8; + string message_type = 8; // CONSOLIDATE(M4): Once the message types are well defined and stable, consolidate them into an enum } \ No newline at end of file diff --git a/utility/test/actor_test.go b/utility/test/actor_test.go index 649ad31b1..e2f553c27 100644 --- a/utility/test/actor_test.go +++ b/utility/test/actor_test.go @@ -354,7 +354,7 @@ func TestUtilityContext_UnstakesPausedBefore(t *testing.T) { actor := GetAllTestingApps(t, ctx)[0] addrBz, err := hex.DecodeString(actor.GetAddress()) require.NoError(t, err) - require.Equal(t, -1, actor.GetUnstakingHeight()) + require.Equal(t, int64(-1), actor.GetUnstakingHeight()) require.NoError(t, ctx.SetActorPauseHeight(typesUtil.UtilActorType_App, addrBz, 0), "set actor pause height") err = ctx.Context.SetParam(typesUtil.AppMaxPauseBlocksParamName, 0) require.NoError(t, err) From 5a152e0875c977efe6ef50c3460f074eab543628 Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Mon, 10 Oct 2022 10:54:14 -0400 Subject: [PATCH 19/19] merge conflict --- utility/test/block_test.go | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/utility/test/block_test.go b/utility/test/block_test.go index 5bc065fca..3f5a8bb18 100644 --- a/utility/test/block_test.go +++ b/utility/test/block_test.go @@ -2,16 +2,14 @@ package test import ( "encoding/hex" - "github.com/pokt-network/pocket/shared/test_artifacts" "math" "math/big" "testing" - "github.com/pokt-network/pocket/shared/modules" "github.com/pokt-network/pocket/shared/test_artifacts" + "github.com/stretchr/testify/require" typesUtil "github.com/pokt-network/pocket/utility/types" - "github.com/stretchr/testify/require" ) func TestUtilityContext_ApplyBlock(t *testing.T) {