--- description: Compare HEAD with the latest published npm version and list all unpublished changes --- IMMEDIATELY output the analysis. NO questions. NO preamble. ## CRITICAL: DO NOT just copy commit messages! For each commit, you MUST: 1. Read the actual diff to understand WHAT CHANGED 2. Describe the REAL change in plain language 3. Explain WHY it matters (if not obvious) ## Steps: 1. Run `git diff v{published-version}..HEAD` to see actual changes 2. Group by type (feat/fix/refactor/docs) with REAL descriptions 3. Note breaking changes if any 4. Recommend version bump (major/minor/patch) ## Output Format: - feat: "Added X that does Y" (not just "add X feature") - fix: "Fixed bug where X happened, now Y" (not just "fix X bug") - refactor: "Changed X from A to B, now supports C" (not just "rename X") !`npm view oh-my-opencode version 2>/dev/null || echo "not published"` !`node -p "require('./package.json').version" 2>/dev/null || echo "unknown"` !`git tag --sort=-v:refname | head -1 2>/dev/null || echo "no tags"` !`npm view oh-my-opencode version 2>/dev/null | xargs -I{} git log "v{}"..HEAD --oneline 2>/dev/null || echo "no commits since release"` !`npm view oh-my-opencode version 2>/dev/null | xargs -I{} git diff "v{}"..HEAD --stat 2>/dev/null || echo "no diff available"` !`npm view oh-my-opencode version 2>/dev/null | xargs -I{} git diff "v{}"..HEAD --stat 2>/dev/null | tail -1 || echo ""` ## Unpublished Changes (v{published} → HEAD) ### feat | Scope | What Changed | |-------|--------------| | X | 실제 변경 내용 설명 | ### fix | Scope | What Changed | |-------|--------------| | X | 실제 변경 내용 설명 | ### refactor | Scope | What Changed | |-------|--------------| | X | 실제 변경 내용 설명 | ### docs | Scope | What Changed | |-------|--------------| | X | 실제 변경 내용 설명 | ### Breaking Changes None 또는 목록 ### Files Changed {diff-stat} ### Suggested Version Bump - **Recommendation**: patch|minor|major - **Reason**: 이유 ## Oracle 배포 안전성 검토 (사용자가 명시적으로 요청 시에만) **트리거 키워드**: "배포 가능", "배포해도 될까", "안전한지", "리뷰", "검토", "oracle", "오라클" 사용자가 위 키워드 중 하나라도 포함하여 요청하면: ### 1. 사전 검증 실행 ```bash bun run typecheck bun test ``` - 실패 시 → Oracle 소환 없이 즉시 "❌ 배포 불가" 보고 ### 2. Oracle 소환 프롬프트 다음 정보를 수집하여 Oracle에게 전달: ``` ## 배포 안전성 검토 요청 ### 변경사항 요약 {위에서 분석한 변경사항 테이블} ### 주요 diff (기능별로 정리) {각 feat/fix/refactor의 핵심 코드 변경 - 전체 diff가 아닌 핵심만} ### 검증 결과 - Typecheck: ✅/❌ - Tests: {pass}/{total} (✅/❌) ### 검토 요청사항 1. **리그레션 위험**: 기존 기능에 영향을 줄 수 있는 변경이 있는가? 2. **사이드이펙트**: 예상치 못한 부작용이 발생할 수 있는 부분은? 3. **Breaking Changes**: 외부 사용자에게 영향을 주는 변경이 있는가? 4. **Edge Cases**: 놓친 엣지 케이스가 있는가? 5. **배포 권장 여부**: SAFE / CAUTION / UNSAFE ### 요청 위 변경사항을 깊이 분석하고, 배포 안전성에 대해 판단해주세요. 리스크가 있다면 구체적인 시나리오와 함께 설명해주세요. 배포 후 모니터링해야 할 키워드가 있다면 제안해주세요. ``` ### 3. Oracle 응답 후 출력 포맷 ## 🔍 Oracle 배포 안전성 검토 결과 ### 판정: ✅ SAFE / ⚠️ CAUTION / ❌ UNSAFE ### 리스크 분석 | 영역 | 리스크 레벨 | 설명 | |------|-------------|------| | ... | 🟢/🟡/🔴 | ... | ### 권장 사항 - ... ### 배포 후 모니터링 키워드 - ... ### 결론 {Oracle의 최종 판단}