diff --git a/src/main/services/MeetingModeService.ts b/src/main/services/MeetingModeService.ts index b57391f..c128b46 100644 --- a/src/main/services/MeetingModeService.ts +++ b/src/main/services/MeetingModeService.ts @@ -538,6 +538,16 @@ class MeetingModeService extends EventEmitter { } const transcript = row.editedTranscript ?? row.rawTranscript ?? '' + + // 메모도 함께 참조 + const memoRows = db.select().from(meetingMemos) + .where(eq(meetingMemos.sessionId, params.sessionId)) + .orderBy(meetingMemos.timestampMs) + .all() + const formattedMemos = memoRows.length > 0 + ? memoRows.map((m) => `[${formatTime(m.timestampMs)}] 📝 ${m.content}`).join('\n') + : '' + const systemPrompt = params.customPrompt ?? template.systemPrompt const docTitle = params.customTitle ?? `${template.name} — ${row.title ?? '무제 회의'}` @@ -559,8 +569,11 @@ class MeetingModeService extends EventEmitter { sendProgress(30) const llmStart = Date.now() + const memoSection = formattedMemos + ? `\n\n## 참석자 메모 (📝 표시)\n${formattedMemos}` + : '' const result = await llmService.generate( - `다음 회의 전사록을 분석하여 문서를 작성해주세요:\n\n${transcript}`, + `다음 회의 전사록과 참석자 메모를 분석하여 문서를 작성해주세요:\n\n## 전사록\n${transcript}${memoSection}`, { systemPrompt, temperature: 0.3, diff --git a/src/renderer/components/meeting/MeetingDetailTabs.tsx b/src/renderer/components/meeting/MeetingDetailTabs.tsx index 5f16fcb..7664b1e 100644 --- a/src/renderer/components/meeting/MeetingDetailTabs.tsx +++ b/src/renderer/components/meeting/MeetingDetailTabs.tsx @@ -78,7 +78,7 @@ export function MeetingDetailTabs({ }: MeetingDetailTabsProps): React.ReactElement { const { t } = useI18n() const [detail, setDetail] = useState(initialDetail) - const [documents, setDocuments] = useState(initialDetail.documents) + const [documents, setDocuments] = useState(initialDetail.documents ?? []) const [templates, setTemplates] = useState([]) const [tabIndex, setTabIndex] = useState(0) const [dialogOpen, setDialogOpen] = useState(false)