I don't have a solution for this at the moment, but we got recently bit by a case where a source stanza's version attribute was referencing an annotated tag, which broke our builds.
So far as I can tell, the trouble was that the hash for the tag itself wasn't recognized by github as a commit in the tree and couldn't be used in the URL or by the API as a ref (for example, to find package.xml files)—you have to dereference it first. We've worked around this by switching it to a lightweight tag, but wanted to leave this as a heads-up to any future travellers.