@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,356 +0,0 @@
1
- <!doctype html>
2
- <html lang="zh-CN">
3
- <head>
4
- <meta charset="utf-8">
5
- <title>bollharness 在 boll 的实践</title>
6
- <style>
7
- :root {
8
- --bg: #fafaf7;
9
- --card: #ffffff;
10
- --ink: #1a1a1a;
11
- --muted: #6b6b6b;
12
- --line: #d8d8d4;
13
- --rule: #e6e6e2;
14
- --user: #fff4d6; --user-bd: #d97706;
15
- --work: #dceefb; --work-bd: #1d4ed8;
16
- --review: #fde2ea; --review-bd: #be123c;
17
- --v1: #dceefb; --v1-bd: #1d4ed8;
18
- --v2: #fff4d6; --v2-bd: #d97706;
19
- --v3: #d6f0d8; --v3-bd: #15803d;
20
- }
21
- * { box-sizing: border-box; }
22
- html, body {
23
- margin: 0; padding: 0;
24
- background: var(--bg); color: var(--ink);
25
- font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
26
- -webkit-font-smoothing: antialiased;
27
- line-height: 1.55;
28
- }
29
- .page { max-width: 1180px; margin: 0 auto; padding: 56px 40px 96px; }
30
- h1 { font-size: 30px; margin: 0 0 10px; letter-spacing: -0.5px; }
31
- .lead { color: var(--muted); font-size: 14px; margin: 0 0 12px; }
32
- .meta { color: #888; font-size: 12px; margin: 0 0 28px; }
33
- h2 {
34
- font-size: 20px; font-weight: 700;
35
- margin: 56px 0 20px; padding-bottom: 10px;
36
- border-bottom: 1px solid var(--rule);
37
- }
38
- h2 .num { color: #999; font-weight: 500; margin-right: 8px; }
39
-
40
- /* ======= 图 1:横向 8 关流程 ======= */
41
- .flow {
42
- display: flex; align-items: stretch; gap: 6px;
43
- flex-wrap: wrap;
44
- padding: 8px 0 0;
45
- }
46
- .node {
47
- flex: 1 1 0;
48
- min-width: 116px;
49
- background: var(--card);
50
- border: 2px solid var(--line);
51
- border-radius: 10px;
52
- padding: 12px 12px 14px;
53
- box-shadow: 0 1px 0 rgba(0,0,0,0.02);
54
- }
55
- .node .tag {
56
- display: block; font-size: 10px; letter-spacing: 0.6px;
57
- color: var(--muted); text-transform: uppercase; margin-bottom: 6px;
58
- font-weight: 600;
59
- }
60
- .node .title { font-weight: 700; font-size: 14px; }
61
- .node .body { color: #4a4a4a; font-size: 12px; margin-top: 6px; line-height: 1.5; }
62
- .node.user { background: var(--user); border-color: var(--user-bd); }
63
- .node.work { background: var(--work); border-color: var(--work-bd); }
64
- .node.review { background: var(--review); border-color: var(--review-bd); }
65
-
66
- .arrow {
67
- display: flex; align-items: center; justify-content: center;
68
- color: #b0b0b0; font-size: 16px; font-weight: 600; min-width: 14px;
69
- }
70
-
71
- .legend {
72
- display: flex; gap: 24px; flex-wrap: wrap;
73
- margin: 16px 0 0;
74
- font-size: 12px; color: #555;
75
- }
76
- .dot {
77
- display: inline-block; width: 10px; height: 10px;
78
- border-radius: 50%; margin-right: 6px;
79
- vertical-align: middle;
80
- border: 2px solid;
81
- }
82
- .dot.user { background: var(--user); border-color: var(--user-bd); }
83
- .dot.work { background: var(--work); border-color: var(--work-bd); }
84
- .dot.review { background: var(--review); border-color: var(--review-bd); }
85
-
86
- .footnote {
87
- margin-top: 14px;
88
- background: #f3f3ef;
89
- border-left: 3px solid #999;
90
- padding: 10px 14px;
91
- color: #444; font-size: 13px;
92
- }
93
- .footnote strong { color: var(--ink); }
94
-
95
- /* ======= 图 2:三层叠加 ======= */
96
- .stack { display: flex; flex-direction: column; gap: 0; }
97
- .layer {
98
- border-radius: 12px;
99
- padding: 22px 24px 24px;
100
- border: 2px solid;
101
- }
102
- .layer .lname {
103
- font-size: 11px; font-weight: 700; letter-spacing: 0.8px;
104
- opacity: 0.7; text-transform: uppercase;
105
- }
106
- .layer .ltitle {
107
- font-size: 18px; font-weight: 700;
108
- margin: 6px 0 18px;
109
- }
110
- .lcomps { display: flex; gap: 12px; flex-wrap: wrap; }
111
- .comp {
112
- background: rgba(255,255,255,0.78);
113
- border-radius: 8px;
114
- padding: 12px 14px;
115
- flex: 1 1 220px;
116
- min-width: 220px;
117
- }
118
- .comp .ct { font-weight: 700; font-size: 14px; }
119
- .comp .cd { color: #555; font-size: 12px; line-height: 1.55; margin-top: 4px; }
120
- .layer.v1 { background: var(--v1); border-color: var(--v1-bd); }
121
- .layer.v2 { background: var(--v2); border-color: var(--v2-bd); }
122
- .layer.v3 { background: var(--v3); border-color: var(--v3-bd); }
123
- .stackjoin {
124
- text-align: center;
125
- color: #777; font-size: 12px;
126
- padding: 10px 0;
127
- font-weight: 600;
128
- letter-spacing: 0.5px;
129
- }
130
-
131
- /* ======= 速查表 ======= */
132
- table {
133
- width: 100%; border-collapse: collapse;
134
- margin-top: 14px; font-size: 13px;
135
- background: var(--card);
136
- border: 1px solid var(--rule);
137
- border-radius: 8px; overflow: hidden;
138
- }
139
- th, td { text-align: left; padding: 12px 14px; border-bottom: 1px solid var(--rule); vertical-align: top; }
140
- th { background: #f3f3ef; font-size: 12px; color: var(--muted); font-weight: 700; letter-spacing: 0.3px; }
141
- tr:last-child td { border-bottom: 0; }
142
- td code, p code, .footnote code {
143
- font-family: "SF Mono", Menlo, Consolas, monospace;
144
- font-size: 12px;
145
- background: #efeee8; padding: 2px 6px; border-radius: 4px;
146
- color: #2d2d2d;
147
- }
148
-
149
- footer {
150
- margin-top: 64px; padding-top: 22px;
151
- border-top: 1px solid var(--rule);
152
- color: var(--muted); font-size: 12px;
153
- line-height: 1.7;
154
- }
155
-
156
- @media (max-width: 1024px) {
157
- .node { flex: 1 1 140px; }
158
- }
159
- </style>
160
- </head>
161
- <body>
162
- <div class="page">
163
-
164
- <h1>bollharness 在 boll 的实践</h1>
165
- <p class="lead">两张图 / 一份速查表 — harness 当前真实在跑的样子。</p>
166
- <p class="meta">98 天 · 2058 commits · 76 万行 · 2100+ 测试 · 一个人 + AI 全自主交付</p>
167
-
168
- <!-- ============ 图 1 ============ -->
169
- <h2><span class="num">图 1</span>你说一句话,AI 自己干完 8 关</h2>
170
-
171
- <div class="flow">
172
-
173
- <div class="node user">
174
- <span class="tag">起点</span>
175
- <div class="title">你说</div>
176
- <div class="body">「我要做 X」</div>
177
- </div>
178
- <div class="arrow">›</div>
179
-
180
- <div class="node work">
181
- <span class="tag">Gate 0</span>
182
- <div class="title">lead 锁问题</div>
183
- <div class="body">判定变更分类</div>
184
- </div>
185
- <div class="arrow">›</div>
186
-
187
- <div class="node work">
188
- <span class="tag">Gate 1</span>
189
- <div class="title">arch 出架构</div>
190
- <div class="body">列清消费方</div>
191
- </div>
192
- <div class="arrow">›</div>
193
-
194
- <div class="node review">
195
- <span class="tag">Gate 2</span>
196
- <div class="title">独立审查 AI</div>
197
- <div class="body">tools 不含<br/>Edit / Write</div>
198
- </div>
199
- <div class="arrow">›</div>
200
-
201
- <div class="node review">
202
- <span class="tag">Gate 3-4</span>
203
- <div class="title">plan-lock</div>
204
- <div class="body">冻结方案<br/>独立再审</div>
205
- </div>
206
- <div class="arrow">›</div>
207
-
208
- <div class="node review">
209
- <span class="tag">Gate 5-6</span>
210
- <div class="title">task-arch 拆 WP</div>
211
- <div class="body">独立审查<br/>接缝有 owner</div>
212
- </div>
213
- <div class="arrow">›</div>
214
-
215
- <div class="node work">
216
- <span class="tag">Gate 7</span>
217
- <div class="title">harness-dev 写码</div>
218
- <div class="body">边写边记日志</div>
219
- </div>
220
- <div class="arrow">›</div>
221
-
222
- <div class="node review">
223
- <span class="tag">Gate 8</span>
224
- <div class="title">终审 + E2E</div>
225
- <div class="body">通过才出 PR</div>
226
- </div>
227
- <div class="arrow">›</div>
228
-
229
- <div class="node user">
230
- <span class="tag">终点</span>
231
- <div class="title">accept PR</div>
232
- </div>
233
-
234
- </div>
235
-
236
- <div class="legend">
237
- <span><span class="dot user"></span>你的输入 / 你的决策</span>
238
- <span><span class="dot work"></span>AI 执行(lead / arch / dev 等)</span>
239
- <span><span class="dot review"></span>独立审查 AI(无 Edit / Write 工具,物理上不能改代码)</span>
240
- </div>
241
-
242
- <div class="footnote">
243
- <strong>红色那 4 关</strong>由全新独立的 AI 接手 — 不共享之前对话从头看,工具清单里物理移除 Edit / Write,<em>不是嘱咐它「请只看不改」,是它根本调不出这两个工具</em>。
244
- </div>
245
-
246
-
247
- <!-- ============ 图 2 ============ -->
248
- <h2><span class="num">图 2</span>三层 harness — 每层在解决什么问题</h2>
249
-
250
- <div class="stack">
251
-
252
- <div class="layer v3">
253
- <div class="lname">v3 · 自治层</div>
254
- <div class="ltitle">解决:harness 自己跑出 bug 时谁来修 harness(修问题反而引入问题)</div>
255
- <div class="lcomps">
256
- <div class="comp">
257
- <div class="ct">改 harness 时不许重现自己要修的症状</div>
258
- <div class="cd">H0 元规约 6+1 条款 · 修过度 review 的 PR 不许过度 review · grep 反查 · Nature 单签</div>
259
- </div>
260
- <div class="comp">
261
- <div class="ct">多窗口并行不靠人手当中转</div>
262
- <div class="cd">H9 文件邮箱 · 子窗口写 markdown 消息 → 主窗口启动 hook 自动注入到 prompt · 5 个 hook 保证不丢/不重</div>
263
- </div>
264
- <div class="comp">
265
- <div class="ct">同样的坑不踩第二次</div>
266
- <div class="cd">H1 crystal-learn · 真实事故 → 提取成不变量 → 注入回执行层 skill · 8 条已落地</div>
267
- </div>
268
- <div class="comp">
269
- <div class="ct">编号撞 / 记忆涨爆 / 状态文件漂移 / 文档脱节</div>
270
- <div class="cd">H2-H8 · 身份段独立 · MEMORY 主索引 ≤200 行 · ADR-INDEX 自指过滤 · open issue ≤80 等硬指标</div>
271
- </div>
272
- </div>
273
- </div>
274
-
275
- <div class="stackjoin">↑ 当 v1+v2 自己跑出问题</div>
276
-
277
- <div class="layer v2">
278
- <div class="lname">v2 · 阶段化层</div>
279
- <div class="ltitle">解决:AI 不知道当前在哪个阶段,工具权限一直全开</div>
280
- <div class="lcomps">
281
- <div class="comp">
282
- <div class="ct">阶段切换自动收/放权</div>
283
- <div class="cd">/mode plan → build → verify → release · plan 阶段 AI 只读不写 / build 阶段才解锁 Edit / verify 阶段强制看 evidence</div>
284
- </div>
285
- <div class="comp">
286
- <div class="ct">审查标准写在契约里不在提示词里漂</div>
287
- <div class="cd">review-contract.yaml 锁死「谁审什么 / 要什么证据 / 什么标准算通过」· verify-gate hook 在 Stop 时校验 evidence packet</div>
288
- </div>
289
- </div>
290
- </div>
291
-
292
- <div class="stackjoin">↑ 当 v1 还不够</div>
293
-
294
- <div class="layer v1">
295
- <div class="lname">v1 · 物理拦截层</div>
296
- <div class="ltitle">解决:AI 写规则但不听规则(CLAUDE.md 遵从率仅 ~20%)</div>
297
- <div class="lcomps">
298
- <div class="comp">
299
- <div class="ct">想做错事就在动作那一刻挡下</div>
300
- <div class="cd">18 hooks · 想 rm -rf?想 push 到生产?想跳测试?想暗中改审查 AI?hook 直接 exit 2 物理阻断</div>
301
- </div>
302
- <div class="comp">
303
- <div class="ct">把 AI 拆成各司其职的角色</div>
304
- <div class="cd">16 skills · lead 锁问题不写代码 / arch 出方案不实现 / dev 实现不审查 / reviewer 物理无写权 — 单 AI 干所有事必出错</div>
305
- </div>
306
- <div class="comp">
307
- <div class="ct">不靠 AI 记规则,靠脚本自动验</div>
308
- <div class="cd">15 checks · 撞 ADR 编号 / 引用错文件路径 / hook IO 不合规 — git pre-commit 拒提交,不靠人记</div>
309
- </div>
310
- </div>
311
- </div>
312
-
313
- </div>
314
-
315
-
316
- <!-- ============ 速查表 ============ -->
317
- <h2><span class="num">附</span>想直接看实现,打开这几个文件</h2>
318
- <table>
319
- <thead>
320
- <tr><th style="width: 30%">你想看</th><th>打开这个</th></tr>
321
- </thead>
322
- <tbody>
323
- <tr>
324
- <td>审查 AI 物理上改不了代码</td>
325
- <td><code>.boll/plugins/boll-review-toolkit/agents/reviewer.md</code><br/>
326
- 看顶上 <code>tools:</code> 列表 — 没有 Edit / Write / Bash</td>
327
- </tr>
328
- <tr>
329
- <td>ADR 编号撞了 git 直接拒绝提交</td>
330
- <td><code>.githooks/pre-commit</code>(22 行 shell)<br/>
331
- + <code>scripts/checks/check_adr_plan_numbering.ts</code></td>
332
- </tr>
333
- <tr>
334
- <td>AI 之间怎么传消息(H9 邮箱)</td>
335
- <td><code>.boll/inbox/schema/message-v1.json</code><br/>
336
- + 5 个 inbox hook(write-ledger / validate / inject-on-start / poll / ack)</td>
337
- </tr>
338
- <tr>
339
- <td>16 个 skill 怎么分工</td>
340
- <td><code>.boll/skills/</code> — 每个子目录一个 SKILL.md</td>
341
- </tr>
342
- <tr>
343
- <td>所有 hook IO schema</td>
344
- <td><code>scripts/hooks/_hook_output.ts</code> — 16 个 helper API(ADR-058 §D1)</td>
345
- </tr>
346
- </tbody>
347
- </table>
348
-
349
- <footer>
350
- 本地双击 <code>practice.html</code> 用浏览器打开 / 也可以投到大屏。<br/>
351
- 所有图块用纯 HTML+CSS 画 — 不依赖 mermaid / 不依赖 markdown viewer / 不依赖网络。
352
- </footer>
353
-
354
- </div>
355
- </body>
356
- </html>
@@ -1,82 +0,0 @@
1
- # bollharness 在 boll 的实践
2
-
3
- > **本地展示**:双击打开 [`docs/practice.html`](./practice.html)(浅色主题,纯 HTML+CSS,不依赖任何渲染引擎)。
4
- > 下面是同一份内容的 GitHub 在线版本(Mermaid 渲染)。
5
-
6
- 98 天 / 2058 commits / 76 万行 / 2100+ 测试 — 一个人 + AI 全自主交付。
7
- 两张图是 harness 当前真实在跑的样子。
8
-
9
- ---
10
-
11
- ## 图 1 · 你说一句话,AI 自己干完 8 关
12
-
13
- ```mermaid
14
- flowchart LR
15
- U[你说<br/>我要做 X]:::user --> G0
16
- G0[Gate 0<br/>lead 锁问题]:::work --> G1
17
- G1[Gate 1<br/>arch 出架构]:::work --> G2
18
- G2[Gate 2<br/>独立审查 AI<br/>无 Edit/Write]:::review --> G34
19
- G34[Gate 3-4<br/>plan-lock 冻结<br/>独立审查]:::review --> G56
20
- G56[Gate 5-6<br/>task-arch 拆 WP<br/>独立审查]:::review --> G7
21
- G7[Gate 7<br/>harness-dev 写代码<br/>边写边记日志]:::work --> G8
22
- G8[Gate 8<br/>终审 + E2E]:::review --> PR
23
- PR[accept PR]:::user
24
-
25
- classDef user fill:#fff4d6,stroke:#d97706,color:#000
26
- classDef work fill:#dceefb,stroke:#1d4ed8,color:#000
27
- classDef review fill:#fde2ea,stroke:#be123c,color:#000
28
- ```
29
-
30
- - 黄色 = 你的输入 / 你的决策
31
- - 蓝色 = AI 执行(lead / arch / dev)
32
- - 红色 = 独立审查 AI — 不共享之前对话从头看;tools 列表里物理移除 Edit / Write,**不是嘱咐它「只看不改」,是它根本调不出这两个工具**
33
-
34
- ---
35
-
36
- ## 图 2 · 三层 harness — 每层在解决什么问题
37
-
38
- ```mermaid
39
- flowchart TB
40
- subgraph V3[v3 · 自治层 · 解决 harness 自己跑出 bug 时谁来修 harness]
41
- H0[改 harness 时<br/>不许重现自己要修的症状<br/>H0 元规约]
42
- H9[多窗口并行<br/>不靠人手当中转<br/>H9 文件邮箱]
43
- H1[同样的坑<br/>不踩第二次<br/>H1 crystal-learn]
44
- Hx[编号撞/记忆涨爆<br/>状态漂移/文档脱节<br/>H2-H8 硬指标]
45
- end
46
- subgraph V2[v2 · 阶段化层 · 解决 AI 不知道当前在哪个阶段,工具权限一直全开]
47
- Mode[阶段切换<br/>自动收/放权<br/>mode-toolkit]
48
- Review[审查标准写在契约里<br/>不在提示词里漂<br/>review-toolkit]
49
- end
50
- subgraph V1[v1 · 物理拦截层 · 解决 AI 写规则但不听规则 CLAUDE.md 遵从率仅 20%]
51
- Hooks[想做错事<br/>就在动作那一刻挡下<br/>18 hooks]
52
- Skills[把 AI 拆成<br/>各司其职的角色<br/>16 skills]
53
- Checks[不靠 AI 记规则<br/>靠脚本自动验<br/>15 checks]
54
- end
55
- V1 ==当 v1 还不够==> V2 ==当 v1+v2 自己跑出问题==> V3
56
-
57
- classDef v1 fill:#dceefb,stroke:#1d4ed8,color:#000
58
- classDef v2 fill:#fff4d6,stroke:#d97706,color:#000
59
- classDef v3 fill:#d6f0d8,stroke:#15803d,color:#000
60
- class Hooks,Skills,Checks v1
61
- class Mode,Review v2
62
- class H0,H9,H1,Hx v3
63
- ```
64
-
65
- 每层都在答一个问题:「上一层不够用的时候补什么」。
66
- - **v1 解决** AI 写规则但不听规则(CLAUDE.md 遵从率仅 ~20%)→ 用 hook 物理拦截
67
- - **v2 解决** AI 工具权限一直全开 → 用阶段机自动收/放权
68
- - **v3 解决** harness 自己跑出 bug → 9 站自治协议(修问题不在自己交付物里重现该问题等)
69
-
70
- **v3 一直闭合不再开新站,本身就是稳态信号。**
71
-
72
- ---
73
-
74
- ## 想直接看实现的话
75
-
76
- | 你想看 | 打开这个 |
77
- |---|---|
78
- | 审查 AI 物理上改不了代码 | [`.boll/plugins/boll-review-toolkit/agents/reviewer.md`](../.boll/plugins/boll-review-toolkit/agents/reviewer.md) — 看顶上 `tools:` 列表 |
79
- | ADR 编号撞了 git 直接拒绝提交 | [`.githooks/pre-commit`](../.githooks/pre-commit)(22 行 shell)+ [`scripts/checks/check_adr_plan_numbering.ts`](../scripts/checks/check_adr_plan_numbering.ts) |
80
- | AI 之间怎么传消息(H9 邮箱) | [`.boll/inbox/schema/message-v1.json`](../.boll/inbox/schema/message-v1.json) + 5 个 inbox hook |
81
- | 16 个 skill 怎么分工 | [`.boll/skills/`](../.boll/skills/) |
82
- | 所有 hook IO schema | [`scripts/hooks/_hook_output.ts`](../scripts/hooks/_hook_output.ts) — 16 个 helper API(ADR-058) |
@@ -1,11 +0,0 @@
1
- # Round 1 — placeholder
2
-
3
- This directory is reserved for WP-9b deliverables:
4
-
5
- - 52 天 AI Harness 交付长文 (round 1-6 research narrative)
6
- - 7-class failure taxonomy report (round-1/failure-taxonomy.md)
7
-
8
- See `docs/decisions/ADR-001-genesis.md` §13.1/§13.2 (WP-9b scope)
9
- and `PLAN-086` §4.phase_B for production context.
10
-
11
- Status: skeleton only. Content is produced by WP-9b, not WP-08.
@@ -1,11 +0,0 @@
1
- # Round 2 — placeholder
2
-
3
- This directory is reserved for WP-9b deliverables:
4
-
5
- - 52 天 AI Harness 交付长文 (round 1-6 research narrative)
6
- - 7-class failure taxonomy report (round-2/failure-taxonomy.md)
7
-
8
- See `docs/decisions/ADR-001-genesis.md` §13.1/§13.2 (WP-9b scope)
9
- and `PLAN-086` §4.phase_B for production context.
10
-
11
- Status: skeleton only. Content is produced by WP-9b, not WP-08.
@@ -1,11 +0,0 @@
1
- # Round 3 — placeholder
2
-
3
- This directory is reserved for WP-9b deliverables:
4
-
5
- - 52 天 AI Harness 交付长文 (round 1-6 research narrative)
6
- - 7-class failure taxonomy report (round-3/failure-taxonomy.md)
7
-
8
- See `docs/decisions/ADR-001-genesis.md` §13.1/§13.2 (WP-9b scope)
9
- and `PLAN-086` §4.phase_B for production context.
10
-
11
- Status: skeleton only. Content is produced by WP-9b, not WP-08.
@@ -1,11 +0,0 @@
1
- # Round 4 — placeholder
2
-
3
- This directory is reserved for WP-9b deliverables:
4
-
5
- - 52 天 AI Harness 交付长文 (round 1-6 research narrative)
6
- - 7-class failure taxonomy report (round-4/failure-taxonomy.md)
7
-
8
- See `docs/decisions/ADR-001-genesis.md` §13.1/§13.2 (WP-9b scope)
9
- and `PLAN-086` §4.phase_B for production context.
10
-
11
- Status: skeleton only. Content is produced by WP-9b, not WP-08.
@@ -1,11 +0,0 @@
1
- # Round 5 — placeholder
2
-
3
- This directory is reserved for WP-9b deliverables:
4
-
5
- - 52 天 AI Harness 交付长文 (round 1-6 research narrative)
6
- - 7-class failure taxonomy report (round-5/failure-taxonomy.md)
7
-
8
- See `docs/decisions/ADR-001-genesis.md` §13.1/§13.2 (WP-9b scope)
9
- and `PLAN-086` §4.phase_B for production context.
10
-
11
- Status: skeleton only. Content is produced by WP-9b, not WP-08.
@@ -1,11 +0,0 @@
1
- # Round 6 — placeholder
2
-
3
- This directory is reserved for WP-9b deliverables:
4
-
5
- - 52 天 AI Harness 交付长文 (round 1-6 research narrative)
6
- - 7-class failure taxonomy report (round-6/failure-taxonomy.md)
7
-
8
- See `docs/decisions/ADR-001-genesis.md` §13.1/§13.2 (WP-9b scope)
9
- and `PLAN-086` §4.phase_B for production context.
10
-
11
- Status: skeleton only. Content is produced by WP-9b, not WP-08.
@@ -1,48 +0,0 @@
1
- {
2
- "name": "bollharness",
3
- "version": "1.0.0",
4
- "lockfileVersion": 3,
5
- "requires": true,
6
- "packages": {
7
- "": {
8
- "name": "bollharness",
9
- "version": "1.0.0",
10
- "license": "MIT",
11
- "devDependencies": {
12
- "@types/node": "^20.0.0",
13
- "typescript": "^5.3.0"
14
- }
15
- },
16
- "node_modules/@types/node": {
17
- "version": "20.19.41",
18
- "resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.41.tgz",
19
- "integrity": "sha512-ECymXOukMnOoVkC2bb1Vc/w/836DXncOg5m8Xj1RH7xSHZJWNYY6Zh7EH477vcnD5egKNNfy2RpNOmuChhFPgQ==",
20
- "dev": true,
21
- "license": "MIT",
22
- "dependencies": {
23
- "undici-types": "~6.21.0"
24
- }
25
- },
26
- "node_modules/typescript": {
27
- "version": "5.9.3",
28
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz",
29
- "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
30
- "dev": true,
31
- "license": "Apache-2.0",
32
- "bin": {
33
- "tsc": "bin/tsc",
34
- "tsserver": "bin/tsserver"
35
- },
36
- "engines": {
37
- "node": ">=14.17"
38
- }
39
- },
40
- "node_modules/undici-types": {
41
- "version": "6.21.0",
42
- "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz",
43
- "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==",
44
- "dev": true,
45
- "license": "MIT"
46
- }
47
- }
48
- }