Is this something that we could address with a compiler plugin? even if we have two phases? 1 to generate the providers with kapt and another to get somehow the chain of call sites until the most concrete one? I'm lost at this point and not sure how to proceed.