From 0fc4531e934884111a674011157c14a2df8c8e13 Mon Sep 17 00:00:00 2001 From: homelab-runtime-publisher Date: Sun, 26 Jul 2026 20:50:11 +0000 Subject: [PATCH] runtime: publish RUNNER-MUTATION-CONTRACT-PLAN-20260726T204219Z --- ...TATION-CONTRACT-PLAN-20260726T204219Z.json | 30 +++++++++++++++++++ ...UTATION-CONTRACT-PLAN-20260726T204219Z.txt | 25 ++++++++++++++++ runtime/latest.json | 22 +++++++------- runtime/latest.txt | 18 +++++------ 4 files changed, 75 insertions(+), 20 deletions(-) create mode 100644 runtime/history/RUNNER-MUTATION-CONTRACT-PLAN-20260726T204219Z.json create mode 100644 runtime/history/RUNNER-MUTATION-CONTRACT-PLAN-20260726T204219Z.txt diff --git a/runtime/history/RUNNER-MUTATION-CONTRACT-PLAN-20260726T204219Z.json b/runtime/history/RUNNER-MUTATION-CONTRACT-PLAN-20260726T204219Z.json new file mode 100644 index 0000000..38b20e8 --- /dev/null +++ b/runtime/history/RUNNER-MUTATION-CONTRACT-PLAN-20260726T204219Z.json @@ -0,0 +1,30 @@ +{ + "schema_version": 1, + "channel": "homelab-runtime", + "command_id": "RUNNER-MUTATION-CONTRACT-PLAN-20260726T204219Z", + "status": "OK", + "rc": 0, + "host": "pve01", + "mode": "verify", + "component": "runner", + "started_at_utc": "2026-07-26T20:50:10Z", + "finished_at_utc": "2026-07-26T20:50:10Z", + "reference_register_checked": true, + "reference_sha256": "5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e", + "error_register_checked": true, + "error_register_sha256": "24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83", + "command_sha256": "18ca7f1fb586bea8de09771fb8a2620d7c1e624494878d745b07a897fb6cb780", + "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": "65beaf599a688212c2299703e01dab946a652f2837f41a98f983eee7fadf9909", + "sanitized_output_sha256": "65beaf599a688212c2299703e01dab946a652f2837f41a98f983eee7fadf9909", + "output_truncated_in_json": false, + "full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt", + "output": "{\"PLAN_SHA256\":\"22eedf9b1090960a7f92cef992f481d8d6cc3f42e4f4ecd6e27bbda4ebf752bd\",\"changes_made\":false,\"command_id\":\"RUNNER-MUTATION-CONTRACT-PLAN-20260726T204219Z\",\"diff\":{\"additions\":285,\"deletions\":8,\"diff_sha256\":\"6ce1b41ad8de334ca804bccee03cae25ca600364473eee1677afde818cfcc192\",\"hunks\":8},\"mutating_states\":{\"closed\":[\"RUNNER-LINKED-REMOVAL-APPLY-20260726T202107Z\",\"RUNNER-LINKED-REMOVAL-APPLY-FINAL-20260726T202825Z\"],\"unresolved\":[]},\"plan\":{\"anti_regression\":[\"mode=change больше не означает changes_made=true\",\"повтор заблокированной команды считается NO_MUTATION\",\"несовпадающий command_id контракта блокируется\",\"несколько контрактов блокируются\",\"отсутствующий контракт блокируется с UNKNOWN\"],\"file\":\"/usr/local/sbin/homelab-chat-run\",\"next\":\"после APPLY обновить Adapter META/state, затем закрыть старые precondition-only записи\",\"operation\":\"УСТАНОВИТЬ_КОНТРАКТ_ФАКТИЧЕСКОЙ_МУТАЦИИ_RUNNER\",\"postconditions\":[\"target SHA совпадает\",\"bash -n проходит\",\"--self-test проходит\",\"verify/read-only всегда changes_made=false\",\"BLOCKED change с контрактом даёт changes_made=false\",\"change без контракта даёт changes_made=null и FAIL\",\"успешная мутация даёт changes_made=true\",\"успешный rollback даёт mutation_outcome=ROLLED_BACK\",\"Adapter и Portal не перезапускаются\"],\"preconditions\":{\"adapter_self_test\":true,\"adapter_здоров\":true,\"portal_identity_self_test\":true,\"portal_здоров\":true,\"известные_старые_попытки_закрыты\":true,\"нет_других_mutating_failure\":true,\"текущая_capsule_корректна\":true,\"точный_source_lock\":true},\"risk\":\"REVERSIBLE\",\"rollback\":{\"atomic_restore\":true,\"copy_before_apply\":true,\"copy_mode\":\"0600\",\"diagnostics_before_rollback\":true,\"verify_sha256\":\"2a88defef9517f89bc60934dce82097f8e316b08af9417e95167ea5d759a10d9\"},\"schema\":1,\"scope\":{\"backup_changed\":false,\"cluster_changed\":false,\"gitea_changed\":false,\"modify\":[\"/usr/local/sbin/homelab-chat-run\"],\"preserve\":[\"/usr/local/sbin/homelab-command-adapter\",\"/usr/local/sbin/homelab-command-portal\",\"/usr/local/sbin/homelab-chat-run-linked\"],\"service_restart\":false},\"source_evidence\":[\"d33b0cb4f775fb6bfb57d7681273a2ae9b3e884088ae794f1c152797cd03f6dd\",\"98474ad0c0c5ab2b6507c2469ea804b3c771f8a8f71c23a8238fd64ae1fe989d\"],\"source_sha256\":\"2a88defef9517f89bc60934dce82097f8e316b08af9417e95167ea5d759a10d9\",\"target\":\"pve01\",\"target_sha256\":\"b248a4c32c9cc64e5747e7dce6c7fc0a23f5124a77c71ce72e27a81aceae9d2d\"},\"rollback_started\":false,\"source_sha256\":\"2a88defef9517f89bc60934dce82097f8e316b08af9417e95167ea5d759a10d9\",\"static_tests\":{\"bash_syntax\":true,\"marker_контракта\":true,\"preexecution_block_no_mutation\":true,\"runner_self_test\":true,\"target_sha_отличается\":true,\"unknown_fail_closed\":true,\"нет_mode_change_equals_changed\":true},\"status\":\"PASS\",\"target_sha256\":\"b248a4c32c9cc64e5747e7dce6c7fc0a23f5124a77c71ce72e27a81aceae9d2d\"}\n" +} diff --git a/runtime/history/RUNNER-MUTATION-CONTRACT-PLAN-20260726T204219Z.txt b/runtime/history/RUNNER-MUTATION-CONTRACT-PLAN-20260726T204219Z.txt new file mode 100644 index 0000000..fd52f0c --- /dev/null +++ b/runtime/history/RUNNER-MUTATION-CONTRACT-PLAN-20260726T204219Z.txt @@ -0,0 +1,25 @@ +CHAT_OUTPUT_BEGIN +COMMAND_ID=RUNNER-MUTATION-CONTRACT-PLAN-20260726T204219Z +STATUS=OK +RC=0 +HOST=pve01 +MODE=verify +COMPONENT=runner +REFERENCE_REGISTER_CHECK=OK +REFERENCE_SHA256=5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e +ERROR_REGISTER_CHECK=OK +ERROR_REGISTER_SHA256=24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83 +COMMAND_SHA256=18ca7f1fb586bea8de09771fb8a2620d7c1e624494878d745b07a897fb6cb780 +DUPLICATE_FAILED_COMMAND_BLOCKED=false +EXECUTION_STARTED=true +CHANGES_MADE=false +SANITIZED=yes +SECRETS_INCLUDED=no +PRIVATE_ADDRESSES_INCLUDED=no +RAW_EVIDENCE_SHA256=65beaf599a688212c2299703e01dab946a652f2837f41a98f983eee7fadf9909 +SANITIZED_OUTPUT_SHA256=65beaf599a688212c2299703e01dab946a652f2837f41a98f983eee7fadf9909 +OUTPUT_BEGIN +{"PLAN_SHA256":"22eedf9b1090960a7f92cef992f481d8d6cc3f42e4f4ecd6e27bbda4ebf752bd","changes_made":false,"command_id":"RUNNER-MUTATION-CONTRACT-PLAN-20260726T204219Z","diff":{"additions":285,"deletions":8,"diff_sha256":"6ce1b41ad8de334ca804bccee03cae25ca600364473eee1677afde818cfcc192","hunks":8},"mutating_states":{"closed":["RUNNER-LINKED-REMOVAL-APPLY-20260726T202107Z","RUNNER-LINKED-REMOVAL-APPLY-FINAL-20260726T202825Z"],"unresolved":[]},"plan":{"anti_regression":["mode=change больше не означает changes_made=true","повтор заблокированной команды считается NO_MUTATION","несовпадающий command_id контракта блокируется","несколько контрактов блокируются","отсутствующий контракт блокируется с UNKNOWN"],"file":"/usr/local/sbin/homelab-chat-run","next":"после APPLY обновить Adapter META/state, затем закрыть старые precondition-only записи","operation":"УСТАНОВИТЬ_КОНТРАКТ_ФАКТИЧЕСКОЙ_МУТАЦИИ_RUNNER","postconditions":["target SHA совпадает","bash -n проходит","--self-test проходит","verify/read-only всегда changes_made=false","BLOCKED change с контрактом даёт changes_made=false","change без контракта даёт changes_made=null и FAIL","успешная мутация даёт changes_made=true","успешный rollback даёт mutation_outcome=ROLLED_BACK","Adapter и Portal не перезапускаются"],"preconditions":{"adapter_self_test":true,"adapter_здоров":true,"portal_identity_self_test":true,"portal_здоров":true,"известные_старые_попытки_закрыты":true,"нет_других_mutating_failure":true,"текущая_capsule_корректна":true,"точный_source_lock":true},"risk":"REVERSIBLE","rollback":{"atomic_restore":true,"copy_before_apply":true,"copy_mode":"0600","diagnostics_before_rollback":true,"verify_sha256":"2a88defef9517f89bc60934dce82097f8e316b08af9417e95167ea5d759a10d9"},"schema":1,"scope":{"backup_changed":false,"cluster_changed":false,"gitea_changed":false,"modify":["/usr/local/sbin/homelab-chat-run"],"preserve":["/usr/local/sbin/homelab-command-adapter","/usr/local/sbin/homelab-command-portal","/usr/local/sbin/homelab-chat-run-linked"],"service_restart":false},"source_evidence":["d33b0cb4f775fb6bfb57d7681273a2ae9b3e884088ae794f1c152797cd03f6dd","98474ad0c0c5ab2b6507c2469ea804b3c771f8a8f71c23a8238fd64ae1fe989d"],"source_sha256":"2a88defef9517f89bc60934dce82097f8e316b08af9417e95167ea5d759a10d9","target":"pve01","target_sha256":"b248a4c32c9cc64e5747e7dce6c7fc0a23f5124a77c71ce72e27a81aceae9d2d"},"rollback_started":false,"source_sha256":"2a88defef9517f89bc60934dce82097f8e316b08af9417e95167ea5d759a10d9","static_tests":{"bash_syntax":true,"marker_контракта":true,"preexecution_block_no_mutation":true,"runner_self_test":true,"target_sha_отличается":true,"unknown_fail_closed":true,"нет_mode_change_equals_changed":true},"status":"PASS","target_sha256":"b248a4c32c9cc64e5747e7dce6c7fc0a23f5124a77c71ce72e27a81aceae9d2d"} + +OUTPUT_END +CHAT_OUTPUT_END diff --git a/runtime/latest.json b/runtime/latest.json index b1956d4..38b20e8 100644 --- a/runtime/latest.json +++ b/runtime/latest.json @@ -1,30 +1,30 @@ { "schema_version": 1, "channel": "homelab-runtime", - "command_id": "RUNNER-LINKED-REMOVAL-APPLY-FINAL-20260726T202825Z", - "status": "FAIL", - "rc": 2, + "command_id": "RUNNER-MUTATION-CONTRACT-PLAN-20260726T204219Z", + "status": "OK", + "rc": 0, "host": "pve01", - "mode": "change", + "mode": "verify", "component": "runner", - "started_at_utc": "2026-07-26T20:30:51Z", - "finished_at_utc": "2026-07-26T20:30:52Z", + "started_at_utc": "2026-07-26T20:50:10Z", + "finished_at_utc": "2026-07-26T20:50:10Z", "reference_register_checked": true, "reference_sha256": "5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e", "error_register_checked": true, "error_register_sha256": "24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83", - "command_sha256": "043b5bc5530759244affed509e22f868271cf6b145d0271531d86ec342d7fb02", + "command_sha256": "18ca7f1fb586bea8de09771fb8a2620d7c1e624494878d745b07a897fb6cb780", "duplicate_failed_command_blocked": false, "block_reason": null, "execution_started": true, - "changes_made": true, + "changes_made": false, "sanitized": true, "secrets_included": false, "private_addresses_included": false, "raw_evidence_retained_locally": true, - "raw_evidence_sha256": "2b955106e013727b7506d472c868d43efbc226530202e72292e1444d839503e7", - "sanitized_output_sha256": "2b955106e013727b7506d472c868d43efbc226530202e72292e1444d839503e7", + "raw_evidence_sha256": "65beaf599a688212c2299703e01dab946a652f2837f41a98f983eee7fadf9909", + "sanitized_output_sha256": "65beaf599a688212c2299703e01dab946a652f2837f41a98f983eee7fadf9909", "output_truncated_in_json": false, "full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt", - "output": "{\"PLAN_SHA256\":\"8cb775587817330dd12296c2f17665110353bcd090330d9bef36e4b61a23541e\",\"changes_made\":false,\"mutating_state_classification\":{\"closed\":[],\"unresolved\":[\"RUNNER-LINKED-REMOVAL-APPLY-20260726T202107Z\"]},\"preconditions\":{\"adapter_healthy\":true,\"adapter_self_test\":true,\"current_capsule\":true,\"linked_regular\":true,\"no_other_mutating\":false,\"package_unmanaged\":true,\"plan_bound\":true,\"portal_health\":true,\"portal_healthy\":true,\"portal_self_test\":true,\"previous_blocked_attempt_closed\":false,\"source_lock\":true,\"zero_fds\":true,\"zero_live_refs\":true,\"zero_processes\":true},\"rollback_started\":false,\"status\":\"BLOCKED\"}\n" + "output": "{\"PLAN_SHA256\":\"22eedf9b1090960a7f92cef992f481d8d6cc3f42e4f4ecd6e27bbda4ebf752bd\",\"changes_made\":false,\"command_id\":\"RUNNER-MUTATION-CONTRACT-PLAN-20260726T204219Z\",\"diff\":{\"additions\":285,\"deletions\":8,\"diff_sha256\":\"6ce1b41ad8de334ca804bccee03cae25ca600364473eee1677afde818cfcc192\",\"hunks\":8},\"mutating_states\":{\"closed\":[\"RUNNER-LINKED-REMOVAL-APPLY-20260726T202107Z\",\"RUNNER-LINKED-REMOVAL-APPLY-FINAL-20260726T202825Z\"],\"unresolved\":[]},\"plan\":{\"anti_regression\":[\"mode=change больше не означает changes_made=true\",\"повтор заблокированной команды считается NO_MUTATION\",\"несовпадающий command_id контракта блокируется\",\"несколько контрактов блокируются\",\"отсутствующий контракт блокируется с UNKNOWN\"],\"file\":\"/usr/local/sbin/homelab-chat-run\",\"next\":\"после APPLY обновить Adapter META/state, затем закрыть старые precondition-only записи\",\"operation\":\"УСТАНОВИТЬ_КОНТРАКТ_ФАКТИЧЕСКОЙ_МУТАЦИИ_RUNNER\",\"postconditions\":[\"target SHA совпадает\",\"bash -n проходит\",\"--self-test проходит\",\"verify/read-only всегда changes_made=false\",\"BLOCKED change с контрактом даёт changes_made=false\",\"change без контракта даёт changes_made=null и FAIL\",\"успешная мутация даёт changes_made=true\",\"успешный rollback даёт mutation_outcome=ROLLED_BACK\",\"Adapter и Portal не перезапускаются\"],\"preconditions\":{\"adapter_self_test\":true,\"adapter_здоров\":true,\"portal_identity_self_test\":true,\"portal_здоров\":true,\"известные_старые_попытки_закрыты\":true,\"нет_других_mutating_failure\":true,\"текущая_capsule_корректна\":true,\"точный_source_lock\":true},\"risk\":\"REVERSIBLE\",\"rollback\":{\"atomic_restore\":true,\"copy_before_apply\":true,\"copy_mode\":\"0600\",\"diagnostics_before_rollback\":true,\"verify_sha256\":\"2a88defef9517f89bc60934dce82097f8e316b08af9417e95167ea5d759a10d9\"},\"schema\":1,\"scope\":{\"backup_changed\":false,\"cluster_changed\":false,\"gitea_changed\":false,\"modify\":[\"/usr/local/sbin/homelab-chat-run\"],\"preserve\":[\"/usr/local/sbin/homelab-command-adapter\",\"/usr/local/sbin/homelab-command-portal\",\"/usr/local/sbin/homelab-chat-run-linked\"],\"service_restart\":false},\"source_evidence\":[\"d33b0cb4f775fb6bfb57d7681273a2ae9b3e884088ae794f1c152797cd03f6dd\",\"98474ad0c0c5ab2b6507c2469ea804b3c771f8a8f71c23a8238fd64ae1fe989d\"],\"source_sha256\":\"2a88defef9517f89bc60934dce82097f8e316b08af9417e95167ea5d759a10d9\",\"target\":\"pve01\",\"target_sha256\":\"b248a4c32c9cc64e5747e7dce6c7fc0a23f5124a77c71ce72e27a81aceae9d2d\"},\"rollback_started\":false,\"source_sha256\":\"2a88defef9517f89bc60934dce82097f8e316b08af9417e95167ea5d759a10d9\",\"static_tests\":{\"bash_syntax\":true,\"marker_контракта\":true,\"preexecution_block_no_mutation\":true,\"runner_self_test\":true,\"target_sha_отличается\":true,\"unknown_fail_closed\":true,\"нет_mode_change_equals_changed\":true},\"status\":\"PASS\",\"target_sha256\":\"b248a4c32c9cc64e5747e7dce6c7fc0a23f5124a77c71ce72e27a81aceae9d2d\"}\n" } diff --git a/runtime/latest.txt b/runtime/latest.txt index 6a9b218..fd52f0c 100644 --- a/runtime/latest.txt +++ b/runtime/latest.txt @@ -1,25 +1,25 @@ CHAT_OUTPUT_BEGIN -COMMAND_ID=RUNNER-LINKED-REMOVAL-APPLY-FINAL-20260726T202825Z -STATUS=FAIL -RC=2 +COMMAND_ID=RUNNER-MUTATION-CONTRACT-PLAN-20260726T204219Z +STATUS=OK +RC=0 HOST=pve01 -MODE=change +MODE=verify COMPONENT=runner REFERENCE_REGISTER_CHECK=OK REFERENCE_SHA256=5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e ERROR_REGISTER_CHECK=OK ERROR_REGISTER_SHA256=24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83 -COMMAND_SHA256=043b5bc5530759244affed509e22f868271cf6b145d0271531d86ec342d7fb02 +COMMAND_SHA256=18ca7f1fb586bea8de09771fb8a2620d7c1e624494878d745b07a897fb6cb780 DUPLICATE_FAILED_COMMAND_BLOCKED=false EXECUTION_STARTED=true -CHANGES_MADE=true +CHANGES_MADE=false SANITIZED=yes SECRETS_INCLUDED=no PRIVATE_ADDRESSES_INCLUDED=no -RAW_EVIDENCE_SHA256=2b955106e013727b7506d472c868d43efbc226530202e72292e1444d839503e7 -SANITIZED_OUTPUT_SHA256=2b955106e013727b7506d472c868d43efbc226530202e72292e1444d839503e7 +RAW_EVIDENCE_SHA256=65beaf599a688212c2299703e01dab946a652f2837f41a98f983eee7fadf9909 +SANITIZED_OUTPUT_SHA256=65beaf599a688212c2299703e01dab946a652f2837f41a98f983eee7fadf9909 OUTPUT_BEGIN -{"PLAN_SHA256":"8cb775587817330dd12296c2f17665110353bcd090330d9bef36e4b61a23541e","changes_made":false,"mutating_state_classification":{"closed":[],"unresolved":["RUNNER-LINKED-REMOVAL-APPLY-20260726T202107Z"]},"preconditions":{"adapter_healthy":true,"adapter_self_test":true,"current_capsule":true,"linked_regular":true,"no_other_mutating":false,"package_unmanaged":true,"plan_bound":true,"portal_health":true,"portal_healthy":true,"portal_self_test":true,"previous_blocked_attempt_closed":false,"source_lock":true,"zero_fds":true,"zero_live_refs":true,"zero_processes":true},"rollback_started":false,"status":"BLOCKED"} +{"PLAN_SHA256":"22eedf9b1090960a7f92cef992f481d8d6cc3f42e4f4ecd6e27bbda4ebf752bd","changes_made":false,"command_id":"RUNNER-MUTATION-CONTRACT-PLAN-20260726T204219Z","diff":{"additions":285,"deletions":8,"diff_sha256":"6ce1b41ad8de334ca804bccee03cae25ca600364473eee1677afde818cfcc192","hunks":8},"mutating_states":{"closed":["RUNNER-LINKED-REMOVAL-APPLY-20260726T202107Z","RUNNER-LINKED-REMOVAL-APPLY-FINAL-20260726T202825Z"],"unresolved":[]},"plan":{"anti_regression":["mode=change больше не означает changes_made=true","повтор заблокированной команды считается NO_MUTATION","несовпадающий command_id контракта блокируется","несколько контрактов блокируются","отсутствующий контракт блокируется с UNKNOWN"],"file":"/usr/local/sbin/homelab-chat-run","next":"после APPLY обновить Adapter META/state, затем закрыть старые precondition-only записи","operation":"УСТАНОВИТЬ_КОНТРАКТ_ФАКТИЧЕСКОЙ_МУТАЦИИ_RUNNER","postconditions":["target SHA совпадает","bash -n проходит","--self-test проходит","verify/read-only всегда changes_made=false","BLOCKED change с контрактом даёт changes_made=false","change без контракта даёт changes_made=null и FAIL","успешная мутация даёт changes_made=true","успешный rollback даёт mutation_outcome=ROLLED_BACK","Adapter и Portal не перезапускаются"],"preconditions":{"adapter_self_test":true,"adapter_здоров":true,"portal_identity_self_test":true,"portal_здоров":true,"известные_старые_попытки_закрыты":true,"нет_других_mutating_failure":true,"текущая_capsule_корректна":true,"точный_source_lock":true},"risk":"REVERSIBLE","rollback":{"atomic_restore":true,"copy_before_apply":true,"copy_mode":"0600","diagnostics_before_rollback":true,"verify_sha256":"2a88defef9517f89bc60934dce82097f8e316b08af9417e95167ea5d759a10d9"},"schema":1,"scope":{"backup_changed":false,"cluster_changed":false,"gitea_changed":false,"modify":["/usr/local/sbin/homelab-chat-run"],"preserve":["/usr/local/sbin/homelab-command-adapter","/usr/local/sbin/homelab-command-portal","/usr/local/sbin/homelab-chat-run-linked"],"service_restart":false},"source_evidence":["d33b0cb4f775fb6bfb57d7681273a2ae9b3e884088ae794f1c152797cd03f6dd","98474ad0c0c5ab2b6507c2469ea804b3c771f8a8f71c23a8238fd64ae1fe989d"],"source_sha256":"2a88defef9517f89bc60934dce82097f8e316b08af9417e95167ea5d759a10d9","target":"pve01","target_sha256":"b248a4c32c9cc64e5747e7dce6c7fc0a23f5124a77c71ce72e27a81aceae9d2d"},"rollback_started":false,"source_sha256":"2a88defef9517f89bc60934dce82097f8e316b08af9417e95167ea5d759a10d9","static_tests":{"bash_syntax":true,"marker_контракта":true,"preexecution_block_no_mutation":true,"runner_self_test":true,"target_sha_отличается":true,"unknown_fail_closed":true,"нет_mode_change_equals_changed":true},"status":"PASS","target_sha256":"b248a4c32c9cc64e5747e7dce6c7fc0a23f5124a77c71ce72e27a81aceae9d2d"} OUTPUT_END CHAT_OUTPUT_END