회사 자료를 매일 최신으로 읽게 하고 싶었어요. 하지만 최신화라는 말 안에는 다른 일이 섞여 있었어요. 새 자료를 찾는 일, 기존 내용과 비교하는 일, 서로 다른 수정 중 무엇을 남길지 결정하는 일, 실제 답변이 읽는 자료를 바꾸는 일이었어요.

이 과정을 한 번의 덮어쓰기로 처리하면 질문하는 사람은 최신이라는 표시를 보면서도 유효한 내용을 잃을 수 있어요. 두 작업 환경에 있는 회사 문서는 같은 사본이 아니었어요. 한쪽에만 있는 자료와 양쪽에서 다르게 바뀐 자료가 있었죠. 한곳을 기준으로 모두 맞춘다는 설명만으로는 안전하지 않았어요.

새 자료 읽기 실패가 이전 자료를 덮을 수 있어요
새 자료 읽기 실패가 이전 자료를 덮을 수 있어요 · 화면 재구성화면 크게 보기

없는 자료와 읽지 못한 자료를 나눴어요

자료를 가져오는 데 실패한 경우를 빈 결과로 처리하면, 기존 자료가 사라졌다고 잘못 판단할 수 있어요. 변화가 없는 상태와 접속에 실패한 상태도 같은 것으로 읽히면 안 돼요. 사용자에게는 모두 답변이 부족한 상황처럼 보일 수 있지만 다음에 해야 할 일은 달라요.

이번에는 이 상태를 나누는 것부터 시작했어요. 정상으로 읽은 이전 자료를 남기고, 확인할 수 없는 부분을 새 사실로 덮지 않도록 했어요. 최신화가 실패하면 이전의 유효한 내용까지 없애는 대신 지금 확인이 부족하다는 상태를 남기는 방향이었어요.

자료마다 다루는 방식도 구분했어요. 다시 만들어 확인할 수 있는 기준 자료와 사람이 의미를 검토한 문서는 같은 방식으로 자동 반영할 수 없었어요. 양쪽의 수정이 충돌하는 내용을 자동으로 합치면 질문의 근거가 바뀌는데 누구도 그 판단을 하지 않은 상태가 돼요.

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

회사 자료를 하나의 사본으로 맞추기 어려웠던 이유는 내용의 차이에 있었어요. 한 환경에만 있는 문서가 무조건 오래된 것도 아니고, 최근 수정된 문서가 다른 내용을 모두 대체하는 것도 아니었어요. 자료의 수나 수정 시각만으로 무엇을 남길지 정할 수 없었어요.

그래서 실제 자료를 반영하기 전에 비교 결과를 읽는 단계를 뒀어요. 같은 내용인지, 한쪽에만 있는지, 서로 충돌하는지 드러나야 사람이 선택할 수 있어요. 자동 작업이 판단을 대신하기보다 판단할 차이를 모으는 역할을 하도록 한 거예요.

이전 유효 자료와 새 검토 대상을 구분해요
이전 유효 자료와 새 검토 대상을 구분해요 · 화면 재구성화면 크게 보기

발행을 연결한 뒤에도 마지막으로 정상 확인된 자료를 남기는 기준이 중요했어요. 새 자료를 못 읽었다고 답변의 근거 전체를 비우면 최신화의 실패가 사용자의 질문 실패로 바로 번져요. 변화에 실패한 상태와 이전 자료를 이용하는 상태를 분리해 기록했어요.

준비에서 실제 연결까지 여러 단계였어요

처음에는 이 경계를 문서로 정리했어요. 다음에는 실패와 변화 없음, 부분적으로 읽은 상태를 구분하는 처리를 만들고 시험했어요. 이 시점에는 실제 회사 원본을 바꾸지 않았어요. 시험이 끝났다는 사실로 운영 자료가 이미 최신이라고 말할 수는 없었어요.

후속 단계에서는 두 환경의 실제 자료를 대조했어요. 같은 문서와 다른 문서, 한쪽에만 있는 문서가 섞여 있다는 사실을 확인했어요. 곧바로 모두 반영하지 않고 다음에 사람이 결정할 내용을 남겼어요. 자료가 더 많이 들어온 것보다 어떤 내용이 달라졌는지를 볼 수 있는 상태가 중요했어요.

이후 확인한 범위 안에서 정기 작업과 발행을 연결했어요. 검증이 실패했을 때 새 자료를 읽는 상태로 바뀌지 않는지, 반영 뒤 문제가 생기면 이전의 유효한 상태로 돌아갈 수 있는지도 시험했어요. 다만 아직 확인되지 않은 회사 자료까지 같은 수준으로 연결됐다고 설명하지 않았어요.

기록의 마지막에는 실제 연결과 시험 결과가 있어요. 하지만 정해 둔 관찰 기간은 아직 지나지 않았어요. 일정이 활성화됐다는 것과 매일 안정적으로 같은 기준을 지켰다는 것은 다른 결과였어요. 회사 지식 전체가 언제나 최신이라고 닫지는 않았어요.

이 변경이 지키려던 경험은 질문할 때 근거를 잃지 않는 것이었어요. 새 자료를 읽을 수 없다고 오래된 정상 자료까지 사라지게 두지 않고, 충돌을 자동으로 정답처럼 만들지 않았어요. 최신이라는 단어보다 무엇을 확인했고 무엇이 아직 남았는지가 답변의 신뢰를 더 구체적으로 설명했어요.