@namewta/speculo 0.3.0 → 0.3.2

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 (149) hide show
  1. package/README.md +1 -2
  2. package/dist/src/cli.js +40 -6
  3. package/dist/src/cli.js.map +1 -1
  4. package/dist/src/index.js +5 -0
  5. package/dist/src/index.js.map +1 -1
  6. package/dist/src/skills-mirror.d.ts +38 -0
  7. package/dist/src/skills-mirror.js +160 -0
  8. package/dist/src/skills-mirror.js.map +1 -0
  9. package/package.json +3 -2
  10. package/template/canonical/README.md +7 -1
  11. package/template/canonical/canonical-specdev-engineering-cognitive-mentor.md +2040 -0
  12. package/template/canonical/canonical-specdev-goal-plan.md +1379 -0
  13. package/template/canonical/canonical-specdev-grill-with-docs.md +848 -285
  14. package/template/canonical/canonical-specdev-spec.md +1061 -46
  15. package/template/canonical/canonical-specdev-tickets.md +1529 -175
  16. package/template/canonical/canonical-specdev-wayfinder.md +677 -107
  17. package/template/commands/git-repository-audit.md +682 -0
  18. package/template/workflows/specdev/A-archive-and-consolidate/A-archive-and-consolidate.md +69 -36
  19. package/template/workflows/specdev/A-archive-and-consolidate/archive-checklist.md +15 -0
  20. package/template/workflows/specdev/A-archive-and-consolidate/knowledge-promotion-rules.md +32 -0
  21. package/template/workflows/specdev/D-diagnose-bugs/D-diagnose-bugs.md +51 -51
  22. package/template/workflows/specdev/D-diagnose-bugs/diagnosis-template.md +64 -0
  23. package/template/workflows/specdev/E-engineering-cognitive-mentor/E-engineering-cognitive-mentor.md +252 -0
  24. package/template/workflows/specdev/E-engineering-cognitive-mentor/architecture-guidance.md +90 -0
  25. package/template/workflows/specdev/E-engineering-cognitive-mentor/bug-guidance.md +80 -0
  26. package/template/workflows/specdev/E-engineering-cognitive-mentor/codebase-guidance.md +107 -0
  27. package/template/workflows/specdev/E-engineering-cognitive-mentor/comprehension-and-closure.md +95 -0
  28. package/template/workflows/specdev/E-engineering-cognitive-mentor/domain-learning-guidance.md +62 -0
  29. package/template/workflows/specdev/E-engineering-cognitive-mentor/evidence-and-options.md +132 -0
  30. package/template/workflows/specdev/E-engineering-cognitive-mentor/interaction-protocol.md +116 -0
  31. package/template/workflows/specdev/E-engineering-cognitive-mentor/mentor-report-template.md +135 -0
  32. package/template/workflows/specdev/E-engineering-cognitive-mentor/mode-routing.md +47 -0
  33. package/template/workflows/specdev/E-engineering-cognitive-mentor/persistence-and-resume.md +147 -0
  34. package/template/workflows/specdev/E-engineering-cognitive-mentor/requirements-guidance.md +92 -0
  35. package/template/workflows/specdev/G-grill-with-docs/G-grill-with-docs.md +100 -30
  36. package/template/workflows/specdev/G-grill-with-docs/adr-format.md +22 -77
  37. package/template/workflows/specdev/G-grill-with-docs/context-format.md +27 -53
  38. package/template/workflows/specdev/G-grill-with-docs/domain-modeling-rules.md +6 -82
  39. package/template/workflows/specdev/G-grill-with-docs/grilling-protocol.md +32 -49
  40. package/template/workflows/specdev/G-grill-with-docs/log-format.md +16 -98
  41. package/template/workflows/specdev/I-implement/I-implement.md +168 -52
  42. package/template/workflows/specdev/I-implement/code-review-process.md +10 -76
  43. package/template/workflows/specdev/I-implement/codebase-design-glossary.md +12 -109
  44. package/template/workflows/specdev/I-implement/deepening.md +12 -32
  45. package/template/workflows/specdev/I-implement/design-it-twice.md +6 -41
  46. package/template/workflows/specdev/I-implement/evidence-template.md +69 -0
  47. package/template/workflows/specdev/I-implement/execution-preflight.md +20 -0
  48. package/template/workflows/specdev/I-implement/tdd-examples.md +10 -135
  49. package/template/workflows/specdev/I-implement/tdd-rules.md +12 -28
  50. package/template/workflows/specdev/I-init-setup/I-init-setup.md +81 -86
  51. package/template/workflows/specdev/I-init-setup/change-status-template.json +15 -0
  52. package/template/workflows/specdev/I-init-setup/config-template.json +26 -0
  53. package/template/workflows/specdev/I-init-setup/domain-layout-template.md +23 -0
  54. package/template/workflows/specdev/I-init-setup/status-labels-template.md +55 -0
  55. package/template/workflows/specdev/I-init-setup/status-template.json +7 -0
  56. package/template/workflows/specdev/I-init-setup/tracking-template.md +10 -0
  57. package/template/workflows/specdev/INDEX.md +165 -82
  58. package/template/workflows/specdev/P-goal-plan/P-goal-plan.md +108 -44
  59. package/template/workflows/specdev/P-goal-plan/completion-control.md +79 -0
  60. package/template/workflows/specdev/P-goal-plan/goal-plan-template.md +105 -0
  61. package/template/workflows/specdev/P-goal-plan/orchestration-protocol.md +115 -0
  62. package/template/workflows/specdev/P-goal-plan/planning-modes.md +70 -0
  63. package/template/workflows/specdev/R-review-architecture/R-review-architecture.md +103 -40
  64. package/template/workflows/specdev/R-review-architecture/architecture-review-report-template.html +58 -0
  65. package/template/workflows/specdev/R-review-architecture/architecture-review-template.md +68 -0
  66. package/template/workflows/specdev/R-review-architecture/proposal-to-ticket.md +11 -0
  67. package/template/workflows/specdev/S-spec/S-spec.md +103 -49
  68. package/template/workflows/specdev/S-spec/spec-readiness.md +16 -0
  69. package/template/workflows/specdev/S-spec/spec-template.md +95 -0
  70. package/template/workflows/specdev/T-tickets/T-tickets.md +146 -133
  71. package/template/workflows/specdev/T-tickets/decomposition-rules.md +56 -0
  72. package/template/workflows/specdev/T-tickets/ticket-readiness.md +45 -0
  73. package/template/workflows/specdev/T-tickets/ticket-template.md +124 -0
  74. package/template/workflows/specdev/T-tickets/tickets-map-template.md +52 -50
  75. package/template/workflows/specdev/T-triage/T-triage.md +32 -63
  76. package/template/workflows/specdev/T-triage/triage-template.md +29 -0
  77. package/template/workflows/specdev/W-wayfinder/W-wayfinder.md +88 -155
  78. package/template/workflows/specdev/W-wayfinder/investigation-ticket-template.md +50 -0
  79. package/template/workflows/specdev/W-wayfinder/wayfinder-map-template.md +46 -0
  80. package/template/workflows/specdev/_state/status.json +1 -1
  81. package/template/workflows/specdev/common/README.md +47 -0
  82. package/template/workflows/specdev/common/rules/artifact-contract.md +57 -0
  83. package/template/workflows/specdev/common/rules/code-commenting-rule.md +39 -0
  84. package/template/workflows/specdev/common/rules/deviation-control.md +43 -0
  85. package/template/workflows/specdev/common/rules/evidence-and-verification.md +57 -0
  86. package/template/workflows/specdev/common/rules/path-ownership.md +35 -0
  87. package/template/workflows/specdev/common/rules/path-reference-contract.md +116 -0
  88. package/template/workflows/specdev/common/rules/planning-principles.md +57 -0
  89. package/template/workflows/specdev/common/rules/readiness-and-depth.md +51 -0
  90. package/template/workflows/specdev/common/schemas/change-status.schema.json +170 -0
  91. package/template/workflows/specdev/common/schemas/config.schema.json +54 -0
  92. package/template/workflows/specdev/common/schemas/goal-plan.schema.json +21 -0
  93. package/template/workflows/specdev/common/schemas/spec.schema.json +16 -0
  94. package/template/workflows/specdev/common/schemas/status.schema.json +149 -0
  95. package/template/workflows/specdev/common/schemas/ticket.schema.json +130 -0
  96. package/template/workflows/specdev/common/schemas/tickets-map.schema.json +14 -0
  97. package/template/workflows/specdev/common/skills/dev-worktree/SKILL.md +28 -0
  98. package/template/workflows/specdev/common/skills/dev-worktree/references/create.md +30 -0
  99. package/template/workflows/specdev/common/skills/dev-worktree/references/finalize.md +16 -0
  100. package/template/workflows/specdev/common/skills/research/SKILL.md +43 -0
  101. package/template/workflows/specdev/common/tools/README.md +16 -0
  102. package/template/workflows/specdev/common/tools/validate-specdev.mjs +1155 -0
  103. package/template/canonical/canonical-teach.md +0 -301
  104. package/template/workflows/specdev/A-archive-and-consolidate/archive-rules.md +0 -49
  105. package/template/workflows/specdev/A-archive-and-consolidate/cleanup-rules.md +0 -80
  106. package/template/workflows/specdev/A-archive-and-consolidate/consolidation-rules.md +0 -122
  107. package/template/workflows/specdev/A-archive-and-consolidate/discrimination-guide.md +0 -96
  108. package/template/workflows/specdev/A-archive-and-consolidate/knowledge-graduation.md +0 -51
  109. package/template/workflows/specdev/D-diagnose-bugs/cleanup-postmortem.md +0 -37
  110. package/template/workflows/specdev/D-diagnose-bugs/feedback-loop-techniques.md +0 -84
  111. package/template/workflows/specdev/D-diagnose-bugs/hypothesis-format.md +0 -46
  112. package/template/workflows/specdev/D-diagnose-bugs/instrumentation-rules.md +0 -51
  113. package/template/workflows/specdev/I-init-setup/domain-layout.md +0 -55
  114. package/template/workflows/specdev/I-init-setup/status-labels.md +0 -53
  115. package/template/workflows/specdev/I-init-setup/tracking-convention.md +0 -52
  116. package/template/workflows/specdev/P-goal-plan/execution-sections.md +0 -126
  117. package/template/workflows/specdev/P-goal-plan/governance-sections.md +0 -103
  118. package/template/workflows/specdev/P-goal-plan/input-validation.md +0 -94
  119. package/template/workflows/specdev/P-goal-plan/lead-orchestration-protocol.md +0 -158
  120. package/template/workflows/specdev/P-goal-plan/quick-reference-table.md +0 -60
  121. package/template/workflows/specdev/P-goal-plan/vision-sections.md +0 -80
  122. package/template/workflows/specdev/R-review-architecture/exploration-guide.md +0 -103
  123. package/template/workflows/specdev/R-review-architecture/html-report-template.md +0 -124
  124. package/template/workflows/specdev/T-triage/artifact-templates.md +0 -122
  125. package/template/workflows/specdev/T-triage/intake-rules.md +0 -71
  126. package/template/workflows/specdev/T-triage/routing-rules.md +0 -70
  127. package/template/workflows/specdev/T-triage/understanding-rules.md +0 -102
  128. package/template/workflows/specdev/_state/adr/.gitkeep +0 -0
  129. package/template/workflows/specdev/_state/context/.gitkeep +0 -0
  130. package/template/workflows/specdev/_state/research/.gitkeep +0 -0
  131. package/template/workflows/specdev/common/dev-worktree/SKILL.md +0 -48
  132. package/template/workflows/specdev/common/dev-worktree/references/create.md +0 -63
  133. package/template/workflows/specdev/common/dev-worktree/references/finalize.md +0 -102
  134. package/template/workflows/specdev/common/handoff/SKILL.md +0 -42
  135. package/template/workflows/specdev/common/neat-freak/SKILL.md +0 -210
  136. package/template/workflows/specdev/common/neat-freak/references/agent-paths.md +0 -72
  137. package/template/workflows/specdev/common/neat-freak/references/governance.md +0 -88
  138. package/template/workflows/specdev/common/neat-freak/references/sync-matrix.md +0 -77
  139. package/template/workflows/specdev/common/neat-freak/references/verification.md +0 -92
  140. package/template/workflows/specdev/common/neat-freak/scripts/audit-inventory.sh +0 -106
  141. package/template/workflows/specdev/common/prototype/LOGIC.md +0 -89
  142. package/template/workflows/specdev/common/prototype/SKILL.md +0 -78
  143. package/template/workflows/specdev/common/prototype/UI.md +0 -120
  144. package/template/workflows/specdev/common/research/SKILL.md +0 -54
  145. package/template/workflows/specdev/common/resolving-merge-conflicts/SKILL.md +0 -14
  146. package/template/workflows/specdev/common/scripts/hitl-loop.template.sh +0 -41
  147. package/template/workflows/specdev/common/triage/AGENT-BRIEF.md +0 -204
  148. package/template/workflows/specdev/common/triage/OUT-OF-SCOPE.md +0 -104
  149. package/template/workflows/specdev/common/triage/SKILL.md +0 -112
@@ -0,0 +1,252 @@
1
+ ---
2
+ id: specdev/engineering-cognitive-mentor
3
+ type: workflow-entry
4
+ workflow: specdev
5
+ name: 工程认知导师
6
+ description: 面向 Bug、项目源码、需求技术方案、架构设计与陌生技术领域的非执行型认知指导 Work;以证据、因果 Why、候选方案对比和逐轮澄清帮助用户形成可复述理解,并将完整问答轨迹持续持久化到当前 change。
7
+ keywords: [认知导师, 教学, why, bug, 源码研究, 技术方案, 架构, 技术选型, 新领域, 决策日志]
8
+ ---
9
+
10
+ # 工程认知导师
11
+
12
+ 本 Work 将工程研究从“一次性答案”转化为可恢复、可追溯、可继续讨论的认知过程。它负责解释、教学、建议、证据组织、方案比较和理解确认,不负责替用户实施工程变更。
13
+
14
+ 核心闭环:
15
+
16
+ ```text
17
+ 定义问题 → 建立全貌 → 区分证据 → 解释 Why → 比较方案 → 逐轮澄清 → 确认理解 → 持久化交接
18
+ ```
19
+
20
+ ## 执行边界
21
+
22
+ 允许:
23
+
24
+ - 只读分析项目代码、测试、配置、日志、堆栈、已有 SpecDev 工件和用户提供的材料;
25
+ - 查阅官方文档、标准、论文和可信外部资料;
26
+ - 提供解释性代码片段、伪代码、架构图描述、技术选型比较和未执行的验证建议;
27
+ - 写入本 Work 自有的 Speculo 状态工件,并按规则追加跨 Work 决策日志;
28
+ - 与用户持续交互,直到核心总结被确认、遗留问题被清空或明确延后。
29
+
30
+ 禁止:
31
+
32
+ - 运行项目命令、测试、构建、脚本或诊断实验;
33
+ - 修改项目代码、测试、配置、数据库、基础设施或用户要求的项目文档;
34
+ - 提交、推送、合并、部署、发布、创建 PR 或执行不可逆操作;
35
+ - 用编码作业、实践题、闯关或必须运行命令作为理解门槛;
36
+ - 把未经验证的推断写成项目事实;
37
+ - 代替 Spec、ADR、Ticket、Goal Plan 或 Evidence 的权威职责。
38
+
39
+ 本 Work 可以写入 Speculo 自身的研究与日志工件;这属于持久化记录,不属于执行用户的工程任务。
40
+
41
+ ## 输入与产物
42
+
43
+ 按存在情况读取:
44
+
45
+ - 原始请求:`<Path>{roots.state}/specdev/changes/{change}/source-issue.md</Path>`
46
+ - 分诊结果:`<Path>{roots.state}/specdev/changes/{change}/triage.md</Path>`
47
+ - 诊断结果:`<Path>{roots.state}/specdev/changes/{change}/diagnosis.md</Path>`
48
+ - 当前领域上下文:`<Path>{roots.state}/specdev/changes/{change}/CONTEXT.md</Path>`
49
+ - 当前架构决策:`<Path>{roots.state}/specdev/changes/{change}/ADR.md</Path>`
50
+ - 全局讨论轨迹:`<Path>{roots.state}/specdev/changes/{change}/LOG.md</Path>`
51
+ - 当前外部行为权威:`<Path>{roots.state}/specdev/changes/{change}/spec.md</Path>`
52
+ - 架构审查:`<Path>{roots.state}/specdev/changes/{change}/architecture-review.md</Path>`
53
+ - 相关 Ticket、Evidence、项目代码、测试、配置、日志和外部资料。
54
+
55
+ 本 Work 拥有的主产物:
56
+
57
+ - 活态研究与教学记录:`<Path>{roots.state}/specdev/changes/{change}/engineering-cognitive-mentor.md</Path>`
58
+
59
+ 共享持久化:
60
+
61
+ - 只有影响后续 Spec、ADR、Ticket、Goal Plan 或 change 路线的高价值决定,才摘要追加到 `<Path>{roots.state}/specdev/changes/{change}/LOG.md</Path>`;
62
+ - 详细问答、解释、用户理解变化和普通澄清只写入主产物的 `MLOG`,避免全局 LOG 膨胀与重复事实;
63
+ - 本 Work 不直接写入 ADR、Spec、Ticket 或 Evidence;需要正式化时移交给拥有该职责的 Work。
64
+
65
+ 模板:
66
+
67
+ - `<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/mentor-report-template.md</Path>`
68
+
69
+ ## 启动与恢复协议
70
+
71
+ 进入本 Work 时加载 `<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/persistence-and-resume.md</Path>`,并完成以下动作:
72
+
73
+ 1. 从当前工作目录向上解析唯一的 Speculo 工作区声明,获得 workflow 与 state roots;
74
+ 2. 选择用户指定 change、唯一活跃 change,或按 SpecDev 协议创建新 change;多个候选必须先消歧;
75
+ 3. 确认 `<Path>{roots.state}/specdev/config.json</Path>` 存在;不存在时先进入 `<Path>{roots.workflows}/specdev/I-init-setup/I-init-setup.md</Path>`;
76
+ 4. 读取全局状态、change 状态和已有主产物;存在未完成会话时从其 `current_phase` 与未决问题恢复,不重新盘问已记录内容;
77
+ 5. 以 `specdev/engineering-cognitive-mentor` 更新 `current_work`,创建或复用唯一未完成的 `work_history` 记录;
78
+ 6. 主产物不存在时按模板初始化,存在时只做兼容性读取和真实增量更新。
79
+
80
+ **完成标准:**workspace 与 change 唯一;状态已登记;主产物已初始化或成功恢复;没有覆盖历史记录。
81
+
82
+ ## 流程
83
+
84
+ ### 1. 路由认知场景
85
+
86
+ 加载 `<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/mode-routing.md</Path>`,确定一个主模式:
87
+
88
+ - Bug 与故障理解;
89
+ - 项目与源码研究;
90
+ - 需求与技术方案;
91
+ - 架构设计与评审;
92
+ - 新领域知识;
93
+ - 混合模式。
94
+
95
+ 只加载命中模式的专项文件。混合模式必须声明主阻塞问题和分支顺序,不同时铺开所有分支。
96
+
97
+ **完成标准:**主模式、次模式、研究边界和不处理范围明确;无关专项文件未加载。
98
+
99
+ ### 2. 建立研究契约与用户当前模型
100
+
101
+ 加载 `<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/interaction-protocol.md</Path>`,从已有材料提取:
102
+
103
+ - 用户真正要解决的问题;
104
+ - 想获得的结论、解释深度和决策支持;
105
+ - 用户已经知道、倾向相信和仍困惑的内容;
106
+ - 业务、技术、时间、团队、成本、兼容、安全和合规约束;
107
+ - 本次成功标准;
108
+ - 会改变结论的关键未知项。
109
+
110
+ 先发现仓库、工件和公开资料可以回答的事实。只有无法发现、且会改变行为、架构、风险、范围或推荐的事项才询问用户。一次只问一个关键问题;用户要求直接答案时,先给当前最可靠的结论,再补证据与 Why。
111
+
112
+ 将初始契约和用户模型写入主产物,并追加一条 `MLOG`。
113
+
114
+ **完成标准:**目标、范围、成功标准、用户当前模型和关键未知项已持久化;没有重复询问已知信息。
115
+
116
+ ### 3. 建立全貌与主链路
117
+
118
+ 按主模式加载对应专项文件:
119
+
120
+ - Bug:`<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/bug-guidance.md</Path>`
121
+ - 源码:`<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/codebase-guidance.md</Path>`
122
+ - 需求方案:`<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/requirements-guidance.md</Path>`
123
+ - 架构:`<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/architecture-guidance.md</Path>`
124
+ - 新领域:`<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/domain-learning-guidance.md</Path>`
125
+
126
+ 先建立足以导航后续讨论的地图,再进入关键细节。不要平均介绍所有文件、概念或技术;优先覆盖决定行为、风险和选择的主链路。
127
+
128
+ **完成标准:**用户可以看见问题或系统的全局地图、主链路、关键边界和主要未知项。
129
+
130
+ ### 4. 构建证据链并解释 Why
131
+
132
+ 加载 `<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/evidence-and-options.md</Path>`。
133
+
134
+ 每个关键陈述标记为:
135
+
136
+ - **事实**:材料直接支持;
137
+ - **推断**:由事实推导;
138
+ - **假设**:可能解释,尚未证实;
139
+ - **待验证**:当前材料不足;
140
+ - **决策**:用户已确认的选择;
141
+ - **风险**:可能使结论或方案失效的条件。
142
+
143
+ 解释遵循:
144
+
145
+ ```text
146
+ 背景与约束 → 机制 → 结果 → 代价 → 边界 → 替代选择
147
+ ```
148
+
149
+ 具体项目结论必须给出项目相对路径(Path 标签形式)、符号、测试、日志时间、工件条目或外部 URL(Url 标签形式)作为证据。无法通过现有材料确认时,明确写“待验证”,并说明需要什么证据,不自行执行验证。
150
+
151
+ **完成标准:**承载结论的陈述有证据、可说明的推导或待验证标记;核心设计和行为已解释 Why 与失效边界。
152
+
153
+ ### 5. 比较候选方案
154
+
155
+ 只有存在真实选择时才比较。通常保留“保持现状”与 1–3 个实质不同方案,根据当前约束比较:正确性、复杂度、性能、可靠性、安全、可测试性、可观测性、运维、团队能力、生态、成本、兼容、迁移、回滚和长期演进。
156
+
157
+ 不得为了表格而制造伪选项,不编造精确分数。推荐必须说明:
158
+
159
+ - 为什么当前条件下推荐该方案;
160
+ - 为什么不选其他方案;
161
+ - 哪些条件变化会使推荐反转;
162
+ - 仍依赖哪些待验证假设。
163
+
164
+ 高影响结论在用户确认后,按 `<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/persistence-and-resume.md</Path>` 同步到全局 LOG;正式架构、需求或执行决策移交对应 Work。
165
+
166
+ **完成标准:**候选具有实质差异;推荐可追溯到约束、证据和取舍;没有无条件“最佳技术”。
167
+
168
+ ### 6. 逐轮指导与澄清
169
+
170
+ 按 `<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/interaction-protocol.md</Path>` 循环:
171
+
172
+ 1. 回答用户当前问题;
173
+ 2. 更新事实、推断、假设和未知项;
174
+ 3. 解释关键 Why;
175
+ 4. 必要时提供候选方案与推荐;
176
+ 5. 一次提出一个会改变结论的高价值问题;
177
+ 6. 将本轮摘要追加到主产物 `MLOG`;
178
+ 7. 更新主产物的当前综合、未决问题、`updated_at` 和恢复指针。
179
+
180
+ 问题较大时分阶段,每轮聚焦一个相对完整的问题簇。不得用“先完成编码练习”换取下一步解释。
181
+
182
+ **完成标准:**每轮均有可恢复的落盘状态;用户回答引起的结论变化有替代关系;没有静默改写历史。
183
+
184
+ ### 7. 理解确认与关闭
185
+
186
+ 加载 `<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/comprehension-and-closure.md</Path>`。
187
+
188
+ 理解确认只使用:
189
+
190
+ - 用户用自己的语言复述核心因果;
191
+ - 用户解释为何倾向 A 而非 B;
192
+ - 条件变化后的推荐判断;
193
+ - 用户确认导师总结准确;
194
+ - 用户列出仍不清楚或不同意的部分。
195
+
196
+ 不要求编写代码、运行命令或完成实践题。用户拒绝复述时尊重选择,标记为“理解未经复述确认”,不得宣称完全理解。
197
+
198
+ 正常关闭条件:
199
+
200
+ - 成功标准已满足或明确标为未满足;
201
+ - 关键结论有证据或待验证标记;
202
+ - 推荐说明了 Why、边界和反转条件;
203
+ - 用户确认总结准确,或明确跳过确认;
204
+ - 用户确认当前没有其他问题,或剩余问题被显式延后;
205
+ - 主产物包含完整 `MLOG`、最终综合和后续路线。
206
+
207
+ 关闭时更新全局状态与 change 状态,完成 `work_history`,将本 Work 加入 `works_run`,并返回主产物完整路径及适用的下一 Work 完整路径。关闭本 Work 不等于完成或归档整个 change。
208
+
209
+ **完成标准:**主产物状态与全局状态一致;完整日志可恢复;未伪造理解或 change 完成状态。
210
+
211
+ ## 与其他 Work 的边界和移交
212
+
213
+ - 根因仍需复现、插桩或实验:移交 `<Path>{roots.workflows}/specdev/D-diagnose-bugs/D-diagnose-bugs.md</Path>`;
214
+ - 设计决策需要正式访谈并写入 ADR/CONTEXT:移交 `<Path>{roots.workflows}/specdev/G-grill-with-docs/G-grill-with-docs.md</Path>`;
215
+ - 路径未知、跨域或超出单次上下文:移交 `<Path>{roots.workflows}/specdev/W-wayfinder/W-wayfinder.md</Path>`;
216
+ - 需要形成外部行为与验收合同:移交 `<Path>{roots.workflows}/specdev/S-spec/S-spec.md</Path>`;
217
+ - 需要正式架构审查和候选接受流程:移交 `<Path>{roots.workflows}/specdev/R-review-architecture/R-review-architecture.md</Path>`;
218
+ - 需要拆分执行契约:移交 `<Path>{roots.workflows}/specdev/T-tickets/T-tickets.md</Path>`;
219
+ - 需要实际实现:只有用户明确授权且上游工件 Ready 后,移交 `<Path>{roots.workflows}/specdev/I-implement/I-implement.md</Path>`。
220
+
221
+ 本 Work 不因给出建议而自动触发上述 Work。
222
+
223
+ ## 完成标准
224
+
225
+ - workspace、change 和状态选择符合 Speculo 持久化契约;
226
+ - 主产物持续存在于当前 change,支持跨会话恢复;
227
+ - 全局 LOG 与详细 MLOG 的职责清晰,没有无意义全文复制;
228
+ - 关键结论区分事实、推断、假设、待验证、决策和风险;
229
+ - 先讲全貌和主链路,再讲关键细节与边界;
230
+ - 重要机制、设计和推荐均解释 Why;
231
+ - 技术比较基于真实约束,并包含保持现状和推荐反转条件;
232
+ - 没有运行项目命令、修改项目、实施变更或布置编码实践;
233
+ - 用户理解状态被诚实记录;
234
+ - 状态、主产物路径、结果和下一 Work 路径已返回。
235
+
236
+ ## 子文件引用
237
+
238
+ 按需加载,禁止一次性全量读取:
239
+
240
+ | 文件 | 触发条件 |
241
+ |---|---|
242
+ | `<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/persistence-and-resume.md</Path>` | 启动、恢复、每轮落盘、暂停、关闭或状态异常时 |
243
+ | `<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/mode-routing.md</Path>` | 选择或调整主模式时 |
244
+ | `<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/interaction-protocol.md</Path>` | 建立用户模型、提问、逐轮交互和 MLOG 记录时 |
245
+ | `<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/evidence-and-options.md</Path>` | 形成结论、外部研究、技术选型或多方案比较时 |
246
+ | `<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/bug-guidance.md</Path>` | 主模式为 Bug 或故障理解时 |
247
+ | `<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/codebase-guidance.md</Path>` | 主模式为项目或源码研究时 |
248
+ | `<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/requirements-guidance.md</Path>` | 主模式为需求与技术方案时 |
249
+ | `<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/architecture-guidance.md</Path>` | 主模式为架构设计或评审时 |
250
+ | `<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/domain-learning-guidance.md</Path>` | 主模式为陌生领域或技术知识时 |
251
+ | `<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/comprehension-and-closure.md</Path>` | 总结、理解确认、暂停、导出或关闭时 |
252
+ | `<Path>{roots.workflows}/specdev/E-engineering-cognitive-mentor/mentor-report-template.md</Path>` | 初始化或修复主产物结构时 |
@@ -0,0 +1,90 @@
1
+ # 架构设计与评审指导
2
+
3
+ 本模式解释架构驱动因素、边界、数据与故障流、候选设计和长期取舍,不以“更优雅”为理由制造无目标重构,也不直接修改代码或 ADR。
4
+
5
+ ## 1. 架构压力
6
+
7
+ 明确触发原因:
8
+
9
+ - 新业务能力;
10
+ - 性能或容量;
11
+ - 可靠性和事故;
12
+ - 安全、隐私或合规;
13
+ - 团队与组织边界;
14
+ - 维护成本和变更热点;
15
+ - 迁移、替换或供应商风险。
16
+
17
+ 没有真实压力时,保持现状应是强候选。
18
+
19
+ ## 2. 系统上下文
20
+
21
+ 建立:
22
+
23
+ - 用户和外部系统;
24
+ - 信任边界;
25
+ - 输入、输出和协议;
26
+ - 数据所有权;
27
+ - 部署和运行边界;
28
+ - 当前约束与不可变条件。
29
+
30
+ ## 3. 当前结构地图
31
+
32
+ 按目标范围梳理:
33
+
34
+ - 模块和公共接口;
35
+ - 数据、控制和错误流;
36
+ - 同步、异步和事务边界;
37
+ - 状态、缓存和共享资源;
38
+ - 依赖方向与生命周期;
39
+ - 测试和可观测接缝;
40
+ - 变更热点、接缝泄漏、时间耦合和事故半径。
41
+
42
+ ## 4. 质量属性场景
43
+
44
+ 不要只写“高性能”“高可用”。将其具体化为:
45
+
46
+ ```text
47
+ 来源 → 刺激 → 环境 → 目标对象 → 响应 → 可衡量结果
48
+ ```
49
+
50
+ 本 Work 可以说明应如何衡量,但不自行运行测试。
51
+
52
+ ## 5. 候选架构
53
+
54
+ 每个候选至少说明:
55
+
56
+ - 组件和边界;
57
+ - 接口与数据所有权;
58
+ - 主流程和失败流程;
59
+ - 一致性、幂等、重试和顺序;
60
+ - 扩容、降级和恢复;
61
+ - 安全与审计;
62
+ - 运维和可观测性;
63
+ - 迁移、兼容和回滚;
64
+ - 团队与组织影响;
65
+ - 新增复杂度和长期锁定。
66
+
67
+ ## 6. 设计机制与 Why
68
+
69
+ 重点解释:
70
+
71
+ - 为什么在这里划边界;
72
+ - 为什么同步或异步;
73
+ - 为什么由该组件拥有数据;
74
+ - 为什么使用当前一致性模型;
75
+ - 为什么错误在该层处理;
76
+ - 为什么引入或拒绝缓存、队列、事件、服务拆分;
77
+ - 哪些条件会使设计失效。
78
+
79
+ ## 7. 评审结论
80
+
81
+ 候选结论分为:接受、调整、延后、拒绝。详细讨论记录在 MLOG;高影响用户决定摘要进入全局 LOG。
82
+
83
+ 本 Work 不直接写 ADR。需要正式架构决定时移交:
84
+
85
+ - 逐项设计访谈:`<Path>{roots.workflows}/specdev/G-grill-with-docs/G-grill-with-docs.md</Path>`;
86
+ - 基于真实代码压力的正式评审:`<Path>{roots.workflows}/specdev/R-review-architecture/R-review-architecture.md</Path>`。
87
+
88
+ ## 8. 输出
89
+
90
+ 主产物至少包含:架构压力、上下文、当前结构、质量属性场景、候选架构、方案对比、推荐与反转条件、迁移与风险、待正式化决定和未决问题。
@@ -0,0 +1,80 @@
1
+ # Bug 与故障认知指导
2
+
3
+ 本模式解释问题、证据和因果机制,不运行复现、插桩、测试或修复。
4
+
5
+ ## 1. 建立故障合同
6
+
7
+ 从现有材料提取:
8
+
9
+ - 期望行为与实际行为;
10
+ - 首次发生时间、频率和影响范围;
11
+ - 环境、版本、输入和最近变更;
12
+ - 错误堆栈、日志、监控和用户报告;
13
+ - 相邻成功路径;
14
+ - 已尝试的处理与结果;
15
+ - 当前是否只有 workaround。
16
+
17
+ 用户报告是事实来源的一种,但与系统可观察事实分开标记。
18
+
19
+ ## 2. 建立最短因果链
20
+
21
+ 优先画出:
22
+
23
+ ```text
24
+ 触发输入/环境
25
+ → 入口
26
+ → 关键状态或数据变化
27
+ → 失败节点
28
+ → 错误传播或错误结果
29
+ → 用户影响
30
+ ```
31
+
32
+ 只覆盖与故障相关的模块,不扩展为全仓介绍。
33
+
34
+ ## 3. 假设集合
35
+
36
+ 列出 2–5 个可区分的根因候选。每项说明:
37
+
38
+ - 支持事实;
39
+ - 相冲突事实;
40
+ - 如果成立应看到的现象;
41
+ - 如果不成立应看到的反证;
42
+ - 需要什么日志、测试、调用栈或版本差异才能确认;
43
+ - 对修复方向的影响。
44
+
45
+ 本 Work 不执行验证。若没有现成证据,结论保持“假设”或“待验证”。
46
+
47
+ ## 4. 根因确认门槛
48
+
49
+ 只有现有材料同时解释以下内容时,才可写“根因已确认”:
50
+
51
+ - 触发条件;
52
+ - 失败机制;
53
+ - 影响范围;
54
+ - 为什么此前未被测试或监控捕获;
55
+ - 为什么某类修复能够阻断机制;
56
+ - 可能的回归风险。
57
+
58
+ 只能缓解症状时明确写 workaround。不要把“报错消失”当作根因证据。
59
+
60
+ ## 5. 解释输出
61
+
62
+ 主产物至少更新:
63
+
64
+ - 故障摘要;
65
+ - 影响与紧急度;
66
+ - 最短因果链;
67
+ - 事实、推断、假设和待验证表;
68
+ - 根因状态;
69
+ - 修复原则与不变量;
70
+ - 候选修复方向及取舍;
71
+ - 未执行的验证建议;
72
+ - 残余风险。
73
+
74
+ 验证建议是后续路线,不是给用户的作业。
75
+
76
+ ## 6. 移交
77
+
78
+ - 需要实际复现、最小实验或回归契约:`<Path>{roots.workflows}/specdev/D-diagnose-bugs/D-diagnose-bugs.md</Path>`;
79
+ - 根因已由 diagnosis 确认、用户只需理解:继续本 Work;
80
+ - 修复范围涉及公共行为、数据、迁移或高风险:后续进入 Spec 或 Tickets,不由本 Work直接实现。
@@ -0,0 +1,107 @@
1
+ # 项目与源码研究指导
2
+
3
+ 目标是以真实仓库为依据建立可导航的系统心智模型,不平均介绍所有文件,也不要求用户完成源码练习。
4
+
5
+ ## 1. 固定研究对象
6
+
7
+ 记录:
8
+
9
+ - 项目名称与仓库;
10
+ - 分支、Tag、Commit 或版本;
11
+ - 研究日期;
12
+ - 用户关注的使用场景;
13
+ - 当前技术水平和希望深入的范围;
14
+ - 无法固定版本时的漂移风险。
15
+
16
+ ## 2. 快速全貌
17
+
18
+ 先回答:
19
+
20
+ - 项目解决什么问题;
21
+ - 典型用户、输入和输出;
22
+ - 核心功能与非目标;
23
+ - 主要技术栈及其职责;
24
+ - 系统边界和外部依赖;
25
+ - 顶层目录与关键模块;
26
+ - 总体架构风格。
27
+
28
+ 目录说明只保留能帮助导航主链路的部分。
29
+
30
+ ## 3. 启动与初始化
31
+
32
+ 追踪:
33
+
34
+ - 真正启动入口;
35
+ - 参数和配置加载;
36
+ - 依赖、容器或服务初始化;
37
+ - 路由、插件、任务或处理器注册;
38
+ - 存储、连接、并发资源和后台任务;
39
+ - 启动完成信号与关闭流程。
40
+
41
+ 每一步说明真实文件、类、函数、调用者、输入输出和 Why。
42
+
43
+ ## 4. 核心调用链
44
+
45
+ 选择最典型的一条用户或系统行为:
46
+
47
+ ```text
48
+ 入口 → 校验/解析 → 编排 → 核心领域逻辑 → 存储或外部依赖 → 结果输出
49
+ ```
50
+
51
+ 记录:
52
+
53
+ - 文件与符号;
54
+ - 调用方向;
55
+ - 关键数据结构的变化;
56
+ - 状态、错误和控制流;
57
+ - 同步、异步、并发或事务边界;
58
+ - 扩展点与替换接缝。
59
+
60
+ 先主路径,再覆盖决定行为的边界情况。
61
+
62
+ ## 5. 关键源码解释
63
+
64
+ 每个关键节点回答:
65
+
66
+ - 做了什么;
67
+ - 为什么在这一层;
68
+ - 谁调用;
69
+ - 调用谁;
70
+ - 输入如何变为输出;
71
+ - 会影响哪些行为;
72
+ - 为什么使用当前抽象或数据结构;
73
+ - 替代设计会带来什么变化。
74
+
75
+ 不逐行翻译代码,不把命名当作架构证据。
76
+
77
+ ## 6. 横切能力
78
+
79
+ 按相关性分析:
80
+
81
+ - 配置;
82
+ - 日志与可观测性;
83
+ - 异常和错误语义;
84
+ - 测试结构;
85
+ - 并发与异步;
86
+ - 存储与缓存;
87
+ - 权限和安全;
88
+ - 插件、接口和扩展机制;
89
+ - 构建、发布和兼容策略。
90
+
91
+ ## 7. 推荐阅读顺序
92
+
93
+ 输出阅读顺序,但不把它设计成作业:
94
+
95
+ 1. 项目入口与 README;
96
+ 2. 构建和配置;
97
+ 3. 一条核心链路;
98
+ 4. 对应测试;
99
+ 5. 核心抽象与数据模型;
100
+ 6. 错误、并发、存储和扩展;
101
+ 7. Issue、PR 与历史演进。
102
+
103
+ 说明每一步“为什么此时读它”,而不是仅列文件清单。
104
+
105
+ ## 8. 产物更新
106
+
107
+ 主产物至少包含:项目定位、技术栈、目录地图、架构、启动入口、核心链路、关键源码、设计原因、横切能力、证据索引、推荐阅读顺序和待验证项。
@@ -0,0 +1,95 @@
1
+ # 理解确认、暂停与关闭协议
2
+
3
+ ## 1. 诚实的理解状态
4
+
5
+ 本 Work 使用以下状态:
6
+
7
+ - `unverified`:尚未进行总结确认;
8
+ - `partial`:部分核心点已确认,仍有关键疑问;
9
+ - `confirmed`:用户确认总结准确,并能复述至少一个核心因果或取舍;
10
+ - `accepted-summary`:用户确认总结准确,但未进行独立复述;
11
+ - `declined`:用户不希望进行理解确认;
12
+ - `blocked`:缺少外部信息,无法完成关键解释。
13
+
14
+ 不得写“用户完全理解”作为可观测事实。
15
+
16
+ ## 2. 轻量确认方式
17
+
18
+ 一次选择最相关的一种:
19
+
20
+ ### 因果复述
21
+
22
+ 请用户用一两句话说明“为什么会这样”,而不是背定义。
23
+
24
+ ### 方案取舍
25
+
26
+ 请用户说明当前为何选 A 而不是 B,以及什么条件会改变选择。
27
+
28
+ ### 条件变化
29
+
30
+ 给出一个关键约束变化,请用户判断原结论是否仍成立。
31
+
32
+ ### 总结确认
33
+
34
+ 导师给出结构化总结,请用户指出不准确、不清楚或不同意之处。
35
+
36
+ ### 疑问清单
37
+
38
+ 请用户确认是否还有未覆盖的问题。
39
+
40
+ 这些不是考试,不设标准答案评分,不以通过为继续回答的条件。
41
+
42
+ ## 3. 用户跳过
43
+
44
+ 用户拒绝复述或只想拿到文档时:
45
+
46
+ - 立即尊重;
47
+ - 状态写为 `accepted-summary` 或 `declined`;
48
+ - 在最终综合中说明理解未经独立复述确认;
49
+ - 不继续追问。
50
+
51
+ ## 4. 暂停
52
+
53
+ 当用户表示稍后继续,或当前回合自然中止:
54
+
55
+ - 主产物保持 `status: active`;
56
+ - 记录当前阶段、下一焦点、唯一待回答问题和恢复所需材料;
57
+ - 保持 `current_work` 为本 Work;
58
+ - 返回主产物路径;
59
+ - 不生成虚假的最终结论。
60
+
61
+ ## 5. 提前导出
62
+
63
+ 用户要求立刻输出完整 Markdown 时:
64
+
65
+ - 主产物即为导出对象;
66
+ - 状态根据事实写 `active`、`blocked` 或 `completed`;
67
+ - 所有空缺章节写“不适用”或“待验证”;
68
+ - 完整 MLOG 按编号保留;
69
+ - 不为了美观删除矛盾、旧假设或被替代决定。
70
+
71
+ ## 6. 正常关闭检查
72
+
73
+ 逐项检查:
74
+
75
+ 1. 目标和成功标准是否已回答;
76
+ 2. 关键结论是否有证据、推导或待验证标记;
77
+ 3. 主链路和 Why 是否清楚;
78
+ 4. 方案是否包含保持现状、取舍和反转条件;
79
+ 5. 用户是否确认总结准确或明确跳过;
80
+ 6. 是否还有问题;
81
+ 7. 剩余问题是否被明确延后并说明影响;
82
+ 8. 是否需要移交其他 Work。
83
+
84
+ ## 7. 最终回复
85
+
86
+ 返回:
87
+
88
+ - 本次核心结论;
89
+ - 理解确认状态;
90
+ - 未决或待验证项;
91
+ - 主产物完整路径;
92
+ - 下一 Work 完整路径或“无”;
93
+ - 明确说明本 Work 未执行代码、命令或工程变更。
94
+
95
+ 关闭本 Work 不自动将 change 标 completed,也不自动归档。
@@ -0,0 +1,62 @@
1
+ # 新领域与技术知识指导
2
+
3
+ 目标是建立可迁移的概念与因果模型,不输出百科式文件堆积,也不布置练习任务。
4
+
5
+ ## 1. 学习目标
6
+
7
+ 明确用户最终需要:
8
+
9
+ - 能解释概念;
10
+ - 能阅读项目或文档;
11
+ - 能参与技术选型;
12
+ - 能评审设计;
13
+ - 能定位常见问题;
14
+ - 或只需要快速建立全貌。
15
+
16
+ 目标决定深度,不按固定章节灌输全部知识。
17
+
18
+ ## 2. 前置与知识地图
19
+
20
+ 建立四层地图:
21
+
22
+ 1. 必须先理解的前置概念;
23
+ 2. 能解释大多数场景的核心机制;
24
+ 3. 技术生态、实现类别与典型产品;
25
+ 4. 边缘主题和可暂时查阅内容。
26
+
27
+ 说明概念之间的依赖,不平均展开。
28
+
29
+ ## 3. 核心概念解释
30
+
31
+ 每个核心概念回答:
32
+
33
+ - 它解决什么问题;
34
+ - 它的机制;
35
+ - 为什么需要它;
36
+ - 与相邻概念的区别;
37
+ - 一个典型例子;
38
+ - 一个反例或不适用场景;
39
+ - 常见误解;
40
+ - 在真实工程中的影响。
41
+
42
+ 类比只能辅助,必须说明类比边界。
43
+
44
+ ## 4. 技术生态
45
+
46
+ 比较技术时先分清层级:概念、协议、架构模式、实现类别、产品和托管服务。不得把不同层级放在同一表格中直接排名。
47
+
48
+ 记录版本、发布日期和查询日期。快速演进领域优先使用官方文档和原始资料。
49
+
50
+ ## 5. 理解连接
51
+
52
+ 通过对话帮助用户连接:
53
+
54
+ ```text
55
+ 问题 → 概念 → 机制 → 工程后果 → 技术选择 → 边界
56
+ ```
57
+
58
+ 可以邀请用户复述或判断条件变化,但不要求编码、运行命令或完成作业。
59
+
60
+ ## 6. 输出
61
+
62
+ 主产物至少包含:学习目标、前置知识、知识地图、核心概念、因果关系、技术生态、方案区别、典型误区、版本风险、用户已确认理解和剩余问题。