콘텐츠로 이동

REF-005 앵커

Markdown 링크에 포함되는 앵커 프래그먼트(./file.md#section이나 #section# 이후)가 대상 파일 내의 실재하는 제목을 가리키고 있는지를 검증합니다. 일치하는 제목이 없는 경우는 error 로 보고됩니다. 앵커는 GitHub와 같은 slug 생성 규칙으로 제목으로부터 생성됩니다.

섹션의 제목 텍스트를 변경하면, 그것을 가리키는 앵커 링크는 조용히 끊어집니다. 링크 대상 파일 자체는 존재하기 때문에 REF-001 끊어진 링크에는 걸리지 않습니다. AI 생성 문서에서는 존재하지 않는 앵커가 섞이는 경우도 있습니다. 앵커의 타당성은 링크의 존재 검증만으로는 검출할 수 없기 때문에 별도의 규칙으로서 필요합니다.

필드타입필수설명
filesstring이 규칙을 적용할 파일의 glob

옵션 전체를 생략해도 동작합니다.

docs/architecture.md:
## 시스템 구성
...
docs/overview.md:
자세한 내용은 [시스템 개요](./architecture.md#시스템-개요)를 참조하세요.

./architecture.md에는 ## 시스템 구성은 있지만 ## 시스템 개요는 없기 때문에 위반이 됩니다.

docs/overview.md
line 1 error Anchor "#시스템-개요" does not match any heading in ./architecture.md REF-005

존재하는 제목 이름에 링크를 맞춥니다.

docs/overview.md:
자세한 내용은 [시스템 구성](./architecture.md#시스템-구성)을 참조하세요.
{
"rule": "ref005",
"options": {
"files": "docs/**/*.md"
}
}