-
Notifications
You must be signed in to change notification settings - Fork 158
Child chain doesn't watch "Exit" event #128
Comments
Yep, this definitely needs to be implemented. Open question: Are events good enough? Events will be triggered even if the user's node experiences a reorg. The user should only ever receive the event if it's definitely going to be included in the child chain. For example:
That isn't awful from a security perspective, but it's definitely not good UX. Another example for deposits:
This is more obvious. Basically, I think we need to come up with a better mechanism that waits for root chain events to become "final" before they're included in the chain. Easiest way to do this is only to process events that are |
Thanks for kind reply. :) open more question, as you said, how can we force child chain to apply plasma contract's event? |
Honestly I think the answer for Plasma MVP is that users can't be sure the operator has included their deposit/withdraw. In either case it's basically just generalized to operator misbehavior. If a user makes a deposit and the operator fails to include it, then it's sort of like if the operator is censoring the user's transaction and the user is forced to exit from the deposit. The operator could send the user a confirmation that the deposit was included in the child chain, but that basically just adds blame in case the operator later removes (or loses somehow) the deposit. |
Sure. It would be the answer :) just as the simple withdrawal mechanism. |
From IRL conversation with @kfichter, also abstract out Event Listener service. |
Fixed in #137 |
It seems that child chain doesn't watch the RootChain.sol's exit event.
child_chain.py only has apply_deposit, apply_transaction but it needs a function for watching exit event and mark UTXO to spent after exit event come downs to log in RootChain.sol's
If I miss something, please let me know :)
The text was updated successfully, but these errors were encountered: