142 lines
5.4 KiB
JSON
142 lines
5.4 KiB
JSON
{
|
||
"acceptance_candidate": {
|
||
"acceptance_candidate_id": "iwooos_wazuh_readonly_release_owner_response",
|
||
"ack_flags": {
|
||
"approve_formal_release_lane": false,
|
||
"confirm_no_force_push": false,
|
||
"confirm_no_plaintext_token_workaround": false,
|
||
"confirm_no_runtime_workaround": false,
|
||
"confirm_production_readback_after_deploy": false,
|
||
"confirm_wazuh_live_metadata_requires_separate_owner_gate": false
|
||
},
|
||
"blocked_actions": [
|
||
"plain_text_gitea_token_in_remote_url",
|
||
"copy_token_from_dirty_workspace",
|
||
"force_push",
|
||
"nginx_or_gateway_workaround_for_404",
|
||
"docker_restart_for_wazuh_route",
|
||
"k8s_or_argocd_manual_apply_for_wazuh_route",
|
||
"firewall_change_for_wazuh_route",
|
||
"wazuh_secret_or_manager_change_for_api_404",
|
||
"enable_wazuh_live_metadata_without_owner_gate",
|
||
"enable_wazuh_active_response",
|
||
"host_write_or_kali_active_scan",
|
||
"mark_general_approval_as_release_response",
|
||
"mark_predeploy_404_as_passed_readback"
|
||
],
|
||
"decision": "pending_owner_response",
|
||
"decision_reason": "pending_owner_response",
|
||
"formal_release_lane_ready": false,
|
||
"gitea_push_authorized": false,
|
||
"not_approval": true,
|
||
"outcome_lanes": [
|
||
"waiting_owner_response",
|
||
"quarantine_secret_or_raw_payload",
|
||
"reject_execution_request",
|
||
"request_supplement",
|
||
"ready_for_release_reviewer_validation",
|
||
"formal_gitea_merge_candidate",
|
||
"formal_patch_apply_candidate",
|
||
"safe_credential_push_candidate",
|
||
"waiting_production_readback",
|
||
"waiting_runtime_gate"
|
||
],
|
||
"owner_response_accepted": false,
|
||
"owner_response_quarantined": false,
|
||
"owner_response_received": false,
|
||
"owner_response_rejected": false,
|
||
"owner_role_or_team": "pending_owner_response",
|
||
"patch_apply_authorized": false,
|
||
"post_deploy_readback_command": "python3 scripts/security/wazuh-readonly-production-readback.py --json",
|
||
"production_deploy_authorized": false,
|
||
"production_readback_passed": false,
|
||
"redacted_evidence_refs": [],
|
||
"release_method": "pending_owner_response",
|
||
"request_id": "iwooos_wazuh_readonly_release_owner_request",
|
||
"required_ack_flags": [
|
||
"approve_formal_release_lane",
|
||
"confirm_no_plaintext_token_workaround",
|
||
"confirm_no_force_push",
|
||
"confirm_no_runtime_workaround",
|
||
"confirm_production_readback_after_deploy",
|
||
"confirm_wazuh_live_metadata_requires_separate_owner_gate"
|
||
],
|
||
"required_evidence_fields": [
|
||
"release_lane_owner",
|
||
"release_method",
|
||
"target_branch_or_patch_set",
|
||
"post_deploy_readback_command",
|
||
"rollback_owner",
|
||
"blocked_runtime_actions_ack"
|
||
],
|
||
"reviewer_checks": [
|
||
"owner_identity_present",
|
||
"release_method_allowed",
|
||
"target_scope_matches_wazuh_branch_or_patch_set",
|
||
"all_ack_flags_true",
|
||
"all_evidence_fields_present",
|
||
"redacted_refs_only",
|
||
"secret_value_absent",
|
||
"no_plaintext_token_workaround",
|
||
"no_force_push",
|
||
"no_runtime_workaround",
|
||
"post_deploy_readback_required",
|
||
"rollback_owner_present",
|
||
"live_metadata_gate_separate",
|
||
"active_response_stays_false",
|
||
"counts_transition_safe"
|
||
],
|
||
"rollback_owner": "pending_owner_response",
|
||
"runtime_gate": false,
|
||
"status": "waiting_owner_response",
|
||
"supplement_requested": false,
|
||
"target_branch_or_patch_set": "pending_owner_response"
|
||
},
|
||
"execution_boundaries": {
|
||
"force_push_allowed": false,
|
||
"gitea_push_authorized": false,
|
||
"host_write_authorized": false,
|
||
"kali_active_scan_authorized": false,
|
||
"not_authorization": true,
|
||
"patch_apply_authorized": false,
|
||
"plain_text_token_workaround_allowed": false,
|
||
"production_deploy_authorized": false,
|
||
"repo_write_authorized": false,
|
||
"runtime_execution_authorized": false,
|
||
"secret_value_collection_allowed": false,
|
||
"wazuh_active_response_authorized": false,
|
||
"wazuh_api_live_query_authorized": false
|
||
},
|
||
"generated_at": "2026-06-24T22:48:00+08:00",
|
||
"mode": "metadata_only_acceptance_no_secret_no_runtime_no_push",
|
||
"reviewer_instructions": [
|
||
"只有具備完整欄位、脫敏 evidence refs、無 secret、無 runtime 要求的 owner response 才能進 reviewer validation。",
|
||
"一般批准繼續、截圖、口頭同意或未列 release method 的訊息都不能增加 accepted count。",
|
||
"即使 owner response accepted,也只代表可進正式 release lane;Wazuh live metadata 與 active response 仍是不同 gate。",
|
||
"production readback 必須在部署後不加 --allow-predeploy-404 執行,且不得回 404。"
|
||
],
|
||
"schema_version": "iwooos_wazuh_readonly_release_owner_response_acceptance_v1",
|
||
"status": "waiting_owner_response",
|
||
"summary": {
|
||
"acceptance_candidate_count": 1,
|
||
"accepted_ack_flag_count": 0,
|
||
"accepted_evidence_field_count": 0,
|
||
"blocked_action_count": 13,
|
||
"formal_release_lane_ready_count": 0,
|
||
"gitea_push_authorized_count": 0,
|
||
"outcome_lane_count": 10,
|
||
"owner_response_accepted_count": 0,
|
||
"owner_response_quarantined_count": 0,
|
||
"owner_response_received_count": 0,
|
||
"owner_response_rejected_count": 0,
|
||
"patch_apply_authorized_count": 0,
|
||
"production_deploy_authorized_count": 0,
|
||
"production_readback_passed_count": 0,
|
||
"required_ack_flag_count": 6,
|
||
"required_evidence_field_count": 6,
|
||
"reviewer_check_count": 15,
|
||
"runtime_gate_count": 0,
|
||
"supplement_requested_count": 0
|
||
}
|
||
}
|