Commit Graph

25 Commits

Author SHA1 Message Date
d25c0577c8 import: .wiki/entities/ from MoreThenCms via subtree-split
git-subtree-dir: .wiki/entities
git-subtree-mainline: 6d8d75474d
git-subtree-split: 24661c10fb
2026-05-21 13:46:38 +03:00
6d8d75474d prep: clear gitkeep before subtree import 2026-05-21 13:46:33 +03:00
d558ccfaed chore: mark admin-infra-project-pointers done, unblock morecms-subtree-split
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-21 13:37:10 +03:00
67f7bbee74 wiki(claude): add design-context pointers for admin-infra-project
Replaces seeded stub in Domain conventions with a 3-source pointer block:
1. concepts/admin-infra-project.md (canonical local design)
2. ~/projects/.workshop/.archive/2026-05-21-admin-infra-project.md (rationale)
3. .wiki/overview.md (orientation only)

Closes task admin-infra-project-pointers — bootstrap pointer for the
entire migration / agenda chain.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-21 13:37:06 +03:00
40009b1b80 meta(tasks): create [admin-infra-project-review] in OpeItcLoc03/admin 2026-05-21 10:25:44 +00:00
3bcabfa3cc meta(tasks): create [secrets-manager-adopt] in OpeItcLoc03/admin 2026-05-21 10:25:15 +00:00
7363064d82 meta(tasks): create [secrets-out-of-common] in OpeItcLoc03/admin 2026-05-21 10:24:49 +00:00
8464d302a4 meta(tasks): create [resilience-roadmap-design] in OpeItcLoc03/admin 2026-05-21 10:24:25 +00:00
6a3361a583 meta(tasks): create [verify-migration] in OpeItcLoc03/admin 2026-05-21 10:23:55 +00:00
0c7c5f6236 meta(tasks): create [morecms-cleanup-and-breadcrumb] in OpeItcLoc03/admin 2026-05-21 10:23:38 +00:00
a009132367 meta(tasks): create [admin-subtree-import-and-cleanup] in OpeItcLoc03/admin 2026-05-21 10:23:15 +00:00
be8cb07ac7 meta(tasks): create [morecms-subtree-split] in OpeItcLoc03/admin 2026-05-21 10:22:51 +00:00
7aae45cdf0 meta(tasks): create [admin-infra-project-pointers] in OpeItcLoc03/admin 2026-05-21 10:22:00 +00:00
4c35e2a925 meta(wiki): log += ingest concepts/admin-infra-project 2026-05-21 10:21:29 +00:00
f1565eaff4 meta(wiki): index += concepts/admin-infra-project 2026-05-21 10:21:28 +00:00
531184111a meta(wiki): ingest concepts/admin-infra-project in OpeItcLoc03/admin 2026-05-21 10:21:28 +00:00
34e779e002 bootstrap: admin project skeleton (CLAUDE.md, .wiki/, .tasks/) 2026-05-21 13:17:45 +03:00
4d63aeef46 Initial commit 2026-05-21 10:13:57 +00:00
24661c10fb chore(snolla-recovery-vm): savestate'нута после 36h успешного soak
VBoxManage controlvm snolla-recovery savestate — 45.6s, VMState=saved.
Savestate file 1.73 GB (compressed 4096 MB RAM). VBoxHeadless процессы
освободили ~4 GB private memory. Resume в 30 сек через startvm --type headless.

unregistervm --delete (~95 GB disk reclaim) запланирован на +неделю uptime.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-21 08:14:51 +03:00
13c23b9bc5 docs(.wiki,.tasks): vds-kzntsv-bootstrap done — 3 phases shipped
VDS Rusonyx 160 NVMe (89.253.255.94 / vds.kzntsv.site) активирован
2026-05-20. 3 фазы за ~6 часов:

- Phase 1: harden + docker 29.5.1 + traefik v2.11 + portainer 2.21.5
- Phase 2: shared DB park (postgres 16 / mariadb 11.4 / mongo 7 /
  redis 7) via traefik raw TCP forward + self-signed TLS
- Phase 3: миграция gitea (132 repos), verdaccio (2063 pkgs), registry
  fresh install (user accepted loss old images) + Joxit GUI

Ingest 1 source + 1 entity (vds-kzntsv) + 6 concepts (traefik-tcp-
passthrough-vs-starttls / portainer-2.21-admin-password-regression /
db-tls-self-signed-via-traefik-raw-tcp / rusonyx-vps-onboarding-quirks
/ registry-gc-mount-and-modify-flag / compose-bcrypt-escape-trap).

3 follow-up  tasks: vds-gc-cron, vds-backup-rsync-kreknin, vds-ntfy-push.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 22:39:31 +03:00
b3f9526bb2 docs(.wiki): ingest iis-host-migration attempt 2 (success) + docker-host-loopback-detect
Phase 10 успех — recipe из post-mortem применён полностью: backend port :8089, bak-pre-attempt2 серия, IIS binding + Stop+Start, loop-detect через docker exec wget, 2 canary phone-tests от мобильного интернета, batch 9 cms; stayer routes user-ом подтверждены internal → .yml.disabled.

Touched:
- sources/iis-host-migration-2026-05-19.md — append Phase 10
- concepts/iis-migration-2026-05-19-postmortem.md — footer attempt-2-succeeded с маппингом recipe A-G
- concepts/recovery-architecture-snapshot.md — major rewrite, chain через host-IIS:8089, VM = parallel fallback
- entities/snolla-recovery-vm.md — status parallel-fallback, 24-48h soak
- entities/windows-recovery-host.md — IIS sites active prod
- NEW concepts/docker-host-loopback-detect.md — recipe loop-detect + WinHTTP-proxy gotcha
- index.md, log.md
2026-05-19 16:01:12 +03:00
f3ded74674 docs(.wiki): iis-migration rollback + post-mortem + xml-escape concept
Phase 9 — rollback миграции на host-IIS из-за Docker port-loop
(host.docker.internal:80 от traefik container резолвится обратно
в сам traefik через NAT, https.yml http-catchall middleware
отдавал 301 -> TOO_MANY_REDIRECTS). Prod снова через VM.

- iis-migration-2026-05-19-postmortem: 10 ошибок миграции +
  recipe для следующей попытки (backend port НЕ :80, smoke с
  MaximumRedirection 0, тест из НЕ-LAN, parallel VM x N часов,
  atomic revert plan)
- webconfig-password-xml-escape: новая gotcha — & в conn-string
  пароле требует &amp; в Web.config (XML reserved char)
- iis-host-migration-2026-05-19: Phase 9 rollback chronology +
  что осталось на хосте inert
- snolla-recovery-vm: статус -> active prod (обратно)
- windows-recovery-host: host IIS sites -> inert artifacts
- recovery-architecture-snapshot: chain снова через VM,
  traefik backends восстановлены из .bak-phase3

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-19 15:08:07 +03:00
117376656d docs(.wiki): ingest iis-host-migration 2026-05-19 session
New source page documenting migration of MoreThenCms.Web from
snolla-recovery VM to native host IIS. Updates:
- recovery-architecture-snapshot: new chain (traefik -> host:80) +
  secondary chain for stostayer still on VM
- snolla-recovery-vm: demoted, IdentityManager port fix (8089 not 80),
  sub-apps detailed
- windows-recovery-host: 3 native IIS sites + C:\sites\, C:\stayer\
- log.md: ingest + decision entries

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-19 12:51:35 +03:00
c86750b75d docs(.wiki): ingest NAS recovery session 2026-05-18/19
15-hour cross-hypervisor recovery from WD40EFAX SMR RAID5
cascade failure. 5 entities + 7 concepts + 1 source documenting:

- Root cause: WD40EFAX SMR cascade in 3-disk RAID 5
- Hyper Backup .hbk structure + SFTP-jail / ACL workarounds
- OVA from Synology VMM (KVM) → VirtualBox: SCSI→SATA,
  Hyper-V driver disable, paravirt=kvm, GA install, NAT switch
- MSSQL restore via named volume + chown, sqlcmd -x, mssql-conf
- Web.config UTF-16 vs UTF-8 BOM IIS 500.19 trap
- Traefik on Windows DD: configFile, named volume for acme.json,
  file-provider as docker.sock workaround
- Snapshot of current recovery architecture + SPOF list
- Placeholder for future resilient-architecture work

Plus .tasks/nas-recovery.md and STATUS.md updates closing the task.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-19 11:07:38 +03:00
8ea0268df2 chore: upgrade project structure
Bootstrapped via project-bootstrap@1.11.0:
- .wiki/ (Karpathy LLM Wiki canon) via setup-wiki@1.0.0
- .tasks/ (canonical board) via setup-tasks@1.0.0
- CLAUDE.md with skill triggers
- README.md starter
- .gitignore: meta-isolation block for AI обвеска
2026-05-18 18:56:24 +03:00