動機
現状は CI が走るまで間違いに気付かない。手元で push 前に lint できれば事故が減る。
チェック項目
- `[[unknown-slug]]` (slugMap に無い参照)
- `topics: [...]` の長さが 5 を超えている (Zenn 制限)
- `publish_at:` の文字列に TZ が無い (UTC 解釈の罠)
- `delete: true` と `publish: true` が同時に立っている
- 本文中の画像参照 `/images//x.png` が `drafts/images//x.png` に実在しない
- `aliases:` の重複 (slug 衝突)
実装案
- `src/check.js` 新設
- `npm run check` で走らせる
- (オプション) sync.yml の最初に check step を追加して fail-fast
受け入れ基準
- 問題検出時 exit 1 + 何が問題か表示
- 問題なし時 exit 0
動機
現状は CI が走るまで間違いに気付かない。手元で push 前に lint できれば事故が減る。
チェック項目
実装案
受け入れ基準