일일 브리핑에 며칠의 공백이 생겼어요. 지나간 날짜의 보고서를 다시 만들면 당장의 빈칸은 채울 수 있었어요. 하지만 다음 날 같은 실행이 또 멈추면 사용자에게는 똑같은 공백이 생겨요. 빠진 결과를 복구하는 일과 다시 빠지지 않을 시작점을 만드는 일을 함께 봐야 했어요.

확인한 원인은 오래된 실행 환경과 섞여 있던 미완료 변경이었어요. 발행 과정은 준비되지 않은 상태를 감지하고 멈추고 있었어요. 보고서를 못 만들었다는 결과만 보면 보호 장치가 일을 방해하는 것처럼 보일 수 있지만, 불확실한 상태의 결과를 그대로 내보내지 않도록 멈춘 것이었어요.

현재 날짜의 브리핑을 읽을 수 없어요
현재 날짜의 브리핑을 읽을 수 없어요 · 화면 재구성화면 크게 보기

멈춘 이유를 지우기보다 실행의 출발점을 바꿨어요

먼저 빠진 날짜와 현재 화면이 읽는 최신 날짜를 확인했어요. 그다음 실행이 어떤 기준의 코드를 사용하고 있는지 살폈어요. 최근 변경이 준비되어 있어도 고정된 옛 작업 환경에서 실행되면 새 기준이 실제 보고에 반영되지 않을 수 있었어요.

미완료 변경을 강제로 지우거나 발행 조건을 느슨하게 하지 않았어요. 사용자 작업은 보존하고, 보고서 실행에는 확인된 기준을 이용하도록 출발점을 정리했어요. 다음 실행이 이전 실행의 흔적을 그대로 이어받지 않도록 준비하는 방향이었어요.

이 선택은 실패를 없다는 말로 만드는 일이 아니었어요. 알 수 없는 상태에서 멈추는 기준은 유지하고, 정상적으로 시작할 수 있는 상태를 별도로 마련하는 일이었어요. 보고서를 읽는 사용자가 잘못된 자료를 조용히 받는 것보다 실행 공백을 발견할 수 있는 편이 나았어요.

문제와 판단의 흐름
문제와 판단의 흐름도식 크게 보기

그 뒤 빠진 날짜의 자료를 복구했어요. 문서와 원본 결과가 서로 맞는지, 보관한 결과와 발행한 결과가 같은지 확인했어요. 화면에서 최신 자료를 찾는 목록도 복구된 마지막 날짜를 가리키도록 이어졌어요.

빈 날짜를 복구하는 과정에서도 새 문서가 있다고 바로 성공으로 보지 않았어요. 화면이 읽는 최신 목록과 보관된 원본이 같은 결과를 가리키는지 대조했어요. 생성한 곳에서만 존재하는 파일이라면 사용자가 겪는 공백은 아직 남아 있을 수 있어요.

복구한 결과와 다음 예약 확인을 따로 남겨요
복구한 결과와 다음 예약 확인을 따로 남겨요 · 화면 재구성화면 크게 보기

기존 작업을 보존한 이유는 보고서 복구가 다른 개발을 취소하는 요청은 아니었기 때문이에요. 준비된 실행 기준을 만들면서 미완료 변경은 그 상태로 남겼어요. 복구를 쉽게 하기 위해 다른 사람의 작업을 지우는 것은 다른 문제를 만드는 선택이었어요.

예약 실행 확인이 남았다는 문장은 완료를 막연하게 보류한 표현이 아니었어요. 새 시작점이 무인 실행에서도 사용되는지 읽는 구체적인 확인이었어요. 사람이 한 번 실행한 결과와 실제 다음날의 자동 결과가 이어져야 매일 보고한다는 약속을 판단할 수 있었어요.

한 번의 성공과 다음 예약 실행은 달랐어요

복구 결과가 준비된 뒤 실제 실행을 한 번 돌려 끝까지 성공하는지 확인했어요. 변경이 반영된 운영 배포도 확인했어요. 실행 설정에 적힌 내용과 실제로 등록된 실행이 같은 경로와 시점을 가리키는지도 대조했어요. ‘다음에는 돌아갈 것’이라는 설명에만 기대지 않으려는 확인이었어요.

그러나 수동으로 시작한 성공이 첫 무인 예약 실행의 성공은 아니었어요. 기록 시점에는 다음 예약 시각에 새 흐름이 같은 결과를 만드는지 관찰할 일이 남아 있었어요. 설치와 설정의 정렬은 끝났지만 하루 뒤 자동 실행까지 이미 성공한 것으로 쓰지 않았어요.

앞으로도 작업 환경에 변경이 남는 상황은 생길 수 있어요. 중요한 것은 그 변경이 다음 보고서 실행의 기준을 다시 흐리지 않는지예요. 이번 복구는 모든 실패를 없앤 사례보다, 실패 뒤에 사람이 어디서 다시 시작할지 찾기 쉬운 상태를 만든 사례에 가까웠어요.

사용자에게 돌아온 것은 빠진 날짜의 브리핑과 최신 자료로 이어지는 읽는 경로였어요. 운영하는 쪽에서는 결과 파일뿐 아니라 그 결과를 만든 실행 기준과 전달 상태를 함께 확인하게 됐어요. 며칠의 빈칸을 채우면서 다음 공백을 읽는 방법도 정리한 셈이에요.

일일 보고가 신뢰를 얻으려면 매일 파일이 하나 생기는 것만으로는 부족했어요. 결과가 빠졌을 때 이유를 설명할 수 있고, 기존 작업을 훼손하지 않으며 확인된 상태에서 다시 시작할 수 있어야 했어요.