> "The ultimatum to produce an estimate ruined my entire weekend."

I think my work-related superpower is that stupid things that happen in the work doesn't bother me at all. I would just give an estimate at the same conversation when the manager insisted. Sure, I would phrase it in a way to explain how weak was that estimate. Something like "It's new to me, I have yet to study the scope, it's subject to change in scope until then, and other tasks getting prioritized. That said, I would guess two months". And then I wouldn't think about that at all once the conversation was over.

If those "two months" is used against me later on, I would explain the reasons why the initial estimation was off again. If I am still blamed for a delay, I would probably start looking for another place to work.

Also, I would never try to "trap" my manager into a conversation with the Product Manager just to show them how right I was and how silly they were to ask a precise estimate.

EDIT: I wrote a long reply to someone who has now deleted their comment asking how one can learn to not care. I took some time thinking about it, so to not waste that time, I will add my reply to the deleted comment here.

Ha! There is a reason I framed it as "superpower". Seriously though, I had that conversation with my wife a few times. I just don't care about a lot of stuff, but she does. My advice to her "not care" is useless. Worse, harmful depending on the tone I use. But I do have some reasoning about how I developed that. No idea if it works as advice for other people though.

First, I am 42 years old. I always kind of didn't care for a lot of stuff, but getting older makes it even easier. I think this usually happens to everyone. This is what I would call "wisdow". Learn about what not to care (and what to care more about, like community, time with good friends and family).

Second point, check your ego. You feel offended if something hurts your ego. If you make knowledge about good software development practices a point of pride, your self-identity, your self-value, it will be hard to let it go if someone just don't get it. Or go actively against what you believe to be true. For example, I doubt that if the manager instead insisted in the author giving a precise number for tomorrow's temperature, that they would be that bothered. That it would have "ruined their weekend". They would just think that their manager is silly, that they don't understand how weather works, take look at weather.com and tell them whatever number showed up there. And that's it.

Third point, understand that people take time to learn new things. Don't fight with all your forces against someone's opinion at the moment you learn about them. Learn to accept that you can voice your disagreement, explain your reasons, and they will remain thinking exactly the same at that moment. But if you are really right, with time, they might see it. In this case, give the estimate they wanted. Then, make a note to, when you get to that task, you will be studying the scope better and update the manager about a new estimate. Then, while you are working on that, make a point to make it clear that some urgent tasks or a bug, delayed the work, and pass the new estimate. Hopefully, when the task is done, they will understand better how that initial estimate was imprecise. And proabably didn't help anyone at all by having being created. OR... be open to learn that the manager, for some reason you didn't understand at the time, actually needed a number.

I think that leads to my last point. Remember that you could always be wrong. Consider that there is a chance (even if you put that chance at 0.0001%) that the thing is not actually stupid. It just look stupid to you. It might be odd, or stupid but not that stupid, or stupid but for a reason, or not stupid at all and you were being stupid thinking it was stupid. If you always consider that there is a chance you are wrong, stupid things bother less.