Feature/fix weave controller

This PR is opened for the purpose of harden logics around WeaveController.

Please don't merge it in github, as we are using git flow now. Everything should be done in git flow.