Dear Gharbi,
That is a good trait to have. Don �t ever let go of it.
You and FrauSue are actually both right. There can be two interpretations of "will have had the roof finished". If the builders began the job, then needed to hire someone else to finish it, your interpretation fits it exactly. If someone else was doing the job from the beginning, the verb would be something other than "finished". It would be "done", "repaired", "fixed", or something like that.
FrauSue was looking at it in a "future past perfect" sense, though. Here �s a description of what I mean, to demonstrate how "had" is being used.
By the beginning of June, I will have had my ferret Ouizl Too for four years. -- This is the regular Future Perfect, because "had" here is the main verb.
Back to the builders. They will finish the roof by the end of this week. Another way of saying that is that they will have the roof finished by the end of the week.
I can say, "By the end of April, the builders will have had the roof finished for two weeks already". Now, this construction doesn �t work in the original context with "by the end of the week", because we have to go beyond that time to be able to use "have had + past participle". I just wanted to show that "have had + past participle" doesn �t have to be a causative form. You are right, though, that with "by the end of the week" it can only be causative.
Thank you for showing me that you weren �t contradicting yourself.
Bruce