c4dc43e054
Two separate fixes for bot and cabinet auth paths: Bot (start.py): store referrer_id from campaign.partner_user_id in FSM state, skip referral code prompt when partner already set. Cabinet (auth.py): in _process_campaign_bonus, set user.referred_by_id to campaign.partner_user_id and call process_referral_registration. Both paths now correctly attribute campaign users to the partner, enabling commission earnings from their future purchases.