diff --git a/src/index.ts b/src/index.ts index e5e7e45..37e0089 100644 --- a/src/index.ts +++ b/src/index.ts @@ -277,10 +277,26 @@ export default { return; } - // 매일 자정 (KST): 입금 만료 + 정합성 검증 + // 매일 자정 (KST): 입금 만료 + 정합성 검증 + 대화 아카이브 if (cronSchedule === '0 15 * * *') { await cleanupExpiredDepositTransactions(env); await reconcileDepositBalances(env); + + // 대화 아카이브 실행 (180일 이상 된 메시지) + try { + const { archiveOldConversations } = await import('./services/archive-service'); + const result = await archiveOldConversations(env); + logger.info('대화 아카이브 완료', { + processedUsers: result.processed_users, + archivedMessages: result.archived_messages, + createdSummaries: result.created_summaries, + errorCount: result.errors.length, + }); + } catch (error) { + logger.error('대화 아카이브 실패', error as Error); + // 에러가 다른 Cron 작업을 중단시키지 않도록 catch만 하고 계속 진행 + } + return; }