# IwoooS Monitoring / Alerting / Observability owner request draft | 項目 | 內容 | |------|------| | 日期 | 2026-06-14 | | 狀態 | `owner_request_draft_ready_not_dispatched` | | 工具 | `scripts/security/monitoring-owner-request-draft.py` | | Snapshot | `docs/security/monitoring-owner-request-draft.snapshot.json` | | Source inventory | `docs/security/monitoring-alerting-observability-inventory.snapshot.json` | | runtime gate | `0` | ## 1. 目的 本文件把 Monitoring / Alerting / Observability repo-only 清冊中的 60 個 surface 轉成人工送件前 owner request draft,讓 Prometheus、Alertmanager、Grafana、SigNoz、Sentry、Langfuse、OTEL、Telegram / notification policy、deploy / reload script 與 alert chain smoke script 都有一致的 owner 回覆欄位。 本階段仍是 metadata-only request draft:不連 live Prometheus、不 reload Alertmanager、不套用 Grafana / SigNoz、不部署 Sentry、不改 Langfuse、不 reload OTEL、不改 receiver route、不建立 silence、不送 Telegram、不 fire live alert、不跑 alert chain smoke、不 SSH、不 kubectl、不讀 secret value、不寫 production。 ## 2. 摘要 | 指標 | 目前值 | 說明 | |------|--------|------| | request draft | `60` | 全部由 committed monitoring inventory surface 轉換 | | write-capable request draft | `11` | 可能 reload、deploy、send notification、fire alert 或 restart exporter 的 surface | | live evidence required request | `60` | 每份 request 都需要 owner 提供脫敏 live evidence ref | | request field | `24` | 每份草稿固定欄位數 | | required owner field | `14` | owner 必須補齊的欄位數 | | blocked action | `24` | 驗收前全部禁止 | | request sent / recipient confirmed | `0 / 0` | 尚未送件,收件人也未確認 | | owner response received / accepted | `0 / 0` | 不得假性拉高 | | live evidence received | `0` | 未收到 live config hash、receiver diff 或 route smoke proof | | reload / receiver / route smoke accepted | `0 / 0 / 0` | 未授權 reload、receiver route change 或 live smoke | | runtime gate / action button | `0 / 0` | 不開任何執行入口 | ## 3. Request Draft 類型 | 類型 | 範圍 | 目前邊界 | |------|------|----------| | Prometheus config / rules | base config、remote write、generated target、service registry、alert rules、drift guard | 只收 owner ref;不 reload、不 remote write change | | Alertmanager receiver | route、receiver、grouping source | 只收 receiver owner / diff ref;不改 receiver、不 reload | | Grafana dashboard / rules | dashboard JSON、alert rule | 只收 dashboard owner / rollback ref;不 import、不 apply | | SigNoz / OTEL | alert rule、log rule、API client、collector config | 只收 pipeline owner / data export boundary;不 apply、不 reload | | Sentry / Langfuse | compose、deploy、webhook receiver、API client、runbook | 只收 live hash / upgrade window;不 deploy、不 restart | | Telegram / notification | gateway service、failure-only policy、notification matrix、recurrence notifier | 只收 receiver / receipt / noise budget owner;不送訊息 | | deploy / reload scripts | Alertmanager、Prometheus、Sentry、exporter deploy 或 reload-capable script | 只建立 request draft;不執行腳本 | | alert smoke | live alert、test alert、alert chain smoke | 只收 allowed receiver、execution window、cleanup owner;不 fire alert | ## 4. Owner 必填欄位 | 欄位 | 說明 | |------|------| | `owner_role_or_team` | 負責角色或團隊 | | `decision` | owner 對此 surface 的判定 | | `decision_reason` | 決策理由摘要,不得包含機敏值 | | `affected_scope` | 受影響的 monitoring / notification / product scope | | `redacted_evidence_refs` | 脫敏 evidence id、文件路徑、ticket id 或 hash | | `live_config_hash_ref` | 脫敏 live config hash 或 owner-provided ref | | `reload_owner` | reload / deploy decision owner | | `receiver_owner` | receiver / route / receipt owner | | `route_smoke_plan` | route smoke 或 receipt proof 計畫 | | `maintenance_window` | 維護窗口或禁止窗口 | | `rollback_owner` | rollback 負責人與 rollback ref | | `validation_plan` | 驗證與 post-check plan | | `noise_budget_owner` | 告警噪音、silence、dedup 與測試通知負責人 | | `followup_owner` | 後續補件或決策負責人 | ## 5. 禁止動作 ```text prometheus_reload alertmanager_reload grafana_dashboard_apply signoz_rule_apply sentry_deploy langfuse_config_change otel_collector_reload receiver_route_change silence_policy_change telegram_send notification_route_change webhook_receiver_change remote_write_change exporter_deploy live_alert_fire alert_chain_smoke ssh_read ssh_write kubectl_action secret_value_collection host_write active_scan production_write runtime_gate_open ``` ## 6. 指令 固定 committed snapshot 時間: ```bash python3 scripts/security/monitoring-owner-request-draft.py \ --root . \ --inventory-report docs/security/monitoring-alerting-observability-inventory.snapshot.json \ --output docs/security/monitoring-owner-request-draft.snapshot.json \ --generated-at 2026-06-14T23:25:00+08:00 ``` 只讀 guard: ```bash python3 scripts/security/security-mirror-progress-guard.py --root . python3 scripts/security/source-control-owner-response-guard.py --root . ``` ## 7. 完成度 | 工作 | 完成度 | 說明 | |------|--------|------| | owner request draft artifact | `100%` | 60 份 request draft 已由 committed inventory 產生 | | request dispatch | `0%` | 尚未送件,recipient 未確認 | | owner response received / accepted | `0%` | 尚未收到或接受任何 owner response | | live evidence collection | `0%` | 未讀 live monitoring stack | | reload / receiver / route smoke acceptance | `0%` | 未授權、未執行 | | runtime / production write | `0%` | 無 action button,無 production write | ## 8. 邊界 這份 owner request draft 不是資安批准、不是 runtime approval、不是 alert chain smoke proof,也不是 live monitoring truth。不得把 request draft、snapshot、IwoooS UI、AwoooP approval、LOGBOOK 或 committed source visibility 解讀成 Prometheus reload、Alertmanager reload、Grafana import、SigNoz apply、Sentry deploy、Langfuse change、OTEL reload、receiver route change、silence change、Telegram send、live alert fire、alert chain smoke、SSH、kubectl、active scan、secret collection、host write 或 production write 授權。