Commit Graph

473 Commits

Author SHA1 Message Date
bf5e24491b code-server auto-sync 2026-05-24T06:05:04+00:00 2026-05-24 06:05:04 +00:00
57a026ed45 code-server auto-sync 2026-05-17T06:05:01+00:00 2026-05-17 06:05:01 +00:00
kb-audit-bot
ae5eb91280 kb-audit-bot: auto-apply drift 2026-05-17
+ VMID 128 (LXC profi-parser, stopped)

Skipped (too complex for auto-apply):
  VMID 131 (VM ubuntu, running) — требует ручной правки (running → новая секция)
  VMID 139 (LXC severny-les, running) — требует ручной правки (running → новая секция)
2026-05-17 06:01:27 +00:00
368a14107d code-server auto-sync 2026-05-10T06:05:02+00:00 2026-05-10 06:05:02 +00:00
97841320f2 code-server auto-sync 2026-05-07T07:10:01+00:00 2026-05-07 07:10:01 +00:00
dttb
d00d856513 projects: вынес Бужарово в отдельную папку buzharovo/
Server1C — это самостоятельный объект (организация в Бужарово), не часть
домашней инфраструктуры dttb. Переношу projects/dttb/server1c.md →
projects/buzharovo/server1c.md, добавляю README.md как точку входа,
обновляю обратные ссылки.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 10:05:44 +03:00
329a280cb3 code-server auto-sync 2026-05-07T07:05:01+00:00 2026-05-07 07:05:01 +00:00
dttb
6dabc7749c Бужарово 1С: рецепт rmngr-loop после грязного ребута
Симптом: rmngr держит >100% ядра в idle, rac не отвечает, локальные пользователи жалуются на тормоза. Полный ребут сервера НЕ помогает. Лечится Restart-Service '1C:Enterprise 8.3 Server Agent (x86-64)'.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 10:03:07 +03:00
d82531ec58 code-server auto-sync 2026-05-06T13:55:02+00:00 2026-05-06 13:55:02 +00:00
dttb
47394e668e Phase 9 (улучшения автоматизации):
A. kb-autosync.sh переписан: pull → regenerate index → commit → push.
   После каждого push с Mac индекс objects-map.json и _index.md
   обновляются автоматически на code-server (LXC 132).

B. kb-objects-map.py + kb-objects-audit.py добавлены в воскресный
   weekly cron на LXC 132 — health-check автогенерируется раз в неделю.

C. Чистка битых wiki-ссылок (score 84 → 9):
   - notes/govru-diagnosis → projects/niikn/govru-quickfix-playbook (2)
   - claude-memory/podkop → 2026-04-17-peredelki-podkop-stability-fix
   - [[../snippets/clients/]] → snippets/clients/ (текстом, 2)
   - [[feedback_*]] (user memory) → backtick-cited (2)
   - [[../znamenskoye/]] → [[../znamenskoye/README]] (4)

   Скрипт kb-objects-audit.py улучшен: regex теперь требует [[...]] с
   двойной скобкой (не одной), исключает audit/ и CLAUDE.md (placeholder
   и autogen).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 16:52:16 +03:00
94aae3ca26 code-server auto-sync 2026-05-06T13:50:01+00:00 2026-05-06 13:50:01 +00:00
dttb
1748562756 Decision: сводка по перестройке KB-поиска (8 фаз)
Один артефакт-агрегатор: метрики до/после, грабли, отложенное, ссылки
на все промежуточные decisions/snippets. Чтобы не прыгать по разным
файлам — единая точка входа для повторного чтения.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 16:46:05 +03:00
dttb
f0b7feadc1 Phase 7: kb-objects-audit + первый weekly report (score 84)
Новый скрипт scripts/kb-objects-audit.py — еженедельный health-check vault'а:
1. Каждый projects/<dir>/README.md имеет валидный frontmatter (type/status/aliases)
2. Каждый онлайн-netbird-пир привязан к проекту через aliases или собственную карточку
3. Битые wiki-ссылки [[...]] не указывают в небытие

Output: audit/YYYY-MM-DD-objects-audit.md со score (меньше = лучше).

Первый запуск 2026-05-06: score=84
- 12/12 проектов с frontmatter ✓
- 3 online orphan-пира (DESKTOP-2IOQS54 Saransk, DESKTOP-AGBMLPN Helsinki, DESKTOP-HL0BB05 Lipetsk)
- 26 битых wiki-ссылок выявлено

Phase 6: dreaming включён (cron 0 3 * * *), recall promote'нул 17/39, weekly cron на promote.
Phase 8: на 137 — minScore=0.4 в memorySearch.query, IDENTITY.md разводит двух Максимок,
INFRASTRUCTURE.md переписан как навигатор по vault'у (не дубль).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 16:39:45 +03:00
dttb
d4433bd0a8 Phase 4: обогатить frontmatter проектов + 6 новых stub'ов
Существующие проекты получили frontmatter с aliases для FTS / objects-map:
  niikn  — Cloud-NIIKN New niikn.com, pve-niikn, Kripto-ARM, M.Maul
  dttb   — Work Server dttb, code-server, rustdeskserver, MacBook-Pro, ...
  glavtorg, krasnogorsk, zelenograd — добавлен frontmatter с aliases

Создано 6 новых README:
  projects/znamenskoye/README.md  — был отсутствующий index 3-х объектов
  projects/mmfb/README.md         — был отсутствующий index ММФБ + LionART
  projects/sergey/README.md       — stub OpenWrt_Sergey (Одинцово)
  projects/benilux/README.md      — stub OpenWrt Benilux (Истра)
  projects/vishnevyy-sad/README.md — stub Константин (Москва)
  projects/openwrt-4/README.md    — stub анонимный OpenWrt_4

Обновлён scripts/kb-objects-map.py: exact-match вместо substring (избегает FP
вроде alias 'cloud' ⊂ 'Cloud-NIIKN New niikn.com'). Aliases теперь должны
содержать полные имена пиров как в netbird-inventory.

Метрика: с 38 orphan-пиров до 14. Остаток — реально неклассифицированные
клиентские машины без явной привязки к проекту (Денис Тихая, DESKTOP-2IOQS54
и др.) — задача для отдельного шага обогащения.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 16:25:44 +03:00
dttb
b16ecdae37 Phase 3: scripts/kb-objects-map.py + audit/objects-map.json + projects/_index.md
Авто-генератор реестра: парсит netbird-inventory + frontmatter каждого проекта,
выводит JSON для бота и человекочитаемый index с wiki-ссылками.

Пока 16 проектов / 38 orphan-пиров без своих карточек — выявленные дыры станут
input для Фазы 4 (stub-генератора). Скрипт идемпотентный, без deps (pure stdlib),
запуск: cd ~/knowledge-base && python3 scripts/kb-objects-map.py

Парсер обрабатывает offline-таблицу netbird (другой порядок колонок), normalize
ye→e уравнивает Знаменское/Znamenskoe. Source of truth — frontmatter каждого
проекта; добавление aliases/owner/region там сразу подхватится при следующем run.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 16:17:05 +03:00
dttb
b411e3b308 Phase 5.2: архивировать audit/ старее текущей недели в audit/archive/
Перенесены 18 файлов 2026-04-* (drift, creds, dns, npm, health, proposed) в audit/archive/.
В audit/ остались только свежие 2026-05-03-* + health-latest.json.

Цель — снизить шум в FTS Максимки. В openclaw 2026.5.2 нет excludePaths
для memorySearch, поэтому файлы продолжают индексироваться, но в подкаталоге
их легче чистить вручную и видно структуру.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 16:12:27 +03:00
dttb
cda539b9a1 Phase 5.1 (часть 2): docce ссылку и aliases — после удаления video-surveillance-report
Должно было войти в предыдущий коммит, но git add был пропущен.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 16:06:59 +03:00
dttb
bac376992d Phase 5.1: слить дубли видеонаблюдения — оставить videonablyudenie-znam как canonical
- удалён projects/dttb/video-surveillance-report.md (старая неполная копия от 2026-03-13, без секции AgentDVR ЧОП)
- canonical videonablyudenie-znam.md обогащён aliases для FTS (видеонаблюдение Знаменское, камеры Охотхозяйство, AgentDVR ЧОП, swtest video)
- projects/dttb/README.md убрана ссылка на удалённый файл

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 16:04:45 +03:00
dttb
f7d06c0a35 Phase 2 webhook: snippet и decision (Mac→openclaw FTS лаг 15м → 11с)
Развёрнут push-webhook от Gitea на kb-pull-webhook.service на LXC 137 + auto-reindex FTS в kb-pull.sh после нового HEAD. Грабли: gitea webhook.ALLOWED_HOST_LIST по дефолту режет private IP; flock -n теряет двойные push, заменён на -w 180.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 16:01:45 +03:00
dttb
843b9780c8 Phase 2 final smoke - flock -w 180 2026-05-06 15:56:25 +03:00
dttb
24fe1d3f88 smoke webhook real push timing 2026-05-06 15:35:39 +03:00
dttb
1ae613b2bd smoke webhook delivery Phase 2 2026-05-06 15:32:20 +03:00
root
d754de8378 auto-backup claude-memory 2026-05-06_12:00 2026-05-06 12:00:52 +00:00
dttb
80fd8ca7bf Липки: карточка объекта (клиент Антон, Cudy TR3000 100.70.35.234, белый WAN 5.101.135.71) + рецепт Gitea→openclaw kb-pull webhook
Закрывает причину #1 путаницы Максимки на запросах вида "OpenWRT Липки": слово "Липки" во всём vault встречалось только одной строкой в netbird-inventory, FTS вытаскивал НИИКН по статистике слова "OpenWRT".

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 14:03:36 +03:00
dttb
bf845e2dcb kb: OmniRoute Opus audit — cc/claude-opus-4-7 main, разница со старым CLIProxy 8317 2026-05-06 13:42:22 +03:00
d9c00c31e0 code-server auto-sync 2026-05-06T10:30:01+00:00 2026-05-06 10:30:01 +00:00
f6bf12ccf9 code-server auto-sync 2026-05-06T10:25:01+00:00 2026-05-06 10:25:01 +00:00
dttb
3220238c67 fix Apple ID TJ + Opus 4.7: добавлены статус, snippet IPRoyal gost-relay, decision openclaw на cc/claude-opus-4-7, обновлён omniroute reference 2026-05-06 12:24:17 +03:00
dttb
265d99b378 Mac dictation: Hammerspoon + Groq Whisper решение
- decisions/2026-05-05-mac-dictation-groq-hammerspoon.md: полный план,
  грабли с раскладкой, fallback на whisper-cpp, восстановление на новом Mac
- notes/ru-geoblocked-services.md: реестр CDN с RU-блоком
  (cdn.spokenly, dl.wisprflow и пр.) + принципы обхода
- snippets/mac-dictation/: рабочая версия скриптов и init.lua

Триггер — одиночный Fn, Groq cloud first → tiny local fallback,
вставка через hs.eventtap.event keycode 9 (минует ru-keymap warnings).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-05 16:27:17 +03:00
dttb
89fbfec1b8 decision Apple ID TJ: добавлен альтернативный путь через покупку US Adidas-аккаунта + смена региона 2026-05-04 19:45:34 +03:00
dttb
ea077e6b0e notes(claude): транскрипты сессий 2026-05-04 (НИИКН gov.ru fixes, НСПД, Стародубцева) 2026-05-04 13:40:21 +03:00
dttb
2a03207385 playbook НИИКН: добавлен economy.gov.ru override (для fgistp.economy.gov.ru / Минэк ФГИС ТП) 2026-05-04 13:33:44 +03:00
dttb
e0ca1e039a snippet netbird-claude-install: перевод Public→Private перед WinRM, try/catch на Set-Item WSMan 2026-05-04 13:10:59 +03:00
dttb
a4fb06527f snippet netbird-claude-install: добавлен claude/Kl@udeD1ag!2026 + OpenSSH Server + ru-RU SID для Administrators 2026-05-04 13:09:01 +03:00
dttb
9fe499fc6e playbook НИИКН: gov.ru quickfix (5 классов проблем + текущий реестр overrides/routes/IDs) 2026-05-04 12:48:19 +03:00
dttb
8e13ae2e17 decision НСПД НИИКН: добавлены zakupki + telemost через тот же NetBird->LionART (+ MSS clamp на wt0) 2026-05-04 12:39:21 +03:00
dttb
e896a24fae decision НСПД НИИКН: финальная схема через NetBird→LionART (OpenWrt DNS override + MikroTik route + pve-niikn MASQ wt0) 2026-05-04 11:57:08 +03:00
dttb
93ade1c65b diagrams: добавлены mermaid-схемы для НИИКН и Знаменского 2026-05-04 10:10:33 +03:00
dttb
d2969b4751 manual sync: добавлены mermaid-диаграммы dttb network-topology 2026-05-04 08:52:32 +03:00
dttb
dd96d5ffa7 decision Apple ID TJ: добавлены подводные камни (Accept-Language, footer-check, @icloud.com на регистрации, grizzlysms забанен) 2026-05-03 13:06:20 +03:00
dttb
f5e9dce9d8 decision Apple ID TJ: подтверждён рабочий формат IPRoyal password-modifiers (country-tj_session-X_lifetime-30m) 2026-05-03 10:00:09 +03:00
dttb
5f39702c72 decision Apple ID TJ: переход с Soax на IPRoyal (Soax недоступен из RU) 2026-05-03 09:28:21 +03:00
5025cd14f2 code-server auto-sync 2026-05-03T06:05:01+00:00 2026-05-03 06:05:01 +00:00
dttb
c8bed951a1 decision: Apple ID TJ через residential proxy (Soax trial + grizzlysms, без VPS) 2026-05-02 21:52:12 +03:00
dttb
ca3b0615d5 НИИКН: NotebookLM/Google AI через AWG-Финляндия для всей сети
podkop user_domains на 192.168.1.50 — 5 доменов (notebooklm.google[.com],
generativelanguage.googleapis.com, aistudio.google.com, labs.google).
Клиенты по DHCP ходят на dnsmasq 192.168.1.50, FakeIP-маршрут
198.18.0.0/15→OpenWrt уже на MikroTik — для Оксаны и всего офиса
ничего на ПК настраивать не надо.
2026-04-30 22:55:30 +03:00
dttb
84a1adb67e НИИКН: culture.gov.ru открыт через DNS override (FakeIP-фикс) 2026-04-30 14:38:19 +03:00
dttb
d58873368a RustDesk: pre-prod security audit + операционный runbook
Аудит перед запуском в прод. Найдены и исправлены critical и medium issues:

Critical (fixed):
- File permissions 644 → 600/640 для id_ed25519, БД, config.yaml
- Нет logrotate (диск 2GB зальётся) → /etc/logrotate.d/rustdesk
- Нет авто-бэкапа → daily cron 03:00 в /root/rustdesk-backups/

Medium (fixed):
- Brute-force на /api/admin/login → NPM rate-limit 5r/m

Medium (deferred):
- NC share без пароля (NC сейчас down — отдельный task)
- Security headers не наследуются в location / (NPM template limitation)

Документация:
- decisions/2026-04-30-rustdesk-pre-prod-audit.md — полный отчёт
- projects/dttb/rustdesk-runbook.md — операционный runbook (recovery,
  troubleshooting, onboarding, updates)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-30 10:42:19 +03:00
dttb
37ca19ee5e notes/claude: дамп сессий 2026-04-29
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-30 00:25:25 +03:00
dttb
3ec0cb8dcf openwrt-homelab: AdGuard Home в DNS-цепочке, блокировка YouTube ads
Цепочка: LAN → dnsmasq:53 → AGH:5353 → sing-box:127.0.0.42 → upstream.
podkop dont_touch_dhcp=1, dnsmasq.server=127.0.0.1#5353. Добавлены
HaGeZi Pro mini, BlocklistProject YouTube, GoodbyeAds YouTube AdBlock.
user_rules очищены от поломанного YAML. Проверено: ad-домены → 0.0.0.0,
fakeip подкопа цел, обычные сайты резолвятся.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-30 00:25:19 +03:00
dttb
2dc9efa5ef notes/claude: дамп сессий 2026-04-29
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-29 23:21:32 +03:00