Skip to content

관측 기반 실패 code 의 일시 전환 - #1241

Merged
m-a-king merged 1 commit into
devfrom
refactor/1240-transient-observed-codes
Oct 19, 2026
Merged

m-a-king merged 1 commit into
devfrom
refactor/1240-transient-observed-codes

Conversation

@m-a-king

Copy link
Copy Markdown
Collaborator

한눈에

추출 실패 가운데 확정으로 닫는 범위 축소에 맞춘 번역 표 정리

  • 이전: 추출 서비스가 확정 실패로 보내는 사유 12개를 이 서비스가 각각 자기 예외로 바꿔 받음
    • 그중 9개는 받은 페이지를 보고 내린 판정(상품 아님·빈 페이지·접근 거부·값 불신)
  • 계약이 그 9개를 일시 실패로 돌림
    • 추출 서비스가 그 건을 502 로 보내고 이 서비스는 한 번 더 시도한 뒤 닫음
    • 원인: 봇 방어·앱 오류·빈 페이지로 받은 페이지 자체가 가짜일 수 있음
  • 번역 표에는 링크 형식 위반·내부망 차단·이미지 형식 셋만 남김
  • 쓰임이 없어진 예외 사유 둘(읽을 내용 없음·대상 차단)을 삭제
  • 머지하면 dev 자동 배포. prod 는 promote 때 반영

Situation

추가

Task

번역 표 정리

Action

422 번역 표에서 9개 제거

  • 남는 것은 링크 형식 위반·이미지 형식·내부망 차단
  • 전이 판정(422 면 확정, 그 외 일시)은 변경 없음

쓰임 없어진 사유 삭제

대상 처리 원인
예외 사유 SNAPSHOT-003(읽을 내용 없음)·EXTRACTOR-003(대상 차단) 삭제, 번호 결번 번역 표에서만 생성됨
bucket UNREADABLE·BLOCKED 유지, 부여 사유 0 계약 enum 과 1:1 대조

테스트 조정

  • 사유별 reason 분기 표에서 9개 제거
  • 대상 차단 통합 테스트를 내부망 차단(internal_error)으로 교체
  • reason 유일성 테스트를 남은 사유 수 기준으로 교체

Result

집계 변화

  • 이 9개 건은 attempt 소진으로 닫혀 reason 이 retry_exhausted 로 모임
    • 파싱 실패 알림 룰은 reason 을 조건으로 쓰지 않아 변경 없음
  • 위험: 대시보드의 not_product·unreadable·blocked 추세가 0 으로 꺾임. code 별 관측은 extractor 메트릭에서

후속

  • 실패 항목 새로고침 거부(WISH-008)의 문구·주석이 "재추출해도 같다"를 전제함. 별건

연관 이슈

@m-a-king m-a-king added the refactor 구조 개선, 외부 동작 불변 label Oct 18, 2026
@m-a-king m-a-king linked an issue Oct 18, 2026 that may be closed by this pull request
@m-a-king m-a-king self-assigned this Oct 18, 2026
@coderabbitai

coderabbitai Bot commented Oct 18, 2026 •

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration
  • Configuration used: Repository: TeamPiKi/core/.coderabbit.yml
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 34c86dc0-aa2e-4b7f-a2b9-e82596557485
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown

Discord 스레드 연동용 메타데이터입니다. discord-pr-bot 워크플로가 자동 생성하며, 수정·삭제하면 PR 과 Discord 알림 연동이 끊깁니다.

- 422 번역 표에서 code 9개 제거, INVALID_URL·IMAGE_UNSUPPORTED·BLOCKED_HOST 만 남김
  - 원인: 계약(TeamPiKi/infra#145)이 받은 페이지 기반 판정을 전부 TRANSIENT 로 전환
  - 결과: 그 건은 502 로 와 재시도 뒤 retry_exhausted 로 집계
- 번역 표에서만 쓰던 예외 팩토리·code 삭제
  - SNAPSHOT-003(읽을 내용 없음)·EXTRACTOR-003(대상 차단)은 결번
  - bucket UNREADABLE·BLOCKED 는 계약 enum 과 1:1 이라 유지, 부여 code 0
- 전이 판정은 status 전용이라 변경 없음
@m-a-king
m-a-king force-pushed the refactor/1240-transient-observed-codes branch from dddf9a2 to d671472 Compare October 19, 2026 11:17
@m-a-king
m-a-king merged commit 6bd6ed4 into dev Oct 19, 2026
4 checks passed
@m-a-king
m-a-king deleted the refactor/1240-transient-observed-codes branch October 19, 2026 11:20
m-a-king added a commit that referenced this pull request Oct 20, 2026
- dev 에서 함께 온 문서(직접 수정 없음): terraform-grafana/README.md · terraform/README.md

- 실패 code 번역 표에 dev 의 일시 전환(#1241) 반영. 영구 실패는 계약 enum 키 3개
  - 결과: 계약 대조 테스트(ExtractionErrorCatalogTest) 실패 해소
- 최종 주소는 http 도 받음(dev 의 parseHop). parseOrNull 과 합쳐 parseHopOrNull 로 둠
  - 정체 URL 은 NormalizedInput 이 https 로 다시 조립해 http·https 가 하나로 모임
- 토너먼트 후보 추가·수정 공용 검사가 옛 클론 id 지표(#1191)를 남김. dev 의 rejectCloneId 는 흡수
- 쓰지 않는 예외 팩토리 024·025 는 양쪽 삭제를 모두 받음. 031 코드는 dev 를 따라 삭제
- 위시 우승 칩(#1237)을 WishResult 로 옮김
  - 우승 조회는 후보의 itemId 로 바로 거름. 이 브랜치에는 후보의 버전 포인터가 없음
- 정체성 기록기와 그 테스트는 이 브랜치가 지운 채로 둠
- dev 의 새 테스트(parseHop·우승 칩)를 이 브랜치 API 로 고침. 최종 주소 테스트는 http 허용 규칙으로 고침
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

refactor 구조 개선, 외부 동작 불변

Projects

None yet

Development

Successfully merging this pull request may close these issues.

관측 기반 실패 code 의 일시 전환

1 participant