MEMORY.md: 사실과 어긋난 두 항목 정정

argo-cd 절의 수치·상태는 전부 재확인해 그대로 뒀다(게이트 574→337→280→239, 10.4.0 0건,
BCI 16.0 빌드 PASS/CoverageProbe ok, 7.7.0 삭제·7.8.11 잔존).

- airflow 비결정적 렌더: 재렌더 조건을 "ArgoCD 재시작·hard refresh" 로 적어뒀는데, 이후
  실측에서 **일반 refresh 로도** 새 ReplicaSet 이 생겼다. 조건을 정정하고, 정해진 조치
  방향(dip-values placeholder + dip-console-api DeployPreInstall 치환)과 아직 커밋 전이라는
  것, 기존 테넌트는 재배포해야 적용된다는 것을 함께 적는다.

- define-chart-resources: "신규 차트 3종의 리소스 프로파일이 없다 / 규칙을 못 지켰다" 는
  사실이 아니다. 세 차트 모두 dip-resources-quotas.yaml 에 small/medium/large 를 갖고 있고
  차트 도입 커밋(6878b61)에 함께 들어갔다. 남은 건 문서에 전용 절이 없다는 것뿐이라
  그렇게 고쳐 적는다.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
wbsong111
2026-08-19 16:00:10 +09:00
parent f1d10a1d09
commit bfd87644c1
+17 -8
View File
@@ -70,11 +70,18 @@ Dockerfile 은 그대로다(모듈 목록·패키지 목록을 전부 값으로
### 별건으로 발견한 airflow 문제 2건
- **매니페스트가 비결정적이다.** `webserver-secret-key-secret.yaml``randAlphaNum` 으로
매 렌더마다 새 값을 만들어, repo-server 매니페스트 캐시가 날아갈 때마다(ArgoCD 재시작·
hard refresh) webserver 가 롤링되고 웹 세션이 끊긴다. reconcile 만으로는 재렌더가 일어나지
않아 상시 루프는 아니다(4시간 19분 동안 롤아웃 0회로 확인). `webserverSecretKey` 또는
`webserverSecretKeySecretName` 을 지정하면 해소된다. 카탈로그 기본값에 없어 모든 테넌트가
해당된다.
매 렌더마다 새 값을 만들어, repo-server 매니페스트를 다시 렌더할 때마다 Secret 과
Deployment 의 체크섬 애노테이션이 함께 바뀌어 webserver 가 롤링되고 웹 세션이 끊긴다.
캐시된 매니페스트를 그대로 쓰는 reconcile 만으로는 일어나지 않지만(4시간 19분 동안 롤아웃
0회), **일반 refresh 로도 일어난다**(hard refresh 나 ArgoCD 재시작에 한정되지 않는다 —
refresh 직후 새 ReplicaSet 생성을 실측). 카탈로그 기본값에 없어 모든 테넌트가 해당된다.
조치 방향은 정해졌고 **아직 커밋 전이다**: `dip-values.yaml`
`webserverSecretKey: "$WEBSERVER_SECRET_KEY"` 를 두고, dip-console-api 의
`catalog_airflow.go` `DeployPreInstall` 이 배포 시점에 난수로 치환한다. 차트 안에서는 못
고친다 — ArgoCD repo-server 는 클러스터 접근 없이 렌더하므로 `lookup` 이 항상 빈 값이고
(실측), 릴리스명 기반 결정적 파생은 공개 정보라 세션 서명 키로 부적합하다. 이미 배포된
테넌트는 저장된 values 에 placeholder 가 없어 **재배포해야 적용된다**.
- **migrations job 이 5분마다 재실행된다.** `migrateDatabaseJob.useHelmHooks: false`
hook 이 아닌 추적 리소스가 됐는데 `ttlSecondsAfterFinished: 300` 이 그대로라, TTL 삭제 →
ArgoCD selfHeal 재생성이 반복된다. `ttlSecondsAfterFinished` 를 끄거나 hook 으로 되돌린다.
@@ -218,9 +225,11 @@ SUSE BCI 고정 결정을 그대로 따랐고(ADR 자체는 미이관), 2026-08-
번호·후보 비교표)를 압축한 로컬 stub ADR 작성을 검토한다.
**`doc/define-chart-resources.md` 에 신규 차트 3종(`cloudnative-pg`, `cnpg-cluster`,
`etcd`) 의 Small/Medium/Large 리소스 프로파일이 없다.** CLAUDE.md 의 "신규 차트 추가"
규칙(리소스 프로파일 필수)을 아직 못 지켰다 — custom-values.yaml 의 기존
requests/limits/storage 값을 근거로 표를 추가하는 별도 작업으로 처리한다.
`etcd`) 의 전용 절이 없다 — 다만 리소스 프로파일 자체는 누락이 아니다.** 세 차트 모두
`dip-resources-quotas.yaml` 에 small/medium/large 티어를 갖고 있고(차트 도입 커밋 6878b61 에
함께 들어갔다), 다른 차트 절이 cnpg-cluster 를 외부 DB 로 쓸 때 그 파일을 가리킨다. 그래서
CLAUDE.md 의 "신규 차트 추가" 규칙은 지켜진 상태다. 남은 건 이 문서만 보는 사람이 세 차트를
찾지 못한다는 것뿐이라, 급하지 않다.
**`SBOM_PIPELINE_IMAGE` 재빌드가 보류돼 있다.** 이 마이그레이션으로 빌드 컨텍스트 경로가
`doc/scripts/Dockerfile``scripts/pipeline/Dockerfile` 로 바뀌었다. Dockerfile 내용