Bazel Skyframe explained

The term "Skyframe" comes up often as you dig deeper into Bazel internals. However, the available explanations are pretty confusing and I found myself re-reading the Skyframe documentation multiple times. I've looked around the source code just enough to get the essence of it, so this post summarizes what I've learned. We'll explore what Skyframe is and how it's implemented (at a very high level).…