feat: AtchaV2 Phase 8 — 갱신 채널: FCM 사일런트 푸시(가드) + 폴링 폴백 + 하드닝 - #346
Merged
Conversation
- AlarmSyncService(App) 신설: 앱 시작(부트스트랩 직후)·포그라운드 복귀·사일런트 푸시 3경로를 단일 RefreshAlarmUseCase 호출로 일원화 (Phase 7의 HomeViewModel 복귀 로직 흡수), 성공 결과는 AlarmSyncEvents 스트림으로 홈에 전파 - Domain: AlarmSyncEvents 포트 + ObserveAlarmUseCase 신설 — HomeViewModel은 refresh 직접 호출 대신 동기화 결과만 구독해 배너·버튼 갱신 - AppDelegate: GoogleService-Info.plist 가드 유지, 구성 성공 시에만 MessagingDelegate + registerForRemoteNotifications (알림 권한 프롬프트 없음), content-available 푸시(type=REFRESH, 레거시 실측) → 동기화, FCM 토큰은 로깅만(미확정 #5), plist 부재 시 FCM 경로 완전 비활성(폴링만으로 성립) - Project.swift: UIBackgroundModes[remote-notification] 추가 - 조합 루트를 AppDelegate 소유로 이동 (scene 없는 백그라운드 푸시 대응), 알람 스택(리포지토리·스케줄러) 1회 생성 공유 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ronment entitlements - 레거시 plist(com.atcha.iOS용, 사용자 지시)를 Projects/App/Resources/에 투입 → Firebase 자동 활성 확인 (번들 ID 불일치 경고는 예상된 것, FCM 토큰 발급 동작) - Tuist entitlements DSL로 aps-environment(development) 추가 — 부재 시 APNs 등록이 didFailToRegister로 실패하는 것을 시뮬레이터 실측으로 확인 - 검수 관찰용 os Logger: 푸시 수신(AppDelegate)·동기화 시작/성공/실패(AlarmSyncService) - 시뮬레이터 검증: FCM 토큰 발급 + 앱 시작/포그라운드 복귀 동기화 트리거 E2E 확인. simctl push의 content-available 주입은 iOS 26 심 런타임이 거부 (UIBackgroundModes 선언에도 SpringBoard RequestDenied) — 푸시 수신 최종 확인은 실기기 + 실서버 푸시 필요 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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.
요약
🤖 Generated with Claude Code