Skip to content

Weekly v0.282.0

Choose a tag to compare

@github-actions github-actions released this 02 Sep 08:29
· 52 commits to main since this release

v0.282.0 — 주 격자가 옮겨진 주에도 작성 화면이 내 보고서를 엽니다

주차 시작 요일을 바꾸면 주 격자만 옮겨지고 이미 그 위에 놓인 보고서는 따라오지 않습니다. 전환되는 한 주 동안 기존 격자로 쓰던 보고서는 다른 week_start 로 같은 7일을 덮고 있는데, 작성 화면이 여는 현재 보고서(GET /api/v1/reports/current)는 주차 시작일이 정확히 일치하는 행만 찾고 있었습니다. 그래서 작성자의 보고서가 화면에서 사라지고, 그 자리에 뜬 빈 편집기는 저장할 때마다 409 REPORT_PERIOD_OVERLAPS 만 돌려줬습니다.

이번 7일을 덮고 있는 보고서를 엽니다

  • 현재 보고서를 날짜 정확일치가 아니라 기간 겹침(weekCoveringDays)으로 찾습니다.
  • 관리자가 주차 시작 요일을 바꿀 때 확인하는 경고문은 "작성자는 기존 보고서를 열어 이어 써야 합니다"라고 말합니다. 이제 화면이 그 일을 대신 합니다.
  • 화면이 보여 주는 주차는 보고서가 실제로 덮고 있는 기간이므로, 작성자는 자기가 어느 주를 이어 쓰고 있는지 알 수 있습니다.
  • 주 시작 요일을 바꾸지 않은 배포에서는 동작이 이전과 완전히 같습니다. 정확일치와 겹침이 같은 답을 냅니다.

weekIsFree 는 같은 7일을 덮는 두 번째 보고서를 이미 거절하고 있었으므로, 원인은 "쓸 수 없다"고 답하는 쪽과 "네 보고서는 없다"고 답하는 쪽이 서로 다른 질문을 하던 것이었습니다. 두 화면이 같은 문장을 쓰게 했습니다.

검증

실제 PostgreSQL에서 회귀 시험 하나를 더했습니다. 옛 격자로 쓰던 보고서를 주 시작 요일을 바꾼 뒤에도 작성 화면이 그대로 여는 것과, 같은 기간의 두 번째 보고서 저장이 여전히 409 로 막히는 것을 함께 잡습니다. 고치기 전에는 실패합니다.

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

업그레이드

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

주 시작 요일을 최근에 바꾼 조직에서 전환 주에 빈 편집기를 보고 다시 쓰던 작성자가 있었다면, 그 저장은 모두 거절되었으므로 잃어버린 내용은 없습니다. 올린 뒤 작성 화면을 다시 열면 원래 보고서가 그대로 있습니다.

오프라인 배포 자산

  • 파일: weekly-v0.282.0.tar.gz
  • 크기: 9248289 bytes
  • SHA-256: 3502b73fc797c8a3052233609ce6908ff1080bb3d6d231374dace7d1ca5b8c17
  • 이미지 다이제스트: sha256:e98b5ac8991954cf382f8d75e6b0c5b3f480218f8f80663de21750d6fe5f7bca

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

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