34 lines
2.1 KiB
Markdown
34 lines
2.1 KiB
Markdown
# Minutes Recipe 通用约束
|
|
|
|
> 返回入口:[DingTalk Minutes Skill](../../SKILL.md) · [Reference 与脚本索引](../minutes.md) · [兼容 Recipe](../lite-recipes.md)
|
|
|
|
本页只约束仍使用旧 Recipe 名称的兼容调用方,不复制根 Skill 的完整执行契约。
|
|
|
|
## 目标与 ID
|
|
|
|
| 字段 | 真实来源 | 后续用途 |
|
|
|---|---|---|
|
|
| `taskUuid` | Minutes 搜索/列表/创建的真实结果,或可信听记 URL 解析 | 所有详情、内容、更新、权限、下载与异步产物命令 |
|
|
| 成员 UID | 同 profile 下 AI Search/Contact 的唯一人员结果 | `+share/+unshare` 与需要身份绑定的发言人替换 |
|
|
| `sessionId` | upload create 的真实结果 | upload complete/cancel 与状态恢复 |
|
|
| `taskId` | 异步 create 的真实结果 | 继续轮询或恢复,不能重新 create 代替 |
|
|
|
|
标题、姓名、手机号、列表顺序和“最新一条”都不能替代稳定 ID。目标零命中、多候选、跨组织或分页未完成时停止并消歧。
|
|
|
|
## 分页与批量
|
|
|
|
- 完整列表和逐字稿必须读取到端点穷尽并检查 `complete=true`;缺 token、cursor 不前进/循环、页数上限或某页失败都属于不完整。
|
|
- 优先使用发布的批量接口或 Shortcut;没有批量能力时采用有界执行,不把 shell `& wait` 写成通用要求。
|
|
- 批量结果逐项记录目标、动作、成功、失败与未知状态。部分成功返回完整 ledger,不只汇报成功项。
|
|
|
|
## 写入与恢复
|
|
|
|
- Runtime 要求确认时,远端写调用数在确认前必须为 0;dry-run 也必须为 0。
|
|
- 非幂等或状态未知的 create/update 不盲目重试。先按真实 ID 读回,再决定只恢复未完成步骤。
|
|
- 写入成功必须有业务回执和必要读回证据;退出码 0、HTTP 200 或 `success=true` 单独都不足以证明完成。
|
|
|
|
## 跨产品传递
|
|
|
|
- Minutes 只交付真实听记内容和稳定 ID;写文档、建待办、发消息分别切换 `dingtalk-doc`、`dingtalk-todo`、`dingtalk-chat`。
|
|
- 跨产品传递时保留来源听记的 `taskUuid/title/profile`,不得把另一个组织或另一个候选的字段拼接到当前对象。
|