Skip to content

Weekly v0.283.0

Choose a tag to compare

@github-actions github-actions released this 02 Sep 15:02
· 46 commits to main since this release

v0.283.0 — 주 격자가 옮겨진 주에 팀원 자료가 "미작성"으로 올라가지 않습니다

주차 시작 요일을 바꾸면 주 격자만 옮겨지고 이미 그 위에 놓인 보고서는 따라오지 않습니다. 전환되는 한 주 동안 기존 격자로 쓴 팀원의 보고서는 다른 week_start 로 같은 7일을 덮고 있는데, 팀장이 고른 팀원 자료를 붙이는 조회는 주차 시작일이 정확히 일치하는 행만 찾고 있었습니다. 그래서 이미 보고서를 쓴(그리고 weekIsFree 때문에 새 날짜로 다시 쓸 수도 없는) 팀원이 자료 없이 돌아왔고, PPTX 는 그것을 이름 옆의 "주간보고 미작성 / 해당 주차 주간보고가 없습니다" 로 바꿔 경영 보고 자리에 올렸습니다.

이번 7일을 덮고 있는 팀원 보고서를 붙입니다

  • 팀원 자료를 날짜 정확일치가 아니라 기간 겹침(weekCoveringDays)으로 찾습니다. 겹치는 것 중 week_start 가 가장 늦은 하나를 붙이며, 이는 currentReport 가 하는 선택과 같습니다.
  • 작성 화면의 GET /api/v1/reports/current/included-materials 와 저장된 보고서를 여는 GET /api/v1/reports/{id} 가 같은 함수를 쓰므로 두 경로가 함께 고쳐집니다.
  • 팀원이 실제로 쓰지 않은 주는 그대로 비어 있습니다. 질문을 그 7일로 넓힌 것이지 "그 사람의 가장 최근 보고서"로 바꾼 것이 아닙니다.
  • 주 시작 요일을 바꾸지 않은 배포에서는 동작이 이전과 완전히 같습니다. 정확일치와 겹침이 같은 답을 냅니다.

v0.281.0 은 권고 메일에서, v0.282.0 은 작성 화면에서 같은 불일치를 고쳤습니다. 남아 있던 세 번째 자리가 팀장의 발표 자료였고, 틀린 말이 가장 크게 들리는 자리이기도 했습니다.

검증

실제 PostgreSQL에서 회귀 시험 하나를 더했습니다. 옛 격자로 쓴 팀원의 보고서가 요일을 바꾼 뒤에도 팀장의 자료에 요약과 업무까지 붙는 것과, 팀원이 쓰지 않은 다음 주가 다른 주의 보고서로 채워지지 않는 것을 함께 잡습니다. 고치기 전에는 실패합니다.

전체 Go 테스트와 go vet, 가드 검사, 프런트엔드 121개 시험·린트·프로덕션 빌드, 버전·OpenAPI·모달 검사를 통과했습니다.

업그레이드

API 스키마, 데이터베이스 마이그레이션과 새 환경변수는 없습니다. 기존과 같이 PostgreSQL을 백업한 뒤 v0.283.0 이미지를 올리면 바로 적용됩니다.

주 시작 요일을 최근에 바꾼 조직에서 이미 내보낸 PPTX 에 팀원이 "주간보고 미작성"으로 적혀 나갔다면, 그 파일 자체는 되돌릴 수 없습니다. 팀원의 보고서는 데이터베이스에 그대로 있으므로 올린 뒤 같은 주차를 다시 내보내면 자료가 붙은 장이 나옵니다.

오프라인 배포 자산

  • 파일: weekly-v0.283.0.tar.gz
  • 크기: 9250791 bytes
  • SHA-256: 4faea6ff0a9999ea98f7a3035b018746603338bbbb1f02dc2b8ca61045ad72df
  • 이미지 다이제스트: sha256:862a7fefb35fdf06be8044092dd0e6fc75849df50ffa6671e0446e5123714319

반입 전에는 파일이 온전히 도착했는지를 SHA-256으로, 그 파일이 담은 것이 빌드된 이미지가 맞는지를 아카이브 안의 다이제스트로 확인합니다. 옮기는 과정에서 압축을 풀었다 다시 묶으면 파일 해시는 달라지지만 다이제스트는 그대로입니다. docker image inspect --format {{.Id}} 는 이 값과 다를 수 있습니다 — Docker가 적재하면서 자기 식별자를 다시 매기기 때문이며, 확인에 쓰지 마십시오.

sha256sum weekly-v0.283.0.tar.gz
gzip -dc weekly-v0.283.0.tar.gz | tar -xO manifest.json | grep -o "blobs/sha256/[0-9a-f]\{64\}" | head -1
gzip -dc weekly-v0.283.0.tar.gz | docker load