{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "urn:awoooi:source-control-migration-event-v1", "title": "AWOOOI Source Control 遷移事件 (v1)", "description": "Gitea 全量版本轉移到 GitHub 的供應鏈安全證據契約。此事件只表示盤點、同步與驗證狀態,不授權主控切換。", "type": "object", "required": [ "schema_version", "gitea_repo", "github_repo", "branch_count_gitea", "branch_count_github", "tag_count_gitea", "tag_count_github", "latest_sha_gitea", "latest_sha_github", "workflows_mapped", "webhooks_mapped", "secrets_inventory_only", "status" ], "properties": { "schema_version": { "const": "source_control_migration_event_v1" }, "gitea_repo": { "type": "string", "minLength": 1 }, "github_repo": { "type": "string", "minLength": 1 }, "branch_count_gitea": { "type": "integer", "minimum": 0 }, "branch_count_github": { "type": "integer", "minimum": 0 }, "tag_count_gitea": { "type": "integer", "minimum": 0 }, "tag_count_github": { "type": "integer", "minimum": 0 }, "latest_sha_gitea": { "type": "string", "pattern": "^[0-9a-fA-F]{7,40}$" }, "latest_sha_github": { "type": "string", "pattern": "^[0-9a-fA-F]{7,40}$" }, "workflows_mapped": { "type": "boolean" }, "webhooks_mapped": { "type": "boolean" }, "secrets_inventory_only": { "type": "boolean", "const": true, "description": "Secrets 只盤點名稱與 owner,不搬 secret value。" }, "status": { "type": "string", "enum": [ "inventory", "mirrored", "verified", "blocked" ] }, "blocking_reason": { "type": "string" }, "evidence_refs": { "type": "array", "items": { "type": "string" } } }, "additionalProperties": false }