110 lines
4.4 KiB
Markdown
110 lines
4.4 KiB
Markdown
# TaxBaik 개선 로드맵 WBS
|
|
|
|
이 문서는 "완료 보고"가 아니라 검증 가능한 작업 목록이다. 각 WBS는 성공 기준을 통과해야 완료로 본다.
|
|
|
|
## 완료 판정 원칙
|
|
|
|
- 코드 변경만으로 완료 처리하지 않는다.
|
|
- 서버 배포 대상 기능은 CI/CD 성공과 Playwright 브라우저 테스트 통과를 모두 요구한다.
|
|
- API 기능은 단위 테스트 또는 통합 테스트와 함께 실제 HTTP 호출 결과를 확인한다.
|
|
- DB 변경은 마이그레이션과 롤백 위험을 문서화한다.
|
|
- 비밀값은 Gitea Secrets 또는 서버 환경변수로만 관리한다.
|
|
|
|
## WBS-OPS-01 배포 검증 게이트 고도화
|
|
|
|
목표: curl/API만이 아니라 실제 브라우저 검증까지 통과해야 배포를 성공으로 본다.
|
|
|
|
성공 기준:
|
|
- `dotnet build TaxBaik.sln -c Release` 경고 0, 오류 0
|
|
- `dotnet test TaxBaik.sln -c Release --no-build` 전체 통과
|
|
- CI 배포 후 Playwright가 `/taxbaik/admin/login`에서 실제 로그인 수행
|
|
- 로그인 후 `/taxbaik/admin/dashboard` 도달
|
|
- 브라우저 console error 및 page error 0개
|
|
- `blog-seo`, `contact-submit`, `admin-password-change`가 배포본 기준으로 통과
|
|
|
|
Todo:
|
|
- [x] Playwright Test 프로젝트 추가
|
|
- [x] 관리자 로그인 E2E 추가
|
|
- [x] CI 배포 후 Playwright 실행 단계 추가
|
|
- [x] Playwright가 발견한 Blazor DI 결함 수정
|
|
- [ ] CI run에서 Playwright 전체 통과 확인
|
|
- [ ] 배포 검증에 블로그 상세/문의/비밀번호 변경 성공 기준 반영 확인
|
|
|
|
## WBS-AUTH-01 인증/비밀번호 운영 안정화
|
|
|
|
목표: DB 직접 수정 대신 API로 관리자 인증 운영 작업을 수행한다.
|
|
|
|
성공 기준:
|
|
- 비밀번호 변경 API가 현재 비밀번호를 요구한다.
|
|
- 비밀번호 재설정 API는 운영 secret 없이는 동작하지 않는다.
|
|
- 실패 응답은 민감 정보를 노출하지 않는다.
|
|
- Playwright 로그인 테스트와 비밀번호 변경 테스트가 변경 후에도 통과한다.
|
|
|
|
Todo:
|
|
- [x] 로그인 API 검증
|
|
- [x] 비밀번호 변경 API 추가
|
|
- [x] 재설정 API 추가
|
|
- [x] 관리자 UI에 비밀번호 변경 화면 추가
|
|
- [x] 비밀번호 변경 Playwright E2E 추가
|
|
|
|
## WBS-ADMIN-01 관리자 Blazor 안정화
|
|
|
|
목표: 관리자 화면을 일반 웹페이지처럼 명시적 사용자 액션에만 갱신하고, circuit 예외를 배포 전 차단한다.
|
|
|
|
성공 기준:
|
|
- 관리자 주요 메뉴 대시보드/블로그/문의/설정 접근 시 circuit error 0개
|
|
- 잘못된 DI 타입 주입 0건
|
|
- 저장/삭제/상태 변경 액션은 성공/실패 메시지를 표시한다.
|
|
- Playwright가 주요 메뉴 smoke test를 수행한다.
|
|
|
|
Todo:
|
|
- [x] 중복 `/admin` 라우트 제거
|
|
- [x] MudBlazor DI 타입 오류 수정
|
|
- [x] 관리자 메뉴 smoke E2E 추가
|
|
- [x] 설정 저장 TODO를 실제 DB 기반 기능으로 전환
|
|
- [x] 대시보드/목록 읽기 성능 개선
|
|
|
|
## WBS-UX-01 공개 홈페이지 UX/SEO 검증
|
|
|
|
목표: 공개 홈페이지가 검색 유입과 상담 전환에 맞는 구조인지 검증한다.
|
|
|
|
성공 기준:
|
|
- 홈/블로그 목록/블로그 상세/상담 문의 페이지 200
|
|
- 주요 페이지 title/description 존재
|
|
- 모바일 viewport에서 주요 CTA가 보인다.
|
|
- 상담 문의 제출 Playwright E2E가 통과한다.
|
|
- 블로그 상세 SEO 메타 검증이 배포본 기준으로 통과한다.
|
|
|
|
Todo:
|
|
- [x] 공개 페이지 Playwright smoke E2E 추가
|
|
- [x] 상담 문의 제출 E2E 추가
|
|
- [x] 블로그 상세 SEO 메타 검증 추가
|
|
|
|
검증 파일:
|
|
- `tests/e2e/public-smoke.spec.ts`
|
|
- `tests/e2e/blog-seo.spec.ts`
|
|
- `tests/e2e/contact-submit.spec.ts`
|
|
- `tests/e2e/inquiry-detail.spec.ts`
|
|
|
|
## WBS-MAINT-01 유지보수성/파편화 축소
|
|
|
|
목표: 문서와 실제 구조의 불일치를 줄이고 단일 앱 운영 기준을 유지한다.
|
|
|
|
성공 기준:
|
|
- README/CLAUDE/DEPLOYMENT_GUIDE의 .NET 버전, 앱 구조, 테스트 기준이 실제 코드와 일치
|
|
- 배포 문서에 Playwright 검증 절차 포함
|
|
- 오래된 분리 Admin 서비스 문서 제거 또는 명확히 deprecated 처리
|
|
|
|
Todo:
|
|
- [x] README 테스트/배포 섹션 갱신
|
|
- [x] CLAUDE.md E2E 기준 갱신
|
|
- [ ] 오래된 최종 보고 문서의 허위 완료 표현 정정
|
|
|
|
### 현재 검증 메모
|
|
- 로컬 빌드 성공
|
|
- 관리자 smoke 성공
|
|
- 공개 smoke 성공
|
|
- 블로그 상세 SEO는 원격 배포본 반영 대기
|
|
- 문의 제출 E2E는 원격 배포 반영 대기
|
|
- 비밀번호 변경 E2E는 배포 환경 자격 증명 확인 대기
|