State Transfer with FxPortal not working on testnet

Context

I’m trying to build a state transfer bridge using the FxPortal contracts linked in the Matic developer docs:

The following is my repository, with a Root and Child contract, deployed on Goerli and Mumbai, respectively. Verified contracts are available in the readme.

The root contract (VRFRootTunnel.sol) sends a message to the child contract (VRFChildTunnel.sol) on calling requestRandomNumber().

Issue

The child contract (VRFChildTunnel.sol) never receives the message passed to it by the root contract (VRFRootTunnel.sol).

Here’s a successful transaction where I call requestRandomNumber() on the root contract, which sends a message to the child contract.

The message is never passed to the child contract. As seen on the explorer, the child contract has no transactions, internal or otherwise, where it receives the message from the root contract.

The same goes for the contracts in the official FxPortal repository, where it seems the child contract never receives the message sent.

1 Like

hi @nkrishang and @shubhangi , I believe I’m having this same problem.

Do either of you mind posting the solution?

Do either of you have any insight on how long these messages take to be sent to the Child Contracts?

1 Like