6 категорий штрафов со взвешенной суммой: - broken_wikilinks (×10) — [[foo]] не ведёт никуда - broken_paths (×10) — [text](./foo.md) не существует - missing_frontmatter (×3) — .md без frontmatter-заголовка - orphan_files (×2) — нет входящих wikilinks и не в служебных папках - undated_todos (×1) — "- [ ]" без YYYY-MM-DD - duplicate_basenames (×5) — одинаковое имя в разных папках Baseline сегодня: score=493 (158 файлов). Выход: audit/DATE-health.md (человекочит) + audit/health-latest.json (для agent-loop). False-positives зачинены: - wikilinks внутри backticks/fenced code игнорим - ../ и ./ пути резолвятся от файла-источника - CLAUDE.md/README.md не требуют frontmatter
21 lines
422 B
JSON
21 lines
422 B
JSON
{
|
|
"date": "2026-04-18",
|
|
"score": 493,
|
|
"counts": {
|
|
"broken_wikilinks": 0,
|
|
"broken_paths": 4,
|
|
"missing_frontmatter": 70,
|
|
"orphan_files": 90,
|
|
"undated_todos": 48,
|
|
"duplicate_basenames": 3
|
|
},
|
|
"weights": {
|
|
"broken_wikilinks": 10,
|
|
"broken_paths": 10,
|
|
"missing_frontmatter": 3,
|
|
"orphan_files": 2,
|
|
"undated_todos": 1,
|
|
"duplicate_basenames": 5
|
|
},
|
|
"files_scanned": 158
|
|
} |