Skip to content

chore : B1 캘린더 데이터를 매일 수집하는 워크플로 추가 - #21

Draft
yuyeol3 wants to merge 1 commit into
mainfrom
yuyeol3/chore/calendar-daily-collect
Draft

yuyeol3 wants to merge 1 commit into
mainfrom
yuyeol3/chore/calendar-daily-collect

Conversation

@yuyeol3

@yuyeol3 yuyeol3 commented Nov 9, 2026 •

Copy link
Copy Markdown
Collaborator

변경점 👍

B1 캘린더 데이터(정책상품 회차, 온통청년 청년정책)를 매일 수집합니다. PRD는 "하루 1회 이상 수집하고 B2 오전 9시 발송 전에 완료"입니다.

  • calendar.yml (신규): 매일 05:17 KST에 COLLECTOR_SOURCE=CALENDAR로 _collect.yml을 호출
    • calendarSyncFlow(feat : B1 캘린더용 정책상품 회차·온통청년 청년정책 수집 #19)만 돌고 LLM·은행 스크래핑을 쓰지 않아 API 비용이 없습니다. 레포가 공개라 Actions 시간 비용도 없습니다.
    • 정각을 피한 이유: Actions 스케줄이 정각에 몰려 늦게 시작하는 일이 많습니다.
    • 2주 수집(04:00 KST)과 겹치는 날은 기존 collect-<env> 동시 실행 그룹에서 그 뒤에 돕니다. 2주 수집이 최대 150분이라 늦어도 09:00 전에 끝납니다.
    • dev는 main, prod는 release. prod는 collect.yml과 같이 PROD_ENABLED=true일 때만
  • _collect.yml
    • source 입력 추가(기본 ALL) → COLLECTOR_SOURCE
    • CALENDAR일 때 Chromium 설치 건너뜀
    • ONTONG_YOUTH_API_KEY 시크릿 전달
  • CLAUDE.md 수집 워크플로 절에 두 워크플로와 새 시크릿 반영

버그 해결 💊

  • #19가 머지되면 ALL에도 마지막에 온통청년 단계(syncYouthPolicyStep)가 들어갑니다. 지금 _collect.yml은 ONTONG_YOUTH_API_KEY를 넘기지 않아 2주 수집이 그 단계에서 실패합니다. 상품 수집은 그 전에 끝나서 영향은 없지만 잡은 FAILED로 끝납니다. 이 PR에서 키를 넘깁니다.

테스트 💻

  • actionlint 1.7.7: 워크플로 4개 오류 0개(재사용 워크플로 입력 대조 포함)
  • 실제 실행은 아직 안 했습니다. 머지 후 Calendar를 workflow_dispatch(dev)로 한 번 돌려 확인하겠습니다.

비고 ✏

  • 머지 순서: feat : B1 캘린더용 정책상품 회차·온통청년 청년정책 수집 #19 → 이 PR. Source.CALENDAR는 #19에 있어서, 먼저 머지되면 매일 실행이 소스 값을 못 읽고 실패합니다. 그래서 draft로 둡니다.
  • 시크릿: dev Environment에 ONTONG_YOUTH_API_KEY 등록 완료(11/9). prod Environment는 아직 없어서, 운영을 켤 때 같이 등록해야 합니다.
  • 다음 2주 수집은 11/16 04:00 KST입니다. #19가 그 전에 머지되면 이 PR도 같이 머지해야 위 실패가 나지 않습니다.

궁금한 점 있으시면 편하게 질문 주세요!

PRD는 캘린더 데이터를 하루 1회 이상, B2 알림 메일(09:00 KST) 전에 갱신하라고 한다.
2주 수집(ALL)은 LLM 비용 때문에 매일 돌릴 수 없어, 캘린더만 도는 CALENDAR 소스를
매일 05:17 KST에 따로 돌린다. Chromium·LLM을 쓰지 않는다.

_collect.yml에 source 입력(기본 ALL)을 추가해 COLLECTOR_SOURCE로 넘기고,
ALL에도 온통청년 단계가 들어가므로 ONTONG_YOUTH_API_KEY 시크릿을 넘긴다.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant