@bolloon/bolloon-agent 0.1.0 → 0.1.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 (581) hide show
  1. package/bin/bolloon-cli.cjs +157 -0
  2. package/bin/bolloon-daemon.sh +207 -0
  3. package/bin/bolloon.cmd +11 -0
  4. package/dist/agents/constraint-layer.js +10 -15
  5. package/dist/agents/pi-sdk.js +433 -106
  6. package/dist/agents/protocol.js +82 -1
  7. package/dist/agents/subagent-manager.js +2 -2
  8. package/dist/agents/workflow-engine.js +15 -20
  9. package/dist/agents/workflow-pivot-loop.js +541 -0
  10. package/dist/bollharness/src/index.js +5 -0
  11. package/dist/bollharness/src/scripts/checks/check_adr_plan_numbering.js +6 -0
  12. package/dist/bollharness/src/scripts/checks/check_api_types.js +45 -0
  13. package/dist/bollharness/src/scripts/checks/check_artifact_link.js +146 -0
  14. package/dist/bollharness/src/scripts/checks/check_bridge_deps.js +6 -0
  15. package/dist/bollharness/src/scripts/checks/check_bugfix_binding.js +6 -0
  16. package/dist/bollharness/src/scripts/checks/check_bugfix_binding_ci.js +6 -0
  17. package/dist/bollharness/src/scripts/checks/check_doc_file_references.js +6 -0
  18. package/dist/bollharness/src/scripts/checks/check_doc_freshness.js +135 -0
  19. package/dist/bollharness/src/scripts/checks/check_doc_links.js +31 -0
  20. package/dist/bollharness/src/scripts/checks/check_file_existence_claims.js +6 -0
  21. package/dist/bollharness/src/scripts/checks/check_fragment_integrity.js +34 -0
  22. package/dist/bollharness/src/scripts/checks/check_hook_installed.js +63 -0
  23. package/dist/bollharness/src/scripts/checks/check_issue_closure.js +41 -0
  24. package/dist/bollharness/src/scripts/checks/check_mcp_parity.js +6 -0
  25. package/dist/bollharness/src/scripts/checks/check_security.js +48 -0
  26. package/dist/bollharness/src/scripts/checks/check_skill_parity.js +6 -0
  27. package/dist/bollharness/src/scripts/checks/check_versions.js +6 -0
  28. package/dist/bollharness/src/scripts/checks/finding.js +13 -0
  29. package/dist/bollharness/src/scripts/checks/next_decision_number.js +20 -0
  30. package/dist/bollharness/src/scripts/checks/regenerate_magic_docs.js +6 -0
  31. package/dist/bollharness/src/scripts/ci/detect_rebaseline_triggers.js +8 -0
  32. package/dist/bollharness/src/scripts/ci/scan_subprocess_cfg.js +8 -0
  33. package/dist/bollharness/src/scripts/ci/scan_verify_artifacts.js +8 -0
  34. package/dist/bollharness/src/scripts/ci/scan_yaml_schema.js +8 -0
  35. package/dist/bollharness/src/scripts/context_router.js +67 -0
  36. package/dist/bollharness/src/scripts/deploy-guard.js +157 -0
  37. package/dist/bollharness/src/scripts/guard-feedback.js +192 -0
  38. package/dist/bollharness/src/scripts/guard_router.js +158 -0
  39. package/dist/bollharness/src/scripts/hooks/_hook_output.js +6 -0
  40. package/dist/bollharness/src/scripts/hooks/auto-python3.js +6 -0
  41. package/dist/bollharness/src/scripts/hooks/deploy-progress-on-session-end.js +6 -0
  42. package/dist/bollharness/src/scripts/hooks/failure-analyzer.js +6 -0
  43. package/dist/bollharness/src/scripts/hooks/gate-judgment-inject.js +92 -0
  44. package/dist/bollharness/src/scripts/hooks/gate-transition-judgment.js +63 -0
  45. package/dist/bollharness/src/scripts/hooks/inbox-ack.js +6 -0
  46. package/dist/bollharness/src/scripts/hooks/inbox-inject-on-start.js +6 -0
  47. package/dist/bollharness/src/scripts/hooks/inbox-validate.js +6 -0
  48. package/dist/bollharness/src/scripts/hooks/inbox-write-ledger.js +6 -0
  49. package/dist/bollharness/src/scripts/hooks/initializer-agent.js +6 -0
  50. package/dist/bollharness/src/scripts/hooks/loop-detection.js +73 -0
  51. package/dist/bollharness/src/scripts/hooks/owner-guard.js +6 -0
  52. package/dist/bollharness/src/scripts/hooks/precompact.js +6 -0
  53. package/dist/bollharness/src/scripts/hooks/review-agent-gatekeeper.js +6 -0
  54. package/dist/bollharness/src/scripts/hooks/risk-tracker.js +108 -0
  55. package/dist/bollharness/src/scripts/hooks/sanitize-on-read.js +6 -0
  56. package/dist/bollharness/src/scripts/hooks/session-reflection.js +7 -0
  57. package/dist/bollharness/src/scripts/hooks/session-start-magic-docs.js +7 -0
  58. package/dist/bollharness/src/scripts/hooks/session-start-reset-risk.js +7 -0
  59. package/dist/bollharness/src/scripts/hooks/session-start-toolkit-reminder.js +7 -0
  60. package/dist/bollharness/src/scripts/hooks/stop-evaluator.js +157 -0
  61. package/dist/bollharness/src/scripts/hooks/tool-call-counter.js +6 -0
  62. package/dist/bollharness/src/scripts/hooks/trace-analyzer.js +10 -0
  63. package/dist/bollharness/src/scripts/install/install-trust-token.js +7 -0
  64. package/dist/bollharness/src/scripts/install/multi_project_registry.js +9 -0
  65. package/dist/bollharness/src/scripts/install/phase2_auto.js +21 -0
  66. package/dist/bollharness/src/scripts/install/pre_commit_installer.js +6 -0
  67. package/dist/bollharness/src/scripts/install/tier_selector.js +7 -0
  68. package/dist/bollharness/src/scripts/install/transcript_miner.js +7 -0
  69. package/dist/bollharness/src/scripts/lib/claim_patterns.js +10 -0
  70. package/dist/bollharness/src/scripts/lib/sanitize_patterns.js +12 -0
  71. package/dist/bollharness/src/scripts/sanitize.js +6 -0
  72. package/dist/bollharness-integration/channel-judgment-engine.js +530 -0
  73. package/dist/bollharness-integration/context-chain-router.js +383 -0
  74. package/dist/bollharness-integration/context-router-judgment.js +13 -21
  75. package/dist/bollharness-integration/context-router.js +22 -64
  76. package/dist/bollharness-integration/gate-state-machine.js +14 -19
  77. package/dist/bollharness-integration/gate-transition-hooks.js +16 -61
  78. package/dist/bollharness-integration/guard-checker.js +21 -68
  79. package/dist/bollharness-integration/index.js +14 -124
  80. package/dist/bollharness-integration/integration.js +13 -20
  81. package/dist/bollharness-integration/llm-judgment-engine.js +569 -0
  82. package/dist/bollharness-integration/skill-adapter.js +18 -64
  83. package/dist/cli-entry.js +261 -0
  84. package/dist/constraint-runtime/src/commands.js +17 -7
  85. package/dist/constraint-runtime/src/constraint/budget.js +1 -6
  86. package/dist/constraint-runtime/src/constraint/permission.js +1 -6
  87. package/dist/constraint-runtime/src/models.js +1 -3
  88. package/dist/constraint-runtime/src/tools.js +17 -7
  89. package/dist/constraints/index.js +1 -7
  90. package/dist/documents/reader.js +8 -49
  91. package/dist/heartbeat/DaemonManager.js +242 -0
  92. package/dist/heartbeat/HealthMonitor.js +285 -0
  93. package/dist/heartbeat/StartupVerifier.js +205 -0
  94. package/dist/heartbeat/Watchdog.js +168 -0
  95. package/dist/heartbeat/index.js +84 -0
  96. package/dist/heartbeat/types.js +5 -0
  97. package/dist/index.js +381 -28
  98. package/dist/llm/config-store.js +31 -57
  99. package/dist/llm/llm-judgment-client.js +389 -0
  100. package/dist/llm/pi-ai.js +9 -52
  101. package/dist/network/agent-network.js +46 -90
  102. package/dist/network/hybrid-messenger.js +125 -0
  103. package/dist/network/iroh-bootstrap.js +38 -0
  104. package/dist/network/iroh-discovery.js +145 -0
  105. package/dist/network/iroh-integration.js +9 -16
  106. package/dist/network/iroh-transport.js +10 -48
  107. package/dist/network/p2p.js +23 -62
  108. package/dist/network/storage/adapters/json-adapter.js +4 -42
  109. package/dist/network/storage/index.js +147 -0
  110. package/dist/network/storage/types.js +14 -0
  111. package/dist/pi-ecosystem/index.js +233 -0
  112. package/dist/pi-ecosystem-colony/index.js +29 -90
  113. package/dist/pi-ecosystem-goals/index.js +20 -74
  114. package/dist/pi-ecosystem-judgment/decision.js +29 -47
  115. package/dist/pi-ecosystem-judgment/distillation.js +16 -29
  116. package/dist/pi-ecosystem-judgment/human-value-store.js +13 -60
  117. package/dist/pi-ecosystem-judgment/index.js +21 -74
  118. package/dist/pi-ecosystem-judgment/value-injection.js +26 -72
  119. package/dist/pi-ecosystem-mcp/index.js +24 -78
  120. package/dist/pi-ecosystem-subagents/index.js +20 -69
  121. package/dist/social/ant-colony/AdaptiveHeartbeat.js +3 -8
  122. package/dist/social/ant-colony/PheromoneEngine.js +11 -49
  123. package/dist/social/ant-colony/index.js +6 -0
  124. package/dist/social/ant-colony/types.js +4 -8
  125. package/dist/social/channels/ChannelManager.js +8 -46
  126. package/dist/social/channels/DiapChannelBridge.js +9 -47
  127. package/dist/social/channels/InterestMatcher.js +2 -7
  128. package/dist/social/channels/channel-agent-session.js +309 -0
  129. package/dist/social/channels/channel-heartbeat-agent.js +494 -0
  130. package/dist/social/channels/diap-doc-parser.js +204 -0
  131. package/dist/social/channels/harness-workflow-integrator.js +446 -0
  132. package/dist/social/channels/index.js +9 -0
  133. package/dist/social/channels/types.js +3 -7
  134. package/dist/social/global-shared-context.js +6 -47
  135. package/dist/social/heartbeat.js +29 -72
  136. package/dist/social/persona/enhanced-persona.js +299 -0
  137. package/dist/web/client.js +302 -136
  138. package/dist/web/components/p2p/index.js +159 -9
  139. package/dist/web/components/p2p/p2p-connection.js +136 -0
  140. package/dist/web/components/p2p/p2p-manager.js +24 -0
  141. package/dist/web/components/p2p/p2p-store-memory.js +1 -1
  142. package/dist/web/components/p2p/types.js +7 -0
  143. package/dist/web/index.html +5 -0
  144. package/dist/web/style.css +118 -0
  145. package/package.json +12 -6
  146. package/scripts/build-cli.js +206 -0
  147. package/scripts/postinstall.js +153 -0
  148. package/src/agents/pi-sdk.ts +347 -28
  149. package/src/agents/protocol.ts +95 -1
  150. package/src/agents/workflow-pivot-loop.ts +674 -0
  151. package/src/bollharness/scripts/context-fragments/pi-agent-operations.md +34 -0
  152. package/src/cli-entry.ts +304 -0
  153. package/src/heartbeat/DaemonManager.ts +283 -0
  154. package/src/heartbeat/HealthMonitor.ts +316 -0
  155. package/src/heartbeat/StartupVerifier.ts +223 -0
  156. package/src/heartbeat/Watchdog.ts +198 -0
  157. package/src/heartbeat/index.ts +108 -0
  158. package/src/heartbeat/types.ts +82 -0
  159. package/src/llm/config-store.ts +23 -5
  160. package/src/network/iroh-transport.ts +3 -3
  161. package/src/web/client.js +302 -136
  162. package/src/web/components/p2p/P2PModal.tsx +91 -3
  163. package/src/web/components/p2p/index.ts +171 -9
  164. package/src/web/components/p2p/p2p-connection.ts +153 -1
  165. package/src/web/components/p2p/p2p-manager.ts +39 -1
  166. package/src/web/components/p2p/p2p-store-memory.ts +1 -1
  167. package/src/web/components/p2p/p2p-tools.ts +315 -0
  168. package/src/web/components/p2p/types.ts +58 -0
  169. package/src/web/index.html +5 -0
  170. package/src/web/server.ts +353 -36
  171. package/src/web/style.css +118 -0
  172. package/tsconfig.cli.json +16 -0
  173. package/tsconfig.electron.json +1 -1
  174. package/tsconfig.json +1 -2
  175. package/dist/constraint-runtime/tests/agent.test.js +0 -16
  176. package/dist/constraint-runtime/tests/constraint.test.js +0 -41
  177. package/dist/constraint-runtime/tests/skill.test.js +0 -19
  178. package/dist/constraint-runtime/tests/thinking.test.js +0 -22
  179. package/dist/electron-preload.js +0 -15
  180. package/dist/electron-preload.js.map +0 -1
  181. package/dist/electron.js +0 -206
  182. package/dist/electron.js.map +0 -1
  183. package/dist/test/constraint-layer.test.js +0 -164
  184. package/dist/test/global-shared-context.test.js +0 -315
  185. package/dist/test/pi-sdk.test.js +0 -47
  186. package/dist/test/set-persona.test.js +0 -38
  187. package/dist/test/subagent-manager.test.js +0 -276
  188. package/dist/test/workflow-engine.test.js +0 -87
  189. package/dist/web/server.js +0 -1647
  190. package/dist/web/server.js.map +0 -1
  191. package/dist/workflows/collaboration.js +0 -374
  192. package/dist/workflows/index.js +0 -54
  193. package/docs/agent-communication.md +0 -333
  194. package/docs/plans/2026-05-15-document-agent-design.md +0 -479
  195. package/docs/plans/2026-05-15-document-agent-implementation-plan.md +0 -792
  196. package/docs/plans/2026-05-16-chat-ui-design.md +0 -86
  197. package/docs/plans/2026-05-16-constraint-runtime-design.md +0 -106
  198. package/docs/plans/2026-05-16-constraint-runtime-implementation.md +0 -441
  199. package/docs//346/225/260/345/255/246/350/276/205/345/212/251/346/231/272/350/203/275/344/275/223-/346/240/270/345/277/203/346/225/210/346/236/234/345/256/232/344/271/211.md +0 -287
  200. package/src/bollharness/.boll/CLAUDE.md.template +0 -34
  201. package/src/bollharness/.boll/MANIFEST.yaml +0 -213
  202. package/src/bollharness/.boll/active-review-agents/.gitkeep +0 -0
  203. package/src/bollharness/.boll/agents/review-base.yaml +0 -108
  204. package/src/bollharness/.boll/deploy-allowlist.yaml +0 -38
  205. package/src/bollharness/.boll/inbox/schema/message-v1.json +0 -99
  206. package/src/bollharness/.boll/install-staging/.gitkeep +0 -0
  207. package/src/bollharness/.boll/issue-adapter.yaml +0 -31
  208. package/src/bollharness/.boll/plugins/boll-mode-toolkit/contracts/mode-contract.md +0 -85
  209. package/src/bollharness/.boll/plugins/boll-review-toolkit/contracts/evidence-packet-schema.json +0 -102
  210. package/src/bollharness/.boll/plugins/boll-review-toolkit/contracts/review-contract.yaml +0 -247
  211. package/src/bollharness/.boll/rules/backend-routes.md +0 -31
  212. package/src/bollharness/.boll/rules/closure-semantics.md +0 -30
  213. package/src/bollharness/.boll/rules/env-vars.md +0 -32
  214. package/src/bollharness/.boll/rules/hanis-protocol.md +0 -145
  215. package/src/bollharness/.boll/rules/repo-structure.md +0 -42
  216. package/src/bollharness/.boll/rules/review-agent-isolation.md +0 -73
  217. package/src/bollharness/.boll/rules/source-of-truth.md +0 -33
  218. package/src/bollharness/.boll/settings.json +0 -180
  219. package/src/bollharness/.boll/settings.json.template +0 -31
  220. package/src/bollharness/.boll/skills/arch/SKILL.md +0 -372
  221. package/src/bollharness/.boll/skills/bug-pipeline/SKILL.md +0 -168
  222. package/src/bollharness/.boll/skills/bug-triage/SKILL.md +0 -161
  223. package/src/bollharness/.boll/skills/context-chains/SKILL.md +0 -250
  224. package/src/bollharness/.boll/skills/context-chains/context-chain-index.md +0 -48
  225. package/src/bollharness/.boll/skills/context-chains/work-type-extractors/code_change_extractor.ts +0 -142
  226. package/src/bollharness/.boll/skills/context-chains/work-type-extractors/debugging_extractor.ts +0 -126
  227. package/src/bollharness/.boll/skills/context-chains/work-type-extractors/design_extractor.ts +0 -148
  228. package/src/bollharness/.boll/skills/context-chains/work-type-extractors/planning_extractor.ts +0 -162
  229. package/src/bollharness/.boll/skills/context-chains/work-type-extractors/question_extractor.ts +0 -116
  230. package/src/bollharness/.boll/skills/context-chains/work-type-extractors/review_extractor.ts +0 -136
  231. package/src/bollharness/.boll/skills/crystal-learn/SKILL.md +0 -93
  232. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-0.md +0 -34
  233. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-1.md +0 -34
  234. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-2.md +0 -35
  235. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-3.md +0 -34
  236. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-4.md +0 -43
  237. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-5.md +0 -34
  238. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-6.md +0 -37
  239. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-7.md +0 -46
  240. package/src/bollharness/.boll/skills/guardian-fixer/PROMPT.md +0 -415
  241. package/src/bollharness/.boll/skills/guardian-fixer/SKILL.md +0 -320
  242. package/src/bollharness/.boll/skills/harness-dev/SKILL.md +0 -93
  243. package/src/bollharness/.boll/skills/harness-dev/examples/README.md +0 -227
  244. package/src/bollharness/.boll/skills/harness-dev-handoff/SKILL.md +0 -165
  245. package/src/bollharness/.boll/skills/harness-eng/SKILL.md +0 -110
  246. package/src/bollharness/.boll/skills/harness-eng-test/SKILL.md +0 -79
  247. package/src/bollharness/.boll/skills/harness-lab/SKILL.md +0 -170
  248. package/src/bollharness/.boll/skills/harness-ops/SKILL.md +0 -57
  249. package/src/bollharness/.boll/skills/harness-voice/SKILL.md +0 -183
  250. package/src/bollharness/.boll/skills/judgment/SKILL.md +0 -115
  251. package/src/bollharness/.boll/skills/lead/SKILL.md +0 -245
  252. package/src/bollharness/.boll/skills/lead/install-wow-harness.md +0 -77
  253. package/src/bollharness/.boll/skills/lead/ref-review-sop.md +0 -91
  254. package/src/bollharness/.boll/skills/lead/ref-stages.md +0 -129
  255. package/src/bollharness/.boll/skills/skill-discovery/SKILL.md +0 -169
  256. package/src/bollharness/.boll/skills/task-arch/SKILL.md +0 -106
  257. package/src/bollharness/.boll/skills/toolkit/SKILL.md +0 -57
  258. package/src/bollharness/.boll/tasks/.gitkeep +0 -0
  259. package/src/bollharness/.boll/toolkit-index.yaml +0 -112
  260. package/src/bollharness/.claude/agents/review-base.yaml +0 -108
  261. package/src/bollharness/.claude/plugins/boll-mode-toolkit/.claude-plugin/plugin.json +0 -44
  262. package/src/bollharness/.claude/plugins/boll-review-toolkit/.claude-plugin/plugin.json +0 -24
  263. package/src/bollharness/.claude/plugins/boll-review-toolkit/contracts/evidence-packet-schema.json +0 -102
  264. package/src/bollharness/.claude/plugins/boll-review-toolkit/contracts/review-contract.yaml +0 -247
  265. package/src/bollharness/.claude/settings.json +0 -157
  266. package/src/bollharness/.claude/skills/arch/SKILL.md +0 -64
  267. package/src/bollharness/.claude/skills/crystal-learn/SKILL.md +0 -93
  268. package/src/bollharness/.claude/skills/guardian-fixer/PROMPT.md +0 -44
  269. package/src/bollharness/.claude/skills/guardian-fixer/SKILL.md +0 -324
  270. package/src/bollharness/.claude/skills/harness-dev/SKILL.md +0 -93
  271. package/src/bollharness/.claude/skills/harness-dev/examples/README.md +0 -17
  272. package/src/bollharness/.claude/skills/harness-dev-handoff/SKILL.md +0 -165
  273. package/src/bollharness/.claude/skills/harness-eng/SKILL.md +0 -183
  274. package/src/bollharness/.claude/skills/harness-eng-test/SKILL.md +0 -57
  275. package/src/bollharness/.claude/skills/harness-ops/SKILL.md +0 -57
  276. package/src/bollharness/.claude/skills/harness-voice/SKILL.md +0 -84
  277. package/src/bollharness/.claude/skills/lead/INDEX.md +0 -28
  278. package/src/bollharness/.claude/skills/lead/SKILL.md +0 -24
  279. package/src/bollharness/.claude/skills/lead/install-wow-harness.md +0 -77
  280. package/src/bollharness/.claude/skills/lead/ref-review-sop.md +0 -48
  281. package/src/bollharness/.claude/skills/lead/ref-stages.md +0 -58
  282. package/src/bollharness/.claude/skills/plan-lock/SKILL.md +0 -74
  283. package/src/bollharness/.claude/skills/skill-discovery/SKILL.md +0 -120
  284. package/src/bollharness/.claude/skills/task-arch/SKILL.md +0 -106
  285. package/src/bollharness/.claude/skills/toolkit/SKILL.md +0 -57
  286. package/src/bollharness/.claude/skills/toolkit/list.sh +0 -92
  287. package/src/bollharness/.githooks/pre-commit +0 -21
  288. package/src/bollharness/.github/workflows/ci.yml +0 -88
  289. package/src/bollharness/docs/decisions/ADR-030-guard-signal-protocol-and-governance-reload.md +0 -1076
  290. package/src/bollharness/docs/decisions/ADR-038-harness-optimization-strategy.md +0 -2039
  291. package/src/bollharness/docs/decisions/ADR-041-codex-claude-code-division-of-labor.md +0 -128
  292. package/src/bollharness/docs/decisions/ADR-H1-crystal-learn-revival.md +0 -188
  293. package/src/bollharness/docs/decisions/ADR-H2-identity-isolation.md +0 -183
  294. package/src/bollharness/docs/decisions/ADR-H3-memory-scope.md +0 -133
  295. package/src/bollharness/docs/decisions/ADR-H4-prompt-governance.md +0 -146
  296. package/src/bollharness/docs/decisions/ADR-H5-gate-quantization.md +0 -212
  297. package/src/bollharness/docs/decisions/ADR-H6-state-file-health.md +0 -211
  298. package/src/bollharness/docs/decisions/ADR-H8-issue-and-doc-compliance.md +0 -202
  299. package/src/bollharness/docs/decisions/ADR-H9-mailbox.md +0 -231
  300. package/src/bollharness/docs/decisions/PLAN-H1-crystal-learn-revival.md +0 -270
  301. package/src/bollharness/docs/decisions/PLAN-H2-identity-isolation.md +0 -291
  302. package/src/bollharness/docs/decisions/PLAN-H3-memory-scope.md +0 -228
  303. package/src/bollharness/docs/decisions/PLAN-H4-prompt-governance.md +0 -227
  304. package/src/bollharness/docs/decisions/PLAN-H5-gate-quantization.md +0 -239
  305. package/src/bollharness/docs/decisions/PLAN-H6-state-file-health.md +0 -325
  306. package/src/bollharness/docs/decisions/PLAN-H8-issue-and-doc-compliance.md +0 -242
  307. package/src/bollharness/docs/decisions/PLAN-H9-mailbox.md +0 -378
  308. package/src/bollharness/docs/launch-article-en.md +0 -276
  309. package/src/bollharness/docs/launch-article-zh.md +0 -305
  310. package/src/bollharness/docs/practice.html +0 -356
  311. package/src/bollharness/docs/practice.md +0 -82
  312. package/src/bollharness/docs/research/round-1/README.md +0 -11
  313. package/src/bollharness/docs/research/round-2/README.md +0 -11
  314. package/src/bollharness/docs/research/round-3/README.md +0 -11
  315. package/src/bollharness/docs/research/round-4/README.md +0 -11
  316. package/src/bollharness/docs/research/round-5/README.md +0 -11
  317. package/src/bollharness/docs/research/round-6/README.md +0 -11
  318. package/src/bollharness/package-lock.json +0 -48
  319. package/src/bollharness/reference/boll-reference/.claude/rules/backend-routes.md +0 -268
  320. package/src/bollharness/reference/boll-reference/.claude/rules/bridge.md +0 -20
  321. package/src/bollharness/reference/boll-reference/.claude/rules/closure-semantics.md +0 -30
  322. package/src/bollharness/reference/boll-reference/.claude/rules/coaching.md +0 -13
  323. package/src/bollharness/reference/boll-reference/.claude/rules/env-vars.md +0 -50
  324. package/src/bollharness/reference/boll-reference/.claude/rules/hackathon.md +0 -12
  325. package/src/bollharness/reference/boll-reference/.claude/rules/repo-structure.md +0 -184
  326. package/src/bollharness/reference/boll-reference/.claude/rules/review-agent-isolation.md +0 -112
  327. package/src/bollharness/reference/boll-reference/.claude/rules/scenes.md +0 -12
  328. package/src/bollharness/reference/boll-reference/.claude/skills/arch/SKILL.md +0 -551
  329. package/src/bollharness/reference/boll-reference/.claude/skills/boll-animation/SKILL.md +0 -26
  330. package/src/bollharness/reference/boll-reference/.claude/skills/boll-bridge/SKILL.md +0 -227
  331. package/src/bollharness/reference/boll-reference/.claude/skills/boll-bridge/agents/openai.yaml +0 -4
  332. package/src/bollharness/reference/boll-reference/.claude/skills/boll-bridge/references/bridge-failure-taxonomy.md +0 -142
  333. package/src/bollharness/reference/boll-reference/.claude/skills/boll-bridge/references/bridge-validation-ladder.md +0 -107
  334. package/src/bollharness/reference/boll-reference/.claude/skills/boll-crystal/SKILL.md +0 -893
  335. package/src/bollharness/reference/boll-reference/.claude/skills/boll-crystal-learn/SKILL.md +0 -89
  336. package/src/bollharness/reference/boll-reference/.claude/skills/boll-dev/SKILL.md +0 -93
  337. package/src/bollharness/reference/boll-reference/.claude/skills/boll-dev/examples/README.md +0 -209
  338. package/src/bollharness/reference/boll-reference/.claude/skills/boll-dev-handoff/SKILL.md +0 -165
  339. package/src/bollharness/reference/boll-reference/.claude/skills/boll-eng/SKILL.md +0 -110
  340. package/src/bollharness/reference/boll-reference/.claude/skills/boll-eng-frontend/SKILL.md +0 -203
  341. package/src/bollharness/reference/boll-reference/.claude/skills/boll-eng-hdc/SKILL.md +0 -27
  342. package/src/bollharness/reference/boll-reference/.claude/skills/boll-eng-orchestrator/SKILL.md +0 -28
  343. package/src/bollharness/reference/boll-reference/.claude/skills/boll-eng-prompt/SKILL.md +0 -27
  344. package/src/bollharness/reference/boll-reference/.claude/skills/boll-eng-test/SKILL.md +0 -79
  345. package/src/bollharness/reference/boll-reference/.claude/skills/boll-lab/SKILL.md +0 -372
  346. package/src/bollharness/reference/boll-reference/.claude/skills/boll-run/SKILL.md +0 -437
  347. package/src/bollharness/reference/boll-reference/.claude/skills/boll-ux-appstore/SKILL.md +0 -27
  348. package/src/bollharness/reference/boll-reference/.claude/skills/boll-voice/SKILL.md +0 -442
  349. package/src/bollharness/reference/boll-reference/.claude/skills/guardian-fixer/PROMPT.md +0 -421
  350. package/src/bollharness/reference/boll-reference/.claude/skills/guardian-fixer/SKILL.md +0 -326
  351. package/src/bollharness/reference/boll-reference/.claude/skills/lead/SKILL.md +0 -155
  352. package/src/bollharness/reference/boll-reference/.claude/skills/lead/ref-review-sop.md +0 -91
  353. package/src/bollharness/reference/boll-reference/.claude/skills/lead/ref-stages.md +0 -129
  354. package/src/bollharness/reference/boll-reference/.claude/skills/nature-designer/output/skill-map-preview.png +0 -0
  355. package/src/bollharness/reference/boll-reference/.claude/skills/nature-designer/output/skill-map-v2.png +0 -0
  356. package/src/bollharness/reference/boll-reference/.claude/skills/nature-designer/output/skill-map-v3.png +0 -0
  357. package/src/bollharness/reference/boll-reference/.claude/skills/nature-designer/output/skill-map-v4.png +0 -0
  358. package/src/bollharness/reference/boll-reference/.claude/skills/plan-lock/SKILL.md +0 -425
  359. package/src/bollharness/reference/boll-reference/.claude/skills/plan-lock/ref-three-checks.md +0 -62
  360. package/src/bollharness/reference/boll-reference/.claude/skills/plan-lock/ref-wp-templates.md +0 -78
  361. package/src/bollharness/reference/boll-reference/.claude/skills/task-arch/SKILL.md +0 -76
  362. package/src/bollharness/reference/boll-reference/.claude/skills/vibedevteam-graph/SKILL.md +0 -57
  363. package/src/bollharness/reference/boll-reference/.claude/skills/vibedevteam-graph/beads-graph.sh +0 -153
  364. package/src/bollharness/reference/boll-reference/.claude/skills/vibedevteam-init/SKILL.md +0 -52
  365. package/src/bollharness/reference/boll-reference/.claude/skills/vibedevteam-init/beads-auto-link.sh +0 -76
  366. package/src/bollharness/reference/boll-reference/.claude/skills/vibedevteam-sync/SKILL.md +0 -50
  367. package/src/bollharness/reference/boll-reference/.claude/skills/vibedevteam-sync/beads-sync-proj.sh +0 -108
  368. package/src/bollharness/reference/boll-reference/docs/architecture/AGENT-PROFILE.md +0 -151
  369. package/src/bollharness/reference/boll-reference/docs/architecture/COST-STRUCTURE.md +0 -56
  370. package/src/bollharness/reference/boll-reference/docs/architecture/INDEX.md +0 -76
  371. package/src/bollharness/reference/boll-reference/docs/architecture/MODULE1-INTENT-FIELD.md +0 -116
  372. package/src/bollharness/reference/boll-reference/docs/architecture/MODULE2-CRYSTALLIZATION.md +0 -200
  373. package/src/bollharness/reference/boll-reference/docs/architecture/PRINCIPLES.md +0 -84
  374. package/src/bollharness/reference/boll-reference/docs/architecture/PROTOCOL-CORE.md +0 -209
  375. package/src/bollharness/reference/boll-reference/docs/architecture/VISION.md +0 -181
  376. package/src/bollharness/reference/boll-reference/docs/architecture/discussions/D-01-MARKET-SCENE-PROTOCOL.md +0 -754
  377. package/src/bollharness/templates/scaffold/.boll/guard/.gitkeep +0 -0
  378. package/src/bollharness/templates/scaffold/.boll/metrics/.gitkeep +0 -0
  379. package/src/bollharness/templates/scaffold/.boll/state/.gitkeep +0 -0
  380. package/src/bollharness/templates/scaffold/docs/INDEX.md +0 -3
  381. package/src/bollharness/templates/scaffold/docs/decisions/ADR_TEMPLATE.md +0 -38
  382. package/src/bollharness/templates/scaffold/docs/decisions/PLAN_TEMPLATE.md +0 -45
  383. package/src/bollharness/templates/scaffold/docs/decisions/tasks/.gitkeep +0 -2
  384. package/src/bollharness/templates/scaffold/docs/issues/.gitkeep +0 -0
  385. package/src/bollharness/templates/scaffold/docs/issues/GUARD_ISSUE_TEMPLATE.md +0 -35
  386. package/src/bollharness/templates/scaffold/docs/issues/ISSUE_TEMPLATE.md +0 -51
  387. package/src/bollharness/tsconfig.json +0 -26
  388. package/src/constraint-runtime/package-lock.json +0 -48
  389. package/src/constraint-runtime/package.json +0 -34
  390. package/src/constraint-runtime/src/_archive_helper.ts +0 -16
  391. package/src/constraint-runtime/src/agent/coordinator.ts +0 -71
  392. package/src/constraint-runtime/src/agent/index.ts +0 -1
  393. package/src/constraint-runtime/src/assistant/index.ts +0 -15
  394. package/src/constraint-runtime/src/bootstrap/index.ts +0 -15
  395. package/src/constraint-runtime/src/bootstrap_graph.ts +0 -17
  396. package/src/constraint-runtime/src/bridge/index.ts +0 -15
  397. package/src/constraint-runtime/src/buddy/index.ts +0 -15
  398. package/src/constraint-runtime/src/cli/index.ts +0 -15
  399. package/src/constraint-runtime/src/command_graph.ts +0 -20
  400. package/src/constraint-runtime/src/commands.ts +0 -83
  401. package/src/constraint-runtime/src/components/index.ts +0 -15
  402. package/src/constraint-runtime/src/constants/index.ts +0 -15
  403. package/src/constraint-runtime/src/constraint/budget.ts +0 -25
  404. package/src/constraint-runtime/src/constraint/index.ts +0 -3
  405. package/src/constraint-runtime/src/constraint/permission.ts +0 -28
  406. package/src/constraint-runtime/src/context.ts +0 -45
  407. package/src/constraint-runtime/src/coordinator/index.ts +0 -15
  408. package/src/constraint-runtime/src/cost_hook.ts +0 -6
  409. package/src/constraint-runtime/src/cost_tracker.ts +0 -9
  410. package/src/constraint-runtime/src/deferred_init.ts +0 -18
  411. package/src/constraint-runtime/src/direct_modes.ts +0 -13
  412. package/src/constraint-runtime/src/dynamic-tool-loader.ts +0 -115
  413. package/src/constraint-runtime/src/entrypoints/index.ts +0 -15
  414. package/src/constraint-runtime/src/execution_registry.ts +0 -41
  415. package/src/constraint-runtime/src/history.ts +0 -16
  416. package/src/constraint-runtime/src/hooks/index.ts +0 -15
  417. package/src/constraint-runtime/src/index.ts +0 -28
  418. package/src/constraint-runtime/src/ink.ts +0 -4
  419. package/src/constraint-runtime/src/keybindings/index.ts +0 -15
  420. package/src/constraint-runtime/src/memdir/index.ts +0 -15
  421. package/src/constraint-runtime/src/migrations/index.ts +0 -15
  422. package/src/constraint-runtime/src/models.ts +0 -49
  423. package/src/constraint-runtime/src/moreright/index.ts +0 -15
  424. package/src/constraint-runtime/src/native_ts/index.ts +0 -15
  425. package/src/constraint-runtime/src/output_styles/index.ts +0 -15
  426. package/src/constraint-runtime/src/parity_audit.ts +0 -23
  427. package/src/constraint-runtime/src/plugins/index.ts +0 -15
  428. package/src/constraint-runtime/src/port_manifest.ts +0 -20
  429. package/src/constraint-runtime/src/prefetch.ts +0 -17
  430. package/src/constraint-runtime/src/query.ts +0 -7
  431. package/src/constraint-runtime/src/reference_data/archive_surface_snapshot.json +0 -63
  432. package/src/constraint-runtime/src/reference_data/commands_snapshot.json +0 -1037
  433. package/src/constraint-runtime/src/reference_data/subsystems/OpenCLI.json +0 -10
  434. package/src/constraint-runtime/src/reference_data/subsystems/PolymarketSDK.json +0 -12
  435. package/src/constraint-runtime/src/reference_data/subsystems/SafeSDK.json +0 -14
  436. package/src/constraint-runtime/src/reference_data/subsystems/assistant.json +0 -8
  437. package/src/constraint-runtime/src/reference_data/subsystems/bootstrap.json +0 -8
  438. package/src/constraint-runtime/src/reference_data/subsystems/bridge.json +0 -32
  439. package/src/constraint-runtime/src/reference_data/subsystems/buddy.json +0 -13
  440. package/src/constraint-runtime/src/reference_data/subsystems/cli.json +0 -26
  441. package/src/constraint-runtime/src/reference_data/subsystems/components.json +0 -32
  442. package/src/constraint-runtime/src/reference_data/subsystems/constants.json +0 -28
  443. package/src/constraint-runtime/src/reference_data/subsystems/coordinator.json +0 -8
  444. package/src/constraint-runtime/src/reference_data/subsystems/entrypoints.json +0 -15
  445. package/src/constraint-runtime/src/reference_data/subsystems/hooks.json +0 -32
  446. package/src/constraint-runtime/src/reference_data/subsystems/keybindings.json +0 -21
  447. package/src/constraint-runtime/src/reference_data/subsystems/memdir.json +0 -15
  448. package/src/constraint-runtime/src/reference_data/subsystems/migrations.json +0 -18
  449. package/src/constraint-runtime/src/reference_data/subsystems/moreright.json +0 -8
  450. package/src/constraint-runtime/src/reference_data/subsystems/native_ts.json +0 -11
  451. package/src/constraint-runtime/src/reference_data/subsystems/outputStyles.json +0 -8
  452. package/src/constraint-runtime/src/reference_data/subsystems/plugins.json +0 -9
  453. package/src/constraint-runtime/src/reference_data/subsystems/remote.json +0 -11
  454. package/src/constraint-runtime/src/reference_data/subsystems/schemas.json +0 -8
  455. package/src/constraint-runtime/src/reference_data/subsystems/screens.json +0 -10
  456. package/src/constraint-runtime/src/reference_data/subsystems/server.json +0 -10
  457. package/src/constraint-runtime/src/reference_data/subsystems/services.json +0 -32
  458. package/src/constraint-runtime/src/reference_data/subsystems/skills.json +0 -27
  459. package/src/constraint-runtime/src/reference_data/subsystems/state.json +0 -13
  460. package/src/constraint-runtime/src/reference_data/subsystems/types.json +0 -18
  461. package/src/constraint-runtime/src/reference_data/subsystems/upstreamproxy.json +0 -9
  462. package/src/constraint-runtime/src/reference_data/subsystems/utils.json +0 -32
  463. package/src/constraint-runtime/src/reference_data/subsystems/vim.json +0 -12
  464. package/src/constraint-runtime/src/reference_data/subsystems/voice.json +0 -8
  465. package/src/constraint-runtime/src/reference_data/tools_snapshot.json +0 -1042
  466. package/src/constraint-runtime/src/remote/index.ts +0 -15
  467. package/src/constraint-runtime/src/remote_runtime.ts +0 -17
  468. package/src/constraint-runtime/src/runtime/index.ts +0 -1
  469. package/src/constraint-runtime/src/runtime/session.ts +0 -42
  470. package/src/constraint-runtime/src/schemas/index.ts +0 -15
  471. package/src/constraint-runtime/src/screens/index.ts +0 -15
  472. package/src/constraint-runtime/src/server/index.ts +0 -15
  473. package/src/constraint-runtime/src/services/index.ts +0 -15
  474. package/src/constraint-runtime/src/session_store.ts +0 -32
  475. package/src/constraint-runtime/src/setup.ts +0 -50
  476. package/src/constraint-runtime/src/skills/index.ts +0 -1
  477. package/src/constraint-runtime/src/skills/skill-registry.ts +0 -40
  478. package/src/constraint-runtime/src/state/index.ts +0 -15
  479. package/src/constraint-runtime/src/system_init.ts +0 -21
  480. package/src/constraint-runtime/src/thinking/engine.ts +0 -61
  481. package/src/constraint-runtime/src/thinking/index.ts +0 -1
  482. package/src/constraint-runtime/src/tool_pool.ts +0 -20
  483. package/src/constraint-runtime/src/tools/OpenCLI/execAdapter.ts +0 -12
  484. package/src/constraint-runtime/src/tools/OpenCLI/listAdapters.ts +0 -12
  485. package/src/constraint-runtime/src/tools/OpenCLI/runCommand.ts +0 -13
  486. package/src/constraint-runtime/src/tools/PolymarketSDK/cancelOrder.ts +0 -10
  487. package/src/constraint-runtime/src/tools/PolymarketSDK/createOrder.ts +0 -13
  488. package/src/constraint-runtime/src/tools/PolymarketSDK/getMarket.ts +0 -14
  489. package/src/constraint-runtime/src/tools/PolymarketSDK/getOrders.ts +0 -10
  490. package/src/constraint-runtime/src/tools/PolymarketSDK/listMarkets.ts +0 -24
  491. package/src/constraint-runtime/src/tools/SafeSDK/confirmTransaction.ts +0 -13
  492. package/src/constraint-runtime/src/tools/SafeSDK/createTransaction.ts +0 -23
  493. package/src/constraint-runtime/src/tools/SafeSDK/deploySafe.ts +0 -12
  494. package/src/constraint-runtime/src/tools/SafeSDK/executeTransaction.ts +0 -12
  495. package/src/constraint-runtime/src/tools/SafeSDK/getBalance.ts +0 -10
  496. package/src/constraint-runtime/src/tools/SafeSDK/getPendingTransactions.ts +0 -10
  497. package/src/constraint-runtime/src/tools/SafeSDK/proposeTransaction.ts +0 -14
  498. package/src/constraint-runtime/src/tools/WalletTools/autoPay.ts +0 -58
  499. package/src/constraint-runtime/src/tools/WalletTools/createWallet.ts +0 -19
  500. package/src/constraint-runtime/src/tools/WalletTools/getBalance.ts +0 -28
  501. package/src/constraint-runtime/src/tools/WalletTools/importWallet.ts +0 -34
  502. package/src/constraint-runtime/src/tools/WalletTools/sendTransaction.ts +0 -50
  503. package/src/constraint-runtime/src/tools/WalletTools/signMessage.ts +0 -23
  504. package/src/constraint-runtime/src/tools/WalletTools/transferToken.ts +0 -49
  505. package/src/constraint-runtime/src/tools.ts +0 -100
  506. package/src/constraint-runtime/src/transcript.ts +0 -23
  507. package/src/constraint-runtime/src/types/index.ts +0 -15
  508. package/src/constraint-runtime/src/upstream_proxy/index.ts +0 -15
  509. package/src/constraint-runtime/src/utils/index.ts +0 -15
  510. package/src/constraint-runtime/src/vim/index.ts +0 -15
  511. package/src/constraint-runtime/src/voice/index.ts +0 -15
  512. package/src/constraint-runtime/tests/agent.test.ts +0 -20
  513. package/src/constraint-runtime/tests/constraint.test.ts +0 -47
  514. package/src/constraint-runtime/tests/skill.test.ts +0 -23
  515. package/src/constraint-runtime/tests/thinking.test.ts +0 -28
  516. package/src/constraint-runtime/tsconfig.json +0 -13
  517. package/src/pi-ecosystem/index.ts +0 -453
  518. package/src/pi-ecosystem-colony/index.ts +0 -482
  519. package/src/pi-ecosystem-goals/index.ts +0 -585
  520. package/src/pi-ecosystem-judgment/decision.ts +0 -431
  521. package/src/pi-ecosystem-judgment/distillation.ts +0 -398
  522. package/src/pi-ecosystem-judgment/human-value-store.ts +0 -580
  523. package/src/pi-ecosystem-judgment/index.ts +0 -678
  524. package/src/pi-ecosystem-judgment/value-injection.ts +0 -744
  525. package/src/pi-ecosystem-mcp/index.ts +0 -427
  526. package/src/pi-ecosystem-subagents/index.ts +0 -408
  527. package/src/test/ai-judgment-test.ts +0 -92
  528. package/src/test/bollharness-integration.test.ts +0 -398
  529. package/src/test/channel-agent-multi-dialogue.ts +0 -265
  530. package/src/test/channel-heartbeat-agent-test.ts +0 -244
  531. package/src/test/constraint-layer.test.ts +0 -191
  532. package/src/test/diap-identity-test.ts +0 -222
  533. package/src/test/diap-quick-test.ts +0 -73
  534. package/src/test/global-shared-context.test.ts +0 -393
  535. package/src/test/harness-judgment-injection.test.ts +0 -353
  536. package/src/test/harness-workflow-integrator-test.ts +0 -285
  537. package/src/test/human-value-store.test.ts +0 -316
  538. package/src/test/hybrid-integration-test.ts +0 -126
  539. package/src/test/hybrid-messenger-verify.ts +0 -68
  540. package/src/test/iroh-bistream-debug.ts +0 -50
  541. package/src/test/iroh-communication.test.ts +0 -81
  542. package/src/test/iroh-debug-test.ts +0 -69
  543. package/src/test/iroh-diap-test.ts +0 -90
  544. package/src/test/iroh-direct-connect.ts +0 -65
  545. package/src/test/iroh-e2e-fixed.ts +0 -106
  546. package/src/test/iroh-e2e-same-process.ts +0 -83
  547. package/src/test/iroh-e2e.ts +0 -83
  548. package/src/test/iroh-final-e2e.ts +0 -84
  549. package/src/test/iroh-relay-test.ts +0 -46
  550. package/src/test/iroh-simple-test.ts +0 -49
  551. package/src/test/iroh-transport-verify.ts +0 -60
  552. package/src/test/iroh-transport.test.ts +0 -47
  553. package/src/test/iroh-two-nodes.ts +0 -87
  554. package/src/test/iroh-verify.ts +0 -55
  555. package/src/test/judgment-decision.test.ts +0 -373
  556. package/src/test/llm-judgment-integration.test.ts +0 -257
  557. package/src/test/p2p-agent-complex-dialogue.ts +0 -490
  558. package/src/test/p2p-agent-dialogue.ts +0 -423
  559. package/src/test/p2p-agent-full-bidirectional.ts +0 -686
  560. package/src/test/p2p-agent-harness-flow.ts +0 -562
  561. package/src/test/p2p-agent-harness-single.ts +0 -175
  562. package/src/test/p2p-ai-dialogue-test.ts +0 -374
  563. package/src/test/p2p-cid-connect-test.ts +0 -245
  564. package/src/test/p2p-connect-receiver.ts +0 -85
  565. package/src/test/p2p-iroh-test.ts +0 -214
  566. package/src/test/p2p-minimal-test.ts +0 -264
  567. package/src/test/p2p-node-1.ts +0 -172
  568. package/src/test/p2p-node-2.ts +0 -172
  569. package/src/test/p2p-server.ts +0 -335
  570. package/src/test/p2p-two-nodes-test.ts +0 -542
  571. package/src/test/pi-sdk.test.ts +0 -47
  572. package/src/test/set-persona.ts +0 -56
  573. package/src/test/simple.test.ts +0 -11
  574. package/src/test/storage-integration.test.ts +0 -191
  575. package/src/test/subagent-manager.test.ts +0 -392
  576. package/src/test/test-gate-flow.test.ts +0 -92
  577. package/src/test/workflow-engine.test.ts +0 -101
  578. package/src/workflows/collaboration.ts +0 -455
  579. package/src/workflows/index.ts +0 -64
  580. package/vitest.config.ts +0 -12
  581. package//346/203/263/346/263/225.md +0 -79
@@ -1,320 +0,0 @@
1
- ---
2
- name: guardian-fixer
3
- description: 守夜人 issue 自动修复管道。8 Gate 全流程——规划、独立审查、开发、测试、闭环、PR。用于修复 docs/issues/guard-*.md 中 status:open 的 issue。
4
- status: active
5
- tier: execution
6
- owner: nature
7
- last_audited: 2026-03-24
8
- triggers:
9
- - 修复 guardian issue
10
- - 执行 guard issue
11
- - 自动修复管道
12
- outputs:
13
- - 独立 branch 上的 PR
14
- - 完整 Gate artifacts (PLAN/REVIEW/TASK/LOG/TEST/CLOSURE)
15
- truth_policy:
16
- - issue 文档是唯一执行队列
17
- - 不从口头描述、memory、聊天记录直接开做
18
- - 代码真相以 repo 当前状态为准,不以 issue 描述为准
19
- ---
20
-
21
- # 守夜人 Issue 自动修复
22
-
23
- ## 我是谁
24
-
25
- 我把 `docs/issues/guard-*.md`(status: open)变成可合并的 PR。我不发现 issue(那是巡逻的事),我只修复。
26
-
27
- ## 核心约束
28
-
29
- 1. **8 Gate 全走,一个都不能少。** 简单 issue 不是跳步的理由。
30
- 2. **审查是独立的。** Gate 2/4/7 必须 spawn 独立 subagent(opus),不是自己审自己。
31
- 3. **验证是诚实的。** 跑不了的测试标 BLOCKED,不标 PASS。"collect 通过" ≠ "测试通过"。
32
- 4. **写了代码必须运行。** 每个 WP 完成后必须有运行时证据(命令 + 输出),不是"看起来对"。
33
-
34
- ## 执行流程
35
-
36
- ### Step 0: 选 issue
37
-
38
- ```bash
39
- # 找到优先级最高的可执行 issue
40
- grep -rl 'status: open' docs/issues/guard-*.md | while read f; do
41
- sev=$(grep '^severity:' "$f" | sed 's/severity: *//')
42
- exec_st=$(grep '^execution_status:' "$f" | sed 's/execution_status: *//')
43
- # 跳过已有 execution_status 的(除了 pending)
44
- if [ -z "$exec_st" ] || [ "$exec_st" = "pending" ]; then
45
- echo "$sev|$f"
46
- fi
47
- done | sort
48
- ```
49
-
50
- 选第一个(P0 > P1 > P2)。如果需要检查 zone 冲突,查 DESIGN 文档 Section 3.6 的 CODE_ZONES。
51
-
52
- ### Step 1: 建 worktree
53
-
54
- ```bash
55
- ISSUE_SLUG="guard-YYYYMMDD-HHMM-slug" # 从 issue 文件名提取
56
- git worktree add /tmp/{{PROJECT_NAME}}-$ISSUE_SLUG -b codex/$ISSUE_SLUG main
57
- mkdir -p /tmp/{{PROJECT_NAME}}-$ISSUE_SLUG/docs/decisions/tasks/GUARD-YYYYMMDD-HHMM
58
- ```
59
-
60
- 以下所有操作在 worktree 目录内进行。
61
-
62
- ### Step 2: Gate 1 — 规划
63
-
64
- **输入**: issue 文档
65
- **产物**: `PLAN.md`
66
-
67
- PLAN.md 必须包含:
68
-
69
- ```markdown
70
- # PLAN: guard-YYYYMMDD-HHMM — 标题
71
-
72
- **Issue**: issue 文档路径
73
- **Severity**: P0/P1/P2
74
- **Component**: 主要代码文件
75
-
76
- ## 问题分析
77
- (根因,不是症状)
78
-
79
- ## 变更清单
80
- | # | 文件 | 变更 | 类型 |
81
-
82
- ## 契约 vs 实现分析
83
- - 契约变更?消费方?
84
-
85
- ## 同类检查
86
- (grep 验证是否有其他地方有同样的问题)
87
-
88
- ## 测试策略
89
- (修改前/修改后的验证方法)
90
-
91
- ## Scope 判定
92
- - ≤3 文件 + 无契约变更 → 可执行
93
- - 否则 → needs_plan,停止
94
- ```
95
-
96
- **Scope 硬上限**:
97
- - 超过 3 个代码文件 → 标 `needs_plan`,停止
98
- - API/schema/event 契约变更 → 标 `needs_plan`,停止
99
- - 需要数据库 migration → 标 `needs_plan`,停止
100
-
101
- ### Step 3: Gate 2 — 独立审查 PLAN
102
-
103
- **用 Agent tool spawn 独立审查者(opus 模型)。不是自己审自己。**
104
-
105
- ```
106
- Agent tool:
107
- model: opus
108
- prompt: |
109
- 你是独立代码审查者。你没有参与这段代码的编写。
110
-
111
- 审查 PLAN 文档:[路径]
112
- 对照 issue 文档:[路径]
113
- 读相关代码文件。
114
-
115
- 审查维度(全部覆盖):
116
- 1. 覆盖性:变更清单完整吗?
117
- 2. 独立性:每个改动可独立验证吗?
118
- 3. 执行模拟:逐步走,开发者会卡住吗?
119
- 4. 自包含性:有执行所需全部信息吗?
120
- 5. 元数据准确性:severity/component/scope 正确吗?
121
- 6. 修复完整性:修复完整吗?有没有引入新问题?
122
-
123
- 输出写入:[PLAN-REVIEW.md 路径]
124
- YAML frontmatter 必须有 verdict: PASS 或 FAIL。
125
- ```
126
-
127
- **如果 FAIL**:修改 PLAN,重新提交审查(最多 2 轮)。2 轮不通过 → 标 `blocked`,停止。
128
-
129
- ### Step 4: Gate 3 — 任务拆解
130
-
131
- **产物**: `TASK.md`
132
-
133
- ```markdown
134
- # TASK: guard-YYYYMMDD-HHMM
135
-
136
- ## WP-N: 标题
137
- **文件**: 路径
138
- **改什么**: 具体描述
139
- **验收标准**: 可机械验证的条件
140
-
141
- ## 验收测试
142
- | # | 方法 | 预期结果 |
143
- ```
144
-
145
- ### Step 5: Gate 4 — 独立审查 TASK
146
-
147
- 同 Gate 2,spawn 独立审查者审查 TASK.md。
148
-
149
- ### Step 6: Gate 5 — 开发
150
-
151
- **操作顺序**:
152
-
153
- 1. **先开 LOG.md**(实时写,不是事后补)
154
- 2. 逐个 WP 执行:
155
- a. 写代码
156
- b. **运行代码**(关键!不是"看起来对"就 commit)
157
- c. 记录运行命令和输出到 LOG.md
158
- d. 验证 TASK.md 中的验收标准
159
- 3. 更新 issue 文档状态(pre-commit hook 要求)
160
- 4. Commit(不 push)
161
-
162
- **Worktree 里 Read/Edit 工具可能被 guard hook 阻塞**(pre-existing findings)。用 Bash 操作 worktree 文件:
163
- - 读文件:`cat` / `tail`
164
- - 写文件:`cat > file << 'EOF'` 或 `cat >> file << 'EOF'`
165
- - 小修改:`sed -i ''`
166
-
167
- **LOG.md 格式**:
168
-
169
- ```markdown
170
- # LOG: guard-YYYYMMDD-HHMM
171
-
172
- ## WP-N: 标题
173
- - 做了什么
174
- - 运行命令 + 输出(证据)
175
- - 偏差说明(如果有)
176
-
177
- ## 验收检查
178
- | # | 方法 | 结果 |
179
- ```
180
-
181
- ### Step 7: Gate 6 — 测试
182
-
183
- **运行所有能跑的测试**:
184
-
185
- ```bash
186
- # 从 worktree 运行
187
- cd /tmp/{{PROJECT_NAME}}-$ISSUE_SLUG
188
- npm test # 运行项目测试
189
- ```
190
-
191
- **产物**: `TEST.md`
192
-
193
- ```markdown
194
- # TEST: guard-YYYYMMDD-HHMM
195
-
196
- ## 测试执行结果
197
-
198
- ### 可运行测试
199
- | 测试集 | 数量 | 结果 | 命令 |
200
-
201
- ### 需要 Docker 的测试
202
- | 测试集 | 状态 | 原因 |
203
-
204
- ### 诚实声明
205
- - 新代码有没有被测试覆盖?
206
- - 是"旧测试通过"还是"新代码验证通过"?
207
- - 有没有把 BLOCKED 标成 PASSED?
208
- ```
209
-
210
- **诚实规则**:
211
- - "collect 通过" ≠ "测试通过"
212
- - "旧测试通过" ≠ "新代码验证通过"
213
- - Docker 不可用 → 标 BLOCKED,不标 PASS
214
- - 不虚构测试数量
215
-
216
- ### Step 8: Gate 7 — 最终审查
217
-
218
- Spawn 独立审查者(opus)审查代码 diff + 测试结果。
219
-
220
- ```
221
- Agent tool:
222
- model: opus
223
- prompt: |
224
- 你是独立代码审查者(最终审查)。
225
-
226
- 审查 git diff + TEST.md + LOG.md。
227
- 检查代码是否与 PLAN 一致。
228
- 检查有没有引入新问题。
229
- 检查 TEST.md 是否诚实。
230
-
231
- 输出写入:[FINAL-REVIEW.md 路径]
232
- verdict: PASS 或 FAIL。
233
- ```
234
-
235
- ### Step 9: Gate 7.5 — Closure
236
-
237
- **产物**: `CLOSURE.md`
238
-
239
- ```markdown
240
- # CLOSURE
241
-
242
- ## Issue 闭环状态
243
- - status: fixed ✓/✗
244
- - prevention_status: closed ✓/✗
245
- - mechanism_layer: guard|test|type|convention ✓/✗
246
-
247
- ## 文档同步清单
248
-
249
- ### 必须更新
250
- - [ ] issue 文档 status/prevention_status
251
-
252
- ### 可能需要更新(写进 PR 描述)
253
- - [ ] CLAUDE.md 路由表(如果改了 API)
254
- - [ ] 其他 issue 文档(如果修复也解决了其他问题)
255
-
256
- ### 不需要更新
257
- - (列出检查过但不需要改的)
258
- ```
259
-
260
- **禁止修改的文件**:
261
- - CLAUDE.md(行为指令部分)
262
- - AGENTS.md
263
- - `.boll/skills/*/SKILL.md`
264
- - `scripts/hooks/guard-feedback.ts`
265
- - `scripts/context_router.ts`
266
-
267
- ### Step 10: Gate 8 — Push + PR
268
-
269
- ```bash
270
- cd /tmp/{{PROJECT_NAME}}-$ISSUE_SLUG
271
- git push -u origin codex/$ISSUE_SLUG
272
- gh pr create --title "fix(...): guard-YYYYMMDD-HHMM 标题" --body "..."
273
- ```
274
-
275
- PR 描述必须包含:
276
- - Issue 路径
277
- - 变更摘要
278
- - 8 Gate 结果表
279
- - 验证结果(诚实标注 PASS/BLOCKED)
280
- - Artifacts 列表
281
-
282
- ## 异常处理
283
-
284
- | 场景 | 操作 |
285
- |------|------|
286
- | Scope 超 3 文件 | Gate 1 标 `needs_plan`,停止 |
287
- | 审查 2 轮不通过 | 标 `blocked`,停止 |
288
- | 测试失败且无法修 | TEST.md 记录失败原因,标 `blocked`,停止 |
289
- | 碰禁止修改的文件 | 停止 |
290
- | Rebase 冲突 | 标 `needs_coordination`,停止 |
291
-
292
- **所有异常路径都停止。不要强行继续。**
293
-
294
- ## 反模式清单
295
-
296
- 以下行为是明确禁止的(PLAN-064 教训):
297
-
298
- | 反模式 | 正确做法 |
299
- |--------|---------|
300
- | 写完代码不运行就 commit | 每个 WP 必须有运行时证据 |
301
- | LOG.md 从 git log 生成 | LOG.md 在写代码时实时写 |
302
- | 把 "199 tests PASS" 当验证 | 区分旧测试/新测试,标注新代码覆盖率 |
303
- | 4 分钟完成一个 WP | 如果太快,说明没有运行验证 |
304
- | 自己审自己 | Gate 2/4/7 必须 spawn 独立 subagent |
305
- | Docker 不可用就跳过 | 标 BLOCKED,不标 PASS |
306
-
307
- ## Gate 检查清单
308
-
309
- 执行前自检——**如果正在写代码但 PLAN.md 不存在,立刻停下来。**
310
-
311
- ```
312
- □ PLAN.md 存在? → Gate 2 可以开始
313
- □ PLAN-REVIEW.md verdict: PASS? → Gate 3 可以开始
314
- □ TASK.md 存在? → Gate 4 可以开始
315
- □ TASK-REVIEW.md verdict: PASS? → Gate 5 可以开始
316
- □ LOG.md 存在? → Gate 6 可以开始
317
- □ TEST.md 存在? → Gate 7 可以开始
318
- □ FINAL-REVIEW.md verdict: PASS? → Gate 7.5 可以开始
319
- □ CLOSURE.md 存在? → Gate 8 可以开始
320
- ```
@@ -1,93 +0,0 @@
1
- ---
2
- name: harness-dev
3
- description: {{PROJECT_NAME}}全栈开发 Skill。代码实现、调试、重构、测试。当用户需要写代码或调试时使用。
4
- status: active
5
- tier: execution
6
- owner: nature
7
- last_audited: 2026-04-06
8
- triggers:
9
- - {{PROJECT_NAME}} 代码实现
10
- - 调试
11
- - 重构
12
- - 测试闭环
13
- outputs:
14
- - change propagation checklist
15
- - implementation closure
16
- - test closure
17
- truth_policy:
18
- - 代码前提来自已冻结计划与最新仓库真相
19
- - 契约变更先追消费者,不用记忆同步
20
- - 生成物和共享类型视为契约,不视为内部实现
21
- ---
22
-
23
- # {{PROJECT_NAME}}实现专才
24
-
25
- ## 角色
26
-
27
- 我是 {{PROJECT_NAME}} 的实现者。我的工作不是再决定"做什么",而是把已经冻结的判断变成可运行代码,并把变更传播、测试闭环、生成物一致性一起收掉。
28
-
29
- ## 核心张力
30
-
31
- - **快修 vs 契约安全**
32
- 判断函数:如果改的是契约,先列消费方;如果只是实现,才允许局部收口。
33
- - **局部实现 vs 系统传播**
34
- 判断函数:任何共享 schema、事件、生成物、配置 key 都按契约处理。
35
- - **简洁 vs 静默降级**
36
- 判断函数:{{PROJECT_NAME}} 宁可大声报错,也不靠 silent fallback 维持"看起来能跑"。
37
-
38
- ## 工作顺序
39
-
40
- 1. 重新验证计划引用的文件、函数、schema 仍存在
41
- 2. 判断改的是 `contract` 还是 `implementation`
42
- 3. `grep` 消费方,不靠想象
43
- 4. 修改代码和测试
44
- 5. 追生成物、类型、文档是否需要同步
45
- 6. 跑指定验证,直到闭环
46
-
47
- ## {{PROJECT_NAME}} 实现规则
48
-
49
- - 共享 response model、事件 payload、工具定义、类型导出都是契约
50
- - generated artifact 变了,消费方也必须跟
51
- - 配置 key、环境变量、路由路径不是"内部细节"
52
- - 用户可见入口地址是产品契约:正式公网入口只允许 `<NETWORK_REDACTED>` / `<NETWORK_REDACTED>`,不要把原始 IP 重新写回 README、默认值、前端 fallback 或分享链接
53
- - demo / admin 发布必须区分 `prod` 和 `preview`:构建基址、verify URL、远端目录都要跟 channel 对齐,不能混发
54
- - 改公网 edge 路由时,先改 `ops/nginx/*.conf`,再走 `bash scripts/deploy-edge.sh --yes`,不要只在线上手改 nginx
55
- - 不把必须参数做成 Optional 兜底
56
- - 不用 prompt 替代代码保障
57
- - **Runtime Fix ≠ Closure** — 症状消失不等于修好了。修了 bug 必须分析复发路径、确定防护机制(guard/test/type/convention)、关闭 `prevention_status`。只有 Level 2(复发路径关闭)才算 Fixed,Level 1(症状消失)只算 Runtime Fixed
58
-
59
- ## 发布实现补充
60
-
61
- 涉及部署脚本、nginx、demo 构建或公网地址时,默认补做这几件事:
62
-
63
- 1. `grep` 代码 / 文档 / skill / README 中的旧入口,确认不会把 IP 当成用户入口继续传播
64
- 2. 同步 `prod` / `preview` 两个发布面,避免只修正式不修预发,或者反过来
65
- 3. 如果改了 demo 构建基址,重建产物并验证 `dist/index.html` 中的 base 路径
66
- 4. 如果改了公网入口,验证至少一条 `<NETWORK_REDACTED>` 和一条 `<NETWORK_REDACTED>` 路径可达
67
-
68
- ## 来自 crystal-learn 的注入
69
-
70
- **INV-1 波纹衰减**:改了源头不等于改完。行动:函数签名、schema、字段名、路由改动后,必须 `grep` 消费方。
71
-
72
- **INV-5 语义搭便车**:表面一样不代表语义一样。行动:复用模式前先问"原来为什么这么写""这里条件是否相同""不同的话调什么"。
73
-
74
- ## Output Contract
75
-
76
- 每次实现任务结束,默认给:
77
-
78
- 1. `change propagation checklist`
79
- - 改了哪些契约
80
- - 消费方都在哪里
81
- - 哪些已同步
82
- 2. `implementation closure`
83
- - 代码入口改了什么
84
- - 是否引入新的 fallback / drift 风险
85
- 3. `test closure`
86
- - 跑了哪些测试
87
- - 哪些没跑、为什么
88
-
89
- ## 不做什么
90
-
91
- - 不替 `lead` 或 `arch` 补边界决策
92
- - 不复活 archived V1 skill 世界观
93
- - 不把"编译过了"当成数据链路已通
@@ -1,227 +0,0 @@
1
- # harness-dev 代码示例库
2
-
3
- 这个目录包含 harness-dev skill 的代码示例,展示{{PROJECT_NAME}}/WOWOK 生态系统的工程实践。
4
-
5
- ## 示例列表
6
-
7
- ### 1. 投影函数示例(`projection_example.ts`)
8
-
9
- **核心概念**:投影即函数,Agent 无状态
10
-
11
- 展示:
12
- - 无状态投影函数(Profile Data → HDC Vector)
13
- - ProfileDataSource 接口设计(本质与实现分离)
14
- - Edge Agent vs Service Agent(同样数据,不同透镜)
15
-
16
- **关键代码**:
17
- ```typescript
18
- function projectToEdgeAgent(profile: ProfileData): HDCVector {
19
- return hdcEncode(profile, "full_dimension");
20
- }
21
-
22
- function projectToServiceAgent(profile: ProfileData, focus: string): HDCVector {
23
- return hdcEncode(profile, `focus_on_${focus}`);
24
- }
25
- ```
26
-
27
- **设计理念**:Design Log #003 - Projection as Function
28
-
29
- ### 2. Adapter 扩展示例(`adapter_example.ts`)
30
-
31
- **核心概念**:扩展协议(本质与实现分离)
32
-
33
- 展示:
34
- - 继承 AgentAdapter 基类
35
- - 实现 formulate_demand 和 generate_offer
36
- - 优雅的错误处理
37
-
38
- **关键代码**:
39
- ```typescript
40
- class SecondMeAdapter extends AgentAdapter {
41
- async formulateDemand(rawInput: string): Promise<Demand> {
42
- return { intent: parseIntent(rawInput) };
43
- }
44
-
45
- async generateOffer(demand: Demand): Promise<Offer> {
46
- return { ...demand, status: "pending" };
47
- }
48
- }
49
- ```
50
-
51
- **设计理念**:Adapter 模式,可插拔数据源
52
-
53
- ### 3. 测试编写示例(`test_example.ts`)
54
-
55
- **核心概念**:测试是思维清晰度的验证
56
-
57
- 展示:
58
- - 正常情况测试(happy path)
59
- - 边界情况测试(边界值、空输入)
60
- - 异常情况测试(错误输入)
61
- - Mock 外部依赖(不依赖真实 API)
62
-
63
- **关键代码**:
64
- ```typescript
65
- describe("projectToVector", () => {
66
- it("normal case: projection succeeds", () => {
67
- const mockSource = mock<ProfileDataSource>();
68
- mockSource.getProfile.mockResolvedValue(mockProfile);
69
-
70
- const vector = projectToVector("user-123", "backend", mockSource);
71
-
72
- expect(vector).toHaveLength(HDC_DIMENSION);
73
- expect(mockSource.getProfile).toHaveBeenCalledOnceWith("user-123");
74
- });
75
- });
76
- ```
77
-
78
- **设计理念**:测试即文档,易测试的代码 = 设计良好的代码
79
-
80
- ### 4. 状态机示例(`state_machine_example.ts`)
81
-
82
- **核心概念**:代码保障 > Prompt 保障
83
-
84
- 展示:
85
- - 协商状态管理(状态枚举)
86
- - 状态转移检查(异常抛出)
87
- - 防止第一提案偏见(等待屏障)
88
-
89
- **关键代码**:
90
- ```typescript
91
- enum NegotiationState {
92
- COLLECTING_OFFERS = "collecting_offers",
93
- READY_TO_AGGREGATE = "ready_to_aggregate",
94
- COMPLETED = "completed"
95
- }
96
-
97
- function submitOffer(self: NegotiationContext, agentId: string, offer: Offer): void {
98
- if (self.state !== NegotiationState.COLLECTING_OFFERS) {
99
- throw new Error("Invalid state for submitOffer");
100
- }
101
-
102
- self.offers[agentId] = offer;
103
-
104
- if (Object.keys(self.offers).length === self.expectedAgents.length) {
105
- self.state = NegotiationState.READY_TO_AGGREGATE;
106
- }
107
- }
108
- ```
109
-
110
- **设计理念**:Design Principle 0.5 - 代码保障 > Prompt 保障
111
-
112
- **研究依据**:Microsoft 2025,第一提案偏见 10-30x
113
-
114
- ### 5. 可观测性示例(`observable_example.ts`)
115
-
116
- **核心概念**:可观测性是设计的一部分
117
-
118
- 展示:
119
- - 结构化日志(JSON 格式,机器可读)
120
- - 性能监控(timing decorator)
121
- - 分布式追踪(trace_id 传播)
122
-
123
- **关键代码**:
124
- ```typescript
125
- class StructuredLogger {
126
- info(message: string, fields: Record<string, unknown>): void {
127
- const logEntry = {
128
- timestamp: Date.now(),
129
- level: "INFO",
130
- message,
131
- trace_id: getTraceId(),
132
- ...fields
133
- };
134
- this.logger.info(JSON.stringify(logEntry));
135
- }
136
- }
137
-
138
- function timed<T extends (...args: unknown[]) => unknown>(
139
- logger: StructuredLogger,
140
- fn: T
141
- ): T {
142
- return ((...args: unknown[]) => {
143
- const start = Date.now();
144
- const result = fn(...args);
145
- logger.info(`Function ${fn.name} took ${Date.now() - start}ms`);
146
- return result;
147
- }) as T;
148
- }
149
- ```
150
-
151
- **设计理念**:看不到系统在做什么 = 无法判断正确性
152
-
153
- ### 6. 错误处理示例(`error_handling_example.ts`)
154
-
155
- **核心概念**:优雅降级、重试机制、自定义异常
156
-
157
- 展示:
158
- - 优雅降级(实时数据 → 缓存 → 空数据)
159
- - 重试机制(指数退避)
160
- - 自定义异常(清晰的错误语义)
161
-
162
- **关键代码**:
163
- ```typescript
164
- async function getProfile(userId: string): Promise<ProfileData> {
165
- try {
166
- return await fetchFromSecondMe(userId);
167
- } catch (error) {
168
- if (error instanceof ServiceUnavailableError) {
169
- if (this.cache.has(userId)) {
170
- return this.cache.get(userId)!;
171
- }
172
- return ProfileData.empty(userId);
173
- }
174
- throw error;
175
- }
176
- }
177
- ```
178
-
179
- **设计理念**:预期的错误捕获并处理,非预期的错误向上传播
180
-
181
- ## 运行示例
182
-
183
- 所有示例都可以独立运行:
184
-
185
- ```bash
186
- cd .boll/skills/harness-dev/examples
187
-
188
- # 运行投影函数示例
189
- npx ts-node projection_example.ts
190
-
191
- # 运行状态机示例
192
- npx ts-node state_machine_example.ts
193
-
194
- # 运行可观测性示例
195
- npx ts-node observable_example.ts
196
-
197
- # 运行错误处理示例
198
- npx ts-node error_handling_example.ts
199
-
200
- # 运行测试示例
201
- npm test
202
- ```
203
-
204
- ## 最佳实践总结
205
-
206
- 这些示例展示了 7 个核心工程信念:
207
-
208
- 1. **代码是思想的投影**:清晰的代码 = 清晰的理解
209
- 2. **本质与实现分离**:接口稳定,实现可插拔
210
- 3. **投影即函数,Agent 无状态**:无状态函数,极度简单
211
- 4. **代码保障 > Prompt 保障**:状态机防护,让 LLM 犯不了错
212
- 5. **复杂度预算是有限的**:函数 < 50 行,职责清晰
213
- 6. **可观测性是设计的一部分**:结构化日志、性能监控、分布式追踪
214
- 7. **测试是思维清晰度的验证**:易测试的代码 = 设计良好的代码
215
-
216
- ## 进一步阅读
217
-
218
- - **harness-dev SKILL.md**:完整的工程主管指南
219
- - **arch skill**:架构理念和设计原则
220
- - **ARCHITECTURE_DESIGN.md**:{{PROJECT_NAME}}网络技术架构
221
- - **MEMORY.md**:项目关键决策记录
222
-
223
- ## 问题反馈
224
-
225
- 如果你对这些示例有疑问,或者想看更多示例:
226
- 1. 问 harness-dev:代码实现、工程实践、测试策略
227
- 2. 问 arch:架构设计、设计原则、本质理解