Skip to content

fix(onboarding): 약관 테스트의 리소스 참조를 프리픽스 통일에 맞춘다 (closes 1199) [base: develop] - #1200

Closed
1hyok wants to merge 1 commit into
developfrom
fix/1199
Closed

1hyok wants to merge 1 commit into
developfrom
fix/1199

Conversation

@1hyok

@1hyok 1hyok commented Aug 26, 2026

Copy link
Copy Markdown
Collaborator

develop 가 컴파일되지 않아 열린 PR 전부가 red 를 물려받고 있다. 참조 2줄을 고쳐 되돌린다.

Closes #1199

무엇이 깨졌나

e: .../terms/OnboardingTermsRowWidthTest.kt:72:64 Unresolved reference 'terms_agree_all'.
e: .../terms/OnboardingTermsRowWidthTest.kt:73:66 Unresolved reference 'terms_view_detail'.
> Task :feature:onboarding:presentation:compileDebugUnitTestKotlin FAILED

두 PR 이 각각 green 이었는데 조합이 red 가 된 건이다.

PR 한 일
#1187 (chore/1078) terms_agree_all → onboarding_terms_agree_all, terms_view_detail → onboarding_terms_view_detail
#1162 (fix/1132) OnboardingTermsRowWidthTest 신설 — 옛 이름을 참조

서로의 브랜치에 상대 변경이 없어 각자의 merge ref 에서는 통과했다.

무엇을 고쳤나

참조 2줄을 새 이름으로 맞춘다. 테스트 의도·단언·구조는 그대로다.

-        val agreeAll = composeRule.activity.getString(R.string.terms_agree_all)
-        val viewDetail = composeRule.activity.getString(R.string.terms_view_detail)
+        val agreeAll = composeRule.activity.getString(R.string.onboarding_terms_agree_all)
+        val viewDetail = composeRule.activity.getString(R.string.onboarding_terms_view_detail)

검증

항목 결과
:feature:onboarding:presentation:testDebugUnitTest BUILD SUCCESSFUL
:app:compileDebugUnitTestKotlin BUILD SUCCESSFUL

시각 변경이 없어 스크린샷 사이클은 돌리지 않았다 — 테스트 코드의 리소스 참조만 바뀐다.

리뷰어에게

  • 먼저 머지되는 편이 좋다. develop 이 red 인 동안 열린 PR 은 전부 같은 실패를 물려받는다.
  • 같은 일괄 머지에서 스크린샷 baseline 3장도 스테일해졌다(onboarding 1 · receiver LargeFont 2). 원인 계열이 달라(lineBreak × fontScale 축 조합) 이 PR 에 넣지 않았고 별도로 등록한다.
  • 구조적 원인 — unit-test.yml 은 workflow_call 전용, pr-validation.yml 은 pull_request 전용이라 develop push 에는 어떤 검증도 돌지 않는다. 그래서 머지 후 조합이 깨져도 신호가 없다. 이 PR 범위 밖이지만 같은 사고가 반복될 자리다.

develop 이 컴파일되지 않아 열린 PR 전부가 red 를 물려받고 있었다.

#1187(리소스 프리픽스 통일)이 `terms_agree_all` · `terms_view_detail` 을
`onboarding_` 프리픽스로 옮겼는데, 같은 시기에 머지된 #1162 가 추가한
OnboardingTermsRowWidthTest 는 옛 이름을 참조한다. 서로의 브랜치에 상대 변경이
없어 각자의 merge ref 에서는 통과했고, develop push 에는 검증이 돌지 않아
(unit-test.yml 은 workflow_call 전용) 조합이 깨진 것을 아무도 못 잡았다.

참조 2줄을 새 이름으로 맞춘다. 테스트 의도·단언은 그대로다.

검증 — :feature:onboarding:presentation:testDebugUnitTest ·
:app:compileDebugUnitTestKotlin BUILD SUCCESSFUL.
@github-actions

Copy link
Copy Markdown
Contributor

🚧 리뷰 적체 가드 — 이 PR 을 닫습니다

아무도 리뷰하지 않은 PR 이 3건 남아 있습니다.

PR 열린 날 경과 제목
#1154 2026-08-25 1일 test(mindrecord): screenshotTest 소스셋을 세우고 추억 공간 baseline 을 넣는다 (#1131)
#1152 2026-08-25 1일 fix(mindrecord): 수신인 조회 실패를 «등록 없음» 과 구분해 알린다 (#1019)
#1061 2026-08-24 2일 refactor(receiver): 수신자 홈의 afternote 리소스 차용 해소 — 아이콘 core:ui 승격 (#926)

이 저장소는 아무도 응답하지 않은 PR 이 1건이라도 남아 있으면 새 PR 을 열 수 없습니다 (#1136).

각 PR 에 필요한 리뷰는 한 건입니다 — 누구든 먼저 판정을 내면 그 PR 은 모두의 목록에서 빠집니다. 승인 뒤에 올라온 변경을 다시 봐 줄 의무는 없지만, 변경요청은 작성자가 반영한 시점에 다시 리뷰어의 몫이 됩니다.

되살리는 법

위 리뷰를 끝낸 뒤 이 PR 을 다시 여세요. 브랜치는 지워지지 않았고 커밋도 그대로입니다.

gh pr reopen 1200

리뷰보다 이 PR 이 급하면 review-debt-exempt 라벨을 붙이고 다시 열면 통과합니다.

@github-actions

Copy link
Copy Markdown
Contributor

❌ Screenshot test fail — baseline 과 CI rendered PNG 차이.

📦 Artifact: https://github.com/Afternote/Afternote-FE/actions/runs/32952319764 (페이지 하단 Artifacts → screenshot-test-results)

🔍 확인 위치 (artifact zip 내부):

  • diff PNG: preview/debug/diffs/...
  • rendered PNG: preview/debug/rendered/... (CI 환경에서 새로 그린 결과)
  • baseline PNG: repo <module>/src/screenshotTestDebug/reference/... (:core:ui · :feature:home:presentation · :feature:receiver:presentation · :feature:onboarding:presentation · :feature:afternote:presentation)

📝 조치 가이드:

  • 의도된 시각 변경 → docker build -t afternote-screenshot:latest -f Dockerfile.screenshot . 후 docker run --rm -v "$PWD":/workspace -w /workspace afternote-screenshot:latest ./gradlew :<module>:updateScreenshotTest 로 baseline 갱신 + commit/push
  • diff 가 anti-aliasing/font 차이로 보이면 docker 환경 변경 여부 (Dockerfile.screenshot) 점검

CI ↔ 로컬 환경 차이는 본 워크플로의 container 단계가 root fix 한다 (README 의 "Compose Preview Screenshot Testing (docker baseline)" 섹션 참조).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant