@sduck/sduck-cli 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,174 +0,0 @@
1
- # [fix] {버그 요약 한 줄}
2
-
3
- > **작업 타입:** `fix` (Quick Fix)
4
- > **심각도:** `critical` / `high` / `medium` / `low`
5
- > **작성자:**
6
- > **작성일:** YYYY-MM-DD
7
- > **연관 티켓:**
8
-
9
- ---
10
-
11
- ## 1. 버그 개요
12
-
13
- ### 문제 요약
14
-
15
- <!-- 한두 문장으로 버그의 핵심을 요약 -->
16
-
17
- ### 발견 경위
18
-
19
- - [ ] 사용자 제보
20
- - [ ] 모니터링 알림
21
- - [ ] 코드 리뷰 중 발견
22
- - [ ] QA 테스트
23
- - [ ] 기타:
24
-
25
- ### 발생 빈도
26
-
27
- - [ ] 항상 재현됨 (100%)
28
- - [ ] 간헐적 재현 (약 %)
29
- - [ ] 특정 조건에서만 재현
30
-
31
- ---
32
-
33
- ## 2. 재현 방법 (Steps to Reproduce)
34
-
35
- **환경 정보**
36
- | 항목 | 내용 |
37
- |------|------|
38
- | 환경 (local / dev / staging / production) | |
39
- | OS / 브라우저 / 앱 버전 | |
40
- | 계정 유형 / 권한 | |
41
- | 관련 데이터 ID / 조건 | |
42
-
43
- **재현 단계**
44
-
45
- 1.
46
- 2.
47
- 3.
48
-
49
- **실제 결과 (Actual)**
50
-
51
- <!-- 무슨 일이 일어났는지 -->
52
-
53
- **기대 결과 (Expected)**
54
-
55
- <!-- 원래 어떻게 동작해야 하는지 -->
56
-
57
- ---
58
-
59
- ## 3. 원인 분석 (Root Cause)
60
-
61
- ### 원인 파악 현황
62
-
63
- - [ ] 원인 특정 완료
64
- - [ ] 원인 조사 중
65
- - [ ] 원인 불명
66
-
67
- ### 원인 요약
68
-
69
- <!-- 코드 레벨에서 왜 이 버그가 발생하는지 기술 -->
70
-
71
- ### 원인 코드 위치
72
-
73
- ```
74
- 파일: src/...
75
- 함수 / 라인:
76
- ```
77
-
78
- ### 발생 조건
79
-
80
- <!-- 특정 값, 상태, 순서 등 버그를 트리거하는 조건 -->
81
-
82
- ---
83
-
84
- ## 4. 수정 방안
85
-
86
- ### 방안 검토
87
-
88
- | 방안 | 설명 | 장점 | 단점 |
89
- | ------ | ---- | ---- | ---- |
90
- | 방안 A | | | |
91
- | 방안 B | | | |
92
-
93
- ### 선택한 방안 및 이유
94
-
95
- > **선택:** 방안 \_
96
- >
97
- > **이유:**
98
-
99
- ### 변경 파일 목록 (예상)
100
-
101
- ```
102
- target_paths:
103
- - src/...
104
- - tests/...
105
- ```
106
-
107
- ---
108
-
109
- ## 5. 테스트 계획
110
-
111
- ### 버그 재현 테스트 (수정 전 실패 확인)
112
-
113
- - [ ] 기존 버그 재현 테스트 케이스 작성 완료
114
-
115
- ### 수정 검증 테스트 (수정 후 통과 확인)
116
-
117
- | 테스트 케이스 | 조건 | 예상 결과 |
118
- | ------------- | -------------- | -------------- |
119
- | | 버그 유발 조건 | 정상 동작 |
120
- | | 정상 입력 | 기존 동작 유지 |
121
- | | 경계값 | |
122
-
123
- ### 회귀 테스트
124
-
125
- <!-- 이 수정으로 인해 영향받을 수 있는 관련 기능의 테스트 목록 -->
126
-
127
- - [ ]
128
- - [ ]
129
-
130
- ---
131
-
132
- ## 6. 영향 범위
133
-
134
- ### 사이드 이펙트 검토
135
-
136
- <!-- 이 수정이 다른 기능에 미칠 수 있는 영향 -->
137
-
138
- ### 데이터 정합성
139
-
140
- - [ ] DB 데이터 정정 작업 필요 없음
141
- - [ ] DB 데이터 정정 작업 필요: _(내용 작성)_
142
-
143
- ---
144
-
145
- ## 7. 롤백 계획
146
-
147
- <!-- 수정 후에도 문제가 지속되거나 새로운 문제 발생 시 대응 방안 -->
148
-
149
- - 롤백 방법:
150
- - 롤백 판단 기준 (임계값 또는 조건):
151
-
152
- ---
153
-
154
- ## 8. 임시 조치 (Workaround, 해당 시)
155
-
156
- <!-- 수정 배포 전까지 사용자 또는 운영팀이 취할 수 있는 임시 방편 -->
157
-
158
- ---
159
-
160
- ## 9. 재발 방지 대책
161
-
162
- <!-- 동일한 유형의 버그가 다시 발생하지 않도록 개선할 점 -->
163
-
164
- - [ ] 테스트 케이스 추가
165
- - [ ] 코드 리뷰 체크리스트 항목 추가
166
- - [ ] 모니터링 알림 추가
167
- - [ ] 기타:
168
-
169
- ---
170
-
171
- ## 10. 참고 자료
172
-
173
- - 에러 로그:
174
- - 관련 이슈 / PR:
@@ -1,174 +0,0 @@
1
- # [refactor] {리팩토링 대상 및 목적}
2
-
3
- > **작업 타입:** `refactor` (Refactor)
4
- > **작성자:**
5
- > **작성일:** YYYY-MM-DD
6
- > **연관 티켓:**
7
-
8
- ---
9
-
10
- ## ⚠️ 리팩토링 불변 조건
11
-
12
- > **이 작업은 외부 동작(기능, API 응답, UI)을 변경하지 않는다.**
13
- > 코드 구조만 개선하며, 비즈니스 로직의 변경은 별도의 `feature` 또는 `fix` 작업으로 분리한다.
14
-
15
- ---
16
-
17
- ## 1. 배경 및 목적
18
-
19
- ### 리팩토링이 필요한 이유
20
-
21
- <!-- 현재 코드의 어떤 문제(기술 부채, 가독성, 유지보수성, 성능 등)가 있는지 구체적으로 기술 -->
22
-
23
- ### 기대 효과
24
-
25
- - [ ] 가독성 / 이해하기 쉬운 코드
26
- - [ ] 유지보수성 향상
27
- - [ ] 중복 코드 제거
28
- - [ ] 테스트 용이성 향상
29
- - [ ] 성능 개선 (측정 지표 명시 필요)
30
- - [ ] 기타:
31
-
32
- ---
33
-
34
- ## 2. 현재 상태 (As-Is)
35
-
36
- ### 문제 코드 / 구조
37
-
38
- ```
39
- 파일: src/...
40
- ```
41
-
42
- <!-- 문제가 되는 코드 패턴, 구조, 의존 관계 등을 스케치 또는 설명 -->
43
-
44
- ### 측정 지표 (개선 전)
45
-
46
- | 지표 | 현재 값 | 목표 값 |
47
- | ----------------------------------- | ------- | ------- |
48
- | 순환 복잡도 (Cyclomatic Complexity) | | |
49
- | 중복 코드 라인 수 | | |
50
- | 함수/클래스 크기 | | |
51
- | 응답 시간 (해당 시) | | |
52
- | 테스트 커버리지 | | |
53
-
54
- ---
55
-
56
- ## 3. 목표 상태 (To-Be)
57
-
58
- ### 개선된 구조
59
-
60
- ```
61
- 파일: src/...
62
- ```
63
-
64
- <!-- 리팩토링 후 디렉토리 구조, 클래스 구조, 함수 분리 방향 등을 기술 -->
65
-
66
- ### 적용할 패턴 / 원칙
67
-
68
- - [ ] SOLID 원칙 적용:
69
- - [ ] 디자인 패턴 적용:
70
- - [ ] 기타 컨벤션:
71
-
72
- ---
73
-
74
- ## 4. 리팩토링 범위
75
-
76
- ### 변경 대상 파일
77
-
78
- ```
79
- target_paths:
80
- - src/...
81
- - tests/...
82
- ```
83
-
84
- ### 변경하지 않는 범위 (명시적 경계)
85
-
86
- ```
87
- blocked_paths:
88
- - src/api/routes/ # 외부 API 계약 불변
89
- - migrations/ # DB 스키마 불변
90
- ```
91
-
92
- ### 인터페이스 불변 확인
93
-
94
- <!-- 다음 항목들이 변경 전후 동일하게 유지되어야 함을 확인 -->
95
-
96
- - [ ] Public API 엔드포인트 및 응답 스펙
97
- - [ ] 공개 함수 / 메서드 시그니처
98
- - [ ] DB 스키마 및 마이그레이션
99
- - [ ] 이벤트 / 메시지 포맷
100
-
101
- ---
102
-
103
- ## 5. 테스트 전략
104
-
105
- > 리팩토링의 안전성은 테스트가 보장한다. 기존 테스트가 통과하는 것이 완료 기준이다.
106
-
107
- ### 기존 테스트 현황
108
-
109
- - 현재 테스트 커버리지:
110
- - 테스트 통과 여부 (작업 시작 전 확인):
111
- - [ ] 모든 기존 테스트 통과 확인됨
112
-
113
- ### 리팩토링 중 테스트 전략
114
-
115
- - [ ] 기존 테스트를 변경하지 않고 통과시키며 리팩토링 진행
116
- - [ ] 구조 변경에 따라 테스트도 함께 재구성 (이유 명시):
117
-
118
- ### 보완 테스트
119
-
120
- <!-- 기존 테스트 커버리지가 낮아 리팩토링 전 보강이 필요한 경우 -->
121
-
122
- - [ ] 추가 테스트 케이스 작성 대상:
123
-
124
- ---
125
-
126
- ## 6. 단계별 분리 계획
127
-
128
- > 리팩토링은 한 번에 모든 것을 바꾸지 않고 작은 단위로 나눠서 진행한다.
129
-
130
- | 단계 | 작업 내용 | 검증 방법 |
131
- | ---- | --------- | ---------------- |
132
- | 1 | | 테스트 전부 통과 |
133
- | 2 | | 테스트 전부 통과 |
134
- | 3 | | 테스트 전부 통과 |
135
-
136
- ---
137
-
138
- ## 7. 영향 범위 분석
139
-
140
- ### 의존 모듈 목록
141
-
142
- <!-- 리팩토링 대상을 import / 사용하는 다른 모듈 -->
143
-
144
- | 모듈 | 영향 내용 | 대응 방안 |
145
- | ---- | --------- | --------- |
146
- | | | |
147
-
148
- ### 회귀 테스트 필요 영역
149
-
150
- - [ ]
151
-
152
- ---
153
-
154
- ## 8. 롤백 계획
155
-
156
- - 롤백 방법: Git 스펙 단위 커밋 되돌리기
157
- - 롤백 기준: 테스트 실패 / 예상치 못한 동작 변경 발생 시
158
-
159
- ---
160
-
161
- ## 9. 완료 정의 (Definition of Done)
162
-
163
- - [ ] 기존 테스트 전체 통과
164
- - [ ] 신규 추가 테스트(있다면) 통과
165
- - [ ] 테스트 커버리지 감소 없음
166
- - [ ] 외부 동작 변경 없음 확인
167
- - [ ] 코드 리뷰 승인
168
- - [ ] 측정 지표 목표치 달성
169
-
170
- ---
171
-
172
- ## 10. 참고 자료
173
-
174
- -