콘텐츠로 이동

02-구조

[트리거] Slack / Jira / Webhook / CRON
[작업 정의] 한 번 작성한 템플릿(Template) + 인자
[큐] 비동기 작업 큐 (Anthropic 또는 자체 호스팅)
[런너] 격리 환경(컨테이너, 디스포저블 VM)
[결과 채널] Slack DM / PR 코멘트 / 티켓 코멘트 / 이메일
  1. 목적(Goal) — “이 PR의 회귀 위험을 검토하라”
  2. 입력(Input) — PR 번호, 코드베이스 경로
  3. 종료 기준(Done) — “5줄 이내 요약 + 위험도 (낮음/중간/높음)”
  4. 회수 채널(Channel) — “PR 코멘트로”

이 4요소가 없으면 Dispatch가 아니라 그냥 “어딘가로 사라진 작업”입니다.

  • 사용자 데스크톱이 아닌 격리된 환경에서 도는 게 핵심
  • 전형: 디스포저블 VM, 컨테이너, GitHub Actions 러너
  • 사고가 나도 사용자 파일·자격 증명에 닿지 않음

Shankar의 패턴: “Hobby projects run in disposable VMs. … Set context, delegate, walk away.” — 취미 프로젝트는 일회용 VM에서 돌린다. 맥락 주고, 위임하고, 자리 떠난다.

  • PR/티켓 코멘트 — 가장 흔하고 가장 안전. 사람 검토 자연스러움.
  • Slack DM — 본인만 받음, 빠르지만 휘발성
  • 이메일 — 감사 추적에 좋음
  • 대시보드 — 여러 작업 한눈에

비동기는 실패를 잘 보여 줘야 의미가 있습니다.

  • 실패 시 누가, 무엇이, 왜가 1분 안에 보여야 함
  • 같은 작업이 자동 재시도되면서 사고가 누적되지 않게 재시도 상한을 둘 것