I don't think that querying the changesets makes the process more cumbersome, I think that having unnecessary tags on the object themselves leads to stale data, because editors might update the feature and *not* update the source tag at all.