hunter-harness 0.2.0 → 0.2.1

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 (564) hide show
  1. package/dist/bin.js +659 -230
  2. package/package.json +9 -7
  3. package/resources/harness/bundles/general/claude-code/.harness-build.json +0 -6
  4. package/resources/harness/bundles/general/claude-code/CONTEXT.md +0 -65
  5. package/resources/harness/bundles/general/claude-code/README.md +0 -478
  6. package/resources/harness/bundles/general/claude-code/agents/harness-evaluator.md +0 -96
  7. package/resources/harness/bundles/general/claude-code/agents/harness-explorer.md +0 -72
  8. package/resources/harness/bundles/general/claude-code/agents/harness-reviewer.md +0 -69
  9. package/resources/harness/bundles/general/claude-code/harness-archive/SKILL.md +0 -215
  10. package/resources/harness/bundles/general/claude-code/harness-archive/checklist.md +0 -52
  11. package/resources/harness/bundles/general/claude-code/harness-archive/reference.md +0 -103
  12. package/resources/harness/bundles/general/claude-code/harness-archive/scripts/gen-manifest.ps1 +0 -31
  13. package/resources/harness/bundles/general/claude-code/harness-archive/templates/render-summary.mjs +0 -171
  14. package/resources/harness/bundles/general/claude-code/harness-archive/templates/summary-data-template.json +0 -128
  15. package/resources/harness/bundles/general/claude-code/harness-codebase-map/SKILL.md +0 -112
  16. package/resources/harness/bundles/general/claude-code/harness-codebase-map/checklist.md +0 -126
  17. package/resources/harness/bundles/general/claude-code/harness-codebase-map/reference.md +0 -364
  18. package/resources/harness/bundles/general/claude-code/harness-codebase-map/templates/ARCHITECTURE.md +0 -57
  19. package/resources/harness/bundles/general/claude-code/harness-codebase-map/templates/CONCERNS.md +0 -49
  20. package/resources/harness/bundles/general/claude-code/harness-codebase-map/templates/CONVENTIONS.md +0 -57
  21. package/resources/harness/bundles/general/claude-code/harness-codebase-map/templates/INTEGRATIONS.md +0 -52
  22. package/resources/harness/bundles/general/claude-code/harness-codebase-map/templates/STACK.md +0 -55
  23. package/resources/harness/bundles/general/claude-code/harness-codebase-map/templates/STRUCTURE.md +0 -69
  24. package/resources/harness/bundles/general/claude-code/harness-codebase-map/templates/TESTING.md +0 -64
  25. package/resources/harness/bundles/general/claude-code/harness-codebase-map/templates/map-manifest.schema.json +0 -73
  26. package/resources/harness/bundles/general/claude-code/harness-codebase-map/templates/map-summary.md +0 -64
  27. package/resources/harness/bundles/general/claude-code/harness-knowledge-ingest/SKILL.md +0 -246
  28. package/resources/harness/bundles/general/claude-code/harness-knowledge-ingest/design.md +0 -842
  29. package/resources/harness/bundles/general/claude-code/harness-knowledge-ingest/evaluations/harness_knowledge_evaluation.xml +0 -42
  30. package/resources/harness/bundles/general/claude-code/harness-knowledge-ingest/mcp-config.example.json +0 -10
  31. package/resources/harness/bundles/general/claude-code/harness-knowledge-ingest/reference.md +0 -309
  32. package/resources/harness/bundles/general/claude-code/harness-knowledge-ingest/scripts/harness_knowledge.py +0 -4082
  33. package/resources/harness/bundles/general/claude-code/harness-knowledge-ingest/scripts/harness_knowledge_mcp.py +0 -273
  34. package/resources/harness/bundles/general/claude-code/harness-knowledge-query/SKILL.md +0 -164
  35. package/resources/harness/bundles/general/claude-code/harness-plan/SKILL.md +0 -127
  36. package/resources/harness/bundles/general/claude-code/harness-plan/checklist.md +0 -243
  37. package/resources/harness/bundles/general/claude-code/harness-plan/protocols.md +0 -124
  38. package/resources/harness/bundles/general/claude-code/harness-plan/reference.md +0 -376
  39. package/resources/harness/bundles/general/claude-code/harness-review/SKILL.md +0 -160
  40. package/resources/harness/bundles/general/claude-code/harness-review/checklist.md +0 -124
  41. package/resources/harness/bundles/general/claude-code/harness-review/protocols.md +0 -68
  42. package/resources/harness/bundles/general/claude-code/harness-review/reference.md +0 -86
  43. package/resources/harness/bundles/general/claude-code/harness-run/SKILL.md +0 -132
  44. package/resources/harness/bundles/general/claude-code/harness-run/checklist.md +0 -259
  45. package/resources/harness/bundles/general/claude-code/harness-run/protocols.md +0 -78
  46. package/resources/harness/bundles/general/claude-code/harness-run/reference.md +0 -834
  47. package/resources/harness/bundles/general/claude-code/harness-submit/SKILL.md +0 -159
  48. package/resources/harness/bundles/general/claude-code/harness-submit/checklist.md +0 -407
  49. package/resources/harness/bundles/general/claude-code/harness-submit/reference.md +0 -152
  50. package/resources/harness/bundles/general/claude-code/harness-sync/SKILL.md +0 -82
  51. package/resources/harness/bundles/general/claude-code/harness-sync/reference.md +0 -153
  52. package/resources/harness/bundles/general/claude-code/harness-test/SKILL.md +0 -180
  53. package/resources/harness/bundles/general/claude-code/harness-test/checklist.md +0 -319
  54. package/resources/harness/bundles/general/claude-code/harness-test/pitfalls.md +0 -260
  55. package/resources/harness/bundles/general/claude-code/harness-test/reference.md +0 -791
  56. package/resources/harness/bundles/general/claude-code/protocols/archive-report-protocol.md +0 -175
  57. package/resources/harness/bundles/general/claude-code/protocols/evidence-based-reporting-protocol.md +0 -134
  58. package/resources/harness/bundles/general/claude-code/protocols/ledger-protocol.md +0 -270
  59. package/resources/harness/bundles/general/claude-code/protocols/powershell-protocol.md +0 -181
  60. package/resources/harness/bundles/general/claude-code/protocols/report-pipeline-protocol.md +0 -150
  61. package/resources/harness/bundles/general/claude-code/protocols/sensitive-info-protocol.md +0 -92
  62. package/resources/harness/bundles/general/claude-code/protocols/state-layout-protocol.md +0 -131
  63. package/resources/harness/bundles/general/claude-code/protocols/submit-protocol.md +0 -78
  64. package/resources/harness/bundles/general/claude-code/scripts/harness_archive.py +0 -2319
  65. package/resources/harness/bundles/general/claude-code/scripts/harness_deploy.py +0 -674
  66. package/resources/harness/bundles/general/claude-code/scripts/harness_events.py +0 -680
  67. package/resources/harness/bundles/general/claude-code/scripts/harness_ledger.py +0 -671
  68. package/resources/harness/bundles/general/claude-code/scripts/harness_preflight.py +0 -780
  69. package/resources/harness/bundles/general/claude-code/scripts/harness_service.py +0 -1331
  70. package/resources/harness/bundles/general/codebuddy/.harness-build.json +0 -6
  71. package/resources/harness/bundles/general/codebuddy/CONTEXT.md +0 -65
  72. package/resources/harness/bundles/general/codebuddy/README.md +0 -478
  73. package/resources/harness/bundles/general/codebuddy/agents/harness-evaluator.md +0 -94
  74. package/resources/harness/bundles/general/codebuddy/agents/harness-explorer.md +0 -53
  75. package/resources/harness/bundles/general/codebuddy/agents/harness-reviewer.md +0 -52
  76. package/resources/harness/bundles/general/codebuddy/harness-archive/SKILL.md +0 -198
  77. package/resources/harness/bundles/general/codebuddy/harness-archive/checklist.md +0 -52
  78. package/resources/harness/bundles/general/codebuddy/harness-archive/reference.md +0 -103
  79. package/resources/harness/bundles/general/codebuddy/harness-archive/scripts/gen-manifest.ps1 +0 -31
  80. package/resources/harness/bundles/general/codebuddy/harness-archive/templates/render-summary.mjs +0 -171
  81. package/resources/harness/bundles/general/codebuddy/harness-archive/templates/summary-data-template.json +0 -128
  82. package/resources/harness/bundles/general/codebuddy/harness-codebase-map/SKILL.md +0 -95
  83. package/resources/harness/bundles/general/codebuddy/harness-codebase-map/checklist.md +0 -126
  84. package/resources/harness/bundles/general/codebuddy/harness-codebase-map/reference.md +0 -364
  85. package/resources/harness/bundles/general/codebuddy/harness-codebase-map/templates/ARCHITECTURE.md +0 -57
  86. package/resources/harness/bundles/general/codebuddy/harness-codebase-map/templates/CONCERNS.md +0 -49
  87. package/resources/harness/bundles/general/codebuddy/harness-codebase-map/templates/CONVENTIONS.md +0 -57
  88. package/resources/harness/bundles/general/codebuddy/harness-codebase-map/templates/INTEGRATIONS.md +0 -52
  89. package/resources/harness/bundles/general/codebuddy/harness-codebase-map/templates/STACK.md +0 -55
  90. package/resources/harness/bundles/general/codebuddy/harness-codebase-map/templates/STRUCTURE.md +0 -69
  91. package/resources/harness/bundles/general/codebuddy/harness-codebase-map/templates/TESTING.md +0 -64
  92. package/resources/harness/bundles/general/codebuddy/harness-codebase-map/templates/map-manifest.schema.json +0 -73
  93. package/resources/harness/bundles/general/codebuddy/harness-codebase-map/templates/map-summary.md +0 -64
  94. package/resources/harness/bundles/general/codebuddy/harness-knowledge-ingest/SKILL.md +0 -229
  95. package/resources/harness/bundles/general/codebuddy/harness-knowledge-ingest/design.md +0 -842
  96. package/resources/harness/bundles/general/codebuddy/harness-knowledge-ingest/evaluations/harness_knowledge_evaluation.xml +0 -42
  97. package/resources/harness/bundles/general/codebuddy/harness-knowledge-ingest/mcp-config.example.json +0 -10
  98. package/resources/harness/bundles/general/codebuddy/harness-knowledge-ingest/reference.md +0 -309
  99. package/resources/harness/bundles/general/codebuddy/harness-knowledge-ingest/scripts/harness_knowledge.py +0 -4082
  100. package/resources/harness/bundles/general/codebuddy/harness-knowledge-ingest/scripts/harness_knowledge_mcp.py +0 -273
  101. package/resources/harness/bundles/general/codebuddy/harness-knowledge-query/SKILL.md +0 -147
  102. package/resources/harness/bundles/general/codebuddy/harness-plan/SKILL.md +0 -109
  103. package/resources/harness/bundles/general/codebuddy/harness-plan/checklist.md +0 -243
  104. package/resources/harness/bundles/general/codebuddy/harness-plan/protocols.md +0 -124
  105. package/resources/harness/bundles/general/codebuddy/harness-plan/reference.md +0 -376
  106. package/resources/harness/bundles/general/codebuddy/harness-review/SKILL.md +0 -142
  107. package/resources/harness/bundles/general/codebuddy/harness-review/checklist.md +0 -124
  108. package/resources/harness/bundles/general/codebuddy/harness-review/protocols.md +0 -68
  109. package/resources/harness/bundles/general/codebuddy/harness-review/reference.md +0 -86
  110. package/resources/harness/bundles/general/codebuddy/harness-run/SKILL.md +0 -113
  111. package/resources/harness/bundles/general/codebuddy/harness-run/checklist.md +0 -259
  112. package/resources/harness/bundles/general/codebuddy/harness-run/protocols.md +0 -78
  113. package/resources/harness/bundles/general/codebuddy/harness-run/reference.md +0 -834
  114. package/resources/harness/bundles/general/codebuddy/harness-submit/SKILL.md +0 -142
  115. package/resources/harness/bundles/general/codebuddy/harness-submit/checklist.md +0 -407
  116. package/resources/harness/bundles/general/codebuddy/harness-submit/reference.md +0 -152
  117. package/resources/harness/bundles/general/codebuddy/harness-sync/SKILL.md +0 -65
  118. package/resources/harness/bundles/general/codebuddy/harness-sync/reference.md +0 -153
  119. package/resources/harness/bundles/general/codebuddy/harness-test/SKILL.md +0 -160
  120. package/resources/harness/bundles/general/codebuddy/harness-test/checklist.md +0 -319
  121. package/resources/harness/bundles/general/codebuddy/harness-test/pitfalls.md +0 -260
  122. package/resources/harness/bundles/general/codebuddy/harness-test/reference.md +0 -791
  123. package/resources/harness/bundles/general/codebuddy/protocols/archive-report-protocol.md +0 -175
  124. package/resources/harness/bundles/general/codebuddy/protocols/evidence-based-reporting-protocol.md +0 -134
  125. package/resources/harness/bundles/general/codebuddy/protocols/ledger-protocol.md +0 -270
  126. package/resources/harness/bundles/general/codebuddy/protocols/powershell-protocol.md +0 -181
  127. package/resources/harness/bundles/general/codebuddy/protocols/report-pipeline-protocol.md +0 -150
  128. package/resources/harness/bundles/general/codebuddy/protocols/sensitive-info-protocol.md +0 -92
  129. package/resources/harness/bundles/general/codebuddy/protocols/state-layout-protocol.md +0 -131
  130. package/resources/harness/bundles/general/codebuddy/protocols/submit-protocol.md +0 -78
  131. package/resources/harness/bundles/general/codebuddy/scripts/harness_archive.py +0 -2319
  132. package/resources/harness/bundles/general/codebuddy/scripts/harness_deploy.py +0 -674
  133. package/resources/harness/bundles/general/codebuddy/scripts/harness_events.py +0 -680
  134. package/resources/harness/bundles/general/codebuddy/scripts/harness_ledger.py +0 -671
  135. package/resources/harness/bundles/general/codebuddy/scripts/harness_preflight.py +0 -780
  136. package/resources/harness/bundles/general/codebuddy/scripts/harness_service.py +0 -1331
  137. package/resources/harness/bundles/general/codex/.harness-build.json +0 -6
  138. package/resources/harness/bundles/general/codex/CONTEXT.md +0 -65
  139. package/resources/harness/bundles/general/codex/README.md +0 -478
  140. package/resources/harness/bundles/general/codex/harness-archive/SKILL.md +0 -198
  141. package/resources/harness/bundles/general/codex/harness-archive/checklist.md +0 -52
  142. package/resources/harness/bundles/general/codex/harness-archive/reference.md +0 -103
  143. package/resources/harness/bundles/general/codex/harness-archive/scripts/gen-manifest.ps1 +0 -31
  144. package/resources/harness/bundles/general/codex/harness-archive/templates/render-summary.mjs +0 -171
  145. package/resources/harness/bundles/general/codex/harness-archive/templates/summary-data-template.json +0 -128
  146. package/resources/harness/bundles/general/codex/harness-codebase-map/SKILL.md +0 -95
  147. package/resources/harness/bundles/general/codex/harness-codebase-map/checklist.md +0 -126
  148. package/resources/harness/bundles/general/codex/harness-codebase-map/reference.md +0 -364
  149. package/resources/harness/bundles/general/codex/harness-codebase-map/templates/ARCHITECTURE.md +0 -57
  150. package/resources/harness/bundles/general/codex/harness-codebase-map/templates/CONCERNS.md +0 -49
  151. package/resources/harness/bundles/general/codex/harness-codebase-map/templates/CONVENTIONS.md +0 -57
  152. package/resources/harness/bundles/general/codex/harness-codebase-map/templates/INTEGRATIONS.md +0 -52
  153. package/resources/harness/bundles/general/codex/harness-codebase-map/templates/STACK.md +0 -55
  154. package/resources/harness/bundles/general/codex/harness-codebase-map/templates/STRUCTURE.md +0 -69
  155. package/resources/harness/bundles/general/codex/harness-codebase-map/templates/TESTING.md +0 -64
  156. package/resources/harness/bundles/general/codex/harness-codebase-map/templates/map-manifest.schema.json +0 -73
  157. package/resources/harness/bundles/general/codex/harness-codebase-map/templates/map-summary.md +0 -64
  158. package/resources/harness/bundles/general/codex/harness-knowledge-ingest/SKILL.md +0 -229
  159. package/resources/harness/bundles/general/codex/harness-knowledge-ingest/design.md +0 -842
  160. package/resources/harness/bundles/general/codex/harness-knowledge-ingest/evaluations/harness_knowledge_evaluation.xml +0 -42
  161. package/resources/harness/bundles/general/codex/harness-knowledge-ingest/mcp-config.example.json +0 -10
  162. package/resources/harness/bundles/general/codex/harness-knowledge-ingest/reference.md +0 -309
  163. package/resources/harness/bundles/general/codex/harness-knowledge-ingest/scripts/harness_knowledge.py +0 -4082
  164. package/resources/harness/bundles/general/codex/harness-knowledge-ingest/scripts/harness_knowledge_mcp.py +0 -273
  165. package/resources/harness/bundles/general/codex/harness-knowledge-query/SKILL.md +0 -147
  166. package/resources/harness/bundles/general/codex/harness-plan/SKILL.md +0 -109
  167. package/resources/harness/bundles/general/codex/harness-plan/checklist.md +0 -243
  168. package/resources/harness/bundles/general/codex/harness-plan/protocols.md +0 -124
  169. package/resources/harness/bundles/general/codex/harness-plan/reference.md +0 -376
  170. package/resources/harness/bundles/general/codex/harness-review/SKILL.md +0 -137
  171. package/resources/harness/bundles/general/codex/harness-review/checklist.md +0 -124
  172. package/resources/harness/bundles/general/codex/harness-review/protocols.md +0 -68
  173. package/resources/harness/bundles/general/codex/harness-review/reference.md +0 -86
  174. package/resources/harness/bundles/general/codex/harness-run/SKILL.md +0 -113
  175. package/resources/harness/bundles/general/codex/harness-run/checklist.md +0 -259
  176. package/resources/harness/bundles/general/codex/harness-run/protocols.md +0 -78
  177. package/resources/harness/bundles/general/codex/harness-run/reference.md +0 -834
  178. package/resources/harness/bundles/general/codex/harness-submit/SKILL.md +0 -142
  179. package/resources/harness/bundles/general/codex/harness-submit/checklist.md +0 -407
  180. package/resources/harness/bundles/general/codex/harness-submit/reference.md +0 -152
  181. package/resources/harness/bundles/general/codex/harness-sync/SKILL.md +0 -65
  182. package/resources/harness/bundles/general/codex/harness-sync/reference.md +0 -153
  183. package/resources/harness/bundles/general/codex/harness-test/SKILL.md +0 -160
  184. package/resources/harness/bundles/general/codex/harness-test/checklist.md +0 -319
  185. package/resources/harness/bundles/general/codex/harness-test/pitfalls.md +0 -260
  186. package/resources/harness/bundles/general/codex/harness-test/reference.md +0 -791
  187. package/resources/harness/bundles/general/codex/protocols/archive-report-protocol.md +0 -175
  188. package/resources/harness/bundles/general/codex/protocols/evidence-based-reporting-protocol.md +0 -134
  189. package/resources/harness/bundles/general/codex/protocols/ledger-protocol.md +0 -270
  190. package/resources/harness/bundles/general/codex/protocols/powershell-protocol.md +0 -181
  191. package/resources/harness/bundles/general/codex/protocols/report-pipeline-protocol.md +0 -150
  192. package/resources/harness/bundles/general/codex/protocols/sensitive-info-protocol.md +0 -92
  193. package/resources/harness/bundles/general/codex/protocols/state-layout-protocol.md +0 -131
  194. package/resources/harness/bundles/general/codex/protocols/submit-protocol.md +0 -78
  195. package/resources/harness/bundles/general/codex/scripts/harness_archive.py +0 -2319
  196. package/resources/harness/bundles/general/codex/scripts/harness_deploy.py +0 -674
  197. package/resources/harness/bundles/general/codex/scripts/harness_events.py +0 -680
  198. package/resources/harness/bundles/general/codex/scripts/harness_ledger.py +0 -671
  199. package/resources/harness/bundles/general/codex/scripts/harness_preflight.py +0 -780
  200. package/resources/harness/bundles/general/codex/scripts/harness_service.py +0 -1331
  201. package/resources/harness/bundles/general/cursor/.harness-build.json +0 -6
  202. package/resources/harness/bundles/general/cursor/CONTEXT.md +0 -65
  203. package/resources/harness/bundles/general/cursor/README.md +0 -478
  204. package/resources/harness/bundles/general/cursor/harness-archive/SKILL.md +0 -198
  205. package/resources/harness/bundles/general/cursor/harness-archive/checklist.md +0 -52
  206. package/resources/harness/bundles/general/cursor/harness-archive/reference.md +0 -103
  207. package/resources/harness/bundles/general/cursor/harness-archive/scripts/gen-manifest.ps1 +0 -31
  208. package/resources/harness/bundles/general/cursor/harness-archive/templates/render-summary.mjs +0 -171
  209. package/resources/harness/bundles/general/cursor/harness-archive/templates/summary-data-template.json +0 -128
  210. package/resources/harness/bundles/general/cursor/harness-codebase-map/SKILL.md +0 -95
  211. package/resources/harness/bundles/general/cursor/harness-codebase-map/checklist.md +0 -126
  212. package/resources/harness/bundles/general/cursor/harness-codebase-map/reference.md +0 -364
  213. package/resources/harness/bundles/general/cursor/harness-codebase-map/templates/ARCHITECTURE.md +0 -57
  214. package/resources/harness/bundles/general/cursor/harness-codebase-map/templates/CONCERNS.md +0 -49
  215. package/resources/harness/bundles/general/cursor/harness-codebase-map/templates/CONVENTIONS.md +0 -57
  216. package/resources/harness/bundles/general/cursor/harness-codebase-map/templates/INTEGRATIONS.md +0 -52
  217. package/resources/harness/bundles/general/cursor/harness-codebase-map/templates/STACK.md +0 -55
  218. package/resources/harness/bundles/general/cursor/harness-codebase-map/templates/STRUCTURE.md +0 -69
  219. package/resources/harness/bundles/general/cursor/harness-codebase-map/templates/TESTING.md +0 -64
  220. package/resources/harness/bundles/general/cursor/harness-codebase-map/templates/map-manifest.schema.json +0 -73
  221. package/resources/harness/bundles/general/cursor/harness-codebase-map/templates/map-summary.md +0 -64
  222. package/resources/harness/bundles/general/cursor/harness-knowledge-ingest/SKILL.md +0 -229
  223. package/resources/harness/bundles/general/cursor/harness-knowledge-ingest/design.md +0 -842
  224. package/resources/harness/bundles/general/cursor/harness-knowledge-ingest/evaluations/harness_knowledge_evaluation.xml +0 -42
  225. package/resources/harness/bundles/general/cursor/harness-knowledge-ingest/mcp-config.example.json +0 -10
  226. package/resources/harness/bundles/general/cursor/harness-knowledge-ingest/reference.md +0 -309
  227. package/resources/harness/bundles/general/cursor/harness-knowledge-ingest/scripts/harness_knowledge.py +0 -4082
  228. package/resources/harness/bundles/general/cursor/harness-knowledge-ingest/scripts/harness_knowledge_mcp.py +0 -273
  229. package/resources/harness/bundles/general/cursor/harness-knowledge-query/SKILL.md +0 -147
  230. package/resources/harness/bundles/general/cursor/harness-plan/SKILL.md +0 -109
  231. package/resources/harness/bundles/general/cursor/harness-plan/checklist.md +0 -243
  232. package/resources/harness/bundles/general/cursor/harness-plan/protocols.md +0 -124
  233. package/resources/harness/bundles/general/cursor/harness-plan/reference.md +0 -376
  234. package/resources/harness/bundles/general/cursor/harness-review/SKILL.md +0 -137
  235. package/resources/harness/bundles/general/cursor/harness-review/checklist.md +0 -124
  236. package/resources/harness/bundles/general/cursor/harness-review/protocols.md +0 -68
  237. package/resources/harness/bundles/general/cursor/harness-review/reference.md +0 -86
  238. package/resources/harness/bundles/general/cursor/harness-run/SKILL.md +0 -113
  239. package/resources/harness/bundles/general/cursor/harness-run/checklist.md +0 -259
  240. package/resources/harness/bundles/general/cursor/harness-run/protocols.md +0 -78
  241. package/resources/harness/bundles/general/cursor/harness-run/reference.md +0 -834
  242. package/resources/harness/bundles/general/cursor/harness-submit/SKILL.md +0 -142
  243. package/resources/harness/bundles/general/cursor/harness-submit/checklist.md +0 -407
  244. package/resources/harness/bundles/general/cursor/harness-submit/reference.md +0 -152
  245. package/resources/harness/bundles/general/cursor/harness-sync/SKILL.md +0 -65
  246. package/resources/harness/bundles/general/cursor/harness-sync/reference.md +0 -153
  247. package/resources/harness/bundles/general/cursor/harness-test/SKILL.md +0 -160
  248. package/resources/harness/bundles/general/cursor/harness-test/checklist.md +0 -319
  249. package/resources/harness/bundles/general/cursor/harness-test/pitfalls.md +0 -260
  250. package/resources/harness/bundles/general/cursor/harness-test/reference.md +0 -791
  251. package/resources/harness/bundles/general/cursor/protocols/archive-report-protocol.md +0 -175
  252. package/resources/harness/bundles/general/cursor/protocols/evidence-based-reporting-protocol.md +0 -134
  253. package/resources/harness/bundles/general/cursor/protocols/ledger-protocol.md +0 -270
  254. package/resources/harness/bundles/general/cursor/protocols/powershell-protocol.md +0 -181
  255. package/resources/harness/bundles/general/cursor/protocols/report-pipeline-protocol.md +0 -150
  256. package/resources/harness/bundles/general/cursor/protocols/sensitive-info-protocol.md +0 -92
  257. package/resources/harness/bundles/general/cursor/protocols/state-layout-protocol.md +0 -131
  258. package/resources/harness/bundles/general/cursor/protocols/submit-protocol.md +0 -78
  259. package/resources/harness/bundles/general/cursor/scripts/harness_archive.py +0 -2319
  260. package/resources/harness/bundles/general/cursor/scripts/harness_deploy.py +0 -674
  261. package/resources/harness/bundles/general/cursor/scripts/harness_events.py +0 -680
  262. package/resources/harness/bundles/general/cursor/scripts/harness_ledger.py +0 -671
  263. package/resources/harness/bundles/general/cursor/scripts/harness_preflight.py +0 -780
  264. package/resources/harness/bundles/general/cursor/scripts/harness_service.py +0 -1331
  265. package/resources/harness/bundles/java/claude-code/.harness-build.json +0 -6
  266. package/resources/harness/bundles/java/claude-code/CONTEXT.md +0 -65
  267. package/resources/harness/bundles/java/claude-code/README.md +0 -478
  268. package/resources/harness/bundles/java/claude-code/agents/harness-evaluator.md +0 -96
  269. package/resources/harness/bundles/java/claude-code/agents/harness-explorer.md +0 -72
  270. package/resources/harness/bundles/java/claude-code/agents/harness-reviewer.md +0 -69
  271. package/resources/harness/bundles/java/claude-code/harness-apidoc/SKILL.md +0 -86
  272. package/resources/harness/bundles/java/claude-code/harness-apidoc/checklist.md +0 -142
  273. package/resources/harness/bundles/java/claude-code/harness-apidoc/reference.md +0 -233
  274. package/resources/harness/bundles/java/claude-code/harness-archive/SKILL.md +0 -215
  275. package/resources/harness/bundles/java/claude-code/harness-archive/checklist.md +0 -52
  276. package/resources/harness/bundles/java/claude-code/harness-archive/reference.md +0 -103
  277. package/resources/harness/bundles/java/claude-code/harness-archive/scripts/gen-manifest.ps1 +0 -31
  278. package/resources/harness/bundles/java/claude-code/harness-archive/templates/render-summary.mjs +0 -171
  279. package/resources/harness/bundles/java/claude-code/harness-archive/templates/summary-data-template.json +0 -128
  280. package/resources/harness/bundles/java/claude-code/harness-codebase-map/SKILL.md +0 -112
  281. package/resources/harness/bundles/java/claude-code/harness-codebase-map/checklist.md +0 -126
  282. package/resources/harness/bundles/java/claude-code/harness-codebase-map/reference.md +0 -364
  283. package/resources/harness/bundles/java/claude-code/harness-codebase-map/templates/ARCHITECTURE.md +0 -57
  284. package/resources/harness/bundles/java/claude-code/harness-codebase-map/templates/CONCERNS.md +0 -49
  285. package/resources/harness/bundles/java/claude-code/harness-codebase-map/templates/CONVENTIONS.md +0 -57
  286. package/resources/harness/bundles/java/claude-code/harness-codebase-map/templates/INTEGRATIONS.md +0 -52
  287. package/resources/harness/bundles/java/claude-code/harness-codebase-map/templates/STACK.md +0 -55
  288. package/resources/harness/bundles/java/claude-code/harness-codebase-map/templates/STRUCTURE.md +0 -69
  289. package/resources/harness/bundles/java/claude-code/harness-codebase-map/templates/TESTING.md +0 -64
  290. package/resources/harness/bundles/java/claude-code/harness-codebase-map/templates/map-manifest.schema.json +0 -73
  291. package/resources/harness/bundles/java/claude-code/harness-codebase-map/templates/map-summary.md +0 -64
  292. package/resources/harness/bundles/java/claude-code/harness-knowledge-ingest/SKILL.md +0 -246
  293. package/resources/harness/bundles/java/claude-code/harness-knowledge-ingest/design.md +0 -842
  294. package/resources/harness/bundles/java/claude-code/harness-knowledge-ingest/evaluations/harness_knowledge_evaluation.xml +0 -42
  295. package/resources/harness/bundles/java/claude-code/harness-knowledge-ingest/mcp-config.example.json +0 -10
  296. package/resources/harness/bundles/java/claude-code/harness-knowledge-ingest/reference.md +0 -309
  297. package/resources/harness/bundles/java/claude-code/harness-knowledge-ingest/scripts/harness_knowledge.py +0 -4082
  298. package/resources/harness/bundles/java/claude-code/harness-knowledge-ingest/scripts/harness_knowledge_mcp.py +0 -273
  299. package/resources/harness/bundles/java/claude-code/harness-knowledge-query/SKILL.md +0 -164
  300. package/resources/harness/bundles/java/claude-code/harness-package/SKILL.md +0 -87
  301. package/resources/harness/bundles/java/claude-code/harness-package/checklist.md +0 -322
  302. package/resources/harness/bundles/java/claude-code/harness-package/reference.md +0 -210
  303. package/resources/harness/bundles/java/claude-code/harness-plan/SKILL.md +0 -127
  304. package/resources/harness/bundles/java/claude-code/harness-plan/checklist.md +0 -243
  305. package/resources/harness/bundles/java/claude-code/harness-plan/protocols.md +0 -124
  306. package/resources/harness/bundles/java/claude-code/harness-plan/reference.md +0 -376
  307. package/resources/harness/bundles/java/claude-code/harness-review/SKILL.md +0 -160
  308. package/resources/harness/bundles/java/claude-code/harness-review/checklist.md +0 -124
  309. package/resources/harness/bundles/java/claude-code/harness-review/protocols.md +0 -68
  310. package/resources/harness/bundles/java/claude-code/harness-review/reference.md +0 -86
  311. package/resources/harness/bundles/java/claude-code/harness-run/SKILL.md +0 -148
  312. package/resources/harness/bundles/java/claude-code/harness-run/checklist.md +0 -250
  313. package/resources/harness/bundles/java/claude-code/harness-run/protocols.md +0 -78
  314. package/resources/harness/bundles/java/claude-code/harness-run/reference.md +0 -814
  315. package/resources/harness/bundles/java/claude-code/harness-submit/SKILL.md +0 -166
  316. package/resources/harness/bundles/java/claude-code/harness-submit/checklist.md +0 -407
  317. package/resources/harness/bundles/java/claude-code/harness-submit/reference.md +0 -152
  318. package/resources/harness/bundles/java/claude-code/harness-sync/SKILL.md +0 -82
  319. package/resources/harness/bundles/java/claude-code/harness-sync/reference.md +0 -153
  320. package/resources/harness/bundles/java/claude-code/harness-test/SKILL.md +0 -192
  321. package/resources/harness/bundles/java/claude-code/harness-test/checklist.md +0 -317
  322. package/resources/harness/bundles/java/claude-code/harness-test/pitfalls-java.md +0 -16
  323. package/resources/harness/bundles/java/claude-code/harness-test/pitfalls.md +0 -260
  324. package/resources/harness/bundles/java/claude-code/harness-test/reference.md +0 -788
  325. package/resources/harness/bundles/java/claude-code/protocols/archive-report-protocol.md +0 -175
  326. package/resources/harness/bundles/java/claude-code/protocols/evidence-based-reporting-protocol.md +0 -134
  327. package/resources/harness/bundles/java/claude-code/protocols/ledger-protocol.md +0 -270
  328. package/resources/harness/bundles/java/claude-code/protocols/powershell-protocol.md +0 -181
  329. package/resources/harness/bundles/java/claude-code/protocols/report-pipeline-protocol.md +0 -150
  330. package/resources/harness/bundles/java/claude-code/protocols/sensitive-info-protocol.md +0 -92
  331. package/resources/harness/bundles/java/claude-code/protocols/state-layout-protocol.md +0 -131
  332. package/resources/harness/bundles/java/claude-code/protocols/submit-protocol.md +0 -78
  333. package/resources/harness/bundles/java/claude-code/scripts/harness_archive.py +0 -2319
  334. package/resources/harness/bundles/java/claude-code/scripts/harness_deploy.py +0 -674
  335. package/resources/harness/bundles/java/claude-code/scripts/harness_events.py +0 -680
  336. package/resources/harness/bundles/java/claude-code/scripts/harness_ledger.py +0 -671
  337. package/resources/harness/bundles/java/claude-code/scripts/harness_preflight.py +0 -780
  338. package/resources/harness/bundles/java/claude-code/scripts/harness_service.py +0 -1331
  339. package/resources/harness/bundles/java/codebuddy/.harness-build.json +0 -6
  340. package/resources/harness/bundles/java/codebuddy/CONTEXT.md +0 -65
  341. package/resources/harness/bundles/java/codebuddy/README.md +0 -478
  342. package/resources/harness/bundles/java/codebuddy/agents/harness-evaluator.md +0 -94
  343. package/resources/harness/bundles/java/codebuddy/agents/harness-explorer.md +0 -53
  344. package/resources/harness/bundles/java/codebuddy/agents/harness-reviewer.md +0 -52
  345. package/resources/harness/bundles/java/codebuddy/harness-apidoc/SKILL.md +0 -68
  346. package/resources/harness/bundles/java/codebuddy/harness-apidoc/checklist.md +0 -142
  347. package/resources/harness/bundles/java/codebuddy/harness-apidoc/reference.md +0 -233
  348. package/resources/harness/bundles/java/codebuddy/harness-archive/SKILL.md +0 -198
  349. package/resources/harness/bundles/java/codebuddy/harness-archive/checklist.md +0 -52
  350. package/resources/harness/bundles/java/codebuddy/harness-archive/reference.md +0 -103
  351. package/resources/harness/bundles/java/codebuddy/harness-archive/scripts/gen-manifest.ps1 +0 -31
  352. package/resources/harness/bundles/java/codebuddy/harness-archive/templates/render-summary.mjs +0 -171
  353. package/resources/harness/bundles/java/codebuddy/harness-archive/templates/summary-data-template.json +0 -128
  354. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/SKILL.md +0 -95
  355. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/checklist.md +0 -126
  356. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/reference.md +0 -364
  357. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/templates/ARCHITECTURE.md +0 -57
  358. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/templates/CONCERNS.md +0 -49
  359. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/templates/CONVENTIONS.md +0 -57
  360. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/templates/INTEGRATIONS.md +0 -52
  361. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/templates/STACK.md +0 -55
  362. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/templates/STRUCTURE.md +0 -69
  363. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/templates/TESTING.md +0 -64
  364. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/templates/map-manifest.schema.json +0 -73
  365. package/resources/harness/bundles/java/codebuddy/harness-codebase-map/templates/map-summary.md +0 -64
  366. package/resources/harness/bundles/java/codebuddy/harness-knowledge-ingest/SKILL.md +0 -229
  367. package/resources/harness/bundles/java/codebuddy/harness-knowledge-ingest/design.md +0 -842
  368. package/resources/harness/bundles/java/codebuddy/harness-knowledge-ingest/evaluations/harness_knowledge_evaluation.xml +0 -42
  369. package/resources/harness/bundles/java/codebuddy/harness-knowledge-ingest/mcp-config.example.json +0 -10
  370. package/resources/harness/bundles/java/codebuddy/harness-knowledge-ingest/reference.md +0 -309
  371. package/resources/harness/bundles/java/codebuddy/harness-knowledge-ingest/scripts/harness_knowledge.py +0 -4082
  372. package/resources/harness/bundles/java/codebuddy/harness-knowledge-ingest/scripts/harness_knowledge_mcp.py +0 -273
  373. package/resources/harness/bundles/java/codebuddy/harness-knowledge-query/SKILL.md +0 -147
  374. package/resources/harness/bundles/java/codebuddy/harness-package/SKILL.md +0 -69
  375. package/resources/harness/bundles/java/codebuddy/harness-package/checklist.md +0 -322
  376. package/resources/harness/bundles/java/codebuddy/harness-package/reference.md +0 -210
  377. package/resources/harness/bundles/java/codebuddy/harness-plan/SKILL.md +0 -109
  378. package/resources/harness/bundles/java/codebuddy/harness-plan/checklist.md +0 -243
  379. package/resources/harness/bundles/java/codebuddy/harness-plan/protocols.md +0 -124
  380. package/resources/harness/bundles/java/codebuddy/harness-plan/reference.md +0 -376
  381. package/resources/harness/bundles/java/codebuddy/harness-review/SKILL.md +0 -142
  382. package/resources/harness/bundles/java/codebuddy/harness-review/checklist.md +0 -124
  383. package/resources/harness/bundles/java/codebuddy/harness-review/protocols.md +0 -68
  384. package/resources/harness/bundles/java/codebuddy/harness-review/reference.md +0 -86
  385. package/resources/harness/bundles/java/codebuddy/harness-run/SKILL.md +0 -129
  386. package/resources/harness/bundles/java/codebuddy/harness-run/checklist.md +0 -250
  387. package/resources/harness/bundles/java/codebuddy/harness-run/protocols.md +0 -78
  388. package/resources/harness/bundles/java/codebuddy/harness-run/reference.md +0 -814
  389. package/resources/harness/bundles/java/codebuddy/harness-submit/SKILL.md +0 -149
  390. package/resources/harness/bundles/java/codebuddy/harness-submit/checklist.md +0 -407
  391. package/resources/harness/bundles/java/codebuddy/harness-submit/reference.md +0 -152
  392. package/resources/harness/bundles/java/codebuddy/harness-sync/SKILL.md +0 -65
  393. package/resources/harness/bundles/java/codebuddy/harness-sync/reference.md +0 -153
  394. package/resources/harness/bundles/java/codebuddy/harness-test/SKILL.md +0 -172
  395. package/resources/harness/bundles/java/codebuddy/harness-test/checklist.md +0 -317
  396. package/resources/harness/bundles/java/codebuddy/harness-test/pitfalls-java.md +0 -16
  397. package/resources/harness/bundles/java/codebuddy/harness-test/pitfalls.md +0 -260
  398. package/resources/harness/bundles/java/codebuddy/harness-test/reference.md +0 -788
  399. package/resources/harness/bundles/java/codebuddy/protocols/archive-report-protocol.md +0 -175
  400. package/resources/harness/bundles/java/codebuddy/protocols/evidence-based-reporting-protocol.md +0 -134
  401. package/resources/harness/bundles/java/codebuddy/protocols/ledger-protocol.md +0 -270
  402. package/resources/harness/bundles/java/codebuddy/protocols/powershell-protocol.md +0 -181
  403. package/resources/harness/bundles/java/codebuddy/protocols/report-pipeline-protocol.md +0 -150
  404. package/resources/harness/bundles/java/codebuddy/protocols/sensitive-info-protocol.md +0 -92
  405. package/resources/harness/bundles/java/codebuddy/protocols/state-layout-protocol.md +0 -131
  406. package/resources/harness/bundles/java/codebuddy/protocols/submit-protocol.md +0 -78
  407. package/resources/harness/bundles/java/codebuddy/scripts/harness_archive.py +0 -2319
  408. package/resources/harness/bundles/java/codebuddy/scripts/harness_deploy.py +0 -674
  409. package/resources/harness/bundles/java/codebuddy/scripts/harness_events.py +0 -680
  410. package/resources/harness/bundles/java/codebuddy/scripts/harness_ledger.py +0 -671
  411. package/resources/harness/bundles/java/codebuddy/scripts/harness_preflight.py +0 -780
  412. package/resources/harness/bundles/java/codebuddy/scripts/harness_service.py +0 -1331
  413. package/resources/harness/bundles/java/codex/.harness-build.json +0 -6
  414. package/resources/harness/bundles/java/codex/CONTEXT.md +0 -65
  415. package/resources/harness/bundles/java/codex/README.md +0 -478
  416. package/resources/harness/bundles/java/codex/harness-apidoc/SKILL.md +0 -68
  417. package/resources/harness/bundles/java/codex/harness-apidoc/checklist.md +0 -142
  418. package/resources/harness/bundles/java/codex/harness-apidoc/reference.md +0 -233
  419. package/resources/harness/bundles/java/codex/harness-archive/SKILL.md +0 -198
  420. package/resources/harness/bundles/java/codex/harness-archive/checklist.md +0 -52
  421. package/resources/harness/bundles/java/codex/harness-archive/reference.md +0 -103
  422. package/resources/harness/bundles/java/codex/harness-archive/scripts/gen-manifest.ps1 +0 -31
  423. package/resources/harness/bundles/java/codex/harness-archive/templates/render-summary.mjs +0 -171
  424. package/resources/harness/bundles/java/codex/harness-archive/templates/summary-data-template.json +0 -128
  425. package/resources/harness/bundles/java/codex/harness-codebase-map/SKILL.md +0 -95
  426. package/resources/harness/bundles/java/codex/harness-codebase-map/checklist.md +0 -126
  427. package/resources/harness/bundles/java/codex/harness-codebase-map/reference.md +0 -364
  428. package/resources/harness/bundles/java/codex/harness-codebase-map/templates/ARCHITECTURE.md +0 -57
  429. package/resources/harness/bundles/java/codex/harness-codebase-map/templates/CONCERNS.md +0 -49
  430. package/resources/harness/bundles/java/codex/harness-codebase-map/templates/CONVENTIONS.md +0 -57
  431. package/resources/harness/bundles/java/codex/harness-codebase-map/templates/INTEGRATIONS.md +0 -52
  432. package/resources/harness/bundles/java/codex/harness-codebase-map/templates/STACK.md +0 -55
  433. package/resources/harness/bundles/java/codex/harness-codebase-map/templates/STRUCTURE.md +0 -69
  434. package/resources/harness/bundles/java/codex/harness-codebase-map/templates/TESTING.md +0 -64
  435. package/resources/harness/bundles/java/codex/harness-codebase-map/templates/map-manifest.schema.json +0 -73
  436. package/resources/harness/bundles/java/codex/harness-codebase-map/templates/map-summary.md +0 -64
  437. package/resources/harness/bundles/java/codex/harness-knowledge-ingest/SKILL.md +0 -229
  438. package/resources/harness/bundles/java/codex/harness-knowledge-ingest/design.md +0 -842
  439. package/resources/harness/bundles/java/codex/harness-knowledge-ingest/evaluations/harness_knowledge_evaluation.xml +0 -42
  440. package/resources/harness/bundles/java/codex/harness-knowledge-ingest/mcp-config.example.json +0 -10
  441. package/resources/harness/bundles/java/codex/harness-knowledge-ingest/reference.md +0 -309
  442. package/resources/harness/bundles/java/codex/harness-knowledge-ingest/scripts/harness_knowledge.py +0 -4082
  443. package/resources/harness/bundles/java/codex/harness-knowledge-ingest/scripts/harness_knowledge_mcp.py +0 -273
  444. package/resources/harness/bundles/java/codex/harness-knowledge-query/SKILL.md +0 -147
  445. package/resources/harness/bundles/java/codex/harness-package/SKILL.md +0 -69
  446. package/resources/harness/bundles/java/codex/harness-package/checklist.md +0 -322
  447. package/resources/harness/bundles/java/codex/harness-package/reference.md +0 -210
  448. package/resources/harness/bundles/java/codex/harness-plan/SKILL.md +0 -109
  449. package/resources/harness/bundles/java/codex/harness-plan/checklist.md +0 -243
  450. package/resources/harness/bundles/java/codex/harness-plan/protocols.md +0 -124
  451. package/resources/harness/bundles/java/codex/harness-plan/reference.md +0 -376
  452. package/resources/harness/bundles/java/codex/harness-review/SKILL.md +0 -137
  453. package/resources/harness/bundles/java/codex/harness-review/checklist.md +0 -124
  454. package/resources/harness/bundles/java/codex/harness-review/protocols.md +0 -68
  455. package/resources/harness/bundles/java/codex/harness-review/reference.md +0 -86
  456. package/resources/harness/bundles/java/codex/harness-run/SKILL.md +0 -129
  457. package/resources/harness/bundles/java/codex/harness-run/checklist.md +0 -250
  458. package/resources/harness/bundles/java/codex/harness-run/protocols.md +0 -78
  459. package/resources/harness/bundles/java/codex/harness-run/reference.md +0 -814
  460. package/resources/harness/bundles/java/codex/harness-submit/SKILL.md +0 -149
  461. package/resources/harness/bundles/java/codex/harness-submit/checklist.md +0 -407
  462. package/resources/harness/bundles/java/codex/harness-submit/reference.md +0 -152
  463. package/resources/harness/bundles/java/codex/harness-sync/SKILL.md +0 -65
  464. package/resources/harness/bundles/java/codex/harness-sync/reference.md +0 -153
  465. package/resources/harness/bundles/java/codex/harness-test/SKILL.md +0 -172
  466. package/resources/harness/bundles/java/codex/harness-test/checklist.md +0 -317
  467. package/resources/harness/bundles/java/codex/harness-test/pitfalls-java.md +0 -16
  468. package/resources/harness/bundles/java/codex/harness-test/pitfalls.md +0 -260
  469. package/resources/harness/bundles/java/codex/harness-test/reference.md +0 -788
  470. package/resources/harness/bundles/java/codex/protocols/archive-report-protocol.md +0 -175
  471. package/resources/harness/bundles/java/codex/protocols/evidence-based-reporting-protocol.md +0 -134
  472. package/resources/harness/bundles/java/codex/protocols/ledger-protocol.md +0 -270
  473. package/resources/harness/bundles/java/codex/protocols/powershell-protocol.md +0 -181
  474. package/resources/harness/bundles/java/codex/protocols/report-pipeline-protocol.md +0 -150
  475. package/resources/harness/bundles/java/codex/protocols/sensitive-info-protocol.md +0 -92
  476. package/resources/harness/bundles/java/codex/protocols/state-layout-protocol.md +0 -131
  477. package/resources/harness/bundles/java/codex/protocols/submit-protocol.md +0 -78
  478. package/resources/harness/bundles/java/codex/scripts/harness_archive.py +0 -2319
  479. package/resources/harness/bundles/java/codex/scripts/harness_deploy.py +0 -674
  480. package/resources/harness/bundles/java/codex/scripts/harness_events.py +0 -680
  481. package/resources/harness/bundles/java/codex/scripts/harness_ledger.py +0 -671
  482. package/resources/harness/bundles/java/codex/scripts/harness_preflight.py +0 -780
  483. package/resources/harness/bundles/java/codex/scripts/harness_service.py +0 -1331
  484. package/resources/harness/bundles/java/cursor/.harness-build.json +0 -6
  485. package/resources/harness/bundles/java/cursor/CONTEXT.md +0 -65
  486. package/resources/harness/bundles/java/cursor/README.md +0 -478
  487. package/resources/harness/bundles/java/cursor/harness-apidoc/SKILL.md +0 -68
  488. package/resources/harness/bundles/java/cursor/harness-apidoc/checklist.md +0 -142
  489. package/resources/harness/bundles/java/cursor/harness-apidoc/reference.md +0 -233
  490. package/resources/harness/bundles/java/cursor/harness-archive/SKILL.md +0 -198
  491. package/resources/harness/bundles/java/cursor/harness-archive/checklist.md +0 -52
  492. package/resources/harness/bundles/java/cursor/harness-archive/reference.md +0 -103
  493. package/resources/harness/bundles/java/cursor/harness-archive/scripts/gen-manifest.ps1 +0 -31
  494. package/resources/harness/bundles/java/cursor/harness-archive/templates/render-summary.mjs +0 -171
  495. package/resources/harness/bundles/java/cursor/harness-archive/templates/summary-data-template.json +0 -128
  496. package/resources/harness/bundles/java/cursor/harness-codebase-map/SKILL.md +0 -95
  497. package/resources/harness/bundles/java/cursor/harness-codebase-map/checklist.md +0 -126
  498. package/resources/harness/bundles/java/cursor/harness-codebase-map/reference.md +0 -364
  499. package/resources/harness/bundles/java/cursor/harness-codebase-map/templates/ARCHITECTURE.md +0 -57
  500. package/resources/harness/bundles/java/cursor/harness-codebase-map/templates/CONCERNS.md +0 -49
  501. package/resources/harness/bundles/java/cursor/harness-codebase-map/templates/CONVENTIONS.md +0 -57
  502. package/resources/harness/bundles/java/cursor/harness-codebase-map/templates/INTEGRATIONS.md +0 -52
  503. package/resources/harness/bundles/java/cursor/harness-codebase-map/templates/STACK.md +0 -55
  504. package/resources/harness/bundles/java/cursor/harness-codebase-map/templates/STRUCTURE.md +0 -69
  505. package/resources/harness/bundles/java/cursor/harness-codebase-map/templates/TESTING.md +0 -64
  506. package/resources/harness/bundles/java/cursor/harness-codebase-map/templates/map-manifest.schema.json +0 -73
  507. package/resources/harness/bundles/java/cursor/harness-codebase-map/templates/map-summary.md +0 -64
  508. package/resources/harness/bundles/java/cursor/harness-knowledge-ingest/SKILL.md +0 -229
  509. package/resources/harness/bundles/java/cursor/harness-knowledge-ingest/design.md +0 -842
  510. package/resources/harness/bundles/java/cursor/harness-knowledge-ingest/evaluations/harness_knowledge_evaluation.xml +0 -42
  511. package/resources/harness/bundles/java/cursor/harness-knowledge-ingest/mcp-config.example.json +0 -10
  512. package/resources/harness/bundles/java/cursor/harness-knowledge-ingest/reference.md +0 -309
  513. package/resources/harness/bundles/java/cursor/harness-knowledge-ingest/scripts/harness_knowledge.py +0 -4082
  514. package/resources/harness/bundles/java/cursor/harness-knowledge-ingest/scripts/harness_knowledge_mcp.py +0 -273
  515. package/resources/harness/bundles/java/cursor/harness-knowledge-query/SKILL.md +0 -147
  516. package/resources/harness/bundles/java/cursor/harness-package/SKILL.md +0 -69
  517. package/resources/harness/bundles/java/cursor/harness-package/checklist.md +0 -322
  518. package/resources/harness/bundles/java/cursor/harness-package/reference.md +0 -210
  519. package/resources/harness/bundles/java/cursor/harness-plan/SKILL.md +0 -109
  520. package/resources/harness/bundles/java/cursor/harness-plan/checklist.md +0 -243
  521. package/resources/harness/bundles/java/cursor/harness-plan/protocols.md +0 -124
  522. package/resources/harness/bundles/java/cursor/harness-plan/reference.md +0 -376
  523. package/resources/harness/bundles/java/cursor/harness-review/SKILL.md +0 -137
  524. package/resources/harness/bundles/java/cursor/harness-review/checklist.md +0 -124
  525. package/resources/harness/bundles/java/cursor/harness-review/protocols.md +0 -68
  526. package/resources/harness/bundles/java/cursor/harness-review/reference.md +0 -86
  527. package/resources/harness/bundles/java/cursor/harness-run/SKILL.md +0 -129
  528. package/resources/harness/bundles/java/cursor/harness-run/checklist.md +0 -250
  529. package/resources/harness/bundles/java/cursor/harness-run/protocols.md +0 -78
  530. package/resources/harness/bundles/java/cursor/harness-run/reference.md +0 -814
  531. package/resources/harness/bundles/java/cursor/harness-submit/SKILL.md +0 -149
  532. package/resources/harness/bundles/java/cursor/harness-submit/checklist.md +0 -407
  533. package/resources/harness/bundles/java/cursor/harness-submit/reference.md +0 -152
  534. package/resources/harness/bundles/java/cursor/harness-sync/SKILL.md +0 -65
  535. package/resources/harness/bundles/java/cursor/harness-sync/reference.md +0 -153
  536. package/resources/harness/bundles/java/cursor/harness-test/SKILL.md +0 -172
  537. package/resources/harness/bundles/java/cursor/harness-test/checklist.md +0 -317
  538. package/resources/harness/bundles/java/cursor/harness-test/pitfalls-java.md +0 -16
  539. package/resources/harness/bundles/java/cursor/harness-test/pitfalls.md +0 -260
  540. package/resources/harness/bundles/java/cursor/harness-test/reference.md +0 -788
  541. package/resources/harness/bundles/java/cursor/protocols/archive-report-protocol.md +0 -175
  542. package/resources/harness/bundles/java/cursor/protocols/evidence-based-reporting-protocol.md +0 -134
  543. package/resources/harness/bundles/java/cursor/protocols/ledger-protocol.md +0 -270
  544. package/resources/harness/bundles/java/cursor/protocols/powershell-protocol.md +0 -181
  545. package/resources/harness/bundles/java/cursor/protocols/report-pipeline-protocol.md +0 -150
  546. package/resources/harness/bundles/java/cursor/protocols/sensitive-info-protocol.md +0 -92
  547. package/resources/harness/bundles/java/cursor/protocols/state-layout-protocol.md +0 -131
  548. package/resources/harness/bundles/java/cursor/protocols/submit-protocol.md +0 -78
  549. package/resources/harness/bundles/java/cursor/scripts/harness_archive.py +0 -2319
  550. package/resources/harness/bundles/java/cursor/scripts/harness_deploy.py +0 -674
  551. package/resources/harness/bundles/java/cursor/scripts/harness_events.py +0 -680
  552. package/resources/harness/bundles/java/cursor/scripts/harness_ledger.py +0 -671
  553. package/resources/harness/bundles/java/cursor/scripts/harness_preflight.py +0 -780
  554. package/resources/harness/bundles/java/cursor/scripts/harness_service.py +0 -1331
  555. package/resources/harness/manifests/general/claude-code.json +0 -277
  556. package/resources/harness/manifests/general/codebuddy.json +0 -277
  557. package/resources/harness/manifests/general/codex.json +0 -265
  558. package/resources/harness/manifests/general/cursor.json +0 -265
  559. package/resources/harness/manifests/java/claude-code.json +0 -305
  560. package/resources/harness/manifests/java/codebuddy.json +0 -305
  561. package/resources/harness/manifests/java/codex.json +0 -293
  562. package/resources/harness/manifests/java/cursor.json +0 -293
  563. package/resources/harness/migrations/0.1.1/general.json +0 -358
  564. package/resources/harness/migrations/0.1.1/java.json +0 -398
@@ -1,814 +0,0 @@
1
- ---
2
- description: harness-run 的编译失败策略表、TDD循环详细步骤和编码约束。仅在编码执行遇到编译问题或需要参考详细规则时读取。
3
- ---
4
-
5
- # harness-run 参考 — 详细规则
6
-
7
- ## 为什么走变更簇 TDD 而不是逐任务 TDD
8
-
9
- 逐任务 TDD 有三个严重效率问题:
10
- 1. **Maven 反复启动**——每个小任务(如新增一个错误码)都单独启动 Maven,耗时 30-60 秒 × N 个任务,累计浪费大量时间
11
- 2. **测试碎片化**——每个小任务单独建测试类,mock 重复配置,测试之间缺乏关联
12
- 3. **上下文切换**——RED→GREEN→REFACTOR 每个小任务独立循环,打断编码思路
13
-
14
- 变更簇 TDD 将围绕同一业务行为的多个任务合并为一个变更簇,一次 RED、一次 GREEN 验证。每个变更簇 2-5 分钟,Maven 只启动必要次数。
15
-
16
- **变更簇示例**:
17
- - 错误码 + Mapper 查询 + Service 校验 + create/update/copy 调用 → 归为一个"ruleCode+version 唯一性"变更簇
18
- - updateRule status 联动 + activateVersion status 联动 + enabledList activeFlag 过滤 → 归为一个"status/activeFlag 一致性"变更簇
19
-
20
- ## 前置条件
21
-
22
- - `.harness/changes/<change-name>/spec/<change-name>-design.md` 存在(含完整 frontmatter)
23
- - `.harness/changes/<change-name>/plans/<change-name>-plan.md` 存在(含完整 frontmatter)
24
- - `.harness/changes/<change-name>/plans/<change-name>-test-scenarios.md` 存在
25
- - `.harness/changes/<change-name>/plans/<change-name>-implementation-detail.md`(如存在,补充读取)
26
- - 用户已审批通过计划
27
- - 如果在 worktree 中,已切换到 worktree 目录
28
-
29
- ## 步骤 0:加载上下文
30
-
31
- ## Worktree 创建与切换详细规则
32
-
33
- `harness-run` 必须把 `worktree.json` 当作唯一决策源。
34
-
35
- ### 状态机
36
-
37
- ```text
38
- requested=false
39
- -> MAIN_DIR
40
-
41
- requested=true + path exists
42
- -> USE_EXISTING_WORKTREE
43
-
44
- requested=true + path missing
45
- -> CREATE_WORKTREE
46
- -> success: USE_CREATED_WORKTREE
47
- -> failure: STOP or ASK_USER_TO_DOWNGRADE
48
- ```
49
-
50
- ### PowerShell 命令模板
51
-
52
- ```powershell
53
- powershell.exe -NoProfile -Command "git worktree add '.claude/worktrees/<change-name>' -b 'worktree/<change-name>'"
54
- ```
55
-
56
- 如果分支已存在:
57
-
58
- ```powershell
59
- powershell.exe -NoProfile -Command "git worktree add '.claude/worktrees/<change-name>' 'worktree/<change-name>'"
60
- ```
61
-
62
- 验证:
63
-
64
- ```powershell
65
- powershell.exe -NoProfile -Command "Test-Path '.claude/worktrees/<change-name>/.git'"
66
- ```
67
-
68
- ### 状态目录写入
69
-
70
- 即使代码在 worktree 中修改,`.harness/changes/<change-name>/` 仍是主项目下的状态真相源。run 必须记录:
71
-
72
- ```json
73
- {
74
- "projectRoot": ".../udp",
75
- "worktreeRoot": ".../udp/.claude/worktrees/<change-name>",
76
- "stateDir": ".../udp/.harness/changes/<change-name>"
77
- }
78
- ```
79
-
80
-
81
-
82
- > ⚠️ **phase.start 前置**:步骤 0 第一件事是 `harness_events.py append --type phase.start`(见底部「执行日志记录」)。**任何代码修改前必须先记录**,不能等代码改完才补。
83
- > ⚠️ **测试基础设施探测前置**:步骤 0 中必须首先执行"步骤 0.5 测试基础设施探测",探测完成前不得写任何 TDD 降级结论。
84
-
85
- 1. **确定变更名**:用 Glob 搜索 `.harness/changes/*/plans/*-plan.md`(**排除 `.harness/archive/*/`**),读取找到的 plan.md 的 YAML frontmatter,提取 `change-name`。默认最多一个未归档变更;如有多个,优先取最近修改的,或询问用户选择。
86
- 2. **读取并执行 worktree 决策**:读取 `.harness/changes/<change-name>/worktree.json`。如果 `requested=false`,在主目录执行;如果 `requested=true` 且 worktree 存在,必须 cd 到该 worktree;如果 `requested=true` 且 worktree 不存在,必须创建 worktree,创建失败则停止或询问用户是否改为主目录执行。禁止静默降级。
87
- 3. **读取计划文件(主任务源)**:`.harness/changes/<change-name>/plans/<change-name>-plan.md` → 获取任务列表和依赖关系
88
- 4. **读取详细计划(补充参考)**:`.harness/changes/<change-name>/plans/<change-name>-implementation-detail.md`(如存在)→ 获取详细执行说明
89
- 5. **读取设计文档**:`.harness/changes/<change-name>/spec/<change-name>-design.md` → 获取核心设计决策和不变项
90
- 6. **读取测试场景表**:`.harness/changes/<change-name>/plans/<change-name>-test-scenarios.md` → 获取测试真相源
91
- 7. **读取验证账本**:`.harness/changes/<change-name>/verification-ledger.json`(如存在)→ 复用已有 compile/unitTest 结果
92
- 8. **读取任务状态**:`.harness/changes/<change-name>/run-task-status.md`(如存在)→ 恢复上次运行状态
93
- 9. 确认 `项目规则(见 .harness/context-index.json)/` 规则已加载
94
- 10. **执行测试基础设施探测**(见下方"步骤 0.5")
95
- 11. 确认编译环境正常(`powershell.exe -Command "mvn compile -pl <module> -o -q"`)
96
- 12. **检查构建配置完整性**:如果在 worktree 中执行,确认构建配置文件(如 `.mvn/maven.config`、`settings.xml`、`gradle.properties` 等)存在。worktree 可能不包含主目录的构建配置,缺失时从主目录复制
97
- 13. **依赖模块预安装**:如果在 worktree 中执行,检查上游依赖模块是否已 `mvn install` 到本地仓库。缺失时先执行 `powershell.exe -Command "mvn install -pl <upstream-modules> -am -DskipTests -nsu"`
98
- 14. **代码探索优先用 codegraph_explore**:一次调用可获取多个相关符号的源码,替代逐个 Read 文件。违反 `项目 codegraph 规则` 规则逐个 Read 会浪费 3-5 分钟。仅在 codegraph 返回结果不完整时补充 Read
99
-
100
- ### 步骤 0.1:执行模式(默认 Inline)
101
-
102
- 默认 **Inline Execution**;仅 `--subagent` 强制 Subagent-Driven。**不询问**任务数/模块数(P1-5)。
103
-
104
- ### 步骤 0.5:测试基础设施探测(⚠️ 必须先于任何 TDD 降级结论)
105
-
106
- > **核心原则**:探测完成前,执行日志中只能写 `**测试基础设施**: CHECKING`,不得写任何降级结论。证据不足时禁止写"项目无测试基础设施""RED 降级""TDD 降级"。
107
-
108
- ### 探测流程
109
-
110
- 按顺序收集四项证据:
111
-
112
- **探测 1:src/test/java 目录是否存在**
113
- ```text
114
- # 用 Glob 或 Read 检查目标模块下是否有 src/test/java 目录
115
- ```
116
- - 结果:✅ 存在 / ❌ 不存在
117
-
118
- **探测 2:pom.xml 是否包含测试依赖**
119
- 检查目标模块的 `pom.xml`,搜索以下依赖:
120
- - `spring-boot-starter-test`
121
- - `junit` / `junit-jupiter`
122
- - `mockito` / `mockito-core` / `mockito-junit-jupiter`
123
- - 结果:✅ 包含关键测试依赖 / 🟡 部分包含 / ❌ 无测试依赖
124
-
125
- **探测 3:是否存在已有测试文件**
126
- 用 Glob 搜索目标模块的 `src/test/java/**/*Test*.java` 或 `src/test/java/**/*Tests*.java`
127
- - 结果:✅ 存在 N 个测试文件 / ❌ 无测试文件
128
-
129
- **探测 4:测试命令是否可运行**
130
- ```powershell
131
- powershell.exe -Command "mvn test -pl <module> -o -q"
132
- ```
133
- - 结果:✅ BUILD SUCCESS / ❌ 编译失败(记录失败原因)
134
-
135
- ### 探测结论
136
-
137
- 四项证据全部收集完毕后,汇总写入执行日志:
138
-
139
- ```markdown
140
- ### 测试基础设施探测结果
141
- - **src/test/java**: ✅ 存在 / ❌ 不存在
142
- - **测试依赖**: ✅ spring-boot-starter-test + junit + mockito / 🟡 部分包含 / ❌ 无
143
- - **已有测试文件**: ✅ N 个 / ❌ 无
144
- - **测试命令可运行**: ✅ BUILD SUCCESS / ❌ 失败(原因)
145
- - **结论**: ✅ 测试基础设施可用 / 🟡 测试基础设施部分可用 / ❌ 测试基础设施不可用
146
- ```
147
-
148
- - ✅ 可用 → 必须执行完整 TDD 流程
149
- - 🟡 部分可用 → 记录可用的部分和不可用的部分,降级不可用部分
150
- - ❌ 不可用 → TDD RED 降级为静态逻辑验证(见下方降级策略)
151
-
152
- ## RED:写测试(变更簇批量模式)
153
-
154
- > **TDD 不可跳过。** 如果测试基础设施探测结果为 ✅ 可用,RED 阶段必须写测试。如果探测结果为 ❌ 不可用,按下方降级策略执行。
155
- > **进入变更簇 RED 前必须执行原生 `run-tdd-protocol`**(详见 `../protocols.md#协议一run-tdd-protocol`),必须在写第一行测试代码或生产代码之前完成 RED 三态判定。
156
-
157
- 从场景表选取对应当前变更簇的测试用例:
158
-
159
- - **单元测试**(优先):JUnit 5 + Mockito,命名 `{方法名}_{场景}_{预期结果}()`,用 AssertJ `assertThat`
160
- - **接口测试**(必要时代码逻辑已覆盖即可,实际 HTTP 调用留给 `harness-test`)
161
- - **多个测试类合并到一次 Maven 命令执行**:`mvn test -pl <module> -Dtest=TestA,TestB,TestC -o`
162
-
163
- ### RED 有效性判定(⚠️ 必须逐项确认)
164
-
165
- RED 不是"测试失败"即可通过,必须确认失败原因与目标 bug/需求直接相关。
166
-
167
- **有效 RED(✅ 允许进入 GREEN)**:
168
- - 测试编译通过
169
- - 目标测试失败
170
- - 失败断言指向目标业务行为(如 `assertThat(result.getEnabledIndicators()).isNotEmpty()` 失败)
171
- - 失败信息能对应本次 bug 或需求(如"期望返回非空列表,但实际返回空列表")
172
-
173
- **无效 RED(❌ 禁止进入 GREEN,必须先修测试)**:
174
- - 测试编译失败(语法错误、import 缺失等)
175
- - **测试直接调用 private 方法导致编译失败**
176
- - **因 private 访问限制导致失败**
177
- - mock/stubbing 错误(如 `UnnecessaryStubbingException`、`PotentialStubbingProblem`)
178
- - `NoSuchBeanDefinitionException`(Spring 上下文加载失败)
179
- - `NullPointerException` 来自测试搭建错误(如未 mock 依赖、未初始化测试数据)
180
- - 不必要 stubbing
181
- - 依赖缺失(如测试依赖的类/method 尚未创建)
182
- - 测试数据非法导致前置校验失败(如必填字段为空、格式校验不通过)
183
- - 失败原因与目标 bug 无关(如测试的是另一个方法的逻辑)
184
-
185
- **RED 必须优先通过 public API / public service method / controller behavior 验证**。private 方法只作为实现细节,测试应通过 `createRule` / `updateRule` / `copyRule` / `activateVersion` / `getEnabledList` 等公共行为间接验证。**不得把"访问 private 方法失败"记录为有效 RED。**
186
-
187
- **判定流程**:
188
- 1. 运行测试
189
- 2. 查看失败输出
190
- 3. 逐条对照上述清单判定
191
- 4. 写入执行日志:`RED: ✅有效 / 🟡部分有效 / ❌无效`
192
- 5. 记录失败原因
193
- 6. 记录是否允许进入 GREEN
194
-
195
- **如果出现无效 RED**:
196
- 1. 必须先修复测试问题(补充 mock、修正 stub、修复测试数据等)
197
- 2. 重新运行测试确认 RED 有效
198
- 3. 只有有效 RED 后才允许进入 GREEN 阶段
199
- 4. **禁止在无效 RED 后进入生产代码修改**
200
-
201
- **greenfield 大重写的 RED 处理**:
202
-
203
- 当变更簇新建多个此前不存在的方法/类(典型:store/repository/service 大规模重写),新方法未实现时测试会抛 NullPointerException/NoSuchBeanDefinitionException("依赖缺失"类无效 RED)。逐方法写"返回错误值的桩"以获得 clean 断言失败,在方法数多时成本过高且桩代码一次性丢弃。处理决策:
204
-
205
- | 条件 | 处理 |
206
- |---|---|
207
- | 新方法 ≤ 2-3 个,或簇内有部分已存在方法 | 仍须写桩,确保 RED 是 clean 断言失败(变更簇范式) |
208
- | 新方法多(如 10+)、桩成本过高、**且有集成/端到端测试覆盖该簇行为** | 允许 `🟡RED-skip(原因)`,直接写测试+实现+GREEN 验证 |
209
-
210
- 允许 RED-skip 时必须:① 执行日志记 `RED: 🟡RED-skip(greenfield 大重写,N 个新方法,由 <集成测试名> 覆盖)`;② GREEN 后必须跑该簇测试 + 集成测试全过;③ **不得用于"mock 复杂/配置麻烦"等非 greenfield 场景**(见下方"私有方法/mock 复杂降级决策表")。
211
-
212
- ### 低价值 TDD 豁免策略
213
-
214
- 以下变更**不得强制单独建立测试类并单独 Maven 验证**:
215
-
216
- | 变更类型 | 验证方式 | 说明 |
217
- |----------|----------|------|
218
- | ErrorCode 常量 | compile 验证 + 被高层测试间接覆盖 | 禁止为单个错误码新增独立测试类 |
219
- | VO/DTO 字段 | 被 service/API 测试间接覆盖 | 字段赋值和序列化由上层测试保证 |
220
- | 注释 | compile 验证 | 不影响运行时行为 |
221
- | import 清理 | compile 验证 | 不影响运行时行为 |
222
- | 格式化 | compile 验证 | 不影响运行时行为 |
223
- | SQL 迁移脚本 | 静态审查 + harness-test DB 验证 | 不做 TDD,生成审查清单 |
224
- | 配置模板 | 静态审查 | 部署时生效 |
225
- | 文档文件 | 静态审查 | 不涉及代码 |
226
-
227
- ### 行为性修改不属豁免(新增逻辑分支必须 RED)
228
-
229
- 正则/条件/分支逻辑变更新增的逻辑分支**不属上表豁免**,必须有对应 RED 验证该分支行为,不得仅靠现有测试覆盖省略。现有测试只证明"原有行为未回归",不替代"新分支有测试"。例:正则新增 UNC 拦截分支,须构造 UNC 路径先 RED(旧正则漏检)再 GREEN(新正则拦截),原有 `../` 测试覆盖不到新分支。详见 SKILL.md 规则七「行为性修改新分支必须 RED」。
230
-
231
- ### Mapper 查询条件验证规则
232
-
233
- Mapper 查询条件、LambdaQueryWrapper、SQL/XML 查询逻辑,**不得通过纯 Mock 返回值来宣称自动化测试通过**。
234
-
235
- **低价值 Mock 测试(应标记为 🟡静态验证)**:
236
- - Mock mapper 返回期望列表
237
- - 测试只验证 service 返回了 mock 数据
238
- - 没有验证实际 SQL / Wrapper 条件
239
- - 无法证明 `.eq(activeFlag, true)` 等查询条件存在
240
-
241
- **推荐验证方式**:
242
- 1. run 阶段标记为 🟡静态验证
243
- 2. test 阶段通过真实 DB / 接口验证
244
- 3. 如果必须自动化,使用真实 mapper(非 mock)或可检查 wrapper 条件的测试方式
245
-
246
- **禁止把纯 Mock Mapper 测试计入"Mapper 查询条件已自动化测试通过"。**
247
-
248
- ### 私有方法 / mock 复杂的降级决策表
249
-
250
- > 私有方法不能直接测试,但必须优先寻找公共行为入口测试。"mock 复杂"不是直接跳过测试的充分理由。
251
-
252
- 跳过自动化测试前必须完成此决策表:
253
-
254
- | 问题 | 结果 |
255
- |---|---|
256
- | 是否存在公共方法可测? | 是/否 |
257
- | 是否可通过 mapper/mock 构造? | 是/否 |
258
- | 是否可通过 mockStatic 构造? | 是/否 |
259
- | 是否可写轻量集成测试? | 是/否 |
260
- | 跳过自动化测试的具体阻塞点 | ... |
261
- | 后续必须由哪个阶段验证 | harness-test / 手工接口 / 部署验证 |
262
-
263
- 如果只是"配置麻烦"或"mock 复杂",不得直接跳过。对 DTO 字段、分页返回、权限过滤、组织过滤等用户可见行为,必须优先写公共行为测试。
264
-
265
- ### TDD 降级策略
266
-
267
- 当项目无测试基础设施时,RED 阶段降级为"静态逻辑验证":
268
-
269
- 1. **在执行日志中记录降级原因**:必须包含三项信息
270
- - 为什么降级(如:`TDD RED 降级:模块 <module> 无 src/test/java 目录` 或 `pom.xml 缺少 spring-boot-starter-test 依赖`)
271
- - 哪些场景只做了静态验证(列出场景编号清单)
272
- - 哪些场景需要部署后验证(列出场景编号清单)
273
- 2. 对每个任务,从场景表中选取相关场景,**在执行日志和覆盖报告中标注静态验证关系**(如 `执行日志:UT-001 通过静态验证 — 检查 IndicatorServiceImpl.getEnabledIndicators 已添加组织过滤逻辑`)。**不得在业务代码注释中标注覆盖关系**,避免污染业务代码
274
- 3. GREEN 阶段完成后,对照场景表逐条确认代码逻辑已覆盖(不运行测试,只做静态检查)
275
- 4. 在场景覆盖检查中标注三类状态:
276
- - ✅ 已测试通过(仅在测试基础设施可用且测试已运行通过时使用)
277
- - 🟡 静态验证通过,未真实测试(TDD 降级时使用)
278
- - ❌ 未覆盖 / 未验证(场景未对应代码逻辑或需端到端验证)
279
- 5. 输出必须明确写成:
280
- - "🟡 静态逻辑验证通过"
281
- - "未执行真实单元测试"
282
- - "待测试基础设施补齐后运行 harness-test"
283
- 6. **禁止写成**:"测试全部通过"、"测试通过 N/N"、"覆盖率 100%"等含暗示真实测试已运行的表述
284
- 7. 提示用户在测试基础设施就绪后补充运行 `harness-test`
285
-
286
- ## GREEN:最简实现
287
-
288
- 写最少代码让测试通过。关键约束:
289
- - Controller 只做参数校验和路由
290
- - Service 是唯一业务逻辑层
291
- - 统一返回 `Result<T>`
292
- - 集合返回空集合,不返回 null
293
- - 日志用 Slf4j,不用 System.out
294
- - 新增字段允许为空(兼容旧数据)
295
-
296
- ## REFACTOR:重构
297
-
298
- 在测试保护下重构代码结构。关键约束:
299
- - 重构后重新运行测试确认全部通过
300
- - 清理过程性注释(如 `// 修复分页查询缺项目类型 Bug`),改写为稳定业务规则描述或删除
301
- - 检查代码注释污染:生产代码中不得保留解释"本次 bug 修复"的临时注释
302
-
303
- ## GREEN 后反模式自检(内置清单)
304
-
305
- > 如果 `run-tdd-protocol` 已按真实 RED 执行,此步骤可跳过(已包含在 TDD 流程中)。
306
- > 如果执行静态 RED 或降级,使用以下内置清单作为替代。
307
-
308
- GREEN 阶段完成后,对照以下反模式清单自检:
309
-
310
- ```
311
- □ 测试不依赖网络或外部服务(应用 mock 替代)
312
- □ 无断言链(一个测试方法只断言一个行为,不用多个 assert 串联)
313
- □ 测试不验证实现细节(只验证公共行为,不验证私有方法调用)
314
- □ 测试命名表达意图({方法名}_{场景}_{预期结果})
315
- □ 每个测试方法独立,不依赖执行顺序
316
- □ 测试数据自包含(不依赖其他测试创建的数据)
317
- □ 无 sleep/硬编码等待(用 Awaitility 或条件判断替代)
318
- □ 测试覆盖正常路径 + 异常路径 + 边界值
319
- ```
320
-
321
- ## 编译失败的处理策略
322
-
323
- 不是所有编译错误都需要修复。先判断是否与本次变更相关:
324
-
325
- | 错误类型 | 判断方法 | 处理 |
326
- |----------|----------|------|
327
- | 找不到符号(新代码) | 检查类路径和 import | 修复 |
328
- | 找不到符号(已有代码) | 对比 git diff | 与本次变更无关 → 跳过 |
329
- | 依赖缺失 | 如 import 了错误的包路径 | 修复导入路径 |
330
- | settings.xml 乱码 | Maven 输出含乱码字符 | 改用相对路径 |
331
- | 子模块 POM 无 parent | 非本模块的编译错误 | 用 `-pl` 跳过无关模块 |
332
-
333
- > 关键是:不要因为一个不相关的模块编译失败就阻塞整个开发流程。
334
-
335
- ## Maven 批量验证策略
336
-
337
- harness-run 必须减少 Maven 启动次数。
338
-
339
- **默认策略**:
340
- 1. 每个变更簇最多执行一次 RED Maven、一次 GREEN Maven
341
- 2. 多个测试类合并到一次 Maven 命令:`mvn test -pl <module> -Dtest=TestA,TestB,TestC -o`
342
- 3. 不得每新增一个测试类就立即单独跑一次 Maven
343
- 4. 最终 compile 只执行一次
344
- 5. 如果前面已有 compile 成功证据,最终 compile 可复用 verification-ledger
345
-
346
- **禁止**:
347
- ```
348
- TestA RED → TestA GREEN → TestB RED → TestB GREEN → TestC RED → TestC GREEN
349
- ```
350
- **应改为**:
351
- ```
352
- TestA+TestB+TestC RED → 实现相关代码 → TestA+TestB+TestC GREEN → 最终 compile
353
- ```
354
-
355
- ## Maven 证据规则
356
-
357
- 如果使用 `-q` quiet 模式:
358
- - 根据 exit code 0 判断命令成功
359
- - 报告中必须写 `exitCode=0`
360
- - **不得写"BUILD SUCCESS"**,除非输出中真实出现 BUILD SUCCESS
361
-
362
- 最终报告推荐格式:
363
- - `mvn compile -q`: ✅ exitCode=0,无错误输出
364
- - `mvn compile`: ✅ BUILD SUCCESS
365
-
366
- 最终 evidence 命令优先不用 `-q`,或者同时记录 exit code。
367
-
368
- ## 预存变更隔离
369
-
370
- 如果 harness-run 开始时检测到已有未提交变更,并且用户选择保留,必须创建 baseline。
371
-
372
- ### baseline 文件
373
-
374
- **pre-existing-files.json**:
375
- ```json
376
- {
377
- "detectedAt": "YYYY-MM-DD HH:mm:ss",
378
- "userChoice": "keep | stash | abort",
379
- "allowSubmit": false,
380
- "files": [
381
- {
382
- "path": "relative/path/to/file.java",
383
- "diffHash": "sha256:...",
384
- "inPlan": false
385
- }
386
- ]
387
- }
388
- ```
389
-
390
- **pre-existing-diff.patch**:完整 `git diff` 输出保存为 patch 文件。
391
-
392
- ### 变更来源区分
393
-
394
- 结束时必须在输出中区分:
395
-
396
- | 文件 | 来源 | 是否计划内 | 是否允许提交 |
397
- |---|---|---|---|
398
- | A.java | 本次 run 修改 | 是 | 是 |
399
- | B.java | run 前预存变更 | 否/未知 | 需用户确认 |
400
-
401
- 如果存在预存变更,最终结果至少为 🟡WARN。
402
-
403
- ## SQL 迁移任务处理
404
-
405
- SQL 迁移脚本不做 TDD,也不自动执行。
406
-
407
- ### run 阶段处理
408
-
409
- 1. 尽早生成 SQL 脚本
410
- 2. 在脚本头部标注:
411
- ```sql
412
- -- ⚠️ 人工审查后手动执行,禁止自动运行
413
- -- 变更: <change-name>
414
- -- 生成时间: YYYY-MM-DD HH:mm
415
- ```
416
- 3. 生成 SQL 审查清单
417
- 4. 在 run-task-status 中标记 NEEDS_DB_VALIDATION
418
-
419
- ### SQL 审查清单模板
420
-
421
- | # | 检查项 | 结果 |
422
- |:--:|--------|:---:|
423
- | 1 | DROP INDEX 是否存在 IF EXISTS 或等效检查 | ✅/❌ |
424
- | 2 | 新索引名称 | <名称> |
425
- | 3 | 新索引字段 | <字段列表> |
426
- | 4 | 是否包含 deleted_time | 是/否 |
427
- | 5 | 是否兼容已有数据 | 是/否/需验证 |
428
- | 6 | 是否包含历史数据修正 | 是/否 |
429
- | 7 | 是否需要备份 | 是/否 |
430
- | 8 | 是否需要回滚 SQL | 是/否 |
431
-
432
- SQL 相关任务状态:🟡 NEEDS_DB_VALIDATION,**不得标记为完全自动化测试通过**。
433
-
434
- ## 最终状态分级
435
-
436
- ### ✅OK
437
- - 所有计划内代码变更完成
438
- - 关键 P0 场景已自动化测试通过
439
- - compile 成功
440
- - 无预存变更或预存变更已明确隔离
441
- - 无非计划文件混入
442
- - 无 P0 静态-only 场景
443
-
444
- ### 🟡WARN
445
- - 存在 P0/P1 场景仅静态验证,需 harness-test
446
- - 存在预存变更
447
- - SQL 脚本需要人工执行或 DB 验证
448
- - Mapper/SQL 查询只做静态验证
449
- - 使用了低价值 Mock 替代真实验证
450
- - compile/test 成功但仍需接口/DB 验证
451
-
452
- ### ❌FAIL
453
- - compile 失败
454
- - 有效测试失败
455
- - RED 无法建立
456
- - 非计划文件被修改且无法解释
457
- - git diff --check 失败
458
-
459
- 如果存在 SQL 迁移、接口验证、DB 验证未完成,最终不得输出纯 ✅OK,应输出:
460
- 🟡WARN:编码完成,需 harness-test 验证剩余 DB/API 场景。
461
-
462
- ## 步骤 2:编译验证(默认轻量,按需全量 test)
463
-
464
- > **轻量验证职责**:`/harness-run` 默认只做开发反馈,不默认跑全量 `mvn test`。是否跑全量 test 按下方条件判断。
465
-
466
- ### 2a. 编译验证(始终执行)
467
-
468
- ```powershell
469
- powershell.exe -Command "mvn compile -pl <module> -o"
470
- ```
471
- 优先不用 `-q`,以获取 BUILD SUCCESS 证据。如果使用 `-q`,报告中写 `exitCode=0`。
472
-
473
- ### 2b. 全量 mvn test(仅当满足触发条件时执行)
474
-
475
- 默认**跳过**全量 `mvn test`,把完整单元测试留给 `/harness-test`。仅当满足以下任一条件时才在本阶段执行 `mvn test -pl <module> -o`:
476
-
477
- - 修改了公共模块(被多模块依赖的 common/utils 等)
478
- - 修改了 mapper / sql / xml
479
- - 修改了权限 / 认证 / 组织过滤逻辑
480
- - 修改了 controller / VO / DTO
481
- - 用户要求 `full-run-validation`
482
- - 用户不打算继续运行 `/harness-test`(run 需自证 P0 场景)
483
-
484
- ```powershell
485
- powershell.exe -Command "mvn test -pl <module> -o"
486
- ```
487
-
488
- **编译/测试成功必须有明确证据**:
489
- - `mvn compile`(无 `-q`)输出必须包含 `BUILD SUCCESS` 才能宣称"编译成功"
490
- - `mvn compile -q`:根据 exit code 0 判断,报告中写 `✅ exitCode=0`
491
- - `mvn test` 输出必须包含 `Tests run: N, Failures: 0, Errors: 0` 才能宣称"测试通过"
492
- - 如果命令被 hook 拒绝,**必须停止流程或切换 PowerShell 重试**,不得继续宣称"成功"
493
- - 如果 exit code 非 0 或无有效 stdout,标记为 ❌ 编译失败 / 状态未知
494
- - 如果是 TDD 降级(无测试基础设施),mvn test 步骤跳过,标记 🟡 静态验证
495
-
496
- ### 2c. 写入 verification-ledger
497
-
498
- 步骤 2 完成后**必须**写入/更新 `.harness/changes/<change-name>/verification-ledger.json`:
499
-
500
- - `compile` 项:始终写入(status / command / scope / evidence / 时间戳 / durationMs)
501
- - `unitTest` 项:仅当 2b 执行了全量 mvn test 时写入(testsRun / failures / errors / skipped / evidence);未执行时标记 `{"status": "NOT_RUN_BY_RUN", "note": "轻量验证,全量单元测试由 harness-test 执行"}`
502
- - 顶层写入 `diffHash` / `currentHead` / `baseCommit` / `module` / `profile`
503
- - `baseCommit`:merge-base 或计划起点(worktree 分支从主分支分出点,由 harness-plan 写入、run 读取复用;缺失时用 `git merge-base HEAD <默认分支>` 兜底)
504
- - `currentHead`:`git rev-parse HEAD`(步骤 2c 在 Step 5 checkpoint commit 之前执行,此时 HEAD==baseCommit;commit 后 HEAD 前移到 checkpoint commit,由 ledger-protocol reuse 规则 #2「currentHead 可前移」容忍,**不需为它改时序**)
505
- - `diffHash`:**必须用 ledger-protocol「五、真实 diffHash」的 commit-invariant 三部分合并命令**(与 harness-test 重算命令逐字一致),**禁止仅用 `git diff`(未提交)**。命令如下(经 `Bash(powershell.exe:*)` 通道时外层用单引号防 `$base` 展开,见 ledger-protocol 五):
506
-
507
- ```powershell
508
- powershell.exe -NoProfile -Command "$base = '<baseCommit>'; $patch = '.harness/changes/<change>/runtime/current-diff.patch'; & { git diff $base HEAD --binary; git diff --binary; git ls-files --others --exclude-standard | ForEach-Object { Get-Content -Raw -LiteralPath $_ } } | Out-File -Encoding utf8 $patch; (Get-FileHash $patch -Algorithm SHA256).Hash"
509
- ```
510
-
511
- > ⚠️ **commit 前时序陷阱(真实教训)**:步骤 2c 在 Step 5 checkpoint commit **之前**执行,此时 `git diff $base HEAD` 部分为空(HEAD==baseCommit),只有"未提交 + 未跟踪"是全量。**即使第一部分为空也必须保留三部分合并**——commit 后第一部分被填充、未提交/未跟踪变空,两者内容相同 → diffHash 一致。若省略第一部分只用未提交 diff,commit 后未提交变空 → diffHash 变化 → run→test 复用链断裂(真实日志:run 产出非规范 `8a94c874` 即因此,test 重算 `b4c580fc` 不一致,被迫重跑全量单元测试)。
512
-
513
- > ⚠️ **禁止任何单部分简化(堵字面空子)**:上述教训只点了"仅用未提交 diff"。实际还有两种等价违规简化,均**禁止**:
514
- > - `git diff <base> HEAD --binary`(仅已提交部分):commit 后工作树 clean 时结果偶然与三部分合并一致,但 commit 前算会漏未提交+未跟踪,且方法本身违反"三部分合并"要求。
515
- > - `node -e "...crypto.createHash('sha256')..."` 自算:绕过 PowerShell 三部分合并命令,且无法捕获未跟踪文件内容。
516
- >
517
- > 无论 commit 前后、无论工作树是否 clean,**必须**用三部分合并命令。"commit 后 clean 致单部分偶然等价"不得作为省略三部分的依据——时序或工作树状态一旦变化即复现复用链断裂。
518
-
519
- > 这样 harness-test 的 Phase 1 可读取 ledger 判断是否复用 run 的 unitTest(diffHash commit-invariant + reuse 规则 #2 允许 HEAD 前移 → run 的 checkpoint commit 不破坏复用),submit/package 也可复用 compile 结果。详见 `../protocols/ledger-protocol.md`。
520
-
521
- ## 步骤 3.5:权限/组织过滤类变更 — 安全矩阵
522
-
523
- > 凡是修改了以下逻辑,必须强制生成安全矩阵。如果任一权限边界的预期不明确,不允许标记 harness-run 为 ✅OK。
524
-
525
- ### 触发条件
526
-
527
- 修改了以下任一逻辑即触发:
528
- - 管理员 / 非管理员判断
529
- - 组织编码 orgCode 过滤
530
- - token 中的组织
531
- - 请求参数中的组织
532
- - 数据权限
533
- - 越权异常
534
- - public/common 数据可见性
535
-
536
- ### 安全矩阵模板
537
-
538
- | 角色 | token orgCode | 请求 orgCode | projectType | 预期结果 | 覆盖状态 |
539
- |---|---|---|---|---|---|
540
- | 超级管理员 | 空 | 空 | 有 | 查全部 | ✅/🟡/❌ |
541
- | 超级管理员 | 空 | 空 | 无 | 查全部 | ✅/🟡/❌ |
542
- | 超级管理员 | 其他组织 | 指定组织 | 有 | 按请求组织查询 | ✅/🟡/❌ |
543
- | 超级管理员 | 其他组织 | 指定组织 | 无 | 按请求组织查询 | ✅/🟡/❌ |
544
- | 非管理员 | 本组织 | 本组织 | 有 | 允许 | ✅/🟡/❌ |
545
- | 非管理员 | 本组织 | 本组织 | 无 | 允许 | ✅/🟡/❌ |
546
- | 非管理员 | 本组织 | 其他组织 | 有 | 拒绝 | ✅/🟡/❌ |
547
- | 非管理员 | 本组织 | 其他组织 | 无 | 拒绝 | ✅/🟡/❌ |
548
- | 非管理员 | 空 | 指定组织 | 有 | 必须明确:拒绝/允许/依赖上游保证 | ✅/🟡/❌ |
549
- | 非管理员 | 空 | 指定组织 | 无 | 必须明确:拒绝/允许/依赖上游保证 | ✅/🟡/❌ |
550
- | 非管理员 | 本组织 | 空 | 有 | 按本组织过滤 | ✅/🟡/❌ |
551
- | 非管理员 | 本组织 | 空 | 无 | 按本组织过滤 | ✅/🟡/❌ |
552
-
553
- ### 判定规则
554
-
555
- - 如果任一权限边界的预期不明确(如"非管理员+token空+指定组织"场景未明确是拒绝还是允许),则必须标记为 ❌未验证,且不允许标记 harness-run 为 ✅OK
556
- - 每个场景的覆盖状态必须真实标注:✅ 自动化测试通过 / 🟡 静态检查未真实测试 / ❌ 未验证
557
- - 安全矩阵必须写入执行日志
558
-
559
- ## 步骤 4:关门检查(⚠️ 结束前强制执行)
560
-
561
- 在输出最终总结前,必须执行并展示以下 10 项检查:
562
-
563
- ### 1. git status --porcelain
564
- ```powershell
565
- powershell.exe -Command "git -C '<project-path>' status --porcelain"
566
- ```
567
- 展示所有变更文件列表。
568
-
569
- ### 2. git diff --stat
570
- ```powershell
571
- powershell.exe -Command "git -C '<project-path>' diff --stat"
572
- ```
573
- 展示变更统计。
574
-
575
- ### 3. git diff --check
576
- ```powershell
577
- powershell.exe -Command "git -C '<project-path>' diff --check"
578
- ```
579
- 检查空白字符冲突。**如果此命令失败 → 最终结果必须是 ❌FAIL**。
580
-
581
- ### 4. 变更文件是否全部在计划范围内
582
- 对照 plan.md 的任务描述,确认每个变更文件都在计划范围内。
583
-
584
- ### 5. 是否新增/修改了测试文件
585
- 如果探测到测试基础设施可用但未新增/修改测试文件,必须记录原因。
586
-
587
- ### 6. 是否误改 .harness/ 以外的非计划文件
588
- 如果有非计划文件变更 → 至少 🟡WARN,并要求用户确认。
589
-
590
- ### 7. conflict marker 检查
591
- 搜索以下模式(用 Grep):
592
- - `<<<<<<<`
593
- - `=======`
594
- - `>>>>>>>`
595
-
596
- 如果命中 → 最终结果必须是 ❌FAIL。
597
-
598
- ### 8. 临时 debug 检查
599
- 搜索以下模式(用 Grep):
600
- - `System.out.println`
601
- - `console.log`
602
- - `debugger`
603
- - 临时 `TODO` / `FIXME`(不含计划中的 TODO)
604
-
605
- 如果命中 → 在 REFACTOR 阶段清理。
606
-
607
- ### 9. 敏感信息检查
608
- 搜索以下模式(用 Grep):
609
- - `password`
610
- - `token`
611
- - `secret`
612
- - `accessKey`
613
- - 私有 IP 地址
614
- - 内部 URL(如非必要不得新增)
615
-
616
- 如果命中且非必要 → 必须清理后再标记完成。
617
-
618
- ### 10. 代码注释污染检查
619
- 搜索以下模式(用 Grep):
620
- - `// 修复` + `Bug`
621
- - `// 本次` + `变更` / `修改`
622
- - `// 新增` + `功能` / `字段`
623
- - 其他解释"本次变更过程"的临时注释
624
-
625
- 如果命中 → 在 REFACTOR 阶段清理或改写为稳定业务规则描述。
626
-
627
- ### 关门检查结果模板
628
-
629
- ```markdown
630
- ## 关门检查结果
631
- - git status --porcelain: ✅/❌
632
- - git diff --stat: ✅/❌
633
- - git diff --check: ✅/❌(❌ → 最终结果 ❌FAIL)
634
- - 变更文件在计划内: ✅/❌
635
- - 新增/修改测试文件: ✅/❌/🟡不适用(TDD降级)
636
- - 非计划文件变更: ✅无/❌有(❌ → 🟡WARN)
637
- - conflict marker: ✅无/❌有(❌ → ❌FAIL)
638
- - 临时 debug: ✅无/🟡有已清理/❌有未清理
639
- - 敏感信息: ✅无/❌有(❌ → 必须清理)
640
- - 代码注释污染: ✅无/🟡有已清理/❌有未清理
641
- ```
642
-
643
- ## 步骤 5:计划状态持久化
644
-
645
- 如果 `.harness/changes/<change>/plans/*.md` 是任务来源,则 harness-run 完成任务后必须持久化任务状态。
646
-
647
- ### 持久化方式
648
-
649
- **方式一(推荐)**:更新 plan.md 中的任务状态
650
-
651
- 在 plan.md 的任务列表中,为每个任务追加状态标记:
652
-
653
- ```markdown
654
- ### Task 1: 修复分页查询缺项目类型 Bug
655
- - **状态**: ✅ DONE_AUTOMATED_TESTED
656
- - **测试**: UT-001~005 已通过
657
- ```
658
-
659
- **方式二**:新增 `run-task-status.md`
660
-
661
- 在 `.harness/changes/<change-name>/run-task-status.md` 中记录:
662
-
663
- ```markdown
664
- # Run Task Status — <change-name>
665
- ## 执行时间: YYYY-MM-DD HH:MM
666
-
667
- | 任务 | 状态 | 测试场景 | 待验证 |
668
- |------|------|----------|--------|
669
- | Task 1 | ✅ DONE_AUTOMATED_TESTED | UT-001~005 | - |
670
- | Task 2 | 🟡 DONE_STATIC_ONLY | UT-006~010 | harness-test |
671
- | Task 3 | 🟡 DONE_NEEDS_INTERFACE_TEST | API-001~003 | harness-test |
672
-
673
- ## 待验证场景汇总
674
- - UT-006~010: 静态验证通过,需 harness-test 接口验证
675
- - API-001~003: 接口逻辑已覆盖,需 harness-test 真实 HTTP 验证
676
- ```
677
-
678
- ### 状态定义
679
-
680
- - ✅ **DONE_AUTOMATED_TESTED**:自动化测试通过,mvn test 输出 Failures: 0
681
- - 🟡 **DONE_STATIC_ONLY**:仅静态代码逻辑审查通过,未运行真实测试
682
- - 🟡 **DONE_NEEDS_INTERFACE_TEST**:代码逻辑已实现,需接口级验证
683
- - ❌ **FAILED**:编译失败或测试失败,需修复
684
-
685
- ### 规则
686
-
687
- - 不允许只在对话里说"任务完成"但不写入任何持久化文件
688
- - 后续 harness-test 和 harness-review 必须能从持久化状态识别哪些场景仍待验证
689
-
690
- ## 步骤 3:场景覆盖检查
691
-
692
- 对照场景表,逐条确认代码逻辑已覆盖,**并将覆盖结果展示给用户**。**状态必须三类标注**:
693
-
694
- - ✅ **已测试通过**:测试基础设施可用且测试已实际运行通过(mvn test 输出 Tests run + Failures: 0)
695
- - 🟡 **静态检查通过,未真实测试**:TDD 降级,仅做代码逻辑静态检查。**不得计入"已测试通过"**
696
- - ❌ **未覆盖 / 未验证**:场景未对应代码逻辑或需端到端验证
697
-
698
- ### 静态验证不等于测试覆盖(⚠️ 关键规则)
699
-
700
- 1. 🟡 静态检查 **不得计入"已测试通过"**
701
- 2. 如果任一 P0 场景仅静态验证,则 harness-run 最终结果必须是:
702
- `🟡WARN:编码和编译完成,但存在 P0 场景未真实验证`
703
- 3. 只有所有 P0 场景都有自动化测试或真实接口验证时,最终结果才能是:
704
- `✅OK成功`
705
- 4. **最终摘要禁止写**:`5✅ + 17🟡 = 22/22`
706
- 5. **最终摘要必须写**:
707
- ```
708
- 自动化测试通过: 5
709
- 静态检查未真实验证: 17
710
- 未验证: 0
711
- harness-run 结果: 🟡WARN,必须进入 harness-test 后才能 submit
712
- ```
713
-
714
- > 展示格式示例:
715
- > ```
716
- > ### 场景覆盖检查
717
- > - ✅ UT-001~005: getEnabledIndicators 正常/异常/边界场景已测试通过
718
- > - 🟡 UT-006~010: getIndicatorPage 分页场景静态验证通过,待测试基础设施补齐后运行 harness-test
719
- > - ❌ UT-011~015: getIndicatorByCode 场景未覆盖,需补充测试用例
720
- > - ✅ API-001~005: enabled 接口场景代码逻辑已覆盖(接口测试待 harness-test 验证)
721
- > - ✅ COM-001~005: SQL 迁移脚本覆盖
722
- > - 🟡 INT-001~004: 需端到端部署验证
723
- > ```
724
- >
725
- > **最终汇总**:
726
- > ```
727
- > 自动化测试通过: 5
728
- > 静态检查未真实验证: 17
729
- > 未验证: 0
730
- > harness-run 结果: 🟡WARN,必须进入 harness-test 后才能 submit
731
- > ```
732
-
733
- ## 输出示例
734
-
735
- ```markdown
736
- ## 编码完成 — <功能名>
737
-
738
- ### 变更文件 (N 个)
739
- | 文件 | 类型 | 说明 |
740
- |------|:----:|------|
741
- | xxx.java | 新增 | ... |
742
- | xxx.java | 修改 | ... |
743
-
744
- ### 编译验证
745
- - mvn compile: ✅ BUILD SUCCESS(如证据明确) / 🟡 静态验证 / ❌ 命令被拒绝/失败
746
- - mvn test: ✅ N tests run, 0 failures(如证据明确) / 🟡 未执行真实测试,仅静态验证 / ❌ 命令被拒绝/失败
747
-
748
- ### 场景覆盖
749
- - 自动化测试通过: K
750
- - 静态检查未真实验证: M
751
- - 未验证: P
752
- - harness-run 结果: ✅OK成功 / 🟡WARN,必须进入 harness-test 后才能 submit
753
-
754
- ### 关门检查结果
755
- - git status --porcelain: ✅/❌
756
- - git diff --stat: ✅/❌
757
- - git diff --check: ✅/❌
758
- - 变更文件在计划内: ✅/❌
759
- - 新增/修改测试文件: ✅/❌/🟡不适用
760
- - 非计划文件变更: ✅无/❌有
761
- - conflict marker: ✅无/❌有
762
- - 临时 debug: ✅无/🟡有已清理
763
- - 敏感信息: ✅无/❌有
764
- - 代码注释污染: ✅无/🟡有已清理
765
-
766
- ### 计划状态持久化
767
- - 状态已写入: `.harness/changes/<change-name>/run-task-status.md`
768
-
769
- ### 下一步
770
- > ⚠️ 如果存在 P0 场景为 🟡静态验证,下一步必须且只能是 harness-test。
771
-
772
- 运行 `/harness-test` 验证剩余 P0 场景。
773
- 在 harness-test 通过前,不建议也不应进入 `/harness-submit`。
774
- ```
775
-
776
- ## 关键原则
777
-
778
- - 增量编译优先:`powershell.exe -Command "mvn compile -pl <module> -o -q"`(不用 clean,用离线模式加速)
779
- - 编译失败不盲目重试:先分析错误类型,再针对性修复
780
- - 与本次变更无关的编译错误记录但跳过,不要阻塞流程
781
- - SQL 变更只生成脚本,不自动执行;脚本保存到 `.harness/changes/<change-name>/sqls/`
782
- - 不在代码或日志中输出明文 Token/密码(遵循 `../protocols/sensitive-info-protocol.md`)
783
- - **TDD 降级时不得伪装为真实测试通过**(遵循 `../protocols/evidence-based-reporting-protocol.md`)
784
- - **编译/测试结论必须有证据绑定**:BUILD SUCCESS / Tests run + 0 Failures / 实际文件存在 / exit code 0
785
- - **长时间命令处理**:`mvn compile` 和 `mvn test` 可能需要 1-5 分钟。使用后台执行或等待完成,不要在等待中超时停顿要求用户发"继续"
786
-
787
- ## 执行日志记录
788
-
789
- `/harness-run` 只向 `events.ndjson` 追加事件(schema_version 2);`logs/execution-log.md` 由 `harness_events.py append` 自动渲染。步骤 0 之前 append `phase.start`;各阶段写入 `command` / `verification` / `decision` / `issue`,人类可读摘要放 `note`。详见 [[../../protocols/report-pipeline-protocol.md|report-pipeline-protocol]] 与 core `harness-run/SKILL.md`。
790
-
791
- ## verification-ledger 可复用判定
792
-
793
- 后续阶段只有在以下字段齐全且匹配时才允许复用:
794
-
795
- - `diffHash`
796
- - `currentHead`
797
- - `baseCommit`
798
- - `module`
799
- - `profile`
800
- - `validations.<type>.status`
801
- - 明确证据:`BUILD SUCCESS` / `Tests run: N, Failures: 0, Errors: 0` / `exitCode=0`
802
-
803
- 缺任一字段:`ledgerReusable=false`。
804
-
805
- ## Mapper @Select / JOIN / IPage 真实验证要求
806
-
807
- `@Select`、JOIN、DISTINCT、IPage 分页、SQL/XML 变更在 run 阶段只能标记 🟡DONE_STATIC_ONLY,必须交给 harness-test 真实 DB/API 验证:
808
-
809
- - SQL 可执行;
810
- - total 正确;
811
- - records 正确;
812
- - orgCode 条件与 scene 条件同时生效;
813
- - 无场景关联指标不会误返回;
814
- - pageNo/pageSize 分页正确。