AgentSkillsCN

sc:quality-check

执行质量验证。检查架构规范、设计系统及应用商店规则。在进行人工质量审核时使用。

SKILL.md
--- frontmatter
name: "sc:quality-check"
description: "품질 검증 실행. 아키텍처 규칙, 디자인 시스템, 앱스토어 규정 검사. 수동 품질 확인 시 사용."

Quality Check Skill

프로젝트의 품질을 종합 검증하는 워크플로우 스킬입니다.


사용법

code
/sc:quality-check
/sc:quality-check lib/features/fortune/
/sc:quality-check --fix

검사 항목

1. Flutter Analyze

bash
flutter analyze
  • 정적 분석
  • 잠재적 버그 탐지
  • 코드 품질 경고

2. Dart Format

bash
dart format --set-exit-if-changed .
  • 코드 포맷팅 검사
  • 일관된 스타일 유지

3. 아키텍처 규칙

규칙검사 내용
레이어 의존성Presentation → Data 직접 참조 금지
Feature 분리Feature 간 직접 참조 금지
상태 관리@riverpod 사용 금지, StateNotifier 필수
모델@freezed 필수

4. 디자인 시스템

규칙검사 내용
색상하드코딩 Color() 금지
폰트하드코딩 fontSize 금지
타이포하드코딩 TextStyle 금지 → context.heading1 사용
아이콘Icons.arrow_back 금지

5. 앱스토어 규정

규칙검사 내용
금지어'운세', '점술', 'fortune', 'horoscope'
면책조항EntertainmentDisclaimer 존재 확인

검사 명령어

bash
# 아키텍처 - Presentation → Data 직접 참조
grep -rn "import.*data/services" lib/features/*/presentation/

# 아키텍처 - @riverpod 사용
grep -rn "@riverpod" lib/

# 디자인 - 하드코딩 색상
grep -rn "Color(0x" lib/ --include="*.dart"

# 디자인 - 하드코딩 fontSize
grep -rn "fontSize:" lib/ --include="*.dart"

# 앱스토어 - 금지어
grep -rn "'운세'" lib/ --include="*.dart"

리포트 형식

code
============================================
🛡️ Quality Check 결과
============================================

📊 Summary
   총 검사 항목: 5개
   통과: 4개
   실패: 1개

✅ Flutter Analyze
   issues: 0
   warnings: 0

✅ Dart Format
   changes needed: 0

✅ 아키텍처 규칙
   - 레이어 의존성: ✅
   - Feature 분리: ✅
   - 상태 관리: ✅
   - 모델 패턴: ✅

❌ 디자인 시스템
   - 하드코딩 색상: ✅
   - 하드코딩 fontSize: ❌ 2개 발견
     • lib/features/fortune/widgets/card.dart:42
     • lib/features/chat/widgets/message.dart:15
   - 아이콘: ✅

✅ 앱스토어 규정
   - 금지어: ✅
   - 면책조항: ✅

============================================
1개 카테고리에서 이슈 발견
============================================

자동 수정할까요? (Y/n)

자동 수정 (--fix)

--fix 옵션 사용 시 자동 수정 가능한 이슈 처리:

자동 수정 가능

  • Dart format 문제
  • 일부 하드코딩 색상 (명확한 매핑이 있는 경우)
  • Icons.arrow_back → Icons.arrow_back_ios

수동 수정 필요

  • 아키텍처 위반
  • 복잡한 하드코딩 값
  • 비즈니스 로직 변경

범위 지정

특정 경로만 검사:

code
/sc:quality-check lib/features/fortune/
/sc:quality-check lib/features/chat/
/sc:quality-check supabase/functions/

CI/CD 통합

yaml
# .github/workflows/quality.yml
- name: Quality Check
  run: |
    flutter analyze
    dart format --set-exit-if-changed .
    # 추가 검사 스크립트

완료 메시지

모두 통과

code
✅ 모든 품질 검사를 통과했습니다!

📊 검사 완료: 5개 항목
⏱️ 소요 시간: 12초

이슈 발견

code
⚠️ 품질 이슈가 발견되었습니다.

📊 검사 완료: 5개 항목
❌ 실패: 1개 항목

수정이 필요합니다. 자동 수정할까요? (Y/n)