Update Codex ChatGPT Business subscription pricing#126
Conversation
7e50a1a to
50216b5
Compare
✅ AI Code Review CompletedReview finished. Check the PR for inline comments. 📋 View Logs | 🤖 Model: |
There was a problem hiding this comment.
ChatGPT Team이 Business로 리네임된 거 반영한 PR이네. 깔끔하게 잘 짠 변경임.
확인한 것들
가격 사실관계
OpenAI가 2025년 말쯤 Team → Business 리네임 + SSO 추가해서 현재 $25/user/month(연간), $30/user/month(월간)로 팔고 있음. 공식 pricing 페이지(openai.com/chatgpt/pricing, developers.openai.com/codex/pricing)에서 재확인함. $25는 헤드라인 가격이라 이 프리셋에 쓰는 건 타당함.
마이그레이션 로직 (SubscriptionSettings.swift:293-306)
codex네임스페이스로만 제한 걸어둔 거 좋음. 다른 provider에서 혹시 "Team" preset 쓰는 경우가 있어도 안 건드림.caseInsensitiveCompare로 preset 이름 비교하는 거 안전함..custom케이스는 안 건드리고.preset만 정규화하는 것도 맞음 (사용자가 직접 설정한 custom 금액은 보존).- 읽기 경로에서 lazy migration으로 처리해서 앱 시작 시 추가 부팅 비용 없는 것도 합리적임. 마이그레이션 후엔 다시 write 안 일어남.
테스트 커버리지
- 프리셋 자체 검증(
testCodexSubscriptionPresetsUseBusinessMonthlyPrice)과 마이그레이션 동작(testSubscriptionSettingsMigratesLegacyCodexTeamPreset) 둘 다 넣은 거 제대로임. SubscriptionSettingsManager.shared를 쓰지만 유니크한 테스트 전용 키(subscription-settings-migration-test) +defer removePlan조합으로 실제 UserDefaults 상태랑 충돌 안 나게 해둔 거 꼼꼼함.
자잘한 제안 (블로킹 아님)
- Business는 연간 $25 / 월간 $30 두 가지인데 현재 프리셋은 $25 하나만 있음. Claude가
MAX $100/MAX $200같이 같은 이름으로 두 개 두는 패턴 있으니, 월간 청구하는 사용자 위해Business $30하나 더 추가하면 cost 추적 정확도 높아질 듯. 필수는 아니고 선택. - 마이그레이션 로그가
NSLog로 찍히는데, 프로젝트 다른 곳에서os.log/Logger쓰는 패턴이 있으면 맞추는 게 일관성 측면에서 좋음 (이건 기존 파일 스타일 따라간 거라 그대로 둬도 됨).
Verdict
Approve. 변경 작음, 로직 정확함, 테스트 커버됨. 머지 ㄱㄱ.
OP.GG AI DevOps 봇임. 이 브랜치에 커밋 푸시되면 자동으로 전체 PR 다시 리뷰함. 수동으로 다시 돌리고 싶으면 PR 코멘트에
@op-gg-ai-devops멘션하면 됨. 원하는 방향 같이 써도 됨:
@op-gg-ai-devops review typos@op-gg-ai-devops 보안 위주로 다시 봐줘@op-gg-ai-devops check test coverage
| SubscriptionPreset(name: "Go", cost: 8), | ||
| SubscriptionPreset(name: "Plus", cost: 20), | ||
| SubscriptionPreset(name: "Team", cost: 30), | ||
| SubscriptionPreset(name: "Business", cost: 25), |
There was a problem hiding this comment.
Business 프리셋: 월간 청구 $30 옵션 추가 고려
현재 Business 프리셋이 $25만 있는데 이건 연간 청구 기준 가격임. 월간 청구는 $30/user/month이라 월간으로 결제하는 사용자는 cost 추적이 $5 어긋남.
Claude MAX 패턴처럼 같은 이름으로 두 프리셋 두는 방법:
SubscriptionPreset(name: "Business", cost: 25),
SubscriptionPreset(name: "Business", cost: 30),필수 아님, 선택사항임. 대부분 사용자가 연간으로 간다고 가정하면 현재 상태로도 충분함.
Summary
Fact check
Testing
Closes #125