What if I accidentally send some X token to the Phala ERC20 token contract account on Ethereum

Sorry to hear that, but if you transferred anything into a contract account there’s nearly 0 possibility you can take it back… The team can’t control the contract account on Ethereum, and the contract is immutable that we cannot make any change to it. Almost all the ERC20 contracts work in this way.

Technically if we can forecast someone will send some tokens to our contract before we deploy the contract, we can add some logic to deal with it in some way. However it also means introducing more potential security vulnerability. Also there are an unlimited number of ways to abuse the Ethereum contracts. We cannot cover all of them.

An exception is PHA token. We will have a bridge to swap ERC20 PHA to mainnet PHA in the future. On the mainnet we will have on-chain governance, which in theory can recover PHA with the approval of the community (by referenda or the council’s decision). However, DO NOT do that intentionally, because it’s not up to the team to make the decision, and we cannot guarantee the funds can be recovered.

I hope you understand it.