{
  "schema_version": 1,
  "channel": "homelab-runtime",
  "command_id": "HOMELAB-SKLADCHIK-RUNTIME-LAYOUT-AUDIT-386",
  "status": "OK",
  "rc": 0,
  "host": "pve01",
  "mode": "read-only",
  "component": "cluster-audit",
  "started_at_utc": "2026-07-23T17:21:38Z",
  "finished_at_utc": "2026-07-23T17:21:38Z",
  "reference_register_checked": true,
  "reference_sha256": "5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e",
  "error_register_checked": true,
  "error_register_sha256": "08b3a769b8e38eaa1acec915352fb328180d70caa7ff6cd9d1ec0da426262752",
  "command_sha256": "072987804163ce0c97a8bc22c357ac52139108b469c2b5b49f1db16c9e7e7495",
  "duplicate_failed_command_blocked": false,
  "block_reason": null,
  "execution_started": true,
  "changes_made": false,
  "sanitized": true,
  "secrets_included": false,
  "private_addresses_included": false,
  "raw_evidence_retained_locally": true,
  "raw_evidence_sha256": "66343fd6bd80f20d0725fe3e2b03e54e2dba7a88ba00405aff724802a0821805",
  "sanitized_output_sha256": "66343fd6bd80f20d0725fe3e2b03e54e2dba7a88ba00405aff724802a0821805",
  "output_truncated_in_json": false,
  "full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt",
  "output": "DETAIL=INTEGRITY_FILE=/usr/local/sbin/homelab-chat-run-linked|SHA256=5e8725e129fd2055b36fe2fae13fc95fc4b3271074a0e0d4bb7347e7b2f270a1\nDETAIL=INTEGRITY_FILE=/usr/local/sbin/homelab-reader-result-publish|SHA256=9cb8f7f1e9f300176a87f1abc8a9c51c92aeb9bea3514c7a9d9019ec400d4fd7\nDETAIL=INTEGRITY_FILE=/usr/local/sbin/skladchik-reports-monitor-supervisor|SHA256=35c68ae0929ff3795be2bde40de334fc8e26413a3d8a620a137be90d1f2c164e\nDETAIL=INTEGRITY_FILE=/usr/local/sbin/skladchik-reports-monitor-status|SHA256=f902a61109efbac5918360f2235c2523bd10704ac484a4e8591e8a1c490faf5a\nDETAIL=INTEGRITY_FILE=/root/.skladchik-cookie-header-372.pending|SHA256=3c260f0622999b94e1c3b45d5042532fe001b8118dff0d326636b2ad8609d8c4\nDETAIL=PENDING_COOKIE_SECRET_OUTPUT=NONE\nDETAIL=PATH_STATE=VAR_LIB|PATH=/var/lib|KIND=DIRECTORY|META=root:root|755|4096|directory|DEV=64513|INO=2359298\nDETAIL=PATH_STATE=STATE_DIR|PATH=/var/lib/skladchik-reports-monitor|KIND=ABSENT\nDETAIL=PATH_STATE=COOKIE_JAR|PATH=/var/lib/skladchik-reports-monitor/cookies.jar|KIND=ABSENT\nDETAIL=PATH_STATE=OPT_DIR|PATH=/opt/skladchik-reports-monitor|KIND=ABSENT\nDETAIL=PATH_STATE=MONITOR_PY|PATH=/opt/skladchik-reports-monitor/monitor.py|KIND=ABSENT\nDETAIL=PATH_STATE=ETC_DIR|PATH=/etc/skladchik-reports-monitor|KIND=ABSENT\nDETAIL=PATH_STATE=CONFIG_INI|PATH=/etc/skladchik-reports-monitor/config.ini|KIND=ABSENT\nDETAIL=PATH_STATE=SECRETS_ENV|PATH=/etc/skladchik-reports-monitor/secrets.env|KIND=ABSENT\nDETAIL=SKLADCHIK_UNIT_FILES_BEGIN\nDETAIL=UNIT_FILE=skladchik-reports-monitor-backup-restore-check.service   static  -\nDETAIL=UNIT_FILE=skladchik-reports-monitor-backup.service                 static  -\nDETAIL=UNIT_FILE=skladchik-reports-monitor-monthly-selftest-watch.service static  -\nDETAIL=UNIT_FILE=skladchik-reports-monitor-supervisor.service             static  -\nDETAIL=UNIT_FILE=skladchik-reports-monitor-backup-restore-check.timer     enabled enabled\nDETAIL=UNIT_FILE=skladchik-reports-monitor-backup.timer                   enabled enabled\nDETAIL=UNIT_FILE=skladchik-reports-monitor-monthly-selftest-watch.timer   enabled enabled\nDETAIL=UNIT_FILE=skladchik-reports-monitor-supervisor.timer               enabled enabled\nDETAIL=SKLADCHIK_UNIT_FILES_END\nDETAIL=UNIT_CONTRACT_BEGIN=skladchik-reports-monitor-backup-restore-check.service\nDETAIL=UNIT_PROPERTY=Result=success\nDETAIL=UNIT_PROPERTY=ExecMainStatus=0\nDETAIL=UNIT_PROPERTY=ExecStart={ path=/usr/local/sbin/skladchik-reports-monitor-backup-restore-check ; argv[]=/usr/local/sbin/skladchik-reports-monitor-backup-restore-check ; ignore_errors=no ; start_time=[n/a] ; stop_time=[n/a] ; pid=0 ; code=(null) ; status=0/0 }\nDETAIL=UNIT_PROPERTY=WorkingDirectory=\nDETAIL=UNIT_PROPERTY=User=\nDETAIL=UNIT_PROPERTY=Group=\nDETAIL=UNIT_PROPERTY=RuntimeDirectory=\nDETAIL=UNIT_PROPERTY=StateDirectory=\nDETAIL=UNIT_PROPERTY=CacheDirectory=\nDETAIL=UNIT_PROPERTY=LogsDirectory=\nDETAIL=UNIT_PROPERTY=LoadState=loaded\nDETAIL=UNIT_PROPERTY=ActiveState=inactive\nDETAIL=UNIT_PROPERTY=SubState=dead\nDETAIL=UNIT_PROPERTY=FragmentPath=/etc/systemd/system/skladchik-reports-monitor-backup-restore-check.service\nDETAIL=UNIT_CONTRACT_END=skladchik-reports-monitor-backup-restore-check.service\nDETAIL=UNIT_CONTRACT_BEGIN=skladchik-reports-monitor-backup.service\nDETAIL=UNIT_PROPERTY=Result=success\nDETAIL=UNIT_PROPERTY=ExecMainStatus=0\nDETAIL=UNIT_PROPERTY=ExecStart={ path=/usr/local/sbin/skladchik-reports-monitor-backup ; argv[]=/usr/local/sbin/skladchik-reports-monitor-backup ; ignore_errors=no ; start_time=[n/a] ; stop_time=[n/a] ; pid=0 ; code=(null) ; status=0/0 }\nDETAIL=UNIT_PROPERTY=WorkingDirectory=\nDETAIL=UNIT_PROPERTY=User=\nDETAIL=UNIT_PROPERTY=Group=\nDETAIL=UNIT_PROPERTY=RuntimeDirectory=\nDETAIL=UNIT_PROPERTY=StateDirectory=\nDETAIL=UNIT_PROPERTY=CacheDirectory=\nDETAIL=UNIT_PROPERTY=LogsDirectory=\nDETAIL=UNIT_PROPERTY=LoadState=loaded\nDETAIL=UNIT_PROPERTY=ActiveState=inactive\nDETAIL=UNIT_PROPERTY=SubState=dead\nDETAIL=UNIT_PROPERTY=FragmentPath=/etc/systemd/system/skladchik-reports-monitor-backup.service\nDETAIL=UNIT_CONTRACT_END=skladchik-reports-monitor-backup.service\nDETAIL=UNIT_CONTRACT_BEGIN=skladchik-reports-monitor-monthly-selftest-watch.service\nDETAIL=UNIT_PROPERTY=Result=success\nDETAIL=UNIT_PROPERTY=ExecMainStatus=0\nDETAIL=UNIT_PROPERTY=ExecStart={ path=/usr/bin/python3 ; argv[]=/usr/bin/python3 /usr/local/sbin/skladchik-reports-monitor-monthly-selftest-watch ; ignore_errors=no ; start_time=[n/a] ; stop_time=[n/a] ; pid=0 ; code=(null) ; status=0/0 }\nDETAIL=UNIT_PROPERTY=WorkingDirectory=\nDETAIL=UNIT_PROPERTY=User=\nDETAIL=UNIT_PROPERTY=Group=\nDETAIL=UNIT_PROPERTY=RuntimeDirectory=\nDETAIL=UNIT_PROPERTY=StateDirectory=\nDETAIL=UNIT_PROPERTY=CacheDirectory=\nDETAIL=UNIT_PROPERTY=LogsDirectory=\nDETAIL=UNIT_PROPERTY=LoadState=loaded\nDETAIL=UNIT_PROPERTY=ActiveState=inactive\nDETAIL=UNIT_PROPERTY=SubState=dead\nDETAIL=UNIT_PROPERTY=FragmentPath=/etc/systemd/system/skladchik-reports-monitor-monthly-selftest-watch.service\nDETAIL=UNIT_CONTRACT_END=skladchik-reports-monitor-monthly-selftest-watch.service\nDETAIL=UNIT_CONTRACT_BEGIN=skladchik-reports-monitor-supervisor.service\nDETAIL=UNIT_PROPERTY=Result=exit-code\nDETAIL=UNIT_PROPERTY=ExecMainStatus=1\nDETAIL=UNIT_PROPERTY=ExecStart={ path=/usr/local/sbin/skladchik-reports-monitor-supervisor ; argv[]=/usr/local/sbin/skladchik-reports-monitor-supervisor check ; ignore_errors=no ; start_time=[Thu 2026-07-23 20:16:28 MSK] ; stop_time=[Thu 2026-07-23 20:16:28 MSK] ; pid=832805 ; code=exited ; status=1 }\nDETAIL=UNIT_PROPERTY=WorkingDirectory=\nDETAIL=UNIT_PROPERTY=User=\nDETAIL=UNIT_PROPERTY=Group=\nDETAIL=UNIT_PROPERTY=RuntimeDirectory=\nDETAIL=UNIT_PROPERTY=StateDirectory=\nDETAIL=UNIT_PROPERTY=CacheDirectory=\nDETAIL=UNIT_PROPERTY=LogsDirectory=\nDETAIL=UNIT_PROPERTY=LoadState=loaded\nDETAIL=UNIT_PROPERTY=ActiveState=failed\nDETAIL=UNIT_PROPERTY=SubState=failed\nDETAIL=UNIT_PROPERTY=FragmentPath=/etc/systemd/system/skladchik-reports-monitor-supervisor.service\nDETAIL=UNIT_CONTRACT_END=skladchik-reports-monitor-supervisor.service\nDETAIL=UNIT_CONTRACT_BEGIN=skladchik-reports-monitor-backup-restore-check.timer\nDETAIL=UNIT_PROPERTY=Result=success\nDETAIL=UNIT_PROPERTY=LoadState=loaded\nDETAIL=UNIT_PROPERTY=ActiveState=active\nDETAIL=UNIT_PROPERTY=SubState=waiting\nDETAIL=UNIT_PROPERTY=FragmentPath=/etc/systemd/system/skladchik-reports-monitor-backup-restore-check.timer\nDETAIL=UNIT_CONTRACT_END=skladchik-reports-monitor-backup-restore-check.timer\nDETAIL=UNIT_CONTRACT_BEGIN=skladchik-reports-monitor-backup.timer\nDETAIL=UNIT_PROPERTY=Result=success\nDETAIL=UNIT_PROPERTY=LoadState=loaded\nDETAIL=UNIT_PROPERTY=ActiveState=active\nDETAIL=UNIT_PROPERTY=SubState=waiting\nDETAIL=UNIT_PROPERTY=FragmentPath=/etc/systemd/system/skladchik-reports-monitor-backup.timer\nDETAIL=UNIT_CONTRACT_END=skladchik-reports-monitor-backup.timer\nDETAIL=UNIT_CONTRACT_BEGIN=skladchik-reports-monitor-monthly-selftest-watch.timer\nDETAIL=UNIT_PROPERTY=Result=success\nDETAIL=UNIT_PROPERTY=LoadState=loaded\nDETAIL=UNIT_PROPERTY=ActiveState=active\nDETAIL=UNIT_PROPERTY=SubState=waiting\nDETAIL=UNIT_PROPERTY=FragmentPath=/etc/systemd/system/skladchik-reports-monitor-monthly-selftest-watch.timer\nDETAIL=UNIT_CONTRACT_END=skladchik-reports-monitor-monthly-selftest-watch.timer\nDETAIL=UNIT_CONTRACT_BEGIN=skladchik-reports-monitor-supervisor.timer\nDETAIL=UNIT_PROPERTY=Result=success\nDETAIL=UNIT_PROPERTY=LoadState=loaded\nDETAIL=UNIT_PROPERTY=ActiveState=active\nDETAIL=UNIT_PROPERTY=SubState=waiting\nDETAIL=UNIT_PROPERTY=FragmentPath=/etc/systemd/system/skladchik-reports-monitor-supervisor.timer\nDETAIL=UNIT_CONTRACT_END=skladchik-reports-monitor-supervisor.timer\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-desired-state/sbin/skladchik-reports-monitor-backup|META=root:root|755|5610|regular file|SHA256=1912f8f0559637563972bb8ac984fb0036694092056ae53968c02cc3b67855f3\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-desired-state/sbin/skladchik-reports-monitor-backup.pre-restore-check-20260710T065311Z.bak|META=root:root|755|5318|regular file|SHA256=6d100f0bb9b3c29ae1391ee2cddf9d522a26fdf9168344141b1b1d62dc3e8901\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-desired-state/sbin/skladchik-reports-monitor-backup.pre-session-keepalive-20260710T071605Z.bak|META=root:root|755|5558|regular file|SHA256=b95c09d271f2926d6cb80388d87d77313ab7709bdc9386c562774c72dce2eab9\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-desired-state/sbin/skladchik-reports-monitor-backup-restore-check|META=root:root|755|6851|regular file|SHA256=abb2d17392b6edde3603f77e88fc82240c311f932b0d197b1b8289b990c1dc23\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-desired-state/sbin/skladchik-reports-monitor-backup-restore-check.pre-session-keepalive-20260710T071605Z.bak|META=root:root|755|5316|regular file|SHA256=0a14f5db7c8861133bc6e3a7d43373abc6fb76193aa20988d97a14ea4a464fcb\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-desired-state/sbin/skladchik-reports-monitor-backup-restore-check-status|META=root:root|755|753|regular file|SHA256=92ca1bd3b9e29bb2adf27deeb009edd8daee70f4fc304a879f79c29e00d99d67\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-desired-state/sbin/skladchik-reports-monitor-backup-status|META=root:root|755|606|regular file|SHA256=afbbe3ed8478d2de98456dbfa3f6405ed1a65bd57fec26b98d083f29a08fa5e0\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops/docs/skladchik-cookie-refresh.md|META=root:root|600|3020|regular file|SHA256=91c66d8ee6622d925174055599ad5ece6270c35f8d7d7967a26609f7e290c7e6\nDETAIL=RUNTIME_LINE=24:6. Копируйте только его значение, без текста `Cookie:`.\nDETAIL=RUNTIME_LINE=45:Не вставляйте Cookie в чат, Git, командную строку, файл или журнал. Не редактируйте `secrets.env` и `cookies.jar` вручную. Не запускайте edge-скрипт напрямую. Все production-изменения выполняются только через `/opt/homelab-admin/bin/homelab-admin`.\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops/.git/refs/heads/cr-2026-0007-skladchik-controlled-reauth|META=root:root|644|41|regular file|SHA256=16444c2f0b1bab67b5194ad3dba31764c0c2ba8e826e600ea91757399214d553\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops/.git/refs/heads/cr-2026-0008-skladchik-snapshot-integrity|META=root:root|644|41|regular file|SHA256=9ed791b90d1b138af8ea5376f5ccdbded0e23027fe1c809b0311d8db7198a033\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops/.git/refs/heads/cr-2026-0009-skladchik-concurrency-guard|META=root:root|644|41|regular file|SHA256=927c5ddeebb0f92f5997bb7b172d01f000835449d8bbb79999aa745f605ba1f6\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops/.git/refs/heads/cr-2026-0011-skladchik-cookie-jar-reset|META=root:root|600|41|regular file|SHA256=961fdabe0d8ccf9e38c58f1c1434d77321f37173835377fefd6478bea1d35e6d\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops/.git/refs/heads/cr-2026-0012-skladchik-cookie-refresh-runbook|META=root:root|600|41|regular file|SHA256=72a1e1b436e6c2bf7fdddc930c4f7937874972e7299d6e7959c8d5becf8e858b\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops/tests/test_cr_2026_0007_skladchik_reauth.py|META=root:root|644|4660|regular file|SHA256=9ba7ca8494a22e83bba5479a3a647eb96abaef45ada1b08fa7432f03a64b1765\nDETAIL=PYTHON_SYNTAX=PASS|FILE=/srv/homelab-ops/tests/test_cr_2026_0007_skladchik_reauth.py\nDETAIL=RUNTIME_LINE=89:        self.assertIn(\"persistent_cookie_jar\", verify)\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops/tests/test_cr_2026_0007_skladchik_semantic_repair.py|META=root:root|600|6711|regular file|SHA256=cfddf97b92b1ce351e733c159aadfccd21193fb0d67b5312fb93aed05e45fd6f\nDETAIL=PYTHON_SYNTAX=PASS|FILE=/srv/homelab-ops/tests/test_cr_2026_0007_skladchik_semantic_repair.py\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops/tests/test_cr_2026_0008_skladchik_snapshot_integrity.py|META=root:root|644|3549|regular file|SHA256=e868d8397e1a79f8cc7b37a91c4a0da84d041da04ba6ea9d8e10853de3464fc9\nDETAIL=PYTHON_SYNTAX=PASS|FILE=/srv/homelab-ops/tests/test_cr_2026_0008_skladchik_snapshot_integrity.py\nDETAIL=RUNTIME_LINE=38:        self.assertNotIn(\"sha256sum /var/lib/skladchik-reports-monitor/cookies.jar\", edge_dry)\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops/tests/test_cr_2026_0009_skladchik_concurrency_guard.py|META=root:root|600|8942|regular file|SHA256=0fe7182cb281e8ad5487f1c5f73f0230971a5027ae44c5ee0f0c6a5d10f8e513\nDETAIL=PYTHON_SYNTAX=PASS|FILE=/srv/homelab-ops/tests/test_cr_2026_0009_skladchik_concurrency_guard.py\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops/tests/test_cr_2026_0011_skladchik_cookie_jar_reset.py|META=root:root|600|5072|regular file|SHA256=4fc7c59d1f766600c1d43833c027b44f2fb8dd4dc9d174f706406e0a0a606cf7\nDETAIL=PYTHON_SYNTAX=PASS|FILE=/srv/homelab-ops/tests/test_cr_2026_0011_skladchik_cookie_jar_reset.py\nDETAIL=RUNTIME_LINE=15:class SkladchikCookieJarResetTests(unittest.TestCase):\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops/tests/test_cr_2026_0012_skladchik_cookie_refresh_runbook.py|META=root:root|600|4846|regular file|SHA256=cfde805604d58d87d975584431aeb024bef21e863c4293d4726e5504415fe9bc\nDETAIL=PYTHON_SYNTAX=PASS|FILE=/srv/homelab-ops/tests/test_cr_2026_0012_skladchik_cookie_refresh_runbook.py\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops/tools/skladchik-cookie-refresh|META=root:root|700|10086|regular file|SHA256=1e2f5323abf880f3e8b17bf1f2d0a844c402a9bbf5f24159ed39aaf1d79caef0\nDETAIL=RUNTIME_LINE=187:printf '\\n\\033[1;33mВСТАВЬ ПОЛНЫЙ COOKIE ИЗ REQUEST HEADERS ЗАПРОСА К https://az52.skladchik.org/<redacted-path> БЕЗ СЛОВА Cookie: И НАЖМИ ENTER. ВВОД СКРЫТ.\\033[0m\\n\\n'\nDETAIL=RUNTIME_LINE=217:SESSION_KEEPALIVE=\"$(health_value session_keepalive)\"\nDETAIL=RUNTIME_LINE=225:test \"$SESSION_KEEPALIVE\" = persistent_cookie_jar\nDETAIL=RUNTIME_LINE=242:printf 'SESSION_KEEPALIVE=%s\\nCOOKIE_JAR=%s\\nEDGE_SCRIPT_SHA256=%s\\n' \"$SESSION_KEEPALIVE\" \"$COOKIE_JAR\" \"$TARGET_EDGE_SHA\"\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0015/docs/skladchik-cookie-refresh.md|META=root:root|600|3020|regular file|SHA256=91c66d8ee6622d925174055599ad5ece6270c35f8d7d7967a26609f7e290c7e6\nDETAIL=RUNTIME_LINE=24:6. Копируйте только его значение, без текста `Cookie:`.\nDETAIL=RUNTIME_LINE=45:Не вставляйте Cookie в чат, Git, командную строку, файл или журнал. Не редактируйте `secrets.env` и `cookies.jar` вручную. Не запускайте edge-скрипт напрямую. Все production-изменения выполняются только через `/opt/homelab-admin/bin/homelab-admin`.\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0015/tests/__pycache__/test_cr_2026_0009_skladchik_concurrency_guard.cpython-313.pyc|META=root:root|600|13320|regular file|SHA256=4a7c19e709f5e7addc3284bc3f51909c2b18990ebf74169bde4c32fa3e04a32b\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0015/tests/test_cr_2026_0007_skladchik_reauth.py|META=root:root|600|4660|regular file|SHA256=9ba7ca8494a22e83bba5479a3a647eb96abaef45ada1b08fa7432f03a64b1765\nDETAIL=PYTHON_SYNTAX=PASS|FILE=/srv/homelab-ops-worktrees/cr-2026-0015/tests/test_cr_2026_0007_skladchik_reauth.py\nDETAIL=RUNTIME_LINE=89:        self.assertIn(\"persistent_cookie_jar\", verify)\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0015/tests/test_cr_2026_0007_skladchik_semantic_repair.py|META=root:root|600|6711|regular file|SHA256=cfddf97b92b1ce351e733c159aadfccd21193fb0d67b5312fb93aed05e45fd6f\nDETAIL=PYTHON_SYNTAX=PASS|FILE=/srv/homelab-ops-worktrees/cr-2026-0015/tests/test_cr_2026_0007_skladchik_semantic_repair.py\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0015/tests/test_cr_2026_0008_skladchik_snapshot_integrity.py|META=root:root|600|3549|regular file|SHA256=e868d8397e1a79f8cc7b37a91c4a0da84d041da04ba6ea9d8e10853de3464fc9\nDETAIL=PYTHON_SYNTAX=PASS|FILE=/srv/homelab-ops-worktrees/cr-2026-0015/tests/test_cr_2026_0008_skladchik_snapshot_integrity.py\nDETAIL=RUNTIME_LINE=38:        self.assertNotIn(\"sha256sum /var/lib/skladchik-reports-monitor/cookies.jar\", edge_dry)\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0015/tests/test_cr_2026_0009_skladchik_concurrency_guard.py|META=root:root|600|8942|regular file|SHA256=0fe7182cb281e8ad5487f1c5f73f0230971a5027ae44c5ee0f0c6a5d10f8e513\nDETAIL=PYTHON_SYNTAX=PASS|FILE=/srv/homelab-ops-worktrees/cr-2026-0015/tests/test_cr_2026_0009_skladchik_concurrency_guard.py\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0015/tests/test_cr_2026_0011_skladchik_cookie_jar_reset.py|META=root:root|600|5072|regular file|SHA256=4fc7c59d1f766600c1d43833c027b44f2fb8dd4dc9d174f706406e0a0a606cf7\nDETAIL=PYTHON_SYNTAX=PASS|FILE=/srv/homelab-ops-worktrees/cr-2026-0015/tests/test_cr_2026_0011_skladchik_cookie_jar_reset.py\nDETAIL=RUNTIME_LINE=15:class SkladchikCookieJarResetTests(unittest.TestCase):\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0015/tests/test_cr_2026_0012_skladchik_cookie_refresh_runbook.py|META=root:root|600|4846|regular file|SHA256=cfde805604d58d87d975584431aeb024bef21e863c4293d4726e5504415fe9bc\nDETAIL=PYTHON_SYNTAX=PASS|FILE=/srv/homelab-ops-worktrees/cr-2026-0015/tests/test_cr_2026_0012_skladchik_cookie_refresh_runbook.py\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0015/tools/skladchik-cookie-refresh|META=root:root|700|10086|regular file|SHA256=1e2f5323abf880f3e8b17bf1f2d0a844c402a9bbf5f24159ed39aaf1d79caef0\nDETAIL=RUNTIME_LINE=187:printf '\\n\\033[1;33mВСТАВЬ ПОЛНЫЙ COOKIE ИЗ REQUEST HEADERS ЗАПРОСА К https://az52.skladchik.org/<redacted-path> БЕЗ СЛОВА Cookie: И НАЖМИ ENTER. ВВОД СКРЫТ.\\033[0m\\n\\n'\nDETAIL=RUNTIME_LINE=217:SESSION_KEEPALIVE=\"$(health_value session_keepalive)\"\nDETAIL=RUNTIME_LINE=225:test \"$SESSION_KEEPALIVE\" = persistent_cookie_jar\nDETAIL=RUNTIME_LINE=242:printf 'SESSION_KEEPALIVE=%s\\nCOOKIE_JAR=%s\\nEDGE_SCRIPT_SHA256=%s\\n' \"$SESSION_KEEPALIVE\" \"$COOKIE_JAR\" \"$TARGET_EDGE_SHA\"\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/docs/skladchik-cookie-refresh.md|META=root:root|600|3020|regular file|SHA256=91c66d8ee6622d925174055599ad5ece6270c35f8d7d7967a26609f7e290c7e6\nDETAIL=RUNTIME_LINE=24:6. Копируйте только его значение, без текста `Cookie:`.\nDETAIL=RUNTIME_LINE=45:Не вставляйте Cookie в чат, Git, командную строку, файл или журнал. Не редактируйте `secrets.env` и `cookies.jar` вручную. Не запускайте edge-скрипт напрямую. Все production-изменения выполняются только через `/opt/homelab-admin/bin/homelab-admin`.\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/tests/__pycache__/test_cr_2026_0007_skladchik_reauth.cpython-313.pyc|META=root:root|600|9148|regular file|SHA256=b890441710cfb7fc93ca92182465254ece5253b0caf51f876a60569678654b68\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/tests/__pycache__/test_cr_2026_0007_skladchik_semantic_repair.cpython-313.pyc|META=root:root|600|11900|regular file|SHA256=52a92f1da1b6f155aa40c8ffb2242aafb8cb3f6ac4404a621afb16260ea271f9\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/tests/__pycache__/test_cr_2026_0008_skladchik_snapshot_integrity.cpython-313.pyc|META=root:root|600|6023|regular file|SHA256=e9d4c78f1d923f7b6bb38ef31fa04ae6319b8cbbe3e7e3b2a8153bec6d635116\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/tests/__pycache__/test_cr_2026_0009_skladchik_concurrency_guard.cpython-313.pyc|META=root:root|600|13341|regular file|SHA256=de3bfbd154d3d10209828a892ee0e6b60d1b35dab08c77526d95ab2d18f22216\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/tests/__pycache__/test_cr_2026_0011_skladchik_cookie_jar_reset.cpython-313.pyc|META=root:root|600|9479|regular file|SHA256=66b213e64b92a3926b2a3a4c0c8187b0384a1a959c66d855344587cf716b78d4\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/tests/__pycache__/test_cr_2026_0012_skladchik_cookie_refresh_runbook.cpython-313.pyc|META=root:root|600|8565|regular file|SHA256=123bdacf10b54c7e208913879ff3e6b66578c8fc91097ad9832a844ec3960528\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/tests/test_cr_2026_0007_skladchik_reauth.py|META=root:root|600|4660|regular file|SHA256=9ba7ca8494a22e83bba5479a3a647eb96abaef45ada1b08fa7432f03a64b1765\nDETAIL=PYTHON_SYNTAX=PASS|FILE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/tests/test_cr_2026_0007_skladchik_reauth.py\nDETAIL=RUNTIME_LINE=89:        self.assertIn(\"persistent_cookie_jar\", verify)\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/tests/test_cr_2026_0007_skladchik_semantic_repair.py|META=root:root|600|6711|regular file|SHA256=cfddf97b92b1ce351e733c159aadfccd21193fb0d67b5312fb93aed05e45fd6f\nDETAIL=PYTHON_SYNTAX=PASS|FILE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/tests/test_cr_2026_0007_skladchik_semantic_repair.py\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/tests/test_cr_2026_0008_skladchik_snapshot_integrity.py|META=root:root|600|3549|regular file|SHA256=e868d8397e1a79f8cc7b37a91c4a0da84d041da04ba6ea9d8e10853de3464fc9\nDETAIL=PYTHON_SYNTAX=PASS|FILE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/tests/test_cr_2026_0008_skladchik_snapshot_integrity.py\nDETAIL=RUNTIME_LINE=38:        self.assertNotIn(\"sha256sum /var/lib/skladchik-reports-monitor/cookies.jar\", edge_dry)\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/tests/test_cr_2026_0009_skladchik_concurrency_guard.py|META=root:root|600|8942|regular file|SHA256=0fe7182cb281e8ad5487f1c5f73f0230971a5027ae44c5ee0f0c6a5d10f8e513\nDETAIL=PYTHON_SYNTAX=PASS|FILE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/tests/test_cr_2026_0009_skladchik_concurrency_guard.py\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/tests/test_cr_2026_0011_skladchik_cookie_jar_reset.py|META=root:root|600|5072|regular file|SHA256=4fc7c59d1f766600c1d43833c027b44f2fb8dd4dc9d174f706406e0a0a606cf7\nDETAIL=PYTHON_SYNTAX=PASS|FILE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/tests/test_cr_2026_0011_skladchik_cookie_jar_reset.py\nDETAIL=RUNTIME_LINE=15:class SkladchikCookieJarResetTests(unittest.TestCase):\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/tests/test_cr_2026_0012_skladchik_cookie_refresh_runbook.py|META=root:root|600|4846|regular file|SHA256=cfde805604d58d87d975584431aeb024bef21e863c4293d4726e5504415fe9bc\nDETAIL=PYTHON_SYNTAX=PASS|FILE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/tests/test_cr_2026_0012_skladchik_cookie_refresh_runbook.py\nDETAIL=RUNTIME_CANDIDATE=/srv/homelab-ops-worktrees/cr-2026-0017-inventory-foundation/tools/skladchik-cookie-refresh|META=root:root|700|10086|regular file|SHA256=1e2f5323abf880f3e8b17bf1f2d0a844c402a9bbf5f24159ed39aaf1d79caef0\nDETAIL=RUNTIME_LINE=187:printf '\\n\\033[1;33mВСТАВЬ ПОЛНЫЙ COOKIE ИЗ REQUEST HEADERS ЗАПРОСА К https://az52.skladchik.org/<redacted-path> БЕЗ СЛОВА Cookie: И НАЖМИ ENTER. ВВОД СКРЫТ.\\033[0m\\n\\n'\nDETAIL=RUNTIME_LINE=217:SESSION_KEEPALIVE=\"$(health_value session_keepalive)\"\nDETAIL=RUNTIME_LINE=225:test \"$SESSION_KEEPALIVE\" = persistent_cookie_jar\nDETAIL=RUNTIME_LINE=242:printf 'SESSION_KEEPALIVE=%s\\nCOOKIE_JAR=%s\\nEDGE_SCRIPT_SHA256=%s\\n' \"$SESSION_KEEPALIVE\" \"$COOKIE_JAR\" \"$TARGET_EDGE_SHA\"\nDETAIL=RUNTIME_CANDIDATE=/usr/local/sbin/__pycache__/skladchik-reports-monitor-monthly-selftest-watchcpython-313.pyc|META=root:root|644|13217|regular file|SHA256=744102abd48cce7972d208fa735a6a41e4f0960897ab1dc4079a79ea9a2127fd\nDETAIL=RUNTIME_CANDIDATE=/usr/local/sbin/__pycache__/skladchik-reports-monitor-supervisorcpython-313.pyc|META=root:root|644|29834|regular file|SHA256=f9c9a17c09c542a653df544b74321c797e89cd2dbd726b52287bfd6097b0998a\nDETAIL=RUNTIME_CANDIDATE=/usr/local/sbin/__pycache__/skladchik-reports-monitor-supervisor.pre-cookie-expiry-watch-20260710T072136Z.cpython-313.pyc|META=root:root|644|24854|regular file|SHA256=1cff2c1761a8487dd0c7d6e2a0d6b4a6a45710b23e7afdaad1059526b96f396c\nDETAIL=RUNTIME_CANDIDATE=/usr/local/sbin/__pycache__/skladchik-reports-monitor-supervisor.pre-session-keepalive-20260710T071605Z.cpython-313.pyc|META=root:root|644|23194|regular file|SHA256=8acaa25f3d259e2d00d0bccf86a64c616d2fe447bbab492f9e12c4b996334582\nDETAIL=RUNTIME_CANDIDATE=/usr/local/sbin/skladchik-reports-monitor-backup|META=root:root|755|5610|regular file|SHA256=1912f8f0559637563972bb8ac984fb0036694092056ae53968c02cc3b67855f3\nDETAIL=RUNTIME_CANDIDATE=/usr/local/sbin/skladchik-reports-monitor-backup.pre-restore-check-20260710T065311Z.bak|META=root:root|755|5318|regular file|SHA256=6d100f0bb9b3c29ae1391ee2cddf9d522a26fdf9168344141b1b1d62dc3e8901\nDETAIL=RUNTIME_CANDIDATE=/usr/local/sbin/skladchik-reports-monitor-backup.pre-session-keepalive-20260710T071605Z.bak|META=root:root|755|5558|regular file|SHA256=b95c09d271f2926d6cb80388d87d77313ab7709bdc9386c562774c72dce2eab9\nDETAIL=RUNTIME_CANDIDATE=/usr/local/sbin/skladchik-reports-monitor-backup-restore-check|META=root:root|755|6851|regular file|SHA256=abb2d17392b6edde3603f77e88fc82240c311f932b0d197b1b8289b990c1dc23\nDETAIL=RUNTIME_CANDIDATE=/usr/local/sbin/skladchik-reports-monitor-backup-restore-check.pre-session-keepalive-20260710T071605Z.bak|META=root:root|755|5316|regular file|SHA256=0a14f5db7c8861133bc6e3a7d43373abc6fb76193aa20988d97a14ea4a464fcb\nDETAIL=RUNTIME_CANDIDATE=/usr/local/sbin/skladchik-reports-monitor-backup-restore-check-status|META=root:root|755|753|regular file|SHA256=92ca1bd3b9e29bb2adf27deeb009edd8daee70f4fc304a879f79c29e00d99d67\nDETAIL=RUNTIME_CANDIDATE=/usr/local/sbin/skladchik-reports-monitor-backup-status|META=root:root|755|606|regular file|SHA256=afbbe3ed8478d2de98456dbfa3f6405ed1a65bd57fec26b98d083f29a08fa5e0\nDETAIL=RUNTIME_CANDIDATE=/usr/local/sbin/skladchik-reports-monitor-cookie-update|META=root:root|755|638|regular file|SHA256=ea2d89ce67893a6d89b29610e4d46e207932ecc157173454585f67890f58810c\nDETAIL=RUNTIME_CANDIDATE=/usr/local/sbin/skladchik-reports-monitor-monthly-selftest-watch|META=root:root|755|9180|regular file|SHA256=48c6ca01d2430d14c6af797c079640815ba1352a98466d4014ecbb80a27eaada\nDETAIL=RUNTIME_CANDIDATE=/usr/local/sbin/skladchik-reports-monitor-status|META=root:root|755|3427|regular file|SHA256=f902a61109efbac5918360f2235c2523bd10704ac484a4e8591e8a1c490faf5a\nDETAIL=RUNTIME_CANDIDATE=/usr/local/sbin/skladchik-reports-monitor-supervisor|META=root:root|755|20463|regular file|SHA256=35c68ae0929ff3795be2bde40de334fc8e26413a3d8a620a137be90d1f2c164e\nDETAIL=RUNTIME_LINE=22:COOKIE_EXPIRY_WARN_SECONDS = int(os.environ.get(\"SKLADCHIK_COOKIE_EXPIRY_WARN_SECONDS\", \"604800\"))\nDETAIL=RUNTIME_LINE=127:test -s /var/lib/skladchik-reports-monitor/cookies.jar && echo cookies_jar=yes || echo cookies_jar=no\nDETAIL=RUNTIME_LINE=128:[ -s /var/lib/skladchik-reports-monitor/cookies.jar ] && echo cookies_jar_bytes=$(stat -c %s /var/lib/skladchik-reports-monitor/cookies.jar 2>/dev/null) || echo cookies_jar_bytes=0\nDETAIL=RUNTIME_LINE=153:    facts[\"session_keepalive\"] = mon.get(\"session_keepalive\", \"\")\nDETAIL=RUNTIME_LINE=156:    facts[\"cookie_expiry_status\"] = mon.get(\"cookie_expiry_status\", \"\")\nDETAIL=RUNTIME_LINE=157:    facts[\"cookie_expiry_utc\"] = mon.get(\"cookie_expiry_utc\", \"\")\nDETAIL=RUNTIME_LINE=158:    facts[\"cookie_expires_in_seconds\"] = mon.get(\"cookie_expires_in_seconds\", \"\")\nDETAIL=RUNTIME_LINE=159:    facts[\"cookie_expires_in_days\"] = mon.get(\"cookie_expires_in_days\", \"\")\nDETAIL=RUNTIME_LINE=168:    if mon.get(\"session_keepalive\") != \"persistent_cookie_jar\":\nDETAIL=RUNTIME_LINE=169:        problems.append(\"session_keepalive_not_persistent\")\nDETAIL=RUNTIME_LINE=172:    expiry_status = mon.get(\"cookie_expiry_status\", \"\")\nDETAIL=RUNTIME_LINE=174:        expires_in = int(mon.get(\"cookie_expires_in_seconds\", \"\"))\nDETAIL=RUNTIME_LINE=177:    if expiry_status in (\"\", \"NO_COOKIE_JAR\", \"NO_PERSISTENT_COOKIE\", \"ERROR\"):\nDETAIL=RUNTIME_LINE=178:        problems.append(\"cookie_expiry_missing\")\nDETAIL=RUNTIME_LINE=180:        problems.append(\"cookie_expiry_expired\")\nDETAIL=RUNTIME_LINE=181:    elif expiry_status == \"WARN\" or (expires_in is not None and expires_in < COOKIE_EXPIRY_WARN_SECONDS):\nDETAIL=RUNTIME_LINE=182:        problems.append(\"cookie_expiry_warn\")\nDETAIL=RUNTIME_LINE=285:        f\"- автопродление авторизации: {facts.get('session_keepalive')}\",\nDETAIL=RUNTIME_LINE=287:        f\"- постоянная cookie действует до UTC: {facts.get('cookie_expiry_utc') or 'не определено'}\",\nDETAIL=RUNTIME_LINE=288:        f\"- осталось дней по cookie: {facts.get('cookie_expires_in_days') or 'не определено'}\",\nDETAIL=RUNTIME_LINE=289:        f\"- статус срока cookie: {facts.get('cookie_expiry_status') or 'не определено'}\",\nDETAIL=RUNTIME_CANDIDATE=/usr/local/sbin/skladchik-reports-monitor-supervisor.pre-cookie-expiry-watch-20260710T072136Z.bak|META=root:root|755|16236|regular file|SHA256=44deb5ca0075aa67d220c0bc13e8dbc87f9640dfa09037245367aca588d93288\nDETAIL=RUNTIME_LINE=126:test -s /var/lib/skladchik-reports-monitor/cookies.jar && echo cookies_jar=yes || echo cookies_jar=no\nDETAIL=RUNTIME_LINE=127:[ -s /var/lib/skladchik-reports-monitor/cookies.jar ] && echo cookies_jar_bytes=$(stat -c %s /var/lib/skladchik-reports-monitor/cookies.jar 2>/dev/null) || echo cookies_jar_bytes=0\nDETAIL=RUNTIME_LINE=146:    facts[\"session_keepalive\"] = mon.get(\"session_keepalive\", \"\")\nDETAIL=RUNTIME_LINE=156:    if mon.get(\"session_keepalive\") != \"persistent_cookie_jar\":\nDETAIL=RUNTIME_LINE=157:        problems.append(\"session_keepalive_not_persistent\")\nDETAIL=RUNTIME_LINE=253:        f\"- автопродление авторизации: {facts.get('session_keepalive')}\",\nDETAIL=RUNTIME_CANDIDATE=/usr/local/sbin/skladchik-reports-monitor-supervisor.pre-session-keepalive-20260710T071605Z.bak|META=root:root|755|15009|regular file|SHA256=79974f2f0366322d533970506b3bf08f87957d514c3523c54b61962afd8c6566\nDETAIL=DIRECTORY_CONTRACT_REFERENCES_BEGIN\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-status:43:check_health \"PVE01: ежедневный бэкап\" \"/var/lib/skladchik-reports-monitor-backup/health.txt\"\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-status:44:check_health \"PVE01: проверка восстановления\" \"/var/lib/skladchik-reports-monitor-backup/restore-check-health.txt\"\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-status:45:check_health \"PVE01: общий supervisor\" \"/var/lib/skladchik-reports-monitor-supervisor/health.txt\"\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-status:46:check_health \"PVE01: контроль ежемесячного самотеста\" \"/var/lib/skladchik-reports-monitor-selftest-watch/health.txt\"\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-backup-restore-check:12:HEALTH=/var/lib/skladchik-reports-monitor-backup/restore-check-health.txt\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-monthly-selftest-watch:13:HEALTH_DIR = Path(\"/var/lib/skladchik-reports-monitor-selftest-watch\")\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-monthly-selftest-watch:110:        \"cat /var/lib/skladchik-reports-monitor/event-selftest-health.txt 2>/dev/null || true\"\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-backup:20:HEALTH=/var/lib/skladchik-reports-monitor-backup/health.txt\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-backup:38:mkdir -p \"$TMP/payload/var-lib-skladchik-reports-monitor\" \"$TMP/payload/systemd\"\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-backup:41:if [ -s /var/lib/skladchik-reports-monitor/state.sqlite ] && command -v sqlite3 >/dev/null 2>&1; then sqlite3 /var/lib/skladchik-reports-monitor/state.sqlite \".backup '$TMP/payload/var-lib-skladchik-reports-monitor/state.sqlite'\"; elif [ -s /var/lib/skladchik-reports-monitor/state.sqlite ]; then cp -a /var/lib/skladchik-reports-monitor/state.sqlite \"$TMP/payload/var-lib-skladchik-reports-monitor/state.sqlite\"; fi\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-backup:42:for F in /var/lib/skladchik-reports-monitor/*; do\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-backup-restore-check.pre-session-keepalive-20260710T071605Z.bak:12:HEALTH=/var/lib/skladchik-reports-monitor-backup/restore-check-health.txt\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-backup-restore-check-status:4:cat /var/lib/skladchik-reports-monitor-backup/restore-check-health.txt 2>/dev/null || true\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-backup.pre-restore-check-20260710T065311Z.bak:20:HEALTH=/var/lib/skladchik-reports-monitor-backup/health.txt\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-backup.pre-restore-check-20260710T065311Z.bak:38:mkdir -p \"$TMP/payload/var-lib-skladchik-reports-monitor\" \"$TMP/payload/systemd\"\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-backup.pre-restore-check-20260710T065311Z.bak:41:if [ -s /var/lib/skladchik-reports-monitor/state.sqlite ] && command -v sqlite3 >/dev/null 2>&1; then sqlite3 /var/lib/skladchik-reports-monitor/state.sqlite \".backup '$TMP/payload/var-lib-skladchik-reports-monitor/state.sqlite'\"; elif [ -s /var/lib/skladchik-reports-monitor/state.sqlite ]; then cp -a /var/lib/skladchik-reports-monitor/state.sqlite \"$TMP/payload/var-lib-skladchik-reports-monitor/state.sqlite\"; fi\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-backup.pre-restore-check-20260710T065311Z.bak:42:cp -a /var/lib/skladchik-reports-monitor/health.txt \"$TMP/payload/var-lib-skladchik-reports-monitor/health.txt\" 2>/dev/null || true\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor.pre-session-keepalive-20260710T071605Z.bak:13:STATE_DIR = Path(\"/var/lib/skladchik-reports-monitor-supervisor\")\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor.pre-session-keepalive-20260710T071605Z.bak:23:PVE_BACKUP_HEALTH = Path(\"/var/lib/skladchik-reports-monitor-backup/health.txt\")\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor.pre-session-keepalive-20260710T071605Z.bak:24:PVE_RESTORE_HEALTH = Path(\"/var/lib/skladchik-reports-monitor-backup/restore-check-health.txt\")\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor.pre-session-keepalive-20260710T071605Z.bak:111:cat /var/lib/skladchik-reports-monitor/health.txt 2>/dev/null || true\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor.pre-session-keepalive-20260710T071605Z.bak:114:cat /var/lib/skladchik-reports-monitor/alert-health.txt 2>/dev/null || true\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor:13:STATE_DIR = Path(\"/var/lib/skladchik-reports-monitor-supervisor\")\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor:24:PVE_BACKUP_HEALTH = Path(\"/var/lib/skladchik-reports-monitor-backup/health.txt\")\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor:25:PVE_RESTORE_HEALTH = Path(\"/var/lib/skladchik-reports-monitor-backup/restore-check-health.txt\")\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor:112:cat /var/lib/skladchik-reports-monitor/health.txt 2>/dev/null || true\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor:115:cat /var/lib/skladchik-reports-monitor/alert-health.txt 2>/dev/null || true\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor:127:test -s /var/lib/skladchik-reports-monitor/cookies.jar && echo cookies_jar=yes || echo cookies_jar=no\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor:128:[ -s /var/lib/skladchik-reports-monitor/cookies.jar ] && echo cookies_jar_bytes=$(stat -c %s /var/lib/skladchik-reports-monitor/cookies.jar 2>/dev/null) || echo cookies_jar_bytes=0\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor:132:test -s /var/lib/skladchik-reports-monitor/weekly-summary-health.txt && echo weekly_summary_health=yes || echo weekly_summary_health=no\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor:133:test -s /var/lib/skladchik-reports-monitor/age-alert-health.txt && echo age_alert_health=yes || echo age_alert_health=no\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor:134:test -s /var/lib/skladchik-reports-monitor/event-selftest-health.txt && echo event_selftest_health=yes || echo event_selftest_health=no\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-backup.pre-session-keepalive-20260710T071605Z.bak:20:HEALTH=/var/lib/skladchik-reports-monitor-backup/health.txt\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-backup.pre-session-keepalive-20260710T071605Z.bak:38:mkdir -p \"$TMP/payload/var-lib-skladchik-reports-monitor\" \"$TMP/payload/systemd\"\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-backup.pre-session-keepalive-20260710T071605Z.bak:41:if [ -s /var/lib/skladchik-reports-monitor/state.sqlite ] && command -v sqlite3 >/dev/null 2>&1; then sqlite3 /var/lib/skladchik-reports-monitor/state.sqlite \".backup '$TMP/payload/var-lib-skladchik-reports-monitor/state.sqlite'\"; elif [ -s /var/lib/skladchik-reports-monitor/state.sqlite ]; then cp -a /var/lib/skladchik-reports-monitor/state.sqlite \"$TMP/payload/var-lib-skladchik-reports-monitor/state.sqlite\"; fi\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-backup.pre-session-keepalive-20260710T071605Z.bak:42:cp -a /var/lib/skladchik-reports-monitor/health.txt \"$TMP/payload/var-lib-skladchik-reports-monitor/health.txt\" 2>/dev/null || true\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-backup.pre-session-keepalive-20260710T071605Z.bak:43:cp -a /var/lib/skladchik-reports-monitor/alert-health.txt \"$TMP/payload/var-lib-skladchik-reports-monitor/alert-health.txt\" 2>/dev/null || true\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor.pre-cookie-expiry-watch-20260710T072136Z.bak:13:STATE_DIR = Path(\"/var/lib/skladchik-reports-monitor-supervisor\")\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor.pre-cookie-expiry-watch-20260710T072136Z.bak:23:PVE_BACKUP_HEALTH = Path(\"/var/lib/skladchik-reports-monitor-backup/health.txt\")\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor.pre-cookie-expiry-watch-20260710T072136Z.bak:24:PVE_RESTORE_HEALTH = Path(\"/var/lib/skladchik-reports-monitor-backup/restore-check-health.txt\")\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor.pre-cookie-expiry-watch-20260710T072136Z.bak:111:cat /var/lib/skladchik-reports-monitor/health.txt 2>/dev/null || true\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor.pre-cookie-expiry-watch-20260710T072136Z.bak:114:cat /var/lib/skladchik-reports-monitor/alert-health.txt 2>/dev/null || true\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor.pre-cookie-expiry-watch-20260710T072136Z.bak:126:test -s /var/lib/skladchik-reports-monitor/cookies.jar && echo cookies_jar=yes || echo cookies_jar=no\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-supervisor.pre-cookie-expiry-watch-20260710T072136Z.bak:127:[ -s /var/lib/skladchik-reports-monitor/cookies.jar ] && echo cookies_jar_bytes=$(stat -c %s /var/lib/skladchik-reports-monitor/cookies.jar 2>/dev/null) || echo cookies_jar_bytes=0\nDETAIL=DIR_CONTRACT_LINE=/usr/local/sbin/skladchik-reports-monitor-backup-status:4:cat /var/lib/skladchik-reports-monitor-backup/health.txt 2>/dev/null || true\nDETAIL=DIRECTORY_CONTRACT_REFERENCES_END\nDETAIL=SKLADCHIK_RUNTIME_LAYOUT_AUDIT=PASS\nCHANGES_MADE=NO\n"
}
