title: interface conversion panic when method is not actually missing
body: <p>Somehow, at runtime, I am getting  the following <strong>panic</strong> message, even if it appears to me the method is properly defined to the struct that implements that interface.</p>
  
  <pre><code>panic: interface conversion: schema.MerchantResultset 
  is not search.ResultsetInterface: missing method Add
  </code></pre>
  
  <p>This is the <strong>interface</strong> blueprint</p>
  
  <pre><code>type ResultsetInterface interface {
      Init(string)
      CacheSet(context.Context) error
      CacheSetPart(context.Context, int) error
      CacheGet(context.Context, string) error
      Add(interface{})
      AddResultset(interface{})
  }
  </code></pre>
  
  <p>The following is the method that is reported <strong>missing</strong> during runtime, which is assigned to my struct MerchantResultset. </p>
  
  <pre><code>func (mr *MerchantResultset) Add(item interface{}) {
      mr.Data = append(mr.Data, item.(Merchant))
  }
  </code></pre>
  
  <p>I am somehow very puzzled trying to understand what is actually being needed here</p>