@hunter-harness/workflow-harness 0.4.0 → 0.4.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 (386) hide show
  1. package/harness/bundles/general/claude-code/.harness-build.json +1 -1
  2. package/harness/bundles/general/claude-code/harness-archive/SKILL.md +1 -1
  3. package/harness/bundles/general/claude-code/harness-codebase-map/SKILL.md +1 -1
  4. package/harness/bundles/general/claude-code/harness-execute/SKILL.md +1 -1
  5. package/harness/bundles/general/claude-code/harness-knowledge-ingest/SKILL.md +1 -1
  6. package/harness/bundles/general/claude-code/harness-knowledge-query/SKILL.md +1 -1
  7. package/harness/bundles/general/claude-code/harness-plan/SKILL.md +1 -1
  8. package/harness/bundles/general/claude-code/harness-pull/SKILL.md +1 -1
  9. package/harness/bundles/general/claude-code/harness-push/SKILL.md +1 -1
  10. package/harness/bundles/general/claude-code/harness-review/SKILL.md +1 -1
  11. package/harness/bundles/general/claude-code/harness-run/SKILL.md +1 -1
  12. package/harness/bundles/general/claude-code/harness-submit/SKILL.md +1 -1
  13. package/harness/bundles/general/claude-code/harness-sync/SKILL.md +1 -1
  14. package/harness/bundles/general/claude-code/harness-test/SKILL.md +1 -1
  15. package/harness/bundles/general/claude-code/scripts/harness_archive.py +29 -6
  16. package/harness/bundles/general/claude-code/scripts/harness_deploy.py +1 -1
  17. package/harness/bundles/general/claude-code/scripts/harness_knowledge_candidates.py +398 -0
  18. package/harness/bundles/general/codebuddy/.harness-build.json +1 -1
  19. package/harness/bundles/general/codebuddy/harness-archive/SKILL.md +1 -1
  20. package/harness/bundles/general/codebuddy/harness-codebase-map/SKILL.md +1 -1
  21. package/harness/bundles/general/codebuddy/harness-execute/SKILL.md +1 -1
  22. package/harness/bundles/general/codebuddy/harness-knowledge-ingest/SKILL.md +1 -1
  23. package/harness/bundles/general/codebuddy/harness-knowledge-query/SKILL.md +1 -1
  24. package/harness/bundles/general/codebuddy/harness-plan/SKILL.md +1 -1
  25. package/harness/bundles/general/codebuddy/harness-pull/SKILL.md +1 -1
  26. package/harness/bundles/general/codebuddy/harness-push/SKILL.md +1 -1
  27. package/harness/bundles/general/codebuddy/harness-review/SKILL.md +1 -1
  28. package/harness/bundles/general/codebuddy/harness-run/SKILL.md +1 -1
  29. package/harness/bundles/general/codebuddy/harness-submit/SKILL.md +1 -1
  30. package/harness/bundles/general/codebuddy/harness-sync/SKILL.md +1 -1
  31. package/harness/bundles/general/codebuddy/harness-test/SKILL.md +1 -1
  32. package/harness/bundles/general/codebuddy/scripts/harness_archive.py +29 -6
  33. package/harness/bundles/general/codebuddy/scripts/harness_deploy.py +1 -1
  34. package/harness/bundles/general/codebuddy/scripts/harness_knowledge_candidates.py +398 -0
  35. package/harness/bundles/general/codex/.harness-build.json +1 -1
  36. package/harness/bundles/general/codex/harness-archive/SKILL.md +1 -1
  37. package/harness/bundles/general/codex/harness-codebase-map/SKILL.md +1 -1
  38. package/harness/bundles/general/codex/harness-execute/SKILL.md +1 -1
  39. package/harness/bundles/general/codex/harness-knowledge-ingest/SKILL.md +1 -1
  40. package/harness/bundles/general/codex/harness-knowledge-query/SKILL.md +1 -1
  41. package/harness/bundles/general/codex/harness-plan/SKILL.md +1 -1
  42. package/harness/bundles/general/codex/harness-pull/SKILL.md +1 -1
  43. package/harness/bundles/general/codex/harness-push/SKILL.md +1 -1
  44. package/harness/bundles/general/codex/harness-review/SKILL.md +1 -1
  45. package/harness/bundles/general/codex/harness-run/SKILL.md +1 -1
  46. package/harness/bundles/general/codex/harness-submit/SKILL.md +1 -1
  47. package/harness/bundles/general/codex/harness-sync/SKILL.md +1 -1
  48. package/harness/bundles/general/codex/harness-test/SKILL.md +1 -1
  49. package/harness/bundles/general/codex/scripts/harness_archive.py +29 -6
  50. package/harness/bundles/general/codex/scripts/harness_deploy.py +1 -1
  51. package/harness/bundles/general/codex/scripts/harness_knowledge_candidates.py +398 -0
  52. package/harness/bundles/general/cursor/.harness-build.json +1 -1
  53. package/harness/bundles/general/cursor/harness-archive/SKILL.md +1 -1
  54. package/harness/bundles/general/cursor/harness-codebase-map/SKILL.md +1 -1
  55. package/harness/bundles/general/cursor/harness-execute/SKILL.md +1 -1
  56. package/harness/bundles/general/cursor/harness-knowledge-ingest/SKILL.md +1 -1
  57. package/harness/bundles/general/cursor/harness-knowledge-query/SKILL.md +1 -1
  58. package/harness/bundles/general/cursor/harness-plan/SKILL.md +1 -1
  59. package/harness/bundles/general/cursor/harness-pull/SKILL.md +1 -1
  60. package/harness/bundles/general/cursor/harness-push/SKILL.md +1 -1
  61. package/harness/bundles/general/cursor/harness-review/SKILL.md +1 -1
  62. package/harness/bundles/general/cursor/harness-run/SKILL.md +1 -1
  63. package/harness/bundles/general/cursor/harness-submit/SKILL.md +1 -1
  64. package/harness/bundles/general/cursor/harness-sync/SKILL.md +1 -1
  65. package/harness/bundles/general/cursor/harness-test/SKILL.md +1 -1
  66. package/harness/bundles/general/cursor/scripts/harness_archive.py +29 -6
  67. package/harness/bundles/general/cursor/scripts/harness_deploy.py +1 -1
  68. package/harness/bundles/general/cursor/scripts/harness_knowledge_candidates.py +398 -0
  69. package/harness/bundles/general/pi/.harness-build.json +6 -0
  70. package/harness/bundles/general/pi/CONTEXT.md +98 -0
  71. package/harness/bundles/general/pi/README.md +478 -0
  72. package/harness/bundles/general/pi/contracts/build-profile-v3.schema.json +302 -0
  73. package/harness/bundles/general/pi/contracts/ci-metrics.schema.json +36 -0
  74. package/harness/bundles/general/pi/contracts/doctor-capability.schema.json +43 -0
  75. package/harness/bundles/general/pi/contracts/external-platform-observation.schema.json +62 -0
  76. package/harness/bundles/general/pi/contracts/fixtures/managed-execution.json +341 -0
  77. package/harness/bundles/general/pi/contracts/process-identity.schema.json +132 -0
  78. package/harness/bundles/general/pi/contracts/run-session.schema.json +142 -0
  79. package/harness/bundles/general/pi/contracts/service-retirement-receipt.schema.json +85 -0
  80. package/harness/bundles/general/pi/contracts/service-session.schema.json +147 -0
  81. package/harness/bundles/general/pi/contracts/workflow-policy.json +574 -0
  82. package/harness/bundles/general/pi/harness-archive/SKILL.md +322 -0
  83. package/harness/bundles/general/pi/harness-archive/checklist.md +71 -0
  84. package/harness/bundles/general/pi/harness-archive/reference.md +150 -0
  85. package/harness/bundles/general/pi/harness-archive/scripts/gen-manifest.ps1 +31 -0
  86. package/harness/bundles/general/pi/harness-archive/templates/summary-data-template.json +218 -0
  87. package/harness/bundles/general/pi/harness-codebase-map/SKILL.md +116 -0
  88. package/harness/bundles/general/pi/harness-codebase-map/checklist.md +126 -0
  89. package/harness/bundles/general/pi/harness-codebase-map/reference.md +364 -0
  90. package/harness/bundles/general/pi/harness-codebase-map/templates/ARCHITECTURE.md +57 -0
  91. package/harness/bundles/general/pi/harness-codebase-map/templates/CONCERNS.md +49 -0
  92. package/harness/bundles/general/pi/harness-codebase-map/templates/CONVENTIONS.md +57 -0
  93. package/harness/bundles/general/pi/harness-codebase-map/templates/INTEGRATIONS.md +52 -0
  94. package/harness/bundles/general/pi/harness-codebase-map/templates/STACK.md +55 -0
  95. package/harness/bundles/general/pi/harness-codebase-map/templates/STRUCTURE.md +69 -0
  96. package/harness/bundles/general/pi/harness-codebase-map/templates/TESTING.md +64 -0
  97. package/harness/bundles/general/pi/harness-codebase-map/templates/map-manifest.schema.json +73 -0
  98. package/harness/bundles/general/pi/harness-codebase-map/templates/map-summary.md +64 -0
  99. package/harness/bundles/general/pi/harness-execute/SKILL.md +170 -0
  100. package/harness/bundles/general/pi/harness-knowledge-ingest/SKILL.md +103 -0
  101. package/harness/bundles/general/pi/harness-knowledge-query/SKILL.md +97 -0
  102. package/harness/bundles/general/pi/harness-plan/SKILL.md +157 -0
  103. package/harness/bundles/general/pi/harness-plan/checklist.md +243 -0
  104. package/harness/bundles/general/pi/harness-plan/protocols.md +133 -0
  105. package/harness/bundles/general/pi/harness-plan/reference.md +468 -0
  106. package/harness/bundles/general/pi/harness-pull/SKILL.md +55 -0
  107. package/harness/bundles/general/pi/harness-push/SKILL.md +83 -0
  108. package/harness/bundles/general/pi/harness-review/SKILL.md +166 -0
  109. package/harness/bundles/general/pi/harness-review/checklist.md +124 -0
  110. package/harness/bundles/general/pi/harness-review/protocols.md +69 -0
  111. package/harness/bundles/general/pi/harness-review/reference.md +114 -0
  112. package/harness/bundles/general/pi/harness-run/SKILL.md +188 -0
  113. package/harness/bundles/general/pi/harness-run/checklist.md +279 -0
  114. package/harness/bundles/general/pi/harness-run/protocols.md +141 -0
  115. package/harness/bundles/general/pi/harness-run/reference.md +886 -0
  116. package/harness/bundles/general/pi/harness-submit/SKILL.md +182 -0
  117. package/harness/bundles/general/pi/harness-submit/checklist.md +452 -0
  118. package/harness/bundles/general/pi/harness-submit/reference.md +152 -0
  119. package/harness/bundles/general/pi/harness-sync/SKILL.md +72 -0
  120. package/harness/bundles/general/pi/harness-sync/reference.md +176 -0
  121. package/harness/bundles/general/pi/harness-test/SKILL.md +250 -0
  122. package/harness/bundles/general/pi/harness-test/checklist.md +359 -0
  123. package/harness/bundles/general/pi/harness-test/pitfalls-java.md +14 -0
  124. package/harness/bundles/general/pi/harness-test/pitfalls.md +307 -0
  125. package/harness/bundles/general/pi/harness-test/reference.md +880 -0
  126. package/harness/bundles/general/pi/harness-test/scripts/runtime-helpers.mjs +216 -0
  127. package/harness/bundles/general/pi/protocols/archive-report-protocol.md +196 -0
  128. package/harness/bundles/general/pi/protocols/ci-layering-protocol.md +22 -0
  129. package/harness/bundles/general/pi/protocols/evidence-based-reporting-protocol.md +134 -0
  130. package/harness/bundles/general/pi/protocols/execution-session-protocol.md +52 -0
  131. package/harness/bundles/general/pi/protocols/external-platform-protocol.md +27 -0
  132. package/harness/bundles/general/pi/protocols/ledger-protocol.md +365 -0
  133. package/harness/bundles/general/pi/protocols/memory-closeout-protocol.md +21 -0
  134. package/harness/bundles/general/pi/protocols/model-routing-protocol.md +22 -0
  135. package/harness/bundles/general/pi/protocols/powershell-protocol.md +238 -0
  136. package/harness/bundles/general/pi/protocols/registry-governance-protocol.md +31 -0
  137. package/harness/bundles/general/pi/protocols/report-pipeline-protocol.md +172 -0
  138. package/harness/bundles/general/pi/protocols/sensitive-info-protocol.md +110 -0
  139. package/harness/bundles/general/pi/protocols/state-layout-protocol.md +209 -0
  140. package/harness/bundles/general/pi/protocols/submit-protocol.md +78 -0
  141. package/harness/bundles/general/pi/protocols/verification-graph-protocol.md +32 -0
  142. package/harness/bundles/general/pi/scripts/harness_adoption_metrics.py +391 -0
  143. package/harness/bundles/general/pi/scripts/harness_apidoc.py +53 -0
  144. package/harness/bundles/general/pi/scripts/harness_archive.py +11345 -0
  145. package/harness/bundles/general/pi/scripts/harness_change.py +1626 -0
  146. package/harness/bundles/general/pi/scripts/harness_check_gate.py +113 -0
  147. package/harness/bundles/general/pi/scripts/harness_context.py +1774 -0
  148. package/harness/bundles/general/pi/scripts/harness_deploy.py +968 -0
  149. package/harness/bundles/general/pi/scripts/harness_efficiency.py +443 -0
  150. package/harness/bundles/general/pi/scripts/harness_environment.py +1690 -0
  151. package/harness/bundles/general/pi/scripts/harness_events.py +2234 -0
  152. package/harness/bundles/general/pi/scripts/harness_events_sync.py +1425 -0
  153. package/harness/bundles/general/pi/scripts/harness_execution_contracts.py +596 -0
  154. package/harness/bundles/general/pi/scripts/harness_fixback.py +1975 -0
  155. package/harness/bundles/general/pi/scripts/harness_gate.py +3816 -0
  156. package/harness/bundles/general/pi/scripts/harness_headless.py +37 -0
  157. package/harness/bundles/general/pi/scripts/harness_integration.py +2564 -0
  158. package/harness/bundles/general/pi/scripts/harness_knowledge_candidates.py +796 -0
  159. package/harness/bundles/general/pi/scripts/harness_ledger.py +3556 -0
  160. package/harness/bundles/general/pi/scripts/harness_migration_head.py +220 -0
  161. package/harness/bundles/general/pi/scripts/harness_orchestration.py +344 -0
  162. package/harness/bundles/general/pi/scripts/harness_paths.py +676 -0
  163. package/harness/bundles/general/pi/scripts/harness_phase.py +1726 -0
  164. package/harness/bundles/general/pi/scripts/harness_plan_aggregate.py +249 -0
  165. package/harness/bundles/general/pi/scripts/harness_plan_finalize.py +1016 -0
  166. package/harness/bundles/general/pi/scripts/harness_preflight.py +650 -0
  167. package/harness/bundles/general/pi/scripts/harness_process.py +1065 -0
  168. package/harness/bundles/general/pi/scripts/harness_profile.py +1817 -0
  169. package/harness/bundles/general/pi/scripts/harness_report_model.py +442 -0
  170. package/harness/bundles/general/pi/scripts/harness_retry.py +175 -0
  171. package/harness/bundles/general/pi/scripts/harness_review.py +631 -0
  172. package/harness/bundles/general/pi/scripts/harness_runtime.py +2243 -0
  173. package/harness/bundles/general/pi/scripts/harness_service.py +3355 -0
  174. package/harness/bundles/general/pi/scripts/harness_state.py +365 -0
  175. package/harness/bundles/general/pi/scripts/harness_sync.py +407 -0
  176. package/harness/bundles/general/pi/scripts/harness_test_cleanup.py +175 -0
  177. package/harness/bundles/general/pi/scripts/harness_test_guard.py +1899 -0
  178. package/harness/bundles/general/pi/scripts/harness_test_runner.py +1586 -0
  179. package/harness/bundles/general/pi/scripts/harness_verification.py +593 -0
  180. package/harness/bundles/general/pi/scripts/harness_workflow_policy.py +266 -0
  181. package/harness/bundles/java/claude-code/.harness-build.json +1 -1
  182. package/harness/bundles/java/claude-code/harness-apidoc/SKILL.md +1 -1
  183. package/harness/bundles/java/claude-code/harness-archive/SKILL.md +1 -1
  184. package/harness/bundles/java/claude-code/harness-codebase-map/SKILL.md +1 -1
  185. package/harness/bundles/java/claude-code/harness-execute/SKILL.md +1 -1
  186. package/harness/bundles/java/claude-code/harness-knowledge-ingest/SKILL.md +1 -1
  187. package/harness/bundles/java/claude-code/harness-knowledge-query/SKILL.md +1 -1
  188. package/harness/bundles/java/claude-code/harness-package/SKILL.md +1 -1
  189. package/harness/bundles/java/claude-code/harness-plan/SKILL.md +1 -1
  190. package/harness/bundles/java/claude-code/harness-pull/SKILL.md +1 -1
  191. package/harness/bundles/java/claude-code/harness-push/SKILL.md +1 -1
  192. package/harness/bundles/java/claude-code/harness-review/SKILL.md +1 -1
  193. package/harness/bundles/java/claude-code/harness-run/SKILL.md +1 -1
  194. package/harness/bundles/java/claude-code/harness-submit/SKILL.md +1 -1
  195. package/harness/bundles/java/claude-code/harness-sync/SKILL.md +1 -1
  196. package/harness/bundles/java/claude-code/harness-test/SKILL.md +1 -1
  197. package/harness/bundles/java/claude-code/scripts/harness_archive.py +29 -6
  198. package/harness/bundles/java/claude-code/scripts/harness_deploy.py +1 -1
  199. package/harness/bundles/java/claude-code/scripts/harness_knowledge_candidates.py +398 -0
  200. package/harness/bundles/java/codebuddy/.harness-build.json +1 -1
  201. package/harness/bundles/java/codebuddy/harness-apidoc/SKILL.md +1 -1
  202. package/harness/bundles/java/codebuddy/harness-archive/SKILL.md +1 -1
  203. package/harness/bundles/java/codebuddy/harness-codebase-map/SKILL.md +1 -1
  204. package/harness/bundles/java/codebuddy/harness-execute/SKILL.md +1 -1
  205. package/harness/bundles/java/codebuddy/harness-knowledge-ingest/SKILL.md +1 -1
  206. package/harness/bundles/java/codebuddy/harness-knowledge-query/SKILL.md +1 -1
  207. package/harness/bundles/java/codebuddy/harness-package/SKILL.md +1 -1
  208. package/harness/bundles/java/codebuddy/harness-plan/SKILL.md +1 -1
  209. package/harness/bundles/java/codebuddy/harness-pull/SKILL.md +1 -1
  210. package/harness/bundles/java/codebuddy/harness-push/SKILL.md +1 -1
  211. package/harness/bundles/java/codebuddy/harness-review/SKILL.md +1 -1
  212. package/harness/bundles/java/codebuddy/harness-run/SKILL.md +1 -1
  213. package/harness/bundles/java/codebuddy/harness-submit/SKILL.md +1 -1
  214. package/harness/bundles/java/codebuddy/harness-sync/SKILL.md +1 -1
  215. package/harness/bundles/java/codebuddy/harness-test/SKILL.md +1 -1
  216. package/harness/bundles/java/codebuddy/scripts/harness_archive.py +29 -6
  217. package/harness/bundles/java/codebuddy/scripts/harness_deploy.py +1 -1
  218. package/harness/bundles/java/codebuddy/scripts/harness_knowledge_candidates.py +398 -0
  219. package/harness/bundles/java/codex/.harness-build.json +1 -1
  220. package/harness/bundles/java/codex/harness-apidoc/SKILL.md +1 -1
  221. package/harness/bundles/java/codex/harness-archive/SKILL.md +1 -1
  222. package/harness/bundles/java/codex/harness-codebase-map/SKILL.md +1 -1
  223. package/harness/bundles/java/codex/harness-execute/SKILL.md +1 -1
  224. package/harness/bundles/java/codex/harness-knowledge-ingest/SKILL.md +1 -1
  225. package/harness/bundles/java/codex/harness-knowledge-query/SKILL.md +1 -1
  226. package/harness/bundles/java/codex/harness-package/SKILL.md +1 -1
  227. package/harness/bundles/java/codex/harness-plan/SKILL.md +1 -1
  228. package/harness/bundles/java/codex/harness-pull/SKILL.md +1 -1
  229. package/harness/bundles/java/codex/harness-push/SKILL.md +1 -1
  230. package/harness/bundles/java/codex/harness-review/SKILL.md +1 -1
  231. package/harness/bundles/java/codex/harness-run/SKILL.md +1 -1
  232. package/harness/bundles/java/codex/harness-submit/SKILL.md +1 -1
  233. package/harness/bundles/java/codex/harness-sync/SKILL.md +1 -1
  234. package/harness/bundles/java/codex/harness-test/SKILL.md +1 -1
  235. package/harness/bundles/java/codex/scripts/harness_archive.py +29 -6
  236. package/harness/bundles/java/codex/scripts/harness_deploy.py +1 -1
  237. package/harness/bundles/java/codex/scripts/harness_knowledge_candidates.py +398 -0
  238. package/harness/bundles/java/cursor/.harness-build.json +1 -1
  239. package/harness/bundles/java/cursor/harness-apidoc/SKILL.md +1 -1
  240. package/harness/bundles/java/cursor/harness-archive/SKILL.md +1 -1
  241. package/harness/bundles/java/cursor/harness-codebase-map/SKILL.md +1 -1
  242. package/harness/bundles/java/cursor/harness-execute/SKILL.md +1 -1
  243. package/harness/bundles/java/cursor/harness-knowledge-ingest/SKILL.md +1 -1
  244. package/harness/bundles/java/cursor/harness-knowledge-query/SKILL.md +1 -1
  245. package/harness/bundles/java/cursor/harness-package/SKILL.md +1 -1
  246. package/harness/bundles/java/cursor/harness-plan/SKILL.md +1 -1
  247. package/harness/bundles/java/cursor/harness-pull/SKILL.md +1 -1
  248. package/harness/bundles/java/cursor/harness-push/SKILL.md +1 -1
  249. package/harness/bundles/java/cursor/harness-review/SKILL.md +1 -1
  250. package/harness/bundles/java/cursor/harness-run/SKILL.md +1 -1
  251. package/harness/bundles/java/cursor/harness-submit/SKILL.md +1 -1
  252. package/harness/bundles/java/cursor/harness-sync/SKILL.md +1 -1
  253. package/harness/bundles/java/cursor/harness-test/SKILL.md +1 -1
  254. package/harness/bundles/java/cursor/scripts/harness_archive.py +29 -6
  255. package/harness/bundles/java/cursor/scripts/harness_deploy.py +1 -1
  256. package/harness/bundles/java/cursor/scripts/harness_knowledge_candidates.py +398 -0
  257. package/harness/bundles/java/pi/.harness-build.json +6 -0
  258. package/harness/bundles/java/pi/CONTEXT.md +98 -0
  259. package/harness/bundles/java/pi/README.md +478 -0
  260. package/harness/bundles/java/pi/contracts/build-profile-v3.schema.json +302 -0
  261. package/harness/bundles/java/pi/contracts/ci-metrics.schema.json +36 -0
  262. package/harness/bundles/java/pi/contracts/doctor-capability.schema.json +43 -0
  263. package/harness/bundles/java/pi/contracts/external-platform-observation.schema.json +62 -0
  264. package/harness/bundles/java/pi/contracts/fixtures/managed-execution.json +341 -0
  265. package/harness/bundles/java/pi/contracts/process-identity.schema.json +132 -0
  266. package/harness/bundles/java/pi/contracts/run-session.schema.json +142 -0
  267. package/harness/bundles/java/pi/contracts/service-retirement-receipt.schema.json +85 -0
  268. package/harness/bundles/java/pi/contracts/service-session.schema.json +147 -0
  269. package/harness/bundles/java/pi/contracts/workflow-policy.json +574 -0
  270. package/harness/bundles/java/pi/harness-apidoc/SKILL.md +97 -0
  271. package/harness/bundles/java/pi/harness-apidoc/checklist.md +142 -0
  272. package/harness/bundles/java/pi/harness-apidoc/reference.md +233 -0
  273. package/harness/bundles/java/pi/harness-archive/SKILL.md +322 -0
  274. package/harness/bundles/java/pi/harness-archive/checklist.md +71 -0
  275. package/harness/bundles/java/pi/harness-archive/reference.md +150 -0
  276. package/harness/bundles/java/pi/harness-archive/scripts/gen-manifest.ps1 +31 -0
  277. package/harness/bundles/java/pi/harness-archive/templates/summary-data-template.json +218 -0
  278. package/harness/bundles/java/pi/harness-codebase-map/SKILL.md +116 -0
  279. package/harness/bundles/java/pi/harness-codebase-map/checklist.md +126 -0
  280. package/harness/bundles/java/pi/harness-codebase-map/reference.md +364 -0
  281. package/harness/bundles/java/pi/harness-codebase-map/templates/ARCHITECTURE.md +57 -0
  282. package/harness/bundles/java/pi/harness-codebase-map/templates/CONCERNS.md +49 -0
  283. package/harness/bundles/java/pi/harness-codebase-map/templates/CONVENTIONS.md +57 -0
  284. package/harness/bundles/java/pi/harness-codebase-map/templates/INTEGRATIONS.md +52 -0
  285. package/harness/bundles/java/pi/harness-codebase-map/templates/STACK.md +55 -0
  286. package/harness/bundles/java/pi/harness-codebase-map/templates/STRUCTURE.md +69 -0
  287. package/harness/bundles/java/pi/harness-codebase-map/templates/TESTING.md +64 -0
  288. package/harness/bundles/java/pi/harness-codebase-map/templates/map-manifest.schema.json +73 -0
  289. package/harness/bundles/java/pi/harness-codebase-map/templates/map-summary.md +64 -0
  290. package/harness/bundles/java/pi/harness-execute/SKILL.md +170 -0
  291. package/harness/bundles/java/pi/harness-knowledge-ingest/SKILL.md +103 -0
  292. package/harness/bundles/java/pi/harness-knowledge-query/SKILL.md +97 -0
  293. package/harness/bundles/java/pi/harness-package/SKILL.md +94 -0
  294. package/harness/bundles/java/pi/harness-package/checklist.md +322 -0
  295. package/harness/bundles/java/pi/harness-package/reference.md +210 -0
  296. package/harness/bundles/java/pi/harness-plan/SKILL.md +157 -0
  297. package/harness/bundles/java/pi/harness-plan/checklist.md +243 -0
  298. package/harness/bundles/java/pi/harness-plan/protocols.md +133 -0
  299. package/harness/bundles/java/pi/harness-plan/reference.md +468 -0
  300. package/harness/bundles/java/pi/harness-pull/SKILL.md +55 -0
  301. package/harness/bundles/java/pi/harness-push/SKILL.md +83 -0
  302. package/harness/bundles/java/pi/harness-review/SKILL.md +166 -0
  303. package/harness/bundles/java/pi/harness-review/checklist.md +124 -0
  304. package/harness/bundles/java/pi/harness-review/protocols.md +69 -0
  305. package/harness/bundles/java/pi/harness-review/reference.md +114 -0
  306. package/harness/bundles/java/pi/harness-run/SKILL.md +206 -0
  307. package/harness/bundles/java/pi/harness-run/checklist.md +252 -0
  308. package/harness/bundles/java/pi/harness-run/protocols.md +141 -0
  309. package/harness/bundles/java/pi/harness-run/reference.md +820 -0
  310. package/harness/bundles/java/pi/harness-submit/SKILL.md +189 -0
  311. package/harness/bundles/java/pi/harness-submit/checklist.md +452 -0
  312. package/harness/bundles/java/pi/harness-submit/reference.md +152 -0
  313. package/harness/bundles/java/pi/harness-sync/SKILL.md +72 -0
  314. package/harness/bundles/java/pi/harness-sync/reference.md +176 -0
  315. package/harness/bundles/java/pi/harness-test/SKILL.md +264 -0
  316. package/harness/bundles/java/pi/harness-test/checklist.md +320 -0
  317. package/harness/bundles/java/pi/harness-test/pitfalls-java.md +16 -0
  318. package/harness/bundles/java/pi/harness-test/pitfalls.md +307 -0
  319. package/harness/bundles/java/pi/harness-test/reference.md +792 -0
  320. package/harness/bundles/java/pi/harness-test/scripts/runtime-helpers.mjs +216 -0
  321. package/harness/bundles/java/pi/protocols/archive-report-protocol.md +196 -0
  322. package/harness/bundles/java/pi/protocols/ci-layering-protocol.md +22 -0
  323. package/harness/bundles/java/pi/protocols/evidence-based-reporting-protocol.md +134 -0
  324. package/harness/bundles/java/pi/protocols/execution-session-protocol.md +52 -0
  325. package/harness/bundles/java/pi/protocols/external-platform-protocol.md +27 -0
  326. package/harness/bundles/java/pi/protocols/ledger-protocol.md +365 -0
  327. package/harness/bundles/java/pi/protocols/memory-closeout-protocol.md +21 -0
  328. package/harness/bundles/java/pi/protocols/model-routing-protocol.md +22 -0
  329. package/harness/bundles/java/pi/protocols/powershell-protocol.md +238 -0
  330. package/harness/bundles/java/pi/protocols/registry-governance-protocol.md +31 -0
  331. package/harness/bundles/java/pi/protocols/report-pipeline-protocol.md +172 -0
  332. package/harness/bundles/java/pi/protocols/sensitive-info-protocol.md +110 -0
  333. package/harness/bundles/java/pi/protocols/state-layout-protocol.md +209 -0
  334. package/harness/bundles/java/pi/protocols/submit-protocol.md +78 -0
  335. package/harness/bundles/java/pi/protocols/verification-graph-protocol.md +32 -0
  336. package/harness/bundles/java/pi/scripts/harness_adoption_metrics.py +391 -0
  337. package/harness/bundles/java/pi/scripts/harness_apidoc.py +53 -0
  338. package/harness/bundles/java/pi/scripts/harness_archive.py +11345 -0
  339. package/harness/bundles/java/pi/scripts/harness_change.py +1626 -0
  340. package/harness/bundles/java/pi/scripts/harness_check_gate.py +113 -0
  341. package/harness/bundles/java/pi/scripts/harness_context.py +1774 -0
  342. package/harness/bundles/java/pi/scripts/harness_deploy.py +968 -0
  343. package/harness/bundles/java/pi/scripts/harness_efficiency.py +443 -0
  344. package/harness/bundles/java/pi/scripts/harness_environment.py +1690 -0
  345. package/harness/bundles/java/pi/scripts/harness_events.py +2234 -0
  346. package/harness/bundles/java/pi/scripts/harness_events_sync.py +1425 -0
  347. package/harness/bundles/java/pi/scripts/harness_execution_contracts.py +596 -0
  348. package/harness/bundles/java/pi/scripts/harness_fixback.py +1975 -0
  349. package/harness/bundles/java/pi/scripts/harness_gate.py +3816 -0
  350. package/harness/bundles/java/pi/scripts/harness_headless.py +37 -0
  351. package/harness/bundles/java/pi/scripts/harness_integration.py +2564 -0
  352. package/harness/bundles/java/pi/scripts/harness_knowledge_candidates.py +796 -0
  353. package/harness/bundles/java/pi/scripts/harness_ledger.py +3556 -0
  354. package/harness/bundles/java/pi/scripts/harness_migration_head.py +220 -0
  355. package/harness/bundles/java/pi/scripts/harness_orchestration.py +344 -0
  356. package/harness/bundles/java/pi/scripts/harness_paths.py +676 -0
  357. package/harness/bundles/java/pi/scripts/harness_phase.py +1726 -0
  358. package/harness/bundles/java/pi/scripts/harness_plan_aggregate.py +249 -0
  359. package/harness/bundles/java/pi/scripts/harness_plan_finalize.py +1016 -0
  360. package/harness/bundles/java/pi/scripts/harness_preflight.py +650 -0
  361. package/harness/bundles/java/pi/scripts/harness_process.py +1065 -0
  362. package/harness/bundles/java/pi/scripts/harness_profile.py +1817 -0
  363. package/harness/bundles/java/pi/scripts/harness_report_model.py +442 -0
  364. package/harness/bundles/java/pi/scripts/harness_retry.py +175 -0
  365. package/harness/bundles/java/pi/scripts/harness_review.py +631 -0
  366. package/harness/bundles/java/pi/scripts/harness_runtime.py +2243 -0
  367. package/harness/bundles/java/pi/scripts/harness_service.py +3355 -0
  368. package/harness/bundles/java/pi/scripts/harness_state.py +365 -0
  369. package/harness/bundles/java/pi/scripts/harness_sync.py +407 -0
  370. package/harness/bundles/java/pi/scripts/harness_test_cleanup.py +175 -0
  371. package/harness/bundles/java/pi/scripts/harness_test_guard.py +1899 -0
  372. package/harness/bundles/java/pi/scripts/harness_test_runner.py +1586 -0
  373. package/harness/bundles/java/pi/scripts/harness_verification.py +593 -0
  374. package/harness/bundles/java/pi/scripts/harness_workflow_policy.py +266 -0
  375. package/harness/manifests/general/claude-code.json +17 -17
  376. package/harness/manifests/general/codebuddy.json +17 -17
  377. package/harness/manifests/general/codex.json +17 -17
  378. package/harness/manifests/general/cursor.json +17 -17
  379. package/harness/manifests/general/pi.json +475 -0
  380. package/harness/manifests/java/claude-code.json +19 -19
  381. package/harness/manifests/java/codebuddy.json +19 -19
  382. package/harness/manifests/java/codex.json +19 -19
  383. package/harness/manifests/java/cursor.json +19 -19
  384. package/harness/manifests/java/pi.json +499 -0
  385. package/hunter-workflow-family.json +2 -2
  386. package/package.json +1 -1
@@ -0,0 +1,266 @@
1
+ #!/usr/bin/env python3
2
+ """Strict loader for harness/contracts/workflow-policy.json.
3
+
4
+ Unknown fields at any depth fail validation. Python 3.10+, stdlib only.
5
+ """
6
+
7
+ from __future__ import annotations
8
+
9
+ import json
10
+ from pathlib import Path
11
+ from typing import Any
12
+
13
+ POLICY_REL = Path("harness") / "contracts" / "workflow-policy.json"
14
+
15
+ TOP_LEVEL_KEYS = frozenset(
16
+ {
17
+ "schemaVersion",
18
+ "testExecution",
19
+ "riskTiers",
20
+ "skills",
21
+ "requiredArtifacts",
22
+ "requiredValidations",
23
+ "validationPhases",
24
+ "capabilityGates",
25
+ "conditionalStages",
26
+ "interactionWhitelist",
27
+ "checkpointRules",
28
+ }
29
+ )
30
+
31
+ RISK_TIER_KEYS = frozenset(
32
+ {
33
+ "description",
34
+ "defaultPhases",
35
+ "requiredValidations",
36
+ "conditionalStages",
37
+ "upgradeTriggers",
38
+ }
39
+ )
40
+
41
+ SKILL_KEYS = frozenset(
42
+ {
43
+ "phase",
44
+ "inputs",
45
+ "artifacts",
46
+ "events",
47
+ "allowedInteractions",
48
+ "capabilities",
49
+ "profiles",
50
+ }
51
+ )
52
+
53
+ CONDITIONAL_STAGE_KEYS = frozenset({"tiers", "signals"})
54
+ CAPABILITY_GATE_KEYS = frozenset(
55
+ {"signals", "requiredStages", "requiredValidations"}
56
+ )
57
+ CHECKPOINT_RULE_KEYS = frozenset(
58
+ {
59
+ "afterTasks",
60
+ "beforeTasks",
61
+ "blocking",
62
+ "requiredReport",
63
+ "reviewerTool",
64
+ }
65
+ )
66
+ TEST_EXECUTION_KEYS = frozenset(
67
+ {
68
+ "runner",
69
+ "defaultProfile",
70
+ "maxWorkers",
71
+ "singleInstance",
72
+ "processTreeCleanup",
73
+ "detachedProcessPreflight",
74
+ "confirmationFlag",
75
+ "confirmationRequiredProfiles",
76
+ "resourceIntensiveModules",
77
+ "profiles",
78
+ }
79
+ )
80
+ TEST_EXECUTION_PROFILE_KEYS = frozenset(
81
+ {
82
+ "description",
83
+ "includesResourceIntensive",
84
+ "moduleTimeoutSeconds",
85
+ }
86
+ )
87
+
88
+
89
+ class PolicyValidationError(ValueError):
90
+ """Raised when workflow-policy.json contains unknown or invalid fields."""
91
+
92
+
93
+ def _reject_unknown(data: dict[str, Any], allowed: frozenset[str], path: str) -> None:
94
+ unknown = sorted(set(data) - allowed)
95
+ if unknown:
96
+ raise PolicyValidationError(
97
+ f"unknown field(s) at {path}: {', '.join(unknown)}"
98
+ )
99
+
100
+
101
+ def _require_type(value: Any, expected: type | tuple[type, ...], path: str) -> None:
102
+ if not isinstance(value, expected):
103
+ names = (
104
+ expected.__name__
105
+ if isinstance(expected, type)
106
+ else "|".join(t.__name__ for t in expected)
107
+ )
108
+ raise PolicyValidationError(f"{path} must be {names}, got {type(value).__name__}")
109
+
110
+
111
+ def validate_policy(data: Any) -> dict[str, Any]:
112
+ if not isinstance(data, dict):
113
+ raise PolicyValidationError("workflow policy root must be an object")
114
+ _reject_unknown(data, TOP_LEVEL_KEYS, "root")
115
+ _require_type(data.get("schemaVersion"), int, "schemaVersion")
116
+ if data["schemaVersion"] != 1:
117
+ raise PolicyValidationError("unsupported schemaVersion")
118
+
119
+ test_execution = data["testExecution"]
120
+ _require_type(test_execution, dict, "testExecution")
121
+ _reject_unknown(test_execution, TEST_EXECUTION_KEYS, "testExecution")
122
+ for key in ("runner", "defaultProfile", "confirmationFlag"):
123
+ _require_type(test_execution[key], str, f"testExecution.{key}")
124
+ max_workers = test_execution["maxWorkers"]
125
+ _require_type(max_workers, int, "testExecution.maxWorkers")
126
+ if isinstance(max_workers, bool) or max_workers < 1 or max_workers > 2:
127
+ raise PolicyValidationError("testExecution.maxWorkers must be 1 or 2")
128
+ for key in (
129
+ "singleInstance",
130
+ "processTreeCleanup",
131
+ "detachedProcessPreflight",
132
+ ):
133
+ _require_type(test_execution[key], bool, f"testExecution.{key}")
134
+ if not test_execution[key]:
135
+ raise PolicyValidationError(f"testExecution.{key} must be true")
136
+ for key in ("confirmationRequiredProfiles", "resourceIntensiveModules"):
137
+ values = test_execution[key]
138
+ _require_type(values, list, f"testExecution.{key}")
139
+ if any(not isinstance(item, str) or not item for item in values):
140
+ raise PolicyValidationError(
141
+ f"testExecution.{key} must contain non-empty strings"
142
+ )
143
+
144
+ execution_profiles = test_execution["profiles"]
145
+ _require_type(execution_profiles, dict, "testExecution.profiles")
146
+ required_profile_names = {"safe", "system", "full"}
147
+ if set(execution_profiles) != required_profile_names:
148
+ raise PolicyValidationError(
149
+ "testExecution.profiles must define exactly safe, system, and full"
150
+ )
151
+ if test_execution["defaultProfile"] != "safe":
152
+ raise PolicyValidationError("testExecution.defaultProfile must be safe")
153
+ confirmation_profiles = set(test_execution["confirmationRequiredProfiles"])
154
+ if not {"system", "full"}.issubset(confirmation_profiles):
155
+ raise PolicyValidationError(
156
+ "testExecution confirmation must cover system and full"
157
+ )
158
+ for profile_name, profile in execution_profiles.items():
159
+ path = f"testExecution.profiles.{profile_name}"
160
+ _require_type(profile, dict, path)
161
+ _reject_unknown(profile, TEST_EXECUTION_PROFILE_KEYS, path)
162
+ _require_type(profile["description"], str, f"{path}.description")
163
+ _require_type(
164
+ profile["includesResourceIntensive"],
165
+ bool,
166
+ f"{path}.includesResourceIntensive",
167
+ )
168
+ timeout = profile["moduleTimeoutSeconds"]
169
+ _require_type(timeout, int, f"{path}.moduleTimeoutSeconds")
170
+ if isinstance(timeout, bool) or timeout <= 0:
171
+ raise PolicyValidationError(
172
+ f"{path}.moduleTimeoutSeconds must be a positive integer"
173
+ )
174
+ if execution_profiles["safe"]["includesResourceIntensive"]:
175
+ raise PolicyValidationError(
176
+ "testExecution.profiles.safe must exclude resource-intensive tests"
177
+ )
178
+ for profile_name in ("system", "full"):
179
+ if not execution_profiles[profile_name]["includesResourceIntensive"]:
180
+ raise PolicyValidationError(
181
+ f"testExecution.profiles.{profile_name} must include resource-intensive tests"
182
+ )
183
+
184
+ risk_tiers = data["riskTiers"]
185
+ _require_type(risk_tiers, dict, "riskTiers")
186
+ for tier_name, tier in risk_tiers.items():
187
+ path = f"riskTiers.{tier_name}"
188
+ _require_type(tier, dict, path)
189
+ _reject_unknown(tier, RISK_TIER_KEYS, path)
190
+ _require_type(tier["description"], str, f"{path}.description")
191
+ _require_type(tier["defaultPhases"], list, f"{path}.defaultPhases")
192
+ _require_type(tier["requiredValidations"], list, f"{path}.requiredValidations")
193
+ _require_type(tier["conditionalStages"], list, f"{path}.conditionalStages")
194
+ _require_type(tier["upgradeTriggers"], list, f"{path}.upgradeTriggers")
195
+
196
+ skills = data["skills"]
197
+ _require_type(skills, dict, "skills")
198
+ for skill_name, skill in skills.items():
199
+ path = f"skills.{skill_name}"
200
+ _require_type(skill, dict, path)
201
+ _reject_unknown(skill, SKILL_KEYS, path)
202
+ _require_type(skill["phase"], str, f"{path}.phase")
203
+ for key in ("inputs", "artifacts", "events", "allowedInteractions", "capabilities"):
204
+ _require_type(skill[key], list, f"{path}.{key}")
205
+ profiles = skill.get("profiles", ["general", "java"])
206
+ _require_type(profiles, list, f"{path}.profiles")
207
+ if not profiles or any(item not in {"general", "java"} for item in profiles):
208
+ raise PolicyValidationError(f"{path}.profiles must contain general and/or java")
209
+
210
+ for section in ("requiredArtifacts", "requiredValidations"):
211
+ section_data = data[section]
212
+ _require_type(section_data, dict, section)
213
+ for phase, items in section_data.items():
214
+ _require_type(items, list, f"{section}.{phase}")
215
+
216
+ validation_phases = data["validationPhases"]
217
+ _require_type(validation_phases, dict, "validationPhases")
218
+ for verification, phase in validation_phases.items():
219
+ _require_type(phase, str, f"validationPhases.{verification}")
220
+
221
+ capability_gates = data["capabilityGates"]
222
+ _require_type(capability_gates, dict, "capabilityGates")
223
+ for capability, gate in capability_gates.items():
224
+ path = f"capabilityGates.{capability}"
225
+ _require_type(gate, dict, path)
226
+ _reject_unknown(gate, CAPABILITY_GATE_KEYS, path)
227
+ for key in CAPABILITY_GATE_KEYS:
228
+ _require_type(gate[key], list, f"{path}.{key}")
229
+
230
+ conditional = data["conditionalStages"]
231
+ _require_type(conditional, dict, "conditionalStages")
232
+ for stage_name, stage in conditional.items():
233
+ path = f"conditionalStages.{stage_name}"
234
+ _require_type(stage, dict, path)
235
+ _reject_unknown(stage, CONDITIONAL_STAGE_KEYS, path)
236
+ _require_type(stage["tiers"], list, f"{path}.tiers")
237
+ _require_type(stage["signals"], list, f"{path}.signals")
238
+
239
+ interaction = data["interactionWhitelist"]
240
+ _require_type(interaction, dict, "interactionWhitelist")
241
+ for key, items in interaction.items():
242
+ _require_type(items, list, f"interactionWhitelist.{key}")
243
+
244
+ checkpoints = data["checkpointRules"]
245
+ _require_type(checkpoints, dict, "checkpointRules")
246
+ for checkpoint_id, rule in checkpoints.items():
247
+ path = f"checkpointRules.{checkpoint_id}"
248
+ _require_type(rule, dict, path)
249
+ _reject_unknown(rule, CHECKPOINT_RULE_KEYS, path)
250
+ _require_type(rule["afterTasks"], list, f"{path}.afterTasks")
251
+ _require_type(rule["beforeTasks"], list, f"{path}.beforeTasks")
252
+ _require_type(rule["blocking"], bool, f"{path}.blocking")
253
+
254
+ return data
255
+
256
+
257
+ def policy_path_for_repo(repo_root: Path) -> Path:
258
+ return repo_root / POLICY_REL
259
+
260
+
261
+ def load_policy(repo_root: Path) -> dict[str, Any]:
262
+ path = policy_path_for_repo(repo_root)
263
+ if not path.is_file():
264
+ raise FileNotFoundError(f"workflow policy missing: {path}")
265
+ data = json.loads(path.read_text(encoding="utf-8-sig"))
266
+ return validate_policy(data)
@@ -25,7 +25,7 @@
25
25
  "files": [
26
26
  {
27
27
  "path": ".harness-build.json",
28
- "sha256": "f0d33ec19e5b767e139f69ddf99f7b3f279b09f4b034a07846ca879e23cda041"
28
+ "sha256": "3ef851702482b9a60369d6fa87beb5c0173efb2d63b20b73ec0efcca10143165"
29
29
  },
30
30
  {
31
31
  "path": "agents/harness-evaluator.md",
@@ -97,7 +97,7 @@
97
97
  },
98
98
  {
99
99
  "path": "harness-archive/SKILL.md",
100
- "sha256": "b8dde1539e64aeb047836bde1fefbed61c113f9e66486921820c304bea6b9d9c"
100
+ "sha256": "4bed475030a9d821c76efc9ac98a104beebc2e79c565790b466f083c1612bb0d"
101
101
  },
102
102
  {
103
103
  "path": "harness-archive/templates/summary-data-template.json",
@@ -113,7 +113,7 @@
113
113
  },
114
114
  {
115
115
  "path": "harness-codebase-map/SKILL.md",
116
- "sha256": "3c24469f188da68b46c8058461f89aa930d3713bc41c1ca97226fc24024965ad"
116
+ "sha256": "f48d992bd30d1c6aa1d540ce9606816d14bced0afac96b916adb1cadb0a15842"
117
117
  },
118
118
  {
119
119
  "path": "harness-codebase-map/templates/ARCHITECTURE.md",
@@ -153,15 +153,15 @@
153
153
  },
154
154
  {
155
155
  "path": "harness-execute/SKILL.md",
156
- "sha256": "5a538066d3a65eed875ccdf6953c17b57c6227a896ff6a83e4def806b9263bcd"
156
+ "sha256": "101114cab3b14959c179f8e62547473e013a55390702a5dab3e25333bc3199cb"
157
157
  },
158
158
  {
159
159
  "path": "harness-knowledge-ingest/SKILL.md",
160
- "sha256": "d8e0f384d54c64d6d4cbb98af84932ce699c770d4ce51760c9c9fd6cbffc2155"
160
+ "sha256": "daa175e4ef5cdd8f87f7c3fbdbad49e49423d669f8b8884e2b1246a8784b47f6"
161
161
  },
162
162
  {
163
163
  "path": "harness-knowledge-query/SKILL.md",
164
- "sha256": "fea684b9c194e7c421888abbf8ab2e0464e8ac2ba1fd8cc248452c5214cf3f22"
164
+ "sha256": "b4e8ac7f9c1e0a00d6faed4364a5c2c1894053a7f2c9109466a5b0b16d1d8c9f"
165
165
  },
166
166
  {
167
167
  "path": "harness-plan/checklist.md",
@@ -177,15 +177,15 @@
177
177
  },
178
178
  {
179
179
  "path": "harness-plan/SKILL.md",
180
- "sha256": "304367db8f6e7095fa55e468eccb7e28dbc8355896c26eb178409acc071c4e50"
180
+ "sha256": "5ecaaf4ad4ea26288ecbc5131454498f8338d47452b674beb1390ce54a104313"
181
181
  },
182
182
  {
183
183
  "path": "harness-pull/SKILL.md",
184
- "sha256": "96487069ff3a8c271b2d64c95ded318c12f3e498c90c56f44e31cd58a7ff06f6"
184
+ "sha256": "6e05767b80e914fa7b41252992f63c31f58d955fd229825db2c9404e27e5a7ee"
185
185
  },
186
186
  {
187
187
  "path": "harness-push/SKILL.md",
188
- "sha256": "944bae63aaea994ae4a351c22a263a7c8adc53d22c34e625e99c9abd6421efd7"
188
+ "sha256": "82db22d3ec5ecc259ed9896dcdc73dfa1f029efa4df8eedd05af5bd21bad1d8f"
189
189
  },
190
190
  {
191
191
  "path": "harness-review/checklist.md",
@@ -201,7 +201,7 @@
201
201
  },
202
202
  {
203
203
  "path": "harness-review/SKILL.md",
204
- "sha256": "87d11c29701c079d2b9344355f288dd30c0affb8c516a297a62f0c8e9b316763"
204
+ "sha256": "fb847a107b62dafd4b4038c3d473adb099e2dccc52152dc44a752ddca9b92fce"
205
205
  },
206
206
  {
207
207
  "path": "harness-run/checklist.md",
@@ -217,7 +217,7 @@
217
217
  },
218
218
  {
219
219
  "path": "harness-run/SKILL.md",
220
- "sha256": "a3f67e29f48c7d85de3f801604d05884f423c80b7cedeb8a60c986f61ba72dfe"
220
+ "sha256": "bf2be34f2ab5aeb8cd3794fcd308e435b7492bbae91a3b6848ecd0adcde8f91c"
221
221
  },
222
222
  {
223
223
  "path": "harness-submit/checklist.md",
@@ -229,7 +229,7 @@
229
229
  },
230
230
  {
231
231
  "path": "harness-submit/SKILL.md",
232
- "sha256": "10df5236533e848015c125ea73c725895d0a970011b7e3bdc9ba04fc7f738351"
232
+ "sha256": "147c0455d27c3c536ca69e2fe764179991b00bee41a6b3fef0efd38083077ff9"
233
233
  },
234
234
  {
235
235
  "path": "harness-sync/reference.md",
@@ -237,7 +237,7 @@
237
237
  },
238
238
  {
239
239
  "path": "harness-sync/SKILL.md",
240
- "sha256": "463171a25792b700f221f4d22a7c6c2dbc3614b5b195e278feeacc93ef893557"
240
+ "sha256": "367b49b872e88a7e36f719b2746fd455ff544e8fb351820f50925d631c92d17c"
241
241
  },
242
242
  {
243
243
  "path": "harness-test/checklist.md",
@@ -261,7 +261,7 @@
261
261
  },
262
262
  {
263
263
  "path": "harness-test/SKILL.md",
264
- "sha256": "52221499feb2ca6ca8f7f2247a84f8f672a7d37c6b1347a22dc461232ff11daa"
264
+ "sha256": "0e888323f6bd88364911ddb64e9166979a672ef373554edb391201a17838feeb"
265
265
  },
266
266
  {
267
267
  "path": "protocols/archive-report-protocol.md",
@@ -337,7 +337,7 @@
337
337
  },
338
338
  {
339
339
  "path": "scripts/harness_archive.py",
340
- "sha256": "cc73ae61ac8fc4da09a35a65a8fba88fe49e3bda02b8dd7879808a855bf888bd"
340
+ "sha256": "ed72e4f0bda6265fc397debc0fd6cc72b5ec6bd87d967823173f3cea9fbf006e"
341
341
  },
342
342
  {
343
343
  "path": "scripts/harness_change.py",
@@ -353,7 +353,7 @@
353
353
  },
354
354
  {
355
355
  "path": "scripts/harness_deploy.py",
356
- "sha256": "fb4290c2dd5c28a09c378da5ee7be491bdefe0410f277ec5dd2af1952cfddbca"
356
+ "sha256": "d64c2fbc0e50b39c3f5a135d05afc8720a480952c25a05c3dfa361cbc5d87c66"
357
357
  },
358
358
  {
359
359
  "path": "scripts/harness_efficiency.py",
@@ -393,7 +393,7 @@
393
393
  },
394
394
  {
395
395
  "path": "scripts/harness_knowledge_candidates.py",
396
- "sha256": "3cd0b9046821759cfc46221201d9760dc0a3b1613180a06b8ef3c821376b11c1"
396
+ "sha256": "6f17bbe80f47839bbafab73b9231cf078569a2b3275fc79c1275d039b15861fc"
397
397
  },
398
398
  {
399
399
  "path": "scripts/harness_ledger.py",
@@ -25,7 +25,7 @@
25
25
  "files": [
26
26
  {
27
27
  "path": ".harness-build.json",
28
- "sha256": "bd25a1b2cbe7e26c65ec27cad69c76465583847a3dcc716100334c708545a1cc"
28
+ "sha256": "2a3288debede9e3b77e05777102420dc0c50a2f37809cd74aedd29630843628b"
29
29
  },
30
30
  {
31
31
  "path": "agents/harness-evaluator.md",
@@ -97,7 +97,7 @@
97
97
  },
98
98
  {
99
99
  "path": "harness-archive/SKILL.md",
100
- "sha256": "9af57082a3e2dcda6fb33963756381f48b5c44d8c861a89ca3354c2709d67a23"
100
+ "sha256": "1fca0ef73c821e11353eed1f53141154057720e1d0bdd8ac86db8f3d83a4504f"
101
101
  },
102
102
  {
103
103
  "path": "harness-archive/templates/summary-data-template.json",
@@ -113,7 +113,7 @@
113
113
  },
114
114
  {
115
115
  "path": "harness-codebase-map/SKILL.md",
116
- "sha256": "1ac65b2435bd9b31be595ad2571e4f30c233c1fb0a54e48ed792c00e499a8fa8"
116
+ "sha256": "dd5917f396deb077cd1f174b788bf3f18defdad4670c7930e02c3b11d3ba04b8"
117
117
  },
118
118
  {
119
119
  "path": "harness-codebase-map/templates/ARCHITECTURE.md",
@@ -153,15 +153,15 @@
153
153
  },
154
154
  {
155
155
  "path": "harness-execute/SKILL.md",
156
- "sha256": "ed76717932b9eff11565518419d3aac1a08c37b1c514be26c6621686dc064088"
156
+ "sha256": "ea7ce4f1d8396927a1e1ccab7bde20b22bd1d50ae32270443ff19c8972009d63"
157
157
  },
158
158
  {
159
159
  "path": "harness-knowledge-ingest/SKILL.md",
160
- "sha256": "5faac1196aba982cedb8b3f2ea5d6e50c971129ac6d538727306f4c4a95cc518"
160
+ "sha256": "66439d3fc4fd51b5b58d5c076bc7acee47f6f3deb0026169e24c05c08f2b621b"
161
161
  },
162
162
  {
163
163
  "path": "harness-knowledge-query/SKILL.md",
164
- "sha256": "07dec3ed6caec8f1f4474e9e450364c4086b953bbc5bb73d6167a3d304cf0a89"
164
+ "sha256": "f7425336cb6c356d54fb7563db8f922243248c2661f9532c51a4d691154c0776"
165
165
  },
166
166
  {
167
167
  "path": "harness-plan/checklist.md",
@@ -177,15 +177,15 @@
177
177
  },
178
178
  {
179
179
  "path": "harness-plan/SKILL.md",
180
- "sha256": "cb1819b68f23e4b9e70b5db6cefef8564c86705ffe1fde47fef4e81d989c471a"
180
+ "sha256": "0d07b58b53ebe9cf730783853a8a35d442adc6cf6d0e23c999da93edd9a40417"
181
181
  },
182
182
  {
183
183
  "path": "harness-pull/SKILL.md",
184
- "sha256": "4fec95bac58d9a3cdf4d7e400bb854ddd6f05dab025207b9b70874c96656079c"
184
+ "sha256": "1728661bba39d630d658da485e595f29e87f0a4a5b8413127f3ce790da30a5a4"
185
185
  },
186
186
  {
187
187
  "path": "harness-push/SKILL.md",
188
- "sha256": "765013e8bc2b5b1b59632bc947188f323cc1f59fae986f1a44a328a36042dbcb"
188
+ "sha256": "e3a76874dd63fe65463861b03ebdf67d49af5fdf16ae7ca89986eca793fc01b1"
189
189
  },
190
190
  {
191
191
  "path": "harness-review/checklist.md",
@@ -201,7 +201,7 @@
201
201
  },
202
202
  {
203
203
  "path": "harness-review/SKILL.md",
204
- "sha256": "46b355ae7cee3d349808847369cb5871111f801af0f563681b6f7eaa57f3fc78"
204
+ "sha256": "fe765a0a4b213dad847660f02f14a788cd10aeef24f7c3b56105ecdfbcb652fe"
205
205
  },
206
206
  {
207
207
  "path": "harness-run/checklist.md",
@@ -217,7 +217,7 @@
217
217
  },
218
218
  {
219
219
  "path": "harness-run/SKILL.md",
220
- "sha256": "df0f7a5c27991a45295206b7aee1d2fda81ac1bcfc651fdd3585ee206905f621"
220
+ "sha256": "205cfe8582256d56a46070f25d78dfb16867c266ae537a2fbbd3c8d14a2332eb"
221
221
  },
222
222
  {
223
223
  "path": "harness-submit/checklist.md",
@@ -229,7 +229,7 @@
229
229
  },
230
230
  {
231
231
  "path": "harness-submit/SKILL.md",
232
- "sha256": "4729a6eeba8bdeb1521112e459c8037c9a6c610a08875c1de34139ddd01de7f6"
232
+ "sha256": "b8c1a9b07782a4bade7408eca3585ba1106cb74e0d63790679df5cb163440945"
233
233
  },
234
234
  {
235
235
  "path": "harness-sync/reference.md",
@@ -237,7 +237,7 @@
237
237
  },
238
238
  {
239
239
  "path": "harness-sync/SKILL.md",
240
- "sha256": "dd3a27d25875420a8f28b6b3319c160bfd6b031551846cedc2c55c8a8419c0f1"
240
+ "sha256": "326280b76a5b72891b8536c2c1588663e90bb5b1ff6dfcc89577ee90d13bb660"
241
241
  },
242
242
  {
243
243
  "path": "harness-test/checklist.md",
@@ -261,7 +261,7 @@
261
261
  },
262
262
  {
263
263
  "path": "harness-test/SKILL.md",
264
- "sha256": "f26515ca88995fa3a903b1b525999589b470e90201e263bb44ca830cd67b5dba"
264
+ "sha256": "0e1c8cb4619a43669d6087220832180edc6b9420995bfa0e80972d17143f6fb3"
265
265
  },
266
266
  {
267
267
  "path": "protocols/archive-report-protocol.md",
@@ -337,7 +337,7 @@
337
337
  },
338
338
  {
339
339
  "path": "scripts/harness_archive.py",
340
- "sha256": "cc73ae61ac8fc4da09a35a65a8fba88fe49e3bda02b8dd7879808a855bf888bd"
340
+ "sha256": "ed72e4f0bda6265fc397debc0fd6cc72b5ec6bd87d967823173f3cea9fbf006e"
341
341
  },
342
342
  {
343
343
  "path": "scripts/harness_change.py",
@@ -353,7 +353,7 @@
353
353
  },
354
354
  {
355
355
  "path": "scripts/harness_deploy.py",
356
- "sha256": "fb4290c2dd5c28a09c378da5ee7be491bdefe0410f277ec5dd2af1952cfddbca"
356
+ "sha256": "d64c2fbc0e50b39c3f5a135d05afc8720a480952c25a05c3dfa361cbc5d87c66"
357
357
  },
358
358
  {
359
359
  "path": "scripts/harness_efficiency.py",
@@ -393,7 +393,7 @@
393
393
  },
394
394
  {
395
395
  "path": "scripts/harness_knowledge_candidates.py",
396
- "sha256": "3cd0b9046821759cfc46221201d9760dc0a3b1613180a06b8ef3c821376b11c1"
396
+ "sha256": "6f17bbe80f47839bbafab73b9231cf078569a2b3275fc79c1275d039b15861fc"
397
397
  },
398
398
  {
399
399
  "path": "scripts/harness_ledger.py",
@@ -25,7 +25,7 @@
25
25
  "files": [
26
26
  {
27
27
  "path": ".harness-build.json",
28
- "sha256": "081bd6af0caf5bbcf34f5f279e04c2bbe6bd08feae84fcca152d67ef816fdf87"
28
+ "sha256": "6865a46b186140c6bd3880d3773ed8c0ac48bd7b8d8b5d4011cfbdba3c2cc1fd"
29
29
  },
30
30
  {
31
31
  "path": "CONTEXT.md",
@@ -85,7 +85,7 @@
85
85
  },
86
86
  {
87
87
  "path": "harness-archive/SKILL.md",
88
- "sha256": "9bb76a07a1b9efed50d84efca48b49cfd012834c64c80ea8e4b91fa4634fd5cb"
88
+ "sha256": "ab8c4a55a81898fe706a3fa2f3ee74a3447d066e364207ea1802d82c0ec10757"
89
89
  },
90
90
  {
91
91
  "path": "harness-archive/templates/summary-data-template.json",
@@ -101,7 +101,7 @@
101
101
  },
102
102
  {
103
103
  "path": "harness-codebase-map/SKILL.md",
104
- "sha256": "9770991aa831a32d132f7a426a7710a0ec165684248a4b4b46615851cb0e0e25"
104
+ "sha256": "63f3c6b08ff2952448e08ef1f9605567f41a6d08fc65741e1339ea3a0552ddce"
105
105
  },
106
106
  {
107
107
  "path": "harness-codebase-map/templates/ARCHITECTURE.md",
@@ -141,15 +141,15 @@
141
141
  },
142
142
  {
143
143
  "path": "harness-execute/SKILL.md",
144
- "sha256": "e8473ab6502281e77df7799c90c6fc2027233198e41d4844cda0d3244021113f"
144
+ "sha256": "9fe447fb17f0bb54e5770e09f6eeaf2cebf521936e1bf2c0ec69297256100119"
145
145
  },
146
146
  {
147
147
  "path": "harness-knowledge-ingest/SKILL.md",
148
- "sha256": "1a00dc7386680ed1802747928872d587fbd2819fa2b376fd08bff98d1ceff94c"
148
+ "sha256": "abe2ab9b25d644e2c0c1f82c14b72b060ea5e59456f79aa1d150e6eb84e4ce0d"
149
149
  },
150
150
  {
151
151
  "path": "harness-knowledge-query/SKILL.md",
152
- "sha256": "859aff6dc227e7c5a94eec652a3b003551c1ee25c92194754ddf8a177bded1ad"
152
+ "sha256": "536ee2e48ee3f072c8408f2319fab28b08f3b381713a4fe9b4174cf31591a9fc"
153
153
  },
154
154
  {
155
155
  "path": "harness-plan/checklist.md",
@@ -165,15 +165,15 @@
165
165
  },
166
166
  {
167
167
  "path": "harness-plan/SKILL.md",
168
- "sha256": "4f5e7f6b07a83d2d2c88c8265fb5707fd6108acbb4a0afc998567303ee6bcd29"
168
+ "sha256": "d21ad027a6893b0db6cea7701f5ad43c645c629a9729c60388fe7ebf1bce4a0f"
169
169
  },
170
170
  {
171
171
  "path": "harness-pull/SKILL.md",
172
- "sha256": "433735c390d7f313ea9b1dc2f162a78310ec7d5983bdf0661f1f694ee669330b"
172
+ "sha256": "2f2064f3b1b84ef6539209d61cfd808eb843991c828ceda0801e54467082eac6"
173
173
  },
174
174
  {
175
175
  "path": "harness-push/SKILL.md",
176
- "sha256": "b2b947a5a03cd75bb2cada429aa60145200d29686ef2274adee0bb8185ec2631"
176
+ "sha256": "5dcca5a2188679bf384650a7105e9f2867c6d8bfb035245d9a34c18303f97334"
177
177
  },
178
178
  {
179
179
  "path": "harness-review/checklist.md",
@@ -189,7 +189,7 @@
189
189
  },
190
190
  {
191
191
  "path": "harness-review/SKILL.md",
192
- "sha256": "04fa48ce1653c258b5c0a8feb5710c5db0e5f29173d1bb243a61fa8d0358327d"
192
+ "sha256": "404fb7b8631170f71dc7a55989b355729adf6c4d98e2d273b08b8ce92ee385a6"
193
193
  },
194
194
  {
195
195
  "path": "harness-run/checklist.md",
@@ -205,7 +205,7 @@
205
205
  },
206
206
  {
207
207
  "path": "harness-run/SKILL.md",
208
- "sha256": "9381596f899a86a0566557b813dad1c8f92a5c759f44487af6a7beb0efea9b76"
208
+ "sha256": "485e678bfc9f1e85b18aaa0a939a118b4a05b4a47fb8a125e26e65e799137271"
209
209
  },
210
210
  {
211
211
  "path": "harness-submit/checklist.md",
@@ -217,7 +217,7 @@
217
217
  },
218
218
  {
219
219
  "path": "harness-submit/SKILL.md",
220
- "sha256": "83f6bf582bcaa2354c073ba977314506ef16930fb8abd44ce7227380e3d7390e"
220
+ "sha256": "44f2d8e6a0abb0e6c80927364f5b22632e61e1c7b075753f661007d26addf35f"
221
221
  },
222
222
  {
223
223
  "path": "harness-sync/reference.md",
@@ -225,7 +225,7 @@
225
225
  },
226
226
  {
227
227
  "path": "harness-sync/SKILL.md",
228
- "sha256": "f7bee7f5be90495bcd7ad52c900c2e5fe0a13a8d23abb9001ad4f1ae0e00e3a7"
228
+ "sha256": "6c5750f3f42c396598bff909f0cd1396b5bccdaee7a2e4f52be9150ca939d621"
229
229
  },
230
230
  {
231
231
  "path": "harness-test/checklist.md",
@@ -249,7 +249,7 @@
249
249
  },
250
250
  {
251
251
  "path": "harness-test/SKILL.md",
252
- "sha256": "7d037f7159c39f8854e296c7f270fa5628e6e8d0743b09107dcefdacc80de349"
252
+ "sha256": "8fc6f888cef983ae633be1d1ff2ba2724f3fb6beceb094b3ce517e9951632aea"
253
253
  },
254
254
  {
255
255
  "path": "protocols/archive-report-protocol.md",
@@ -325,7 +325,7 @@
325
325
  },
326
326
  {
327
327
  "path": "scripts/harness_archive.py",
328
- "sha256": "cc73ae61ac8fc4da09a35a65a8fba88fe49e3bda02b8dd7879808a855bf888bd"
328
+ "sha256": "ed72e4f0bda6265fc397debc0fd6cc72b5ec6bd87d967823173f3cea9fbf006e"
329
329
  },
330
330
  {
331
331
  "path": "scripts/harness_change.py",
@@ -341,7 +341,7 @@
341
341
  },
342
342
  {
343
343
  "path": "scripts/harness_deploy.py",
344
- "sha256": "fb4290c2dd5c28a09c378da5ee7be491bdefe0410f277ec5dd2af1952cfddbca"
344
+ "sha256": "d64c2fbc0e50b39c3f5a135d05afc8720a480952c25a05c3dfa361cbc5d87c66"
345
345
  },
346
346
  {
347
347
  "path": "scripts/harness_efficiency.py",
@@ -381,7 +381,7 @@
381
381
  },
382
382
  {
383
383
  "path": "scripts/harness_knowledge_candidates.py",
384
- "sha256": "3cd0b9046821759cfc46221201d9760dc0a3b1613180a06b8ef3c821376b11c1"
384
+ "sha256": "6f17bbe80f47839bbafab73b9231cf078569a2b3275fc79c1275d039b15861fc"
385
385
  },
386
386
  {
387
387
  "path": "scripts/harness_ledger.py",