I agree, in the second example - the extraneous rooms created by poor modelling. Better modelling is the answer, and ADSK should not be writing code to work around sloppiness.
And, in the first example, there is a solution related to phasing - the core construction is typically an earlier phase than tenant fit out. Personally, I favor a workflow where the TI team places room objects in the core to identify those spaces, for reference and signage. But I cannot require that. And for our particular workflow, we often need to identify (as an example) that a data faceplate in room 1 of the fit out is connected to a patch panel in room 2 that is in the core.
Even so - if I could get all my devices to report what room they are in, even if some of them would report nothing and some would report "<varies>" - that would be huge progress, and would give me a better position to go back to the authors of the background models and push for cleanup of their models.