diff --git a/runtime/history/CONTEXT-AUTO-20260804T171701Z.json b/runtime/history/CONTEXT-AUTO-20260804T171701Z.json new file mode 100644 index 0000000..356486d --- /dev/null +++ b/runtime/history/CONTEXT-AUTO-20260804T171701Z.json @@ -0,0 +1 @@ +{"schema_version":1,"channel":"homelab-runtime","command_id":"CONTEXT-AUTO-20260804T171701Z","status":"OK","rc":0,"host":"pve01","mode":"read-only","component":"cluster-context","started_at_utc":"2026-08-04T17:17:01Z","finished_at_utc":"2026-08-04T17:17:02Z","reference_register_checked":true,"reference_sha256":"5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e","error_register_checked":true,"error_register_sha256":"24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83","changes_made":false,"sanitized":true,"secrets_included":false,"private_addresses_included":false,"output":"AUTOMATIC_CLUSTER_CONTEXT_REFRESH=OK"} diff --git a/runtime/history/CONTEXT-AUTO-20260804T171701Z.txt b/runtime/history/CONTEXT-AUTO-20260804T171701Z.txt new file mode 100644 index 0000000..b4063ca --- /dev/null +++ b/runtime/history/CONTEXT-AUTO-20260804T171701Z.txt @@ -0,0 +1,164 @@ +CHAT_OUTPUT_BEGIN +COMMAND_ID=CONTEXT-AUTO-[PRIVATE_IP]701Z +STATUS=OK +RC=0 +HOST=pve01 +COMPONENT=cluster-context +REFERENCE_SHA[PRIVATE_IP]f8edc75fcf[PRIVATE_IP]c[PRIVATE_IP]cc112ceccb6cf[PRIVATE_IP]a4deb8e +ERROR_REGISTER_SHA[PRIVATE_IP]c7fa[PRIVATE_IP]583c4aefac[PRIVATE_IP]1736ed[PRIVATE_IP]ab83 +OUTPUT_BEGIN +GENERATED_AT_UTC=[PRIVATE_IP]T17:17:01Z +Cluster information +------------------- +Name: homelab +Config Version: 3 +Transport: knet +Secure auth: on + +Quorum information +------------------ +Date: Tue Aug [PRIVATE_IP] 2026 +Quorum provider: corosync_votequorum +Nodes: 3 +Node ID: [PRIVATE_IP] +Ring ID: 1.db +Quorate: Yes + +Votequorum information +---------------------- +Expected votes: 3 +Highest expected: 3 +Total votes: 3 +Quorum: 2 +Flags: Quorate + +Membership information +---------------------- + Nodeid Votes Name +[PRIVATE_IP] [PRIVATE_IP].11 (local) +[PRIVATE_IP] [PRIVATE_IP].13 +[PRIVATE_IP] [PRIVATE_IP].12 + +Membership information +---------------------- + Nodeid Votes Name + 1 1 pve01 (local) + 2 1 pve03 + 3 1 pve02 +[{"cpu":[PRIVATE_IP][PRIVATE_IP],"disk":[PRIVATE_IP],"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"lxc/110","maxcpu":1,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":0,"name":"dns1","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve01","status":"running","template":0,"type":"lxc","uptime":627001,"vmid":110},{"cpu":[PRIVATE_IP][PRIVATE_IP],"disk":[PRIVATE_IP],"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"lxc/111","maxcpu":1,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":0,"name":"dns2","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve02","status":"running","template":0,"type":"lxc","uptime":627084,"vmid":111},{"cpu":[PRIVATE_IP][PRIVATE_IP],"disk":[PRIVATE_IP],"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"lxc/112","maxcpu":1,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":0,"name":"unbound1","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve01","status":"running","template":0,"type":"lxc","uptime":627046,"vmid":112},{"cpu":[PRIVATE_IP]187e-05,"disk":[PRIVATE_IP],"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"lxc/113","maxcpu":1,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":0,"name":"unbound2","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve02","status":"running","template":0,"type":"lxc","uptime":627088,"vmid":113},{"cpu":[PRIVATE_IP]76716,"disk":0,"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"qemu/130","maxcpu":4,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":[PRIVATE_IP],"name":"edge-vm","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve03","status":"running","template":0,"type":"qemu","uptime":627024,"vmid":130},{"cpu":[PRIVATE_IP]67703,"disk":0,"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"qemu/150","maxcpu":4,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":[PRIVATE_IP],"name":"nextcloud","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve01","status":"running","template":0,"type":"qemu","uptime":626998,"vmid":150},{"cpu":[PRIVATE_IP]498139,"disk":0,"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"qemu/160","maxcpu":4,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":[PRIVATE_IP],"name":"forum-prod","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve02","status":"running","template":0,"type":"qemu","uptime":627081,"vmid":160},{"cpu":[PRIVATE_IP]03976,"disk":0,"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"qemu/170","maxcpu":4,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":[PRIVATE_IP],"name":"core-apps","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve01","status":"running","template":0,"type":"qemu","uptime":626994,"vmid":170},{"cpu":[PRIVATE_IP]70301,"disk":0,"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"qemu/171","maxcpu":4,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":[PRIVATE_IP],"name":"monitoring","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve01","status":"running","template":0,"type":"qemu","uptime":626991,"vmid":171},{"cpu":[PRIVATE_IP]3172,"disk":0,"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"qemu/180","maxcpu":2,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":[PRIVATE_IP],"name":"cluster-admin","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve02","status":"running","template":0,"type":"qemu","uptime":627078,"vmid":180},{"cpu":[PRIVATE_IP]002553,"disk":0,"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"qemu/190","maxcpu":4,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":[PRIVATE_IP],"name":"homelab-ops-worker","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve03","status":"running","template":0,"type":"qemu","uptime":627020,"vmid":190},{"cpu":0,"disk":0,"diskread":0,"diskwrite":0,"id":"qemu/9130","maxcpu":4,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":0,"memhost":0,"name":"edge-cold-standby","netin":0,"netout":0,"node":"pve02","status":"stopped","template":0,"type":"qemu","uptime":0,"vmid":9130},{"cgroup-mode":2,"cpu":[PRIVATE_IP]03815,"disk":[PRIVATE_IP],"id":"node/pve02","level":"","maxcpu":4,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"node":"pve02","status":"online","type":"node","uptime":627121},{"cgroup-mode":2,"cpu":[PRIVATE_IP]60751,"disk":[PRIVATE_IP],"id":"node/pve01","level":"","maxcpu":24,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"node":"pve01","status":"online","type":"node","uptime":627103},{"cgroup-mode":2,"cpu":[PRIVATE_IP]09587,"disk":[PRIVATE_IP],"id":"node/pve03","level":"","maxcpu":8,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"node":"pve03","status":"online","type":"node","uptime":627042},{"content":"rootdir,images","disk":[PRIVATE_IP],"id":"storage/pve02/local-lvm","maxdisk":[PRIVATE_IP],"node":"pve02","plugintype":"lvmthin","shared":0,"status":"available","storage":"local-lvm","type":"storage"},{"content":"rootdir,images","disk":[PRIVATE_IP],"id":"storage/pve01/local-lvm","maxdisk":[PRIVATE_IP],"node":"pve01","plugintype":"lvmthin","shared":0,"status":"available","storage":"local-lvm","type":"storage"},{"content":"rootdir,images","disk":[PRIVATE_IP],"id":"storage/pve03/local-lvm","maxdisk":[PRIVATE_IP],"node":"pve03","plugintype":"lvmthin","shared":0,"status":"available","storage":"local-lvm","type":"storage"},{"content":"vztmpl,backup,import,iso","disk":[PRIVATE_IP],"id":"storage/pve02/local","maxdisk":[PRIVATE_IP],"node":"pve02","plugintype":"dir","shared":0,"status":"available","storage":"local","type":"storage"},{"content":"vztmpl,backup,import,iso","disk":[PRIVATE_IP],"id":"storage/pve01/local","maxdisk":[PRIVATE_IP],"node":"pve01","plugintype":"dir","shared":0,"status":"available","storage":"local","type":"storage"},{"content":"vztmpl,backup,import,iso","disk":[PRIVATE_IP],"id":"storage/pve03/local","maxdisk":[PRIVATE_IP],"node":"pve03","plugintype":"dir","shared":0,"status":"available","storage":"local","type":"storage"},{"id":"network/pve02/zone/localnetwork","network":"localnetwork","network-type":"zone","node":"pve02","status":"ok","type":"network"},{"id":"network/pve01/zone/localnetwork","network":"localnetwork","network-type":"zone","node":"pve01","status":"ok","type":"network"},{"id":"network/pve03/zone/localnetwork","network":"localnetwork","network-type":"zone","node":"pve03","status":"ok","type":"network"}] +Name Type Status Total (KiB) Used (KiB) Available (KiB) % +local dir active [PRIVATE_IP] [PRIVATE_IP] [PRIVATE_IP] 14.22% +local-lvm lvmthin active [PRIVATE_IP] [PRIVATE_IP] [PRIVATE_IP] 27.37% + UNIT LOAD ACTIVE SUB DESCRIPTION +● homelab-backup-matrix-refresh.service loaded failed failed Generate unified homelab backup matrix state +● homelab-crypto-portfolio-chart-health.service loaded failed failed Crypto portfolio chart health check +● skladchik-reports-monitor-supervisor.service loaded failed failed Skladchik reports monitor full supervisor + +Legend: LOAD → Reflects whether the unit definition was properly loaded. + ACTIVE → The high-level unit activation state, i.e. generalization of SUB. + SUB → The low-level unit activation state, values depend on unit type. + +3 loaded units listed. +NEXT LEFT LAST PASSED UNIT ACTIVATES +Tue [PRIVATE_IP] 20:17:03 MSK 1s Tue [PRIVATE_IP] 20:11:56 MSK 5min ago homelab-crypto-portfolio-chart-health.timer homelab-crypto-portfolio-chart-health.service +Tue [PRIVATE_IP] 20:17:10 MSK 8s Tue [PRIVATE_IP] 20:11:53 MSK 5min ago homelab-health-metrics.timer homelab-health-metrics.service +Tue [PRIVATE_IP] 20:17:14 MSK 12s Tue [PRIVATE_IP] 20:16:14 MSK 47s ago homelab-cluster-admin-webpanel-sync.timer homelab-cluster-admin-webpanel-sync.service +Tue [PRIVATE_IP] 20:17:14 MSK 12s Tue [PRIVATE_IP] 20:16:14 MSK 47s ago homelab-private-vpn-hosts-health.timer homelab-private-vpn-hosts-health.service +Tue [PRIVATE_IP] 20:17:23 MSK 21s Tue [PRIVATE_IP] 20:15:14 MSK 1min 47s ago homelab-cluster-admin-inventory-sync.timer homelab-cluster-admin-inventory-sync.service +Tue [PRIVATE_IP] 20:18:00 MSK 57s Tue [PRIVATE_IP] 20:16:57 MSK 4s ago homelab-router-watchdog.timer homelab-router-watchdog.service +Tue [PRIVATE_IP] 20:19:26 MSK 2min 24s Tue [PRIVATE_IP] 20:04:26 MSK 12min ago prometheus-node-exporter-apt.timer prometheus-node-exporter-apt.service +Tue [PRIVATE_IP] 20:20:26 MSK 3min 24s Tue [PRIVATE_IP] 20:15:26 MSK 1min 35s ago homelab-smartctl-textfile.timer homelab-smartctl-textfile.service +Tue [PRIVATE_IP] 20:20:26 MSK 3min 24s Tue [PRIVATE_IP] 20:15:26 MSK 1min 35s ago netbird-peers-health.timer netbird-peers-health.service +Tue [PRIVATE_IP] 20:22:26 MSK 5min Tue [PRIVATE_IP] 20:07:26 MSK 9min ago homelab-disk-space-health.timer homelab-disk-space-health.service +Tue [PRIVATE_IP] 20:22:26 MSK 5min Tue [PRIVATE_IP] 20:12:26 MSK 4min 35s ago skladchik-reports-monitor-supervisor.timer skladchik-reports-monitor-supervisor.service +Tue [PRIVATE_IP] 20:23:26 MSK 6min Tue [PRIVATE_IP] 20:08:26 MSK 8min ago homelab-pve03-staging-capacity-health.timer homelab-pve03-staging-capacity-health.service +Tue [PRIVATE_IP] 20:24:26 MSK 7min Tue [PRIVATE_IP] 20:09:26 MSK 7min ago prometheus-node-exporter-nvme.timer prometheus-node-exporter-nvme.service +Tue [PRIVATE_IP] 20:30:00 MSK 12min Tue [PRIVATE_IP] 20:15:07 MSK 1min 54s ago homelab-incident-journal.timer homelab-incident-journal.service +Tue [PRIVATE_IP] 20:30:01 MSK 12min Tue [PRIVATE_IP] 20:15:47 MSK 1min 14s ago homelab-forum-snuffleupagus-health.timer homelab-forum-snuffleupagus-health.service +Tue [PRIVATE_IP] 20:30:25 MSK 13min Tue [PRIVATE_IP] 20:15:47 MSK 1min 14s ago homelab-duty-admin-v2.timer homelab-duty-admin-v2.service +Tue [PRIVATE_IP] 20:30:29 MSK 13min Tue [PRIVATE_IP] 20:15:47 MSK 1min 14s ago homelab-external-probe-vps-health.timer homelab-external-probe-vps-health.service +Tue [PRIVATE_IP] 20:34:02 MSK 16min Tue [PRIVATE_IP] 20:02:50 MSK 14min ago homelab-mkdocs-auto-refresh.timer homelab-mkdocs-auto-refresh.service +Tue [PRIVATE_IP] 20:39:59 MSK 22min Tue [PRIVATE_IP] 20:08:24 MSK 8min ago homelab-reference-refresh.timer homelab-reference-refresh.service +Wed [PRIVATE_IP] 00:00:00 MSK 3h 42min Tue [PRIVATE_IP] 00:00:07 MSK 20h ago dpkg-db-backup.timer dpkg-db-backup.service +Wed [PRIVATE_IP] 00:08:04 MSK 3h 51min Tue [PRIVATE_IP] 00:05:08 MSK 20h ago homelab-storage-capacity.timer homelab-storage-capacity.service +Wed [PRIVATE_IP] 00:08:47 MSK 3h 51min Tue [PRIVATE_IP] 00:08:07 MSK 20h ago homelab-evidence-catalog.timer homelab-evidence-catalog.service +Wed [PRIVATE_IP] 00:13:19 MSK 3h 56min Tue [PRIVATE_IP] 00:13:28 MSK 20h ago homelab-docker-health.timer homelab-docker-health.service +Wed [PRIVATE_IP] 00:18:54 MSK 4h 1min Tue [PRIVATE_IP] 00:08:14 MSK 20h ago homelab-quality-gate.timer homelab-quality-gate.service +Wed [PRIVATE_IP] 00:51:16 MSK 4h 34min Tue [PRIVATE_IP] 00:08:36 MSK 20h ago logrotate.timer logrotate.service +Wed [PRIVATE_IP] 01:56:09 MSK 5h 39min Tue [PRIVATE_IP] 00:14:22 MSK 20h ago man-db.timer man-db.service +Wed [PRIVATE_IP] 02:08:26 MSK 5h 51min Tue [PRIVATE_IP] 20:08:26 MSK 8min ago homelab-vps-identity-audit.timer homelab-vps-identity-audit.service +Wed [PRIVATE_IP] 03:50:00 MSK 7h Tue [PRIVATE_IP] 03:50:02 MSK 16h ago filebrowser-offhost-sync.timer filebrowser-offhost-sync.service +Wed [PRIVATE_IP] 04:05:55 MSK 7h Tue [PRIVATE_IP] 01:23:47 MSK 18h ago pve-daily-update.timer pve-daily-update.service +Wed [PRIVATE_IP] 04:48:13 MSK 8h Tue [PRIVATE_IP] 04:42:07 MSK 15h ago homelab-edge-vm-offhost-freshness.timer homelab-edge-vm-offhost-freshness.service +Wed [PRIVATE_IP] 04:58:15 MSK 8h Tue [PRIVATE_IP] 05:15:14 MSK 15h ago homelab-sops-edge-secret-coverage.timer homelab-sops-edge-secret-coverage.service +Wed [PRIVATE_IP] 05:30:03 MSK 9h Tue [PRIVATE_IP] 12:02:37 MSK 8h ago apt-daily.timer apt-daily.service +Wed [PRIVATE_IP] 06:01:06 MSK 9h Tue [PRIVATE_IP] 06:53:08 MSK 13h ago apt-daily-upgrade.timer apt-daily-upgrade.service +Wed [PRIVATE_IP] 07:16:56 MSK 10h Tue [PRIVATE_IP] 07:03:50 MSK 13h ago homelab-drift-check.timer homelab-drift-check.service +Wed [PRIVATE_IP] 07:32:01 MSK 11h Tue [PRIVATE_IP] 07:39:26 MSK 12h ago homelab-service-registry-check.timer homelab-service-registry-check.service +Wed [PRIVATE_IP] 07:48:22 MSK 11h Tue [PRIVATE_IP] 07:54:17 MSK 12h ago homelab-desired-state-sync.timer homelab-desired-state-sync.service +Wed [PRIVATE_IP] 07:53:58 MSK 11h Tue [PRIVATE_IP] 07:46:07 MSK 12h ago homelab-alerting-health.timer homelab-alerting-health.service +Wed [PRIVATE_IP] 07:56:28 MSK 11h Tue [PRIVATE_IP] 07:56:07 MSK 12h ago homelab-dependency-map-check.timer homelab-dependency-map-check.service +Wed [PRIVATE_IP] 07:56:57 MSK 11h Tue [PRIVATE_IP] 07:56:50 MSK 12h ago homelab-runbook-generate.timer homelab-runbook-generate.service +Wed [PRIVATE_IP] 08:06:21 MSK 11h Tue [PRIVATE_IP] 07:59:39 MSK 12h ago homelab-duty-admin-report.timer homelab-duty-admin-report.service +Wed [PRIVATE_IP] 08:11:00 MSK 11h Tue [PRIVATE_IP] 08:03:50 MSK 12h ago homelab-overall-health.timer homelab-overall-health.service +Wed [PRIVATE_IP] 08:16:53 MSK 11h Tue [PRIVATE_IP] 08:16:35 MSK 12h ago homelab-kuma-monitor-policy.timer homelab-kuma-monitor-policy.service +Wed [PRIVATE_IP] 08:21:31 MSK 12h Tue [PRIVATE_IP] 08:12:26 MSK 12h ago homelab-final-readiness-gate.timer homelab-final-readiness-gate.service +Wed [PRIVATE_IP] 08:30:08 MSK 12h Tue [PRIVATE_IP] 08:36:50 MSK 11h ago homelab-capacity-risk.timer homelab-capacity-risk.service +Wed [PRIVATE_IP] 08:37:04 MSK 12h Tue [PRIVATE_IP] 08:52:38 MSK 11h ago homelab-cluster-passport.timer homelab-cluster-passport.service +Wed [PRIVATE_IP] 08:40:47 MSK 12h Tue [PRIVATE_IP] 08:36:17 MSK 11h ago homelab-secret-exposure-guard.timer homelab-secret-exposure-guard.service +Wed [PRIVATE_IP] 08:47:05 MSK 12h Tue [PRIVATE_IP] 08:54:47 MSK 11h ago immich-media-offhost-sync.timer immich-media-offhost-sync.service +Wed [PRIVATE_IP] 08:55:12 MSK 12h Tue [PRIVATE_IP] 08:50:07 MSK 11h ago homelab-golden-state-index.timer homelab-golden-state-index.service +Wed [PRIVATE_IP] 09:20:57 MSK 13h Tue [PRIVATE_IP] 09:06:50 MSK 11h ago memos-offhost-sync.timer memos-offhost-sync.service +Wed [PRIVATE_IP] 10:15:00 MSK 13h Tue [PRIVATE_IP] 10:15:14 MSK 10h ago skladchik-reports-monitor-monthly-selftest-watch.timer skladchik-reports-monitor-monthly-selftest-watch.service +Wed [PRIVATE_IP] 14:20:26 MSK 18h Tue [PRIVATE_IP] 14:20:26 MSK 5h 56min ago systemd-tmpfiles-clean.timer systemd-tmpfiles-clean.service +Sun [PRIVATE_IP] 03:10:38 MSK 4 days Sun [PRIVATE_IP] 03:10:25 MSK 2 days ago xfs_scrub_all.timer xfs_scrub_all.service +Sun [PRIVATE_IP] 03:10:48 MSK 4 days Sun [PRIVATE_IP] 03:10:50 MSK 2 days ago e2scrub_all.timer e2scrub_all.service +Mon [PRIVATE_IP] 00:03:56 MSK 5 days Mon [PRIVATE_IP] 00:11:50 MSK 1 day 20h ago homelab-secret-sanity.timer homelab-secret-sanity.service +Mon [PRIVATE_IP] 01:11:21 MSK 5 days Mon [PRIVATE_IP] 01:17:56 MSK 1 day 18h ago fstrim.timer fstrim.service +- - - - prometheus-node-exporter-ipmitool-sensor.timer prometheus-node-exporter-ipmitool-sensor.service +- - - - prometheus-node-exporter-mellanox-hca-temp.timer prometheus-node-exporter-mellanox-hca-temp.service +- - - - prometheus-node-exporter-smartmon.timer prometheus-node-exporter-smartmon.service + +58 timers listed. +- Обрезанная, повреждённая или частично вставленная команда считается невыполненной; сначала проводится side-effect audit. +- Хвост parse-ошибки закрывается только после доказательства отсутствия изменений и временных артефактов. +- Proof: /var/lib/homelab-change-sets/operator-command-size-guard-v[PRIVATE_IP]T182653Z/report.txt + +## HOMELAB_ADMIN_CLI_CONTRACT_[PRIVATE_IP] +- Поддерживаемые команды: version, status, lint TASK_DIR, validate TASK_DIR, run TASK_DIR PHASE. +- Отдельная команда --help отсутствует. Неизвестный аргумент печатает usage и штатно возвращает RC=64. +- Нельзя трактовать RC=64 от --help как неисправность runner. +- Для проверки доступности runner использовать homelab-admin version; для структуры CLI использовать зафиксированную usage-строку. +- Proof: /var/lib/homelab-change-sets/homelab-admin-cli-contract-fix-v[PRIVATE_IP]T183338Z/report.txt + +AUTOMATIC_CLUSTER_CONTEXT_REFRESH_[PRIVATE_IP] +Collector: /usr/local/sbin/homelab-context-collect +Scheduler: hourly at minute 17 via /etc/cron.d/homelab-context-refresh +Destination: immutable Gitea runtime history with CONTEXT-AUTO UTC command IDs. + +AUTOMATIC_CLUSTER_CONTEXT_REFRESH_DIRECT_[PRIVATE_IP] +Publisher: /usr/local/sbin/homelab-context-refresh-direct +Schedule: hourly at minute 17. +Destination: immutable assistant-runtime history with CONTEXT-AUTO UTC IDs. +ANTI_REGRESSION_TOKEN=HOMELAB_VM_2CLOUD_444_OUTER_LAUNCHER_BOUNDARY_REQUIRED +- Anti-regression: validate the complete outer launcher with a shell syntax check and verify the wrapper argument boundary before issuing it. +- Infrastructure action executed: none. +- Backup payload impact: none. +- Production impact: none. +- Status: CLOSED; UNRESOLVED_TAIL_COUNT=0. +- Registered at: [PRIVATE_IP]T11:20:32Z + +## ERROR_[PRIVATE_IP]_HOMELAB_VM_2CLOUD_DRAIN_CLOSURE_PREFLIGHT_446 +COMMAND_ID=HOMELAB-VM-2CLOUD-DRAIN-CLOSURE-PREFLIGHT-446 +- Symptom: homelab-chat-run-linked printed Usage and skipped result-feed publication as invalid input. +- Root cause: the diagnostic script was piped to wrapper stdin and the mandatory double-dash command separator was omitted. +- Correction: invoke homelab-chat-run-linked as COMMAND_ID MODE COMPONENT -- command arguments; stdin is not its command interface. +ANTI_REGRESSION_TOKEN=HOMELAB_CHAT_RUN_COMMAND_REQUIRES_DOUBLE_DASH +- Anti-regression: treat wrapper Usage as the authoritative CLI contract and syntax-check the complete launcher, not only its inner payload. +- Infrastructure action executed: none. +- Backup payload impact: none. +- Production impact: none. +- Status: CLOSED; UNRESOLVED_TAIL_COUNT=0. +- Registered at: [PRIVATE_IP]T11:20:32Z +OUTPUT_END +CHAT_OUTPUT_END diff --git a/runtime/latest.json b/runtime/latest.json index 3928e6d..356486d 100644 --- a/runtime/latest.json +++ b/runtime/latest.json @@ -1,38 +1 @@ -{ - "schema_version": 1, - "channel": "homelab-runtime", - "command_id": "HOMEPAGE-NEWFILYA-NPMPLUS-REFERENCE-TOPOLOGY-READ-ONLY-PLAN-REPAIR2-V25R2-20260804T165000Z", - "status": "FAIL", - "rc": 1, - "host": "pve01", - "mode": "verify", - "component": "homepage-newfilya-reference-topology-plan-repair2-v25r2", - "started_at_utc": "2026-08-04T17:00:09Z", - "finished_at_utc": "2026-08-04T17:00:13Z", - "reference_register_checked": true, - "reference_sha256": "5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e", - "error_register_checked": true, - "error_register_sha256": "24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83", - "command_sha256": "f9c556bbd096464321dc1cf42ffa95c6036e3fe7aaec6aad2b9202b72b280001", - "duplicate_failed_command_blocked": false, - "block_reason": null, - "execution_started": true, - "change_declared": false, - "result_contract_valid": true, - "result_contract_status": null, - "result_contract_error": null, - "command_rc": 1, - "changes_made": false, - "rollback_started": false, - "rollback_restored": null, - "mutation_outcome": "NO_MUTATION", - "sanitized": true, - "secrets_included": false, - "private_addresses_included": false, - "raw_evidence_retained_locally": true, - "raw_evidence_sha256": "2e8d0696ba79c9b1b473794bf64af00d6336fe996f5ebffb922b31ef4b895fec", - "sanitized_output_sha256": "2e8d0696ba79c9b1b473794bf64af00d6336fe996f5ebffb922b31ef4b895fec", - "output_truncated_in_json": false, - "full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt", - "output": "HOMELAB_RESULT_CONTRACT={\"changes_made\":false,\"command_id\":\"HOMEPAGE-NEWFILYA-NPMPLUS-REFERENCE-TOPOLOGY-READ-ONLY-PLAN-REPAIR2-V25R2-20260804T165000Z\",\"mutation_outcome\":\"NO_MUTATION\",\"rollback_restored\":null,\"rollback_started\":false,\"status\":\"FAIL\",\"version\":1}\n{\"PLAN_SHA256\":null,\"action\":null,\"blockers\":[\"POST_V24_V22_BASELINE_DRIFT\",\"WORKING_REFERENCE_PUBLIC_ANCHOR_INVALID\",\"WORKING_REFERENCE_TOPOLOGY_DIAGNOSTIC_INVALID\"],\"body_returned\":false,\"certificate_changed\":false,\"certificate_contents_returned\":false,\"changes_made\":false,\"cluster_changed\":false,\"command_id\":\"HOMEPAGE-NEWFILYA-NPMPLUS-REFERENCE-TOPOLOGY-READ-ONLY-PLAN-REPAIR2-V25R2-20260804T165000Z\",\"container_restarted\":false,\"control_plane_error\":null,\"desired_state_changed\":false,\"diagnosis\":\"NEWFILYA_REFERENCE_TOPOLOGY_FIX4_PLAN_BLOCKED\",\"dns_changed\":false,\"duration_ms\":3793,\"edge\":{\"body_returned\":false,\"candidate\":{\"asset_bytes\":712859,\"asset_filename\":\"newfilya-ilyusha-7f8d6c40d5f8f740.jpg\",\"asset_original_bytes_preserved\":true,\"asset_sha256\":\"7f8d6c40d5f8f740f2d719fe739c456cf832cb67ed1b15161b616b8632caf367\",\"asset_url_path\":\"/ilyusha.jpg\",\"body_bytes\":2575,\"body_sha256\":\"02c89362aac89175e6ff2c18cf3265536417e8ac8f03f6174e25759ecfea8b1d\",\"cache_policy\":\"NO_STORE\",\"candidate_bytes\":4032,\"candidate_filename\":\"992.conf\",\"candidate_numeric_id\":992,\"candidate_selection_strategy\":\"HIGHEST_FREE_NUMERIC_ID_900_999_V1\",\"candidate_sha256\":\"8418733d658a9fd2517214d8ee1a3ad933e5cea95664bdf4dc605e7b5598a830\",\"checks\":{\"body_utf8\":true,\"bounded_config\":true,\"cache_disabled\":true,\"certificate_path_exact\":true,\"explicit_http_redirect_exact\":true,\"fixed_candidate_byte_lock_exact\":true,\"http_listener_exact\":true,\"https_listener_exact\":true,\"image_alias_exact\":true,\"image_content_type_exact\":true,\"image_csp_exact\":true,\"local_image_exact\":true,\"no_external_assets\":true,\"no_proxy_pass\":true,\"no_upstream_block\":true,\"persistent_acme_exact\":true,\"private_key_path_exact\":true,\"robots_disabled\":true,\"safe_acme_override_exact\":true,\"server_include_directive_count_zero\":true,\"split_http_tls_server_blocks_exact\":true,\"static_return_exact\":true,\"two_exact_server_names\":true,\"v21_incompatible_server_includes_omitted\":true},\"content_returned\":false,\"external_assets\":false,\"future_origin\":\"CLUSTER_SITE\",\"http_redirect_status\":301,\"http_redirect_strategy\":\"DEDICATED_HTTP_SERVER_EXCEPT_ACME\",\"local_asset_count\":1,\"omitted_incompatible_server_include_count\":4,\"private_addresses_returned\":false,\"ready\":true,\"robots_policy\":\"NOINDEX_NOFOLLOW\",\"server_include_directive_count\":0,\"strategy\":\"NPMPLUS_SPLIT_HTTP_REDIRECT_TLS_STATIC_NO_SERVER_INCLUDES_V2\",\"temporary\":true,\"title\":\"Здесь будет сайт ньюфаундленда Илюши\"},\"certbot\":{\"account_content_read\":false,\"account_count\":2,\"account_path_set_sha256\":\"27b94e58c9c61e1300cfe7d73f5061f93b31c7966a8e8f101f2fd68c7fcff31e\",\"candidate_paths\":{\"archive\":{\"exists\":false,\"kind\":null},\"live\":{\"exists\":false,\"kind\":null},\"renewal\":{\"exists\":false,\"kind\":null}},\"candidate_paths_absent\":true,\"cert_name\":\"newfilya.ru\",\"cert_name_sha256\":\"94223ea418f001f0469109dcb52fd88c8d6b90aeacc610bb0cc17a6ce3b9b868\",\"certbot_config_metadata_exact\":true,\"certbot_config_rc\":0,\"certbot_config_stat_sha256\":\"ac465eeb18a1b03028ed66ef0589dc6b5bdf2a432efe01445044987a3b7ff08d\",\"legacy_webroot_rc\":1,\"legacy_webroot_stderr_sha256\":\"cc274d2263556e58eb68b37dd0bf350896eebc810eedb715c83eb33c6c10565e\",\"legacy_webroot_stdout_sha256\":\"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\",\"persistent_webroot_metadata_exact\":true,\"persistent_webroot_rc\":0,\"persistent_webroot_stat_sha256\":\"7dc3f096f6dd4f071a221da871e2f62ea96230e5c9b876b2b7202a754390641b\",\"private_addresses_returned\":false,\"private_keys_read\":false,\"root\":{\"bytes\":4096,\"exists\":true,\"gid\":0,\"kind\":\"directory\",\"mode\":\"0700\",\"uid\":0},\"secret_files_read\":false,\"selected_webroot\":\"/data/tls/certbot/acme-challenge\",\"selected_webroot_sha256\":\"30d7909b816648baae928075d5896e0f899e97c81b6af645d41645df2cd87ec7\",\"strategy\":\"CERTBOT_WEBROOT_HTTP_01_PERSISTENT\"},\"certbot_available\":true,\"certbot_version_output_sha256\":\"8c31103b5cdff55122dcf38b8be5468538b6a9eb292acf0e10b9175643c24fcc\",\"certificate_contents_returned\":false,\"checks\":{\"asset_path_absent\":true,\"candidate_path_absent\":true,\"candidate_selection_proven\":true,\"certbot_account_present\":true,\"certbot_available\":true,\"certbot_config_metadata_exact\":true,\"certbot_root_exact\":true,\"certificate_paths_absent\":true,\"default_acme_route_present\":true,\"docker_server_available\":true,\"effective_acme_route_present\":true,\"effective_domain_absent\":true,\"fixed_no_includes_candidate_memfd_compatible\":true,\"hostname_exact\":true,\"nginx_config_valid\":true,\"npmplus_not_restarting\":true,\"npmplus_running\":true,\"persistent_webroot_metadata_exact\":true,\"persistent_webroot_selected\":true,\"privacy_contract\":true,\"proxy_domain_absent\":true,\"proxy_root_exact\":true,\"static_candidate_ready\":true},\"command_audit_count\":8,\"command_audit_output_returned\":false,\"command_audit_record_set_sha256\":\"6046031dfed13d5d73381a4c84fe804e4254d77924a880b73be65ee6b89bb5b7\",\"command_audit_stage_set_sha256\":\"47de86374eff55636cecf9aacc24ad1d5e140f2483c660e8907ffb7cbe3f64cf\",\"diagnosis\":\"NEWFILYA_WORKING_REFERENCE_TOPOLOGY_PLAN_EDGE_EXCEPTION\",\"docker_server_version_sha256\":\"ff21e5cfb54b956ea1c5129ae06b4ff0c36f6ef6bf8f942ed2eb20754cdc3032\",\"effective_nginx\":{\"combined_bytes\":117434,\"combined_sha256\":\"65a2bc2c284ecc78b0d8d08b222d0cdab377c34305e87ceee367a26316829403\",\"content_returned\":false,\"default_persistent_acme_route_count\":1,\"default_persistent_acme_route_present\":true,\"domain_server_block_count\":0,\"domain_server_block_set_sha256\":\"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b\",\"persistent_acme_http_route_count\":46,\"persistent_acme_http_route_present\":true,\"persistent_acme_http_route_set_sha256\":\"bfa9b1b855ef8455d74b14d7b2a4835965bbcc3bdfdb29b7d3919fd9b1e24b1f\",\"private_addresses_returned\":false,\"server_block_count\":75},\"failed_checks\":[\"REFERENCE_LISTEN_PORT_NOT_ALLOWLISTED\"],\"failure_evidence\":{\"errno\":null,\"message_bytes\":48,\"message_sha256\":\"83d3212135962403e406b4441b502b9d75d27c012c908571c07f3dab6771809e\",\"type\":\"ValueError\"},\"fixed_candidate_validation\":{\"anonymous_memfd_requested\":true,\"baseline_effective_bytes\":117434,\"baseline_effective_sha256\":\"65a2bc2c284ecc78b0d8d08b222d0cdab377c34305e87ceee367a26316829403\",\"binary_path_returned\":false,\"candidate_config_bytes\":4032,\"candidate_config_sha256\":\"8418733d658a9fd2517214d8ee1a3ad933e5cea95664bdf4dc605e7b5598a830\",\"candidate_server_include_directive_count\":0,\"certificate_issued\":false,\"certificate_paths_returned\":false,\"classified\":true,\"command_output_returned\":false,\"compatible\":true,\"container_environment_preserved\":true,\"container_environment_values_returned\":false,\"container_path_read\":true,\"container_restarted\":false,\"executed\":true,\"filesystem_write_attempted\":false,\"helper_source_bytes\":1367,\"helper_source_returned\":false,\"helper_source_sha256\":\"995c07b58f9b6574f3d111a5b43bb7691f2b4320baa17080dd963a5067436bc9\",\"input_transport\":\"ANONYMOUS_MEMFD_PROC_SELF_FD_RESOLVED_EXEC\",\"known_good_tls_pair_count\":22,\"known_good_tls_pair_paths_returned\":false,\"known_good_tls_pair_set_sha256\":\"031019c038f4872bbdb77c4060a481abc4c1dca2e0219c2a6d5097fbb98110c6\",\"matrix\":\"NPMPLUS_NGINX_FIXED_NO_SERVER_INCLUDES_MEMFD_V1\",\"nginx_binary_resolution_strategy\":\"CONTAINER_ENV_PATH_WITH_ABSOLUTE_FALLBACKS_V1\",\"nginx_reloaded\":false,\"omitted_incompatible_server_include_count\":4,\"persistent_path_created\":false,\"private_addresses_returned\":false,\"private_key_contents_read_by_probe\":false,\"private_key_contents_returned\":false,\"raw_nginx_config_returned\":false,\"rows\":[{\"anonymous_memfd_requested\":true,\"argv_count\":9,\"binary_path_returned\":false,\"config_bytes\":3975,\"config_sha256\":\"70a757da51bbd99650d31fa587f69c01edb49e183f306800966f15f48e147300\",\"container_environment_preserved\":true,\"container_path_read\":true,\"duration_ms\":150,\"error_class\":\"OK\",\"helper_reached_nginx\":true,\"input_transport\":\"ANONYMOUS_MEMFD_PROC_SELF_FD_RESOLVED_EXEC\",\"nginx_binary_resolution_strategy\":\"CONTAINER_ENV_PATH_WITH_ABSOLUTE_FALLBACKS_V1\",\"output_returned\":false,\"output_within_limit\":true,\"persistent_path_created\":false,\"rc\":0,\"stderr_bytes\":120,\"stderr_normalized\":{\"bytes\":101,\"sha256\":\"6d20bc332f9400aad8ee2d5834da7e4e5b557ec6b991ec0071d76d0e05157bb4\"},\"stderr_sha256\":\"90f2f448453468f5025b2cb1cf05850385447404a52c733d83252e6d6b855419\",\"stdout_bytes\":0,\"stdout_sha256\":\"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\",\"tool\":\"docker-exec-python-resolved-memfd-nginx\",\"variant\":\"FIXED_FULL_HTTP_NO_INCLUDES\"},{\"anonymous_memfd_requested\":true,\"argv_count\":9,\"binary_path_returned\":false,\"config_bytes\":4110,\"config_sha256\":\"aa2c0b38a4a4f073001a22cd968add61c22a63d339fa34e9beae8ae1a5896fbf\",\"container_environment_preserved\":true,\"container_path_read\":true,\"duration_ms\":152,\"error_class\":\"OK\",\"helper_reached_nginx\":true,\"input_transport\":\"ANONYMOUS_MEMFD_PROC_SELF_FD_RESOLVED_EXEC\",\"nginx_binary_resolution_strategy\":\"CONTAINER_ENV_PATH_WITH_ABSOLUTE_FALLBACKS_V1\",\"output_returned\":false,\"output_within_limit\":true,\"persistent_path_created\":false,\"rc\":0,\"stderr_bytes\":120,\"stderr_normalized\":{\"bytes\":101,\"sha256\":\"6d20bc332f9400aad8ee2d5834da7e4e5b557ec6b991ec0071d76d0e05157bb4\"},\"stderr_sha256\":\"90f2f448453468f5025b2cb1cf05850385447404a52c733d83252e6d6b855419\",\"stdout_bytes\":0,\"stdout_sha256\":\"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\",\"tool\":\"docker-exec-python-resolved-memfd-nginx\",\"variant\":\"FIXED_FULL_TLS_KNOWN_GOOD_NO_INCLUDES\"}],\"schema\":1,\"variant_count\":2,\"variant_set_sha256\":\"273a5ded61c59e513cf56fdeeb33a547ed5c48ed9b078265c307a457b462236a\"},\"hostname_exact\":true,\"nginx_test\":{\"rc\":0,\"stderr_bytes\":154,\"stderr_sha256\":\"9cb221b6993277a11765b15bdded4e9b090f1c2a8f5ed573e907ae3b6921f27c\",\"stdout_bytes\":0,\"stdout_sha256\":\"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\"},\"npmplus\":{\"container_env_read\":false,\"container_id_sha256\":\"493576b742fc30ff359bab4661f9f1aedde0bdb840b9bf61012388d9559ad296\",\"full_config_read\":false,\"image_sha256\":\"d16df105013397a10fa5200e967d82c9e9144b1e81737fe30f91165f65a35402\",\"private_addresses_returned\":false,\"restart_count\":0,\"restarting\":false,\"running\":true,\"started_at_sha256\":\"2e3db5e8a35be23cae35c3ad39b177cb0750fe38dbbcec8902f77352a56b8ba0\"},\"ok\":false,\"private_addresses_included\":false,\"private_keys_read\":false,\"proxy\":{\"asset_filename\":\"newfilya-ilyusha-7f8d6c40d5f8f740.jpg\",\"asset_path_absent\":true,\"asset_path_state\":{\"exists\":false,\"kind\":null},\"candidate_filename\":\"992.conf\",\"candidate_id_max\":999,\"candidate_id_min\":900,\"candidate_numeric_id\":992,\"candidate_path_absent\":true,\"candidate_path_state\":{\"exists\":false,\"kind\":null},\"candidate_pool_available_count\":93,\"candidate_pool_occupied_count\":7,\"candidate_pool_occupied_set_sha256\":\"75db8c3916c241dc890934dd14337d5657142d74d79371dab3347f8c27ec0ca3\",\"candidate_pool_size\":100,\"candidate_selection_proven\":true,\"candidate_selection_strategy\":\"HIGHEST_FREE_NUMERIC_ID_900_999_V1\",\"content_returned\":false,\"domain_match_count\":0,\"domain_matches\":[],\"file_count\":56,\"numeric_id_count\":56,\"numeric_id_set_sha256\":\"f1516b8818f73594beb1ca511bfe6dca42d98ad98aa9d42238c711e82edf9833\",\"private_addresses_returned\":false,\"root\":{\"bytes\":4096,\"exists\":true,\"gid\":0,\"kind\":\"directory\",\"mode\":\"0755\",\"uid\":0},\"tree_sha256\":\"801f76eb3c58d198a4ced9fe43248e7c7bb815343e242a17c9006c6d26c18b28\"},\"reference_topology_diagnostic\":null,\"secret_files_read\":false,\"secrets_included\":false,\"source_contents_returned\":false,\"status\":\"FAIL\",\"write_attempted\":false},\"gate\":\"BLOCKED\",\"gitea_changed\":false,\"homepage\":{\"backup_bytes\":12005,\"backup_mode\":\"0o600\",\"backup_sha256\":\"6468974ef09b3d9899bae5df4d8a7fa711d6cf16edda00b116747192277dcb2c\",\"card_count\":65,\"contains_private_dispatch_material\":false,\"failed_checks\":[],\"group_count\":7,\"hbarhub_card_exact\":true,\"homepage_api_sha256\":\"a1ece968406ec5ce5ba02197d5270d1e3ce34da451a69cc3cc5f38b6081ada0d\",\"homepage_api_target_href_counts\":{\"hbarhub.ru\":1,\"newfilya.ru\":1},\"homepage_image_id_sha256\":\"242e6332e372aaffcf7c821cff66dcbc12c42b2cd4ae282db9533b640892ac79\",\"homepage_image_reference_sha256\":\"b0c046cffbc1a48af0e6b240575c63b6f405debba0b2c50fa190616b5ea62808\",\"homepage_mount_exact\":true,\"homepage_restart_count\":0,\"newfilya_card_exact\":true,\"newfilya_monitor_enabled\":false,\"ok\":true,\"secret_file_read\":false,\"secrets_included\":false,\"services_bytes\":12308,\"services_sha256\":\"0b7360dc34b9bd3e25073eae449f3c0c5a6609f7eb9f4bb2feca72b6e04fc928\",\"services_structure_sha256\":\"eff9a7e610218ffdd092d704d2fcfad357db5d3b75ee0cc584c606ae4ee61f82\",\"source_contents_returned\":false,\"status\":\"OK\",\"target_href_counts\":{\"hbarhub.ru\":1,\"newfilya.ru\":1}},\"homepage_changed\":false,\"mutation_outcome\":\"NO_MUTATION\",\"next_stage\":\"NEWFILYA_REFERENCE_TOPOLOGY_READ_ONLY_PLAN_RETRY\",\"npmplus_reloaded\":false,\"operator_decision\":{\"external_assets\":false,\"future_target\":\"cluster_site\",\"local_photo_sha256\":\"7f8d6c40d5f8f740f2d719fe739c456cf832cb67ed1b15161b616b8632caf367\",\"local_photo_supplied\":true,\"monitor_enable_deferred\":true,\"origin_type\":\"new_static_landing\",\"presentation\":\"neutral_launch_placeholder\",\"site_subject\":\"newfoundland_ilyusha\",\"temporary\":true},\"parent_v15r_evidence\":{\"PLAN_SHA256\":null,\"capsule_bytes\":96265,\"capsule_sha256\":\"d24cc4066fce46b17aa22b020a86f67d09d3dfc5725707ad93c274e6ef39dd46\",\"card_count\":65,\"changes_made\":false,\"command_id\":\"HOMEPAGE-NEWFILYA-UPSTREAM-READ-ONLY-DISCOVERY-FIX2-V15R-20260804T114500Z\",\"command_sha256\":\"61c4cf57bd2ac4bb370800ee31f7bac68cefb1abea2c6b430d4b2aa0d00b9b42\",\"core_remote_stdout_sha256\":\"8eee46305b129ee0d912f6b432810b58391df09a4d02cb76ce5fdf93336a951f\",\"database_exact_domain_match_count\":0,\"diagnosis\":\"NEWFILYA_ORIGIN_NOT_FOUND_IN_HOMELAB\",\"docker_strong_candidate_count\":0,\"edge_remote_stdout_sha256\":\"a9a7f3da75c19646198c64354ee0977635387762bd04a33265b039e0b88f5614\",\"gate\":\"OPERATOR_INPUT_REQUIRED\",\"group_count\":7,\"homepage_restart_count\":0,\"mutation_outcome\":\"NO_MUTATION\",\"newfilya_monitor_enabled\":false,\"operator_input_required\":true,\"output_sha256\":\"dbb4841cf66094610efdb23ef11c213faba6cb724249d044c2ef46198b6f5757\",\"public_leaf_certificate_sha256\":\"c14d6f3eda27dcd7e8c8a44c18844f8009b4f23a74ab82d49475f138ddef0b93\",\"rc\":0,\"rollback_restored\":null,\"rollback_started\":false,\"services_bytes\":12308,\"services_sha256\":\"0b7360dc34b9bd3e25073eae449f3c0c5a6609f7eb9f4bb2feca72b6e04fc928\",\"services_structure_sha256\":\"eff9a7e610218ffdd092d704d2fcfad357db5d3b75ee0cc584c606ae4ee61f82\",\"stacks_strong_candidate_count\":0,\"status\":\"OK\"},\"parent_v16_evidence\":{\"PLAN_SHA256\":null,\"blockers\":[\"EDGE_STATIC_PLACEHOLDER_PREFLIGHT_INCOMPLETE\",\"NEWFILYA_STATIC_CONFIG_PATH_NOT_FREE\"],\"candidate_filename\":\"998.conf\",\"candidate_path_bytes\":867,\"candidate_path_exists\":true,\"candidate_path_gid\":0,\"candidate_path_kind\":\"regular\",\"candidate_path_mode\":\"0644\",\"candidate_path_uid\":0,\"capsule_bytes\":95066,\"capsule_sha256\":\"1370453ba42fbc997021981a52c5445c5843c4a027c2357784f9e90b47342b97\",\"card_count\":65,\"certificate_paths_absent\":true,\"changes_made\":false,\"command_id\":\"HOMEPAGE-NEWFILYA-STATIC-PLACEHOLDER-TLS-READ-ONLY-PLAN-V16-20260804T120500Z\",\"command_sha256\":\"dffeed8860eb0b5a4545b991d10cf28ba2cae513675449623e2d05cb3e7e01ae\",\"core_remote_stdout_sha256\":\"4430d15bad3cc3286b28390d7d7ed7b22d0eb9f6a3af24491c6031c638dff5ba\",\"diagnosis\":\"NEWFILYA_STATIC_PLACEHOLDER_TLS_PLAN_BLOCKED\",\"document_rc\":1,\"document_status\":\"FAIL\",\"edge_remote_stdout_sha256\":\"c8cd2bb3cf6f2abf4a46b28b20ce2fc9213c7dd336721bc09cea64983c38a756\",\"gate\":\"BLOCKED\",\"group_count\":7,\"homepage_restart_count\":0,\"mutation_outcome\":\"NO_MUTATION\",\"newfilya_monitor_enabled\":false,\"next_stage\":\"NEWFILYA_STATIC_PLACEHOLDER_PLAN_FIX\",\"npmplus_restart_count\":0,\"output_sha256\":\"7b9c0a671d4c7bb02268dec1a019d0f90d37c4a287f76c20a730c0cc6810d92c\",\"proxy_domain_match_count\":0,\"public_leaf_certificate_sha256\":\"c14d6f3eda27dcd7e8c8a44c18844f8009b4f23a74ab82d49475f138ddef0b93\",\"ready_for_apply\":false,\"rollback_restored\":null,\"rollback_started\":false,\"runner_rc\":1,\"runner_status\":\"FAIL\",\"runtime_commit\":\"b86e6564664ebcdedea16e686f5fc3fe80cf2496\",\"services_bytes\":12308,\"services_sha256\":\"0b7360dc34b9bd3e25073eae449f3c0c5a6609f7eb9f4bb2feca72b6e04fc928\",\"services_structure_sha256\":\"eff9a7e610218ffdd092d704d2fcfad357db5d3b75ee0cc584c606ae4ee61f82\"},\"parent_v24_evidence\":{\"PLAN_SHA256\":\"b73f20b4c0b30724242abec126c06e98c3d02570d0b458f5b4995a8b4080abb5\",\"apply_diagnosis\":\"NEWFILYA_STATIC_PLACEHOLDER_TLS_EDGE_APPLIED\",\"apply_failed_checks\":[],\"apply_gate\":\"EDGE_APPLIED_AWAITING_PUBLIC_VERIFICATION\",\"apply_npmplus_reloaded\":true,\"apply_rc\":0,\"apply_status\":\"OK\",\"capsule_bytes\":1099647,\"capsule_sha256\":\"6e5f4c2a6ca59389b9bbb76390f38ad565e34cdacb4785662949f3dbfbacd733\",\"changes_made\":true,\"command_id\":\"HOMEPAGE-NEWFILYA-STATIC-PLACEHOLDER-TLS-ATOMIC-APPLY-FIX3-V24-20260804T154500Z\",\"command_sha256\":\"f4b75d029345c78ec94f56211a115451cbf23a992b63baa968c35c0c5ecce0bc\",\"created_asset_bytes\":712859,\"created_asset_sha256\":\"7f8d6c40d5f8f740f2d719fe739c456cf832cb67ed1b15161b616b8632caf367\",\"created_config_bytes\":4032,\"created_config_sha256\":\"8418733d658a9fd2517214d8ee1a3ad933e5cea95664bdf4dc605e7b5598a830\",\"diagnosis\":\"PUBLIC_STATIC_PLACEHOLDER_TLS_POSTCONDITIONS_FAILED\",\"document_rc\":1,\"document_status\":\"FAIL\",\"duplicate_failed_command_blocked\":false,\"effective_domain_server_count\":2,\"execution_started\":true,\"gate\":\"RETURNED_TO_V22_BASELINE\",\"issued_leaf_certificate_sha256\":\"c26ab805f5714721f671460a40338c6001d80b5dc03b64aaecd1eb0386e32e5c\",\"mutation_outcome\":\"ROLLED_BACK\",\"next_stage\":\"NEWFILYA_STATIC_PLACEHOLDER_TLS_APPLY_FIX3_RETRY\",\"output_bytes\":126815,\"output_sha256\":\"09dbf39d6bba8ae133238b92463fa9386303efcaf4d8e99a0673b76250eac818\",\"public_attempt_count\":6,\"public_dns_exact\":true,\"public_failed_checks\":[\"image_body_exact\",\"image_headers_exact\",\"root_body_exact\",\"root_headers_exact\",\"root_not_default_or_bad_gateway\",\"trusted_tls_root\"],\"public_http_redirect_exact\":true,\"public_trusted_tls\":false,\"result_contract_valid\":true,\"rollback_action\":\"ROLLBACK_NEWFILYA_STATIC_PLACEHOLDER_TLS_FIX3\",\"rollback_edge_ok\":true,\"rollback_homepage_card_count\":65,\"rollback_homepage_ok\":true,\"rollback_homepage_restart_count\":0,\"rollback_homepage_services_sha256\":\"0b7360dc34b9bd3e25073eae449f3c0c5a6609f7eb9f4bb2feca72b6e04fc928\",\"rollback_public_body_sha256\":\"808dfeea0cf787d85e03645e62ab18b97ab8138924420966413edcfe22ef4879\",\"rollback_public_leaf_sha256\":\"c14d6f3eda27dcd7e8c8a44c18844f8009b4f23a74ab82d49475f138ddef0b93\",\"rollback_restored\":true,\"rollback_started\":true,\"runner_rc\":1,\"runner_status\":\"FAIL\",\"runtime_commit\":\"0ef2079353a4cab6be1975c6896f487ae545353b\"},\"parent_v25r_evidence\":{\"capsule_bytes\":125746,\"capsule_sha256\":\"c6586e0882a868d78fcc94a5cf6d1a29c5fbb2706312562f31c86a10d9e29fc4\",\"certificate_changed\":false,\"changes_made\":false,\"cluster_changed\":false,\"command_id\":\"HOMEPAGE-NEWFILYA-NPMPLUS-REFERENCE-TOPOLOGY-READ-ONLY-PLAN-REPAIR-V25R-20260804T164000Z\",\"command_sha256\":\"1106a8a682d8d351df0e9afd5dad1259835fce4cf67b6dd8c458a60474f84659\",\"container_restarted\":false,\"control_plane_error\":\"NAME_PUBLIC_TARGETS_IS_NOT_DEFINED\",\"diagnosis\":\"CONTROL_PLANE_EXCEPTION\",\"dns_changed\":false,\"document_rc\":1,\"document_status\":\"FAIL\",\"duplicate_failed_command_blocked\":false,\"execution_started\":true,\"failure_message_bytes\":46,\"failure_message_sha256\":\"370d239e3aa3011f68394ed8575dd5b97bb2d795fb1b1a0b6f39a77f9a7f0c60\",\"failure_type\":\"NameError\",\"gate\":\"BLOCKED\",\"gitea_changed\":false,\"homepage_changed\":false,\"mutation_outcome\":\"NO_MUTATION\",\"next_stage\":\"NEWFILYA_STATIC_PLACEHOLDER_PLAN_FIX\",\"npmplus_reloaded\":false,\"output_bytes\":4931,\"output_sha256\":\"8f1fbdbed87030866e6e04938281c4fdfd0e8bf0eb010457a24ac73139f716a7\",\"production_site_changed\":false,\"public_proxy_changed\":false,\"read_only\":true,\"result_contract_valid\":true,\"rollback_restored\":null,\"rollback_started\":false,\"runner_rc\":1,\"runner_status\":\"FAIL\",\"runtime_commit\":\"4be821fc8a22398124d4a4b89f491ec11bd04824\"},\"plan\":null,\"private_addresses_included\":false,\"private_keys_read\":false,\"production_site_changed\":false,\"public\":{\"acme_http\":{\"completed\":true,\"final_hop\":{\"body_bytes\":124,\"body_sha256\":\"8cdc5c9588e8cc315d89a7c73f1bea4d41f8d68ae165756df0ec4a7db6a49892\",\"certificate_validation_disabled\":true,\"completed\":true,\"header_values_returned\":false,\"location_present\":false,\"status\":404},\"first_hop\":{\"body_bytes\":140,\"body_sha256\":\"367cbd2bd4bb3ccdbff9b81ad94e4c1d9c66ee80e9df3ffcd7080f2000cbac6a\",\"completed\":true,\"header_values_returned\":false,\"location_matches_expected_https\":true,\"location_present\":true,\"status\":301},\"header_values_returned\":false,\"path_sha256\":\"e607916d673bf51a6f3308ddd6069ae2da45daaec36dd78c419a41250a81f1af\",\"redirect_count\":1,\"route_model\":\"HTTP_TO_HTTPS_404\",\"route_proven\":true},\"addresses_returned\":false,\"anchor_dns\":{\"address_set_sha256\":\"c76b6b888b15b83623f3fc36fe6617dc24550f6b09b0d8f73c92ea22016e3a13\",\"addresses_returned\":false,\"public_target_count\":1,\"record_count\":1,\"resolved\":true},\"body_returned\":false,\"certificate_contents_returned\":false,\"dns\":{\"address_set_sha256\":\"c76b6b888b15b83623f3fc36fe6617dc24550f6b09b0d8f73c92ea22016e3a13\",\"addresses_returned\":false,\"families\":[\"IPv4\"],\"public_target_count\":1,\"record_count\":1,\"rejected_non_public_count\":0,\"resolved\":true},\"dns_matches_hbarhub_anchor\":true,\"http\":{\"bad_gateway\":false,\"body_bytes\":140,\"body_sha256\":\"367cbd2bd4bb3ccdbff9b81ad94e4c1d9c66ee80e9df3ffcd7080f2000cbac6a\",\"completed\":true,\"connection_mode\":\"PINNED_GLOBAL_TARGET\",\"header_values_returned\":false,\"npmplus_default\":false,\"redirects_to_expected_https\":true,\"status\":301},\"https_unverified\":{\"bad_gateway\":false,\"body_bytes\":2056,\"body_returned\":false,\"body_sha256\":\"808dfeea0cf787d85e03645e62ab18b97ab8138924420966413edcfe22ef4879\",\"certificate_validation_disabled\":true,\"completed\":true,\"connection_mode\":\"PINNED_GLOBAL_TARGET_WITH_SNI\",\"leaf_certificate_sha256\":\"c14d6f3eda27dcd7e8c8a44c18844f8009b4f23a74ab82d49475f138ddef0b93\",\"npmplus_default\":true,\"status\":200},\"tcp_443\":{\"addresses_returned\":false,\"attempt_count\":1,\"error_types\":{},\"reachable\":true,\"success_count\":1},\"tls_443\":{\"addresses_returned\":false,\"attempt_count\":1,\"certificate_contents_returned\":false,\"unverified\":{\"certificate_contents_returned\":false,\"certificate_validation_disabled\":true,\"completed\":true,\"error_types\":{},\"leaf_certificate_count\":1,\"leaf_certificate_sha256\":\"c14d6f3eda27dcd7e8c8a44c18844f8009b4f23a74ab82d49475f138ddef0b93\",\"leaf_set_sha256\":\"620f5c3147455134d92b987f4f0c17c97663931b52966c15d089b43e1e452c1b\",\"protocols\":[\"TLSv1.3\"],\"success_count\":1},\"verified\":false,\"verified_leaf_certificate_sha256\":null,\"verified_protocol\":null,\"verified_success_count\":0,\"verify_codes\":{\"18\":1}}},\"public_proxy_changed\":false,\"rc\":1,\"read_only\":true,\"ready_for_apply\":false,\"reference_public_anchor\":{\"addresses_returned\":false,\"body_bytes\":65,\"body_returned\":false,\"body_sha256\":\"0a16d6323a495f863eb73fecfd33846560d57b7073572824175542db46e17db0\",\"certificate_contents_returned\":false,\"completed\":true,\"dns\":{\"address_set_sha256\":\"c76b6b888b15b83623f3fc36fe6617dc24550f6b09b0d8f73c92ea22016e3a13\",\"addresses_returned\":false,\"families\":[\"IPv4\"],\"public_target_count\":1,\"record_count\":1,\"rejected_non_public_count\":0,\"resolved\":true},\"domain\":\"hbarhub.ru\",\"duration_ms\":60,\"leaf_certificate_sha256\":\"7ffd7ade91ca4fd213bd0b9fd5f04540f334fe4eab42cb81d883c20697e2160d\",\"protocol\":\"TLSv1.3\",\"schema\":1,\"status\":200,\"verified\":true},\"rollback_restored\":null,\"rollback_started\":false,\"sanitized\":true,\"schema\":1,\"secret_files_read\":false,\"secrets_included\":false,\"source_contents_returned\":false,\"status\":\"FAIL\",\"transport\":{\"core\":{\"config_view\":\"service-view\",\"mode\":\"DIRECT_QGA\",\"private_addresses_returned\":false,\"qga_step_count\":6,\"qga_step_set_sha256\":\"98f8cfe229e78f3139e17bb65609d825cca250b2ce603470c710f25518ccad45\",\"remote_rc\":0,\"remote_stdout_bytes\":2827,\"remote_stdout_sha256\":\"f4ed723992aeecada2ec5618784170e264cf1291e280ce7167eb87639b95e053\",\"socket_view\":\"service-view\",\"vm_name\":\"core-apps\",\"vmid\":170},\"edge\":{\"config_view\":\"service-view\",\"mode\":\"STRICT_SSH_TO_OWNING_NODE_THEN_DIRECT_QGA\",\"node\":\"pve03\",\"private_addresses_returned\":false,\"qga_step_count\":11,\"qga_step_set_sha256\":\"adfe1c0873097d7095bfc3f6ed048990ff9b25332e7fa67cd43c6ffa01c6f203\",\"remote_rc\":1,\"remote_stdout_bytes\":11187,\"remote_stdout_sha256\":\"754bb003b071fd489787c6bf1f0ce3d141641d0a5c0bb35129922fc3d0797018\",\"socket_view\":\"service-view\",\"ssh_rc\":0,\"vm_name\":\"edge-vm\",\"vmid\":130}}}\n" -} +{"schema_version":1,"channel":"homelab-runtime","command_id":"CONTEXT-AUTO-20260804T171701Z","status":"OK","rc":0,"host":"pve01","mode":"read-only","component":"cluster-context","started_at_utc":"2026-08-04T17:17:01Z","finished_at_utc":"2026-08-04T17:17:02Z","reference_register_checked":true,"reference_sha256":"5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e","error_register_checked":true,"error_register_sha256":"24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83","changes_made":false,"sanitized":true,"secrets_included":false,"private_addresses_included":false,"output":"AUTOMATIC_CLUSTER_CONTEXT_REFRESH=OK"} diff --git a/runtime/latest.txt b/runtime/latest.txt index fbf7a45..b4063ca 100644 --- a/runtime/latest.txt +++ b/runtime/latest.txt @@ -1,34 +1,164 @@ CHAT_OUTPUT_BEGIN -COMMAND_ID=HOMEPAGE-NEWFILYA-NPMPLUS-REFERENCE-TOPOLOGY-READ-ONLY-PLAN-REPAIR2-V25R2-20260804T165000Z -STATUS=FAIL -RC=1 +COMMAND_ID=CONTEXT-AUTO-[PRIVATE_IP]701Z +STATUS=OK +RC=0 HOST=pve01 -MODE=verify -COMPONENT=homepage-newfilya-reference-topology-plan-repair2-v25r2 -REFERENCE_REGISTER_CHECK=OK -REFERENCE_SHA256=5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e -ERROR_REGISTER_CHECK=OK -ERROR_REGISTER_SHA256=24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83 -COMMAND_SHA256=f9c556bbd096464321dc1cf42ffa95c6036e3fe7aaec6aad2b9202b72b280001 -DUPLICATE_FAILED_COMMAND_BLOCKED=false -EXECUTION_STARTED=true -CHANGE_DECLARED=false -RESULT_CONTRACT_VALID=true -RESULT_CONTRACT_STATUS=NOT_APPLICABLE -RESULT_CONTRACT_ERROR=NONE -COMMAND_RC=1 -CHANGES_MADE=false -ROLLBACK_STARTED=false -ROLLBACK_RESTORED=null -MUTATION_OUTCOME=NO_MUTATION -SANITIZED=yes -SECRETS_INCLUDED=no -PRIVATE_ADDRESSES_INCLUDED=no -RAW_EVIDENCE_SHA256=2e8d0696ba79c9b1b473794bf64af00d6336fe996f5ebffb922b31ef4b895fec -SANITIZED_OUTPUT_SHA256=2e8d0696ba79c9b1b473794bf64af00d6336fe996f5ebffb922b31ef4b895fec +COMPONENT=cluster-context +REFERENCE_SHA[PRIVATE_IP]f8edc75fcf[PRIVATE_IP]c[PRIVATE_IP]cc112ceccb6cf[PRIVATE_IP]a4deb8e +ERROR_REGISTER_SHA[PRIVATE_IP]c7fa[PRIVATE_IP]583c4aefac[PRIVATE_IP]1736ed[PRIVATE_IP]ab83 OUTPUT_BEGIN -HOMELAB_RESULT_CONTRACT={"changes_made":false,"command_id":"HOMEPAGE-NEWFILYA-NPMPLUS-REFERENCE-TOPOLOGY-READ-ONLY-PLAN-REPAIR2-V25R2-20260804T165000Z","mutation_outcome":"NO_MUTATION","rollback_restored":null,"rollback_started":false,"status":"FAIL","version":1} -{"PLAN_SHA256":null,"action":null,"blockers":["POST_V24_V22_BASELINE_DRIFT","WORKING_REFERENCE_PUBLIC_ANCHOR_INVALID","WORKING_REFERENCE_TOPOLOGY_DIAGNOSTIC_INVALID"],"body_returned":false,"certificate_changed":false,"certificate_contents_returned":false,"changes_made":false,"cluster_changed":false,"command_id":"HOMEPAGE-NEWFILYA-NPMPLUS-REFERENCE-TOPOLOGY-READ-ONLY-PLAN-REPAIR2-V25R2-20260804T165000Z","container_restarted":false,"control_plane_error":null,"desired_state_changed":false,"diagnosis":"NEWFILYA_REFERENCE_TOPOLOGY_FIX4_PLAN_BLOCKED","dns_changed":false,"duration_ms":3793,"edge":{"body_returned":false,"candidate":{"asset_bytes":712859,"asset_filename":"newfilya-ilyusha-7f8d6c40d5f8f740.jpg","asset_original_bytes_preserved":true,"asset_sha256":"7f8d6c40d5f8f740f2d719fe739c456cf832cb67ed1b15161b616b8632caf367","asset_url_path":"/ilyusha.jpg","body_bytes":2575,"body_sha256":"02c89362aac89175e6ff2c18cf3265536417e8ac8f03f6174e25759ecfea8b1d","cache_policy":"NO_STORE","candidate_bytes":4032,"candidate_filename":"992.conf","candidate_numeric_id":992,"candidate_selection_strategy":"HIGHEST_FREE_NUMERIC_ID_900_999_V1","candidate_sha256":"8418733d658a9fd2517214d8ee1a3ad933e5cea95664bdf4dc605e7b5598a830","checks":{"body_utf8":true,"bounded_config":true,"cache_disabled":true,"certificate_path_exact":true,"explicit_http_redirect_exact":true,"fixed_candidate_byte_lock_exact":true,"http_listener_exact":true,"https_listener_exact":true,"image_alias_exact":true,"image_content_type_exact":true,"image_csp_exact":true,"local_image_exact":true,"no_external_assets":true,"no_proxy_pass":true,"no_upstream_block":true,"persistent_acme_exact":true,"private_key_path_exact":true,"robots_disabled":true,"safe_acme_override_exact":true,"server_include_directive_count_zero":true,"split_http_tls_server_blocks_exact":true,"static_return_exact":true,"two_exact_server_names":true,"v21_incompatible_server_includes_omitted":true},"content_returned":false,"external_assets":false,"future_origin":"CLUSTER_SITE","http_redirect_status":301,"http_redirect_strategy":"DEDICATED_HTTP_SERVER_EXCEPT_ACME","local_asset_count":1,"omitted_incompatible_server_include_count":4,"private_addresses_returned":false,"ready":true,"robots_policy":"NOINDEX_NOFOLLOW","server_include_directive_count":0,"strategy":"NPMPLUS_SPLIT_HTTP_REDIRECT_TLS_STATIC_NO_SERVER_INCLUDES_V2","temporary":true,"title":"Здесь будет сайт ньюфаундленда Илюши"},"certbot":{"account_content_read":false,"account_count":2,"account_path_set_sha256":"27b94e58c9c61e1300cfe7d73f5061f93b31c7966a8e8f101f2fd68c7fcff31e","candidate_paths":{"archive":{"exists":false,"kind":null},"live":{"exists":false,"kind":null},"renewal":{"exists":false,"kind":null}},"candidate_paths_absent":true,"cert_name":"newfilya.ru","cert_name_sha256":"94223ea418f001f0469109dcb52fd88c8d6b90aeacc610bb0cc17a6ce3b9b868","certbot_config_metadata_exact":true,"certbot_config_rc":0,"certbot_config_stat_sha256":"ac465eeb18a1b03028ed66ef0589dc6b5bdf2a432efe01445044987a3b7ff08d","legacy_webroot_rc":1,"legacy_webroot_stderr_sha256":"cc274d2263556e58eb68b37dd0bf350896eebc810eedb715c83eb33c6c10565e","legacy_webroot_stdout_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","persistent_webroot_metadata_exact":true,"persistent_webroot_rc":0,"persistent_webroot_stat_sha256":"7dc3f096f6dd4f071a221da871e2f62ea96230e5c9b876b2b7202a754390641b","private_addresses_returned":false,"private_keys_read":false,"root":{"bytes":4096,"exists":true,"gid":0,"kind":"directory","mode":"0700","uid":0},"secret_files_read":false,"selected_webroot":"/data/tls/certbot/acme-challenge","selected_webroot_sha256":"30d7909b816648baae928075d5896e0f899e97c81b6af645d41645df2cd87ec7","strategy":"CERTBOT_WEBROOT_HTTP_01_PERSISTENT"},"certbot_available":true,"certbot_version_output_sha256":"8c31103b5cdff55122dcf38b8be5468538b6a9eb292acf0e10b9175643c24fcc","certificate_contents_returned":false,"checks":{"asset_path_absent":true,"candidate_path_absent":true,"candidate_selection_proven":true,"certbot_account_present":true,"certbot_available":true,"certbot_config_metadata_exact":true,"certbot_root_exact":true,"certificate_paths_absent":true,"default_acme_route_present":true,"docker_server_available":true,"effective_acme_route_present":true,"effective_domain_absent":true,"fixed_no_includes_candidate_memfd_compatible":true,"hostname_exact":true,"nginx_config_valid":true,"npmplus_not_restarting":true,"npmplus_running":true,"persistent_webroot_metadata_exact":true,"persistent_webroot_selected":true,"privacy_contract":true,"proxy_domain_absent":true,"proxy_root_exact":true,"static_candidate_ready":true},"command_audit_count":8,"command_audit_output_returned":false,"command_audit_record_set_sha256":"6046031dfed13d5d73381a4c84fe804e4254d77924a880b73be65ee6b89bb5b7","command_audit_stage_set_sha256":"47de86374eff55636cecf9aacc24ad1d5e140f2483c660e8907ffb7cbe3f64cf","diagnosis":"NEWFILYA_WORKING_REFERENCE_TOPOLOGY_PLAN_EDGE_EXCEPTION","docker_server_version_sha256":"ff21e5cfb54b956ea1c5129ae06b4ff0c36f6ef6bf8f942ed2eb20754cdc3032","effective_nginx":{"combined_bytes":117434,"combined_sha256":"65a2bc2c284ecc78b0d8d08b222d0cdab377c34305e87ceee367a26316829403","content_returned":false,"default_persistent_acme_route_count":1,"default_persistent_acme_route_present":true,"domain_server_block_count":0,"domain_server_block_set_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","persistent_acme_http_route_count":46,"persistent_acme_http_route_present":true,"persistent_acme_http_route_set_sha256":"bfa9b1b855ef8455d74b14d7b2a4835965bbcc3bdfdb29b7d3919fd9b1e24b1f","private_addresses_returned":false,"server_block_count":75},"failed_checks":["REFERENCE_LISTEN_PORT_NOT_ALLOWLISTED"],"failure_evidence":{"errno":null,"message_bytes":48,"message_sha256":"83d3212135962403e406b4441b502b9d75d27c012c908571c07f3dab6771809e","type":"ValueError"},"fixed_candidate_validation":{"anonymous_memfd_requested":true,"baseline_effective_bytes":117434,"baseline_effective_sha256":"65a2bc2c284ecc78b0d8d08b222d0cdab377c34305e87ceee367a26316829403","binary_path_returned":false,"candidate_config_bytes":4032,"candidate_config_sha256":"8418733d658a9fd2517214d8ee1a3ad933e5cea95664bdf4dc605e7b5598a830","candidate_server_include_directive_count":0,"certificate_issued":false,"certificate_paths_returned":false,"classified":true,"command_output_returned":false,"compatible":true,"container_environment_preserved":true,"container_environment_values_returned":false,"container_path_read":true,"container_restarted":false,"executed":true,"filesystem_write_attempted":false,"helper_source_bytes":1367,"helper_source_returned":false,"helper_source_sha256":"995c07b58f9b6574f3d111a5b43bb7691f2b4320baa17080dd963a5067436bc9","input_transport":"ANONYMOUS_MEMFD_PROC_SELF_FD_RESOLVED_EXEC","known_good_tls_pair_count":22,"known_good_tls_pair_paths_returned":false,"known_good_tls_pair_set_sha256":"031019c038f4872bbdb77c4060a481abc4c1dca2e0219c2a6d5097fbb98110c6","matrix":"NPMPLUS_NGINX_FIXED_NO_SERVER_INCLUDES_MEMFD_V1","nginx_binary_resolution_strategy":"CONTAINER_ENV_PATH_WITH_ABSOLUTE_FALLBACKS_V1","nginx_reloaded":false,"omitted_incompatible_server_include_count":4,"persistent_path_created":false,"private_addresses_returned":false,"private_key_contents_read_by_probe":false,"private_key_contents_returned":false,"raw_nginx_config_returned":false,"rows":[{"anonymous_memfd_requested":true,"argv_count":9,"binary_path_returned":false,"config_bytes":3975,"config_sha256":"70a757da51bbd99650d31fa587f69c01edb49e183f306800966f15f48e147300","container_environment_preserved":true,"container_path_read":true,"duration_ms":150,"error_class":"OK","helper_reached_nginx":true,"input_transport":"ANONYMOUS_MEMFD_PROC_SELF_FD_RESOLVED_EXEC","nginx_binary_resolution_strategy":"CONTAINER_ENV_PATH_WITH_ABSOLUTE_FALLBACKS_V1","output_returned":false,"output_within_limit":true,"persistent_path_created":false,"rc":0,"stderr_bytes":120,"stderr_normalized":{"bytes":101,"sha256":"6d20bc332f9400aad8ee2d5834da7e4e5b557ec6b991ec0071d76d0e05157bb4"},"stderr_sha256":"90f2f448453468f5025b2cb1cf05850385447404a52c733d83252e6d6b855419","stdout_bytes":0,"stdout_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","tool":"docker-exec-python-resolved-memfd-nginx","variant":"FIXED_FULL_HTTP_NO_INCLUDES"},{"anonymous_memfd_requested":true,"argv_count":9,"binary_path_returned":false,"config_bytes":4110,"config_sha256":"aa2c0b38a4a4f073001a22cd968add61c22a63d339fa34e9beae8ae1a5896fbf","container_environment_preserved":true,"container_path_read":true,"duration_ms":152,"error_class":"OK","helper_reached_nginx":true,"input_transport":"ANONYMOUS_MEMFD_PROC_SELF_FD_RESOLVED_EXEC","nginx_binary_resolution_strategy":"CONTAINER_ENV_PATH_WITH_ABSOLUTE_FALLBACKS_V1","output_returned":false,"output_within_limit":true,"persistent_path_created":false,"rc":0,"stderr_bytes":120,"stderr_normalized":{"bytes":101,"sha256":"6d20bc332f9400aad8ee2d5834da7e4e5b557ec6b991ec0071d76d0e05157bb4"},"stderr_sha256":"90f2f448453468f5025b2cb1cf05850385447404a52c733d83252e6d6b855419","stdout_bytes":0,"stdout_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","tool":"docker-exec-python-resolved-memfd-nginx","variant":"FIXED_FULL_TLS_KNOWN_GOOD_NO_INCLUDES"}],"schema":1,"variant_count":2,"variant_set_sha256":"273a5ded61c59e513cf56fdeeb33a547ed5c48ed9b078265c307a457b462236a"},"hostname_exact":true,"nginx_test":{"rc":0,"stderr_bytes":154,"stderr_sha256":"9cb221b6993277a11765b15bdded4e9b090f1c2a8f5ed573e907ae3b6921f27c","stdout_bytes":0,"stdout_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"npmplus":{"container_env_read":false,"container_id_sha256":"493576b742fc30ff359bab4661f9f1aedde0bdb840b9bf61012388d9559ad296","full_config_read":false,"image_sha256":"d16df105013397a10fa5200e967d82c9e9144b1e81737fe30f91165f65a35402","private_addresses_returned":false,"restart_count":0,"restarting":false,"running":true,"started_at_sha256":"2e3db5e8a35be23cae35c3ad39b177cb0750fe38dbbcec8902f77352a56b8ba0"},"ok":false,"private_addresses_included":false,"private_keys_read":false,"proxy":{"asset_filename":"newfilya-ilyusha-7f8d6c40d5f8f740.jpg","asset_path_absent":true,"asset_path_state":{"exists":false,"kind":null},"candidate_filename":"992.conf","candidate_id_max":999,"candidate_id_min":900,"candidate_numeric_id":992,"candidate_path_absent":true,"candidate_path_state":{"exists":false,"kind":null},"candidate_pool_available_count":93,"candidate_pool_occupied_count":7,"candidate_pool_occupied_set_sha256":"75db8c3916c241dc890934dd14337d5657142d74d79371dab3347f8c27ec0ca3","candidate_pool_size":100,"candidate_selection_proven":true,"candidate_selection_strategy":"HIGHEST_FREE_NUMERIC_ID_900_999_V1","content_returned":false,"domain_match_count":0,"domain_matches":[],"file_count":56,"numeric_id_count":56,"numeric_id_set_sha256":"f1516b8818f73594beb1ca511bfe6dca42d98ad98aa9d42238c711e82edf9833","private_addresses_returned":false,"root":{"bytes":4096,"exists":true,"gid":0,"kind":"directory","mode":"0755","uid":0},"tree_sha256":"801f76eb3c58d198a4ced9fe43248e7c7bb815343e242a17c9006c6d26c18b28"},"reference_topology_diagnostic":null,"secret_files_read":false,"secrets_included":false,"source_contents_returned":false,"status":"FAIL","write_attempted":false},"gate":"BLOCKED","gitea_changed":false,"homepage":{"backup_bytes":12005,"backup_mode":"0o600","backup_sha256":"6468974ef09b3d9899bae5df4d8a7fa711d6cf16edda00b116747192277dcb2c","card_count":65,"contains_private_dispatch_material":false,"failed_checks":[],"group_count":7,"hbarhub_card_exact":true,"homepage_api_sha256":"a1ece968406ec5ce5ba02197d5270d1e3ce34da451a69cc3cc5f38b6081ada0d","homepage_api_target_href_counts":{"hbarhub.ru":1,"newfilya.ru":1},"homepage_image_id_sha256":"242e6332e372aaffcf7c821cff66dcbc12c42b2cd4ae282db9533b640892ac79","homepage_image_reference_sha256":"b0c046cffbc1a48af0e6b240575c63b6f405debba0b2c50fa190616b5ea62808","homepage_mount_exact":true,"homepage_restart_count":0,"newfilya_card_exact":true,"newfilya_monitor_enabled":false,"ok":true,"secret_file_read":false,"secrets_included":false,"services_bytes":12308,"services_sha256":"0b7360dc34b9bd3e25073eae449f3c0c5a6609f7eb9f4bb2feca72b6e04fc928","services_structure_sha256":"eff9a7e610218ffdd092d704d2fcfad357db5d3b75ee0cc584c606ae4ee61f82","source_contents_returned":false,"status":"OK","target_href_counts":{"hbarhub.ru":1,"newfilya.ru":1}},"homepage_changed":false,"mutation_outcome":"NO_MUTATION","next_stage":"NEWFILYA_REFERENCE_TOPOLOGY_READ_ONLY_PLAN_RETRY","npmplus_reloaded":false,"operator_decision":{"external_assets":false,"future_target":"cluster_site","local_photo_sha256":"7f8d6c40d5f8f740f2d719fe739c456cf832cb67ed1b15161b616b8632caf367","local_photo_supplied":true,"monitor_enable_deferred":true,"origin_type":"new_static_landing","presentation":"neutral_launch_placeholder","site_subject":"newfoundland_ilyusha","temporary":true},"parent_v15r_evidence":{"PLAN_SHA256":null,"capsule_bytes":96265,"capsule_sha256":"d24cc4066fce46b17aa22b020a86f67d09d3dfc5725707ad93c274e6ef39dd46","card_count":65,"changes_made":false,"command_id":"HOMEPAGE-NEWFILYA-UPSTREAM-READ-ONLY-DISCOVERY-FIX2-V15R-20260804T114500Z","command_sha256":"61c4cf57bd2ac4bb370800ee31f7bac68cefb1abea2c6b430d4b2aa0d00b9b42","core_remote_stdout_sha256":"8eee46305b129ee0d912f6b432810b58391df09a4d02cb76ce5fdf93336a951f","database_exact_domain_match_count":0,"diagnosis":"NEWFILYA_ORIGIN_NOT_FOUND_IN_HOMELAB","docker_strong_candidate_count":0,"edge_remote_stdout_sha256":"a9a7f3da75c19646198c64354ee0977635387762bd04a33265b039e0b88f5614","gate":"OPERATOR_INPUT_REQUIRED","group_count":7,"homepage_restart_count":0,"mutation_outcome":"NO_MUTATION","newfilya_monitor_enabled":false,"operator_input_required":true,"output_sha256":"dbb4841cf66094610efdb23ef11c213faba6cb724249d044c2ef46198b6f5757","public_leaf_certificate_sha256":"c14d6f3eda27dcd7e8c8a44c18844f8009b4f23a74ab82d49475f138ddef0b93","rc":0,"rollback_restored":null,"rollback_started":false,"services_bytes":12308,"services_sha256":"0b7360dc34b9bd3e25073eae449f3c0c5a6609f7eb9f4bb2feca72b6e04fc928","services_structure_sha256":"eff9a7e610218ffdd092d704d2fcfad357db5d3b75ee0cc584c606ae4ee61f82","stacks_strong_candidate_count":0,"status":"OK"},"parent_v16_evidence":{"PLAN_SHA256":null,"blockers":["EDGE_STATIC_PLACEHOLDER_PREFLIGHT_INCOMPLETE","NEWFILYA_STATIC_CONFIG_PATH_NOT_FREE"],"candidate_filename":"998.conf","candidate_path_bytes":867,"candidate_path_exists":true,"candidate_path_gid":0,"candidate_path_kind":"regular","candidate_path_mode":"0644","candidate_path_uid":0,"capsule_bytes":95066,"capsule_sha256":"1370453ba42fbc997021981a52c5445c5843c4a027c2357784f9e90b47342b97","card_count":65,"certificate_paths_absent":true,"changes_made":false,"command_id":"HOMEPAGE-NEWFILYA-STATIC-PLACEHOLDER-TLS-READ-ONLY-PLAN-V16-20260804T120500Z","command_sha256":"dffeed8860eb0b5a4545b991d10cf28ba2cae513675449623e2d05cb3e7e01ae","core_remote_stdout_sha256":"4430d15bad3cc3286b28390d7d7ed7b22d0eb9f6a3af24491c6031c638dff5ba","diagnosis":"NEWFILYA_STATIC_PLACEHOLDER_TLS_PLAN_BLOCKED","document_rc":1,"document_status":"FAIL","edge_remote_stdout_sha256":"c8cd2bb3cf6f2abf4a46b28b20ce2fc9213c7dd336721bc09cea64983c38a756","gate":"BLOCKED","group_count":7,"homepage_restart_count":0,"mutation_outcome":"NO_MUTATION","newfilya_monitor_enabled":false,"next_stage":"NEWFILYA_STATIC_PLACEHOLDER_PLAN_FIX","npmplus_restart_count":0,"output_sha256":"7b9c0a671d4c7bb02268dec1a019d0f90d37c4a287f76c20a730c0cc6810d92c","proxy_domain_match_count":0,"public_leaf_certificate_sha256":"c14d6f3eda27dcd7e8c8a44c18844f8009b4f23a74ab82d49475f138ddef0b93","ready_for_apply":false,"rollback_restored":null,"rollback_started":false,"runner_rc":1,"runner_status":"FAIL","runtime_commit":"b86e6564664ebcdedea16e686f5fc3fe80cf2496","services_bytes":12308,"services_sha256":"0b7360dc34b9bd3e25073eae449f3c0c5a6609f7eb9f4bb2feca72b6e04fc928","services_structure_sha256":"eff9a7e610218ffdd092d704d2fcfad357db5d3b75ee0cc584c606ae4ee61f82"},"parent_v24_evidence":{"PLAN_SHA256":"b73f20b4c0b30724242abec126c06e98c3d02570d0b458f5b4995a8b4080abb5","apply_diagnosis":"NEWFILYA_STATIC_PLACEHOLDER_TLS_EDGE_APPLIED","apply_failed_checks":[],"apply_gate":"EDGE_APPLIED_AWAITING_PUBLIC_VERIFICATION","apply_npmplus_reloaded":true,"apply_rc":0,"apply_status":"OK","capsule_bytes":1099647,"capsule_sha256":"6e5f4c2a6ca59389b9bbb76390f38ad565e34cdacb4785662949f3dbfbacd733","changes_made":true,"command_id":"HOMEPAGE-NEWFILYA-STATIC-PLACEHOLDER-TLS-ATOMIC-APPLY-FIX3-V24-20260804T154500Z","command_sha256":"f4b75d029345c78ec94f56211a115451cbf23a992b63baa968c35c0c5ecce0bc","created_asset_bytes":712859,"created_asset_sha256":"7f8d6c40d5f8f740f2d719fe739c456cf832cb67ed1b15161b616b8632caf367","created_config_bytes":4032,"created_config_sha256":"8418733d658a9fd2517214d8ee1a3ad933e5cea95664bdf4dc605e7b5598a830","diagnosis":"PUBLIC_STATIC_PLACEHOLDER_TLS_POSTCONDITIONS_FAILED","document_rc":1,"document_status":"FAIL","duplicate_failed_command_blocked":false,"effective_domain_server_count":2,"execution_started":true,"gate":"RETURNED_TO_V22_BASELINE","issued_leaf_certificate_sha256":"c26ab805f5714721f671460a40338c6001d80b5dc03b64aaecd1eb0386e32e5c","mutation_outcome":"ROLLED_BACK","next_stage":"NEWFILYA_STATIC_PLACEHOLDER_TLS_APPLY_FIX3_RETRY","output_bytes":126815,"output_sha256":"09dbf39d6bba8ae133238b92463fa9386303efcaf4d8e99a0673b76250eac818","public_attempt_count":6,"public_dns_exact":true,"public_failed_checks":["image_body_exact","image_headers_exact","root_body_exact","root_headers_exact","root_not_default_or_bad_gateway","trusted_tls_root"],"public_http_redirect_exact":true,"public_trusted_tls":false,"result_contract_valid":true,"rollback_action":"ROLLBACK_NEWFILYA_STATIC_PLACEHOLDER_TLS_FIX3","rollback_edge_ok":true,"rollback_homepage_card_count":65,"rollback_homepage_ok":true,"rollback_homepage_restart_count":0,"rollback_homepage_services_sha256":"0b7360dc34b9bd3e25073eae449f3c0c5a6609f7eb9f4bb2feca72b6e04fc928","rollback_public_body_sha256":"808dfeea0cf787d85e03645e62ab18b97ab8138924420966413edcfe22ef4879","rollback_public_leaf_sha256":"c14d6f3eda27dcd7e8c8a44c18844f8009b4f23a74ab82d49475f138ddef0b93","rollback_restored":true,"rollback_started":true,"runner_rc":1,"runner_status":"FAIL","runtime_commit":"0ef2079353a4cab6be1975c6896f487ae545353b"},"parent_v25r_evidence":{"capsule_bytes":125746,"capsule_sha256":"c6586e0882a868d78fcc94a5cf6d1a29c5fbb2706312562f31c86a10d9e29fc4","certificate_changed":false,"changes_made":false,"cluster_changed":false,"command_id":"HOMEPAGE-NEWFILYA-NPMPLUS-REFERENCE-TOPOLOGY-READ-ONLY-PLAN-REPAIR-V25R-20260804T164000Z","command_sha256":"1106a8a682d8d351df0e9afd5dad1259835fce4cf67b6dd8c458a60474f84659","container_restarted":false,"control_plane_error":"NAME_PUBLIC_TARGETS_IS_NOT_DEFINED","diagnosis":"CONTROL_PLANE_EXCEPTION","dns_changed":false,"document_rc":1,"document_status":"FAIL","duplicate_failed_command_blocked":false,"execution_started":true,"failure_message_bytes":46,"failure_message_sha256":"370d239e3aa3011f68394ed8575dd5b97bb2d795fb1b1a0b6f39a77f9a7f0c60","failure_type":"NameError","gate":"BLOCKED","gitea_changed":false,"homepage_changed":false,"mutation_outcome":"NO_MUTATION","next_stage":"NEWFILYA_STATIC_PLACEHOLDER_PLAN_FIX","npmplus_reloaded":false,"output_bytes":4931,"output_sha256":"8f1fbdbed87030866e6e04938281c4fdfd0e8bf0eb010457a24ac73139f716a7","production_site_changed":false,"public_proxy_changed":false,"read_only":true,"result_contract_valid":true,"rollback_restored":null,"rollback_started":false,"runner_rc":1,"runner_status":"FAIL","runtime_commit":"4be821fc8a22398124d4a4b89f491ec11bd04824"},"plan":null,"private_addresses_included":false,"private_keys_read":false,"production_site_changed":false,"public":{"acme_http":{"completed":true,"final_hop":{"body_bytes":124,"body_sha256":"8cdc5c9588e8cc315d89a7c73f1bea4d41f8d68ae165756df0ec4a7db6a49892","certificate_validation_disabled":true,"completed":true,"header_values_returned":false,"location_present":false,"status":404},"first_hop":{"body_bytes":140,"body_sha256":"367cbd2bd4bb3ccdbff9b81ad94e4c1d9c66ee80e9df3ffcd7080f2000cbac6a","completed":true,"header_values_returned":false,"location_matches_expected_https":true,"location_present":true,"status":301},"header_values_returned":false,"path_sha256":"e607916d673bf51a6f3308ddd6069ae2da45daaec36dd78c419a41250a81f1af","redirect_count":1,"route_model":"HTTP_TO_HTTPS_404","route_proven":true},"addresses_returned":false,"anchor_dns":{"address_set_sha256":"c76b6b888b15b83623f3fc36fe6617dc24550f6b09b0d8f73c92ea22016e3a13","addresses_returned":false,"public_target_count":1,"record_count":1,"resolved":true},"body_returned":false,"certificate_contents_returned":false,"dns":{"address_set_sha256":"c76b6b888b15b83623f3fc36fe6617dc24550f6b09b0d8f73c92ea22016e3a13","addresses_returned":false,"families":["IPv4"],"public_target_count":1,"record_count":1,"rejected_non_public_count":0,"resolved":true},"dns_matches_hbarhub_anchor":true,"http":{"bad_gateway":false,"body_bytes":140,"body_sha256":"367cbd2bd4bb3ccdbff9b81ad94e4c1d9c66ee80e9df3ffcd7080f2000cbac6a","completed":true,"connection_mode":"PINNED_GLOBAL_TARGET","header_values_returned":false,"npmplus_default":false,"redirects_to_expected_https":true,"status":301},"https_unverified":{"bad_gateway":false,"body_bytes":2056,"body_returned":false,"body_sha256":"808dfeea0cf787d85e03645e62ab18b97ab8138924420966413edcfe22ef4879","certificate_validation_disabled":true,"completed":true,"connection_mode":"PINNED_GLOBAL_TARGET_WITH_SNI","leaf_certificate_sha256":"c14d6f3eda27dcd7e8c8a44c18844f8009b4f23a74ab82d49475f138ddef0b93","npmplus_default":true,"status":200},"tcp_443":{"addresses_returned":false,"attempt_count":1,"error_types":{},"reachable":true,"success_count":1},"tls_443":{"addresses_returned":false,"attempt_count":1,"certificate_contents_returned":false,"unverified":{"certificate_contents_returned":false,"certificate_validation_disabled":true,"completed":true,"error_types":{},"leaf_certificate_count":1,"leaf_certificate_sha256":"c14d6f3eda27dcd7e8c8a44c18844f8009b4f23a74ab82d49475f138ddef0b93","leaf_set_sha256":"620f5c3147455134d92b987f4f0c17c97663931b52966c15d089b43e1e452c1b","protocols":["TLSv1.3"],"success_count":1},"verified":false,"verified_leaf_certificate_sha256":null,"verified_protocol":null,"verified_success_count":0,"verify_codes":{"18":1}}},"public_proxy_changed":false,"rc":1,"read_only":true,"ready_for_apply":false,"reference_public_anchor":{"addresses_returned":false,"body_bytes":65,"body_returned":false,"body_sha256":"0a16d6323a495f863eb73fecfd33846560d57b7073572824175542db46e17db0","certificate_contents_returned":false,"completed":true,"dns":{"address_set_sha256":"c76b6b888b15b83623f3fc36fe6617dc24550f6b09b0d8f73c92ea22016e3a13","addresses_returned":false,"families":["IPv4"],"public_target_count":1,"record_count":1,"rejected_non_public_count":0,"resolved":true},"domain":"hbarhub.ru","duration_ms":60,"leaf_certificate_sha256":"7ffd7ade91ca4fd213bd0b9fd5f04540f334fe4eab42cb81d883c20697e2160d","protocol":"TLSv1.3","schema":1,"status":200,"verified":true},"rollback_restored":null,"rollback_started":false,"sanitized":true,"schema":1,"secret_files_read":false,"secrets_included":false,"source_contents_returned":false,"status":"FAIL","transport":{"core":{"config_view":"service-view","mode":"DIRECT_QGA","private_addresses_returned":false,"qga_step_count":6,"qga_step_set_sha256":"98f8cfe229e78f3139e17bb65609d825cca250b2ce603470c710f25518ccad45","remote_rc":0,"remote_stdout_bytes":2827,"remote_stdout_sha256":"f4ed723992aeecada2ec5618784170e264cf1291e280ce7167eb87639b95e053","socket_view":"service-view","vm_name":"core-apps","vmid":170},"edge":{"config_view":"service-view","mode":"STRICT_SSH_TO_OWNING_NODE_THEN_DIRECT_QGA","node":"pve03","private_addresses_returned":false,"qga_step_count":11,"qga_step_set_sha256":"adfe1c0873097d7095bfc3f6ed048990ff9b25332e7fa67cd43c6ffa01c6f203","remote_rc":1,"remote_stdout_bytes":11187,"remote_stdout_sha256":"754bb003b071fd489787c6bf1f0ce3d141641d0a5c0bb35129922fc3d0797018","socket_view":"service-view","ssh_rc":0,"vm_name":"edge-vm","vmid":130}}} +GENERATED_AT_UTC=[PRIVATE_IP]T17:17:01Z +Cluster information +------------------- +Name: homelab +Config Version: 3 +Transport: knet +Secure auth: on +Quorum information +------------------ +Date: Tue Aug [PRIVATE_IP] 2026 +Quorum provider: corosync_votequorum +Nodes: 3 +Node ID: [PRIVATE_IP] +Ring ID: 1.db +Quorate: Yes + +Votequorum information +---------------------- +Expected votes: 3 +Highest expected: 3 +Total votes: 3 +Quorum: 2 +Flags: Quorate + +Membership information +---------------------- + Nodeid Votes Name +[PRIVATE_IP] [PRIVATE_IP].11 (local) +[PRIVATE_IP] [PRIVATE_IP].13 +[PRIVATE_IP] [PRIVATE_IP].12 + +Membership information +---------------------- + Nodeid Votes Name + 1 1 pve01 (local) + 2 1 pve03 + 3 1 pve02 +[{"cpu":[PRIVATE_IP][PRIVATE_IP],"disk":[PRIVATE_IP],"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"lxc/110","maxcpu":1,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":0,"name":"dns1","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve01","status":"running","template":0,"type":"lxc","uptime":627001,"vmid":110},{"cpu":[PRIVATE_IP][PRIVATE_IP],"disk":[PRIVATE_IP],"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"lxc/111","maxcpu":1,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":0,"name":"dns2","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve02","status":"running","template":0,"type":"lxc","uptime":627084,"vmid":111},{"cpu":[PRIVATE_IP][PRIVATE_IP],"disk":[PRIVATE_IP],"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"lxc/112","maxcpu":1,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":0,"name":"unbound1","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve01","status":"running","template":0,"type":"lxc","uptime":627046,"vmid":112},{"cpu":[PRIVATE_IP]187e-05,"disk":[PRIVATE_IP],"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"lxc/113","maxcpu":1,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":0,"name":"unbound2","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve02","status":"running","template":0,"type":"lxc","uptime":627088,"vmid":113},{"cpu":[PRIVATE_IP]76716,"disk":0,"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"qemu/130","maxcpu":4,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":[PRIVATE_IP],"name":"edge-vm","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve03","status":"running","template":0,"type":"qemu","uptime":627024,"vmid":130},{"cpu":[PRIVATE_IP]67703,"disk":0,"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"qemu/150","maxcpu":4,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":[PRIVATE_IP],"name":"nextcloud","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve01","status":"running","template":0,"type":"qemu","uptime":626998,"vmid":150},{"cpu":[PRIVATE_IP]498139,"disk":0,"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"qemu/160","maxcpu":4,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":[PRIVATE_IP],"name":"forum-prod","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve02","status":"running","template":0,"type":"qemu","uptime":627081,"vmid":160},{"cpu":[PRIVATE_IP]03976,"disk":0,"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"qemu/170","maxcpu":4,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":[PRIVATE_IP],"name":"core-apps","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve01","status":"running","template":0,"type":"qemu","uptime":626994,"vmid":170},{"cpu":[PRIVATE_IP]70301,"disk":0,"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"qemu/171","maxcpu":4,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":[PRIVATE_IP],"name":"monitoring","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve01","status":"running","template":0,"type":"qemu","uptime":626991,"vmid":171},{"cpu":[PRIVATE_IP]3172,"disk":0,"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"qemu/180","maxcpu":2,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":[PRIVATE_IP],"name":"cluster-admin","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve02","status":"running","template":0,"type":"qemu","uptime":627078,"vmid":180},{"cpu":[PRIVATE_IP]002553,"disk":0,"diskread":[PRIVATE_IP],"diskwrite":[PRIVATE_IP],"id":"qemu/190","maxcpu":4,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"memhost":[PRIVATE_IP],"name":"homelab-ops-worker","netin":[PRIVATE_IP],"netout":[PRIVATE_IP],"node":"pve03","status":"running","template":0,"type":"qemu","uptime":627020,"vmid":190},{"cpu":0,"disk":0,"diskread":0,"diskwrite":0,"id":"qemu/9130","maxcpu":4,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":0,"memhost":0,"name":"edge-cold-standby","netin":0,"netout":0,"node":"pve02","status":"stopped","template":0,"type":"qemu","uptime":0,"vmid":9130},{"cgroup-mode":2,"cpu":[PRIVATE_IP]03815,"disk":[PRIVATE_IP],"id":"node/pve02","level":"","maxcpu":4,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"node":"pve02","status":"online","type":"node","uptime":627121},{"cgroup-mode":2,"cpu":[PRIVATE_IP]60751,"disk":[PRIVATE_IP],"id":"node/pve01","level":"","maxcpu":24,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"node":"pve01","status":"online","type":"node","uptime":627103},{"cgroup-mode":2,"cpu":[PRIVATE_IP]09587,"disk":[PRIVATE_IP],"id":"node/pve03","level":"","maxcpu":8,"maxdisk":[PRIVATE_IP],"maxmem":[PRIVATE_IP],"mem":[PRIVATE_IP],"node":"pve03","status":"online","type":"node","uptime":627042},{"content":"rootdir,images","disk":[PRIVATE_IP],"id":"storage/pve02/local-lvm","maxdisk":[PRIVATE_IP],"node":"pve02","plugintype":"lvmthin","shared":0,"status":"available","storage":"local-lvm","type":"storage"},{"content":"rootdir,images","disk":[PRIVATE_IP],"id":"storage/pve01/local-lvm","maxdisk":[PRIVATE_IP],"node":"pve01","plugintype":"lvmthin","shared":0,"status":"available","storage":"local-lvm","type":"storage"},{"content":"rootdir,images","disk":[PRIVATE_IP],"id":"storage/pve03/local-lvm","maxdisk":[PRIVATE_IP],"node":"pve03","plugintype":"lvmthin","shared":0,"status":"available","storage":"local-lvm","type":"storage"},{"content":"vztmpl,backup,import,iso","disk":[PRIVATE_IP],"id":"storage/pve02/local","maxdisk":[PRIVATE_IP],"node":"pve02","plugintype":"dir","shared":0,"status":"available","storage":"local","type":"storage"},{"content":"vztmpl,backup,import,iso","disk":[PRIVATE_IP],"id":"storage/pve01/local","maxdisk":[PRIVATE_IP],"node":"pve01","plugintype":"dir","shared":0,"status":"available","storage":"local","type":"storage"},{"content":"vztmpl,backup,import,iso","disk":[PRIVATE_IP],"id":"storage/pve03/local","maxdisk":[PRIVATE_IP],"node":"pve03","plugintype":"dir","shared":0,"status":"available","storage":"local","type":"storage"},{"id":"network/pve02/zone/localnetwork","network":"localnetwork","network-type":"zone","node":"pve02","status":"ok","type":"network"},{"id":"network/pve01/zone/localnetwork","network":"localnetwork","network-type":"zone","node":"pve01","status":"ok","type":"network"},{"id":"network/pve03/zone/localnetwork","network":"localnetwork","network-type":"zone","node":"pve03","status":"ok","type":"network"}] +Name Type Status Total (KiB) Used (KiB) Available (KiB) % +local dir active [PRIVATE_IP] [PRIVATE_IP] [PRIVATE_IP] 14.22% +local-lvm lvmthin active [PRIVATE_IP] [PRIVATE_IP] [PRIVATE_IP] 27.37% + UNIT LOAD ACTIVE SUB DESCRIPTION +● homelab-backup-matrix-refresh.service loaded failed failed Generate unified homelab backup matrix state +● homelab-crypto-portfolio-chart-health.service loaded failed failed Crypto portfolio chart health check +● skladchik-reports-monitor-supervisor.service loaded failed failed Skladchik reports monitor full supervisor + +Legend: LOAD → Reflects whether the unit definition was properly loaded. + ACTIVE → The high-level unit activation state, i.e. generalization of SUB. + SUB → The low-level unit activation state, values depend on unit type. + +3 loaded units listed. +NEXT LEFT LAST PASSED UNIT ACTIVATES +Tue [PRIVATE_IP] 20:17:03 MSK 1s Tue [PRIVATE_IP] 20:11:56 MSK 5min ago homelab-crypto-portfolio-chart-health.timer homelab-crypto-portfolio-chart-health.service +Tue [PRIVATE_IP] 20:17:10 MSK 8s Tue [PRIVATE_IP] 20:11:53 MSK 5min ago homelab-health-metrics.timer homelab-health-metrics.service +Tue [PRIVATE_IP] 20:17:14 MSK 12s Tue [PRIVATE_IP] 20:16:14 MSK 47s ago homelab-cluster-admin-webpanel-sync.timer homelab-cluster-admin-webpanel-sync.service +Tue [PRIVATE_IP] 20:17:14 MSK 12s Tue [PRIVATE_IP] 20:16:14 MSK 47s ago homelab-private-vpn-hosts-health.timer homelab-private-vpn-hosts-health.service +Tue [PRIVATE_IP] 20:17:23 MSK 21s Tue [PRIVATE_IP] 20:15:14 MSK 1min 47s ago homelab-cluster-admin-inventory-sync.timer homelab-cluster-admin-inventory-sync.service +Tue [PRIVATE_IP] 20:18:00 MSK 57s Tue [PRIVATE_IP] 20:16:57 MSK 4s ago homelab-router-watchdog.timer homelab-router-watchdog.service +Tue [PRIVATE_IP] 20:19:26 MSK 2min 24s Tue [PRIVATE_IP] 20:04:26 MSK 12min ago prometheus-node-exporter-apt.timer prometheus-node-exporter-apt.service +Tue [PRIVATE_IP] 20:20:26 MSK 3min 24s Tue [PRIVATE_IP] 20:15:26 MSK 1min 35s ago homelab-smartctl-textfile.timer homelab-smartctl-textfile.service +Tue [PRIVATE_IP] 20:20:26 MSK 3min 24s Tue [PRIVATE_IP] 20:15:26 MSK 1min 35s ago netbird-peers-health.timer netbird-peers-health.service +Tue [PRIVATE_IP] 20:22:26 MSK 5min Tue [PRIVATE_IP] 20:07:26 MSK 9min ago homelab-disk-space-health.timer homelab-disk-space-health.service +Tue [PRIVATE_IP] 20:22:26 MSK 5min Tue [PRIVATE_IP] 20:12:26 MSK 4min 35s ago skladchik-reports-monitor-supervisor.timer skladchik-reports-monitor-supervisor.service +Tue [PRIVATE_IP] 20:23:26 MSK 6min Tue [PRIVATE_IP] 20:08:26 MSK 8min ago homelab-pve03-staging-capacity-health.timer homelab-pve03-staging-capacity-health.service +Tue [PRIVATE_IP] 20:24:26 MSK 7min Tue [PRIVATE_IP] 20:09:26 MSK 7min ago prometheus-node-exporter-nvme.timer prometheus-node-exporter-nvme.service +Tue [PRIVATE_IP] 20:30:00 MSK 12min Tue [PRIVATE_IP] 20:15:07 MSK 1min 54s ago homelab-incident-journal.timer homelab-incident-journal.service +Tue [PRIVATE_IP] 20:30:01 MSK 12min Tue [PRIVATE_IP] 20:15:47 MSK 1min 14s ago homelab-forum-snuffleupagus-health.timer homelab-forum-snuffleupagus-health.service +Tue [PRIVATE_IP] 20:30:25 MSK 13min Tue [PRIVATE_IP] 20:15:47 MSK 1min 14s ago homelab-duty-admin-v2.timer homelab-duty-admin-v2.service +Tue [PRIVATE_IP] 20:30:29 MSK 13min Tue [PRIVATE_IP] 20:15:47 MSK 1min 14s ago homelab-external-probe-vps-health.timer homelab-external-probe-vps-health.service +Tue [PRIVATE_IP] 20:34:02 MSK 16min Tue [PRIVATE_IP] 20:02:50 MSK 14min ago homelab-mkdocs-auto-refresh.timer homelab-mkdocs-auto-refresh.service +Tue [PRIVATE_IP] 20:39:59 MSK 22min Tue [PRIVATE_IP] 20:08:24 MSK 8min ago homelab-reference-refresh.timer homelab-reference-refresh.service +Wed [PRIVATE_IP] 00:00:00 MSK 3h 42min Tue [PRIVATE_IP] 00:00:07 MSK 20h ago dpkg-db-backup.timer dpkg-db-backup.service +Wed [PRIVATE_IP] 00:08:04 MSK 3h 51min Tue [PRIVATE_IP] 00:05:08 MSK 20h ago homelab-storage-capacity.timer homelab-storage-capacity.service +Wed [PRIVATE_IP] 00:08:47 MSK 3h 51min Tue [PRIVATE_IP] 00:08:07 MSK 20h ago homelab-evidence-catalog.timer homelab-evidence-catalog.service +Wed [PRIVATE_IP] 00:13:19 MSK 3h 56min Tue [PRIVATE_IP] 00:13:28 MSK 20h ago homelab-docker-health.timer homelab-docker-health.service +Wed [PRIVATE_IP] 00:18:54 MSK 4h 1min Tue [PRIVATE_IP] 00:08:14 MSK 20h ago homelab-quality-gate.timer homelab-quality-gate.service +Wed [PRIVATE_IP] 00:51:16 MSK 4h 34min Tue [PRIVATE_IP] 00:08:36 MSK 20h ago logrotate.timer logrotate.service +Wed [PRIVATE_IP] 01:56:09 MSK 5h 39min Tue [PRIVATE_IP] 00:14:22 MSK 20h ago man-db.timer man-db.service +Wed [PRIVATE_IP] 02:08:26 MSK 5h 51min Tue [PRIVATE_IP] 20:08:26 MSK 8min ago homelab-vps-identity-audit.timer homelab-vps-identity-audit.service +Wed [PRIVATE_IP] 03:50:00 MSK 7h Tue [PRIVATE_IP] 03:50:02 MSK 16h ago filebrowser-offhost-sync.timer filebrowser-offhost-sync.service +Wed [PRIVATE_IP] 04:05:55 MSK 7h Tue [PRIVATE_IP] 01:23:47 MSK 18h ago pve-daily-update.timer pve-daily-update.service +Wed [PRIVATE_IP] 04:48:13 MSK 8h Tue [PRIVATE_IP] 04:42:07 MSK 15h ago homelab-edge-vm-offhost-freshness.timer homelab-edge-vm-offhost-freshness.service +Wed [PRIVATE_IP] 04:58:15 MSK 8h Tue [PRIVATE_IP] 05:15:14 MSK 15h ago homelab-sops-edge-secret-coverage.timer homelab-sops-edge-secret-coverage.service +Wed [PRIVATE_IP] 05:30:03 MSK 9h Tue [PRIVATE_IP] 12:02:37 MSK 8h ago apt-daily.timer apt-daily.service +Wed [PRIVATE_IP] 06:01:06 MSK 9h Tue [PRIVATE_IP] 06:53:08 MSK 13h ago apt-daily-upgrade.timer apt-daily-upgrade.service +Wed [PRIVATE_IP] 07:16:56 MSK 10h Tue [PRIVATE_IP] 07:03:50 MSK 13h ago homelab-drift-check.timer homelab-drift-check.service +Wed [PRIVATE_IP] 07:32:01 MSK 11h Tue [PRIVATE_IP] 07:39:26 MSK 12h ago homelab-service-registry-check.timer homelab-service-registry-check.service +Wed [PRIVATE_IP] 07:48:22 MSK 11h Tue [PRIVATE_IP] 07:54:17 MSK 12h ago homelab-desired-state-sync.timer homelab-desired-state-sync.service +Wed [PRIVATE_IP] 07:53:58 MSK 11h Tue [PRIVATE_IP] 07:46:07 MSK 12h ago homelab-alerting-health.timer homelab-alerting-health.service +Wed [PRIVATE_IP] 07:56:28 MSK 11h Tue [PRIVATE_IP] 07:56:07 MSK 12h ago homelab-dependency-map-check.timer homelab-dependency-map-check.service +Wed [PRIVATE_IP] 07:56:57 MSK 11h Tue [PRIVATE_IP] 07:56:50 MSK 12h ago homelab-runbook-generate.timer homelab-runbook-generate.service +Wed [PRIVATE_IP] 08:06:21 MSK 11h Tue [PRIVATE_IP] 07:59:39 MSK 12h ago homelab-duty-admin-report.timer homelab-duty-admin-report.service +Wed [PRIVATE_IP] 08:11:00 MSK 11h Tue [PRIVATE_IP] 08:03:50 MSK 12h ago homelab-overall-health.timer homelab-overall-health.service +Wed [PRIVATE_IP] 08:16:53 MSK 11h Tue [PRIVATE_IP] 08:16:35 MSK 12h ago homelab-kuma-monitor-policy.timer homelab-kuma-monitor-policy.service +Wed [PRIVATE_IP] 08:21:31 MSK 12h Tue [PRIVATE_IP] 08:12:26 MSK 12h ago homelab-final-readiness-gate.timer homelab-final-readiness-gate.service +Wed [PRIVATE_IP] 08:30:08 MSK 12h Tue [PRIVATE_IP] 08:36:50 MSK 11h ago homelab-capacity-risk.timer homelab-capacity-risk.service +Wed [PRIVATE_IP] 08:37:04 MSK 12h Tue [PRIVATE_IP] 08:52:38 MSK 11h ago homelab-cluster-passport.timer homelab-cluster-passport.service +Wed [PRIVATE_IP] 08:40:47 MSK 12h Tue [PRIVATE_IP] 08:36:17 MSK 11h ago homelab-secret-exposure-guard.timer homelab-secret-exposure-guard.service +Wed [PRIVATE_IP] 08:47:05 MSK 12h Tue [PRIVATE_IP] 08:54:47 MSK 11h ago immich-media-offhost-sync.timer immich-media-offhost-sync.service +Wed [PRIVATE_IP] 08:55:12 MSK 12h Tue [PRIVATE_IP] 08:50:07 MSK 11h ago homelab-golden-state-index.timer homelab-golden-state-index.service +Wed [PRIVATE_IP] 09:20:57 MSK 13h Tue [PRIVATE_IP] 09:06:50 MSK 11h ago memos-offhost-sync.timer memos-offhost-sync.service +Wed [PRIVATE_IP] 10:15:00 MSK 13h Tue [PRIVATE_IP] 10:15:14 MSK 10h ago skladchik-reports-monitor-monthly-selftest-watch.timer skladchik-reports-monitor-monthly-selftest-watch.service +Wed [PRIVATE_IP] 14:20:26 MSK 18h Tue [PRIVATE_IP] 14:20:26 MSK 5h 56min ago systemd-tmpfiles-clean.timer systemd-tmpfiles-clean.service +Sun [PRIVATE_IP] 03:10:38 MSK 4 days Sun [PRIVATE_IP] 03:10:25 MSK 2 days ago xfs_scrub_all.timer xfs_scrub_all.service +Sun [PRIVATE_IP] 03:10:48 MSK 4 days Sun [PRIVATE_IP] 03:10:50 MSK 2 days ago e2scrub_all.timer e2scrub_all.service +Mon [PRIVATE_IP] 00:03:56 MSK 5 days Mon [PRIVATE_IP] 00:11:50 MSK 1 day 20h ago homelab-secret-sanity.timer homelab-secret-sanity.service +Mon [PRIVATE_IP] 01:11:21 MSK 5 days Mon [PRIVATE_IP] 01:17:56 MSK 1 day 18h ago fstrim.timer fstrim.service +- - - - prometheus-node-exporter-ipmitool-sensor.timer prometheus-node-exporter-ipmitool-sensor.service +- - - - prometheus-node-exporter-mellanox-hca-temp.timer prometheus-node-exporter-mellanox-hca-temp.service +- - - - prometheus-node-exporter-smartmon.timer prometheus-node-exporter-smartmon.service + +58 timers listed. +- Обрезанная, повреждённая или частично вставленная команда считается невыполненной; сначала проводится side-effect audit. +- Хвост parse-ошибки закрывается только после доказательства отсутствия изменений и временных артефактов. +- Proof: /var/lib/homelab-change-sets/operator-command-size-guard-v[PRIVATE_IP]T182653Z/report.txt + +## HOMELAB_ADMIN_CLI_CONTRACT_[PRIVATE_IP] +- Поддерживаемые команды: version, status, lint TASK_DIR, validate TASK_DIR, run TASK_DIR PHASE. +- Отдельная команда --help отсутствует. Неизвестный аргумент печатает usage и штатно возвращает RC=64. +- Нельзя трактовать RC=64 от --help как неисправность runner. +- Для проверки доступности runner использовать homelab-admin version; для структуры CLI использовать зафиксированную usage-строку. +- Proof: /var/lib/homelab-change-sets/homelab-admin-cli-contract-fix-v[PRIVATE_IP]T183338Z/report.txt + +AUTOMATIC_CLUSTER_CONTEXT_REFRESH_[PRIVATE_IP] +Collector: /usr/local/sbin/homelab-context-collect +Scheduler: hourly at minute 17 via /etc/cron.d/homelab-context-refresh +Destination: immutable Gitea runtime history with CONTEXT-AUTO UTC command IDs. + +AUTOMATIC_CLUSTER_CONTEXT_REFRESH_DIRECT_[PRIVATE_IP] +Publisher: /usr/local/sbin/homelab-context-refresh-direct +Schedule: hourly at minute 17. +Destination: immutable assistant-runtime history with CONTEXT-AUTO UTC IDs. +ANTI_REGRESSION_TOKEN=HOMELAB_VM_2CLOUD_444_OUTER_LAUNCHER_BOUNDARY_REQUIRED +- Anti-regression: validate the complete outer launcher with a shell syntax check and verify the wrapper argument boundary before issuing it. +- Infrastructure action executed: none. +- Backup payload impact: none. +- Production impact: none. +- Status: CLOSED; UNRESOLVED_TAIL_COUNT=0. +- Registered at: [PRIVATE_IP]T11:20:32Z + +## ERROR_[PRIVATE_IP]_HOMELAB_VM_2CLOUD_DRAIN_CLOSURE_PREFLIGHT_446 +COMMAND_ID=HOMELAB-VM-2CLOUD-DRAIN-CLOSURE-PREFLIGHT-446 +- Symptom: homelab-chat-run-linked printed Usage and skipped result-feed publication as invalid input. +- Root cause: the diagnostic script was piped to wrapper stdin and the mandatory double-dash command separator was omitted. +- Correction: invoke homelab-chat-run-linked as COMMAND_ID MODE COMPONENT -- command arguments; stdin is not its command interface. +ANTI_REGRESSION_TOKEN=HOMELAB_CHAT_RUN_COMMAND_REQUIRES_DOUBLE_DASH +- Anti-regression: treat wrapper Usage as the authoritative CLI contract and syntax-check the complete launcher, not only its inner payload. +- Infrastructure action executed: none. +- Backup payload impact: none. +- Production impact: none. +- Status: CLOSED; UNRESOLVED_TAIL_COUNT=0. +- Registered at: [PRIVATE_IP]T11:20:32Z OUTPUT_END CHAT_OUTPUT_END