CHAT_OUTPUT_BEGIN
COMMAND_ID=SUPPORT-260919-HOME-GRAM1-CARD-GAP-CLASSIFY-READONLY-569R1
STATUS=OK
RC=0
HOST=pve01
MODE=read-only
COMPONENT=home-gram1-card-gap-classify-readonly
REFERENCE_REGISTER_CHECK=OK
REFERENCE_SHA256=5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66
ERROR_REGISTER_CHECK=OK
ERROR_REGISTER_SHA256=3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0
COMMAND_SHA256=9e6559a47c5578d2fbe02570b0f050d4a0471e35c2948fc3b114db0197838bbe
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=0
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=0e12900a906b4428f2b0d4b2ecc05294e9c5e4f8201a7c3dd527ea89ea3dfa44
SANITIZED_OUTPUT_SHA256=90ff5ff2bba88531e66a15ed6daf53f5fda0bc3cb53bf111f58d9f7e2273f447
OUTPUT_BEGIN
ERROR_REGISTER_CHECK=OK
REFERENCE_CHECK=OK
AUTHORITY_CHECK_SCOPE=READABILITY_ONLY_INCIDENTS_NOT_CLOSED
HEALTH_FILE_LIST_RC=0
HEALTH_FILE_LIST_BEGIN
cluster-admin-homepage-card.txt
cluster-admin-inventory-sync.txt
cluster-admin-public-route.txt
cluster-admin-service-readiness.txt
cluster-admin-stage0-readiness-fix.txt
dockge-user-hash-agent-install-readiness.txt
external-link-aleisaevn-netcraze-5083.txt
external-probe-runner-decision.txt
external-probe-vps.txt
failed-unit-legacy-inventory.txt
final-readiness-cycle-break.txt
final-readiness.txt
homepage-card-recommendations.txt
homepage-final-status.txt
homepage-missing-card-proposals-final.txt
homepage-missing-card-proposals.txt
independent-external-runner-audit.txt
independent-external-runner.txt
node-loss-readiness.txt
power-loss-readiness.txt
remote-git-sops-age-readiness.txt
router-hard-power.txt
router-running-config-mail-cloud.txt
router-startup-config-mail-cloud.txt
router-watchdog.txt
service-inventory-leftovers-phase00.txt
service-inventory-matrix-phase00.tsv
service-inventory-summary-phase00.txt
service-readiness-actual-budget.txt
service-readiness-alertmanager.txt
service-readiness-audiobookshelf.txt
service-readiness-authentik.txt
service-readiness-backup-health.txt
service-readiness-beszel.txt
service-readiness-blackbox-exporter.txt
service-readiness-bookstack.txt
service-readiness-cadvisor.txt
service-readiness-calibre-web.txt
service-readiness-cluster-admin-incident-engine.txt
service-readiness-cluster-admin-webpanel.txt
service-readiness-crypto-portfolio.txt
service-readiness-dns1.txt
service-readiness-dns2.txt
service-readiness-dockge.txt
service-readiness-dozzle.txt
service-readiness-filebrowser.txt
service-readiness-gitea.txt
service-readiness-gotify.txt
service-readiness-grafana.txt
service-readiness-healthchecks.txt
service-readiness-homeassistant.txt
service-readiness-homebox.txt
service-readiness-homepage.txt
service-readiness-immich.txt
service-readiness-it-tools.txt
service-readiness-jellyfin.txt
service-readiness-karakeep.txt
service-readiness-linkding.txt
service-readiness-mealie.txt
service-readiness-memos.txt
service-readiness-minio.txt
service-readiness-n8n.txt
service-readiness-netbox.txt
service-readiness-node-exporter.txt
service-readiness-node-red.txt
service-readiness-npmplus.txt
service-readiness-ntfy.txt
service-readiness-paperless.txt
service-readiness-prometheus.txt
service-readiness-proxmox-pve01.txt
service-readiness-searxng.txt
service-readiness-stirling-pdf.txt
service-readiness-syncthing.txt
service-readiness-uptime-kuma.txt
service-readiness-vaultwarden.txt
service-readiness-vikunja.txt
HEALTH_FILE_LIST_END
FILE_CHECK=/var/lib/homelab-health/homepage-missing-card-proposals-final.txt|exists=True
FILE_BEGIN=/var/lib/homelab-health/homepage-missing-card-proposals-final.txt
STATUS=OK TS=2026-07-08T06:23:11Z TYPE=registered-planning-surface-info BAD=0 WARN=0 MODE=REGISTERED_PLANNING_SURFACE_INFO REGISTERED_SURFACE=YES ORIGINAL_STATE=review ORIGINAL_CLASS=UNGATED_REVIEW_ITEM HARD_GATE=no ACTION=not_a_health_failure ARCHIVE=/var/lib/homelab-review-surface-registry/original-health-20260708T062311Z REPORT=/var/lib/homelab-review-surface-registry/apply-latest.md

FILE_END=/var/lib/homelab-health/homepage-missing-card-proposals-final.txt
FILE_CHECK=/var/lib/homelab-health/homepage-service-catalog-slo.txt|exists=False
FILE_CHECK=/var/lib/homelab-health/homepage-final-status.txt|exists=True
FILE_BEGIN=/var/lib/homelab-health/homepage-final-status.txt
STATUS=OK
TS=20260702T210118Z
TYPE=homepage-final-status
SUMMARY=Homepage groups/descriptions normalized to Russian; layout set to row/6-columns; monitors preserved and repaired; Cloudflare left untouched by user request.
CURRENT_CARD_COUNT=61
CURRENT_LAYOUT=row/6-columns
CLOUDFLARE_POLICY=do_not_touch
PROPOSALS=/var/lib/homelab-health/homepage-missing-card-proposals-final.txt
SECRET_PRINTED=NO

FILE_END=/var/lib/homelab-health/homepage-final-status.txt
REFERENCE_CARD_CONTEXT_RC=0
REFERENCE_CARD_CONTEXT_BEGIN
- Primary exit routing peer: relay.netbird.selfhosted / 100.100.19.1 / Moldova.
- Backup egress peer present: mail.netbird.selfhosted / 100.100.147.204 / USA.
- NetBird exit route proof on edge-vm: wg allowed-ips includes 0.0.0.0/0 via relay; ip route get 1.1.1.1 uses wt0 table 7120.
- External trace after route: 85.121.4.192 / OTP, not home 95.84.154.183 / ARN.
- CrowdSec proof: cscli lapi status OK, cscli capi status OK, CAPI sharing/blocklist pull enabled, no DISABLE_ONLINE_API or -no-capi flags in active compose.
- WARP is intentionally absent and must not be reintroduced for this path.
- Unauthenticated https://api.crowdsec.net/v3/watchers/login returning HTTP 403 is expected network reachability proof.
- Final proof: /root/evidence/771AD_FINAL_CROWDSEC_CAPI_NETBIRD_CLOSURE_20260702T191057Z_PROOF.txt

## HOMEPAGE_RU_LAYOUT_MONITORING_PROPOSALS_20260702
- Homepage live config is on core-apps VM [PRIVATE_IP] under /opt/stacks/homepage/config.
- Groups/descriptions were normalized to Russian.
- Layout is row/6-columns for all active groups.
- siteMonitor fields are preserved; monitors must be repaired, not removed.
- Cloudflare card must be left untouched by explicit operator request.
- Red badges after migration were primarily caused by Homepage container resolving *.vpn.gram1.ru to edge NetBird IP and timing out; fixed by mapping vpn hostnames to edge LAN [PRIVATE_IP] in Homepage compose extra_hosts.
- Router Moscow monitor uses edge health endpoint http://[PRIVATE_IP]:18091/router-moscow.
- NPMplus monitor uses edge health endpoint http://[PRIVATE_IP]:18091/npmplus.
- Missing-card proposal report: /var/lib/homelab-health/homepage-missing-card-proposals-final.txt.

## UPTIME_KUMA_MISSING_MONITOR_AND_PROPOSALS_20260702
- Uptime Kuma lives on monitoring VM [PRIVATE_IP].
- Added one missing monitor: NPMplus Edge Health -> http://[PRIVATE_IP]:18091/npmplus.
- Uptime Kuma DB backup was created before DB mutation under /root/uptime-kuma-manual-backups/773a-* on monitoring VM.
- DB integrity after insertion was OK.
- Deep monitoring proposal report: /var/lib/homelab-health/uptime-kuma-monitoring-proposals.txt.
- Cloudflare must not be touched by operator request.
- Recommended next monitors are P0 only after operator approval: Router Moscow Health, Backup/Restore Dashboard, Restore Drill Index, NetBird Peers, CrowdSec CAPI, Paperless Restore.

## UPTIME_KUMA_NPMPLUS_ADMIN_REPAIR_20260702
- Existing Uptime Kuma monitor "NPMplus Admin" was red because it checked https://[PRIVATE_IP]:81/.
- NPMplus admin is intentionally localhost-bound on edge-vm, so monitoring VM should not check the admin UI directly.
- Fixed monitor target to edge health endpoint: http://[PRIVATE_IP]:18091/npmplus.
- Monitor was repaired, not deleted.
- Cloudflare was not touched.

## UPTIME_KUMA_APPROVED_MONITOR_BATCH_20260702
- Approved Uptime Kuma monitor batch installed after Homepage/Kuma analysis.
- Existing NPMplus Admin monitor was repaired to http://[PRIVATE_IP]:18091/npmplus, not deleted.
- Edge health wrapper /usr/local/sbin/router-moscow-health provides safe endpoints on [PRIVATE_IP]:18091 for router-moscow, npmplus, loki, alloy, cadvisor, registry-cache, socket-proxy, diun, kopia and crowdsec.
- Cloudflare was not touched by explicit operator request.
- Uptime Kuma DB backups are under /root/uptime-kuma-manual-backups/773d-approved-batch-* on monitoring VM before the DB mutation.

## UPTIME_KUMA_PENDING_HEALTH_MONITORS_FIX_20260702
- Four pending Uptime Kuma keyword monitors were repaired by using local pve01 health endpoint paths instead of public backup.gram1.ru paths:
  - Backup Restore Dashboard -> http://[PRIVATE_IP]:9101/backup-restore-dashboard.txt
  - Restore Drill Index -> http://[PRIVATE_IP]:9101/restore-drill-index.txt
  - Paperless Restore -> http://[PRIVATE_IP]:9101/paperless-restore.txt
  - AdGuard Rewrite Sync -> http://[PRIVATE_IP]:9101/adguard-rewrite-sync.txt
- Cloudflare was not touched.
- Monitors were repaired, not deleted.

## UPTIME_KUMA_FOUR_HEALTH_SOURCES_REPAIRED_20260702
- Four Uptime Kuma monitors were still unavailable because three health endpoints returned 404 and Paperless Restore had STATUS=ERROR.
- Repaired pve01 health source files under /var/lib/homelab-health:
  - backup-restore-dashboard.txt
  - restore-drill-index.txt
  - paperless-restore.txt
  - adguard-rewrite-sync.txt
- Kuma monitors point to local pve01 health endpoints on http://[PRIVATE_IP]:9101/.
- Cloudflare was not touched.
- Monitors were repaired, not deleted.

## DOCKGE_DISCONNECTED_HOSTS_AND_STALE_STACKS_20260702
- Dockge is currently present only on edge-vm.
- core-apps and monitoring run Docker containers but have no Dockge/Dockge-agent detected.
REFERENCE_CARD_CONTEXT_END
VM_BEGIN=170
VM_STATUS=status: running|rc=0
VM_EXEC_RC=0
VM_EXEC_RAW_BEGIN
{
   "exitcode" : 0,
   "exited" : 1,
   "out-data" : "HOST=core-apps\nDOCKER_PS_RC=0\nDOCKER_PS_BEGIN\ndemonov-shadow-8020-shadow-1|8020-demonov-shadow:signalbot-050r6-749073ae0f89|Up 29 hours (healthy)|127.0.0.1:18020->8020/tcp\ndemonov-shadow-8020-relay-1|8020-demonov-shadow:signalbot-050r6-749073ae0f89|Up 29 hours|\ndemonov-shadow-8020-collector-1|8020-demonov-shadow:signalbot-050r6-749073ae0f89|Up 29 hours|\ndemonov-shadow-8020-worker-1|8020-demonov-shadow:signalbot-050r6-749073ae0f89|Up 29 hours|\nimmich_machine_learning|ghcr.io/immich-app/immich-machine-learning:v2|Up 2 weeks (healthy)|\ncrypto-portfolio|crypto-portfolio:gram-trade-entry-14415368fa52-c1398|Up 3 weeks|[PRIVATE_IP]:8030->8000/tcp\ncrypto-portfolio-worker|crypto-portfolio:gram-trade-entry-14415368fa52-c1398|Up 3 weeks|\nhbarhub-scheduler-1|hbarhub-scheduler|Up 2 days|8040/tcp\nhbarhub-web-1|hbarhub-web|Up 2 days (healthy)|0.0.0.0:8040->8040/tcp, :::8040->8040/tcp\nhbarhub-worker-1|hbarhub-worker|Up 2 days|8040/tcp\nhbarhub-postgres-1|postgres:17-alpine|Up 3 weeks (healthy)|5432/tcp\nhbarhub-redis-1|redis:8-alpine|Up 3 weeks (healthy)|6379/tcp\nhomelab-gitea-context-mcp|homelab/gitea-context-mcp:1.0.0|Up 3 weeks (healthy)|127.0.0.1:8765->8765/tcp\ngitea|docker.gitea.com/gitea:1.26.2|Up 3 weeks (healthy)|22/tcp, 0.0.0.0:3002->3000/tcp\nauthentik-worker-1|ghcr.io/goauthentik/server:2026.5.3|Up 3 weeks (healthy)|\nauthentik-server-1|ghcr.io/goauthentik/server:2026.5.3|Up 3 weeks (healthy)|0.0.0.0:9000->9000/tcp, 0.0.0.0:9443->9443/tcp\nvaultwarden|vaultwarden/server:1.36.0-alpine|Up 3 weeks (healthy)|0.0.0.0:8083->80/tcp\nhomepage|ghcr.io/gethomepage/homepage:latest|Up 3 weeks (healthy)|0.0.0.0:3000->3000/tcp\nminio|minio/minio:latest|Up 3 weeks|0.0.0.0:9002->9000/tcp, 0.0.0.0:9003->9001/tcp\nauthentik-postgresql-1|postgres:16-alpine|Up 3 weeks (healthy)|5432/tcp\nimmich_server|ghcr.io/immich-app/immich-server:v2|Up 2 days (healthy)|0.0.0.0:2283->2283/tcp\nimmich_postgres|ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0|Up 3 weeks (healthy)|5432/tcp\nimmich_redis|valkey/valkey:9|Up 3 weeks (healthy)|6379/tcp\nfilebrowser|filebrowser/filebrowser:latest|Up 2 days (healthy)|0.0.0.0:8085->80/tcp\n\nDOCKER_PS_END\nSTACKS_RC=0\nSTACKS_BEGIN\n/opt/stacks/8020-demonov-shadow/compose.yaml\n/opt/stacks/authentik/compose.yml\n/opt/stacks/crypto-portfolio/compose.yaml\n/opt/stacks/filebrowser/compose.yaml\n/opt/stacks/gitea/compose.yaml\n/opt/stacks/hbarhub/compose.yaml\n/opt/stacks/homelab-gitea-context-mcp/compose.yaml\n/opt/stacks/homepage/compose.yaml\n/opt/stacks/immich/docker-compose.yml\n/opt/stacks/minio/compose.yaml\n/opt/stacks/vaultwarden-compose/compose.yaml\n\nSTACKS_END\nLISTEN_RC=0\nLISTEN_BEGIN\nudp UNCONN 0      0            0.0.0.0:5355  0.0.0.0:* users:((\"systemd-resolve\",pid=360,fd=11))\nudp UNCONN 0      0         127.0.0.54:53    0.0.0.0:* users:((\"systemd-resolve\",pid=360,fd=20))\nudp UNCONN 0      0      127.0.0.53%lo:53    0.0.0.0:* users:((\"systemd-resolve\",pid=360,fd=18))\nudp UNCONN 0      0               [::]:5355     [::]:* users:((\"systemd-resolve\",pid=360,fd=13))\ntcp LISTEN 0      4096   127.0.0.53%lo:53    0.0.0.0:* users:((\"systemd-resolve\",pid=360,fd=19))\ntcp LISTEN 0      4096       127.0.0.1:18020 0.0.0.0:* users:((\"docker-proxy\",pid=2470167,fd=4))\ntcp LISTEN 0      4096         0.0.0.0:2283  0.0.0.0:* users:((\"docker-proxy\",pid=3554366,fd=4))\ntcp LISTEN 0      4096       127.0.0.1:8765  0.0.0.0:* users:((\"docker-proxy\",pid=1321,fd=4))   \ntcp LISTEN 0      4096         0.0.0.0:3000  0.0.0.0:* users:((\"docker-proxy\",pid=1276,fd=4))   \ntcp LISTEN 0      4096         0.0.0.0:3002  0.0.0.0:* users:((\"docker-proxy\",pid=1275,fd=4))   \ntcp LISTEN 0      4096         0.0.0.0:9443  0.0.0.0:* users:((\"docker-proxy\",pid=1379,fd=4))   \ntcp LISTEN 0      4096       127.0.0.1:44453 0.0.0.0:* users:((\"containerd\",pid=716,fd=9))      \ntcp LISTEN 0      128          0.0.0.0:22    0.0.0.0:* users:((\"sshd\",pid=706,fd=6))            \ntcp LISTEN 0      5            0.0.0.0:8787  0.0.0.0:* users:((\"python3\",pid=686,fd=3))         \ntcp LISTEN 0      5            0.0.0.0:8788  0.0.0.0:* users:((\"python3\",pid=684,fd=3))         \ntcp LISTEN 0      4096      127.0.0.54:53    0.0.0.0:* users:((\"systemd-resolve\",pid=360,fd=21))\ntcp LISTEN 0      4096         0.0.0.0:9000  0.0.0.0:* users:((\"docker-proxy\",pid=1397,fd=4))   \ntcp LISTEN 0      4096         0.0.0.0:9003  0.0.0.0:* users:((\"docker-proxy\",pid=1347,fd=4))   \ntcp LISTEN 0      4096         0.0.0.0:9002  0.0.0.0:* users:((\"docker-proxy\",pid=1360,fd=4))   \ntcp LISTEN 0      4096         0.0.0.0:8040  0.0.0.0:* users:((\"docker-proxy\",pid=3558706,fd=4))\ntcp LISTEN 0      4096         0.0.0.0:8083  0.0.0.0:* users:((\"docker-proxy\",pid=1304,fd=4))   \ntcp LISTEN 0      4096         0.0.0.0:8085  0.0.0.0:* users:((\"docker-proxy\",pid=3551865,fd=4))\ntcp LISTEN 0      4096   [PRIVATE_IP]:8030  0.0.0.0:* users:((\"docker-proxy\",pid=1398,fd=4))   \ntcp LISTEN 0      4096         0.0.0.0:5355  0.0.0.0:* users:((\"systemd-resolve\",pid=360,fd=12))\ntcp LISTEN 0      128             [::]:22       [::]:* users:((\"sshd\",pid=706,fd=7))            \ntcp LISTEN 0      4096            [::]:8040     [::]:* users:((\"docker-proxy\",pid=3558711,fd=4))\ntcp LISTEN 0      4096            [::]:5355     [::]:* users:((\"systemd-resolve\",pid=360,fd=14))\n\nLISTEN_END\nGUEST569_END\n",
   "out-truncated" : 0
}

VM_EXEC_RAW_END
VM_END=170
VM_BEGIN=130
VM_STATUS=|rc=2
VM_EXEC_RC=2
VM_EXEC_ERR=Configuration file 'nodes/pve01/qemu-server/130.conf' does not exist 
VM_END=130
VM_BEGIN=171
VM_STATUS=status: running|rc=0
VM_EXEC_RC=0
VM_EXEC_RAW_BEGIN
{
   "exitcode" : 0,
   "exited" : 1,
   "out-data" : "HOST=monitoring\nDOCKER_PS_RC=0\nDOCKER_PS_BEGIN\nuptime-kuma|louislam/uptime-kuma:2-slim|Up 2 weeks (healthy)|0.0.0.0:3001->3001/tcp\ngotify|gotify/server:latest|Up 3 weeks (healthy)|0.0.0.0:8082->80/tcp\nblackbox-exporter|prom/blackbox-exporter:latest|Up 3 weeks|0.0.0.0:9115->9115/tcp\ngrafana|grafana/grafana:latest|Up 3 weeks|0.0.0.0:3003->3000/tcp\nnode-exporter|prom/node-exporter:latest|Up 3 weeks|0.0.0.0:9100->9100/tcp\nprometheus|prom/prometheus:latest|Up 3 weeks|0.0.0.0:9090->9090/tcp\nalertmanager|prom/alertmanager:v0.33.0|Up 3 weeks|0.0.0.0:9093->9093/tcp\nntfy|binwiederhier/ntfy:latest|Up 3 weeks|0.0.0.0:8055->80/tcp\nhealthchecks|healthchecks/healthchecks:latest|Up 3 weeks (healthy)|0.0.0.0:8015->8000/tcp\n\nDOCKER_PS_END\nSTACKS_RC=0\nSTACKS_BEGIN\n/opt/stacks/blackbox-exporter/compose.yaml\n/opt/stacks/gotify-compose/compose.yaml\n/opt/stacks/healthchecks/compose.yaml\n/opt/stacks/ntfy/compose.yaml\n/opt/stacks/observability-lite/compose.yaml\n/opt/stacks/uptime-kuma-compose/compose.yaml\n\nSTACKS_END\nLISTEN_RC=0\nLISTEN_BEGIN\nudp UNCONN 0      0         127.0.0.54:53    0.0.0.0:* users:((\"systemd-resolve\",pid=359,fd=20))\nudp UNCONN 0      0      127.0.0.53%lo:53    0.0.0.0:* users:((\"systemd-resolve\",pid=359,fd=18))\nudp UNCONN 0      0            0.0.0.0:5355  0.0.0.0:* users:((\"systemd-resolve\",pid=359,fd=11))\nudp UNCONN 0      0               [::]:5355     [::]:* users:((\"systemd-resolve\",pid=359,fd=13))\ntcp LISTEN 0      4096         0.0.0.0:8015  0.0.0.0:* users:((\"docker-proxy\",pid=1085,fd=4))   \ntcp LISTEN 0      4096         0.0.0.0:8055  0.0.0.0:* users:((\"docker-proxy\",pid=1060,fd=4))   \ntcp LISTEN 0      4096         0.0.0.0:8082  0.0.0.0:* users:((\"docker-proxy\",pid=1035,fd=4))   \ntcp LISTEN 0      4096         0.0.0.0:3003  0.0.0.0:* users:((\"docker-proxy\",pid=1037,fd=4))   \ntcp LISTEN 0      4096         0.0.0.0:3001  0.0.0.0:* users:((\"docker-proxy\",pid=1574846,fd=4))\ntcp LISTEN 0      4096       127.0.0.1:46219 0.0.0.0:* users:((\"containerd\",pid=717,fd=9))      \ntcp LISTEN 0      4096   127.0.0.53%lo:53    0.0.0.0:* users:((\"systemd-resolve\",pid=359,fd=19))\ntcp LISTEN 0      4096      127.0.0.54:53    0.0.0.0:* users:((\"systemd-resolve\",pid=359,fd=21))\ntcp LISTEN 0      4096         0.0.0.0:5355  0.0.0.0:* users:((\"systemd-resolve\",pid=359,fd=12))\ntcp LISTEN 0      4096         0.0.0.0:9115  0.0.0.0:* users:((\"docker-proxy\",pid=1100,fd=4))   \ntcp LISTEN 0      4096         0.0.0.0:9100  0.0.0.0:* users:((\"docker-proxy\",pid=1126,fd=4))   \ntcp LISTEN 0      4096         0.0.0.0:9090  0.0.0.0:* users:((\"docker-proxy\",pid=1193,fd=4))   \ntcp LISTEN 0      4096         0.0.0.0:9093  0.0.0.0:* users:((\"docker-proxy\",pid=1149,fd=4))   \ntcp LISTEN 0      128          0.0.0.0:22    0.0.0.0:* users:((\"sshd\",pid=700,fd=6))            \ntcp LISTEN 0      4096            [::]:5355     [::]:* users:((\"systemd-resolve\",pid=359,fd=14))\ntcp LISTEN 0      128             [::]:22       [::]:* users:((\"sshd\",pid=700,fd=7))            \n\nLISTEN_END\nGUEST569_END\n",
   "out-truncated" : 0
}

VM_EXEC_RAW_END
VM_END=171
HOME569R1_DECISION=CARD_GAP_CLASSIFICATION_EVIDENCE_COLLECTED
HOME569R1_NEXT_GATE=APPLY_MINIMAL_CARD_SET_CHANGES
HOMELAB_RESULT_CONTRACT={"version":1,"command_id":"SUPPORT-260919-HOME-GRAM1-CARD-GAP-CLASSIFY-READONLY-569R1","status":"OK","changes_made":false,"rollback_started":false,"rollback_restored":null}

OUTPUT_END
CHAT_OUTPUT_END
