@@ -10,7 +10,9 @@ import (
10
10
apiv1 "github.com/attestantio/go-eth2-client/api/v1"
11
11
"github.com/rs/zerolog/log"
12
12
evmMessage "github.com/sygmaprotocol/spectre-node/chains/evm/message"
13
+ "github.com/sygmaprotocol/spectre-node/chains/evm/prover"
13
14
"github.com/sygmaprotocol/sygma-core/relayer/message"
15
+ consensus "github.com/umbracle/go-eth-consensus"
14
16
)
15
17
16
18
type SyncCommitteeFetcher interface {
@@ -42,18 +44,23 @@ func NewRotateHandler(msgChan chan []*message.Message, syncCommitteeFetcher Sync
42
44
// HandleEvents checks if there is a new sync committee and sends a rotate message
43
45
// if there is
44
46
func (h * RotateHandler ) HandleEvents (checkpoint * apiv1.Finality ) error {
45
- sArgs , err := h .prover .StepArgs ( )
47
+ args , err := h .prover .RotateArgs ( uint64 ( checkpoint . Finalized . Epoch ) )
46
48
if err != nil {
47
49
return err
48
50
}
49
- rArgs , err := h .prover .RotateArgs (uint64 (checkpoint .Justified .Epoch ))
50
- if err != nil {
51
- return err
51
+ sArgs := & prover.StepArgs {
52
+ Pubkeys : args .Pubkeys ,
53
+ Update : & consensus.LightClientFinalityUpdateCapella {
54
+ AttestedHeader : args .Update .AttestedHeader ,
55
+ FinalizedHeader : args .Update .FinalizedHeader ,
56
+ FinalityBranch : args .Update .FinalityBranch ,
57
+ SyncAggregate : args .Update .SyncAggregate ,
58
+ SignatureSlot : args .Update .SignatureSlot ,
59
+ },
60
+ Domain : args .Domain ,
61
+ Spec : args .Spec ,
52
62
}
53
63
54
- if sArgs .Update .FinalizedHeader .Header .Slot != rArgs .Update .AttestedHeader .Header .Slot {
55
- return nil
56
- }
57
64
syncCommittee , err := h .syncCommitteeFetcher .SyncCommittee (context .Background (), & api.SyncCommitteeOpts {
58
65
State : "finalized" ,
59
66
})
@@ -66,7 +73,7 @@ func (h *RotateHandler) HandleEvents(checkpoint *apiv1.Finality) error {
66
73
67
74
log .Info ().Uint8 ("domainID" , h .domainID ).Msgf ("Rotating committee" )
68
75
69
- rotateProof , err := h .prover .RotateProof (rArgs )
76
+ rotateProof , err := h .prover .RotateProof (args )
70
77
if err != nil {
71
78
return err
72
79
}
0 commit comments