From af6389bdd85863c2de9b73924fd1fdbb4eb9f655 Mon Sep 17 00:00:00 2001 From: Sojan Jose Date: Wed, 22 Jul 2026 16:40:11 -0700 Subject: [PATCH] refactor: clarify conversation open paths --- .../api/v1/accounts/conversations_controller.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/controllers/api/v1/accounts/conversations_controller.rb b/app/controllers/api/v1/accounts/conversations_controller.rb index 26e7345fa..7b18a983d 100644 --- a/app/controllers/api/v1/accounts/conversations_controller.rb +++ b/app/controllers/api/v1/accounts/conversations_controller.rb @@ -80,7 +80,7 @@ class Api::V1::Accounts::ConversationsController < Api::V1::Accounts::BaseContro def toggle_status # FIXME: move this logic into a service object - if pending_to_open_by_bot? + if bot_handoff? @conversation.bot_handoff! elsif params[:status].present? set_conversation_status @@ -88,10 +88,10 @@ class Api::V1::Accounts::ConversationsController < Api::V1::Accounts::BaseContro else @status = @conversation.toggle_status end - update_assignment_after_open if @conversation.open? && Current.user.is_a?(User) + handle_human_open if @conversation.open? && Current.user.is_a?(User) end - def pending_to_open_by_bot? + def bot_handoff? return false unless Current.user.is_a?(AgentBot) @conversation.status == 'pending' && params[:status] == 'open' @@ -179,7 +179,7 @@ class Api::V1::Accounts::ConversationsController < Api::V1::Accounts::BaseContro @conversation.snoozed_until = parse_date_time(params[:snoozed_until].to_s) if params[:snoozed_until] end - def update_assignment_after_open + def handle_human_open @conversation.assignee_agent_bot = nil @conversation.assignee = current_user if current_user.agent? @conversation.save!