NetRunner88 IIRC i believe it occurs when a kernel is updated [...]
My understanding is that apps are re-"optimized" (recompiled) when there is a version change in an underlying library (e.g., Java framework). If a more-widely-used library is changed then more apps will need to be recompiled. Kernel changes are noted in the changelog, so it would be possible to check whether or not they trigger recompilation (I suspect not, but I'm not sure).