# 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 可做 1. 顯示 S4.7 owner attestation request 與 5 個 coverage items。 2. 將每個 item mirror 成 review lane 或 approval candidate。 3. 顯示目前 `received_attestation_count=0`、`accepted_attestation_count=0`。 4. 在 owner 提供決策後,只更新 read-only matrix、decision table、readiness gate 與 status rollup。 5. 維持 `gitea_repo_inventory_v1.status=partial`,直到 S4.6 payload 通過且 attestation 被接受。 ## 5. AwoooP 不可做 1. 不要求使用者貼 token value。 2. 不保存 token、secret、cookie、session、private key。 3. 不用 write-capable token。 4. 不寫入 Gitea,不建立、刪除、封存或修改 repo。 5. 不建立 GitHub repo,不修改 visibility,不 sync refs,不 delete refs,不 force push。 6. 不把 owner attestation 當成 GitHub primary approval。 7. 不新增 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。