개요
이 문서는 wumm Android 로컬 체크아웃에서 진행한 UI 변경 작업을 누적 기록하는 페이지다. 작업 대상은 /Volumes/T5 EVO/Projects/WUMM-Android이며, 기존 github-repo-2026-04-11 저장소 스냅샷과 별도로 Android 로컬 브랜치의 변경 이력을 추적한다. 요청·작업기록은 request-and-worklog-archive-policy 원칙에 따라 작업 직후 위키에 남긴다.
2026-05-02 — 메인 홈탭 미니 캘린더 제거
- 요청자: 공주님
- 브랜치:
remove-main-calendar-tab - 변경 파일:
app/src/main/java/com/company/wumm_android/ui/screen/main/tabs/HomeTab.kt - 테스트 파일:
app/src/test/java/com/company/wumm_android/ui/screen/main/tabs/HomeTabSourceTests.kt - 변경 내용: 홈 메인탭의 LazyColumn에서
MiniCalendarCard(...)를 렌더링하던 item을 제거해, 메인탭에 보이던 미니 캘린더 그리드를 숨겼다. - 유지한 범위: 일정 상세 화면, 다가오는 일정 섹션, 일정 바로가기 카드는 삭제하지 않았다. 이번 변경은 화면에 직접 보이는 미니 캘린더 카드 제거에 한정했다.
- 검증: Python 정적 검증으로
HomeTab.kt에MiniCalendarCard(호출이 남아 있지 않음을 확인했다. - 제한 사항: Gradle 단위 테스트는
local.properties의 Android SDK 경로(/Users/mikekim/Library/Android/sdk)가 현재 실행 환경에 없어 실패했다. 코드 변경 실패가 아니라 SDK 위치 설정 문제로 차단되었다.
2026-05-03 — Crashlytics @DocumentId 크래시 대응
- 요청자: 마잌킴
- 대상 증상: Crashlytics 이메일의
CoupleRepository$observeCo...크래시. 오류는java.lang.RuntimeException - 'id' was found from document couples/R...로 표시되었고,1.1.1 (21)에서10 crashes / 1 user영향이 확인되었다. - 데이터 조치: Firestore
wumm-7022b의couples컬렉션에서 top-levelid필드를 가진 문서를 찾아 해당 필드만 삭제했다. 최종 재조회에서 남은id필드는 0개다. - 백업:
/Users/heeseongkim/.hermes/wumm-firestore-backups/couples_id_field_backup_20260503_073422.json,/Users/heeseongkim/.hermes/wumm-firestore-backups/couples_id_field_backup_20260503_073547.json. - iOS 변경:
WUMM/Sources/Models/Couple.swift의Couple.encode(to:)에서id저장을 제거해 Android@DocumentId와 충돌하는 데이터를 새로 만들지 않게 했다. - Android 변경:
CoupleRepository.observeCouple에서snapshot.toObject(Couple::class.java)decode 예외를 잡아 앱 크래시 대신null을 방출하도록 방어했다. - 테스트 변경:
CoupleRepositoryTests에testObserveCoupleReturnsNullWhenSnapshotDecodeFails를 추가했다. - 검증: Firestore 재조회와 정적 검증은 완료했다. Android Gradle 테스트는 현재 머신에 Java Runtime이 없어 실행 단계에서 차단되었다.
- 상세 기록: crashlytics-documentid-incident-2026-05-03.
- GitHub 브랜치: Android 수정은
BCD1210/WUMM-Android의fix/couple-documentid-crash브랜치에 커밋8e34e0c로 push했다. iOS 원인 제거 수정은 별도 저장소BCD1210/WUMM의fix/prevent-couple-id-field브랜치에 커밋b24a4d3로 push했다.