Files

2.0 KiB

Why

Host Agent 已经能够通过受限的内部协议为自身提交目标任务,但本地 Console 只能查看已经在本机 Runtime 中留下记录的任务,操作员仍需借助 Cloud Console 或 SDK 才能发起工作。这使最接近设备的运维入口无法完成 最基本的“选择本机设备并下发目标”的闭环。

What Changes

  • 在已登录的 Host Agent 本地 Console 的 Tasks 页面提供目标任务提交表单。
  • 支持选择“由本 Host 自动选择设备”或一个当前注册的本地设备;提交始终 经既有 Host 自限定内部接口进入 Cloud 队列。
  • 将成功创建的 Cloud task id 和可安全展示的失败原因反馈给本地操作员, 保持现有任务历史和执行页面的行为不变。
  • 对非幂等的任务创建请求取消自动重试;网络结果不确定时明确提示操作员先 查询 Cloud 状态,避免一次点击被客户端重复排队。
  • 复用现有本地账号、cookie session、CSRF 防护和默认 loopback Console 绑定;不新增 Cloud 公共任务提交权限、跨 Host 目标或入站 Cloud 连接。

Capabilities

New Capabilities

  • host-agent-console-task-submission: 允许经过本地 Console 身份验证的 操作员向当前 Host 的 Cloud 队列提交目标任务,并安全反馈提交结果。

Modified Capabilities

Impact

  • apps/device-host-agent/host_agent/web/host_agent/client.py: Tasks 页面、注入的 Host Agent 客户端依赖,以及安全的一次性提交语义。
  • apps/device-host-agent/host_agent/app.py: 将已拥有的异步 Host 客户端 交给嵌入式 Console,生命周期仍由 Host Agent 统一管理。
  • apps/device-host-agent/tests/: 覆盖登录、CSRF、目标选择、成功反馈、 Cloud 拒绝和传输失败。
  • 依赖现有 cloud-console-governance 中的 Host 自限定任务提交接口;本 变更不修改 Cloud API、调度器、数据库或公开 SDK。