{ "schema_version": 1, "channel": "homelab-runtime", "command_id": "HOMELAB-CLUSTER-KB-V1-GITEA-PUSH-REJECTION-ROOT-CAUSE-READ-ONLY-20260805T155800Z", "status": "OK", "rc": 0, "host": "pve01", "mode": "verify", "component": "cluster-kb-error-v2", "started_at_utc": "2026-08-05T16:02:43Z", "finished_at_utc": "2026-08-05T16:02:44Z", "reference_register_checked": true, "reference_sha256": "5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e", "error_register_checked": true, "error_register_sha256": "24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83", "command_sha256": "7045e6d8e792d7c30e6056d899212ddf2e8885694d0548cbcffe50abe2b89294", "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": "0b90f060b557a2b73c9fca1232f2c60daa60a323537377fc0e851f823bf2abdf", "sanitized_output_sha256": "0b90f060b557a2b73c9fca1232f2c60daa60a323537377fc0e851f823bf2abdf", "output_truncated_in_json": false, "full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt", "output": "HOMELAB_RESULT_CONTRACT={\"changes_made\":false,\"command_id\":\"HOMELAB-CLUSTER-KB-V1-GITEA-PUSH-REJECTION-ROOT-CAUSE-READ-ONLY-20260805T155800Z\",\"command_rc\":0,\"mutation_outcome\":\"NO_MUTATION\",\"output_truncated_in_json\":false,\"rc\":0,\"rollback_restored\":null,\"rollback_started\":false,\"status\":\"OK\",\"version\":1}\n{\"authenticated_user\":{\"active\":true,\"authenticated_user_present\":true,\"login_sha256\":\"17be8cd40a805524484650e38ba17226d72606f6868226bfc7ddadcd407344a7\",\"restricted\":false,\"status\":200},\"branch\":{\"commit_matches_expected_parent\":true,\"enable_status_check\":false,\"name_exact\":true,\"protected\":true,\"required_approvals\":0},\"branch_protection\":{\"matching_rule_count\":1,\"rules\":[{\"block_on_outdated_branch\":false,\"block_on_rejected_reviews\":true,\"branch_exact\":true,\"enable_push\":false,\"enable_push_whitelist\":false,\"enable_status_check\":false,\"protected_file_pattern_count\":0,\"protected_file_patterns_sha256\":null,\"push_whitelist_team_count\":null,\"push_whitelist_user_count\":0,\"require_signed_commits\":false,\"required_approvals\":0,\"status_check_context_count\":0,\"user_in_push_whitelist\":false,\"workflow_path_may_be_protected\":false}]},\"cause_detail\":{\"matching_branch_rule\":true},\"changes_made\":false,\"collaborator_permission\":\"owner\",\"command_id\":\"HOMELAB-CLUSTER-KB-V1-GITEA-PUSH-REJECTION-ROOT-CAUSE-READ-ONLY-20260805T155800Z\",\"command_rc\":0,\"dry_run_pushes_only\":true,\"git_transport\":{\"clone\":{\"flags\":{\"authentication_or_authorization\":false,\"branch_or_hook_policy\":false,\"network_or_tls\":false,\"stale_lease_or_non_fast_forward\":false},\"rc\":0,\"sanitized_relevant_summary\":\"\",\"stderr_bytes\":0,\"stderr_sha256\":\"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\",\"stdout_bytes\":0,\"stdout_sha256\":\"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\"},\"ephemeral_empty_commit_created_locally\":true,\"local_head_matches_expected_parent_before_ephemeral_commit\":true,\"no_op_push_dry_run\":{\"flags\":{\"authentication_or_authorization\":false,\"branch_or_hook_policy\":false,\"network_or_tls\":false,\"stale_lease_or_non_fast_forward\":false},\"rc\":0,\"sanitized_relevant_summary\":\"=\\tfe1221b06643db3b00a621b0230f92a46a4edc2b:refs/heads/main\\t[up to date]\",\"stderr_bytes\":0,\"stderr_sha256\":\"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\",\"stdout_bytes\":131,\"stdout_sha256\":\"c3ef29f5188b55f00b03b5965d68f55ad7f8773c37b7ab3db0259d00eb099833\"},\"one_commit_update_push_dry_run\":{\"flags\":{\"authentication_or_authorization\":false,\"branch_or_hook_policy\":false,\"network_or_tls\":false,\"stale_lease_or_non_fast_forward\":false},\"rc\":0,\"sanitized_relevant_summary\":\"To \\nd62e4c23855dfe3a6c338504f87624c01bf40e75:refs/heads/main\\tfe1221b..d62e4c2\\nDone\",\"stderr_bytes\":0,\"stderr_sha256\":\"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\",\"stdout_bytes\":135,\"stdout_sha256\":\"5255047b7fbcf6c4ecc87a20aa1badefa312cf39a86216b2b6e07b52500bffac\"},\"remote_head_matches_expected_parent\":true},\"gitea_endpoint_and_auth\":{\"branch_api_status\":200,\"branch_protections_api_status\":200,\"candidate_count\":1,\"collaborator_permission_api_status\":200,\"credential_source\":\"git_credentials_store\",\"endpoint_reverified\":true,\"endpoint_verified\":true,\"repo_api_status\":200,\"repository_identity_verified\":true,\"secret_values_emitted\":false,\"user_api_status\":200},\"mutation_outcome\":\"NO_MUTATION\",\"network_mutations\":false,\"next_action\":\"RUN_ONE_READ_ONLY_GITEA_ALLOWED_PUSH_PATH_DIAGNOSTIC\",\"output_bytes_before_wrapper\":4410,\"output_truncated_in_json\":false,\"pre_command_known_error_gate\":{\"checked\":true,\"current_fingerprint\":\"gitea-atomic-cas-push-failed-root-cause-20260805\",\"known_error_count\":37},\"previous_exact_verification\":{\"bundle_bytes_ok\":true,\"bundle_sha256_ok\":true,\"capsule_content_count\":0,\"capsule_same_command_json_count\":2,\"capsule_semantically_bound\":true,\"command_id_in_runner\":true,\"contract_exact\":true,\"exact_output_unique_count\":1,\"exists\":true,\"identity_verified\":true,\"member_count\":6,\"next_action_exact\":true,\"no_mutation_exact\":true,\"output_embedded_exact_count\":1,\"output_file_exact_count\":0,\"previous_stderr_flags\":{\"authentication_or_authorization\":false,\"branch_or_hook_policy\":false,\"network_or_tls\":false,\"stale_lease_or_non_fast_forward\":false},\"root_cause_exact\":true,\"runner_json_exact_count\":1,\"runner_text_exact_count\":1},\"rc\":0,\"read_only\":true,\"ready_for_targeted_next_step\":true,\"remote_pushes_executed\":false,\"repository\":{\"archived\":false,\"default_branch_exact\":true,\"empty\":false,\"identity_exact\":true,\"mirror\":false,\"permissions\":{\"admin\":true,\"pull\":true,\"push\":true},\"private\":true},\"rollback_restored\":null,\"rollback_started\":false,\"root_cause_classification\":\"GITEA_BRANCH_PROTECTION_REJECTS_DIRECT_PUSHER\",\"schema\":1,\"status\":\"OK\",\"temporary_files_removed_automatically\":true}\n" }