Skip to content

Commit

Permalink
log triggered based mercury test
Browse files Browse the repository at this point in the history
  • Loading branch information
shileiwill committed Oct 19, 2023
1 parent ef65395 commit a42a0d7
Show file tree
Hide file tree
Showing 9 changed files with 334 additions and 38 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ contract LogTriggeredStreamsLookup is ILogAutomation, StreamsLookupCompatibleInt
bytes blob,
bytes verified
);
event LimitOrderExecuted(uint256 indexed orderId, uint256 indexed amount, address indexed exchange); // keccak(LimitOrderExecuted(uint256,uint256,address)) => 0xd1ffe9e45581c11d7d9f2ed5f75217cd4be9f8b7eee6af0f6d03f46de53956cd

ArbSys internal constant ARB_SYS = ArbSys(0x0000000000000000000000000000000000000064);
IVerifierProxy internal constant VERIFIER = IVerifierProxy(0x09DFf56A4fF44e0f4436260A04F5CFa65636A481);
Expand All @@ -40,10 +41,17 @@ contract LogTriggeredStreamsLookup is ILogAutomation, StreamsLookupCompatibleInt
string[] public feedsHex = ["0x4554482d5553442d415242495452554d2d544553544e45540000000000000000"];
string public feedParamKey = "feedIdHex";
string public timeParamKey = "blockNumber";
uint256 public counter;

constructor(bool _useArbitrumBlockNum, bool _verify) {
useArbitrumBlockNum = _useArbitrumBlockNum;
verify = _verify;
counter = 0;
}

function start() public {
// need an initial event to begin the cycle
emit LimitOrderExecuted(1, 100, address(0x0));
}

function setTimeParamKey(string memory timeParam) external {
Expand Down Expand Up @@ -74,20 +82,34 @@ contract LogTriggeredStreamsLookup is ILogAutomation, StreamsLookupCompatibleInt
bytes memory t3 = abi.encodePacked(log.topics[3]);
address exchange = abi.decode(t3, (address));

revert StreamsLookup(feedParamKey, feedsHex, timeParamKey, blockNum, abi.encode(orderId, amount, exchange));
revert StreamsLookup(
feedParamKey,
feedsHex,
timeParamKey,
blockNum,
abi.encode(orderId, amount, exchange, executedSig)
);
}
revert("could not find matching event sig");
}

function performUpkeep(bytes calldata performData) external override {
(bytes[] memory values, bytes memory extraData) = abi.decode(performData, (bytes[], bytes));
(uint256 orderId, uint256 amount, address exchange) = abi.decode(extraData, (uint256, uint256, address));
(uint256 orderId, uint256 amount, address exchange, bytes32 logTopic0) = abi.decode(
extraData,
(uint256, uint256, address, bytes32)
);

bytes memory verifiedResponse = "";
if (verify) {
verifiedResponse = VERIFIER.verify(values[0]);
}

counter = counter + 1;
if (logTopic0 == executedSig) {
emit LimitOrderExecuted(1, 100, address(0x0));
}

emit PerformingLogTriggerUpkeep(
tx.origin,
orderId,
Expand Down

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ keeper_registry_wrapper2_0: ../../contracts/solc/v0.8.6/KeeperRegistry2_0.abi ..
keeper_registry_wrapper_2_1: ../../contracts/solc/v0.8.16/KeeperRegistry2_1.abi ../../contracts/solc/v0.8.16/KeeperRegistry2_1.bin 604e4a0cd980c713929b523b999462a3aa0ed06f96ff563a4c8566cf59c8445b
keepers_vrf_consumer: ../../contracts/solc/v0.8.6/KeepersVRFConsumer.abi ../../contracts/solc/v0.8.6/KeepersVRFConsumer.bin fa75572e689c9e84705c63e8dbe1b7b8aa1a8fe82d66356c4873d024bb9166e8
log_emitter: ../../contracts/solc/v0.8.19/LogEmitter.abi ../../contracts/solc/v0.8.19/LogEmitter.bin 244ba13730c036de0b02beef4e3d9c9a96946ce353c27f366baecc7f5be5a6fd
log_triggered_streams_lookup_wrapper: ../../contracts/solc/v0.8.16/LogTriggeredStreamsLookup.abi ../../contracts/solc/v0.8.16/LogTriggeredStreamsLookup.bin dfe5f8800251b464cd13f7ef966698ab7f0d8f6a5387520f09b602cfbf48f123
log_triggered_streams_lookup_wrapper: ../../contracts/solc/v0.8.16/LogTriggeredStreamsLookup.abi ../../contracts/solc/v0.8.16/LogTriggeredStreamsLookup.bin f8da43a927c1a66238a9f4fd5d5dd7e280e361daa0444da1f7f79498ace901e1
log_upkeep_counter_wrapper: ../../contracts/solc/v0.8.6/LogUpkeepCounter.abi ../../contracts/solc/v0.8.6/LogUpkeepCounter.bin 42426bbb83f96dfbe55fc576d6c65020eaeed690e2289cf99b0c4aa810a5f4ec
mock_aggregator_proxy: ../../contracts/solc/v0.8.6/MockAggregatorProxy.abi ../../contracts/solc/v0.8.6/MockAggregatorProxy.bin b16c108f3dd384c342ddff5e94da7c0a8d39d1be5e3d8f2cf61ecc7f0e50ff42
mock_ethlink_aggregator_wrapper: ../../contracts/solc/v0.6/MockETHLINKAggregator.abi ../../contracts/solc/v0.6/MockETHLINKAggregator.bin 1c52c24f797b8482aa12b8251dcea1c072827bd5b3426b822621261944b99ca0
Expand Down
6 changes: 3 additions & 3 deletions integration-tests/actions/automation_ocr_helpers.go
Original file line number Diff line number Diff line change
Expand Up @@ -268,7 +268,7 @@ func DeployConsumers(t *testing.T, registry contracts.KeeperRegistry, registrar
upkeepsAddresses = append(upkeepsAddresses, upkeep.Address())
}
upkeepIds := RegisterUpkeepContracts(
t, linkToken, linkFundsForEachUpkeep, client, upkeepGasLimit, registry, registrar, numberOfUpkeeps, upkeepsAddresses, isLogTrigger,
t, linkToken, linkFundsForEachUpkeep, client, upkeepGasLimit, registry, registrar, numberOfUpkeeps, upkeepsAddresses, isLogTrigger, isMercury,
)
return upkeeps, upkeepIds
}
Expand All @@ -295,7 +295,7 @@ func DeployPerformanceConsumers(
for _, upkeep := range upkeeps {
upkeepsAddresses = append(upkeepsAddresses, upkeep.Address())
}
upkeepIds := RegisterUpkeepContracts(t, linkToken, linkFundsForEachUpkeep, client, upkeepGasLimit, registry, registrar, numberOfUpkeeps, upkeepsAddresses, false)
upkeepIds := RegisterUpkeepContracts(t, linkToken, linkFundsForEachUpkeep, client, upkeepGasLimit, registry, registrar, numberOfUpkeeps, upkeepsAddresses, false, false)
return upkeeps, upkeepIds
}

Expand All @@ -316,7 +316,7 @@ func DeployPerformDataCheckerConsumers(
for _, upkeep := range upkeeps {
upkeepsAddresses = append(upkeepsAddresses, upkeep.Address())
}
upkeepIds := RegisterUpkeepContracts(t, linkToken, linkFundsForEachUpkeep, client, upkeepGasLimit, registry, registrar, numberOfUpkeeps, upkeepsAddresses, false)
upkeepIds := RegisterUpkeepContracts(t, linkToken, linkFundsForEachUpkeep, client, upkeepGasLimit, registry, registrar, numberOfUpkeeps, upkeepsAddresses, false, false)
return upkeeps, upkeepIds
}

Expand Down
23 changes: 15 additions & 8 deletions integration-tests/actions/keeper_helpers.go
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,7 @@ func DeployKeeperContracts(
for _, upkeep := range upkeeps {
upkeepsAddresses = append(upkeepsAddresses, upkeep.Address())
}
upkeepIds := RegisterUpkeepContracts(t, linkToken, linkFundsForEachUpkeep, client, upkeepGasLimit, registry, registrar, numberOfUpkeeps, upkeepsAddresses, false)
upkeepIds := RegisterUpkeepContracts(t, linkToken, linkFundsForEachUpkeep, client, upkeepGasLimit, registry, registrar, numberOfUpkeeps, upkeepsAddresses, false, false)
err = client.WaitForEvents()
require.NoError(t, err, "Error waiting for events")

Expand Down Expand Up @@ -214,7 +214,7 @@ func DeployPerformanceKeeperContracts(
upkeepsAddresses = append(upkeepsAddresses, upkeep.Address())
}

upkeepIds := RegisterUpkeepContracts(t, linkToken, linkFundsForEachUpkeep, client, upkeepGasLimit, registry, registrar, numberOfContracts, upkeepsAddresses, false)
upkeepIds := RegisterUpkeepContracts(t, linkToken, linkFundsForEachUpkeep, client, upkeepGasLimit, registry, registrar, numberOfContracts, upkeepsAddresses, false, false)

return registry, registrar, upkeeps, upkeepIds
}
Expand Down Expand Up @@ -270,7 +270,7 @@ func DeployPerformDataCheckerContracts(
upkeepsAddresses = append(upkeepsAddresses, upkeep.Address())
}

upkeepIds := RegisterUpkeepContracts(t, linkToken, linkFundsForEachUpkeep, client, upkeepGasLimit, registry, registrar, numberOfContracts, upkeepsAddresses, false)
upkeepIds := RegisterUpkeepContracts(t, linkToken, linkFundsForEachUpkeep, client, upkeepGasLimit, registry, registrar, numberOfContracts, upkeepsAddresses, false, false)

return registry, registrar, upkeeps, upkeepIds
}
Expand Down Expand Up @@ -328,17 +328,17 @@ func DeployUpkeepTranscoder(
return transcoder
}

func RegisterUpkeepContracts(t *testing.T, linkToken contracts.LinkToken, linkFunds *big.Int, client blockchain.EVMClient, upkeepGasLimit uint32, registry contracts.KeeperRegistry, registrar contracts.KeeperRegistrar, numberOfContracts int, upkeepAddresses []string, isLogTrigger bool) []*big.Int {
func RegisterUpkeepContracts(t *testing.T, linkToken contracts.LinkToken, linkFunds *big.Int, client blockchain.EVMClient, upkeepGasLimit uint32, registry contracts.KeeperRegistry, registrar contracts.KeeperRegistrar, numberOfContracts int, upkeepAddresses []string, isLogTrigger bool, isMercury bool) []*big.Int {
checkData := make([][]byte, 0)
for i := 0; i < numberOfContracts; i++ {
checkData = append(checkData, []byte("0"))
}
return RegisterUpkeepContractsWithCheckData(
t, linkToken, linkFunds, client, upkeepGasLimit, registry, registrar,
numberOfContracts, upkeepAddresses, checkData, isLogTrigger)
numberOfContracts, upkeepAddresses, checkData, isLogTrigger, isMercury)
}

func RegisterUpkeepContractsWithCheckData(t *testing.T, linkToken contracts.LinkToken, linkFunds *big.Int, client blockchain.EVMClient, upkeepGasLimit uint32, registry contracts.KeeperRegistry, registrar contracts.KeeperRegistrar, numberOfContracts int, upkeepAddresses []string, checkData [][]byte, isLogTrigger bool) []*big.Int {
func RegisterUpkeepContractsWithCheckData(t *testing.T, linkToken contracts.LinkToken, linkFunds *big.Int, client blockchain.EVMClient, upkeepGasLimit uint32, registry contracts.KeeperRegistry, registrar contracts.KeeperRegistrar, numberOfContracts int, upkeepAddresses []string, checkData [][]byte, isLogTrigger bool, isMercury bool) []*big.Int {
l := logging.GetTestLogger(t)
registrationTxHashes := make([]common.Hash, 0)
upkeepIds := make([]*big.Int, 0)
Expand All @@ -354,6 +354,7 @@ func RegisterUpkeepContractsWithCheckData(t *testing.T, linkToken contracts.Link
0,
client.GetDefaultWallet().Address(),
isLogTrigger,
isMercury,
)
require.NoError(t, err, "Encoding the register request shouldn't fail")
tx, err := linkToken.TransferAndCall(registrar.Address(), linkFunds, req)
Expand Down Expand Up @@ -406,11 +407,17 @@ func DeployKeeperConsumers(t *testing.T, contractDeployer contracts.ContractDepl
var keeperConsumerInstance contracts.KeeperConsumer
var err error

if isMercury {
if isMercury && isLogTrigger {
// v2.1 only: Log triggered based contract with Mercury enabled
keeperConsumerInstance, err = contractDeployer.DeployAutomationLogTriggeredStreamsLookupUpkeepConsumer()
} else if isMercury {
// v2.1 only: Conditional based contract with Mercury enabled
keeperConsumerInstance, err = contractDeployer.DeployAutomationStreamsLookupUpkeepConsumer(big.NewInt(1000), big.NewInt(5), false, true, false) // 1000 block test range
} else if isLogTrigger {
// v2.1 only: Log triggered based contract without Mercury
keeperConsumerInstance, err = contractDeployer.DeployAutomationLogTriggerConsumer(big.NewInt(1000)) // 1000 block test range
} else {
// v2.0 and v2.1: Conditional based contract without Mercury
keeperConsumerInstance, err = contractDeployer.DeployKeeperConsumer(big.NewInt(5))
}

Expand Down Expand Up @@ -590,7 +597,7 @@ func RegisterNewUpkeeps(
addressesOfNewUpkeeps = append(addressesOfNewUpkeeps, upkeep.Address())
}

newUpkeepIDs := RegisterUpkeepContracts(t, linkToken, big.NewInt(9e18), client, upkeepGasLimit, registry, registrar, numberOfNewUpkeeps, addressesOfNewUpkeeps, false)
newUpkeepIDs := RegisterUpkeepContracts(t, linkToken, big.NewInt(9e18), client, upkeepGasLimit, registry, registrar, numberOfNewUpkeeps, addressesOfNewUpkeeps, false, false)

return newlyDeployedUpkeeps, newUpkeepIDs
}
28 changes: 25 additions & 3 deletions integration-tests/contracts/contract_deployer.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,10 @@ import (
"github.com/rs/zerolog/log"

"github.com/smartcontractkit/chainlink-testing-framework/blockchain"
"github.com/smartcontractkit/libocr/gethwrappers/offchainaggregator"
"github.com/smartcontractkit/libocr/gethwrappers2/ocr2aggregator"
ocrConfigHelper "github.com/smartcontractkit/libocr/offchainreporting/confighelper"

"github.com/smartcontractkit/chainlink/v2/core/gethwrappers/functions/generated/functions_load_test_client"
"github.com/smartcontractkit/chainlink/v2/core/gethwrappers/functions/generated/functions_v1_events_mock"
"github.com/smartcontractkit/chainlink/v2/core/gethwrappers/generated/automation_consumer_benchmark"
Expand All @@ -39,6 +43,7 @@ import (
"github.com/smartcontractkit/chainlink/v2/core/gethwrappers/generated/keeper_registry_wrapper2_0"
registry21 "github.com/smartcontractkit/chainlink/v2/core/gethwrappers/generated/keeper_registry_wrapper_2_1"
"github.com/smartcontractkit/chainlink/v2/core/gethwrappers/generated/link_token_interface"
"github.com/smartcontractkit/chainlink/v2/core/gethwrappers/generated/log_triggered_streams_lookup_wrapper"
"github.com/smartcontractkit/chainlink/v2/core/gethwrappers/generated/log_upkeep_counter_wrapper"
"github.com/smartcontractkit/chainlink/v2/core/gethwrappers/generated/mock_aggregator_proxy"
"github.com/smartcontractkit/chainlink/v2/core/gethwrappers/generated/mock_ethlink_aggregator_wrapper"
Expand All @@ -53,9 +58,6 @@ import (
"github.com/smartcontractkit/chainlink/v2/core/gethwrappers/llo-feeds/generated/verifier"
"github.com/smartcontractkit/chainlink/v2/core/gethwrappers/llo-feeds/generated/verifier_proxy"
"github.com/smartcontractkit/chainlink/v2/core/gethwrappers/shared/generated/werc20_mock"
"github.com/smartcontractkit/libocr/gethwrappers/offchainaggregator"
"github.com/smartcontractkit/libocr/gethwrappers2/ocr2aggregator"
ocrConfigHelper "github.com/smartcontractkit/libocr/offchainreporting/confighelper"

eth_contracts "github.com/smartcontractkit/chainlink/integration-tests/contracts/ethereum"
)
Expand Down Expand Up @@ -84,6 +86,7 @@ type ContractDeployer interface {
DeployKeeperConsumer(updateInterval *big.Int) (KeeperConsumer, error)
DeployAutomationLogTriggerConsumer(testInterval *big.Int) (KeeperConsumer, error)
DeployAutomationStreamsLookupUpkeepConsumer(testRange *big.Int, interval *big.Int, useArbBlock bool, staging bool, verify bool) (KeeperConsumer, error)
DeployAutomationLogTriggeredStreamsLookupUpkeepConsumer() (KeeperConsumer, error)
DeployKeeperConsumerPerformance(
testBlockRange,
averageCadence,
Expand Down Expand Up @@ -1269,6 +1272,25 @@ func (e *EthereumContractDeployer) DeployAutomationStreamsLookupUpkeepConsumer(t
}, err
}

func (e *EthereumContractDeployer) DeployAutomationLogTriggeredStreamsLookupUpkeepConsumer() (KeeperConsumer, error) {
address, _, instance, err := e.client.DeployContract("LogTriggeredStreamsLookupUpkeep", func(
auth *bind.TransactOpts,
backend bind.ContractBackend,
) (common.Address, *types.Transaction, interface{}, error) {
return log_triggered_streams_lookup_wrapper.DeployLogTriggeredStreamsLookup(
auth, backend, false, false,
)
})
if err != nil {
return nil, err
}
return &EthereumAutomationLogTriggeredStreamsLookupUpkeepConsumer{
client: e.client,
consumer: instance.(*log_triggered_streams_lookup_wrapper.LogTriggeredStreamsLookup),
address: address,
}, err
}

func (e *EthereumContractDeployer) DeployUpkeepCounter(testRange *big.Int, interval *big.Int) (UpkeepCounter, error) {
address, _, instance, err := e.client.DeployContract("UpkeepCounter", func(
auth *bind.TransactOpts,
Expand Down
71 changes: 60 additions & 11 deletions integration-tests/contracts/ethereum_keeper_contracts.go
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ import (
"github.com/smartcontractkit/chainlink/v2/core/gethwrappers/generated/keeper_registry_wrapper1_3"
"github.com/smartcontractkit/chainlink/v2/core/gethwrappers/generated/keeper_registry_wrapper2_0"
registry21 "github.com/smartcontractkit/chainlink/v2/core/gethwrappers/generated/keeper_registry_wrapper_2_1"
"github.com/smartcontractkit/chainlink/v2/core/gethwrappers/generated/log_triggered_streams_lookup_wrapper"
"github.com/smartcontractkit/chainlink/v2/core/gethwrappers/generated/log_upkeep_counter_wrapper"
"github.com/smartcontractkit/chainlink/v2/core/gethwrappers/generated/streams_lookup_upkeep_wrapper"
"github.com/smartcontractkit/chainlink/v2/core/gethwrappers/generated/upkeep_transcoder"
Expand All @@ -46,7 +47,7 @@ var registrarABI = cltypes.MustGetABI(registrar21.AutomationRegistrarABI)
type KeeperRegistrar interface {
Address() string

EncodeRegisterRequest(name string, email []byte, upkeepAddr string, gasLimit uint32, adminAddr string, checkData []byte, amount *big.Int, source uint8, senderAddr string, isLogTrigger bool) ([]byte, error)
EncodeRegisterRequest(name string, email []byte, upkeepAddr string, gasLimit uint32, adminAddr string, checkData []byte, amount *big.Int, source uint8, senderAddr string, isLogTrigger bool, isMercury bool) ([]byte, error)

Fund(ethAmount *big.Float) error
}
Expand Down Expand Up @@ -1752,6 +1753,50 @@ func (v *EthereumAutomationStreamsLookupUpkeepConsumer) Counter(ctx context.Cont
return cnt, nil
}

type EthereumAutomationLogTriggeredStreamsLookupUpkeepConsumer struct {
client blockchain.EVMClient
consumer *log_triggered_streams_lookup_wrapper.LogTriggeredStreamsLookup
address *common.Address
}

func (v *EthereumAutomationLogTriggeredStreamsLookupUpkeepConsumer) Address() string {
return v.address.Hex()
}

// Kick off the log trigger event. The contract uses Mercury v0.2 so no need to set ParamKeys
func (v *EthereumAutomationLogTriggeredStreamsLookupUpkeepConsumer) Start() error {
txOpts, err := v.client.TransactionOpts(v.client.GetDefaultWallet())
if err != nil {
return err
}

tx, err := v.consumer.Start(txOpts)
if err != nil {
return err
}
return v.client.ProcessTransaction(tx)
}

func (v *EthereumAutomationLogTriggeredStreamsLookupUpkeepConsumer) Fund(ethAmount *big.Float) error {
gasEstimates, err := v.client.EstimateGas(geth.CallMsg{})
if err != nil {
return err
}
return v.client.Fund(v.address.Hex(), ethAmount, gasEstimates)
}

func (v *EthereumAutomationLogTriggeredStreamsLookupUpkeepConsumer) Counter(ctx context.Context) (*big.Int, error) {
opts := &bind.CallOpts{
From: common.HexToAddress(v.client.GetDefaultWallet().Address()),
Context: ctx,
}
cnt, err := v.consumer.Counter(opts)
if err != nil {
return nil, err
}
return cnt, nil
}

type EthereumAutomationLogCounterConsumer struct {
client blockchain.EVMClient
consumer *log_upkeep_counter_wrapper.LogUpkeepCounter
Expand Down Expand Up @@ -1953,7 +1998,7 @@ func (v *EthereumKeeperRegistrar) Fund(ethAmount *big.Float) error {
}

// EncodeRegisterRequest encodes register request to call it through link token TransferAndCall
func (v *EthereumKeeperRegistrar) EncodeRegisterRequest(name string, email []byte, upkeepAddr string, gasLimit uint32, adminAddr string, checkData []byte, amount *big.Int, source uint8, senderAddr string, isLogTrigger bool) ([]byte, error) {
func (v *EthereumKeeperRegistrar) EncodeRegisterRequest(name string, email []byte, upkeepAddr string, gasLimit uint32, adminAddr string, checkData []byte, amount *big.Int, source uint8, senderAddr string, isLogTrigger bool, isMercury bool) ([]byte, error) {
if v.registrar20 != nil {
registryABI, err := abi.JSON(strings.NewReader(keeper_registrar_wrapper2_0.KeeperRegistrarMetaData.ABI))
if err != nil {
Expand All @@ -1978,18 +2023,23 @@ func (v *EthereumKeeperRegistrar) EncodeRegisterRequest(name string, email []byt
return req, nil
} else if v.registrar21 != nil {
if isLogTrigger {
// bytes representation of 0x3d53a39550e04688065827f3bb86584cb007ab9ebca7ebd528e7301c9c31eb5d
topic0InBytes := [32]byte{
61, 83, 163, 149, 80, 224, 70, 136,
6, 88, 39, 243, 187, 134, 88, 76,
176, 7, 171, 158, 188, 167, 235,
213, 40, 231, 48, 28, 156, 49, 235, 93,
}

var topic0InBytes [32]byte
// bytes representation of 0x0000000000000000000000000000000000000000000000000000000000000000
bytes0 := [32]byte{
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
}
if isMercury {
// bytes representation of 0xd1ffe9e45581c11d7d9f2ed5f75217cd4be9f8b7eee6af0f6d03f46de53956cd
topic0InBytes = [32]byte{209, 255, 233, 228, 85, 129, 193, 29, 125, 159, 46, 213, 247, 82, 23, 205, 75, 233, 248, 183, 238, 230, 175, 15, 109, 3, 244, 109, 229, 57, 86, 205}
} else {
// bytes representation of 0x3d53a39550e04688065827f3bb86584cb007ab9ebca7ebd528e7301c9c31eb5d
topic0InBytes = [32]byte{
61, 83, 163, 149, 80, 224, 70, 136,
6, 88, 39, 243, 187, 134, 88, 76,
176, 7, 171, 158, 188, 167, 235,
213, 40, 231, 48, 28, 156, 49, 235, 93,
}
}

logTriggerConfigStruct := automation_utils_2_1.LogTriggerConfig{
ContractAddress: common.HexToAddress(upkeepAddr),
Expand Down Expand Up @@ -2023,7 +2073,6 @@ func (v *EthereumKeeperRegistrar) EncodeRegisterRequest(name string, email []byt
return nil, err
}
return req, nil

} else {
req, err := registrarABI.Pack(
"register",
Expand Down
Loading

0 comments on commit a42a0d7

Please sign in to comment.