About plans' names being editable and thus potentially non-unique, isn't it a desired behavior? Precisely (or at least) to accommodate plan changes: one can decide to change the pricing of a plan P by creating a new plan, named P, with amount A2, while keeping old customers on the old plan P with its original amount A1. In the end, both old and new customers can see P as their plan.