Copy updates (items) between shared types

I have a somewhat strange use-case where I’m trying to control which update Items end up in which type. For example I may want all typeA Items in typeB and typeB will inlude Items that I keep out of typeA:

typeA: a1, a2, a3

typeB: a1, b1, a2, a3

Currently I can control this using separate documents and my abuse of the conflict resolution algo is producing more or less the desired results: typeB has all content from A plus extra content.

However, I would like to take advantage of transactions and the current update system to send changes to both together in single a single update(so I can ensure updates to both from the same client are always applied together).

Unfortunately it seems the logic around integrating update Items is buried in the apply update method chain… I have abused Doc.share and clearing to apply updates meant for one named type onto another but this of course represents all sorts of problems.

Is there a “good” way to achieve this currently? Or rename a shared type for that matter?