[P4] Toss::Client 서비스 구현

ID: f320a61e-944c-488c-a2a7-b9e8e657613e

높음 리뷰

## 설명\nPRD Section 11.1 기반. Faraday HTTP 클라이언트.\n\n## 변경 사항 (PRD v2.1)\n- issue_billing_key, charge_billing 메서드 삭제\n- 남은 메서드: confirm_payment, cancel_payment, get_payment\n- find_user_email, find_user_name 헬퍼 삭제\n\n## 참조\n- PRD: Section 11.1\n- 스킬: `service-objects`, `rails-testing`\n\n## 완료 기준\n- [ ] confirm_payment, cancel_payment, get_payment 구현\n- [ ] Basic Auth 헤더 설정\n- [ ] 에러 응답 파싱\n- [ ] Faraday retry 미들웨어\n- [ ] 서비스 테스트 통과 (HTTP stub)\n\n## 의존성\n- [P1] DB 스키마 마이그레이션 Part 2

첨부 이미지

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

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

담당자: 팀리드
생성일: 2026년 03월 25일 11:53

활동 로그

  • 팀리드 상태 변경: 진행 중 → 리뷰

    2026년 03월 26일 11:12:46

  • D
    developer-2 Toss::Client 완료

    2026년 03월 26일 11:12:31

    상세 보기

    ## 변경 사항
    - Toss::Client 서비스 (PRD 11.1 기반)
    - confirm_payment, cancel_payment, get_payment
    - ConfigurationError (비밀키 미설정), 네트워크 에러 graceful 처리
    - 의존성 주입 (secret_key: 파라미터)
    - faraday-retry gem 추가
    - 10개 테스트 통과, 전체 419 runs 0 failures

    ## 변경 파일
    - app/services/toss/client.rb
    - test/services/toss/client_test.rb
    - Gemfile, Gemfile.lock (faraday-retry)

  • 팀리드 위임: developer-2에게 'Toss::Client — Faraday HTTP 클라이언트 + confirm/cancel/get_payment + Basic Auth + 에러 처리 + 테스트' 작업 배정

    2026년 03월 26일 11:09:19

  • 팀리드 티켓 클레임 완료

    2026년 03월 26일 11:08:22

  • 팀리드 상태 변경: 할 일 → 백로그

    2026년 03월 25일 11:57:24