- 1.User sends tokens to the contract. This transaction is stored in the contract.
- 2.Captain queries the source chain for transactions to ship.
- 3.Captain sends batch (start, end, hash) to start the trip.
- 4.Wait at least 24 hrs.
- 5.Crewmembers check the batch and can dispute it if it is invalid.
- 6.Non disputed batches can be executed by the first officer by providing the transactions as calldata. User receives their tokens on the other chain.
- 7.Hash of the transactions must be equal to the hash in the batch.
- 8.In case there was a fraudulent transaction (a hacker for example), the owner can cancel a single transaction, such that it will not be executed.
- 9.The owner can manually manage the tokens in the contract and must make sure it has enough funds.