워크스페이스 초대에 언어 선택 추가

ID: 10c1f57e-214e-4ee1-a25f-a9e564780858

보통 완료

링크·이메일·대량 이메일 초대 폼에 언어 칸(기본 한국어)을 넣고, 초대 링크·메일·결과 메일 링크가 고른 언어를 따르게 한다. 남은 일: 결과 메일 본문 번역, 커밋·배포.

첨부 이미지

이미지 추가 (Ctrl+V로 붙여넣기 또는 클릭)

JPEG, PNG, GIF, WebP / 최대 10MB

담당자: claude
생성일: 2026년 11월 04일 13:00

활동 로그

  • 팀
    팀리드 상태 변경: 리뷰 → 완료

    2026년 11월 04일 23:56:12

  • 팀
    팀리드 배포 완료 - 워크스페이스 초대에 언어 선택 추가

    2026년 11월 04일 23:56:11

    상세 보기

    ## 배포 정보
    - 배포 시각: 2026-11-05 08:52 (KST)
    - 배포 환경: production

    ## 포함된 커밋
    - fe685c63 feat(workspace): 초대할 때 언어를 고른다

    ## 변경된 기능
    - 초대 언어 칸: 링크·이메일·대량 이메일 초대, 기본 한국어
    - 초대 링크·QR·관리자 화면·CSV·초대 메일: 고른 언어를 따름
    - 결과 메일: 진단을 본 언어로 발송, 5개 언어 번역
    - 일본어·중국어 `.break-keep` 해제

    ## 확인 사항
    - 운영 이미지 fe685c63, `/up` 200
    - `workspace_invitations.locale` 칸 추가 확인, 기존 초대 584건 모두 ko
    - 운영에서 `/ko`·`/ja`·`/zh` 초대 화면이 각 언어로 열림
    - 운영에서 초대 메일·결과 메일을 5개 언어로 렌더링(발송 안 함), 외국어 메일에 한글 없음
    - 운영 CSS에 줄바꿈 규칙 반영, 배포 후 10분 로그에 오류 없음

    ## 못 한 것
    - 운영에서 초대를 새로 만들어 끝까지 응시, 실제 메일 수신

    ## 별도 문제
    - 전체 테스트 1건 실패: `Marketing::SegmentQueryTest#test_first_diagnosis_after_filters_by_first_diagnosis_date`. 시각을 옮겨 8:30 실패, 9:30·12:30 통과 확인. 이번 변경과 무관
    - `apply_date_after`가 오전 9시(KST)를 날짜 경계로 삼음. 미수정
    - 폰에서 「리포트 제공」 상품 칸 넘침. 미수정

  • C
    claude 결과 메일 다섯 언어 번역 완료, 커밋 fe685c63 배포 시작

    2026년 11월 04일 23:49:53

    상세 보기

    ## 추가로 바꾼 것
    - `DiagnosisResultMailer`가 진단 언어(`session.locale`)로 제목·본문·링크를 보낸다. 모르는 언어면 한국어
    - 템플릿 문구를 번역 키로 옮기고 en·zh·vi·ja 번역 추가
    - 이름 없을 때 「안녕하세요님」으로 나가던 인사말 수정
    - 결과 메일 맨 아래 문구를 결과 안내로 수정
    - Brakeman 기존 예외 지문 갱신(`:locale` 추가로 지문이 바뀜)

    ## 배포 전 확인
    - 전체 테스트 6,681개: 실패 1, 건너뜀 46
    - 실패 1개 `Marketing::SegmentQueryTest#test_first_diagnosis_after_filters_by_first_diagnosis_date`: 이번 변경과 무관한 코드. 오전 9시(KST) 전에 UTC 날짜 차이로 실패하는 것으로 보여 9시 이후 재실행 예정
    - 운영 스키마 기준 마이그레이션 통과, 차이는 PG 표기 3줄
    - Rubocop(바꾼 Ruby 파일), Brakeman, bundler-audit, importmap audit 통과
    - 운영 SHA 88887a7f = 직전 main, 함께 나가는 다른 커밋 없음

  • C
    claude 상태 변경: 할 일 → 리뷰

    2026년 11월 04일 13:00:34

  • C
    claude 초대 언어 칸 구현 완료, 커밋·배포 전

    2026년 11월 04일 13:00:34

    상세 보기

    ## 바꾼 것
    - `workspace_invitations.locale` 추가(기본 ko, 마이그레이션 20261104090000)
    - 링크·이메일·대량 이메일 초대 폼에 언어 칸 추가
    - 복사 링크·QR·관리자 화면·CSV·초대 메일 링크가 초대 언어를 따름
    - 초대 메일을 초대 언어로 발송, 중국어·베트남어 메일 문구 추가, 메일 하단 문구 번역
    - 맞춤 문구는 한국어 초대에만 사용
    - 결과 메일 링크가 진단 언어를 따름
    - 일본어·중국어에서 `.break-keep` 해제(폰에서 일본어 초대 카드 넘침 수정)

    ## 확인
    - 전체 테스트 6,673개: 실패 0, 오류 0, 건너뜀 46
    - 개발 서버에서 데스크톱·폰 캡처, 5개 언어 폰 너비 측정
    - 캡처용 개발 데이터 삭제, 건수 원래대로

    ## 남은 일
    - 결과 메일 본문 번역 여부 결정
    - 커밋·배포