Class Inheritance not inheriting as expected
<p>I have a self-rolled authorization system base on <a href="http://railscasts.com/episodes/386-authorization-from-scratch-part-2" rel="nofollow">RC#386</a>.  I noticed a lot of duplication between the <code>GuestPermission</code> class and the <code>MemberPermision</code> class.</p>

<pre><code>class GuestPremission &lt; BasePermission
  allow_action :static, [:about, :careers, :contact, :help, :home]
end
</code></pre>

<p>and</p>

<pre><code>class MemberPermission &lt; BasePermission
  allow_action :static, [:about, :careers, :contact, :help, :home]
end
</code></pre>

<p>Both inherit from <code>BasePermission</code>.  I want to refactor the <code>MemberPermission</code> class to inherit from <code>GuestPermission</code> instead, like this:</p>

<pre><code>class GuestPermission &lt; BasePermission
  allow_action :static, [:about, :careers, :contact, :help, :home]
end

class MemberPermission &lt; GuestPermission
  ...
end
</code></pre>

<p>Ideally, this should reduce the duplication in <code>MemberPermission</code> that already is granted to and exists in <code>GuestPermission</code>.  However, I get a recursive error: <code>filter chain haled as :authorize rendered or redirected</code>.</p>

<p>This usually tells me that the requested controller#action, (in this case <code>static#home</code>) hasn't been implicitly authorized.  But in this case, it should be inheriting from <code>GuestPermission</code>.</p>

<p>Any ideas on fixing this so that the duplication of permissions isn't necessary?</p>