From 1026d4883dc6b62ed4edfc4a2c85b8a5764423fa Mon Sep 17 00:00:00 2001 From: georgehao Date: Sun, 16 Jul 2023 16:29:03 +0800 Subject: [PATCH] feat: fix testInvalidProof test failure --- .../internal/logic/proof/proof_receiver.go | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/coordinator/internal/logic/proof/proof_receiver.go b/coordinator/internal/logic/proof/proof_receiver.go index 25b8028c4..edf9d434f 100644 --- a/coordinator/internal/logic/proof/proof_receiver.go +++ b/coordinator/internal/logic/proof/proof_receiver.go @@ -126,19 +126,20 @@ func (m *ZKProofReceiver) HandleZkProof(ctx context.Context, proofMsg *message.P // TODO: wrap both basic verifier and aggregator verifier success, verifyErr := m.verifier.VerifyProof(proofMsg.Proof) if verifyErr != nil || !success { + if verifyErr != nil { + // TODO: this is only a temp workaround for testnet, we should return err in real cases + log.Error("failed to verify zk proof", "proof id", proofMsg.ID, "roller pk", pk, "prove type", + proofMsg.Type, "proof time", proofTimeSec, "error", verifyErr) + } m.proofFailure(ctx, proofMsg.ID, pk, proofMsg.Type) - // TODO: this is only a temp workaround for testnet, we should return err in real cases - log.Error("Failed to verify zk proof", "proof id", proofMsg.ID, "roller pk", pk, "prove type", - proofMsg.Type, "proof time", proofTimeSec, "error", verifyErr) - // TODO: Roller needs to be slashed if proof is invalid. coordinatorProofsVerifiedFailedTimeTimer.Update(proofTime) rollermanager.Manager.UpdateMetricRollerProofsVerifiedFailedTimeTimer(pk, proofTime) - log.Info("proof verified by coordinator failed", "proof id", proofMsg.ID, "roller name", "roller pk", pk, - "prove type", proofMsg.Type, "proof time", proofTimeSec, "error", verifyErr) + log.Info("proof verified by coordinator failed", "proof id", proofMsg.ID, "roller name", proverTask.ProverName, + "roller pk", pk, "prove type", proofMsg.Type, "proof time", proofTimeSec, "error", verifyErr) return nil } @@ -234,7 +235,7 @@ func (m *ZKProofReceiver) updateProofStatus(ctx context.Context, hash string, pr var proverTaskStatus types.RollerProveStatus switch status { - case types.ProvingTaskProved, types.ProvingTaskUnassigned: + case types.ProvingTaskFailed, types.ProvingTaskUnassigned: proverTaskStatus = types.RollerProofInvalid case types.ProvingTaskVerified: proverTaskStatus = types.RollerProofValid @@ -291,7 +292,7 @@ func (m *ZKProofReceiver) checkIsTaskSuccess(ctx context.Context, hash string, p return false } } - if provingStatus == types.ProvingTaskVerified || provingStatus == types.ProvingTaskProved { + if provingStatus == types.ProvingTaskVerified { return true } return false