access-web/assets/index-D7z3MgS5.css: OK
access-web/assets/index-itjy8BD3.js: OK
access-web/index.html: OK
admin-web/RELEASE-MANIFEST.txt: OK
admin-web/assets/index-BaFVNgBU.css: OK
admin-web/assets/index-BDU_pzpn.js: OK
admin-web/index.html: OK
VM103_CADDY_SHA256=428532252ec29db89723311beb4d53f0f25082f0acdde3f223cd3aa071767093
{"level":"info","ts":1790523633.2991312,"msg":"using provided configuration","config_file":"/etc/caddy/Caddyfile","config_adapter":""}
{"level":"warn","ts":1790523633.3108513,"msg":"Caddyfile input is not formatted; run the 'caddy fmt' command to fix inconsistencies","adapter":"caddyfile","file":"/etc/caddy/Caddyfile","line":2}
{"level":"info","ts":1790523633.3133247,"logger":"tls.cache.maintenance","msg":"started background certificate maintenance","cache":"0xc0002ba7e0"}
{"level":"warn","ts":1790523633.3143246,"logger":"tls","msg":"stapling OCSP","error":"no OCSP stapling for [admin.secret-studio.ru]: no OCSP server specified in certificate"}
{"level":"info","ts":1790523633.3144639,"logger":"http","msg":"skipping automatic certificate management because one or more matching certificates are already loaded","domain":"admin.secret-studio.ru","server_name":"srv0"}
{"level":"warn","ts":1790523633.3144855,"logger":"http","msg":"automatic HTTP->HTTPS redirects are disabled","server_name":"srv0"}
{"level":"warn","ts":1790523633.3144968,"logger":"http","msg":"server is listening only on the HTTP port, so no automatic HTTPS will be applied to this server","server_name":"srv1","http_port":80}
{"level":"info","ts":1790523633.3190768,"logger":"tls.cache.maintenance","msg":"stopped background certificate maintenance","cache":"0xc0002ba7e0"}
VM103_CADDY_ACTIVE=true
VM103_REPORTS_PRIMARY=PASS
VM103_REPORTS001_HTTP_REDIRECT=PASS
VM103_REPORTS001_HTTPS_ROUTE=PASS
VM103_REPORTS001_LATEST_INDEX_BYTE_MATCH=PASS
VM103_REPORTS001_TLS_CERTIFICATE_HOSTNAME=PASS
VM103_ACCESS_HTTP_REDIRECT=PASS
VM103_ACCESS_ROOT_LOGIN_PAGE=PASS
VM103_ACCESS_HEALTH_ROUTE=PASS
VM103_ACCESS_TLS_CERTIFICATE_HOSTNAME=PASS
VM103_ACCESS_VITE_JS_DISCOVERY=PASS
VM103_ACCESS_FRONTEND_CONTRACT_MARKERS=PASS
VM103_ACCESS_LOGIN_PAGE=PASS
VM103_ACCESS_INVITE_PAGE=PASS
VM103_ACCESS_ACCOUNT_PAGE=PASS
VM103_ACCESS_MAGIC_FRAGMENT_PAGE=PASS
VM103_ACCESS_PUBLIC_API_PROXY_ACTIVE=true
VM103_ACCESS_INVITE_LIFECYCLE_API_ROUTES=PASS
VM103_ACCESS_EXTERNAL_ONBOARDING_GATE_OPEN=PASS
VM103_ACCESS_ACCOUNT_AUTH_REQUIRED=PASS
VM103_ACCESS_AGENT_PROXY_ACTIVE=false
VM103_ACCESS_ADMIN_PROXY_ACTIVE=false
VM103_REPORTS_CRAWL_ROOT=PASS
VM103_REPORTS_ROBOTS=PASS
VM103_REPORTS_SITEMAP=PASS
VM103_REPORTS_LATEST_CACHE_POLICY=PASS
VM103_REPORTS_OLD_CACHE_POLICY=PASS
VM103_REPORTS_ACCESS_LOGGING_CONFIGURED=true
RESULT=PASS_VM103_ACCESS_AND_REPORTS001_INGRESS_HEALTH
VM103_DIST_HASH_VERIFY=PASS
VM103_P29G10_ASSET_MARKERS_VERIFY=PASS
VM103_P29G4_RETIRE_PUT_PRESERVED=PASS
VM103_P29G10_PUBLIC_API_INGRESS_VERIFY=PASS
VM103_CADDY_PRESERVATION_VERIFY=PASS
VM103_INGRESS_HEALTH_VERIFY=PASS
>>> [vm103-source] precheck
MODE=--check
REPOSITORY_URL=https://github.com/DChuvelev/wg-paid-vm103.git
REPO_DIR=/opt/router-ops/state/source-repositories/wg-paid-vm103
>>> [vm103-source] run VM103 git publisher through approved direct SSH
>>> [vm103-git] precheck
MODE=--check
PROFILE=/etc/router-machine-git-source.conf
PROFILE_VERSION=2
PROFILE_SHA256=14fccde9c3f62fe098828c1f04a9c5e415114cdaa844974dbab62cd76093d0d4
MACHINE_ID=vm103
GIT_DIR=/root/.vm103-source.git
WORK_TREE=/
BRANCH=main
REMOTE_URL=git@github.com:DChuvelev/wg-paid-vm103.git
LOCAL_HEAD=cad5e2e059fd47bd99a41b14d098be10164aa7ac
>>> [vm103-git] verify remote branch
REMOTE_HEAD=cad5e2e059fd47bd99a41b14d098be10164aa7ac
>>> [vm103-git] build current project allowlist
>>> [vm103-git] read paths already tracked by git
CURRENT_ALLOWED_COUNT=20
TRACKED_COUNT=20
MANAGED_UNION_COUNT=22
>>> [vm103-git] strict path validation
STRICT_PATH_VALIDATION=true
>>> [vm103-git] show tracked files now missing from machine
TRACKED_PATH_MISSING=srv/wg-paid/access-web/assets/index-CYeO0ief.js
TRACKED_PATH_MISSING=srv/wg-paid/access-web/assets/index-DEAjdcjJ.css
TRACKED_PATH_MISSING_COUNT=2
>>> [vm103-git] build simulated git index
STAGED_CHANGE_COUNT=6
=== STAGED PATHS ===
srv/wg-paid/access-web/assets/index-CYeO0ief.js
srv/wg-paid/access-web/assets/index-D7z3MgS5.css
srv/wg-paid/access-web/assets/index-DEAjdcjJ.css
srv/wg-paid/access-web/assets/index-itjy8BD3.js
srv/wg-paid/access-web/index.html
srv/wg-paid/admin-web/RELEASE-MANIFEST.txt
>>> [vm103-git] validate simulated staged paths
STAGED_PATH_VALIDATION=true
SIMULATED_TREE_SHA=8035febf615af00c493e02b02ba4e2fb02e0ec86
SIMULATED_TREE_FILE_COUNT=20
>>> [vm103-git] high-confidence secret scan of simulated tree
HIGH_CONFIDENCE_SECRET_MATCHES=0
>>> [vm103-git] keyword review scan
=== FILES REQUIRING KEYWORD REVIEW ===
8035febf615af00c493e02b02ba4e2fb02e0ec86:etc/caddy/Caddyfile
8035febf615af00c493e02b02ba4e2fb02e0ec86:etc/wg-paid-machine-role
8035febf615af00c493e02b02ba4e2fb02e0ec86:srv/wg-paid/access-web/assets/index-D7z3MgS5.css
8035febf615af00c493e02b02ba4e2fb02e0ec86:srv/wg-paid/access-web/assets/index-itjy8BD3.js
8035febf615af00c493e02b02ba4e2fb02e0ec86:srv/wg-paid/admin-web/assets/index-BDU_pzpn.js
8035febf615af00c493e02b02ba4e2fb02e0ec86:srv/wg-paid/web-meta/robots.txt
8035febf615af00c493e02b02ba4e2fb02e0ec86:srv/wg-paid/web-meta/sitemap-reports.xml
8035febf615af00c493e02b02ba4e2fb02e0ec86:srv/wg-paid/web-meta/sitemap-reports001.xml
8035febf615af00c493e02b02ba4e2fb02e0ec86:usr/local/sbin/router-machine-git-publish.sh
8035febf615af00c493e02b02ba4e2fb02e0ec86:usr/local/sbin/router-vm103-admin-cert-renew.sh
8035febf615af00c493e02b02ba4e2fb02e0ec86:usr/local/sbin/router-vm103-ingress-health.sh

RESULT=PASS_VM103_GIT_PUBLISH_CHECK
MACHINE_ID=vm103
GIT_COMMIT=cad5e2e059fd47bd99a41b14d098be10164aa7ac
GIT_TREE=8035febf615af00c493e02b02ba4e2fb02e0ec86
GIT_FILE_COUNT=20
COMMIT_CREATED=false
PUSH_PERFORMED=false

VM103_RESULT=PASS_VM103_GIT_PUBLISH_CHECK
VM103_COMMIT=cad5e2e059fd47bd99a41b14d098be10164aa7ac
VM103_REMOTE_COMMIT=cad5e2e059fd47bd99a41b14d098be10164aa7ac
>>> [vm103-source] clone or refresh repository on VM130
CURRENT_ORIGIN=https://github.com/DChuvelev/wg-paid-vm103.git
From https://github.com/DChuvelev/wg-paid-vm103
 * branch            main       -> FETCH_HEAD
Reset branch 'main'
branch 'main' set up to track 'origin/main'.
Your branch is up to date with 'origin/main'.
HEAD is now at cad5e2e vm103: publish managed source 2026-09-27T11:54:58Z

VM130_COMMIT=cad5e2e059fd47bd99a41b14d098be10164aa7ac
VM130_TREE=3f6b5184d40e764fc54f14ac1d9296187e993158
VM130_FILE_COUNT=20
VM130_STATUS=CLEAN
>>> [vm103-source] verify required managed paths
REQUIRED_PATH_OK=etc/router-machine-git-source.conf
REQUIRED_PATH_OK=etc/wg-paid-machine-role
REQUIRED_PATH_OK=usr/local/sbin/router-machine-git-publish.sh
REQUIRED_PATH_OK=usr/local/sbin/router-vm103-git-publish.sh

RESULT=PASS_VM130_VM103_GIT_SOURCE_CHECK
VM103_COMMIT=cad5e2e059fd47bd99a41b14d098be10164aa7ac
VM130_COMMIT=cad5e2e059fd47bd99a41b14d098be10164aa7ac
VM130_TREE=3f6b5184d40e764fc54f14ac1d9296187e993158
VM130_FILE_COUNT=20
VM103_PUSH_PERFORMED=false
ARCHIVE_CREATED=false
PERMANENT_HTTPS_PUBLISHED=false
===== ACCEPTED DIST SHA256 =====
e654afda00b9b05489dd485a5db74a1813d5ce2b386f406779865feced6a9ae2  access-web/assets/index-D7z3MgS5.css
b079bc53cd514b194d0455771967616c5965ddd2ab0e18c4de71095b7171c110  access-web/assets/index-itjy8BD3.js
bcd848f98ec7bfe49070f80a1fe72ab776acfc08835816f144e6f317fef10cc3  access-web/index.html
b1d7f0263bbe4096074bec078fb80b557ab0b245c97d4d87d0a0e21874a4ea83  admin-web/RELEASE-MANIFEST.txt
430c716bd22f3d46c613a52097fe4ae6ddf062a6f0e71c8d2f9fcd0eac36b552  admin-web/assets/index-BaFVNgBU.css
3d526ff7ba2da263aed454ffffa095ae6fb6d737e4e62a96c5dd503d35d4baf5  admin-web/assets/index-BDU_pzpn.js
d655704dfcebbdfae651bdb9a548840506eb056c7b150d080d340e0120f1ce56  admin-web/index.html
DEPLOY_PACKAGE_SHA256=ca49708d0ebd5ad035221495c16a73570a0a109b49cee75abb1ffacad9b00a14
EXPECTED_TARGET_TREE=8035febf615af00c493e02b02ba4e2fb02e0ec86
RESULT=PASS_P29G10_R01_POSTCHECK