ai-coding-mines목차GitHub

"어느 파일이 실제로 실행되는가"는 호출 체인을 끝까지 따라가야 확정된다

Git · 자동화

증상

파일을 고쳤는데 다음 실행에서 변경이 사라진다.

원인

러너가 정본 스크립트를 복사해 날짜 스탬프 파일을 만든 뒤 그걸 실행하고 있었다. 날짜 파일을 패치하면 다음 실행이 새 복사본으로 덮어써 유실된다.

해법

  1. 패치 전 호출 체인을 끝까지 추적해 정본을 확정한다
  2. 정본만 고치고 파생 복사본은 고치지 않는다(어차피 덮인다)
  3. 파편은 지우거나 _archive/로 옮긴다 — 남아 있으면 다음에 또 잘못 고른다

"크론 목록에 없다 = 자동화 안 됨"이 아니다. 크론에 걸린 건 하나뿐인데 그 뒤로 3단계가 더 붙어 있었다.

같은 계열

콘솔·대시보드에서 넣은 값(키·토글·수동 편집)은 레포에 없다. 로컬 사본을 베이스로 패치하면 키가 빈 값으로 덮여 기능이 조용히 꺼진다. 패치 전 라이브에서 현재 파일을 다시 받고, 패치 후 그 값이 살아 있는지 확인한다. 없어져도 에러가 안 난다.

정본이 옳은데 과거분이 틀린 경우

코드를 아무리 봐도 원인이 안 나오는 형태가 있다 — 현재 정본이 옳기 때문이다. 정본은 플래그를 True로 넣는데 등록분의 절반이 False였고, 결함은 특정 ID 이하에서만 나타났다. 뚜렷한 ID 경계는 "현재 코드의 버그"가 아니라 "다른 경로(수동·구버전 스크립트)가 그 이전에 올린 분량" 을 뜻한다. 이때 판별법은 코드 점검이 아니다. ID 구간으로 모수를 세대별로 나누고, 세대마다 표본을 뽑아 "언제 무엇으로 올렸나" 를 묻는다. 계정마다 등록 경로가 달랐다면 같은 결함이 한 계정에만 나타난다.

ID 경계가 뚜렷하면 코드가 아니라 등록 세대를 본다.