@aipper/aiws-spec 0.0.16 → 0.0.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aipper/aiws-spec",
3
- "version": "0.0.16",
3
+ "version": "0.0.18",
4
4
  "description": "AIWS spec and templates (single source of truth).",
5
5
  "type": "module",
6
6
  "files": [
@@ -0,0 +1,88 @@
1
+ ---
2
+ name: ws-bugfix
3
+ description: 缺陷修复(通过禅道 MCP 拉取 bug 与附件,下载图片证据,汇总到 issues/fix_bus_issues.csv,并绑定到 changes/<change-id>/)
4
+ ---
5
+
6
+ 用中文输出(命令/路径/代码标识符保持原样不翻译)。
7
+
8
+ 目标:
9
+ - 用禅道 MCP 拉取 bug 详情与附件(尤其图片)
10
+ - 把证据落盘到 `changes/<change-id>/bug/`(避免只停留在对话)
11
+ - 把修复任务汇总/更新到 `issues/fix_bus_issues.csv`
12
+ - 与 `ws-dev` / `aiws change` 流程绑定,确保可追溯、可验证
13
+
14
+ 非目标(强制):
15
+ - 不自动 commit / push
16
+ - 不写入任何 secrets(token、cookie、内网地址)
17
+ - 不在无法复现时直接改代码(先产出阻塞信息)
18
+
19
+ 前置:
20
+ 1) 先运行 `$ws-preflight`。
21
+ 2) 准备 `change-id`(建议:`bug-<bug-id>` 或 `bugfix-<bug-id>-<slug>`)。
22
+ 3) 建立变更工件(推荐):
23
+ ```bash
24
+ aiws change start <change-id> --hooks
25
+ # superproject + submodule 推荐:
26
+ aiws change start <change-id> --hooks --worktree --submodules
27
+ ```
28
+
29
+ 建议流程(按顺序):
30
+
31
+ ## 1) 通过禅道 MCP 拉取 bug
32
+ - 使用当前会话中已启用的 zentao MCP 工具获取:
33
+ - `bug_id`、标题、优先级/严重级、模块、状态、指派人
34
+ - 重现步骤、期望结果、实际结果
35
+ - 附件列表(含图片 URL/文件名)
36
+ - 若当前环境没有 zentao MCP 工具:立即停止并提示用户先配置,不要猜数据。
37
+
38
+ ## 2) 证据落盘(强制)
39
+ 在 `changes/<change-id>/bug/` 下落盘:
40
+ - `zentao-bug-<bug-id>.json`:原始字段快照(避免信息丢失)
41
+ - `zentao-bug-<bug-id>.md`:人类可读摘要(复现步骤/期望/实际/风险)
42
+ - `images/<bug-id>/...`:下载的图片附件(保留原扩展名)
43
+
44
+ 建议目录:
45
+ ```text
46
+ changes/<change-id>/bug/
47
+ zentao-bug-<bug-id>.json
48
+ zentao-bug-<bug-id>.md
49
+ images/<bug-id>/
50
+ ```
51
+
52
+ ## 3) 汇总到 issues/fix_bus_issues.csv(upsert)
53
+ - 目标文件:`issues/fix_bus_issues.csv`
54
+ - 若文件不存在,先创建表头:
55
+ ```csv
56
+ Bug_ID,Title,Severity,Module,Status,Assigned_To,Change_ID,Image_Count,Image_Paths,Evidence_Path,Verify_Command,Fix_Status,Updated_At,Notes
57
+ ```
58
+ - 以 `Bug_ID` 为主键 upsert:
59
+ - 已存在:更新状态/证据/图片路径
60
+ - 不存在:新增一行
61
+
62
+ 字段约束:
63
+ - `Change_ID`:必须等于当前 `change-id`
64
+ - `Evidence_Path`:指向 `changes/<change-id>/bug/zentao-bug-<bug-id>.md`
65
+ - `Image_Paths`:多个路径用 `;` 分隔
66
+ - `Fix_Status`:`TODO|DOING|DONE|BLOCKED`
67
+
68
+ ## 4) 修复执行与回填
69
+ - 进入 `$ws-dev` 做最小改动修复。
70
+ - 完成后回填 `issues/fix_bus_issues.csv`:
71
+ - `Fix_Status`
72
+ - `Verify_Command`
73
+ - `Updated_At`
74
+ - `Notes`(必要时写阻塞原因)
75
+
76
+ ## 5) 验证与交付
77
+ ```bash
78
+ aiws change validate <change-id> --strict
79
+ aiws validate . --stamp
80
+ ```
81
+ - 需要提交时走 `$ws-commit`。
82
+ - 需要收尾合并时走 `$ws-finish`(或在 superproject + submodule 场景走 `$ws-deliver`)。
83
+
84
+ 输出要求:
85
+ - `Change_ID:` `<change-id>`
86
+ - `CSV:` `issues/fix_bus_issues.csv` 中对应 `Bug_ID` 行的关键字段
87
+ - `Evidence:` `changes/<change-id>/bug/zentao-bug-<bug-id>.md` + 图片目录
88
+ - `Verify:` 实际运行命令与结果(未运行不声称已运行)
@@ -10,7 +10,21 @@
10
10
  - 启用本机门禁(推荐):`aiws hooks install .`(或手工:`git config core.hooksPath .githooks`;`git commit`/`git push` 会自动跑 `aiws validate .`)
11
11
  - 提交前校验(强制门禁):`aiws validate .`(包含:漂移检测 + `ws_change_check` + `requirements_contract`)
12
12
  - Codex(推荐):本仓库内置 repo skills:`.agents/skills/`(可显式 `$ws-dev`,也可隐式套用工作流)
13
- - Codex skills(常用):`$ws-preflight` / `$ws-submodule-setup` / `$ws-plan` / `$ws-plan-verify` / `$ws-dev` / `$ws-pull` / `$ws-push` / `$ws-review` / `$ws-commit` / `$aiws-init` / `$aiws-validate` / `$aiws-hooks-install` / `$aiws-change-new`
13
+ - Codex skills(常用,一句话说明):
14
+ - `$ws-preflight`:预检(读取真值文件并输出约束摘要)
15
+ - `$ws-submodule-setup`:子模块分支对齐(写入 `.gitmodules` 的 `submodule.<name>.branch`)
16
+ - `$ws-plan`:规划(生成可落盘 `plan/` 工件;供 `$ws-dev` 执行)
17
+ - `$ws-plan-verify`:计划质检(执行前检查计划是否过长/跑偏)
18
+ - `$ws-dev`:开发(按需求实现并验证;适用于任何需要修改代码/配置的任务)
19
+ - `$ws-bugfix`:缺陷修复(禅道 MCP 拉单 + 图片证据落盘 + `issues/fix_bus_issues.csv` 汇总)
20
+ - `$ws-pull`:拉取并对齐 submodules(尽量避免 detached;减少人为差异)
21
+ - `$ws-push`:推送(submodule 感知:先 submodules 后 superproject;fast-forward 安全)
22
+ - `$ws-review`:评审(提交前审计与证据落盘)
23
+ - `$ws-commit`:提交(先审计/门禁再 commit;submodule 感知)
24
+ - `$aiws-init`:初始化工作区(生成真值文件与门禁)
25
+ - `$aiws-validate`:校验工作区(漂移检测 + 门禁)
26
+ - `$aiws-hooks-install`:启用 git hooks 门禁(`core.hooksPath=.githooks`)
27
+ - `$aiws-change-new`:创建 `changes/<change-id>` 工件
14
28
  - Codex CLI(推荐,可选):安装全局 skills:`npx @aipper/aiws codex install-skills`(写入 `~/.codex/skills/` 或 `$CODEX_HOME/skills`)
15
29
  - Codex CLI(遗留,可选):安装全局 prompts:`npx @aipper/aiws codex install-prompts`(写入 `~/.codex/prompts/` 或 `$CODEX_HOME/prompts`;prompts 已 deprecated)
16
30
  - 不要把敏感信息写入 git:`secrets/test-accounts.json`、`.env*`、token、内网地址等
@@ -139,6 +139,7 @@
139
139
  ".agents/skills/aiws-change-templates-which/SKILL.md",
140
140
  ".agents/skills/aiws-change-templates-init/SKILL.md",
141
141
  ".agents/skills/ws-analyze/SKILL.md",
142
+ ".agents/skills/ws-bugfix/SKILL.md",
142
143
  ".agents/skills/ws-commit/SKILL.md",
143
144
  ".agents/skills/ws-dev/SKILL.md",
144
145
  ".agents/skills/ws-deliver/SKILL.md",