Repository navigation
Conversation
클로즈드 베타 기여자용 터미널 창 배지를 추가한다. 표시 값이 마감된 구간의 집계라 렌더마다 변하면 안 되므로, badge_snapshot 테이블에 미리 계산한 JSON을 복합 PK로 저장하고 렌더는 그것만 읽는다. V7이 스냅샷·자격·이력을 함께 적재한다. 악센트 3색(cyan/green/purple)을 ?mode= 축에 노출하기 위해 boolean isDark를 BadgeMode enum으로 바꿨다. 기존 배지 3종은 패밀리 훅에서 boolean을 유지해 렌더 결과가 바뀌지 않는다.
feat: beta-tester 배지 추가와 mode 축 enum 개조
2 of 5 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🏷️ 작업 유형
📋 변경 사항
베타 테스터 배지(
?theme=beta-tester)를 추가하고, 이를 위해 색상 모드 축을boolean에서 enum 으로 바꾼다. develop 에 머지된 #15 를 main 으로 올린다.beta-tester 배지 (고정 스냅샷 방식)
badge_snapshot(github_id, badge_code, payload JSONB)신설 — 렌더 시점 집계 대신 미리 계산된 payload 를 복합 PK 로 한 번 읽는다V6배지 카탈로그 등록 +badge_compact_number(BIGINT)함수,V7스냅샷·부여·이력 적재V7은 고정값을 박지 않고users기준INSERT ... SELECT로 동적 적재 (베타 기간 컷오프2026-08-09 00:00:00+09)TKPG-ADMINmode 축 리팩터링
boolean isDark→BadgeModeenum (lightdarkcyangreenpurple)supportedModes()/defaultMode()를 선언해 Redis 캐시 키 카디널리티를 제한한다boolean isDark를 그대로 유지 —build()시그니처만 바뀌어 렌더 결과는 무변경버전
pom.xml26.08.12→26.08.26✅ 테스트
./mvnw test— 전체 통과. 신규 유닛 테스트 6개 클래스 추가 (BadgeModeTest,BadgeSnapshotIdTest,BetaTester{BadgeTheme,Mascot,ProviderMark,Snapshot}Test)./mvnw verify— Testcontainers 통합 테스트 통과.BadgeSnapshotRepositoryIntegrationTest12케이스로 jsonb 왕복·복합키 격리·badge_compact_number계약 검증postgres:16-alpine컨테이너에V1~V7적용, 경계 사용자(2026-08-01/2026-08-20)로 컷오프와 스냅샷·부여·이력 행수 확인.claude/tokenphage-preview.html로 cyan/green/purple 3종 육안 확인리뷰 시 볼 지점
V7은 적용 후 수정 불가(체크섬)다. 스테이징 반영 후 실제 payload 를 눈으로 확인해야 한다.