peaks-loop 4.1.1 → 4.1.3

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 (1066) hide show
  1. package/.claude-plugin/marketplace.json +136 -47
  2. package/CHANGELOG.md +106 -0
  3. package/README-en.md +4 -4
  4. package/README.md +25 -4
  5. package/bin/node-floor.mjs +59 -0
  6. package/bin/peaks.js +13 -0
  7. package/config/eslint/tsconfig.lint.json +2 -1
  8. package/contracts/readonly-argv-whitelist.json +211 -0
  9. package/dist/cli/cli-helpers.d.ts +0 -1
  10. package/dist/cli/cli-helpers.js +0 -1
  11. package/dist/cli/commands/_cli-error-envelope.js +0 -3
  12. package/dist/cli/commands/adapter-commands-s2a.d.ts +0 -1
  13. package/dist/cli/commands/adapter-commands.d.ts +0 -1
  14. package/dist/cli/commands/api-diff-commands.d.ts +0 -1
  15. package/dist/cli/commands/api-diff-commands.js +0 -1
  16. package/dist/cli/commands/audit-artifact-runners.d.ts +16 -0
  17. package/dist/cli/commands/audit-artifact-runners.js +170 -0
  18. package/dist/cli/commands/audit-command-shared.d.ts +97 -0
  19. package/dist/cli/commands/audit-command-shared.js +60 -0
  20. package/dist/cli/commands/audit-commands.d.ts +7 -31
  21. package/dist/cli/commands/audit-commands.js +65 -477
  22. package/dist/cli/commands/audit-goal-runners.d.ts +17 -0
  23. package/dist/cli/commands/audit-goal-runners.js +114 -0
  24. package/dist/cli/commands/audit-red-lines-runners.d.ts +11 -0
  25. package/dist/cli/commands/audit-red-lines-runners.js +43 -0
  26. package/dist/cli/commands/audit-refusal-data.d.ts +23 -0
  27. package/dist/cli/commands/audit-refusal-data.js +69 -0
  28. package/dist/cli/commands/audit-static-runners.d.ts +13 -0
  29. package/dist/cli/commands/audit-static-runners.js +139 -0
  30. package/dist/cli/commands/autonomous-swarm-commands.js +0 -1
  31. package/dist/cli/commands/await-runners.d.ts +11 -0
  32. package/dist/cli/commands/await-runners.js +148 -0
  33. package/dist/cli/commands/bee-commands.d.ts +0 -2
  34. package/dist/cli/commands/bee-commands.js +0 -2
  35. package/dist/cli/commands/best-practice-scan-command.d.ts +0 -1
  36. package/dist/cli/commands/best-practice-scan-helpers.js +0 -1
  37. package/dist/cli/commands/changeset-commands.d.ts +0 -2
  38. package/dist/cli/commands/changeset-commands.js +0 -2
  39. package/dist/cli/commands/code-auto-compact-command.d.ts +3 -0
  40. package/dist/cli/commands/code-auto-compact-command.js +124 -0
  41. package/dist/cli/commands/code-auto-compact-envelope.d.ts +22 -0
  42. package/dist/cli/commands/code-auto-compact-envelope.js +39 -0
  43. package/dist/cli/commands/code-commands.d.ts +0 -3
  44. package/dist/cli/commands/code-commands.js +0 -3
  45. package/dist/cli/commands/code-context-audit-command.d.ts +3 -0
  46. package/dist/cli/commands/code-context-audit-command.js +68 -0
  47. package/dist/cli/commands/code-context-now-command.d.ts +3 -0
  48. package/dist/cli/commands/code-context-now-command.js +124 -0
  49. package/dist/cli/commands/code-context-now-envelope.d.ts +66 -0
  50. package/dist/cli/commands/code-context-now-envelope.js +136 -0
  51. package/dist/cli/commands/code-context-now-mapping.d.ts +27 -0
  52. package/dist/cli/commands/code-context-now-mapping.js +43 -0
  53. package/dist/cli/commands/code-emit-handoff-command.d.ts +3 -0
  54. package/dist/cli/commands/code-emit-handoff-command.js +99 -0
  55. package/dist/cli/commands/code-gate-command.d.ts +0 -1
  56. package/dist/cli/commands/code-gate-command.js +0 -1
  57. package/dist/cli/commands/code-gate-step-08-command.d.ts +3 -0
  58. package/dist/cli/commands/code-gate-step-08-command.js +139 -0
  59. package/dist/cli/commands/code-job-shape-commands-read-job-shape.d.ts +0 -1
  60. package/dist/cli/commands/code-job-shape-commands-read-job-shape.js +0 -1
  61. package/dist/cli/commands/code-job-shape-commands.d.ts +0 -2
  62. package/dist/cli/commands/code-job-shape-commands.js +0 -3
  63. package/dist/cli/commands/code-mode-gate-commands.d.ts +0 -2
  64. package/dist/cli/commands/code-mode-gate-commands.js +0 -3
  65. package/dist/cli/commands/code-mode-gate-should-pause-command.js +0 -4
  66. package/dist/cli/commands/code-mode-gate-should-pause-envelope.d.ts +0 -1
  67. package/dist/cli/commands/code-mode-gate-should-pause-envelope.js +0 -2
  68. package/dist/cli/commands/code-mode-status-command.d.ts +0 -1
  69. package/dist/cli/commands/code-mode-status-command.js +0 -1
  70. package/dist/cli/commands/code-orchestrator-can-do.d.ts +0 -1
  71. package/dist/cli/commands/code-orchestrator-can-do.js +0 -1
  72. package/dist/cli/commands/code-post-compact-detect-command.d.ts +3 -0
  73. package/dist/cli/commands/code-post-compact-detect-command.js +50 -0
  74. package/dist/cli/commands/code-run-command.js +0 -1
  75. package/dist/cli/commands/code-runtime-commands.d.ts +9 -46
  76. package/dist/cli/commands/code-runtime-commands.js +20 -687
  77. package/dist/cli/commands/code-runtime-session.d.ts +1 -0
  78. package/dist/cli/commands/code-runtime-session.js +15 -0
  79. package/dist/cli/commands/codegraph-command-runtime.d.ts +6 -0
  80. package/dist/cli/commands/codegraph-command-runtime.js +19 -7
  81. package/dist/cli/commands/codegraph-commands.js +20 -193
  82. package/dist/cli/commands/codegraph-init-command.d.ts +8 -0
  83. package/dist/cli/commands/codegraph-init-command.js +162 -0
  84. package/dist/cli/commands/codegraph-status-command.js +5 -6
  85. package/dist/cli/commands/compact-command.d.ts +6 -3
  86. package/dist/cli/commands/compact-command.js +12 -563
  87. package/dist/cli/commands/compact-dry-run-command.d.ts +3 -0
  88. package/dist/cli/commands/compact-dry-run-command.js +87 -0
  89. package/dist/cli/commands/compact-force-command.d.ts +3 -0
  90. package/dist/cli/commands/compact-force-command.js +98 -0
  91. package/dist/cli/commands/compact-harness-window-command.d.ts +3 -0
  92. package/dist/cli/commands/compact-harness-window-command.js +174 -0
  93. package/dist/cli/commands/compact-history-command.d.ts +3 -0
  94. package/dist/cli/commands/compact-history-command.js +89 -0
  95. package/dist/cli/commands/compact-read-commands.d.ts +3 -0
  96. package/dist/cli/commands/compact-read-commands.js +123 -0
  97. package/dist/cli/commands/compact-settle-command.d.ts +3 -0
  98. package/dist/cli/commands/compact-settle-command.js +130 -0
  99. package/dist/cli/commands/compact-shared.d.ts +9 -0
  100. package/dist/cli/commands/compact-shared.js +26 -0
  101. package/dist/cli/commands/container-commands.d.ts +0 -1
  102. package/dist/cli/commands/container-commands.js +0 -1
  103. package/dist/cli/commands/context-commands.d.ts +0 -1
  104. package/dist/cli/commands/context-commands.js +0 -1
  105. package/dist/cli/commands/core/doctor-command.d.ts +0 -1
  106. package/dist/cli/commands/core/doctor-command.js +0 -9
  107. package/dist/cli/commands/core/memory-command.js +0 -1
  108. package/dist/cli/commands/core/session-command.js +0 -14
  109. package/dist/cli/commands/core/skill-command.d.ts +1 -44
  110. package/dist/cli/commands/core/skill-command.js +13 -550
  111. package/dist/cli/commands/core/skill-context-verdict.d.ts +38 -0
  112. package/dist/cli/commands/core/skill-context-verdict.js +63 -0
  113. package/dist/cli/commands/core/skill-generated-config-notice.d.ts +41 -0
  114. package/dist/cli/commands/core/skill-generated-config-notice.js +75 -0
  115. package/dist/cli/commands/core/skill-heartbeat-commands.d.ts +3 -0
  116. package/dist/cli/commands/core/skill-heartbeat-commands.js +50 -0
  117. package/dist/cli/commands/core/skill-presence-commands.d.ts +3 -0
  118. package/dist/cli/commands/core/skill-presence-commands.js +123 -0
  119. package/dist/cli/commands/core/skill-presence-housekeeping-commands.d.ts +3 -0
  120. package/dist/cli/commands/core/skill-presence-housekeeping-commands.js +165 -0
  121. package/dist/cli/commands/core/skill-registry-commands.d.ts +3 -0
  122. package/dist/cli/commands/core/skill-registry-commands.js +117 -0
  123. package/dist/cli/commands/core/skill-runbook-command.d.ts +3 -0
  124. package/dist/cli/commands/core/skill-runbook-command.js +29 -0
  125. package/dist/cli/commands/core-artifact-commands.d.ts +0 -1
  126. package/dist/cli/commands/core-artifact-commands.js +0 -1
  127. package/dist/cli/commands/cron-commands-actions.d.ts +0 -1
  128. package/dist/cli/commands/cron-commands-actions.js +0 -2
  129. package/dist/cli/commands/cron-commands-schedule.d.ts +0 -3
  130. package/dist/cli/commands/cron-commands-schedule.js +0 -1
  131. package/dist/cli/commands/cron-commands.d.ts +0 -1
  132. package/dist/cli/commands/cron-commands.js +0 -2
  133. package/dist/cli/commands/cron-scheduler-commands.d.ts +0 -1
  134. package/dist/cli/commands/cron-scheduler-commands.js +0 -1
  135. package/dist/cli/commands/cron-scheduler-persist.d.ts +0 -5
  136. package/dist/cli/commands/cron-scheduler-persist.js +0 -5
  137. package/dist/cli/commands/dashboard-summary.d.ts +0 -1
  138. package/dist/cli/commands/dispatch-command-spec.d.ts +2 -0
  139. package/dist/cli/commands/dispatch-command-spec.js +62 -0
  140. package/dist/cli/commands/dispatch-commands.d.ts +0 -1
  141. package/dist/cli/commands/dispatch-commands.js +159 -802
  142. package/dist/cli/commands/dispatch-detached-branch.d.ts +3 -0
  143. package/dist/cli/commands/dispatch-detached-branch.js +58 -0
  144. package/dist/cli/commands/dispatch-envelope.d.ts +36 -0
  145. package/dist/cli/commands/dispatch-envelope.js +104 -0
  146. package/dist/cli/commands/dispatch-from-dag.js +0 -4
  147. package/dist/cli/commands/dispatch-isolation-lease.d.ts +17 -0
  148. package/dist/cli/commands/dispatch-isolation-lease.js +149 -0
  149. package/dist/cli/commands/dispatch-preflight.d.ts +7 -0
  150. package/dist/cli/commands/dispatch-preflight.js +105 -0
  151. package/dist/cli/commands/dispatch-prompt-blocks.d.ts +10 -0
  152. package/dist/cli/commands/dispatch-prompt-blocks.js +56 -0
  153. package/dist/cli/commands/dispatch-prompt-composition.d.ts +30 -0
  154. package/dist/cli/commands/dispatch-prompt-composition.js +171 -0
  155. package/dist/cli/commands/dispatch-record-write.d.ts +24 -0
  156. package/dist/cli/commands/dispatch-record-write.js +96 -0
  157. package/dist/cli/commands/dispatch-tool-call.d.ts +15 -0
  158. package/dist/cli/commands/dispatch-tool-call.js +128 -0
  159. package/dist/cli/commands/doctor/invoke-from-code.js +0 -1
  160. package/dist/cli/commands/e2e-verify.d.ts +0 -1
  161. package/dist/cli/commands/ecc-commands.d.ts +0 -1
  162. package/dist/cli/commands/evolution-command-shared.d.ts +78 -0
  163. package/dist/cli/commands/evolution-command-shared.js +107 -0
  164. package/dist/cli/commands/evolution-commands.d.ts +11 -2
  165. package/dist/cli/commands/evolution-commands.js +19 -351
  166. package/dist/cli/commands/evolution-evaluate-command.d.ts +24 -0
  167. package/dist/cli/commands/evolution-evaluate-command.js +138 -0
  168. package/dist/cli/commands/evolution-propose-command.d.ts +23 -0
  169. package/dist/cli/commands/evolution-propose-command.js +145 -0
  170. package/dist/cli/commands/evolution-status-command.d.ts +17 -0
  171. package/dist/cli/commands/evolution-status-command.js +41 -0
  172. package/dist/cli/commands/evolution-verdict-commands.d.ts +30 -0
  173. package/dist/cli/commands/evolution-verdict-commands.js +100 -0
  174. package/dist/cli/commands/feedback-commands.d.ts +0 -1
  175. package/dist/cli/commands/feedback-commands.js +0 -2
  176. package/dist/cli/commands/finalize-accumulator.d.ts +44 -0
  177. package/dist/cli/commands/finalize-accumulator.js +55 -0
  178. package/dist/cli/commands/finalize-branches.d.ts +34 -0
  179. package/dist/cli/commands/finalize-branches.js +119 -0
  180. package/dist/cli/commands/finalize-runners.d.ts +3 -0
  181. package/dist/cli/commands/finalize-runners.js +92 -0
  182. package/dist/cli/commands/finalize-selection.d.ts +65 -0
  183. package/dist/cli/commands/finalize-selection.js +35 -0
  184. package/dist/cli/commands/fixture-commands.d.ts +0 -2
  185. package/dist/cli/commands/fresh-context-commands.d.ts +0 -1
  186. package/dist/cli/commands/gate-commands-enforce.d.ts +0 -3
  187. package/dist/cli/commands/gate-commands-enforce.js +0 -4
  188. package/dist/cli/commands/gate-commands.js +26 -10
  189. package/dist/cli/commands/governance-classify-contract-commands.d.ts +0 -3
  190. package/dist/cli/commands/governance-classify-contract-commands.js +0 -4
  191. package/dist/cli/commands/heartbeat-commands-action.js +0 -6
  192. package/dist/cli/commands/heartbeat-commands-validation.d.ts +0 -2
  193. package/dist/cli/commands/heartbeat-commands-validation.js +0 -2
  194. package/dist/cli/commands/heartbeat-commands.d.ts +0 -1
  195. package/dist/cli/commands/heartbeat-commands.js +0 -1
  196. package/dist/cli/commands/hooks-commands.js +0 -11
  197. package/dist/cli/commands/ide-commands.d.ts +0 -1
  198. package/dist/cli/commands/job-add-slice-command.d.ts +0 -2
  199. package/dist/cli/commands/job-add-slice-command.js +0 -2
  200. package/dist/cli/commands/job-checkpoint-commands.d.ts +3 -0
  201. package/dist/cli/commands/job-checkpoint-commands.js +157 -0
  202. package/dist/cli/commands/job-command-shared.d.ts +109 -0
  203. package/dist/cli/commands/job-command-shared.js +72 -0
  204. package/dist/cli/commands/job-commands.d.ts +4 -64
  205. package/dist/cli/commands/job-commands.js +42 -556
  206. package/dist/cli/commands/job-cost-check-command.d.ts +3 -0
  207. package/dist/cli/commands/job-cost-check-command.js +41 -0
  208. package/dist/cli/commands/job-init-status-commands.d.ts +3 -0
  209. package/dist/cli/commands/job-init-status-commands.js +149 -0
  210. package/dist/cli/commands/job-run-commands.d.ts +3 -0
  211. package/dist/cli/commands/job-run-commands.js +97 -0
  212. package/dist/cli/commands/job-state-root.d.ts +35 -0
  213. package/dist/cli/commands/job-state-root.js +76 -0
  214. package/dist/cli/commands/lease-metrics-commands.d.ts +0 -1
  215. package/dist/cli/commands/lease-metrics-commands.js +0 -1
  216. package/dist/cli/commands/lease-stats-commands.d.ts +0 -1
  217. package/dist/cli/commands/lease-stats-commands.js +0 -1
  218. package/dist/cli/commands/log-commands.d.ts +0 -2
  219. package/dist/cli/commands/log-commands.js +0 -3
  220. package/dist/cli/commands/loop-eval-capture-index.d.ts +4 -0
  221. package/dist/cli/commands/loop-eval-capture-index.js +44 -0
  222. package/dist/cli/commands/loop-eval-commands.d.ts +8 -5
  223. package/dist/cli/commands/loop-eval-commands.js +12 -629
  224. package/dist/cli/commands/loop-eval-eval-command.d.ts +3 -0
  225. package/dist/cli/commands/loop-eval-eval-command.js +168 -0
  226. package/dist/cli/commands/loop-eval-monotonic-command.d.ts +3 -0
  227. package/dist/cli/commands/loop-eval-monotonic-command.js +90 -0
  228. package/dist/cli/commands/loop-eval-parents.d.ts +7 -0
  229. package/dist/cli/commands/loop-eval-parents.js +20 -0
  230. package/dist/cli/commands/loop-eval-run-code.d.ts +7 -0
  231. package/dist/cli/commands/loop-eval-run-code.js +40 -0
  232. package/dist/cli/commands/loop-eval-run-command.d.ts +3 -0
  233. package/dist/cli/commands/loop-eval-run-command.js +113 -0
  234. package/dist/cli/commands/loop-eval-spec-commands.d.ts +3 -0
  235. package/dist/cli/commands/loop-eval-spec-commands.js +165 -0
  236. package/dist/cli/commands/loop-eval-spec-lint-command.d.ts +3 -0
  237. package/dist/cli/commands/loop-eval-spec-lint-command.js +42 -0
  238. package/dist/cli/commands/loop-eval-workflow-commands.d.ts +3 -0
  239. package/dist/cli/commands/loop-eval-workflow-commands.js +141 -0
  240. package/dist/cli/commands/mcp-commands.d.ts +10 -0
  241. package/dist/cli/commands/mcp-commands.js +157 -0
  242. package/dist/cli/commands/memory-commands.d.ts +0 -1
  243. package/dist/cli/commands/memory-commands.js +0 -1
  244. package/dist/cli/commands/observability-commands.d.ts +0 -6
  245. package/dist/cli/commands/observability-commands.js +0 -6
  246. package/dist/cli/commands/outer-cache-commands.js +0 -2
  247. package/dist/cli/commands/playwright-commands.d.ts +0 -1
  248. package/dist/cli/commands/playwright-commands.js +0 -1
  249. package/dist/cli/commands/polyrepo-commands.d.ts +0 -1
  250. package/dist/cli/commands/prd-commands.d.ts +0 -1
  251. package/dist/cli/commands/prd-commands.js +0 -2
  252. package/dist/cli/commands/preferences-commands.js +0 -2
  253. package/dist/cli/commands/primer-command.d.ts +0 -1
  254. package/dist/cli/commands/primer-command.js +0 -1
  255. package/dist/cli/commands/project-commands.js +0 -1
  256. package/dist/cli/commands/qa-commands.d.ts +0 -1
  257. package/dist/cli/commands/qa-commands.js +0 -2
  258. package/dist/cli/commands/release-commands.js +0 -9
  259. package/dist/cli/commands/request-command-options.d.ts +49 -0
  260. package/dist/cli/commands/request-command-options.js +1 -0
  261. package/dist/cli/commands/request-commands.d.ts +3 -10
  262. package/dist/cli/commands/request-commands.js +17 -532
  263. package/dist/cli/commands/request-format-helpers.d.ts +0 -1
  264. package/dist/cli/commands/request-format-helpers.js +0 -2
  265. package/dist/cli/commands/request-init-command.d.ts +3 -0
  266. package/dist/cli/commands/request-init-command.js +100 -0
  267. package/dist/cli/commands/request-lint-command.d.ts +3 -0
  268. package/dist/cli/commands/request-lint-command.js +50 -0
  269. package/dist/cli/commands/request-list-command.d.ts +10 -0
  270. package/dist/cli/commands/request-list-command.js +53 -0
  271. package/dist/cli/commands/request-repair-status-command.d.ts +3 -0
  272. package/dist/cli/commands/request-repair-status-command.js +61 -0
  273. package/dist/cli/commands/request-show-command.d.ts +3 -0
  274. package/dist/cli/commands/request-show-command.js +56 -0
  275. package/dist/cli/commands/request-transition-command.d.ts +3 -0
  276. package/dist/cli/commands/request-transition-command.js +122 -0
  277. package/dist/cli/commands/request-transition-failures.d.ts +8 -0
  278. package/dist/cli/commands/request-transition-failures.js +90 -0
  279. package/dist/cli/commands/request-transition-hooks.d.ts +50 -0
  280. package/dist/cli/commands/request-transition-hooks.js +115 -0
  281. package/dist/cli/commands/request-transition-preflight.d.ts +10 -0
  282. package/dist/cli/commands/request-transition-preflight.js +107 -0
  283. package/dist/cli/commands/runtime-commands.d.ts +0 -1
  284. package/dist/cli/commands/sc-commands.js +0 -1
  285. package/dist/cli/commands/scan-command-shared.d.ts +96 -0
  286. package/dist/cli/commands/scan-command-shared.js +83 -0
  287. package/dist/cli/commands/scan-commands.d.ts +3 -2
  288. package/dist/cli/commands/scan-commands.js +23 -463
  289. package/dist/cli/commands/scan-inventory-commands.d.ts +3 -0
  290. package/dist/cli/commands/scan-inventory-commands.js +96 -0
  291. package/dist/cli/commands/scan-project-commands.d.ts +3 -0
  292. package/dist/cli/commands/scan-project-commands.js +65 -0
  293. package/dist/cli/commands/scan-scope-commands.d.ts +3 -0
  294. package/dist/cli/commands/scan-scope-commands.js +149 -0
  295. package/dist/cli/commands/scan-scope-helpers.d.ts +8 -0
  296. package/dist/cli/commands/scan-scope-helpers.js +54 -0
  297. package/dist/cli/commands/scan-structural-commands.d.ts +3 -0
  298. package/dist/cli/commands/scan-structural-commands.js +113 -0
  299. package/dist/cli/commands/session-24h-mode.d.ts +0 -1
  300. package/dist/cli/commands/session-24h-mode.js +0 -2
  301. package/dist/cli/commands/session-checkpoint-command.d.ts +0 -1
  302. package/dist/cli/commands/session-checkpoint-command.js +0 -1
  303. package/dist/cli/commands/session-resume-command.d.ts +0 -1
  304. package/dist/cli/commands/session-resume-command.js +0 -1
  305. package/dist/cli/commands/shadcn-commands.js +0 -2
  306. package/dist/cli/commands/share-commands.d.ts +12 -71
  307. package/dist/cli/commands/share-commands.js +47 -569
  308. package/dist/cli/commands/share-error-hints.d.ts +14 -0
  309. package/dist/cli/commands/share-error-hints.js +38 -0
  310. package/dist/cli/commands/share-identity.d.ts +13 -0
  311. package/dist/cli/commands/share-identity.js +22 -0
  312. package/dist/cli/commands/share-record-paths.d.ts +37 -0
  313. package/dist/cli/commands/share-record-paths.js +68 -0
  314. package/dist/cli/commands/share-runners.d.ts +3 -0
  315. package/dist/cli/commands/share-runners.js +158 -0
  316. package/dist/cli/commands/shared-read-runners.d.ts +3 -0
  317. package/dist/cli/commands/shared-read-runners.js +51 -0
  318. package/dist/cli/commands/skill-search-commands.d.ts +0 -2
  319. package/dist/cli/commands/slice-check-command.d.ts +3 -0
  320. package/dist/cli/commands/slice-check-command.js +54 -0
  321. package/dist/cli/commands/slice-commands.d.ts +2 -22
  322. package/dist/cli/commands/slice-commands.js +18 -519
  323. package/dist/cli/commands/slice-decompose-artifacts.d.ts +18 -0
  324. package/dist/cli/commands/slice-decompose-artifacts.js +79 -0
  325. package/dist/cli/commands/slice-decompose-command.d.ts +3 -0
  326. package/dist/cli/commands/slice-decompose-command.js +123 -0
  327. package/dist/cli/commands/slice-integrate-commands.js +0 -1
  328. package/dist/cli/commands/slice-list-commands.d.ts +3 -0
  329. package/dist/cli/commands/slice-list-commands.js +182 -0
  330. package/dist/cli/commands/slice-pick-command.d.ts +3 -0
  331. package/dist/cli/commands/slice-pick-command.js +60 -0
  332. package/dist/cli/commands/slice-plan-command.d.ts +24 -0
  333. package/dist/cli/commands/slice-plan-command.js +111 -0
  334. package/dist/cli/commands/spill-demo-command.d.ts +0 -1
  335. package/dist/cli/commands/statusline-commands.js +0 -4
  336. package/dist/cli/commands/sub-agent/detached.js +0 -2
  337. package/dist/cli/commands/sub-agent-commands.d.ts +0 -3
  338. package/dist/cli/commands/sub-agent-shared.d.ts +0 -8
  339. package/dist/cli/commands/sub-agent-shared.js +0 -5
  340. package/dist/cli/commands/sub-agent-shutdown-commands.d.ts +0 -1
  341. package/dist/cli/commands/tech-commands.d.ts +0 -4
  342. package/dist/cli/commands/tech-commands.js +0 -4
  343. package/dist/cli/commands/vendor-detect.d.ts +0 -3
  344. package/dist/cli/commands/vendor-detect.js +0 -2
  345. package/dist/cli/commands/verdict-aggregate-command.d.ts +0 -1
  346. package/dist/cli/commands/verdict-aggregate-command.js +0 -7
  347. package/dist/cli/commands/vm-commands.d.ts +0 -1
  348. package/dist/cli/commands/vm-commands.js +5 -29
  349. package/dist/cli/commands/vm-hypervisor-probe.d.ts +27 -0
  350. package/dist/cli/commands/vm-hypervisor-probe.js +78 -0
  351. package/dist/cli/commands/vm-status-command.d.ts +3 -0
  352. package/dist/cli/commands/vm-status-command.js +50 -0
  353. package/dist/cli/commands/wave-plan-commands.d.ts +0 -1
  354. package/dist/cli/commands/web-lifecycle-commands.d.ts +0 -1
  355. package/dist/cli/commands/workflow-commands.d.ts +10 -1
  356. package/dist/cli/commands/workflow-commands.js +6 -608
  357. package/dist/cli/commands/workflow-gate-commands.d.ts +3 -0
  358. package/dist/cli/commands/workflow-gate-commands.js +116 -0
  359. package/dist/cli/commands/workflow-plan-commands-actions.js +0 -2
  360. package/dist/cli/commands/workflow-plan-commands-session.js +0 -2
  361. package/dist/cli/commands/workflow-plan-commands.d.ts +0 -1
  362. package/dist/cli/commands/workflow-plan-helpers.d.ts +48 -0
  363. package/dist/cli/commands/workflow-plan-helpers.js +103 -0
  364. package/dist/cli/commands/workflow-planning-commands.d.ts +3 -0
  365. package/dist/cli/commands/workflow-planning-commands.js +56 -0
  366. package/dist/cli/commands/workflow-swarm-actions.d.ts +7 -0
  367. package/dist/cli/commands/workflow-swarm-actions.js +109 -0
  368. package/dist/cli/commands/workflow-swarm-commands.d.ts +3 -0
  369. package/dist/cli/commands/workflow-swarm-commands.js +138 -0
  370. package/dist/cli/commands/workflow-tech-actions.d.ts +10 -0
  371. package/dist/cli/commands/workflow-tech-actions.js +150 -0
  372. package/dist/cli/commands/workspace/clean-command.d.ts +0 -1
  373. package/dist/cli/commands/workspace/clean-command.js +0 -1
  374. package/dist/cli/commands/workspace/helpers.d.ts +0 -1
  375. package/dist/cli/commands/workspace/helpers.js +0 -1
  376. package/dist/cli/commands/workspace/init-actions.d.ts +10 -0
  377. package/dist/cli/commands/workspace/init-actions.js +199 -0
  378. package/dist/cli/commands/workspace/init-codegraph-stake.d.ts +10 -0
  379. package/dist/cli/commands/workspace/init-codegraph-stake.js +54 -0
  380. package/dist/cli/commands/workspace/init-command.d.ts +8 -130
  381. package/dist/cli/commands/workspace/init-command.js +59 -640
  382. package/dist/cli/commands/workspace/init-context.d.ts +58 -0
  383. package/dist/cli/commands/workspace/init-context.js +121 -0
  384. package/dist/cli/commands/workspace/init-envelope.d.ts +3 -0
  385. package/dist/cli/commands/workspace/init-envelope.js +34 -0
  386. package/dist/cli/commands/workspace/init-failures.d.ts +3 -0
  387. package/dist/cli/commands/workspace/init-failures.js +84 -0
  388. package/dist/cli/commands/workspace/init-hooks-decision.d.ts +24 -0
  389. package/dist/cli/commands/workspace/init-hooks-decision.js +189 -0
  390. package/dist/cli/commands/workspace/init-options.d.ts +102 -0
  391. package/dist/cli/commands/workspace/init-options.js +1 -0
  392. package/dist/cli/commands/workspace/migrate-command.d.ts +0 -2
  393. package/dist/cli/commands/workspace/migrate-command.js +0 -2
  394. package/dist/cli/commands/workspace/reconcile-command.d.ts +0 -2
  395. package/dist/cli/commands/workspace/reconcile-command.js +0 -3
  396. package/dist/cli/commands/workspace-commands.d.ts +0 -2
  397. package/dist/cli/commands/workspace-commands.js +0 -4
  398. package/dist/cli/commands/worktree-auth-commands.d.ts +0 -1
  399. package/dist/cli/commands/worktree-auth-commands.js +0 -1
  400. package/dist/cli/commands/worktree-auth-grant-command.d.ts +0 -1
  401. package/dist/cli/commands/worktree-auth-grant-command.js +0 -1
  402. package/dist/cli/commands/worktree-auth-manage-commands.d.ts +0 -1
  403. package/dist/cli/commands/worktree-auth-manage-commands.js +0 -1
  404. package/dist/cli/commands/worktree-lease-commands.d.ts +10 -6
  405. package/dist/cli/commands/worktree-lease-commands.js +42 -513
  406. package/dist/cli/commands/worktree-lease-gc-command.d.ts +12 -0
  407. package/dist/cli/commands/worktree-lease-gc-command.js +117 -0
  408. package/dist/cli/commands/worktree-lease-git.d.ts +22 -0
  409. package/dist/cli/commands/worktree-lease-git.js +48 -0
  410. package/dist/cli/commands/worktree-lease-list-command.d.ts +12 -0
  411. package/dist/cli/commands/worktree-lease-list-command.js +100 -0
  412. package/dist/cli/commands/worktree-lease-load.d.ts +37 -0
  413. package/dist/cli/commands/worktree-lease-load.js +28 -0
  414. package/dist/cli/commands/worktree-lease-release-command.d.ts +13 -0
  415. package/dist/cli/commands/worktree-lease-release-command.js +105 -0
  416. package/dist/cli/commands/worktree-lease-renew-command.d.ts +11 -0
  417. package/dist/cli/commands/worktree-lease-renew-command.js +99 -0
  418. package/dist/cli/commands/worktree-lease-session.d.ts +22 -0
  419. package/dist/cli/commands/worktree-lease-session.js +29 -0
  420. package/dist/cli/commands/worktree-lease-spawn-command.d.ts +11 -0
  421. package/dist/cli/commands/worktree-lease-spawn-command.js +119 -0
  422. package/dist/cli/commands/worktree-lease-status-command.d.ts +11 -0
  423. package/dist/cli/commands/worktree-lease-status-command.js +86 -0
  424. package/dist/cli/commands/worktree-lease-store.d.ts +19 -0
  425. package/dist/cli/commands/worktree-lease-store.js +24 -0
  426. package/dist/cli/program.js +5 -7
  427. package/dist/reporters/bdd-reporter.js +0 -1
  428. package/dist/services/24h-mode/auto-engage.d.ts +0 -1
  429. package/dist/services/24h-mode/auto-engage.js +0 -1
  430. package/dist/services/24h-mode/decider.d.ts +0 -3
  431. package/dist/services/24h-mode/decider.js +0 -3
  432. package/dist/services/24h-mode/index.d.ts +0 -2
  433. package/dist/services/24h-mode/index.js +0 -2
  434. package/dist/services/24h-mode/state.d.ts +0 -1
  435. package/dist/services/24h-mode/state.js +0 -1
  436. package/dist/services/24h-mode/store.d.ts +0 -1
  437. package/dist/services/24h-mode/store.js +0 -1
  438. package/dist/services/adapter/adapter-registry.js +0 -1
  439. package/dist/services/artifacts/artifact-prerequisites.d.ts +0 -5
  440. package/dist/services/artifacts/artifact-prerequisites.js +0 -19
  441. package/dist/services/artifacts/artifact-templates.d.ts +0 -1
  442. package/dist/services/artifacts/artifact-templates.js +0 -1
  443. package/dist/services/artifacts/request-artifact-service.d.ts +0 -5
  444. package/dist/services/artifacts/request-artifact-service.js +0 -12
  445. package/dist/services/artifacts/request-artifact-state-helpers.d.ts +0 -1
  446. package/dist/services/artifacts/request-artifact-state-helpers.js +0 -1
  447. package/dist/services/audit/artifact-writer.d.ts +0 -1
  448. package/dist/services/audit/artifact-writer.js +0 -1
  449. package/dist/services/audit/decision-writer.js +3 -1
  450. package/dist/services/audit/enforcer-liveness.js +0 -1
  451. package/dist/services/audit/enforcers/active-skill-resolver.d.ts +0 -2
  452. package/dist/services/audit/enforcers/active-skill-resolver.js +0 -2
  453. package/dist/services/audit/red-line-audit-input.d.ts +11 -0
  454. package/dist/services/audit/red-line-audit-input.js +103 -0
  455. package/dist/services/audit/red-line-catalog-p2-a-bee-runtime.d.ts +0 -1
  456. package/dist/services/audit/red-line-catalog-p2-a.js +0 -9
  457. package/dist/services/audit/types.d.ts +0 -2
  458. package/dist/services/audit/types.js +0 -2
  459. package/dist/services/audit-independent/perf-audit-service.d.ts +0 -2
  460. package/dist/services/audit-independent/security-audit-service.d.ts +0 -5
  461. package/dist/services/audit-independent/security-audit-service.js +0 -2
  462. package/dist/services/autonomous-swarm/autonomous-swarm-service.d.ts +0 -5
  463. package/dist/services/autonomous-swarm/autonomous-swarm-service.js +0 -5
  464. package/dist/services/best-practice/language-detector.js +0 -1
  465. package/dist/services/best-practice/output-formatter.d.ts +0 -1
  466. package/dist/services/best-practice/scan-orchestrator.d.ts +0 -1
  467. package/dist/services/capability-audit-service/types.d.ts +1 -3
  468. package/dist/services/capability-guard-runner/contracts/J08.js +2 -2
  469. package/dist/services/changeset/changeset-check-service.d.ts +0 -3
  470. package/dist/services/changeset/changeset-check-service.js +0 -3
  471. package/dist/services/classify/classify-service.d.ts +0 -1
  472. package/dist/services/classify/classify-service.js +0 -1
  473. package/dist/services/classify/classify-types.d.ts +0 -1
  474. package/dist/services/classify/classify-types.js +0 -1
  475. package/dist/services/code/auto-compact-lifecycle.d.ts +0 -11
  476. package/dist/services/code/auto-compact-lifecycle.js +0 -10
  477. package/dist/services/code/auto-compact-modes.d.ts +0 -3
  478. package/dist/services/code/auto-compact-modes.js +0 -3
  479. package/dist/services/code/auto-compact-orchestrator.d.ts +0 -9
  480. package/dist/services/code/auto-compact-orchestrator.js +0 -29
  481. package/dist/services/code/batch-heartbeat-poller.js +0 -1
  482. package/dist/services/code/compact-event-settle.js +0 -1
  483. package/dist/services/code/dag-orchestrator.d.ts +0 -1
  484. package/dist/services/code/dag-orchestrator.js +0 -1
  485. package/dist/services/code/mode-gate-types.d.ts +0 -2
  486. package/dist/services/code/mode-gate-types.js +0 -1
  487. package/dist/services/code/mode-gate.d.ts +0 -5
  488. package/dist/services/code/mode-gate.js +0 -5
  489. package/dist/services/code/orchestrator-can-do-advisories.d.ts +0 -2
  490. package/dist/services/code/orchestrator-can-do-advisories.js +0 -5
  491. package/dist/services/code/orchestrator-can-do.d.ts +0 -4
  492. package/dist/services/code/orchestrator-can-do.js +0 -3
  493. package/dist/services/code/status-line-renderer.js +0 -1
  494. package/dist/services/code-review/ecc-bridge.d.ts +0 -1
  495. package/dist/services/codegraph/codegraph-autorefresh.js +6 -4
  496. package/dist/services/codegraph/codegraph-backend-advice.d.ts +26 -0
  497. package/dist/services/codegraph/codegraph-backend-advice.js +166 -0
  498. package/dist/services/codegraph/codegraph-config-repair-writer.d.ts +0 -24
  499. package/dist/services/codegraph/codegraph-config-repair-writer.js +32 -73
  500. package/dist/services/codegraph/codegraph-exclude-integrity.d.ts +14 -6
  501. package/dist/services/codegraph/codegraph-exclude-integrity.js +24 -14
  502. package/dist/services/codegraph/codegraph-exclude-reconciler.d.ts +9 -2
  503. package/dist/services/codegraph/codegraph-exclude-reconciler.js +87 -18
  504. package/dist/services/codegraph/codegraph-exclude-repair.d.ts +9 -61
  505. package/dist/services/codegraph/codegraph-exclude-repair.js +67 -139
  506. package/dist/services/codegraph/codegraph-foreign-removal.d.ts +21 -0
  507. package/dist/services/codegraph/codegraph-foreign-removal.js +77 -0
  508. package/dist/services/codegraph/codegraph-index-integrity.d.ts +12 -25
  509. package/dist/services/codegraph/codegraph-index-integrity.js +84 -23
  510. package/dist/services/codegraph/codegraph-preflight-service.js +15 -6
  511. package/dist/services/codegraph/codegraph-project-config.d.ts +35 -0
  512. package/dist/services/codegraph/codegraph-project-config.js +90 -0
  513. package/dist/services/codegraph/codegraph-service.d.ts +1 -2
  514. package/dist/services/codegraph/codegraph-service.js +11 -11
  515. package/dist/services/codegraph/codegraph-upstream-layout.d.ts +24 -0
  516. package/dist/services/codegraph/codegraph-upstream-layout.js +85 -0
  517. package/dist/services/comments/comment-audit.d.ts +15 -4
  518. package/dist/services/comments/comment-audit.js +25 -4
  519. package/dist/services/comments/comment-citations.d.ts +8 -2
  520. package/dist/services/comments/comment-citations.js +31 -33
  521. package/dist/services/comments/comment-hygiene.d.ts +29 -3
  522. package/dist/services/comments/comment-hygiene.js +40 -3
  523. package/dist/services/comments/comment-prune.js +52 -4
  524. package/dist/services/comments/comment-spans.d.ts +30 -0
  525. package/dist/services/comments/comment-spans.js +266 -0
  526. package/dist/services/comments/prune-apply.d.ts +22 -0
  527. package/dist/services/comments/prune-apply.js +69 -2
  528. package/dist/services/compact/decision-tables.d.ts +0 -2
  529. package/dist/services/compact/decision-tables.js +0 -2
  530. package/dist/services/compact/request-transition-hook.js +0 -2
  531. package/dist/services/compact-history/compact-history-service.d.ts +0 -2
  532. package/dist/services/compact-history/compact-history-service.js +0 -1
  533. package/dist/services/compact-statusline/compact-lifecycle-store.js +0 -2
  534. package/dist/services/compact-statusline/compact-lifecycle-types.d.ts +0 -1
  535. package/dist/services/compact-statusline/compact-statusline-service.js +0 -4
  536. package/dist/services/config/config-rollback.js +0 -1
  537. package/dist/services/config/config-safety.d.ts +0 -1
  538. package/dist/services/config/config-safety.js +0 -1
  539. package/dist/services/config/config-service.d.ts +0 -1
  540. package/dist/services/config/config-service.js +0 -1
  541. package/dist/services/config/model-routing.d.ts +0 -3
  542. package/dist/services/config/model-routing.js +0 -5
  543. package/dist/services/container/container-lease.d.ts +0 -1
  544. package/dist/services/container/container-lease.js +0 -1
  545. package/dist/services/context/artifact-meta.js +0 -1
  546. package/dist/services/context/auto-compact-dispatcher-input.d.ts +0 -3
  547. package/dist/services/context/auto-compact-dispatcher.js +0 -14
  548. package/dist/services/context/auto-compact-reader-input.d.ts +0 -1
  549. package/dist/services/context/auto-compact-reader.d.ts +0 -2
  550. package/dist/services/context/auto-compact-reader.js +0 -7
  551. package/dist/services/context/auto-compact-types.d.ts +0 -11
  552. package/dist/services/context/auto-compact-types.js +0 -1
  553. package/dist/services/context/build-dispatch-system-prompt.d.ts +11 -29
  554. package/dist/services/context/build-dispatch-system-prompt.js +8 -27
  555. package/dist/services/context/codegraph-unavailable-block.d.ts +38 -0
  556. package/dist/services/context/codegraph-unavailable-block.js +77 -0
  557. package/dist/services/context/context-audit-hint.d.ts +0 -1
  558. package/dist/services/context/context-audit-hint.js +0 -1
  559. package/dist/services/context/context-audit.d.ts +0 -1
  560. package/dist/services/context/context-audit.js +0 -1
  561. package/dist/services/context/harness-window-config.d.ts +0 -4
  562. package/dist/services/context/harness-window-config.js +0 -4
  563. package/dist/services/context/main-session-monitor.d.ts +0 -2
  564. package/dist/services/context/main-session-monitor.js +0 -2
  565. package/dist/services/context/memory-index-reader.d.ts +0 -2
  566. package/dist/services/context/memory-index-reader.js +0 -1
  567. package/dist/services/context/memory-preflight-config.d.ts +0 -1
  568. package/dist/services/context/memory-preflight-service.d.ts +0 -1
  569. package/dist/services/context/memory-preflight-service.js +0 -3
  570. package/dist/services/context/memory-preflight-support.d.ts +0 -5
  571. package/dist/services/context/post-compact-reinjection.d.ts +0 -1
  572. package/dist/services/context/post-compact-reinjection.js +0 -1
  573. package/dist/services/context/summary-view.d.ts +0 -1
  574. package/dist/services/context/summary-view.js +0 -1
  575. package/dist/services/crystallization/crystallization-service.d.ts +5 -11
  576. package/dist/services/crystallization/crystallization-service.js +3 -11
  577. package/dist/services/crystallization/crystallization-store.d.ts +6 -6
  578. package/dist/services/dispatch/await-batch-helpers.js +0 -3
  579. package/dist/services/dispatch/await-batch.d.ts +0 -1
  580. package/dist/services/dispatch/await-batch.js +0 -4
  581. package/dist/services/dispatch/batch-counter.js +0 -1
  582. package/dist/services/dispatch/conflict-replay.d.ts +0 -1
  583. package/dist/services/dispatch/conflict-replay.js +0 -1
  584. package/dist/services/dispatch/contract-store.d.ts +0 -2
  585. package/dist/services/dispatch/contract-store.js +0 -2
  586. package/dist/services/dispatch/dispatch-record-input-types.d.ts +0 -2
  587. package/dist/services/dispatch/dispatch-record-types.d.ts +0 -10
  588. package/dist/services/dispatch/dispatch-record-upgrade-fields.js +0 -7
  589. package/dist/services/dispatch/dispatch-record-upgrade-guards.js +0 -2
  590. package/dist/services/dispatch/dispatch-record-writer.d.ts +0 -5
  591. package/dist/services/dispatch/dispatch-record-writer.js +0 -21
  592. package/dist/services/dispatch/dispatch-sub-agent.d.ts +0 -1
  593. package/dist/services/dispatch/dispatch-sub-agent.js +0 -1
  594. package/dist/services/dispatch/e2e-fixtures.js +0 -1
  595. package/dist/services/dispatch/file-overlap-wave-planner.d.ts +0 -1
  596. package/dist/services/dispatch/file-overlap-wave-planner.js +0 -1
  597. package/dist/services/dispatch/isolation-lease.d.ts +0 -2
  598. package/dist/services/dispatch/isolation-lease.js +0 -2
  599. package/dist/services/dispatch/service-shutdown.js +0 -1
  600. package/dist/services/dispatch/session-capsule.js +0 -1
  601. package/dist/services/dispatch/slice-dag-types.d.ts +0 -1
  602. package/dist/services/dispatch/slice-dag.js +0 -2
  603. package/dist/services/dispatch/stage-enum.d.ts +0 -1
  604. package/dist/services/dispatch/stage-enum.js +0 -1
  605. package/dist/services/dispatch/startup-timeout.d.ts +0 -1
  606. package/dist/services/dispatch/sub-agent-batch-await.js +0 -3
  607. package/dist/services/dispatch/sub-agent-dispatcher-types.d.ts +0 -1
  608. package/dist/services/dispatch/sub-agent-dispatcher.js +0 -2
  609. package/dist/services/dispatch/test-tool-detection.d.ts +0 -3
  610. package/dist/services/dispatch/test-tool-detection.js +0 -2
  611. package/dist/services/distribution/mcp-install-runner.d.ts +21 -0
  612. package/dist/services/distribution/mcp-install-runner.js +59 -0
  613. package/dist/services/distribution/mcp-install.d.ts +95 -0
  614. package/dist/services/distribution/mcp-install.js +179 -0
  615. package/dist/services/distribution/plugin-manifest.d.ts +97 -0
  616. package/dist/services/distribution/plugin-manifest.js +126 -0
  617. package/dist/services/doctor/doctor-service/checks/codegraph-capability.js +19 -12
  618. package/dist/services/doctor/doctor-service/checks/codegraph-index-integrity.js +1 -2
  619. package/dist/services/doctor/doctor-service/checks/l3-memory-health.d.ts +0 -2
  620. package/dist/services/doctor/doctor-service/checks/l3-memory-health.js +0 -2
  621. package/dist/services/doctor/doctor-service/checks/l3-orphan-sessions.d.ts +0 -1
  622. package/dist/services/doctor/doctor-service/checks/l3-orphan-sessions.js +0 -1
  623. package/dist/services/doctor/doctor-service/checks/multi-binary-drift.d.ts +0 -1
  624. package/dist/services/doctor/doctor-service/checks/multi-binary-drift.js +0 -3
  625. package/dist/services/doctor/doctor-service/checks/workspace-layout.js +0 -2
  626. package/dist/services/doctor/doctor-service/index.d.ts +0 -1
  627. package/dist/services/doctor/doctor-service/index.js +0 -1
  628. package/dist/services/doctor/doctor-service/plugin-registry.d.ts +0 -2
  629. package/dist/services/doctor/doctor-service/plugin-registry.js +0 -2
  630. package/dist/services/doctor/doctor-service/probe-types.d.ts +0 -4
  631. package/dist/services/doctor/doctor-service/report/final-summary.d.ts +0 -1
  632. package/dist/services/doctor/doctor-service/report/final-summary.js +0 -1
  633. package/dist/services/doctor/doctor-service/types.d.ts +0 -5
  634. package/dist/services/doctor/doctor-service/types.js +0 -1
  635. package/dist/services/doctor/doctor-service.d.ts +0 -1
  636. package/dist/services/doctor/doctor-service.js +0 -2
  637. package/dist/services/env/shell-probe.js +0 -1
  638. package/dist/services/evidence/evidence-generator.js +0 -8
  639. package/dist/services/evolution/evolution-constraints.d.ts +0 -2
  640. package/dist/services/evolution/evolution-constraints.js +0 -2
  641. package/dist/services/evolution/evolution-service.d.ts +2 -12
  642. package/dist/services/evolution/evolution-service.js +0 -9
  643. package/dist/services/evolution/evolution-store.d.ts +6 -8
  644. package/dist/services/evolution/evolution-store.js +1 -3
  645. package/dist/services/evolution/evolution-types.d.ts +0 -2
  646. package/dist/services/evolution/evolution-types.js +0 -6
  647. package/dist/services/evolution/independent-evaluator-runner.d.ts +0 -3
  648. package/dist/services/evolution/independent-evaluator-runner.js +0 -1
  649. package/dist/services/evolution/regression-skeptic-runner.d.ts +0 -1
  650. package/dist/services/feedback/feedback-promotion-service.d.ts +0 -8
  651. package/dist/services/feedback/feedback-promotion-service.js +0 -10
  652. package/dist/services/feedback/promotion-artifact-evidence.d.ts +0 -1
  653. package/dist/services/feedback/promotion-artifact-evidence.js +0 -1
  654. package/dist/services/final-review/final-review-evidence-budget.d.ts +0 -3
  655. package/dist/services/final-review/final-review-evidence-budget.js +0 -5
  656. package/dist/services/final-review/final-review-evidence-sources.d.ts +0 -1
  657. package/dist/services/final-review/final-review-evidence-sources.js +0 -1
  658. package/dist/services/final-review/final-review-output-budget.d.ts +0 -1
  659. package/dist/services/final-review/final-review-output-budget.js +0 -3
  660. package/dist/services/final-review/final-review-service.d.ts +0 -1
  661. package/dist/services/final-review/final-review-service.js +0 -1
  662. package/dist/services/fixture/fixture-capture-service.js +0 -1
  663. package/dist/services/fixture/fixture-sanitize-service.d.ts +0 -3
  664. package/dist/services/fixture/fixture-sanitize-service.js +0 -3
  665. package/dist/services/fresh-context/config.js +0 -1
  666. package/dist/services/fresh-context/fresh-context-block.js +0 -1
  667. package/dist/services/fresh-context/trigger-scan.d.ts +0 -1
  668. package/dist/services/fresh-context/trigger-scan.js +0 -1
  669. package/dist/services/fuzzy-matching/fzf-pick-service.d.ts +0 -1
  670. package/dist/services/fuzzy-matching/fzf-pick-service.js +0 -1
  671. package/dist/services/handoff/handoff-parser.d.ts +0 -1
  672. package/dist/services/handoff/handoff-parser.js +0 -1
  673. package/dist/services/handoff/handoff-types.d.ts +0 -1
  674. package/dist/services/handoff/handoff-types.js +0 -1
  675. package/dist/services/handoff/handoff-writer.d.ts +0 -1
  676. package/dist/services/handoff/handoff-writer.js +0 -1
  677. package/dist/services/hooks/auto-compact-hook-install.d.ts +0 -1
  678. package/dist/services/hooks/auto-compact-hook-install.js +0 -1
  679. package/dist/services/hooks/mcp-surface-gate.d.ts +19 -0
  680. package/dist/services/hooks/mcp-surface-gate.js +87 -0
  681. package/dist/services/hooks/output.d.ts +0 -1
  682. package/dist/services/hooks/output.js +0 -1
  683. package/dist/services/hooks/pre-tool-code-gate.d.ts +0 -1
  684. package/dist/services/hooks/pre-tool-code-gate.js +0 -1
  685. package/dist/services/hooks/presence-marker-detector.js +0 -1
  686. package/dist/services/hooks/worktree-authorization-gate.d.ts +0 -3
  687. package/dist/services/hooks/worktree-authorization-gate.js +0 -1
  688. package/dist/services/ide/adapters/claude-code-adapter.d.ts +4 -40
  689. package/dist/services/ide/adapters/claude-code-adapter.js +48 -182
  690. package/dist/services/ide/adapters/claude-code-local-state.d.ts +28 -0
  691. package/dist/services/ide/adapters/claude-code-local-state.js +112 -0
  692. package/dist/services/ide/adapters/claude-code-model-window.d.ts +37 -0
  693. package/dist/services/ide/adapters/claude-code-model-window.js +113 -0
  694. package/dist/services/ide/adapters/qoder-adapter.d.ts +0 -3
  695. package/dist/services/ide/adapters/qoder-adapter.js +0 -5
  696. package/dist/services/ide/adapters/tongyi-lingma-adapter.d.ts +0 -2
  697. package/dist/services/ide/adapters/tongyi-lingma-adapter.js +0 -2
  698. package/dist/services/ide/adapters/trae-adapter.d.ts +0 -3
  699. package/dist/services/ide/adapters/trae-adapter.js +3 -6
  700. package/dist/services/ide/adapters/zcode-adapter.js +0 -2
  701. package/dist/services/ide/current-model-detector.js +0 -1
  702. package/dist/services/ide/hook-protocol.d.ts +0 -2
  703. package/dist/services/ide/hook-protocol.js +0 -2
  704. package/dist/services/ide/ide-compact-types.d.ts +0 -7
  705. package/dist/services/ide/ide-mcp-install-types.d.ts +78 -0
  706. package/dist/services/ide/ide-mcp-install-types.js +104 -0
  707. package/dist/services/ide/ide-types.d.ts +45 -13
  708. package/dist/services/ide/mcp-tool-matcher.d.ts +34 -0
  709. package/dist/services/ide/mcp-tool-matcher.js +84 -0
  710. package/dist/services/ide/resource-profile.d.ts +0 -1
  711. package/dist/services/job/job-commit-verification.d.ts +0 -2
  712. package/dist/services/job/job-commit-verification.js +0 -2
  713. package/dist/services/job/job-orchestrator.d.ts +0 -1
  714. package/dist/services/job/job-orchestrator.js +0 -1
  715. package/dist/services/job/job-progress-store.d.ts +0 -2
  716. package/dist/services/job/job-progress-store.js +0 -3
  717. package/dist/services/job/job-types.js +0 -1
  718. package/dist/services/job-snapshot/snapshot.js +0 -1
  719. package/dist/services/karpathy-cost/karpathy-cost-check-service.js +0 -1
  720. package/dist/services/legacy/legacy-detector.js +0 -1
  721. package/dist/services/lint/npx-resolver.js +7 -0
  722. package/dist/services/log/log-commands-service.d.ts +0 -2
  723. package/dist/services/log/log-commands-service.js +0 -2
  724. package/dist/services/log/logger.d.ts +0 -1
  725. package/dist/services/log/logger.js +0 -1
  726. package/dist/services/log/redact.d.ts +0 -1
  727. package/dist/services/log/redact.js +0 -1
  728. package/dist/services/log/retention.d.ts +0 -1
  729. package/dist/services/log/retention.js +0 -1
  730. package/dist/services/loop/loop-bee-relation-service.d.ts +3 -3
  731. package/dist/services/loop/loop-bee-relation-service.js +14 -13
  732. package/dist/services/loop/loop-bee-relation-store.d.ts +9 -10
  733. package/dist/services/loop/loop-bee-relation-store.js +1 -2
  734. package/dist/services/loop/loop-bee-relation-types.d.ts +1 -1
  735. package/dist/services/loop/loop-bee-relation-types.js +1 -1
  736. package/dist/services/loop/loop-release-service.d.ts +3 -3
  737. package/dist/services/loop/loop-release-service.js +1 -1
  738. package/dist/services/loop/loop-release-store.d.ts +6 -7
  739. package/dist/services/loop/loop-release-store.js +0 -1
  740. package/dist/services/loop/monotonic-guard.d.ts +0 -1
  741. package/dist/services/loop/monotonic-guard.js +0 -1
  742. package/dist/services/mcp/cli-executor.d.ts +36 -0
  743. package/dist/services/mcp/cli-executor.js +97 -0
  744. package/dist/services/mcp/json-rpc.d.ts +81 -0
  745. package/dist/services/mcp/json-rpc.js +116 -0
  746. package/dist/services/mcp/memory-tool.d.ts +3 -0
  747. package/dist/services/mcp/memory-tool.js +62 -0
  748. package/dist/services/mcp/server-main.d.ts +1 -0
  749. package/dist/services/mcp/server-main.js +66 -0
  750. package/dist/services/mcp/server.d.ts +22 -0
  751. package/dist/services/mcp/server.js +152 -0
  752. package/dist/services/mcp/surface.d.ts +62 -0
  753. package/dist/services/mcp/surface.js +198 -0
  754. package/dist/services/mcp/tool-core.d.ts +42 -0
  755. package/dist/services/mcp/tool-core.js +137 -0
  756. package/dist/services/mcp/tools.d.ts +13 -0
  757. package/dist/services/mcp/tools.js +58 -0
  758. package/dist/services/memory/memory-ingest-service.js +0 -1
  759. package/dist/services/memory/project-context-service.d.ts +0 -1
  760. package/dist/services/memory/project-context-service.js +0 -1
  761. package/dist/services/memory/project-memory-service/index/reindex.d.ts +0 -2
  762. package/dist/services/memory/project-memory-service/index/reindex.js +0 -1
  763. package/dist/services/memory/project-memory-service/index/search.d.ts +0 -1
  764. package/dist/services/memory/project-memory-service/index/search.js +0 -1
  765. package/dist/services/memory/project-memory-service/memory-kinds.d.ts +0 -1
  766. package/dist/services/memory/project-memory-service/memory-kinds.js +0 -1
  767. package/dist/services/memory/project-memory-service/parsers/frontmatter.d.ts +0 -1
  768. package/dist/services/memory/project-memory-service/parsers/frontmatter.js +0 -1
  769. package/dist/services/memory/project-memory-service.js +0 -1
  770. package/dist/services/mode/mode-enforcement.js +0 -1
  771. package/dist/services/mode/mode-status-service.d.ts +0 -2
  772. package/dist/services/mode/mode-status-service.js +0 -2
  773. package/dist/services/observability/aggregation.d.ts +0 -4
  774. package/dist/services/observability/aggregation.js +0 -6
  775. package/dist/services/observability/observability-schema.js +0 -1
  776. package/dist/services/observability/observability-service.d.ts +0 -5
  777. package/dist/services/observability/observability-service.js +0 -4
  778. package/dist/services/observability/report-formatter.d.ts +0 -2
  779. package/dist/services/observability/report-formatter.js +0 -2
  780. package/dist/services/openspec/artifact-boundary.d.ts +0 -4
  781. package/dist/services/openspec/artifact-boundary.js +0 -4
  782. package/dist/services/openspec/coverage-evidence-reader.d.ts +0 -1
  783. package/dist/services/openspec/coverage-evidence-reader.js +0 -1
  784. package/dist/services/polyrepo/polyrepo-dispatcher.js +0 -1
  785. package/dist/services/polyrepo/polyrepo-scanner.js +0 -1
  786. package/dist/services/polyrepo/polyrepo-service.js +0 -1
  787. package/dist/services/polyrepo/polyrepo-types.d.ts +0 -1
  788. package/dist/services/prd/best-practice-auto-trigger.d.ts +0 -2
  789. package/dist/services/prd/best-practice-auto-trigger.js +0 -2
  790. package/dist/services/prd/gate-evidence-derivation.d.ts +0 -4
  791. package/dist/services/prd/gate-evidence-derivation.js +0 -5
  792. package/dist/services/prd/handoff-auto-regen.js +0 -5
  793. package/dist/services/prd/handoff-frontmatter-shape.d.ts +0 -2
  794. package/dist/services/prd/handoff-frontmatter-shape.js +0 -2
  795. package/dist/services/prd/handoff-frontmatter.d.ts +0 -1
  796. package/dist/services/prd/handoff-frontmatter.js +0 -2
  797. package/dist/services/prd/handoff-gate-evidence.d.ts +0 -1
  798. package/dist/services/prd/handoff-gate-evidence.js +0 -4
  799. package/dist/services/prd/handoff-path-resolution.d.ts +0 -7
  800. package/dist/services/prd/handoff-path-resolution.js +0 -10
  801. package/dist/services/prd/handoff-service.d.ts +0 -2
  802. package/dist/services/prd/handoff-service.js +0 -2
  803. package/dist/services/prd/handoff-types.d.ts +0 -2
  804. package/dist/services/prd/handoff-types.js +0 -1
  805. package/dist/services/prd/project-scan-bootstrap-service.d.ts +0 -1
  806. package/dist/services/prd/project-scan-bootstrap-service.js +0 -4
  807. package/dist/services/prd/project-scan-types.d.ts +0 -1
  808. package/dist/services/prd/project-scan-types.js +0 -1
  809. package/dist/services/preferences/preferences-service.d.ts +0 -1
  810. package/dist/services/preferences/preferences-service.js +0 -5
  811. package/dist/services/preferences/preferences-types.d.ts +0 -14
  812. package/dist/services/preferences/preferences-types.js +0 -4
  813. package/dist/services/progress/progress-service.js +0 -1
  814. package/dist/services/qa/bdd-test-style-verifier.d.ts +0 -1
  815. package/dist/services/qa/bdd-test-style-verifier.js +0 -1
  816. package/dist/services/qa/browser-event-logger.d.ts +0 -1
  817. package/dist/services/qa/browser-event-logger.js +0 -1
  818. package/dist/services/qa/browser-restart-detector.d.ts +0 -1
  819. package/dist/services/qa/browser-restart-detector.js +0 -1
  820. package/dist/services/qa/browser-reuse-hint.d.ts +0 -1
  821. package/dist/services/qa/browser-reuse-hint.js +0 -1
  822. package/dist/services/qa/qa-business-review-state.js +0 -2
  823. package/dist/services/qa/screenshot-archive-service.d.ts +0 -1
  824. package/dist/services/qa/screenshot-archive-service.js +0 -1
  825. package/dist/services/rd/impl.js +0 -1
  826. package/dist/services/rd/rd-service.d.ts +0 -5
  827. package/dist/services/rd/rd-service.js +0 -5
  828. package/dist/services/rd/reviewer-dispatch-policy.d.ts +0 -4
  829. package/dist/services/rd/reviewer-dispatch-policy.js +0 -4
  830. package/dist/services/rd/standards-diagnostic.js +0 -1
  831. package/dist/services/rd/tactical-stage.js +0 -1
  832. package/dist/services/rd-swarm/rd-swarm-types.d.ts +0 -1
  833. package/dist/services/rd-swarm/rd-swarm-types.js +0 -1
  834. package/dist/services/readonly-surface/argv-guard.d.ts +32 -0
  835. package/dist/services/readonly-surface/argv-guard.js +164 -0
  836. package/dist/services/readonly-surface/readonly-whitelist.d.ts +147 -0
  837. package/dist/services/readonly-surface/readonly-whitelist.js +107 -0
  838. package/dist/services/readonly-surface/whitelist-generator.d.ts +64 -0
  839. package/dist/services/readonly-surface/whitelist-generator.js +212 -0
  840. package/dist/services/recommendations/installed-capability-detector.d.ts +0 -1
  841. package/dist/services/recommendations/installed-capability-detector.js +0 -1
  842. package/dist/services/release/version-precheck-service.d.ts +0 -2
  843. package/dist/services/release/version-precheck-service.js +0 -3
  844. package/dist/services/retrospective/retrospective-index.d.ts +0 -1
  845. package/dist/services/retrospective/retrospective-index.js +0 -1
  846. package/dist/services/retrospective/retrospective-show.d.ts +0 -1
  847. package/dist/services/retrospective/retrospective-show.js +0 -1
  848. package/dist/services/reviewer/model-family.js +0 -1
  849. package/dist/services/reviewer/reviewer-config.js +0 -1
  850. package/dist/services/reviewer/reviewer-service.d.ts +0 -1
  851. package/dist/services/reviewer/reviewer-service.js +0 -3
  852. package/dist/services/reviewer/selection-strategies.js +0 -1
  853. package/dist/services/runtime/runtime-detector.js +0 -1
  854. package/dist/services/runtime/runtime-service.d.ts +0 -2
  855. package/dist/services/runtime/vendor-adapter.d.ts +0 -7
  856. package/dist/services/runtime/vendors/claude-code.js +0 -1
  857. package/dist/services/runtime/vendors/codex.js +0 -1
  858. package/dist/services/runtime/vendors/copilot.js +0 -1
  859. package/dist/services/sc/sc-service.js +0 -6
  860. package/dist/services/scan/acceptance-coverage-service.js +0 -2
  861. package/dist/services/scan/api-diff-recorded.d.ts +0 -1
  862. package/dist/services/scan/api-diff-recorded.js +0 -1
  863. package/dist/services/scan/api-diff-service.d.ts +0 -1
  864. package/dist/services/scan/api-diff-service.js +0 -1
  865. package/dist/services/scan/api-diff-types.d.ts +0 -1
  866. package/dist/services/scan/api-diff-types.js +0 -1
  867. package/dist/services/scan/archetype-service.js +0 -1
  868. package/dist/services/scan/file-size-policy.d.ts +0 -1
  869. package/dist/services/scan/file-size-policy.js +0 -5
  870. package/dist/services/scan/file-size-scan.d.ts +0 -1
  871. package/dist/services/security/safe-settings-path.js +0 -1
  872. package/dist/services/session/binding-store.d.ts +0 -4
  873. package/dist/services/session/binding-store.js +0 -7
  874. package/dist/services/session/caller-binding-service.d.ts +0 -6
  875. package/dist/services/session/caller-binding-service.js +0 -4
  876. package/dist/services/session/caller-id-types.d.ts +0 -3
  877. package/dist/services/session/caller-id-types.js +0 -2
  878. package/dist/services/session/getSessionDir.js +0 -1
  879. package/dist/services/session/index.js +0 -1
  880. package/dist/services/session/platform-fallbacks.d.ts +0 -3
  881. package/dist/services/session/platform-fallbacks.js +0 -3
  882. package/dist/services/session/resolve-caller-id.d.ts +0 -2
  883. package/dist/services/session/resolve-caller-id.js +0 -2
  884. package/dist/services/session/session-binding-bridge.d.ts +0 -2
  885. package/dist/services/session/session-binding-bridge.js +0 -15
  886. package/dist/services/session/session-checkpoint-service.d.ts +0 -1
  887. package/dist/services/session/session-checkpoint-service.js +0 -1
  888. package/dist/services/session/session-manager.d.ts +0 -8
  889. package/dist/services/session/session-manager.js +0 -19
  890. package/dist/services/session/session-resume-service.d.ts +0 -1
  891. package/dist/services/session/session-resume-service.js +0 -1
  892. package/dist/services/share/bundle-reader.d.ts +2 -5
  893. package/dist/services/share/bundle-reader.js +6 -8
  894. package/dist/services/share/bundle-writer.d.ts +2 -2
  895. package/dist/services/skill/resume-detector.js +0 -3
  896. package/dist/services/skill/skill-scheduler.d.ts +0 -1
  897. package/dist/services/skill/skill-scheduler.js +0 -1
  898. package/dist/services/skill/skill-search-service.d.ts +0 -2
  899. package/dist/services/skill/skill-search-service.js +0 -2
  900. package/dist/services/skillhub/release-diff.d.ts +2 -2
  901. package/dist/services/skillhub/release-export.d.ts +2 -2
  902. package/dist/services/skillhub/release-gc-blobs.d.ts +2 -2
  903. package/dist/services/skillhub/release-import.d.ts +2 -2
  904. package/dist/services/skillhub/release-import.js +2 -1
  905. package/dist/services/skillhub/release-retain.d.ts +2 -2
  906. package/dist/services/skillhub/release-retain.js +2 -1
  907. package/dist/services/skillhub/sqlite-store.d.ts +3 -3
  908. package/dist/services/skillhub/sqlite-store.js +4 -5
  909. package/dist/services/skills/hooks-codegate-superpowers.d.ts +1 -3
  910. package/dist/services/skills/hooks-codegate-superpowers.js +26 -14
  911. package/dist/services/skills/hooks-settings-service.d.ts +0 -2
  912. package/dist/services/skills/hooks-settings-service.js +10 -8
  913. package/dist/services/skills/presence-lease-service.d.ts +0 -1
  914. package/dist/services/skills/presence-lease-service.js +0 -1
  915. package/dist/services/skills/session-start-hook-constants.d.ts +0 -4
  916. package/dist/services/skills/session-start-hook-constants.js +0 -4
  917. package/dist/services/skills/skill-presence-service.d.ts +0 -8
  918. package/dist/services/skills/skill-presence-service.js +0 -13
  919. package/dist/services/skills/skill-statusline-model.d.ts +0 -6
  920. package/dist/services/skills/skill-statusline-model.js +1 -4
  921. package/dist/services/skills/skill-statusline-renderer.d.ts +0 -1
  922. package/dist/services/skills/skill-statusline-renderer.js +0 -12
  923. package/dist/services/skills/skill-statusline-service.js +0 -6
  924. package/dist/services/skills/skill-statusline-sid-suffix.d.ts +0 -2
  925. package/dist/services/skills/skill-statusline-sid-suffix.js +0 -2
  926. package/dist/services/skills/statusline-palette.d.ts +0 -2
  927. package/dist/services/skills/statusline-palette.js +0 -3
  928. package/dist/services/slice/slice-archive-service.js +0 -1
  929. package/dist/services/slice/slice-benchmark-service.d.ts +0 -1
  930. package/dist/services/slice/slice-benchmark-service.js +0 -1
  931. package/dist/services/slice/slice-check-service.js +0 -6
  932. package/dist/services/slice/slice-check-types.d.ts +0 -1
  933. package/dist/services/slice/slice-pick-service.d.ts +0 -1
  934. package/dist/services/slice/slice-pick-service.js +0 -1
  935. package/dist/services/slice/slice-review-state.js +0 -2
  936. package/dist/services/sqlite/sqlite-driver.d.ts +118 -0
  937. package/dist/services/sqlite/sqlite-driver.js +159 -0
  938. package/dist/services/standards/ide-aware-standards-service.d.ts +0 -2
  939. package/dist/services/standards/ide-aware-standards-service.js +0 -1
  940. package/dist/services/standards/loop-engineering-readiness-lint.d.ts +0 -1
  941. package/dist/services/standards/loop-engineering-readiness-lint.js +0 -1
  942. package/dist/services/standards/migrate-claude-rules-service.js +0 -3
  943. package/dist/services/standards/migrate-service.d.ts +0 -1
  944. package/dist/services/standards/migrate-service.js +0 -1
  945. package/dist/services/standards/missing-standards-detector.d.ts +0 -2
  946. package/dist/services/standards/missing-standards-detector.js +0 -3
  947. package/dist/services/standards/project-standards-service.d.ts +0 -1
  948. package/dist/services/standards/project-standards-service.js +0 -1
  949. package/dist/services/standards/standards-render.d.ts +0 -1
  950. package/dist/services/standards/standards-render.js +0 -1
  951. package/dist/services/standards/ui-library-dispatch-block.d.ts +0 -1
  952. package/dist/services/standards/ui-library-dispatch-block.js +0 -1
  953. package/dist/services/tech/tech-change-id-service.d.ts +0 -7
  954. package/dist/services/tech/tech-change-id-service.js +0 -7
  955. package/dist/services/tech/tech-service.js +0 -5
  956. package/dist/services/verdict/envelope-parsers.d.ts +0 -2
  957. package/dist/services/verdict/envelope-parsers.js +0 -2
  958. package/dist/services/verdict/envelopes.d.ts +0 -1
  959. package/dist/services/vm/vm-lease.js +0 -1
  960. package/dist/services/web/aria-node.d.ts +0 -1
  961. package/dist/services/web/bounded-output.d.ts +0 -1
  962. package/dist/services/web/bounded-output.js +0 -1
  963. package/dist/services/web/browser-acquire.js +0 -1
  964. package/dist/services/web/browser-cache-probe.js +0 -1
  965. package/dist/services/web/browser-session-manager.js +0 -1
  966. package/dist/services/web/daemon-entry.js +0 -1
  967. package/dist/services/web/daemon-registry.js +0 -1
  968. package/dist/services/web/daemon-supervisor.d.ts +4 -3
  969. package/dist/services/web/daemon-supervisor.js +4 -4
  970. package/dist/services/web/playwright-loader.js +0 -1
  971. package/dist/services/web/playwright-types.d.ts +0 -1
  972. package/dist/services/web/snapshot-pruner.js +0 -1
  973. package/dist/services/web/untrusted-envelope.d.ts +0 -1
  974. package/dist/services/web/web-artifact-paths.js +0 -1
  975. package/dist/services/web/web-client.d.ts +0 -1
  976. package/dist/services/web/web-daemon-service.js +0 -1
  977. package/dist/services/web/web-fallback.d.ts +0 -1
  978. package/dist/services/web/web-fallback.js +0 -1
  979. package/dist/services/web/web-install-service.js +0 -1
  980. package/dist/services/web/web-login-profile.js +0 -1
  981. package/dist/services/web/web-protocol.d.ts +0 -1
  982. package/dist/services/web/web-protocol.js +0 -1
  983. package/dist/services/web/web-status-report.js +0 -1
  984. package/dist/services/workflow/artifact-paths.js +0 -3
  985. package/dist/services/workflow/autonomous-resume-writer.js +0 -2
  986. package/dist/services/workflow/pipeline-verify-gate-support.d.ts +0 -5
  987. package/dist/services/workflow/pipeline-verify-gate-support.js +0 -11
  988. package/dist/services/workflow/pipeline-verify-service.d.ts +0 -2
  989. package/dist/services/workflow/pipeline-verify-service.js +0 -15
  990. package/dist/services/workflow/pipeline-verify-types.d.ts +0 -10
  991. package/dist/services/workflow/pipeline-verify-types.js +0 -2
  992. package/dist/services/workflow/plan-reader.d.ts +0 -1
  993. package/dist/services/workflow/plan-reader.js +0 -5
  994. package/dist/services/workflow/plan-refresher.js +0 -2
  995. package/dist/services/workflow/plan-trigger-detector.d.ts +0 -2
  996. package/dist/services/workflow/plan-trigger-detector.js +0 -3
  997. package/dist/services/workflow/workflow-autonomous-resume-helpers.js +0 -5
  998. package/dist/services/workflow/workflow-autonomous-service.js +0 -2
  999. package/dist/services/workflow/workflow-autonomous-types.d.ts +0 -2
  1000. package/dist/services/workflow/workflow-autonomous-types.js +0 -2
  1001. package/dist/services/workflow/workflow-graph-types.d.ts +0 -1
  1002. package/dist/services/workflow/workflow-graph-types.js +0 -1
  1003. package/dist/services/workflow/workflow-router-service.js +0 -4
  1004. package/dist/services/workflow/workflow-skip-service.d.ts +0 -1
  1005. package/dist/services/workflow/workflow-skip-service.js +0 -1
  1006. package/dist/services/workflow/workflow-spec-lint.d.ts +0 -2
  1007. package/dist/services/workflow/workflow-spec-lint.js +0 -2
  1008. package/dist/services/workflow/workflow-spec-types.d.ts +0 -1
  1009. package/dist/services/workflow/workflow-spec-types.js +0 -1
  1010. package/dist/services/workflow/workflow-spec-yaml.d.ts +0 -2
  1011. package/dist/services/workflow/workflow-spec-yaml.js +0 -2
  1012. package/dist/services/workflow/workflow-spec.js +0 -1
  1013. package/dist/services/workflow/workflow-state-store.js +0 -1
  1014. package/dist/services/workspace/claude-settings-template.d.ts +0 -4
  1015. package/dist/services/workspace/claude-settings-template.js +0 -4
  1016. package/dist/services/workspace/migrate-1-4-1-service.d.ts +0 -1
  1017. package/dist/services/workspace/migrate-1-4-1-service.js +0 -1
  1018. package/dist/services/workspace/migrate-service.js +0 -8
  1019. package/dist/services/workspace/migrate-types.d.ts +0 -4
  1020. package/dist/services/workspace/migrate-types.js +0 -1
  1021. package/dist/services/workspace/reconcile-migrate.d.ts +0 -3
  1022. package/dist/services/workspace/reconcile-migrate.js +0 -5
  1023. package/dist/services/workspace/reconcile-service.d.ts +0 -3
  1024. package/dist/services/workspace/reconcile-service.js +0 -7
  1025. package/dist/services/workspace/reconcile-types.d.ts +0 -5
  1026. package/dist/services/workspace/sid-naming-guard.d.ts +0 -1
  1027. package/dist/services/workspace/sid-naming-guard.js +0 -1
  1028. package/dist/services/workspace/templates/project-scan/index.d.ts +0 -3
  1029. package/dist/services/workspace/templates/project-scan/index.js +0 -3
  1030. package/dist/services/workspace/workspace-claude-settings-materializer.d.ts +0 -1
  1031. package/dist/services/workspace/workspace-claude-settings-materializer.js +0 -4
  1032. package/dist/services/workspace/workspace-service.d.ts +0 -7
  1033. package/dist/services/workspace/workspace-service.js +0 -16
  1034. package/dist/services/worktree/playwright-profile.js +0 -1
  1035. package/dist/services/worktree/worktree-lease-types.d.ts +0 -1
  1036. package/dist/services/worktree/worktree-lease-types.js +0 -1
  1037. package/dist/services/worktree/worktree-lease.d.ts +0 -2
  1038. package/dist/services/worktree/worktree-lease.js +0 -2
  1039. package/dist/shared/format-md-compact.d.ts +0 -2
  1040. package/dist/shared/format-md-compact.js +0 -2
  1041. package/dist/shared/incrementing-number.d.ts +0 -1
  1042. package/dist/shared/incrementing-number.js +0 -1
  1043. package/dist/shared/path-utils.d.ts +0 -1
  1044. package/dist/shared/path-utils.js +0 -1
  1045. package/dist/shared/runtime-root.d.ts +0 -1
  1046. package/dist/shared/runtime-root.js +0 -1
  1047. package/dist/shared/stale-policy.d.ts +0 -1
  1048. package/dist/shared/stale-policy.js +0 -1
  1049. package/package.json +24 -11
  1050. package/scripts/canonical-store-link.mjs +296 -0
  1051. package/scripts/canonical-store-prune.mjs +131 -0
  1052. package/scripts/canonical-store.mjs +298 -0
  1053. package/scripts/install-skills-bundles.mjs +233 -0
  1054. package/scripts/install-skills-fs.mjs +148 -0
  1055. package/scripts/install-skills-ide.mjs +279 -0
  1056. package/scripts/install-skills-output-style-default.mjs +196 -0
  1057. package/scripts/install-skills-output-styles.mjs +121 -0
  1058. package/scripts/install-skills-report.mjs +42 -0
  1059. package/scripts/install-skills-user-config.mjs +198 -0
  1060. package/scripts/install-skills.mjs +41 -1279
  1061. package/scripts/watch-tree.mjs +140 -0
  1062. package/scripts/watch.mjs +4 -126
  1063. package/skills/peaks-audit/SKILL.md +3 -3
  1064. package/skills/peaks-status/SKILL.md +31 -13
  1065. package/dist/services/codegraph/codegraph-include-reconciler.d.ts +0 -10
  1066. package/dist/services/codegraph/codegraph-include-reconciler.js +0 -160
@@ -0,0 +1,95 @@
1
+ import type { IdeAdapter, IdeId } from '../ide/ide-types.js';
2
+ import { type IdeMcpInstallProfile } from '../ide/ide-mcp-install-types.js';
3
+ /** One process the plan wants run, as command + args. Never a joined string. */
4
+ export interface McpInstallCommand {
5
+ readonly command: string;
6
+ readonly args: readonly string[];
7
+ }
8
+ /** What one operation is for, so a report can say which step did what. */
9
+ export type McpInstallOperation = 'remove' | 'add';
10
+ export interface McpInstallStep {
11
+ readonly operation: McpInstallOperation;
12
+ /** The scope this step acts on; the target scope for an `add`. */
13
+ readonly scope: string;
14
+ readonly command: McpInstallCommand;
15
+ }
16
+ /** What a runner says happened. `detail` is surfaced verbatim when it did not. */
17
+ export interface McpInstallOutcome {
18
+ readonly ok: boolean;
19
+ readonly detail: string;
20
+ /**
21
+ * `false` only when the harness NEVER RENDERED A VERDICT — the deadline killed
22
+ * it, or it never launched. A non-zero exit answered ("no such registration"),
23
+ * so an absent value reads as `true`, as does every outcome that predates this
24
+ * field.
25
+ */
26
+ readonly answered?: boolean;
27
+ }
28
+ /** The seam: a test supplies one, the CLI supplies the spawning one below. */
29
+ export type McpInstallRunner = (command: McpInstallCommand) => McpInstallOutcome;
30
+ export interface McpInstallReport {
31
+ readonly serverName: string;
32
+ /** Scopes where the removal reported success — i.e. there was something to remove. */
33
+ readonly removed: readonly string[];
34
+ /** Scopes where the removal reported failure — normally "nothing was there". */
35
+ readonly absent: readonly string[];
36
+ /**
37
+ * Scopes whose removal never reached a verdict — the harness timed out or never
38
+ * launched — so it is neither `removed` nor honestly `absent`. Optional because
39
+ * the install sweep tolerates a failed removal (it is about to write) and never
40
+ * populates it; the uninstall sweep always does.
41
+ */
42
+ readonly unknown?: readonly string[];
43
+ readonly added: boolean;
44
+ readonly ok: boolean;
45
+ readonly detail: string;
46
+ }
47
+ /**
48
+ * The argv that launches THIS installation's read-only MCP server.
49
+ *
50
+ * An interpreter and an entry path, in array form: the same shape `mcp serve`
51
+ * spawns and the same one the read-only executor uses. A bare CLI name would be
52
+ * a `.cmd` shim on some platforms, and picking a spelling per platform is the
53
+ * branch this tree forbids — resolving the pair needs none.
54
+ */
55
+ export declare function resolveMcpServerArgv(): readonly string[];
56
+ /** The plan: one removal per declared scope, then the addition. Order is the contract. */
57
+ export declare function buildMcpInstallPlan(profile: IdeMcpInstallProfile, serverArgv: readonly string[]): readonly McpInstallStep[];
58
+ /** Every removal, then the addition. A failed removal is a fact, not a failure. */
59
+ export declare function runMcpInstallPlan(profile: IdeMcpInstallProfile, serverArgv: readonly string[], runner: McpInstallRunner): McpInstallReport;
60
+ /**
61
+ * The removal sweep on its own — what `uninstall` is, and all that it is.
62
+ *
63
+ * `exit 0` removed it, `exit != 0` answered "no" (absent, unchanged) — but a run the
64
+ * deadline killed, or one that never launched, ANSWERED NOTHING, and calling that
65
+ * "nothing was there" is the lie this sweep used to tell. Those scopes are `unknown`,
66
+ * and `ok` is false whenever any scope is unknown: with a scope the harness never
67
+ * spoke for, the removal is unconfirmed and the state is not known.
68
+ */
69
+ export declare function runMcpUninstallPlan(profile: IdeMcpInstallProfile, serverArgv: readonly string[], runner: McpInstallRunner): McpInstallReport;
70
+ /**
71
+ * One adapter's outcome. `skipped` is a FIRST-CLASS result and not an error: the
72
+ * install's contract with an adapter that declares no registration entry is
73
+ * silence, and a caller that has to distinguish "did nothing" from
74
+ * "failed" needs the distinction to be in the value, not in a log line.
75
+ */
76
+ export type AdapterMcpInstallResult = {
77
+ readonly ideId: IdeId;
78
+ readonly skipped: true;
79
+ readonly reason: string;
80
+ } | {
81
+ readonly ideId: IdeId;
82
+ readonly skipped: false;
83
+ readonly report: McpInstallReport;
84
+ };
85
+ export declare const NO_MCP_INSTALL_REASON = "adapter declares no mcpInstall profile";
86
+ /** Register this adapter's harness, or report that there is nothing to register. */
87
+ export declare function installMcpForAdapter(adapter: IdeAdapter, serverArgv: readonly string[], runner: McpInstallRunner): AdapterMcpInstallResult;
88
+ /** The same, for the removal side. */
89
+ export declare function uninstallMcpForAdapter(adapter: IdeAdapter, serverArgv: readonly string[], runner: McpInstallRunner): AdapterMcpInstallResult;
90
+ /**
91
+ * The production runner and its deadline live in `mcp-install-runner.ts` — split
92
+ * out only to keep this engine within the file-size cap. They are re-exported, so
93
+ * the boundary is invisible: every caller still imports them from here.
94
+ */
95
+ export { MCP_INSTALL_TIMEOUT_MS, spawnMcpInstallCommand, spawnMcpInstallRunner } from './mcp-install-runner.js';
@@ -0,0 +1,179 @@
1
+ // src/services/distribution/mcp-install.ts
2
+ //
3
+ // The vendor-neutral MCP registration engine (spec §8.3). It owns the SHAPE of
4
+ // an install — delete every scope, then add — and owns no harness's spelling of
5
+ // anything: the server key, the scopes and the argv come from the adapter's
6
+ // `mcpInstall` profile, and the process that runs the argv is an injected
7
+ // runner.
8
+ //
9
+ // WHY DELETE-THEN-ADD AND NOT "CHECK, THEN ADD IF ABSENT". The harness's own
10
+ // register verb is not idempotent: the same name in the same scope fails, and
11
+ // there is no `--force` and no `update` to reach for. A conditional add would
12
+ // therefore have to be right about a state it cannot see — so the engine does
13
+ // the one thing that is right in both states: it removes what is there (a
14
+ // removal that finds nothing is tolerated) and then adds. That is also what
15
+ // makes the install SEMANTICALLY idempotent: two runs produce the same argv in
16
+ // the same order, so the registration left behind has the same CONTENT, even
17
+ // though the second run performed operations the first one did too.
18
+ //
19
+ // WHY THE DELETE SWEEPS EVERY SCOPE. The entry can already exist in a scope the
20
+ // install is not writing to — an earlier install, or a user who moved it. The
21
+ // removal names a scope, and the harness fails on the wrong or empty one, so a
22
+ // targeted delete would leave the old entry behind and the add would then fail
23
+ // on the duplicate it left. Sweeping all declared scopes is the only version of
24
+ // this that is correct for a state the engine cannot enumerate.
25
+ //
26
+ // WHAT "ONLY OURS" MEANS HERE. The engine never reads or writes the
27
+ // harness's configuration file. It runs the harness's own removal and addition,
28
+ // and the only key either of them names is the adapter's `serverName` — so no
29
+ // other entry can be touched by construction. The honest limit of that
30
+ // guarantee is the name itself: an entry the USER named the same thing is
31
+ // indistinguishable from ours, and is the one case this cannot tell apart.
32
+ //
33
+ // NO HARNESS BRANCH, NO PLATFORM BRANCH. Every value is either the caller's or
34
+ // the adapter's. `resolveMcpServerArgv` returns an interpreter and an entry path
35
+ // for the same reason `cli-executor.ts` does: a shipped CLI name is a shim on
36
+ // some platforms, and choosing between the two spellings would be the platform
37
+ // branch this module is forbidden to contain.
38
+ import { dirname, join, resolve } from 'node:path';
39
+ import { fileURLToPath } from 'node:url';
40
+ import { assertMcpInstallProfile, expandMcpArgv } from '../ide/ide-mcp-install-types.js';
41
+ /** `<packageRoot>` — this file's tree is `<root>/src/services/distribution` or `<root>/dist/…`. */
42
+ const PACKAGE_ROOT = resolve(dirname(fileURLToPath(import.meta.url)), '..', '..', '..');
43
+ /**
44
+ * The argv that launches THIS installation's read-only MCP server.
45
+ *
46
+ * An interpreter and an entry path, in array form: the same shape `mcp serve`
47
+ * spawns and the same one the read-only executor uses. A bare CLI name would be
48
+ * a `.cmd` shim on some platforms, and picking a spelling per platform is the
49
+ * branch this tree forbids — resolving the pair needs none.
50
+ */
51
+ export function resolveMcpServerArgv() {
52
+ return [process.execPath, join(PACKAGE_ROOT, 'bin', 'peaks.js'), 'mcp', 'serve'];
53
+ }
54
+ /** The plan: one removal per declared scope, then the addition. Order is the contract. */
55
+ export function buildMcpInstallPlan(profile, serverArgv) {
56
+ assertMcpInstallProfile(profile);
57
+ const removals = profile.scopes.map((scope) => ({
58
+ operation: 'remove',
59
+ scope,
60
+ command: {
61
+ command: profile.removeArgv[0] ?? '',
62
+ args: expandMcpArgv(profile.removeArgv.slice(1), {
63
+ serverName: profile.serverName,
64
+ scope,
65
+ serverArgv
66
+ })
67
+ }
68
+ }));
69
+ const addition = {
70
+ operation: 'add',
71
+ scope: profile.targetScope,
72
+ command: {
73
+ command: profile.addArgv[0] ?? '',
74
+ args: expandMcpArgv(profile.addArgv.slice(1), {
75
+ serverName: profile.serverName,
76
+ scope: profile.targetScope,
77
+ serverArgv
78
+ })
79
+ }
80
+ };
81
+ return [...removals, addition];
82
+ }
83
+ /** Every removal, then the addition. A failed removal is a fact, not a failure. */
84
+ export function runMcpInstallPlan(profile, serverArgv, runner) {
85
+ const plan = buildMcpInstallPlan(profile, serverArgv);
86
+ const removed = [];
87
+ const absent = [];
88
+ let detail = '';
89
+ for (const step of plan) {
90
+ const outcome = runner(step.command);
91
+ if (step.operation === 'remove') {
92
+ if (outcome.ok)
93
+ removed.push(step.scope);
94
+ else
95
+ absent.push(step.scope);
96
+ continue;
97
+ }
98
+ if (!outcome.ok) {
99
+ return {
100
+ serverName: profile.serverName,
101
+ removed,
102
+ absent,
103
+ added: false,
104
+ ok: false,
105
+ detail: `the registration was not written: ${outcome.detail}`
106
+ };
107
+ }
108
+ detail = `registered in scope '${step.scope}'`;
109
+ }
110
+ return { serverName: profile.serverName, removed, absent, added: true, ok: true, detail };
111
+ }
112
+ /**
113
+ * The removal sweep on its own — what `uninstall` is, and all that it is.
114
+ *
115
+ * `exit 0` removed it, `exit != 0` answered "no" (absent, unchanged) — but a run the
116
+ * deadline killed, or one that never launched, ANSWERED NOTHING, and calling that
117
+ * "nothing was there" is the lie this sweep used to tell. Those scopes are `unknown`,
118
+ * and `ok` is false whenever any scope is unknown: with a scope the harness never
119
+ * spoke for, the removal is unconfirmed and the state is not known.
120
+ */
121
+ export function runMcpUninstallPlan(profile, serverArgv, runner) {
122
+ const plan = buildMcpInstallPlan(profile, serverArgv).filter((step) => step.operation === 'remove');
123
+ const removed = [];
124
+ const absent = [];
125
+ const unknown = [];
126
+ for (const step of plan) {
127
+ const outcome = runner(step.command);
128
+ if (outcome.ok)
129
+ removed.push(step.scope);
130
+ else if (outcome.answered === false)
131
+ unknown.push(step.scope);
132
+ else
133
+ absent.push(step.scope);
134
+ }
135
+ return {
136
+ serverName: profile.serverName,
137
+ removed,
138
+ absent,
139
+ unknown,
140
+ added: false,
141
+ ok: unknown.length === 0,
142
+ detail: unknown.length > 0
143
+ ? `the '${profile.serverName}' removal is unconfirmed: ${unknown.length} scope(s) never answered`
144
+ : removed.length === 0
145
+ ? `no '${profile.serverName}' registration was present in any declared scope`
146
+ : `removed '${profile.serverName}' from ${removed.length} scope(s)`
147
+ };
148
+ }
149
+ export const NO_MCP_INSTALL_REASON = 'adapter declares no mcpInstall profile';
150
+ /** Register this adapter's harness, or report that there is nothing to register. */
151
+ export function installMcpForAdapter(adapter, serverArgv, runner) {
152
+ const profile = adapter.mcpInstall;
153
+ if (profile === undefined) {
154
+ return { ideId: adapter.id, skipped: true, reason: NO_MCP_INSTALL_REASON };
155
+ }
156
+ return {
157
+ ideId: adapter.id,
158
+ skipped: false,
159
+ report: runMcpInstallPlan(profile, serverArgv, runner)
160
+ };
161
+ }
162
+ /** The same, for the removal side. */
163
+ export function uninstallMcpForAdapter(adapter, serverArgv, runner) {
164
+ const profile = adapter.mcpInstall;
165
+ if (profile === undefined) {
166
+ return { ideId: adapter.id, skipped: true, reason: NO_MCP_INSTALL_REASON };
167
+ }
168
+ return {
169
+ ideId: adapter.id,
170
+ skipped: false,
171
+ report: runMcpUninstallPlan(profile, serverArgv, runner)
172
+ };
173
+ }
174
+ /**
175
+ * The production runner and its deadline live in `mcp-install-runner.ts` — split
176
+ * out only to keep this engine within the file-size cap. They are re-exported, so
177
+ * the boundary is invisible: every caller still imports them from here.
178
+ */
179
+ export { MCP_INSTALL_TIMEOUT_MS, spawnMcpInstallCommand, spawnMcpInstallRunner } from './mcp-install-runner.js';
@@ -0,0 +1,97 @@
1
+ import { type SkillMetadata } from '../skills/skill-registry.js';
2
+ /** Where the generator writes, relative to the package root. */
3
+ export declare const PLUGIN_MANIFEST_RELATIVE_PATH = ".claude-plugin/marketplace.json";
4
+ /**
5
+ * The server key peaks registers itself under. It is OUR key, not a harness's —
6
+ * the adapter profiles that name it (`IdeMcpInstallProfile.serverName`) and the
7
+ * tool-name templates that match it (`IdeAdapter.mcp`) must agree with this one,
8
+ * which is why it is declared once.
9
+ */
10
+ export declare const MCP_SERVER_KEY = "peaks";
11
+ /** The subset of `package.json` this render reads. */
12
+ interface PackageManifest {
13
+ readonly name: string;
14
+ readonly version: string;
15
+ readonly description?: string;
16
+ readonly author?: string;
17
+ readonly homepage?: string;
18
+ readonly repository?: {
19
+ readonly url?: string;
20
+ } | string;
21
+ readonly license?: string;
22
+ readonly keywords?: readonly string[];
23
+ }
24
+ /** One plugin entry's skill list item — the shape `peaks skill:visibility` reads. */
25
+ interface PluginSkillEntry {
26
+ readonly name: string;
27
+ readonly path: string;
28
+ readonly description: string;
29
+ readonly userInvocable?: boolean;
30
+ }
31
+ interface GeneratedPluginManifest {
32
+ readonly metadata: {
33
+ readonly pluginRoot: string;
34
+ readonly version: string;
35
+ };
36
+ readonly plugins: readonly {
37
+ readonly name: string;
38
+ readonly description: string;
39
+ readonly version: string;
40
+ readonly author: {
41
+ readonly name: string;
42
+ };
43
+ readonly homepage: string;
44
+ readonly repository: string;
45
+ readonly license: string;
46
+ readonly keywords: readonly string[];
47
+ /**
48
+ * Declared, and deliberately not brought live: the plugin channel is not
49
+ * published by this slice (PRD non-goal), so this is the statement of what
50
+ * the channel WOULD run, kept true by generation rather than by memory.
51
+ *
52
+ * The command is the CLI's own name and subcommand, with no path in it: a
53
+ * manifest is built on one machine and read on another, so an absolute
54
+ * interpreter path resolved here would be the build host's. The RUNTIME
55
+ * registration is a different artefact with a different consumer and does
56
+ * resolve the pair — see `mcp-install.ts::resolveMcpServerArgv`.
57
+ */
58
+ readonly mcpServers: Record<string, {
59
+ readonly command: string;
60
+ readonly args: readonly string[];
61
+ }>;
62
+ readonly skills: readonly PluginSkillEntry[];
63
+ }[];
64
+ }
65
+ /** `package.json`, parsed. A missing version is a refusal, not a default. */
66
+ export declare function loadPackageManifest(root?: string): PackageManifest;
67
+ /**
68
+ * The skill entries, in the registry's order.
69
+ *
70
+ * `visibility: internal` is the skill's own declaration that it is an internal
71
+ * role rather than a front door, and it is the ONE source for `userInvocable` —
72
+ * the field is emitted only when it is `false`, which is the contract
73
+ * `skill:visibility` reads ("internal: userInvocable false; public: omitted").
74
+ */
75
+ export declare function skillEntriesOf(skills: readonly SkillMetadata[]): readonly PluginSkillEntry[];
76
+ /**
77
+ * Render the manifest. `skills` is passed in rather than loaded here so the one
78
+ * caller that must fail loudly on an unreadable SKILL.md can do so once.
79
+ */
80
+ export declare function generatePluginManifest(manifest: PackageManifest, skills: readonly SkillMetadata[]): GeneratedPluginManifest;
81
+ /** Pretty JSON, newline-terminated — the same serialization contract as the whitelist. */
82
+ export declare function serializePluginManifest(manifest: GeneratedPluginManifest): string;
83
+ /** Absolute path of the committed artifact for a package root. */
84
+ export declare function pluginManifestPath(root?: string): string;
85
+ /**
86
+ * The whole render for a package root: read the two sources, refuse a skill tree
87
+ * that did not fully parse, and serialize.
88
+ *
89
+ * The `failures` refusal is the load-bearing part. `loadSkillRegistry` reports an
90
+ * unreadable `SKILL.md` in a `failures` array instead of throwing, so a render
91
+ * that ignored it would DROP a skill from the manifest and still be
92
+ * byte-stable — a green CI over a manifest that had silently lost entries. A
93
+ * drift assertion cannot be stronger than its input, so the input is required to
94
+ * be complete.
95
+ */
96
+ export declare function renderPluginManifest(root?: string): Promise<string>;
97
+ export {};
@@ -0,0 +1,126 @@
1
+ // src/services/distribution/plugin-manifest.ts
2
+ //
3
+ // The plugin/distribution manifest as a GENERATED artefact (spec §4.1). One
4
+ // source, two renders: the whitelist artifact is what the read-only claim is
5
+ // made of, and this file is what the distribution channel is told.
6
+ //
7
+ // WHY IT IS GENERATED. The hand-authored `.claude-plugin/marketplace.json` had
8
+ // rotted in the only two fields anybody could check and nobody did: it declared
9
+ // version `2.0.3` while the package was `4.1.2`, and 12 skills while the tree
10
+ // held 22. Root cause is not carelessness — it is that the current distribution
11
+ // channel is `npm i -g`, so nothing ever read the plugin manifest and no failure
12
+ // could be observed from it. A file whose author is a human and whose reader is
13
+ // nobody will drift; the fix is to remove the human from the loop, not to be
14
+ // more careful.
15
+ //
16
+ // CHANGE THE SOURCE, NOT THIS FILE. Everything below is derived, and
17
+ // `tests/unit/services/distribution/plugin-manifest.test.ts` fails the moment
18
+ // the committed artefact differs from a fresh render. A hand edit is therefore
19
+ // not merely overwritten, it is RED. To change the manifest, change
20
+ // `package.json` (a plugin-level field) or the skill's own `SKILL.md`
21
+ // (a skill entry) and re-run `pnpm plugin:manifest`.
22
+ //
23
+ // DETERMINISM. No timestamp, no `Date`, no unordered iteration: skills come back
24
+ // from `loadSkillRegistry`, which sorts by name, and every plugin-level field is
25
+ // copied from `package.json` in a fixed order. Two consecutive runs are
26
+ // byte-identical, which is what makes the CI equality assertion mean something.
27
+ import { readFileSync } from 'node:fs';
28
+ import { dirname, join, relative } from 'node:path';
29
+ import { repoRoot } from 'peaks-loop-shared/paths';
30
+ import { loadSkillRegistry } from '../skills/skill-registry.js';
31
+ /** Where the generator writes, relative to the package root. */
32
+ export const PLUGIN_MANIFEST_RELATIVE_PATH = '.claude-plugin/marketplace.json';
33
+ /**
34
+ * The server key peaks registers itself under. It is OUR key, not a harness's —
35
+ * the adapter profiles that name it (`IdeMcpInstallProfile.serverName`) and the
36
+ * tool-name templates that match it (`IdeAdapter.mcp`) must agree with this one,
37
+ * which is why it is declared once.
38
+ */
39
+ export const MCP_SERVER_KEY = 'peaks';
40
+ /** `package.json`, parsed. A missing version is a refusal, not a default. */
41
+ export function loadPackageManifest(root = repoRoot) {
42
+ const parsed = JSON.parse(readFileSync(join(root, 'package.json'), 'utf8'));
43
+ if (typeof parsed.version !== 'string' || parsed.version.length === 0) {
44
+ throw new Error('package.json version must be a non-empty string');
45
+ }
46
+ return parsed;
47
+ }
48
+ /** A repository URL as a manifest reads it: npm's `.git` suffix is not part of the link. */
49
+ function repositoryUrl(manifest) {
50
+ const raw = typeof manifest.repository === 'string' ? manifest.repository : manifest.repository?.url;
51
+ return (raw ?? '').replace(/\.git$/, '');
52
+ }
53
+ /** POSIX-separated, so the artifact is byte-identical whichever OS generated it. */
54
+ function posix(value) {
55
+ return value.split('\\').join('/');
56
+ }
57
+ /**
58
+ * The skill entries, in the registry's order.
59
+ *
60
+ * `visibility: internal` is the skill's own declaration that it is an internal
61
+ * role rather than a front door, and it is the ONE source for `userInvocable` —
62
+ * the field is emitted only when it is `false`, which is the contract
63
+ * `skill:visibility` reads ("internal: userInvocable false; public: omitted").
64
+ */
65
+ export function skillEntriesOf(skills) {
66
+ return skills
67
+ .filter((skill) => skill.name.startsWith('peaks-'))
68
+ .map((skill) => ({
69
+ name: skill.name,
70
+ path: `./${posix(relative(repoRoot, dirname(skill.skillPath)))}`,
71
+ description: skill.description,
72
+ ...(skill.visibility === 'internal' ? { userInvocable: false } : {})
73
+ }));
74
+ }
75
+ /**
76
+ * Render the manifest. `skills` is passed in rather than loaded here so the one
77
+ * caller that must fail loudly on an unreadable SKILL.md can do so once.
78
+ */
79
+ export function generatePluginManifest(manifest, skills) {
80
+ return {
81
+ metadata: { pluginRoot: '.', version: manifest.version },
82
+ plugins: [
83
+ {
84
+ name: manifest.name,
85
+ description: manifest.description ?? '',
86
+ version: manifest.version,
87
+ author: { name: manifest.author ?? '' },
88
+ homepage: manifest.homepage ?? '',
89
+ repository: repositoryUrl(manifest),
90
+ license: manifest.license ?? '',
91
+ keywords: [...(manifest.keywords ?? [])],
92
+ mcpServers: {
93
+ [MCP_SERVER_KEY]: { command: MCP_SERVER_KEY, args: ['mcp', 'serve'] }
94
+ },
95
+ skills: skillEntriesOf(skills)
96
+ }
97
+ ]
98
+ };
99
+ }
100
+ /** Pretty JSON, newline-terminated — the same serialization contract as the whitelist. */
101
+ export function serializePluginManifest(manifest) {
102
+ return `${JSON.stringify(manifest, null, 2)}\n`;
103
+ }
104
+ /** Absolute path of the committed artifact for a package root. */
105
+ export function pluginManifestPath(root = repoRoot) {
106
+ return join(root, PLUGIN_MANIFEST_RELATIVE_PATH);
107
+ }
108
+ /**
109
+ * The whole render for a package root: read the two sources, refuse a skill tree
110
+ * that did not fully parse, and serialize.
111
+ *
112
+ * The `failures` refusal is the load-bearing part. `loadSkillRegistry` reports an
113
+ * unreadable `SKILL.md` in a `failures` array instead of throwing, so a render
114
+ * that ignored it would DROP a skill from the manifest and still be
115
+ * byte-stable — a green CI over a manifest that had silently lost entries. A
116
+ * drift assertion cannot be stronger than its input, so the input is required to
117
+ * be complete.
118
+ */
119
+ export async function renderPluginManifest(root = repoRoot) {
120
+ const skills = await loadSkillRegistry(join(root, 'skills'));
121
+ if (skills.failures.length > 0) {
122
+ const named = skills.failures.map((failure) => failure.skillPath).join(', ');
123
+ throw new Error(`Refusing to render the plugin manifest: unreadable skill(s): ${named}`);
124
+ }
125
+ return serializePluginManifest(generatePluginManifest(loadPackageManifest(root), skills.skills));
126
+ }
@@ -17,14 +17,14 @@
17
17
  * `createRequire(import.meta.url)` to find the package.
18
18
  */
19
19
  import { existsSync, readFileSync, statSync } from 'node:fs';
20
- import { dirname, join, resolve as resolvePath } from 'node:path';
20
+ import { dirname, join } from 'node:path';
21
21
  import { createRequire } from 'node:module';
22
22
  import { getErrorMessage } from 'peaks-loop-shared/result';
23
23
  import { resolveCodegraphProjectRoot } from '../../../codegraph/codegraph-service.js';
24
- const CODEGRAPH_EXPECTED_VERSION = '0.7.10';
24
+ import { codegraphUpstreamLayoutFor } from '../../../codegraph/codegraph-upstream-layout.js';
25
+ const CODEGRAPH_EXPECTED_VERSION = '1.6.2';
25
26
  const CODEGRAPH_PACKAGE_NAME = '@colbymchenry/codegraph';
26
27
  function findCodegraphPackageJsonFallback(startDir) {
27
- // Slice rid-CG-007 (downstream safety): yarn-pnp / pnpm-strict /
28
28
  // sub-package consumers may not expose `@colbymchenry/codegraph` to
29
29
  // `createRequire(import.meta.url).resolve`. The fallback walks up
30
30
  // the directory tree from `startDir` looking for
@@ -78,9 +78,13 @@ function defaultCodegraphProbe() {
78
78
  // Fall through with version='unknown'; the binary-existence
79
79
  // check below is the load-bearing assertion.
80
80
  }
81
+ // Probing, not path-joining: 1.6.x keeps the entry in the per-platform
82
+ // bundle's `lib/dist/`, not in the main package's own `dist/`. The shared
83
+ // resolver is the same one the spawn path uses, so the doctor cannot
84
+ // report "binary exists" at a path the spawn would not use.
81
85
  let binaryPath;
82
86
  try {
83
- binaryPath = resolvePath(dirname(packagePath), 'dist', 'bin', 'codegraph.js');
87
+ binaryPath = codegraphUpstreamLayoutFor(packagePath).binaryPath;
84
88
  }
85
89
  catch {
86
90
  binaryPath = '';
@@ -131,18 +135,22 @@ function runCheck(probe, managedPathProbe) {
131
135
  const versionOk = result.version === CODEGRAPH_EXPECTED_VERSION;
132
136
  const managedPathSuffix = renderManagedPathSuffix(managedPath);
133
137
  if (!versionOk) {
134
- // rid-CG-007: downstream consumers may pull a different
135
- // version via yarn-pnp / pnpm-strict. Surface as a warning
136
- // (ok: false, severity: warning) so the check does NOT flip
137
- // the doctor exit code. Upstream 0.7.x binaries are wire-
138
- // compatible with 0.7.10 for the subset peaks-loop exercises
139
- // (status / init / index / query / files / context / affected).
138
+ // version via yarn-pnp / pnpm-strict. Still a warning rather than an
139
+ // error — the pinned subcommand surface is stable, and a drift is not
140
+ // by itself a broken install — but the tolerance is NOT the wire
141
+ // compatibility the old `0.7.x` band had, where patch drift really was
142
+ // wire-compatible with the pin. 1.6.x is a rewrite of the runtime and
143
+ // of the index's on-disk schema: opening a 0.7.10-built `.codegraph/`
144
+ // with it migrates the database, and the migration is not reversible.
145
+ // So the message states the drift and the pin command and names the
146
+ // axis that actually moves, instead of reassuring the reader about a
147
+ // compatibility that does not hold across 0.7.x → 1.6.x.
140
148
  return [
141
149
  {
142
150
  id: 'capability:codegraph',
143
151
  ok: false,
144
152
  severity: 'warning',
145
- message: `@colbymchenry/codegraph version drift: expected ${CODEGRAPH_EXPECTED_VERSION}, resolved ${result.version} at ${result.packagePath} — peaks-loop uses an allow-list of subcommands and tolerates 0.7.x wire-compat. Run \`pnpm install @colbymchenry/codegraph@${CODEGRAPH_EXPECTED_VERSION}\` to pin.${managedPathSuffix}`
153
+ message: `@colbymchenry/codegraph version drift: expected ${CODEGRAPH_EXPECTED_VERSION}, resolved ${result.version} at ${result.packagePath} — peaks-loop uses an allow-list of subcommands, but the index schema is NOT stable across a major version (0.7.x and 1.6.x cannot share one .codegraph/ directory). Run \`pnpm install @colbymchenry/codegraph@${CODEGRAPH_EXPECTED_VERSION}\` to pin.${managedPathSuffix}`
146
154
  }
147
155
  ];
148
156
  }
@@ -181,7 +189,6 @@ function run({ options }) {
181
189
  function defaultCodegraphManagedPathProbe() {
182
190
  return detectManagedCodegraphPath(process.cwd());
183
191
  }
184
- // Slice S3b (rid-s3b-doctor-check-typing): `satisfies` instead of a
185
192
  // `: DoctorCheckPlugin` annotation. The annotation widened this object
186
193
  // literal to the interface's `run` return type
187
194
  // (`readonly DoctorCheck[] | Promise<readonly DoctorCheck[]>`) — an
@@ -62,7 +62,6 @@ function elide(paths) {
62
62
  }
63
63
  /**
64
64
  * 2026-09-17 — `projectRoot` is the doctor's resolved L3 root, NOT
65
- * `process.cwd()`. It used to read `process.cwd()`, which is a different
66
65
  * thing from the root the rest of the doctor was pointed at: a caller that
67
66
  * injects `projectRootResolver` (e.g.
68
67
  * `tests/unit/doctor/doctor-exit-code-warn-only.test.ts`) got every other
@@ -100,7 +99,7 @@ function renderGapMessage(includeGap, admittedTrackedCount, trackedSourceCount,
100
99
  // none while none existed); the command name is a shared constant, so this
101
100
  // message cannot drift from the CLI surface it points at.
102
101
  function remediation() {
103
- return `Run \`${CODEGRAPH_REPAIR_INDEX_COMMAND}\` to add the missing include pattern(s) and rebuild the index without the stale rows.`;
102
+ return `Run \`${CODEGRAPH_REPAIR_INDEX_COMMAND}\` to drop the blocking exclude rules and rebuild the index without the stale rows.`;
104
103
  }
105
104
  function run({ options, resolvedL3Root }) {
106
105
  const probe = options.codegraphIndexIntegrityProbe ?? (() => defaultProbe(resolvedL3Root));
@@ -1,7 +1,6 @@
1
1
  /**
2
2
  * Checks for `.peaks/memory/` health (`L3:l3-memory-health` and siblings).
3
3
  *
4
- * Slice 2026-06-13-repair-pre-existing-test-failures: the
5
4
  * production MemoryIndex schema (see
6
5
  * `src/services/memory/project-memory-service.ts`) uses
7
6
  * `version: 1` as the schema marker, NOT `schema_version`.
@@ -11,7 +10,6 @@
11
10
  * When no `.peaks/memory/index.json` exists yet, the check passes
12
11
  * (fresh project — no memories have been extracted).
13
12
  *
14
- * Slice 2026-09-09-memory-system-overhaul (D) extends the check with the
15
13
  * drift findings the original version could not see. It used to report
16
14
  * `ok: true` for "index.json is well-formed JSON; 100 hot + 131 warm" and
17
15
  * never looked at coverage, orphans, or unclassified files. It now emits,
@@ -1,7 +1,6 @@
1
1
  /**
2
2
  * Checks for `.peaks/memory/` health (`L3:l3-memory-health` and siblings).
3
3
  *
4
- * Slice 2026-06-13-repair-pre-existing-test-failures: the
5
4
  * production MemoryIndex schema (see
6
5
  * `src/services/memory/project-memory-service.ts`) uses
7
6
  * `version: 1` as the schema marker, NOT `schema_version`.
@@ -11,7 +10,6 @@
11
10
  * When no `.peaks/memory/index.json` exists yet, the check passes
12
11
  * (fresh project — no memories have been extracted).
13
12
  *
14
- * Slice 2026-09-09-memory-system-overhaul (D) extends the check with the
15
13
  * drift findings the original version could not see. It used to report
16
14
  * `ok: true` for "index.json is well-formed JSON; 100 hot + 131 warm" and
17
15
  * never looked at coverage, orphans, or unclassified files. It now emits,
@@ -6,7 +6,6 @@
6
6
  * subdirs that intentionally live under `.peaks/_runtime/`
7
7
  * (e.g. `change/`, which routes reviewable artifacts per F3).
8
8
  *
9
- * Slice 2026-06-24-doctor-1xdetector-residual regression net: the
10
9
  * reducer MUST exclude `change/` (and other system subdirs added
11
10
  * by future F3 changes) — without the exclude-list the doctor
12
11
  * flips the summary to fail on every clean workspace, which broke
@@ -6,7 +6,6 @@
6
6
  * subdirs that intentionally live under `.peaks/_runtime/`
7
7
  * (e.g. `change/`, which routes reviewable artifacts per F3).
8
8
  *
9
- * Slice 2026-06-24-doctor-1xdetector-residual regression net: the
10
9
  * reducer MUST exclude `change/` (and other system subdirs added
11
10
  * by future F3 changes) — without the exclude-list the doctor
12
11
  * flips the summary to fail on every clean workspace, which broke
@@ -2,7 +2,6 @@
2
2
  * Check: PATH-scoped `peaks-loop` binary drift
3
3
  * (`build:multi-binary-drift`).
4
4
  *
5
- * Slice 2026-08-05-statusline-sid-only-marker-and-multi-binary-drift-guard
6
5
  * (G3/G4). When more than one `peaks-loop` binary is discoverable on
7
6
  * `process.env.PATH` AND the discovered versions disagree, the doctor
8
7
  * emits a `PEAKS_MULTI_BINARY_DRIFT` warning. The user-reported