{ "schema_version": 1, "channel": "homelab-runtime", "command_id": "SUPPORT-260929-GRAM1-BEGET-TARGET-API-FTPS-AUDIT-9459R1", "status": "OK", "rc": 0, "host": "pve01", "mode": "change", "component": "gram1-beget-target-api-ftps-audit", "started_at_utc": "2026-09-29T19:43:07Z", "finished_at_utc": "2026-09-29T19:43:07Z", "reference_register_checked": true, "reference_sha256": "5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66", "error_register_checked": true, "error_register_sha256": "3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0", "command_sha256": "498943139b41c92c1b8a9ac2ddb39fd9d2d3fd7799ed1a2d788b10488940a0ba", "duplicate_failed_command_blocked": false, "block_reason": null, "execution_started": true, "change_declared": true, "result_contract_valid": true, "result_contract_status": "OK", "result_contract_error": null, "command_rc": 0, "changes_made": true, "rollback_started": false, "rollback_restored": null, "mutation_outcome": "MUTATED", "sanitized": true, "secrets_included": false, "private_addresses_included": false, "raw_evidence_retained_locally": true, "raw_evidence_sha256": "db5235a9589e1e6db2431ae5f8c925e566270eae324ea2b9d12f2df3b8bdb6ca", "sanitized_output_sha256": "db5235a9589e1e6db2431ae5f8c925e566270eae324ea2b9d12f2df3b8bdb6ca", "output_truncated_in_json": false, "full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt", "output": "GRAM1_BEGET_TARGET_AUDIT=V1\nMODE=diagnostic-change\nPRODUCT_MUTATION=false\nLOCAL_CREDENTIAL_CACHE_OK=true\nTEMP_SCRIPT_UPLOADED=true\nTEMP_CRON_ADDED=true\nTEMP_RESULT_SEEN=true\nPRE_CRON_TOTAL=0\nPRE_GRAM1_CRON_MATCH_COUNT=0\nPRE_GRAM1_CRON_SET_SHA256=NONE\nPOST_CRON_TOTAL=0\nPOST_GRAM1_CRON_MATCH_COUNT=0\nPOST_GRAM1_CRON_SET_SHA256=NONE\nTEMP_SCRIPT_REMOVED=true\nTEMP_RESULT_REMOVED=true\nTEMP_CRON_STATE_RESTORED=true\nTEMP_CLEANUP_COMPLETE=true\nGRAM1_BEGET_TARGET_AUDIT=V1\nMODE=read-only-product\nTARGET_APP_DIR_PRESENT=true\nTARGET_APP_PY_PRESENT=false\nTARGET_APP_PY_SIZE=-1\nTARGET_APP_PY_AGE_SECONDS=-1\nTARGET_APP_PY_SHA256=NONE\nTARGET_WORKER_PY_PRESENT=false\nTARGET_WORKER_PY_SIZE=-1\nTARGET_WORKER_PY_AGE_SECONDS=-1\nTARGET_WORKER_PY_SHA256=NONE\nTARGET_PORTFOLIO_DB_PRESENT=false\nTARGET_PORTFOLIO_DB_SIZE=-1\nTARGET_PORTFOLIO_DB_AGE_SECONDS=-1\nTARGET_PORTFOLIO_DB_SHA256=NONE\nTARGET_MARKET_JSON_PRESENT=false\nTARGET_MARKET_JSON_SIZE=-1\nTARGET_MARKET_JSON_AGE_SECONDS=-1\nTARGET_MARKET_JSON_SHA256=NONE\nTARGET_KLINES_JSON_PRESENT=false\nTARGET_KLINES_JSON_SIZE=-1\nTARGET_KLINES_JSON_AGE_SECONDS=-1\nTARGET_KLINES_JSON_SHA256=NONE\nTARGET_WORKER_STATUS_JSON_PRESENT=false\nTARGET_WORKER_STATUS_JSON_SIZE=-1\nTARGET_WORKER_STATUS_JSON_AGE_SECONDS=-1\nTARGET_WORKER_STATUS_JSON_SHA256=NONE\nTARGET_PORTFOLIO_DB_SQLITE_INTEGRITY=UNKNOWN\nTARGET_WORKER_PROCESS_COUNT=0\nTARGET_WORKER_PROCESS_SET_SHA256=e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\nTARGET_WORKER_ARTIFACT_COUNT=3\nTARGET_WORKER_ARTIFACT_SET_SHA256=a487194dd126adba865999bd7bd24f37db6c4a9eabecd90b32eef28f7b586b0b\nTARGET_PASSENGER_WSGI_COUNT=1\nTARGET_PASSENGER_WSGI_SHA256=d2a4d708a14292e9be827ce95d3a1324b73879ef77c0cd9fc308e8efa4cd6d9b\nTARGET_HTACCESS_PRESENT=true\nTARGET_HTACCESS_SHA256=abe64afb0df5bfd4e3f408b6e3599a9c2b190b1ab5199f22a1c0319d2af85aff\nTARGET_HTACCESS_PASSENGER_ENABLED=true\nTARGET_HTACCESS_PASSENGER_PYTHON=true\nTARGET_RECENT_ERROR_LOG_FILE_COUNT=0\nTARGET_RECENT_ERROR_MATCH_LINE_COUNT=0\nTARGET_RECENT_ERROR_MATCH_SET_SHA256=NONE\nTARGET_ERROR_TRACEBACK_COUNT=0\nTARGET_ERROR_PERMISSION_COUNT=0\nTARGET_ERROR_MODULE_COUNT=0\nTARGET_ERROR_SQLITE_COUNT=0\nAUDIT_FINISHED_UTC=2026-09-29T19:43:02Z\nAUDIT_RC=0\nDECISION=GRAM1_TARGET_STATE_REQUIRES_RECONCILE\nNEXT_GATE=TARGET_SPECIFIC_RECONCILE\nTASK_RESULT=HOLD_GRAM1_BEGET_TARGET_API_FTPS_AUDIT\nCHANGES_MADE=true\nROLLBACK_STARTED=false\nROLLBACK_RESTORED=null\nMUTATION_OUTCOME=TEMP_DIAGNOSTIC_ARTIFACTS_CREATED_AND_REMOVED\nHOMELAB_RESULT_CONTRACT={\"version\":1,\"command_id\":\"SUPPORT-260929-GRAM1-BEGET-TARGET-API-FTPS-AUDIT-9459R1\",\"status\":\"OK\",\"changes_made\":true,\"rollback_started\":false,\"rollback_restored\":null}\n" }