# Agent Notification Intake Control

This control entry defines where connected-system notifications should enter `zhctprompt`.

## Purpose

Collect alarms, online errors, project-group feedback, SLS clues, task blockers, CI failures, and manual alert screenshots into one Agent-readable event flow.

## Current Architecture

```text
Enterprise WeChat / SLS / Yunxiao / Codeup / Apifox / logs / screenshots
  -> source adapter
  -> normalized event JSONL
  -> incident dedupe
  -> Codex triage
  -> evidence pack
  -> WeCom reply draft / task index / human action
```

## Runtime Paths

Ignored runtime feed:

```text
work_wecom_customer_service/runtime/notifications/
work_wecom_customer_service/runtime/incidents/
work_wecom_customer_service/runtime/frames/
work_wecom_customer_service/runtime/logs/
```

Tracked method and evidence:

```text
work/2026-06-02-agent-notification-intake/
standards-stack/ai-engineering/agent-notification-intake.md
control/task-index/items/20260602-agent-notification-intake.tsv
```

## Local Config

Secrets and webhook signing material belong only in ignored local files, for example:

```text
config/local/wecom.env
config/local/aliyun-sls.env
config/local/notification-intake.env
```

Never commit Bot Secret, webhook key, EncodingAESKey, Corp Secret, AK/SK, STS token, cookies, or full callback URL.

## Initial Source Priority

1. WeCom intelligent robot message stream, because `control/wecom-aibot/` already exists.
2. SLS read-only enrichment, because `aliyun-sls-log-triage` already exists.
3. Manual alert screenshot/text fallback, because the Saidi disk-full incident already used this pattern.
4. Yunxiao/Codeup event polling, after owner and credential policy are confirmed.
5. Source-system webhook receiver, after signing and network exposure are approved.

## First Verification

Use a non-sensitive alert message first.

Expected output:

- one runtime event JSONL line,
- one dedupe key,
- one Markdown evidence pack,
- one short WeCom reply draft,
- no secrets in tracked files.
