
Phase 5는 케이스 스터디만으로 끝나지 않았어요. 로드맵에 같이 적혀있던 "백로그 관리"까지 오늘 시작했고, 그 과정에서 나온 첫 항목(RAG 인덱스 자동 갱신)을 바로 완성까지 끝냈어요.
지금까지 devlog마다 "나중에 하자"고 미뤄둔 것들을 한곳에 모았어요. 크게 세 덩어리로 나눴어요.
/help커맨드, 사용량 대시보드, OG 이미지 등"RAG 인덱스 자동 갱신"부터 시작하기로 했는데, 방식을 두고 잠깐 고민했어요.
fetch_posts.py/build_index.py는 kodex-code-review-agent 저장소에 있고, 실제로 쓰이는 embeddings.json은 kodex-portfolio-site 저장소에 복사되는 구조라, 완전 자동화하려면 GitHub Actions가 저장소 두 개를 넘나들어야 해요. 처음엔 "로컬 스크립트 하나로 줄이는 정도"를 제안했는데, "자동 갱신이면 나중에 편하다"는 이유로 완전 자동화로 가기로 결정했어요.
kodex-portfolio-site에 워크플로를 하나 추가했어요.
on:
schedule:
- cron: "0 21 * * *" # 매일 06:00 KST
workflow_dispatch: {}
kodex-portfolio-site(자기 자신)와 kodex-code-review-agent(스크립트) 둘 다 체크아웃embeddings.json을 먼저 시딩 — build_index.py가 증분 업데이트를 지원하니까, 캐시를 안 넣어주면 매번 전체를 재임베딩하는 낭비가 생겨요. 그래서 사이트에 이미 있는 임베딩을 먼저 복사해서 캐시로 씀fetch_posts.py로 최신 벨로그 글 수집 → build_index.py로 증분 임베딩src/data/kodex-embeddings.json에 덮어쓰기크로스 레포 자동화라 걱정했던 것과 달리, 워크플로가 자기 저장소(kodex-portfolio-site)에만 커밋하면 되는 구조로 짜서 레포 간 쓰기 권한 토큰 같은 복잡한 설정 없이, GEMINI_API_KEY 시크릿 하나만 등록하면 끝났어요.
gh secret set GEMINI_API_KEY --repo DoyuIm/kodex-portfolio-site
gh workflow run으로 수동 실행해보니 23초 만에 초록 체크로 끝났고, 실제로 새 커밋까지 만들어서 푸시된 걸 확인했어요.
74fd56f chore: 벨로그 최신 글로 임베딩 자동 갱신
이 커밋 덕분에 Vercel도 자동 재배포됐어요. 이제부터는 새 글을 써도 임베딩 재생성 → 사이트 복사 → 커밋을 손으로 안 해도, 다음날 아침이면 알아서 반영돼있어요.
Phase 5의 두 축(케이스 스터디, 백로그 관리)이 다 갖춰졌고, 백로그 첫 항목도 바로 완료 처리했어요. "반복 운영 작업" 목록에서 항목 하나가 완전히 사라진 셈이에요.
백로그에 남은 "새로 해볼 만한 기능" 3개(/help 커맨드, 포트폴리오 사이트 OG 이미지, 사용량 대시보드)를 Day14에 순서대로 진행할 예정이에요.