title: Sorbet Error - The Super class UserBase of UserEmbeds does not derive from Class
body: <p>I've been very interested in adopting <code>sorbet</code> for strict types in ruby, but while installing it on my existing codebase i've run into a wall that I dont understand</p>
  <p>I get the following error when running <code>sbc tc</code></p>
  <pre class="lang-bash prettyprint-override"><code>entities/user_entities.rb:25: The super class CrewManagement::Entities::UserBase of CrewManagement::Entities::UserEmbeds does not derive from Class https://srb.help/5067
      25 |    class UserEmbeds &lt; UserBase
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
      entities/user_entities.rb:6: CrewManagement::Entities::UserBase defined here
       6 |    class UserBase &lt; CrewManagement::Entities::Mongoid
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  </code></pre>
  <p>the sorbet docs say under <a href="https://sorbet.org/docs/error-reference#5067" rel="nofollow noreferrer">error 5067</a></p>
  <pre><code>A class’s superclass (the Parent in class Child &lt; Parent) must be statically resolvable to a class, not a module.
  </code></pre>
  <p>From what I understand, the error is saying that my <code>class</code> is not inheriting from a <code>class</code>, instead its suposedly inheriting from a <code>module</code>, but when I look at everything, i'm pretty sure everything is a <code>class</code> and that sorbet might be throwing a false positive.</p>
  <h6>entities/user_entities.rb</h6>
  <pre class="lang-rb prettyprint-override"><code>module CrewManagement
    module Entities
      ## inherits from a different file
      class UserBase &lt; CrewManagement::Entities::Mongoid
        expose :username
        ## ...
      end
      
      ## inherits from declaration above
      class UserEmbeds &lt; UserBase
        expose :_embedded do |record, opt|
          embeds = {}
          ## ...
          embeds
        end
      end
    end
  end
  </code></pre>
  <h6>config/entities.rb</h6>
  <pre class="lang-rb prettyprint-override"><code>module CrewManagement
    module Entities
      ## inherits from grape-entity gem
      class Mongoid &lt; Grape::Entity
        format_with(:mongo_id, &amp;:to_s)
        with_options(format_with: :mongo_id) do
          expose :_id, as: :id
        end
        expose :created_at
        expose :updated_at
      end
    end
  end
  </code></pre>
  <p>I <em>think</em> its flagging the grape-entity rubygem and not my codebase, but when i look at the rubygems source code i find that <code>Grape::Entity</code> is a class
  <a href="https://github.com/ruby-grape/grape-entity/blob/master/lib/grape_entity/entity.rb" rel="nofollow noreferrer">https://github.com/ruby-grape/grape-entity/blob/master/lib/grape_entity/entity.rb</a></p>
  <p>Is the error something that I can resolve with an RBI file declaration?</p>
  <hr />
  <p>Runtime Details:</p>
  <ul>
  <li>OS - MacOS (Monterey) 12.5.1 (2.4 GHz 8-Core Intel Core i9)</li>
  <li>ruby - 3.0.0p0 (2020-12-25 revision 95aff21468) [x86_64-darwin21]</li>
  <li>rvm - 1.29.12</li>
  <li>gem sorbet-static-and-runtime - 0.5.10346</li>
  <li>gem tapioca - 0.10.0</li>
  <li>gem grape-entity - 0.10.2</li>
  </ul>