scripts: kb-audit + propose — еженедельный drift-детектор для inventory

- kb-audit.py: сравнивает живой pct list/qm list с proxmox-inventory.md
  → audit/YYYY-MM-DD-drift.md (только факты, без LLM)
- kb-audit-propose.sh: прогоняет drift через Opus (Max OAuth на code-server)
  → audit/YYYY-MM-DD-proposed.md (patch на ревью)
- scripts/README.md: архитектура и cron-конфиг

Рекомендуемый cron на code-server: 0 6 * * 0 (воскр 06:00)
Правки не применяются автоматом — только ревью + ручной git apply.
This commit is contained in:
dttb
2026-04-18 00:23:07 +03:00
parent 13469e8ec3
commit 6368738ade
4 changed files with 266 additions and 0 deletions

46
scripts/README.md Normal file
View File

@@ -0,0 +1,46 @@
# scripts/ — инфра-скрипты vault
## kb-audit.py
Факт-детектор drift-а: сравнивает живой `pct list`/`qm list` с `projects/dttb/proxmox-inventory.md`.
Пишет отчёт в `audit/YYYY-MM-DD-drift.md`.
**Без LLM** — только факты. Галлюцинаций быть не может.
Запуск:
```bash
python3 scripts/kb-audit.py
```
## kb-audit-propose.sh
Запускается **после** kb-audit.py. Берёт свежий drift + текущий inventory → отправляет в `claude -p` (Opus 4.7 через Max).
Получает предложенные правки → `audit/YYYY-MM-DD-proposed.md`.
**Правки не применяются автоматом.** Ревью — ты, `git apply` — вручную.
Запуск:
```bash
bash scripts/kb-audit-propose.sh
```
## Еженедельный cron (code-server LXC 132)
```cron
# воскресенье 06:00 — drift audit + Opus предложения
0 6 * * 0 /usr/bin/python3 /root/knowledge-base/scripts/kb-audit.py && /bin/bash /root/knowledge-base/scripts/kb-audit-propose.sh
```
## Архитектура
```
pct list / qm list (Proxmox)
kb-audit.py — фактовый diff
audit/YYYY-MM-DD-drift.md (коммитится автоматом kb-autosync.sh)
kb-audit-propose.sh — Opus предлагает patch
audit/YYYY-MM-DD-proposed.md (коммитится)
ты ревьюишь, применяешь руками
коммит inventory, sync везде
```