-
한글 URL 인코딩 실수로 네비게이션 오탐 유발
review_blog.py에서 한글을 포함한 URL 처리 시 발생하는 인코딩 오류와, 그로 인해 연쇄적으로 터지던 네비게이션 오탐 문제를 잡았다.
읽기 → -
보관된 글 404 에러를 홈 리다이렉트로 수정
보관된 상태의 글들이 404를 반환하고 있었다. 이를 홈으로의 301 영구 리다이렉트로 바꿨는데, 덕분에 이미 검색 색인에 등재된 751건 글의 링크 권한을 보존할 수 있었다.
읽기 → -
충전 페이지를 라이트·다크 모드로 완전 개편
Figma 디자인 시스템을 기준으로 충전 페이지 전체 UI를 교체했다. 단순히 화면을 다시 그린 게 아니라, 라이트 모드와 다크 모드를 함께 지원하는 구조로 재설계한 작업이다.
읽기 → -
출금 승인 실패도 동시성 제어로 정합성 보장
출금 일괄 승인 기능에서 성공 경로와 실패 경로의 동시성 제어 방식을 통일했다. 구체적으로, 실패 분기에서도 CAS(Compare-And-Swap) 기반의 선점-복구(optimistic locking & rollback) 패턴을 적용해서 데이터 정합성을 동일 수준으로 보장하도록 정정한 작업이다.
읽기 → -
출금과 잔액복구 사이 동시성 경합, 3곳 통일로 막다
출금 상태전환과 잔액복구 사이에서 발생하던 race condition을 CAS(Compare-And-Swap) 선점 방식으로 통일해 보강했다. 결제 플랫폼에서는 동시에 일어나는 작업들 사이의 경합(race condition)이 잔액 손실이나 중복 복구 같은 심각한 문제로 이어질 수 있는데, 이번 수정은 그런 위험을 3개 지점에서 동시에 차단한 사례다.
읽기 → -
파트너 출금 승인에서 동시 요청 처리 시 상태 경합 수정
결제 플랫폼의 파트너포털 출금 승인 기능에서 발견한 동시성 버그를 고쳤다. 여러 요청이 거의 동시에 같은 출금 건을 승인하려 할 때, 상태 체크와 업데이트 사이의 간격으로 인해 중복 처리나 잔액 불일치가 생기는 문제였다.
읽기 → -
송금 실패 시 파트너 잔액 복구 프로세스 개선
결제 플랫폼의 출금 송금이 실패했을 때 파트너 계정의 잔액을 제대로 복구하고, PG가 비활성화된 상태에서 배치가 즉시 실패하도록 처리를 보강했다. Codex 정적 검증 도구에서 6차 검증 시 지적한 사항들을 개선한 작업인데, 돌아보니 이 부분이 생각보다 많은 엣지 케이스를 감싸고 있더라.
읽기 → -
출금 채널 단순화로 결제 라우터 부채 정리
결제 시스템에서 특정 결제사가 비활성화되면서 그에 맞춘 라우터 로직을 정리했다. 겨우 한 섹션 차단 같지만, 이 작업 뒤에는 다중 PG 지원으로 인한 복잡도 관리와 단계적 마이그레이션이라는 큰 그림이 있다.
읽기 → -
원장 검증 자동화로 결제 흐름 신뢰성 확보
결제 플랫폼의 내부 원장 관리 유틸리티에 대한 golden master 단위 테스트를 작성했다. jeju Step 4 진행 전 필수 선행 작업이었는데, 이게 단순한 테스트 추가가 아니라 팀이 품질을 어디까지 담보할지에 대한 의사결정 포인트였다.
읽기 → -
구독 결제 검증 강화와 등급 동기화 일관성 확보
구독 결제 플랫폼에서 빌링키 관리와 웰컴 등급 정책을 동시에 정리한 작업을 기록으로 남긴다.
읽기 → -
CDN 엣지 IP 회전 우회 막은 rate limit 개선
블로그 서비스의 rate limit이 클라우드플레어 엣지 IP를 기준으로 작동하면서 공격자가 쉽게 우회할 수 있다는 걸 발견했다. CF-Connecting-IP 헤더를 기준으로 실제 클라이언트 IP를 감지하도록 변경해서 이 취약점을 막았다.
읽기 → -
불완전한 상태에서의 배치 수동 실행 차단
등급 동기화 배치(GradeSyncBatch)에 상태 기반 실행 제어를 추가했다. 특정 조건(웰컴 비활성)에서 수동 실행이 가능하던 구간을 막아 데이터 무결성 문제를 사전에 방지하는 작업이었다. 코드리뷰 2차 검증에서 지적된 부분을 처리한 것이다.
읽기 → -
결제 라우터 우회 취소 직접 호출 7곳 차단
결제 시스템에서 클라이언트가 정상 플로우를 벗어나 취소 API를 직접 호출하려는 취약점을 발견했다. 같은 문제가 여러 진입점에서 반복되고 있었고, 자동 검증 도구의 지적으로 일괄 보강을 진행했다.
읽기 → -
반환금 실제 확정치로 정정
웰컴 관련 반환금 산정 기록을 팀 공유 문서에 정정하는 커밋이다. 기준 금액 6,995,000에서 실제 반환액 5,031,225로 조정했고, 위약금과 상품권 조정 사항을 함께 문서화했다.
읽기 → -
기능 삭제 취소 후 정상 동작 확인 반영
쿠폰 시스템의 외부 연동 로직에서 삭제 예정이던 기능(chlifes)을 취소하고, 정상 동작을 재확인한 후 이를 문서에 반영하는 작업을 했다. 단순한 코드 정리처럼 보일 수 있지만, 이 과정 속에는 팀의 의사결정 추적성과 기능 생명주기 관리라는 중요한 주제가 있다.
읽기 → -
웰컴 서비스 비활성 시 인증 요청 차단
결제 플랫폼의 일부 결제 수단(웰컴)이 2026년 6월부터 비활성화되면서, 이를 반영한 차단 로직을 member·pay 도메인에 추가했다. 단순해 보이지만 여러 진입점에서 동일한 정책을 강제해야 하는 일이었다.
읽기 → -
새 결제 경로 추가, 구 webhook 5개 정리
웰컴 카드 온보딩과 정기 결제 빌링 경로를 지원하면서, 동시에 기존 webhook 5개를 비활성화했다. 결제 플랫폼을 점진적으로 개선하는 과정에서 마주하는 전형적인 마이그레이션 작업이었다.
읽기 → -
분쟁 종결, 6,995,000원 전액 납부 확정
웰컴 오지급 분쟁이 최종 정산됐다. 상계 청구를 철회하고 6,995,000원 전액을 확정 수령하기로 합의했다는 기록을 .claude/CLAUDE.md에 남겼다.
읽기 → -
웰컴 등급 동기화 6곳 비활성화로 안정성 확보
웰컴 서비스의 외부 등급 동기화 기능을 프로덕션 환경 6곳에서 비활성화했다. 단순 버그 수정이 아니라, 특정 지점에 한정된 문제를 체계적으로 격리하고 단계적으로 대응하기 위한 선택적 비활성화 작업이었다.
읽기 → -
특가 프로모션에 실시간 카운트다운 추가
오늘만 제공되는 특가 프로모션에 카운트다운 타이머를 추가했다. 사용자의 로컬 시간대 기준으로 자정까지 몇 시간 몇 분 몇 초가 남았는지 HH:MM:SS 형식으로 실시간 표시하고, 자정이 지나면 자동으로 리셋되는 기능이다.
읽기 →