From 009a805b9689f4ba03ed13a8093a24aeef72cc90 Mon Sep 17 00:00:00 2001 From: homelab-runtime-publisher Date: Mon, 21 Sep 2026 02:32:48 +0000 Subject: [PATCH] runtime: publish NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337 --- ...60921-NEWFDOM-PEDIGREE217-RECOVERY337.json | 38 ++++++++++ ...260921-NEWFDOM-PEDIGREE217-RECOVERY337.txt | 50 +++++++++++++ runtime/latest.json | 16 ++-- runtime/latest.txt | 73 ++++++------------- 4 files changed, 118 insertions(+), 59 deletions(-) create mode 100644 runtime/history/NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337.json create mode 100644 runtime/history/NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337.txt diff --git a/runtime/history/NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337.json b/runtime/history/NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337.json new file mode 100644 index 00000000..cf4f3378 --- /dev/null +++ b/runtime/history/NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337.json @@ -0,0 +1,38 @@ +{ + "schema_version": 1, + "channel": "homelab-runtime", + "command_id": "NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337", + "status": "OK", + "rc": 0, + "host": "pve01", + "mode": "read-only", + "component": "newfi-pedigree217-recovery337-local-rca336", + "started_at_utc": "2026-09-21T02:32:47Z", + "finished_at_utc": "2026-09-21T02:32:47Z", + "reference_register_checked": true, + "reference_sha256": "5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66", + "error_register_checked": true, + "error_register_sha256": "3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0", + "command_sha256": "467e2acbdfcb12c377c9e5fa626f00eb81230c38eb1fcaa7e74c8398cabf73d3", + "duplicate_failed_command_blocked": false, + "block_reason": null, + "execution_started": true, + "change_declared": false, + "result_contract_valid": true, + "result_contract_status": null, + "result_contract_error": null, + "command_rc": 0, + "changes_made": false, + "rollback_started": false, + "rollback_restored": null, + "mutation_outcome": "NO_MUTATION", + "sanitized": true, + "secrets_included": false, + "private_addresses_included": false, + "raw_evidence_retained_locally": true, + "raw_evidence_sha256": "192cd2c69ce10cf90e4134a467adb44528e209ff69ff87b8d1fb6b4109ecfdff", + "sanitized_output_sha256": "192cd2c69ce10cf90e4134a467adb44528e209ff69ff87b8d1fb6b4109ecfdff", + "output_truncated_in_json": false, + "full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt", + "output": "REC337_BEGIN=true\nCOMMAND_ID=NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337\nMODE=read-only\nIMMUTABLE_PLAN_CHECK=PASS\nAUTHORITY={\"error\":{\"actual\":\"3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0\",\"expected\":\"3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0\",\"match\":true},\"reference\":{\"actual\":\"5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66\",\"expected\":\"5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66\",\"match\":true}}\nINPUT_SHA256=b2ddf6c598478d41eb2f1e234547fd1ac46851ce49075e630dae7fc49ab173dc\nINPUT_VALID=true\nLOCAL336_EVIDENCE={\"attempt_dir_present\":true,\"local_class\":\"OTHER_LOCAL_OR_UNPUBLISHED\",\"rc\":0,\"rc_present\":true,\"remote_sha256\":\"fb606632c2e0ca2797f7bcb10e7494a04c1e66cdbf71658b8473a211e799a5a1\",\"remote_sha_match\":true,\"stderr_bytes\":277,\"stderr_sha256\":\"d700c4fd816e608fa557a022bf5f1fa3d5c2ec54cf6d1ba65ac3fc11a19a0396\",\"stdout_bytes\":0,\"stdout_sha256\":\"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\"}\nDECISION=PASS_PEDIGREE217_RECOVERY337_RCA336_LOCAL_TRANSPORT_CLASSIFIED\nNEXT_GATE=REISSUE_PEDIGREE217_RCA_AFTER_RECOVERY337_WITH_FROZEN_CARRIER\nCHANGES_MADE=false\nROLLBACK_STARTED=false\nROLLBACK_RESTORED=null\nMUTATION_OUTCOME=NO_MUTATION\nACTIVE_MAJOR_STAGE=PEDIGREE217\nMAJOR_STAGES_REMAINING=5\nREC337_END=true\nHOMELAB_RESULT_CONTRACT={\"changes_made\":false,\"command_id\":\"NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337\",\"rollback_restored\":null,\"rollback_started\":false,\"status\":\"OK\",\"version\":1}\n" +} diff --git a/runtime/history/NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337.txt b/runtime/history/NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337.txt new file mode 100644 index 00000000..30bdded3 --- /dev/null +++ b/runtime/history/NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337.txt @@ -0,0 +1,50 @@ +CHAT_OUTPUT_BEGIN +COMMAND_ID=NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337 +STATUS=OK +RC=0 +HOST=pve01 +MODE=read-only +COMPONENT=newfi-pedigree217-recovery337-local-rca336 +REFERENCE_REGISTER_CHECK=OK +REFERENCE_SHA256=5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66 +ERROR_REGISTER_CHECK=OK +ERROR_REGISTER_SHA256=3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0 +COMMAND_SHA256=467e2acbdfcb12c377c9e5fa626f00eb81230c38eb1fcaa7e74c8398cabf73d3 +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=192cd2c69ce10cf90e4134a467adb44528e209ff69ff87b8d1fb6b4109ecfdff +SANITIZED_OUTPUT_SHA256=192cd2c69ce10cf90e4134a467adb44528e209ff69ff87b8d1fb6b4109ecfdff +OUTPUT_BEGIN +REC337_BEGIN=true +COMMAND_ID=NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337 +MODE=read-only +IMMUTABLE_PLAN_CHECK=PASS +AUTHORITY={"error":{"actual":"3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0","expected":"3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0","match":true},"reference":{"actual":"5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66","expected":"5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66","match":true}} +INPUT_SHA256=b2ddf6c598478d41eb2f1e234547fd1ac46851ce49075e630dae7fc49ab173dc +INPUT_VALID=true +LOCAL336_EVIDENCE={"attempt_dir_present":true,"local_class":"OTHER_LOCAL_OR_UNPUBLISHED","rc":0,"rc_present":true,"remote_sha256":"fb606632c2e0ca2797f7bcb10e7494a04c1e66cdbf71658b8473a211e799a5a1","remote_sha_match":true,"stderr_bytes":277,"stderr_sha256":"d700c4fd816e608fa557a022bf5f1fa3d5c2ec54cf6d1ba65ac3fc11a19a0396","stdout_bytes":0,"stdout_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"} +DECISION=PASS_PEDIGREE217_RECOVERY337_RCA336_LOCAL_TRANSPORT_CLASSIFIED +NEXT_GATE=REISSUE_PEDIGREE217_RCA_AFTER_RECOVERY337_WITH_FROZEN_CARRIER +CHANGES_MADE=false +ROLLBACK_STARTED=false +ROLLBACK_RESTORED=null +MUTATION_OUTCOME=NO_MUTATION +ACTIVE_MAJOR_STAGE=PEDIGREE217 +MAJOR_STAGES_REMAINING=5 +REC337_END=true +HOMELAB_RESULT_CONTRACT={"changes_made":false,"command_id":"NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337","rollback_restored":null,"rollback_started":false,"status":"OK","version":1} + +OUTPUT_END +CHAT_OUTPUT_END diff --git a/runtime/latest.json b/runtime/latest.json index 241380c3..cf4f3378 100644 --- a/runtime/latest.json +++ b/runtime/latest.json @@ -1,19 +1,19 @@ { "schema_version": 1, "channel": "homelab-runtime", - "command_id": "SUPPORT-260921-HOMELAB-BACKUP-GFS-DIRTY-TASK-RCA-READONLY-1030R1", + "command_id": "NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337", "status": "OK", "rc": 0, "host": "pve01", "mode": "read-only", - "component": "homelab-backup-gfs-dirty-task-rca", - "started_at_utc": "2026-09-21T02:30:51Z", - "finished_at_utc": "2026-09-21T02:30:52Z", + "component": "newfi-pedigree217-recovery337-local-rca336", + "started_at_utc": "2026-09-21T02:32:47Z", + "finished_at_utc": "2026-09-21T02:32:47Z", "reference_register_checked": true, "reference_sha256": "5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66", "error_register_checked": true, "error_register_sha256": "3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0", - "command_sha256": "7045251473b9b986be7411da3ca1e361d7158b97f80017ab93cc40fb00474618", + "command_sha256": "467e2acbdfcb12c377c9e5fa626f00eb81230c38eb1fcaa7e74c8398cabf73d3", "duplicate_failed_command_blocked": false, "block_reason": null, "execution_started": true, @@ -30,9 +30,9 @@ "secrets_included": false, "private_addresses_included": false, "raw_evidence_retained_locally": true, - "raw_evidence_sha256": "16f700abb07690dcd6fbcf11b671c2111c64f1b98751e4284ff0d906d9e80d61", - "sanitized_output_sha256": "16f700abb07690dcd6fbcf11b671c2111c64f1b98751e4284ff0d906d9e80d61", + "raw_evidence_sha256": "192cd2c69ce10cf90e4134a467adb44528e209ff69ff87b8d1fb6b4109ecfdff", + "sanitized_output_sha256": "192cd2c69ce10cf90e4134a467adb44528e209ff69ff87b8d1fb6b4109ecfdff", "output_truncated_in_json": false, "full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt", - "output": "WORKERS2_BACKUP_GFS_DIRTY_TASK_RCA_BEGIN=1\nCOMMAND_ID=SUPPORT-260921-HOMELAB-BACKUP-GFS-DIRTY-TASK-RCA-READONLY-1030R1\nMODE=read-only\nCOMPONENT=homelab-backup-gfs-dirty-task-rca\nHOST=pve01\nUID=0\nMUTATION_BOUNDARY=READ_ONLY_NO_REPO_WRITE_NO_GIT_FETCH_NO_GIT_COMMIT_NO_PUSH_NO_PRODUCTION_NO_SERVICE_ACTION_NO_BACKUP_NO_RESTORE_NO_RETENTION_NO_DELETE_NO_MAIL\nWORKTREE_BRANCH=cr-2026-1005-backup-v2-health-alerting-remediation\nWORKTREE_HEAD=46c6f9aaf8fa93ce9f0cee686f948704c1a61336\nWORKTREE_HEAD_EXPECTED=true\nWORKTREE_STATUS_LINES=[\" M tasks/backup-gfs-lifecycle-remediation-v1/task.json\"]\nDIRTY_PATHS=[\"tasks/backup-gfs-lifecycle-remediation-v1/task.json\"]\nONLY_TASK_JSON_DIRTY=true\nTASK_JSON_DIFF_RC=0\nTASK_JSON_DIFF_LINES=[\"diff --git a/tasks/backup-gfs-lifecycle-remediation-v1/task.json b/tasks/backup-gfs-lifecycle-remediation-v1/task.json\",\"index 89e5607..9d2f446 100644\",\"--- a/tasks/backup-gfs-lifecycle-remediation-v1/task.json\",\"+++ b/tasks/backup-gfs-lifecycle-remediation-v1/task.json\",\"@@ -42,32 +42,34 @@\",\" \\\"desired_state_clean\\\": false,\",\" \\\"failed_units_max\\\": 5\",\" },\",\" \\\"mutates\\\": [\",\" \\\"/var/lib/homelab-admin/staging/backup-gfs-lifecycle-remediation-v1\\\",\",\" \\\"/etc/homelab-backup/gfs-retention.json\\\",\",\" \\\"/usr/local/libexec/homelab-backup-gfs-policy\\\",\",\" \\\"systemd:homelab-backup-retention-gc.service\\\",\",\"- \\\"/var/lib/homelab-admin/seals/backup-gfs-lifecycle-remediation-v1.json\\\"\",\"+ \\\"/var/lib/homelab-admin/seals/backup-gfs-lifecycle-remediation-v1.json\\\",\",\"+ \\\"systemd:homelab-backup-retention-gc.timer\\\"\",\" ],\",\" \\\"mutation_scope\\\": \\\"controlled_apply\\\",\",\" \\\"no_change_assertions\\\": [\",\" \\\"/etc/homelab-backup/targets.json exact bytes\\\",\",\" \\\"homelab-backup-v2 runtime and timer\\\",\",\"- \\\"homelab-backup-retention-gc timer schedule and enabled/active state\\\",\",\" \\\"all cloud backup generations and replica objects\\\",\",\" \\\"all restore evidence\\\",\",\" \\\"rclone configuration\\\",\",\" \\\"network\\\",\",\" \\\"dns\\\",\",\" \\\"known_hosts\\\",\",\" \\\"backup and restore execution count remains zero\\\",\",\" \\\"retention GC execution count remains zero\\\",\",\"- \\\"cloud delete count remains zero\\\"\",\"+ \\\"cloud delete count remains zero\\\",\",\"+ \\\"homelab-backup-retention-gc timer unit bytes and schedule unchanged; enablement intentionally held disabled/inactive after apply\\\",\",\"+ \\\"homelab-backup-retention-gc service never started by this task\\\"\",\" ],\",\" \\\"phases\\\": {\",\" \\\"apply\\\": \\\"phases/apply.sh\\\",\",\" \\\"dry-run\\\": \\\"phases/dry-run.sh\\\",\",\" \\\"preflight\\\": \\\"phases/preflight.sh\\\",\",\" \\\"prepare\\\": \\\"phases/prepare.sh\\\",\",\" \\\"rollback\\\": \\\"phases/rollback.sh\\\",\",\" \\\"seal\\\": \\\"phases/seal.sh\\\",\",\"@@ -92,27 +94,31 @@\",\" \\\"source_of_truth\\\": {\",\" \\\"baseline_helper_sha256\\\": \\\"6b7ec1ab3ee1c540a9113b5620c3b4b5a50de6536f3a069d31b2e1243f23bafa\\\",\",\" \\\"baseline_policy_sha256\\\": \\\"ea6526bec7d7591bef876799cecddff4849631a936edc9f593b47211fbad715c\\\",\",\" \\\"candidate_helper_sha256\\\": \\\"a1aed0c6039f8095bd5da7f62b47f4ee6932df98c4e0e7420d3006df86bd5c94\\\",\",\" \\\"candidate_policy_sha256\\\": \\\"2c7674045dd5c68cc48d348d616494dbbe145df460a8e85d97a2c5c153ec792d\\\",\",\" \\\"change_id\\\": \\\"CR-2026-1005\\\",\",\" \\\"cloud_deletes\\\": false,\",\" \\\"cloud_writes\\\": false,\",\"+ \\\"package_parent_commit\\\": \\\"46c6f9aaf8fa93ce9f0cee686f948704c1a61336\\\",\",\" \\\"parent_commit\\\": \\\"0d62d4a2077047b9b040a9378085ece09dd15883\\\",\",\"+ \\\"retention_timer_hold_after_apply\\\": true,\",\"+ \\\"retention_timer_reenable_requires_future_safe_plan\\\": true,\",\" \\\"target_registry_sha256\\\": \\\"6ecf034ca03b52a1e6beceeae81d86a623885462c095d50b133aea4048a4626e\\\"\",\" },\",\" \\\"target_host\\\": \\\"pve01.gram1.ru\\\",\",\" \\\"task_id\\\": \\\"backup-gfs-lifecycle-remediation-v1\\\",\",\" \\\"writes\\\": [\",\" \\\"/var/lib/homelab-admin/staging/backup-gfs-lifecycle-remediation-v1\\\",\",\" \\\"/etc/homelab-backup/gfs-retention.json\\\",\",\" \\\"/usr/local/libexec/homelab-backup-gfs-policy\\\",\",\" \\\"/var/lib/homelab-admin/seals/backup-gfs-lifecycle-remediation-v1.json\\\",\",\" \\\"$HOMELAB_RUN_DIR/preflight.json\\\",\",\" \\\"$HOMELAB_RUN_DIR/prepare.json\\\",\",\" \\\"$HOMELAB_RUN_DIR/dry-run.json\\\",\",\" \\\"$HOMELAB_RUN_DIR/apply.json\\\",\",\" \\\"$HOMELAB_RUN_DIR/verify.json\\\",\",\" \\\"$HOMELAB_RUN_DIR/rollback.json\\\",\",\"- \\\"$HOMELAB_RUN_DIR/seal.json\\\"\",\"+ \\\"$HOMELAB_RUN_DIR/seal.json\\\",\",\"+ \\\"systemd:homelab-backup-retention-gc.timer\\\"\",\" ]\",\" }\"]\nTASK_JSON_DIFF_SHA256=4b0f0bf4cb0d00d48e702d78823ab8bf2842c854d665bfd33bcc997d163c09b1\nHEAD_TASK_JSON_SHA256=665319f09578db5e0f5b3260517c470cf21fe4f6da6366886f8f283c8a895cd0\nWORK_TASK_JSON_SHA256=861bac805089ed92400df50824d3afeb5dbf312d96f268a8351a1f5e64f719a7\nTASK_JSON_SEMANTIC_CHANGES=[{\"after\":[\"/var/lib/homelab-admin/staging/backup-gfs-lifecycle-remediation-v1\",\"/etc/homelab-backup/gfs-retention.json\",\"/usr/local/libexec/homelab-backup-gfs-policy\",\"systemd:homelab-backup-retention-gc.service\",\"/var/lib/homelab-admin/seals/backup-gfs-lifecycle-remediation-v1.json\",\"systemd:homelab-backup-retention-gc.timer\"],\"before\":[\"/var/lib/homelab-admin/staging/backup-gfs-lifecycle-remediation-v1\",\"/etc/homelab-backup/gfs-retention.json\",\"/usr/local/libexec/homelab-backup-gfs-policy\",\"systemd:homelab-backup-retention-gc.service\",\"/var/lib/homelab-admin/seals/backup-gfs-lifecycle-remediation-v1.json\"],\"change\":\"list_changed\",\"path\":\"$.mutates\"},{\"after\":[\"/etc/homelab-backup/targets.json exact bytes\",\"homelab-backup-v2 runtime and timer\",\"all cloud backup generations and replica objects\",\"all restore evidence\",\"rclone configuration\",\"network\",\"dns\",\"known_hosts\",\"backup and restore execution count remains zero\",\"retention GC execution count remains zero\",\"cloud delete count remains zero\",\"homelab-backup-retention-gc timer unit bytes and schedule unchanged; enablement intentionally held disabled/inactive after apply\",\"homelab-backup-retention-gc service never started by this task\"],\"before\":[\"/etc/homelab-backup/targets.json exact bytes\",\"homelab-backup-v2 runtime and timer\",\"homelab-backup-retention-gc timer schedule and enabled/active state\",\"all cloud backup generations and replica objects\",\"all restore evidence\",\"rclone configuration\",\"network\",\"dns\",\"known_hosts\",\"backup and restore execution count remains zero\",\"retention GC execution count remains zero\",\"cloud delete count remains zero\"],\"change\":\"list_changed\",\"path\":\"$.no_change_assertions\"},{\"after\":\"46c6f9aaf8fa93ce9f0cee686f948704c1a61336\",\"change\":\"added\",\"path\":\"$.source_of_truth.package_parent_commit\"},{\"after\":true,\"change\":\"added\",\"path\":\"$.source_of_truth.retention_timer_hold_after_apply\"},{\"after\":true,\"change\":\"added\",\"path\":\"$.source_of_truth.retention_timer_reenable_requires_future_safe_plan\"},{\"after\":[\"/var/lib/homelab-admin/staging/backup-gfs-lifecycle-remediation-v1\",\"/etc/homelab-backup/gfs-retention.json\",\"/usr/local/libexec/homelab-backup-gfs-policy\",\"/var/lib/homelab-admin/seals/backup-gfs-lifecycle-remediation-v1.json\",\"$HOMELAB_RUN_DIR/preflight.json\",\"$HOMELAB_RUN_DIR/prepare.json\",\"$HOMELAB_RUN_DIR/dry-run.json\",\"$HOMELAB_RUN_DIR/apply.json\",\"$HOMELAB_RUN_DIR/verify.json\",\"$HOMELAB_RUN_DIR/rollback.json\",\"$HOMELAB_RUN_DIR/seal.json\",\"systemd:homelab-backup-retention-gc.timer\"],\"before\":[\"/var/lib/homelab-admin/staging/backup-gfs-lifecycle-remediation-v1\",\"/etc/homelab-backup/gfs-retention.json\",\"/usr/local/libexec/homelab-backup-gfs-policy\",\"/var/lib/homelab-admin/seals/backup-gfs-lifecycle-remediation-v1.json\",\"$HOMELAB_RUN_DIR/preflight.json\",\"$HOMELAB_RUN_DIR/prepare.json\",\"$HOMELAB_RUN_DIR/dry-run.json\",\"$HOMELAB_RUN_DIR/apply.json\",\"$HOMELAB_RUN_DIR/verify.json\",\"$HOMELAB_RUN_DIR/rollback.json\",\"$HOMELAB_RUN_DIR/seal.json\"],\"change\":\"list_changed\",\"path\":\"$.writes\"}]\nTASK_JSON_SEMANTIC_CHANGE_COUNT=6\nHEAD_TASK_FILE_TREE=[\"tasks/backup-gfs-lifecycle-remediation-v1/README.md\",\"tasks/backup-gfs-lifecycle-remediation-v1/assets/baseline-gfs-retention.json\",\"tasks/backup-gfs-lifecycle-remediation-v1/assets/baseline-homelab-backup-gfs-policy\",\"tasks/backup-gfs-lifecycle-remediation-v1/assets/gfs-retention.json\",\"tasks/backup-gfs-lifecycle-remediation-v1/assets/homelab-backup-gfs-policy\",\"tasks/backup-gfs-lifecycle-remediation-v1/assets/targets.json\",\"tasks/backup-gfs-lifecycle-remediation-v1/phases/apply.sh\",\"tasks/backup-gfs-lifecycle-remediation-v1/phases/dry-run.sh\",\"tasks/backup-gfs-lifecycle-remediation-v1/phases/preflight.sh\",\"tasks/backup-gfs-lifecycle-remediation-v1/phases/prepare.sh\",\"tasks/backup-gfs-lifecycle-remediation-v1/phases/rollback.sh\",\"tasks/backup-gfs-lifecycle-remediation-v1/phases/seal.sh\",\"tasks/backup-gfs-lifecycle-remediation-v1/phases/verify.sh\",\"tasks/backup-gfs-lifecycle-remediation-v1/task.json\"]\nHEAD_TASK_FILE_COUNT=14\nHEAD_TOOLS_COMMON_EXISTS=false\nHEAD_PHASE_STRUCTURE=[{\"anchor_counts\":{\"check_no_active_backup_call\":1,\"check_no_active_backup_def\":1,\"require_assets_def\":1,\"require_live_baseline_def\":1,\"rollback_now_def\":1,\"service_mentions\":1,\"timer_mentions\":0,\"validate_candidate_def\":1},\"focus_lines\":[{\"line\":2,\"text\":\"set -Eeuo pipefail\"},{\"line\":18,\"text\":\"die(){ echo \\\"ROOT_CAUSE=$1|ROOT_CAUSE_COUNT=1\\\" >&2; exit \\\"${2:-66}\\\"; }\"},{\"line\":19,\"text\":\"on_err(){ rc=$?; echo \\\"ROOT_CAUSE=UNEXPECTED_RUNTIME_FAILURE|ROOT_CAUSE_COUNT=1|RC=$rc\\\" >&2; exit \\\"$rc\\\"; }\"},{\"line\":20,\"text\":\"trap on_err ERR\"},{\"line\":21,\"text\":\"require_live_baseline(){\"},{\"line\":26,\"text\":\"require_assets(){\"},{\"line\":31,\"text\":\"validate_candidate(){\"},{\"line\":34,\"text\":\"check_no_active_backup(){\"},{\"line\":46,\"text\":\"rollback_now(){\"},{\"line\":47,\"text\":\" install -m 0644 -o root -g root \\\"$STAGE/gfs-retention.json\\\" \\\"$LIVE_POLICY\\\"\"},{\"line\":48,\"text\":\" install -m 0755 -o root -g root \\\"$STAGE/homelab-backup-gfs-policy\\\" \\\"$LIVE_HELPER\\\"\"},{\"line\":50,\"text\":\"trap 'rc=$?; rollback_now || true; echo \\\"ROOT_CAUSE=APPLY_FAILED|ROOT_CAUSE_COUNT=1|RC=$rc\\\" >&2; exit \\\"$rc\\\"' ERR\"},{\"line\":51,\"text\":\"install -m 0644 -o root -g root \\\"$ASSET_POLICY\\\" \\\"$LIVE_POLICY\\\"\"},{\"line\":52,\"text\":\"install -m 0755 -o root -g root \\\"$ASSET_HELPER\\\" \\\"$LIVE_HELPER\\\"\"},{\"line\":56,\"text\":\"systemctl reset-failed homelab-backup-retention-gc.service\"},{\"line\":57,\"text\":\"trap on_err ERR\"}],\"git_path\":\"tasks/backup-gfs-lifecycle-remediation-v1/phases/apply.sh\",\"line_count\":59,\"path\":\"phases/apply.sh\",\"phase\":\"apply\",\"rc\":0,\"sha256\":\"22d00f65cb8a2011d34e8d61ca07082c9722d59fe735152059884ac75666d81c\"},{\"anchor_counts\":{\"check_no_active_backup_call\":1,\"check_no_active_backup_def\":1,\"require_assets_def\":1,\"require_live_baseline_def\":1,\"rollback_now_def\":0,\"service_mentions\":0,\"timer_mentions\":0,\"validate_candidate_def\":1},\"focus_lines\":[{\"line\":2,\"text\":\"set -Eeuo pipefail\"},{\"line\":18,\"text\":\"die(){ echo \\\"ROOT_CAUSE=$1|ROOT_CAUSE_COUNT=1\\\" >&2; exit \\\"${2:-66}\\\"; }\"},{\"line\":19,\"text\":\"on_err(){ rc=$?; echo \\\"ROOT_CAUSE=UNEXPECTED_RUNTIME_FAILURE|ROOT_CAUSE_COUNT=1|RC=$rc\\\" >&2; exit \\\"$rc\\\"; }\"},{\"line\":20,\"text\":\"trap on_err ERR\"},{\"line\":21,\"text\":\"require_live_baseline(){\"},{\"line\":26,\"text\":\"require_assets(){\"},{\"line\":31,\"text\":\"validate_candidate(){\"},{\"line\":34,\"text\":\"check_no_active_backup(){\"}],\"git_path\":\"tasks/backup-gfs-lifecycle-remediation-v1/phases/dry-run.sh\",\"line_count\":52,\"path\":\"phases/dry-run.sh\",\"phase\":\"dry-run\",\"rc\":0,\"sha256\":\"9ce7dce7604a8f116c1b874f8348692d0c19eb7058e51ae4d2f2165a41f6cdba\"},{\"anchor_counts\":{\"check_no_active_backup_call\":0,\"check_no_active_backup_def\":1,\"require_assets_def\":1,\"require_live_baseline_def\":1,\"rollback_now_def\":0,\"service_mentions\":0,\"timer_mentions\":2,\"validate_candidate_def\":1},\"focus_lines\":[{\"line\":2,\"text\":\"set -Eeuo pipefail\"},{\"line\":18,\"text\":\"die(){ echo \\\"ROOT_CAUSE=$1|ROOT_CAUSE_COUNT=1\\\" >&2; exit \\\"${2:-66}\\\"; }\"},{\"line\":19,\"text\":\"on_err(){ rc=$?; echo \\\"ROOT_CAUSE=UNEXPECTED_RUNTIME_FAILURE|ROOT_CAUSE_COUNT=1|RC=$rc\\\" >&2; exit \\\"$rc\\\"; }\"},{\"line\":20,\"text\":\"trap on_err ERR\"},{\"line\":21,\"text\":\"require_live_baseline(){\"},{\"line\":26,\"text\":\"require_assets(){\"},{\"line\":31,\"text\":\"validate_candidate(){\"},{\"line\":34,\"text\":\"check_no_active_backup(){\"},{\"line\":42,\"text\":\"systemctl is-enabled --quiet homelab-backup-retention-gc.timer || die RETENTION_TIMER_NOT_ENABLED\"},{\"line\":43,\"text\":\"systemctl is-active --quiet homelab-backup-retention-gc.timer || die RETENTION_TIMER_NOT_ACTIVE\"}],\"git_path\":\"tasks/backup-gfs-lifecycle-remediation-v1/phases/preflight.sh\",\"line_count\":54,\"path\":\"phases/preflight.sh\",\"phase\":\"preflight\",\"rc\":0,\"sha256\":\"336de004b64c90eac8769dbd0e7e4d2637ae700d48149d000ec04b39355a5a6a\"},{\"anchor_counts\":{\"check_no_active_backup_call\":1,\"check_no_active_backup_def\":1,\"require_assets_def\":1,\"require_live_baseline_def\":1,\"rollback_now_def\":0,\"service_mentions\":0,\"timer_mentions\":0,\"validate_candidate_def\":1},\"focus_lines\":[{\"line\":2,\"text\":\"set -Eeuo pipefail\"},{\"line\":18,\"text\":\"die(){ echo \\\"ROOT_CAUSE=$1|ROOT_CAUSE_COUNT=1\\\" >&2; exit \\\"${2:-66}\\\"; }\"},{\"line\":19,\"text\":\"on_err(){ rc=$?; echo \\\"ROOT_CAUSE=UNEXPECTED_RUNTIME_FAILURE|ROOT_CAUSE_COUNT=1|RC=$rc\\\" >&2; exit \\\"$rc\\\"; }\"},{\"line\":20,\"text\":\"trap on_err ERR\"},{\"line\":21,\"text\":\"require_live_baseline(){\"},{\"line\":26,\"text\":\"require_assets(){\"},{\"line\":31,\"text\":\"validate_candidate(){\"},{\"line\":34,\"text\":\"check_no_active_backup(){\"}],\"git_path\":\"tasks/backup-gfs-lifecycle-remediation-v1/phases/prepare.sh\",\"line_count\":53,\"path\":\"phases/prepare.sh\",\"phase\":\"prepare\",\"rc\":0,\"sha256\":\"fe72a477297169f6bad1449032ab56b4b23a700aeb9828b3cb5b78304e020dba\"},{\"anchor_counts\":{\"check_no_active_backup_call\":0,\"check_no_active_backup_def\":1,\"require_assets_def\":1,\"require_live_baseline_def\":1,\"rollback_now_def\":0,\"service_mentions\":0,\"timer_mentions\":0,\"validate_candidate_def\":1},\"focus_lines\":[{\"line\":2,\"text\":\"set -Eeuo pipefail\"},{\"line\":18,\"text\":\"die(){ echo \\\"ROOT_CAUSE=$1|ROOT_CAUSE_COUNT=1\\\" >&2; exit \\\"${2:-66}\\\"; }\"},{\"line\":19,\"text\":\"on_err(){ rc=$?; echo \\\"ROOT_CAUSE=UNEXPECTED_RUNTIME_FAILURE|ROOT_CAUSE_COUNT=1|RC=$rc\\\" >&2; exit \\\"$rc\\\"; }\"},{\"line\":20,\"text\":\"trap on_err ERR\"},{\"line\":21,\"text\":\"require_live_baseline(){\"},{\"line\":26,\"text\":\"require_assets(){\"},{\"line\":31,\"text\":\"validate_candidate(){\"},{\"line\":34,\"text\":\"check_no_active_backup(){\"},{\"line\":43,\"text\":\"install -m 0644 -o root -g root \\\"$STAGE/gfs-retention.json\\\" \\\"$LIVE_POLICY\\\"\"},{\"line\":44,\"text\":\"install -m 0755 -o root -g root \\\"$STAGE/homelab-backup-gfs-policy\\\" \\\"$LIVE_HELPER\\\"\"}],\"git_path\":\"tasks/backup-gfs-lifecycle-remediation-v1/phases/rollback.sh\",\"line_count\":48,\"path\":\"phases/rollback.sh\",\"phase\":\"rollback\",\"rc\":0,\"sha256\":\"731594042479cdcb26a9bebb5852ab7e639541071195a235a671fc7e5562cd4a\"},{\"anchor_counts\":{\"check_no_active_backup_call\":0,\"check_no_active_backup_def\":1,\"require_assets_def\":1,\"require_live_baseline_def\":1,\"rollback_now_def\":0,\"service_mentions\":0,\"timer_mentions\":0,\"validate_candidate_def\":1},\"focus_lines\":[{\"line\":2,\"text\":\"set -Eeuo pipefail\"},{\"line\":18,\"text\":\"die(){ echo \\\"ROOT_CAUSE=$1|ROOT_CAUSE_COUNT=1\\\" >&2; exit \\\"${2:-66}\\\"; }\"},{\"line\":19,\"text\":\"on_err(){ rc=$?; echo \\\"ROOT_CAUSE=UNEXPECTED_RUNTIME_FAILURE|ROOT_CAUSE_COUNT=1|RC=$rc\\\" >&2; exit \\\"$rc\\\"; }\"},{\"line\":20,\"text\":\"trap on_err ERR\"},{\"line\":21,\"text\":\"require_live_baseline(){\"},{\"line\":26,\"text\":\"require_assets(){\"},{\"line\":31,\"text\":\"validate_candidate(){\"},{\"line\":34,\"text\":\"check_no_active_backup(){\"}],\"git_path\":\"tasks/backup-gfs-lifecycle-remediation-v1/phases/seal.sh\",\"line_count\":49,\"path\":\"phases/seal.sh\",\"phase\":\"seal\",\"rc\":0,\"sha256\":\"719d37dcff71ca0c944df2410e81d70574bdbeab4bc60cd79ac15b783405e56f\"},{\"anchor_counts\":{\"check_no_active_backup_call\":0,\"check_no_active_backup_def\":1,\"require_assets_def\":1,\"require_live_baseline_def\":1,\"rollback_now_def\":0,\"service_mentions\":1,\"timer_mentions\":2,\"validate_candidate_def\":1},\"focus_lines\":[{\"line\":2,\"text\":\"set -Eeuo pipefail\"},{\"line\":18,\"text\":\"die(){ echo \\\"ROOT_CAUSE=$1|ROOT_CAUSE_COUNT=1\\\" >&2; exit \\\"${2:-66}\\\"; }\"},{\"line\":19,\"text\":\"on_err(){ rc=$?; echo \\\"ROOT_CAUSE=UNEXPECTED_RUNTIME_FAILURE|ROOT_CAUSE_COUNT=1|RC=$rc\\\" >&2; exit \\\"$rc\\\"; }\"},{\"line\":20,\"text\":\"trap on_err ERR\"},{\"line\":21,\"text\":\"require_live_baseline(){\"},{\"line\":26,\"text\":\"require_assets(){\"},{\"line\":31,\"text\":\"validate_candidate(){\"},{\"line\":34,\"text\":\"check_no_active_backup(){\"},{\"line\":43,\"text\":\"mapfile -t CRIT < <(HOMELAB_BACKUP_GFS_POLICY=\\\"$LIVE_POLICY\\\" HOMELAB_BACKUP_TARGET_REGISTRY=\\\"$LIVE_REGISTRY\\\" \\\"$LIVE_HELPER\\\" critical-logicals)\"},{\"line\":46,\"text\":\"systemctl is-enabled --quiet homelab-backup-retention-gc.timer || die VERIFY_TIMER_NOT_ENABLED\"},{\"line\":47,\"text\":\"systemctl is-active --quiet homelab-backup-retention-gc.timer || die VERIFY_TIMER_NOT_ACTIVE\"},{\"line\":48,\"text\":\"if systemctl is-failed --quiet homelab-backup-retention-gc.service; then die VERIFY_RETENTION_SERVICE_FAILED; fi\"}],\"git_path\":\"tasks/backup-gfs-lifecycle-remediation-v1/phases/verify.sh\",\"line_count\":50,\"path\":\"phases/verify.sh\",\"phase\":\"verify\",\"rc\":0,\"sha256\":\"b3589070dc915211e091984800ec76976fef74669288440103bcb7c1eb69e0c4\"}]\nWORKING_TASK_LINT={\"rc\":0,\"stderr_lines\":[],\"stdout_lines\":[\"LINT_STATUS=OK\",\"TASK_ID=backup-gfs-lifecycle-remediation-v1\",\"POLICY_ID=homelab-admin-guardrails-v1.2\",\"RULES_CHECKED=14\",\"SOURCE_FILES_CHECKED=7\"]}\nWORKING_TASK_VALIDATE={\"rc\":0,\"stderr_lines\":[],\"stdout_lines\":[\"LINT_STATUS=OK\",\"TASK_ID=backup-gfs-lifecycle-remediation-v1\",\"POLICY_ID=homelab-admin-guardrails-v1.2\",\"RULES_CHECKED=14\",\"SOURCE_FILES_CHECKED=7\",\"TASK_VALID=YES\",\"TASK_ID=backup-gfs-lifecycle-remediation-v1\",\"TASK_SCOPE=controlled_apply\",\"PRODUCTION_CHANGE=YES\"]}\nLIVE_POLICY_META={\"exists\":true,\"expected\":\"ea6526bec7d7591bef876799cecddff4849631a936edc9f593b47211fbad715c\",\"match\":true,\"sha256\":\"ea6526bec7d7591bef876799cecddff4849631a936edc9f593b47211fbad715c\"}\nLIVE_HELPER_META={\"exists\":true,\"expected\":\"6b7ec1ab3ee1c540a9113b5620c3b4b5a50de6536f3a069d31b2e1243f23bafa\",\"match\":true,\"sha256\":\"6b7ec1ab3ee1c540a9113b5620c3b4b5a50de6536f3a069d31b2e1243f23bafa\"}\nLIVE_REGISTRY_META={\"exists\":true,\"expected\":\"6ecf034ca03b52a1e6beceeae81d86a623885462c095d50b133aea4048a4626e\",\"match\":true,\"sha256\":\"6ecf034ca03b52a1e6beceeae81d86a623885462c095d50b133aea4048a4626e\"}\nRETENTION_UNIT_STATE={\"homelab-backup-retention-gc.service\":{\"ActiveState\":{\"rc\":0,\"value\":\"failed\"},\"LastTriggerUSec\":{\"rc\":0,\"value\":\"\"},\"LoadState\":{\"rc\":0,\"value\":\"loaded\"},\"NextElapseUSecRealtime\":{\"rc\":0,\"value\":\"\"},\"Result\":{\"rc\":0,\"value\":\"exit-code\"},\"SubState\":{\"rc\":0,\"value\":\"failed\"},\"UnitFileState\":{\"rc\":0,\"value\":\"static\"}},\"homelab-backup-retention-gc.timer\":{\"ActiveState\":{\"rc\":0,\"value\":\"active\"},\"LastTriggerUSec\":{\"rc\":0,\"value\":\"Mon 2026-09-21 03:22:42 MSK\"},\"LoadState\":{\"rc\":0,\"value\":\"loaded\"},\"NextElapseUSecRealtime\":{\"rc\":0,\"value\":\"Tue 2026-09-22 03:32:10 MSK\"},\"Result\":{\"rc\":0,\"value\":\"success\"},\"SubState\":{\"rc\":0,\"value\":\"waiting\"},\"UnitFileState\":{\"rc\":0,\"value\":\"enabled\"}}}\nDIRTY_PROVENANCE_CLASSIFICATION={\"added_timer_mutate\":true,\"added_timer_write\":true,\"consistent_with_1028_pre_tools_common_patch\":true,\"source_hold\":true,\"source_reenable\":true}\nNO_MUTATION=true\nNO_REPO_WRITE=true\nNO_GIT_FETCH=true\nNO_GIT_COMMIT=true\nNO_GIT_PUSH_UPDATE=true\nNO_PRODUCTION_MUTATION=true\nNO_SERVICE_ACTION=true\nNO_BACKUP_STARTED=true\nNO_RESTORE_STARTED=true\nNO_RETENTION_STARTED=true\nNO_DELETE=true\nNO_MAIL_SENT=true\nRCA_DURATION_SEC=0.219\nTASK_RESULT=PASS_HOMELAB_BACKUP_GFS_DIRTY_TASK_RCA_READONLY\nHOMELAB_RESULT_CONTRACT={\"changes_made\":false,\"command_id\":\"SUPPORT-260921-HOMELAB-BACKUP-GFS-DIRTY-TASK-RCA-READONLY-1030R1\",\"rollback_restored\":null,\"rollback_started\":false,\"status\":\"OK\",\"version\":1}\nWORKERS2_BACKUP_GFS_DIRTY_TASK_RCA_END=1\n" + "output": "REC337_BEGIN=true\nCOMMAND_ID=NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337\nMODE=read-only\nIMMUTABLE_PLAN_CHECK=PASS\nAUTHORITY={\"error\":{\"actual\":\"3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0\",\"expected\":\"3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0\",\"match\":true},\"reference\":{\"actual\":\"5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66\",\"expected\":\"5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66\",\"match\":true}}\nINPUT_SHA256=b2ddf6c598478d41eb2f1e234547fd1ac46851ce49075e630dae7fc49ab173dc\nINPUT_VALID=true\nLOCAL336_EVIDENCE={\"attempt_dir_present\":true,\"local_class\":\"OTHER_LOCAL_OR_UNPUBLISHED\",\"rc\":0,\"rc_present\":true,\"remote_sha256\":\"fb606632c2e0ca2797f7bcb10e7494a04c1e66cdbf71658b8473a211e799a5a1\",\"remote_sha_match\":true,\"stderr_bytes\":277,\"stderr_sha256\":\"d700c4fd816e608fa557a022bf5f1fa3d5c2ec54cf6d1ba65ac3fc11a19a0396\",\"stdout_bytes\":0,\"stdout_sha256\":\"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\"}\nDECISION=PASS_PEDIGREE217_RECOVERY337_RCA336_LOCAL_TRANSPORT_CLASSIFIED\nNEXT_GATE=REISSUE_PEDIGREE217_RCA_AFTER_RECOVERY337_WITH_FROZEN_CARRIER\nCHANGES_MADE=false\nROLLBACK_STARTED=false\nROLLBACK_RESTORED=null\nMUTATION_OUTCOME=NO_MUTATION\nACTIVE_MAJOR_STAGE=PEDIGREE217\nMAJOR_STAGES_REMAINING=5\nREC337_END=true\nHOMELAB_RESULT_CONTRACT={\"changes_made\":false,\"command_id\":\"NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337\",\"rollback_restored\":null,\"rollback_started\":false,\"status\":\"OK\",\"version\":1}\n" } diff --git a/runtime/latest.txt b/runtime/latest.txt index 25584197..30bdded3 100644 --- a/runtime/latest.txt +++ b/runtime/latest.txt @@ -1,15 +1,15 @@ CHAT_OUTPUT_BEGIN -COMMAND_ID=SUPPORT-260921-HOMELAB-BACKUP-GFS-DIRTY-TASK-RCA-READONLY-1030R1 +COMMAND_ID=NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337 STATUS=OK RC=0 HOST=pve01 MODE=read-only -COMPONENT=homelab-backup-gfs-dirty-task-rca +COMPONENT=newfi-pedigree217-recovery337-local-rca336 REFERENCE_REGISTER_CHECK=OK REFERENCE_SHA256=5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66 ERROR_REGISTER_CHECK=OK ERROR_REGISTER_SHA256=3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0 -COMMAND_SHA256=7045251473b9b986be7411da3ca1e361d7158b97f80017ab93cc40fb00474618 +COMMAND_SHA256=467e2acbdfcb12c377c9e5fa626f00eb81230c38eb1fcaa7e74c8398cabf73d3 DUPLICATE_FAILED_COMMAND_BLOCKED=false EXECUTION_STARTED=true CHANGE_DECLARED=false @@ -24,56 +24,27 @@ MUTATION_OUTCOME=NO_MUTATION SANITIZED=yes SECRETS_INCLUDED=no PRIVATE_ADDRESSES_INCLUDED=no -RAW_EVIDENCE_SHA256=16f700abb07690dcd6fbcf11b671c2111c64f1b98751e4284ff0d906d9e80d61 -SANITIZED_OUTPUT_SHA256=16f700abb07690dcd6fbcf11b671c2111c64f1b98751e4284ff0d906d9e80d61 +RAW_EVIDENCE_SHA256=192cd2c69ce10cf90e4134a467adb44528e209ff69ff87b8d1fb6b4109ecfdff +SANITIZED_OUTPUT_SHA256=192cd2c69ce10cf90e4134a467adb44528e209ff69ff87b8d1fb6b4109ecfdff OUTPUT_BEGIN -WORKERS2_BACKUP_GFS_DIRTY_TASK_RCA_BEGIN=1 -COMMAND_ID=SUPPORT-260921-HOMELAB-BACKUP-GFS-DIRTY-TASK-RCA-READONLY-1030R1 +REC337_BEGIN=true +COMMAND_ID=NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337 MODE=read-only -COMPONENT=homelab-backup-gfs-dirty-task-rca -HOST=pve01 -UID=0 -MUTATION_BOUNDARY=READ_ONLY_NO_REPO_WRITE_NO_GIT_FETCH_NO_GIT_COMMIT_NO_PUSH_NO_PRODUCTION_NO_SERVICE_ACTION_NO_BACKUP_NO_RESTORE_NO_RETENTION_NO_DELETE_NO_MAIL -WORKTREE_BRANCH=cr-2026-1005-backup-v2-health-alerting-remediation -WORKTREE_HEAD=46c6f9aaf8fa93ce9f0cee686f948704c1a61336 -WORKTREE_HEAD_EXPECTED=true -WORKTREE_STATUS_LINES=[" M tasks/backup-gfs-lifecycle-remediation-v1/task.json"] -DIRTY_PATHS=["tasks/backup-gfs-lifecycle-remediation-v1/task.json"] -ONLY_TASK_JSON_DIRTY=true -TASK_JSON_DIFF_RC=0 -TASK_JSON_DIFF_LINES=["diff --git a/tasks/backup-gfs-lifecycle-remediation-v1/task.json b/tasks/backup-gfs-lifecycle-remediation-v1/task.json","index 89e5607..9d2f446 100644","--- a/tasks/backup-gfs-lifecycle-remediation-v1/task.json","+++ b/tasks/backup-gfs-lifecycle-remediation-v1/task.json","@@ -42,32 +42,34 @@"," \"desired_state_clean\": false,"," \"failed_units_max\": 5"," },"," \"mutates\": ["," \"/var/lib/homelab-admin/staging/backup-gfs-lifecycle-remediation-v1\","," \"/etc/homelab-backup/gfs-retention.json\","," \"/usr/local/libexec/homelab-backup-gfs-policy\","," \"systemd:homelab-backup-retention-gc.service\",","- \"/var/lib/homelab-admin/seals/backup-gfs-lifecycle-remediation-v1.json\"","+ \"/var/lib/homelab-admin/seals/backup-gfs-lifecycle-remediation-v1.json\",","+ \"systemd:homelab-backup-retention-gc.timer\""," ],"," \"mutation_scope\": \"controlled_apply\","," \"no_change_assertions\": ["," \"/etc/homelab-backup/targets.json exact bytes\","," \"homelab-backup-v2 runtime and timer\",","- \"homelab-backup-retention-gc timer schedule and enabled/active state\","," \"all cloud backup generations and replica objects\","," \"all restore evidence\","," \"rclone configuration\","," \"network\","," \"dns\","," \"known_hosts\","," \"backup and restore execution count remains zero\","," \"retention GC execution count remains zero\",","- \"cloud delete count remains zero\"","+ \"cloud delete count remains zero\",","+ \"homelab-backup-retention-gc timer unit bytes and schedule unchanged; enablement intentionally held disabled/inactive after apply\",","+ \"homelab-backup-retention-gc service never started by this task\""," ],"," \"phases\": {"," \"apply\": \"phases/apply.sh\","," \"dry-run\": \"phases/dry-run.sh\","," \"preflight\": \"phases/preflight.sh\","," \"prepare\": \"phases/prepare.sh\","," \"rollback\": \"phases/rollback.sh\","," \"seal\": \"phases/seal.sh\",","@@ -92,27 +94,31 @@"," \"source_of_truth\": {"," \"baseline_helper_sha256\": \"6b7ec1ab3ee1c540a9113b5620c3b4b5a50de6536f3a069d31b2e1243f23bafa\","," \"baseline_policy_sha256\": \"ea6526bec7d7591bef876799cecddff4849631a936edc9f593b47211fbad715c\","," \"candidate_helper_sha256\": \"a1aed0c6039f8095bd5da7f62b47f4ee6932df98c4e0e7420d3006df86bd5c94\","," \"candidate_policy_sha256\": \"2c7674045dd5c68cc48d348d616494dbbe145df460a8e85d97a2c5c153ec792d\","," \"change_id\": \"CR-2026-1005\","," \"cloud_deletes\": false,"," \"cloud_writes\": false,","+ \"package_parent_commit\": \"46c6f9aaf8fa93ce9f0cee686f948704c1a61336\","," \"parent_commit\": \"0d62d4a2077047b9b040a9378085ece09dd15883\",","+ \"retention_timer_hold_after_apply\": true,","+ \"retention_timer_reenable_requires_future_safe_plan\": true,"," \"target_registry_sha256\": \"6ecf034ca03b52a1e6beceeae81d86a623885462c095d50b133aea4048a4626e\""," },"," \"target_host\": \"pve01.gram1.ru\","," \"task_id\": \"backup-gfs-lifecycle-remediation-v1\","," \"writes\": ["," \"/var/lib/homelab-admin/staging/backup-gfs-lifecycle-remediation-v1\","," \"/etc/homelab-backup/gfs-retention.json\","," \"/usr/local/libexec/homelab-backup-gfs-policy\","," \"/var/lib/homelab-admin/seals/backup-gfs-lifecycle-remediation-v1.json\","," \"$HOMELAB_RUN_DIR/preflight.json\","," \"$HOMELAB_RUN_DIR/prepare.json\","," \"$HOMELAB_RUN_DIR/dry-run.json\","," \"$HOMELAB_RUN_DIR/apply.json\","," \"$HOMELAB_RUN_DIR/verify.json\","," \"$HOMELAB_RUN_DIR/rollback.json\",","- \"$HOMELAB_RUN_DIR/seal.json\"","+ \"$HOMELAB_RUN_DIR/seal.json\",","+ \"systemd:homelab-backup-retention-gc.timer\""," ]"," }"] -TASK_JSON_DIFF_SHA256=4b0f0bf4cb0d00d48e702d78823ab8bf2842c854d665bfd33bcc997d163c09b1 -HEAD_TASK_JSON_SHA256=665319f09578db5e0f5b3260517c470cf21fe4f6da6366886f8f283c8a895cd0 -WORK_TASK_JSON_SHA256=861bac805089ed92400df50824d3afeb5dbf312d96f268a8351a1f5e64f719a7 -TASK_JSON_SEMANTIC_CHANGES=[{"after":["/var/lib/homelab-admin/staging/backup-gfs-lifecycle-remediation-v1","/etc/homelab-backup/gfs-retention.json","/usr/local/libexec/homelab-backup-gfs-policy","systemd:homelab-backup-retention-gc.service","/var/lib/homelab-admin/seals/backup-gfs-lifecycle-remediation-v1.json","systemd:homelab-backup-retention-gc.timer"],"before":["/var/lib/homelab-admin/staging/backup-gfs-lifecycle-remediation-v1","/etc/homelab-backup/gfs-retention.json","/usr/local/libexec/homelab-backup-gfs-policy","systemd:homelab-backup-retention-gc.service","/var/lib/homelab-admin/seals/backup-gfs-lifecycle-remediation-v1.json"],"change":"list_changed","path":"$.mutates"},{"after":["/etc/homelab-backup/targets.json exact bytes","homelab-backup-v2 runtime and timer","all cloud backup generations and replica objects","all restore evidence","rclone configuration","network","dns","known_hosts","backup and restore execution count remains zero","retention GC execution count remains zero","cloud delete count remains zero","homelab-backup-retention-gc timer unit bytes and schedule unchanged; enablement intentionally held disabled/inactive after apply","homelab-backup-retention-gc service never started by this task"],"before":["/etc/homelab-backup/targets.json exact bytes","homelab-backup-v2 runtime and timer","homelab-backup-retention-gc timer schedule and enabled/active state","all cloud backup generations and replica objects","all restore evidence","rclone configuration","network","dns","known_hosts","backup and restore execution count remains zero","retention GC execution count remains zero","cloud delete count remains zero"],"change":"list_changed","path":"$.no_change_assertions"},{"after":"46c6f9aaf8fa93ce9f0cee686f948704c1a61336","change":"added","path":"$.source_of_truth.package_parent_commit"},{"after":true,"change":"added","path":"$.source_of_truth.retention_timer_hold_after_apply"},{"after":true,"change":"added","path":"$.source_of_truth.retention_timer_reenable_requires_future_safe_plan"},{"after":["/var/lib/homelab-admin/staging/backup-gfs-lifecycle-remediation-v1","/etc/homelab-backup/gfs-retention.json","/usr/local/libexec/homelab-backup-gfs-policy","/var/lib/homelab-admin/seals/backup-gfs-lifecycle-remediation-v1.json","$HOMELAB_RUN_DIR/preflight.json","$HOMELAB_RUN_DIR/prepare.json","$HOMELAB_RUN_DIR/dry-run.json","$HOMELAB_RUN_DIR/apply.json","$HOMELAB_RUN_DIR/verify.json","$HOMELAB_RUN_DIR/rollback.json","$HOMELAB_RUN_DIR/seal.json","systemd:homelab-backup-retention-gc.timer"],"before":["/var/lib/homelab-admin/staging/backup-gfs-lifecycle-remediation-v1","/etc/homelab-backup/gfs-retention.json","/usr/local/libexec/homelab-backup-gfs-policy","/var/lib/homelab-admin/seals/backup-gfs-lifecycle-remediation-v1.json","$HOMELAB_RUN_DIR/preflight.json","$HOMELAB_RUN_DIR/prepare.json","$HOMELAB_RUN_DIR/dry-run.json","$HOMELAB_RUN_DIR/apply.json","$HOMELAB_RUN_DIR/verify.json","$HOMELAB_RUN_DIR/rollback.json","$HOMELAB_RUN_DIR/seal.json"],"change":"list_changed","path":"$.writes"}] -TASK_JSON_SEMANTIC_CHANGE_COUNT=6 -HEAD_TASK_FILE_TREE=["tasks/backup-gfs-lifecycle-remediation-v1/README.md","tasks/backup-gfs-lifecycle-remediation-v1/assets/baseline-gfs-retention.json","tasks/backup-gfs-lifecycle-remediation-v1/assets/baseline-homelab-backup-gfs-policy","tasks/backup-gfs-lifecycle-remediation-v1/assets/gfs-retention.json","tasks/backup-gfs-lifecycle-remediation-v1/assets/homelab-backup-gfs-policy","tasks/backup-gfs-lifecycle-remediation-v1/assets/targets.json","tasks/backup-gfs-lifecycle-remediation-v1/phases/apply.sh","tasks/backup-gfs-lifecycle-remediation-v1/phases/dry-run.sh","tasks/backup-gfs-lifecycle-remediation-v1/phases/preflight.sh","tasks/backup-gfs-lifecycle-remediation-v1/phases/prepare.sh","tasks/backup-gfs-lifecycle-remediation-v1/phases/rollback.sh","tasks/backup-gfs-lifecycle-remediation-v1/phases/seal.sh","tasks/backup-gfs-lifecycle-remediation-v1/phases/verify.sh","tasks/backup-gfs-lifecycle-remediation-v1/task.json"] -HEAD_TASK_FILE_COUNT=14 -HEAD_TOOLS_COMMON_EXISTS=false -HEAD_PHASE_STRUCTURE=[{"anchor_counts":{"check_no_active_backup_call":1,"check_no_active_backup_def":1,"require_assets_def":1,"require_live_baseline_def":1,"rollback_now_def":1,"service_mentions":1,"timer_mentions":0,"validate_candidate_def":1},"focus_lines":[{"line":2,"text":"set -Eeuo pipefail"},{"line":18,"text":"die(){ echo \"ROOT_CAUSE=$1|ROOT_CAUSE_COUNT=1\" >&2; exit \"${2:-66}\"; }"},{"line":19,"text":"on_err(){ rc=$?; echo \"ROOT_CAUSE=UNEXPECTED_RUNTIME_FAILURE|ROOT_CAUSE_COUNT=1|RC=$rc\" >&2; exit \"$rc\"; }"},{"line":20,"text":"trap on_err ERR"},{"line":21,"text":"require_live_baseline(){"},{"line":26,"text":"require_assets(){"},{"line":31,"text":"validate_candidate(){"},{"line":34,"text":"check_no_active_backup(){"},{"line":46,"text":"rollback_now(){"},{"line":47,"text":" install -m 0644 -o root -g root \"$STAGE/gfs-retention.json\" \"$LIVE_POLICY\""},{"line":48,"text":" install -m 0755 -o root -g root \"$STAGE/homelab-backup-gfs-policy\" \"$LIVE_HELPER\""},{"line":50,"text":"trap 'rc=$?; rollback_now || true; echo \"ROOT_CAUSE=APPLY_FAILED|ROOT_CAUSE_COUNT=1|RC=$rc\" >&2; exit \"$rc\"' ERR"},{"line":51,"text":"install -m 0644 -o root -g root \"$ASSET_POLICY\" \"$LIVE_POLICY\""},{"line":52,"text":"install -m 0755 -o root -g root \"$ASSET_HELPER\" \"$LIVE_HELPER\""},{"line":56,"text":"systemctl reset-failed homelab-backup-retention-gc.service"},{"line":57,"text":"trap on_err ERR"}],"git_path":"tasks/backup-gfs-lifecycle-remediation-v1/phases/apply.sh","line_count":59,"path":"phases/apply.sh","phase":"apply","rc":0,"sha256":"22d00f65cb8a2011d34e8d61ca07082c9722d59fe735152059884ac75666d81c"},{"anchor_counts":{"check_no_active_backup_call":1,"check_no_active_backup_def":1,"require_assets_def":1,"require_live_baseline_def":1,"rollback_now_def":0,"service_mentions":0,"timer_mentions":0,"validate_candidate_def":1},"focus_lines":[{"line":2,"text":"set -Eeuo pipefail"},{"line":18,"text":"die(){ echo \"ROOT_CAUSE=$1|ROOT_CAUSE_COUNT=1\" >&2; exit \"${2:-66}\"; }"},{"line":19,"text":"on_err(){ rc=$?; echo \"ROOT_CAUSE=UNEXPECTED_RUNTIME_FAILURE|ROOT_CAUSE_COUNT=1|RC=$rc\" >&2; exit \"$rc\"; }"},{"line":20,"text":"trap on_err ERR"},{"line":21,"text":"require_live_baseline(){"},{"line":26,"text":"require_assets(){"},{"line":31,"text":"validate_candidate(){"},{"line":34,"text":"check_no_active_backup(){"}],"git_path":"tasks/backup-gfs-lifecycle-remediation-v1/phases/dry-run.sh","line_count":52,"path":"phases/dry-run.sh","phase":"dry-run","rc":0,"sha256":"9ce7dce7604a8f116c1b874f8348692d0c19eb7058e51ae4d2f2165a41f6cdba"},{"anchor_counts":{"check_no_active_backup_call":0,"check_no_active_backup_def":1,"require_assets_def":1,"require_live_baseline_def":1,"rollback_now_def":0,"service_mentions":0,"timer_mentions":2,"validate_candidate_def":1},"focus_lines":[{"line":2,"text":"set -Eeuo pipefail"},{"line":18,"text":"die(){ echo \"ROOT_CAUSE=$1|ROOT_CAUSE_COUNT=1\" >&2; exit \"${2:-66}\"; }"},{"line":19,"text":"on_err(){ rc=$?; echo \"ROOT_CAUSE=UNEXPECTED_RUNTIME_FAILURE|ROOT_CAUSE_COUNT=1|RC=$rc\" >&2; exit \"$rc\"; }"},{"line":20,"text":"trap on_err ERR"},{"line":21,"text":"require_live_baseline(){"},{"line":26,"text":"require_assets(){"},{"line":31,"text":"validate_candidate(){"},{"line":34,"text":"check_no_active_backup(){"},{"line":42,"text":"systemctl is-enabled --quiet homelab-backup-retention-gc.timer || die RETENTION_TIMER_NOT_ENABLED"},{"line":43,"text":"systemctl is-active --quiet homelab-backup-retention-gc.timer || die RETENTION_TIMER_NOT_ACTIVE"}],"git_path":"tasks/backup-gfs-lifecycle-remediation-v1/phases/preflight.sh","line_count":54,"path":"phases/preflight.sh","phase":"preflight","rc":0,"sha256":"336de004b64c90eac8769dbd0e7e4d2637ae700d48149d000ec04b39355a5a6a"},{"anchor_counts":{"check_no_active_backup_call":1,"check_no_active_backup_def":1,"require_assets_def":1,"require_live_baseline_def":1,"rollback_now_def":0,"service_mentions":0,"timer_mentions":0,"validate_candidate_def":1},"focus_lines":[{"line":2,"text":"set -Eeuo pipefail"},{"line":18,"text":"die(){ echo \"ROOT_CAUSE=$1|ROOT_CAUSE_COUNT=1\" >&2; exit \"${2:-66}\"; }"},{"line":19,"text":"on_err(){ rc=$?; echo \"ROOT_CAUSE=UNEXPECTED_RUNTIME_FAILURE|ROOT_CAUSE_COUNT=1|RC=$rc\" >&2; exit \"$rc\"; }"},{"line":20,"text":"trap on_err ERR"},{"line":21,"text":"require_live_baseline(){"},{"line":26,"text":"require_assets(){"},{"line":31,"text":"validate_candidate(){"},{"line":34,"text":"check_no_active_backup(){"}],"git_path":"tasks/backup-gfs-lifecycle-remediation-v1/phases/prepare.sh","line_count":53,"path":"phases/prepare.sh","phase":"prepare","rc":0,"sha256":"fe72a477297169f6bad1449032ab56b4b23a700aeb9828b3cb5b78304e020dba"},{"anchor_counts":{"check_no_active_backup_call":0,"check_no_active_backup_def":1,"require_assets_def":1,"require_live_baseline_def":1,"rollback_now_def":0,"service_mentions":0,"timer_mentions":0,"validate_candidate_def":1},"focus_lines":[{"line":2,"text":"set -Eeuo pipefail"},{"line":18,"text":"die(){ echo \"ROOT_CAUSE=$1|ROOT_CAUSE_COUNT=1\" >&2; exit \"${2:-66}\"; }"},{"line":19,"text":"on_err(){ rc=$?; echo \"ROOT_CAUSE=UNEXPECTED_RUNTIME_FAILURE|ROOT_CAUSE_COUNT=1|RC=$rc\" >&2; exit \"$rc\"; }"},{"line":20,"text":"trap on_err ERR"},{"line":21,"text":"require_live_baseline(){"},{"line":26,"text":"require_assets(){"},{"line":31,"text":"validate_candidate(){"},{"line":34,"text":"check_no_active_backup(){"},{"line":43,"text":"install -m 0644 -o root -g root \"$STAGE/gfs-retention.json\" \"$LIVE_POLICY\""},{"line":44,"text":"install -m 0755 -o root -g root \"$STAGE/homelab-backup-gfs-policy\" \"$LIVE_HELPER\""}],"git_path":"tasks/backup-gfs-lifecycle-remediation-v1/phases/rollback.sh","line_count":48,"path":"phases/rollback.sh","phase":"rollback","rc":0,"sha256":"731594042479cdcb26a9bebb5852ab7e639541071195a235a671fc7e5562cd4a"},{"anchor_counts":{"check_no_active_backup_call":0,"check_no_active_backup_def":1,"require_assets_def":1,"require_live_baseline_def":1,"rollback_now_def":0,"service_mentions":0,"timer_mentions":0,"validate_candidate_def":1},"focus_lines":[{"line":2,"text":"set -Eeuo pipefail"},{"line":18,"text":"die(){ echo \"ROOT_CAUSE=$1|ROOT_CAUSE_COUNT=1\" >&2; exit \"${2:-66}\"; }"},{"line":19,"text":"on_err(){ rc=$?; echo \"ROOT_CAUSE=UNEXPECTED_RUNTIME_FAILURE|ROOT_CAUSE_COUNT=1|RC=$rc\" >&2; exit \"$rc\"; }"},{"line":20,"text":"trap on_err ERR"},{"line":21,"text":"require_live_baseline(){"},{"line":26,"text":"require_assets(){"},{"line":31,"text":"validate_candidate(){"},{"line":34,"text":"check_no_active_backup(){"}],"git_path":"tasks/backup-gfs-lifecycle-remediation-v1/phases/seal.sh","line_count":49,"path":"phases/seal.sh","phase":"seal","rc":0,"sha256":"719d37dcff71ca0c944df2410e81d70574bdbeab4bc60cd79ac15b783405e56f"},{"anchor_counts":{"check_no_active_backup_call":0,"check_no_active_backup_def":1,"require_assets_def":1,"require_live_baseline_def":1,"rollback_now_def":0,"service_mentions":1,"timer_mentions":2,"validate_candidate_def":1},"focus_lines":[{"line":2,"text":"set -Eeuo pipefail"},{"line":18,"text":"die(){ echo \"ROOT_CAUSE=$1|ROOT_CAUSE_COUNT=1\" >&2; exit \"${2:-66}\"; }"},{"line":19,"text":"on_err(){ rc=$?; echo \"ROOT_CAUSE=UNEXPECTED_RUNTIME_FAILURE|ROOT_CAUSE_COUNT=1|RC=$rc\" >&2; exit \"$rc\"; }"},{"line":20,"text":"trap on_err ERR"},{"line":21,"text":"require_live_baseline(){"},{"line":26,"text":"require_assets(){"},{"line":31,"text":"validate_candidate(){"},{"line":34,"text":"check_no_active_backup(){"},{"line":43,"text":"mapfile -t CRIT < <(HOMELAB_BACKUP_GFS_POLICY=\"$LIVE_POLICY\" HOMELAB_BACKUP_TARGET_REGISTRY=\"$LIVE_REGISTRY\" \"$LIVE_HELPER\" critical-logicals)"},{"line":46,"text":"systemctl is-enabled --quiet homelab-backup-retention-gc.timer || die VERIFY_TIMER_NOT_ENABLED"},{"line":47,"text":"systemctl is-active --quiet homelab-backup-retention-gc.timer || die VERIFY_TIMER_NOT_ACTIVE"},{"line":48,"text":"if systemctl is-failed --quiet homelab-backup-retention-gc.service; then die VERIFY_RETENTION_SERVICE_FAILED; fi"}],"git_path":"tasks/backup-gfs-lifecycle-remediation-v1/phases/verify.sh","line_count":50,"path":"phases/verify.sh","phase":"verify","rc":0,"sha256":"b3589070dc915211e091984800ec76976fef74669288440103bcb7c1eb69e0c4"}] -WORKING_TASK_LINT={"rc":0,"stderr_lines":[],"stdout_lines":["LINT_STATUS=OK","TASK_ID=backup-gfs-lifecycle-remediation-v1","POLICY_ID=homelab-admin-guardrails-v1.2","RULES_CHECKED=14","SOURCE_FILES_CHECKED=7"]} -WORKING_TASK_VALIDATE={"rc":0,"stderr_lines":[],"stdout_lines":["LINT_STATUS=OK","TASK_ID=backup-gfs-lifecycle-remediation-v1","POLICY_ID=homelab-admin-guardrails-v1.2","RULES_CHECKED=14","SOURCE_FILES_CHECKED=7","TASK_VALID=YES","TASK_ID=backup-gfs-lifecycle-remediation-v1","TASK_SCOPE=controlled_apply","PRODUCTION_CHANGE=YES"]} -LIVE_POLICY_META={"exists":true,"expected":"ea6526bec7d7591bef876799cecddff4849631a936edc9f593b47211fbad715c","match":true,"sha256":"ea6526bec7d7591bef876799cecddff4849631a936edc9f593b47211fbad715c"} -LIVE_HELPER_META={"exists":true,"expected":"6b7ec1ab3ee1c540a9113b5620c3b4b5a50de6536f3a069d31b2e1243f23bafa","match":true,"sha256":"6b7ec1ab3ee1c540a9113b5620c3b4b5a50de6536f3a069d31b2e1243f23bafa"} -LIVE_REGISTRY_META={"exists":true,"expected":"6ecf034ca03b52a1e6beceeae81d86a623885462c095d50b133aea4048a4626e","match":true,"sha256":"6ecf034ca03b52a1e6beceeae81d86a623885462c095d50b133aea4048a4626e"} -RETENTION_UNIT_STATE={"homelab-backup-retention-gc.service":{"ActiveState":{"rc":0,"value":"failed"},"LastTriggerUSec":{"rc":0,"value":""},"LoadState":{"rc":0,"value":"loaded"},"NextElapseUSecRealtime":{"rc":0,"value":""},"Result":{"rc":0,"value":"exit-code"},"SubState":{"rc":0,"value":"failed"},"UnitFileState":{"rc":0,"value":"static"}},"homelab-backup-retention-gc.timer":{"ActiveState":{"rc":0,"value":"active"},"LastTriggerUSec":{"rc":0,"value":"Mon 2026-09-21 03:22:42 MSK"},"LoadState":{"rc":0,"value":"loaded"},"NextElapseUSecRealtime":{"rc":0,"value":"Tue 2026-09-22 03:32:10 MSK"},"Result":{"rc":0,"value":"success"},"SubState":{"rc":0,"value":"waiting"},"UnitFileState":{"rc":0,"value":"enabled"}}} -DIRTY_PROVENANCE_CLASSIFICATION={"added_timer_mutate":true,"added_timer_write":true,"consistent_with_1028_pre_tools_common_patch":true,"source_hold":true,"source_reenable":true} -NO_MUTATION=true -NO_REPO_WRITE=true -NO_GIT_FETCH=true -NO_GIT_COMMIT=true -NO_GIT_PUSH_UPDATE=true -NO_PRODUCTION_MUTATION=true -NO_SERVICE_ACTION=true -NO_BACKUP_STARTED=true -NO_RESTORE_STARTED=true -NO_RETENTION_STARTED=true -NO_DELETE=true -NO_MAIL_SENT=true -RCA_DURATION_SEC=0.219 -TASK_RESULT=PASS_HOMELAB_BACKUP_GFS_DIRTY_TASK_RCA_READONLY -HOMELAB_RESULT_CONTRACT={"changes_made":false,"command_id":"SUPPORT-260921-HOMELAB-BACKUP-GFS-DIRTY-TASK-RCA-READONLY-1030R1","rollback_restored":null,"rollback_started":false,"status":"OK","version":1} -WORKERS2_BACKUP_GFS_DIRTY_TASK_RCA_END=1 +IMMUTABLE_PLAN_CHECK=PASS +AUTHORITY={"error":{"actual":"3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0","expected":"3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0","match":true},"reference":{"actual":"5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66","expected":"5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66","match":true}} +INPUT_SHA256=b2ddf6c598478d41eb2f1e234547fd1ac46851ce49075e630dae7fc49ab173dc +INPUT_VALID=true +LOCAL336_EVIDENCE={"attempt_dir_present":true,"local_class":"OTHER_LOCAL_OR_UNPUBLISHED","rc":0,"rc_present":true,"remote_sha256":"fb606632c2e0ca2797f7bcb10e7494a04c1e66cdbf71658b8473a211e799a5a1","remote_sha_match":true,"stderr_bytes":277,"stderr_sha256":"d700c4fd816e608fa557a022bf5f1fa3d5c2ec54cf6d1ba65ac3fc11a19a0396","stdout_bytes":0,"stdout_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"} +DECISION=PASS_PEDIGREE217_RECOVERY337_RCA336_LOCAL_TRANSPORT_CLASSIFIED +NEXT_GATE=REISSUE_PEDIGREE217_RCA_AFTER_RECOVERY337_WITH_FROZEN_CARRIER +CHANGES_MADE=false +ROLLBACK_STARTED=false +ROLLBACK_RESTORED=null +MUTATION_OUTCOME=NO_MUTATION +ACTIVE_MAJOR_STAGE=PEDIGREE217 +MAJOR_STAGES_REMAINING=5 +REC337_END=true +HOMELAB_RESULT_CONTRACT={"changes_made":false,"command_id":"NEWFI-260921-NEWFDOM-PEDIGREE217-RECOVERY337","rollback_restored":null,"rollback_started":false,"status":"OK","version":1} OUTPUT_END CHAT_OUTPUT_END