We're implementing upgradeability in our contracts based on
The [documentation] mentions storage gaps that should be added to base contracts. We did so in commit 1b67c56.
Another thing I noticed is that we use libraries' storage where we store other structs. My understanding is that we should also add gaps there. Please see implementation in commit 7abe797.
Is this approach correct?
P.S. I'm a new user and the form didn't let me post too many links, so leaving it here for reference (remove the underscore):