コンテンツにスキップ

SEC-002 セクション順序

セクション見出しが order で指定した順序で並んでいることを検証します。order に含まれる見出しが逆順で出現すると error になります。order に無い見出しは無視されます。

同じテンプレートでも書き手によって章順が入れ替わることがあります。読み手が複数のドキュメントを横断するとき、章順が揃っていれば情報を予測しながら読めます。逆に揃っていないと、毎回どこに何があるかを探し直す必要があり、認知コストが上がります。

フィールド必須説明
orderstring[]並ぶべき順序のセクション見出し配列
levelnumber検証対象の見出しレベル(指定すると親見出しごとにグループ化して検証)
sectionstringlevel 指定時、特定の親見出し配下だけを検証
filesstringこのルールを適用するファイルの glob

level を指定すると、その見出しレベルだけを抽出してグループ化し、グループごとに順序を検証します。section と組み合わせれば、特定の親見出し配下だけが対象になります。

# ADR-001
## 決定事項
JWT を採用する。
## 背景
認証方式を選定する必要がある。

order: ["背景", "決定事項", "影響"] を設定している場合、背景決定事項 より後ろにあるため違反になります。

docs/adr/001.md
line 7 error Section "背景" must appear before "決定事項" SEC-002
# ADR-001
## 背景
認証方式を選定する必要がある。
## 決定事項
JWT を採用する。
{
"rule": "sec002",
"options": {
"order": ["背景", "決定事項", "影響"],
"level": 2,
"files": "adr/*.md"
}
}