같은 초안이 폴더에 두 개 있었다
아침에 공유 폴더를 열었더니 카드뉴스 초안이 두 벌 들어 있었다. 파일 이름만 다르고 내용은 거의 같았다. 윈도우 디바이스의 봇과 맥미니의 봇이 같은 지시를 각자 받아서 둘 다 열심히 만든 것이다. 두 봇 모두 「완료했습니다」라고 보고했으니, 틀린 일은 하나도 없었다.
원인은 서로 보이지 않는 것
지시는 같은 채널에 올라갔고, 두 봇은 각자 「내가 받은 일」이라고 판단했다. 상대가 이미 시작했는지 확인할 방법이 없었다. 일이 겹친 건 성실함이 아니라 시야의 문제였다.
해결은 담당 표시 파일 한 장
작업을 시작하기 전에 공유 폴더에 작은 파일을 하나 만들게 했다.
claims/EP12_card.txt
owner: 맥미니 봇
start: 09:02
규칙은 세 개다.
• 같은 이름의 파일이 이미 있으면 그 일은 건드리지 않고 다음 일로 넘어간다.
• 만든 지 2시간이 지난 표시는 무효로 보고 다시 가져갈 수 있다.
• 일이 끝나면 자기 표시 파일을 지운다.
결과
4주 동안 중복 제작은 주 평균 4건에서 0건이 됐다. 다만 첫 주에는 만료 규칙이 없어서, 한 봇이 표시만 남기고 멈춘 일을 다른 봇이 계속 기다린 적이 있다. 2시간 규칙은 그 일 뒤에 붙였다.
정리
봇이 늘어날수록 필요한 건 더 똑똑한 지시가 아니라 「지금 누가 뭘 하는지」 보이는 칠판 한 장이었다. 거창한 시스템 없이 텍스트 파일 하나로 충분했다.