Files
ai-video-fullstack/implement-stage/ASSUMPTIONS.md
T

34 lines
4.6 KiB
Markdown
Raw Normal View History

# Assumption Ledger — Prompt background tasks
<!-- ASK mode: never -->
| ID | Under-determined by the request | Chosen | Class | Source |
|----|--------------------------------|--------|-------|--------|
| A-001 | 范围 | 只允许提示词 Pipeline 绑定任务工具;不开放 Workflow、Realtime、启动 Action | semantic | user |
| A-002 | 任务生命周期 | 应用级原生 Worker 拥有 Job;网页断线任务继续 | semantic | user |
| A-003 | 配置入口 | 新增 task 工具类型,复用 Tool CRUD/绑定;每个助手最多一个 | interface | default |
| A-004 | 任务作用域 | 平台生成 task_id,记录来源 conversation/assistant;管理接口沿用现有管理员鉴权 | interface | default |
| A-005 | 远端执行关联 | 一次任务一个 OpenCode session;提交前保存session及messageID,初始idle不算完成 | semantic | default |
| A-006 | 取消 | 原生Job取消后调用远端abort并核查;无法确认时保留待确认,不能宣称已停止 | semantic | default |
| A-007 | 通知 | 普通进度仅网页;完成/失败/取消/状态未知/等待输入在线时触发前台通知;离线结果保留供查询 | semantic | default |
| A-008 | 恢复 | 单进程;重启恢复观察有远端句柄的任务,不自动重新发送未知提交 | semantic | default |
| A-009 | 远端配置 | 地址/工作目录/Basic鉴权由管理员工具配置,任务冻结连接信息;LLM不能改地址和目录 | interface | default |
| A-010 | 补充输入 | 本版仅支持回答远端问题及权限确认;任意实时修改要求需先停止再提交,不自动批准权限 | semantic | default |
| A-011 | 验证边界 | 未提供真实远端服务,使用httpx MockTransport验证协议和真实Pipecat验证调度;真实联调待部署配置 | semantic | default |
| A-012 | 外部编码变更 | 仅明确调用任务工具时会启动远端执行,不因查看页面自动执行 | semantic | default |
| A-013 | 任意运行中修改任务 | 本版支持远端待回答的问题/权限;任意实时 steer 延后,新增要求通过停止后重新提交 | semantic | default |
| A-014 | 任务API字段 | 与现有API一致使用camelCase;执行器内部保持Python snake_case | interface | default |
| A-015 | 同一工作区并发修改 | 本版原生execute Job采用全局FIFO串行;排队计入本次等待时限;另有未结束远端句柄时不启动新的编码提交,状态未知/停止未确认需先核查。不能约束平台之外的远端客户端 | semantic | default |
| A-016 | 状态未知后恢复 | 网页提供显式核查/重新观察;只重连已有远端句柄,绝不重复发送原任务 | semantic | default |
| A-017 | 自动测试边界 | task工具不出现在普通工具模拟列表;测试运行器中调用task只返回不支持,真实执行需手动语音调试 | semantic | default |
| A-018 | 远端结果保留与通知长度 | 平台保存消息API关联到本次任务的完整助手文本及错误文本,不包含工具原始日志;独立session.error事件仅保留失败提示;语音上下文最多保留首尾各8000字符并显式标记省略,完整结果可在网页查看 | semantic | sweep |
| A-019 | 超时定义 | 时限针对每次本地观察Job(包含排队);重启/重新观察重新计时,超时与用户停止都进入远端abort核查,确认停止后才显示cancelled,不作为累计任务寿命上限 | semantic | sweep |
| A-020 | 自动测试控制函数 | 测试运行器中提交、查询、取消、回复全部拒绝,不访问真实任务服务;修复首轮审阅发现的仅提交有防护问题 | semantic | sweep |
| A-021 | 任务列表范围 | 管理API最多100项,优先未结束任务;网页展示全部返回项,无分页,更早记录可凭task_id查询/控制 | interface | sweep |
| A-022 | 远端未结束时的新任务 | 已接受的本地排队任务若发现其他未结束远端句柄,会以failed终结并明确说明未向远端提交;不会等旧任务解决后自动恢复,需用户重新提交 | semantic | sweep |
## Sweep corrections
- A-001:修复服务端曾接受 literal/variable 参数的启动 Action task 绑定;不支持即在保存时拒绝。
- A-006:修复重启后丢失 cancel_requested;恢复Job先重试远端停止,不恢复普通执行观察。
- A-007:明确等待输入、未知、取消也会在线通知,与代码一致。
- A-015:原生FIFO不能单独保证外部执行串行;新增提交前的业务检查,已有未结束远端句柄时不再发送新编码指令。该检查不创建第二套队列。