返回 Skill 列表
extension
分类: 开发与工程无需 API Key

final-check-automation

FINAL_CHECK工作流自动化。E2E测试,第3-5阶段自动进行。

person作者: jakexiaohubgithub

FINAL_CHECK Automation

구현 완료 후 최종 검증 워크플로우입니다.

Quick Start

# 전체 FINAL_CHECK 실행
python .claude/skills/final-check-automation/scripts/run_final_check.py

# E2E만 실행
python .claude/skills/final-check-automation/scripts/run_final_check.py --e2e-only

# 보안 스캔만 실행
python .claude/skills/final-check-automation/scripts/run_final_check.py --security-only

워크플로우

Phase 2 완료
    ↓
FINAL_CHECK 시작
    ↓
┌──────────────────────────────────────┐
│ Step 1: E2E 테스트                   │
│   npx playwright test                │
│   실패 시 → 자동 수정 (최대 3회)      │
└──────────────────────────────────────┘
    ↓ (100% 통과)
┌──────────────────────────────────────┐
│ Step 2: Phase 3 (버전 결정)          │
│   Conventional Commits 분석          │
│   MAJOR/MINOR/PATCH 결정             │
└──────────────────────────────────────┘
    ↓
┌──────────────────────────────────────┐
│ Step 3: Phase 4 (PR 생성)            │
│   gh pr create                       │
│   validate-phase-4.ps1               │
└──────────────────────────────────────┘
    ↓
┌──────────────────────────────────────┐
│ Step 4: Phase 5 (보안 검증)          │
│   Security scan                      │
│   Performance check                  │
│   validate-phase-5.ps1               │
└──────────────────────────────────────┘
    ↓
┌──────────────────────────────────────┐
│ Step 5: Phase 6 (배포)               │
│   ⚠️ 사용자 확인 필수                │
└──────────────────────────────────────┘

Step 1: E2E 테스트

실행 방법

# 전체 E2E 테스트
npx playwright test

# UI 모드 (디버깅)
npx playwright test --ui

# 단일 파일
npx playwright test tests/e2e/flow.spec.ts

# 스크린샷 저장
npx playwright test --screenshot=on

실패 처리

| 시도 | 동작 | |------|------| | 1회 실패 | 스크린샷/로그 분석 → 자동 수정 | | 2회 실패 | selector 재검증 → 수정 | | 3회 실패 | ⏸️ /issue-failed → 수동 개입 |

webapp-testing 스킬 활용

# 서버 자동 관리
python .claude/skills/webapp-testing/scripts/with_server.py \
  --server "npm run dev" --port 3000 \
  -- npx playwright test

Step 2: Phase 3 (버전 결정)

Conventional Commits 분석

# 커밋 분석
git log --oneline <base>..HEAD

# 버전 결정 규칙
feat!: BREAKING CHANGE → MAJOR
feat:  새 기능        → MINOR
fix:   버그 수정      → PATCH

버전 태그

# 현재 버전 확인
git describe --tags --abbrev=0

# 새 버전 태그
git tag -a v1.2.3 -m "Release v1.2.3"

Step 3: Phase 4 (PR 생성)

PR 생성

gh pr create \
  --title "feat(scope): Description" \
  --body "## Summary
- Change 1
- Change 2

## Test Plan
- [ ] E2E passed
- [ ] Security scan passed

🤖 Generated with Claude Code"

검증

.\scripts\validate-phase-4.ps1

Step 4: Phase 5 (보안 검증)

보안 스캔

# Python 의존성 취약점
pip-audit

# npm 의존성 취약점
npm audit

# 시크릿 스캔
trufflehog git file://. --only-verified

성능 체크

# Lighthouse (웹)
npx lighthouse http://localhost:3000 --output=json

# pytest 성능 (Python)
pytest --benchmark-only

검증

.\scripts\validate-phase-5.ps1

Step 5: Phase 6 (배포)

⚠️ 사용자 확인 필수

자동 진행 중지 조건

| 조건 | 중지 | |------|------| | MAJOR 버전 업그레이드 | ⏸️ | | Critical 보안 취약점 | ⏸️ | | 배포 단계 | ⏸️ | | 3회 연속 실패 | ⏸️ |

배포 체크리스트

  • [ ] 모든 테스트 통과
  • [ ] 보안 스캔 통과
  • [ ] PR 승인됨
  • [ ] 릴리스 노트 작성
  • [ ] 배포 환경 확인

에이전트 활용

| 단계 | 에이전트 | |------|----------| | E2E 테스트 | playwright-engineer | | 보안 스캔 | security-auditor | | 코드 리뷰 | code-reviewer | | 성능 체크 | performance-engineer |

병렬 실행

# Phase 5 병렬 검증
Task(subagent_type="playwright-engineer", prompt="E2E 최종 검증")
Task(subagent_type="security-auditor", prompt="보안 점검")
Task(subagent_type="performance-engineer", prompt="성능 테스트")

관련 도구

| 도구 | 용도 | |------|------| | scripts/run_final_check.py | 전체 자동화 | | webapp-testing Skill | E2E 테스트 | | validate-phase-*.ps1 | Phase 검증 | | /final-check | 기존 Command (deprecated) |


관련: CLAUDE.md 섹션 4 Phase Pipeline