feat: Clerk + Supabase 통합 시스템 구현 완료

주요 변경사항:
• Clerk 인증 시스템 통합 및 설정
• Supabase 데이터베이스 스키마 설계 및 적용
• JWT 기반 Row Level Security (RLS) 정책 구현
• 기존 Appwrite 인증을 Clerk로 완전 교체

기술적 개선:
• 무한 로딩 문제 해결 - Index.tsx 인증 로직 수정
• React root 마운팅 오류 수정 - main.tsx 개선
• CORS 설정 추가 - vite.config.ts 수정
• Sentry 에러 모니터링 통합

추가된 컴포넌트:
• AuthGuard: 인증 보호 컴포넌트
• SignIn/SignUp: Clerk 기반 인증 UI
• ClerkProvider: Clerk 설정 래퍼
• EnvTest: 개발환경 디버깅 도구

데이터베이스:
• user_profiles, transactions, budgets, category_budgets 테이블
• Clerk JWT 토큰 기반 RLS 정책
• 자동 사용자 프로필 생성 및 동기화

Task Master:
• Task 11.1, 11.2, 11.4 완료
• 프로젝트 관리 시스템 업데이트

Note: ESLint 정리는 별도 커밋에서 진행 예정

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
hansoo
2025-07-13 14:01:27 +09:00
parent e72f9e8d26
commit c231d5be65
59 changed files with 5974 additions and 751 deletions

View File

@@ -0,0 +1,37 @@
# Task ID: 4
# Title: CI/CD 파이프라인 구축
# Status: done
# Dependencies: 2
# Priority: medium
# Description: GitHub Actions를 사용하여 자동 빌드, 테스트, ESLint 검사를 수행하는 워크플로우를 설정합니다.
# Details:
1. .github/workflows/ci.yml 파일 생성 2. Node.js 환경 설정 및 의존성 설치 3. TypeScript 빌드 및 타입 검사 4. ESLint 및 Prettier 검사 자동화 5. 테스트 실행 (나중에 추가될 테스트들) 6. 빌드 아티팩트 생성 및 저장 7. PR에서 자동 검사 실행
# Test Strategy:
GitHub Actions 워크플로우가 성공적으로 실행되는지 확인, PR 생성 시 자동 검사가 동작하는지 검증, 빌드 실패 시 적절한 에러 메시지 출력 확인
# Subtasks:
## 1. 기본 GitHub Actions 워크플로우 파일 생성 [done]
### Dependencies: None
### Description: .github/workflows/ci.yml 파일을 생성하고 기본 구조를 설정합니다.
### Details:
GitHub Actions 워크플로우의 기본 구조를 정의합니다. 트리거 이벤트(push, pull_request), 작업 환경(Ubuntu), Node.js 버전 매트릭스를 설정하고 기본적인 체크아웃 액션을 포함합니다.
## 2. Node.js 환경 설정 및 의존성 설치 단계 구현 [done]
### Dependencies: 4.1
### Description: Node.js 환경을 설정하고 npm 의존성을 설치하는 단계를 추가합니다.
### Details:
actions/setup-node 액션을 사용하여 Node.js 18.x 버전을 설정하고, package-lock.json을 기반으로 한 캐싱 전략을 구현합니다. npm ci 명령어를 사용하여 의존성을 빠르고 안정적으로 설치합니다.
## 3. 빌드 및 코드 품질 검사 단계 구현 [done]
### Dependencies: 4.2
### Description: TypeScript 빌드, ESLint, Prettier 검사를 수행하는 단계를 구현합니다.
### Details:
npm run build 명령어로 TypeScript 컴파일을 실행하고, npm run lint로 ESLint 검사를 수행합니다. Prettier 포맷 검사도 포함하여 코드 스타일 일관성을 확인합니다. 각 단계에서 오류 발생 시 워크플로우가 실패하도록 설정합니다.
## 4. 빌드 아티팩트 업로드 및 테스트 준비 [done]
### Dependencies: 4.3
### Description: 빌드된 파일들을 아티팩트로 업로드하고 향후 테스트 실행을 위한 구조를 준비합니다.
### Details:
actions/upload-artifact 액션을 사용하여 dist 폴더의 빌드 결과물을 아티팩트로 저장합니다. 테스트 실행을 위한 플레이스홀더 단계를 추가하고, 워크플로우가 PR 컨텍스트에서도 올바르게 실행되도록 설정합니다.