As exchanged in irc discussion:
12:04 <+olasd> ardumont: so, just to be clear, what do tags look like in the mercurial loader now?
12:17 <+ardumont> as before, they just now target the right associated revision (and no longer the wrong mercurial ones)
12:17 <+ardumont> (https://forge.softwareheritage.org/D395 is the fix)
13:07 <+olasd> what's the point of having release objects with no message, no author, no date? this information could live entirely in the snapshot
13:08 <+olasd> (same as git "lightweight" tags)
13:11 <+ardumont> i think that was developed prior to the snapshot
13:12 <+olasd> snapshots have been in the data model forever (they were called occurrences before but they were the same thing)
13:13 <+olasd> if the object is, functionally, a named pointer for a revision id, there's no need for a full fat release object
13:17 <+olasd> (this conversation is orthogonal to the removal of the "bogus" objects)
13:20 <+ardumont> yes, right (about occurrences)
13:20 <+ardumont> for the choice then, "the point" was probably done to stick to the mercurial model, 1 tag -> 1 release
13:21 <+ardumont> which as you point out is probably not that good
13:23 <+olasd> well, we've been dithering on whether to synthesize release objects for most loaders now, but I think we're pretty much consistently avoiding them in favor of putting the information in the snapshot
13:24 <+ardumont> indeed
13:24 <+olasd> unless there really is more to it than having a named pointer to a given revision