The example below illustrates the problem.  Once an excess has been detected, the limit should be enforced as if the granularity was 1 until a new limit is set, at which point the original granularity should again become active.

% interp limit a command -granularity 2 -value 2
% a eval set toe knuckle
knuckle
% a eval set toe knuckle
command count limit exceeded
% a eval set toe knuckle
knuckle
% a eval set toe knuckle
command count limit exceeded