Files
awoooi/docs/security/github-target-owner-decision-response.snapshot.json

1466 lines
62 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"schema_version": "github_target_owner_decision_response_v1",
"status": "draft_waiting_owner_response",
"date": "2026-06-11",
"mode": "owner_decision_response_intake_only",
"runtime_execution_authorized": false,
"source_contract": "github_target_decision_v1",
"target_contract": "github_target_repo_approval_package_v1",
"source_indexes": [
"docs/security/github-target-decision.snapshot.json",
"docs/security/github-target-repo-approval-package.snapshot.json",
"docs/security/GITHUB-TARGET-VISIBILITY-DECISION-TABLE.md",
"docs/security/GITHUB-TARGET-REPO-APPROVAL-PACKAGE.md",
"docs/security/source-control-approval-board.snapshot.json",
"docs/security/source-control-primary-readiness-gate.snapshot.json",
"docs/security/security-approval-review-packet.snapshot.json",
"docs/security/security-followup-runtime-gate.snapshot.json"
],
"summary": {
"owner_response_status": "waiting_owner_response",
"target_decision_count": 10,
"approval_required_target_count": 9,
"owner_response_request_packet_count": 1,
"owner_response_template_status_count": 9,
"owner_response_audit_event_template_count": 3,
"owner_response_redaction_example_count": 5,
"owner_response_collection_check_count": 6,
"intake_preflight_check_count": 6,
"response_template_count": 9,
"received_response_count": 0,
"accepted_response_count": 0,
"rejected_response_count": 0,
"acceptance_check_count": 8,
"rejection_rule_count": 10,
"repo_creation_authorized": false,
"visibility_change_authorized": false,
"refs_sync_authorized": false,
"github_primary_switch_authorized": false,
"secret_value_collection_allowed": false,
"action_buttons_allowed": false,
"target_owner_handoff_package_ready": true,
"target_owner_handoff_completion_percent": 100,
"target_owner_handoff_check_count": 6,
"target_owner_handoff_packet_field_count": 9,
"target_owner_request_dispatch_authorized": false,
"not_found_or_private_as_absent_allowed": false,
"repo_creation_allowed_without_owner_response": false,
"visibility_change_allowed_without_owner_response": false,
"github_target_owner_response_handoff_not_approval": true
},
"target_owner_handoff_preflight_checks": [
{
"check_id": "p1-3-baseline-sync",
"display_order": 1,
"check": "送件前確認 gitea/main、GitHub target probe、S4.9 / P1-2 最新狀態。",
"current_status": "defined_not_dispatched",
"execution_authorized": false
},
{
"check_id": "p1-3-nine-target-scope",
"display_order": 2,
"check": "只向 9 個 approval-required targets 收 owner / visibility / canonical 回覆。",
"current_status": "defined_not_dispatched",
"execution_authorized": false
},
{
"check_id": "p1-3-external-scope-summary",
"display_order": 3,
"check": "nexu-io/open-design 只作 external scope evidence不納入 AWOOOI target approval queue。",
"current_status": "defined_not_dispatched",
"execution_authorized": false
},
{
"check_id": "p1-3-not-found-or-private-semantics",
"display_order": 4,
"check": "not_found_or_private 只能表示 read-only probe 看不到;不得視為 repo 不存在或可直接建立。",
"current_status": "defined_not_dispatched",
"execution_authorized": false
},
{
"check_id": "p1-3-required-owner-fields",
"display_order": 5,
"check": "必須有 owner role/team、decision、decision reason、affected scope、redacted evidence refs、followup owner、rollback owner、maintenance window、validation plan。",
"current_status": "defined_not_dispatched",
"execution_authorized": false
},
{
"check_id": "p1-3-execution-request-rejected",
"display_order": 6,
"check": "repo creation、visibility change、refs sync、workflow / secret 修改、primary switch 全部 hard reject。",
"current_status": "defined_not_dispatched",
"execution_authorized": false
}
],
"target_owner_handoff_packet": {
"request_id": "p1_3_github_target_owner_response_handoff",
"stage_id": "S4.10",
"prerequisite_gates": [
"S4.9 owner response gate",
"P1-2 Gitea authenticated inventory request handoff"
],
"requested_templates": [
"target-awoooi-refs-blocked",
"target-clawbot-v5-refs-blocked",
"target-wooo-aiops-refs-blocked",
"target-wooo-infra-config-internal-remote",
"target-ewoooc-private-or-new",
"target-bitan-pharmacy-private-or-new",
"target-tsenyang-website-private-or-new",
"target-vibework-private-or-new",
"target-agent-bounty-protocol-private-or-new"
],
"target_probe_summary": {
"candidate_count": 10,
"exists_count": 5,
"not_found_or_private_count": 5,
"external_scope_summary_repo": "nexu-io/open-design",
"newly_added_in_scope_targets": [
"owenhytsai/VibeWork",
"owenhytsai/agent-bounty-protocol"
]
},
"recipient_role_or_team_required": true,
"required_response_fields": [
"owner_role_or_team",
"decision",
"decision_reason",
"affected_scope",
"redacted_evidence_refs",
"followup_owner",
"rollback_owner",
"maintenance_window",
"validation_plan"
],
"forbidden_inputs": [
"token_value",
"secret_value",
"private_key",
"private_clone_url_credential",
"repo_archive",
"git_object_pack",
"api_request_body",
"repo_creation_command",
"visibility_change_command",
"refs_sync_or_delete_request",
"github_primary_switch_request"
],
"not_approval": true,
"execution_authorized": false
},
"post_dispatch_invariants": [
"Owner response 到來後仍需先進 S4.10 intake preflight 與 reviewer validation。",
"not_found_or_private 不得自動視為 repo 不存在或可建立。",
"通過後只可更新 read-only target decision table、approval package、approval board 與 readiness wording。",
"不得直接建立 repo、修改 visibility、sync/delete refs、force push、改 workflow / secret、切 GitHub primary 或停用 Gitea。"
],
"owner_response_request_packet": {
"request_id": "s4_10_github_target_owner_decision_response_request",
"display_status": "ready_to_request_owner_response",
"requested_packet": "docs/security/GITHUB-TARGET-OWNER-DECISION-RESPONSE.md",
"required_response_item_count": 9,
"requested_template_ids": [
"target-awoooi-refs-blocked",
"target-clawbot-v5-refs-blocked",
"target-wooo-aiops-refs-blocked",
"target-wooo-infra-config-internal-remote",
"target-ewoooc-private-or-new",
"target-bitan-pharmacy-private-or-new",
"target-tsenyang-website-private-or-new",
"target-vibework-private-or-new",
"target-agent-bounty-protocol-private-or-new"
],
"owner_instruction_summary": "請 owner 只依 S4.10 九個 templates 回覆 GitHub target 的 owner / visibility / canonical / target disposition且每筆都要填齊 owner role/team、decision、decision reason、affected scope、redacted evidence refs、followup owner、rollback owner、maintenance window、validation plan不要貼 token、secret、private clone URL credential、repo archive、git object、API request body 或任何可執行 payload。",
"allowed_response_fields": [
"owner_role_or_team",
"decision",
"decision_reason",
"canonical_source",
"github_target_disposition",
"visibility_review_owner",
"refs_truth_review_owner",
"tag_disposition_owner",
"github_only_refs_owner",
"internal_remote_disposition",
"secret_name_inventory_owner",
"server_side_refs_diff_owner",
"active_status",
"evidence_refs",
"followup_owner",
"product_boundary_owner",
"surface_owner",
"external_agent_owner",
"treasury_owner",
"runtime_gate_owner",
"affected_scope",
"redacted_evidence_refs",
"rollback_owner",
"maintenance_window",
"validation_plan"
],
"evidence_ref_rules": [
" repo snapshot owner metadata pointer",
"not_found_or_private private access request evidence repo ",
"canonical_source unknown_requires_more_evidence owner",
" token valuesecret valueprivate clone URL credentialcookiesessiondeploy key value ",
" mirror quarantine response"
],
"forbidden_payloads": [
"token_value",
"secret_value",
"private_key",
"cookie_or_session",
"private_clone_url_credential",
"repo_creation_command",
"visibility_change_command",
"write_or_admin_api_request",
"refs_sync_or_delete_request",
"force_push_or_tag_rewrite_request",
"github_primary_switch_request",
"repo_archive",
"git_object_pack",
"db_dump",
"unrelated_history_merge_request"
],
"allowed_submission_modes": [
"read_only_markdown_response",
"redacted_metadata_pointer",
"request_more_evidence",
"out_of_scope_disposition"
],
"awooop_display_mode": "display_owner_response_request_only",
"execution_authorized": false,
"not_approval": true,
"still_forbidden": [
"create_github_repo",
"change_repo_visibility",
"push_refs",
"delete_refs",
"force_push",
"switch_github_primary",
"store_secret_value",
"store_token_value"
]
},
"owner_response_template_statuses": [
{
"template_id": "target-awoooi-refs-blocked",
"github_repo": "owenhytsai/awoooi",
"source_key": "wooo/awoooi",
"display_order": 1,
"collection_status": "waiting_owner_response",
"request_status": "request_ready_not_sent",
"received_response_count": 0,
"accepted_response_count": 0,
"rejected_response_count": 0,
"latest_outcome_lane": "keep_waiting_owner_response",
"next_owner_action": "Owner `owenhytsai/awoooi` canonical sourcevisibility review owner refs truth owner GitHub target primary",
"awooop_display_mode": "display_template_status_only",
"execution_authorized": false,
"not_approval": true,
"still_forbidden": [
"create_github_repo",
"change_repo_visibility",
"push_refs",
"delete_refs",
"force_push",
"switch_github_primary",
"store_secret_value",
"store_token_value"
]
},
{
"template_id": "target-clawbot-v5-refs-blocked",
"github_repo": "owenhytsai/clawbot-v5",
"source_key": "wooo/clawbot-v5",
"display_order": 2,
"collection_status": "waiting_owner_response",
"request_status": "request_ready_not_sent",
"received_response_count": 0,
"accepted_response_count": 0,
"rejected_response_count": 0,
"latest_outcome_lane": "keep_waiting_owner_response",
"next_owner_action": "Owner `owenhytsai/clawbot-v5` main SHA / tag tag disposition owner refs sync",
"awooop_display_mode": "display_template_status_only",
"execution_authorized": false,
"not_approval": true,
"still_forbidden": [
"create_github_repo",
"change_repo_visibility",
"push_refs",
"delete_refs",
"force_push",
"switch_github_primary",
"store_secret_value",
"store_token_value"
]
},
{
"template_id": "target-wooo-aiops-refs-blocked",
"github_repo": "owenhytsai/wooo-aiops",
"source_key": "wooo/wooo-aiops",
"display_order": 3,
"collection_status": "waiting_owner_response",
"request_status": "request_ready_not_sent",
"received_response_count": 0,
"accepted_response_count": 0,
"rejected_response_count": 0,
"latest_outcome_lane": "keep_waiting_owner_response",
"next_owner_action": "Owner `owenhytsai/wooo-aiops` GitHub-only refs owner disposition GitHub-only refs",
"awooop_display_mode": "display_template_status_only",
"execution_authorized": false,
"not_approval": true,
"still_forbidden": [
"create_github_repo",
"change_repo_visibility",
"push_refs",
"delete_refs",
"force_push",
"switch_github_primary",
"store_secret_value",
"store_token_value"
]
},
{
"template_id": "target-wooo-infra-config-internal-remote",
"github_repo": "owenhytsai/wooo-infra-config",
"source_key": "wooo/wooo-infra-config",
"display_order": 4,
"collection_status": "waiting_owner_response",
"request_status": "request_ready_not_sent",
"received_response_count": 0,
"accepted_response_count": 0,
"rejected_response_count": 0,
"latest_outcome_lane": "keep_waiting_owner_response",
"next_owner_action": "Owner `owenhytsai/wooo-infra-config` 110 internal remote secret name inventory owner remote secret value",
"awooop_display_mode": "display_template_status_only",
"execution_authorized": false,
"not_approval": true,
"still_forbidden": [
"create_github_repo",
"change_repo_visibility",
"push_refs",
"delete_refs",
"force_push",
"switch_github_primary",
"store_secret_value",
"store_token_value"
]
},
{
"template_id": "target-ewoooc-private-or-new",
"github_repo": "owenhytsai/ewoooc",
"source_key": "wooo/ewoooc / root/momo-pro-system / momo working trees",
"display_order": 5,
"collection_status": "waiting_owner_response",
"request_status": "request_ready_not_sent",
"received_response_count": 0,
"accepted_response_count": 0,
"rejected_response_count": 0,
"latest_outcome_lane": "keep_waiting_owner_response",
"next_owner_action": "Owner `owenhytsai/ewoooc` momo-pro-system canonical private access request new target candidate disposition repo unrelated histories",
"awooop_display_mode": "display_template_status_only",
"execution_authorized": false,
"not_approval": true,
"still_forbidden": [
"create_github_repo",
"change_repo_visibility",
"push_refs",
"delete_refs",
"force_push",
"switch_github_primary",
"store_secret_value",
"store_token_value"
]
},
{
"template_id": "target-bitan-pharmacy-private-or-new",
"github_repo": "owenhytsai/bitan-pharmacy",
"source_key": "bitan-pharmacy",
"display_order": 6,
"collection_status": "waiting_owner_response",
"request_status": "request_ready_not_sent",
"received_response_count": 0,
"accepted_response_count": 0,
"rejected_response_count": 0,
"latest_outcome_lane": "keep_waiting_owner_response",
"next_owner_action": "Owner `owenhytsai/bitan-pharmacy` activeGitHub target disposition visibility review owner not_found_or_private repo",
"awooop_display_mode": "display_template_status_only",
"execution_authorized": false,
"not_approval": true,
"still_forbidden": [
"create_github_repo",
"change_repo_visibility",
"push_refs",
"delete_refs",
"force_push",
"switch_github_primary",
"store_secret_value",
"store_token_value"
]
},
{
"template_id": "target-tsenyang-website-private-or-new",
"github_repo": "owenhytsai/tsenyang-website",
"source_key": "tsenyang-website",
"display_order": 7,
"collection_status": "waiting_owner_response",
"request_status": "request_ready_not_sent",
"received_response_count": 0,
"accepted_response_count": 0,
"rejected_response_count": 0,
"latest_outcome_lane": "keep_waiting_owner_response",
"next_owner_action": "Owner `owenhytsai/tsenyang-website` activeGitHub target disposition visibility review owner not_found_or_private repo",
"awooop_display_mode": "display_template_status_only",
"execution_authorized": false,
"not_approval": true,
"still_forbidden": [
"create_github_repo",
"change_repo_visibility",
"push_refs",
"delete_refs",
"force_push",
"switch_github_primary",
"store_secret_value",
"store_token_value"
]
},
{
"template_id": "target-vibework-private-or-new",
"github_repo": "owenhytsai/VibeWork",
"source_key": "vibework",
"display_order": 8,
"collection_status": "waiting_owner_response",
"request_status": "request_ready_not_sent",
"received_response_count": 0,
"accepted_response_count": 0,
"rejected_response_count": 0,
"latest_outcome_lane": "keep_waiting_owner_response",
"next_owner_action": "Owner `owenhytsai/VibeWork` owner / visibility / canonical / target disposition not_found_or_private repo",
"awooop_display_mode": "display_template_status_only",
"execution_authorized": false,
"not_approval": true,
"still_forbidden": [
"create_github_repo",
"change_repo_visibility",
"push_refs",
"delete_refs",
"force_push",
"switch_github_primary",
"store_secret_value",
"store_token_value"
]
},
{
"template_id": "target-agent-bounty-protocol-private-or-new",
"github_repo": "owenhytsai/agent-bounty-protocol",
"source_key": "agent-bounty-protocol",
"display_order": 9,
"collection_status": "waiting_owner_response",
"request_status": "request_ready_not_sent",
"received_response_count": 0,
"accepted_response_count": 0,
"rejected_response_count": 0,
"latest_outcome_lane": "keep_waiting_owner_response",
"next_owner_action": "Owner `owenhytsai/agent-bounty-protocol` owner / visibility / canonical / target disposition not_found_or_private repo",
"awooop_display_mode": "display_template_status_only",
"execution_authorized": false,
"not_approval": true,
"still_forbidden": [
"create_github_repo",
"change_repo_visibility",
"push_refs",
"delete_refs",
"force_push",
"switch_github_primary",
"store_secret_value",
"store_token_value"
]
}
],
"owner_response_audit_event_templates": [
{
"event_template_id": "audit-github-target-response-request-shown",
"display_order": 1,
"event_status": "template_only_not_emitted",
"trigger": "AwoooP S4.10 owner response request packet ",
"purpose": " request packet metadata owner response ",
"allowed_metadata_fields": [
"event_template_id",
"request_id",
"requested_template_ids",
"target_contract",
"displayed_by_role",
"displayed_at_taipei",
"source_document_ref"
],
"forbidden_payloads": [
"owner_response_raw_body",
"token_value",
"secret_value",
"private_key",
"cookie_or_session",
"private_clone_url_credential",
"repo_creation_command",
"visibility_change_command",
"write_or_admin_api_request",
"refs_sync_or_delete_request",
"force_push_or_tag_rewrite_request",
"github_primary_switch_request",
"repo_archive",
"git_object_pack",
"db_dump",
"execution_request_payload"
],
"emitted_event_count": 0,
"stored_raw_payload_allowed": false,
"awooop_display_mode": "display_audit_template_only",
"execution_authorized": false,
"not_approval": true
},
{
"event_template_id": "audit-github-target-response-received-metadata",
"display_order": 2,
"event_status": "template_only_not_emitted",
"trigger": "Owner S4.10 GitHub target response metadata pointer ",
"purpose": " response metadata pointer response repo archivegit object payload",
"allowed_metadata_fields": [
"event_template_id",
"template_id",
"github_repo",
"owner_role_or_team",
"received_at_taipei",
"redacted_evidence_refs",
"source_document_ref"
],
"forbidden_payloads": [
"owner_response_raw_body",
"token_value",
"secret_value",
"private_key",
"cookie_or_session",
"private_clone_url_credential",
"repo_creation_command",
"visibility_change_command",
"write_or_admin_api_request",
"refs_sync_or_delete_request",
"force_push_or_tag_rewrite_request",
"github_primary_switch_request",
"repo_archive",
"git_object_pack",
"db_dump",
"execution_request_payload"
],
"emitted_event_count": 0,
"stored_raw_payload_allowed": false,
"awooop_display_mode": "display_audit_template_only",
"execution_authorized": false,
"not_approval": true
},
{
"event_template_id": "audit-github-target-response-outcome-classified",
"display_order": 3,
"event_status": "template_only_not_emitted",
"trigger": "AwoooP S4.10 acceptance checks rejection rules GitHub target owner response ",
"purpose": " outcomeowner wording response repo / refs / primary ",
"allowed_metadata_fields": [
"event_template_id",
"template_id",
"github_repo",
"collection_status",
"latest_outcome_lane",
"next_owner_action",
"classified_at_taipei",
"classified_by_role"
],
"forbidden_payloads": [
"owner_response_raw_body",
"token_value",
"secret_value",
"private_key",
"cookie_or_session",
"private_clone_url_credential",
"repo_creation_command",
"visibility_change_command",
"write_or_admin_api_request",
"refs_sync_or_delete_request",
"force_push_or_tag_rewrite_request",
"github_primary_switch_request",
"repo_archive",
"git_object_pack",
"db_dump",
"execution_request_payload"
],
"emitted_event_count": 0,
"stored_raw_payload_allowed": false,
"awooop_display_mode": "display_audit_template_only",
"execution_authorized": false,
"not_approval": true
}
],
"owner_response_redaction_examples": [
{
"example_id": "redaction-github-target-doc-ref",
"display_order": 1,
"example_status": "template_example_only",
"category": "github_target_existing_document_reference",
"safe_response_shape": [
"template_id=target-awoooi-refs-blocked",
"decision=hold_pending_refs_truth",
"canonical_source=wooo/awoooi",
"evidence_refs=[docs/security/GITHUB-TARGET-VISIBILITY-DECISION-TABLE.md, docs/security/source-control-ref-detail-diff.snapshot.json]",
"decision_reason= snapshot API raw body repo archive"
],
"required_redactions": [
" evidence repo snapshot metadata pointer",
"GitHub API repo slugstatusreview owner evidence ref",
" API request/response bodyheader private clone URL"
],
"forbidden_raw_values": [
"token_value",
"secret_value",
"private_clone_url_credential",
"api_request_header",
"api_response_raw_body",
"repo_archive"
],
"stored_raw_payload_allowed": false,
"awooop_display_mode": "display_redaction_example_only",
"execution_authorized": false,
"not_approval": true
},
{
"example_id": "redaction-owner-visibility-canonical-metadata",
"display_order": 2,
"example_status": "template_example_only",
"category": "owner_visibility_canonical_metadata",
"safe_response_shape": [
"owner_role_or_team=repo-owner-or-platform-team",
"visibility_review_owner=security-commander",
"canonical_source=unknown_requires_more_evidence",
"decision=unknown_requires_more_evidence",
"followup_owner=source-control-owner"
],
"required_redactions": [
"sessionone-time code API token",
"visibility decision reason ",
"followup_owner owner repo creationvisibility change primary approval"
],
"forbidden_raw_values": [
"password",
"cookie",
"session",
"one_time_code",
"approval_phrase_as_execution_authorization",
"admin_console_screenshot_with_secret"
],
"stored_raw_payload_allowed": false,
"awooop_display_mode": "display_redaction_example_only",
"execution_authorized": false,
"not_approval": true
},
{
"example_id": "redaction-private-target-access-metadata",
"display_order": 3,
"example_status": "template_example_only",
"category": "private_or_new_target_metadata",
"safe_response_shape": [
"template_id=target-ewoooc-private-or-new",
"github_repo=owenhytsai/ewoooc",
"decision=approve_private_target_access_request",
"github_target_disposition=private_access_request_only",
"credential_value_stored=false"
],
"required_redactions": [
"private target repo slugaccess request status owner metadata",
" clone URL hostnamespacerepo slug userinfoquery token header ",
" private access request repo fetch push visibility "
],
"forbidden_raw_values": [
"https_userinfo_credential",
"query_token",
"authorization_header",
"ssh_private_key",
"deploy_key_value",
"git_remote_with_secret"
],
"stored_raw_payload_allowed": false,
"awooop_display_mode": "display_redaction_example_only",
"execution_authorized": false,
"not_approval": true
},
{
"example_id": "redaction-refs-truth-dependency-summary",
"display_order": 4,
"example_status": "template_example_only",
"category": "refs_truth_dependency_summary",
"safe_response_shape": [
"template_id=target-clawbot-v5-refs-blocked",
"decision=hold_pending_refs_truth",
"refs_truth_review_owner=source-control-owner",
"server_side_refs_diff_owner=platform-ops",
"blocked_until=[S4.11 refs truth owner response, S4.12 workflow secret name owner response]"
],
"required_redactions": [
" refs truth ownerblocking contract evidence ref",
" diff repo snapshot redacted metadata pointer",
" git object packrepo archive sync/delete/force-push unrelated history merge request"
],
"forbidden_raw_values": [
"git_object_pack",
"repo_archive",
"refs_sync_command",
"delete_refs_command",
"force_push_command",
"unrelated_history_merge_request"
],
"stored_raw_payload_allowed": false,
"awooop_display_mode": "display_redaction_example_only",
"execution_authorized": false,
"not_approval": true
},
{
"example_id": "redaction-github-target-quarantine-pointer",
"display_order": 5,
"example_status": "template_example_only",
"category": "uncertain_sensitive_payload",
"safe_response_shape": [
"collection_status=quarantine_sensitive_payload",
"quarantine_reason= GitHub tokenprivate URL credentialrepo archive ",
"raw_payload_stored_in_repo=false",
"next_owner_action=request_redacted_metadata_pointer"
],
"required_redactions": [
" quarantine pointer",
" owner ",
" quarantine received / accepted count target decision wording"
],
"forbidden_raw_values": [
"owner_response_raw_body",
"github_token_or_pat",
"secret_screenshot",
"private_clone_url_credential",
"credential_file",
"repo_archive",
"execution_request_payload"
],
"stored_raw_payload_allowed": false,
"awooop_display_mode": "display_redaction_example_only",
"execution_authorized": false,
"not_approval": true
}
],
"owner_response_collection_checks": [
{
"check_id": "collection-github-target-request-packet-displayed",
"display_order": 1,
"title": " GitHub target owner response request packet",
"required": true,
"pass_condition": "AwoooP `owner_response_request_packet` 9 target templates evidence payload repo creationvisibility changerefs sync primary switch ",
"failure_lane": "keep_waiting_owner_response",
"awooop_display": "display_request_packet_only",
"execution_authorized": false,
"not_approval": true
},
{
"check_id": "collection-github-target-read-only-submission-mode",
"display_order": 2,
"title": "GitHub target read-only",
"required": true,
"pass_condition": "owner read-only markdown responseredacted metadata pointerrequest_more_evidence out_of_scope_disposition tokenrepo archivegit object packAPI write request execution request",
"failure_lane": "quarantine_sensitive_payload",
"awooop_display": "display_read_only_submission_only",
"execution_authorized": false,
"not_approval": true
},
{
"check_id": "collection-nine-target-template-tracking",
"display_order": 3,
"title": " GitHub targets ",
"required": true,
"pass_condition": "S4.10 requested_template_ids target received / accepted / rejected repo owner / visibility / canonical response",
"failure_lane": "request_more_evidence",
"awooop_display": "display_per_target_tracking",
"execution_authorized": false,
"not_approval": true
},
{
"check_id": "collection-github-target-redacted-evidence-only",
"display_order": 4,
"title": " GitHub target evidence refs",
"required": true,
"pass_condition": " repo snapshot path metadata pointer tokenprivate URL credentialsecretrepo archive git object quarantine",
"failure_lane": "quarantine_sensitive_payload",
"awooop_display": "display_redacted_evidence_only",
"execution_authorized": false,
"not_approval": true
},
{
"check_id": "collection-github-target-no-approval-language",
"display_order": 5,
"title": " GitHub target ",
"required": true,
"pass_condition": "使 owner response OK owner / visibility / canonical disposition response repo creationvisibility changerefs syncdelete refsforce push GitHub primary approval",
"failure_lane": "reject_execution_request",
"awooop_display": "display_scope_response_only",
"execution_authorized": false,
"not_approval": true
},
{
"check_id": "collection-github-target-audit-metadata-only",
"display_order": 6,
"title": " GitHub target audit metadata",
"required": true,
"pass_condition": "AwoooP request shownresponse received metadatatemplate idgithub repoowner role/teamaffected scoperedacted evidence refsfollowup ownerrollback ownermaintenance windowvalidation plan outcome lane token valuesecret valueprivate clone URL credentialrepo archivegit object pack payload",
"failure_lane": "quarantine_sensitive_payload",
"awooop_display": "display_audit_metadata_only",
"execution_authorized": false,
"not_approval": true
}
],
"intake_preflight_checks": [
{
"check_id": "preflight-known-github-target",
"display_order": 1,
"title": " GitHub target",
"required": true,
"pass_condition": "`github_repo` `template_id` S4.10 approval-required targets repo not_found_or_private ",
"failure_lane": "request_owner_correction",
"awooop_display": "request_more_evidence",
"execution_authorized": false
},
{
"check_id": "preflight-required-github-target-owner-fields",
"display_order": 2,
"title": "GitHub target ",
"required": true,
"pass_condition": " response owner role/teamdecisiondecision_reasonaffected_scoperedacted_evidence_refsfollowup_ownerrollback_ownermaintenance_window validation_plantarget-specific canonical sourcetarget dispositionvisibility review owner out-of-scope disposition template ",
"failure_lane": "request_more_evidence",
"awooop_display": "request_more_evidence",
"execution_authorized": false
},
{
"check_id": "preflight-allowed-github-target-decision",
"display_order": 3,
"title": "GitHub target decision ",
"required": true,
"pass_condition": "`decision` response template acceptable_decisions OK accepted",
"failure_lane": "request_owner_correction",
"awooop_display": "request_more_evidence",
"execution_authorized": false
},
{
"check_id": "preflight-github-target-redacted-evidence-only",
"display_order": 4,
"title": " GitHub target evidence refs",
"required": true,
"pass_condition": "`evidence_refs` repo snapshot owner metadata pointer tokensecretcookiesessionprivate keyprivate clone URL credentialrepo archive git object",
"failure_lane": "quarantine_sensitive_payload",
"awooop_display": "quarantine_sensitive_payload",
"execution_authorized": false
},
{
"check_id": "preflight-no-source-control-execution-request",
"display_order": 5,
"title": " source-control ",
"required": true,
"pass_condition": "response repo visibility refs sync/delete/force-pushworkflow/secret/runner GitHub primary switchGitea Kali scan runtime action",
"failure_lane": "reject_execution_request",
"awooop_display": "reject_execution_request",
"execution_authorized": false
},
{
"check_id": "preflight-all-nine-targets-before-accepted",
"display_order": 6,
"title": " GitHub targets",
"required": true,
"pass_condition": "S4.10 accepted response templates owner / visibility / canonical response waiting request_more_evidence",
"failure_lane": "keep_waiting_owner_response",
"awooop_display": "ready_for_owner_review",
"execution_authorized": false
}
],
"response_templates": [
{
"template_id": "target-awoooi-refs-blocked",
"github_repo": "owenhytsai/awoooi",
"source_key": "wooo/awoooi",
"target_state": "exists_refs_blocked",
"risk": "HIGH",
"requested_owner_decision": " ownercanonical sourcevisibility review owner refs truth review owner refs action disabled",
"required_owner_fields": [
"owner_role_or_team",
"decision",
"decision_reason",
"affected_scope",
"redacted_evidence_refs",
"followup_owner",
"rollback_owner",
"maintenance_window",
"validation_plan",
"canonical_source",
"github_target_disposition",
"visibility_review_owner",
"refs_truth_review_owner",
"evidence_refs"
],
"acceptable_decisions": [
"approve_existing_target_as_candidate",
"hold_pending_refs_truth",
"hold_pending_canonical_review",
"unknown_requires_more_evidence"
],
"minimum_evidence_refs": [
"docs/security/GITEA-GITHUB-MIGRATION-SNAPSHOT.md",
"docs/security/source-control-ref-detail-diff.snapshot.json",
"docs/security/source-control-workflow-secret-name-inventory.snapshot.json"
],
"acceptance_criteria": [
" `wooo/awoooi` canonical source owner review ",
" refs truth / workflow-secret parity / rollback ADR refs primary",
" decision hold evidence owner",
" S4.10 canonical 9 affected scoperedacted evidence refsfollowup ownerrollback ownermaintenance window validation plan"
],
"rejection_conditions": [
" GitHub repo primary",
" pushdeleteforce push refs visibility",
" canonical sourcevisibility review owner refs truth review owner",
" rollback ownermaintenance window validation plan"
],
"allowed_outputs": [
" GitHub target decision table owner / canonical / visibility read-only ",
" repo approval package blocked_until ",
" primary readiness blocked"
],
"execution_authorized": false
},
{
"template_id": "target-clawbot-v5-refs-blocked",
"github_repo": "owenhytsai/clawbot-v5",
"source_key": "wooo/clawbot-v5",
"target_state": "exists_refs_blocked",
"risk": "MEDIUM",
"requested_owner_decision": " main SHA / tag owner refs action disabled",
"required_owner_fields": [
"owner_role_or_team",
"decision",
"decision_reason",
"affected_scope",
"redacted_evidence_refs",
"followup_owner",
"rollback_owner",
"maintenance_window",
"validation_plan",
"canonical_source",
"tag_disposition_owner",
"visibility_review_owner",
"evidence_refs"
],
"acceptable_decisions": [
"approve_existing_target_as_candidate",
"hold_pending_refs_truth",
"mark_external_or_out_of_scope",
"unknown_requires_more_evidence"
],
"minimum_evidence_refs": [
"docs/security/SOURCE-CONTROL-CLAWBOT-V5-SNAPSHOT.md",
"docs/security/source-control-reconcile-plan.snapshot.json",
"docs/security/source-control-ref-truth-classification.snapshot.json"
],
"acceptance_criteria": [
" main SHA tag owner ",
" active refs review lane",
" scope owner disposition",
" S4.10 canonical 9 affected scoperedacted evidence refsfollowup ownerrollback ownermaintenance window validation plan"
],
"rejection_conditions": [
" refs sync",
" GitHub Gitea tag disposition",
" repo refs",
" rollback ownermaintenance window validation plan"
],
"allowed_outputs": [
" refs truth review lane",
" approval package owner decision ",
" refs action disabled"
],
"execution_authorized": false
},
{
"template_id": "target-wooo-aiops-refs-blocked",
"github_repo": "owenhytsai/wooo-aiops",
"source_key": "wooo/wooo-aiops",
"target_state": "exists_refs_blocked",
"risk": "MEDIUM",
"requested_owner_decision": " GitHub-only branch / tags owner disposition refs action disabled",
"required_owner_fields": [
"owner_role_or_team",
"decision",
"decision_reason",
"affected_scope",
"redacted_evidence_refs",
"followup_owner",
"rollback_owner",
"maintenance_window",
"validation_plan",
"canonical_source",
"github_only_refs_owner",
"visibility_review_owner",
"evidence_refs"
],
"acceptable_decisions": [
"approve_existing_target_as_candidate",
"hold_pending_refs_truth",
"mark_external_or_out_of_scope",
"unknown_requires_more_evidence"
],
"minimum_evidence_refs": [
"docs/security/SOURCE-CONTROL-WOOO-AIOPS-SNAPSHOT.md",
"docs/security/source-control-ref-detail-diff.snapshot.json",
"docs/security/source-control-ref-truth-classification.snapshot.json"
],
"acceptance_criteria": [
" GitHub-only branch / tags owner owner",
" main SHA truth source blocked",
" out_of_scope AwoooP / AWOOOI scope ",
" S4.10 canonical 9 affected scoperedacted evidence refsfollowup ownerrollback ownermaintenance window validation plan"
],
"rejection_conditions": [
" GitHub-only refs",
" GitHub-only refs owner",
" refs classification sync",
" rollback ownermaintenance window validation plan"
],
"allowed_outputs": [
" refs truth classification owner review ",
" GitHub target decision table",
" GitHub primary readiness blocked"
],
"execution_authorized": false
},
{
"template_id": "target-wooo-infra-config-internal-remote",
"github_repo": "owenhytsai/wooo-infra-config",
"source_key": "wooo/wooo-infra-config",
"target_state": "exists_aligned",
"risk": "MEDIUM",
"requested_owner_decision": " 110 internal remote infra owner secret name inventory owner",
"required_owner_fields": [
"owner_role_or_team",
"decision",
"decision_reason",
"affected_scope",
"redacted_evidence_refs",
"followup_owner",
"rollback_owner",
"maintenance_window",
"validation_plan",
"canonical_source",
"internal_remote_disposition",
"secret_name_inventory_owner",
"evidence_refs"
],
"acceptable_decisions": [
"approve_existing_target_as_candidate",
"hold_pending_canonical_review",
"mark_external_or_out_of_scope",
"unknown_requires_more_evidence"
],
"minimum_evidence_refs": [
"docs/security/GIT-REMOTE-REFS-WOOO-INFRA-CONFIG-SNAPSHOT.md",
"docs/security/source-control-workflow-secret-name-inventory.snapshot.json",
"docs/security/source-control-workflow-secret-name-export-request.snapshot.json"
],
"acceptance_criteria": [
" 110 internal remote active sourcemirrorlegacy ",
" infra secret inventory owner",
" internal remote disposition remote ",
" S4.10 canonical 9 affected scoperedacted evidence refsfollowup ownerrollback ownermaintenance window validation plan"
],
"rejection_conditions": [
" remote remote URL",
" secret value",
" 110 internal remote ",
" rollback ownermaintenance window validation plan"
],
"allowed_outputs": [
" canonical decision table remote disposition",
" workflow / secret name inventory owner gap",
" repo / secret / refs disabled"
],
"execution_authorized": false
},
{
"template_id": "target-ewoooc-private-or-new",
"github_repo": "owenhytsai/ewoooc",
"source_key": "wooo/ewoooc / root/momo-pro-system / momo working trees",
"target_state": "not_found_or_private",
"risk": "HIGH",
"requested_owner_decision": " ewoooc / momo-pro-system canonical GitHub target private repo repo ",
"required_owner_fields": [
"owner_role_or_team",
"decision",
"decision_reason",
"affected_scope",
"redacted_evidence_refs",
"followup_owner",
"rollback_owner",
"maintenance_window",
"validation_plan",
"canonical_source",
"github_target_disposition",
"visibility_review_owner",
"server_side_refs_diff_owner",
"evidence_refs"
],
"acceptable_decisions": [
"approve_private_target_access_request",
"approve_new_target_creation_candidate",
"hold_pending_canonical_review",
"mark_external_or_out_of_scope",
"unknown_requires_more_evidence"
],
"minimum_evidence_refs": [
"docs/security/GITEA-PUBLIC-REPO-SEARCH-SNAPSHOT.md",
"docs/security/LOCAL-REPO-CANONICAL-EWOOOC-MOMO-SNAPSHOT.md",
"docs/security/github-target-decision.snapshot.json"
],
"acceptance_criteria": [
" `not_found_or_private` ",
" ewoooc / momo-pro-system canonical owner",
" repo repo migration plan",
" S4.10 canonical 9 affected scoperedacted evidence refsfollowup ownerrollback ownermaintenance window validation plan"
],
"rejection_conditions": [
" `not_found_or_private` repo ",
" unrelated histories",
" momo / ewoooc working tree",
" rollback ownermaintenance window validation plan"
],
"allowed_outputs": [
" target decision table disposition",
" approval package canonical blocker",
" request_more_evidence lane"
],
"execution_authorized": false
},
{
"template_id": "target-bitan-pharmacy-private-or-new",
"github_repo": "owenhytsai/bitan-pharmacy",
"source_key": "bitan-pharmacy",
"target_state": "not_found_or_private",
"risk": "MEDIUM",
"requested_owner_decision": " repo activeGitHub target dispositionowner visibility review owner",
"required_owner_fields": [
"owner_role_or_team",
"decision",
"decision_reason",
"affected_scope",
"redacted_evidence_refs",
"followup_owner",
"rollback_owner",
"maintenance_window",
"validation_plan",
"active_status",
"canonical_source",
"github_target_disposition",
"visibility_review_owner",
"evidence_refs"
],
"acceptable_decisions": [
"approve_private_target_access_request",
"approve_new_target_creation_candidate",
"hold_pending_canonical_review",
"mark_external_or_out_of_scope",
"unknown_requires_more_evidence"
],
"minimum_evidence_refs": [
"docs/security/GIT-REMOTE-REFS-BITAN-TSENYANG-SNAPSHOT.md",
"docs/security/github-target-decision.snapshot.json",
"docs/security/source-control-primary-readiness-gate.snapshot.json"
],
"acceptance_criteria": [
" repo active",
" GitHub target private repoout-of-scope ",
" active workflow / secret name parity gate",
" S4.10 canonical 9 affected scoperedacted evidence refsfollowup ownerrollback ownermaintenance window validation plan"
],
"rejection_conditions": [
" target repo",
" active_status visibility review owner",
" push refs 110 remote",
" rollback ownermaintenance window validation plan"
],
"allowed_outputs": [
" target decision table active / disposition ",
" approval package blocked_until",
" repo creation refs action disabled"
],
"execution_authorized": false
},
{
"template_id": "target-tsenyang-website-private-or-new",
"github_repo": "owenhytsai/tsenyang-website",
"source_key": "tsenyang-website",
"target_state": "not_found_or_private",
"risk": "MEDIUM",
"requested_owner_decision": " repo activeGitHub target dispositionowner visibility review owner",
"required_owner_fields": [
"owner_role_or_team",
"decision",
"decision_reason",
"affected_scope",
"redacted_evidence_refs",
"followup_owner",
"rollback_owner",
"maintenance_window",
"validation_plan",
"active_status",
"canonical_source",
"github_target_disposition",
"visibility_review_owner",
"evidence_refs"
],
"acceptable_decisions": [
"approve_private_target_access_request",
"approve_new_target_creation_candidate",
"hold_pending_canonical_review",
"mark_external_or_out_of_scope",
"unknown_requires_more_evidence"
],
"minimum_evidence_refs": [
"docs/security/GIT-REMOTE-REFS-BITAN-TSENYANG-SNAPSHOT.md",
"docs/security/github-target-decision.snapshot.json",
"docs/security/source-control-primary-readiness-gate.snapshot.json"
],
"acceptance_criteria": [
" repo active",
" GitHub target private repoout-of-scope ",
" active workflow / secret name parity gate",
" S4.10 canonical 9 affected scoperedacted evidence refsfollowup ownerrollback ownermaintenance window validation plan"
],
"rejection_conditions": [
" target repo",
" active_status visibility review owner",
" push refs 110 remote",
" rollback ownermaintenance window validation plan"
],
"allowed_outputs": [
" target decision table active / disposition ",
" approval package blocked_until",
" repo creation refs action disabled"
],
"execution_authorized": false
},
{
"template_id": "target-vibework-private-or-new",
"github_repo": "owenhytsai/VibeWork",
"source_key": "vibework",
"target_state": "not_found_or_private",
"risk": "HIGH",
"requested_owner_decision": " VibeWork GitHub targetrepo ownersurface ownercanonical source visibility review owner",
"required_owner_fields": [
"owner_role_or_team",
"decision",
"decision_reason",
"affected_scope",
"redacted_evidence_refs",
"followup_owner",
"rollback_owner",
"maintenance_window",
"validation_plan",
"canonical_source",
"github_target_disposition",
"visibility_review_owner",
"product_boundary_owner",
"surface_owner",
"evidence_refs"
],
"acceptable_decisions": [
"approve_private_target_access_request",
"approve_new_target_creation_candidate",
"hold_pending_product_boundary_review",
"hold_pending_canonical_review",
"unknown_requires_more_evidence"
],
"minimum_evidence_refs": [
"docs/security/source-control-workflow-secret-name-local-evidence.snapshot.json",
"docs/security/source-control-workflow-secret-name-inventory.snapshot.json",
"docs/security/source-control-primary-readiness-gate.snapshot.json"
],
"acceptance_criteria": [
" VibeWork private GitHub target target candidate",
" product boundary ownerrepo ownersurface owner visibility review owner",
" VibeWork target decision AWOOOI primary cutover approval",
" S4.10 canonical 9 affected scoperedacted evidence refsfollowup ownerrollback ownermaintenance window validation plan"
],
"rejection_conditions": [
" not_found_or_private repo",
" product boundary ownercanonical source visibility review owner",
" workflow secret valuepush refs primary",
" rollback ownermaintenance window validation plan"
],
"allowed_outputs": [
" GitHub target decision table VibeWork read-only disposition",
" repo approval package product boundary blocker",
" primary readiness blocked"
],
"execution_authorized": false
},
{
"template_id": "target-agent-bounty-protocol-private-or-new",
"github_repo": "owenhytsai/agent-bounty-protocol",
"source_key": "agent-bounty-protocol",
"target_state": "not_found_or_private",
"risk": "HIGH",
"requested_owner_decision": " agent-bounty-protocol GitHub targetrepo ownerdeployment ownerexternal agent ownertreasury ownercanonical source visibility review ownerruntime gate 0",
"required_owner_fields": [
"owner_role_or_team",
"decision",
"decision_reason",
"affected_scope",
"redacted_evidence_refs",
"followup_owner",
"rollback_owner",
"maintenance_window",
"validation_plan",
"canonical_source",
"github_target_disposition",
"visibility_review_owner",
"external_agent_owner",
"treasury_owner",
"runtime_gate_owner",
"evidence_refs"
],
"acceptable_decisions": [
"approve_private_target_access_request",
"approve_new_target_creation_candidate",
"hold_pending_agent_runtime_boundary_review",
"hold_pending_canonical_review",
"unknown_requires_more_evidence"
],
"minimum_evidence_refs": [
"docs/security/source-control-workflow-secret-name-local-evidence.snapshot.json",
"docs/security/source-control-workflow-secret-name-inventory.snapshot.json",
"docs/security/source-control-primary-readiness-gate.snapshot.json"
],
"acceptance_criteria": [
" agent-bounty-protocol private GitHub target target candidate",
" repodeploymentexternal agenttreasury runtime gate owner",
" A2A / MCP / bounty / treasury / payout / withdrawal target response runtime",
" S4.10 canonical 9 affected scoperedacted evidence refsfollowup ownerrollback ownermaintenance window validation plan"
],
"rejection_conditions": [
" not_found_or_private repo",
" external agent ownertreasury ownerruntime gate owner visibility review owner",
" agent actionpayoutwithdrawalworkflow push refs primary",
" rollback ownermaintenance window validation plan"
],
"allowed_outputs": [
" GitHub target decision table agent-bounty-protocol read-only disposition",
" repo approval package agent / treasury / runtime blocker",
" primary readiness blocked active runtime gate 0"
],
"execution_authorized": false
}
],
"acceptance_checks": [
{
"check_id": "maps_to_known_github_target",
"title": " GitHub target",
"required": true,
"pass_condition": "`github_repo` github_target_decision_v1 9 approval-required targets ",
"failure_lane": "reject_unknown_target",
"execution_authorized": false
},
{
"check_id": "decision_value_allowed",
"title": "",
"required": true,
"pass_condition": "`decision` target template acceptable_decisions ",
"failure_lane": "request_owner_correction",
"execution_authorized": false
},
{
"check_id": "owner_and_visibility_present",
"title": "owner visibility review ",
"required": true,
"pass_condition": " canonical 9 template visibility review ownercanonical source out-of-scope disposition",
"failure_lane": "request_more_evidence",
"execution_authorized": false
},
{
"check_id": "canonical_source_present",
"title": "canonical source ",
"required": true,
"pass_condition": "in-scope candidate target canonical source unknown_requires_more_evidence",
"failure_lane": "keep_primary_blocked",
"execution_authorized": false
},
{
"check_id": "blocked_until_respected",
"title": "blocked_until ",
"required": true,
"pass_condition": " refs truthworkflow-secret parityGitea inventoryrollback ADR server-side diff ",
"failure_lane": "reject_scope_jump",
"execution_authorized": false
},
{
"check_id": "no_repo_creation_or_visibility_change",
"title": " repo creation visibility change ",
"required": true,
"pass_condition": " repo visibility ",
"failure_lane": "reject_runtime_source_control_action",
"execution_authorized": false
},
{
"check_id": "no_refs_or_primary_action",
"title": " refs primary action",
"required": true,
"pass_condition": " pushdeleteforce pushmirror syncprimary switch disable Gitea",
"failure_lane": "reject_refs_or_primary_action",
"execution_authorized": false
},
{
"check_id": "secret_values_absent",
"title": " secret value",
"required": true,
"pass_condition": "`redacted_evidence_refs` repo snapshot owner metadata tokencredentialsecret valueprivate key deploy key value",
"failure_lane": "quarantine_sensitive_payload",
"execution_authorized": false
}
],
"rejection_rules": [
" token valuePATcookiesessionCSRF tokenprivate key partial credential ",
" repo creation commandAPI request bodyCLI command automation payload ",
" visibility change command public/private/internal visibility ",
" push refsdelete refsforce pushmirror synctag rewrite branch rewrite ",
" GitHub primary Gitea Gitea Gitea fallback ",
" ownervisibility review ownercanonical source out-of-scope disposition accepted",
" `not_found_or_private` repo ",
" unrelated histories momo / ewoooc working tree ",
" owner decision response repo migration approvalrefs sync approval primary approval ",
" URL mirror quarantine"
],
"allowed_outputs": [
" `github-target-decision.snapshot.json` read-only owner / visibility / canonical decision ",
" `github-target-repo-approval-package.snapshot.json` blocked_untilreview owner evidence refs",
" `source-control-primary-readiness-gate.snapshot.json` blocker wording",
" `source-control-approval-board.snapshot.json` review lane",
" request_more_evidence / quarantine lane",
" `github_primary_ready_count=0` execution flags false",
" read-only owner response validation record candidate execution queue",
" S4.10 調 owner response accepted count"
],
"forbidden_actions": [
" GitHub repo",
" GitHub repo visibility",
"pushdeleteforce pushmirror sync rewrite refs",
" GitHub primary",
" Gitea repo",
" secret valuetoken valueprivate keycookiesession deploy key value",
" response packet migration execution approval",
" AwoooP execution action button"
]
}