SFTP_USER=library
SFTP_CHROOT=/srv/sftp
SFTP_START_DIR=/library
USER_PASSWORD_STATE=locked_pending_operator_set
SFTP_EFFECTIVE_POLICY=PASS
SFTP_FILESYSTEM_WRITE_PROBE=PASS
LIBRARY_HTTP_LOCAL_CODE=200
CADDY_PRESERVED=PASS
INGRESS_HEALTH=PASS
RESULT=PASS_P32I_R01_VM103_POSTCHECK
>>> [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=3716d87690e142a6abd938f3328f5ffdfcf9039c7e55e3a51ed88acf3ecb7a80
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=8ef55ea24f8368e9ae0f128109d9709e596d1290
>>> [vm103-git] verify remote branch
REMOTE_HEAD=8ef55ea24f8368e9ae0f128109d9709e596d1290
>>> [vm103-git] build current project allowlist
>>> [vm103-git] read paths already tracked by git
CURRENT_ALLOWED_COUNT=23
TRACKED_COUNT=21
MANAGED_UNION_COUNT=23
>>> [vm103-git] strict path validation
STRICT_PATH_VALIDATION=true
>>> [vm103-git] show tracked files now missing from machine
TRACKED_PATH_MISSING_COUNT=0
>>> [vm103-git] build simulated git index
STAGED_CHANGE_COUNT=3
=== STAGED PATHS ===
etc/router-machine-git-source.conf
etc/ssh/sshd_config.d/90-secret-studio-library-sftp.conf
etc/systemd/system/srv-sftp-library.mount
>>> [vm103-git] validate simulated staged paths
STAGED_PATH_VALIDATION=true
SIMULATED_TREE_SHA=fd1e4443e11bb5b5794d446373e608411fa6bcd6
SIMULATED_TREE_FILE_COUNT=23
>>> [vm103-git] high-confidence secret scan of simulated tree
HIGH_CONFIDENCE_SECRET_MATCHES=0
>>> [vm103-git] keyword review scan
=== FILES REQUIRING KEYWORD REVIEW ===
fd1e4443e11bb5b5794d446373e608411fa6bcd6:etc/caddy/Caddyfile
fd1e4443e11bb5b5794d446373e608411fa6bcd6:etc/router-machine-git-source.conf
fd1e4443e11bb5b5794d446373e608411fa6bcd6:etc/ssh/sshd_config.d/90-secret-studio-library-sftp.conf
fd1e4443e11bb5b5794d446373e608411fa6bcd6:etc/systemd/system/secret-studio-sample-library.service
fd1e4443e11bb5b5794d446373e608411fa6bcd6:etc/systemd/system/srv-sftp-library.mount
fd1e4443e11bb5b5794d446373e608411fa6bcd6:etc/wg-paid-machine-role
fd1e4443e11bb5b5794d446373e608411fa6bcd6:srv/wg-paid/access-web/assets/index-DUDZDpP5.css
fd1e4443e11bb5b5794d446373e608411fa6bcd6:srv/wg-paid/access-web/assets/index-DXT2dH8A.js
fd1e4443e11bb5b5794d446373e608411fa6bcd6:srv/wg-paid/admin-web/assets/index-BFO04yXl.js
fd1e4443e11bb5b5794d446373e608411fa6bcd6:srv/wg-paid/web-meta/robots.txt
fd1e4443e11bb5b5794d446373e608411fa6bcd6:srv/wg-paid/web-meta/sitemap-reports.xml
fd1e4443e11bb5b5794d446373e608411fa6bcd6:srv/wg-paid/web-meta/sitemap-reports001.xml
fd1e4443e11bb5b5794d446373e608411fa6bcd6:usr/local/sbin/router-machine-git-publish.sh
fd1e4443e11bb5b5794d446373e608411fa6bcd6:usr/local/sbin/router-vm103-admin-cert-renew.sh
fd1e4443e11bb5b5794d446373e608411fa6bcd6:usr/local/sbin/router-vm103-ingress-health.sh

RESULT=PASS_VM103_GIT_PUBLISH_CHECK
MACHINE_ID=vm103
GIT_COMMIT=8ef55ea24f8368e9ae0f128109d9709e596d1290
GIT_TREE=fd1e4443e11bb5b5794d446373e608411fa6bcd6
GIT_FILE_COUNT=23
COMMIT_CREATED=false
PUSH_PERFORMED=false

VM103_RESULT=PASS_VM103_GIT_PUBLISH_CHECK
VM103_COMMIT=8ef55ea24f8368e9ae0f128109d9709e596d1290
VM103_REMOTE_COMMIT=8ef55ea24f8368e9ae0f128109d9709e596d1290
>>> [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 8ef55ea vm103: publish managed source 2026-09-30T16:55:48Z

VM130_COMMIT=8ef55ea24f8368e9ae0f128109d9709e596d1290
VM130_TREE=bfdc013d6ad554ae03de84f1f32e46536423a65a
VM130_FILE_COUNT=21
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=8ef55ea24f8368e9ae0f128109d9709e596d1290
VM130_COMMIT=8ef55ea24f8368e9ae0f128109d9709e596d1290
VM130_TREE=bfdc013d6ad554ae03de84f1f32e46536423a65a
VM130_FILE_COUNT=21
VM103_PUSH_PERFORMED=false
ARCHIVE_CREATED=false
PERMANENT_HTTPS_PUBLISHED=false
EXPECTED_TARGET_TREE=fd1e4443e11bb5b5794d446373e608411fa6bcd6
EXPECTED_TARGET_FILE_COUNT=23
RESULT=PASS_P32I_R01_POSTCHECK