I left the self.limit parameter unused in VPPHeatPump since it would impact the cop in a negative way. We can discuss if the limit parameter is needed.
If you find any resources where this problem is adressed or even a solution is provided, feel free to share.