moai-adk 0.3.2__py3-none-any.whl → 0.3.6__py3-none-any.whl

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.

Potentially problematic release.


This version of moai-adk might be problematic. Click here for more details.

@@ -69,48 +69,23 @@ MoAI-ADK는 Anthropic의 "Effective Context Engineering for AI Agents" 원칙을
69
69
  |--------|----------|------------|------------|
70
70
  | `/alfred:1-spec` | product.md | structure.md, tech.md | SPEC 후보 발굴 시 |
71
71
  | `/alfred:2-build` | SPEC-XXX/spec.md | development-guide.md | TDD 구현 시작 시 |
72
- | `/alfred:3-sync` | sync-report.md | TAG 인덱스 | 문서 동기화 시 |
72
+ | `/alfred:3-sync` | sync-report.md | TAG 체인 검증 (`rg` 스캔) | 문서 동기화 시 |
73
73
 
74
74
  **구현 방법**:
75
75
  - Alfred는 커맨드 실행 시점에 필요한 문서만 `Read` 도구로 로드
76
76
  - 에이전트는 자신의 작업에 필요한 문서만 요청
77
77
  - CLAUDE.md의 "메모리 전략" 섹션에 명시된 5개 문서는 항상 로드
78
78
 
79
- ### 2. Compaction (압축)
80
-
81
- **원칙**: 긴 세션(>70% 토큰 사용)은 요약 후 새 세션으로 재시작
82
-
83
- **Compaction 트리거**:
84
- - 토큰 사용량 > 140,000 (총 200,000의 70%)
85
- - 대화 턴 수 > 50회
86
- - 사용자가 명시적으로 `/clear` 또는 `/new` 실행
87
-
88
- **Compaction 절차**:
89
- 1. **요약 생성**: 현재 세션의 핵심 결정사항, 완료된 작업, 다음 단계를 요약
90
- 2. **새 세션 시작**: 요약 내용을 새 세션의 첫 메시지로 전달
91
- 3. **권장 사항 안내**: 사용자에게 `/clear` 또는 `/new` 명령 사용 권장
92
-
93
- **예시**:
94
- ```markdown
95
- **권장사항**: 다음 단계 진행 전 `/clear` 또는 `/new` 명령으로 새로운 대화 세션을 시작하면 더 나은 성능과 컨텍스트 관리를 경험할 수 있습니다.
96
- ```
97
-
98
79
  ### Context Engineering 체크리스트
99
80
 
100
81
  **커맨드 설계 시**:
101
82
  - [ ] JIT: 필요한 문서만 로드하는가?
102
83
  - [ ] 선택적 로드: 조건부로 문서를 로드하는가?
103
- - [ ] Compaction: 긴 작업 시 중간 요약을 제공하는가?
104
84
 
105
85
  **에이전트 설계 시**:
106
86
  - [ ] 최소 도구: 필요한 도구만 YAML frontmatter에 선언했는가?
107
87
  - [ ] 명확한 역할: 단일 책임 원칙을 준수하는가?
108
88
 
109
- **장기 세션 관리**:
110
- - [ ] 토큰 사용량 모니터링
111
- - [ ] 70% 초과 시 Compaction 권장
112
- - [ ] `/clear` 또는 `/new` 안내 문구 포함
113
-
114
89
  ---
115
90
 
116
91
  ## TRUST 5원칙
@@ -0,0 +1,220 @@
1
+ # GitFlow 권장 정책 (Advisory Policy)
2
+
3
+ **문서 ID**: @DOC:GITFLOW-POLICY-001
4
+ **작성일**: 2025-10-17
5
+ **상태**: Advisory (권장 사항, 강제 아님)
6
+ **적용 범위**: Personal/Team 모드 모두
7
+
8
+ ---
9
+
10
+ ## 개요
11
+
12
+ MoAI-ADK는 GitFlow 전략을 **권장**합니다. 이 정책은 best practice를 제시하지만, 사용자의 판단에 따라 유연하게 적용할 수 있습니다.
13
+
14
+ ## 핵심 권장사항
15
+
16
+ ### 1. Main 브랜치 접근 제어 (권장)
17
+
18
+ | 권장사항 | 설명 | 적용 방식 |
19
+ |---------|------|----------|
20
+ | **Develop 기반 Merge** | develop 브랜치에서 main으로 머지 권장 | Advisory ⚠️ |
21
+ | **Feature는 Develop** | Feature 브랜치는 develop에서 분기하고 develop으로 PR 생성 | Advisory ⚠️ |
22
+ | **Release 프로세스** | Release: develop -> main (Release Engineer 권장) | Advisory ⚠️ |
23
+ | **강제 Push** | Force-push 시 경고, 하지만 허용 | Warning ⚠️ |
24
+ | **직접 Push** | main 직접 push 시 경고, 하지만 허용 | Warning ⚠️ |
25
+
26
+ ### 2. Git Workflow (권장)
27
+
28
+ ```
29
+ ┌─────────────────────────────────────────────────────────┐
30
+ │ RECOMMENDED GITFLOW │
31
+ └─────────────────────────────────────────────────────────┘
32
+
33
+ develop (권장 기본 브랜치)
34
+ ↑ ↓
35
+ ┌─────────────────┐
36
+ │ │
37
+ │ (개발자가 작업) │
38
+ │ │
39
+ ↓ ↑
40
+ feature/SPEC-{ID} [PR: feature -> develop]
41
+ [코드 리뷰 + 승인]
42
+ [Merge to develop]
43
+
44
+ develop (안정적)
45
+
46
+ │ (Release Manager가 준비)
47
+
48
+ [PR: develop -> main]
49
+ [CI/CD 검증]
50
+ [태그 생성]
51
+
52
+ main (릴리스)
53
+ ```
54
+
55
+ **유연성**: 프로젝트 상황에 따라 직접 main 푸시도 가능하지만, 위 워크플로우를 권장합니다.
56
+
57
+ ## 기술 구현
58
+
59
+ ### Pre-push Hook (Advisory Mode)
60
+
61
+ **위치**: `.git/hooks/pre-push`
62
+ **기능**: Main 브랜치 작업 시 경고 표시 (차단 안 함)
63
+
64
+ ```bash
65
+ # main으로 push 시도 시:
66
+ ⚠️ ADVISORY: Non-standard GitFlow detected
67
+
68
+ Current branch: feature/SPEC-123
69
+ Target branch: main
70
+
71
+ Recommended GitFlow workflow:
72
+ 1. Work on feature/SPEC-{ID} branch (created from develop)
73
+ 2. Push to feature/SPEC-{ID} and create PR to develop
74
+ 3. Merge into develop after code review
75
+ 4. When develop is stable, create PR from develop to main
76
+ 5. Release manager merges develop -> main with tag
77
+
78
+ ✓ Push will proceed (flexibility mode enabled)
79
+ ```
80
+
81
+ ### 강제 Push Advisory
82
+
83
+ ```bash
84
+ ⚠️ ADVISORY: Force-push to main branch detected
85
+
86
+ Recommended approach:
87
+ - Use GitHub PR with proper code review
88
+ - Ensure changes are merged via fast-forward
89
+
90
+ ✓ Push will proceed (flexibility mode enabled)
91
+ ```
92
+
93
+ ---
94
+
95
+ ## 사용 사례별 워크플로우
96
+
97
+ ### 사례 1: 표준 Feature 개발 (권장)
98
+
99
+ ```bash
100
+ # 1. develop에서 최신 코드 받기
101
+ git checkout develop
102
+ git pull origin develop
103
+
104
+ # 2. feature 브랜치 생성 (develop에서)
105
+ git checkout -b feature/SPEC-001-new-feature
106
+
107
+ # 3. 작업 진행
108
+ # ... 코드 작성 및 테스트 ...
109
+
110
+ # 4. 커밋
111
+ git add .
112
+ git commit -m "..."
113
+
114
+ # 5. Push
115
+ git push origin feature/SPEC-001-new-feature
116
+
117
+ # 6. GitHub에서 PR 생성: feature/SPEC-001-new-feature -> develop
118
+
119
+ # 7. 코드 리뷰 및 승인 후 머지 (develop으로)
120
+ ```
121
+
122
+ ### 사례 2: 빠른 Hotfix (유연한 방식)
123
+
124
+ ```bash
125
+ # 긴급 수정이 필요한 경우:
126
+
127
+ # 옵션 1: 권장 방식 (develop 기반)
128
+ git checkout develop
129
+ git checkout -b hotfix/critical-bug
130
+ # ... 수정 ...
131
+ git push origin hotfix/critical-bug
132
+ # PR 생성: hotfix -> develop -> main
133
+
134
+ # 옵션 2: 직접 main 수정 (허용되지만 권장하지 않음)
135
+ git checkout main
136
+ # ... 수정 ...
137
+ git commit -m "Fix critical bug"
138
+ git push origin main # ⚠️ Advisory 경고 표시되지만 진행됨
139
+ ```
140
+
141
+ ### 사례 3: Release (표준 또는 유연)
142
+
143
+ ```bash
144
+ # 표준 방식 (권장):
145
+ git checkout develop
146
+ gh pr create --base main --head develop --title "Release v1.0.0"
147
+
148
+ # 직접 push 방식 (허용):
149
+ git checkout develop
150
+ git push origin main # ⚠️ Advisory 경고 표시되지만 진행됨
151
+ git tag -a v1.0.0 -m "Release v1.0.0"
152
+ git push origin v1.0.0
153
+ ```
154
+
155
+ ---
156
+
157
+ ## 정책 모드 비교
158
+
159
+ ### Strict Mode (이전 방식, 현재 비활성)
160
+
161
+ - ❌ main 직접 push 차단
162
+ - ❌ force-push 차단
163
+ - ❌ develop 외 브랜치에서 main 머지 차단
164
+
165
+ ### Advisory Mode (현재 활성, v0.3.5+)
166
+
167
+ - ⚠️ main 직접 push 시 경고 + 허용
168
+ - ⚠️ force-push 시 경고 + 허용
169
+ - ⚠️ best practice 권장 + 유연성 제공
170
+ - ✅ 사용자 판단 존중
171
+
172
+ ---
173
+
174
+ ## 권장 체크리스트
175
+
176
+ 프로젝트에 참여하는 모든 팀원은 다음을 권장합니다:
177
+
178
+ - [ ] `.git/hooks/pre-push` 파일 존재 및 실행 가능 (755 권한)
179
+ - [ ] develop 브랜치에서 feature 분기 (권장)
180
+ - [ ] PR 생성 시 대상이 develop (권장)
181
+ - [ ] Release는 develop -> main (권장)
182
+
183
+ **검증 명령**:
184
+ ```bash
185
+ ls -la .git/hooks/pre-push
186
+ git branch -vv
187
+ ```
188
+
189
+ ---
190
+
191
+ ## FAQ
192
+
193
+ **Q: develop -> main이 아닌 다른 경로로 머지할 수 있나요?**
194
+ A: 가능합니다. Advisory 경고가 표시되지만 진행됩니다. 단, develop -> main을 권장합니다.
195
+
196
+ **Q: Force-push를 할 수 있나요?**
197
+ A: 가능합니다. 경고가 표시되지만 허용됩니다. 단, 신중하게 사용하세요.
198
+
199
+ **Q: Main으로 직접 commit/push할 수 있나요?**
200
+ A: 가능합니다. Advisory 경고가 표시되지만 진행됩니다.
201
+
202
+ **Q: Hook을 완전히 비활성화할 수 있나요?**
203
+ A: 가능합니다. `.git/hooks/pre-push` 파일을 삭제하거나 실행 권한을 제거하세요.
204
+
205
+ **Q: 왜 Advisory Mode로 변경했나요?**
206
+ A: 사용자의 유연성과 판단을 존중하면서도 best practice를 권장하기 위해서입니다.
207
+
208
+ ---
209
+
210
+ ## 정책 업데이트 이력
211
+
212
+ | 날짜 | 내용 | 담당자 |
213
+ |------|------|--------|
214
+ | 2025-10-17 | 초기 정책 수립 (Strict Mode) | git-manager |
215
+ | 2025-10-17 | Advisory Mode로 전환 (경고만, 차단 안 함) | git-manager |
216
+
217
+ ---
218
+
219
+ **이 정책은 권장사항이며, 사용자의 판단에 따라 유연하게 적용할 수 있습니다.**
220
+ **질문이나 제안사항은 팀 리드 또는 Release Engineer와 협의하세요.**