From f0db8b0361edb036fd68c14eb365301bbd43769d Mon Sep 17 00:00:00 2001 From: Rodribm10 Date: Thu, 30 Apr 2026 23:10:34 -0300 Subject: [PATCH] fix(captain): captain_inbox.unit -> captain_unit (bug bloqueante roleta + tools) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit CaptainInbox.belongs_to :captain_unit (não existe método .unit). OfferService quebrava antes de criar draw — roleta nunca disparava em prod mesmo após pix confirmado. Mesmo bug em get_reserva_preco_tool e create_reservation_intent_tool (silenciosamente caíam em fallback nil). Co-Authored-By: Claude Opus 4.7 (1M context) --- enterprise/app/services/captain/roleta/offer_service.rb | 2 +- .../services/captain/tools/create_reservation_intent_tool.rb | 2 +- enterprise/app/services/captain/tools/get_reserva_preco_tool.rb | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/enterprise/app/services/captain/roleta/offer_service.rb b/enterprise/app/services/captain/roleta/offer_service.rb index 852f5be19..052afcaf2 100644 --- a/enterprise/app/services/captain/roleta/offer_service.rb +++ b/enterprise/app/services/captain/roleta/offer_service.rb @@ -48,7 +48,7 @@ class Captain::Roleta::OfferService end def fetch_unidade_for_conversation(conversation) - unit = conversation&.inbox&.captain_inbox&.unit + unit = conversation&.inbox&.captain_inbox&.captain_unit return nil if unit.blank? supabase_get('unidades', { chatwoot_unit_id: "eq.#{unit.id}", select: '*', limit: 1 }).first diff --git a/enterprise/app/services/captain/tools/create_reservation_intent_tool.rb b/enterprise/app/services/captain/tools/create_reservation_intent_tool.rb index 345f8b16b..e72346c99 100644 --- a/enterprise/app/services/captain/tools/create_reservation_intent_tool.rb +++ b/enterprise/app/services/captain/tools/create_reservation_intent_tool.rb @@ -256,7 +256,7 @@ class Captain::Tools::CreateReservationIntentTool < Captain::Tools::BaseTool end def infer_unit - @conversation&.inbox&.captain_inbox&.unit + @conversation&.inbox&.captain_inbox&.captain_unit end def update_sticky_state(suite:, price:, check_in_at:, check_out_at:) diff --git a/enterprise/app/services/captain/tools/get_reserva_preco_tool.rb b/enterprise/app/services/captain/tools/get_reserva_preco_tool.rb index d449a43ca..fae848229 100644 --- a/enterprise/app/services/captain/tools/get_reserva_preco_tool.rb +++ b/enterprise/app/services/captain/tools/get_reserva_preco_tool.rb @@ -76,7 +76,7 @@ class Captain::Tools::GetReservaPrecoTool < Captain::Tools::BaseTool private def infer_unit - @conversation&.inbox&.captain_inbox&.unit + @conversation&.inbox&.captain_inbox&.captain_unit end def fetch_unidade(chatwoot_unit_id)