90 lines
2.0 KiB
JSON
90 lines
2.0 KiB
JSON
{
|
||
"$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
|
||
}
|