Usually, at least if we’re doing a good job, the answer is “we split it:”
One part of the problem becomes simpler, less flexible, more consistent. We make up rules: “every item has exactly one price,” or “every has one price per discount-item combination,” or “every item has N SKUs, each of which has one price per….“ The rules evolve, they adapt, they grow — but they remain consistent until we update them.
The beauty and the peril of software is consistency: •it follows those rules we invent•.