From 47057484a984c432dde6909a5ae2d9d06bba2d10 Mon Sep 17 00:00:00 2001 From: vitya Date: Mon, 8 Jun 2026 15:16:16 +0300 Subject: [PATCH] =?UTF-8?q?meta(handoff):=20session=202026-06-08=20?= =?UTF-8?q?=E2=80=94=20maljarka=20fix=20+=20host=20decommission?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.8 (1M context) --- .tasks/NEXT_SESSION.md | 62 ++++++++++++++++-------------------------- 1 file changed, 24 insertions(+), 38 deletions(-) diff --git a/.tasks/NEXT_SESSION.md b/.tasks/NEXT_SESSION.md index 86890bd..a1a59e8 100644 --- a/.tasks/NEXT_SESSION.md +++ b/.tasks/NEXT_SESSION.md @@ -1,51 +1,37 @@ --- -_last_updated_: 2026-06-05T02:00:00+03:00 -session_id: 2026-06-05-iis-cutover-and-winacme-renewal +_last_updated_: 2026-06-08T18:30:00+03:00 +session_id: 2026-06-08-maljarka-fix-and-host-decommission --- # Next session handoff -_Сессия: (1) full DNS cutover на RUVDS достигнут; (2) поднят постоянный win-acme HTTP-01 auto-renewal -на RUVDS IIS — дедлайн cert-expiry 2026-07-22 СНЯТ. Source НЕ заглушен (warm rollback). Всё проверено, -ничего не висит._ +_Сессия: (1) починен `maljarka.tandemmebel.ru` 502-on-HTTPS; (2) большой декоммишн рабочей машины +после Synology-аварии — C: free 62→275 ГБ. Всё проверено. 7 коммитов локально, НЕ запушено._ -## Recent commits +## Recent commits (session, 7 ahead of origin) +- `task(decommission): windows-recovery-host cleanup complete (C: 62->275GB)` +- `fix(decommission): smoke :8091 via curl --noproxy; idempotent F2` +- `fix(decommission): orphan fix done agent-side; drop F1/sa from script` +- `fix(decommission): ASCII-only / sa-prompt / traefik removal` +- `fix(iis-migration): maljarka.tandemmebel.ru 502-on-HTTPS resolved` -- `9cd6d4e2` task(iis-migration): full DNS cutover reached 2026-06-05 -- (+ commit этой сессии: win-acme renewal pipeline + wiki concept) - -## Что сделано (iis-migration, 05.06) - -- ✅ **Full cutover:** все 25 hostname authoritative на RUVDS `80.64.31.36`. На windows-source ничего authoritative. -- ✅ **win-acme auto-renewal** на RUVDS: 25-SAN LE cert (до **2026-09-03**) во всех SNI-биндингах + - SYSTEM scheduled task `win-acme-renew-snolla` (renew 55д до expiry). RUVDS больше НЕ зависит от - домашнего traefik по сертификатам. - - Gotcha решён: OWIN-catch-all CMS жрал `/.well-known/acme-challenge/` → challenge вынесен в отдельное - IIS-приложение (пул «No Managed Code») + патч шаблона `C:\win-acme\Web_Config.xml`. - - Артефакты: `scripts/iis-migration-to-ruvds/03-ruvds-winacme.ps1` + `winacme-Web_Config.xml`; - recipe в `.wiki/concepts/winacme-iis-owin-catchall-http01.md`. - - Доступ к RUVDS: SSH `~/.ssh/ruvds-iis-migration` → `Administrator@80.64.31.36` (elevated сессия). +## Open треки +| Трек | Готовность | Entry-point | +|---|---|---| +| `decommission-windows-recovery-host` | ✅ done, кроме vhdx-compact | `.tasks/decommission-windows-recovery-host.md` | +| docker-vhdx compact (135 ГБ заперты в `docker_data.vhdx`) | ⏸ отложено user'ом («не горит») | требует **полностью закрыть Docker Desktop** → `Optimize-VHD`/diskpart; файл уже sparse-флагнут | +| `fix-nl-vds-reality-pq-dest` | 🟡 server-side done | ждёт client-side (user меняет SNI в v2rayN + подтверждает) | +| `harden-books-vds-exposed-ports` | ⚪ ready | не начато | ## Спроси user'а - -- **Decommission `snolla` site** на windows-source — ждём soak (~2026-06-12) + drain кэша, или раньше? - Когда решит: elevated PS → `Stop-Website snolla` → архив `C:\sites\snolla` (8.66 ГБ) → kreknin + - cleanup temp SSH-ключей/FW-правил. (win-acme на RUVDS от этого не зависит — он самостоятелен.) -- ✅ `maljarka.tandemmebel.ru` 502 — **решено 2026-06-08**. Корень: `dbo.Sites.SettingsData=NULL` у тенанта (нет `httpSecure`) → KeyNotFound в MoreThenCms на HTTPS-ветке. Fix: `UPDATE Sites SET SettingsData='{httpSecure:...}'` + recycle пула snolla; verified 443→200. См. `.wiki/concepts/morethencms-null-settingsdata-https-502.md`. (rimiz — отдельная причина, не трогали.) +- **Push?** 7 коммитов сессии локально, origin не обновлён. Пушить — по явному гранту (Rule 4, не давали). +- **vhdx-compact** 135 ГБ — добивать (с полным гашением Docker Desktop, вырубит lightrag/markitdown до ручного старта) или оставить? User сказал «не горит» — по умолчанию НЕ трогаем. ## Не делать (preemptive guards) - -- **Не `--test` в win-acme под SSH** — включает интерактив, виснет. Для staging — `--baseuri `. -- **Не трогать `acme-challenge` IIS-приложение / пул «No Managed Code» / патченый `Web_Config.xml`** — - на них держится авто-renewal. Detail: `.wiki/concepts/winacme-iis-owin-catchall-http01.md`. -- **Не `Stop-Website snolla` пока хвост кэша течёт / без явного запроса** (warm rollback). -- IIS-правки — elevated shell. **branch ahead от origin** — push без явного grant'а (Rule 4); grant НЕ давали. +- **Не `wsl --shutdown` / vhdx-compact в активной agent-сессии** — гасит markitdown-MCP (через него работаю) + lightrag. Только когда user готов закрыть Docker Desktop. +- `docker_data.vhdx` **уже помечен sparse** (`fsutil sparse setflag`) — перед offline `diskpart compact` возможно нужно снять флаг (давал `0x80070057`). Чистый путь — Quit Docker Desktop → `Optimize-VHD -Mode Full`. +- **localhost-проверки на этой машине идут через системный VPN-прокси (213.176.64.253)** → `Invoke-WebRequest`/`curl` к `localhost` глотаются (вики bug #7). Юзать `curl --noproxy "*"`; прод-проверки — `--resolve host:443:<реальный IP>`. См. [[verify-on-real-client-not-own-curl-tests]]. +- `pass show` работает в agent-bash (gpg), но НЕ в PowerShell (`bash` там = WSL без стора). Для VDS-кредов — bash-инструмент. ## Memory updates за сессию - -- (нет нового файла; знание — в wiki concept + task decisions log) - -## ⚠️ Sensitive (НЕ в git) - -- Корневой `C:\sites\snolla\web.config` содержит plaintext-креды (MSSQL/SMTP/Azure/API-ключи). Pre-existing, - не вводилось этой сессией. Если будешь декоммишить/архивировать — не плодить копии в трекаемых местах. +- (нет нового файла — знания в `.wiki/concepts/morethencms-null-settingsdata-https-502.md` + обновлён entity `windows-recovery-host` + task decommission).