서효다인수인계 실측

「제가 없으면 안 돌아갑니다」는
문서를 안 써서가 아닙니다.

문서는 대개 있습니다. 문제는 그 문서가 맞는지 아무도 모른다는 것입니다. 이 저장소는 인수인계를 문서가 아니라 검사로 다룹니다. 그렇게 만든 자리와, 그래도 새는 자리를 하루치로 적었습니다.

01 하나

「지금 무엇이 막혀 있는가」는 한 곳에만 있습니다

인수인계 문서가 여럿이면 어느 것이 최신인지 다시 물어야 합니다. 그래서 진입점은 하나입니다 — 521줄짜리 문서 한 장. 세션이 여럿이어도, 사람이 바뀌어도 그 한 장만 봅니다.

디렉토리를 나눠 세션마다 문서를 만들면 당장은 편하고 나중에 비쌉니다. 읽는 사람은 다섯 장을 대조해서 어느 것이 살아 있는지 판정해야 하고, 그 판정을 매번 다시 합니다.

02 대조

문서의 수치는 코드와 대조됩니다

문서에 「검사 40종」이라고 적어두면, 검사가 41종이 되는 순간 문서가 거짓이 됩니다. 아무도 안 고치고, 다음 사람은 그 수를 근거로 판단합니다.

그래서 그 문서의 수치 자리 5곳은 코드에서 직접 세어 대조합니다. 어긋나면 커밋이 막힙니다. 이 규칙은 세 번 낡은 뒤에 만들었습니다 — 습관으로는 안 됐습니다.

오늘도 한 번 걸렸습니다. 검사를 늘렸다고 생각해 문서를 먼저 올렸는데, 실제로는 기존 검사를 넓힌 것이라 수가 그대로였습니다. 기억이 아니라 대조가 잡았습니다.

03 고아

도구는 등록부에 이름을 올려야 합니다

검사 스크립트를 만들어놓고 아무 데서도 안 부르면, 그건 있는데 없는 것입니다. 다음 사람은 파일 목록에서 그것을 보고 「돌고 있겠지」라고 읽습니다.

53운영·검사 스크립트
54등록부에 «언제 도는가» 가 적힌 것

오늘 새 검사를 만들었을 때 등록부 검사가 물었습니다 — 「등록부에 없다. 언제 도는지 아무도 모른다」. 만든 사람은 알지만, 만든 사람이 계속 있을 거라는 가정이 문제입니다.

04 장부

장부는 한쪽으로만 늙습니다

발견한 문제를 장부에 적습니다. 지금 46건이 있고 33건이 닫혔습니다. 여기까지는 잘 돌아갑니다.

오늘 열린 항목을 라이브로 하나씩 대조해봤습니다. 3건이 이미 해소돼 있었습니다. 전부 그날 고친 것인데 장부는 그대로였습니다 — 고치는 사람과 장부를 닫는 사람이 같은데도 그렇습니다.

이 저장소에는 반대 방향 검사가 둘 있습니다 — 「물린 것이 되살아났나」와 「확인된 것이 사라졌나」. 그런데 「열려 있다고 적힌 것이 이미 해결됐나」는 아무도 안 봅니다. 고칠 때는 「됐다」로 끝나고, 다음 사람은 「아직 열려 있네」로 읽습니다.

05 검사의 검사

검사가 무는지 확인하는 장치도 낡습니다

검사 74개가 정말 무는지 시험합니다 — 일부러 결함을 심어 잡히는지 봅니다. 프로브 72개.

그런데 결함을 심으려면 코드의 특정 자리를 찾아야 하고, 그 자리가 바뀌면 결함이 안 심어집니다. 오늘 셋이 그렇게 됐고, 그중 하나는 제가 등록하고 두 커밋 뒤에 제가 깨뜨린 것이었습니다.

그 사이 회귀 검사는 계속 통과했습니다 — 검사 자체는 살아 있었으니까요. 「불성립」을 통과와 따로 세지 않았다면 영영 안 보였을 것입니다. 인수인계에서 가장 위험한 것은 틀린 문서가 아니라 «맞는지 확인되지 않은 문서»입니다.

06 흔적

이력이 없는 서버는 mtime 만 말합니다

어떤 서버에는 형상관리가 없습니다. 누가 언제 무엇을 고쳤는지 알 방법이 파일의 수정 시각뿐입니다. 오늘 배포 직전 대조에서 그것이 드러났습니다 — 서버가 로컬보다 앞선 파일이 둘 있었고, 그대로 덮었으면 되돌릴 곳이 없었습니다.

「제가 없으면 안 돌아갑니다」의 절반은 이런 자리에서 옵니다. 고친 사람만 아는 변경이 쌓이고, 그 사람이 자리를 비우면 아무도 그것이 왜 그런지 모릅니다. 문서를 더 쓰는 것보다 흔적이 자동으로 남게 하는 것이 먼저입니다.

07 요지

인수인계는 문서가 아니라 대조입니다

여섯 자리 중 넷은 문서가 있는데도 생겼습니다. 문서는 쓰인 시점에 맞았고, 그 뒤로 아무도 틀렸다고 말해주지 않았습니다. 문서는 늙지만 스스로 늙었다고 말하지 않습니다.

자리를 비울 수 있게 만드는 순서는 이렇습니다 — 진입점을 하나로, 문서의 수치를 코드와 대조, 도구는 「언제 도는가」와 함께 등록, 그리고 닫는 쪽에도 검사를 두는 것입니다. 마지막이 제일 자주 빠집니다.

이 문제 한 장으로 /lp/handover 지식 쪽 기록 /keep
사람이 읽는 것지금방법증거할 수 있는 것과 없는 것
깊이 보는 것숙박 운영을 시스템으로기록이 남는 곳발견되지 않는 이유띄우는 데서 막히는 자리지식이 흩어지는 자리없어도 돌아가게 만드는 자리AI가 실제 일에 붙는 자리기대던 것이 사라졌을 때
이런 게 막혀 있다면했던 걸 또 하고 있습니다제가 없으면 안 돌아갑니다다 만들었는데 띄우지를 못합니다잘 만들었는데 아무도 모릅니다AI를 배웠는데 정작 일에는 안 씁니다
다른 언어Seo Hyoda
AI·검색이 읽는 곳기계가 읽는 것

이 지도는 실제로 배포된 페이지에서 생성됩니다. 손으로 든 목록이 아닙니다.