The problem I'm working to reach is allowing packages to correctly shadow the user's bindings (and not incorrectly shadow) instead of ad-hoc imitation of the global map defaults. Ad-hoc imitation makes it very tedious to, for instance, change the key sequence for expressing "next" without losing coherence among all packages with a corresponding "next" concept.
The solution we're discussing is to provide "abstract" commands. I will discuss the solution and then discuss what I'm currently working on.
Abstract commands are just command remap targets in the global map. The concrete global commands would directly command remap in the global map. Abstract command bindings would be consumed when modes generate keymaps for major & minor modes. A Corfu map generator would for example see an abstract command like "user-next" bound with the C-n sequence and choose to shadow C-n in its map. If the user rebinds the global abstract command, the other modes could easily follow this change, perhaps even though a hook to immediately propagate the change.
This scheme would scale much better than imitating global map defaults. Any user or emulation system desiring to re-bind basic concepts like next and undo could achieve and maintain coherence. Such a mechanism should also make it easier to maintain modes in the future. Expressing abstract commands could be a basis for coordinating special mode behavior in ways that would currently be likely to break with many users' modifications.
I will not introduce a modal system I've worked on, but it has a quirky notion of next / previous, and yet it will adapt fine to abstract key bindings. When switching keyboards to an alternative layout, I lose physical correspondence. "J" is a good high-frequency binding unless "J" is moved to a physically inconvenient location. Switching abstract maps and regenerating is a solution for this as well.
Expressing "never shadow this key" would need a distinct map from the global map. The problem is that an abstract command like "user-nomap" would not distinctly map to a concrete command if 20 sequences were to be protected from shadowing. There needs to be a global-no-map where all sequences bound to user-nomap are prohibited by convention.
For generating maps where a binding would collide with an abstract binding, a configurable successor function could be made available. It could be set to nil or return nil to flatly reject all sequence suggestions that were bad to begin with instead of finding places to place every command. We have really good command completions these days, so personally I would opt for a nil successor.