In the first chapter of Deathly Hallows, Snape divulges to Voldemort when Harry was going to be moved, citing a source he and Voldemort had previously discussed.
‘Good. Very good. And this information comes –’
‘From the source we discussed,’ said Snape.
Later, after the seven potters are attacked, Lupin claims that only someone who was directly involved in the plans to move Harry could have tipped off Voldemort.
Voldemort knew that you were being moved tonight and the only people who could have told him were directly involved in the plan.
Does this mean that Snape was involved in those plan? If so, what was his role? If Snape was not involved, who was it that would have passed the information to him?
Most places I've looked on the internet seem to be of the opinion that Dumbledore's portrait gave him the information, likely due to the following passage:
‘You will have to give Voldemort the correct date of Harry’s departure from his aunt and uncle’s,’ said Dumbledore. ‘Not to do so will raise suspicion, when Voldemort believes you so well-informed. However, you must plant the idea of decoys – that, I think, ought to ensure Harry’s safety. Try Confunding Mundungus Fletcher.
But the text is ambiguous as to whether the portrait told Snape or visa-versa, and I lean towards the later based on the tone of the rest of their conversation (perhaps I am reading into it incorrectly?). Dumbledore's portrait suggests the idea to use decoys, and to Confund Mundungus Fletcher to present the decoy idea. This implies that Snape was not personally involved, and might actually be outside of the Order of the Phoenix at this point, thus he was not likely to have found out the date first hand. This makes it seem as though Snape was seeking advice on how to proceed, and already knew.
But if the portrait told Snape, why would it have had that knowledge? It wasn't likely to have been directly involved in those plans, was it?
Is it ever revealed, perhaps in a passage I've forgotten or in interviews, how Snape knew when Harry was to be moved, or who/what his source was?