Finally decided not to add range offsets to tag tags list: the tags list can be easily updated with an $addToSet, but the offsets, being a part of an object, cannot be updated that way. This also means that I am really wondering whether it is not the case of removing the tag and offset tracking from the dictionary objects...
Need to check the mechanism of adding offsets and tags: need to include all the necessary properties when inserting or updating objects, need to trace a tag insert.