26 KiB
資安鏡像狀態彙整契約
| 項目 | 內容 |
|---|---|
| 日期 | 2026-05-17 |
| 狀態 | 草案 |
| Schema | docs/schemas/security_mirror_status_rollup_v1.schema.json |
| Snapshot | docs/security/security-mirror-status-rollup.snapshot.json |
| 模式 | mirror_only |
| runtime 執行授權 | false |
0. 核心結論
security_mirror_status_rollup_v1 是 AwoooP 與 Security Supply Chain Session 的共同狀態入口。
它只彙整目前框架、鏡像契約、approval queue 與下一個安全 gate,不授權任何 scan、execute、repo、refs、deploy 或 secret 類動作。
1. 目前狀態
| 類型 | 狀態 |
|---|---|
| 整體進度估算 | 約 58%;框架 / 治理 / 文件 / schema / read-only evidence 約 80-85%,runtime ingestion / owner response / GitHub primary / AwoooP production landing 約 35-40% |
| Contract manifest | 36 個 contracts |
| Mirror readiness | 33 ready、2 partial、1 contract-only、0 blocked |
| Approval queue | 8 items:7 pending approval、1 block candidate |
| Approval gate | S3.0 已建立;0 approved、7 pending、1 block candidate |
| Decision records | S3.1 已建立;目前 0 筆決策紀錄 |
| Review packets | S3.2 已建立;8 packets、7 ready for human review、1 block candidate |
| State transitions | S3.3 已建立;5 個 decision options 都有 next state,且都不授權執行 |
| Follow-up runtime gate templates | S3.4 已建立;8 個 templates、0 個 active runtime gates |
| GitHub primary readiness gate | S4.0 已建立;8 個 candidate repos、7 個 in-scope blocked、0 個 primary ready;S4.10 已補 GitHub target owner decision response request packet、7 個 template statuses、3 個 audit event templates、5 個 redaction examples、6 個 collection checks、6 個 intake preflight checks 與收件包,7 個 response templates、owner response 0 筆;S4.11 已補 refs truth owner response request packet、5 個 template statuses、3 個 audit event templates、5 個 redaction examples、6 個 collection checks、6 個 intake preflight checks 與收件包,5 個 response templates、owner response 0 筆、audit events emitted 0 筆;S4.12 已補 workflow / secret 名稱 owner response request packet、5 個 template statuses、3 個 audit event templates、5 個 redaction examples、6 個 collection checks、6 個 intake preflight checks 與收件包,5 個 response templates、owner response 0 筆、audit events emitted 0 筆;S4.13 已補四包 owner response validation rollup、6 條 evidence routing rules、8 個 display sections、7 條 state transition rules、9 個 reviewer checklist items、7 條 reviewer outcome lanes、4 個 reviewer audit event templates、5 個 reviewer audit display sections、6 個 reviewer audit collection checks、5 個 reviewer audit redaction examples、5 條 reviewer audit retention rules、6 個 reviewer audit retention checks、6 個 reviewer audit handoff packets、6 個 reviewer audit handoff checks、6 個 parallel session sync checks、6 條 parallel session conflict lanes、6 個 parallel session recovery checks 與 7 條 parallel session recovery outcome lanes,22 個 templates、received / accepted / rejected 皆為 0、reviewer audit emitted 仍為 0 |
| GitHub primary rollback ADR | S4.4 已建立;7 個 in-scope rollback drafts、0 個 owner approved、0 個 dry-run completed、0 個 active cutover |
| Gitea inventory | S4.5 已補認證清冊匯出請求;S4.6 已補匯入驗收契約;S4.7 已補 owner coverage attestation;S4.8 已把既有 Gitea queue/gate/review packet/follow-up gate 對齊 attestation 先行;S4.9 已補 owner response request packet、5 個 template statuses、3 個 audit event templates、5 個 redaction examples、8 個 display sections、6 個 collection checks、owner response 收件包、6 個 intake preflight checks 與 5 個 outcome lanes;目前 status=partial_waiting_authenticated_inventory、未認證公開範圍 repos 2 個、本機可見 Gitea unique repos 4 個、匯出來源選項 2 類、匯入驗收 payload 0 筆、owner attestation items 5 個、收到 attestation 0 筆、owner response 0 筆、audit events emitted 0 筆、敏感 payload 必須隔離、允許收集 token value=false |
| Workflow / secret name inventory | S4.1 已建立;S4.2 補 4 個 repos、31 個 workflow files、43 個 referenced secret names 的 local evidence;S4.3 補 7 個 repos、5 類 lanes 的 redacted export request;S4.12 補 1 個 owner response request packet、5 個 template statuses、3 個 audit event templates、5 個 redaction examples、6 個 collection checks、6 個 intake preflight checks 與 5 個 owner response templates;0 個 inventory complete、audit events emitted 0 筆、禁止收集 secret value、禁止 write token |
| Owner response validation | S4.13 已建立;四包 owner response 目前 received/accepted 皆為 0;4 條 missing response lanes、4 步 collection order、next collection candidate、6 條 evidence routing rules、8 個 display sections、7 條 state transition rules、9 個 reviewer checklist items、7 條 reviewer outcome lanes、4 個 reviewer audit event templates、5 個 reviewer audit display sections、6 個 reviewer audit collection checks、5 個 reviewer audit redaction examples、5 條 reviewer audit retention rules、6 個 reviewer audit retention checks、6 個 reviewer audit handoff packets、6 個 reviewer audit handoff checks、6 個 parallel session sync checks、6 條 parallel session conflict lanes、6 個 parallel session recovery checks 與 7 條 parallel session recovery outcome lanes 可供 AwoooP 直接顯示;下一個建議收件為 S4.9 Gitea owner attestation;latest local validation 為 SOURCE_CONTROL_OWNER_RESPONSE_GUARD_OK,reviewer audit emitted 仍為 0,不代表 owner response 已收到或任何執行授權 |
| Low-friction rollout policy | S1.3 已補 7 條 non-blocking escalation lanes;LOW / MEDIUM、缺 owner response、partial mirror、source-control drift、Kali observe finding、workflow / secret name gap 與 headline holding 初期只能 observe / warn;owner_review_required_before_blocking=true、runtime_blocking_allowed=false |
| IwoooS frontend posture | S2.8 已新增 /iwooos read-only Information Security 入口;顯示 Security Posture / Exposure、source-control supply chain、Kali 112 Mesh、approval boundary、non-blocking lanes 與 evidence refs;不新增執行按鈕 |
| IwoooS posture projection | S2.9 已新增 iwooos_posture_projection_v1;S2.10 已把 10 個既有前端資安相關頁面納入 projection;S2.11 已補 4 個 coverage groups 與 5 個 conflict controls;S2.12 已補 6 個只讀 operator journey steps;S2.13 已補 7 個 owner evidence readiness items;S2.14 已補 3 個 host coverage items:Kali 112、開發主機 168、開發主機 111;S2.15 已補 6 個 host action gate items;S2.16 已補 7 個 host evidence readiness items;S2.17 已補 7 個 host evidence collection order steps;仍不新增 action button |
| Dry-run | contract_defined_not_executed;已納入 CHECK_PROGRESS_GUARD 與 CHECK_OWNER_RESPONSE_GUARD,latest local validation 為 repo_snapshot_guard_pass,仍不代表 production ingestion |
| Runtime actions | false |
| Payload ingestion | false |
1.1 進度判讀
目前進度不是以「強制防護開了多少」計算,而是以統帥指定的低摩擦路線拆成兩層:
- 框架期約 80-85%:36 個主要 contract 已有 33 個 ready、2 個 partial、1 個 contract-only、0 blocked,表示治理骨架、只讀 evidence、人工批准語義、AwoooP mirror-only 接口與 IwoooS 前端投影已接近完整。
- 落地期約 35-40%:owner responses 仍為 0、active runtime gate 為 0、payload ingestion 為 false、GitHub primary ready 為 0、AwoooP production ingestion 尚未啟用。
因此跨 Session 採用 58% 作為目前整體進度。這代表「框架健康、尚未過度收緊」,不是 runtime enforcement 或 primary cutover 授權。
1.2 為什麼 58% 看起來沒動
58% 是 headline progress,只在高層 gate 真正改變時調整。最近幾輪 S4.10、S4.11、S4.12、S4.13 與 S1.3 的工作確實有前進,但屬於框架細節、顯示順序、收件安全與低摩擦分流,不會直接推高 headline。
| 最近完成 | 進度軸 | headline delta | 為什麼整體百分比不變 |
|---|---|---|---|
| S4.10 request packet | framework detail | 0 | 只顯示 owner 要回覆什麼,不代表 request sent、response received 或 approval |
| S4.10 template status ledger | framework detail | 0 | 只逐項顯示 7 個 target 仍為 waiting,received / accepted 仍為 0 |
| S4.10 audit event templates | framework detail | 0 | event templates 仍為 template_only_not_emitted,production ingestion 尚未啟用 |
| S4.10 redaction examples | framework detail | 0 | 只示範安全 metadata shape,不代表 owner response 已收到或可執行 repo / refs / primary 動作 |
| S4.10 collection checks | framework detail | 0 | 只維持 request / received / accepted 狀態分離,不代表 owner response 已收到或已接受 |
| S4.10 intake preflight checks | framework detail | 0 | 只分類可收、補證、隔離或拒收,不代表 owner response accepted 或可執行 repo / refs / primary 動作 |
| S4.11 request packet | framework detail | 0 | 只顯示 owner 要回覆哪 5 類 refs truth 問題,不代表 request sent、response received、accepted 或 refs sync/delete/force push 授權 |
| S4.11 template status ledger | framework detail | 0 | 只逐項顯示 5 類 refs truth response 仍為 waiting,received / accepted 仍為 0,不代表 refs sync/delete/force push 授權 |
| S4.11 audit event templates | framework detail | 0 | event templates 仍為 template_only_not_emitted,emitted 仍為 0,不代表 production ingestion 或 refs sync/delete/force push 授權 |
| S4.11 redaction examples | framework detail | 0 | 只示範安全 metadata shape,不代表 owner response received / accepted 或 refs sync/delete/force push 授權 |
| S4.11 collection checks | framework detail | 0 | 只維持 request / received / accepted 狀態分離,不代表 owner response received / accepted 或 refs sync/delete/force push 授權 |
| S4.11 intake preflight checks | framework detail | 0 | 只分類可審、補證、隔離、拒收或等待,不代表 owner response accepted 或 refs sync/delete/force push 授權 |
| S4.12 request packet | framework detail | 0 | 只顯示 owner 要回覆哪 5 類 workflow / secret 名稱問題,不代表 request sent、response received、secret value collection、workflow 修改、runner 啟用或 primary 授權 |
| S4.12 template status ledger | framework detail | 0 | 只逐項顯示 5 類 workflow / secret 名稱 response 仍為 waiting,received / accepted 仍為 0,不代表 secret value collection、workflow 修改、runner 啟用或 primary 授權 |
| S4.12 audit event templates | framework detail | 0 | event templates 仍為 template_only_not_emitted,emitted 仍為 0,不代表 production ingestion、secret value collection、workflow 修改、runner 啟用或 primary 授權 |
| S4.12 redaction examples | framework detail | 0 | 只示範安全 metadata shape,不代表 owner response received / accepted 或 secret value collection、workflow 修改、runner 啟用授權 |
| S4.12 collection checks | framework detail | 0 | 只維持 request / received / accepted 狀態分離,不代表 owner response received / accepted、secret value collection、workflow 修改、runner 啟用或 primary 授權 |
| S4.12 intake preflight checks | framework detail | 0 | 只分類可審、補證、隔離或拒收,不代表 owner response accepted、secret 建立、workflow 修改、runner 啟用或 primary 授權 |
| S4.13 evidence routing rules | framework detail | 0 | 只決定 owner evidence pointer 應補證、隔離、拒收、進跨包 review 或只讀更新,不代表 owner response received / accepted、approval、runtime gate 或 execution authorization |
| S4.13 display sections | framework detail | 0 | 只固定 AwoooP Operator Console 的 read-only 呈現順序,不代表 owner response received / accepted、approval、runtime gate、execution queue 或 action button |
| S4.13 state transition rules | framework detail | 0 | 只固定 owner response validation 的 read-only 狀態語義,不代表 owner response received / accepted、approval、runtime gate、execution queue 或 action button |
| S4.13 reviewer checklist | framework detail | 0 | 只提供人工審查順序與只讀檢查提示,不代表 owner response received / accepted、approval、runtime gate、execution queue 或 action button |
| S4.13 reviewer outcome lanes | framework detail | 0 | 只把人工檢查結果分類成等待、補證、隔離、拒收、跨包 review、只讀更新候選或等待 runtime gate,不代表 approval、runtime gate、execution queue 或 action button |
| S4.13 reviewer audit event templates | framework detail | 0 | 只定義未來可留痕的脫敏 metadata 形狀,emitted 仍為 0,不代表 production ingestion、approval、runtime gate 或 execution authorization |
| S4.13 reviewer audit display sections | framework detail | 0 | 只固定 AwoooP 顯示 audit templates、允許 metadata、禁止 payload、0 emitted 狀態與非授權邊界,不代表 production ingestion、approval、runtime gate 或 execution authorization |
| S4.13 reviewer audit collection checks | framework detail | 0 | 只要求 audit template 可見、metadata-only、forbidden payload blocked、emitted=0、無 runtime side effect 與 counters 不變,不代表 production ingestion、approval、runtime gate 或 execution authorization |
| S4.13 reviewer audit redaction examples | framework detail | 0 | 只示範 reviewer audit metadata 的安全顯示形狀,不代表 owner response、production ingestion、approval、runtime gate 或 execution authorization |
| S4.13 reviewer audit retention rules | framework detail | 0 | 只定義 reviewer audit metadata 可保留的安全形狀與 raw payload 拒收邊界,不代表 owner response、production ingestion、approval、runtime gate 或 execution authorization |
| S4.13 reviewer audit retention checks | framework detail | 0 | 只確認 retention rules 可見、metadata-only、raw payload / secret retention blocked、counter snapshot-only 與無 runtime side effect,不代表 owner response、production ingestion、approval、runtime gate 或 execution authorization |
| S4.13 reviewer audit handoff packets | framework detail | 0 | 只整理跨 Session resume、必讀 source packets、安全顯示欄位、禁止 runtime 誤讀、下一個 owner response focus 與後續 gates,不代表 owner response、production ingestion、approval、runtime gate 或 execution authorization |
| S4.13 reviewer audit handoff checks | framework detail | 0 | 只確認 handoff packets 可見、counters 不變、source packets 必讀、安全顯示欄位、runtime 誤讀阻擋與 next focus 未被標記 received,不代表 owner response、production ingestion、approval、runtime gate 或 execution authorization |
| S4.13 parallel session sync checks | framework detail | 0 | 只確認同一 PR 分支、latest delta 可見、counters 仍為 0、runtime flags 仍為 false、source-control mutation 阻擋與 next focus 維持 S4.9,不代表 owner response、production ingestion、approval、runtime gate 或 execution authorization |
| S4.13 parallel session conflict lanes | framework detail | 0 | 只把 stale branch、stale delta、counter drift、runtime flag drift、source-control mutation request 與 next focus drift 分流到停下重讀或人工 review,不代表 owner response、production ingestion、approval、runtime gate 或 execution authorization |
| S4.13 parallel session recovery checks | framework detail | 0 | 只確認 conflict lane 後要重抓遠端、重讀 latest ledger、重跑只讀 guards、review staged diff、確認 runtime false flags 與回到 S4.9 next focus,不代表 owner response、production ingestion、approval、runtime gate 或 execution authorization |
| S4.13 parallel session recovery outcome lanes | framework detail | 0 | 只把復原結果分類成 ready、branch diverged、ledger stale、guard failed、diff out-of-scope、runtime flag drift 或 next focus drift,不代表 owner response、production ingestion、approval、runtime gate 或 execution authorization |
| S1.3 non-blocking escalation lanes | framework detail | 0 | 只確認 LOW / MEDIUM observation、缺 owner response、partial mirror、source-control drift、Kali observe finding、workflow / secret name gap 與 headline holding 先維持 observe / warn,不代表 blocking gate、runtime enforcement 或 action button |
| S2.8 IwoooS frontend posture entry | framework detail | 0 | 只把 mirror-only 資安態勢呈現在前端,不代表 owner response、production ingestion、approval、runtime gate 或 execution authorization |
| S2.9 IwoooS posture projection contract | framework detail | 0 | 只把前端顯示資料固定成可驗證契約,不代表 owner response、production ingestion、approval、runtime gate 或 execution authorization |
| S2.10 IwoooS existing frontend surface integration | framework detail | 0 | 只把既有前端資安頁面整理成只讀索引,不代表 owner response、production ingestion、approval、runtime gate、Kali scan、Code Review gate 或 execution authorization |
| S2.11 IwoooS surface coverage boundary matrix | framework detail | 0 | 只把既有前端資安頁面分成訊號、人工控制、治理稽核與工程審查四面,並顯示重疊 / 衝突控制,不代表 runtime gate、deploy approval、Kali scan 或 Code Review blocking 授權 |
| S2.12 IwoooS operator journey projection | framework detail | 0 | 只把資安處理旅程顯示成 read-only status projection,不代表 execution queue、runtime gate、deploy approval、Kali scan 或 Code Review blocking 授權 |
| S2.13 IwoooS owner evidence readiness board | framework detail | 0 | 只顯示 headline 進度下一步需要的 owner evidence / approval gate,received / accepted 仍為 0,不代表 owner response received、approval、runtime gate、Kali scan 或 GitHub primary 授權 |
| S2.14 IwoooS host coverage view | framework detail | 0 | 只顯示 Kali 112 與 168 / 111 開發主機已納入 observe-only 資安視野,不代表 active scan、SSH 變更、主機更新、credentialed scan、runtime gate 或 Kali /execute 授權 |
| S2.15 IwoooS host action gate matrix | framework detail | 0 | 只把 active scan、credentialed scan、Kali /execute、SSH / host change、Kali update 與 runtime blocking control 拆成只讀 gate,不代表任何主機動作或 runtime enforcement 已批准 |
| S2.16 IwoooS host evidence readiness board | framework detail | 0 | 只顯示主機動作前仍缺 scope、owner decision、credential handling、maintenance window、rollback、validation metrics 與 redacted ingestion evidence;received / accepted 仍為 0,不代表任何主機動作已批准 |
| S2.17 IwoooS host evidence collection order | framework detail | 0 | 只把七個主機 evidence readiness items 排成只讀收件順序與依賴關係;received / accepted 仍為 0,不代表 active scan、SSH、Kali update、raw evidence ingestion 或 runtime control 已批准 |
headline 進度要再往上,至少需要下列任一高層 gate 有實質 evidence:
- S4.9 Gitea owner attestation response 收到並接受脫敏 evidence。
- S4.10 GitHub target owner / visibility / canonical response 收到並接受脫敏 evidence。
- S4.11 refs truth owner response 收到並接受脫敏 evidence。
- S4.12 workflow / secret name owner response 收到並接受脫敏 evidence。
- redacted payload ingestion 或 active runtime gate 在人工批准後啟用。
- GitHub primary readiness gate 的
primary_ready_count大於 0。
因此現在不是停住,而是進入「避免灌水」的區段:框架小步有累積,但 headline 需要 owner response / runtime gate / primary readiness 這類真正落地訊號才會跳。
只讀驗證:
python3 scripts/security/security-mirror-progress-guard.py
2. AwoooP 可做
- 顯示 S0 到 S4 的階段狀態。
- 顯示 contract readiness、approval queue summary、approval gate summary 與下一個 gate。
- 將彙整結果寫入 Audit evidence。
- 低噪音通知階段完成、blocked reason 或人工批准必要事件。
- 把下一步限制在
observe/approval_required/block_candidate。 - 顯示 7 條 non-blocking escalation lanes,讓 follow-up 不直接升級成 runtime blocker。
3. AwoooP 不可做
- 不把 rollup 當成 runtime authorization。
- 不新增 scan、execute、repo、refs、deploy、secret 類 action button。
- 不把 LOW / MEDIUM observation 變成 blocking gate。
- 不把 approval queue 接成 runner。
- 不把 GitHub primary、refs sync 或 Kali
/execute當成已批准。 - 不把缺 owner response、partial mirror、source-control drift 或 headline holding 當成產品流程阻擋。
4. 下一個安全 gate
下一步仍不是 runtime enforcement。
建議先讓 AwoooP 主線只讀消費本 rollup、security_approval_gate_v1、security_approval_decision_record_v1、security_approval_review_packet_v1、security_approval_state_transition_v1、security_followup_runtime_gate_v1、source_control_primary_readiness_gate_v1、source_control_primary_rollback_adr_v1 與 source_control_workflow_secret_name_inventory_v1,並由人工依序 review:
- redacted finding ingestion adapter。
- safe web crawl scope。
- Gitea private/internal read-only inventory:先依 S4.9 收到並驗收 S4.7 owner coverage attestation response,且 S4.8 已把這個先行條件接到既有 approval queue / gate / review packet / follow-up runtime gate;再依 S4.5 認證匯出請求補全量清冊;收到脫敏 payload 後先依 S4.6 驗收 / 拒收 / 隔離;目前未認證公開範圍 2 個、本機可見 Gitea unique 4 個、覆蓋缺口 2 個、attestation items 5 個、owner response 0 筆,不保存 token value。
- GitHub target / owner / visibility / canonical:先依 S4.10 request packet、template status ledger、audit event templates、redaction examples、collection checks 與 intake preflight checks 收到並驗收 7 個 owner decision response templates;received / accepted response 目前皆為 0,不得把 request packet、template status ledger、audit event templates、redaction examples、collection checks、intake preflight checks 或 response packet 當成 repo creation、visibility change、refs sync 或 primary approval。
- Kali
/execute維持 block candidate。 - Refs truth owner response:先依 S4.11 request packet、template status ledger、audit event templates、redaction examples、collection checks 與 intake preflight checks 顯示 main/dev truth、deprecated drift、release tag、GitHub-only refs 的 5 個 response templates;received / accepted response 目前皆為 0,audit events emitted 仍為 0,不得把 request packet、template status ledger、audit event templates、redaction examples、collection checks、intake preflight checks 或 response packet 當成 refs sync、delete、force push 或 primary approval。
- Workflow / secret 名稱 owner response:先依 S4.12 request packet、template status ledger、audit event templates、redaction examples、collection checks 與 intake preflight checks 顯示 webhook、runner、deploy key、branch protection / CODEOWNERS、repository secret name parity 的 5 個 response templates;received / accepted response 目前皆為 0,audit events emitted 仍為 0,不得把 request packet、template status ledger、audit event templates、redaction examples、collection checks、intake preflight checks 或 response packet 當成 secret value 收集、workflow 修改、GitHub hosted runner 啟用或 primary approval。
- Owner response validation rollup:先依 S4.13 顯示 S4.9/S4.10/S4.11/S4.12 四包 response packets、22 個 templates、10 個 cross-packet checks、6 條 evidence routing rules、8 個 display sections、7 條 state transition rules、9 個 reviewer checklist items、7 條 reviewer outcome lanes、4 個 reviewer audit event templates、5 個 reviewer audit display sections、6 個 reviewer audit collection checks、5 個 reviewer audit redaction examples、5 條 reviewer audit retention rules、6 個 reviewer audit retention checks、6 個 reviewer audit handoff packets、6 個 reviewer audit handoff checks、6 個 parallel session sync checks、6 條 parallel session conflict lanes、6 個 parallel session recovery checks、7 條 parallel session recovery outcome lanes 與 quarantine rules;不得把 rollup、routing、display sections、state transition rules、reviewer checklist、reviewer outcome lanes、reviewer audit templates、reviewer audit display sections、reviewer audit collection checks、reviewer audit redaction examples、reviewer audit retention rules、reviewer audit retention checks、reviewer audit handoff packets / checks、parallel session sync checks、parallel session conflict lanes、parallel session recovery checks 或 parallel session recovery outcome lanes 當成 approval、runtime gate、production ingestion 或 execution authorization。
- GitHub primary readiness blockers 與 rollback ADR 缺口。
- S4.4 GitHub primary rollback ADR 草案:先顯示 7 個 repo 的 rollback owner、validation window 與 triggers,owner approval 前不可執行。
- workflow / webhook / runner / deploy key / branch protection / CODEOWNERS / secret 名稱 inventory 缺口,先看 S4.2 local evidence,再依 S4.3 redacted export request 與 S4.12 owner response request packet / template status ledger / audit event templates / redaction examples / collection checks / intake preflight checks / 收件包補 webhook / runner / deploy key / branch protection / repository secret parity;只保存名稱與 owner,不保存 value,不使用 write token。
- Low-friction rollout policy:先顯示 7 條 non-blocking escalation lanes,只允許 observe / warn、建立 follow-up 與 owner review before blocking;不得把 LOW / MEDIUM、缺 owner response、partial mirror、source-control drift、Kali observe finding、workflow / secret name gap 或 headline holding 直接升 blocking。
任何批准後的執行仍需下一階段 runtime gate 與獨立 evidence,不得由本 rollup 自動觸發。