5.4 KiB
Gitea 清冊覆蓋 Owner Attestation
| 項目 | 內容 |
|---|---|
| 日期 | 2026-05-17 |
| 狀態 | 草案,等待 owner attestation |
| 資料契約 | docs/schemas/gitea_inventory_coverage_attestation_v1.schema.json |
| 快照 | docs/security/gitea-inventory-coverage-attestation.snapshot.json |
| 來源契約 | gitea_repo_inventory_v1 |
| 上游請求 | gitea_authenticated_inventory_export_request_v1 / gitea_authenticated_inventory_import_acceptance_v1 |
| Response 收件包 | docs/security/GITEA-INVENTORY-OWNER-ATTESTATION-RESPONSE.md |
| 模式 | coverage_attestation_only |
| 執行面授權 | false |
0. 核心結論
S4.7 補的是「owner 怎麼說明 Gitea 清冊覆蓋缺口」。
S4.9 已補上 owner response request packet、template status ledger、audit event templates、redaction examples、display sections、collection checks 與收件包,規範 AwoooP 要如何提示 owner、如何逐 template 顯示 waiting / request ready、如何顯示 0 emitted 的脫敏 metadata audit template、如何提供脫敏 evidence 回覆範例、如何固定只讀顯示順序、如何維持 request / received / accepted 分離、owner 回覆這 5 個 items 時的必填欄位、驗收規則與拒收規則;目前仍未收到 response。
目前 gitea_repo_inventory_v1 仍是 public-only / partial:未認證公開範圍只看到 2 個 repos,本機 remote evidence 看到 4 個 Gitea unique repos,另有 4 個 110 internal adjacent sources 需要判定是否屬本輪 GitHub migration scope。
此文件不要求使用者貼 token,不匯入 payload,不寫 Gitea,不建立 GitHub repo,不 sync refs,也不切 GitHub primary。它只把 owner 需要表態的 5 個 coverage items 固定下來,讓 AwoooP 可以 mirror 成 review lane。
1. Attestation 摘要
| 指標 | 值 |
|---|---|
| owner attestation 狀態 | waiting_owner_attestation |
| 必要 attestation items | 5 |
| 已收到 attestation | 0 |
| 已接受 attestation | 0 |
| 已拒收 attestation | 0 |
| S4.9 owner response request packet | 1 |
| S4.9 owner response template statuses | 5 |
| S4.9 owner response audit event templates | 3 |
| S4.9 owner response redaction examples | 5 |
| S4.9 owner response display sections | 8 |
| S4.9 owner response collection checks | 6 |
| S4.9 owner response templates | 5 |
| 已收到 owner response | 0 |
| 未認證公開範圍 repos | 2 |
| 本機可見 Gitea unique repos | 4 |
| 本機 Gitea 覆蓋缺口 | 2 |
| 110 internal adjacent sources | 4 |
| 需要 owner scope decision | true |
| 允許收集 token value | false |
| 允許 repo write / refs sync | false |
| 授權切換 GitHub primary | false |
2. 必要 Attestation Items
| Item | 需要 owner 判定 | 目前缺口 |
|---|---|---|
public_only_vs_local_gitea_gap |
wooo/clawbot-v5、wooo/wooo-aiops 是否仍屬本輪 scope |
public-only 2 repos,本機 Gitea unique 4 repos |
org_user_endpoint_identity |
wooo 應以 user、org 或兩者盤點 |
org endpoint blocked / 404 不等於沒有 private repos |
internal_110_adjacent_scope |
bitan-pharmacy、root/momo-pro-system、tsenyang-website、wooo/wooo-infra-config 是否納入 |
110 adjacent sources 未正式 scope decision |
repo_owner_canonical_scope |
每個 in-scope repo 的 owner、canonical source、GitHub target、visibility 責任人 | GitHub target / canonical / owner 尚未全量確認 |
legacy_or_inaccessible_repo_disposition |
legacy、archived、external 或 inaccessible repo 的處置 | 未出現在 payload 的 repo 不能自動視為完成 |
3. 可接受決策值
| 決策值 | 意義 |
|---|---|
in_scope |
納入本輪 inventory / GitHub migration scope |
out_of_scope |
排除本輪 scope,但必須留下 owner 理由 |
legacy_archived |
歷史或封存來源,只保留 evidence 與後續 review |
external_system |
由外部系統或非本輪 source-control 管線管理 |
inaccessible_requires_followup |
目前不可讀,需要 owner / 管理者補 evidence |
unknown_requires_more_evidence |
evidence 不足,維持 blocker |
4. AwoooP 可做
- 顯示 S4.7 owner attestation request 與 5 個 coverage items。
- 將每個 item mirror 成 review lane 或 approval candidate。
- 顯示目前
received_attestation_count=0、accepted_attestation_count=0。 - 在 owner 提供決策後,只更新 read-only matrix、decision table、readiness gate 與 status rollup。
- 維持
gitea_repo_inventory_v1.status=partial,直到 S4.6 payload 通過且 attestation 被接受。
5. AwoooP 不可做
- 不要求使用者貼 token value。
- 不保存 token、secret、cookie、session、private key。
- 不用 write-capable token。
- 不寫入 Gitea,不建立、刪除、封存或修改 repo。
- 不建立 GitHub repo,不修改 visibility,不 sync refs,不 delete refs,不 force push。
- 不把 owner attestation 當成 GitHub primary approval。
- 不新增 scan / execute / repo / refs action button。
6. 階段定位
S4.7 是 S4.5 匯出請求與 S4.6 匯入驗收之後的 owner scope decision gate。
它解決的是「哪些缺口需要 owner 說清楚」,不是「開始搬 repo」。完成 S4.7 後,仍需 authenticated/admin export payload、refs truth、workflow / secret name parity、rollback ADR owner approval 與逐 repo runtime gate,才能談 GitHub primary cutover。