That’s not the definition of yak shaving I’ve ever used. I’ve always thought of it more like:
- I find a bug
- I track it down to a library I’m using. The fix is in a later release.
- I go to upgrade the library, but that brings in some transitive dependency upgrades that accidentally broke an API used elsewhere.
So now instead of fixing my bug I’m rewriting API call sites across my project.