CHAT_OUTPUT_BEGIN COMMAND_ID=HOMELAB-GITEA-ALLOWED-PUSH-PATH-DIAGNOSTIC-READ-ONLY-20260805T165900Z STATUS=FAIL RC=2 HOST=pve01 MODE=verify COMPONENT=cluster-knowledge-base-error-system REFERENCE_REGISTER_CHECK=OK REFERENCE_SHA256=5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e ERROR_REGISTER_CHECK=OK ERROR_REGISTER_SHA256=24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83 COMMAND_SHA256=09b6606c2edf48917dc56d27d5e10e526f99f357ae27463d9459c5f3152472fd 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=2 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=53d38d4587051b38a7a63af7faf5baba2775e0db83bd8eac918f8cdd1f8398b6 SANITIZED_OUTPUT_SHA256=53d38d4587051b38a7a63af7faf5baba2775e0db83bd8eac918f8cdd1f8398b6 OUTPUT_BEGIN HOMELAB_RESULT_CONTRACT={"changes_made":false,"command_id":"HOMELAB-GITEA-ALLOWED-PUSH-PATH-DIAGNOSTIC-READ-ONLY-20260805T165900Z","command_rc":2,"control_plane_error":null,"mutation_outcome":"NO_MUTATION","output_truncated_in_json":false,"rc":2,"rollback_restored":null,"rollback_started":false,"status":"ERROR","version":1} {"changes_made":false,"command_id":"HOMELAB-GITEA-ALLOWED-PUSH-PATH-DIAGNOSTIC-READ-ONLY-20260805T165900Z","command_rc":2,"control_plane_error":null,"error_system_v2_future_record":{"classification":"GITEA_BRANCH_PROTECTION_REJECTS_DIRECT_PUSHER","fingerprint":"40795f946c36fcaaf8413b2b46b1900a5df4771d93aeb24f2a596287df0a8023","id":"GITEA_PROTECTED_MAIN_DIRECT_PUSH_DRY_RUN_FALSE_POSITIVE","negative_control":"dry-run may return rc=0 without exercising the server-side protected-branch mutation decision","normalized_signature":"gitea protected main rejects direct push while git push --dry-run succeeds; dry-run does not prove that the server-side protected-branch pre-receive path will accept a real update","positive_control":"protected main has direct push disabled and the previous real push was rejected","prevention_rule":"A successful git push --dry-run must never be treated as proof that a real update to a protected branch is allowed; the configured branch-protection write path must be proven separately by read-only evidence.","regression_test_required":true,"space":"runtime"},"exact_error":{"code":"HTTP_READ_FAILED","evidence":{"status":404,"url_sha256":"35cfa68b510e0f5b871072b99661ddf8f8726f808b5025114b925cd3b4c26cbe"},"message":"Read-only HTTP request failed"},"identity_confirmed":false,"mode":"READ_ONLY","mutation_outcome":"NO_MUTATION","next_step":"Prepare no mutation command until this read-only proof failure is resolved by exact evidence.","output_truncated_in_json":false,"rc":2,"rollback_restored":null,"rollback_started":false,"schema":"homelab.read-only-diagnostic.v2","status":"ERROR"} OUTPUT_END CHAT_OUTPUT_END