TBH I'd be rather pissed at someone who could not give me a ballpark or upper range.
If I know I can write that report later today, then I can let our supplier know that they'll get the report tomorrow morning. If I know that there is no way it is going to happen in the next week then I can inform the other people down the chain and they can plan accordingly.
Put yourself in their position - you're waiting for a lift from a friend but he hasn't shown up. When you phone him all he can tell you is that he will be late. How late? Will you have enough time to grab lunch before he arrives? Can you take a nap? A vacation? But yet, he still refuses to tell you whether taking a piss or taking a vacation is more appropriate.
I hate to say it, but it is your "engineering" (which really isn't) PoV that is the illogical and irrational one. The logical and rational answer is that people can be scheduling other things to fit into the time available, and they know this. You basically asked someone to wait indefinitely and then get all surprised when they get annoyed - of course they are going to get annoyed. You were behaving in an irrational manner!
My estimates are all made with disclaimers - "I can give you X, Y and Z within $TIME_PERIOD, subject to A, B and C being true throughout $TIME_PERIOD". And since I've never ever ever had A, B and C remain true through any development project my estimates have not yet been tested for accuracy. What does happen is a revised estimate when A, B and C change, and then due to having more information I have a more accurate revised estimate.
Your way is not logical, nor is it at all rational, nor is it considered engineering in any circumstances. It is not a psychological need that your estimate gets used for, it's an actual physical and concrete need. Your need for self-worth is what maintains your self-delusion that those people don't really need what they are asking for. Truly, we live in an age of narcissm.