Возможно, вы возвращаете ДА в canPerformAction: с Sender, находящимся выше в цепочке респондента?
Обратите внимание, что если ваш класс возвращает NO для команды, другой респондент, находящийся дальше по цепочке респондентов, может все еще вернуть YES, разрешив команду.