Декоратор работает не со всеми функциями
Декоратор count_calls считает вызовы в атрибуте calls. Он написан под функцию без
параметров, а на add_to_cart(cart, item) падает. Исправьте декоратор так, чтобы он работал
с любыми функциями — с позиционными и именованными аргументами.
Подсказка 1 из 1
def wrapper(*args, **kwargs): и func(*args, **kwargs).