--- _last_updated_: 2026-07-20T10:15:00Z session_id: 2026-07-20-snolla-local-admin-restore-done prev_session_id: 2026-07-20-snolla-local-admin-on-snolla-design --- # Next session handoff ## Эта сессия — Task A DONE (local .NET admin restored) 🟢 **[snolla-local-admin-restore] ЗАКРЫТА.** Локальный catch-all IIS-сайт `snolla` поднят. Спека: `.wiki/concepts/snolla-local-admin-and-on-snolla-migration-design.md` (commit `b1b0092c`). Tаска: `.tasks/snolla-local-admin-restore.md` (as-built). Коммиты: `b1b0092c` (design), `d4278e79` (handoff), `c196964d` (Task A done + scripts). ### As-built (отличия от спеки) - **Selective copy ~100MB** (НЕ 8.76GB): tar-over-SSH исключил stale `App_Data/{assets,galleries,themes,uploadCache}` + `bin.old`. Команда в task-файле. - **Repoint НЕ нужен** — RUVDS Web.config уже на `mssql.kzntsv.site,1433;Catalog=MoreThenCms;User Id=snolla;Password=fXkH4@8O%3pc` (тот же snolla SQL-user что stostayer.old) + MinIO S3 drop-in с **реальными ключами** (placeholder_count=0). - Elevated setup: `scripts/local-snolla-admin-restore/setup-local-snolla-admin.ps1` (ASCII-only — PS5.1 BOM-less ломается на Cyrillic/em-dash байтах, урок). Запуск: `Start-Process -Verb RunAs` (UAC-клик). - **Smoke GREEN**: `tandemmebel/labtools/labtoolspro/emspb/kupimknigi/on .snolla.com/admin/account/login` → 200, реальная MoreThenCms-логинформа (`SNOLLA`, `
`). - Catch-all routing: `appSettings primaryDomain=snolla.com primaryAlias=on` (default-site=on.snolla.com "Internal Site"), siteId из Host-header (нет siteId в appSettings). - RUVDS SSH: plink `-hostkey SHA256:r/vSKU5WzH4B8T7RiXyXlg0D8XZ9hlBxzmdrPzuPWzE`, креды `pass show ruvds-iis/full-env` (password auth, RUVDS_IIS_PASS). PS-команды через `-EncodedCommand` (UTF-16LE base64) — stdin-`powershell -Command -` виснет. - hosts: marker `# snolla-local-admin` → `127.0.0.1 <6 aliases>.snolla.com`. FW `block-inbound-80-snolla-local`. ### MinIO upload-acceptance (ручной follow-up оператора) Логин в админку → залить тест-ассет → проверить объект в `minio.kzntsv.site` bucket=assets. S3-провайдер был admin-self-test green на RUVDS, Web.config 1:1 → должно работать. Креды админа см. open Q ниже. ## Recent commits - c196964d feat(snolla-local-admin): RESTORE DONE — local .NET admin live (6 /admin URLs) - d4278e79 meta(handoff): write NEXT_SESSION — snolla local admin + on-snolla design - b1b0092c design(snolla): local .NET admin restore + on.snolla.com VDS migration ## Open треки | Трек | Готовность | Entry-point | |---|---|---| | **on-snolla-vds-migration (Task B)** | ⚪ ready, **unblocked** (Task A done) | `.tasks/on-snolla-vds-migration.md`; spec §Task B. Шаг 1: реконструкция Liquid из боевого `on.snolla.com` + локального админа. Нужны: repo-name, admin-креды. | | vehicles-loader 0.4.1 runtime verify | 🔴 active — просрочено с 07-14 | SSH `new.stostayer.ru:20435`, проверить importRun. Откат: tag 0.4.0. | | books-vds → vds-kzntsv консолидация | оценено, не лезет по RAM/disk | Решение за user. | ## Спроси user'а - **Push?** `c196964d` (Task A done) на origin/master? (Rule 4 — "пушни и продолжай" было разовое для design-коммита, не standing auto-push). - **Task B repo name** — `victor/on-snolla`? `victor/on.snolla.com`? - **Admin-креды** для локального админа (чтобыbrowse контент-дерево on.snolla.com через /admin) — есть в `pass`? Или в DB `MoreThenCms.dbo.Accounts`? (Логин-форма живёт на `/admin/account/login`.) - **Task B стартовать сейчас** или pause? (Реконструкция = итеративная dev-работа: Liquid-шаблоны из HTML + DB-контент, build на VDS, cutover.) ## Не делать (preemptive guards) - **НЕ пушить без добла** (Rule 4). - **НЕ SSH-action на RUVDS без добла** (read-only verify уже сделан; дальше — только если нужно). - **НЕ ставить URL Rewrite rule** локальному админу (нет traefik → `:port` leak). - **НЕ деплоить vehicles-loader** без rateDiff; **НЕ retry-push** в docker.stostayer.ru; **НЕ netplan** на vds-kzntsv; **НЕ сжимать** books на .94. - **hosts override активен** — `on.snolla.com` → 127.0.0.1 теперь (боевой on.snolla.com доступен только через `--resolve ...:443:80.64.31.36` или off-hosts). ## Memory updates за сессию - (candidate) **PS5.1 BOM-less .ps1 ломается на UTF-8 Cyrillic/em-dash** — cp1251 0x94=`"` байт ломает string-терминаторы; BOM-less PS-скрипты = ASCII-only. - (candidate) **SNOLLA admin addressing = `.snolla.com/admin`** catch-all IIS, siteId из dbo.Sites по alias (primaryAlias `on` = default). DB user `snolla` работает на MoreThenCms+stostayer catalogs. - Обновить entity `windows-recovery-host.md`: IIS-сайт `snolla` восстановлен 2026-07-20 (локальный админ-хаб, не прод — прод на RUVDS).