aiwf 0.3.0 → 0.3.1
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.
- package/CHANGELOG.md +38 -36
- package/CLAUDE.md +8 -209
- package/README.md +25 -5
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_docs.md +225 -0
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_language_manager.md +287 -0
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_language_status.md +246 -0
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_switch_language.md +160 -0
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_code_review.md +62 -62
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_commit.md +111 -111
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_general_task.md +106 -106
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_milestone_plan.md +127 -127
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_sprint_tasks.md +130 -130
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_sprints_from_milestone.md +87 -87
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_do_task.md +72 -72
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_docs.md +225 -0
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_initialize.md +86 -86
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_issue_create.md +3 -3
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_language_manager.md +287 -0
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_language_status.md +246 -0
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_pr_create.md +14 -14
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_prime.md +5 -5
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_project_review.md +39 -39
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_switch_language.md +160 -0
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_test.md +76 -77
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_testing_review.md +120 -120
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_ultrathink_general.md +209 -266
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_yolo.md +226 -226
- package/docs/AI-WORKFLOW.ko.md +9 -2
- package/docs/AI-WORKFLOW.md +9 -2
- package/docs/COMMANDS_GUIDE.ko.md +93 -3
- package/docs/COMMANDS_GUIDE.md +94 -4
- package/docs/Enhanced_Installation_Flow_Design.md +498 -0
- package/docs/PRD.ko.md +110 -58
- package/docs/PRD.md +110 -58
- package/index.js +1240 -20
- package/jest.config.js +4 -0
- package/language-cli.js +279 -0
- package/language-utils.js +330 -0
- package/package.json +12 -4
- package/scripts/validate-commands.cjs +338 -0
- package/scripts/validate-commands.js +254 -0
- package/tests/basic.test.js +62 -0
- package/tests/commands.test.js +127 -0
- package/tests/installer.test.js +129 -0
- package/tests/language-utils.test.js +271 -0
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_prime_context.md +0 -5
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_prime_context.md +0 -8
|
@@ -1,62 +1,62 @@
|
|
|
1
1
|
# 프로젝트 리뷰 - 탑 다운 실행
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
아키텍처, 진행 상황, 기술 결정에 초점을 맞춘 포괄적인 프로젝트 수준 리뷰를 수행합니다.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
**중요사항:**
|
|
6
6
|
|
|
7
|
-
-
|
|
8
|
-
-
|
|
7
|
+
- 이는 최근 변경 사항이 아닌 전체 프로젝트 상태에 대한 고수준 리뷰입니다.
|
|
8
|
+
- 프로젝트 문서에 명확히 언급되지 않은 한, 타임라인과 일정은 관련이 없습니다
|
|
9
9
|
|
|
10
|
-
##
|
|
10
|
+
## 정확히 다음 9개 항목으로 TODO 생성
|
|
11
11
|
|
|
12
|
-
1.
|
|
13
|
-
2.
|
|
14
|
-
3.
|
|
15
|
-
4.
|
|
16
|
-
5.
|
|
17
|
-
6.
|
|
18
|
-
7.
|
|
19
|
-
8.
|
|
20
|
-
9.
|
|
12
|
+
1. 리뷰 범위 및 타이밍 분석
|
|
13
|
+
2. 테스트 인프라 상태 실행 및 평가
|
|
14
|
+
3. 프로젝트 문서 정렬 평가
|
|
15
|
+
4. 마일스톤 및 스프린트 진행 상황 검토
|
|
16
|
+
5. 코드베이스 아키텍처 및 구조 분석
|
|
17
|
+
6. 파일 구성 및 워크플로우 준수 감사
|
|
18
|
+
7. 기술적 결정 및 복잡성 평가
|
|
19
|
+
8. 구현 품질 비평 (John Carmack 관점)
|
|
20
|
+
9. 권장 사항과 함께 포괄적인 평가 제공
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
단계별로 진행하며 각 단계에 대한 다음 지침을 엄격히 준수하세요.
|
|
23
23
|
|
|
24
|
-
##
|
|
24
|
+
## 모든 TODO 항목에 대한 세부사항
|
|
25
25
|
|
|
26
|
-
### 1.
|
|
26
|
+
### 1. 리뷰 범위 및 타이밍 분석
|
|
27
27
|
|
|
28
|
-
|
|
28
|
+
확인: <$ARGUMENTS>
|
|
29
29
|
|
|
30
|
-
|
|
30
|
+
비어있다면 전체 프로젝트 리뷰를 수행합니다. 그렇지 않으면 <$ARGUMENTS>를 해석하여 특정 초점 영역(마일스톤, 스프린트, 아키텍처 구성 요소 등)을 식별합니다. Argument에 명시되지 않은 한 `.aiwf/10_STATE_OF_PROJECT`의 이전 프로젝트 리뷰와 비교하지 마세요.
|
|
31
31
|
|
|
32
|
-
|
|
32
|
+
**중요:** 이 리뷰는 최근 변경사항의 맥락에서 전체 프로젝트 상태를 살펴봅니다.
|
|
33
33
|
|
|
34
|
-
|
|
34
|
+
**핵심:** `.aiwf/00_PROJECT_MANIFEST.md`를 **먼저** 읽어서 다음을 이해하세요:
|
|
35
35
|
|
|
36
|
-
-
|
|
37
|
-
-
|
|
38
|
-
-
|
|
36
|
+
- 현재 마일스톤 및 스프린트 상태
|
|
37
|
+
- 완료된 작업 vs 진행 중인 작업 vs 계획된 작업
|
|
38
|
+
- 활성 스프린트 목표 및 결과물
|
|
39
39
|
|
|
40
|
-
|
|
40
|
+
**맥락 확인:** 기능 평가 전에:
|
|
41
41
|
|
|
42
|
-
-
|
|
43
|
-
-
|
|
44
|
-
-
|
|
45
|
-
-
|
|
42
|
+
- `.aiwf/03_SPRINTS/`로 이동하여 현재 스프린트 찾기
|
|
43
|
+
- 스프린트 메타 파일을 읽어 범위 내에 있는 것 이해하기
|
|
44
|
+
- 스프린트 내에서 완료된 태스크 vs 계획된 태스크 확인
|
|
45
|
+
- 향후 스프린트가 제공할 내용 이해하기
|
|
46
46
|
|
|
47
|
-
|
|
47
|
+
**리뷰 원칙:** 전체 마일스톤 범위가 아닌 현재 스프린트 결과물에 대해 평가합니다.
|
|
48
48
|
|
|
49
|
-
### 2.
|
|
49
|
+
### 2. 테스트 인프라 상태 실행 및 평가
|
|
50
50
|
|
|
51
|
-
|
|
51
|
+
**핵심:** 테스트 인프라 상태는 스프린트/마일스톤 진행의 차단 기준입니다.
|
|
52
52
|
|
|
53
|
-
-
|
|
54
|
-
-
|
|
55
|
-
-
|
|
56
|
-
- 10: 100%
|
|
57
|
-
- 8-9: >95%
|
|
58
|
-
- 6-7: 80-95%
|
|
59
|
-
- 4-5: 60-80%
|
|
53
|
+
- 전체 테스트 스위트 실행을 위해 test.md 명령 사용 (@.claude/commands/aiwf/aiwf_test.md)
|
|
54
|
+
- 테스트 결과 분석: 통과/실패/건너뛴 개수 및 실패 카테고리
|
|
55
|
+
- 테스트 상태 점수 계산 (0-10 스케일):
|
|
56
|
+
- 10: 100% 통과율, 인프라 문제 없음
|
|
57
|
+
- 8-9: >95% 통과율, 사소한 문제만 있음
|
|
58
|
+
- 6-7: 80-95% 통과율, 일부 비핵심 실패
|
|
59
|
+
- 4-5: 60-80% 통과율, 중대한 문제
|
|
60
60
|
- 0-3: <60% pass rate, critical infrastructure problems
|
|
61
61
|
- CATEGORIZE failures:
|
|
62
62
|
- Infrastructure: Import errors, missing modules
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
# AIWF 언어 전환
|
|
2
|
+
|
|
3
|
+
사용자가 AIWF 프레임워크의 언어 설정을 변경할 수 있도록 하는 명령어입니다.
|
|
4
|
+
|
|
5
|
+
## 사용법
|
|
6
|
+
|
|
7
|
+
이 명령어는 다음과 같은 경우에 사용됩니다:
|
|
8
|
+
- 현재 언어 설정을 다른 언어로 변경하고 싶은 경우
|
|
9
|
+
- 언어 설정 상태를 확인하고 싶은 경우
|
|
10
|
+
- 언어 감지 문제를 해결하고 싶은 경우
|
|
11
|
+
|
|
12
|
+
## 파라미터
|
|
13
|
+
|
|
14
|
+
- `<언어코드>` (선택사항): 변경할 언어 (`ko` 또는 `en`)
|
|
15
|
+
- 파라미터 없이 실행하면 현재 언어 상태를 표시
|
|
16
|
+
|
|
17
|
+
## 실행 단계
|
|
18
|
+
|
|
19
|
+
### 1. 현재 언어 상태 확인
|
|
20
|
+
|
|
21
|
+
먼저 현재 언어 설정 상태를 확인합니다:
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
node -e "
|
|
25
|
+
import('./language-utils.js').then(async ({ getLanguageStatus }) => {
|
|
26
|
+
const status = await getLanguageStatus();
|
|
27
|
+
console.log('=== AIWF 언어 설정 상태 ===');
|
|
28
|
+
console.log('감지된 언어:', status.detectedLanguage);
|
|
29
|
+
console.log('설정된 언어:', status.configuredLanguage || '없음');
|
|
30
|
+
console.log('현재 사용 언어:', status.effectiveLanguage);
|
|
31
|
+
console.log('자동 감지:', status.autoDetect ? '활성화' : '비활성화');
|
|
32
|
+
console.log('폴백 언어:', status.fallbackLanguage);
|
|
33
|
+
console.log('설정 파일 경로:', status.configPath);
|
|
34
|
+
if (status.error) console.log('오류:', status.error);
|
|
35
|
+
});
|
|
36
|
+
"
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### 2. 인수 분석
|
|
40
|
+
|
|
41
|
+
`<$ARGUMENTS>` 값을 확인하여 다음 중 하나를 수행합니다:
|
|
42
|
+
|
|
43
|
+
- **인수 없음**: 현재 상태만 표시하고 종료
|
|
44
|
+
- **유효한 언어코드 (`ko` 또는 `en`)**: 해당 언어로 전환
|
|
45
|
+
- **무효한 인수**: 오류 메시지 표시 후 사용법 안내
|
|
46
|
+
|
|
47
|
+
### 3. 언어 전환 실행
|
|
48
|
+
|
|
49
|
+
유효한 언어코드가 제공된 경우 언어를 전환합니다:
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
node -e "
|
|
53
|
+
import('./language-utils.js').then(async ({ switchLanguage }) => {
|
|
54
|
+
const targetLanguage = process.argv[1];
|
|
55
|
+
const result = await switchLanguage(targetLanguage);
|
|
56
|
+
|
|
57
|
+
if (result.success) {
|
|
58
|
+
console.log('✅ 언어 전환 성공!');
|
|
59
|
+
console.log('이전 언어:', result.previousLanguage);
|
|
60
|
+
console.log('새 언어:', result.newLanguage);
|
|
61
|
+
console.log('메시지:', result.message);
|
|
62
|
+
} else {
|
|
63
|
+
console.error('❌ 언어 전환 실패:', result.error);
|
|
64
|
+
console.log('메시지:', result.message);
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
" -- $ARGUMENTS
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### 4. 전환 후 검증
|
|
71
|
+
|
|
72
|
+
언어 전환 후 설정이 제대로 적용되었는지 확인합니다:
|
|
73
|
+
|
|
74
|
+
```bash
|
|
75
|
+
node -e "
|
|
76
|
+
import('./language-utils.js').then(async ({ getLanguageStatus }) => {
|
|
77
|
+
const status = await getLanguageStatus();
|
|
78
|
+
console.log('\n=== 전환 후 언어 설정 상태 ===');
|
|
79
|
+
console.log('현재 사용 언어:', status.effectiveLanguage);
|
|
80
|
+
console.log('설정 파일:', status.configuredLanguage ? '저장됨' : '없음');
|
|
81
|
+
});
|
|
82
|
+
"
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
### 5. 명령어 경로 테스트
|
|
86
|
+
|
|
87
|
+
새 언어로 명령어 경로가 제대로 해결되는지 테스트합니다:
|
|
88
|
+
|
|
89
|
+
```bash
|
|
90
|
+
node -e "
|
|
91
|
+
import('./language-utils.js').then(async ({ resolveCommandPath, detectLanguage }) => {
|
|
92
|
+
const currentLang = await detectLanguage();
|
|
93
|
+
const testCommands = ['aiwf_do_task', 'aiwf_commit', 'aiwf_initialize'];
|
|
94
|
+
|
|
95
|
+
console.log('\n=== 명령어 경로 테스트 ===');
|
|
96
|
+
console.log('현재 언어:', currentLang);
|
|
97
|
+
|
|
98
|
+
for (const cmd of testCommands) {
|
|
99
|
+
const result = await resolveCommandPath(cmd);
|
|
100
|
+
if (result.path) {
|
|
101
|
+
console.log('✅', cmd, '->', result.path, result.fallback ? '(폴백)' : '(직접)');
|
|
102
|
+
} else {
|
|
103
|
+
console.log('❌', cmd, '-> 찾을 수 없음:', result.error);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
"
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
## 출력 형식
|
|
111
|
+
|
|
112
|
+
### 성공적인 언어 전환
|
|
113
|
+
```
|
|
114
|
+
✅ 언어 전환 성공!
|
|
115
|
+
이전 언어: en
|
|
116
|
+
새 언어: ko
|
|
117
|
+
메시지: 언어가 성공적으로 변경되었습니다
|
|
118
|
+
|
|
119
|
+
=== 전환 후 언어 설정 상태 ===
|
|
120
|
+
현재 사용 언어: ko
|
|
121
|
+
설정 파일: 저장됨
|
|
122
|
+
|
|
123
|
+
=== 명령어 경로 테스트 ===
|
|
124
|
+
현재 언어: ko
|
|
125
|
+
✅ aiwf_do_task -> claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_do_task.md (직접)
|
|
126
|
+
✅ aiwf_commit -> claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_commit.md (직접)
|
|
127
|
+
✅ aiwf_initialize -> claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_initialize.md (직접)
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
### 현재 상태 확인만 수행
|
|
131
|
+
```
|
|
132
|
+
=== AIWF 언어 설정 상태 ===
|
|
133
|
+
감지된 언어: ko
|
|
134
|
+
설정된 언어: ko
|
|
135
|
+
현재 사용 언어: ko
|
|
136
|
+
자동 감지: 활성화
|
|
137
|
+
폴백 언어: en
|
|
138
|
+
설정 파일 경로: .aiwf/config/language.json
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
### 오류 발생 시
|
|
142
|
+
```
|
|
143
|
+
❌ 언어 전환 실패: 지원되지 않는 언어입니다
|
|
144
|
+
메시지: 언어 변경에 실패했습니다
|
|
145
|
+
|
|
146
|
+
사용법: /project:aiwf:switch_language [ko|en]
|
|
147
|
+
지원 언어: ko (한국어), en (English)
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
## 주의사항
|
|
151
|
+
|
|
152
|
+
1. **설정 파일 권한**: `.aiwf/config/` 디렉토리에 쓰기 권한이 필요합니다
|
|
153
|
+
2. **명령어 파일 존재**: 전환하려는 언어의 명령어 파일들이 존재해야 합니다
|
|
154
|
+
3. **프로젝트 루트**: AIWF가 초기화된 프로젝트에서만 사용 가능합니다
|
|
155
|
+
|
|
156
|
+
## 관련 명령어
|
|
157
|
+
|
|
158
|
+
- `/project:aiwf:initialize` - AIWF 프로젝트 초기화
|
|
159
|
+
- `/project:aiwf:update_docs` - 문서 업데이트 (언어별)
|
|
160
|
+
- `/project:aiwf:help` - 도움말 (현재 언어로 표시)
|
|
@@ -1,125 +1,124 @@
|
|
|
1
1
|
# 테스트 실행 및 일반적인 문제 수정
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
다음 지시사항을 위에서 아래로 순서대로 따르세요.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## 정확히 다음 4개 항목으로 TODO 생성
|
|
6
6
|
|
|
7
|
-
1.
|
|
8
|
-
2.
|
|
9
|
-
3.
|
|
10
|
-
4.
|
|
7
|
+
1. 테스트 스위트 실행
|
|
8
|
+
2. 결과 분석 및 문제 식별
|
|
9
|
+
3. 발견된 일반적인 문제 수정
|
|
10
|
+
4. 테스트 요약 제공
|
|
11
11
|
|
|
12
12
|
---
|
|
13
13
|
|
|
14
|
-
## 1 ·
|
|
14
|
+
## 1 · 테스트 스위트 실행
|
|
15
15
|
|
|
16
|
-
###
|
|
16
|
+
### 먼저 프로젝트의 테스트 러너 감지:
|
|
17
17
|
|
|
18
|
-
1. **Python
|
|
18
|
+
1. **Python 프로젝트:**
|
|
19
19
|
|
|
20
|
-
-
|
|
21
|
-
-
|
|
22
|
-
-
|
|
23
|
-
-
|
|
20
|
+
- `[tool.poetry]`가 있는 `pyproject.toml`이 존재하면: `poetry run pytest` 시도
|
|
21
|
+
- `setup.py` 또는 `requirements.txt`가 있으면: `pytest` 또는 `python -m pytest` 시도
|
|
22
|
+
- 커스텀 테스트 스크립트 존재시 (예: `run_tests.py`, `run_dev.py`): 해당 스크립트 사용
|
|
23
|
+
- 일반적인 플래그 추가: pytest용 `--tb=short`
|
|
24
24
|
|
|
25
|
-
2. **JavaScript/TypeScript
|
|
25
|
+
2. **JavaScript/TypeScript 프로젝트:**
|
|
26
26
|
|
|
27
|
-
-
|
|
28
|
-
-
|
|
29
|
-
-
|
|
27
|
+
- `package.json`이 존재하면: "scripts" 섹션에서 "test" 명령어 확인
|
|
28
|
+
- 일반적인 명령어: `npm test`, `npm run test`, `yarn test`, `pnpm test`
|
|
29
|
+
- 프레임워크별: `jest`, `vitest`, `mocha`
|
|
30
30
|
|
|
31
|
-
3.
|
|
31
|
+
3. **기타 언어:**
|
|
32
32
|
- Rust: `cargo test`
|
|
33
33
|
- Go: `go test ./...`
|
|
34
|
-
- Java: `mvn test`
|
|
35
|
-
- Ruby: `bundle exec rspec`
|
|
36
|
-
- PHP: `composer test`
|
|
34
|
+
- Java: `mvn test` 또는 `gradle test`
|
|
35
|
+
- Ruby: `bundle exec rspec` 또는 `rake test`
|
|
36
|
+
- PHP: `composer test` 또는 `phpunit`
|
|
37
37
|
|
|
38
|
-
###
|
|
38
|
+
### 감지된 테스트 명령어 실행:
|
|
39
39
|
|
|
40
|
-
-
|
|
41
|
-
-
|
|
42
|
-
-
|
|
40
|
+
- 적절한 테스트 명령어 실행
|
|
41
|
+
- 오류를 포함한 전체 출력 캡처
|
|
42
|
+
- 실행 시간 및 테스트 개수 기록
|
|
43
43
|
|
|
44
|
-
|
|
44
|
+
**테스트 러너를 찾을 수 없는 경우:** 사용자에게 보고하고 올바른 테스트 명령어 요청
|
|
45
45
|
|
|
46
|
-
## 2 ·
|
|
46
|
+
## 2 · 결과 분석 및 문제 식별
|
|
47
47
|
|
|
48
|
-
|
|
48
|
+
다음 순서로 일반적인 문제 확인:
|
|
49
49
|
|
|
50
|
-
###
|
|
50
|
+
### 언어별 문제:
|
|
51
51
|
|
|
52
52
|
**Python:**
|
|
53
53
|
|
|
54
|
-
-
|
|
55
|
-
- Import
|
|
56
|
-
- Fixture
|
|
57
|
-
-
|
|
54
|
+
- **__init__.py** 파일 누락 (import 오류, 테스트 미발견)
|
|
55
|
+
- Import 경로 문제
|
|
56
|
+
- Fixture 문제 (pytest)
|
|
57
|
+
- 가상 환경 문제
|
|
58
58
|
|
|
59
59
|
**JavaScript/TypeScript:**
|
|
60
60
|
|
|
61
|
-
-
|
|
62
|
-
-
|
|
63
|
-
- Jest/Vitest
|
|
64
|
-
- TypeScript
|
|
61
|
+
- 모듈 해결 오류
|
|
62
|
+
- node_modules의 의존성 누락
|
|
63
|
+
- Jest/Vitest 구성 문제
|
|
64
|
+
- TypeScript 컴파일 오류
|
|
65
65
|
|
|
66
|
-
|
|
66
|
+
**모든 언어 공통:**
|
|
67
67
|
|
|
68
|
-
-
|
|
69
|
-
-
|
|
70
|
-
-
|
|
71
|
-
-
|
|
68
|
+
- 환경 변수 문제 (구성 누락)
|
|
69
|
+
- 데이터베이스/외부 서비스 연결 오류
|
|
70
|
+
- 파일 경로 문제 (절대 경로 vs 상대 경로)
|
|
71
|
+
- 권한 문제
|
|
72
72
|
|
|
73
|
-
## 3 ·
|
|
73
|
+
## 3 · 발견된 일반적인 문제 수정
|
|
74
74
|
|
|
75
|
-
|
|
75
|
+
**오직** 다음 특정 문제들만 자동으로 수정:**
|
|
76
76
|
|
|
77
|
-
### Python
|
|
77
|
+
### Python 전용 수정:
|
|
78
78
|
|
|
79
|
-
-
|
|
80
|
-
-
|
|
81
|
-
-
|
|
79
|
+
- 필요한 곳에 빈 `__init__.py` 파일 생성
|
|
80
|
+
- 간단한 import 경로 문제 수정
|
|
81
|
+
- 필요한 경우 Python 경로에 누락된 테스트 디렉토리 추가
|
|
82
82
|
|
|
83
|
-
### JavaScript/TypeScript
|
|
83
|
+
### JavaScript/TypeScript 수정:
|
|
84
84
|
|
|
85
|
-
-
|
|
86
|
-
-
|
|
87
|
-
-
|
|
85
|
+
- node_modules가 누락된 경우 `npm install` 실행
|
|
86
|
+
- jest.config.js의 간단한 모듈 해결 문제 수정
|
|
87
|
+
- 누락된 테스트 설정 파일 생성
|
|
88
88
|
|
|
89
|
-
###
|
|
89
|
+
### 일반 수정:
|
|
90
90
|
|
|
91
|
-
-
|
|
92
|
-
-
|
|
93
|
-
-
|
|
91
|
+
- 누락된 테스트 디렉토리 생성
|
|
92
|
+
- 가능한 경우 파일 권한 수정
|
|
93
|
+
- 누락된 환경 변수 식별 및 사용자에게 알림
|
|
94
94
|
|
|
95
|
-
|
|
95
|
+
**수정하지 않을 것:**
|
|
96
96
|
|
|
97
|
-
-
|
|
98
|
-
-
|
|
99
|
-
-
|
|
100
|
-
-
|
|
101
|
-
-
|
|
97
|
+
- 실제 테스트 로직 실패
|
|
98
|
+
- 비즈니스 로직 버그
|
|
99
|
+
- 복잡한 구성 문제
|
|
100
|
+
- 데이터베이스 스키마 문제
|
|
101
|
+
- 외부 서비스 의존성
|
|
102
102
|
|
|
103
|
-
## 4 ·
|
|
103
|
+
## 4 · 테스트 요약 제공
|
|
104
104
|
|
|
105
|
-
|
|
105
|
+
간단한 요약 생성:
|
|
106
106
|
|
|
107
107
|
```
|
|
108
|
-
|
|
109
|
-
-
|
|
110
|
-
-
|
|
111
|
-
-
|
|
112
|
-
-
|
|
113
|
-
-
|
|
108
|
+
테스트 결과:
|
|
109
|
+
- 총 개수: X개 테스트
|
|
110
|
+
- 통과: Y개 (Z%)
|
|
111
|
+
- 실패: A개
|
|
112
|
+
- 건너뜀: B개
|
|
113
|
+
- 시간: C초
|
|
114
114
|
|
|
115
|
-
|
|
116
|
-
- [
|
|
115
|
+
수정된 문제:
|
|
116
|
+
- [적용된 수정사항 목록]
|
|
117
117
|
|
|
118
|
-
|
|
119
|
-
- [
|
|
118
|
+
발견된 문제 (수동 수정 필요):
|
|
119
|
+
- [주의가 필요한 문제 목록]
|
|
120
120
|
|
|
121
|
-
|
|
121
|
+
상태: PASSING | FAILING | BLOCKED
|
|
122
122
|
```
|
|
123
123
|
|
|
124
|
-
|
|
125
|
-
EOF < /dev/null
|
|
124
|
+
**중요:** 간결하게 유지하세요. 이 명령어는 빠르고 테스트 실행에 집중해야 하며, 상세한 분석에 집중하지 않아야 합니다.
|