It should be the first. Placing ourselves at the future time when he comes back, the appropriate statement is "the coffe e is ready", not "the coffee has been ready". Transferring this back to the present gives "will be ready", not "will have been ready".
New words, one handy idiom, and a 2-minute quiz — delivered to your inbox to keep your streak alive.