Do our recent checkout not call setPromotion() on the CheckoutCart? I think this was added so that the checkout cart wasn't dependant on the promotion having to exist in the session. Maybe for the admin checkout.