@su-record/vibe 2.0.11 → 2.2.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.
Files changed (60) hide show
  1. package/.claude/settings.json +1 -1
  2. package/.claude/settings.local.json +5 -1
  3. package/{.vibe → .claude/vibe}/rules/quality/bdd-contract-testing.md +1 -1
  4. package/{.vibe → .claude/vibe}/setup.sh +1 -1
  5. package/CLAUDE.md +16 -6
  6. package/README.md +33 -15
  7. package/dist/cli/index.d.ts.map +1 -1
  8. package/dist/cli/index.js +100 -56
  9. package/dist/cli/index.js.map +1 -1
  10. package/dist/tools/reasoning/applyReasoningFramework.js +1 -1
  11. package/package.json +1 -2
  12. package/templates/feature-template.md +1 -1
  13. package/.claude/agents/explorer.md +0 -48
  14. package/.claude/agents/implementer.md +0 -53
  15. package/.claude/agents/research/best-practices-agent.md +0 -139
  16. package/.claude/agents/research/codebase-patterns-agent.md +0 -147
  17. package/.claude/agents/research/framework-docs-agent.md +0 -181
  18. package/.claude/agents/research/security-advisory-agent.md +0 -167
  19. package/.claude/agents/review/architecture-reviewer.md +0 -107
  20. package/.claude/agents/review/complexity-reviewer.md +0 -116
  21. package/.claude/agents/review/data-integrity-reviewer.md +0 -88
  22. package/.claude/agents/review/git-history-reviewer.md +0 -103
  23. package/.claude/agents/review/performance-reviewer.md +0 -86
  24. package/.claude/agents/review/python-reviewer.md +0 -152
  25. package/.claude/agents/review/rails-reviewer.md +0 -139
  26. package/.claude/agents/review/react-reviewer.md +0 -144
  27. package/.claude/agents/review/security-reviewer.md +0 -80
  28. package/.claude/agents/review/simplicity-reviewer.md +0 -140
  29. package/.claude/agents/review/test-coverage-reviewer.md +0 -116
  30. package/.claude/agents/review/typescript-reviewer.md +0 -127
  31. package/.claude/agents/searcher.md +0 -54
  32. package/.claude/agents/simplifier.md +0 -119
  33. package/.claude/agents/tester.md +0 -49
  34. package/.claude/commands/vibe.analyze.md +0 -239
  35. package/.claude/commands/vibe.compound.md +0 -261
  36. package/.claude/commands/vibe.continue.md +0 -88
  37. package/.claude/commands/vibe.diagram.md +0 -178
  38. package/.claude/commands/vibe.e2e.md +0 -266
  39. package/.claude/commands/vibe.reason.md +0 -306
  40. package/.claude/commands/vibe.review.md +0 -324
  41. package/.claude/commands/vibe.run.md +0 -760
  42. package/.claude/commands/vibe.spec.md +0 -383
  43. package/.claude/commands/vibe.tool.md +0 -153
  44. package/.claude/commands/vibe.ui.md +0 -137
  45. package/.claude/commands/vibe.verify.md +0 -238
  46. package/.claude/skills/git-worktree.md +0 -178
  47. package/.claude/skills/priority-todos.md +0 -236
  48. /package/{.vibe → .claude/vibe}/config.json +0 -0
  49. /package/{.vibe → .claude/vibe}/constitution.md +0 -0
  50. /package/{.vibe → .claude/vibe}/rules/core/communication-guide.md +0 -0
  51. /package/{.vibe → .claude/vibe}/rules/core/development-philosophy.md +0 -0
  52. /package/{.vibe → .claude/vibe}/rules/core/quick-start.md +0 -0
  53. /package/{.vibe → .claude/vibe}/rules/quality/checklist.md +0 -0
  54. /package/{.vibe → .claude/vibe}/rules/quality/testing-strategy.md +0 -0
  55. /package/{.vibe → .claude/vibe}/rules/standards/anti-patterns.md +0 -0
  56. /package/{.vibe → .claude/vibe}/rules/standards/code-structure.md +0 -0
  57. /package/{.vibe → .claude/vibe}/rules/standards/complexity-metrics.md +0 -0
  58. /package/{.vibe → .claude/vibe}/rules/standards/naming-conventions.md +0 -0
  59. /package/{.vibe → .claude/vibe}/rules/tools/mcp-hi-ai-guide.md +0 -0
  60. /package/{.vibe → .claude/vibe}/rules/tools/mcp-workflow.md +0 -0
@@ -1,238 +0,0 @@
1
- ---
2
- description: Verify implementation against SPEC requirements
3
- argument-hint: "feature name"
4
- ---
5
-
6
- # /vibe.verify
7
-
8
- **품질 검증 자동화** - 비개발자도 품질을 신뢰할 수 있도록.
9
-
10
- > 모든 시나리오 통과 = 품질 보장
11
-
12
- ## Usage
13
-
14
- ```
15
- /vibe.verify "feature-name"
16
- ```
17
-
18
- ## 핵심 원칙
19
-
20
- ```
21
- ┌─────────────────────────────────────────────────────────────────┐
22
- │ 비개발자가 알아야 할 것 │
23
- │ │
24
- │ ✅ 시나리오 4/4 통과 │
25
- │ 📈 품질 점수: 94/100 │
26
- │ │
27
- │ 이것만 보면 됨. 나머지는 시스템이 알아서. │
28
- └─────────────────────────────────────────────────────────────────┘
29
- ```
30
-
31
- ## Process
32
-
33
- ### 1. Load Feature File
34
-
35
- ```
36
- 📄 .vibe/features/{feature-name}.feature → 시나리오 목록
37
- 📄 .vibe/specs/{feature-name}.md → 검증 기준 (참조)
38
- ```
39
-
40
- **Feature 파일이 없으면**:
41
- ```
42
- ❌ Feature 파일이 없습니다.
43
- 먼저 /vibe.spec "{feature-name}"을 실행하세요.
44
- ```
45
-
46
- ### 2. Scenario-by-Scenario Verification
47
-
48
- 각 시나리오별 자동 검증:
49
-
50
- ```
51
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
52
- 🔍 Scenario 1/4: 유효한 로그인 성공
53
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
54
-
55
- Given: 사용자가 등록되어 있다
56
- → 검증: 사용자 생성 API 존재? ✅
57
- → 검증: 테스트 사용자 데이터? ✅
58
-
59
- When: 유효한 이메일과 비밀번호로 로그인
60
- → 검증: POST /login 엔드포인트? ✅
61
- → 검증: 요청 처리 로직? ✅
62
-
63
- Then: 로그인 성공 + JWT 토큰 반환
64
- → 검증: 성공 응답 코드 200? ✅
65
- → 검증: JWT 토큰 포함? ✅
66
-
67
- ✅ Scenario 1 통과!
68
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
69
- ```
70
-
71
- ### 3. Verification Methods (자동 선택)
72
-
73
- | 방법 | 조건 | 검증 내용 |
74
- |------|------|-----------|
75
- | **테스트 실행** | 테스트 파일 존재 시 | `npm test`, `pytest` 등 실행 |
76
- | **코드 분석** | 항상 | 구현 여부, 로직 확인 |
77
- | **빌드 검증** | 빌드 스크립트 존재 시 | 컴파일 에러 확인 |
78
- | **타입 검사** | TypeScript 등 | 타입 에러 확인 |
79
-
80
- ### 4. Quality Report (자동 생성)
81
-
82
- ```
83
- ┌─────────────────────────────────────────────────────────────────┐
84
- │ 📊 VERIFICATION REPORT: login │
85
- ├─────────────────────────────────────────────────────────────────┤
86
- │ │
87
- │ ✅ 시나리오: 4/4 통과 (100%) │
88
- │ │
89
- │ ┌───────────────────────────────────────────────────────────┐ │
90
- │ │ # │ Scenario │ Given │ When │ Then │ Status │ │
91
- │ │───│───────────────────────│───────│──────│──────│────────│ │
92
- │ │ 1 │ 유효한 로그인 성공 │ ✅ │ ✅ │ ✅ │ ✅ │ │
93
- │ │ 2 │ 잘못된 비밀번호 에러 │ ✅ │ ✅ │ ✅ │ ✅ │ │
94
- │ │ 3 │ 이메일 형식 검증 │ ✅ │ ✅ │ ✅ │ ✅ │ │
95
- │ │ 4 │ 비밀번호 찾기 링크 │ ✅ │ ✅ │ ✅ │ ✅ │ │
96
- │ └───────────────────────────────────────────────────────────┘ │
97
- │ │
98
- │ 📈 품질 점수: 94/100 │
99
- │ │
100
- │ ┌─────────────────────────────────────────────────────────┐ │
101
- │ │ 항목 │ 결과 │ 상세 │ │
102
- │ │───────────────────│───────│─────────────────────────────│ │
103
- │ │ 빌드 │ ✅ │ 성공 │ │
104
- │ │ 테스트 │ ✅ │ 12/12 통과 │ │
105
- │ │ 타입 검사 │ ✅ │ 에러 0개 │ │
106
- │ │ 복잡도 │ ✅ │ 모든 함수 ≤20줄 │ │
107
- │ │ 코드 커버리지 │ ⚠️ │ 78% (목표: 80%) │ │
108
- │ └─────────────────────────────────────────────────────────┘ │
109
- │ │
110
- │ 📋 권장 사항: │
111
- │ - 코드 커버리지 2% 추가 필요 (auth.service.ts line 45-52) │
112
- │ │
113
- └─────────────────────────────────────────────────────────────────┘
114
- ```
115
-
116
- ### 실패 시 리포트
117
-
118
- ```
119
- ┌─────────────────────────────────────────────────────────────────┐
120
- │ 📊 VERIFICATION REPORT: login │
121
- ├─────────────────────────────────────────────────────────────────┤
122
- │ │
123
- │ ❌ 시나리오: 3/4 통과 (75%) │
124
- │ │
125
- │ ┌───────────────────────────────────────────────────────────┐ │
126
- │ │ # │ Scenario │ Given │ When │ Then │ Status │ │
127
- │ │───│───────────────────────│───────│──────│──────│────────│ │
128
- │ │ 1 │ 유효한 로그인 성공 │ ✅ │ ✅ │ ✅ │ ✅ │ │
129
- │ │ 2 │ 잘못된 비밀번호 에러 │ ✅ │ ✅ │ ✅ │ ✅ │ │
130
- │ │ 3 │ 이메일 형식 검증 │ ✅ │ ✅ │ ✅ │ ✅ │ │
131
- │ │ 4 │ 비밀번호 찾기 링크 │ ✅ │ ❌ │ - │ ❌ │ │
132
- │ └───────────────────────────────────────────────────────────┘ │
133
- │ │
134
- │ ❌ 실패 상세: │
135
- │ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ │
136
- │ Scenario 4: 비밀번호 찾기 링크 │
137
- │ │
138
- │ When: "비밀번호 찾기" 클릭 │
139
- │ ❌ 문제: 링크가 구현되지 않음 │
140
- │ 📍 위치: LoginForm.tsx line 42 │
141
- │ 💡 수정: "Forgot password" 링크 추가 필요 │
142
- │ │
143
- │ 🔧 자동 수정 실행: /vibe.run "login" --fix │
144
- │ │
145
- └─────────────────────────────────────────────────────────────────┘
146
- ```
147
-
148
- ## Input
149
-
150
- - `.vibe/features/{feature-name}.feature` - BDD scenarios
151
- - `.vibe/specs/{feature-name}.md` - SPEC document (reference)
152
- - Implemented source code
153
-
154
- ## Output
155
-
156
- - Verification result report (terminal output)
157
- - Passed/failed scenario list
158
- - Items needing fixes
159
-
160
- ## Example
161
-
162
- ```
163
- User: /vibe.verify "login"
164
-
165
- Claude:
166
- 📄 Loading Feature: .vibe/features/login.feature
167
- 🔍 검증 시작...
168
-
169
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
170
- 🔍 Scenario 1/4: 유효한 로그인 성공
171
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
172
- ✅ Given: 사용자 등록 - OK
173
- ✅ When: 로그인 시도 - OK
174
- ✅ Then: JWT 토큰 반환 - OK
175
- ✅ 통과!
176
-
177
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
178
- 🔍 Scenario 2/4: 잘못된 비밀번호 에러
179
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
180
- ✅ Given: OK
181
- ✅ When: OK
182
- ✅ Then: OK
183
- ✅ 통과!
184
-
185
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
186
- 🔍 Scenario 3/4: 이메일 형식 검증
187
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
188
- ✅ Given: OK
189
- ✅ When: OK
190
- ✅ Then: OK
191
- ✅ 통과!
192
-
193
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
194
- 🔍 Scenario 4/4: 비밀번호 찾기 링크
195
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
196
- ✅ Given: OK
197
- ❌ When: "비밀번호 찾기" 링크 - 없음
198
- - Then: (스킵)
199
- ❌ 실패!
200
-
201
- ┌─────────────────────────────────────────────────────────────────┐
202
- │ 📊 VERIFICATION REPORT: login │
203
- ├─────────────────────────────────────────────────────────────────┤
204
- │ │
205
- │ ❌ 시나리오: 3/4 통과 (75%) │
206
- │ │
207
- │ | # | Scenario | Status | │
208
- │ |---|───────────────────────|────────| │
209
- │ | 1 | 유효한 로그인 성공 | ✅ | │
210
- │ | 2 | 잘못된 비밀번호 에러 | ✅ | │
211
- │ | 3 | 이메일 형식 검증 | ✅ | │
212
- │ | 4 | 비밀번호 찾기 링크 | ❌ | │
213
- │ │
214
- │ 📈 품질 점수: 75/100 │
215
- │ │
216
- │ ❌ 수정 필요: │
217
- │ - Scenario 4: LoginForm.tsx에 "Forgot password" 링크 추가 │
218
- │ │
219
- │ 🔧 자동 수정: /vibe.run "login" --fix │
220
- │ │
221
- └─────────────────────────────────────────────────────────────────┘
222
- ```
223
-
224
- ## Next Step
225
-
226
- On verification pass:
227
- ```
228
- Complete! Proceed to next feature.
229
- ```
230
-
231
- On verification fail:
232
- ```
233
- /vibe.run "feature-name" --fix # Fix failed scenarios
234
- ```
235
-
236
- ---
237
-
238
- ARGUMENTS: $ARGUMENTS
@@ -1,178 +0,0 @@
1
- # Git Worktree Skill
2
-
3
- Git Worktree를 활용한 병렬 브랜치 작업 스킬
4
-
5
- ## Overview
6
-
7
- 메인 작업을 중단하지 않고 다른 브랜치에서 리뷰/테스트 수행
8
-
9
- ## Usage
10
-
11
- ```bash
12
- # Worktree 생성
13
- git worktree add ../review-pr123 pr/123
14
-
15
- # 해당 디렉토리에서 작업
16
- cd ../review-pr123
17
- npm test
18
-
19
- # 작업 완료 후 정리
20
- git worktree remove ../review-pr123
21
- ```
22
-
23
- ## Commands
24
-
25
- ### Create Worktree
26
-
27
- ```bash
28
- # PR 리뷰용 worktree
29
- git worktree add ../review-{pr_number} origin/pr/{pr_number}
30
-
31
- # 특정 브랜치 worktree
32
- git worktree add ../feature-work feature/new-feature
33
-
34
- # 새 브랜치로 worktree
35
- git worktree add -b hotfix/urgent ../hotfix main
36
- ```
37
-
38
- ### List Worktrees
39
-
40
- ```bash
41
- git worktree list
42
- # /path/to/main abc1234 [main]
43
- # /path/to/review-123 def5678 [pr/123]
44
- ```
45
-
46
- ### Remove Worktree
47
-
48
- ```bash
49
- # 정상 제거
50
- git worktree remove ../review-123
51
-
52
- # 강제 제거 (uncommitted changes 무시)
53
- git worktree remove --force ../review-123
54
-
55
- # Prune stale worktrees
56
- git worktree prune
57
- ```
58
-
59
- ## Workflow Integration
60
-
61
- ### PR Review Workflow
62
-
63
- ```
64
- ┌─────────────────────────────────────────────────────────────────┐
65
- │ /vibe.review PR#123 │
66
- ├─────────────────────────────────────────────────────────────────┤
67
- │ │
68
- │ 1. git worktree add ../review-123 origin/pr/123 │
69
- │ 2. cd ../review-123 │
70
- │ 3. npm install && npm test │
71
- │ 4. Run parallel review agents │
72
- │ 5. Generate review report │
73
- │ 6. cd - && git worktree remove ../review-123 │
74
- │ │
75
- └─────────────────────────────────────────────────────────────────┘
76
- ```
77
-
78
- ### Hotfix Workflow
79
-
80
- ```
81
- ┌─────────────────────────────────────────────────────────────────┐
82
- │ Urgent hotfix while working on feature │
83
- ├─────────────────────────────────────────────────────────────────┤
84
- │ │
85
- │ # Keep feature work intact │
86
- │ git worktree add -b hotfix/critical ../hotfix main │
87
- │ cd ../hotfix │
88
- │ │
89
- │ # Fix and deploy │
90
- │ vim src/bug.py │
91
- │ git commit -am "fix: critical bug" │
92
- │ git push origin hotfix/critical │
93
- │ │
94
- │ # Return to feature │
95
- │ cd - && git worktree remove ../hotfix │
96
- │ │
97
- └─────────────────────────────────────────────────────────────────┘
98
- ```
99
-
100
- ## Benefits
101
-
102
- 1. **No Stash Needed**: 현재 작업 그대로 유지
103
- 2. **Full Codebase**: 각 worktree는 완전한 코드베이스
104
- 3. **Parallel Work**: 여러 브랜치 동시 작업
105
- 4. **Clean Testing**: 격리된 환경에서 테스트
106
-
107
- ## Best Practices
108
-
109
- ### Naming Convention
110
-
111
- ```bash
112
- # PR 리뷰
113
- ../review-{pr_number}
114
-
115
- # 핫픽스
116
- ../hotfix-{issue_number}
117
-
118
- # 실험
119
- ../experiment-{feature_name}
120
- ```
121
-
122
- ### Cleanup
123
-
124
- ```bash
125
- # 정기 정리
126
- git worktree prune
127
-
128
- # 모든 worktree 확인
129
- git worktree list
130
-
131
- # 스크립트로 자동 정리
132
- for wt in $(git worktree list --porcelain | grep worktree | cut -d' ' -f2); do
133
- if [[ $wt == *"review-"* ]] || [[ $wt == *"hotfix-"* ]]; then
134
- git worktree remove "$wt" 2>/dev/null || true
135
- fi
136
- done
137
- ```
138
-
139
- ### Integration with CI/CD
140
-
141
- ```yaml
142
- # GitHub Actions example
143
- - name: Setup Review Worktree
144
- run: |
145
- git fetch origin pull/${{ github.event.pull_request.number }}/head:pr-${{ github.event.pull_request.number }}
146
- git worktree add ../review pr-${{ github.event.pull_request.number }}
147
-
148
- - name: Run Tests in Worktree
149
- working-directory: ../review
150
- run: npm test
151
-
152
- - name: Cleanup
153
- run: git worktree remove ../review
154
- ```
155
-
156
- ## Troubleshooting
157
-
158
- ### "already checked out" Error
159
-
160
- ```bash
161
- # 해결: 해당 브랜치가 다른 worktree에 있음
162
- git worktree list # 확인
163
- git worktree remove <path> # 제거
164
- ```
165
-
166
- ### Locked Worktree
167
-
168
- ```bash
169
- # 해결: 잠긴 worktree 해제
170
- git worktree unlock <path>
171
- ```
172
-
173
- ### Stale Worktree
174
-
175
- ```bash
176
- # 해결: 삭제된 디렉토리 정리
177
- git worktree prune
178
- ```
@@ -1,236 +0,0 @@
1
- # Priority-Based Todo Management Skill
2
-
3
- 우선순위 기반 TODO 관리 시스템
4
-
5
- ## Overview
6
-
7
- P1/P2/P3 우선순위로 태스크를 분류하여 중요한 것 먼저 처리
8
-
9
- ## Priority Levels
10
-
11
- ```
12
- ┌─────────────────────────────────────────────────────────────────┐
13
- │ Priority Levels │
14
- ├─────────────────────────────────────────────────────────────────┤
15
- │ │
16
- │ 🔴 P1 (Critical) │
17
- │ ├── 보안 취약점 │
18
- │ ├── 데이터 손실 위험 │
19
- │ ├── 프로덕션 장애 │
20
- │ └── 머지 차단 이슈 │
21
- │ │
22
- │ 🟡 P2 (Important) │
23
- │ ├── 성능 문제 │
24
- │ ├── 테스트 누락 │
25
- │ ├── 아키텍처 위반 │
26
- │ └── 기술 부채 │
27
- │ │
28
- │ 🔵 P3 (Nice-to-have) │
29
- │ ├── 코드 스타일 │
30
- │ ├── 리팩토링 제안 │
31
- │ ├── 문서화 │
32
- │ └── 최적화 기회 │
33
- │ │
34
- └─────────────────────────────────────────────────────────────────┘
35
- ```
36
-
37
- ## File-Based Todo System
38
-
39
- ### Directory Structure
40
-
41
- ```
42
- .vibe/todos/
43
- ├── P1-security-sql-injection.md
44
- ├── P1-data-transaction-missing.md
45
- ├── P2-perf-n1-query.md
46
- ├── P2-test-missing-edge-case.md
47
- ├── P2-arch-circular-dependency.md
48
- ├── P3-style-extract-helper.md
49
- ├── P3-docs-add-readme.md
50
- └── index.md
51
- ```
52
-
53
- ### Todo File Format
54
-
55
- ```markdown
56
- # [P1] SQL Injection Vulnerability
57
-
58
- ## Summary
59
- User input directly concatenated in SQL query without sanitization.
60
-
61
- ## Priority Justification
62
- - 🔴 P1 (Critical)
63
- - Category: Security
64
- - Impact: High (data breach risk)
65
- - Effort: Low (simple fix)
66
-
67
- ## Location
68
- - **File**: src/api/users.py
69
- - **Line**: 42-45
70
- - **Function**: `get_user_by_email()`
71
-
72
- ## Current Code
73
- ```python
74
- def get_user_by_email(email: str):
75
- query = f"SELECT * FROM users WHERE email = '{email}'"
76
- return db.execute(query)
77
- ```
78
-
79
- ## Suggested Fix
80
- ```python
81
- def get_user_by_email(email: str):
82
- query = "SELECT * FROM users WHERE email = %s"
83
- return db.execute(query, (email,))
84
- ```
85
-
86
- ## Checklist
87
- - [ ] Fix implemented
88
- - [ ] Unit test added
89
- - [ ] Security test added
90
- - [ ] Code reviewed
91
- - [ ] Merged
92
-
93
- ## References
94
- - OWASP SQL Injection: https://owasp.org/www-community/attacks/SQL_Injection
95
- - Project Security Guide: docs/security.md
96
-
97
- ## Metadata
98
- - Created: 2026-01-11
99
- - Author: Claude
100
- - Review: /vibe.review PR#123
101
- ```
102
-
103
- ### Index File
104
-
105
- ```markdown
106
- # Todo Index
107
-
108
- ## Summary
109
- | Priority | Count | Status |
110
- |----------|-------|--------|
111
- | 🔴 P1 | 2 | 🚨 Blocks merge |
112
- | 🟡 P2 | 5 | ⚠️ Should fix |
113
- | 🔵 P3 | 3 | 💡 Backlog |
114
-
115
- ## 🔴 P1 Critical (Blocks Merge)
116
-
117
- | # | Title | Location | Status |
118
- |---|-------|----------|--------|
119
- | 1 | SQL Injection | users.py:42 | ❌ Open |
120
- | 2 | Missing Rollback | payment.py:128 | ❌ Open |
121
-
122
- ## 🟡 P2 Important
123
-
124
- | # | Title | Location | Status |
125
- |---|-------|----------|--------|
126
- | 3 | N+1 Query | orders.py:78 | ❌ Open |
127
- | 4 | Missing Tests | auth.py | ❌ Open |
128
- | 5 | Circular Dep | services/ | ❌ Open |
129
-
130
- ## 🔵 P3 Nice-to-have
131
-
132
- | # | Title | Location | Status |
133
- |---|-------|----------|--------|
134
- | 6 | Extract Helper | utils.py:45 | 💤 Backlog |
135
- | 7 | Add README | /payment | 💤 Backlog |
136
-
137
- ---
138
-
139
- Last updated: 2026-01-11 10:30
140
- ```
141
-
142
- ## Workflow Commands
143
-
144
- ### Create Todo
145
-
146
- ```bash
147
- # /vibe.review 결과에서 자동 생성
148
- /vibe.review PR#123
149
- # → .vibe/todos/ 에 파일 생성
150
-
151
- # 수동 생성
152
- vibe todo add "SQL Injection in users.py" --priority P1 --category security
153
- ```
154
-
155
- ### List Todos
156
-
157
- ```bash
158
- # 전체 목록
159
- vibe todo list
160
-
161
- # 우선순위별
162
- vibe todo list --priority P1
163
- vibe todo list --priority P2
164
-
165
- # 카테고리별
166
- vibe todo list --category security
167
- vibe todo list --category performance
168
- ```
169
-
170
- ### Complete Todo
171
-
172
- ```bash
173
- # 완료 처리
174
- vibe todo done P1-security-sql-injection
175
-
176
- # 파일에 체크 표시 + index 업데이트
177
- ```
178
-
179
- ### Clean Up
180
-
181
- ```bash
182
- # 완료된 항목 아카이브
183
- vibe todo archive
184
-
185
- # 결과:
186
- # .vibe/todos/P1-security-sql-injection.md
187
- # → .vibe/todos/done/2026-01-11-P1-security-sql-injection.md
188
- ```
189
-
190
- ## Integration with TodoWrite
191
-
192
- 기존 TodoWrite 도구와 연동:
193
-
194
- ```javascript
195
- TodoWrite({
196
- todos: [
197
- {
198
- content: "[P1] Fix SQL injection in users.py:42",
199
- status: "in_progress",
200
- activeForm: "Fixing SQL injection vulnerability",
201
- priority: "P1", // 확장 필드
202
- category: "security" // 확장 필드
203
- },
204
- {
205
- content: "[P2] Add missing tests for auth",
206
- status: "pending",
207
- activeForm: "Adding auth tests",
208
- priority: "P2",
209
- category: "testing"
210
- }
211
- ]
212
- })
213
- ```
214
-
215
- ## Auto-Blocking Rules
216
-
217
- ```yaml
218
- # .vibe/config.yaml
219
- merge_blocking:
220
- P1: true # P1 있으면 머지 차단
221
- P2: false # P2는 경고만
222
- P3: false # P3는 무시
223
-
224
- notifications:
225
- P1: immediate # 즉시 알림
226
- P2: daily # 일일 요약
227
- P3: weekly # 주간 요약
228
- ```
229
-
230
- ## Best Practices
231
-
232
- 1. **P1은 즉시 처리**: 다른 작업 중단하고 수정
233
- 2. **P2는 PR 전 처리**: 머지 전 해결 권장
234
- 3. **P3는 백로그**: 시간 날 때 처리
235
- 4. **정기 정리**: 주 1회 todo 리뷰
236
- 5. **완료 기록**: 해결 방법 문서화
File without changes
File without changes