Agent skill
refactoring
리팩토링 검증 및 코드 비교 시 적용하는 가이드. Use when verifying refactoring correctness, comparing before/after code, or ensuring no behavioral regressions.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/other/refactoring-jimmy-jung-claude-symbiote
SKILL.md
리팩토링 검증 가이드
7단계 검증 프로세스
0단계: 프로젝트 타입 및 범위 식별
- 프로젝트 언어 확인
- 리팩토링 전 파일 형식 확인 (.bak, .backup, Git diff 등)
- 리팩토링 범위 확인 (단일 파일 / 모듈 / 전체)
- 리팩토링 유형 확인 (함수 추출 / 클래스 분리 / 아키텍처 변경 / 언어 마이그레이션)
1단계: 파일 구조 비교
- 타입/클래스/인터페이스 시그니처 비교
- 접근 제어자 변경 확인
- Extension/Category 분리 여부 확인
- 백업 파일 존재 여부 확인
2단계: API 시그니처 분석
- 공개 함수/메서드 시그니처 일치 여부
- 접근 제어자 변경으로 인한 외부 API 영향
- Generic/제네릭 타입 파라미터 변경
- 추가/제거된 메서드 확인 및 대체 로직 검증
3단계: 핵심 로직 비교
- 리팩토링 대상 함수/메서드의 전후 비교
- 분리된 타입/모듈로의 로직 이동 확인
- 조건 분기 로직 완전성 확인
- 에러 처리 로직 보존 여부
4단계: 외부 의존성 및 네트워크 분석
- 네트워크 요청/응답 처리 완전성
- 요청 타입 누락 여부 (REQUEST_ 타입 등)
- 의존성 주입 컨테이너 변경 확인
- 프레임워크/라이브러리 사용 변경 확인
5단계: 상태 관리 및 메모리 분석
- 인스턴스 변수/프로퍼티 접근 경로 변경
- 상태 변수 초기화 위치 변경
- 상태 변수 동기화 문제 확인
- weak/strong 참조 변경, 순환 참조 가능성
6단계: 초기화 및 생명주기 분석
- 초기화 로직 변경 확인
- 의존성 주입 순서 확인
- nil/null 체크 및 안전장치 확인
- 에러 처리 및 예외 전파 경로 확인
7단계: 종합 버그 리포트 작성
- 발견된 문제점 우선순위 분류
- 수정 방안 제시
- 영향도 분석
8가지 주요 버그 패턴
| 패턴 | 증상 | 검증 |
|---|---|---|
| 로직 순서 변경 | 실행 순서가 변경됨 | 조건 분기 순서 비교, guard 문 순서 확인 |
| 케이스 처리 누락 | 특정 케이스가 처리되지 않음 | 모든 조건 분기 경로 확인, switch exhaustive 확인 |
| 네트워크 요청 타입 누락 | 일부 요청 타입이 Handler/Repository에 누락 | 요청 타입 목록 비교 |
| 상태 변수 동기화 | 상태가 올바르게 업데이트되지 않음 | 상태 변수 할당 위치 비교 |
| 의존성 주입 실패 | nil 참조로 인한 크래시 | nil 체크 및 fallback 로직 확인 |
| 메모리 관리 문제 | 누수 또는 조기 해제 | weak/unowned 사용 확인, 참조 그래프 분석 |
| 타입 변환 문제 | 언어 간 타입 변환 실패 | 브릿징 타입 확인, Optional 처리 확인 |
| 비동기 처리 변경 | 비동기 완료 전 접근 또는 콜백 누락 | 비동기 호출 경로 확인, 콜백 확인 |
상세 검증 항목
API 시그니처 비교: 구조체/클래스/프로토콜 시그니처 일치, 접근 제어자 변경, Generic 제약 조건 변경
함수/메서드 로직 비교: 함수 길이 변화, 조건 분기 완전성, 에러 처리 보존, 반환값 일치, 부수 효과 보존
네트워크 요청 분석: 리팩토링 전 요청 타입 추출, 리팩토링 후 처리 타입 추출, 누락된 타입 목록 작성
분리된 컴포넌트 검증: 모든 로직 이동 확인, 헬퍼 메서드 완전성, 의존성 주입 confirmation, 인터페이스 일치
상태 관리 변수 검증: 프로퍼티 접근 경로 변경, 초기화 위치 변경, 동기화 문제 가능성
분석 보고서 템플릿
# [파일명] 리팩토링 전후 비교 분석
## 분석 개요
- 리팩토링 전 파일: [경로]
- 리팩토링 후 파일: [경로]
- 분석 일시: [날짜]
## 1. 헤더/인터페이스 비교
### 변경 사항 확인
### 발견된 문제점
### 수정 방안
## 2. [메서드명] 메서드 분석
### 변경 사항 확인
### 발견된 문제점
### 수정 방안
## 심각한 버그 (즉시 수정 필요)
1. [버그 설명]
- 위치: [파일:줄]
- 영향: [영향도 설명]
- 수정 방안: [코드 예시]
## 중간 수준 문제 (수정 권장)
...
## 경미한 문제 (선택적 수정)
...
## 정상 동작 확인
...
## 통계
- 총 분석 항목: N개
- 심각한 버그: N개
- 중간 수준 문제: N개
- 경미한 문제: N개
## 우선순위별 수정 계획
1. 즉시 수정 (심각한 버그)
2. 단기 수정 (중간 수준 문제)
3. 장기 개선 (경미한 문제)
검증 체크리스트
필수 검증 항목:
- 공개 API 시그니처 일치
- 핵심 메서드 로직 완전성
- 네트워크 요청 타입 누락 확인
- 상태 변수 접근 경로 확인
- 에러 처리 로직 보존
- 조건 분기 완전성 확인
선택적 검증 항목:
- 성능 영향 분석
- 메모리 관리 변경 확인
- 테스트 커버리지 확인
- 문서화 업데이트 확인
검증 도구
파일 비교:
- diff -u [전파일] [후파일]
- wc -l로 라인 수 비교
시그니처 추출:
- grep으로 함수/메서드 정의 추출
- 전후 비교하여 누락/추가 확인
호출 추적:
- grep으로 특정 함수/메서드 호출 위치 확인
- 타입 사용 추적
요청 타입 추출:
- 리팩토링 전: grep으로 모든 요청 타입 추출
- 리팩토링 후: Handler/Repository에서 처리되는 타입 추출
- comm -23으로 누락된 타입 목록 작성
사전 준비 및 백업
- 테스트가 존재하는지 확인
- 현재 동작 문서화
- .bak 파일 또는 git stash
- 브랜치 분리 권장
롤백 계획
- 문제 발견 시 즉시 되돌릴 수 있도록
- 배포 전 검증 단계 확보
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?