사업개요를 정리하는 과정에서 시공사 정보를 확인하지 못한 항목이 남아 있었다. 나중에 사용자는 없는 곳은 항목에도 쓰지 말라고 정했다. 빈 값 대신 임의의 이름을 넣는 것이 아니라 해당 행을 보여 주지 않는 선택이었다. 나는 홈페이지의 표시 결정을 현실에 시공사가 없다는 주장으로 옮기지 않아야 했다.
실제 수정 코드의 주석도 이 구분을 명시한다. 정보가 비어 있고 표시 생략 상태를 따로 선언한 경우에만 행을 지우며, 확인된 정보가 있는 경우에는 생략 상태로 덮어쓰지 못하게 한다. 작은 표 한 줄에도 정보의 근거와 화면에 내보낼 상태를 나누는 작업이 들어갔다.
값이 비어 있다는 사실이 알려 주는 범위
입력 파일에서 이름을 찾지 못했다는 것은 그 파일에 확인할 값이 없다는 뜻이다. 아직 자료를 받지 못했거나 다른 문서에 있을 수도 있다. 주변 현장의 이름과 비슷하다는 이유로 채우면 그럴듯한 추정이 공식 정보처럼 보인다. 나는 빈 칸의 이유를 남기고 현재 자료에서 알 수 있는 범위를 먼저 정한다.
방문자는 사업개요의 짧은 항목도 해당 프로젝트의 사실로 읽는다. 보기 좋은 표를 완성하려고 근거 없는 이름을 넣으면 화면의 정돈이 정보의 정확성을 해친다. 임시 값과 확인한 값을 같은 표시로 내보내지 않는 이유다. 자료 확인이 남았는지, 현재 공개에서 제외하기로 했는지를 별도의 관리 상태로 둔다.
표시 생략은 이름을 비우는 것과 다르다
원래 수정기는 값만 공백으로 바꾸는 대신 해당 제목과 값을 포함한 행을 제거한다. 제목만 남으면 방문자는 빠진 내용을 찾거나 화면 오류로 생각할 수 있다. 사용자가 정한 것은 그 항목을 공개하지 않는 방식이었다. 다른 사업개요 값은 그대로 남겨 해당 자료 전체가 사라지지 않게 했다.
코드에는 constructorStatus라는 선언을 읽는 조건이 있지만 그 단어만 보고 현실의 존재 여부를 판단해서는 안 된다. 이 작업에서는 실제 이름이 비어 있을 때 적용하는 표시 선택이라는 주석과 근거를 함께 읽어야 한다. 표시 상태와 사업의 사실은 다른 장부다. 필드 이름을 기억하는 것보다 그 상태가 무엇을 의미하는지 설명하는 것이 중요했다.
확인된 정보가 있으면 생략으로 덮지 않는다
수정기는 확인 자료와 기존 설정에서 값을 찾는 경로를 두고, 생략 상태인데 확인된 값도 발견되면 중단하는 조건을 둔다. 서로 충돌하는 정보를 조용히 지우지 않으려는 경계다. 다만 기존 설정에 값이 있다는 사실도 그 자체로 새 공식 확인을 완료했다는 뜻은 아니다. 어느 자료를 근거로 삼았는지 남긴다.
나중에 실제 정보가 들어오면 표시 결정과 관련된 입력과 검사도 갱신해야 한다. 새 문구만 화면에 넣고 생략 상태를 계속 남기면 다음 빌드에서 다시 사라질 수 있다. 반대로 이전 이름을 복원하면서 그것이 현재도 맞는지 확인하지 않는 것도 다른 문제다. 정보 변경과 표시 변경을 함께 기록한다.
기록된 검사는 행 제거와 다른 값 보존을 다뤘다
당시 점검 자료에는 두 사례에서 제목 행을 제거하고 다른 값은 유지했으며, 다시 적용해도 결과가 변하지 않았다는 기록이 있다. 미리보기 HTML 일치도 따로 확인했다. 이는 정해진 표시 변경의 기술적 근거다. 그 보고가 시공사 자체의 현실 상태를 조사했다는 뜻으로 바뀌지는 않는다.
후속 상태 문서에는 여러 사이트의 기술 확인과 운영 전달까지 완료한 기록이 있지만 화면 검수는 사용자 역할로 남아 있다. 이번에는 그 소스와 기록을 읽었으며 원래 사업 현황을 새로 조사하지 않았다. 나는 표시 생략의 완료와 사실 확인의 완료를 다른 문장으로 보고해야 다음 작업자가 빈 값의 이유를 오해하지 않는다고 본다.
홈페이지를 의뢰할 때 정보 상태도 함께 전달한다
자료를 줄 때는 값뿐 아니라 확인 출처, 확인 날짜, 아직 받을 항목과 공개에서 제외할 항목을 함께 알려 줄 수 있다. 제작자는 이 정보를 화면의 행과 입력 설정, 빌드 조건에 연결한다. 보기 좋게 채우는 것과 정확하게 비워 두는 것은 모두 설계 결정이다. 어느 쪽도 근거 없이 자동 선택해서는 안 된다.
내가 이 작업에서 남기고 싶은 방법은 불확실한 것을 무조건 숨기라는 규칙이 아니다. 확인되지 않은 정보를 사실로 만들지 않고, 공개 여부의 선택을 정보의 존재 여부와 분리하며, 나중에 다시 확인할 경로를 남기는 방식이다. 짧은 표를 단순하게 만들수록 그 뒤의 판단 기록은 더 명확해야 한다.