kld-sdd 2.6.12 → 2.6.14

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.
Files changed (91) hide show
  1. package/README.md +29 -7
  2. package/kld-sdd-guide.html +428 -159
  3. package/lib/init.js +37 -7
  4. package/package.json +5 -2
  5. package/skywalk-sdd/index.cjs +2668 -415
  6. package/skywalk-sdd/metrics-v3.cjs +1153 -0
  7. package/skywalk-sdd/ontology/archive-package.cjs +120 -3
  8. package/skywalk-sdd/ontology/identity-index.cjs +9 -2
  9. package/skywalk-sdd/ontology/ontology-paths.cjs +73 -0
  10. package/skywalk-sdd/ontology/resolve-spec-root.cjs +20 -80
  11. package/skywalk-sdd/ontology/runtime.cjs +32 -22
  12. package/skywalk-sdd/ontology/structural-identity.cjs +11 -2
  13. package/skywalk-sdd/ontology/traceability-validator.cjs +16 -8
  14. package/skywalk-sdd/ontology/working-artifacts.cjs +4 -2
  15. package/skywalk-sdd/reporting/change-report-model.cjs +309 -0
  16. package/skywalk-sdd/reporting/change-report-renderer.cjs +425 -0
  17. package/skywalk-sdd/runtime-metadata.cjs +21 -0
  18. package/templates/hooks/claude/hooks/sdd-apply-test-gate.cjs +39 -9
  19. package/templates/hooks/claude/hooks/sdd-post-tool.cjs +87 -8
  20. package/templates/hooks/claude/hooks/sdd-prompt.cjs +3 -1
  21. package/templates/hooks/codebuddy/hooks/sdd-apply-test-gate.cjs +39 -9
  22. package/templates/hooks/codebuddy/hooks/sdd-post-tool.cjs +87 -9
  23. package/templates/hooks/codebuddy/hooks/sdd-prompt.cjs +3 -1
  24. package/templates/skills/kld-sdd/opsx-apply/SKILL.md +14 -13
  25. package/templates/skills/kld-sdd/opsx-apply/checklist.md +20 -20
  26. package/templates/skills/kld-sdd/opsx-apply/implementer-prompt.md +12 -12
  27. package/templates/skills/kld-sdd/opsx-apply/reference.md +32 -31
  28. package/templates/skills/kld-sdd/opsx-archive/SKILL.md +44 -6
  29. package/templates/skills/kld-sdd/opsx-archive/checklist.md +5 -2
  30. package/templates/skills/kld-sdd/opsx-check/SKILL.md +21 -13
  31. package/templates/skills/kld-sdd/opsx-check/checklist.md +8 -7
  32. package/templates/skills/kld-sdd/opsx-design/SKILL.md +1 -1
  33. package/templates/skills/kld-sdd/opsx-design/checklist.md +1 -1
  34. package/templates/skills/kld-sdd/opsx-kb-ingest/SKILL.md +14 -0
  35. package/templates/skills/kld-sdd/opsx-ontology-query/SKILL.md +31 -0
  36. package/templates/skills/kld-sdd/opsx-propose/SKILL.md +12 -4
  37. package/templates/skills/kld-sdd/opsx-propose/reference.md +29 -3
  38. package/templates/skills/kld-sdd/opsx-rules/reference.md +3 -1
  39. package/templates/skills/kld-sdd/opsx-spec/SKILL.md +2 -2
  40. package/templates/skills/kld-sdd/opsx-spec/checklist.md +1 -1
  41. package/templates/skills/kld-sdd/opsx-task/SKILL.md +10 -10
  42. package/templates/skills/kld-sdd/opsx-task/checklist.md +3 -3
  43. package/templates/skills/kld-sdd/opsx-task/reference.md +3 -3
  44. package/templates/skills/kld-sdd/opsx-test/SKILL.md +7 -5
  45. package/templates/skills/kld-sdd/{opsx-tdd-anti-patterns → tdd-anti-patterns}/SKILL.md +4 -4
  46. package/templates/skills/kld-sdd/{opsx-tdd-anti-patterns → tdd-anti-patterns}/reference.md +4 -4
  47. package/templates/skills/kld-sdd/{opsx-tdd-core → tdd-core}/SKILL.md +13 -13
  48. package/templates/skills/kld-sdd/{opsx-tdd-core → tdd-core}/checklist.md +5 -5
  49. package/templates/skills/kld-sdd/{opsx-tdd-core → tdd-core}/reference.md +12 -12
  50. package/templates/skills/kld-sdd/{opsx-tdd-metrics → tdd-metrics}/SKILL.md +3 -3
  51. package/templates/skills/kld-sdd/{opsx-tdd-metrics → tdd-metrics}/checklist.md +2 -2
  52. package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/SKILL.md +2 -2
  53. package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/general/parameterized-testing.md +1 -1
  54. package/templates/skills/kld-sdd/{opsx-tdd-review → tdd-review}/SKILL.md +5 -5
  55. package/templates/skills/kld-sdd/{opsx-tdd-review → tdd-review}/checklist.md +5 -5
  56. package/templates/skills/kld-sdd/{opsx-tdd-rules → tdd-rules}/SKILL.md +3 -3
  57. package/templates/skills/kld-sdd/{opsx-tdd-rules → tdd-rules}/rules/non-tdd-modules.md +1 -1
  58. package/templates/skills/kld-sdd/{opsx-tdd-rules → tdd-rules}/rules/refactor-checklist.md +1 -1
  59. package/templates/skills/kld-sdd/tdd-rules/rules/test-skeleton-telemetry.md +19 -0
  60. package/templates/skills/kld-sdd/opsx-tdd-rules/rules/test-skeleton-telemetry.md +0 -19
  61. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/general/cause-effect-clarity.md +0 -0
  62. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/general/clean-test-data.md +0 -0
  63. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/general/existing-test-awareness.md +0 -0
  64. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/general/given-when-then.md +0 -0
  65. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/general/good-test-qualities.md +0 -0
  66. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/general/mock-boundary.md +0 -0
  67. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/general/naming-conventions.md +0 -0
  68. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/general/no-logic-in-tests.md +0 -0
  69. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/general/one-test-one-scenario.md +0 -0
  70. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/general/prefer-public-apis.md +0 -0
  71. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/general/test-behaviors-not-methods.md +0 -0
  72. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/java/argument-matching.md +0 -0
  73. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/java/controller-test-rules.md +0 -0
  74. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/java/domain-service-rules.md +0 -0
  75. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/java/java-test-template.md +0 -0
  76. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/java/json-serialization.md +0 -0
  77. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/java/logging-rules.md +0 -0
  78. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/post-generation/compilation-verification.md +0 -0
  79. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/post-generation/execution-verification.md +0 -0
  80. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/python/py-test-template.md +0 -0
  81. /package/templates/skills/kld-sdd/{opsx-tdd-quality → tdd-quality}/rules/typescript/ts-test-template.md +0 -0
  82. /package/templates/skills/kld-sdd/{opsx-tdd-rules → tdd-rules}/rules/controller-strategy.md +0 -0
  83. /package/templates/skills/kld-sdd/{opsx-tdd-rules → tdd-rules}/rules/dag-generation-rules.md +0 -0
  84. /package/templates/skills/kld-sdd/{opsx-tdd-rules → tdd-rules}/rules/des-step-annotation.md +0 -0
  85. /package/templates/skills/kld-sdd/{opsx-tdd-rules → tdd-rules}/rules/exception-path-coverage.md +0 -0
  86. /package/templates/skills/kld-sdd/{opsx-tdd-rules → tdd-rules}/rules/green-scope-declaration.md +0 -0
  87. /package/templates/skills/kld-sdd/{opsx-tdd-rules → tdd-rules}/rules/green-yagni-fence.md +0 -0
  88. /package/templates/skills/kld-sdd/{opsx-tdd-rules → tdd-rules}/rules/multi-validation-split.md +0 -0
  89. /package/templates/skills/kld-sdd/{opsx-tdd-rules → tdd-rules}/rules/task-type-definitions.md +0 -0
  90. /package/templates/skills/kld-sdd/{opsx-tdd-rules → tdd-rules}/rules/tdd-strategy-selection.md +0 -0
  91. /package/templates/skills/kld-sdd/{opsx-tdd-rules → tdd-rules}/rules/test-execution-gate.md +0 -0
package/README.md CHANGED
@@ -69,7 +69,7 @@ node skywalk-sdd/log.cjs semantic-status --project=. --change=<name>
69
69
  node skywalk-sdd/log.cjs semantic-observe --project=. --change=<name>
70
70
  ```
71
71
 
72
- `propose/spec/design/task` 在文档写入完成时就必须同步工作态 JSON,不等待 Check 或 Archive。各阶段的 `stage_end` 会自动执行一次 reconcile 作为无 Hook 环境的兜底;Skill 中的显式 `semantic-reconcile` 与该兜底幂等。每份 Markdown 的结构化结果写入 `openspec/changes/<name>/artifacts/<原相对路径>.ontology.json`,`openspec/changes/<name>/artifact-index.json` 与 `working-ontology.json` 提供统一索引与全量工作态视图;这些文件随 change 目录一起提交和归档。`skywalk-sdd/state/ontology/` 仅保留 revision 指针与跨进程锁,默认不提交。
72
+ `propose/spec/design/task` 在文档写入完成时就必须同步工作态 JSON,不等待 Check 或 Archive。各阶段的 `stage_end` 会自动执行一次 reconcile 作为无 Hook 环境的兜底;Skill 中的显式 `semantic-reconcile` 与该兜底幂等。每份 Markdown 的结构化结果写入 `openspec/changes/<name>/artifacts/<原相对路径>.ontology.json`,聚合索引与全量工作态写入 `openspec/changes/<name>/ontology/`(含 `artifact-index.json`、`working-ontology.json` 等);这些文件随 change 目录一起提交和归档。`skywalk-sdd/state/ontology/` 仅保留 revision 指针与跨进程锁,默认不提交。
73
73
 
74
74
  工作态 JSON 使用 `kld-sdd-working-artifact-facts/v1`,明确标记 `canonical=false` 和 `review_status=draft|pending`。它用于当前 Change 的渐进式展开、定向查询和跨文档校验,不能直接入知识库。Check 重新解析原文、校验并在全部通过时生成 pending revision;Archive 再次对账后才确认、转换为 `canonical-facts.json` 并打包。
75
75
 
@@ -83,7 +83,7 @@ node skywalk-sdd/log.cjs semantic-observe --project=. --change=<name>
83
83
  | `full` | 强制 STMT→AC→Design→Task 全链和 Task DAG |
84
84
  | `strict` | 在 full 基础上要求完整语义来源 |
85
85
 
86
- 同一 Change 的作者阶段同步、observe、reconcile、check 和 archive 共用跨进程事务锁。`working-ontology.json`、diagnostics、file index、artifact index 及所有分文件 JSON 在 change 目录内原子提交,随后切换 `skywalk-sdd/state/ontology/<change>/current.json` 指针;读取时会拒绝任一文件缺失或 revision 撕裂。
86
+ 同一 Change 的作者阶段同步、observe、reconcile、check 和 archive 共用跨进程事务锁。`ontology/working-ontology.json`、diagnostics、file index、artifact index 及所有分文件 JSON 在 change 目录内原子提交,随后切换 `skywalk-sdd/state/ontology/<change>/current.json` 指针;读取时会拒绝任一文件缺失或 revision 撕裂。
87
87
 
88
88
  Archive 使用两阶段事务:先复制到 staging,从 staging 重新解析正文并生成本体快照、canonical facts、转换报告和 v2 manifest,所有步骤成功后才切换为正式 archive。归档完成后同时生成相邻的 `<日期>-<name>.zip`,其中 `archive-manifest.json` 的文件清单和 SHA-256 必须精确覆盖包内文件,可直接交给知识库消费。语义校验、快照、协议转换、打包或 Spec 同步失败时,活动 Change 会保留或恢复,不留下伪 confirmed 半成品。
89
89
 
@@ -104,6 +104,25 @@ npx kld-sdd
104
104
 
105
105
  初始化完成后,打开你的 AI 编辑器,激活 `opsx-*` skills 开始工作。
106
106
 
107
+ ### 提效评估报告(SkyWalk V3)
108
+
109
+ 归档与独立 `report` 命令会基于同一 Report Model 生成 Markdown / HTML / JSON 三份同源产物(`schema_version=sdd-efficiency-report/v3`)。单次变更 HTML 使用桌面方案 A,只展示当前 change 的四个页签:概览、指标与阶段、问题与证据、产物与追溯,不混入跨变更趋势。
110
+
111
+ 报告中的业务名称优先于缩写:E1=每个验收场景平均用时,Q3=规约检查得分,P4=编码前检查覆盖,P-R=标准阶段重复次数,P-H=执行记录完整度。标准测量阶段固定为 propose、spec、design、task、check、apply、archive;test、explore 是辅助阶段,可展示但不进入效率分母。
112
+
113
+ ```bash
114
+ # 单变更报告(默认 html;可指定 markdown/json)
115
+ node skywalk-sdd/log.cjs report --project=. --change=<name> --format=json --output=reports/demo.json
116
+
117
+ # 双周 / 月度周期对比(需完整窗口)
118
+ node skywalk-sdd/log.cjs report --project=. --period=biweekly --date-from=YYYY-MM-DD --date-to=YYYY-MM-DD
119
+ node skywalk-sdd/log.cjs report --project=. --period=monthly --date-from=YYYY-MM-DD --date-to=YYYY-MM-DD
120
+ ```
121
+
122
+ `propose` 须确认 `change-type`;所有阶段必须显式携带 change,历史 general 事件只能通过 `scope_link` 归属。`check_result` 应携带 reviewer 独立性与 warning 处置元数据;归档 `archive_result` 只列真实写入成功的 `report_path` / `report_html_path` / `report_json_path`。
123
+
124
+ 任务采用两个不可混淆的口径:“文档完成度”来自 tasks checkbox,“事件可追溯度”来自严格 task/test 证据。问题同时显示“类别数”和“规则命中次数”;指标同时显示“可计算性”和“可信度”。旧 E4/P1/P2/Q5 与旧 Q3 构建一次通过率仅出现在 legacy 区。
125
+
107
126
  ---
108
127
 
109
128
  ## 核心工作流:5 个 skills
@@ -267,11 +286,13 @@ your-project/
267
286
  │ └── changes/
268
287
  │ └── <name>/
269
288
  │ ├── proposal.md
270
- │ ├── working-ontology.json
271
- │ ├── artifact-index.json
272
- │ ├── diagnostics.json
273
- │ ├── file-index.json
274
- │ ├── ontology-identities.json
289
+ │ ├── ontology/
290
+ ├── working-ontology.json
291
+ ├── artifact-index.json
292
+ ├── diagnostics.json
293
+ ├── file-index.json
294
+ │ │ ├── ontology-identities.json
295
+ │ │ └── continuity-resolution.json
275
296
  │ └── artifacts/
276
297
  │ ├── proposal.ontology.json
277
298
  │ └── specs/<capability>/
@@ -285,6 +306,7 @@ your-project/
285
306
  │ └── tasks.md
286
307
  ├── skywalk-sdd/
287
308
  │ ├── log.cjs # Telemetry + semantic-* 命令入口
309
+ │ ├── metrics-v3.cjs # V3 提效评估纯计算模块(随 init 部署)
288
310
  │ ├── ontology/ # 本地本体解析、校验、观察和对账运行时
289
311
  │ └── state/ontology/
290
312
  │ ├── .locks/<change>.lock # observe/reconcile/check/archive 跨进程锁