SSOT 이월 항목 해소 — 내부 키 네이밍 개정·Sprint-250 ADR frontmatter·ADR 카운트·c-ares CVE

요약Sprint 249~250 이월 문서 개정 3건 처리. ①CLAUDE.md Q-5 내부 키 네이밍 SSOT 개정 — Gateway→MSA(`INTERNAL_KEY_<TARGET>`) / 서비스 간 직접 호출(`<TARGET>_SERVICE_KEY`) 호출 경로별 2패턴 명시(Sprint 249 결정 반영). ②Sprint-250 ADR KR+EN frontmatter 누락 추가(Critic P2 해소). ③docs/adr/README.md ADR 카운트 188개 갱신 + blog/Dockerfile c-ares CVE 해소. 레포 커밋 3건(04b74bb·854c90e·ee4d4fe), Critic CLEAN.

날짜
영향도보통

날짜: 2026-07-17

목표

Sprint 249~250에서 이월된 문서 개정 항목 완전 해소:

  1. CLAUDE.md Q-5 내부 키 네이밍 SSOT가 단일 패턴(<SERVICE>_SERVICE_KEY)만 기술 → 실제 코드의 두 패턴(Gateway 아웃바운드·서비스 간 직접 호출) 반영 미흡
  2. Sprint-250 ADR KR+EN frontmatter 항목 누락 → Critic P2 미결
  3. docs/adr/README.md ADR 카운트 구식 + blog/Dockerfile c-ares CVE 잔존

결정 사항

D1. 내부 키 네이밍 SSOT 2-패턴 분리 (CLAUDE.md Q-5 개정)

기존: 단일 패턴 <SERVICE>_SERVICE_KEY만 명시
변경: 호출 경로별 2패턴으로 분리

방향환경변수 패턴예시SSOT 코드 파일
인바운드 (자기 서비스 키 검증)INTERNAL_API_KEY모든 서비스 공통
아웃바운드 — Gateway → MSAINTERNAL_KEY_<TARGET>INTERNAL_KEY_PROBLEMservices/gateway/src/common/config/service-keys.config.ts
아웃바운드 — 서비스 간 직접 호출<TARGET>_SERVICE_KEYPROBLEM_SERVICE_KEYservices/submission/src/common/problem-service-client/problem-service-client.ts, services/github-worker/src/config.ts

근거: Sprint 248 인시던트 재발 방지 — SealedSecret 봉인 시 CLAUDE.md 예시가 아닌 실제 코드 config 필드명을 SSOT로 사용해야 한다는 교훈(Sprint 248)을 SSOT 자체에 명문화.

D2. Sprint-250 ADR frontmatter 누락 항목 추가

docs/adr/sprints/sprint-250.mddocs/adr-en/sprints/sprint-250.md 모두 frontmatter 항목(related_memory 등) 누락 → Critic P2 지적 해소.

D3. 문서·CVE 갱신

  • docs/adr/README.md: ADR 카운트 188개로 정확화
  • blog/Dockerfile: c-ares CVE 취약 버전 해소

완료 항목

커밋PR내용
04b74bbdocs/adr/README.md ADR 카운트 188개 갱신 + blog c-ares CVE 해소
854c90e#468CLAUDE.md Q-5 내부 키 네이밍 SSOT 개정 (2패턴 분리)
ee4d4fe#469Sprint-250 ADR KR+EN frontmatter 누락 추가 + ADR 카운트 정합

Critic 결과: Codex gpt-5.5 (--base 04b74bb) — 문서 전용 변경 → findings 0건 CLEAN.