# Workflow / Secret 名稱本機 Evidence Snapshot | 項目 | 內容 | |------|------| | 日期 | 2026-06-11 | | 狀態 | 草案,partial local evidence | | Schema | `docs/schemas/source_control_workflow_secret_name_local_evidence_v1.schema.json` | | Snapshot | `docs/security/source-control-workflow-secret-name-local-evidence.snapshot.json` | | 來源契約 | `source_control_workflow_secret_name_inventory_v1` | | 收集器 | `scripts/security/source-control-workflow-secret-name-local-inventory.py` | | runtime 執行授權 | `false` | ## 0. 核心結論 S4.2 先補本機可見 working tree 的只讀 workflow / secret 名稱 evidence。2026-06-11 refresh 已改用本輪乾淨 worktree `/private/tmp/awoooi-agent-bounty-iwooos-20260611` 重跑 `awoooi` evidence,並把 `VibeWork` 與 `agent-bounty-protocol` 納入資安控管候選範圍。 本 snapshot 只從 `.github/workflows/`、`.gitea/workflows/`、`CODEOWNERS` 與 `.github/CODEOWNERS` 萃取名稱級 metadata。它不呼叫 GitHub / Gitea API、不讀 `.env`、不讀 secret store、不收集 secret value、不修改 workflow。 這仍不代表 GitHub primary ready。webhook、deploy key、branch protection 與 repository secret parity 還需要後續 redacted export 或 read-only API evidence。 S4.3 已把這些後續缺口整理成 redacted export request,並額外納入 runner owner / GitHub hosted minutes 風險 lane;仍禁止 write token 與 secret value。 ## 1. 摘要 | 指標 | 數量 | |------|------| | Candidate repos | 10 | | Local repo visible | 9 | | Local evidence repos | 5 | | Workflow files | 33 | | Gitea workflow files | 12 | | GitHub workflow files | 21 | | CODEOWNERS files | 2 | | Unique referenced secret names | 42 | | Runner labels | 5 | | Secret value detected | `false` | ## 2. Repo 結果 | Repo | Local status | Workflow files | Secret names | CODEOWNERS | 說明 | |------|--------------|----------------|--------------|------------|------| | `owenhytsai/awoooi` | `partial_local_evidence` | 15 | 34 | 0 | Gitea / GitHub workflows 都可見;本輪移除舊 worktree evidence 漂移後,仍需 webhook、branch protection、repository secret parity evidence | | `owenhytsai/clawbot-v5` | `local_repo_visible_no_workflow_files` | 0 | 0 | 0 | 本機 repo 可見,但未找到 workflow / CODEOWNERS | | `owenhytsai/wooo-aiops` | `partial_local_evidence` | 14 | 12 | 2 | GitHub / Gitea workflow 與 CODEOWNERS 可見;仍需 webhook 與 branch protection evidence | | `owenhytsai/wooo-infra-config` | `partial_local_evidence` | 1 | 2 | 0 | GitHub validate workflow 可見;infra secret value 不可搬移 | | `owenhytsai/ewoooc` | `partial_local_evidence` | 2 | 4 | 0 | 以本機 `momo-pro-system` working tree 作為 ewoooc/momo canonical review 的暫時 evidence | | `owenhytsai/bitan-pharmacy` | `local_repo_visible_no_workflow_files` | 0 | 0 | 0 | 本機 repo 可見,但未找到 workflow / CODEOWNERS | | `owenhytsai/tsenyang-website` | `local_repo_visible_no_workflow_files` | 0 | 0 | 0 | 本機 repo 可見,但未找到 workflow / CODEOWNERS | | `nexu-io/open-design` | `missing_local_repo` | 0 | 0 | 0 | 外部 scope review;未納入 GitHub primary cutover queue | | `owenhytsai/VibeWork` | `local_repo_visible_no_workflow_files` | 0 | 0 | 0 | 本機 repo 可見;保留 VibeWork 獨立產品邊界,仍需 owner 確認 workflow / secret / deploy surface | | `owenhytsai/agent-bounty-protocol` | `partial_local_evidence` | 1 | 0 | 0 | 新納入資安控管範圍;已見 1 個 Gitea workflow 與 `ubuntu-latest` runner label,仍需 agent / bounty / treasury / execution surface owner response | ## 3. 已知 runner labels 本 snapshot 只保存 runner label 名稱: | Label | |-------| | `awoooi-host` | | `harbor` | | `k8s` | | `self-hosted` | | `ubuntu-latest` | ## 4. 仍需補齊 1. Gitea / GitHub webhook inventory:只列 destination host、event types、enabled flag,不保存 webhook secret。 2. Runner owner / hosted minutes 風險 inventory:只列 label、executor、self-hosted / hosted、owner,不保存 registration token。 3. Deploy key / machine key inventory:只列 key name、read-only flag、owner,不保存 private key。 4. Branch protection inventory:只列 protected branch、required status checks、review count。 5. Repository secret parity:只比對 secret 名稱與 owner,不輸出 value。 6. 逐 repo owner review:確認本機可見 workflow 是否為 canonical,尤其是 `ewoooc` / `momo-pro-system`、`VibeWork` 與 `agent-bounty-protocol`。 7. Snapshot freshness:本機 evidence 必須標示可重現路徑與刷新日期;過期暫存 worktree 只能作歷史參考,不可當 current readiness。 ## 5. 永久禁止 1. 不收集 secret value、token value、private key、webhook secret、runner registration token。 2. 不修改 workflow、webhook、runner、deploy key、branch protection 或 CODEOWNERS。 3. 不建立 GitHub repo、不 sync refs、不切 GitHub primary。 4. 不把本機 evidence 當成 primary cutover approval。 5. 不把 LOW / MEDIUM observation 變成 runtime blocker。