Question: who gave arya the dagger?
Answer: Littlefinger quietly keeps the dagger until he arrives at Winterfell, several seasons later, and gifts the dagger to Bran Stark, who at this point, knows the history of everything, including the blade. Bran then gifts the dagger to Arya, in the exact same spot where she will later stab the Night King.