docs(tasks): keep procurement execution on device
This commit is contained in:
@@ -16,7 +16,7 @@
|
||||
| IX-007 | US-005 | App 候选确认 | 接受/拒绝/转人工 | 停止自动化并回传人员结论 | P0 | 已定 |
|
||||
| IX-008 | US-006 | App/管理端错误状态 | 自动失败、取消、重试上传 | 显示结构化原因和恢复动作 | P0 | 已定 |
|
||||
| IX-009 | US-008 | App 候选理由/管理端决策详情 | 接受、拒绝、改选或修正 | 保存逐候选结构化人工标签 | P1 | 已定,T-208 后置 |
|
||||
| IX-010 | US-009 | 管理 Web VLM 设置 | 保存、测试或启用配置版本 | 后端代理模型且密钥不下发 App | P0 | 已定,T-207 |
|
||||
| IX-010 | US-009 | App 独立执行设置/同步状态 | 配置模式、离线执行或补报 | 授权内独立执行并可审计同步 | P0 | 已定,T-206/T-207 |
|
||||
|
||||
## IX-001 管理 Web 登录
|
||||
|
||||
@@ -165,7 +165,7 @@
|
||||
|
||||
- 页面:Android“任务执行”及拼多多前台
|
||||
- 角色:采购执行员
|
||||
- 服务依赖:start、heartbeat、AI、event API 和 Android 自动化。
|
||||
- 服务依赖:start、heartbeat、App 本地 AI、event API 和 Android 自动化。
|
||||
- 关联原型:[任务预览](design/android-task-preview.html)、
|
||||
[任务执行](design/android-task-running.html)(T-202)。
|
||||
|
||||
@@ -279,37 +279,33 @@
|
||||
- 理由使用 checkbox/radio 和明确 label,不依赖颜色;主要理由可用单选控件指定。
|
||||
- 批量应用前显示候选数量和标题摘要,默认不选中。
|
||||
|
||||
## IX-010 管理 VLM 服务
|
||||
## IX-010 App 独立执行与同步
|
||||
|
||||
- 页面:管理 Web `/settings/vlm`;Android 设置页只读显示后端 AI 状态。
|
||||
- 角色:采购管理员。
|
||||
- 前置条件:后端加密 master key 已配置。
|
||||
- 服务依赖:T-207 provider 配置、加密存储、安全 HTTP transport 和连接测试。
|
||||
- 页面:Android“设备设置”“任务执行”和“结果同步”。
|
||||
- 角色:采购执行员。
|
||||
- 前置条件:设备已绑定;后台任务已领取。
|
||||
- 服务依赖:T-206 有限离线授权;T-207 Keystore provider 配置和加密 outbox。
|
||||
|
||||
**正常路径**
|
||||
|
||||
1. ADMIN 填写服务名称、HTTPS Base URL、模型、超时和重试上限,选择
|
||||
`/v1/chat/completions`,输入 write-only API Key。
|
||||
2. 保存前显示非秘密配置摘要;提交成功创建不可变新版本,并可设为新 execution 的
|
||||
默认版本。
|
||||
3. “测试连接”使用内置脱敏文字和测试图片,不读取或发送任何采购任务。
|
||||
4. 页面显示当前默认版本、启用状态、最近测试时间和稳定结果,不显示 Key。
|
||||
1. 设置页选择 `MANUAL_FIRST` 或 `AI_ASSISTED`。AI 模式复用 Roubao 现有 provider、
|
||||
model、Base URL 和 Key 配置,Key 默认隐藏。
|
||||
2. 开始后台任务时固定本次 execution 的模式及非秘密 provenance;任务 payload 不能
|
||||
改写本地 provider 设置。
|
||||
3. 管理后端断开时,执行页显示“离线执行”、服务端授权截止时间和待同步项目数;授权
|
||||
内继续本地 workflow。
|
||||
4. 恢复连接后先同步任务归属和取消状态,再按依赖顺序幂等上传事件、证据和终态结果。
|
||||
|
||||
**状态与异常**
|
||||
|
||||
- Key 字段始终为空;已有 Key 只显示“已配置”。留空表示沿用,替换必须明确确认。
|
||||
- master key 缺失时禁止保存含 Key 的配置和测试真实服务,但不阻塞任务管理页面。
|
||||
- URL 非 HTTPS、指向受限网络、发生重定向/DNS rebinding 或模型字段非法时在字段
|
||||
附近提示,不发出供应商请求。
|
||||
- 超时、鉴权失败、限流和 schema 不兼容显示稳定分类和 request ID;供应商响应正文
|
||||
只进入受控诊断且默认不持久化。
|
||||
- 非 ADMIN 返回拒绝且不泄露配置是否存在;所有 POST 使用 CSRF 和防重复提交。
|
||||
|
||||
**App 边界**
|
||||
|
||||
- App 只显示“后端 AI 可用/不可用”和可操作建议,不显示 provider 名称、模型、
|
||||
Base URL、Key 或选择控件。
|
||||
- Release App 不保留可用于后端任务的端上 provider 配置;Debug mock 与生产隔离。
|
||||
- 旧明文 Key 迁移失败或 Keystore 不可用:禁用真实 VLM 调用,允许用户显式改用
|
||||
`MANUAL_FIRST`,不能静默切换。
|
||||
- 远程 provider 非 HTTPS、发生重定向或输出无效:停止 AI 分支并转人工,不影响已有
|
||||
outbox 和任务证据。
|
||||
- 离线授权剩余 5 分钟时持续显示警告;到期时在安全检查点停止,不提供“继续离线”。
|
||||
- 离线期间无法保证即时接收管理取消;恢复连接后收到取消必须先停止再上传。
|
||||
- 结果补报失败保留加密本地记录和原幂等 key;不能恢复终态后的自动化。
|
||||
- App 可以显示 provider 名称和模型,但不得回显 Key、Authorization 或完整敏感 URL。
|
||||
|
||||
## 通用交互约束
|
||||
|
||||
|
||||
Reference in New Issue
Block a user