It has to be Dumbledore, by Conservation of Narrative Detail: There’s no way that the conditions of Harry’s promise to Draco would have been spelled out in such detail if learning the truth would be all it took to expiate it.
Always be aware that there may be a possibility you haven’t thought of.
Always be aware that there may be a possibility you haven’t thought of.