There's a 4th way, but it works least often. Maybe Method 2.5 fits better: Wait for the problem to fix itself to your level of risk. Ex: This road is blocked. I have a good news it won't be blocked in X days/months/years. Let's just wait until it's a little better for us to travel down and do something else for a just little while. It's a hybrid between waiting for the path to open up for everyone and forcing your way through. Taking a stepping stone between changing the world and changing your solution to the problem.
My experience in trying to build AI tools has always been the 4th way :) Let’s build a coding agent in 2022, procrastination takes over, and then came along Aider, Cursor, Roo, and others. Same with AI observability tools. Wait just enough time to see the tools built themselves.
That 4th way is a nicely realistic but very toxic (in my experience) way to solve problems.
Not when it’s applicable in the situation but if you use it in your toolbox it’s very easy to overapply, if you’re a hammer everything looks like a nail style.
Use it critically