@antoviaque ok. It's not that the completed attribute is not persistent, it's that when we load the page, there is no data in the page to know if a lightchild block is completed or not. In fact, we don't even know if the mentoring block has been completed. That is because this information is only returned by the submit response. So I had 2 solutions for that:

* Add a completion icon in the django template using the completed property.
* Add a generic complete state saved for all lightchild. Now, when I load the page, I can see what are children that are completed or not. The reason that I also chose this way is that it can also be 1) reused to display completion on load with mrq/mcq and 2) I can use that also in my workbench-compatibility branch, which I check if a lightchild is completed without submit (ie: the answer read-only). 

As I can understand, It would be better that everything is self-contained in their block. So Answer wouldn't need any completed property and we could add that completed state in mrq/mcq or either do something similar than the answer block: using a computed property that checks all the choices.

I'm up to any solution you prefer. But would like we agree on something before doing the work. Are you available for a quick chat?