Files
pikasTech-unidesk/project-management/PJ2026-01/specs/spec-governance.md
T
2026-06-17 09:11:25 +00:00

11 KiB

HWLAB 规格治理索引:编号、层级、回写与偏离规则

修改历史

版本 对应 commit id 更新日期 变更说明
v0.3 b5d8cee438 2026-06-14 将 issue/PR 引用显示改为短号 Markdown 链接,链接目标保留完整 URL。
v0.2 b0cbe9b721 2026-06-14 将 issue/PR 引用改为完整 GitHub URL,避免 Markdown 渲染时裸 # 编号失效。
v0.1 37de91c653 2026-06-14 从迁移来源 pikasTech/HWLAB#1217 迁移到 UniDesk 项目管理目录。

正文

上级总项目: PJ2026-01 HWLAB 总规格 关联面板: HWLAB 长期总面板 性质: 规格治理索引,不是 L1 方向,不是 L2 课题,不定义产品/系统需求。 迁出来源: L0 总规格 旧版“项目编号与命名规则 / L1 方向判定 / 层级职责边界 / 管理入口职责边界 / 交叉引用检查 / 偏离判定 / 回写规则”章节 迁出时间: 2026-06-14(北京时间)

使用规则

  • 本文档只保存项目管理和规格治理规则,供 L0 总规格、L1/L2/L3/L4 issue 引用。
  • 不在本文档中新增、删除或重排 L1 方向;L1 方向树以 L0 总规格 为准。
  • 不在本文档 中记录阶段进展、CaseRun 日志、PR 流水或具体实现方案。
  • 治理规则变化需要回写 L0 总规格 的引用关系,并同步更新 UniDesk $unidesk-oa

重大规划型 issue 的 P0 SPEC-first 规则

  • 涉及新能力、跨模块架构、用户可见工作流、长期 API/数据模型、平台运维能力或多阶段实施的大规划型 issue,P0 阶段必须先维护 project-management/PJ2026-01/specs/ 中的对应 SPEC;不得只把稳定需求、架构或验收标准写在 issue 正文里。
  • P0 SPEC 必须按模板明确编号、短名、层级、状态、上级规格、关联规格、目的和范围、术语表、系统边界、内部分工、原子需求和过程控制。涉及实现架构的数据面必须在 SPEC 中包含架构图、数据流图和关键时序图;图形优先使用 Markdown 内嵌 mermaid
  • issue 正文的 P0 必须链接到对应 SPEC 文件和 SPEC 编号,并声明后续代码工作只有在 SPEC 编号、目标图和代码引用规则确认后才能开始。后续讨论改变稳定需求、数据流、接口或验收口径时,先更新 SPEC,再更新 issue 计划。
  • 该规划型 issue 范围内新增或修改的源码文件,文件头部必须标注遵循的 SPEC 编号、短名和实现引用版本,例如 SPEC: PJ2026-01060505 Workbench性能 draft-2026-06-17-p0。自动生成文件、第三方 vendored 文件、纯配置、锁文件和不能承载注释头的二进制产物不要求加源码头部,但对应生成器、渲染器或配置入口必须能追溯到 SPEC。
  • PR/issue 收口必须回写实际遵循的 SPEC 编号、实现引用版本、触达源码文件头部标注情况,以及是否需要修订 SPEC。发现代码实现偏离 SPEC 时,先修 SPEC 或修代码,不能用 issue 评论替代长期规格。

编号与命名规则

  • 编号格式:PJ<立项年份>-<层级路径>
  • PJ 表示项目,2026 表示立项年份。
  • HWLAB L0 总项目编号固定为 PJ2026-01
  • L1 方向编号在 L0 路径后追加两位,例如 PJ2026-0101 表示 HWLAB 第 1 个 L1 方向。
  • L2 课题编号继续追加两位,例如 PJ2026-010102 表示 HWLAB 第 1 个 L1 方向下的第 2 个 L2 课题。
  • L3/L4 持久管理节点继续每级追加两位,例如 PJ2026-01010203 表示 L1 第 01 个 / L2 第 02 个 / L3 第 03 个。
  • 已分配的持久编号不因优先级、阶段或主线变化而重排;新增持久节点只追加新后缀。
  • 单个 PR、一次 smoke、一次 CaseRun 等纯执行项可以只引用最近的持久编号,不强制独立编号。
  • 持久节点必须有短名,一般控制在 8 个中文汉字以内;必要解释写在说明列或正文里,不塞进名称。
  • issue 标题建议格式:<编号> <短名>;执行 issue 可在短名后追加冒号和具体任务描述。

层级职责边界

层级 负责定义 不负责 回写对象
L0 / PJ2026-01 项目使命、系统范围、L1 方向树、全局需求、全局验收 PR 细节、CaseRun 日志、日报流水、具体实现设计 project-management/PJ2026-01/specs/PJ2026-01-HWLAB.md、L1 issue
L1 / 方向 能力域范围、成功标准、L2 课题清单、原入口验收类型、交叉引用边界 单个 PR、一次 smoke、仓库/工具/runtime 名称、项目管理动作 L0 总规格;方向范围变化时同步 project-management/PJ2026-01
L2 / 课题 单个方向内的具体工作计划、交付物、阻塞、验收计划 总方向定义、跨方向路线图、实现细节流水 所属 L1;重大移动再回写 L0 总规格
L3 / 验收切片 一个有界验收切片和单一验收路径 多课题计划、父级范围变化、新能力域定义 所属 L2/L1,并附 evidence
L4 / 执行任务 PR、CaseRun、smoke、部署、文档收口等执行和 evidence 新需求、新方向、验收规则变化 最近的 L3/L2/L1,必要时回写 L0 总规格

L1 主责判定

L1 方向必须是直接服务 L0 使命的一等产品/系统边界,并能定义下级工作的完成标准。L1 不是松散标签;跨方向任务可以列关联方向,但必须有且只有一个主责 L1。主责 L1 按“谁定义完成标准、谁接收回写 evidence”判定。

合格的 L1 方向应同时满足:

  • 直接支撑云端硬件研发平台的产品、技术或运营能力。
  • 可以承载多个 L2 课题和验证切片,而不是单个 PR 或单次文档更新。
  • 有明确的用户价值、平台能力或真实运行面验收方式。
  • 能说明上游依赖、下游支撑、接口/证据边界和需同步回写对象。

管理入口职责边界

入口 定位 能定义 不能定义/承载 回写要求
PJ2026-01 L0 总项目需求规格 使命、范围、方向树、全局需求、全局验收 执行流水、PR 细节、CaseRun 原始日志、治理细则全文 L1 范围变化和重大验收移动必须回写
HWLAB 长期总面板 长期总面板和导航摘要 L0/L1/L2 入口索引、阶段入口、历史专题导航 规格正文、验收标准、方向定义 指向 L0 总规格,不替代 L0 总规格
HWLAB Cloud SPEC Cloud M1 当前阶段规格 当前阶段目标、阶段口径、阶段验收重点 L0 总规格、L1 方向本身、长期编号规则 阶段目标变化影响总规格时回写 L0 总规格
project-management/PJ2026-01 长期文档和阶段报告沉淀 稳定规格、实施方案、测试规格、阶段报告 日常执行看板、未收敛讨论 从 issue 蒸馏稳定结论回文档
UniDesk $unidesk-oa agent 侧项目治理操作规程 agent 如何识别锚点、编号、职责、回写 HWLAB 项目内容本身、L1 能力域 治理规则变化后更新 skill,并在 L0 总规格 索引 commit

交叉引用检查

  • L1/L2/L3 issue 只要涉及互相支撑,必须在正文写明“上游依赖、下游支撑、接口/证据边界、需同步回写”。
  • 依赖其他 L1 的能力时,规格文件必须用相对路径链接引用对应 L1 规格;执行 issue 必须引用对应 L1 issue 编号;不能只写方向名。
  • 如果一个变更影响多个 L1 的接口、证据或验收标准,主责 L1 必须回写受影响 L1,并在 L0 总规格 留下重大移动摘要。
  • 下级 issue 关闭前必须检查引用对象是否需要同步更新;引用未回写时不得直接关闭。
  • HWLAB 长期总面板只做导航索引,不替代上述交叉引用检查。

偏离判定

出现以下情况时,任务必须先回到 L0 总规格 或对应 L1 issue 重新归类:

  • 把文档整理、项目管理、skill 维护、看板维护或阶段报告当成 L1 方向。
  • 没有上级 L1 方向,却直接创建实现任务。
  • 涉及互相支撑但未引用对应 L1 issue。
  • 没有明确原入口验收,却计划关闭用户可见能力 issue。
  • 工具、CI、Web parity、观测增强没有解除某个 L1 的明确 blocker。
  • 阶段报告只统计 issue/PR 数量,没有说明对 L1 验收的移动。
  • 硬件池、Agent编排、HarnessRL、客户端、用户管理、平台运维互相抢主责,但没有说明 primary L1 和交叉引用。

回写规则

  • HWLAB 长期总面板只做长期总面板和导航,不承担规格正文。
  • L1 方向变化必须回写 L0 总规格 正文。
  • L1/L2/L3 持久管理 issue 标题必须以编号和短名开头。
  • L1 issue 关闭或阶段完成时,必须评论回写 L0 总项目 issue,并说明验收证据、剩余 blocker 和是否需要更新项目管理规格。
  • L2/L3/L4 执行 issue 必须写明编号、短名、上级总项目、主责方向、关联方向、目标 lane/branch、验收入口和完成后回写对象。
  • 稳定规则和长期规格最终应沉淀到 project-management/PJ2026-01;issue 保留执行状态、讨论、证据和交叉引用。
  • agent 处理 HWLAB OA/总规格/项目漂移/issue 树任务时,应先加载 $unidesk-oa,并以 L0 总规格 和对应 L0 issue 锚点为准。

AgentRun 跨仓规格归位

  • AgentRun 是 HWLAB Agent编排 的执行基础设施,不单独创建新的 OA L0 项目。
  • AgentRun 仓库内 docs/reference/spec-v01-*.md 只保留到 UniDesk OA 规格的交叉引用 stub;规格正文归 project-management/PJ2026-01/specs/ 管理,避免双份规格漂移。
  • AgentRun 功能规格按职责落到 AgentRun核心Runtime装配队列会话后端ProfileHWLAB接入
  • 通用发布、源码同步和 YAML/Secret 运维仍归平台运维;只有能抽象到多服务共用的规则才放通用 L2。AgentRun 固定 lane、source truth 和真实联调等专项事实只作为 发布流水源码同步 下的 AgentRun L3 管理。
  • 迁移仓库内大量 SPEC 时,先合并为少量稳定 L2,再把服务、lane、source truth、验证切片拆到 L3;不要按原始文件一比一制造 L2。