이 문서를 통해 아래 질문들에 답할 수 있게 됩니다.
- Bounded Workflow는 autonomous agent와 어떻게 다른가?
- 어떤 단계에 human approval을 넣어야 하는가?
- 업무 자동화를 서버 workflow로 설계할 때 필요한 상태와 계약은 무엇인가?
개요
Bounded Workflow는 AI가 할 수 있는 단계를 명시적으로 제한한 자동화 구조다. 완전 자율 agent보다 예측 가능하고 테스트하기 쉽다.
운영 서비스에서는 이 방식이 더 적합한 경우가 많다.
Workflow 예시
고객 문의 수신
AI 분류
관련 문서 검색
답변 초안 생성
위험도 판단
high risk면 human approval
승인 후 발송AI는 모든 일을 하는 것이 아니라 일부 단계를 돕는다.
Human Approval 기준
approval이 필요한 경우:
- 고객에게 자동 발송
- 환불, 결제, 취소
- 권한 변경
- 보안 사고 분류
- 법률/금융/의료 영향
- confidence 낮음
코드로 이해하기
public enum WorkflowStatus {
DRAFT_CREATED,
WAITING_APPROVAL,
APPROVED,
SENT,
REJECTED,
FAILED
}
public boolean requiresApproval(AiDraft draft) {
return draft.riskLevel().equals("high")
|| draft.confidence() < 0.75
|| draft.containsRefundAction();
}AI 결과는 workflow 상태 전이의 입력일 뿐, 최종 권한이 아니다.
백엔드 설계 판단
- workflow state는 DB에 저장되는가?
- retry 가능한 단계와 불가능한 단계는 무엇인가?
- approval actor와 AI actor를 분리하는가?
- 실패 후 보상 처리가 필요한가?
- audit log가 충분한가?
장애 상황과 대응
workflow 장애:
- approval 대기열 적체
- AI 초안 생성 실패
- 중복 발송
- 승인 후 tool 실행 실패
- 상태 전이 불일치
대응:
- 상태 전이 transaction
- idempotency
- DLQ
- reviewer SLA
- manual override
인프라 협업 포인트
workflow는 queue와 DB 상태, 알림 시스템이 연결된다. 인프라팀과 retry, DLQ, notification failure, audit storage를 합의한다.
실전 팁
- AI가 만든 것은 초안으로 시작한다.
- workflow 상태를 명시적으로 저장한다.
- approval UI에는 source와 trace를 보여준다.
- 자동화 범위는 점진적으로 넓힌다.
위험 신호!
- AI 결과가 바로 고객에게 발송된다.
- 승인자와 실행자가 기록되지 않는다.
- workflow 상태가 로그에만 있다.
- 실패 후 재처리 절차가 없다.
확인 질문
확인 질문
- bounded workflow가 autonomous agent보다 운영에 유리한 이유는 무엇인가?
- 단계와 상태, 실패, 승인, 감사가 명확하기 때문이다.
- human approval을 넣어야 하는 대표 상황은 무엇인가?
- 고객 영향, 금전, 권한, 보안, 법적 위험이 있는 행동이다.