Idea: Extensible Union types and benefits they bring for real world Elm code

Open unions are still quite useful without the extensible part, the main feature in the examples provided by @yosteden and even the Ocaml guide are the composition part, where different constructors can be composed different ways, like this example How to represent many subsets of an enum?.

Could it possible to have exactly the dual of records for Elm, where features like adding fields/variants are just removed to achieve the same error message experience?

I agree with the trade off part, but can we just force type annotation on functions with open unions (otherwise compilation error with a nice suggestion) to make the experience a bit smoother?