The problem
A production commerce platform has more than one kind of user touching the data. Customers browse and purchase. The owner manages inventory, promotions, and analytics. The system itself needs to enforce boundaries between those roles without relying on application-level checks alone.