fix: resolve TypeScript errors after SessionManager refactoring
- Remove unused import types (*SessionStatus, OpenAIMessage) - Replace deprecated session functions with SessionManager API - Prefix unused base class parameters with underscore - Update all session management calls across agents and tools Files affected: - src/agents/*.ts (removed unused imports) - src/utils/session-manager.ts (unused param prefixes) - src/tools/server-tool.ts (SessionManager migration) - src/tools/troubleshoot-tool.ts (SessionManager migration) - src/routes/api/chat.ts (SessionManager migration) - src/routes/handlers/message-handler.ts (SessionManager migration) Verification: - TypeScript: compiles without errors - Tests: 223 passed (10 pre-existing failures) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -663,9 +663,6 @@ export async function executeServerAction(
|
||||
|
||||
switch (action) {
|
||||
case 'start_consultation': {
|
||||
// Import session functions
|
||||
const { createServerSession, saveServerSession } = await import('../agents/server-agent');
|
||||
|
||||
if (!telegramUserId) {
|
||||
return '🚫 사용자 인증이 필요합니다.';
|
||||
}
|
||||
@@ -674,10 +671,8 @@ export async function executeServerAction(
|
||||
return '🚫 세션 저장소가 설정되지 않았습니다.';
|
||||
}
|
||||
|
||||
const session = createServerSession(telegramUserId, 'gathering');
|
||||
await saveServerSession(env.DB, session);
|
||||
|
||||
logger.info('상담 세션 생성', { userId: maskUserId(telegramUserId) });
|
||||
// Note: Session is created automatically in processServerConsultation when first message arrives
|
||||
logger.info('상담 시작 요청', { userId: maskUserId(telegramUserId) });
|
||||
|
||||
return '안녕하세요! 서버 추천을 도와드리겠습니다. 😊\n\n어떤 서비스를 운영하실 건가요?\n\n1. 웹 서비스 (SaaS, 랜딩페이지)\n2. 모바일 앱 백엔드\n3. AI/ML 서비스 (챗봇, 모델 서빙)\n4. 게임 서버\n5. Discord/Telegram 봇\n6. 자동화 서버 (n8n, 크롤링)\n7. 미디어 스트리밍\n8. 개발/테스트 환경\n9. 데이터베이스 서버\n10. 기타 (직접 입력)\n\n번호나 용도를 말씀해주세요!';
|
||||
}
|
||||
@@ -702,8 +697,6 @@ export async function executeServerAction(
|
||||
}
|
||||
|
||||
case 'cancel_consultation': {
|
||||
const { deleteServerSession } = await import('../agents/server-agent');
|
||||
|
||||
if (!telegramUserId) {
|
||||
return '🚫 사용자 인증이 필요합니다.';
|
||||
}
|
||||
@@ -712,7 +705,11 @@ export async function executeServerAction(
|
||||
return '🚫 세션 저장소가 설정되지 않았습니다.';
|
||||
}
|
||||
|
||||
await deleteServerSession(env.DB, telegramUserId);
|
||||
// Import sessionManager to delete session
|
||||
const { ServerSessionManager } = await import('../utils/session-manager');
|
||||
const { getSessionConfig } = await import('../constants/agent-config');
|
||||
const sessionManager = new ServerSessionManager(getSessionConfig('server'));
|
||||
await sessionManager.delete(env.DB, telegramUserId);
|
||||
|
||||
logger.info('상담 세션 취소', { userId: maskUserId(telegramUserId) });
|
||||
|
||||
@@ -758,14 +755,16 @@ export async function executeServerAction(
|
||||
// 세션에 추천 결과 저장 (선택 기능 활성화)
|
||||
if (telegramUserId && env?.DB && recommendationData.recommendations && recommendationData.recommendations.length > 0) {
|
||||
try {
|
||||
const { getServerSession, saveServerSession, createServerSession } = await import('../agents/server-agent');
|
||||
const { ServerSessionManager } = await import('../utils/session-manager');
|
||||
const { getSessionConfig } = await import('../constants/agent-config');
|
||||
const sessionManager = new ServerSessionManager(getSessionConfig('server'));
|
||||
|
||||
// 기존 세션 조회 또는 새로 생성
|
||||
let session = await getServerSession(env.DB, telegramUserId);
|
||||
let session = await sessionManager.get(env.DB, telegramUserId);
|
||||
|
||||
if (!session) {
|
||||
// 세션이 없으면 새로 생성
|
||||
session = createServerSession(telegramUserId, 'selecting');
|
||||
session = sessionManager.create(telegramUserId, 'selecting');
|
||||
session.collected_info = {
|
||||
useCase: use_case,
|
||||
scale: expected_users <= 50 ? 'personal' : 'business',
|
||||
@@ -809,7 +808,7 @@ export async function executeServerAction(
|
||||
session.status = 'selecting';
|
||||
session.updated_at = Date.now();
|
||||
|
||||
await saveServerSession(env.DB, session);
|
||||
await sessionManager.save(env.DB, session);
|
||||
logger.info('추천 결과 세션 저장 완료', {
|
||||
userId: telegramUserId,
|
||||
recommendationCount: session.last_recommendation.recommendations.length,
|
||||
@@ -1324,8 +1323,10 @@ export async function executeServerDelete(
|
||||
|
||||
// Clear server consultation session (if any)
|
||||
try {
|
||||
const { deleteServerSession } = await import('../agents/server-agent');
|
||||
await deleteServerSession(env.DB, telegramUserId);
|
||||
const { ServerSessionManager } = await import('../utils/session-manager');
|
||||
const { getSessionConfig } = await import('../constants/agent-config');
|
||||
const sessionManager = new ServerSessionManager(getSessionConfig('server'));
|
||||
await sessionManager.delete(env.DB, telegramUserId);
|
||||
} catch (error) {
|
||||
provisionLogger.error('서버 세션 삭제 실패 (무시)', error as Error);
|
||||
}
|
||||
@@ -1413,8 +1414,10 @@ export async function executeServerOrder(
|
||||
|
||||
// Clear server consultation session
|
||||
try {
|
||||
const { deleteServerSession } = await import('../agents/server-agent');
|
||||
await deleteServerSession(env.DB, telegramUserId);
|
||||
const { ServerSessionManager } = await import('../utils/session-manager');
|
||||
const { getSessionConfig } = await import('../constants/agent-config');
|
||||
const sessionManager = new ServerSessionManager(getSessionConfig('server'));
|
||||
await sessionManager.delete(env.DB, telegramUserId);
|
||||
} catch (error) {
|
||||
provisionLogger.error('서버 세션 삭제 실패 (무시)', error as Error);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user