Duplicating the same interfaces declaration in different files (IERC...sol), one in @openzeppelin/contracts and one in @openzeppelin/contracts-upgradeable is not clear and complicate the understanding.
Moreover, IERC165Upgradable and others IERC...Upgradable are nonsense. I think the it is clearer to read contract ERC20Upgradeable is IERC20 {
instead of contract ERC20Upgradeable is IERC20Upgradeable {
Why don't put all common declarations into a @openzeppelin/commons package ?