Files
awoooi/docs/security/GITHUB-TARGET-REPO-APPROVAL-PACKAGE.md
Your Name 58e760fae2
All checks were successful
CD Pipeline / tests (push) Successful in 1m25s
Code Review / ai-code-review (push) Successful in 13s
CD Pipeline / build-and-deploy (push) Successful in 4m2s
CD Pipeline / post-deploy-checks (push) Successful in 1m48s
feat(security): 擴充 S4.10 target owner response
2026-06-11 20:30:41 +08:00

83 lines
6.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# GitHub Target Repo-by-repo Approval Package
| 項目 | 內容 |
|------|------|
| 日期 | 2026-06-11 |
| 狀態 | 草案,等待人工批准 |
| 上游決策 | `docs/security/GITHUB-TARGET-VISIBILITY-DECISION-TABLE.md` |
| JSON snapshot | `docs/security/github-target-repo-approval-package.snapshot.json` |
| Schema | `docs/schemas/github_target_repo_approval_package_v1.schema.json` |
| Owner response 收件包 | `docs/security/GITHUB-TARGET-OWNER-DECISION-RESPONSE.md` |
| 原則 | 低摩擦、逐 repo 決策,不自動建 repo、不改 visibility、不同步 refs、不切 primary |
## 0. 核心結論
9 個 approval-required GitHub targets 已拆成四條批准路徑:
1. Refs reconcile`awoooi``clawbot-v5``wooo-aiops`
2. GitHub target 建立 / 授權:`ewoooc``bitan-pharmacy``tsenyang-website`
3. Internal remote 用途確認:`wooo-infra-config`
4. 新納管產品 / agent target`VibeWork``agent-bounty-protocol`
這份 package 只讓 AwoooP / 統帥看到每個 repo 的批准條件與禁止動作,不代表已批准 push、mirror、repo creation、visibility 修改或 GitHub primary。
S4.10 已補 1 個 owner response request packet、9 個 template statuses、3 個 audit event templates、5 個 redaction examples、6 個 collection checks、6 個 intake preflight checks 與 9 個 owner decision response templates。owner response 通過後只允許更新 read-only decision table、approval package、approval board 與 primary readiness gate。
## 1. Repo-by-repo 決策表
| GitHub target | Action | Risk | Required reviewers | Blocked until |
|---------------|--------|------|--------------------|---------------|
| `owenhytsai/awoooi` | reconcile refs after full inventory | HIGH | migration-engineer、security-commander、human-owner | Gitea server-side 全量 repo inventory status=ok、branches/tags/workflows/webhooks/secrets 名稱 inventory 完成、部署真相來源已決定、GitHub primary ADR 與 rollback plan 完成 |
| `owenhytsai/clawbot-v5` | reconcile refs after full inventory | MEDIUM | migration-engineer、human-owner | Gitea/GitHub main SHA 對齊或人工指定真相來源、GitHub 缺 Gitea tag 的處理方式已決定 |
| `owenhytsai/wooo-aiops` | reconcile refs after full inventory | MEDIUM | migration-engineer、human-owner | Gitea/GitHub main SHA 對齊或人工指定真相來源、GitHub-only branch 與 tags 的來源已釐清 |
| `owenhytsai/wooo-infra-config` | confirm internal remote purpose | MEDIUM | migration-engineer、security-commander、human-owner | 110 internal remote 用途已確認、若 110 remote 為舊主控已降級或移除、infra secrets 名稱 inventory 完成 |
| `owenhytsai/ewoooc` | create or grant access after canonical approval | HIGH | migration-engineer、security-commander、human-owner | ewoooc/momo-pro-system canonical 關係人工確認、server-side refs diff 完成、GitHub repo owner 與 visibility 決策完成 |
| `owenhytsai/bitan-pharmacy` | create or grant access after canonical approval | MEDIUM | migration-engineer、human-owner | 確認 repo 是否仍 active、GitHub repo owner 與 visibility 決策完成 |
| `owenhytsai/tsenyang-website` | create or grant access after canonical approval | MEDIUM | migration-engineer、human-owner | 確認 repo 是否仍 active、GitHub repo owner 與 visibility 決策完成 |
| `owenhytsai/VibeWork` | create or grant access after product boundary approval | HIGH | migration-engineer、security-commander、product-owner、human-owner | VibeWork 產品 / repo / surface owner 與 canonical source 決策完成、確認是否存在 private GitHub target 或需要建立候選 repo、保留 VibeWork 獨立產品邊界,不得由 AWOOOI primary readiness 直接併入、workflow / CODEOWNERS / deploy key / repository secret name parity owner response 完成 |
| `owenhytsai/agent-bounty-protocol` | create or grant access after agent runtime boundary approval | HIGH | migration-engineer、security-commander、product-owner、treasury-owner、human-owner | agent-bounty-protocol repo / deployment / external agent / treasury owner 決策完成、確認是否存在 private GitHub target 或需要建立候選 repo、A2A / MCP / bounty / treasury / payout / withdrawal runtime gate 維持 0、branch protection / CODEOWNERS / repository secret name parity owner response 完成 |
## 2. 批准後只允許的事
| GitHub target | 批准後允許 |
|---------------|------------|
| `owenhytsai/awoooi` | 產生 refs reconcile plan、產生 draft migration PR 或 ADR、更新 migration matrix 與 evidence |
| `owenhytsai/clawbot-v5` | 產生 refs reconcile plan、更新 migration matrix |
| `owenhytsai/wooo-aiops` | 產生 refs reconcile plan、更新 migration matrix |
| `owenhytsai/wooo-infra-config` | 標記 110 remote 為 mirror、legacy 或 active source、更新 canonical decision table |
| `owenhytsai/ewoooc` | 決定建立 GitHub repo 或授權既有 private repo、產生 migration plan |
| `owenhytsai/bitan-pharmacy` | 決定建立 GitHub repo 或授權既有 private repo、產生 migration plan |
| `owenhytsai/tsenyang-website` | 決定建立 GitHub repo 或授權既有 private repo、產生 migration plan |
| `owenhytsai/VibeWork` | 決定授權既有 private target 或建立候選 GitHub repo 計畫、補 repo / product / surface owner metadata、更新 source-control primary readiness 的 VibeWork read-only 欄位 |
| `owenhytsai/agent-bounty-protocol` | 決定授權既有 private target 或建立候選 GitHub repo 計畫、補 agent / bounty / treasury / execution surface owner metadata、更新 source-control primary readiness 的 agent-bounty-protocol read-only 欄位 |
## 3. 即使批准仍禁止
- 修改 workflow
- 修改 workflow 或 CODEOWNERS
- 切 GitHub primary
- 刪除 110 remote
- 刪除 GitHub-only refs
- 刪除任一 momo/ewoooc working tree
- 刪除任一端 repo
- 啟用 agent claim / submit / daemon
- 執行 payout 或 withdrawal
- 把 VibeWork 產品邊界併入 AWOOOI
- 搬 infra secret value
- 搬 secret value
- 搬移 secret value
- 直接 push refs
- 直接停用 Gitea
- 直接切 GitHub primary
- 直接切 primary
- 直接刪除 remote
- 直接同步 refs
- 自動 push refs
- 自動合併 unrelated histories
- 自動建立 mirror
- 自動建立 repo
## 4. AwoooP 消費方式
AwoooP 可以 mirror `github_target_repo_approval_package_v1` 作為 approval queue 的分組 evidence但不得直接執行 GitHub repo creation、visibility change、refs sync 或 primary switch。