AEGIS

AI는 제안하고, 사람이 결정합니다

AI가 할 수 있는 일과 할 수 없는 일

그림 8. AI의 제안은 사람의 결정을 거쳐야만 실행으로 이어집니다
그림 8. AI의 제안은 사람의 결정을 거쳐야만 실행으로 이어집니다

AI(Artificial Intelligence, 인공지능) 분석은 참고 의견입니다. AI는 로그와 변경 내역을 읽고 "이 커밋이 원인일 가능성이 높고, 근거는 로그의 이 부분"이라고 제시합니다. 하지만 그 결과로 빌드를 다시 돌리거나 커밋을 빼는 일은 권한 있는 사람이 웹 화면에서 누른 결정만 할 수 있습니다. 이 구분은 화면이 아니라 서버가 지키므로, 메신저에서 "승인합니다"라고 답해도 승인으로 처리되지 않습니다.

왜 이렇게 만들었나 AI는 그럴듯하지만 틀린 답을 낼 수 있습니다. 빌드 결과는 배포와 납품으로 이어지므로, AI가 틀려도 사람이 근거를 보고 걸러 낼 수 있는 구조가 필요합니다. AEGIS(Autonomous Engine for Governed Integration Services — 통제된 통합 서비스를 위한 자율 실행 엔진)는 "AI가 알아서 한다"가 아니라 "AI가 찾아 주고, 사람이 결정하고, 모든 결정이 추적된다"를 기본 원칙으로 삼습니다.

담당자가 고르는 네 가지 결정

실패한 워크플로에서 담당자가 고를 수 있는 결정은 네 가지입니다.

그림 9. 어떤 결정을 고를지 판단하는 순서
그림 9. 어떤 결정을 고를지 판단하는 순서

결정이 늦어지면 12시간 뒤 다시 알림이, 24시간 뒤 상위 보고 메일이 갑니다. 실패가 방치되지 않게 하기 위한 장치입니다.

「제외 후 재시도」는 이렇게 동작합니다

AEGIS의 특징적인 기능입니다. 원인 커밋을 뺀 채로 다시 빌드해, 실패 원인을 떼어 놓고 나머지 변경이 정상인지 계속 확인할 수 있게 합니다. 빌드 서버에 옵션을 넘기는 방식이 아니라, 빌드가 참조하는 소스의 기준 시점 자체를 바꿉니다.

그림 10. 제외는 그 저장소의 기준을 지목한 커밋 바로 앞으로 되감는 방식입니다
그림 10. 제외는 그 저장소의 기준을 지목한 커밋 바로 앞으로 되감는 방식입니다

이 기능을 쓰려면 고객의 기존 Jenkins 빌드 작업(job)이 "되감을 커밋"을 입력으로 받도록 전환해야 합니다. 전환 절차와 도구는 제품에 들어 있고, 실제 전환은 구축 단계에서 합니다.

감사 기록

그림 11. 기록은 추가만 되고, 사슬 검증으로 위·변조를 찾아냅니다
그림 11. 기록은 추가만 되고, 사슬 검증으로 위·변조를 찾아냅니다

빌드 생성, 상태 변경, 승인, 제외한 커밋 같은 중요한 행위는 모두 추가만 가능한 감사 기록으로 남습니다. 각 기록은 앞 기록의 지문(해시 — 내용에서 계산한 고유한 값)을 이어 받아 사슬처럼 쌓이므로, 누군가 중간 기록을 고치면 연쇄 해시(hash-chain) 검증에서 드러납니다.

규제 산업, 협력사 납품 검수, 내부 감사처럼 빌드·배포 결정의 추적성이 필요한 조직에서 특히 쓸모가 있습니다.