()
| 79 | }; |
| 80 | |
| 81 | const handleCreateMemory = async () => { |
| 82 | if (!newMemoryId.trim()) { |
| 83 | setError('Memory ID cannot be empty'); |
| 84 | return; |
| 85 | } |
| 86 | |
| 87 | if (!newMemoryId.match(/^[a-zA-Z0-9_-]+$/)) { |
| 88 | setError('Memory ID can only contain letters, numbers, underscores, and hyphens'); |
| 89 | return; |
| 90 | } |
| 91 | |
| 92 | try { |
| 93 | setError(null); |
| 94 | setIsCreating(true); |
| 95 | await updateAgentMemory(newMemoryId, ''); |
| 96 | Logger.info('MEMORY_STORE', `Created memory: ${newMemoryId}`); |
| 97 | setNewMemoryId(''); |
| 98 | await loadMemories(); |
| 99 | } catch (err) { |
| 100 | const errorMessage = err instanceof Error ? err.message : 'Unknown error'; |
| 101 | setError(`Failed to create memory: ${errorMessage}`); |
| 102 | Logger.error('MEMORY_STORE', `Failed to create memory: ${errorMessage}`, err); |
| 103 | } finally { |
| 104 | setIsCreating(false); |
| 105 | } |
| 106 | }; |
| 107 | |
| 108 | const handleDeleteMemory = async (memoryId: string) => { |
| 109 | if (!await confirm(`Delete memory "${memoryId}"?`)) { |
no test coverage detected