{ "schema_version": 1, "channel": "homelab-runtime", "command_id": "SUPPORT-260929-GRAM1-BEGET-FULL-HOME-DISCOVERY-9462R1", "status": "OK", "rc": 0, "host": "pve01", "mode": "change", "component": "gram1-beget-full-home-discovery", "started_at_utc": "2026-09-29T19:54:06Z", "finished_at_utc": "2026-09-29T19:54:06Z", "reference_register_checked": true, "reference_sha256": "5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66", "error_register_checked": true, "error_register_sha256": "3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0", "command_sha256": "91b1c90d92a20bf29ce003995d7578dac6b50cec895795dffeb879d5f1b8d01c", "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": "042f876ef36a9ac7e136f232e6b564e184fca90d14b07b51145d160e60b2a209", "sanitized_output_sha256": "042f876ef36a9ac7e136f232e6b564e184fca90d14b07b51145d160e60b2a209", "output_truncated_in_json": false, "full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt", "output": "GRAM1_BEGET_FULL_HOME_DISCOVERY=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\nPOST_CRON_TOTAL=0\nPOST_GRAM1_CRON_MATCH_COUNT=0\nTEMP_SCRIPT_REMOVED=true\nTEMP_RESULT_REMOVED=true\nTEMP_CRON_STATE_RESTORED=true\nTEMP_CLEANUP_COMPLETE=true\nGRAM1_BEGET_FULL_HOME_DISCOVERY=V1\nMODE=read-only-product\nAPP_PY_FILE_COUNT=1\nWORKER_PY_FILE_COUNT=1\nPORTFOLIO_DB_FILE_COUNT=1\nMARKET_JSON_FILE_COUNT=1\nPASSENGER_WSGI_FILE_COUNT=1\nAPP_PY_1_REL=gram1.ru/gram1_app_9154/app/app.py\nAPP_PY_1_SHA256=5f2fd1244ddc71484013f79d7789fa5884a5801641a66d48b833c616b55aed21\nWORKER_PY_1_REL=gram1.ru/gram1_app_9154/app/worker.py\nWORKER_PY_1_SHA256=4a7b16ece826fe2d938f392db6b0b5ca028dcb6ff02fdff4ab431f114edf0e5c\nPORTFOLIO_DB_1_REL=gram1.ru/gram1_app_9154/app/data/portfolio.db\nPORTFOLIO_DB_1_PRESENT=true\nPORTFOLIO_DB_1_SIZE=8527872\nPORTFOLIO_DB_1_AGE_SECONDS=448791\nPORTFOLIO_DB_1_SHA256=56acaa90eedb79a82955382f6076e14ff7dc9bcf354e1a72b870cdbd8e30be7d\nMARKET_JSON_1_REL=gram1.ru/gram1_app_9154/app/data/market.json\nMARKET_JSON_1_PRESENT=true\nMARKET_JSON_1_SIZE=14111\nMARKET_JSON_1_AGE_SECONDS=448832\nMARKET_JSON_1_SHA256=350643bed9a5b8f0fc2a28a61f2e4fe7114fb1a9208c6d6a2fa72c3296bb461e\nPASSENGER_WSGI_1_REL=gram1.ru/passenger_wsgi.py\nPASSENGER_WSGI_1_SHA256=d2a4d708a14292e9be827ce95d3a1324b73879ef77c0cd9fc308e8efa4cd6d9b\nPASSENGER_WSGI_1_REF_COUNT=1\nPASSENGER_WSGI_1_REF_1=gram1.ru/gram1_app_9154\nCOHERENT_APP_ROOT_COUNT=1\nAPP_ROOT_1_REL=gram1.ru/gram1_app_9154/app\nAPP_ROOT_1_APP_PY_PRESENT=true\nAPP_ROOT_1_APP_PY_SIZE=33191\nAPP_ROOT_1_APP_PY_AGE_SECONDS=448788\nAPP_ROOT_1_APP_PY_SHA256=5f2fd1244ddc71484013f79d7789fa5884a5801641a66d48b833c616b55aed21\nAPP_ROOT_1_WORKER_PY_PRESENT=true\nAPP_ROOT_1_WORKER_PY_SIZE=10300\nAPP_ROOT_1_WORKER_PY_AGE_SECONDS=5124602\nAPP_ROOT_1_WORKER_PY_SHA256=4a7b16ece826fe2d938f392db6b0b5ca028dcb6ff02fdff4ab431f114edf0e5c\nAPP_ROOT_1_PORTFOLIO_DB_PRESENT=true\nAPP_ROOT_1_PORTFOLIO_DB_SIZE=8527872\nAPP_ROOT_1_PORTFOLIO_DB_AGE_SECONDS=448791\nAPP_ROOT_1_PORTFOLIO_DB_SHA256=56acaa90eedb79a82955382f6076e14ff7dc9bcf354e1a72b870cdbd8e30be7d\nAPP_ROOT_1_MARKET_JSON_PRESENT=true\nAPP_ROOT_1_MARKET_JSON_SIZE=14111\nAPP_ROOT_1_MARKET_JSON_AGE_SECONDS=448832\nAPP_ROOT_1_MARKET_JSON_SHA256=350643bed9a5b8f0fc2a28a61f2e4fe7114fb1a9208c6d6a2fa72c3296bb461e\nAPP_ROOT_1_KLINES_JSON_PRESENT=false\nAPP_ROOT_1_KLINES_JSON_SIZE=-1\nAPP_ROOT_1_KLINES_JSON_AGE_SECONDS=-1\nAPP_ROOT_1_KLINES_JSON_SHA256=NONE\nAPP_ROOT_1_WORKER_STATUS_JSON_PRESENT=false\nAPP_ROOT_1_WORKER_STATUS_JSON_SIZE=-1\nAPP_ROOT_1_WORKER_STATUS_JSON_AGE_SECONDS=-1\nAPP_ROOT_1_WORKER_STATUS_JSON_SHA256=NONE\nAPP_ROOT_1_SQLITE_INTEGRITY=PASS\nTARGET_WORKER_PROCESS_COUNT=0\nTARGET_WORKER_PROCESS_SET_SHA256=e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\nTARGET_GRAM1_CRONTAB_MATCH_COUNT=0\nTARGET_SELF_HEALTH_RC=0\nTARGET_SELF_HEALTH_META=200|0.481063\nTARGET_SELF_HEALTH_STATUS=OK\nTARGET_SELF_HEALTH_TYPE=crypto-portfolio\nTARGET_SELF_MARKET_AGE_SECONDS=448834\nDISCOVERY_FINISHED_UTC=2026-09-29T19:54:03Z\nDISCOVERY_RC=0\nDECISION=GRAM1_ACTIVE_ROOT_PROVEN_WORKER_OFF_DATA_STALE\nNEXT_GATE=SOURCE_TARGET_HASH_AND_FRESHNESS_RECONCILE\nTASK_RESULT=PASS_GRAM1_BEGET_FULL_HOME_DISCOVERY\nCHANGES_MADE=true\nROLLBACK_STARTED=false\nROLLBACK_RESTORED=null\nMUTATION_OUTCOME=TEMP_DISCOVERY_ARTIFACTS_CREATED_AND_REMOVED\nHOMELAB_RESULT_CONTRACT={\"version\":1,\"command_id\":\"SUPPORT-260929-GRAM1-BEGET-FULL-HOME-DISCOVERY-9462R1\",\"status\":\"OK\",\"changes_made\":true,\"rollback_started\":false,\"rollback_restored\":null}\n" }