diff --git a/backend/services/forecasting/pickup_v2_model.py b/backend/services/forecasting/pickup_v2_model.py index 143120a..fd5ea35 100644 --- a/backend/services/forecasting/pickup_v2_model.py +++ b/backend/services/forecasting/pickup_v2_model.py @@ -1281,6 +1281,10 @@ async def forecast_rooms_for_date( 'prior_final': prior_final_by_cat.get(cat_id, 0) } + # Cap pickup so OTB + suggestion never exceeds available capacity + if bookable > 0: + total_pickup_rooms = min(total_pickup_rooms, max(0, bookable - current_otb_rooms)) + # Base forecast forecast_rooms = current_otb_rooms + total_pickup_rooms