>>> [vm101-git] precheck MODE=--publish PROFILE=/etc/router-machine-git-source.conf PROFILE_VERSION=2 PROFILE_SHA256=5d3f8c3b23825f9cb481713bf581bc8d46ca307416b0e522da5d5e04d4ebcf68 MACHINE_ID=vm101 GIT_DIR=/root/.vm101-source.git WORK_TREE=/ BRANCH=main REMOTE_URL=git@github.com:DChuvelev/wg-paid-vm101.git LOCAL_HEAD=0cdefcb9bd39e750d200c00f56a3d55c1d18b14a >>> [vm101-git] verify remote branch REMOTE_HEAD=0cdefcb9bd39e750d200c00f56a3d55c1d18b14a >>> [vm101-git] build current project allowlist etc/crontabs/root etc/init.d/router-egress-emergency-decision etc/init.d/router-egress-health-repair etc/init.d/router-egress-slot-health etc/init.d/router-egress-slots etc/init.d/router-wgpay-canary etc/nftables.d/90-wg-guest-snat.nft etc/router-machine-git-source.conf root/hmn/hmn-apply-selected.sh root/hmn/hmn-clean-old-files.sh root/hmn/hmn-code-test.sh root/hmn/hmn-download-all-awg.sh root/hmn/hmn-load-egress-slot.sh root/hmn/hmn-load-vpn-slot.sh root/hmn/hmn-load-vpn-test.sh root/hmn/hmn-load-vpn-user.sh root/hmn/hmn-plan-selected.sh root/hmn/hmn-pool-low-watermark-check.sh root/hmn/hmn-rank-awg.sh root/hmn/hmn-refill-slot.sh root/hmn/hmn-refresh-awg.sh root/hmn/hmn-refresh-pool-cron.sh root/hmn/hmn-refresh-pool-safe.sh root/hmn/hmn-refresh-retry-cron.sh root/hmn/hmn-set-code.sh root/hmn/hmn-test-all-awg.sh root/hmn/hmn-validate-current-pool.sh root/hmn/hmn-vpn-egress-revive.sh root/hmn/hmn-vpn-user-override.sh usr/local/lib/router-egress-recovery-state.sh usr/local/lib/router-egress-vm101-runtime.sh usr/local/sbin/router-egress-emergency-decision-hook.sh usr/local/sbin/router-egress-emergency-refresh.sh usr/local/sbin/router-egress-health-repair-watch.sh usr/local/sbin/router-egress-hmn-plan-top5.sh usr/local/sbin/router-egress-hmn-rebalance-top5-apply.sh usr/local/sbin/router-egress-recovery-dispatcher.sh usr/local/sbin/router-egress-recovery-hmn-pool-replace.sh usr/local/sbin/router-egress-slot-health.sh usr/local/sbin/router-egress-slots-apply.sh usr/local/sbin/router-egress-slots-status.sh usr/local/sbin/router-machine-git-publish.sh usr/local/sbin/router-vm101-git-publish.sh usr/local/sbin/router-wgpay-canary-apply.sh >>> [vm101-git] read paths already tracked by git etc/crontabs/root etc/init.d/router-egress-emergency-decision etc/init.d/router-egress-health-repair etc/init.d/router-egress-slot-health etc/init.d/router-egress-slots etc/init.d/router-wgpay-canary etc/nftables.d/90-wg-guest-snat.nft etc/router-machine-git-source.conf root/hmn/hmn-apply-selected.sh root/hmn/hmn-clean-old-files.sh root/hmn/hmn-code-test.sh root/hmn/hmn-download-all-awg.sh root/hmn/hmn-load-egress-slot.sh root/hmn/hmn-load-vpn-slot.sh root/hmn/hmn-load-vpn-test.sh root/hmn/hmn-load-vpn-user.sh root/hmn/hmn-plan-selected.sh root/hmn/hmn-pool-low-watermark-check.sh root/hmn/hmn-rank-awg.sh root/hmn/hmn-refill-slot.sh root/hmn/hmn-refresh-awg.sh root/hmn/hmn-refresh-pool-cron.sh root/hmn/hmn-refresh-pool-safe.sh root/hmn/hmn-refresh-retry-cron.sh root/hmn/hmn-set-code.sh root/hmn/hmn-test-all-awg.sh root/hmn/hmn-validate-current-pool.sh root/hmn/hmn-vpn-egress-revive.sh root/hmn/hmn-vpn-user-override.sh usr/local/lib/router-egress-recovery-state.sh usr/local/lib/router-egress-vm101-runtime.sh usr/local/sbin/router-egress-emergency-decision-hook.sh usr/local/sbin/router-egress-emergency-refresh.sh usr/local/sbin/router-egress-health-repair-watch.sh usr/local/sbin/router-egress-hmn-plan-top5.sh usr/local/sbin/router-egress-hmn-rebalance-top5-apply.sh usr/local/sbin/router-egress-recovery-dispatcher.sh usr/local/sbin/router-egress-recovery-hmn-pool-replace.sh usr/local/sbin/router-egress-slot-health.sh usr/local/sbin/router-egress-slots-apply.sh usr/local/sbin/router-egress-slots-status.sh usr/local/sbin/router-machine-git-publish.sh usr/local/sbin/router-vm101-git-publish.sh usr/local/sbin/router-wgpay-canary-apply.sh CURRENT_ALLOWED_COUNT=44 TRACKED_COUNT=44 MANAGED_UNION_COUNT=44 >>> [vm101-git] strict path validation STRICT_PATH_VALIDATION=true >>> [vm101-git] show tracked files now missing from machine TRACKED_PATH_MISSING_COUNT=0 >>> [vm101-git] build simulated git index STAGED_CHANGE_COUNT=1 === STAGED PATHS === root/hmn/hmn-download-all-awg.sh >>> [vm101-git] validate simulated staged paths STAGED_PATH_VALIDATION=true SIMULATED_TREE_SHA=5fd98618255cfbcb3a2ed8d669a8675b65ec7330 SIMULATED_TREE_FILE_COUNT=44 >>> [vm101-git] high-confidence secret scan of simulated tree HIGH_CONFIDENCE_SECRET_MATCHES=0 >>> [vm101-git] keyword review scan === FILES REQUIRING KEYWORD REVIEW === 5fd98618255cfbcb3a2ed8d669a8675b65ec7330:hmn/hmn-load-egress-slot.sh 5fd98618255cfbcb3a2ed8d669a8675b65ec7330:hmn/hmn-load-vpn-slot.sh 5fd98618255cfbcb3a2ed8d669a8675b65ec7330:hmn/hmn-load-vpn-test.sh 5fd98618255cfbcb3a2ed8d669a8675b65ec7330:hmn/hmn-load-vpn-user.sh 5fd98618255cfbcb3a2ed8d669a8675b65ec7330:hmn/hmn-set-code.sh 5fd98618255cfbcb3a2ed8d669a8675b65ec7330:hmn/hmn-vpn-user-override.sh >>> [vm101-git] verify real git index has no pre-staged changes >>> [vm101-git] install validated simulated index >>> [vm101-git] create commit [main 0275895] vm101: publish managed source 2026-07-13T19:20:38Z 1 file changed, 38 insertions(+), 6 deletions(-) NEW_COMMIT=027589515a26edc7d70d8ecb20d8311ac3a870a9 NEW_TREE=5fd98618255cfbcb3a2ed8d669a8675b65ec7330 >>> [vm101-git] push branch to remote To github.com:DChuvelev/wg-paid-vm101.git 0cdefcb..0275895 main -> main >>> [vm101-git] verify remote commit LOCAL_COMMIT=027589515a26edc7d70d8ecb20d8311ac3a870a9 REMOTE_COMMIT=027589515a26edc7d70d8ecb20d8311ac3a870a9 RESULT=PASS_vm101_GIT_PUBLISH MACHINE_ID=vm101 GIT_COMMIT=027589515a26edc7d70d8ecb20d8311ac3a870a9 GIT_TREE=5fd98618255cfbcb3a2ed8d669a8675b65ec7330 GIT_FILE_COUNT=44 COMMIT_CREATED=true PUSH_PERFORMED=true REPOSITORY=https://github.com/DChuvelev/wg-paid-vm101