You are correct that the available amount may be misleading, since tables, indexes, etc in a PERMANENT tablespace will also be taking up space.
If you look at Kindus' post and my response, you will see that we have addressed this situation as well as how to eliminate it. However, I DO make the assumption that a competent DBA will know which tablespaces are TEMPORARY and any PERMANENT tablespaces that show up will be immediately recognized.
Also, finding a temporary segment within a PERMANENT tablespace is a coincidence anyway, since temporary segments in a PERMANENT tablespace are dropped when sessions finish using them. Consequently, they will only show up if you run this query while some other session is doing a sort with a temp. seg in a PERMANENT tablespace.
So to your point - no, it's not a bug. While it takes for granted it will only return information on TEMPORARY tablespace, the omission of constraining to contents="TEMPORARY" is intentional. Not only does it run faster (since you don't have to join on DBA_TABLESPACES), but it will also flag any users that are ill-defined.