{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "urn:awoooi:source-control-approval-board-v1", "title": "AWOOOI Source Control Approval Board (v1)", "description": "把 Gitea -> GitHub 低摩擦遷移中的逐 repo owner / visibility / canonical / refs reconcile 決策整理成可供 AwoooP mirror 的只讀 board。", "type": "object", "required": [ "schema_version", "status", "date", "default_mode", "authenticated_inventory_gate", "item_count", "pending_approval_count", "board_items" ], "properties": { "schema_version": { "const": "source_control_approval_board_v1" }, "status": { "type": "string", "enum": ["draft"] }, "date": { "type": "string" }, "default_mode": { "type": "string", "enum": ["mirror_only"] }, "authenticated_inventory_gate": { "type": "object", "required": [ "status", "reason", "allowed_next_step", "still_forbidden" ], "properties": { "status": { "type": "string", "enum": ["blocked", "ready"] }, "reason": { "type": "string" }, "allowed_next_step": { "type": "array", "items": {"type": "string"} }, "still_forbidden": { "type": "array", "items": {"type": "string"} } }, "additionalProperties": false }, "item_count": { "type": "integer", "minimum": 0 }, "pending_approval_count": { "type": "integer", "minimum": 0 }, "board_items": { "type": "array", "items": { "type": "object", "required": [ "github_repo", "source_key", "lane", "risk", "probe_status", "target_state", "approval_status", "required_decision", "low_friction_next_step", "blocked_until", "allowed_after_approval", "still_forbidden", "evidence_refs", "awooop_consumption" ], "properties": { "github_repo": {"type": "string"}, "source_key": {"type": "string"}, "lane": { "type": "string", "enum": [ "refs_reconcile", "target_creation_or_access", "internal_remote_purpose", "scope_review" ] }, "risk": { "type": "string", "enum": ["LOW", "MEDIUM", "HIGH"] }, "probe_status": {"type": "string"}, "target_state": {"type": "string"}, "approval_status": {"type": "string"}, "required_decision": {"type": "string"}, "low_friction_next_step": {"type": "string"}, "blocked_until": { "type": "array", "items": {"type": "string"} }, "allowed_after_approval": { "type": "array", "items": {"type": "string"} }, "still_forbidden": { "type": "array", "items": {"type": "string"} }, "evidence_refs": { "type": "array", "items": {"type": "string"} }, "awooop_consumption": { "type": "string", "enum": ["mirror_only", "approval_candidate", "scope_review_only"] } }, "additionalProperties": false } } }, "additionalProperties": false }