I’ve been mulling this over and I agree that the fact that package localisation IDs affect translation keys isn’t ideal. The intent of them was to limit our search domain to a single package, and prevent in-memory conflicts of text identities… they weren’t supposed to prevent you being able to have two identical pieces of text (with identical identities) in two assets still export as two texts for translation.
I’m going to look into adding collapsing to the export part of the localisation pipeline, changing the default to ignore the package localisation ID part of the namespace. Once that’s done, it would be trivial to add alternate collapsing modes (like the pre-4.14 behaviour to collapse identical texts within the same namespace for translation).