---
date: 2026-05-10
type: audit
source: kb-health.py
score: 785
tags: [audit, health, metric]
---

# KB health — 2026-05-10

**Score (меньше = лучше): `785`**
Проверено файлов: 848

## Разбивка

| Категория | Кол-во | Вес | Штраф |
|---|---:|---:|---:|
| broken_wikilinks | 4 | 10 | 40 |
| broken_paths | 48 | 10 | 480 |
| missing_frontmatter | 21 | 3 | 63 |
| orphan_files | 51 | 2 | 102 |
| undated_todos | 70 | 1 | 70 |
| duplicate_basenames | 6 | 5 | 30 |
| **ИТОГО** | | | **785** |

## Битые wikilinks

| Откуда | `[[таргет]]` |
|---|---|
| `projects/dttb/graphify-out/GRAPH_REPORT.md` | `[[_COMMUNITY_Community 0]]` |
| `projects/dttb/graphify-out/GRAPH_REPORT.md` | `[[_COMMUNITY_Community 1]]` |
| `projects/dttb/graphify-out/GRAPH_REPORT.md` | `[[_COMMUNITY_Community 2]]` |
| `projects/dttb/graphify-out/GRAPH_REPORT.md` | `[[_COMMUNITY_Community 3]]` |

## Битые relative-пути

| Откуда | Путь |
|---|---|
| `decisions/2026-05-05-mac-dictation-groq-hammerspoon.md` | `../../.claude/projects/-Users-ai-knowledge-base/memory/feedback_superwhisper_no_license.md` |
| `decisions/2026-05-05-mac-dictation-groq-hammerspoon.md` | `../../.claude/projects/-Users-ai-knowledge-base/memory/reference_groq_api.md` |
| `decisions/2026-05-05-mac-dictation-groq-hammerspoon.md` | `../../.claude/projects/-Users-ai-knowledge-base/memory/feedback_superwhisper_no_license.md` |
| `notes/ru-geoblocked-services.md` | `../../.claude/projects/-Users-ai-knowledge-base/memory/feedback_win11_unattended_upgrade.md` |
| `notes/ru-geoblocked-services.md` | `../../.claude/projects/-Users-ai-knowledge-base/memory/feedback_nspd_blocks_mts.md` |
| `notes/claude/2026-04-21-200915-охотхозяйство-с-openwrt-на-orange-pi-нужно-настрои.md` | `projects/dttb/vps-swtest.md` |
| `notes/claude/2026-04-24-194555-создай-учет-подключаемых-клиентов-со-всеми-данными.md` | `projects/dttb/credentials.md` |
| `notes/claude/2026-04-20-113423-найди-информацию-по-настройке-openwrt-и-podcop-в-н.md` | `decisions/2026-04-20-niikn-nspd-bypass-via-lionart.md` |
| `notes/claude/2026-04-28-122042-промт-для-claude-code-развёртывание-rustdesk-api-s.md` | `decisions/2026-04-28-rustdesk-lejianwen-pro-migration.md` |
| `notes/claude/2026-04-28-122042-промт-для-claude-code-развёртывание-rustdesk-api-s.md` | `projects/dttb/rustdesk.md` |
| `notes/claude/2026-04-28-122042-промт-для-claude-code-развёртывание-rustdesk-api-s.md` | `projects/dttb/credentials.md` |
| `notes/claude/2026-04-30-221054-найди-инфу-вчера-оксане-делали-доступ-через-рустде.md` | `projects/niikn/office-pc.md` |
| `notes/claude/2026-04-29-153123-сделай-красивую-ссылку-с-локацией-финляндия-для-ha.md` | `projects/dttb/proxmox-inventory.md` |
| `notes/claude/2026-04-29-153123-сделай-красивую-ссылку-с-локацией-финляндия-для-ha.md` | `projects/dttb/credentials.md` |
| `notes/claude/2026-04-29-231939-сделай-красивую-ссылку-с-локацией-финляндия-для-ha.md` | `snippets/happ-routing-roscomvpn.md` |
| `notes/claude/2026-04-24-194322-создай-учет-подключаемых-клиентов-со-всеми-данными.md` | `snippets/clients/yaroslav-amnezia-setup.md` |
| `notes/claude/2026-04-24-194322-создай-учет-подключаемых-клиентов-со-всеми-данными.md` | `snippets/apple-id-us-on-russia.md` |
| `notes/claude/2026-05-04-100627-можешь-составлять-графические-схемы-на-dttbruhttpd.md` | `projects/znamenskoye/network-topology-diagram.md` |
| `notes/claude/2026-04-20-115126-найди-информацию-по-настройке-openwrt-и-podcop-в-н.md` | `projects/mmfb/mikrotik.md` |
| `notes/claude/2026-04-20-115126-найди-информацию-по-настройке-openwrt-и-podcop-в-н.md` | `projects/niikn/mikrotik.md` |
| `notes/claude/2026-04-24-165527-новый-клиент-ммфб-юрий-витальевич-нужно-подключить.md` | `projects/mmfb/yuri-vitalievich.md` |
| `notes/claude/2026-04-29-160010-сделай-красивую-ссылку-с-локацией-финляндия-для-ha.md` | `snippets/clients/yaroslav-happ-setup.md` |
| `notes/claude/2026-05-04-085317-можешь-составлять-графические-схемы-на-dttbruhttpd.md` | `projects/dttb/network-topology-diagram.md` |
| `notes/claude/2026-04-29-071329-на-компе-юрия-продолжим-проверь-он-сети.md` | `projects/mmfb/otchet-yuri-2026-04.md` |
| `notes/claude/2026-04-21-203517-дай-мне-команду-в-сшел-виндовс-установка-нетбирд-и.md` | `/Users/ai/.claude/projects/-Users-ai-knowledge-base/memory/reference_netbird_claude_diag.md` |
| `notes/claude/2026-04-29-150044-сделай-красивую-ссылку-с-локацией-финляндия-для-ha.md` | `projects/dttb/vpn-clients.md` |
| `notes/claude/2026-04-29-223542-создадим-еще-одного-пользователя-подключение-к-vpn.md` | `snippets/clients/sergey-znamenskoye-happ-setup.md` |
| `notes/claude/2026-04-28-134112-можешь-найти-кп-мичуринец.md` | `projects/dttb/znamenskoye-network-topology.md` |
| `notes/claude/2026-04-28-134112-можешь-найти-кп-мичуринец.md` | `claude-memory/benelux-topology.md` |
| `notes/claude/2026-04-25-001105-на-сервере-glavtorg-можешь-запустить-виртулку-с-ам.md` | `projects/glavtorg/README.md` |
| `notes/claude/2026-04-24-230658-создай-учет-подключаемых-клиентов-со-всеми-данными.md` | `snippets/clients/yaroslav-amnezia-setup.md` |
| `notes/claude/2026-04-24-193827-создай-учет-подключаемых-клиентов-со-всеми-данными.md` | `snippets/clients/yaroslav-amnezia-setup.md` |
| `notes/claude/2026-04-24-193827-создай-учет-подключаемых-клиентов-со-всеми-данными.md` | `projects/dttb/vpn-clients.md` |
| `notes/claude/2026-04-29-180420-создадим-еще-одного-пользователя-подключение-к-vpn.md` | `snippets/clients/sergey-znamenskoye-happ-setup.md` |
| `notes/claude/2026-04-20-101023-найди-информацию-по-настройке-openwrt-и-podcop-в-н.md` | `projects/niikn/openwrt-bypass.md` |
| `notes/claude/2026-04-24-194414-создай-учет-подключаемых-клиентов-со-всеми-данными.md` | `snippets/clients/yaroslav-amnezia-setup.md` |
| `notes/claude/2026-04-24-194414-создай-учет-подключаемых-клиентов-со-всеми-данными.md` | `snippets/apple-id-us-on-russia.md` |
| `notes/claude/2026-05-04-124829-в-ниикн-нспд.md` | `projects/niikn/govru-quickfix-playbook.md` |
| `notes/claude/2026-04-28-132949-промт-для-claude-code-развёртывание-rustdesk-api-s.md` | `projects/dttb/rustdesk.md` |
| `notes/claude/2026-04-29-163821-сделай-красивую-ссылку-с-локацией-финляндия-для-ha.md` | `snippets/amnezia-split-tunnel-ru.md` |
| `notes/claude/2026-04-29-151943-сделай-красивую-ссылку-с-локацией-финляндия-для-ha.md` | `snippets/clients/yaroslav-happ-setup.md` |
| `notes/claude/2026-04-29-151943-сделай-красивую-ссылку-с-локацией-финляндия-для-ha.md` | `projects/dttb/vpn-clients.md` |
| `notes/claude/2026-04-29-151943-сделай-красивую-ссылку-с-локацией-финляндия-для-ha.md` | `projects/dttb/credentials.md` |
| `notes/claude/2026-05-04-093928-можешь-составлять-графические-схемы-на-dttbruhttpd.md` | `projects/niikn/network-topology-diagram.md` |
| `notes/claude/2026-04-24-202451-новый-клиент-ммфб-юрий-витальевич-нужно-подключить.md` | `projects/mmfb/yuri-vitalievich.md` |
| `notes/claude/2026-04-29-001915-на-компе-юрия-продолжим-проверь-он-сети.md` | `projects/mmfb/yuri-vitalievich.md` |
| `notes/claude/2026-04-21-154602-охотхозяйство-с-openwrt-на-orange-pi-нужно-настрои.md` | `decisions/2026-04-21-znamenskoye-ohothozyistvo-wg-backup-channel.md` |
| `notes/claude/2026-04-21-154602-охотхозяйство-с-openwrt-на-orange-pi-нужно-настрои.md` | `claude-memory/znamenskoye-ohothozyistvo.md` |

## Без frontmatter (21)

- `decisions/2026-05-05-mac-dictation-groq-hammerspoon.md`
- `notes/ru-geoblocked-services.md`
- `projects/dttb/znamenskoye-log.md`
- `projects/niikn/office-pc.md`
- `projects/niikn/kripto-arm.md`
- `projects/mmfb/yuri-vitalievich.md`
- `projects/mmfb/otchet-yuri-2026-04.md`
- `projects/dttb/graphify-out/GRAPH_REPORT.md`
- `snippets/happ-vpn-client-instruction.md`
- `snippets/invoice-template.md`
- `snippets/assets/happ-routing-roscomvpn/README-upstream.md`
- `claude-memory/servicedesk-dttb.md`
- `claude-memory/benelux.md`
- `claude-memory/nextcloud-dttb.md`
- `claude-memory/nvr-fix.md`
- `claude-memory/videonablyudenie.md`
- `claude-memory/znamenskoe-home.md`
- `claude-memory/niikn-nextcloud.md`
- `claude-memory/krasnogorsk.md`
- `claude-memory/mas-niikn.md`
- `claude-memory/MEMORY.md`

## Orphan — без бэклинков (51)

_Эти файлы никто не упоминает через `[[..]]`. Кандидаты на удаление или добавление ссылок._

- `decisions/2026-04-30-niikn-culture-gov-fakeip-fix.md`
- `decisions/2026-04-20-niikn-nspd-bypass-via-lionart.md`
- `decisions/2026-04-28-netbird-watchdog-lxc-132-137.md`
- `decisions/2026-05-05-mac-dictation-groq-hammerspoon.md`
- `decisions/2026-05-06-kb-search-overhaul.md`
- `decisions/2026-04-28-niikn-uookn-sev-gov-fakeip-fix.md`
- `decisions/2026-05-04-niikn-nspd-via-netbird-lionart.md`
- `notes/ru-geoblocked-services.md`
- `projects/dttb/network-topology-diagram.md`
- `projects/niikn/office-pc.md`
- `projects/niikn/mailcow.md`
- `projects/niikn/NIIKN-Infrastructure.md`
- `projects/niikn/groupfolders-migration.md`
- `projects/niikn/credentials.md`
- `projects/niikn/changelog.md`
- `projects/niikn/matrix.md`
- `projects/niikn/clawdbot-niikn.md`
- `projects/niikn/proxmox.md`
- `projects/niikn/NIIKN-ChangeLog.md`
- `projects/niikn/npm.md`
- `projects/niikn/openwrt-bypass.md`
- `projects/niikn/network-topology-diagram.md`
- `projects/niikn/NC-Talk-Setup.md`
- `projects/niikn/domofon.md`
- `projects/niikn/vpn.md`
- `projects/mmfb/mikrotik.md`
- `projects/dttb/graphify-out/GRAPH_REPORT.md`
- `snippets/happ-routing-roscomvpn.md`
- `snippets/invoice-template.md`
- `snippets/clients/oksana-niikn-rustdesk.md`
- ... +21 ещё

## TODO без даты (70 шт в 10 файлах)

- `decisions/2026-04-30-rustdesk-pre-prod-audit.md` — 13 шт
- `projects/lipki/README.md` — 11 шт
- `templates/vpn-client.md` — 7 шт
- `decisions/2026-04-29-rustdesk-client-deployment-package.md` — 6 шт
- `projects/openwrt-4/README.md` — 6 шт
- `projects/benilux/README.md` — 6 шт
- `projects/sergey/README.md` — 6 шт
- `projects/dttb/vpn-clients.md` — 5 шт
- `projects/vishnevyy-sad/README.md` — 5 шт
- `claude-memory/mas-niikn.md` — 5 шт

## Дубликаты имён (6)

- `README.md`:
  - `README.md`
  - `decisions/README.md`
  - `notes/README.md`
  - `projects/znamenskoye/README.md`
  - `projects/openwrt-4/README.md`
  - `projects/dttb/README.md`
  - `projects/glavtorg/README.md`
  - `projects/benilux/README.md`
  - `projects/vishnevyy-sad/README.md`
  - `projects/sergey/README.md`
  - `projects/niikn/README.md`
  - `projects/lipki/README.md`
  - `projects/krasnogorsk/README.md`
  - `projects/mmfb/README.md`
  - `projects/buzharovo/README.md`
  - `projects/zelenograd/README.md`
  - `projects/dttb/nextcloud-talk-bot/README.md`
  - `snippets/README.md`
  - `snippets/mac-dictation/README.md`
  - `scripts/README.md`
- `nextcloud.md`:
  - `projects/nextcloud.md`
  - `projects/dttb/nextcloud.md`
- `network-topology-diagram.md`:
  - `projects/znamenskoye/network-topology-diagram.md`
  - `projects/dttb/network-topology-diagram.md`
  - `projects/niikn/network-topology-diagram.md`
- `proxmox-inventory.md`:
  - `projects/dttb/proxmox-inventory.md`
  - `projects/mmfb/proxmox-inventory.md`
- `credentials.md`:
  - `projects/dttb/credentials.md`
  - `projects/niikn/credentials.md`
- `mikrotik.md`:
  - `projects/niikn/mikrotik.md`
  - `projects/mmfb/mikrotik.md`

---
*Генерируется `scripts/kb-health.py`. JSON-версия в `audit/health-latest.json` для agent-loop.*