-
Notifications
You must be signed in to change notification settings - Fork 115
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[TRA-86] scaffold x/vault #1148
Conversation
Important Auto Review SkippedReview was skipped due to path filters Files ignored due to path filters (1)
WalkthroughThe overall change introduces a new Changes
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (invoked as PR comments)
Additionally, you can add CodeRabbit Configration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Review Status
Actionable comments generated: 1
Configuration used: CodeRabbit UI
Files ignored due to path filters (5)
protocol/app/testdata/default_genesis_state.json
is excluded by:!**/*.json
protocol/scripts/genesis/sample_pregenesis.json
is excluded by:!**/*.json
protocol/x/vault/types/genesis.pb.go
is excluded by:!**/*.pb.go
protocol/x/vault/types/query.pb.go
is excluded by:!**/*.pb.go
protocol/x/vault/types/tx.pb.go
is excluded by:!**/*.pb.go
Files selected for processing (19)
- proto/dydxprotocol/vault/genesis.proto (1 hunks)
- proto/dydxprotocol/vault/query.proto (1 hunks)
- proto/dydxprotocol/vault/tx.proto (1 hunks)
- protocol/app/app.go (9 hunks)
- protocol/app/app_test.go (2 hunks)
- protocol/testutil/constants/genesis.go (1 hunks)
- protocol/x/vault/client/cli/query.go (1 hunks)
- protocol/x/vault/client/cli/tx.go (1 hunks)
- protocol/x/vault/genesis.go (1 hunks)
- protocol/x/vault/keeper/grpc_query.go (1 hunks)
- protocol/x/vault/keeper/keeper.go (1 hunks)
- protocol/x/vault/keeper/keeper_test.go (1 hunks)
- protocol/x/vault/keeper/msg_server.go (1 hunks)
- protocol/x/vault/keeper/msg_server_test.go (1 hunks)
- protocol/x/vault/module.go (1 hunks)
- protocol/x/vault/types/codec.go (1 hunks)
- protocol/x/vault/types/expected_keepers.go (1 hunks)
- protocol/x/vault/types/genesis.go (1 hunks)
- protocol/x/vault/types/keys.go (1 hunks)
Files not reviewed due to errors (1)
- protocol/testutil/constants/genesis.go (Error: unable to parse review)
Files skipped from review due to trivial changes (5)
- protocol/x/vault/keeper/grpc_query.go
- protocol/x/vault/types/codec.go
- protocol/x/vault/types/expected_keepers.go
- protocol/x/vault/types/genesis.go
- protocol/x/vault/types/keys.go
Additional comments: 36
proto/dydxprotocol/vault/tx.proto (1)
- 6-8: The
Msg
service definition is currently empty. While this might be intentional during the initial scaffolding phase, it's important to plan for the implementation of message types and methods that will facilitate the interactions with thex/vault
module.proto/dydxprotocol/vault/query.proto (1)
- 6-8: The
Query
service definition is currently empty. Similar to theMsg
service, this is likely intentional during the scaffolding phase. However, it's crucial to outline the queries that will be supported by thex/vault
module to facilitate data retrieval and interactions.proto/dydxprotocol/vault/genesis.proto (1)
- 6-8: The
GenesisState
message definition is currently empty. While this may be part of the initial scaffolding process, it's important to define the structure of the genesis state for thex/vault
module, including any initial configurations, parameters, or state that needs to be established at the genesis block.protocol/x/vault/keeper/keeper_test.go (1)
- 10-16: The test for the
Logger
method is a good starting point. However, consider adding more comprehensive tests that could validate specific behaviors or outputs of the logger, ensuring it functions as expected in various scenarios.protocol/x/vault/keeper/msg_server.go (1)
- 7-17: The setup for the
msgServer
and its constructor functionNewMsgServerImpl
is correctly implemented. As the module development progresses, ensure to add the necessary method implementations to themsgServer
to handle the module's message types.protocol/x/vault/genesis.go (1)
- 9-16: The functions
InitGenesis
andExportGenesis
are currently placeholders without implementation. As the module development progresses, it will be important to implement the logic for initializing and exporting the module's genesis state, ensuring thex/vault
module is correctly set up at the genesis block and can export its state for chain upgrades or migrations.protocol/x/vault/client/cli/tx.go (1)
- 12-21: The setup for the module's transaction commands using Cobra is correctly implemented. As the module development progresses, ensure to add specific transaction subcommands to facilitate user interactions with the
x/vault
module through the CLI.protocol/x/vault/client/cli/query.go (1)
- 12-23: The setup for the module's query commands using Cobra is correctly implemented. As the module development progresses, ensure to add specific query subcommands to facilitate user interactions with the
x/vault
module through the CLI, enabling data retrieval and state queries.protocol/x/vault/keeper/msg_server_test.go (1)
- 21-26: The basic test setup for the message server is a good starting point. Consider adding more comprehensive tests that validate the message server's behavior, including handling of specific messages and interactions with the keeper, to ensure it functions as expected in various scenarios.
protocol/x/vault/keeper/keeper.go (1)
- 14-43: The implementation of the
Keeper
struct, its constructor, and methodsHasAuthority
andLogger
are correctly set up. The approach for handling authorities and logging is well-considered. As the module development progresses, consider adding additional keeper methods to support the full range of functionalities required by thex/vault
module.protocol/x/vault/module.go (15)
- 22-30: The implementation of interfaces for
AppModule
andAppModuleBasic
is correctly done, ensuring that the module adheres to the expected patterns of the Cosmos SDK.- 36-40: The
AppModuleBasic
struct is correctly defined with acdc
field for codec handling, which is essential for serialization and deserialization within the module.- 42-44: The
NewAppModuleBasic
function correctly initializes anAppModuleBasic
instance with the provided codec, aligning with best practices for module setup.- 47-49: The
Name
method correctly returns the module name from thetypes
package, ensuring consistency across the module's components.- 51-55: The
RegisterLegacyAminoCodec
method is implemented to support legacy Amino codec operations. While Amino is being phased out in favor of Protobuf, maintaining this for backward compatibility is necessary.- 57-60: The
RegisterInterfaces
method correctly registers module interfaces with the providedInterfaceRegistry
, facilitating the use of Protobuf for serialization.- 62-66: The
DefaultGenesis
method correctly provides a default genesis state for the module, which is crucial for module initialization and testing.- 68-74: The
ValidateGenesis
method properly validates the genesis state, ensuring that the module's initial state conforms to expected structures and values.- 77-78: The
RegisterGRPCGatewayRoutes
method is currently a placeholder. It's important to implement this method to register gRPC Gateway routes if the module needs to expose REST endpoints.Consider implementing the
RegisterGRPCGatewayRoutes
method to support REST endpoints via gRPC Gateway, if applicable to the module's functionality.
- 82-84: The
GetTxCmd
andGetQueryCmd
methods correctly provide Cobra commands for transactions and queries, enhancing the module's usability from the command line.- 96-101: The
AppModule
struct is correctly defined with an embeddedAppModuleBasic
and akeeper
field, aligning with Cosmos SDK patterns for module implementation.- 103-110: The
NewAppModule
function correctly initializes anAppModule
instance, ensuring proper setup with the necessary dependencies.- 119-123: The
RegisterServices
method correctly registers message and query services for the module, facilitating interaction with the module's functionalities.- 125-132: The
InitGenesis
andExportGenesis
methods are correctly implemented to handle the module's genesis state initialization and exportation, which are critical for the module's lifecycle management.- 140-143: The
ConsensusVersion
method correctly sets the initial version to 1, adhering to best practices for versioning state-breaking changes in the module.protocol/app/app_test.go (2)
- 50-50: The addition of
vaultmodule
to the import section correctly integrates thex/vault
module into the test suite, ensuring that the module is considered in application-wide tests.- 224-224: The inclusion of
vaultmodule.AppModuleBasic{}
in theTestModuleBasics
function correctly tests the basic module functionalities, ensuring that thex/vault
module adheres to the expected patterns and interfaces of the Cosmos SDK.protocol/app/app.go (9)
- 176-178: The import statements for the
x/vault
module's main package, keeper, and types are correctly added. This follows the standard pattern used for other modules in the application.- 301-301: The
VaultKeeper
is correctly declared within theApp
struct, following the established pattern for keeper declarations in the application. This ensures that theVaultKeeper
can be accessed throughout the application where needed.- 1043-1050: The initialization of the
VaultKeeper
within theNew
function of theApp
struct is done correctly. The keeper is instantiated with the appropriate store key and a list of module accounts that are allowed to interact with it, which is a common pattern for keeper initialization in Cosmos SDK applications.- 1051-1051: The
vaultModule
is correctly instantiated using theNewAppModule
method from thevaultmodule
package, passing in theappCodec
and the newly createdVaultKeeper
. This is consistent with how other modules are set up in the application.- 1120-1120: The
vaultModule
is correctly added to theModuleManager
within theNew
function. This ensures that thex/vault
module is included in the application's lifecycle, including genesis initialization, transaction handling, and block processing.- 1165-1165: The
vaultModule
is correctly included in theSetOrderBeginBlockers
method call. This determines the order in which modules'BeginBlocker
methods are called at the start of each block. The specific ordering here should be reviewed to ensure it aligns with the intended logic and dependencies between modules.Please verify the intended order of module processing in the
BeginBlocker
to ensure that thex/vault
module is placed correctly relative to other modules, considering any dependencies or required sequence of operations.
- 1205-1205: Including the
vaultModule
in theSetOrderEndBlockers
method call is done correctly. This configures the order in which modules'EndBlocker
methods are executed at the end of each block. As with theBeginBlocker
, the ordering should be carefully considered based on module interactions and dependencies.Please confirm the intended execution order in the
EndBlocker
to ensure that thex/vault
module's placement is appropriate in relation to other modules, especially if there are specific interactions or dependencies that need to be accounted for.
- 1249-1249: The inclusion of the
vaultModule
in theSetOrderInitGenesis
method ensures that the module's genesis state is initialized correctly when the chain starts or when a reset is performed. This is a necessary step for integrating new modules into a Cosmos SDK application.- 1289-1289: Adding the
vaultModule
to theSetOrderMigrations
method is correct and necessary for handling any future state migrations that the module may require. This setup allows for a structured approach to upgrading module state across software versions.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Review Status
Actionable comments generated: 1
Configuration used: CodeRabbit UI
Files ignored due to path filters (5)
protocol/app/testdata/default_genesis_state.json
is excluded by:!**/*.json
protocol/scripts/genesis/sample_pregenesis.json
is excluded by:!**/*.json
protocol/x/vault/types/genesis.pb.go
is excluded by:!**/*.pb.go
protocol/x/vault/types/query.pb.go
is excluded by:!**/*.pb.go
protocol/x/vault/types/tx.pb.go
is excluded by:!**/*.pb.go
Files selected for processing (27)
- indexer/packages/v4-protos/src/codegen/dydxprotocol/bundle.ts (4 hunks)
- indexer/packages/v4-protos/src/codegen/dydxprotocol/rpc.query.ts (1 hunks)
- indexer/packages/v4-protos/src/codegen/dydxprotocol/vault/genesis.ts (1 hunks)
- indexer/packages/v4-protos/src/codegen/dydxprotocol/vault/query.rpc.Query.ts (1 hunks)
- indexer/packages/v4-protos/src/codegen/dydxprotocol/vault/query.ts (1 hunks)
- indexer/packages/v4-protos/src/codegen/dydxprotocol/vault/tx.ts (1 hunks)
- indexer/packages/v4-protos/src/codegen/gogoproto/bundle.ts (1 hunks)
- indexer/packages/v4-protos/src/codegen/google/bundle.ts (1 hunks)
- proto/dydxprotocol/vault/genesis.proto (1 hunks)
- proto/dydxprotocol/vault/query.proto (1 hunks)
- proto/dydxprotocol/vault/tx.proto (1 hunks)
- protocol/app/app.go (9 hunks)
- protocol/app/app_test.go (2 hunks)
- protocol/testutil/constants/genesis.go (1 hunks)
- protocol/x/vault/client/cli/query.go (1 hunks)
- protocol/x/vault/client/cli/tx.go (1 hunks)
- protocol/x/vault/genesis.go (1 hunks)
- protocol/x/vault/keeper/grpc_query.go (1 hunks)
- protocol/x/vault/keeper/keeper.go (1 hunks)
- protocol/x/vault/keeper/keeper_test.go (1 hunks)
- protocol/x/vault/keeper/msg_server.go (1 hunks)
- protocol/x/vault/keeper/msg_server_test.go (1 hunks)
- protocol/x/vault/module.go (1 hunks)
- protocol/x/vault/types/codec.go (1 hunks)
- protocol/x/vault/types/expected_keepers.go (1 hunks)
- protocol/x/vault/types/genesis.go (1 hunks)
- protocol/x/vault/types/keys.go (1 hunks)
Files skipped from review due to trivial changes (2)
- indexer/packages/v4-protos/src/codegen/dydxprotocol/vault/query.ts
- indexer/packages/v4-protos/src/codegen/dydxprotocol/vault/tx.ts
Files skipped from review as they are similar to previous changes (18)
- proto/dydxprotocol/vault/genesis.proto
- proto/dydxprotocol/vault/query.proto
- proto/dydxprotocol/vault/tx.proto
- protocol/app/app_test.go
- protocol/testutil/constants/genesis.go
- protocol/x/vault/client/cli/query.go
- protocol/x/vault/client/cli/tx.go
- protocol/x/vault/genesis.go
- protocol/x/vault/keeper/grpc_query.go
- protocol/x/vault/keeper/keeper.go
- protocol/x/vault/keeper/keeper_test.go
- protocol/x/vault/keeper/msg_server.go
- protocol/x/vault/keeper/msg_server_test.go
- protocol/x/vault/module.go
- protocol/x/vault/types/codec.go
- protocol/x/vault/types/expected_keepers.go
- protocol/x/vault/types/genesis.go
- protocol/x/vault/types/keys.go
Additional comments: 15
indexer/packages/v4-protos/src/codegen/gogoproto/bundle.ts (1)
- 1-2: The update from importing
_98
to_101
in thegogoproto
bundle appears correctly implemented, ensuring that the exportedgogoproto
constant reflects the latest module structure. Ensure that the module_101
exists and contains the expected exports forgogoproto
.indexer/packages/v4-protos/src/codegen/google/bundle.ts (1)
- 1-14: The reordering and renaming of imports within the
api
andprotobuf
correctly aggregate the modules. Ensure that the newly referenced modules (_102
to_107
) exist and are structured as expected to support these exports.indexer/packages/v4-protos/src/codegen/dydxprotocol/vault/query.rpc.Query.ts (1)
- 5-17: The scaffolding for the
Query
interface andQueryClientImpl
class is correctly set up. However, both the interface and thecreateRpcQueryExtension
function currently lack implementation. Consider adding a comment or TODO to indicate that further implementation is expected or to guide future development.indexer/packages/v4-protos/src/codegen/dydxprotocol/vault/genesis.ts (1)
- 5-42: The
GenesisState
interface and its protobuf encoding and decoding functions are correctly implemented for an initial scaffold. Consider adding documentation or comments to clarify the purpose and future expectations for theGenesisState
interface, especially if it is intended to be expanded with additional properties.indexer/packages/v4-protos/src/codegen/dydxprotocol/rpc.query.ts (1)
- 27-27: The addition of the
vault
extension to the RPC query client is correctly implemented, following the established pattern for modular extensions. Ensure that the imported module for thevault
extension exists and is correctly structured to support its use as an RPC query extension.indexer/packages/v4-protos/src/codegen/dydxprotocol/bundle.ts (1)
- 87-172: > 📝 NOTE
This review was outside the diff hunks and was mapped to the diff hunk with the greatest overlap. Original lines [1-320]
The reorganization and renaming of imports within the
dydxprotocol
namespace are well-executed, following a consistent pattern for modularization. Ensure that all newly referenced modules exist and are structured as expected to support these exports. Additionally, verify that this reorganization aligns with the overall architecture and naming conventions of thedydxprotocol
framework.protocol/app/app.go (9)
- 176-178: The integration of the
vault
module imports looks correct and follows the established pattern for module integration within the application. This ensures that thevault
module's types and keeper are accessible throughout the application.- 301-301: The
VaultKeeper
is correctly declared within theApp
struct. This declaration is necessary for thevault
module to interact with other modules and the broader application context.- 405-405: The
vaultmoduletypes.StoreKey
is correctly added to the application's KV store keys. This is essential for thevault
module to have its own isolated storage space within the application's state.- 1043-1050: The setup of the
VaultKeeper
within the application's constructor function follows the established pattern for keeper initialization. It correctly assigns thevault
module's keeper to the application'sVaultKeeper
field, ensuring the module's functionality is integrated into the application.- 1120-1120: The addition of the
vault
module to the application's module manager is correctly implemented. This step is crucial for integrating thevault
module's functionality with the rest of the application, including handling messages, queries, and genesis state.- 1165-1165: The inclusion of the
vaultmoduletypes.ModuleName
in the application'sOrderBeginBlockers
ensures that thevault
module can perform necessary operations at the beginning of each block. This is important for modules that need to execute logic before transactions are processed.- 1205-1205: The inclusion of the
vaultmoduletypes.ModuleName
in the application'sOrderEndBlockers
ensures that thevault
module can perform necessary operations at the end of each block. This is important for modules that need to execute cleanup or finalization logic after all transactions have been processed.- 1249-1249: The inclusion of the
vaultmoduletypes.ModuleName
in the application'sOrderInitGenesis
ensures that thevault
module's genesis state is correctly initialized. This is crucial for setting up the module's initial state when the blockchain application is first started.- 1289-1289: The inclusion of the
vaultmoduletypes.ModuleName
in the application'sOrderMigrations
ensures that thevault
module can perform necessary migrations. This is important for modules that need to update their state structure or perform data migrations between software versions.
@@ -454,6 +454,7 @@ | |||
"total_escrowed": [] | |||
}, | |||
"upgrade": {}, | |||
"vault": {}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
do we even need to add this to genesis? It seems like at genesis on mainnet/testnet, we didn't have a vault, so wouldn't we default to {}
for vault?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is needed for tests on default genesis state. added a new module so genesis state has this new entry
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
IIUC this module has 0 business logic right? It's just an empty module that you will fill as time goes on?
yep just an empty module for now and will add business logic later on |
@@ -2243,6 +2243,7 @@ | |||
"total_escrowed": [] | |||
}, | |||
"upgrade": {}, | |||
"vault": {}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Remove this
* scaffold x/vault Signed-off-by: Eric <eric.warehime@gmail.com>
commit d98f859 Author: Eric <eric.warehime@gmail.com> Date: Mon Mar 11 12:46:53 2024 -0700 Update sample pregenesis Signed-off-by: Eric <eric.warehime@gmail.com> commit 7f178fe Author: Mohammed Affan <affanmd@nyu.edu> Date: Mon Mar 11 13:46:08 2024 -0400 [OTE-209] Emit metrics gated through execution mode (dydxprotocol#1157) Signed-off-by: Eric <eric.warehime@gmail.com> commit 47e365d Author: dydxwill <119354122+dydxwill@users.noreply.github.com> Date: Mon Mar 11 13:43:16 2024 -0400 add aggregate comlink response code stats (dydxprotocol#1162) Signed-off-by: Eric <eric.warehime@gmail.com> commit 7774ad9 Author: shrenujb <98204323+shrenujb@users.noreply.github.com> Date: Fri Mar 8 17:30:49 2024 -0500 [TRA-70] Add state migrations for isolated markets (dydxprotocol#1155) Signed-off-by: Shrenuj Bansal <shrenuj@dydx.exchange> Signed-off-by: Eric <eric.warehime@gmail.com> commit 89c7405 Author: Jonathan Fung <121899091+jonfung-dydx@users.noreply.github.com> Date: Thu Mar 7 17:28:06 2024 -0500 [CT-517] E2E tests batch cancel (dydxprotocol#1149) * more end to end test * extraprint * more e2e test Signed-off-by: Eric <eric.warehime@gmail.com> commit 41a3a41 Author: Teddy Ding <teddy@dydx.exchange> Date: Thu Mar 7 15:42:30 2024 -0500 [OTE-200] OIMF protos (dydxprotocol#1125) * OIMF protos * add default genesis value, modify methods interface * fix genesis file * fix integration test * lint Signed-off-by: Eric <eric.warehime@gmail.com> commit 2a062b1 Author: Teddy Ding <teddy@dydx.exchange> Date: Thu Mar 7 15:24:15 2024 -0500 Add `v5` upgrade handler and set up container upgrade test (dydxprotocol#1153) * wip * update preupgrade_genesis * fix preupgrade_genesis.json * nit * setupUpgradeStoreLoaders for v5.0.0 Signed-off-by: Eric <eric.warehime@gmail.com> commit b7942b3 Author: jayy04 <103467857+jayy04@users.noreply.github.com> Date: Thu Mar 7 13:43:48 2024 -0500 [CT-647] construct the initial orderbook snapshot (dydxprotocol#1147) * [CT-647] construct the initial orderbook snapshot * [CT-647] initialize new streams and send orderbook snapshot (dydxprotocol#1152) * [CT-647] initialize new streams and send orderbook snapshot * use sync once * comments Signed-off-by: Eric <eric.warehime@gmail.com> commit c67a3c6 Author: shrenujb <98204323+shrenujb@users.noreply.github.com> Date: Thu Mar 7 12:40:37 2024 -0500 [TRA-84] Move SA module address transfers to use perpetual based SA accounts (dydxprotocol#1146) Signed-off-by: Shrenuj Bansal <shrenuj@dydx.exchange Signed-off-by: Eric <eric.warehime@gmail.com> commit dba23e0 Author: Mohammed Affan <affanmd@nyu.edu> Date: Thu Mar 7 10:34:11 2024 -0500 update readme link to point to the right page (dydxprotocol#1151) Signed-off-by: Eric <eric.warehime@gmail.com> commit b5870d5 Author: Tian <tian@dydx.exchange> Date: Wed Mar 6 16:43:04 2024 -0500 [TRA-86] scaffold x/vault (dydxprotocol#1148) * scaffold x/vault Signed-off-by: Eric <eric.warehime@gmail.com> commit 0eca041 Author: jayy04 <103467857+jayy04@users.noreply.github.com> Date: Wed Mar 6 10:48:42 2024 -0500 [CT-652] add command line flag for full node streaming (dydxprotocol#1145) Signed-off-by: Eric <eric.warehime@gmail.com> commit b319cb8 Author: jayy04 <103467857+jayy04@users.noreply.github.com> Date: Tue Mar 5 21:58:35 2024 -0500 [CT-646] stream offchain updates through stream manager (dydxprotocol#1138) * [CT-646] stream offchain updates through stream manager * comments * fix lint * get rid of finished * comments * comments Signed-off-by: Eric <eric.warehime@gmail.com> commit 1c54620 Author: shrenujb <98204323+shrenujb@users.noreply.github.com> Date: Tue Mar 5 16:34:19 2024 -0500 [TRA-78] Add function to retrieve collateral pool addr for a subaccount (dydxprotocol#1142) Signed-off-by: Shrenuj Bansal <shrenuj@dydx.exchange> Signed-off-by: Eric <eric.warehime@gmail.com> commit b8c1d62 Author: dydxwill <119354122+dydxwill@users.noreply.github.com> Date: Tue Mar 5 15:03:28 2024 -0500 [OTE-141] implement post /compliance/geoblock (dydxprotocol#1129) Signed-off-by: Eric <eric.warehime@gmail.com> commit ab8c570 Author: Jonathan Fung <121899091+jonfung-dydx@users.noreply.github.com> Date: Tue Mar 5 11:19:53 2024 -0500 Fix mock-gen dydxprotocol#1140 Signed-off-by: Eric <eric.warehime@gmail.com> commit 12506a1 Author: shrenujb <98204323+shrenujb@users.noreply.github.com> Date: Mon Mar 4 21:33:28 2024 -0500 [TRA-64] Use market specific insurance fund for cross or isolated markets (dydxprotocol#1132) Signed-off-by: Shrenuj Bansal <shrenuj@dydx.exchange> Signed-off-by: Eric <eric.warehime@gmail.com> commit 929f09e Author: Jonathan Fung <121899091+jonfung-dydx@users.noreply.github.com> Date: Mon Mar 4 13:48:04 2024 -0800 [CT-514] Clob `MsgBatchCancel` functionality (dydxprotocol#1110) * wip implementation * use new cometbft * Revert "use new cometbft" This reverts commit e5b8a03. * go mod tidy * basic e2e test * more msgBatchCancels in code * repeated fixed32 -> uint32 * remove debug prints * update cometbft replace go.mod sha * one more debug print * typo * regen indexer protos * update comment on proto * proto comment changes * extract stateful validation into own fn * pr format comments * clean up test file * new return type with success and failure Signed-off-by: Eric <eric.warehime@gmail.com> commit 41de83e Author: dydxwill <119354122+dydxwill@users.noreply.github.com> Date: Mon Mar 4 12:22:16 2024 -0500 add index to address read replica lag (dydxprotocol#1137) Signed-off-by: Eric <eric.warehime@gmail.com> commit 735d9a8 Author: dydxwill <119354122+dydxwill@users.noreply.github.com> Date: Mon Mar 4 11:56:59 2024 -0500 rename (dydxprotocol#1136) Signed-off-by: Eric <eric.warehime@gmail.com> commit 86617dd Author: jayy04 <103467857+jayy04@users.noreply.github.com> Date: Mon Mar 4 10:43:31 2024 -0500 [CT-644] instantiate grpc stream manager (dydxprotocol#1134) * [CT-644] instantiate grpc stream manager * update type * update channel type Signed-off-by: Eric <eric.warehime@gmail.com> commit 32afd64 Author: Eric <eric.warehime@gmail.com> Date: Mon Mar 11 12:41:06 2024 -0700 Update go version in Dockerfile Signed-off-by: Eric <eric.warehime@gmail.com> commit ba27204 Author: Eric <eric.warehime@gmail.com> Date: Fri Mar 8 09:44:04 2024 -0800 Add slinky utils, use that to convert between market and currency pair commit 667a804 Author: Eric <eric.warehime@gmail.com> Date: Wed Mar 6 20:43:40 2024 -0800 Update error messages commit d53292c Author: Eric <eric.warehime@gmail.com> Date: Wed Mar 6 20:16:01 2024 -0800 Update docstrings, rename OracleClient commit daad125 Author: Eric <eric.warehime@gmail.com> Date: Mon Mar 4 10:51:23 2024 -0800 VoteExtension slinky logic
Changelist
scaffold
x/vault
Test Plan
[Describe how this PR was tested (if applicable)]
Author/Reviewer Checklist
state-breaking
label.indexer-postgres-breaking
label.PrepareProposal
orProcessProposal
, manually add the labelproposal-breaking
.feature:[feature-name]
.backport/[branch-name]
.refactor
,chore
,bug
.