Now I understand what you mean, and you are absolutely right.  From the top of my head, the best way to fix this is to add candidate.walk_response() in bartercast3/community.py:on_pong.  That way the candidate will stay in the 'walk' category with every successful ping/pong.

Are you doing something similar with the ping/pong in the private search community?