feat: Instrument captain (#12949)
Co-authored-by: aakashb95 <aakash@chatwoot.com>
This commit is contained in:
@@ -28,7 +28,7 @@ RSpec.describe Captain::Conversation::ResponseBuilderJob, type: :job do
|
||||
end
|
||||
|
||||
it 'uses Captain::Llm::AssistantChatService' do
|
||||
expect(Captain::Llm::AssistantChatService).to receive(:new).with(assistant: assistant)
|
||||
expect(Captain::Llm::AssistantChatService).to receive(:new).with(assistant: assistant, conversation_id: conversation.id)
|
||||
expect(Captain::Assistant::AgentRunnerService).not_to receive(:new)
|
||||
|
||||
described_class.perform_now(conversation, assistant)
|
||||
|
||||
@@ -18,7 +18,9 @@ RSpec.describe Captain::Copilot::ResponseJob, type: :job do
|
||||
copilot_thread_id: copilot_thread.id,
|
||||
conversation_id: conversation_id
|
||||
).and_return(chat_service)
|
||||
allow(chat_service).to receive(:generate_response).with(message)
|
||||
# When copilot_thread_id is present, message is already in previous_history
|
||||
# so nil is passed to avoid duplicate
|
||||
allow(chat_service).to receive(:generate_response).with(nil)
|
||||
end
|
||||
|
||||
it 'initializes ChatService with correct parameters and calls generate_response' do
|
||||
@@ -28,7 +30,9 @@ RSpec.describe Captain::Copilot::ResponseJob, type: :job do
|
||||
copilot_thread_id: copilot_thread.id,
|
||||
conversation_id: conversation_id
|
||||
)
|
||||
expect(chat_service).to receive(:generate_response).with(message)
|
||||
# Message is already persisted in copilot_thread.previous_history,
|
||||
# so we pass nil to prevent duplicate user messages
|
||||
expect(chat_service).to receive(:generate_response).with(nil)
|
||||
described_class.perform_now(
|
||||
assistant: assistant,
|
||||
conversation_id: conversation_id,
|
||||
|
||||
Reference in New Issue
Block a user