Repository navigation
feat: 구독을 만료 없는 풀이권 충전으로 전환 - #35
Merged
Merged
Conversation
무료 하루 2회와 오전 6시 초기화를 유지하고 4종 충전 상품을 추가한다. 서버 구매 검증, 영속 잔액, 동시 차감, 환불 및 결제 환경 분리를 적용한다. 기존 구독 기간을 보장하고 기록 열람과 과목 분류의 구독 제한을 해제한다.
AI 사전 코드 리뷰 (파일럿)검토 SHA: 비로그인 상태(isSignedIn == false)에서 미완료 구매(unfinished transactions)를 조회하거나 전달 시도하지 않도록 guard 구문을 추가하고, unit test를 통해 해당 동작을 검증하도록 수정되었습니다.
사람의 판정: |
로그인 복구 중 StoreKit 미완료 거래를 조회하거나 적립 오류를 표시하지 않는다. 로그인 전 조회를 건너뛰는 회귀 테스트를 추가한다.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
관련 이슈
Closes #34
변경사항
기존 월간·연간 구독의 신규 구매 화면을 만료 없는 풀이권 충전으로 바꿉니다. 무료 하루 2회와 한국 시간 오전 6시 초기화는 유지하며, 무료분을 먼저 사용한 뒤 정답 생성 성공 시 충전 잔량을 1회 차감합니다. 같은 풀이의 해설은 추가 차감하지 않습니다.
변경·영향 범위
담당 주 영역: StoreKit·풀이권 잔액 및 차감 정책
AGENTS.md,docs/)PR 분류
과금·프록시 변경으로 머지 전 담당자 리뷰가 필요합니다.
사전 예측
실제 결과·트러블슈팅
docs/credits-rollout.md에 App Store 상품과 알림 URL 등록, 서버 선배포, Sandbox 실거래 확인 절차를 기록했습니다. 이 PR 자체는 운영 상품 등록·배포를 수행하지 않습니다.검증 결과
CODE_SIGNING_ALLOWED=NO).xcodebuild ... test: 111개 테스트 통과.npm run check: 통과.npm test: 71개 통과, 건너뛴 테스트 없음. 중복 적립·무료 우선 차감·동시 예약·오전 6시 경계·만료 예약·환불·계정 삭제·환경 분리·차감 후 응답을 검증했습니다.swift-format lint,git diff --check: 통과. CI에서도 실제 Redis 테스트를 실행하도록 설치 단계를 추가했습니다./purchases,/store/notifications, 일일 제공량/충전 잔량/버전/환경 필드와 헤더를 동기화했습니다.