- 즉시 다시 배포하는 게 아니라 포인터만 옮깁니다. 몇 초면 됩니다.
- 한 번에 Flow 전체가 통째로 되돌아갑니다. 어중간한 상태가 없습니다.
- 되돌릴 수 있음 다시 앞으로 가거나, 아무 버전으로든 옮길 수 있습니다.
- 감사할 수 있음 행위자, 이유, 시각이 함께 기록됩니다.
언제 롤백하나
- 배포 직후 신호가 튈 때.
- 시뮬레이션이 아니라 나중에 회귀가 잡혔을 때.
- 하류 의존성이 깨졌고 수정에 시간이 걸릴 때. 롤백이 시간을 벌어 줍니다.
- Canary 롤아웃이 이상할 때.
롤백하는 법
앱에서
Flow → Versions → 이전 버전 선택 → Rollback 입니다. 이유와 함께 확인합니다.CLI에서
v14)입니다.
웹훅에서(자동 롤백)
Flow마다 정합니다. Flow settings → Auto-rollback 입니다.- 트리거: 신호률이 임계값 초과, 에러율이 임계값 초과, 실행당 비용이 임계값 초과, canary 지표가 벌어짐.
- 롤백 대상: 이전 버전, 또는 특정 “safe” 버전으로 고정.
- 알림: Slack 채널, on-call PagerDuty.
무엇이 롤백되나
버전에 담긴 전부입니다.- 프롬프트.
- 와이어링된 연결.
- 도구 설정과 시크릿.
- 설정과 제한.
- 붙은 프리셋 버전.
- 붙은 데이터 소스 버전.
- 지식 베이스의 문서(버전이 특정 문서 버전을 고정하지 않은 한).
- 이전 버전이 라이브였던 뒤에 쌓인 메모리 항목.
- 트레이스(실행마다 만들어지고, 실행한 버전에 붙어 있습니다).
롤백한 뒤
- Draft는 건드리지 않습니다. 롤백한 버전을 새 작업의 바탕으로 삼고 싶으면 Restore Draft from version을 쓰세요(Draft 참고).
- 새 버전에 열려 있던 신호는 열린 채로 남고, 그걸 만든 버전으로 태그됩니다.
- 개선 이력에 롤백이 별도 항목으로 표시됩니다.
롤백과 restore-draft는 다릅니다
서로 다른 두 동작입니다.- Rollback 프로덕션 포인터를 옮깁니다. Draft는 안 바뀝니다. 프로덕션이 옛 버전을 실행합니다. 되돌릴 수 있습니다.
- Restore Draft from version Draft를 옛 버전 내용으로 바꿉니다. 프로덕션은 안 바뀝니다(여전히 지금 가리키는 버전입니다). 그 뒤 고쳐서 새로 배포할 수 있습니다.
특정 개선만 롤백
어느 개선이 문제를 일으켰는지 알면, 버전 전체가 아니라 그 개선만 롤백합니다. Optimization → History → Improvement → Rollback 입니다. 버전 롤백보다 세밀합니다. 그 개선의 변경만 되돌리고 뒤이은 개선은 그대로 둡니다. 롤백되는 것과 나중 개선이 서로 부딪히지 않을 때만 됩니다.감사
모든 롤백이 기록됩니다.- 누가 시작했나.
- 어느 버전에서 → 어느 버전으로.
- 이유(필수).
- 수동인지 자동 트리거인지.