It's a known problem, I think. The recursion issue appear if we call itself from within Script Controller. The main subject of this thread is how to simplify the "bypass" that usually we made with Custom Attributies. So, I think its s'd be interesting subject for animators and mostly riggers, for scripters maybe too. Usually I suggest workaround that I call "proxy controller", as it's easy for understanding and following, but this time I decide to share and another approach that not so abstract as it looks. It's based on "at time" context which made self-call safety. Well, I'll not going to repeat myself, so just read the forum topic. Cheers!