I suggested some options in a comment on the main PR.

Implementation-wise, we're clearly better off composing our internal data structure rather than subclassing it. However, that overlooks the larger concern of how users will interact with this, and whether it will make Rails hard to understand, or even less secure.