补充安全权限日志与草稿状态约定

This commit is contained in:
talesofzes
2026-06-22 17:30:59 +08:00
parent df0b3fa267
commit a41e2c28d4
19 changed files with 451 additions and 129 deletions
+8 -2
View File
@@ -11,6 +11,7 @@
- [ ] 飞书身份没有直接绕过平台角色权限。
- [ ] 非老板机器人私聊不会触发 AI。
- [ ] 失败记录仅管理员 / AI 团队和必要管理角色可见。
- [ ] 权限、安全、日志脱敏、验签和幂等符合 `docs/contracts/安全权限日志约定.md`
## 2. 状态流转
@@ -31,8 +32,9 @@
## 4. 飞书
- [ ] 回调已验签。
- [ ] `event_id` 幂等。
- [ ] `event_id``idempotency_key` 幂等。
- [ ] 卡片重复点击幂等。
- [ ] 旧卡片、失效卡片、已替代草稿和已过期通知不会继续写业务对象。
- [ ] 通知内容只包含摘要和链接。
- [ ] 飞书 token、App Secret 不进入日志。
- [ ] 找不到通知、草稿、事项、提醒时有失败记录。
@@ -43,7 +45,7 @@
- [ ] 老板消息统一走 `POST /api/secretary/handle-message`
- [ ] `source + message_id` 幂等覆盖模型调用、草稿创建和 `secretary_messages`
- [ ] 模型 JSON 有 validator。
- [ ] `qa` / `realtime_qa` / `note` / `need_more_info` / `unsupported` 不创建事项或提醒。
- [ ] `qa` / `realtime_qa` / `note` / `need_more_info` / `unknown` / `unsupported` 不创建事项或提醒。
- [ ] 实时问答不做交易判断。
- [ ] PromptContext 版本被记录。
- [ ] PostgreSQL AI 对话记忆只辅助理解和草稿修订,不替代正式业务表。
@@ -66,6 +68,8 @@
- [ ] 失败记录包含类型、关联对象、原因、处理状态。
- [ ] 失败处理必须有处理结果。
- [ ] 日志包含操作人和渠道。
- [ ] OAuth code/state、回调验签密钥、一次性操作 token、完整手机号和完整邮箱没有进入普通日志。
- [ ] 模型原始请求/响应和飞书原始 payload 的访问范围受限。
## 8. 测试
@@ -73,11 +77,13 @@
- [ ] 失败路径有测试。
- [ ] 测试没有依赖真实飞书或真实百炼网络调用。
- [ ] 测试 fixture 不包含真实手机号、邮箱、token 或密钥。
- [ ] 每个 plan 完成前说明了新增或修改的 tests、覆盖的 spec / contract 约定和运行方式。
## 9. 文档同步
- [ ] 改接口同步 `docs/contracts/API接口约定.md`
- [ ] 改字段同步 `docs/contracts/数据对象约定.md`
- [ ] 改状态同步 `docs/contracts/状态流转约定.md`
- [ ] 改权限、安全、日志脱敏、飞书验签或幂等同步 `docs/contracts/安全权限日志约定.md`
- [ ] 改飞书逻辑同步 `docs/specs/03_飞书通知与反馈.md`
- [ ] 改 AI 规则同步 `docs/specs/01_老板AI秘书与AI草稿.md`