docs: refine HWLAB L1 ownership specs
This commit is contained in:
@@ -34,7 +34,7 @@ description: UniDesk 项目管理运行技能。用户提到 UniDesk 项目管
|
||||
- L0 系统边界必须把 HWLAB 作为完整系统看待,描述外部使用者、外部输入、受控资源、外部输出、用户接口和系统责任边界,不写内部治理材料。
|
||||
- 稳定概念用术语表表达;不要写没有判定价值的“运行概念”流水。
|
||||
- L0 的 L1 方向树和项目规格索引合并为内部模块分工与规格索引,用相对路径索引到每个内部模块规格文档。
|
||||
- 原子需求每条独立成节,信息表使用横向表格且只放短元数据,推荐列为 `编号 | 短名 | 主责模块 | 关联模块`。主责模块必须带项目编号和相对路径链接;禁止把需求句、职责划分、验收口径或大段说明塞进表格,正文必须承载需求定义、职责边界、意图和范围。
|
||||
- 原子需求每条独立成节,信息表使用横向表格且只放短元数据,推荐列为 `编号 | 短名 | 主责模块 | 关联模块`。主责模块必须写下一层主责单元并带项目编号:L0 原子需求写 L1,L1 原子需求写 L2,L2 原子需求写 L3;禁止在 L1/L2 原子需求里把主责模块写成本规格本级。禁止把需求句、职责划分、验收口径或大段说明塞进表格,正文必须承载需求定义、职责边界、意图和范围。
|
||||
- 不要为了凑全局原子需求条数自动添加次要派生能力。证据收集、硬编码诊断、硬编码建议、任务状态收集、结果包/结果收集等需求,除非用户明确授意,不得写入 OA 规格或 L0 原子需求。
|
||||
- 平台运维在 L0 中只能作为支撑后勤职责出现;对外需求应写成系统可用性、可恢复、资源可控等用户可感知能力,不写成“HWLAB 对外提供平台运维能力”。
|
||||
- 单一主责、关闭验收、规格沉淀、回写和偏离判定是治理规则,不得伪装成 L0 原子需求。
|
||||
|
||||
@@ -143,7 +143,7 @@ L1 方向是直接服务 L0 使命的顶层能力域,不是项目管理工件
|
||||
- L1 是验收主责,不是宽泛标签。每个非平凡 L2/L3/L4 issue 必须且只能有一个主责 L1。
|
||||
- 可以列相关 L1 做交接,但主责 L1 是定义完成标准的方向。
|
||||
- 主责不清楚时,问“什么证据能关闭这个 issue”:硬件资源就绪、Agent 执行生命周期、Harness/RL 证据、客户端/API 行为、用户/管理策略,还是平台交付/运维。
|
||||
- 先按完成标准判断主责,再看实现表面。CLI、Web 页面、SDK、API、hwpod 工具或服务路由不会自动归入 `客户端`;它们主归属定义正确性的领域。只有当完成标准是多客户端入口行为、用户交互、兼容性、输出格式或公开 API/SDK 体验时,`客户端` 才是主责 L1。
|
||||
- 先按完成标准判断主责,再看实现表面。CLI、Web 页面、HTTP API、hwpod 工具或服务路由不会自动归入 `客户端`;它们主归属定义正确性的领域。只有当完成标准是 Web、CLI、HTTP API 的入口行为、用户交互、兼容性或输出格式时,`客户端` 才是主责 L1。
|
||||
|
||||
HWLAB Cloud M1 当前 L1 职责矩阵:
|
||||
|
||||
@@ -152,7 +152,7 @@ HWLAB Cloud M1 当前 L1 职责矩阵:
|
||||
| `PJ2026-0101` | 硬件池 | 硬件资源池:板卡、probe、HWPOD 节点、设备注册、占用、健康、可用性 | CaseRun pass/fail 标准、Agent 调度、UI/API 展示、CI/CD | 把 Harness 证据交给 HarnessRL;把资源分配 hook 交给 Agent编排 |
|
||||
| `PJ2026-0102` | Agent编排 | Agent 执行生命周期:Code Agent、AgentRun、工作区、session、provider profile、任务恢复 | 硬件 inventory、Harness 评分、客户端 UX/API 契约、CI/CD | 从 硬件池 获取设备分配;向 HarnessRL 提供证据;向 客户端 提供状态 |
|
||||
| `PJ2026-0103` | HarnessRL | Harness/RL 闭环:harness、CaseRun、ioProbe、证据、evaluation、replay、训练反馈、RL 收敛 | 硬件容量、Agent 调度、用户账户、rollout pipeline | 从 硬件池 获取设备事实;从 Agent编排 获取运行生命周期 |
|
||||
| `PJ2026-0104` | 客户端 | 用户入口:Web、CLI、HTTP API、SDK/IDE plugin、webhook、公开文档、兼容性 | 用户/账本真相、Agent 调度内部、硬件 inventory、CI/CD | 向 用户管理 交接 auth/account 策略;从 Agent编排 获取运行状态 |
|
||||
| `PJ2026-0104` | 客户端 | 用户入口:Web、CLI、HTTP API、兼容性、任务入口和结果获取 | 用户/账本真相、Agent 调度内部、硬件 inventory、CI/CD | 向 用户管理 交接 auth/account 策略;从 Agent编排 获取运行状态 |
|
||||
| `PJ2026-0105` | 用户管理 | 用户和管理域:账户、注册/登录、权限、API key、credit、usage、billing、admin、tenant isolation | 客户端 UX、Agent 执行、硬件证据、部署机制 | 把用户入口交给 客户端;从 Agent编排/HarnessRL 获取 usage 来源 |
|
||||
| `PJ2026-0106` | 平台运维 | 平台交付和运维:CI/CD、git mirror、YAML-first、Secret sync、rollout、observability、GC、platform release | 产品行为、用户策略、Agent 语义、硬件验收标准 | 承接所有 L1 的部署需求;把健康信号回传给负责人 |
|
||||
|
||||
@@ -181,7 +181,7 @@ HWLAB Cloud M1 当前 L1 职责矩阵:
|
||||
| 编号 | 短名 | 主责 | 关联 L1 | 边界 |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| `PJ2026-010101` | `HWPOD标准` | 定义 HWPOD-SPEC、硬件资源身份、能力模型、AI 网关接入标准、操作能力标准、状态/错误语义和验收基线。 | 客户端、HarnessRL、Agent编排 | 这是标准/协议型交付,不是单纯文档。它定义 HWPOD 资源和 AI 网关能力声明的正确性规则。 |
|
||||
| `PJ2026-010102` | `HWPOD工具` | 实现硬件池领域工具侧,包括 `hwpod-ctl`、HWPOD-SPEC 新建/修改/校验,以及 compile、download、filesystem、IO 等操作入口。 | 客户端 | 这不是通用 `客户端` L1。只要完成标准由 HWPOD 语义或真实硬件执行定义,就主归属硬件池。通用 CLI 登录、profile 体验、公开 API 体验、SDK 对齐和多客户端一致性归 `客户端`。 |
|
||||
| `PJ2026-010102` | `HWPOD工具` | 实现硬件池领域工具侧,包括 `hwpod-ctl`、HWPOD-SPEC 新建/修改/校验,以及 compile、download、filesystem、IO 等操作入口。 | 客户端 | 这不是通用 `客户端` L1。只要完成标准由 HWPOD 语义或真实硬件执行定义,就主归属硬件池。通用 CLI 登录、profile 体验、HTTP API 入口和多客户端一致性归 `客户端`。 |
|
||||
| `PJ2026-010103` | `HWPOD服务` | 实现服务端 HWPOD 注册、管理、状态、必要的权限/租约、请求接收、路由、结果归档,并把工具侧请求转发到 AI 网关节点。 | 用户管理、Agent编排、平台运维 | 它负责 HWPOD 服务端语义,不负责全局部署机制、用户策略或 Agent 任务调度。 |
|
||||
| `PJ2026-010104` | `AI网关` | 实现连接真实硬件到服务端的节点侧能力,包括 PC 客户端形态、硬件网关盒子形态、心跳、命令执行、日志/artifact/IO 结果回传和适配器执行。 | HarnessRL、Agent编排、平台运维 | debug probe、UART、board-comm、ioProbe、电压/电流/频率/CANopen 等适配器是网关侧能力切片,通常作为本 L2 下的 L3,除非发展成更大的工作计划。 |
|
||||
|
||||
|
||||
@@ -54,12 +54,12 @@
|
||||
|
||||
| 边界项 | 内容 |
|
||||
| --- | --- |
|
||||
| 外部使用者 | <用户、外部系统、管理员或自动化任务> |
|
||||
| 外部使用者 | <用户、管理员或自动化任务> |
|
||||
| 外部输入 | <用户请求、业务对象、资源约束、身份凭据、文件或硬件选择> |
|
||||
| 受控资源 | <系统管理的设备、数据、运行环境或外部资源> |
|
||||
| 外部输出 | <用户可获得的状态、结果、产物、通知、报告或记录> |
|
||||
| 用户接口 | <Web、CLI、API、SDK、Webhook 等> |
|
||||
| 系统边界 | <系统负责什么;明确不替代用户或外部系统负责什么> |
|
||||
| 用户接口 | <Web、CLI、HTTP API 等> |
|
||||
| 系统边界 | <系统负责什么;明确不替代用户、管理员或运行环境负责什么> |
|
||||
|
||||
## 5. 内部模块分工与规格索引
|
||||
|
||||
@@ -75,7 +75,7 @@
|
||||
| --- | --- | --- | --- |
|
||||
| HWLAB-L0-REQ-001 | <需求短名> | [PJ2026-0101 <主责模块>](<相对路径>) | [<关联模块>](<相对路径>) |
|
||||
|
||||
<正文第一段写完整需求定义。正文后续段落写主责职责、关联模块职责、意图、范围和边界。不要把需求句、职责划分、类型、验证方法、验证入口、必需证据或接受标准塞进表格。不要为了凑条目自动添加证据收集、硬编码诊断、硬编码建议、任务状态收集、结果包或结果收集类次要需求。>
|
||||
<正文第一段写完整需求定义。主责模块必须写下一层主责单元:L0 写 L1,L1 写 L2,L2 写 L3,不重复当前规格本级。正文后续段落写主责职责、关联模块职责、意图、范围和边界。不要把需求句、职责划分、类型、验证方法、验证入口、必需证据或接受标准塞进表格。不要为了凑条目自动添加证据收集、硬编码诊断、硬编码建议、任务状态收集、结果包或结果收集类次要需求。>
|
||||
```
|
||||
|
||||
## L0 issue 正文
|
||||
|
||||
Reference in New Issue
Block a user