"로깅엔 진짜 에디터가 필요해. Waystone 는 하나 있어 — 그냥 다른 repo 에 살 뿐이고, 그걸로 됐어."
두 번째 에디터의 유혹
여행 로깅은 쓰기를 뜻하고, 쓰기는 에디터를 뜻해. 뻔한 수는 하나 짓는 거야: Waystone 에 괜찮은 markdown 박스, autosave, 약간의 포맷팅. 그리고 그게 정확히 도메인 엔진이 형제의 더 나쁜 사본으로 drift 하기 시작하는 방식이야. 성숙한 에디터는 텍스트 박스가 아냐 — autosave, 문서 history, 첨부, undo, 입력기 처리, 그리고 누가 이미 제대로 한 백 가지 디테일이야. Waystone 는 두 번째를 짓길 거부해. 산문은 가족의 글쓰기 에디터 Rekindle 거고, Waystone 는 거기로 왕복해.
소유 분리가 엄격해
선이 정확히 그어져: Waystone 가 날짜·장소·itinerary·route·예약·상태·결정·구조화된 여행 fact 에 canonical. Rekindle 이 산문 본문과 글쓰기 history 에 canonical. 일일 로그를 Rekindle 로 보내 제대로 쓰고; 최신 revision 을 pull 해서 Waystone projection 을 갱신해. 경계를 넘는 건 에디터 사본이 아냐 — 링크야: 문서의 안정된 ID, kind, revision, content hash, 마지막 sync 시간. 파일명과 title 은 mutable 표현이고; 안정된 ID 가 정체성을 실어.
왕복은 divergence 를 감지해야 해
어떤 두-시스템 왕복이든 위험한 부분은 양쪽이 다 바뀐 순간이야. 순진한 답 — last write wins — 은 누군가의 작업을 조용히 파괴해. Waystone 의 규칙은 왕복 sync 가 갈라진 편집을 조용히 resolve 하는 대신 감지해야 한다는 거야. '이 두 버전이 안 맞아, 어느 걸 원해?' 를 드러내는 게 조용히 하나 골라 다른 하나를 잃는 것보다 나아. 패턴을 봐: plan·breadcrumb·baseline 을 다스리는 그 덮기-거부가 형제 경계에서 또 나타나. 조용한 last-write-wins 는 회고적 rewrite 의 cross-repo 버전이야.