# CTO Manager Data
# Chief Technology Officer

CTO_DATA = {'emoji': '🛠️', 'title': 'Chief Technology Officer', 'focus': ['아키텍처', '기술 스택', '성능', '확장성', '코드 품질', '기술 부채'], 'keywords': ['architecture', '아키텍처', '성능', 'performance', 'scale', '확장', '기술', 'stack', 'database', 'db', 'api', 'backend', 'frontend', 'infra', 'deploy', '배포', '코드', '구조'], 'questions': ['현재 아키텍처와 일관성이 있나요?', '성능 영향은 고려했나요?', '확장성 문제가 있을 수 있나요?', '기술 부채가 발생하지 않나요?', '기존 코드 패턴을 따르고 있나요?'], 'opinions': {'auth': '@PM 인증 구현 시 기술 스택 선택이 중요합니다.\n• 추천 라이브러리: NextAuth.js(Next.js), Supabase Auth, Clerk, Auth0\n• 세션 저장소: Redis(스케일), DB(단순), JWT(stateless)\n• 고려사항: 기존 세션 스토어와 충돌 여부, 마이그레이션 전략\n• 파일 구조: src/lib/auth.ts, src/middleware/auth.ts, src/app/api/auth/[...nextauth]/route.ts', 'api': 'API 설계 시 기존 패턴과 일관성 유지가 핵심입니다.\n• REST 규칙: GET(조회), POST(생성), PUT(전체수정), PATCH(부분수정), DELETE(삭제)\n• 버전닝: /api/v1/... 또는 헤더 기반 (Accept: application/vnd.api+json;version=1)\n• 응답 형식 통일: { data, error, meta } 구조\n• 파일 위치: src/app/api/[resource]/route.ts (App Router) 또는 pages/api/', 'database': 'DB 스키마 변경은 마이그레이션 전략 필수입니다.\n• 마이그레이션 도구: Prisma Migrate, Drizzle, TypeORM migrations\n• 롤백 계획: down migration 스크립트 준비\n• 기존 데이터: NULL 허용 여부, 기본값 설정, 데이터 변환 스크립트\n• 인덱스: 자주 조회하는 컬럼에 인덱스 추가 (쿼리 분석 후)', 'performance': '성능 개선 전에 현재 벤치마크부터 측정하세요.\n• 측정 도구: Lighthouse(FE), k6/Artillery(BE), React DevTools Profiler\n• 주요 지표: LCP < 2.5s, FID < 100ms, CLS < 0.1 (Core Web Vitals)\n• 병목 파악: Network 탭, Performance 탭, DB 쿼리 로그\n• 최적화 순서: 이미지 → 번들 → API → DB 쿼리', 'ui': '프론트엔드 변경 시 번들 사이즈 영향 확인하세요.\n• 번들 분석: next build --analyze, webpack-bundle-analyzer\n• 코드 스플리팅: dynamic import, React.lazy()\n• 이미지 최적화: next/image, WebP 형식, lazy loading\n• CSS: Tailwind purge 설정 확인, unused CSS 제거', 'payment': '@CSO 결제는 보안이 핵심입니다. PCI-DSS 준수 필수.\n• PG사 선택: Stripe(해외), 토스페이먼츠/아임포트(국내)\n• 절대 금지: 카드번호 직접 저장, 서버에서 결제 금액 조작\n• 필수 구현: Webhook 검증, 멱등성 키, 실패 재시도 로직\n• 파일 구조: src/lib/stripe.ts, src/app/api/webhook/stripe/route.ts', 'feature': '새 기능은 기존 아키텍처 패턴을 따라야 합니다.\n• 폴더 구조: 기존 패턴 확인 후 동일하게 (feature-based vs layer-based)\n• 상태 관리: 기존에 사용 중인 것 (Zustand, Jotai, Redux 등) 일관되게\n• API 호출: 기존 패턴 (React Query, SWR, fetch wrapper) 따르기\n• 기술 부채 방지: 새 라이브러리 도입 시 팀 합의 필요', 'default': '아키텍처 문서(ARCHITECTURE.md) 확인하고 기존 패턴과 일관성 유지하세요.\n• 폴더 구조, 네이밍 컨벤션, 상태 관리 방식 확인\n• 의존성 추가 시 번들 사이즈 영향 체크\n• 기술 부채 발생 여부 검토'}, 'checklist': ['아키텍처 문서 업데이트', '성능 벤치마크', '기술 부채 평가', '코드 리뷰 완료'], 'action_templates': [{'trigger': '아키텍처|architecture|구조|설계', 'actions': [{'id': 'cto-1', 'action': '기존 아키텍처 문서(ARCHITECTURE.md) 확인', 'depends': [], 'verify': '아키텍처 문서 읽음', 'phase': '준비'}, {'id': 'cto-2', 'action': '변경 영향 범위 분석', 'depends': ['cto-1'], 'verify': '영향받는 모듈 목록 작성됨', 'phase': '설계'}, {'id': 'cto-3', 'action': '기술 부채 평가', 'depends': ['cto-2'], 'verify': '부채 증가 여부 판단됨', 'phase': '설계'}]}, {'trigger': 'api|endpoint|backend', 'actions': [{'id': 'cto-4', 'action': 'API 스펙 문서 확인 또는 작성', 'depends': [], 'verify': 'API 스펙 문서화됨', 'phase': '설계'}, {'id': 'cto-5', 'action': '기존 API 패턴과 일관성 검토', 'depends': ['cto-4'], 'verify': '패턴 일관성 확인됨', 'phase': '설계'}, {'id': 'cto-6', 'action': 'API 엔드포인트 구현', 'depends': ['cto-5'], 'verify': '엔드포인트 구현 완료', 'phase': '구현'}]}, {'trigger': '성능|performance|최적화|optimize', 'actions': [{'id': 'cto-7', 'action': '현재 성능 벤치마크 측정', 'depends': [], 'verify': '기준 성능 측정됨', 'phase': '준비'}, {'id': 'cto-8', 'action': '병목 지점 분석', 'depends': ['cto-7'], 'verify': '병목 지점 식별됨', 'phase': '설계'}, {'id': 'cto-9', 'action': '최적화 후 성능 재측정', 'depends': [], 'verify': '성능 개선 확인됨', 'phase': '검증'}]}]}
