[ ] Add integration tests to orders in model level (total sum of order changes when adding/removing/updating order items)
[ ] current Order model doesn't contain a "total_price" attribute. whenever this value is needed, it is calculated using a helper method in OrderManager. should revisit this and implement something with cached values and signals that trigger calculation.
when readdressing this, consider:
Caching: Use total_price as a field but update it on OrderItem changes.
Task Queues: Explore Celery for async operations when dealing with high traffic or complex calculations.
Database Triggers: Add database-level triggers for consistent total updates without application overhead.
Atomic Transactions: Ensure total updates are handled atomically, especially for payment and inventory workflows.