ES /docs

RestClient::Forbidden: 403 Forbidden

Service
cupixworks-api
Occurrences
463
Status
Approved
Confidence
85%
Actionability
52%
Cluster ID
6312f4e9-203e-4dca-8187-1abb9316cb2b
First Seen
2026-07-10 01:31 UTC
Last Seen
2026-07-10 01:40 UTC
Actions
현재 상태 approved 에서는 실행할 액션이 없습니다.

RestClient::Forbidden: 403 Forbidden

What Happened#

cupixworks-api (tesla) 의 Cupix::NotificationService#create_user_recipe 가 notification-service 호출 시 인증 헤더를 만들기 위해 self.class.service_jwt 를 호출하는데, service_jwtprivate_class_method 로 선언되어 있어 explicit receiver (self.class) 로 호출할 수 없다. 그 결과 NoMethodError: private method 'service_jwt' called for class Cupix::NotificationService 가 발생한다. FacilityPermission 생성/권한 부여 이벤트마다 pub/sub subscriber UserRecipeGenerator 가 이 경로를 타므로, 2026-08-04 dev 환경에서 약 11분 동안 100건 이상 폭증했다.

이 클러스터의 Representative Error 는 RestClient::Forbidden: 403 Forbidden 이지만, 이는 Error Tracking 이 여러 변종을 하나의 issue 로 묶으면서 고정한 STALE 샘플이다. 최근(last_seen 인근 및 그 이후) 로그의 실제 신호는 위의 service_jwt NoMethodError 이므로 이를 root cause 로 분석한다 (아래 Log Evidence 의 discrepancy 항목 참조).

Quick Facts#

Field Value
exception.class NoMethodError
exception.message private method 'service_jwt' called for class Cupix::NotificationService
top_frame lib/cupix/notification_service.rb:20 (self.class.service_jwt)
runtime Ruby / Rails (tesla), Sidekiq/pub-sub subscriber
deploy origin/develop (buggy). 54f4417c2 이후. origin/master 는 미영향
env development (dev cluster, s3.me-central2 / cupixworks-dev-hosting-*)

Affected Teams#

Team / Domain Error Count Impact
cupixworks-api (notification recipe 생성) 100+ (2026-08-04 17:37–17:48 burst, 그 외 산발) FacilityPermission 부여 시 user email recipe (record_preview_ready / record_processing_completed / facility_new_project) 미생성 → 해당 사용자 이메일 알림 누락

Timeline#

  1. 2026-06-04 13:47 KSTa6a535e8d (TSLA-13082): api_token → 내부 user JWT (service_jwt) 인증으로 교체
  2. 2026-06-11 09:31 KST54f4417c2 (TSLA-13082 rubocop Lint/IneffectiveAccessModifier 자동수정): private_class_method :service_jwt, :find_or_create_internal_user 추가 → self.class.service_jwt 호출이 깨짐
  3. 2026-07-10 10:31–10:40 KST — 클러스터 first_seen/last_seen (Representative "403 Forbidden", Datadog 14일 retention 밖이라 원본 로그 조회 불가)
  4. 2026-08-04 17:37–17:48 KST — dev 환경에서 NoMethodError private method 'service_jwt' 100+건 폭증 (현재 실제 신호)

Scoring#

Confidence 85% · Actionability 52%

Confidence#

Dimension Score Detail
Evidence completeness 5/5 6 code refs, 5 log queries
Code path explicitness 3/3 6 file:line refs
Log evidence 3/3 section, query, pattern
RCA structure 3/3 3/3 sections
Revision history 0/3 0 revision(s)
Agent execution 3/3 success

Actionability#

Dimension Score Detail
Fix complexity 5/5 trivial
Affected files 1/5 10 file(s)
Single repo 1/3 2 service(s)
Immediate actions 0/3 absent
Testability 2/3 test mentioned
External dependency 1/3 external deps found
Data migration 3/3 no migration