Skip to content
This repository has been archived by the owner on Dec 27, 2022. It is now read-only.

Crosschain transfer #658

Draft
wants to merge 18 commits into
base: 0.2.5-beta.18
Choose a base branch
from
Draft

Crosschain transfer #658

wants to merge 18 commits into from

Conversation

LayneHaber
Copy link
Contributor

@LayneHaber LayneHaber commented Jun 16, 2021

The Problem

  • Hashlock + Withdraw leads to extra steps when crosschain transferring

The Solution

  • Create specialized crosschain transfer definition

TODO before merging:

  • Finish engine unit tests
  • Move contract unit tests from transfer repo into here
  • Make contract unit tests work
  • Test against local stack
  • Write trio happy test

Comment on lines +91 to +92
return true;
}
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Things that are not yet validated in the state:

  1. responder
  2. callTo
  3. callData
  4. balance.to

These are probably all okay, but this means that anything could be put into these values and a transfer could be created that is potentially unresolvable (i.e. what if responder isn't actually a proper address?)

Comment on lines 114 to 118
// Transfer must have two valid parties.
require(
state.initiator != address(0) && state.responder != address(0),
"CrosschainTransfer: EMPTY_SIGNERS"
);
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be in the create

modules/engine/src/index.ts Outdated Show resolved Hide resolved
modules/engine/src/listeners.ts Outdated Show resolved Hide resolved
modules/utils/src/test/transfers.ts Outdated Show resolved Hide resolved
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants