通用场景示例
示例只使用通用的作业、对象、文件、资源与审核信号,不包含接入方项目名称或行业规则。
已可运行:健康检查
- 源码:SDK 健康检查。
- 前置:已迁移的 MySQL 与已启动的基础服务。
- 操作与预期输出:SDK 接入说明。
- 异常:数据库不可用或迁移记录异常时 readiness 返回 HTTP 503,SDK 返回类型化状态错误。
- 清理:只读调用,无业务资源需要删除。
已可运行:文件转换任务的受理与取消
- 源码:SDK 任务受理示例。
- 前置:完成迁移、初始化凭据、启动服务,在没有 Worker 消费的专用队列运行此受理/取消示例,详见 SDK 接入。
- 输入:对象引用、格式与精确整数;提交两次同一身份,再查询、分页并带版本取消。
- 预期:重复请求返回同一任务,最终 CANCELLED/revision=2。当前不启动 Worker,不实际生成文件。
- 异常:凭据失效、权限不足、内容冲突、版本竞争和未知网络结果,见 任务接口。
- 清理:示例以取消结束;任务和审计历史保留。重复运行会生成独立示例任务。
已可运行:文本规范化执行
- 源码:Worker 底层协议示例。
- 前置:专用 Worker 凭据,启动步骤见 Worker SDK 文档。
- 输入与步骤:提交
{"text":" Hello Orbit "}→ 注册/容量 → 领取 → 开始授权 → 实际处理 → 确认结果 → 查询 → 排空。 - 预期:SUCCEEDED、一次尝试、结果
{"text":"HELLO ORBIT"}。 - 异常:底层示例使用原身份有限重报控制 ACK;业务函数不随重连再次调用;迟到证据不能当作成功结果。自动续租与持续消费见下方运行器示例。
- 清理:任务历史保留;运行结束确认排空并关闭连接。每次示例使用独立任务/处理器身份。
已可运行:自动 Worker 并发消费
- 源码:自动 Worker 示例,接入与启动命令。
- 步骤:注册版本化处理器 → Run → 以容量 2 消费三条文本任务 → 查询结果 → 取消 Run context 并等待排空。
- 预期:三条规范化结果、started=3、confirmed=3、running=0;输入与结果均由实际代码处理。
- 异常:自动心跳/续租与原身份重连;普通错误/panic 按未知效果报告,超时退出不声称杀死 goroutine;完整故障证据见 回归记录。
- 清理:正常排空关闭连接,保留历史;进程被强杀后的在途状态由租约恢复与核查衔接。
已可运行:执行历史与冲突证据核对
- 源码:执行历史示例,启动命令和输入输出。
- 前置:迁移到当前版本、启动服务,专用凭据具备提交/读取与 Worker 权限。
- 步骤:创建模拟任务 → 开始授权 → 保存 v1 结果 → 用另一消息身份报告 v2 → 查询尝试/证据列表与详情 → 核对任务仍保留 v1。
- 预期:SUCCEEDED、attempts=1、evidence=1、reason=RESULT_CONFLICT、disposition=EVIDENCE_ONLY;实际结果中的大整数保持精确。
- 异常:迟到或矛盾内容不能覆盖权威结果;缺少动作权限返回 403,错配父资源、跨命名空间或队列越权返回 404,详见 接口。示例不调用外部业务系统。
- 清理:正常结束确认排空并关闭连接;任务及证据保留用于追踪,不硬删除。重复运行创建独立任务。
计划场景与验收标准
| 场景 | 输入与步骤 | 预期结果 | 必测异常 | 状态 |
|---|---|---|---|---|
| 文件转换 | 对象引用 → 提交任务 → Worker 转换 → 结果引用 | 同一操作获得一次业务结果,历史可查 | 重复提交、Worker 在结果上报前中断 | 受理与执行框架已实现,实际转换示例待补齐 |
| 定期同步 | 发布计划 → 周期触发 → 暂停 → 恢复 | 触发身份唯一,漏跑策略可追溯 | 多节点竞争、停机后补跑上限 | P3 待开发 |
| 并行生成 | 输入对象 → 并行计算两份结果 → 汇合 | 两支满足条件后只创建一份后继工作 | 一支失败、重复结果、汇合竞争 | P4 待开发 |
| 等待审核 | 校验 → 等待信号 → 发布结果 | 只接受授权、匹配当前操作的信号 | 早到、重复、过期与越权信号 | P4 待开发 |
| 外部作业查询 | 提交一次 → 间隔查询 → 最终结果 | 处理中消耗轮次,请求失败消耗尝试 | 回执与查询竞争、预算耗尽、响应未知 | P5 待开发 |
| 暂停与恢复 | 暂停 → 接收在途结果 → 核查 → 继续 | 历史与预算保留,已成功工作不重复 | 暂停/开始竞争、恢复时已过期 | P5 待开发 |
每个待开发场景最终都需提供独立目录、完整源码、配置模板、启动与验证命令,不能只留下概念流程图。配套回归会先使用可控的模拟处理器或外部服务,不对真实系统产生副作用。