Skip to content

1.5.0 — 할 일 탭 · 하루 마무리 알림 · 알림이 안 오던 것 (빌드 9) - #41

Merged
dongglehada merged 2 commits into
mainfrom
chore/release-1.5.0
Oct 10, 2026
Merged

dongglehada merged 2 commits into
mainfrom
chore/release-1.5.0

Conversation

@dongglehada

Copy link
Copy Markdown
Contributor

왜 지금인가

스토어에 올라가 있는 마지막 버전은 1.4.1(빌드 8, 10월 3일)이다. 1.4.2와 1.4.3은
만들다 말고 다음 것이 들어와 안 나갔다. 그 사이 10월 6일부터 들어온 알림 수정 셋이
사용자에게 한 번도 닿지 않았다 — "할 일에 알림이 다 안 온다"의 실체가 이것이다.
버그가 남아 있던 게 아니라, 고쳐두고 안 보낸 것이다.

지금 1.4.1을 쓰는 사람이 겪고 있는 것:

  • 알림을 허용한 그 실행에서는 알림이 하나도 안 걸린다. 재예약 열쇠에 권한 상태가
    없어서, 허용 전에 한 번 돌고 끝났다. 거부한 사람은 전체 스위치가 같이 내려가며
    키가 바뀌어 다시 돌았으니, 허용한 사람만 조용히 비어 있었다
  • 분류가 안 붙은 할 일은 알림을 영영 못 받는다. 시각을 아무리 정성껏 적어도
  • 시간을 안 적은 할 일("장보기")은 애초에 알림 대상이 아니다. 이 앱의 대표 입력인데

셋이 겹치면 정확히 "알림이 다 안 와"가 된다.

들어 있는 것

1.4.1 이후 머지된 것 전부 — 할 일 탭(#36), 하루 마무리 알림(#37), 탭 둘·주간 스트립
일~토 페이징(#38), 디데이 카드·묶음 순서(#39), 번역(#40), 위젯 완료 반영(#32),
리마인더 버그 셋(e7f295b), 카테고리 없는 할 일 알림(#33).

여기에 이번 PR에서 하나 더 고쳤다.

fix(reminder): 하루 마무리 알림 설정이 재예약을 못 깨우던 것

설정에서 받을 시각을 옮기거나 요약을 꺼도, 할 일을 하나 손대기 전까지는 옛 시각
그대로 걸려 있었다. 재예약 열쇠에 그 값들이 없어서다. 설정 화면은 "닫으면 뿌리가
다시 건다"고 주석에 적어뒀는데 키에 없으니 닫아도 아무 일이 없었다.

같은 사고가 세 번째라 값 하나 더 넣고 끝내지 않았다. 권한 상태가 빠졌고, 완료
여부가 빠졌고, 이번엔 요약 설정이 빠졌다. 세 번 다 예약 계산은 멀쩡했다 — 다시
계산할 이유를 못 만든 것이다. 계산에는 테스트가 스무 건 넘게 붙어 있었는데 계산을
깨우는 쪽에는 한 건도 없었다. 화면 구조체 안이라 테스트가 닿지 않았다.

ReminderScheduleKey(Shared)로 꺼내고 테스트 16건을 붙였다. 무엇이 키에 들어가야
하는지는 이제 테스트가 지킨다. 네 번째를 막는 것은 값이 아니라 테스트다.

확인한 것

  • 테스트 283 → 299건 통과
  • tools/artifact_check.sh 통과 — 버전 네 곳·빌드 네 곳 일치(1.5.0 / 9), entitlements, plist
  • tools/i18n_check.py 통과 — 문구 229개, 빠진 번역 없음
  • PRIVACY.md는 손대지 않았다. 1.4.1 이후 이벤트 이름이 늘거나 줄지 않았고,
    이벤트에 함께 싣게 된 device_id·device_model은 이미 "기기 구분용 식별자"로 적혀 있다

남은 일 (계정 작업이라 사람이 한다)

아카이브 → 업로드 → RELEASING.md의 노트 붙여넣기 → V1.5.0 태그 → AI 사용 보고서 → 위키 동기화.

🤖 Generated with Claude Code

dongglehada and others added 2 commits October 10, 2026 22:26
설정에서 받을 시각을 옮기거나 요약을 꺼도, 할 일을 하나 손대기 전까지는 옛
시각 그대로 걸려 있었다. 재예약 열쇠(`rescheduleKey`)에 그 값들이 없어서다.
설정 화면은 "이 화면을 닫으면 뿌리가 다시 건다"고 주석에 적어뒀는데, 키에
없으니 닫아도 아무 일이 없었다. 주석이 코드보다 앞서간 자리였다.

**같은 사고가 세 번째다.** 권한 상태가 빠져서 허용한 그 실행에 알림이 하나도
안 걸렸고, 완료 여부가 빠져서 끝낸 일의 알림이 안 걷혔고, 이번엔 요약 설정이
빠졌다. 세 번 다 예약 계산은 멀쩡했다 — 다시 계산할 이유를 못 만든 것이다.
계산에는 테스트가 스무 건 넘게 붙어 있었고, 계산을 깨우는 쪽에는 한 건도
없었다. 화면 구조체 안에 있어서 테스트가 닿지 않았다.

그래서 값 하나 더 넣고 끝내지 않고 `ReminderScheduleKey`(Shared)로 꺼냈다.
무엇이 키에 들어가야 하는지를 이제 테스트가 지킨다 — 요약 시각·권한·완료·
리드타임이 바뀌면 키가 바뀌고, 메모처럼 잠금화면에만 쓰이는 것으로는 안
바뀐다. 세 사고의 경위도 그 타입 주석에 남겼다. 네 번째를 막는 것은 값이
아니라 테스트다.

`timeKey`는 라이브 액티비티 열쇠도 같이 쓰므로 함께 옮겼다. 두 열쇠가 묻는
것이 "이 값이 달라졌나"로 같아서, 표기가 갈리면 한쪽만 고치는 일이 생긴다.
라이브 액티비티 열쇠 주석에 "알림 키에는 완료가 없다"고 적혀 있던 것도
고쳤다 — 1.4.2에서 따라붙어 더는 사실이 아니다.

테스트 283 → 299건.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
**스토어에 올라가 있는 마지막 버전은 1.4.1(빌드 8, 10월 3일)이다.** 1.4.2와
1.4.3은 만들다 말고 다음 것이 들어와 안 나갔다. 그래서 10월 6일 이후의 알림
수정 셋이 두 달 가까이 사용자에게 닿지 않고 있었다 — "할 일에 알림이 다 안
온다"의 실체가 이것이다. 고쳐두고 안 보낸 것이다.

1.5.0을 고른 이유: 기능이 둘 늘었고(할 일 탭, 하루 마무리 알림) 탭이 없던
구조가 탭 둘로 바뀌었다. 저장 스키마는 그대로고 마이그레이션이 없어 MAJOR는
아니다. 판단이 갈리면 낮은 쪽으로 가는 규칙대로 MINOR다.

빌드 번호는 버전과 무관하게 계속 올려서 9다.

릴리스 노트는 1.4.1을 쓰던 사람이 읽는다는 전제로 썼다. 중간 버전에서 넣었다
뺀 것(오늘 탭을 되살렸다 다시 없앤 일)은 그 사람에게 일어난 적이 없어서
적지 않았다. 첫 줄은 규칙 1대로 탭이다 — 1.4.0 노트에서 "탭이 없어지고
달력이 홈이 됐어요"라고 알린 것을 되돌리는 자리라, 업데이트 직후 가장 먼저
"어?" 하게 되는 곳이다.

PRIVACY.md는 그대로 둔다. 1.4.1 이후 이벤트 이름이 늘거나 줄지 않았고,
이벤트에 함께 싣게 된 device_id·device_model은 이미 "기기 구분용 식별자"
항목으로 적혀 있다.

tools/artifact_check.sh 통과(버전 네 곳·빌드 네 곳 일치, entitlements, plist).
tools/i18n_check.py 통과(문구 229개). 테스트 299건.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@dongglehada
dongglehada merged commit 672901f into main Oct 10, 2026
1 check passed
@dongglehada
dongglehada deleted the chore/release-1.5.0 branch October 10, 2026 15:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant