From personal experience, bug reports are cheap to generate and very expensive to investigate. Additionally often it is the case that bug that no one paid any attention to eventually does go away on its own (the environment changes, the features is removed, a single commit ends up fixing multiple symptoms of the same problem, it was actually a user error, etc). Give the morale and dev time cost of a sprawling and low fidelity bug list I sympathize with aggressive bug triage, as I had to do the same myself. The real stuff will keep popping back in, and its better to have a real but incomplete list than a complete but mostly bogus one.
> bug reports are cheap to generate and very expensive to investigate
This is only true if you are talking about customer-service style exchanges. With bug trackers for open source projects there can be and often is quite a bit of effort put in narrowing down the bug by the reporter or other users and sometimes the fix ends up trivial and obvious to the developer after that. I agree with closing stale bugs that have had no interaction or quick way for the dev to check if the problem is fixed (after years, not weeks) - they can be reopened after all - but dismissing the effort by done by users to report bugs in the first place should not be your justification.
Yes, this is true, and as you say the more work is put into the bug report, the cheaper it is for the dev to investigate and the less likely it is that a bug report will be closed prematurely.