扩展氢能站点、加氢记录与台账原型链路,新增工作台、车辆资产 H5、自营物流等原型,并同步导航注册、PRD 资源与交付技能。
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
98
.cursor/skills/oneos-autoprd/references/annotation-sync.md
Normal file
98
.cursor/skills/oneos-autoprd/references/annotation-sync.md
Normal file
@@ -0,0 +1,98 @@
|
||||
# Axhub 标注目录同步(强制)
|
||||
|
||||
使用 OneOS AutoPRD 时,除资源库归档外,**必须**把 PRD 挂到 Axhub Make 标注工具的「原型目录」里,用户才能在右侧面板直接打开。
|
||||
|
||||
## 落点(三份必须一致)
|
||||
|
||||
| # | 路径 | 作用 |
|
||||
|---|------|------|
|
||||
| 1 | `src/prototypes/<prototype-id>/.spec/requirements-prd.md` | **主真相**:产品可读 PRD 全文 |
|
||||
| 2 | `src/prototypes/<prototype-id>/annotation-source.json` → **顶层** `directory.nodes` | **标注目录入口**:面板里可见的 Markdown/PRD |
|
||||
| 3 | `src/resources/prd/<prototype-id>-autoprd.md` | 资源库归档(可选但默认写) |
|
||||
|
||||
可选:复杂判定另写 `.spec/<topic>.md`,目录里再挂一条,并在 PRD 里链过去(与 `business-logic-documentation` 一致)。
|
||||
|
||||
## ⚠️ 目录必须写在文档顶层(常见踩坑)
|
||||
|
||||
Wire format(与 `prototype-annotation` 一致):
|
||||
|
||||
```json
|
||||
{
|
||||
"documentVersion": 1,
|
||||
"format": "axhub-annotation-source",
|
||||
"data": { "version": 2, "prototypeName": "...", "nodes": [] },
|
||||
"markdownMap": {},
|
||||
"assetMap": {},
|
||||
"directory": { "nodes": [] }
|
||||
}
|
||||
```
|
||||
|
||||
| 正确 | 错误 |
|
||||
|------|------|
|
||||
| 顶层 `directory.nodes` | 只写在 `data.directory` |
|
||||
| `PrototypeAnnotationHost` / Make 读的是 `source.directory` | 写在 `data` 下时右侧「原型目录」为空 |
|
||||
|
||||
若误写在 `data.directory`:迁移到顶层 `directory`,并删除 `data.directory`,避免双源。
|
||||
|
||||
## 目录节点写法(推荐)
|
||||
|
||||
在说明根 `folder` 的 `children` **靠前**插入或更新:
|
||||
|
||||
```json
|
||||
{
|
||||
"type": "markdown",
|
||||
"id": "<prefix>-doc-prd",
|
||||
"title": "产品需求说明(PRD)",
|
||||
"markdownPath": ".spec/requirements-prd.md",
|
||||
"markdown": "<与 .spec/requirements-prd.md 相同的全文>"
|
||||
}
|
||||
```
|
||||
|
||||
### 分章节 PRD(推荐,便于右侧目录浏览)
|
||||
|
||||
在「产品需求说明(PRD)」旁增加文件夹 **「PRD 分章」**,按 PRD 的 `##` 一级标题拆成多个 `markdown` 子节点(标题用章节名,正文为该章全文)。专题规格(`.spec/<topic>.md`)放在 **「专题规格」** 文件夹。
|
||||
|
||||
参考结构:
|
||||
|
||||
```text
|
||||
folder <模块>说明
|
||||
markdown 产品需求说明(PRD) ← 全文
|
||||
folder PRD 分章
|
||||
markdown 1. 一句话与目标
|
||||
markdown 2. 模块边界
|
||||
…
|
||||
folder 专题规格
|
||||
markdown <topic 标题>
|
||||
```
|
||||
|
||||
有 `scripts/sync-annotation-directory.mjs` 的原型:改 PRD / `.spec` 后**必须执行**该脚本再生目录。
|
||||
|
||||
定稿后第 10 章「功能变更记录」必须进入 PRD 全文节点;若有「PRD 分章」,同步该章节点。详见 [release-changelog.md](release-changelog.md)。
|
||||
|
||||
约定:
|
||||
|
||||
- `id`:`<短前缀>-doc-prd`(如 `ipc-doc-prd`、`wb-doc-prd`、`h5-va-doc-prd`)
|
||||
- `title`:优先「产品需求说明(PRD)」;已有「PRD」可保留不改名
|
||||
- **同时写** `markdownPath` + `markdown`:构建可内联路径,运行时目录也能直接读到正文
|
||||
- 若已有同 id / 同标题节点:只更新正文与 path,不新建重复入口
|
||||
- 遵守 `prototype-annotation-layout`:目录以 `markdown` 为主,不要用 `link`/`route` 顶替 PRD
|
||||
|
||||
## 增量改原型时怎么更新
|
||||
|
||||
1. 根据改动的文件路径确定 `<prototype-id>`。
|
||||
2. 读现有 `.spec/requirements-prd.md`(没有则按 AutoPRD 模板新建)。
|
||||
3. 只改受影响章节(故事、正逆向、关键逻辑、验收);其余保留。
|
||||
4. 回写 `.spec` + `resources/prd` + **顶层** `annotation-source.json` → `directory`(正文与文件一致;含分章节点)。
|
||||
5. 若原型有 `scripts/sync-annotation-directory.mjs`,改完后执行它。
|
||||
|
||||
## 可跳过全量重写的情况
|
||||
|
||||
纯样式、无文案/无流程/无判定变化的微调:不必重写整份 PRD,但若改了用户可见文案或交互结果,仍须同步对应段落与目录节点。
|
||||
|
||||
## 验收
|
||||
|
||||
- [ ] `.spec/requirements-prd.md` 存在且为最新
|
||||
- [ ] `annotation-source.json` **顶层**有 `directory.nodes`(不是只在 `data` 下)
|
||||
- [ ] 标注目录能打开「产品需求说明(PRD)」且内容与文件一致
|
||||
- [ ] 若有「PRD 分章」:各章可单独打开
|
||||
- [ ] 用户故事仍为业务条线说明口径(起点 / 怎么运作 / 闭环)
|
||||
Reference in New Issue
Block a user