refactor handle workflow
This commit is contained in:
parent
4f9e02111d
commit
2cf9fb0dca
|
@ -531,6 +531,12 @@ export class GenericRelayerPlugin implements Plugin<WorkflowPayload> {
|
|||
this.logger.info(workflow.data.deliveryVaaIndex)
|
||||
this.logger.info(workflow.data.vaas)
|
||||
const payload = this.parseWorkflowPayload(workflow)
|
||||
switch (payload.payloadId) {
|
||||
case RelayerPayloadId.Delivery:
|
||||
return await this.handleDeliveryWorkflow(payload, execute)
|
||||
case RelayerPayloadId.Redelivery:
|
||||
return await this.handleRedeliveryWorkflow(payload, execute)
|
||||
}
|
||||
}
|
||||
|
||||
async handleDeliveryWorkflow(
|
||||
|
@ -542,7 +548,6 @@ export class GenericRelayerPlugin implements Plugin<WorkflowPayload> {
|
|||
const chainId = assertEvmChainId(ix.targetChain)
|
||||
const budget = ix.applicationBudgetTarget.add(ix.maximumRefundTarget).add(100)
|
||||
|
||||
const chainId = ix.targetChain as wh.EVMChainId
|
||||
// todo: consider parallelizing this
|
||||
await execute.onEVM({
|
||||
chainId,
|
||||
|
@ -554,7 +559,7 @@ export class GenericRelayerPlugin implements Plugin<WorkflowPayload> {
|
|||
|
||||
const input: CoreRelayerStructs.TargetDeliveryParametersSingleStruct = {
|
||||
encodedVMs: payload.vaas,
|
||||
deliveryIndex: payload.coreRelayerVaaIndex,
|
||||
deliveryIndex: payload.deliveryVaaIndex,
|
||||
multisendIndex: i,
|
||||
relayerRefundAddress: relayProvider.address,
|
||||
}
|
||||
|
@ -604,16 +609,15 @@ export class GenericRelayerPlugin implements Plugin<WorkflowPayload> {
|
|||
|
||||
const { newApplicationBudgetTarget, newMaximumRefundTarget } = redelivery.ix
|
||||
const budget = newApplicationBudgetTarget.add(newMaximumRefundTarget).add(100)
|
||||
const input: CoreRelayerStructs.TargetRedeliveryByTxHashParamsSingleStruct = {
|
||||
sourceEncodedVMs: payload.vaas,
|
||||
deliveryIndex: payload.deliveryVaaIndex,
|
||||
multisendIndex: redelivery.ix.mul
|
||||
}
|
||||
|
||||
relayProvider
|
||||
.redeliverSingle(input, { value: budget, gasLimit: 3000000 })
|
||||
.then((x) => x.wait())
|
||||
const input: CoreRelayerStructs.TargetRedeliveryByTxHashParamsSingleStruct = {
|
||||
sourceEncodedVMs: payload.vaas,
|
||||
deliveryIndex: payload.deliveryVaaIndex,
|
||||
multisendIndex: redelivery.ix.mul,
|
||||
}
|
||||
|
||||
relayProvider
|
||||
.redeliverSingle(input, { value: budget, gasLimit: 3000000 })
|
||||
.then((x) => x.wait())
|
||||
|
||||
this.logger.info(`Redelivered instruction to chain ${chainId}`)
|
||||
},
|
||||
|
|
Loading…
Reference in New Issue