This reminds me of one particularly intense semester I had at graduate school. Trying to get a design project completed, a lab partner and I spent three days straight at our campus.
At one point in time, the lab director (who liked to run a pretty "tight ship"), looked at our sundry items strewn messily across a table, and said with an annoyed and disgusted voice, "Gee, it looks like someone is living here!"
We were taking an exam at the time, but a friend overheard the remark, and came to our defense, answering, "Actually, sir, I think Greg and Jim haven't been home since Tuesday."
"Oh!" the director replied, "Well, if they are living here, then that's okay."
In any case, if I were describing that situation, I could say:
I had not been home since Tuesday.
or:
I had not gone home since Tuesday.
and either of those would be equally appropriate or correct.
"Been home" implies arriving at my house; "gone home" implies leaving the lab to go home. In this context, these both imply the same thing – leave the lab to go home – so I can say it either way.
Let's look at a few more sentences in the same tense (present perfect) as your first example:
Mary has eaten the cake.
I have finished the report.
Someone has taken my phone.
In each case the first phrase of the sentence is the doer of the action (Mary does the eating, I do the finishing, someone does the taking.)
From this it is clear that your first example does not make sense (although it is grammatically correct). An idea cannot do the deleting. It does make sense, however, to say: Someone has deleted the idea (actually, deleted the file would be a better example).
Your second sentence, on the other hand, is both grammatical and makes sense. It is in the passive form of the same tense. If we convert the examples above to the passive, then we get:
The cake has been eaten (by Mary).
The report has been finished (by me).
My phone has been taken (by someone).
Your second sentence fits in here:
The file has been deleted (by somebody).
We use the passive like this when we want to shift the focus of the sentence away from the doer of the action. Maybe we don't know who did the action, or it is obvious, or we don't care who did it. The passive allows us to focus on what happened and does not require us to mention the doer.
Best Answer
We use the Future Perfect to make predictions about actions which we expect to be completed before a particular time in the future:
We usually use a time adverb/phrase (e.g. soon, by then, within the next week etc.) with this kind of prediction. The times can be very close to "now".
So, by the time we get there, he'll have been gone is perfectly correct. You use the time phrase "by the time we get there", and you point out that something will have happened by the time you arrive. It makes even more sense if there is more information/context (e.g. By the time we get there, he'll have been gone for 3 hours).
I feel that "he'll have been gone" is more correct than "he'll be gone" in this particular context. But I'd use the Future Simple with some other time clause, not "by". For example, When we get there, he'll be gone.