auto-sync: 2026-06-06 10:44:36
This commit is contained in:
@@ -1046,6 +1046,15 @@ Text:
|
||||
- 新增:Agent ID ↔ Git 用户名映射
|
||||
- §9.0 衔接机制表更新:所有 ci-notifier 引用替换为 daemon Webhook 模块
|
||||
- §9.0.1 通知模板 From 字段更新:ci-notifier → daemon-webhook
|
||||
|
||||
### v2.0 司马懿终审修订
|
||||
|
||||
| 编号 | 类型 | 问题 | 修订内容 |
|
||||
|------|------|------|----------|
|
||||
| M1 | 必须修 | 超时阈值统一 4h 不合理 | §15.4 改为从 Mail metadata 读取个性化 deadline,三级处置按超时程度而非绝对时间 |
|
||||
| S1 | 建议 | Webhook 代码缺少映射步骤 | §15.3 代码示例加 to_agent_id() 映射函数,所有 send_mail 调用都经映射 |
|
||||
| S2 | 建议 | Webhook 缺签名验证 | §15.3 代码示例加 X-Gitea-Signature HMAC 验证 |
|
||||
| S3 | 建议 | 缺 Bug 确认模板 | §15.5 新增模板 6(Bug 确认通知) |
|
||||
- §14 待讨论更新:已确认事项标记,新增 Webhook 模块待讨论项
|
||||
|
||||
---
|
||||
@@ -1163,21 +1172,24 @@ async def handle_gitea_webhook(event: dict, x_gitea_event: str = Header(...), x_
|
||||
elif x_gitea_event == "pull_request_review":
|
||||
state = event["review"]["state"]
|
||||
if state == "APPROVED":
|
||||
await send_mail(to=event["pull_request"]["user"]["login"],
|
||||
pr_author = to_agent_id(event["pull_request"]["user"]["login"])
|
||||
await send_mail(to=pr_author,
|
||||
title=f"Review 通过: PR #{event['number']},请 merge", ...)
|
||||
elif state == "REQUEST_CHANGES":
|
||||
await send_mail(to=event["pull_request"]["user"]["login"],
|
||||
pr_author = to_agent_id(event["pull_request"]["user"]["login"])
|
||||
await send_mail(to=pr_author,
|
||||
title=f"Review 不通过: PR #{event['number']}", ...)
|
||||
|
||||
elif x_gitea_event == "issue_comment":
|
||||
# CI 自动写的失败评论 → 转发给相关 Agent
|
||||
if "CI 失败" in event["comment"]["body"]:
|
||||
await send_mail(to=event["sender"]["login"],
|
||||
commenter = to_agent_id(event["sender"]["login"])
|
||||
await send_mail(to=commenter,
|
||||
title=f"CI 失败: PR #{event['number']}", ...)
|
||||
|
||||
elif x_gitea_event == "issues":
|
||||
if event["action"] == "assigned":
|
||||
assignee = event["assignee"]["login"]
|
||||
assignee = to_agent_id(event["assignee"]["login"])
|
||||
await send_mail(to=assignee,
|
||||
title=f"任务指派: Issue #{event['number']}", ...)
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user