From b5fba8696028def4e9f9e3151029f39fa57a0499 Mon Sep 17 00:00:00 2001 From: Steph Milovic <stephanie.milovic@elastic.co> Date: Mon, 9 Sep 2024 16:30:15 -0600 Subject: [PATCH] more --- .../assistant/use_assistant_overlay/index.tsx | 12 ------------ .../use_view_in_ai_assistant.test.ts | 16 ++++++++++++++-- .../use_view_in_ai_assistant.ts | 6 +++++- 3 files changed, 19 insertions(+), 15 deletions(-) diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/use_assistant_overlay/index.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/use_assistant_overlay/index.tsx index 933256620172a..69884bfbe6818 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/use_assistant_overlay/index.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/use_assistant_overlay/index.tsx @@ -135,25 +135,15 @@ export const useAssistantOverlay = ( async (showOverlay: boolean, shouldCreateConversation: boolean = false) => { if (promptContextId != null) { if (shouldCreateConversation) { - console.log('test 2', conversations); let conversation; if (!isLoading) { - console.log('test 4'); conversation = conversationTitle ? Object.values(conversations).find((conv) => conv.title === conversationTitle) : undefined; } - console.log('condtions:', { - full: isAssistantEnabled && !conversation && defaultConnector && !isLoading, - isAssistantEnabled, - conversationMissing: !conversation, - defaultConnector, - isLoading, - }); if (isAssistantEnabled && !conversation && defaultConnector && !isLoading) { try { - console.log('test 3'); await createConversation({ apiConfig: { ...apiConfig, @@ -168,13 +158,11 @@ export const useAssistantOverlay = ( } } } - console.log('test 1', assistantContextShowOverlay); assistantContextShowOverlay({ showOverlay, promptContextId, conversationTitle: conversationTitle ?? undefined, }); - console.log('test 1b'); } }, [ diff --git a/x-pack/plugins/security_solution/public/attack_discovery/attack_discovery_panel/view_in_ai_assistant/use_view_in_ai_assistant.test.ts b/x-pack/plugins/security_solution/public/attack_discovery/attack_discovery_panel/view_in_ai_assistant/use_view_in_ai_assistant.test.ts index cc7058c8f3fe6..372bce5dcbf2c 100644 --- a/x-pack/plugins/security_solution/public/attack_discovery/attack_discovery_panel/view_in_ai_assistant/use_view_in_ai_assistant.test.ts +++ b/x-pack/plugins/security_solution/public/attack_discovery/attack_discovery_panel/view_in_ai_assistant/use_view_in_ai_assistant.test.ts @@ -16,12 +16,12 @@ import { useViewInAiAssistant } from './use_view_in_ai_assistant'; jest.mock('@kbn/elastic-assistant'); jest.mock('../../../assistant/use_assistant_availability'); jest.mock('../../get_attack_discovery_markdown/get_attack_discovery_markdown'); - +const mockUseAssistantOverlay = useAssistantOverlay as jest.Mock; describe('useViewInAiAssistant', () => { beforeEach(() => { jest.clearAllMocks(); - (useAssistantOverlay as jest.Mock).mockReturnValue({ + mockUseAssistantOverlay.mockReturnValue({ promptContextId: 'prompt-context-id', showAssistantOverlay: jest.fn(), }); @@ -83,4 +83,16 @@ describe('useViewInAiAssistant', () => { expect(result.current.disabled).toBe(true); }); + + it('uses the title + last 5 of the attack discovery id as the conversation title', () => { + renderHook(() => + useViewInAiAssistant({ + attackDiscovery: mockAttackDiscovery, + }) + ); + + expect(mockUseAssistantOverlay.mock.calls[0][1]).toEqual( + 'Malware Attack With Credential Theft Attempt - b72b1' + ); + }); }); diff --git a/x-pack/plugins/security_solution/public/attack_discovery/attack_discovery_panel/view_in_ai_assistant/use_view_in_ai_assistant.ts b/x-pack/plugins/security_solution/public/attack_discovery/attack_discovery_panel/view_in_ai_assistant/use_view_in_ai_assistant.ts index 8016e1b45b408..1e0129742d567 100644 --- a/x-pack/plugins/security_solution/public/attack_discovery/attack_discovery_panel/view_in_ai_assistant/use_view_in_ai_assistant.ts +++ b/x-pack/plugins/security_solution/public/attack_discovery/attack_discovery_panel/view_in_ai_assistant/use_view_in_ai_assistant.ts @@ -33,9 +33,13 @@ export const useViewInAiAssistant = ({ }), [attackDiscovery] ); + + const lastFive = attackDiscovery.id + ? ` - ${attackDiscovery.id.substr(attackDiscovery.id.length - 5)}` + : ''; const { promptContextId, showAssistantOverlay: showOverlay } = useAssistantOverlay( category, - attackDiscovery.title, // conversation title + attackDiscovery.title + lastFive, // conversation title attackDiscovery.title, // description used in context pill getPromptContext, attackDiscovery.id ?? null, // accept the UUID default for this prompt context