13. 린트 의례 — 일관성 점검
v2 의 4 규칙은 v3 에서 3 규칙으로 정리됐습니다. 시간 드리프트 와 낡은 합성본 은
note_conflicts한 규칙으로 합쳐졌고, 본문 불변 규약 위에서 동작합니다.
13.1 3 규칙
broken_mentions— 가리키는 페이지가 삭제된 칩. 본문에는 안 건드리고 UI 에서 비활성으로 표시되지만, 의례에서 한 번에 모아 보여주면 대체할지 / 제거할지 정할 수 있습니다.orphan_notes— 들어오는 멘션도, 나가는 멘션도, 토픽도, 페이지 타입도 없는 페이지. 완전히 외딴 페이지. 분류만 붙여줘도 그래프에 합류합니다.note_conflicts— 같은 토픽을 가진 페이지 묶음 중에서:- stale-spread — 묶음 안에서 가장 오래된 것과 최신 것의 차이가 30 일 (default
conflictGapDays) 이상. - same-page-type-multi — 같은 토픽 + 같은 페이지 타입 페이지가 두 개 이상.
AI 는 이 묶음을 합칠지 / 분기 유지할지 결정하지 않습니다 — 사용자에게 보여주고 묻습니다.
- stale-spread — 묶음 안에서 가장 오래된 것과 최신 것의 차이가 30 일 (default
13.2 SCAN-ONLY
lint_workspace 는 mutate 하지 않습니다. 결과만 돌려주고, 사용자가 어떤 항목을 어떻게 처리할지 정한 뒤 AI 가 update_note / mutate_blocks 로 명시적으로 적용합니다. 본문은 절대 자동 수정 안 함 — 카파시 source-immutable 규약.
13.3 화면 + 실행
/app/lint 화면에서 규칙별 탭으로 결과를 봅니다. 각 항목은:
- 클릭 → 해당 페이지 이동
- AI 처리 프롬프트 복사 → 일괄 위임용 hand-off 프롬프트 (AI 클라이언트에 붙여 넣으면 모음 단위로 처리)
- 부분 적용 → 한 항목만 처리하고 나머지는 보류
13.4 주기
매일 할 필요는 없습니다. 일주일에 한 번 — 또는 대시보드의 Stale pages 가 빨갛다 싶을 때 — 의례적으로 한 번 돌리면 충분합니다.