From 5ccf033ad16ce2ca3f6a31364c312632724cd0d0 Mon Sep 17 00:00:00 2001 From: dydxwill <119354122+dydxwill@users.noreply.github.com> Date: Fri, 23 Aug 2024 07:08:02 -0400 Subject: [PATCH] [CT-968] Fix snapshot validation by including subaccounts from proposed operation queue (#2142) --- protocol/x/clob/keeper/process_operations.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/protocol/x/clob/keeper/process_operations.go b/protocol/x/clob/keeper/process_operations.go index 2e349ed0a6..486dd6ab0e 100644 --- a/protocol/x/clob/keeper/process_operations.go +++ b/protocol/x/clob/keeper/process_operations.go @@ -95,10 +95,14 @@ func (k Keeper) ProcessProposerOperations( } k.SendOrderbookUpdates(ctx, allUpdates) - // send local subaccount snapshots - subaccountIdsToUpdate := fetchSubaccountIdsInvolvedInOpQueue( + subaccountIdsFromProposed := fetchSubaccountIdsInvolvedInOpQueue( + operations, + ) + + subaccountIdsFromLocal := fetchSubaccountIdsInvolvedInOpQueue( localValidatorOperationsQueue, ) + subaccountIdsToUpdate := lib.MergeMaps(subaccountIdsFromLocal, subaccountIdsFromProposed) allSubaccountUpdates := make([]satypes.StreamSubaccountUpdate, 0) for subaccountId := range subaccountIdsToUpdate { subaccountUpdate := k.subaccountsKeeper.GetStreamSubaccountUpdate(ctx, subaccountId, false)