peaks-loop 4.0.0-beta.6 → 4.0.0-beta.8

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 (1068) hide show
  1. package/CHANGELOG.md +152 -0
  2. package/README-en.md +178 -67
  3. package/README.md +178 -57
  4. package/examples/video-demo/README.md +108 -23
  5. package/examples/video-demo/preview/peaks-loop-demo-en.mp4 +0 -0
  6. package/examples/video-demo/preview/peaks-loop-demo.mp4 +0 -0
  7. package/package.json +19 -6
  8. package/scripts/copy-templates.mjs +64 -0
  9. package/scripts/install-skills.mjs +13 -10
  10. package/skills/bee/peaks-rd/SKILL.md +1 -1
  11. package/skills/bee/peaks-rd/references/library-version-awareness.md +2 -2
  12. package/skills/bee/peaks-rd/references/mock-data-placement.md +1 -1
  13. package/skills/bee/peaks-rd/references/rd-runbook.md +2 -2
  14. package/skills/bee/peaks-rd/references/rd-transition-gates.md +2 -2
  15. package/skills/bee/peaks-rd/references/writing-handoff-frontmatter.md +1 -1
  16. package/skills/bee/peaks-ui/SKILL.md +2 -2
  17. package/skills/peaks-code/SKILL.md +35 -45
  18. package/skills/peaks-code/references/project-scan-checklist.md +3 -1
  19. package/skills/peaks-code/references/runbook.md +2 -2
  20. package/skills/peaks-code/references/standards-preflight.md +1 -1
  21. package/skills/peaks-code/references/step-11-memory-sediment.md +56 -0
  22. package/skills/peaks-code/references/swarm-dispatch-contract.md +1 -1
  23. package/skills/peaks-code/references/workflow-gates-and-types.md +3 -3
  24. package/skills/peaks-slice-decompose/SKILL.md +61 -1
  25. package/dist/src/cli/cli-helpers.d.ts +0 -43
  26. package/dist/src/cli/cli-helpers.js +0 -86
  27. package/dist/src/cli/commands/adapter-commands-s2a.d.ts +0 -34
  28. package/dist/src/cli/commands/adapter-commands-s2a.js +0 -92
  29. package/dist/src/cli/commands/adapter-commands.d.ts +0 -30
  30. package/dist/src/cli/commands/adapter-commands.js +0 -35
  31. package/dist/src/cli/commands/agent-commands.d.ts +0 -20
  32. package/dist/src/cli/commands/agent-commands.js +0 -48
  33. package/dist/src/cli/commands/asset-commands.d.ts +0 -45
  34. package/dist/src/cli/commands/asset-commands.js +0 -404
  35. package/dist/src/cli/commands/audit-commands.d.ts +0 -28
  36. package/dist/src/cli/commands/audit-commands.js +0 -437
  37. package/dist/src/cli/commands/bee-commands.d.ts +0 -26
  38. package/dist/src/cli/commands/bee-commands.js +0 -169
  39. package/dist/src/cli/commands/capability-commands.d.ts +0 -16
  40. package/dist/src/cli/commands/capability-commands.js +0 -45
  41. package/dist/src/cli/commands/capability-worker-config-sc-commands.d.ts +0 -3
  42. package/dist/src/cli/commands/capability-worker-config-sc-commands.js +0 -10
  43. package/dist/src/cli/commands/classify-classify-commands.d.ts +0 -19
  44. package/dist/src/cli/commands/classify-classify-commands.js +0 -151
  45. package/dist/src/cli/commands/code-commands.d.ts +0 -80
  46. package/dist/src/cli/commands/code-commands.js +0 -798
  47. package/dist/src/cli/commands/code-review-commands.d.ts +0 -34
  48. package/dist/src/cli/commands/code-review-commands.js +0 -83
  49. package/dist/src/cli/commands/codegraph-commands.d.ts +0 -3
  50. package/dist/src/cli/commands/codegraph-commands.js +0 -99
  51. package/dist/src/cli/commands/compact-command.d.ts +0 -21
  52. package/dist/src/cli/commands/compact-command.js +0 -252
  53. package/dist/src/cli/commands/complexity-commands.d.ts +0 -9
  54. package/dist/src/cli/commands/complexity-commands.js +0 -34
  55. package/dist/src/cli/commands/config-commands.d.ts +0 -3
  56. package/dist/src/cli/commands/config-commands.js +0 -220
  57. package/dist/src/cli/commands/context-builder-commands.d.ts +0 -11
  58. package/dist/src/cli/commands/context-builder-commands.js +0 -85
  59. package/dist/src/cli/commands/context-commands.d.ts +0 -21
  60. package/dist/src/cli/commands/context-commands.js +0 -254
  61. package/dist/src/cli/commands/contract-commands.d.ts +0 -26
  62. package/dist/src/cli/commands/contract-commands.js +0 -114
  63. package/dist/src/cli/commands/core/artifacts-command.d.ts +0 -3
  64. package/dist/src/cli/commands/core/artifacts-command.js +0 -62
  65. package/dist/src/cli/commands/core/binding-commands.d.ts +0 -3
  66. package/dist/src/cli/commands/core/binding-commands.js +0 -58
  67. package/dist/src/cli/commands/core/doctor-command.d.ts +0 -11
  68. package/dist/src/cli/commands/core/doctor-command.js +0 -204
  69. package/dist/src/cli/commands/core/memory-command.d.ts +0 -3
  70. package/dist/src/cli/commands/core/memory-command.js +0 -98
  71. package/dist/src/cli/commands/core/profile-command.d.ts +0 -3
  72. package/dist/src/cli/commands/core/profile-command.js +0 -9
  73. package/dist/src/cli/commands/core/proxy-command.d.ts +0 -3
  74. package/dist/src/cli/commands/core/proxy-command.js +0 -26
  75. package/dist/src/cli/commands/core/session-command.d.ts +0 -3
  76. package/dist/src/cli/commands/core/session-command.js +0 -241
  77. package/dist/src/cli/commands/core/skill-command.d.ts +0 -3
  78. package/dist/src/cli/commands/core/skill-command.js +0 -297
  79. package/dist/src/cli/commands/core/standards-command.d.ts +0 -3
  80. package/dist/src/cli/commands/core/standards-command.js +0 -95
  81. package/dist/src/cli/commands/core-artifact-commands.d.ts +0 -15
  82. package/dist/src/cli/commands/core-artifact-commands.js +0 -31
  83. package/dist/src/cli/commands/dispatch-commands.d.ts +0 -10
  84. package/dist/src/cli/commands/dispatch-commands.js +0 -351
  85. package/dist/src/cli/commands/dispatch-from-dag.d.ts +0 -3
  86. package/dist/src/cli/commands/dispatch-from-dag.js +0 -251
  87. package/dist/src/cli/commands/doc-commands.d.ts +0 -11
  88. package/dist/src/cli/commands/doc-commands.js +0 -65
  89. package/dist/src/cli/commands/evolution-commands.d.ts +0 -27
  90. package/dist/src/cli/commands/evolution-commands.js +0 -393
  91. package/dist/src/cli/commands/feedback-commands.d.ts +0 -18
  92. package/dist/src/cli/commands/feedback-commands.js +0 -145
  93. package/dist/src/cli/commands/final-review-commands.d.ts +0 -31
  94. package/dist/src/cli/commands/final-review-commands.js +0 -161
  95. package/dist/src/cli/commands/fixture-commands.d.ts +0 -32
  96. package/dist/src/cli/commands/fixture-commands.js +0 -91
  97. package/dist/src/cli/commands/fork-commands.d.ts +0 -16
  98. package/dist/src/cli/commands/fork-commands.js +0 -163
  99. package/dist/src/cli/commands/gate-commands.d.ts +0 -3
  100. package/dist/src/cli/commands/gate-commands.js +0 -117
  101. package/dist/src/cli/commands/heartbeat-commands.d.ts +0 -3
  102. package/dist/src/cli/commands/heartbeat-commands.js +0 -135
  103. package/dist/src/cli/commands/hook-handle.d.ts +0 -17
  104. package/dist/src/cli/commands/hook-handle.js +0 -157
  105. package/dist/src/cli/commands/hooks-commands.d.ts +0 -3
  106. package/dist/src/cli/commands/hooks-commands.js +0 -156
  107. package/dist/src/cli/commands/impact-commands.d.ts +0 -15
  108. package/dist/src/cli/commands/impact-commands.js +0 -62
  109. package/dist/src/cli/commands/job-commands.d.ts +0 -3
  110. package/dist/src/cli/commands/job-commands.js +0 -289
  111. package/dist/src/cli/commands/legacy-commands.d.ts +0 -11
  112. package/dist/src/cli/commands/legacy-commands.js +0 -32
  113. package/dist/src/cli/commands/log-commands.d.ts +0 -17
  114. package/dist/src/cli/commands/log-commands.js +0 -64
  115. package/dist/src/cli/commands/loop-commands.d.ts +0 -27
  116. package/dist/src/cli/commands/loop-commands.js +0 -262
  117. package/dist/src/cli/commands/loop-eval-commands.d.ts +0 -20
  118. package/dist/src/cli/commands/loop-eval-commands.js +0 -526
  119. package/dist/src/cli/commands/memory-commands.d.ts +0 -23
  120. package/dist/src/cli/commands/memory-commands.js +0 -129
  121. package/dist/src/cli/commands/migrate-1-4-1-command.d.ts +0 -11
  122. package/dist/src/cli/commands/migrate-1-4-1-command.js +0 -34
  123. package/dist/src/cli/commands/migrate-v2-10-to-v2-11-command.d.ts +0 -20
  124. package/dist/src/cli/commands/migrate-v2-10-to-v2-11-command.js +0 -52
  125. package/dist/src/cli/commands/mut-commands.d.ts +0 -20
  126. package/dist/src/cli/commands/mut-commands.js +0 -239
  127. package/dist/src/cli/commands/observability-commands.d.ts +0 -22
  128. package/dist/src/cli/commands/observability-commands.js +0 -201
  129. package/dist/src/cli/commands/openspec-commands.d.ts +0 -3
  130. package/dist/src/cli/commands/openspec-commands.js +0 -237
  131. package/dist/src/cli/commands/perf-audit-commands.d.ts +0 -22
  132. package/dist/src/cli/commands/perf-audit-commands.js +0 -132
  133. package/dist/src/cli/commands/perf-commands.d.ts +0 -3
  134. package/dist/src/cli/commands/perf-commands.js +0 -41
  135. package/dist/src/cli/commands/playwright-commands.d.ts +0 -95
  136. package/dist/src/cli/commands/playwright-commands.js +0 -432
  137. package/dist/src/cli/commands/polyrepo-commands.d.ts +0 -37
  138. package/dist/src/cli/commands/polyrepo-commands.js +0 -155
  139. package/dist/src/cli/commands/prd-blocks-commands.d.ts +0 -18
  140. package/dist/src/cli/commands/prd-blocks-commands.js +0 -50
  141. package/dist/src/cli/commands/prd-commands.d.ts +0 -18
  142. package/dist/src/cli/commands/prd-commands.js +0 -141
  143. package/dist/src/cli/commands/preferences-commands.d.ts +0 -2
  144. package/dist/src/cli/commands/preferences-commands.js +0 -197
  145. package/dist/src/cli/commands/project-commands.d.ts +0 -3
  146. package/dist/src/cli/commands/project-commands.js +0 -248
  147. package/dist/src/cli/commands/qa-business-review-commands.d.ts +0 -17
  148. package/dist/src/cli/commands/qa-business-review-commands.js +0 -148
  149. package/dist/src/cli/commands/qa-commands.d.ts +0 -94
  150. package/dist/src/cli/commands/qa-commands.js +0 -271
  151. package/dist/src/cli/commands/release-commands.d.ts +0 -24
  152. package/dist/src/cli/commands/release-commands.js +0 -231
  153. package/dist/src/cli/commands/request-commands.d.ts +0 -3
  154. package/dist/src/cli/commands/request-commands.js +0 -548
  155. package/dist/src/cli/commands/retrospective-commands.d.ts +0 -12
  156. package/dist/src/cli/commands/retrospective-commands.js +0 -175
  157. package/dist/src/cli/commands/reviewer-commands.d.ts +0 -14
  158. package/dist/src/cli/commands/reviewer-commands.js +0 -64
  159. package/dist/src/cli/commands/role-commands.d.ts +0 -13
  160. package/dist/src/cli/commands/role-commands.js +0 -85
  161. package/dist/src/cli/commands/runtime-commands.d.ts +0 -52
  162. package/dist/src/cli/commands/runtime-commands.js +0 -150
  163. package/dist/src/cli/commands/sc-commands.d.ts +0 -3
  164. package/dist/src/cli/commands/sc-commands.js +0 -45
  165. package/dist/src/cli/commands/scan-commands.d.ts +0 -3
  166. package/dist/src/cli/commands/scan-commands.js +0 -445
  167. package/dist/src/cli/commands/security-audit-commands.d.ts +0 -23
  168. package/dist/src/cli/commands/security-audit-commands.js +0 -132
  169. package/dist/src/cli/commands/sediment-commands.d.ts +0 -80
  170. package/dist/src/cli/commands/sediment-commands.js +0 -649
  171. package/dist/src/cli/commands/session-auto-compact-hook-command.d.ts +0 -37
  172. package/dist/src/cli/commands/session-auto-compact-hook-command.js +0 -127
  173. package/dist/src/cli/commands/session-checkpoint-command.d.ts +0 -10
  174. package/dist/src/cli/commands/session-checkpoint-command.js +0 -100
  175. package/dist/src/cli/commands/session-migrate-skill-name.d.ts +0 -17
  176. package/dist/src/cli/commands/session-migrate-skill-name.js +0 -41
  177. package/dist/src/cli/commands/session-resume-command.d.ts +0 -11
  178. package/dist/src/cli/commands/session-resume-command.js +0 -83
  179. package/dist/src/cli/commands/share-commands.d.ts +0 -17
  180. package/dist/src/cli/commands/share-commands.js +0 -296
  181. package/dist/src/cli/commands/skill-conformance-commands.d.ts +0 -9
  182. package/dist/src/cli/commands/skill-conformance-commands.js +0 -39
  183. package/dist/src/cli/commands/skill-loop-engineering-readiness-commands.d.ts +0 -67
  184. package/dist/src/cli/commands/skill-loop-engineering-readiness-commands.js +0 -173
  185. package/dist/src/cli/commands/skill-search-commands.d.ts +0 -25
  186. package/dist/src/cli/commands/skill-search-commands.js +0 -68
  187. package/dist/src/cli/commands/skill-visibility.d.ts +0 -8
  188. package/dist/src/cli/commands/skill-visibility.js +0 -63
  189. package/dist/src/cli/commands/slice-commands.d.ts +0 -24
  190. package/dist/src/cli/commands/slice-commands.js +0 -492
  191. package/dist/src/cli/commands/slice-integrate-commands.d.ts +0 -11
  192. package/dist/src/cli/commands/slice-integrate-commands.js +0 -74
  193. package/dist/src/cli/commands/slice-review-commands.d.ts +0 -23
  194. package/dist/src/cli/commands/slice-review-commands.js +0 -162
  195. package/dist/src/cli/commands/smoke-commands.d.ts +0 -21
  196. package/dist/src/cli/commands/smoke-commands.js +0 -203
  197. package/dist/src/cli/commands/sop-commands.d.ts +0 -3
  198. package/dist/src/cli/commands/sop-commands.js +0 -215
  199. package/dist/src/cli/commands/statusline-commands.d.ts +0 -3
  200. package/dist/src/cli/commands/statusline-commands.js +0 -169
  201. package/dist/src/cli/commands/sub-agent-commands.d.ts +0 -22
  202. package/dist/src/cli/commands/sub-agent-commands.js +0 -19
  203. package/dist/src/cli/commands/sub-agent-dispatch-guard.d.ts +0 -55
  204. package/dist/src/cli/commands/sub-agent-dispatch-guard.js +0 -57
  205. package/dist/src/cli/commands/sub-agent-shared.d.ts +0 -99
  206. package/dist/src/cli/commands/sub-agent-shared.js +0 -67
  207. package/dist/src/cli/commands/test-commands.d.ts +0 -47
  208. package/dist/src/cli/commands/test-commands.js +0 -204
  209. package/dist/src/cli/commands/understand-commands.d.ts +0 -3
  210. package/dist/src/cli/commands/understand-commands.js +0 -148
  211. package/dist/src/cli/commands/upgrade-commands.d.ts +0 -23
  212. package/dist/src/cli/commands/upgrade-commands.js +0 -119
  213. package/dist/src/cli/commands/user-touchpoint-commands.d.ts +0 -18
  214. package/dist/src/cli/commands/user-touchpoint-commands.js +0 -78
  215. package/dist/src/cli/commands/verdict-aggregate-command.d.ts +0 -14
  216. package/dist/src/cli/commands/verdict-aggregate-command.js +0 -106
  217. package/dist/src/cli/commands/worker-commands.d.ts +0 -3
  218. package/dist/src/cli/commands/worker-commands.js +0 -52
  219. package/dist/src/cli/commands/workflow-commands.d.ts +0 -3
  220. package/dist/src/cli/commands/workflow-commands.js +0 -535
  221. package/dist/src/cli/commands/workflow-plan-commands.d.ts +0 -39
  222. package/dist/src/cli/commands/workflow-plan-commands.js +0 -163
  223. package/dist/src/cli/commands/workspace/clean-command.d.ts +0 -14
  224. package/dist/src/cli/commands/workspace/clean-command.js +0 -49
  225. package/dist/src/cli/commands/workspace/helpers.d.ts +0 -28
  226. package/dist/src/cli/commands/workspace/helpers.js +0 -87
  227. package/dist/src/cli/commands/workspace/init-command.d.ts +0 -121
  228. package/dist/src/cli/commands/workspace/init-command.js +0 -436
  229. package/dist/src/cli/commands/workspace/migrate-command.d.ts +0 -11
  230. package/dist/src/cli/commands/workspace/migrate-command.js +0 -91
  231. package/dist/src/cli/commands/workspace/reconcile-command.d.ts +0 -14
  232. package/dist/src/cli/commands/workspace/reconcile-command.js +0 -103
  233. package/dist/src/cli/commands/workspace-commands.d.ts +0 -18
  234. package/dist/src/cli/commands/workspace-commands.js +0 -50
  235. package/dist/src/cli/index.d.ts +0 -1
  236. package/dist/src/cli/index.js +0 -30
  237. package/dist/src/cli/program.d.ts +0 -5
  238. package/dist/src/cli/program.js +0 -401
  239. package/dist/src/hooks/pre-tool-use-sub-agent.d.ts +0 -28
  240. package/dist/src/hooks/pre-tool-use-sub-agent.js +0 -105
  241. package/dist/src/lib/render/message-renderer.d.ts +0 -20
  242. package/dist/src/lib/render/message-renderer.js +0 -80
  243. package/dist/src/services/adapter/adapter-registry.d.ts +0 -48
  244. package/dist/src/services/adapter/adapter-registry.js +0 -186
  245. package/dist/src/services/adapter/adapter.d.ts +0 -27
  246. package/dist/src/services/adapter/adapter.js +0 -5
  247. package/dist/src/services/adapter/auto-adapter.d.ts +0 -11
  248. package/dist/src/services/adapter/auto-adapter.js +0 -15
  249. package/dist/src/services/adapter/claude-adapter.d.ts +0 -14
  250. package/dist/src/services/adapter/claude-adapter.js +0 -40
  251. package/dist/src/services/adapter/codex-adapter.d.ts +0 -14
  252. package/dist/src/services/adapter/codex-adapter.js +0 -14
  253. package/dist/src/services/adapter/copilot-adapter.d.ts +0 -14
  254. package/dist/src/services/adapter/copilot-adapter.js +0 -14
  255. package/dist/src/services/agent/ecc-agent-service.d.ts +0 -47
  256. package/dist/src/services/agent/ecc-agent-service.js +0 -143
  257. package/dist/src/services/artifacts/artifact-lint-service.d.ts +0 -23
  258. package/dist/src/services/artifacts/artifact-lint-service.js +0 -99
  259. package/dist/src/services/artifacts/artifact-prerequisites.d.ts +0 -78
  260. package/dist/src/services/artifacts/artifact-prerequisites.js +0 -491
  261. package/dist/src/services/artifacts/artifact-service.d.ts +0 -43
  262. package/dist/src/services/artifacts/artifact-service.js +0 -98
  263. package/dist/src/services/artifacts/artifact-templates.d.ts +0 -30
  264. package/dist/src/services/artifacts/artifact-templates.js +0 -302
  265. package/dist/src/services/artifacts/repair-cycle-service.d.ts +0 -23
  266. package/dist/src/services/artifacts/repair-cycle-service.js +0 -52
  267. package/dist/src/services/artifacts/request-artifact-service.d.ts +0 -116
  268. package/dist/src/services/artifacts/request-artifact-service.js +0 -451
  269. package/dist/src/services/artifacts/request-artifact-state-helpers.d.ts +0 -51
  270. package/dist/src/services/artifacts/request-artifact-state-helpers.js +0 -114
  271. package/dist/src/services/artifacts/workspace-service.d.ts +0 -34
  272. package/dist/src/services/artifacts/workspace-service.js +0 -272
  273. package/dist/src/services/audit/artifact-writer.d.ts +0 -93
  274. package/dist/src/services/audit/artifact-writer.js +0 -303
  275. package/dist/src/services/audit/audit-goal-service.d.ts +0 -35
  276. package/dist/src/services/audit/audit-goal-service.js +0 -75
  277. package/dist/src/services/audit/audit-goal-types.d.ts +0 -40
  278. package/dist/src/services/audit/audit-goal-types.js +0 -15
  279. package/dist/src/services/audit/backing-detector.d.ts +0 -24
  280. package/dist/src/services/audit/backing-detector.js +0 -59
  281. package/dist/src/services/audit/classifier.d.ts +0 -38
  282. package/dist/src/services/audit/classifier.js +0 -134
  283. package/dist/src/services/audit/decision-writer.d.ts +0 -76
  284. package/dist/src/services/audit/decision-writer.js +0 -217
  285. package/dist/src/services/audit/enforcers/active-skill-resolver.d.ts +0 -29
  286. package/dist/src/services/audit/enforcers/active-skill-resolver.js +0 -71
  287. package/dist/src/services/audit/enforcers/code-ban.d.ts +0 -23
  288. package/dist/src/services/audit/enforcers/code-ban.js +0 -27
  289. package/dist/src/services/audit/enforcers/design-draft-confirm.d.ts +0 -24
  290. package/dist/src/services/audit/enforcers/design-draft-confirm.js +0 -58
  291. package/dist/src/services/audit/enforcers/lint-audit-regression.d.ts +0 -21
  292. package/dist/src/services/audit/enforcers/lint-audit-regression.js +0 -86
  293. package/dist/src/services/audit/enforcers/lint-catalog-governance.d.ts +0 -32
  294. package/dist/src/services/audit/enforcers/lint-catalog-governance.js +0 -48
  295. package/dist/src/services/audit/enforcers/lint-cli-back.d.ts +0 -16
  296. package/dist/src/services/audit/enforcers/lint-cli-back.js +0 -35
  297. package/dist/src/services/audit/enforcers/lint-output-style.d.ts +0 -11
  298. package/dist/src/services/audit/enforcers/lint-output-style.js +0 -94
  299. package/dist/src/services/audit/enforcers/lint-reference-integrity.d.ts +0 -6
  300. package/dist/src/services/audit/enforcers/lint-reference-integrity.js +0 -83
  301. package/dist/src/services/audit/enforcers/lint-reference-shape.d.ts +0 -30
  302. package/dist/src/services/audit/enforcers/lint-reference-shape.js +0 -272
  303. package/dist/src/services/audit/enforcers/lint-style.d.ts +0 -49
  304. package/dist/src/services/audit/enforcers/lint-style.js +0 -173
  305. package/dist/src/services/audit/enforcers/lint-workflow-shape.d.ts +0 -4
  306. package/dist/src/services/audit/enforcers/lint-workflow-shape.js +0 -100
  307. package/dist/src/services/audit/enforcers/login-gate.d.ts +0 -23
  308. package/dist/src/services/audit/enforcers/login-gate.js +0 -40
  309. package/dist/src/services/audit/enforcers/mock-placement.d.ts +0 -25
  310. package/dist/src/services/audit/enforcers/mock-placement.js +0 -48
  311. package/dist/src/services/audit/enforcers/no-root-pollution.d.ts +0 -21
  312. package/dist/src/services/audit/enforcers/no-root-pollution.js +0 -56
  313. package/dist/src/services/audit/enforcers/pre-rd-scan.d.ts +0 -22
  314. package/dist/src/services/audit/enforcers/pre-rd-scan.js +0 -23
  315. package/dist/src/services/audit/enforcers/prototype-fidelity.d.ts +0 -25
  316. package/dist/src/services/audit/enforcers/prototype-fidelity.js +0 -75
  317. package/dist/src/services/audit/enforcers/resume-detection.d.ts +0 -21
  318. package/dist/src/services/audit/enforcers/resume-detection.js +0 -52
  319. package/dist/src/services/audit/enforcers/sub-agent-sid.d.ts +0 -25
  320. package/dist/src/services/audit/enforcers/sub-agent-sid.js +0 -63
  321. package/dist/src/services/audit/prose-ratio-calculator.d.ts +0 -45
  322. package/dist/src/services/audit/prose-ratio-calculator.js +0 -52
  323. package/dist/src/services/audit/red-line-catalog-p2-a.d.ts +0 -21
  324. package/dist/src/services/audit/red-line-catalog-p2-a.js +0 -229
  325. package/dist/src/services/audit/red-line-catalog-p2-b.d.ts +0 -19
  326. package/dist/src/services/audit/red-line-catalog-p2-b.js +0 -225
  327. package/dist/src/services/audit/red-line-catalog.d.ts +0 -51
  328. package/dist/src/services/audit/red-line-catalog.js +0 -195
  329. package/dist/src/services/audit/red-lines-service.d.ts +0 -23
  330. package/dist/src/services/audit/red-lines-service.js +0 -464
  331. package/dist/src/services/audit/scanners/openspec-scanner.d.ts +0 -15
  332. package/dist/src/services/audit/scanners/openspec-scanner.js +0 -55
  333. package/dist/src/services/audit/scanners/rules-tree-scanner.d.ts +0 -16
  334. package/dist/src/services/audit/scanners/rules-tree-scanner.js +0 -56
  335. package/dist/src/services/audit/scanners/skills-tree-scanner.d.ts +0 -17
  336. package/dist/src/services/audit/scanners/skills-tree-scanner.js +0 -68
  337. package/dist/src/services/audit/static-service.d.ts +0 -60
  338. package/dist/src/services/audit/static-service.js +0 -130
  339. package/dist/src/services/audit/types.d.ts +0 -86
  340. package/dist/src/services/audit/types.js +0 -13
  341. package/dist/src/services/audit-independent/perf-audit-service.d.ts +0 -151
  342. package/dist/src/services/audit-independent/perf-audit-service.js +0 -316
  343. package/dist/src/services/audit-independent/security-audit-service.d.ts +0 -155
  344. package/dist/src/services/audit-independent/security-audit-service.js +0 -316
  345. package/dist/src/services/classify/classify-service.d.ts +0 -42
  346. package/dist/src/services/classify/classify-service.js +0 -122
  347. package/dist/src/services/classify/classify-types.d.ts +0 -79
  348. package/dist/src/services/classify/classify-types.js +0 -90
  349. package/dist/src/services/code/auto-compact-orchestrator.d.ts +0 -98
  350. package/dist/src/services/code/auto-compact-orchestrator.js +0 -343
  351. package/dist/src/services/code/batch-heartbeat-poller.d.ts +0 -51
  352. package/dist/src/services/code/batch-heartbeat-poller.js +0 -88
  353. package/dist/src/services/code/dag-orchestrator.d.ts +0 -128
  354. package/dist/src/services/code/dag-orchestrator.js +0 -304
  355. package/dist/src/services/code/emit-handoff.d.ts +0 -49
  356. package/dist/src/services/code/emit-handoff.js +0 -79
  357. package/dist/src/services/code/job-shape-decision.d.ts +0 -71
  358. package/dist/src/services/code/job-shape-decision.js +0 -151
  359. package/dist/src/services/code/mode-gate.d.ts +0 -163
  360. package/dist/src/services/code/mode-gate.js +0 -212
  361. package/dist/src/services/code/post-compact-detector.d.ts +0 -61
  362. package/dist/src/services/code/post-compact-detector.js +0 -240
  363. package/dist/src/services/code/status-line-renderer.d.ts +0 -34
  364. package/dist/src/services/code/status-line-renderer.js +0 -55
  365. package/dist/src/services/code/step-08-gate.d.ts +0 -90
  366. package/dist/src/services/code/step-08-gate.js +0 -136
  367. package/dist/src/services/code/user-touchpoint-classifier.d.ts +0 -44
  368. package/dist/src/services/code/user-touchpoint-classifier.js +0 -145
  369. package/dist/src/services/code-review/ecc-bridge.d.ts +0 -148
  370. package/dist/src/services/code-review/ecc-bridge.js +0 -242
  371. package/dist/src/services/code-review/ocr-service.d.ts +0 -129
  372. package/dist/src/services/code-review/ocr-service.js +0 -369
  373. package/dist/src/services/codegraph/codegraph-process-runner.d.ts +0 -2
  374. package/dist/src/services/codegraph/codegraph-process-runner.js +0 -93
  375. package/dist/src/services/codegraph/codegraph-service.d.ts +0 -43
  376. package/dist/src/services/codegraph/codegraph-service.js +0 -160
  377. package/dist/src/services/compact/decision-tables.d.ts +0 -66
  378. package/dist/src/services/compact/decision-tables.js +0 -127
  379. package/dist/src/services/compact/request-transition-hook.d.ts +0 -20
  380. package/dist/src/services/compact/request-transition-hook.js +0 -110
  381. package/dist/src/services/compact/suggest-service.d.ts +0 -74
  382. package/dist/src/services/compact/suggest-service.js +0 -203
  383. package/dist/src/services/complexity/complexity-estimator.d.ts +0 -34
  384. package/dist/src/services/complexity/complexity-estimator.js +0 -64
  385. package/dist/src/services/config/config-migration.d.ts +0 -45
  386. package/dist/src/services/config/config-migration.js +0 -154
  387. package/dist/src/services/config/config-restore.d.ts +0 -10
  388. package/dist/src/services/config/config-restore.js +0 -47
  389. package/dist/src/services/config/config-rollback.d.ts +0 -13
  390. package/dist/src/services/config/config-rollback.js +0 -26
  391. package/dist/src/services/config/config-safety.d.ts +0 -40
  392. package/dist/src/services/config/config-safety.js +0 -359
  393. package/dist/src/services/config/config-service.d.ts +0 -69
  394. package/dist/src/services/config/config-service.js +0 -814
  395. package/dist/src/services/config/config-types.d.ts +0 -119
  396. package/dist/src/services/config/config-types.js +0 -18
  397. package/dist/src/services/config/model-routing.d.ts +0 -4
  398. package/dist/src/services/config/model-routing.js +0 -17
  399. package/dist/src/services/config/provider-service.d.ts +0 -48
  400. package/dist/src/services/config/provider-service.js +0 -143
  401. package/dist/src/services/config/proxy-service.d.ts +0 -21
  402. package/dist/src/services/config/proxy-service.js +0 -44
  403. package/dist/src/services/config/sidecar-store.d.ts +0 -25
  404. package/dist/src/services/config/sidecar-store.js +0 -61
  405. package/dist/src/services/config/workspace-state-service.d.ts +0 -30
  406. package/dist/src/services/config/workspace-state-service.js +0 -142
  407. package/dist/src/services/context/artifact-meta.d.ts +0 -72
  408. package/dist/src/services/context/artifact-meta.js +0 -105
  409. package/dist/src/services/context/auto-compact-dispatcher.d.ts +0 -37
  410. package/dist/src/services/context/auto-compact-dispatcher.js +0 -240
  411. package/dist/src/services/context/auto-compact-reader.d.ts +0 -51
  412. package/dist/src/services/context/auto-compact-reader.js +0 -164
  413. package/dist/src/services/context/auto-compact-types.d.ts +0 -143
  414. package/dist/src/services/context/auto-compact-types.js +0 -36
  415. package/dist/src/services/context/collector.d.ts +0 -24
  416. package/dist/src/services/context/collector.js +0 -133
  417. package/dist/src/services/context/context-builder.d.ts +0 -30
  418. package/dist/src/services/context/context-builder.js +0 -78
  419. package/dist/src/services/context/context-guard.d.ts +0 -49
  420. package/dist/src/services/context/context-guard.js +0 -91
  421. package/dist/src/services/context/context-schema.d.ts +0 -415
  422. package/dist/src/services/context/context-schema.js +0 -73
  423. package/dist/src/services/context/dispatch-context-guard.d.ts +0 -27
  424. package/dist/src/services/context/dispatch-context-guard.js +0 -192
  425. package/dist/src/services/context/doc-retriever.d.ts +0 -26
  426. package/dist/src/services/context/doc-retriever.js +0 -51
  427. package/dist/src/services/context/headroom-client.d.ts +0 -34
  428. package/dist/src/services/context/headroom-client.js +0 -117
  429. package/dist/src/services/context/headroom-fetcher.d.ts +0 -6
  430. package/dist/src/services/context/headroom-fetcher.js +0 -28
  431. package/dist/src/services/context/headroom-prefs.d.ts +0 -46
  432. package/dist/src/services/context/headroom-prefs.js +0 -34
  433. package/dist/src/services/context/index.d.ts +0 -7
  434. package/dist/src/services/context/index.js +0 -6
  435. package/dist/src/services/context/main-session-monitor.d.ts +0 -89
  436. package/dist/src/services/context/main-session-monitor.js +0 -142
  437. package/dist/src/services/context/renderer.d.ts +0 -20
  438. package/dist/src/services/context/renderer.js +0 -30
  439. package/dist/src/services/context/shared-channel.d.ts +0 -93
  440. package/dist/src/services/context/shared-channel.js +0 -308
  441. package/dist/src/services/context/threshold.d.ts +0 -35
  442. package/dist/src/services/context/threshold.js +0 -76
  443. package/dist/src/services/context/tokenizer.d.ts +0 -12
  444. package/dist/src/services/context/tokenizer.js +0 -43
  445. package/dist/src/services/context/types.d.ts +0 -93
  446. package/dist/src/services/context/types.js +0 -9
  447. package/dist/src/services/crystallization/crystallization-service.d.ts +0 -239
  448. package/dist/src/services/crystallization/crystallization-service.js +0 -397
  449. package/dist/src/services/crystallization/crystallization-store.d.ts +0 -75
  450. package/dist/src/services/crystallization/crystallization-store.js +0 -193
  451. package/dist/src/services/crystallization/crystallization-types.d.ts +0 -313
  452. package/dist/src/services/crystallization/crystallization-types.js +0 -299
  453. package/dist/src/services/crystallization/evidence-brief-builder.d.ts +0 -237
  454. package/dist/src/services/crystallization/evidence-brief-builder.js +0 -240
  455. package/dist/src/services/dashboard/project-dashboard-service.d.ts +0 -91
  456. package/dist/src/services/dashboard/project-dashboard-service.js +0 -147
  457. package/dist/src/services/dispatch/batch-counter.d.ts +0 -27
  458. package/dist/src/services/dispatch/batch-counter.js +0 -102
  459. package/dist/src/services/dispatch/contract-store.d.ts +0 -63
  460. package/dist/src/services/dispatch/contract-store.js +0 -157
  461. package/dist/src/services/dispatch/dispatch-record-writer.d.ts +0 -138
  462. package/dist/src/services/dispatch/dispatch-record-writer.js +0 -460
  463. package/dist/src/services/dispatch/heartbeat-truncator.d.ts +0 -26
  464. package/dist/src/services/dispatch/heartbeat-truncator.js +0 -13
  465. package/dist/src/services/dispatch/leak-detector.d.ts +0 -11
  466. package/dist/src/services/dispatch/leak-detector.js +0 -72
  467. package/dist/src/services/dispatch/slice-dag.d.ts +0 -81
  468. package/dist/src/services/dispatch/slice-dag.js +0 -238
  469. package/dist/src/services/dispatch/sub-agent-dispatcher.d.ts +0 -239
  470. package/dist/src/services/dispatch/sub-agent-dispatcher.js +0 -382
  471. package/dist/src/services/dispatch/test-tool-detection.d.ts +0 -36
  472. package/dist/src/services/dispatch/test-tool-detection.js +0 -46
  473. package/dist/src/services/doc/doc-generator.d.ts +0 -38
  474. package/dist/src/services/doc/doc-generator.js +0 -122
  475. package/dist/src/services/doctor/doctor-service.d.ts +0 -149
  476. package/dist/src/services/doctor/doctor-service.js +0 -929
  477. package/dist/src/services/evolution/evolution-service.d.ts +0 -137
  478. package/dist/src/services/evolution/evolution-service.js +0 -281
  479. package/dist/src/services/evolution/evolution-store.d.ts +0 -57
  480. package/dist/src/services/evolution/evolution-store.js +0 -232
  481. package/dist/src/services/evolution/evolution-types.d.ts +0 -706
  482. package/dist/src/services/evolution/evolution-types.js +0 -286
  483. package/dist/src/services/evolution/independent-evaluator-runner.d.ts +0 -90
  484. package/dist/src/services/evolution/independent-evaluator-runner.js +0 -106
  485. package/dist/src/services/evolution/regression-skeptic-runner.d.ts +0 -64
  486. package/dist/src/services/evolution/regression-skeptic-runner.js +0 -113
  487. package/dist/src/services/feedback/feedback-promotion-service.d.ts +0 -123
  488. package/dist/src/services/feedback/feedback-promotion-service.js +0 -300
  489. package/dist/src/services/filesystem/file-lock.d.ts +0 -11
  490. package/dist/src/services/filesystem/file-lock.js +0 -129
  491. package/dist/src/services/final-review/final-review-service.d.ts +0 -12
  492. package/dist/src/services/final-review/final-review-service.js +0 -52
  493. package/dist/src/services/final-review/final-review-types.d.ts +0 -42
  494. package/dist/src/services/final-review/final-review-types.js +0 -18
  495. package/dist/src/services/fixture/fixture-capture-service.d.ts +0 -87
  496. package/dist/src/services/fixture/fixture-capture-service.js +0 -317
  497. package/dist/src/services/fixture/fixture-sanitize-service.d.ts +0 -117
  498. package/dist/src/services/fixture/fixture-sanitize-service.js +0 -161
  499. package/dist/src/services/fixture/index.d.ts +0 -8
  500. package/dist/src/services/fixture/index.js +0 -8
  501. package/dist/src/services/fork/fork-sync-state.d.ts +0 -85
  502. package/dist/src/services/fork/fork-sync-state.js +0 -130
  503. package/dist/src/services/fuzzy-matching/fuzzy-match-service.d.ts +0 -15
  504. package/dist/src/services/fuzzy-matching/fuzzy-match-service.js +0 -56
  505. package/dist/src/services/fuzzy-matching/fzf-pick-service.d.ts +0 -68
  506. package/dist/src/services/fuzzy-matching/fzf-pick-service.js +0 -158
  507. package/dist/src/services/fuzzy-matching/types.d.ts +0 -20
  508. package/dist/src/services/fuzzy-matching/types.js +0 -1
  509. package/dist/src/services/handoff/handoff-parser.d.ts +0 -28
  510. package/dist/src/services/handoff/handoff-parser.js +0 -69
  511. package/dist/src/services/handoff/handoff-types.d.ts +0 -39
  512. package/dist/src/services/handoff/handoff-types.js +0 -19
  513. package/dist/src/services/handoff/handoff-writer.d.ts +0 -23
  514. package/dist/src/services/handoff/handoff-writer.js +0 -30
  515. package/dist/src/services/hooks/auto-compact-hook-install.d.ts +0 -104
  516. package/dist/src/services/hooks/auto-compact-hook-install.js +0 -157
  517. package/dist/src/services/hooks/output.d.ts +0 -92
  518. package/dist/src/services/hooks/output.js +0 -111
  519. package/dist/src/services/hooks/presence-marker-detector.d.ts +0 -16
  520. package/dist/src/services/hooks/presence-marker-detector.js +0 -105
  521. package/dist/src/services/ide/adapters/claude-code-adapter.d.ts +0 -18
  522. package/dist/src/services/ide/adapters/claude-code-adapter.js +0 -103
  523. package/dist/src/services/ide/adapters/codex-adapter.d.ts +0 -46
  524. package/dist/src/services/ide/adapters/codex-adapter.js +0 -97
  525. package/dist/src/services/ide/adapters/cursor-adapter.d.ts +0 -36
  526. package/dist/src/services/ide/adapters/cursor-adapter.js +0 -84
  527. package/dist/src/services/ide/adapters/hermes-adapter.d.ts +0 -21
  528. package/dist/src/services/ide/adapters/hermes-adapter.js +0 -51
  529. package/dist/src/services/ide/adapters/openclaw-adapter.d.ts +0 -14
  530. package/dist/src/services/ide/adapters/openclaw-adapter.js +0 -42
  531. package/dist/src/services/ide/adapters/trae-adapter.d.ts +0 -42
  532. package/dist/src/services/ide/adapters/trae-adapter.js +0 -83
  533. package/dist/src/services/ide/hook-protocol.d.ts +0 -47
  534. package/dist/src/services/ide/hook-protocol.js +0 -74
  535. package/dist/src/services/ide/hook-translator.d.ts +0 -72
  536. package/dist/src/services/ide/hook-translator.js +0 -128
  537. package/dist/src/services/ide/ide-detector.d.ts +0 -10
  538. package/dist/src/services/ide/ide-detector.js +0 -19
  539. package/dist/src/services/ide/ide-registry.d.ts +0 -14
  540. package/dist/src/services/ide/ide-registry.js +0 -60
  541. package/dist/src/services/ide/ide-types.d.ts +0 -230
  542. package/dist/src/services/ide/ide-types.js +0 -2
  543. package/dist/src/services/ide/resource-profile.d.ts +0 -52
  544. package/dist/src/services/ide/resource-profile.js +0 -33
  545. package/dist/src/services/ide/shared/atomic-json.d.ts +0 -15
  546. package/dist/src/services/ide/shared/atomic-json.js +0 -58
  547. package/dist/src/services/ide/shared/safe-path.d.ts +0 -11
  548. package/dist/src/services/ide/shared/safe-path.js +0 -29
  549. package/dist/src/services/impact/impact-scan-service.d.ts +0 -66
  550. package/dist/src/services/impact/impact-scan-service.js +0 -197
  551. package/dist/src/services/job/job-event-emitter.d.ts +0 -30
  552. package/dist/src/services/job/job-event-emitter.js +0 -5
  553. package/dist/src/services/job/job-orchestrator.d.ts +0 -50
  554. package/dist/src/services/job/job-orchestrator.js +0 -104
  555. package/dist/src/services/job/job-progress-store.d.ts +0 -60
  556. package/dist/src/services/job/job-progress-store.js +0 -70
  557. package/dist/src/services/job/job-resource-snapshot.d.ts +0 -7
  558. package/dist/src/services/job/job-resource-snapshot.js +0 -75
  559. package/dist/src/services/job/job-rotation.d.ts +0 -17
  560. package/dist/src/services/job/job-rotation.js +0 -30
  561. package/dist/src/services/job/job-state-store.d.ts +0 -24
  562. package/dist/src/services/job/job-state-store.js +0 -60
  563. package/dist/src/services/job/job-types.d.ts +0 -444
  564. package/dist/src/services/job/job-types.js +0 -87
  565. package/dist/src/services/job/subagent-job-wrapper.d.ts +0 -35
  566. package/dist/src/services/job/subagent-job-wrapper.js +0 -30
  567. package/dist/src/services/legacy/legacy-detector.d.ts +0 -34
  568. package/dist/src/services/legacy/legacy-detector.js +0 -111
  569. package/dist/src/services/log/log-commands-service.d.ts +0 -54
  570. package/dist/src/services/log/log-commands-service.js +0 -83
  571. package/dist/src/services/log/logger.d.ts +0 -103
  572. package/dist/src/services/log/logger.js +0 -224
  573. package/dist/src/services/log/redact.d.ts +0 -32
  574. package/dist/src/services/log/redact.js +0 -89
  575. package/dist/src/services/log/retention.d.ts +0 -34
  576. package/dist/src/services/log/retention.js +0 -78
  577. package/dist/src/services/loop/evaluator-dispatcher.d.ts +0 -50
  578. package/dist/src/services/loop/evaluator-dispatcher.js +0 -552
  579. package/dist/src/services/loop/loop-bee-relation-service.d.ts +0 -107
  580. package/dist/src/services/loop/loop-bee-relation-service.js +0 -211
  581. package/dist/src/services/loop/loop-bee-relation-store.d.ts +0 -53
  582. package/dist/src/services/loop/loop-bee-relation-store.js +0 -130
  583. package/dist/src/services/loop/loop-bee-relation-types.d.ts +0 -118
  584. package/dist/src/services/loop/loop-bee-relation-types.js +0 -114
  585. package/dist/src/services/loop/loop-release-service.d.ts +0 -46
  586. package/dist/src/services/loop/loop-release-service.js +0 -66
  587. package/dist/src/services/loop/loop-release-store.d.ts +0 -55
  588. package/dist/src/services/loop/loop-release-store.js +0 -134
  589. package/dist/src/services/loop/loop-release-types.d.ts +0 -250
  590. package/dist/src/services/loop/loop-release-types.js +0 -162
  591. package/dist/src/services/loop/monotonic-guard.d.ts +0 -80
  592. package/dist/src/services/loop/monotonic-guard.js +0 -232
  593. package/dist/src/services/loop/monotonic-runner.d.ts +0 -58
  594. package/dist/src/services/loop/monotonic-runner.js +0 -231
  595. package/dist/src/services/loop/run-driver.d.ts +0 -70
  596. package/dist/src/services/loop/run-driver.js +0 -400
  597. package/dist/src/services/loop/spec-service.d.ts +0 -90
  598. package/dist/src/services/loop/spec-service.js +0 -497
  599. package/dist/src/services/memory/llm-reranker.d.ts +0 -174
  600. package/dist/src/services/memory/llm-reranker.js +0 -284
  601. package/dist/src/services/memory/memory-search-service.d.ts +0 -93
  602. package/dist/src/services/memory/memory-search-service.js +0 -117
  603. package/dist/src/services/memory/project-context-service.d.ts +0 -11
  604. package/dist/src/services/memory/project-context-service.js +0 -148
  605. package/dist/src/services/memory/project-memory-service.d.ts +0 -167
  606. package/dist/src/services/memory/project-memory-service.js +0 -817
  607. package/dist/src/services/migrate-skill-name/migrate.d.ts +0 -17
  608. package/dist/src/services/migrate-skill-name/migrate.js +0 -152
  609. package/dist/src/services/migrate-skill-name/schema.d.ts +0 -42
  610. package/dist/src/services/migrate-skill-name/schema.js +0 -25
  611. package/dist/src/services/migration/v2-10-to-v2-11-service.d.ts +0 -44
  612. package/dist/src/services/migration/v2-10-to-v2-11-service.js +0 -190
  613. package/dist/src/services/migration/v2-10-to-v2-11-types.d.ts +0 -41
  614. package/dist/src/services/migration/v2-10-to-v2-11-types.js +0 -23
  615. package/dist/src/services/mode/bypass-tracker.d.ts +0 -4
  616. package/dist/src/services/mode/bypass-tracker.js +0 -31
  617. package/dist/src/services/mode/mode-enforcement.d.ts +0 -14
  618. package/dist/src/services/mode/mode-enforcement.js +0 -84
  619. package/dist/src/services/mut/assert-scanner.d.ts +0 -6
  620. package/dist/src/services/mut/assert-scanner.js +0 -116
  621. package/dist/src/services/mut/index.d.ts +0 -8
  622. package/dist/src/services/mut/index.js +0 -7
  623. package/dist/src/services/mut/mut-runner.d.ts +0 -39
  624. package/dist/src/services/mut/mut-runner.js +0 -29
  625. package/dist/src/services/mut/production-stryker.d.ts +0 -2
  626. package/dist/src/services/mut/production-stryker.js +0 -75
  627. package/dist/src/services/mut/report-builder.d.ts +0 -11
  628. package/dist/src/services/mut/report-builder.js +0 -110
  629. package/dist/src/services/mut/report-loader.d.ts +0 -31
  630. package/dist/src/services/mut/report-loader.js +0 -78
  631. package/dist/src/services/mut/thresholds.d.ts +0 -21
  632. package/dist/src/services/mut/thresholds.js +0 -22
  633. package/dist/src/services/mut/types.d.ts +0 -336
  634. package/dist/src/services/mut/types.js +0 -59
  635. package/dist/src/services/observability/aggregation.d.ts +0 -64
  636. package/dist/src/services/observability/aggregation.js +0 -217
  637. package/dist/src/services/observability/jsonl-store.d.ts +0 -59
  638. package/dist/src/services/observability/jsonl-store.js +0 -120
  639. package/dist/src/services/observability/observability-service.d.ts +0 -95
  640. package/dist/src/services/observability/observability-service.js +0 -119
  641. package/dist/src/services/observability/report-formatter.d.ts +0 -42
  642. package/dist/src/services/observability/report-formatter.js +0 -156
  643. package/dist/src/services/openspec/openspec-archive-service.d.ts +0 -12
  644. package/dist/src/services/openspec/openspec-archive-service.js +0 -28
  645. package/dist/src/services/openspec/openspec-bridge-service.d.ts +0 -16
  646. package/dist/src/services/openspec/openspec-bridge-service.js +0 -76
  647. package/dist/src/services/openspec/openspec-init-service.d.ts +0 -23
  648. package/dist/src/services/openspec/openspec-init-service.js +0 -122
  649. package/dist/src/services/openspec/openspec-propose-from-doctor-service.d.ts +0 -31
  650. package/dist/src/services/openspec/openspec-propose-from-doctor-service.js +0 -95
  651. package/dist/src/services/openspec/openspec-render-service.d.ts +0 -38
  652. package/dist/src/services/openspec/openspec-render-service.js +0 -130
  653. package/dist/src/services/openspec/openspec-scan-service.d.ts +0 -6
  654. package/dist/src/services/openspec/openspec-scan-service.js +0 -123
  655. package/dist/src/services/openspec/openspec-types.d.ts +0 -39
  656. package/dist/src/services/openspec/openspec-types.js +0 -1
  657. package/dist/src/services/openspec/openspec-validate-service.d.ts +0 -27
  658. package/dist/src/services/openspec/openspec-validate-service.js +0 -77
  659. package/dist/src/services/perf/perf-baseline-service.d.ts +0 -70
  660. package/dist/src/services/perf/perf-baseline-service.js +0 -214
  661. package/dist/src/services/polyrepo/polyrepo-dispatcher.d.ts +0 -34
  662. package/dist/src/services/polyrepo/polyrepo-dispatcher.js +0 -119
  663. package/dist/src/services/polyrepo/polyrepo-scanner.d.ts +0 -9
  664. package/dist/src/services/polyrepo/polyrepo-scanner.js +0 -94
  665. package/dist/src/services/polyrepo/polyrepo-service.d.ts +0 -34
  666. package/dist/src/services/polyrepo/polyrepo-service.js +0 -49
  667. package/dist/src/services/polyrepo/polyrepo-types.d.ts +0 -55
  668. package/dist/src/services/polyrepo/polyrepo-types.js +0 -1
  669. package/dist/src/services/prd/handoff-auto-regen.d.ts +0 -22
  670. package/dist/src/services/prd/handoff-auto-regen.js +0 -73
  671. package/dist/src/services/prd/handoff-service.d.ts +0 -54
  672. package/dist/src/services/prd/handoff-service.js +0 -142
  673. package/dist/src/services/prd/handoff-types.d.ts +0 -64
  674. package/dist/src/services/prd/handoff-types.js +0 -22
  675. package/dist/src/services/prd/prd-blocks-checker.d.ts +0 -51
  676. package/dist/src/services/prd/prd-blocks-checker.js +0 -130
  677. package/dist/src/services/prd/project-scan-reader.d.ts +0 -24
  678. package/dist/src/services/prd/project-scan-reader.js +0 -150
  679. package/dist/src/services/prd/project-scan-sediment.d.ts +0 -97
  680. package/dist/src/services/prd/project-scan-sediment.js +0 -445
  681. package/dist/src/services/prd/project-scan-types.d.ts +0 -66
  682. package/dist/src/services/prd/project-scan-types.js +0 -20
  683. package/dist/src/services/preferences/preferences-service.d.ts +0 -38
  684. package/dist/src/services/preferences/preferences-service.js +0 -198
  685. package/dist/src/services/preferences/preferences-types.d.ts +0 -148
  686. package/dist/src/services/preferences/preferences-types.js +0 -53
  687. package/dist/src/services/profiles/profile-service.d.ts +0 -6
  688. package/dist/src/services/profiles/profile-service.js +0 -19
  689. package/dist/src/services/progress/progress-service.d.ts +0 -125
  690. package/dist/src/services/progress/progress-service.js +0 -192
  691. package/dist/src/services/providers/minimax-provider-service.d.ts +0 -24
  692. package/dist/src/services/providers/minimax-provider-service.js +0 -143
  693. package/dist/src/services/providers/minimax-worker-service.d.ts +0 -21
  694. package/dist/src/services/providers/minimax-worker-service.js +0 -83
  695. package/dist/src/services/proxy/proxy-service.d.ts +0 -7
  696. package/dist/src/services/proxy/proxy-service.js +0 -31
  697. package/dist/src/services/qa/browser-event-logger.d.ts +0 -40
  698. package/dist/src/services/qa/browser-event-logger.js +0 -54
  699. package/dist/src/services/qa/browser-restart-detector.d.ts +0 -74
  700. package/dist/src/services/qa/browser-restart-detector.js +0 -138
  701. package/dist/src/services/qa/browser-reuse-hint.d.ts +0 -18
  702. package/dist/src/services/qa/browser-reuse-hint.js +0 -18
  703. package/dist/src/services/qa/browser-wrapper-service.d.ts +0 -37
  704. package/dist/src/services/qa/browser-wrapper-service.js +0 -88
  705. package/dist/src/services/qa/qa-business-review-state.d.ts +0 -47
  706. package/dist/src/services/qa/qa-business-review-state.js +0 -96
  707. package/dist/src/services/rd/ast-gate.d.ts +0 -19
  708. package/dist/src/services/rd/ast-gate.js +0 -71
  709. package/dist/src/services/rd/impl.d.ts +0 -9
  710. package/dist/src/services/rd/impl.js +0 -57
  711. package/dist/src/services/rd/rd-service.d.ts +0 -129
  712. package/dist/src/services/rd/rd-service.js +0 -438
  713. package/dist/src/services/rd/reviewer-dispatch-policy.d.ts +0 -122
  714. package/dist/src/services/rd/reviewer-dispatch-policy.js +0 -148
  715. package/dist/src/services/rd/standards-diagnostic.d.ts +0 -76
  716. package/dist/src/services/rd/standards-diagnostic.js +0 -166
  717. package/dist/src/services/rd/strategic-stage.d.ts +0 -4
  718. package/dist/src/services/rd/strategic-stage.js +0 -15
  719. package/dist/src/services/rd/strategy.d.ts +0 -13
  720. package/dist/src/services/rd/strategy.js +0 -60
  721. package/dist/src/services/rd/tactical-stage.d.ts +0 -33
  722. package/dist/src/services/rd/tactical-stage.js +0 -62
  723. package/dist/src/services/rd/types.d.ts +0 -252
  724. package/dist/src/services/rd/types.js +0 -47
  725. package/dist/src/services/recommendations/capability-availability.d.ts +0 -5
  726. package/dist/src/services/recommendations/capability-availability.js +0 -40
  727. package/dist/src/services/recommendations/capability-map-service.d.ts +0 -7
  728. package/dist/src/services/recommendations/capability-map-service.js +0 -131
  729. package/dist/src/services/recommendations/capability-seed-items.d.ts +0 -2
  730. package/dist/src/services/recommendations/capability-seed-items.js +0 -140
  731. package/dist/src/services/recommendations/capability-seed-mappings.d.ts +0 -2
  732. package/dist/src/services/recommendations/capability-seed-mappings.js +0 -54
  733. package/dist/src/services/recommendations/capability-seed-sources.d.ts +0 -2
  734. package/dist/src/services/recommendations/capability-seed-sources.js +0 -35
  735. package/dist/src/services/recommendations/recommendation-service.d.ts +0 -8
  736. package/dist/src/services/recommendations/recommendation-service.js +0 -106
  737. package/dist/src/services/recommendations/recommendation-types.d.ts +0 -129
  738. package/dist/src/services/recommendations/recommendation-types.js +0 -1
  739. package/dist/src/services/recommendations/seed-capability-catalog.d.ts +0 -3
  740. package/dist/src/services/recommendations/seed-capability-catalog.js +0 -3
  741. package/dist/src/services/refactor/refactor-service.d.ts +0 -9
  742. package/dist/src/services/refactor/refactor-service.js +0 -36
  743. package/dist/src/services/release/release-state.d.ts +0 -70
  744. package/dist/src/services/release/release-state.js +0 -140
  745. package/dist/src/services/retrospective/retrospective-index.d.ts +0 -37
  746. package/dist/src/services/retrospective/retrospective-index.js +0 -110
  747. package/dist/src/services/retrospective/retrospective-search-service.d.ts +0 -55
  748. package/dist/src/services/retrospective/retrospective-search-service.js +0 -107
  749. package/dist/src/services/retrospective/retrospective-show.d.ts +0 -40
  750. package/dist/src/services/retrospective/retrospective-show.js +0 -109
  751. package/dist/src/services/reviewer/model-family.d.ts +0 -18
  752. package/dist/src/services/reviewer/model-family.js +0 -70
  753. package/dist/src/services/reviewer/providers/anthropic.d.ts +0 -2
  754. package/dist/src/services/reviewer/providers/anthropic.js +0 -61
  755. package/dist/src/services/reviewer/providers/ollama.d.ts +0 -26
  756. package/dist/src/services/reviewer/providers/ollama.js +0 -38
  757. package/dist/src/services/reviewer/providers/openai.d.ts +0 -2
  758. package/dist/src/services/reviewer/providers/openai.js +0 -63
  759. package/dist/src/services/reviewer/reviewer-config.d.ts +0 -34
  760. package/dist/src/services/reviewer/reviewer-config.js +0 -100
  761. package/dist/src/services/reviewer/reviewer-service.d.ts +0 -56
  762. package/dist/src/services/reviewer/reviewer-service.js +0 -263
  763. package/dist/src/services/reviewer/selection-strategies.d.ts +0 -27
  764. package/dist/src/services/reviewer/selection-strategies.js +0 -53
  765. package/dist/src/services/role/role-registry.d.ts +0 -38
  766. package/dist/src/services/role/role-registry.js +0 -83
  767. package/dist/src/services/runtime/runtime-detector.d.ts +0 -15
  768. package/dist/src/services/runtime/runtime-detector.js +0 -62
  769. package/dist/src/services/runtime/runtime-service.d.ts +0 -59
  770. package/dist/src/services/runtime/runtime-service.js +0 -51
  771. package/dist/src/services/runtime/vendor-adapter.d.ts +0 -59
  772. package/dist/src/services/runtime/vendor-adapter.js +0 -1
  773. package/dist/src/services/runtime/vendors/claude-code.d.ts +0 -7
  774. package/dist/src/services/runtime/vendors/claude-code.js +0 -39
  775. package/dist/src/services/runtime/vendors/codex.d.ts +0 -7
  776. package/dist/src/services/runtime/vendors/codex.js +0 -43
  777. package/dist/src/services/runtime/vendors/copilot.d.ts +0 -7
  778. package/dist/src/services/runtime/vendors/copilot.js +0 -40
  779. package/dist/src/services/sc/index.d.ts +0 -1
  780. package/dist/src/services/sc/index.js +0 -1
  781. package/dist/src/services/sc/sc-service.d.ts +0 -131
  782. package/dist/src/services/sc/sc-service.js +0 -552
  783. package/dist/src/services/scan/acceptance-coverage-service.d.ts +0 -42
  784. package/dist/src/services/scan/acceptance-coverage-service.js +0 -140
  785. package/dist/src/services/scan/api-surface-service.d.ts +0 -69
  786. package/dist/src/services/scan/api-surface-service.js +0 -239
  787. package/dist/src/services/scan/archetype-service.d.ts +0 -5
  788. package/dist/src/services/scan/archetype-service.js +0 -242
  789. package/dist/src/services/scan/diff-scope-service.d.ts +0 -40
  790. package/dist/src/services/scan/diff-scope-service.js +0 -198
  791. package/dist/src/services/scan/existing-system-service.d.ts +0 -7
  792. package/dist/src/services/scan/existing-system-service.js +0 -300
  793. package/dist/src/services/scan/file-size-scan.d.ts +0 -23
  794. package/dist/src/services/scan/file-size-scan.js +0 -68
  795. package/dist/src/services/scan/karpathy-service.d.ts +0 -60
  796. package/dist/src/services/scan/karpathy-service.js +0 -228
  797. package/dist/src/services/scan/libraries-service.d.ts +0 -24
  798. package/dist/src/services/scan/libraries-service.js +0 -419
  799. package/dist/src/services/scan/libraries-types.d.ts +0 -59
  800. package/dist/src/services/scan/libraries-types.js +0 -9
  801. package/dist/src/services/scan/orphan-service.d.ts +0 -76
  802. package/dist/src/services/scan/orphan-service.js +0 -538
  803. package/dist/src/services/scan/scan-types.d.ts +0 -59
  804. package/dist/src/services/scan/scan-types.js +0 -1
  805. package/dist/src/services/scan/type-sanity-service.d.ts +0 -23
  806. package/dist/src/services/scan/type-sanity-service.js +0 -116
  807. package/dist/src/services/security/safe-settings-path.d.ts +0 -12
  808. package/dist/src/services/security/safe-settings-path.js +0 -104
  809. package/dist/src/services/sediment/dispose-confirm.d.ts +0 -9
  810. package/dist/src/services/sediment/dispose-confirm.js +0 -5
  811. package/dist/src/services/sediment/json-schema.d.ts +0 -247
  812. package/dist/src/services/sediment/json-schema.js +0 -26
  813. package/dist/src/services/sediment/manifest-lint.d.ts +0 -13
  814. package/dist/src/services/sediment/manifest-lint.js +0 -11
  815. package/dist/src/services/sediment/pool-paths.d.ts +0 -22
  816. package/dist/src/services/sediment/pool-paths.js +0 -25
  817. package/dist/src/services/sediment/pool-read.d.ts +0 -20
  818. package/dist/src/services/sediment/pool-read.js +0 -73
  819. package/dist/src/services/sediment/pool-rebuild-index.d.ts +0 -15
  820. package/dist/src/services/sediment/pool-rebuild-index.js +0 -28
  821. package/dist/src/services/sediment/pool-write.d.ts +0 -14
  822. package/dist/src/services/sediment/pool-write.js +0 -25
  823. package/dist/src/services/sediment/promotion-gate.d.ts +0 -12
  824. package/dist/src/services/sediment/promotion-gate.js +0 -20
  825. package/dist/src/services/sediment/types.d.ts +0 -52
  826. package/dist/src/services/sediment/types.js +0 -1
  827. package/dist/src/services/session/binding-status-service.d.ts +0 -56
  828. package/dist/src/services/session/binding-status-service.js +0 -106
  829. package/dist/src/services/session/binding-store.d.ts +0 -161
  830. package/dist/src/services/session/binding-store.js +0 -509
  831. package/dist/src/services/session/caller-binding-service.d.ts +0 -70
  832. package/dist/src/services/session/caller-binding-service.js +0 -148
  833. package/dist/src/services/session/caller-id-types.d.ts +0 -77
  834. package/dist/src/services/session/caller-id-types.js +0 -46
  835. package/dist/src/services/session/getSessionDir.d.ts +0 -1
  836. package/dist/src/services/session/getSessionDir.js +0 -27
  837. package/dist/src/services/session/index.d.ts +0 -6
  838. package/dist/src/services/session/index.js +0 -7
  839. package/dist/src/services/session/platform-fallbacks.d.ts +0 -31
  840. package/dist/src/services/session/platform-fallbacks.js +0 -35
  841. package/dist/src/services/session/resolve-caller-id.d.ts +0 -57
  842. package/dist/src/services/session/resolve-caller-id.js +0 -88
  843. package/dist/src/services/session/session-binding-bridge.d.ts +0 -76
  844. package/dist/src/services/session/session-binding-bridge.js +0 -247
  845. package/dist/src/services/session/session-checkpoint-service.d.ts +0 -57
  846. package/dist/src/services/session/session-checkpoint-service.js +0 -143
  847. package/dist/src/services/session/session-manager.d.ts +0 -168
  848. package/dist/src/services/session/session-manager.js +0 -502
  849. package/dist/src/services/session/session-resume-service.d.ts +0 -25
  850. package/dist/src/services/session/session-resume-service.js +0 -101
  851. package/dist/src/services/share/bundle-reader.d.ts +0 -100
  852. package/dist/src/services/share/bundle-reader.js +0 -434
  853. package/dist/src/services/share/bundle-types.d.ts +0 -392
  854. package/dist/src/services/share/bundle-types.js +0 -318
  855. package/dist/src/services/share/bundle-writer.d.ts +0 -97
  856. package/dist/src/services/share/bundle-writer.js +0 -429
  857. package/dist/src/services/share/run-state-contract.d.ts +0 -133
  858. package/dist/src/services/share/run-state-contract.js +0 -138
  859. package/dist/src/services/signal/cancel-handler.d.ts +0 -14
  860. package/dist/src/services/signal/cancel-handler.js +0 -76
  861. package/dist/src/services/skill/resume-detector.d.ts +0 -54
  862. package/dist/src/services/skill/resume-detector.js +0 -334
  863. package/dist/src/services/skill/skill-scheduler.d.ts +0 -40
  864. package/dist/src/services/skill/skill-scheduler.js +0 -53
  865. package/dist/src/services/skill/skill-search-service.d.ts +0 -88
  866. package/dist/src/services/skill/skill-search-service.js +0 -228
  867. package/dist/src/services/skillhub/release-diff.d.ts +0 -18
  868. package/dist/src/services/skillhub/release-diff.js +0 -38
  869. package/dist/src/services/skillhub/release-export.d.ts +0 -8
  870. package/dist/src/services/skillhub/release-export.js +0 -31
  871. package/dist/src/services/skillhub/release-gc-blobs.d.ts +0 -13
  872. package/dist/src/services/skillhub/release-gc-blobs.js +0 -32
  873. package/dist/src/services/skillhub/release-import.d.ts +0 -7
  874. package/dist/src/services/skillhub/release-import.js +0 -64
  875. package/dist/src/services/skillhub/release-retain.d.ts +0 -23
  876. package/dist/src/services/skillhub/release-retain.js +0 -94
  877. package/dist/src/services/skillhub/sqlite-store.d.ts +0 -22
  878. package/dist/src/services/skillhub/sqlite-store.js +0 -63
  879. package/dist/src/services/skillhub/tar-runtime.d.ts +0 -21
  880. package/dist/src/services/skillhub/tar-runtime.js +0 -91
  881. package/dist/src/services/skillhub/types.d.ts +0 -115
  882. package/dist/src/services/skillhub/types.js +0 -1
  883. package/dist/src/services/skills/hooks-settings-service.d.ts +0 -137
  884. package/dist/src/services/skills/hooks-settings-service.js +0 -396
  885. package/dist/src/services/skills/skill-conformance-service.d.ts +0 -40
  886. package/dist/src/services/skills/skill-conformance-service.js +0 -139
  887. package/dist/src/services/skills/skill-presence-service.d.ts +0 -158
  888. package/dist/src/services/skills/skill-presence-service.js +0 -474
  889. package/dist/src/services/skills/skill-registry.d.ts +0 -17
  890. package/dist/src/services/skills/skill-registry.js +0 -67
  891. package/dist/src/services/skills/skill-runbook-service.d.ts +0 -11
  892. package/dist/src/services/skills/skill-runbook-service.js +0 -128
  893. package/dist/src/services/skills/skill-statusline-renderer.d.ts +0 -6
  894. package/dist/src/services/skills/skill-statusline-renderer.js +0 -55
  895. package/dist/src/services/skills/skill-statusline-service.d.ts +0 -24
  896. package/dist/src/services/skills/skill-statusline-service.js +0 -110
  897. package/dist/src/services/skills/statusline-settings-service.d.ts +0 -59
  898. package/dist/src/services/skills/statusline-settings-service.js +0 -141
  899. package/dist/src/services/skills/sync-service.d.ts +0 -86
  900. package/dist/src/services/skills/sync-service.js +0 -271
  901. package/dist/src/services/slice/calibration-store.d.ts +0 -39
  902. package/dist/src/services/slice/calibration-store.js +0 -68
  903. package/dist/src/services/slice/cross-pass-edge-merger.d.ts +0 -53
  904. package/dist/src/services/slice/cross-pass-edge-merger.js +0 -246
  905. package/dist/src/services/slice/granularity-decider.d.ts +0 -37
  906. package/dist/src/services/slice/granularity-decider.js +0 -40
  907. package/dist/src/services/slice/llm-arbitrator.d.ts +0 -35
  908. package/dist/src/services/slice/llm-arbitrator.js +0 -63
  909. package/dist/src/services/slice/multi-pass-orchestrator.d.ts +0 -67
  910. package/dist/src/services/slice/multi-pass-orchestrator.js +0 -225
  911. package/dist/src/services/slice/schema-router.d.ts +0 -44
  912. package/dist/src/services/slice/schema-router.js +0 -61
  913. package/dist/src/services/slice/slice-archive-service.d.ts +0 -20
  914. package/dist/src/services/slice/slice-archive-service.js +0 -111
  915. package/dist/src/services/slice/slice-benchmark-service.d.ts +0 -19
  916. package/dist/src/services/slice/slice-benchmark-service.js +0 -60
  917. package/dist/src/services/slice/slice-check-service.d.ts +0 -2
  918. package/dist/src/services/slice/slice-check-service.js +0 -459
  919. package/dist/src/services/slice/slice-check-types.d.ts +0 -104
  920. package/dist/src/services/slice/slice-check-types.js +0 -28
  921. package/dist/src/services/slice/slice-decompose-runners.d.ts +0 -23
  922. package/dist/src/services/slice/slice-decompose-runners.js +0 -174
  923. package/dist/src/services/slice/slice-decompose-service.d.ts +0 -24
  924. package/dist/src/services/slice/slice-decompose-service.js +0 -532
  925. package/dist/src/services/slice/slice-decompose-types.d.ts +0 -263
  926. package/dist/src/services/slice/slice-decompose-types.js +0 -30
  927. package/dist/src/services/slice/slice-integration.d.ts +0 -43
  928. package/dist/src/services/slice/slice-integration.js +0 -106
  929. package/dist/src/services/slice/slice-pick-service.d.ts +0 -32
  930. package/dist/src/services/slice/slice-pick-service.js +0 -75
  931. package/dist/src/services/slice/slice-review-state.d.ts +0 -70
  932. package/dist/src/services/slice/slice-review-state.js +0 -109
  933. package/dist/src/services/slice/slice-topology-types.d.ts +0 -115
  934. package/dist/src/services/slice/slice-topology-types.js +0 -20
  935. package/dist/src/services/smoke/smoke-paths-state.d.ts +0 -73
  936. package/dist/src/services/smoke/smoke-paths-state.js +0 -117
  937. package/dist/src/services/sop/gate-enforce-service.d.ts +0 -33
  938. package/dist/src/services/sop/gate-enforce-service.js +0 -168
  939. package/dist/src/services/sop/sop-advance-service.d.ts +0 -74
  940. package/dist/src/services/sop/sop-advance-service.js +0 -115
  941. package/dist/src/services/sop/sop-check-service.d.ts +0 -45
  942. package/dist/src/services/sop/sop-check-service.js +0 -181
  943. package/dist/src/services/sop/sop-paths.d.ts +0 -62
  944. package/dist/src/services/sop/sop-paths.js +0 -92
  945. package/dist/src/services/sop/sop-registry-service.d.ts +0 -46
  946. package/dist/src/services/sop/sop-registry-service.js +0 -89
  947. package/dist/src/services/sop/sop-service.d.ts +0 -55
  948. package/dist/src/services/sop/sop-service.js +0 -222
  949. package/dist/src/services/sop/sop-types.d.ts +0 -95
  950. package/dist/src/services/sop/sop-types.js +0 -11
  951. package/dist/src/services/standards/ide-aware-standards-service.d.ts +0 -94
  952. package/dist/src/services/standards/ide-aware-standards-service.js +0 -89
  953. package/dist/src/services/standards/loop-engineering-lint.d.ts +0 -38
  954. package/dist/src/services/standards/loop-engineering-lint.js +0 -101
  955. package/dist/src/services/standards/loop-engineering-readiness-lint.d.ts +0 -111
  956. package/dist/src/services/standards/loop-engineering-readiness-lint.js +0 -248
  957. package/dist/src/services/standards/migrate-claude-rules-service.d.ts +0 -19
  958. package/dist/src/services/standards/migrate-claude-rules-service.js +0 -193
  959. package/dist/src/services/standards/migrate-service.d.ts +0 -63
  960. package/dist/src/services/standards/migrate-service.js +0 -193
  961. package/dist/src/services/standards/missing-standards-detector.d.ts +0 -79
  962. package/dist/src/services/standards/missing-standards-detector.js +0 -132
  963. package/dist/src/services/standards/project-context.d.ts +0 -24
  964. package/dist/src/services/standards/project-context.js +0 -314
  965. package/dist/src/services/standards/project-standards-service.d.ts +0 -114
  966. package/dist/src/services/standards/project-standards-service.js +0 -574
  967. package/dist/src/services/tech/tech-service.d.ts +0 -69
  968. package/dist/src/services/tech/tech-service.js +0 -299
  969. package/dist/src/services/test-cache/test-cache-service.d.ts +0 -70
  970. package/dist/src/services/test-cache/test-cache-service.js +0 -175
  971. package/dist/src/services/understand/hybrid-types.d.ts +0 -32
  972. package/dist/src/services/understand/hybrid-types.js +0 -1
  973. package/dist/src/services/understand/understand-hybrid-service.d.ts +0 -10
  974. package/dist/src/services/understand/understand-hybrid-service.js +0 -100
  975. package/dist/src/services/understand/understand-scan-service.d.ts +0 -28
  976. package/dist/src/services/understand/understand-scan-service.js +0 -170
  977. package/dist/src/services/understand/understand-types.d.ts +0 -50
  978. package/dist/src/services/understand/understand-types.js +0 -1
  979. package/dist/src/services/upgrade/1x-detector-service.d.ts +0 -7
  980. package/dist/src/services/upgrade/1x-detector-service.js +0 -94
  981. package/dist/src/services/upgrade/gitignore-migrate-service.d.ts +0 -56
  982. package/dist/src/services/upgrade/gitignore-migrate-service.js +0 -170
  983. package/dist/src/services/upgrade/upgrade-service.d.ts +0 -81
  984. package/dist/src/services/upgrade/upgrade-service.js +0 -403
  985. package/dist/src/services/verdict/envelopes.d.ts +0 -93
  986. package/dist/src/services/verdict/envelopes.js +0 -349
  987. package/dist/src/services/verdict/verdict-aggregator.d.ts +0 -94
  988. package/dist/src/services/verdict/verdict-aggregator.js +0 -112
  989. package/dist/src/services/workflow/artifact-paths.d.ts +0 -59
  990. package/dist/src/services/workflow/artifact-paths.js +0 -166
  991. package/dist/src/services/workflow/autonomous-resume-writer.d.ts +0 -16
  992. package/dist/src/services/workflow/autonomous-resume-writer.js +0 -170
  993. package/dist/src/services/workflow/pipeline-verify-service.d.ts +0 -90
  994. package/dist/src/services/workflow/pipeline-verify-service.js +0 -449
  995. package/dist/src/services/workflow/plan-reader.d.ts +0 -29
  996. package/dist/src/services/workflow/plan-reader.js +0 -174
  997. package/dist/src/services/workflow/plan-refresher.d.ts +0 -32
  998. package/dist/src/services/workflow/plan-refresher.js +0 -353
  999. package/dist/src/services/workflow/plan-trigger-detector.d.ts +0 -55
  1000. package/dist/src/services/workflow/plan-trigger-detector.js +0 -142
  1001. package/dist/src/services/workflow/workflow-autonomous-resume-helpers.d.ts +0 -19
  1002. package/dist/src/services/workflow/workflow-autonomous-resume-helpers.js +0 -300
  1003. package/dist/src/services/workflow/workflow-autonomous-service.d.ts +0 -100
  1004. package/dist/src/services/workflow/workflow-autonomous-service.js +0 -306
  1005. package/dist/src/services/workflow/workflow-loader.d.ts +0 -63
  1006. package/dist/src/services/workflow/workflow-loader.js +0 -168
  1007. package/dist/src/services/workflow/workflow-router-service.d.ts +0 -85
  1008. package/dist/src/services/workflow/workflow-router-service.js +0 -227
  1009. package/dist/src/services/workflow/workflow-skip-service.d.ts +0 -106
  1010. package/dist/src/services/workflow/workflow-skip-service.js +0 -209
  1011. package/dist/src/services/workflow/workflow-spec.d.ts +0 -116
  1012. package/dist/src/services/workflow/workflow-spec.js +0 -431
  1013. package/dist/src/services/workflow/workflow-state-store.d.ts +0 -27
  1014. package/dist/src/services/workflow/workflow-state-store.js +0 -95
  1015. package/dist/src/services/workspace/claude-settings-template.d.ts +0 -101
  1016. package/dist/src/services/workspace/claude-settings-template.js +0 -254
  1017. package/dist/src/services/workspace/migrate-1-4-1-service.d.ts +0 -44
  1018. package/dist/src/services/workspace/migrate-1-4-1-service.js +0 -195
  1019. package/dist/src/services/workspace/migrate-service.d.ts +0 -2
  1020. package/dist/src/services/workspace/migrate-service.js +0 -613
  1021. package/dist/src/services/workspace/migrate-types.d.ts +0 -127
  1022. package/dist/src/services/workspace/migrate-types.js +0 -21
  1023. package/dist/src/services/workspace/reconcile-service.d.ts +0 -188
  1024. package/dist/src/services/workspace/reconcile-service.js +0 -683
  1025. package/dist/src/services/workspace/reconcile-types.d.ts +0 -130
  1026. package/dist/src/services/workspace/reconcile-types.js +0 -13
  1027. package/dist/src/services/workspace/sid-naming-guard.d.ts +0 -17
  1028. package/dist/src/services/workspace/sid-naming-guard.js +0 -34
  1029. package/dist/src/services/workspace/workspace-claude-settings-materializer.d.ts +0 -45
  1030. package/dist/src/services/workspace/workspace-claude-settings-materializer.js +0 -194
  1031. package/dist/src/services/workspace/workspace-clean-service.d.ts +0 -28
  1032. package/dist/src/services/workspace/workspace-clean-service.js +0 -46
  1033. package/dist/src/services/workspace/workspace-service.d.ts +0 -177
  1034. package/dist/src/services/workspace/workspace-service.js +0 -432
  1035. package/dist/src/services/workspace/workspace-state-service.d.ts +0 -7
  1036. package/dist/src/services/workspace/workspace-state-service.js +0 -43
  1037. package/dist/src/shared/format-md-compact.d.ts +0 -32
  1038. package/dist/src/shared/format-md-compact.js +0 -297
  1039. package/dist/src/shared/frontmatter.d.ts +0 -6
  1040. package/dist/src/shared/frontmatter.js +0 -165
  1041. package/dist/src/shared/fs-utils.d.ts +0 -4
  1042. package/dist/src/shared/fs-utils.js +0 -16
  1043. package/dist/src/shared/fs.d.ts +0 -4
  1044. package/dist/src/shared/fs.js +0 -26
  1045. package/dist/src/shared/incrementing-number.d.ts +0 -23
  1046. package/dist/src/shared/incrementing-number.js +0 -68
  1047. package/dist/src/shared/json-schema-mini.d.ts +0 -10
  1048. package/dist/src/shared/json-schema-mini.js +0 -113
  1049. package/dist/src/shared/path-safety.d.ts +0 -21
  1050. package/dist/src/shared/path-safety.js +0 -54
  1051. package/dist/src/shared/path-utils.d.ts +0 -13
  1052. package/dist/src/shared/path-utils.js +0 -56
  1053. package/dist/src/shared/paths.d.ts +0 -6
  1054. package/dist/src/shared/paths.js +0 -50
  1055. package/dist/src/shared/planner-response.d.ts +0 -21
  1056. package/dist/src/shared/planner-response.js +0 -26
  1057. package/dist/src/shared/platform.d.ts +0 -6
  1058. package/dist/src/shared/platform.js +0 -11
  1059. package/dist/src/shared/process.d.ts +0 -5
  1060. package/dist/src/shared/process.js +0 -12
  1061. package/dist/src/shared/result.d.ts +0 -22
  1062. package/dist/src/shared/result.js +0 -46
  1063. package/dist/src/shared/stale-policy.d.ts +0 -67
  1064. package/dist/src/shared/stale-policy.js +0 -85
  1065. package/dist/src/shared/version.d.ts +0 -1
  1066. package/dist/src/shared/version.js +0 -1
  1067. package/dist/src/skills/peaks-maker/index.d.ts +0 -5
  1068. package/dist/src/skills/peaks-maker/index.js +0 -32
@@ -1,814 +0,0 @@
1
- import { existsSync, mkdirSync } from 'node:fs';
2
- import { dirname, isAbsolute, resolve } from 'node:path';
3
- import { DEFAULT_CONFIG } from './config-types.js';
4
- import { stablePath } from '../../shared/path-utils.js';
5
- import { findProjectRoot, getProjectBootstrapConfigPath, getProjectConfigPath, getUserConfigPath, isInsidePath, readConfigFileSafely, resolveProjectRootForConfig, validateArtifactWorkspaceMarkerPath, validateArtifactWorkspaceRoot, validateProjectBootstrapConfigPathForWrite, validateUserConfigPathForWrite, writeConfigFileSafely, writeProjectConfigFile, writeUserConfigFile } from './config-safety.js';
6
- import { globalConfigPath, CONFIG_SCHEMA_VERSION_V2 } from './config-migration.js';
7
- import { isConfigV2 } from './config-types.js';
8
- import { providersConfigPath, proxyConfigPath, readSidecarJson, sidecarExists, workspacesConfigPath, writeSidecarJson } from './sidecar-store.js';
9
- import { SIDECAR_SCHEMA_VERSION } from './sidecar-store.js';
10
- // Re-export resolveProjectRootForConfig and resolveCanonicalProjectRoot for external consumers
11
- export { resolveProjectRootForConfig, resolveCanonicalProjectRoot } from './config-safety.js';
12
- /**
13
- * Load the slim 2.0 `~/.peaks/config.json` file. Returns the parsed
14
- * object when the file is at schema 2.0.0; returns null when the
15
- * file is absent (fresh install, no global config yet).
16
- *
17
- * Throws `CONFIG_LEGACY_VERSION` when the file exists at a 1.x
18
- * schema version — the caller is expected to run
19
- * `peaks config migrate --apply` to bring it forward before
20
- * continuing. This gate is intentional: a slim 2.0 reader must
21
- * not silently pass through a 1.x shape, because every field it
22
- * ignores is a field the caller is going to look for elsewhere
23
- * (preferences.json, .bak, _state/).
24
- */
25
- export function loadGlobalConfig() {
26
- const path = globalConfigPath();
27
- if (!existsSync(path))
28
- return null;
29
- const content = readConfigFileSafely(path, 'Global config path must stay inside the user root');
30
- const raw = JSON.parse(content);
31
- if (isConfigV2(raw)) {
32
- if (hasLegacyGlobalFields(raw)) {
33
- promoteLegacyGlobalFieldsToSidecars(raw);
34
- rewriteSlimGlobalConfig();
35
- }
36
- return readSlimGlobalConfig();
37
- }
38
- const detected = typeof raw.version === 'string' ? raw.version : 'unknown';
39
- throw new Error(`CONFIG_LEGACY_VERSION: ~/.peaks/config.json is at version "${detected}", expected ${CONFIG_SCHEMA_VERSION_V2}. Run \`peaks config migrate --apply\`.`);
40
- }
41
- /**
42
- * Slim 2.0 schema allows `version` + `ocr`. Any other top-level
43
- * field is a legacy artifact that needs to be promoted to a
44
- * sidecar file.
45
- */
46
- function hasLegacyGlobalFields(raw) {
47
- const allowed = new Set(['version', 'ocr']);
48
- return Object.keys(raw).some((k) => !allowed.has(k));
49
- }
50
- /**
51
- * One-shot promotion of legacy fields into their dedicated sidecar
52
- * files. Idempotent: if the sidecar already has the field, the
53
- * legacy value is dropped (sidecar is the new source of truth).
54
- */
55
- function promoteLegacyGlobalFieldsToSidecars(raw) {
56
- if (isRecord(raw.providers)) {
57
- const existing = readSidecarJson(providersConfigPath(), { version: SIDECAR_SCHEMA_VERSION, providers: {} });
58
- const mergedProviders = { ...(existing.providers ?? {}), ...raw.providers };
59
- writeSidecarJson(providersConfigPath(), { version: SIDECAR_SCHEMA_VERSION, providers: mergedProviders });
60
- }
61
- if (isRecord(raw.proxy) && typeof raw.proxy.httpProxy === 'string') {
62
- const httpProxy = raw.proxy.httpProxy;
63
- if (!sidecarExists(proxyConfigPath())) {
64
- writeSidecarJson(proxyConfigPath(), { version: SIDECAR_SCHEMA_VERSION, httpProxy });
65
- }
66
- }
67
- if (Array.isArray(raw.workspaces) || typeof raw.currentWorkspace === 'string') {
68
- if (!sidecarExists(workspacesConfigPath())) {
69
- writeSidecarJson(workspacesConfigPath(), {
70
- version: SIDECAR_SCHEMA_VERSION,
71
- workspaces: Array.isArray(raw.workspaces) ? raw.workspaces : [],
72
- currentWorkspace: typeof raw.currentWorkspace === 'string' ? raw.currentWorkspace : null
73
- });
74
- }
75
- }
76
- }
77
- function readSlimGlobalConfig() {
78
- const path = globalConfigPath();
79
- if (!existsSync(path)) {
80
- return { version: CONFIG_SCHEMA_VERSION_V2 };
81
- }
82
- const content = readConfigFileSafely(path, 'Global config path must stay inside the user root');
83
- return JSON.parse(content);
84
- }
85
- function rewriteSlimGlobalConfig() {
86
- const path = globalConfigPath();
87
- const ocr = readOcrFromRawConfigFile();
88
- const slim = { version: CONFIG_SCHEMA_VERSION_V2 };
89
- if (ocr !== null)
90
- slim['ocr'] = ocr;
91
- writeUserConfigFile(path, JSON.stringify(slim, null, 2) + '\n');
92
- }
93
- function readOcrFromRawConfigFile() {
94
- const path = globalConfigPath();
95
- if (!existsSync(path))
96
- return null;
97
- const content = readConfigFileSafely(path, 'Global config path must stay inside the user root');
98
- const raw = JSON.parse(content);
99
- return isRecord(raw.ocr) ? raw.ocr : null;
100
- }
101
- function readJsonFile(path, validateBeforeRead, errorMessage = 'Config path must stay inside the config root') {
102
- if (!path || !existsSync(path))
103
- return null;
104
- validateBeforeRead?.();
105
- const content = readConfigFileSafely(path, errorMessage);
106
- try {
107
- return JSON.parse(content);
108
- }
109
- catch { // TODO(g2): legacy silent catch — grace: 1 minor release (v2.14.0)
110
- return null;
111
- }
112
- }
113
- function readExistingJsonFile(path, errorMessage, validateBeforeRead) {
114
- if (!existsSync(path))
115
- return null;
116
- validateBeforeRead?.();
117
- try {
118
- return JSON.parse(readConfigFileSafely(path, errorMessage));
119
- }
120
- catch {
121
- throw new Error(errorMessage);
122
- }
123
- }
124
- function readUserJsonFile() {
125
- const userPath = getUserConfigPath();
126
- return readJsonFile(userPath, () => validateUserConfigPathForWrite(userPath), 'User config path must stay inside the user root');
127
- }
128
- function readProjectJsonFile(projectRoot) {
129
- const projectPath = getProjectConfigPath(projectRoot);
130
- return readJsonFile(projectPath, projectRoot && projectPath ? () => validateProjectBootstrapConfigPathForWrite(projectRoot, projectPath) : undefined, 'Project config path must stay inside the project root');
131
- }
132
- function ensureDir(dirPath) {
133
- if (!existsSync(dirPath)) {
134
- mkdirSync(dirPath, { recursive: true });
135
- }
136
- }
137
- const UNSAFE_NESTED_PATH_SEGMENTS = new Set(['__proto__', 'constructor', 'prototype']);
138
- function getNestedPathParts(path) {
139
- return path.replace(/\[(\d+)\]/g, '.$1').split('.').filter(Boolean);
140
- }
141
- function hasUnsafeNestedPathSegment(parts) {
142
- return parts.some((part) => UNSAFE_NESTED_PATH_SEGMENTS.has(part));
143
- }
144
- function getNestedValue(obj, path) {
145
- const parts = getNestedPathParts(path);
146
- if (parts.length === 0 || hasUnsafeNestedPathSegment(parts)) {
147
- return undefined;
148
- }
149
- let current = obj;
150
- for (const part of parts) {
151
- if (current === null || current === undefined || typeof current !== 'object' || !Object.prototype.hasOwnProperty.call(current, part)) {
152
- return undefined;
153
- }
154
- current = current[part];
155
- }
156
- return current;
157
- }
158
- function setNestedValue(obj, path, value) {
159
- const parts = getNestedPathParts(path);
160
- if (parts.length === 0 || hasUnsafeNestedPathSegment(parts)) {
161
- throw new Error('Unsafe config path');
162
- }
163
- let current = obj;
164
- for (let i = 0; i < parts.length - 1; i++) {
165
- const part = parts[i];
166
- if (!Object.prototype.hasOwnProperty.call(current, part) || typeof current[part] !== 'object' || current[part] === null || Array.isArray(current[part])) {
167
- current[part] = {};
168
- }
169
- current = current[part];
170
- }
171
- const last = parts[parts.length - 1];
172
- current[last] = value;
173
- }
174
- function removeProjectSensitiveConfig(config) {
175
- const { providers, proxy, tokens, ...safeConfig } = config;
176
- return Object.fromEntries(Object.entries(safeConfig).filter(([key, value]) => !isSecretKey(key) && !containsSensitiveConfigValue(value)));
177
- }
178
- export function isConfigLayer(value) {
179
- return value === 'user' || value === 'project';
180
- }
181
- export function isSensitiveConfigPath(path) {
182
- const normalized = path.toLowerCase().replace(/[^a-z0-9]/g, '');
183
- return normalized.includes('apikey') || normalized.includes('accesskey') || normalized.includes('privatekey') || normalized.includes('token') || normalized.includes('secret') || normalized.includes('password') || normalized.includes('bearer') || normalized.includes('credential') || normalized.includes('auth');
184
- }
185
- /**
186
- * 2.0.1 slim-config contract: `~/.peaks/config.json` only stores
187
- * `version` + `ocr.llm.*` placeholders. The 1.x → 2.0 migration
188
- * moved per-project fields (`language`, `model`, `economyMode`,
189
- * `swarmMode`) to `<project>/.peaks/preferences.json` (per spec
190
- * §10.4). `setConfig` rejects writes to those keys and points the
191
- * user to the preferences path; tokens / providers / proxy still
192
- * live in `~/.peaks/config.json` (the loader is tolerant of them
193
- * but does not synthesise defaults for them anymore).
194
- */
195
- const LEGACY_CONFIG_KEYS = new Set([
196
- 'language',
197
- 'model',
198
- 'economyMode',
199
- 'swarmMode'
200
- ]);
201
- export function isLegacyConfigKey(path) {
202
- const topLevel = path.split(/[.[].*/, 1)[0] ?? '';
203
- return LEGACY_CONFIG_KEYS.has(topLevel);
204
- }
205
- function isProviderConfigPath(path) {
206
- return path === 'providers' || path.startsWith('providers.');
207
- }
208
- function isSecretKey(key) {
209
- return isSensitiveConfigPath(key);
210
- }
211
- function sanitizeBaseUrlForDisplay(value) {
212
- try {
213
- const url = new URL(value);
214
- url.username = '';
215
- url.password = '';
216
- url.search = '';
217
- url.hash = '';
218
- return url.toString();
219
- }
220
- catch {
221
- return '[invalid-url-redacted]';
222
- }
223
- }
224
- const MINIMAX_API_HOST = 'api.minimaxi.com';
225
- function isProviderBaseUrlPath(path) {
226
- return /^providers\.[^.]+\.baseUrl$/.test(path);
227
- }
228
- function isValidProviderBaseUrl(value) {
229
- try {
230
- const url = new URL(value);
231
- return url.protocol === 'https:' && url.username.length === 0 && url.password.length === 0 && url.search.length === 0 && url.hash.length === 0;
232
- }
233
- catch {
234
- return false;
235
- }
236
- }
237
- function isValidMiniMaxBaseUrl(value) {
238
- try {
239
- const url = new URL(value);
240
- return url.protocol === 'https:' && url.hostname === MINIMAX_API_HOST && url.username.length === 0 && url.password.length === 0 && url.search.length === 0 && url.hash.length === 0;
241
- }
242
- catch {
243
- return false;
244
- }
245
- }
246
- function getMiniMaxBaseUrlCandidate(key, value) {
247
- if (key === 'providers.minimax.baseUrl') {
248
- return value;
249
- }
250
- if (key === 'providers.minimax' && value !== null && typeof value === 'object' && !Array.isArray(value)) {
251
- return value.baseUrl;
252
- }
253
- if (key === 'providers' && value !== null && typeof value === 'object' && !Array.isArray(value)) {
254
- return value.minimax?.baseUrl;
255
- }
256
- return undefined;
257
- }
258
- function validateProviderBaseUrl(value) {
259
- if (value !== undefined && (typeof value !== 'string' || !isValidProviderBaseUrl(value))) {
260
- throw new Error('Provider base URL must be HTTPS without embedded credentials, query, or fragment');
261
- }
262
- }
263
- function validateMiniMaxBaseUrl(value) {
264
- if (value !== undefined && (typeof value !== 'string' || !isValidMiniMaxBaseUrl(value))) {
265
- throw new Error('MiniMax base URL must be the MiniMax HTTPS endpoint without embedded credentials');
266
- }
267
- }
268
- function getProxyUrlCandidate(key, value) {
269
- if (key === 'proxy.httpProxy') {
270
- return value;
271
- }
272
- if (key === 'proxy' && isRecord(value)) {
273
- return value.httpProxy;
274
- }
275
- return undefined;
276
- }
277
- function isProxyConfigPath(path) {
278
- return path === 'proxy' || path.startsWith('proxy.');
279
- }
280
- function validateModelProviderConfig(providers) {
281
- validateMiniMaxBaseUrl(providers.minimax?.baseUrl);
282
- for (const [providerId, provider] of Object.entries(providers)) {
283
- if (providerId !== 'minimax') {
284
- validateProviderBaseUrl(provider?.baseUrl);
285
- }
286
- }
287
- }
288
- function validateProviderConfig(partial) {
289
- validateModelProviderConfig(partial.providers ?? {});
290
- }
291
- function isValidProxyUrl(value) {
292
- try {
293
- const url = new URL(value);
294
- return (url.protocol === 'http:' || url.protocol === 'https:') && url.username.length === 0 && url.password.length === 0 && url.pathname === '/' && url.search.length === 0 && url.hash.length === 0;
295
- }
296
- catch {
297
- return false;
298
- }
299
- }
300
- function validateProxyUrl(value) {
301
- if (value !== undefined && (typeof value !== 'string' || !isValidProxyUrl(value))) {
302
- throw new Error('Proxy URL must be an HTTP or HTTPS URL without embedded credentials');
303
- }
304
- }
305
- function validateProxyConfig(partial) {
306
- validateProxyUrl(partial.proxy?.httpProxy);
307
- }
308
- function isRecord(value) {
309
- return value !== null && typeof value === 'object' && !Array.isArray(value);
310
- }
311
- function isSafeConfigSegment(value) {
312
- return /^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(value) && !value.includes('..') && !value.endsWith('.');
313
- }
314
- function toArtifactRemoteRepoConfig(value) {
315
- if (!isRecord(value) || (value.provider !== 'github' && value.provider !== 'gitlab') || typeof value.owner !== 'string' || typeof value.name !== 'string') {
316
- return null;
317
- }
318
- if (!isSafeConfigSegment(value.owner) || !isSafeConfigSegment(value.name)) {
319
- return null;
320
- }
321
- return { provider: value.provider, owner: value.owner, name: value.name };
322
- }
323
- function toArtifactStorageConfig(value) {
324
- if (!isRecord(value))
325
- return null;
326
- const localPath = typeof value.localPath === 'string' ? { localPath: value.localPath } : {};
327
- if (value.mode === 'local') {
328
- return { mode: 'local', ...localPath };
329
- }
330
- const remote = toArtifactRemoteRepoConfig(value.remote);
331
- if (value.mode === 'local-with-remote-sync' && remote) {
332
- return { mode: 'local-with-remote-sync', ...localPath, remote };
333
- }
334
- return null;
335
- }
336
- function toWorkspaceConfig(value) {
337
- if (!isRecord(value))
338
- return null;
339
- const { workspaceId, name, rootPath, installedCapabilityIds } = value;
340
- if (typeof workspaceId !== 'string' || !isSafeConfigSegment(workspaceId) || typeof name !== 'string' || typeof rootPath !== 'string' || !Array.isArray(installedCapabilityIds) || !installedCapabilityIds.every((id) => typeof id === 'string')) {
341
- return null;
342
- }
343
- const artifactRepo = toArtifactRemoteRepoConfig(value.artifactRepo);
344
- const artifactStorage = toArtifactStorageConfig(value.artifactStorage);
345
- return {
346
- workspaceId,
347
- name,
348
- rootPath,
349
- installedCapabilityIds,
350
- ...(artifactRepo ? { artifactRepo } : {}),
351
- ...(artifactStorage ? { artifactStorage } : {})
352
- };
353
- }
354
- function toWorkspaceConfigs(value) {
355
- return Array.isArray(value) ? value.map(toWorkspaceConfig).filter((workspace) => workspace !== null) : [];
356
- }
357
- function toProviderModelConfig(value) {
358
- if (!isRecord(value))
359
- return {};
360
- return {
361
- ...(typeof value.model === 'string' && value.model.trim().length > 0 ? { model: value.model.trim() } : {}),
362
- ...(typeof value.baseUrl === 'string' ? { baseUrl: value.baseUrl } : {}),
363
- ...(typeof value.apiKey === 'string' ? { apiKey: value.apiKey } : {})
364
- };
365
- }
366
- function toMiniMaxProviderConfig(value) {
367
- return toProviderModelConfig(value);
368
- }
369
- const TOKEN_CONFIG_KEYS = new Set(['AnthropicApiKey', 'OpenAiApiKey', 'GitHubToken', 'GitLabToken']);
370
- function toTokenRef(value) {
371
- if (!isRecord(value))
372
- return null;
373
- const env = typeof value.env === 'string' ? value.env.trim() : '';
374
- const keychain = typeof value.keychain === 'string' ? value.keychain.trim() : '';
375
- if (env.length > 0) {
376
- return { env };
377
- }
378
- if (keychain.length > 0) {
379
- return { keychain };
380
- }
381
- if (value.ghCli === true) {
382
- return { ghCli: true };
383
- }
384
- return null;
385
- }
386
- function toTokenConfig(value) {
387
- if (!isRecord(value))
388
- return {};
389
- const tokens = {};
390
- for (const [key, entry] of Object.entries(value)) {
391
- if (!TOKEN_CONFIG_KEYS.has(key))
392
- continue;
393
- const tokenRef = toTokenRef(entry);
394
- if (tokenRef) {
395
- tokens[key] = tokenRef;
396
- }
397
- }
398
- return tokens;
399
- }
400
- function toModelProviderConfig(value) {
401
- if (!isRecord(value))
402
- return {};
403
- return Object.fromEntries(Object.entries(value).map(([providerId, providerConfig]) => [providerId, toProviderModelConfig(providerConfig)]));
404
- }
405
- function toProxyConfig(value) {
406
- if (!isRecord(value))
407
- return null;
408
- return typeof value.httpProxy === 'string' && isValidProxyUrl(value.httpProxy) ? { httpProxy: value.httpProxy } : null;
409
- }
410
- function getProjectWriteTarget() {
411
- const projectRoot = findProjectRoot(process.cwd());
412
- const configPath = getProjectConfigPath(projectRoot);
413
- if (!projectRoot || !configPath) {
414
- throw new Error('Project config not found');
415
- }
416
- return { projectRoot, configPath };
417
- }
418
- export function containsSensitiveConfigValue(value) {
419
- if (Array.isArray(value)) {
420
- return value.some(containsSensitiveConfigValue);
421
- }
422
- if (value === null || typeof value !== 'object') {
423
- return false;
424
- }
425
- return Object.entries(value).some(([key, entry]) => isSecretKey(key) || containsSensitiveConfigValue(entry));
426
- }
427
- export function redactConfigSecrets(value, path = '') {
428
- if (Array.isArray(value)) {
429
- return value.map((item, index) => redactConfigSecrets(item, `${path}[${index}]`));
430
- }
431
- if (value === null || typeof value !== 'object') {
432
- if (isProviderBaseUrlPath(path) && typeof value === 'string') {
433
- return sanitizeBaseUrlForDisplay(value);
434
- }
435
- return value;
436
- }
437
- return Object.fromEntries(Object.entries(value).map(([key, entry]) => {
438
- const nextPath = path ? `${path}.${key}` : key;
439
- if (isSecretKey(key)) {
440
- return [key, '***'];
441
- }
442
- if (isProviderBaseUrlPath(nextPath) && typeof entry === 'string') {
443
- return [key, sanitizeBaseUrlForDisplay(entry)];
444
- }
445
- return [key, redactConfigSecrets(entry, nextPath)];
446
- }));
447
- }
448
- function createMiniMaxProviderStatus(config) {
449
- const baseUrl = config.baseUrl?.trim();
450
- const apiKey = config.apiKey?.trim();
451
- const baseUrlConfigured = typeof baseUrl === 'string' && baseUrl.length > 0 && isValidMiniMaxBaseUrl(baseUrl);
452
- const apiKeyConfigured = typeof apiKey === 'string' && apiKey.length > 0;
453
- return {
454
- provider: 'minimax',
455
- configured: baseUrlConfigured && apiKeyConfigured,
456
- baseUrlConfigured,
457
- apiKeyConfigured,
458
- storage: 'user-plaintext-v1',
459
- nextActions: baseUrlConfigured && apiKeyConfigured ? [] : ['Export MINIMAX_API_KEY and rerun peaks config provider minimax set --base-url <url>']
460
- };
461
- }
462
- export function getMiniMaxProviderConfig() {
463
- return toMiniMaxProviderConfig(readUserJsonFile()?.providers?.minimax);
464
- }
465
- export function getMiniMaxProviderStatus() {
466
- return createMiniMaxProviderStatus(getMiniMaxProviderConfig());
467
- }
468
- export function setMiniMaxProviderConfig(input) {
469
- validateMiniMaxBaseUrl(input.baseUrl);
470
- const userConfig = readUserJsonFile() ?? {};
471
- const existingProviders = toModelProviderConfig(userConfig.providers);
472
- const providers = {
473
- ...existingProviders,
474
- minimax: {
475
- ...existingProviders.minimax,
476
- ...input
477
- }
478
- };
479
- validateMiniMaxBaseUrl(providers.minimax?.baseUrl);
480
- writeConfig({ providers }, 'user');
481
- return createMiniMaxProviderStatus(providers.minimax ?? {});
482
- }
483
- const OCR_AUTH_HEADERS = new Set(['authorization', 'x-api-key', 'bearer']);
484
- function toOcrLlmConfig(value) {
485
- if (!isRecord(value))
486
- return {};
487
- const url = typeof value.url === 'string' && value.url.trim().length > 0 ? value.url.trim() : undefined;
488
- const authToken = typeof value.authToken === 'string' && value.authToken.length > 0 ? value.authToken : undefined;
489
- const model = typeof value.model === 'string' && value.model.trim().length > 0 ? value.model.trim() : undefined;
490
- const useAnthropic = typeof value.useAnthropic === 'boolean' ? value.useAnthropic : undefined;
491
- const rawAuthHeader = typeof value.authHeader === 'string' ? value.authHeader : undefined;
492
- const authHeader = rawAuthHeader !== undefined && OCR_AUTH_HEADERS.has(rawAuthHeader)
493
- ? rawAuthHeader
494
- : undefined;
495
- return {
496
- ...(url !== undefined ? { url } : {}),
497
- ...(authToken !== undefined ? { authToken } : {}),
498
- ...(model !== undefined ? { model } : {}),
499
- ...(useAnthropic !== undefined ? { useAnthropic } : {}),
500
- ...(authHeader !== undefined ? { authHeader } : {})
501
- };
502
- }
503
- function toOcrConfig(value) {
504
- if (!isRecord(value))
505
- return {};
506
- return {
507
- ...(isRecord(value.llm) ? { llm: toOcrLlmConfig(value.llm) } : {})
508
- };
509
- }
510
- /**
511
- * Read the ocr LLM endpoint config from the user-layer
512
- * `~/.peaks/config.json`. The user populates this themselves by
513
- * pasting the `peaks code-review config-template` output (or by
514
- * running `peaks config set --key ocr.llm.url --value '...'`).
515
- * peaks-loop never auto-writes these values.
516
- */
517
- export function getOcrConfig() {
518
- const userConfig = readUserJsonFile() ?? {};
519
- return toOcrConfig(userConfig.ocr);
520
- }
521
- /**
522
- * Return the resolved `OcrLlmConfig` block (`peaksConfig.ocr.llm`)
523
- * or `null` when the user has not populated the user config. The
524
- * 5-state OCR detector uses this as the source of truth; when the
525
- * returned block is missing required fields it produces a
526
- * `config-missing` state with a templated `nextActions` payload
527
- * the user can paste into their config.
528
- */
529
- export function getOcrLlmConfig() {
530
- const ocr = getOcrConfig();
531
- if (!ocr.llm)
532
- return null;
533
- return ocr.llm;
534
- }
535
- function inferHumanLanguage(value) {
536
- const normalized = value.trim();
537
- if (!normalized) {
538
- throw new Error('Language must be non-empty');
539
- }
540
- if (/^zh(?:-|$)/i.test(normalized) || /[㐀-鿿]/u.test(normalized)) {
541
- return 'zh-CN';
542
- }
543
- if (/^en(?:-|$)/i.test(normalized)) {
544
- return 'en';
545
- }
546
- return 'en';
547
- }
548
- function toPeaksConfig(value) {
549
- if (!isRecord(value))
550
- return {};
551
- const proxy = toProxyConfig(value.proxy);
552
- return {
553
- ...(typeof value.version === 'string' ? { version: value.version } : {}),
554
- ...(typeof value.language === 'string' ? { language: value.language } : {}),
555
- ...(typeof value.model === 'string' && ['haiku', 'sonnet', 'opus', 'minimax'].includes(value.model) ? { model: value.model } : {}),
556
- ...(typeof value.economyMode === 'boolean' ? { economyMode: value.economyMode } : {}),
557
- ...(typeof value.swarmMode === 'boolean' ? { swarmMode: value.swarmMode } : {}),
558
- ...(isRecord(value.tokens) ? { tokens: toTokenConfig(value.tokens) } : {}),
559
- ...(isRecord(value.providers) ? { providers: toModelProviderConfig(value.providers) } : {}),
560
- ...(proxy ? { proxy } : {})
561
- };
562
- }
563
- export function bootstrapProjectLanguageConfig(projectRoot, language) {
564
- const inferredLanguage = inferHumanLanguage(language);
565
- const projectPath = getProjectBootstrapConfigPath(projectRoot);
566
- const existing = readExistingJsonFile(projectPath, 'Project config must contain valid JSON', () => validateProjectBootstrapConfigPathForWrite(projectRoot, projectPath)) ?? {};
567
- if (typeof existing.language === 'string' && existing.language.trim().length > 0) {
568
- return;
569
- }
570
- writeProjectConfigFile(projectRoot, projectPath, JSON.stringify({ ...existing, language: inferredLanguage }, null, 2));
571
- }
572
- export function readConfig(projectRoot) {
573
- const detectedRoot = projectRoot ?? findProjectRoot(process.cwd());
574
- const userConfig = toPeaksConfig(readUserJsonFile());
575
- const projectConfig = removeProjectSensitiveConfig(toPeaksConfig(readProjectJsonFile(detectedRoot)));
576
- const { proxy: projectProxy, ...projectConfigWithoutProxy } = projectConfig;
577
- return {
578
- ...DEFAULT_CONFIG,
579
- ...userConfig,
580
- ...projectConfigWithoutProxy
581
- };
582
- }
583
- function sanitizeWorkspacePartial(partial) {
584
- const result = { ...partial };
585
- if (Array.isArray(result.workspaces)) {
586
- result.workspaces = toWorkspaceConfigs(result.workspaces);
587
- }
588
- if (typeof result.currentWorkspace !== 'string' && result.currentWorkspace !== null && result.currentWorkspace !== undefined) {
589
- delete result.currentWorkspace;
590
- }
591
- return result;
592
- }
593
- export function writeConfig(partial, layer = 'user') {
594
- if (!isConfigLayer(layer)) {
595
- throw new Error('Invalid config layer');
596
- }
597
- if (layer === 'project' && (partial.providers !== undefined || partial.proxy !== undefined || containsSensitiveConfigValue(partial))) {
598
- throw new Error('Sensitive config keys must be stored in the user config layer');
599
- }
600
- validateProviderConfig(partial);
601
- validateProxyConfig(partial);
602
- if (layer === 'project') {
603
- const { projectRoot, configPath } = getProjectWriteTarget();
604
- ensureDir(dirname(configPath));
605
- const existing = readJsonFile(configPath, () => validateProjectBootstrapConfigPathForWrite(projectRoot, configPath)) ?? {};
606
- const merged = sanitizeWorkspacePartial({ ...existing, ...partial });
607
- writeProjectConfigFile(projectRoot, configPath, JSON.stringify(merged, null, 2));
608
- return;
609
- }
610
- const userPath = getUserConfigPath();
611
- ensureDir(dirname(userPath));
612
- const existing = readJsonFile(userPath, () => validateUserConfigPathForWrite(userPath)) ?? {};
613
- const merged = sanitizeWorkspacePartial({ ...existing, ...partial });
614
- writeUserConfigFile(userPath, JSON.stringify(merged, null, 2));
615
- }
616
- export function getConfig(options = {}) {
617
- const projectRoot = findProjectRoot(process.cwd());
618
- const userConfig = readUserJsonFile() ?? {};
619
- const projectConfig = removeProjectSensitiveConfig(readProjectJsonFile(projectRoot) ?? {});
620
- const { proxy: projectProxy, ...projectConfigWithoutProxy } = projectConfig;
621
- const source = options.layer === 'user'
622
- ? userConfig
623
- : options.layer === 'project'
624
- ? projectConfig
625
- : {
626
- ...userConfig,
627
- ...projectConfigWithoutProxy
628
- };
629
- const config = isRecord(source) ? { ...source, ...(source.tokens !== undefined ? { tokens: toTokenConfig(source.tokens) } : {}) } : source;
630
- if (options.key !== undefined) {
631
- return getNestedValue(config, options.key);
632
- }
633
- return config;
634
- }
635
- export function setConfig(options) {
636
- const layer = options.layer ?? 'user';
637
- if (!isConfigLayer(layer)) {
638
- throw new Error('Invalid config layer');
639
- }
640
- if (isLegacyConfigKey(options.key)) {
641
- throw new Error(`Legacy config key "${options.key}" is no longer stored in ~/.peaks/config.json. ` +
642
- 'Set it under <project>/.peaks/preferences.json (e.g. `peaks preferences set --key <key> --value <value>`).');
643
- }
644
- if (layer === 'project' && (isProviderConfigPath(options.key) || isProxyConfigPath(options.key) || isSensitiveConfigPath(options.key) || containsSensitiveConfigValue(options.value))) {
645
- throw new Error('Sensitive config keys must be stored in the user config layer');
646
- }
647
- validateMiniMaxBaseUrl(getMiniMaxBaseUrlCandidate(options.key, options.value));
648
- if (options.key === 'providers') {
649
- validateModelProviderConfig(toModelProviderConfig(options.value));
650
- }
651
- else if (options.key.startsWith('providers.') && !options.key.startsWith('providers.minimax.')) {
652
- const providerId = getNestedPathParts(options.key)[1];
653
- if (options.key === `providers.${providerId}`) {
654
- validateModelProviderConfig({ [providerId]: toProviderModelConfig(options.value) });
655
- }
656
- else if (isProviderBaseUrlPath(options.key)) {
657
- validateProviderBaseUrl(options.value);
658
- }
659
- }
660
- validateProxyUrl(getProxyUrlCandidate(options.key, options.value));
661
- const projectTarget = layer === 'project' ? getProjectWriteTarget() : null;
662
- const targetPath = projectTarget?.configPath ?? getUserConfigPath();
663
- ensureDir(dirname(targetPath));
664
- const existing = projectTarget
665
- ? readJsonFile(targetPath, () => validateProjectBootstrapConfigPathForWrite(projectTarget.projectRoot, targetPath)) ?? {}
666
- : readJsonFile(targetPath, () => validateUserConfigPathForWrite(targetPath)) ?? {};
667
- const updated = { ...existing };
668
- setNestedValue(updated, options.key, options.value);
669
- const content = JSON.stringify(updated, null, 2);
670
- if (projectTarget) {
671
- writeProjectConfigFile(projectTarget.projectRoot, targetPath, content);
672
- }
673
- else {
674
- writeUserConfigFile(targetPath, content);
675
- }
676
- }
677
- function readRawWorkspaceData(layer) {
678
- const config = getConfig({ layer });
679
- return isRecord(config)
680
- ? {
681
- currentWorkspace: typeof config.currentWorkspace === 'string' ? config.currentWorkspace : null,
682
- workspaces: toWorkspaceConfigs(config.workspaces)
683
- }
684
- : { currentWorkspace: null, workspaces: [] };
685
- }
686
- function writeRawWorkspaceData(data, layer) {
687
- const projectTarget = layer === 'project' ? getProjectWriteTarget() : null;
688
- const targetPath = projectTarget?.configPath ?? getUserConfigPath();
689
- ensureDir(dirname(targetPath));
690
- const existing = projectTarget
691
- ? readJsonFile(targetPath, () => validateProjectBootstrapConfigPathForWrite(projectTarget.projectRoot, targetPath)) ?? {}
692
- : readJsonFile(targetPath, () => validateUserConfigPathForWrite(targetPath)) ?? {};
693
- const merged = { ...existing, ...data };
694
- const content = JSON.stringify(merged, null, 2);
695
- if (projectTarget) {
696
- writeProjectConfigFile(projectTarget.projectRoot, targetPath, content);
697
- }
698
- else {
699
- writeUserConfigFile(targetPath, content);
700
- }
701
- }
702
- function readAllWorkspaces() {
703
- const userData = readRawWorkspaceData('user');
704
- const projectData = readRawWorkspaceData('project');
705
- const mergedWorkspaces = new Map();
706
- for (const w of userData.workspaces)
707
- mergedWorkspaces.set(w.workspaceId, w);
708
- for (const w of projectData.workspaces)
709
- mergedWorkspaces.set(w.workspaceId, w);
710
- return {
711
- currentWorkspace: projectData.currentWorkspace ?? userData.currentWorkspace,
712
- workspaces: [...mergedWorkspaces.values()]
713
- };
714
- }
715
- export function getWorkspaceConfig(workspaceId, _projectRoot) {
716
- const { workspaces } = readAllWorkspaces();
717
- return workspaces.find((w) => w.workspaceId === workspaceId) ?? null;
718
- }
719
- function readLayerConfig(layer) {
720
- return readRawWorkspaceData(layer);
721
- }
722
- export function addWorkspace(workspace, layer = 'user') {
723
- if (!isSafeConfigSegment(workspace.workspaceId)) {
724
- throw new Error('Workspace id must only contain letters, numbers, dots, underscores, or hyphens and must not contain path traversal');
725
- }
726
- const config = readRawWorkspaceData(layer);
727
- const workspaces = config.workspaces;
728
- const existing = workspaces.findIndex((w) => w.workspaceId === workspace.workspaceId);
729
- const updatedWorkspaces = existing >= 0
730
- ? workspaces.map((existingWorkspace) => existingWorkspace.workspaceId === workspace.workspaceId ? workspace : existingWorkspace)
731
- : [...workspaces, workspace];
732
- writeRawWorkspaceData({ workspaces: updatedWorkspaces }, layer);
733
- }
734
- export function removeWorkspace(workspaceId, layer = 'user') {
735
- if (!isSafeConfigSegment(workspaceId))
736
- return false;
737
- const config = readRawWorkspaceData(layer);
738
- const workspaces = config.workspaces;
739
- const idx = workspaces.findIndex((w) => w.workspaceId === workspaceId);
740
- if (idx < 0)
741
- return false;
742
- const updatedWorkspaces = workspaces.filter((w) => w.workspaceId !== workspaceId);
743
- const currentWorkspace = config.currentWorkspace === workspaceId ? updatedWorkspaces[0]?.workspaceId ?? null : config.currentWorkspace ?? null;
744
- writeRawWorkspaceData({ workspaces: updatedWorkspaces, currentWorkspace }, layer);
745
- return true;
746
- }
747
- export function setCurrentWorkspace(workspaceId, layer = 'user') {
748
- if (!isSafeConfigSegment(workspaceId))
749
- return false;
750
- const config = readRawWorkspaceData(layer);
751
- const workspaces = config.workspaces;
752
- const exists = workspaces.some((w) => w.workspaceId === workspaceId);
753
- if (!exists)
754
- return false;
755
- writeRawWorkspaceData({ currentWorkspace: workspaceId }, layer);
756
- return true;
757
- }
758
- export function getCurrentWorkspaceConfig() {
759
- const { currentWorkspace, workspaces } = readAllWorkspaces();
760
- if (!currentWorkspace)
761
- return null;
762
- return workspaces.find((w) => w.workspaceId === currentWorkspace) ?? null;
763
- }
764
- export function getWorkspaceConfigForPath(path = process.cwd()) {
765
- const { workspaces } = readAllWorkspaces();
766
- return findWorkspaceForPath(workspaces, path);
767
- }
768
- function findWorkspaceForPath(workspaces, path) {
769
- const targetPath = stablePath(path);
770
- const matches = workspaces.flatMap((workspace) => {
771
- if (!isAbsolute(workspace.rootPath) || !existsSync(workspace.rootPath))
772
- return [];
773
- const rootPath = stablePath(workspace.rootPath);
774
- return isInsidePath(targetPath, rootPath) ? [{ workspace, rootPath }] : [];
775
- });
776
- if (matches.length === 0)
777
- return null;
778
- return matches.reduce((best, match) => match.rootPath.length > best.rootPath.length ? match : best).workspace;
779
- }
780
- function getWorkspaceArtifactRoot(workspace) {
781
- return workspace.artifactStorage?.localPath ? resolve(workspace.artifactStorage.localPath) : resolve(workspace.rootPath, '.peaks', 'artifacts');
782
- }
783
- function ensureArtifactWorkspaceMarker(workspace) {
784
- const artifactRoot = getWorkspaceArtifactRoot(workspace);
785
- const peaksPath = resolve(artifactRoot, '.peaks');
786
- const markerPath = resolve(peaksPath, 'config.json');
787
- ensureDir(artifactRoot);
788
- validateArtifactWorkspaceRoot(artifactRoot, workspace.rootPath);
789
- ensureDir(peaksPath);
790
- validateArtifactWorkspaceMarkerPath(artifactRoot, peaksPath, markerPath);
791
- if (!existsSync(markerPath)) {
792
- writeConfigFileSafely(markerPath, '{}\n', () => validateArtifactWorkspaceMarkerPath(artifactRoot, peaksPath, markerPath), 'Artifact workspace marker must stay inside the artifact workspace');
793
- }
794
- }
795
- export function ensureWorkspaceConfigForPath(path = process.cwd()) {
796
- const projectRoot = resolveProjectRootForConfig(path);
797
- if (!isAbsolute(projectRoot) || !existsSync(projectRoot))
798
- return null;
799
- const config = readLayerConfig('user');
800
- const existingWorkspace = findWorkspaceForPath(config.workspaces, path);
801
- if (existingWorkspace) {
802
- ensureArtifactWorkspaceMarker(existingWorkspace);
803
- return existingWorkspace;
804
- }
805
- return null;
806
- }
807
- export function getWorkspaceConfigForCurrentPath() {
808
- return getWorkspaceConfigForPath(process.cwd());
809
- }
810
- export function ensureWorkspaceConfigForCurrentPath() {
811
- return ensureWorkspaceConfigForPath(process.cwd());
812
- }
813
- export { getUserConfigPath } from './config-safety.js';
814
- export { globalConfigPath } from './config-migration.js';