@bolloon/bolloon-agent 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (431) hide show
  1. package/package.json +1 -1
  2. package/dist/constraint-runtime/tests/agent.test.js +0 -16
  3. package/dist/constraint-runtime/tests/constraint.test.js +0 -41
  4. package/dist/constraint-runtime/tests/skill.test.js +0 -19
  5. package/dist/constraint-runtime/tests/thinking.test.js +0 -22
  6. package/dist/electron-preload.js +0 -15
  7. package/dist/electron-preload.js.map +0 -1
  8. package/dist/electron.js +0 -206
  9. package/dist/electron.js.map +0 -1
  10. package/dist/test/constraint-layer.test.js +0 -164
  11. package/dist/test/global-shared-context.test.js +0 -315
  12. package/dist/test/pi-sdk.test.js +0 -47
  13. package/dist/test/set-persona.test.js +0 -38
  14. package/dist/test/subagent-manager.test.js +0 -276
  15. package/dist/test/workflow-engine.test.js +0 -87
  16. package/dist/workflows/collaboration.js +0 -374
  17. package/dist/workflows/index.js +0 -54
  18. package/docs/agent-communication.md +0 -333
  19. package/docs/plans/2026-05-15-document-agent-design.md +0 -479
  20. package/docs/plans/2026-05-15-document-agent-implementation-plan.md +0 -792
  21. package/docs/plans/2026-05-16-chat-ui-design.md +0 -86
  22. package/docs/plans/2026-05-16-constraint-runtime-design.md +0 -106
  23. package/docs/plans/2026-05-16-constraint-runtime-implementation.md +0 -441
  24. 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
  25. package/src/bollharness/.boll/CLAUDE.md.template +0 -34
  26. package/src/bollharness/.boll/MANIFEST.yaml +0 -213
  27. package/src/bollharness/.boll/active-review-agents/.gitkeep +0 -0
  28. package/src/bollharness/.boll/agents/review-base.yaml +0 -108
  29. package/src/bollharness/.boll/deploy-allowlist.yaml +0 -38
  30. package/src/bollharness/.boll/inbox/schema/message-v1.json +0 -99
  31. package/src/bollharness/.boll/install-staging/.gitkeep +0 -0
  32. package/src/bollharness/.boll/issue-adapter.yaml +0 -31
  33. package/src/bollharness/.boll/plugins/boll-mode-toolkit/contracts/mode-contract.md +0 -85
  34. package/src/bollharness/.boll/plugins/boll-review-toolkit/contracts/evidence-packet-schema.json +0 -102
  35. package/src/bollharness/.boll/plugins/boll-review-toolkit/contracts/review-contract.yaml +0 -247
  36. package/src/bollharness/.boll/rules/backend-routes.md +0 -31
  37. package/src/bollharness/.boll/rules/closure-semantics.md +0 -30
  38. package/src/bollharness/.boll/rules/env-vars.md +0 -32
  39. package/src/bollharness/.boll/rules/hanis-protocol.md +0 -145
  40. package/src/bollharness/.boll/rules/repo-structure.md +0 -42
  41. package/src/bollharness/.boll/rules/review-agent-isolation.md +0 -73
  42. package/src/bollharness/.boll/rules/source-of-truth.md +0 -33
  43. package/src/bollharness/.boll/settings.json +0 -180
  44. package/src/bollharness/.boll/settings.json.template +0 -31
  45. package/src/bollharness/.boll/skills/arch/SKILL.md +0 -372
  46. package/src/bollharness/.boll/skills/bug-pipeline/SKILL.md +0 -168
  47. package/src/bollharness/.boll/skills/bug-triage/SKILL.md +0 -161
  48. package/src/bollharness/.boll/skills/context-chains/SKILL.md +0 -250
  49. package/src/bollharness/.boll/skills/context-chains/context-chain-index.md +0 -48
  50. package/src/bollharness/.boll/skills/context-chains/work-type-extractors/code_change_extractor.ts +0 -142
  51. package/src/bollharness/.boll/skills/context-chains/work-type-extractors/debugging_extractor.ts +0 -126
  52. package/src/bollharness/.boll/skills/context-chains/work-type-extractors/design_extractor.ts +0 -148
  53. package/src/bollharness/.boll/skills/context-chains/work-type-extractors/planning_extractor.ts +0 -162
  54. package/src/bollharness/.boll/skills/context-chains/work-type-extractors/question_extractor.ts +0 -116
  55. package/src/bollharness/.boll/skills/context-chains/work-type-extractors/review_extractor.ts +0 -136
  56. package/src/bollharness/.boll/skills/crystal-learn/SKILL.md +0 -93
  57. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-0.md +0 -34
  58. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-1.md +0 -34
  59. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-2.md +0 -35
  60. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-3.md +0 -34
  61. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-4.md +0 -43
  62. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-5.md +0 -34
  63. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-6.md +0 -37
  64. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-7.md +0 -46
  65. package/src/bollharness/.boll/skills/guardian-fixer/PROMPT.md +0 -415
  66. package/src/bollharness/.boll/skills/guardian-fixer/SKILL.md +0 -320
  67. package/src/bollharness/.boll/skills/harness-dev/SKILL.md +0 -93
  68. package/src/bollharness/.boll/skills/harness-dev/examples/README.md +0 -227
  69. package/src/bollharness/.boll/skills/harness-dev-handoff/SKILL.md +0 -165
  70. package/src/bollharness/.boll/skills/harness-eng/SKILL.md +0 -110
  71. package/src/bollharness/.boll/skills/harness-eng-test/SKILL.md +0 -79
  72. package/src/bollharness/.boll/skills/harness-lab/SKILL.md +0 -170
  73. package/src/bollharness/.boll/skills/harness-ops/SKILL.md +0 -57
  74. package/src/bollharness/.boll/skills/harness-voice/SKILL.md +0 -183
  75. package/src/bollharness/.boll/skills/judgment/SKILL.md +0 -115
  76. package/src/bollharness/.boll/skills/lead/SKILL.md +0 -245
  77. package/src/bollharness/.boll/skills/lead/install-wow-harness.md +0 -77
  78. package/src/bollharness/.boll/skills/lead/ref-review-sop.md +0 -91
  79. package/src/bollharness/.boll/skills/lead/ref-stages.md +0 -129
  80. package/src/bollharness/.boll/skills/skill-discovery/SKILL.md +0 -169
  81. package/src/bollharness/.boll/skills/task-arch/SKILL.md +0 -106
  82. package/src/bollharness/.boll/skills/toolkit/SKILL.md +0 -57
  83. package/src/bollharness/.boll/tasks/.gitkeep +0 -0
  84. package/src/bollharness/.boll/toolkit-index.yaml +0 -112
  85. package/src/bollharness/.claude/agents/review-base.yaml +0 -108
  86. package/src/bollharness/.claude/plugins/boll-mode-toolkit/.claude-plugin/plugin.json +0 -44
  87. package/src/bollharness/.claude/plugins/boll-review-toolkit/.claude-plugin/plugin.json +0 -24
  88. package/src/bollharness/.claude/plugins/boll-review-toolkit/contracts/evidence-packet-schema.json +0 -102
  89. package/src/bollharness/.claude/plugins/boll-review-toolkit/contracts/review-contract.yaml +0 -247
  90. package/src/bollharness/.claude/settings.json +0 -157
  91. package/src/bollharness/.claude/skills/arch/SKILL.md +0 -64
  92. package/src/bollharness/.claude/skills/crystal-learn/SKILL.md +0 -93
  93. package/src/bollharness/.claude/skills/guardian-fixer/PROMPT.md +0 -44
  94. package/src/bollharness/.claude/skills/guardian-fixer/SKILL.md +0 -324
  95. package/src/bollharness/.claude/skills/harness-dev/SKILL.md +0 -93
  96. package/src/bollharness/.claude/skills/harness-dev/examples/README.md +0 -17
  97. package/src/bollharness/.claude/skills/harness-dev-handoff/SKILL.md +0 -165
  98. package/src/bollharness/.claude/skills/harness-eng/SKILL.md +0 -183
  99. package/src/bollharness/.claude/skills/harness-eng-test/SKILL.md +0 -57
  100. package/src/bollharness/.claude/skills/harness-ops/SKILL.md +0 -57
  101. package/src/bollharness/.claude/skills/harness-voice/SKILL.md +0 -84
  102. package/src/bollharness/.claude/skills/lead/INDEX.md +0 -28
  103. package/src/bollharness/.claude/skills/lead/SKILL.md +0 -24
  104. package/src/bollharness/.claude/skills/lead/install-wow-harness.md +0 -77
  105. package/src/bollharness/.claude/skills/lead/ref-review-sop.md +0 -48
  106. package/src/bollharness/.claude/skills/lead/ref-stages.md +0 -58
  107. package/src/bollharness/.claude/skills/plan-lock/SKILL.md +0 -74
  108. package/src/bollharness/.claude/skills/skill-discovery/SKILL.md +0 -120
  109. package/src/bollharness/.claude/skills/task-arch/SKILL.md +0 -106
  110. package/src/bollharness/.claude/skills/toolkit/SKILL.md +0 -57
  111. package/src/bollharness/.claude/skills/toolkit/list.sh +0 -92
  112. package/src/bollharness/.githooks/pre-commit +0 -21
  113. package/src/bollharness/.github/workflows/ci.yml +0 -88
  114. package/src/bollharness/CLAUDE.md +0 -73
  115. package/src/bollharness/README.md +0 -143
  116. package/src/bollharness/README.zh-CN.md +0 -131
  117. package/src/bollharness/docs/decisions/ADR-030-guard-signal-protocol-and-governance-reload.md +0 -1076
  118. package/src/bollharness/docs/decisions/ADR-038-harness-optimization-strategy.md +0 -2039
  119. package/src/bollharness/docs/decisions/ADR-041-codex-claude-code-division-of-labor.md +0 -128
  120. package/src/bollharness/docs/decisions/ADR-H1-crystal-learn-revival.md +0 -188
  121. package/src/bollharness/docs/decisions/ADR-H2-identity-isolation.md +0 -183
  122. package/src/bollharness/docs/decisions/ADR-H3-memory-scope.md +0 -133
  123. package/src/bollharness/docs/decisions/ADR-H4-prompt-governance.md +0 -146
  124. package/src/bollharness/docs/decisions/ADR-H5-gate-quantization.md +0 -212
  125. package/src/bollharness/docs/decisions/ADR-H6-state-file-health.md +0 -211
  126. package/src/bollharness/docs/decisions/ADR-H8-issue-and-doc-compliance.md +0 -202
  127. package/src/bollharness/docs/decisions/ADR-H9-mailbox.md +0 -231
  128. package/src/bollharness/docs/decisions/PLAN-H1-crystal-learn-revival.md +0 -270
  129. package/src/bollharness/docs/decisions/PLAN-H2-identity-isolation.md +0 -291
  130. package/src/bollharness/docs/decisions/PLAN-H3-memory-scope.md +0 -228
  131. package/src/bollharness/docs/decisions/PLAN-H4-prompt-governance.md +0 -227
  132. package/src/bollharness/docs/decisions/PLAN-H5-gate-quantization.md +0 -239
  133. package/src/bollharness/docs/decisions/PLAN-H6-state-file-health.md +0 -325
  134. package/src/bollharness/docs/decisions/PLAN-H8-issue-and-doc-compliance.md +0 -242
  135. package/src/bollharness/docs/decisions/PLAN-H9-mailbox.md +0 -378
  136. package/src/bollharness/docs/launch-article-en.md +0 -276
  137. package/src/bollharness/docs/launch-article-zh.md +0 -305
  138. package/src/bollharness/docs/practice.html +0 -356
  139. package/src/bollharness/docs/practice.md +0 -82
  140. package/src/bollharness/docs/research/round-1/README.md +0 -11
  141. package/src/bollharness/docs/research/round-2/README.md +0 -11
  142. package/src/bollharness/docs/research/round-3/README.md +0 -11
  143. package/src/bollharness/docs/research/round-4/README.md +0 -11
  144. package/src/bollharness/docs/research/round-5/README.md +0 -11
  145. package/src/bollharness/docs/research/round-6/README.md +0 -11
  146. package/src/bollharness/package-lock.json +0 -48
  147. package/src/bollharness/reference/boll-reference/.claude/rules/backend-routes.md +0 -268
  148. package/src/bollharness/reference/boll-reference/.claude/rules/bridge.md +0 -20
  149. package/src/bollharness/reference/boll-reference/.claude/rules/closure-semantics.md +0 -30
  150. package/src/bollharness/reference/boll-reference/.claude/rules/coaching.md +0 -13
  151. package/src/bollharness/reference/boll-reference/.claude/rules/env-vars.md +0 -50
  152. package/src/bollharness/reference/boll-reference/.claude/rules/hackathon.md +0 -12
  153. package/src/bollharness/reference/boll-reference/.claude/rules/repo-structure.md +0 -184
  154. package/src/bollharness/reference/boll-reference/.claude/rules/review-agent-isolation.md +0 -112
  155. package/src/bollharness/reference/boll-reference/.claude/rules/scenes.md +0 -12
  156. package/src/bollharness/reference/boll-reference/.claude/skills/arch/SKILL.md +0 -551
  157. package/src/bollharness/reference/boll-reference/.claude/skills/boll-animation/SKILL.md +0 -26
  158. package/src/bollharness/reference/boll-reference/.claude/skills/boll-bridge/SKILL.md +0 -227
  159. package/src/bollharness/reference/boll-reference/.claude/skills/boll-bridge/agents/openai.yaml +0 -4
  160. package/src/bollharness/reference/boll-reference/.claude/skills/boll-bridge/references/bridge-failure-taxonomy.md +0 -142
  161. package/src/bollharness/reference/boll-reference/.claude/skills/boll-bridge/references/bridge-validation-ladder.md +0 -107
  162. package/src/bollharness/reference/boll-reference/.claude/skills/boll-crystal/SKILL.md +0 -893
  163. package/src/bollharness/reference/boll-reference/.claude/skills/boll-crystal-learn/SKILL.md +0 -89
  164. package/src/bollharness/reference/boll-reference/.claude/skills/boll-dev/SKILL.md +0 -93
  165. package/src/bollharness/reference/boll-reference/.claude/skills/boll-dev/examples/README.md +0 -209
  166. package/src/bollharness/reference/boll-reference/.claude/skills/boll-dev-handoff/SKILL.md +0 -165
  167. package/src/bollharness/reference/boll-reference/.claude/skills/boll-eng/SKILL.md +0 -110
  168. package/src/bollharness/reference/boll-reference/.claude/skills/boll-eng-frontend/SKILL.md +0 -203
  169. package/src/bollharness/reference/boll-reference/.claude/skills/boll-eng-hdc/SKILL.md +0 -27
  170. package/src/bollharness/reference/boll-reference/.claude/skills/boll-eng-orchestrator/SKILL.md +0 -28
  171. package/src/bollharness/reference/boll-reference/.claude/skills/boll-eng-prompt/SKILL.md +0 -27
  172. package/src/bollharness/reference/boll-reference/.claude/skills/boll-eng-test/SKILL.md +0 -79
  173. package/src/bollharness/reference/boll-reference/.claude/skills/boll-lab/SKILL.md +0 -372
  174. package/src/bollharness/reference/boll-reference/.claude/skills/boll-run/SKILL.md +0 -437
  175. package/src/bollharness/reference/boll-reference/.claude/skills/boll-ux-appstore/SKILL.md +0 -27
  176. package/src/bollharness/reference/boll-reference/.claude/skills/boll-voice/SKILL.md +0 -442
  177. package/src/bollharness/reference/boll-reference/.claude/skills/guardian-fixer/PROMPT.md +0 -421
  178. package/src/bollharness/reference/boll-reference/.claude/skills/guardian-fixer/SKILL.md +0 -326
  179. package/src/bollharness/reference/boll-reference/.claude/skills/lead/SKILL.md +0 -155
  180. package/src/bollharness/reference/boll-reference/.claude/skills/lead/ref-review-sop.md +0 -91
  181. package/src/bollharness/reference/boll-reference/.claude/skills/lead/ref-stages.md +0 -129
  182. package/src/bollharness/reference/boll-reference/.claude/skills/nature-designer/output/skill-map-preview.png +0 -0
  183. package/src/bollharness/reference/boll-reference/.claude/skills/nature-designer/output/skill-map-v2.png +0 -0
  184. package/src/bollharness/reference/boll-reference/.claude/skills/nature-designer/output/skill-map-v3.png +0 -0
  185. package/src/bollharness/reference/boll-reference/.claude/skills/nature-designer/output/skill-map-v4.png +0 -0
  186. package/src/bollharness/reference/boll-reference/.claude/skills/plan-lock/SKILL.md +0 -425
  187. package/src/bollharness/reference/boll-reference/.claude/skills/plan-lock/ref-three-checks.md +0 -62
  188. package/src/bollharness/reference/boll-reference/.claude/skills/plan-lock/ref-wp-templates.md +0 -78
  189. package/src/bollharness/reference/boll-reference/.claude/skills/task-arch/SKILL.md +0 -76
  190. package/src/bollharness/reference/boll-reference/.claude/skills/vibedevteam-graph/SKILL.md +0 -57
  191. package/src/bollharness/reference/boll-reference/.claude/skills/vibedevteam-graph/beads-graph.sh +0 -153
  192. package/src/bollharness/reference/boll-reference/.claude/skills/vibedevteam-init/SKILL.md +0 -52
  193. package/src/bollharness/reference/boll-reference/.claude/skills/vibedevteam-init/beads-auto-link.sh +0 -76
  194. package/src/bollharness/reference/boll-reference/.claude/skills/vibedevteam-sync/SKILL.md +0 -50
  195. package/src/bollharness/reference/boll-reference/.claude/skills/vibedevteam-sync/beads-sync-proj.sh +0 -108
  196. package/src/bollharness/reference/boll-reference/docs/architecture/AGENT-PROFILE.md +0 -151
  197. package/src/bollharness/reference/boll-reference/docs/architecture/COST-STRUCTURE.md +0 -56
  198. package/src/bollharness/reference/boll-reference/docs/architecture/INDEX.md +0 -76
  199. package/src/bollharness/reference/boll-reference/docs/architecture/MODULE1-INTENT-FIELD.md +0 -116
  200. package/src/bollharness/reference/boll-reference/docs/architecture/MODULE2-CRYSTALLIZATION.md +0 -200
  201. package/src/bollharness/reference/boll-reference/docs/architecture/PRINCIPLES.md +0 -84
  202. package/src/bollharness/reference/boll-reference/docs/architecture/PROTOCOL-CORE.md +0 -209
  203. package/src/bollharness/reference/boll-reference/docs/architecture/VISION.md +0 -181
  204. package/src/bollharness/reference/boll-reference/docs/architecture/discussions/D-01-MARKET-SCENE-PROTOCOL.md +0 -754
  205. package/src/bollharness/reference/boll-reference/scripts/hooks/stop-evaluator.md +0 -57
  206. package/src/bollharness/scripts/context-fragments/artifact-linkage.md +0 -14
  207. package/src/bollharness/scripts/context-fragments/auth-consumers.md +0 -17
  208. package/src/bollharness/scripts/context-fragments/bridge-constitution.md +0 -13
  209. package/src/bollharness/scripts/context-fragments/catalyst-distributed.md +0 -18
  210. package/src/bollharness/scripts/context-fragments/closure-checklist.md +0 -13
  211. package/src/bollharness/scripts/context-fragments/contract-consumers.md +0 -15
  212. package/src/bollharness/scripts/context-fragments/db-shared-structures.md +0 -15
  213. package/src/bollharness/scripts/context-fragments/fixed-three-layers.md +0 -19
  214. package/src/bollharness/scripts/context-fragments/general-dev-principles.md +0 -11
  215. package/src/bollharness/scripts/context-fragments/issue-first.md +0 -8
  216. package/src/bollharness/scripts/context-fragments/mcp-parity.md +0 -16
  217. package/src/bollharness/scripts/context-fragments/pi-agent-operations.md +0 -74
  218. package/src/bollharness/scripts/context-fragments/protocol-consumers.md +0 -15
  219. package/src/bollharness/scripts/context-fragments/run-events-consumers.md +0 -15
  220. package/src/bollharness/scripts/context-fragments/scene-fidelity.md +0 -13
  221. package/src/bollharness/scripts/context-fragments/truth-source-hierarchy.md +0 -15
  222. package/src/bollharness/scripts/context-fragments/two-language.md +0 -15
  223. package/src/bollharness/scripts/context-fragments/version-sources.md +0 -14
  224. package/src/bollharness/scripts/hooks/stop-evaluator.md +0 -83
  225. package/src/bollharness/templates/scaffold/.boll/guard/.gitkeep +0 -0
  226. package/src/bollharness/templates/scaffold/.boll/metrics/.gitkeep +0 -0
  227. package/src/bollharness/templates/scaffold/.boll/state/.gitkeep +0 -0
  228. package/src/bollharness/templates/scaffold/CLAUDE.md +0 -89
  229. package/src/bollharness/templates/scaffold/docs/INDEX.md +0 -3
  230. package/src/bollharness/templates/scaffold/docs/decisions/ADR_TEMPLATE.md +0 -38
  231. package/src/bollharness/templates/scaffold/docs/decisions/PLAN_TEMPLATE.md +0 -45
  232. package/src/bollharness/templates/scaffold/docs/decisions/tasks/.gitkeep +0 -2
  233. package/src/bollharness/templates/scaffold/docs/issues/.gitkeep +0 -0
  234. package/src/bollharness/templates/scaffold/docs/issues/GUARD_ISSUE_TEMPLATE.md +0 -35
  235. package/src/bollharness/templates/scaffold/docs/issues/ISSUE_TEMPLATE.md +0 -51
  236. package/src/bollharness/tsconfig.json +0 -26
  237. package/src/constraint-runtime/package-lock.json +0 -48
  238. package/src/constraint-runtime/package.json +0 -34
  239. package/src/constraint-runtime/src/_archive_helper.ts +0 -16
  240. package/src/constraint-runtime/src/agent/coordinator.ts +0 -71
  241. package/src/constraint-runtime/src/agent/index.ts +0 -1
  242. package/src/constraint-runtime/src/assistant/index.ts +0 -15
  243. package/src/constraint-runtime/src/bootstrap/index.ts +0 -15
  244. package/src/constraint-runtime/src/bootstrap_graph.ts +0 -17
  245. package/src/constraint-runtime/src/bridge/index.ts +0 -15
  246. package/src/constraint-runtime/src/buddy/index.ts +0 -15
  247. package/src/constraint-runtime/src/cli/index.ts +0 -15
  248. package/src/constraint-runtime/src/command_graph.ts +0 -20
  249. package/src/constraint-runtime/src/commands.ts +0 -83
  250. package/src/constraint-runtime/src/components/index.ts +0 -15
  251. package/src/constraint-runtime/src/constants/index.ts +0 -15
  252. package/src/constraint-runtime/src/constraint/budget.ts +0 -25
  253. package/src/constraint-runtime/src/constraint/index.ts +0 -3
  254. package/src/constraint-runtime/src/constraint/permission.ts +0 -28
  255. package/src/constraint-runtime/src/context.ts +0 -45
  256. package/src/constraint-runtime/src/coordinator/index.ts +0 -15
  257. package/src/constraint-runtime/src/cost_hook.ts +0 -6
  258. package/src/constraint-runtime/src/cost_tracker.ts +0 -9
  259. package/src/constraint-runtime/src/deferred_init.ts +0 -18
  260. package/src/constraint-runtime/src/direct_modes.ts +0 -13
  261. package/src/constraint-runtime/src/dynamic-tool-loader.ts +0 -115
  262. package/src/constraint-runtime/src/entrypoints/index.ts +0 -15
  263. package/src/constraint-runtime/src/execution_registry.ts +0 -41
  264. package/src/constraint-runtime/src/history.ts +0 -16
  265. package/src/constraint-runtime/src/hooks/index.ts +0 -15
  266. package/src/constraint-runtime/src/index.ts +0 -28
  267. package/src/constraint-runtime/src/ink.ts +0 -4
  268. package/src/constraint-runtime/src/keybindings/index.ts +0 -15
  269. package/src/constraint-runtime/src/memdir/index.ts +0 -15
  270. package/src/constraint-runtime/src/migrations/index.ts +0 -15
  271. package/src/constraint-runtime/src/models.ts +0 -49
  272. package/src/constraint-runtime/src/moreright/index.ts +0 -15
  273. package/src/constraint-runtime/src/native_ts/index.ts +0 -15
  274. package/src/constraint-runtime/src/output_styles/index.ts +0 -15
  275. package/src/constraint-runtime/src/parity_audit.ts +0 -23
  276. package/src/constraint-runtime/src/plugins/index.ts +0 -15
  277. package/src/constraint-runtime/src/port_manifest.ts +0 -20
  278. package/src/constraint-runtime/src/prefetch.ts +0 -17
  279. package/src/constraint-runtime/src/query.ts +0 -7
  280. package/src/constraint-runtime/src/reference_data/archive_surface_snapshot.json +0 -63
  281. package/src/constraint-runtime/src/reference_data/commands_snapshot.json +0 -1037
  282. package/src/constraint-runtime/src/reference_data/subsystems/OpenCLI.json +0 -10
  283. package/src/constraint-runtime/src/reference_data/subsystems/PolymarketSDK.json +0 -12
  284. package/src/constraint-runtime/src/reference_data/subsystems/SafeSDK.json +0 -14
  285. package/src/constraint-runtime/src/reference_data/subsystems/assistant.json +0 -8
  286. package/src/constraint-runtime/src/reference_data/subsystems/bootstrap.json +0 -8
  287. package/src/constraint-runtime/src/reference_data/subsystems/bridge.json +0 -32
  288. package/src/constraint-runtime/src/reference_data/subsystems/buddy.json +0 -13
  289. package/src/constraint-runtime/src/reference_data/subsystems/cli.json +0 -26
  290. package/src/constraint-runtime/src/reference_data/subsystems/components.json +0 -32
  291. package/src/constraint-runtime/src/reference_data/subsystems/constants.json +0 -28
  292. package/src/constraint-runtime/src/reference_data/subsystems/coordinator.json +0 -8
  293. package/src/constraint-runtime/src/reference_data/subsystems/entrypoints.json +0 -15
  294. package/src/constraint-runtime/src/reference_data/subsystems/hooks.json +0 -32
  295. package/src/constraint-runtime/src/reference_data/subsystems/keybindings.json +0 -21
  296. package/src/constraint-runtime/src/reference_data/subsystems/memdir.json +0 -15
  297. package/src/constraint-runtime/src/reference_data/subsystems/migrations.json +0 -18
  298. package/src/constraint-runtime/src/reference_data/subsystems/moreright.json +0 -8
  299. package/src/constraint-runtime/src/reference_data/subsystems/native_ts.json +0 -11
  300. package/src/constraint-runtime/src/reference_data/subsystems/outputStyles.json +0 -8
  301. package/src/constraint-runtime/src/reference_data/subsystems/plugins.json +0 -9
  302. package/src/constraint-runtime/src/reference_data/subsystems/remote.json +0 -11
  303. package/src/constraint-runtime/src/reference_data/subsystems/schemas.json +0 -8
  304. package/src/constraint-runtime/src/reference_data/subsystems/screens.json +0 -10
  305. package/src/constraint-runtime/src/reference_data/subsystems/server.json +0 -10
  306. package/src/constraint-runtime/src/reference_data/subsystems/services.json +0 -32
  307. package/src/constraint-runtime/src/reference_data/subsystems/skills.json +0 -27
  308. package/src/constraint-runtime/src/reference_data/subsystems/state.json +0 -13
  309. package/src/constraint-runtime/src/reference_data/subsystems/types.json +0 -18
  310. package/src/constraint-runtime/src/reference_data/subsystems/upstreamproxy.json +0 -9
  311. package/src/constraint-runtime/src/reference_data/subsystems/utils.json +0 -32
  312. package/src/constraint-runtime/src/reference_data/subsystems/vim.json +0 -12
  313. package/src/constraint-runtime/src/reference_data/subsystems/voice.json +0 -8
  314. package/src/constraint-runtime/src/reference_data/tools_snapshot.json +0 -1042
  315. package/src/constraint-runtime/src/remote/index.ts +0 -15
  316. package/src/constraint-runtime/src/remote_runtime.ts +0 -17
  317. package/src/constraint-runtime/src/runtime/index.ts +0 -1
  318. package/src/constraint-runtime/src/runtime/session.ts +0 -42
  319. package/src/constraint-runtime/src/schemas/index.ts +0 -15
  320. package/src/constraint-runtime/src/screens/index.ts +0 -15
  321. package/src/constraint-runtime/src/server/index.ts +0 -15
  322. package/src/constraint-runtime/src/services/index.ts +0 -15
  323. package/src/constraint-runtime/src/session_store.ts +0 -32
  324. package/src/constraint-runtime/src/setup.ts +0 -50
  325. package/src/constraint-runtime/src/skills/index.ts +0 -1
  326. package/src/constraint-runtime/src/skills/skill-registry.ts +0 -40
  327. package/src/constraint-runtime/src/state/index.ts +0 -15
  328. package/src/constraint-runtime/src/system_init.ts +0 -21
  329. package/src/constraint-runtime/src/thinking/engine.ts +0 -61
  330. package/src/constraint-runtime/src/thinking/index.ts +0 -1
  331. package/src/constraint-runtime/src/tool_pool.ts +0 -20
  332. package/src/constraint-runtime/src/tools/OpenCLI/execAdapter.ts +0 -12
  333. package/src/constraint-runtime/src/tools/OpenCLI/listAdapters.ts +0 -12
  334. package/src/constraint-runtime/src/tools/OpenCLI/runCommand.ts +0 -13
  335. package/src/constraint-runtime/src/tools/PolymarketSDK/cancelOrder.ts +0 -10
  336. package/src/constraint-runtime/src/tools/PolymarketSDK/createOrder.ts +0 -13
  337. package/src/constraint-runtime/src/tools/PolymarketSDK/getMarket.ts +0 -14
  338. package/src/constraint-runtime/src/tools/PolymarketSDK/getOrders.ts +0 -10
  339. package/src/constraint-runtime/src/tools/PolymarketSDK/listMarkets.ts +0 -24
  340. package/src/constraint-runtime/src/tools/SafeSDK/confirmTransaction.ts +0 -13
  341. package/src/constraint-runtime/src/tools/SafeSDK/createTransaction.ts +0 -23
  342. package/src/constraint-runtime/src/tools/SafeSDK/deploySafe.ts +0 -12
  343. package/src/constraint-runtime/src/tools/SafeSDK/executeTransaction.ts +0 -12
  344. package/src/constraint-runtime/src/tools/SafeSDK/getBalance.ts +0 -10
  345. package/src/constraint-runtime/src/tools/SafeSDK/getPendingTransactions.ts +0 -10
  346. package/src/constraint-runtime/src/tools/SafeSDK/proposeTransaction.ts +0 -14
  347. package/src/constraint-runtime/src/tools/WalletTools/autoPay.ts +0 -58
  348. package/src/constraint-runtime/src/tools/WalletTools/createWallet.ts +0 -19
  349. package/src/constraint-runtime/src/tools/WalletTools/getBalance.ts +0 -28
  350. package/src/constraint-runtime/src/tools/WalletTools/importWallet.ts +0 -34
  351. package/src/constraint-runtime/src/tools/WalletTools/sendTransaction.ts +0 -50
  352. package/src/constraint-runtime/src/tools/WalletTools/signMessage.ts +0 -23
  353. package/src/constraint-runtime/src/tools/WalletTools/transferToken.ts +0 -49
  354. package/src/constraint-runtime/src/tools.ts +0 -100
  355. package/src/constraint-runtime/src/transcript.ts +0 -23
  356. package/src/constraint-runtime/src/types/index.ts +0 -15
  357. package/src/constraint-runtime/src/upstream_proxy/index.ts +0 -15
  358. package/src/constraint-runtime/src/utils/index.ts +0 -15
  359. package/src/constraint-runtime/src/vim/index.ts +0 -15
  360. package/src/constraint-runtime/src/voice/index.ts +0 -15
  361. package/src/constraint-runtime/tests/agent.test.ts +0 -20
  362. package/src/constraint-runtime/tests/constraint.test.ts +0 -47
  363. package/src/constraint-runtime/tests/skill.test.ts +0 -23
  364. package/src/constraint-runtime/tests/thinking.test.ts +0 -28
  365. package/src/constraint-runtime/tsconfig.json +0 -13
  366. package/src/pi-ecosystem/index.ts +0 -453
  367. package/src/pi-ecosystem-colony/index.ts +0 -482
  368. package/src/pi-ecosystem-goals/index.ts +0 -585
  369. package/src/pi-ecosystem-judgment/decision.ts +0 -431
  370. package/src/pi-ecosystem-judgment/distillation.ts +0 -398
  371. package/src/pi-ecosystem-judgment/human-value-store.ts +0 -580
  372. package/src/pi-ecosystem-judgment/index.ts +0 -678
  373. package/src/pi-ecosystem-judgment/value-injection.ts +0 -744
  374. package/src/pi-ecosystem-mcp/index.ts +0 -427
  375. package/src/pi-ecosystem-subagents/index.ts +0 -408
  376. package/src/test/ai-judgment-test.ts +0 -92
  377. package/src/test/bollharness-integration.test.ts +0 -398
  378. package/src/test/channel-agent-multi-dialogue.ts +0 -265
  379. package/src/test/channel-heartbeat-agent-test.ts +0 -244
  380. package/src/test/constraint-layer.test.ts +0 -191
  381. package/src/test/diap-identity-test.ts +0 -222
  382. package/src/test/diap-quick-test.ts +0 -73
  383. package/src/test/global-shared-context.test.ts +0 -393
  384. package/src/test/harness-judgment-injection.test.ts +0 -353
  385. package/src/test/harness-workflow-integrator-test.ts +0 -285
  386. package/src/test/human-value-store.test.ts +0 -316
  387. package/src/test/hybrid-integration-test.ts +0 -126
  388. package/src/test/hybrid-messenger-verify.ts +0 -68
  389. package/src/test/iroh-bistream-debug.ts +0 -50
  390. package/src/test/iroh-communication.test.ts +0 -81
  391. package/src/test/iroh-debug-test.ts +0 -69
  392. package/src/test/iroh-diap-test.ts +0 -90
  393. package/src/test/iroh-direct-connect.ts +0 -65
  394. package/src/test/iroh-e2e-fixed.ts +0 -106
  395. package/src/test/iroh-e2e-same-process.ts +0 -83
  396. package/src/test/iroh-e2e.ts +0 -83
  397. package/src/test/iroh-final-e2e.ts +0 -84
  398. package/src/test/iroh-relay-test.ts +0 -46
  399. package/src/test/iroh-simple-test.ts +0 -49
  400. package/src/test/iroh-transport-verify.ts +0 -60
  401. package/src/test/iroh-transport.test.ts +0 -47
  402. package/src/test/iroh-two-nodes.ts +0 -87
  403. package/src/test/iroh-verify.ts +0 -55
  404. package/src/test/judgment-decision.test.ts +0 -373
  405. package/src/test/llm-judgment-integration.test.ts +0 -257
  406. package/src/test/p2p-agent-complex-dialogue.ts +0 -490
  407. package/src/test/p2p-agent-dialogue.ts +0 -423
  408. package/src/test/p2p-agent-full-bidirectional.ts +0 -686
  409. package/src/test/p2p-agent-harness-flow.ts +0 -562
  410. package/src/test/p2p-agent-harness-single.ts +0 -175
  411. package/src/test/p2p-ai-dialogue-test.ts +0 -374
  412. package/src/test/p2p-cid-connect-test.ts +0 -245
  413. package/src/test/p2p-connect-receiver.ts +0 -85
  414. package/src/test/p2p-iroh-test.ts +0 -214
  415. package/src/test/p2p-minimal-test.ts +0 -264
  416. package/src/test/p2p-node-1.ts +0 -172
  417. package/src/test/p2p-node-2.ts +0 -172
  418. package/src/test/p2p-server.ts +0 -335
  419. package/src/test/p2p-two-nodes-test.ts +0 -542
  420. package/src/test/pi-sdk.test.ts +0 -47
  421. package/src/test/set-persona.ts +0 -56
  422. package/src/test/simple.test.ts +0 -11
  423. package/src/test/storage-integration.test.ts +0 -191
  424. package/src/test/subagent-manager.test.ts +0 -392
  425. package/src/test/test-gate-flow.test.ts +0 -92
  426. package/src/test/workflow-engine.test.ts +0 -101
  427. package/src/web/design.md +0 -99
  428. package/src/workflows/collaboration.ts +0 -455
  429. package/src/workflows/index.ts +0 -64
  430. package/vitest.config.ts +0 -12
  431. package//346/203/263/346/263/225.md +0 -79
@@ -1,326 +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/boll-$ISSUE_SLUG -b codex/$ISSUE_SLUG main
57
- mkdir -p /tmp/boll-$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 运行,用主仓库的 venv
187
- VENV=/Users/nature/个人项目/boll/backend/venv/bin/pytest
188
-
189
- cd /tmp/boll-$ISSUE_SLUG
190
- $VENV -q backend/tests/unit/ # 无 Docker
191
- $VENV -q backend/tests/field/ # 无 Docker
192
- $VENV -q backend/tests/test_phase0_surface.py # 无 Docker
193
- $VENV -q backend/tests/product/ # 需要 Docker
194
- $VENV -q backend/tests/matching/ # 无 Docker
195
- ```
196
-
197
- **产物**: `TEST.md`
198
-
199
- ```markdown
200
- # TEST: guard-YYYYMMDD-HHMM
201
-
202
- ## 测试执行结果
203
-
204
- ### 可运行测试
205
- | 测试集 | 数量 | 结果 | 命令 |
206
-
207
- ### 需要 Docker 的测试
208
- | 测试集 | 状态 | 原因 |
209
-
210
- ### 诚实声明
211
- - 新代码有没有被测试覆盖?
212
- - 是"旧测试通过"还是"新代码验证通过"?
213
- - 有没有把 BLOCKED 标成 PASSED?
214
- ```
215
-
216
- **诚实规则**:
217
- - "collect 通过" ≠ "测试通过"
218
- - "旧测试通过" ≠ "新代码验证通过"
219
- - Docker 不可用 → 标 BLOCKED,不标 PASS
220
- - 不虚构测试数量
221
-
222
- ### Step 8: Gate 7 — 最终审查
223
-
224
- Spawn 独立审查者(opus)审查代码 diff + 测试结果。
225
-
226
- ```
227
- Agent tool:
228
- model: opus
229
- prompt: |
230
- 你是独立代码审查者(最终审查)。
231
-
232
- 审查 git diff + TEST.md + LOG.md。
233
- 检查代码是否与 PLAN 一致。
234
- 检查有没有引入新问题。
235
- 检查 TEST.md 是否诚实。
236
-
237
- 输出写入:[FINAL-REVIEW.md 路径]
238
- verdict: PASS 或 FAIL。
239
- ```
240
-
241
- ### Step 9: Gate 7.5 — Closure
242
-
243
- **产物**: `CLOSURE.md`
244
-
245
- ```markdown
246
- # CLOSURE
247
-
248
- ## Issue 闭环状态
249
- - status: fixed ✓/✗
250
- - prevention_status: closed ✓/✗
251
- - mechanism_layer: guard|test|type|convention ✓/✗
252
-
253
- ## 文档同步清单
254
-
255
- ### 必须更新
256
- - [ ] issue 文档 status/prevention_status
257
-
258
- ### 可能需要更新(写进 PR 描述)
259
- - [ ] CLAUDE.md 路由表(如果改了 API)
260
- - [ ] 其他 issue 文档(如果修复也解决了其他问题)
261
-
262
- ### 不需要更新
263
- - (列出检查过但不需要改的)
264
- ```
265
-
266
- **禁止修改的文件**:
267
- - CLAUDE.md(行为指令部分)
268
- - AGENTS.md
269
- - `.claude/skills/*/SKILL.md`
270
- - `scripts/guard-feedback.py`
271
- - `scripts/context_router.py`
272
-
273
- ### Step 10: Gate 8 — Push + PR
274
-
275
- ```bash
276
- cd /tmp/boll-$ISSUE_SLUG
277
- git push -u origin codex/$ISSUE_SLUG
278
- gh pr create --title "fix(...): guard-YYYYMMDD-HHMM 标题" --body "..."
279
- ```
280
-
281
- PR 描述必须包含:
282
- - Issue 路径
283
- - 变更摘要
284
- - 8 Gate 结果表
285
- - 验证结果(诚实标注 PASS/BLOCKED)
286
- - Artifacts 列表
287
-
288
- ## 异常处理
289
-
290
- | 场景 | 操作 |
291
- |------|------|
292
- | Scope 超 3 文件 | Gate 1 标 `needs_plan`,停止 |
293
- | 审查 2 轮不通过 | 标 `blocked`,停止 |
294
- | 测试失败且无法修 | TEST.md 记录失败原因,标 `blocked`,停止 |
295
- | 碰禁止修改的文件 | 停止 |
296
- | Rebase 冲突 | 标 `needs_coordination`,停止 |
297
-
298
- **所有异常路径都停止。不要强行继续。**
299
-
300
- ## 反模式清单
301
-
302
- 以下行为是明确禁止的(PLAN-064 教训):
303
-
304
- | 反模式 | 正确做法 |
305
- |--------|---------|
306
- | 写完代码不运行就 commit | 每个 WP 必须有运行时证据 |
307
- | LOG.md 从 git log 生成 | LOG.md 在写代码时实时写 |
308
- | 把 "199 tests PASS" 当验证 | 区分旧测试/新测试,标注新代码覆盖率 |
309
- | 4 分钟完成一个 WP | 如果太快,说明没有运行验证 |
310
- | 自己审自己 | Gate 2/4/7 必须 spawn 独立 subagent |
311
- | Docker 不可用就跳过 | 标 BLOCKED,不标 PASS |
312
-
313
- ## Gate 检查清单
314
-
315
- 执行前自检——**如果正在写代码但 PLAN.md 不存在,立刻停下来。**
316
-
317
- ```
318
- □ PLAN.md 存在? → Gate 2 可以开始
319
- □ PLAN-REVIEW.md verdict: PASS? → Gate 3 可以开始
320
- □ TASK.md 存在? → Gate 4 可以开始
321
- □ TASK-REVIEW.md verdict: PASS? → Gate 5 可以开始
322
- □ LOG.md 存在? → Gate 6 可以开始
323
- □ TEST.md 存在? → Gate 7 可以开始
324
- □ FINAL-REVIEW.md verdict: PASS? → Gate 7.5 可以开始
325
- □ CLOSURE.md 存在? → Gate 8 可以开始
326
- ```
@@ -1,155 +0,0 @@
1
- ---
2
- name: lead
3
- description: 流形开发流程统领(fail-closed 状态机)。从想法到生产代码的全流程管理,机械化门禁强制。当用户提出新功能、改动需求、或需要讨论方向时使用。
4
- status: active
5
- tier: entry
6
- owner: nature
7
- last_audited: 2026-03-27
8
- triggers:
9
- - 新功能
10
- - 方向讨论
11
- - 跨模块修复
12
- - 需要 Gate 管理
13
- outputs:
14
- - Gate 包(current_gate + required_artifact + required_next_skill + required_review_substrate)
15
- - 决策缺口
16
- - 执行 DAG 骨架
17
- truth_policy:
18
- - 不复制实时仓库事实
19
- - 实时事实以 boll-dev-handoff 的真相优先级为准
20
- - 只维护稳定流程、门禁和升级条件
21
- ---
22
-
23
- # 流形开发统领(Fail-Closed 状态机)
24
-
25
- ## 我是谁
26
-
27
- 我是 fail-closed 的流程状态机。我的职责不是建议,而是**阻塞**——没有满足入门条件就不能进下一门。
28
-
29
- 我优先处理的不是"快不快",而是:
30
-
31
- 1. 当前处于哪一门,前置条件是否满足
32
- 2. 下一门需要什么产物,由哪个 skill 产出
33
- 3. 审查由谁做,用什么基底(TeamCreate,不是 Agent)
34
-
35
- ## 状态机定义
36
-
37
- ### Gate 转移表
38
-
39
- | Gate | 名称 | entry_condition | required_artifact | required_next_skill | required_review_substrate |
40
- |------|------|-----------------|-------------------|---------------------|--------------------------|
41
- | 0 | 问题锁定 | 用户提出需求 | 问题陈述 + Change Classification | `arch` | — |
42
- | 1 | 架构设计 | Gate 0 产物存在 | ADR 草稿 + 消费方清单 | `arch` | — |
43
- | 2 | 架构审查 | ADR 草稿完成 | 审查报告(PASS/BLOCK) | **TeamCreate** | `ref-review-sop.md` 阶段②维度 |
44
- | 3 | PLAN | Gate 2 PASS | PLAN 文档 + 架构覆盖矩阵 | `boll-eng` + `plan-lock` | — |
45
- | 4 | PLAN 审查 + plan-lock | PLAN `vN-final` 冻结 | 审查报告 + plan-lock 确认 | **TeamCreate** | `ref-review-sop.md` 阶段④维度 + C/D/E/F |
46
- | 5 | task-arch | Gate 4 PASS + plan-lock | WP 拆分 + TASK.md | `task-arch` | — |
47
- | 6 | task 审查 | 全部 TASK.md 完成 | 审查报告(PASS/BLOCK) | **TeamCreate** | `ref-review-sop.md` WP 拆分专项 |
48
- | 7 | 执行 + 日志 | Gate 6 PASS | 代码 + LOG.md(每 WP 实时写) | `boll-eng` / `boll-dev` | — |
49
- | 8 | 执行审查 | 全部 WP 代码 + LOG.md 存在 | 审查报告 + 验收确认 | **TeamCreate** + `boll-eng-test` | `ref-review-sop.md` 阶段⑤⑥维度 |
50
-
51
- ### 转移函数(硬规则)
52
-
53
- ```
54
- transition(current_gate, artifact) -> next_gate | BLOCKED
55
-
56
- 规则:
57
- - Gate N 的 entry_condition 未满足 → BLOCKED,输出缺什么
58
- - Gate 2/4/6/8 的 required_review_substrate 是 TeamCreate → Agent 审查 = 不合规
59
- - Gate 4 → Gate 5:PLAN 必须有 plan-lock 标记(vN-final)
60
- - Gate 5 → Gate 6:task-arch 产物必须存在(TASK.md)
61
- - Gate 6 → Gate 7:task 审查 PASS
62
- - Gate 7 → Gate 8:每个 WP 必须同时有代码 commit 和 LOG.md
63
- - Gate 8 PASS → 完成;BLOCK → 回退到对应 Gate 修复
64
- ```
65
-
66
- ### 审查门强制 TeamCreate
67
-
68
- Gate 2/4/6/8 是审查门。硬规则:
69
-
70
- ```
71
- 审查门执行方式:
72
- ✅ TeamCreate("review-{plan-id}-gate-{N}") — 独立上下文,多视角
73
- ❌ Agent(subagent_type="...") — 共享上下文,单视角,不合规
74
- ```
75
-
76
- 审查维度参见 `ref-review-sop.md`。Gate 4 额外覆盖 C/D/E/F 维度。
77
-
78
- ## Output Contract
79
-
80
- 每次调用我,我**必须**先输出 Gate 包:
81
-
82
- ```yaml
83
- gate_pack:
84
- current_gate: N # 当前所在门
85
- entry_satisfied: true/false # 入门条件是否满足
86
- blockers: [...] # 未满足的条件列表
87
- required_artifact: "..." # 本门需要产出什么
88
- required_next_skill: "..." # 由谁产出
89
- required_review_substrate: "..." # 审查用什么(如果是审查门)
90
- ```
91
-
92
- 如果 `entry_satisfied: false`,不输出任何执行建议,只输出 blockers。
93
-
94
- ## 快速通道
95
-
96
- 只有同时满足以下**全部 5 条**,才允许跳 gate(不能跳 skill):
97
-
98
- 1. 改动不超过 3 个文件
99
- 2. 无契约变更(Change Classification = `implementation`)
100
- 3. 无跨模块接缝
101
- 4. 不影响用户心智或产品语义
102
- 5. 不引入新的架构决策
103
-
104
- 快速通道仍然需要:执行 skill + 审查(可简化为单人 TeamCreate)。
105
-
106
- ## Change Classification
107
-
108
- 每个工作单元先分类,分类决定最低门禁:
109
-
110
- | 分类 | 定义 | 最低门禁 |
111
- |------|------|---------|
112
- | `policy` | 边界、身份、权限、场景承诺、对外语义 | Gate 0 → Gate 8 全走 |
113
- | `contract` | API、schema、事件、共享配置、生成物 | Gate 0 → Gate 8 全走 + 消费方清单 |
114
- | `implementation` | 单模块内部实现 | 可走快速通道(需满足 5 条) |
115
-
116
- ## Parallel Planning Contract
117
-
118
- 进入并行前必须显式写出:
119
-
120
- ```yaml
121
- parallel_contract:
122
- write_set: [...] # 每个 track 的写文件集
123
- parallel_tracks: [...] # 并行 track 列表
124
- depends_on: {track: dep} # 依赖关系
125
- integration_owner: "..." # 集成负责人
126
- seam_owner: "..." # 接缝负责人
127
- golden_journeys: [...] # 端到端验证路径
128
- ```
129
-
130
- 如果两个 track 有共享接口但没有 `seam_owner` → 不是可执行计划 → BLOCKED。
131
-
132
- ## 来自 crystal-learn 的门禁
133
-
134
- **INV-4 真相源分裂**:涉及文档、配置、版本、部署描述时,必须追问"这个事实还写在哪"。如果有第二个副本,要么删掉,要么标注以谁为准。
135
-
136
- **INV-6 验证衰减**:不要只验最容易的那一层。任何计划都必须有从用户价值链最后一步倒推回来的 golden journeys。
137
-
138
- ## Gate 7 开发日志硬性要求(PLAN-064 教训)
139
-
140
- **LOG.md 不是可选项。** 每个 WP 的 `LOG.md` 必须在开发过程中实时写入,不得事后补写。
141
-
142
- Gate 7 → Gate 8 的转移条件包含:每个 WP 的 `docs/decisions/tasks/WP-*/LOG.md` 存在且非空。代码已 commit 但 LOG.md 不存在 = BLOCKED。
143
-
144
- ## 联动规则(skill 调度表)
145
-
146
- | 需要做什么 | 调度 skill | 在哪些 gate |
147
- |-----------|-----------|------------|
148
- | 本质和边界 | `arch` | Gate 0, 1 |
149
- | 锁 plan | `plan-lock` | Gate 3 → 4 |
150
- | 拆 WP | `task-arch` | Gate 5 |
151
- | 编排并行执行 | `boll-eng` | Gate 3, 7 |
152
- | 全栈实现 | `boll-dev` | Gate 7 |
153
- | 质量闭环 | `boll-eng-test` | Gate 8 |
154
- | 审真相源和漂移 | `boll-ops` | 任何 gate |
155
- | 独立上下文审查 | **TeamCreate** | Gate 2, 4, 6, 8 |
@@ -1,91 +0,0 @@
1
- # 审查闭环 SOP
2
-
3
- lead skill 的审查操作手册。审查是每个阶段的硬门禁。
4
-
5
- ---
6
-
7
- ## 核心原则
8
-
9
- 每个阶段结束后必须审查。审查用 TeamCreate(独立上下文 = 不被已有讨论污染的判断)。不是 Agent tool(subagent),是持久化 Team。
10
-
11
- ## 审查何时触发
12
-
13
- ```
14
- ① 讨论沉淀 → ✅ 审查:本质找对了吗?
15
- ② 决策书 ADR → ✅ 审查:决策完备吗?
16
- ③ 接口设计 → ✅ 审查:契约清楚吗?消费方覆盖了吗?
17
- ④ 实现方案 PLAN → ✅ 审查:方案能实现计划吗?
18
- ④-a 任务拆分 WP → ✅ 审查:WP 完备、解耦、可执行吗?
19
- ⑤ 代码实现 → ✅ 审查:每个 WP 完成后单独审查
20
- ⑥ 集成验收 → ✅ 审查:端到端走通吗?
21
- ```
22
-
23
- ## 标准审查流程
24
-
25
- ```
26
- TeamCreate("review-{plan-id}")
27
-
28
- 第 1 轮:多视角独立审查(Team 内并行)
29
- ├── Teammate A:视角 1
30
- ├── Teammate B:视角 2
31
- └── Teammate C:视角 3
32
-
33
- ↓ 收集独立报告 → 汇总 → 修正 → 再审 → 通过
34
- ```
35
-
36
- ## 审查维度矩阵
37
-
38
- | 阶段 | 视角 A | 视角 B | 视角 C |
39
- |------|--------|--------|--------|
40
- | ① 讨论 | 商业可行性 | 技术本质 | 用户体验 |
41
- | ② ADR | 选项完备性 | 架构一致性 | 风险分析 |
42
- | ③ 接口 | 消费方完备 | 向后兼容 | 可测试性 |
43
- | ④ PLAN/WP | 代码现状验证 | 任务解耦+依赖 | 测试+验收可执行 |
44
- | ⑤ 代码 | 功能正确性 | 安全+错误处理 | 性能+生产就绪 |
45
- | ⑥ 集成 | 端到端链路 | 回归验证 | 部署就绪 |
46
-
47
- ## PLAN-033 教训:审查团队扩展维度
48
-
49
- **Gate 4(PLAN 审查)必须额外覆盖**(详见 `plan-lock/ref-three-checks.md`):
50
-
51
- | 维度 | 检查什么 |
52
- |------|---------|
53
- | C. 消费方语义兼容 | 接口变更后所有调用方在新语义下行为正确 |
54
- | D. 数据流完整性 | 新字段从创建到消费的传递链无断点 |
55
- | E. 时间边界 | 跨午夜/跨过期/并发竞态 |
56
- | F. 对抗/红队 | 攻击者能构造什么输入获得不正当利益 |
57
-
58
- ## 生产问题诊断硬规则(2026-03-18 沉淀)
59
-
60
- **当审查对象是"生产故障"时,审查的第一步不是看代码,是看生产证据。**
61
-
62
- | 顺序 | 动作 | 不是 |
63
- |------|------|------|
64
- | 1 | 看日志、事件、DB 中的实际错误 | 看代码猜"可能哪里错了" |
65
- | 2 | 对比成功 case 和失败 case 的时间线 | 从代码结构推断"应该用另一种方式" |
66
- | 3 | 验证运行环境(认证、权限、沙盒、磁盘) | 假设环境和本地一样 |
67
- | 4 | 最后看代码,只为理解机制 | 把"代码可以改进"等同于"这里是 bug" |
68
-
69
- **Gate 0 的额外检查项**(生产故障类 issue):
70
- - [ ] 是否已查看失败 run 的实际错误消息(不是推测)
71
- - [ ] 是否已对比同路径下的成功 run
72
- - [ ] 是否已验证运行环境与本地的差异
73
-
74
- ## WP 拆分专项审查
75
-
76
- 当 PLAN 拆分成 WP 后,逐条检查:
77
-
78
- 1. **PLAN 覆盖率** — 每个 RP 在 WP 中都有归属
79
- 2. **WP 解耦与依赖** — 依赖正确,并行度最大化
80
- 3. **代码现状验证** — 文件/函数签名与真实代码一致
81
- 4. **接缝完整性** — 没有"不属于任何 WP 的中间层"
82
- 5. **验收可测试性** — 每个 WP 有可自动化的验收标准
83
- 6. **执行分配** — 每个 WP 由哪个 Skill 负责
84
-
85
- ## 日志要求
86
-
87
- 每次审查产生日志:`docs/decisions/tasks/{WP-ID}/LOG.md`。
88
-
89
- ## Skill 自迭代
90
-
91
- 审查中发现的可复用教训,沉淀到对应 Skill 的 reference 文件中,不只是 memory。
@@ -1,129 +0,0 @@
1
- # 开发阶段详细描述
2
-
3
- lead skill 的 5 个阶段的深度定义。主 SKILL.md 的 Gate 0-8 是强制顺序,这里是每个阶段的详细操作指南。
4
-
5
- ---
6
-
7
- ## 阶段 ①:讨论沉淀
8
-
9
- **目标**:把想法想清楚,找到本质。
10
-
11
- **必须加载**:`arch` skill(架构师做本质分析,不是 lead 自己想)
12
-
13
- **做什么**:
14
- - 从架构原则出发分析(引用 `docs/ARCHITECTURE_DESIGN.md` 的具体 Section)
15
- - 列出多个方案和 trade-off,不只给一个答案
16
- - 追问"这个东西的本质是什么?它属于哪一层?"
17
- - 识别它是**契约变更**还是**实现变更**
18
- - 记录讨论中达成的共识
19
-
20
- **消费方发现门禁**(必须在讨论阶段完成,三个维度都要覆盖):
21
- ```
22
- 数据消费方(谁在读这个实体的数据):
23
- □ 这个 Feature 改动涉及哪些组件/模块?
24
- □ 每个被改组件有哪些消费方?(grep import 来源)
25
- □ 消费方 > 1 时,所有消费方都在 Feature scope 内吗?
26
- □ 不在的消费方:纳入 scope,或显式标注"不受影响 + 原因"
27
-
28
- 行为消费方(谁在调用这个实体的能力):
29
- □ 这个实体被创建/注册后,系统中谁会调用它的方法/能力?
30
- □ 每个调用点,实体的状态是否足以支持调用?(如 adapter!=None 才能 chat)
31
- □ "接口接受" ≠ "语义完整"——API 接受你的输入不代表产物是完整公民
32
-
33
- 可见性消费方(谁在查找/匹配这个实体):
34
- □ 这个实体在所有 scope/query 条件下都能被找到吗?
35
- □ 有没有过滤条件会让它隐形?(如空 scene_ids → 场景查询不可见)
36
- ```
37
- **原则**:Feature scope = 改动集 ∪ 改动的所有消费方(数据+行为+可见性三维)。scope 不由"我想做什么"决定,由"谁在用我改的东西"决定。
38
-
39
- **不做**:不跳到"怎么实现"。这个阶段只讨论"是什么"和"为什么"。
40
-
41
- ---
42
-
43
- ## 阶段 ②:决策书 (ADR)
44
-
45
- **目标**:把共识变成正式决策,留下记录。
46
-
47
- **门禁**:阶段 ① 的讨论已充分,核心问题已回答。
48
-
49
- **必须加载**:`arch` skill
50
-
51
- **做什么**:
52
- - 写 `docs/decisions/ADR-NNN-xxx.md`
53
- - 格式:背景 → 选项分析(≥2 个方案 + trade-off)→ 决策 → 核心原则 → 影响范围
54
-
55
- **不做**:不在 ADR 里写实现细节。ADR 描述"做什么决定",不描述"怎么实现"。
56
-
57
- ---
58
-
59
- ## 阶段 ③:接口设计
60
-
61
- **目标**:定义功能的**本质**——它做什么,不是怎么做。
62
-
63
- **门禁**:ADR 已获批准。
64
-
65
- **必须加载**:`arch` skill + 领域相关 Skill
66
-
67
- **做什么**:
68
- - 定义输入/输出的语义
69
- - 定义调用方和实现方之间的契约
70
- - 定义操作会产生的事件/状态变化
71
- - 与现有契约的关系
72
-
73
- **本质描述的标准**:换一种实现方式,接口定义不需要改。
74
-
75
- ---
76
-
77
- ## 阶段 ④:实现方案 (PLAN)
78
-
79
- **目标**:把接口设计映射到代码改动。
80
-
81
- **门禁**:接口设计已完成,且架构设计审查 blocker 已清零。
82
-
83
- **必须加载**:`boll-eng` + 领域 Skill + `plan-lock`
84
-
85
- **做什么**:
86
- - 写 `docs/decisions/PLAN-NNN-xxx.md`
87
- - 列出具体要改/新增的文件
88
- - 每条变更链路追踪到底
89
- - 架构覆盖矩阵:逐条核对"架构设计 → PLAN 承载"
90
- - **冻结步骤**:必须经过 `plan-lock` 关掉所有决策口子
91
-
92
- **变更链路追踪清单**:
93
- ```
94
- □ 我改的是契约还是实现?
95
- □ 如果是契约,消费方有哪些?列出来。
96
- □ 数据从哪来 → 经过哪些层 → 到哪去?每一层有代码吗?
97
- □ 有没有降级路径?降级路径也通了吗?
98
- □ 有没有"不归任何人"的中间层?
99
- ```
100
-
101
- **消费方验证清单**:
102
- ```
103
- 数据消费方:每个都有对应的变更条目吗?降级路径覆盖了吗?
104
- 行为消费方:复用已有模式时,原模式的语义意图适用于新场景吗?
105
- 可见性消费方:新实体在所有 scope 查询下都可见吗?
106
- ```
107
-
108
- **硬性规则**:只有标成 `vN-final` 的冻结计划,才允许进入审查或交给 `task-arch`。
109
-
110
- ---
111
-
112
- ## 阶段 ⑤:代码实现
113
-
114
- **目标**:按方案写生产级代码。
115
-
116
- **强制 Skill 调度**:
117
-
118
- | 领域 | Skill | 什么时候用 |
119
- |------|-------|-----------|
120
- | 全栈实现(默认) | `boll-dev` | 跨前后端改动、调试、重构 |
121
- | 状态机/编排 | `arch` + `boll-eng` + `boll-dev` | 需要先冻结状态语义,再落执行编排和实现 |
122
- | LLM/Prompt | `soul-writing` + `boll-dev` | 行为文本设计、tool-use、parser 落地 |
123
- | HDC/向量 | `arch` + `boll-lab` | 编码策略、共振实验、证据化验证 |
124
- | 前端 UI | `boll-eng-frontend` | 组件、WS 事件消费 |
125
- | 前端设计 | `nature-designer` | 视觉设计、交互 |
126
- | 测试 | `boll-eng-test` | 测试策略 |
127
- | 架构对齐 | `arch` | 可能违反架构原则时 |
128
-
129
- **快速通道可以跳阶段,不可以跳 Skill。**