peaks-loop 4.1.0 → 4.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (811) hide show
  1. package/CHANGELOG.md +75 -0
  2. package/README-en.md +4 -4
  3. package/README.md +25 -4
  4. package/bin/node-floor.mjs +59 -0
  5. package/bin/peaks.js +13 -0
  6. package/config/eslint/tsconfig.lint.json +2 -1
  7. package/dist/cli/cli-helpers.d.ts +0 -1
  8. package/dist/cli/cli-helpers.js +0 -1
  9. package/dist/cli/commands/_cli-error-envelope.js +0 -3
  10. package/dist/cli/commands/_register.js +2 -2
  11. package/dist/cli/commands/adapter-commands-s2a.d.ts +0 -1
  12. package/dist/cli/commands/adapter-commands.d.ts +0 -1
  13. package/dist/cli/commands/api-diff-commands.d.ts +0 -1
  14. package/dist/cli/commands/api-diff-commands.js +0 -1
  15. package/dist/cli/commands/audit-commands.js +21 -24
  16. package/dist/cli/commands/autonomous-swarm-commands.js +0 -1
  17. package/dist/cli/commands/bee-commands.d.ts +0 -2
  18. package/dist/cli/commands/bee-commands.js +0 -2
  19. package/dist/cli/commands/best-practice-scan-command.d.ts +0 -1
  20. package/dist/cli/commands/best-practice-scan-helpers.js +0 -1
  21. package/dist/cli/commands/changeset-commands.d.ts +0 -2
  22. package/dist/cli/commands/changeset-commands.js +0 -2
  23. package/dist/cli/commands/code-commands.d.ts +0 -3
  24. package/dist/cli/commands/code-commands.js +0 -3
  25. package/dist/cli/commands/code-gate-command.d.ts +0 -1
  26. package/dist/cli/commands/code-gate-command.js +0 -1
  27. package/dist/cli/commands/code-job-shape-commands-read-job-shape.d.ts +0 -1
  28. package/dist/cli/commands/code-job-shape-commands-read-job-shape.js +0 -1
  29. package/dist/cli/commands/code-job-shape-commands.d.ts +0 -2
  30. package/dist/cli/commands/code-job-shape-commands.js +0 -3
  31. package/dist/cli/commands/code-mode-gate-commands.d.ts +0 -2
  32. package/dist/cli/commands/code-mode-gate-commands.js +0 -3
  33. package/dist/cli/commands/code-mode-gate-should-pause-command.js +1 -5
  34. package/dist/cli/commands/code-mode-gate-should-pause-envelope.d.ts +0 -1
  35. package/dist/cli/commands/code-mode-gate-should-pause-envelope.js +0 -2
  36. package/dist/cli/commands/code-mode-status-command.d.ts +0 -1
  37. package/dist/cli/commands/code-mode-status-command.js +0 -1
  38. package/dist/cli/commands/code-orchestrator-can-do.d.ts +0 -1
  39. package/dist/cli/commands/code-orchestrator-can-do.js +0 -1
  40. package/dist/cli/commands/code-run-command.js +0 -1
  41. package/dist/cli/commands/code-runtime-commands.d.ts +0 -3
  42. package/dist/cli/commands/code-runtime-commands.js +0 -15
  43. package/dist/cli/commands/codegraph-command-runtime.d.ts +6 -0
  44. package/dist/cli/commands/codegraph-command-runtime.js +19 -7
  45. package/dist/cli/commands/codegraph-commands.js +20 -193
  46. package/dist/cli/commands/codegraph-init-command.d.ts +8 -0
  47. package/dist/cli/commands/codegraph-init-command.js +162 -0
  48. package/dist/cli/commands/codegraph-status-command.js +5 -6
  49. package/dist/cli/commands/comments-commands.d.ts +14 -0
  50. package/dist/cli/commands/comments-commands.js +96 -0
  51. package/dist/cli/commands/compact-command.d.ts +0 -1
  52. package/dist/cli/commands/compact-command.js +0 -4
  53. package/dist/cli/commands/container-commands.d.ts +0 -1
  54. package/dist/cli/commands/container-commands.js +0 -1
  55. package/dist/cli/commands/context-commands.d.ts +0 -1
  56. package/dist/cli/commands/context-commands.js +0 -1
  57. package/dist/cli/commands/core/doctor-command.d.ts +0 -1
  58. package/dist/cli/commands/core/doctor-command.js +0 -9
  59. package/dist/cli/commands/core/memory-command.js +10 -1
  60. package/dist/cli/commands/core/session-command.js +0 -14
  61. package/dist/cli/commands/core/skill-command.js +1 -10
  62. package/dist/cli/commands/core/standards-command.js +1 -1
  63. package/dist/cli/commands/core-artifact-commands.d.ts +0 -1
  64. package/dist/cli/commands/core-artifact-commands.js +0 -1
  65. package/dist/cli/commands/cron-commands-actions.d.ts +0 -1
  66. package/dist/cli/commands/cron-commands-actions.js +0 -2
  67. package/dist/cli/commands/cron-commands-schedule.d.ts +0 -3
  68. package/dist/cli/commands/cron-commands-schedule.js +0 -1
  69. package/dist/cli/commands/cron-commands.d.ts +0 -1
  70. package/dist/cli/commands/cron-commands.js +0 -2
  71. package/dist/cli/commands/cron-scheduler-commands.d.ts +0 -1
  72. package/dist/cli/commands/cron-scheduler-commands.js +0 -1
  73. package/dist/cli/commands/cron-scheduler-persist.d.ts +0 -5
  74. package/dist/cli/commands/cron-scheduler-persist.js +0 -5
  75. package/dist/cli/commands/dashboard-summary.d.ts +0 -1
  76. package/dist/cli/commands/dispatch-commands.d.ts +0 -1
  77. package/dist/cli/commands/dispatch-commands.js +10 -37
  78. package/dist/cli/commands/dispatch-from-dag.js +0 -4
  79. package/dist/cli/commands/doctor/invoke-from-code.js +0 -1
  80. package/dist/cli/commands/e2e-verify.d.ts +0 -1
  81. package/dist/cli/commands/ecc-commands.d.ts +16 -22
  82. package/dist/cli/commands/ecc-commands.js +38 -26
  83. package/dist/cli/commands/evolution-commands.d.ts +0 -1
  84. package/dist/cli/commands/evolution-commands.js +0 -1
  85. package/dist/cli/commands/feedback-commands.d.ts +0 -1
  86. package/dist/cli/commands/feedback-commands.js +0 -2
  87. package/dist/cli/commands/fixture-commands.d.ts +0 -2
  88. package/dist/cli/commands/fresh-context-commands.d.ts +0 -1
  89. package/dist/cli/commands/gate-commands-enforce.d.ts +0 -3
  90. package/dist/cli/commands/gate-commands-enforce.js +0 -4
  91. package/dist/cli/commands/gate-commands.js +0 -2
  92. package/dist/cli/commands/governance-classify-contract-commands.d.ts +0 -3
  93. package/dist/cli/commands/governance-classify-contract-commands.js +0 -4
  94. package/dist/cli/commands/heartbeat-commands-action.js +0 -6
  95. package/dist/cli/commands/heartbeat-commands-validation.d.ts +0 -2
  96. package/dist/cli/commands/heartbeat-commands-validation.js +0 -2
  97. package/dist/cli/commands/heartbeat-commands.d.ts +0 -1
  98. package/dist/cli/commands/heartbeat-commands.js +0 -1
  99. package/dist/cli/commands/hooks-commands.js +0 -11
  100. package/dist/cli/commands/ide-commands.d.ts +0 -1
  101. package/dist/cli/commands/job-add-slice-command.d.ts +0 -2
  102. package/dist/cli/commands/job-add-slice-command.js +0 -2
  103. package/dist/cli/commands/job-commands.js +0 -4
  104. package/dist/cli/commands/lease-metrics-commands.d.ts +0 -1
  105. package/dist/cli/commands/lease-metrics-commands.js +0 -1
  106. package/dist/cli/commands/lease-stats-commands.d.ts +0 -1
  107. package/dist/cli/commands/lease-stats-commands.js +0 -1
  108. package/dist/cli/commands/log-commands.d.ts +0 -2
  109. package/dist/cli/commands/log-commands.js +0 -3
  110. package/dist/cli/commands/loop-eval-commands.js +0 -3
  111. package/dist/cli/commands/memory-commands.d.ts +0 -1
  112. package/dist/cli/commands/memory-commands.js +0 -1
  113. package/dist/cli/commands/observability-commands.d.ts +0 -6
  114. package/dist/cli/commands/observability-commands.js +0 -6
  115. package/dist/cli/commands/outer-cache-commands.js +0 -2
  116. package/dist/cli/commands/playwright-commands.d.ts +0 -1
  117. package/dist/cli/commands/playwright-commands.js +0 -1
  118. package/dist/cli/commands/polyrepo-commands.d.ts +0 -1
  119. package/dist/cli/commands/prd-commands.d.ts +0 -1
  120. package/dist/cli/commands/prd-commands.js +8 -4
  121. package/dist/cli/commands/preferences-commands.js +0 -2
  122. package/dist/cli/commands/primer-command.d.ts +0 -1
  123. package/dist/cli/commands/primer-command.js +0 -1
  124. package/dist/cli/commands/project-commands.js +0 -1
  125. package/dist/cli/commands/qa-commands.d.ts +0 -1
  126. package/dist/cli/commands/qa-commands.js +0 -2
  127. package/dist/cli/commands/release-commands.js +0 -9
  128. package/dist/cli/commands/request-commands.d.ts +0 -1
  129. package/dist/cli/commands/request-commands.js +0 -10
  130. package/dist/cli/commands/request-format-helpers.d.ts +0 -1
  131. package/dist/cli/commands/request-format-helpers.js +0 -2
  132. package/dist/cli/commands/runtime-commands.d.ts +0 -1
  133. package/dist/cli/commands/sc-commands.js +0 -1
  134. package/dist/cli/commands/session-24h-mode.d.ts +0 -1
  135. package/dist/cli/commands/session-24h-mode.js +0 -2
  136. package/dist/cli/commands/session-checkpoint-command.d.ts +0 -1
  137. package/dist/cli/commands/session-checkpoint-command.js +0 -1
  138. package/dist/cli/commands/session-resume-command.d.ts +0 -1
  139. package/dist/cli/commands/session-resume-command.js +0 -1
  140. package/dist/cli/commands/shadcn-commands.js +0 -2
  141. package/dist/cli/commands/share-commands.d.ts +0 -3
  142. package/dist/cli/commands/share-commands.js +0 -13
  143. package/dist/cli/commands/skill-search-commands.d.ts +0 -2
  144. package/dist/cli/commands/slice-commands.js +0 -2
  145. package/dist/cli/commands/slice-integrate-commands.js +0 -1
  146. package/dist/cli/commands/spill-demo-command.d.ts +0 -1
  147. package/dist/cli/commands/statusline-commands.js +0 -4
  148. package/dist/cli/commands/sub-agent/detached.js +0 -2
  149. package/dist/cli/commands/sub-agent-commands.d.ts +0 -3
  150. package/dist/cli/commands/sub-agent-shared.d.ts +0 -8
  151. package/dist/cli/commands/sub-agent-shared.js +0 -5
  152. package/dist/cli/commands/sub-agent-shutdown-commands.d.ts +0 -1
  153. package/dist/cli/commands/tech-commands.d.ts +0 -4
  154. package/dist/cli/commands/tech-commands.js +0 -4
  155. package/dist/cli/commands/vendor-detect.d.ts +0 -3
  156. package/dist/cli/commands/vendor-detect.js +0 -2
  157. package/dist/cli/commands/verdict-aggregate-command.d.ts +0 -1
  158. package/dist/cli/commands/verdict-aggregate-command.js +0 -7
  159. package/dist/cli/commands/vm-commands.d.ts +0 -1
  160. package/dist/cli/commands/vm-commands.js +5 -29
  161. package/dist/cli/commands/vm-hypervisor-probe.d.ts +27 -0
  162. package/dist/cli/commands/vm-hypervisor-probe.js +78 -0
  163. package/dist/cli/commands/vm-status-command.d.ts +3 -0
  164. package/dist/cli/commands/vm-status-command.js +50 -0
  165. package/dist/cli/commands/wave-plan-commands.d.ts +0 -1
  166. package/dist/cli/commands/web-lifecycle-commands.d.ts +0 -1
  167. package/dist/cli/commands/workflow-commands.js +0 -14
  168. package/dist/cli/commands/workflow-plan-commands-actions.js +0 -2
  169. package/dist/cli/commands/workflow-plan-commands-session.js +0 -2
  170. package/dist/cli/commands/workflow-plan-commands.d.ts +0 -1
  171. package/dist/cli/commands/workspace/clean-command.d.ts +0 -1
  172. package/dist/cli/commands/workspace/clean-command.js +0 -1
  173. package/dist/cli/commands/workspace/helpers.d.ts +0 -1
  174. package/dist/cli/commands/workspace/helpers.js +0 -1
  175. package/dist/cli/commands/workspace/init-command.d.ts +0 -6
  176. package/dist/cli/commands/workspace/init-command.js +0 -17
  177. package/dist/cli/commands/workspace/migrate-command.d.ts +0 -2
  178. package/dist/cli/commands/workspace/migrate-command.js +0 -2
  179. package/dist/cli/commands/workspace/reconcile-command.d.ts +0 -2
  180. package/dist/cli/commands/workspace/reconcile-command.js +0 -3
  181. package/dist/cli/commands/workspace-commands.d.ts +0 -2
  182. package/dist/cli/commands/workspace-commands.js +0 -4
  183. package/dist/cli/commands/worktree-auth-commands.d.ts +0 -1
  184. package/dist/cli/commands/worktree-auth-commands.js +0 -1
  185. package/dist/cli/commands/worktree-auth-grant-command.d.ts +0 -1
  186. package/dist/cli/commands/worktree-auth-grant-command.js +0 -1
  187. package/dist/cli/commands/worktree-auth-manage-commands.d.ts +0 -1
  188. package/dist/cli/commands/worktree-auth-manage-commands.js +0 -1
  189. package/dist/cli/commands/worktree-lease-commands.js +0 -1
  190. package/dist/cli/program.js +4 -16
  191. package/dist/reporters/bdd-reporter.js +0 -1
  192. package/dist/services/24h-mode/auto-engage.d.ts +0 -1
  193. package/dist/services/24h-mode/auto-engage.js +0 -1
  194. package/dist/services/24h-mode/decider.d.ts +0 -3
  195. package/dist/services/24h-mode/decider.js +0 -3
  196. package/dist/services/24h-mode/index.d.ts +0 -2
  197. package/dist/services/24h-mode/index.js +0 -2
  198. package/dist/services/24h-mode/state.d.ts +0 -1
  199. package/dist/services/24h-mode/state.js +0 -1
  200. package/dist/services/24h-mode/store.d.ts +0 -1
  201. package/dist/services/24h-mode/store.js +0 -1
  202. package/dist/services/adapter/adapter-registry.js +0 -1
  203. package/dist/services/artifacts/artifact-prerequisites.d.ts +0 -5
  204. package/dist/services/artifacts/artifact-prerequisites.js +0 -19
  205. package/dist/services/artifacts/artifact-templates.d.ts +0 -1
  206. package/dist/services/artifacts/artifact-templates.js +0 -1
  207. package/dist/services/artifacts/request-artifact-service.d.ts +0 -5
  208. package/dist/services/artifacts/request-artifact-service.js +0 -12
  209. package/dist/services/artifacts/request-artifact-state-helpers.d.ts +0 -1
  210. package/dist/services/artifacts/request-artifact-state-helpers.js +0 -1
  211. package/dist/services/audit/artifact-writer.d.ts +0 -1
  212. package/dist/services/audit/artifact-writer.js +0 -1
  213. package/dist/services/audit/decision-writer.js +3 -1
  214. package/dist/services/audit/enforcer-liveness.js +0 -1
  215. package/dist/services/audit/enforcers/active-skill-resolver.d.ts +0 -2
  216. package/dist/services/audit/enforcers/active-skill-resolver.js +0 -2
  217. package/dist/services/audit/red-line-audit-input.d.ts +11 -0
  218. package/dist/services/audit/red-line-audit-input.js +103 -0
  219. package/dist/services/audit/red-line-catalog-p2-a-bee-runtime.d.ts +0 -1
  220. package/dist/services/audit/red-line-catalog-p2-a.js +0 -9
  221. package/dist/services/audit/types.d.ts +0 -2
  222. package/dist/services/audit/types.js +0 -2
  223. package/dist/services/audit-independent/perf-audit-service.d.ts +0 -2
  224. package/dist/services/audit-independent/security-audit-service.d.ts +0 -5
  225. package/dist/services/audit-independent/security-audit-service.js +0 -2
  226. package/dist/services/autonomous-swarm/autonomous-swarm-service.d.ts +0 -5
  227. package/dist/services/autonomous-swarm/autonomous-swarm-service.js +0 -5
  228. package/dist/services/best-practice/language-detector.js +0 -1
  229. package/dist/services/best-practice/output-formatter.d.ts +0 -1
  230. package/dist/services/best-practice/scan-orchestrator.d.ts +0 -1
  231. package/dist/services/capability-audit-service/types.d.ts +1 -3
  232. package/dist/services/capability-guard-runner/contracts/J08.js +2 -2
  233. package/dist/services/changeset/changeset-check-service.d.ts +0 -3
  234. package/dist/services/changeset/changeset-check-service.js +0 -3
  235. package/dist/services/classify/classify-service.d.ts +0 -1
  236. package/dist/services/classify/classify-service.js +0 -1
  237. package/dist/services/classify/classify-types.d.ts +0 -1
  238. package/dist/services/classify/classify-types.js +0 -1
  239. package/dist/services/code/auto-compact-lifecycle.d.ts +0 -11
  240. package/dist/services/code/auto-compact-lifecycle.js +0 -10
  241. package/dist/services/code/auto-compact-modes.d.ts +0 -3
  242. package/dist/services/code/auto-compact-modes.js +0 -3
  243. package/dist/services/code/auto-compact-orchestrator.d.ts +0 -9
  244. package/dist/services/code/auto-compact-orchestrator.js +0 -29
  245. package/dist/services/code/batch-heartbeat-poller.js +0 -1
  246. package/dist/services/code/compact-event-settle.js +0 -1
  247. package/dist/services/code/dag-orchestrator.d.ts +0 -1
  248. package/dist/services/code/dag-orchestrator.js +0 -1
  249. package/dist/services/code/mode-gate-types.d.ts +1 -3
  250. package/dist/services/code/mode-gate-types.js +0 -2
  251. package/dist/services/code/mode-gate.d.ts +0 -5
  252. package/dist/services/code/mode-gate.js +1 -14
  253. package/dist/services/code/orchestrator-can-do-advisories.d.ts +0 -2
  254. package/dist/services/code/orchestrator-can-do-advisories.js +0 -5
  255. package/dist/services/code/orchestrator-can-do.d.ts +0 -4
  256. package/dist/services/code/orchestrator-can-do.js +0 -3
  257. package/dist/services/code/status-line-renderer.js +0 -1
  258. package/dist/services/code/user-touchpoint-classifier.js +0 -7
  259. package/dist/services/code-review/ecc-bridge.d.ts +6 -7
  260. package/dist/services/codegraph/codegraph-autorefresh.js +6 -4
  261. package/dist/services/codegraph/codegraph-backend-advice.d.ts +26 -0
  262. package/dist/services/codegraph/codegraph-backend-advice.js +166 -0
  263. package/dist/services/codegraph/codegraph-config-repair-writer.d.ts +0 -24
  264. package/dist/services/codegraph/codegraph-config-repair-writer.js +32 -73
  265. package/dist/services/codegraph/codegraph-exclude-integrity.d.ts +14 -6
  266. package/dist/services/codegraph/codegraph-exclude-integrity.js +24 -14
  267. package/dist/services/codegraph/codegraph-exclude-reconciler.d.ts +9 -2
  268. package/dist/services/codegraph/codegraph-exclude-reconciler.js +87 -18
  269. package/dist/services/codegraph/codegraph-exclude-repair.d.ts +9 -61
  270. package/dist/services/codegraph/codegraph-exclude-repair.js +67 -139
  271. package/dist/services/codegraph/codegraph-foreign-removal.d.ts +21 -0
  272. package/dist/services/codegraph/codegraph-foreign-removal.js +77 -0
  273. package/dist/services/codegraph/codegraph-index-integrity.d.ts +12 -25
  274. package/dist/services/codegraph/codegraph-index-integrity.js +84 -23
  275. package/dist/services/codegraph/codegraph-preflight-service.js +15 -6
  276. package/dist/services/codegraph/codegraph-project-config.d.ts +35 -0
  277. package/dist/services/codegraph/codegraph-project-config.js +90 -0
  278. package/dist/services/codegraph/codegraph-service.d.ts +1 -2
  279. package/dist/services/codegraph/codegraph-service.js +11 -11
  280. package/dist/services/codegraph/codegraph-upstream-layout.d.ts +24 -0
  281. package/dist/services/codegraph/codegraph-upstream-layout.js +85 -0
  282. package/dist/services/comments/citation-rules.d.ts +154 -0
  283. package/dist/services/comments/citation-rules.js +241 -0
  284. package/dist/services/comments/comment-audit.d.ts +68 -0
  285. package/dist/services/comments/comment-audit.js +121 -0
  286. package/dist/services/comments/comment-citations.d.ts +66 -0
  287. package/dist/services/comments/comment-citations.js +184 -0
  288. package/dist/services/comments/comment-hygiene.d.ts +105 -0
  289. package/dist/services/comments/comment-hygiene.js +170 -0
  290. package/dist/services/comments/comment-prune.d.ts +88 -0
  291. package/dist/services/comments/comment-prune.js +196 -0
  292. package/dist/services/comments/comment-spans.d.ts +30 -0
  293. package/dist/services/comments/comment-spans.js +266 -0
  294. package/dist/services/comments/prune-apply.d.ts +82 -0
  295. package/dist/services/comments/prune-apply.js +217 -0
  296. package/dist/services/comments/repo-path-probe.d.ts +43 -0
  297. package/dist/services/comments/repo-path-probe.js +78 -0
  298. package/dist/services/compact/decision-tables.d.ts +0 -2
  299. package/dist/services/compact/decision-tables.js +0 -2
  300. package/dist/services/compact/request-transition-hook.js +0 -2
  301. package/dist/services/compact-history/compact-history-service.d.ts +0 -2
  302. package/dist/services/compact-history/compact-history-service.js +0 -1
  303. package/dist/services/compact-statusline/compact-lifecycle-store.js +0 -2
  304. package/dist/services/compact-statusline/compact-lifecycle-types.d.ts +0 -1
  305. package/dist/services/compact-statusline/compact-statusline-service.js +0 -4
  306. package/dist/services/config/config-rollback.js +0 -1
  307. package/dist/services/config/config-safety.d.ts +0 -1
  308. package/dist/services/config/config-safety.js +0 -1
  309. package/dist/services/config/config-service.d.ts +0 -1
  310. package/dist/services/config/config-service.js +0 -1
  311. package/dist/services/config/model-routing.d.ts +0 -3
  312. package/dist/services/config/model-routing.js +0 -5
  313. package/dist/services/container/container-lease.d.ts +0 -1
  314. package/dist/services/container/container-lease.js +0 -1
  315. package/dist/services/context/artifact-meta.js +0 -1
  316. package/dist/services/context/auto-compact-dispatcher-input.d.ts +0 -3
  317. package/dist/services/context/auto-compact-dispatcher.js +0 -14
  318. package/dist/services/context/auto-compact-reader-input.d.ts +0 -1
  319. package/dist/services/context/auto-compact-reader.d.ts +0 -2
  320. package/dist/services/context/auto-compact-reader.js +0 -7
  321. package/dist/services/context/auto-compact-types.d.ts +0 -11
  322. package/dist/services/context/auto-compact-types.js +0 -1
  323. package/dist/services/context/build-dispatch-system-prompt.d.ts +11 -29
  324. package/dist/services/context/build-dispatch-system-prompt.js +8 -27
  325. package/dist/services/context/codegraph-unavailable-block.d.ts +38 -0
  326. package/dist/services/context/codegraph-unavailable-block.js +77 -0
  327. package/dist/services/context/context-audit-hint.d.ts +0 -1
  328. package/dist/services/context/context-audit-hint.js +0 -1
  329. package/dist/services/context/context-audit.d.ts +0 -1
  330. package/dist/services/context/context-audit.js +0 -1
  331. package/dist/services/context/harness-window-config.d.ts +0 -4
  332. package/dist/services/context/harness-window-config.js +0 -4
  333. package/dist/services/context/main-session-monitor.d.ts +0 -2
  334. package/dist/services/context/main-session-monitor.js +0 -2
  335. package/dist/services/context/memory-index-reader.d.ts +0 -2
  336. package/dist/services/context/memory-index-reader.js +0 -1
  337. package/dist/services/context/memory-preflight-config.d.ts +0 -1
  338. package/dist/services/context/memory-preflight-service.d.ts +0 -1
  339. package/dist/services/context/memory-preflight-service.js +0 -3
  340. package/dist/services/context/memory-preflight-support.d.ts +0 -5
  341. package/dist/services/context/post-compact-reinjection.d.ts +0 -1
  342. package/dist/services/context/post-compact-reinjection.js +0 -1
  343. package/dist/services/context/summary-view.d.ts +0 -1
  344. package/dist/services/context/summary-view.js +0 -1
  345. package/dist/services/crystallization/crystallization-service.d.ts +5 -11
  346. package/dist/services/crystallization/crystallization-service.js +3 -11
  347. package/dist/services/crystallization/crystallization-store.d.ts +6 -6
  348. package/dist/services/dispatch/await-batch-helpers.js +0 -3
  349. package/dist/services/dispatch/await-batch.d.ts +0 -1
  350. package/dist/services/dispatch/await-batch.js +0 -4
  351. package/dist/services/dispatch/batch-counter.js +0 -1
  352. package/dist/services/dispatch/conflict-replay.d.ts +0 -1
  353. package/dist/services/dispatch/conflict-replay.js +0 -1
  354. package/dist/services/dispatch/contract-store.d.ts +0 -2
  355. package/dist/services/dispatch/contract-store.js +0 -2
  356. package/dist/services/dispatch/dispatch-record-input-types.d.ts +0 -2
  357. package/dist/services/dispatch/dispatch-record-types.d.ts +0 -10
  358. package/dist/services/dispatch/dispatch-record-upgrade-fields.js +0 -7
  359. package/dist/services/dispatch/dispatch-record-upgrade-guards.js +0 -2
  360. package/dist/services/dispatch/dispatch-record-writer.d.ts +0 -5
  361. package/dist/services/dispatch/dispatch-record-writer.js +0 -21
  362. package/dist/services/dispatch/dispatch-sub-agent.d.ts +0 -1
  363. package/dist/services/dispatch/dispatch-sub-agent.js +0 -1
  364. package/dist/services/dispatch/e2e-fixtures.js +0 -1
  365. package/dist/services/dispatch/file-overlap-wave-planner.d.ts +0 -1
  366. package/dist/services/dispatch/file-overlap-wave-planner.js +0 -1
  367. package/dist/services/dispatch/isolation-lease.d.ts +0 -2
  368. package/dist/services/dispatch/isolation-lease.js +0 -2
  369. package/dist/services/dispatch/service-shutdown.js +0 -1
  370. package/dist/services/dispatch/session-capsule.js +0 -1
  371. package/dist/services/dispatch/slice-dag-types.d.ts +0 -1
  372. package/dist/services/dispatch/slice-dag.js +0 -2
  373. package/dist/services/dispatch/stage-enum.d.ts +0 -1
  374. package/dist/services/dispatch/stage-enum.js +0 -1
  375. package/dist/services/dispatch/startup-timeout.d.ts +0 -1
  376. package/dist/services/dispatch/sub-agent-batch-await.js +0 -3
  377. package/dist/services/dispatch/sub-agent-dispatcher-types.d.ts +0 -1
  378. package/dist/services/dispatch/sub-agent-dispatcher.js +0 -2
  379. package/dist/services/dispatch/test-tool-detection.d.ts +0 -3
  380. package/dist/services/dispatch/test-tool-detection.js +0 -2
  381. package/dist/services/doctor/doctor-service/checks/codegraph-capability.js +19 -12
  382. package/dist/services/doctor/doctor-service/checks/codegraph-index-integrity.js +1 -2
  383. package/dist/services/doctor/doctor-service/checks/l3-memory-health.d.ts +0 -2
  384. package/dist/services/doctor/doctor-service/checks/l3-memory-health.js +0 -2
  385. package/dist/services/doctor/doctor-service/checks/l3-orphan-sessions.d.ts +0 -1
  386. package/dist/services/doctor/doctor-service/checks/l3-orphan-sessions.js +0 -1
  387. package/dist/services/doctor/doctor-service/checks/multi-binary-drift.d.ts +0 -1
  388. package/dist/services/doctor/doctor-service/checks/multi-binary-drift.js +0 -3
  389. package/dist/services/doctor/doctor-service/checks/workspace-layout.js +0 -2
  390. package/dist/services/doctor/doctor-service/index.d.ts +0 -1
  391. package/dist/services/doctor/doctor-service/index.js +0 -1
  392. package/dist/services/doctor/doctor-service/plugin-registry.d.ts +0 -2
  393. package/dist/services/doctor/doctor-service/plugin-registry.js +0 -2
  394. package/dist/services/doctor/doctor-service/probe-types.d.ts +0 -4
  395. package/dist/services/doctor/doctor-service/report/final-summary.d.ts +0 -1
  396. package/dist/services/doctor/doctor-service/report/final-summary.js +0 -1
  397. package/dist/services/doctor/doctor-service/types.d.ts +0 -5
  398. package/dist/services/doctor/doctor-service/types.js +0 -1
  399. package/dist/services/doctor/doctor-service.d.ts +0 -1
  400. package/dist/services/doctor/doctor-service.js +0 -2
  401. package/dist/services/env/shell-probe.js +0 -1
  402. package/dist/services/evidence/evidence-generator.js +0 -8
  403. package/dist/services/evolution/evolution-constraints.d.ts +0 -2
  404. package/dist/services/evolution/evolution-constraints.js +0 -2
  405. package/dist/services/evolution/evolution-service.d.ts +2 -12
  406. package/dist/services/evolution/evolution-service.js +0 -9
  407. package/dist/services/evolution/evolution-store.d.ts +6 -8
  408. package/dist/services/evolution/evolution-store.js +1 -3
  409. package/dist/services/evolution/evolution-types.d.ts +0 -2
  410. package/dist/services/evolution/evolution-types.js +0 -6
  411. package/dist/services/evolution/independent-evaluator-runner.d.ts +0 -3
  412. package/dist/services/evolution/independent-evaluator-runner.js +0 -1
  413. package/dist/services/evolution/regression-skeptic-runner.d.ts +0 -1
  414. package/dist/services/feedback/feedback-promotion-service.d.ts +0 -8
  415. package/dist/services/feedback/feedback-promotion-service.js +0 -10
  416. package/dist/services/feedback/promotion-artifact-evidence.d.ts +0 -1
  417. package/dist/services/feedback/promotion-artifact-evidence.js +0 -1
  418. package/dist/services/final-review/final-review-evidence-budget.d.ts +0 -3
  419. package/dist/services/final-review/final-review-evidence-budget.js +0 -5
  420. package/dist/services/final-review/final-review-evidence-sources.d.ts +0 -1
  421. package/dist/services/final-review/final-review-evidence-sources.js +0 -1
  422. package/dist/services/final-review/final-review-output-budget.d.ts +0 -1
  423. package/dist/services/final-review/final-review-output-budget.js +0 -3
  424. package/dist/services/final-review/final-review-service.d.ts +0 -1
  425. package/dist/services/final-review/final-review-service.js +0 -1
  426. package/dist/services/fixture/fixture-capture-service.js +0 -1
  427. package/dist/services/fixture/fixture-sanitize-service.d.ts +0 -3
  428. package/dist/services/fixture/fixture-sanitize-service.js +0 -3
  429. package/dist/services/fresh-context/config.js +0 -1
  430. package/dist/services/fresh-context/fresh-context-block.js +0 -1
  431. package/dist/services/fresh-context/trigger-scan.d.ts +0 -1
  432. package/dist/services/fresh-context/trigger-scan.js +0 -1
  433. package/dist/services/fuzzy-matching/fzf-pick-service.d.ts +0 -1
  434. package/dist/services/fuzzy-matching/fzf-pick-service.js +0 -1
  435. package/dist/services/handoff/handoff-parser.d.ts +0 -1
  436. package/dist/services/handoff/handoff-parser.js +0 -1
  437. package/dist/services/handoff/handoff-types.d.ts +0 -1
  438. package/dist/services/handoff/handoff-types.js +0 -1
  439. package/dist/services/handoff/handoff-writer.d.ts +0 -1
  440. package/dist/services/handoff/handoff-writer.js +0 -1
  441. package/dist/services/hooks/auto-compact-hook-install.d.ts +0 -1
  442. package/dist/services/hooks/auto-compact-hook-install.js +0 -1
  443. package/dist/services/hooks/output.d.ts +0 -1
  444. package/dist/services/hooks/output.js +0 -1
  445. package/dist/services/hooks/pre-tool-code-gate.d.ts +0 -1
  446. package/dist/services/hooks/pre-tool-code-gate.js +0 -1
  447. package/dist/services/hooks/presence-marker-detector.js +0 -1
  448. package/dist/services/hooks/worktree-authorization-gate.d.ts +0 -3
  449. package/dist/services/hooks/worktree-authorization-gate.js +0 -1
  450. package/dist/services/ide/adapters/claude-code-adapter.d.ts +0 -5
  451. package/dist/services/ide/adapters/claude-code-adapter.js +0 -11
  452. package/dist/services/ide/adapters/qoder-adapter.d.ts +0 -3
  453. package/dist/services/ide/adapters/qoder-adapter.js +0 -5
  454. package/dist/services/ide/adapters/tongyi-lingma-adapter.d.ts +0 -2
  455. package/dist/services/ide/adapters/tongyi-lingma-adapter.js +0 -2
  456. package/dist/services/ide/adapters/trae-adapter.d.ts +0 -3
  457. package/dist/services/ide/adapters/trae-adapter.js +3 -6
  458. package/dist/services/ide/adapters/zcode-adapter.js +0 -2
  459. package/dist/services/ide/current-model-detector.js +0 -1
  460. package/dist/services/ide/hook-protocol.d.ts +0 -2
  461. package/dist/services/ide/hook-protocol.js +0 -2
  462. package/dist/services/ide/ide-compact-types.d.ts +0 -7
  463. package/dist/services/ide/ide-types.d.ts +0 -12
  464. package/dist/services/ide/resource-profile.d.ts +0 -1
  465. package/dist/services/job/job-commit-verification.d.ts +0 -2
  466. package/dist/services/job/job-commit-verification.js +0 -2
  467. package/dist/services/job/job-orchestrator.d.ts +0 -1
  468. package/dist/services/job/job-orchestrator.js +0 -1
  469. package/dist/services/job/job-progress-store.d.ts +0 -2
  470. package/dist/services/job/job-progress-store.js +0 -3
  471. package/dist/services/job/job-types.js +0 -1
  472. package/dist/services/job-snapshot/snapshot.js +0 -1
  473. package/dist/services/karpathy-cost/karpathy-cost-check-service.js +0 -1
  474. package/dist/services/legacy/legacy-detector.js +0 -1
  475. package/dist/services/log/log-commands-service.d.ts +0 -2
  476. package/dist/services/log/log-commands-service.js +0 -2
  477. package/dist/services/log/logger.d.ts +0 -1
  478. package/dist/services/log/logger.js +0 -1
  479. package/dist/services/log/redact.d.ts +0 -1
  480. package/dist/services/log/redact.js +0 -1
  481. package/dist/services/log/retention.d.ts +0 -17
  482. package/dist/services/log/retention.js +0 -18
  483. package/dist/services/loop/loop-bee-relation-service.d.ts +3 -3
  484. package/dist/services/loop/loop-bee-relation-service.js +14 -13
  485. package/dist/services/loop/loop-bee-relation-store.d.ts +9 -10
  486. package/dist/services/loop/loop-bee-relation-store.js +1 -2
  487. package/dist/services/loop/loop-bee-relation-types.d.ts +1 -1
  488. package/dist/services/loop/loop-bee-relation-types.js +1 -1
  489. package/dist/services/loop/loop-release-service.d.ts +3 -3
  490. package/dist/services/loop/loop-release-service.js +1 -1
  491. package/dist/services/loop/loop-release-store.d.ts +6 -7
  492. package/dist/services/loop/loop-release-store.js +0 -1
  493. package/dist/services/loop/monotonic-guard.d.ts +0 -1
  494. package/dist/services/loop/monotonic-guard.js +0 -1
  495. package/dist/services/memory/memory-ingest-service.js +0 -1
  496. package/dist/services/memory/project-context-service.d.ts +0 -1
  497. package/dist/services/memory/project-context-service.js +0 -1
  498. package/dist/services/memory/project-memory-service/index/reindex.d.ts +0 -2
  499. package/dist/services/memory/project-memory-service/index/reindex.js +0 -1
  500. package/dist/services/memory/project-memory-service/index/search.d.ts +0 -1
  501. package/dist/services/memory/project-memory-service/index/search.js +0 -1
  502. package/dist/services/memory/project-memory-service/index.d.ts +1 -1
  503. package/dist/services/memory/project-memory-service/index.js +1 -1
  504. package/dist/services/memory/project-memory-service/memory-kinds.d.ts +0 -1
  505. package/dist/services/memory/project-memory-service/memory-kinds.js +0 -1
  506. package/dist/services/memory/project-memory-service/parsers/frontmatter.d.ts +0 -1
  507. package/dist/services/memory/project-memory-service/parsers/frontmatter.js +0 -1
  508. package/dist/services/memory/project-memory-service/store/atomic-write.d.ts +19 -7
  509. package/dist/services/memory/project-memory-service/store/atomic-write.js +120 -26
  510. package/dist/services/memory/project-memory-service.js +0 -1
  511. package/dist/services/mode/mode-enforcement.js +0 -1
  512. package/dist/services/mode/mode-status-service.d.ts +0 -2
  513. package/dist/services/mode/mode-status-service.js +0 -2
  514. package/dist/services/observability/aggregation.d.ts +0 -4
  515. package/dist/services/observability/aggregation.js +0 -6
  516. package/dist/services/observability/observability-schema.js +0 -1
  517. package/dist/services/observability/observability-service.d.ts +0 -5
  518. package/dist/services/observability/observability-service.js +0 -4
  519. package/dist/services/observability/report-formatter.d.ts +0 -2
  520. package/dist/services/observability/report-formatter.js +0 -2
  521. package/dist/services/openspec/artifact-boundary.d.ts +0 -4
  522. package/dist/services/openspec/artifact-boundary.js +0 -4
  523. package/dist/services/openspec/coverage-evidence-reader.d.ts +0 -1
  524. package/dist/services/openspec/coverage-evidence-reader.js +0 -1
  525. package/dist/services/polyrepo/polyrepo-dispatcher.js +0 -1
  526. package/dist/services/polyrepo/polyrepo-scanner.js +0 -1
  527. package/dist/services/polyrepo/polyrepo-service.js +0 -1
  528. package/dist/services/polyrepo/polyrepo-types.d.ts +0 -1
  529. package/dist/services/prd/best-practice-auto-trigger.d.ts +0 -2
  530. package/dist/services/prd/best-practice-auto-trigger.js +0 -2
  531. package/dist/services/prd/gate-evidence-derivation.d.ts +0 -4
  532. package/dist/services/prd/gate-evidence-derivation.js +0 -5
  533. package/dist/services/prd/handoff-auto-regen.js +0 -5
  534. package/dist/services/prd/handoff-frontmatter-shape.d.ts +0 -2
  535. package/dist/services/prd/handoff-frontmatter-shape.js +0 -2
  536. package/dist/services/prd/handoff-frontmatter.d.ts +0 -1
  537. package/dist/services/prd/handoff-frontmatter.js +61 -2
  538. package/dist/services/prd/handoff-gate-evidence.d.ts +0 -1
  539. package/dist/services/prd/handoff-gate-evidence.js +12 -12
  540. package/dist/services/prd/handoff-path-resolution.d.ts +0 -7
  541. package/dist/services/prd/handoff-path-resolution.js +0 -10
  542. package/dist/services/prd/handoff-service.d.ts +11 -3
  543. package/dist/services/prd/handoff-service.js +11 -3
  544. package/dist/services/prd/handoff-types.d.ts +33 -3
  545. package/dist/services/prd/handoff-types.js +0 -1
  546. package/dist/services/prd/project-scan-bootstrap-service.d.ts +0 -1
  547. package/dist/services/prd/project-scan-bootstrap-service.js +0 -4
  548. package/dist/services/prd/project-scan-types.d.ts +0 -1
  549. package/dist/services/prd/project-scan-types.js +0 -1
  550. package/dist/services/preferences/preferences-service.d.ts +0 -1
  551. package/dist/services/preferences/preferences-service.js +0 -5
  552. package/dist/services/preferences/preferences-types.d.ts +0 -14
  553. package/dist/services/preferences/preferences-types.js +0 -4
  554. package/dist/services/progress/progress-service.js +0 -1
  555. package/dist/services/qa/bdd-test-style-verifier.d.ts +0 -1
  556. package/dist/services/qa/bdd-test-style-verifier.js +0 -1
  557. package/dist/services/qa/browser-event-logger.d.ts +0 -1
  558. package/dist/services/qa/browser-event-logger.js +0 -1
  559. package/dist/services/qa/browser-restart-detector.d.ts +0 -1
  560. package/dist/services/qa/browser-restart-detector.js +0 -1
  561. package/dist/services/qa/browser-reuse-hint.d.ts +0 -1
  562. package/dist/services/qa/browser-reuse-hint.js +0 -1
  563. package/dist/services/qa/qa-business-review-state.js +0 -2
  564. package/dist/services/qa/screenshot-archive-service.d.ts +0 -1
  565. package/dist/services/qa/screenshot-archive-service.js +0 -1
  566. package/dist/services/rd/impl.js +0 -1
  567. package/dist/services/rd/rd-service.d.ts +0 -5
  568. package/dist/services/rd/rd-service.js +0 -5
  569. package/dist/services/rd/reviewer-dispatch-policy.d.ts +0 -4
  570. package/dist/services/rd/reviewer-dispatch-policy.js +0 -4
  571. package/dist/services/rd/standards-diagnostic.js +0 -1
  572. package/dist/services/rd/tactical-stage.js +0 -1
  573. package/dist/services/rd-swarm/rd-swarm-types.d.ts +0 -1
  574. package/dist/services/rd-swarm/rd-swarm-types.js +0 -1
  575. package/dist/services/recommendations/installed-capability-detector.d.ts +5 -6
  576. package/dist/services/recommendations/installed-capability-detector.js +11 -11
  577. package/dist/services/release/version-precheck-service.d.ts +0 -2
  578. package/dist/services/release/version-precheck-service.js +0 -3
  579. package/dist/services/retrospective/retrospective-index.d.ts +0 -1
  580. package/dist/services/retrospective/retrospective-index.js +0 -1
  581. package/dist/services/retrospective/retrospective-show.d.ts +0 -1
  582. package/dist/services/retrospective/retrospective-show.js +0 -1
  583. package/dist/services/reviewer/model-family.js +0 -1
  584. package/dist/services/reviewer/reviewer-config.js +0 -1
  585. package/dist/services/reviewer/reviewer-service.d.ts +0 -1
  586. package/dist/services/reviewer/reviewer-service.js +0 -3
  587. package/dist/services/reviewer/selection-strategies.js +0 -1
  588. package/dist/services/runtime/runtime-detector.js +0 -1
  589. package/dist/services/runtime/runtime-service.d.ts +0 -2
  590. package/dist/services/runtime/vendor-adapter.d.ts +0 -7
  591. package/dist/services/runtime/vendors/claude-code.js +0 -1
  592. package/dist/services/runtime/vendors/codex.js +0 -1
  593. package/dist/services/runtime/vendors/copilot.js +0 -1
  594. package/dist/services/sc/sc-service.js +0 -6
  595. package/dist/services/scan/acceptance-coverage-service.js +0 -2
  596. package/dist/services/scan/api-diff-recorded.d.ts +0 -1
  597. package/dist/services/scan/api-diff-recorded.js +0 -1
  598. package/dist/services/scan/api-diff-service.d.ts +0 -1
  599. package/dist/services/scan/api-diff-service.js +0 -1
  600. package/dist/services/scan/api-diff-types.d.ts +0 -1
  601. package/dist/services/scan/api-diff-types.js +0 -1
  602. package/dist/services/scan/archetype-detection.d.ts +37 -0
  603. package/dist/services/scan/archetype-detection.js +175 -2
  604. package/dist/services/scan/archetype-service.js +36 -23
  605. package/dist/services/scan/file-size-policy.d.ts +0 -1
  606. package/dist/services/scan/file-size-policy.js +0 -5
  607. package/dist/services/scan/file-size-scan.d.ts +0 -1
  608. package/dist/services/scan/scan-types.d.ts +9 -0
  609. package/dist/services/security/safe-settings-path.js +0 -1
  610. package/dist/services/session/binding-store.d.ts +0 -4
  611. package/dist/services/session/binding-store.js +0 -7
  612. package/dist/services/session/caller-binding-service.d.ts +0 -6
  613. package/dist/services/session/caller-binding-service.js +0 -4
  614. package/dist/services/session/caller-id-types.d.ts +0 -3
  615. package/dist/services/session/caller-id-types.js +0 -2
  616. package/dist/services/session/getSessionDir.js +0 -1
  617. package/dist/services/session/index.js +0 -1
  618. package/dist/services/session/platform-fallbacks.d.ts +0 -3
  619. package/dist/services/session/platform-fallbacks.js +0 -3
  620. package/dist/services/session/resolve-caller-id.d.ts +0 -2
  621. package/dist/services/session/resolve-caller-id.js +0 -2
  622. package/dist/services/session/session-binding-bridge.d.ts +0 -2
  623. package/dist/services/session/session-binding-bridge.js +0 -15
  624. package/dist/services/session/session-checkpoint-service.d.ts +0 -1
  625. package/dist/services/session/session-checkpoint-service.js +0 -1
  626. package/dist/services/session/session-manager.d.ts +0 -8
  627. package/dist/services/session/session-manager.js +0 -19
  628. package/dist/services/session/session-resume-service.d.ts +0 -1
  629. package/dist/services/session/session-resume-service.js +0 -1
  630. package/dist/services/share/bundle-reader.d.ts +2 -5
  631. package/dist/services/share/bundle-reader.js +6 -8
  632. package/dist/services/share/bundle-writer.d.ts +2 -2
  633. package/dist/services/skill/resume-detector.js +0 -3
  634. package/dist/services/skill/skill-scheduler.d.ts +0 -1
  635. package/dist/services/skill/skill-scheduler.js +0 -1
  636. package/dist/services/skill/skill-search-service.d.ts +0 -2
  637. package/dist/services/skill/skill-search-service.js +0 -2
  638. package/dist/services/skillhub/release-diff.d.ts +2 -2
  639. package/dist/services/skillhub/release-export.d.ts +2 -2
  640. package/dist/services/skillhub/release-gc-blobs.d.ts +2 -2
  641. package/dist/services/skillhub/release-import.d.ts +2 -2
  642. package/dist/services/skillhub/release-import.js +2 -1
  643. package/dist/services/skillhub/release-retain.d.ts +2 -2
  644. package/dist/services/skillhub/release-retain.js +2 -1
  645. package/dist/services/skillhub/sqlite-store.d.ts +3 -3
  646. package/dist/services/skillhub/sqlite-store.js +4 -5
  647. package/dist/services/skills/hooks-codegate-superpowers.d.ts +0 -3
  648. package/dist/services/skills/hooks-codegate-superpowers.js +0 -14
  649. package/dist/services/skills/hooks-settings-service.d.ts +0 -2
  650. package/dist/services/skills/hooks-settings-service.js +0 -6
  651. package/dist/services/skills/presence-lease-service.d.ts +0 -1
  652. package/dist/services/skills/presence-lease-service.js +0 -1
  653. package/dist/services/skills/session-start-hook-constants.d.ts +0 -4
  654. package/dist/services/skills/session-start-hook-constants.js +0 -4
  655. package/dist/services/skills/skill-presence-service.d.ts +0 -8
  656. package/dist/services/skills/skill-presence-service.js +0 -13
  657. package/dist/services/skills/skill-statusline-model.d.ts +0 -6
  658. package/dist/services/skills/skill-statusline-model.js +1 -4
  659. package/dist/services/skills/skill-statusline-renderer.d.ts +0 -1
  660. package/dist/services/skills/skill-statusline-renderer.js +0 -12
  661. package/dist/services/skills/skill-statusline-service.js +0 -6
  662. package/dist/services/skills/skill-statusline-sid-suffix.d.ts +0 -2
  663. package/dist/services/skills/skill-statusline-sid-suffix.js +0 -2
  664. package/dist/services/skills/statusline-palette.d.ts +0 -2
  665. package/dist/services/skills/statusline-palette.js +0 -3
  666. package/dist/services/slice/slice-archive-service.js +0 -1
  667. package/dist/services/slice/slice-benchmark-service.d.ts +0 -1
  668. package/dist/services/slice/slice-benchmark-service.js +0 -1
  669. package/dist/services/slice/slice-check-service.js +0 -6
  670. package/dist/services/slice/slice-check-types.d.ts +0 -1
  671. package/dist/services/slice/slice-pick-service.d.ts +0 -1
  672. package/dist/services/slice/slice-pick-service.js +0 -1
  673. package/dist/services/slice/slice-review-state.js +0 -2
  674. package/dist/services/sqlite/sqlite-driver.d.ts +118 -0
  675. package/dist/services/sqlite/sqlite-driver.js +159 -0
  676. package/dist/services/standards/ide-aware-standards-service.d.ts +0 -2
  677. package/dist/services/standards/ide-aware-standards-service.js +0 -1
  678. package/dist/services/standards/loop-engineering-readiness-lint.d.ts +0 -1
  679. package/dist/services/standards/loop-engineering-readiness-lint.js +0 -1
  680. package/dist/services/standards/migrate-claude-rules-service.js +0 -3
  681. package/dist/services/standards/migrate-service.d.ts +0 -1
  682. package/dist/services/standards/migrate-service.js +0 -1
  683. package/dist/services/standards/missing-standards-detector.d.ts +0 -2
  684. package/dist/services/standards/missing-standards-detector.js +0 -3
  685. package/dist/services/standards/project-standards-service.d.ts +0 -1
  686. package/dist/services/standards/project-standards-service.js +0 -1
  687. package/dist/services/standards/standards-render.d.ts +0 -1
  688. package/dist/services/standards/standards-render.js +0 -1
  689. package/dist/services/standards/ui-library-dispatch-block.d.ts +0 -1
  690. package/dist/services/standards/ui-library-dispatch-block.js +0 -1
  691. package/dist/services/tech/tech-change-id-service.d.ts +0 -7
  692. package/dist/services/tech/tech-change-id-service.js +0 -7
  693. package/dist/services/tech/tech-service.js +0 -5
  694. package/dist/services/verdict/envelope-parsers.d.ts +0 -2
  695. package/dist/services/verdict/envelope-parsers.js +0 -2
  696. package/dist/services/verdict/envelopes.d.ts +0 -1
  697. package/dist/services/vm/vm-lease.js +0 -1
  698. package/dist/services/web/aria-node.d.ts +0 -1
  699. package/dist/services/web/bounded-output.d.ts +0 -1
  700. package/dist/services/web/bounded-output.js +0 -1
  701. package/dist/services/web/browser-acquire.js +0 -1
  702. package/dist/services/web/browser-cache-probe.js +0 -1
  703. package/dist/services/web/browser-session-manager.js +0 -1
  704. package/dist/services/web/daemon-entry.js +0 -1
  705. package/dist/services/web/daemon-registry.js +0 -1
  706. package/dist/services/web/daemon-supervisor.d.ts +4 -3
  707. package/dist/services/web/daemon-supervisor.js +4 -4
  708. package/dist/services/web/playwright-loader.js +0 -1
  709. package/dist/services/web/playwright-types.d.ts +0 -1
  710. package/dist/services/web/snapshot-pruner.js +0 -1
  711. package/dist/services/web/untrusted-envelope.d.ts +0 -1
  712. package/dist/services/web/web-artifact-paths.js +0 -1
  713. package/dist/services/web/web-client.d.ts +0 -1
  714. package/dist/services/web/web-daemon-service.js +0 -1
  715. package/dist/services/web/web-fallback.d.ts +0 -1
  716. package/dist/services/web/web-fallback.js +0 -1
  717. package/dist/services/web/web-install-service.js +0 -1
  718. package/dist/services/web/web-login-profile.js +0 -1
  719. package/dist/services/web/web-protocol.d.ts +0 -1
  720. package/dist/services/web/web-protocol.js +0 -1
  721. package/dist/services/web/web-status-report.js +0 -1
  722. package/dist/services/workflow/artifact-paths.js +0 -3
  723. package/dist/services/workflow/autonomous-resume-writer.js +0 -2
  724. package/dist/services/workflow/pipeline-verify-gate-support.d.ts +0 -5
  725. package/dist/services/workflow/pipeline-verify-gate-support.js +0 -11
  726. package/dist/services/workflow/pipeline-verify-service.d.ts +0 -2
  727. package/dist/services/workflow/pipeline-verify-service.js +0 -15
  728. package/dist/services/workflow/pipeline-verify-types.d.ts +0 -10
  729. package/dist/services/workflow/pipeline-verify-types.js +0 -2
  730. package/dist/services/workflow/plan-reader.d.ts +0 -1
  731. package/dist/services/workflow/plan-reader.js +0 -5
  732. package/dist/services/workflow/plan-refresher.js +0 -2
  733. package/dist/services/workflow/plan-trigger-detector.d.ts +0 -2
  734. package/dist/services/workflow/plan-trigger-detector.js +0 -3
  735. package/dist/services/workflow/workflow-autonomous-resume-helpers.js +0 -5
  736. package/dist/services/workflow/workflow-autonomous-service.js +0 -2
  737. package/dist/services/workflow/workflow-autonomous-types.d.ts +0 -2
  738. package/dist/services/workflow/workflow-autonomous-types.js +0 -2
  739. package/dist/services/workflow/workflow-graph-types.d.ts +0 -1
  740. package/dist/services/workflow/workflow-graph-types.js +0 -1
  741. package/dist/services/workflow/workflow-router-service.js +0 -4
  742. package/dist/services/workflow/workflow-skip-service.d.ts +0 -1
  743. package/dist/services/workflow/workflow-skip-service.js +0 -1
  744. package/dist/services/workflow/workflow-spec-lint.d.ts +0 -2
  745. package/dist/services/workflow/workflow-spec-lint.js +0 -2
  746. package/dist/services/workflow/workflow-spec-types.d.ts +0 -1
  747. package/dist/services/workflow/workflow-spec-types.js +0 -1
  748. package/dist/services/workflow/workflow-spec-yaml.d.ts +0 -2
  749. package/dist/services/workflow/workflow-spec-yaml.js +0 -2
  750. package/dist/services/workflow/workflow-spec.js +0 -1
  751. package/dist/services/workflow/workflow-state-store.js +0 -1
  752. package/dist/services/workspace/claude-settings-template.d.ts +0 -4
  753. package/dist/services/workspace/claude-settings-template.js +0 -4
  754. package/dist/services/workspace/generated-artifacts-stamp.d.ts +2 -2
  755. package/dist/services/workspace/generated-artifacts-stamp.js +2 -2
  756. package/dist/services/workspace/migrate-1-4-1-service.d.ts +0 -1
  757. package/dist/services/workspace/migrate-1-4-1-service.js +0 -1
  758. package/dist/services/workspace/migrate-service.js +0 -8
  759. package/dist/services/workspace/migrate-types.d.ts +0 -4
  760. package/dist/services/workspace/migrate-types.js +0 -1
  761. package/dist/services/workspace/reconcile-migrate.d.ts +0 -3
  762. package/dist/services/workspace/reconcile-migrate.js +0 -5
  763. package/dist/services/workspace/reconcile-service.d.ts +0 -3
  764. package/dist/services/workspace/reconcile-service.js +0 -7
  765. package/dist/services/workspace/reconcile-types.d.ts +0 -5
  766. package/dist/services/workspace/sid-naming-guard.d.ts +0 -1
  767. package/dist/services/workspace/sid-naming-guard.js +0 -1
  768. package/dist/services/workspace/templates/project-scan/index.d.ts +0 -3
  769. package/dist/services/workspace/templates/project-scan/index.js +0 -3
  770. package/dist/services/workspace/workspace-claude-settings-materializer.d.ts +0 -1
  771. package/dist/services/workspace/workspace-claude-settings-materializer.js +0 -4
  772. package/dist/services/workspace/workspace-service.d.ts +0 -7
  773. package/dist/services/workspace/workspace-service.js +1 -17
  774. package/dist/services/worktree/playwright-profile.js +0 -1
  775. package/dist/services/worktree/worktree-lease-types.d.ts +0 -1
  776. package/dist/services/worktree/worktree-lease-types.js +0 -1
  777. package/dist/services/worktree/worktree-lease.d.ts +0 -2
  778. package/dist/services/worktree/worktree-lease.js +0 -2
  779. package/dist/shared/format-md-compact.d.ts +0 -2
  780. package/dist/shared/format-md-compact.js +0 -2
  781. package/dist/shared/incrementing-number.d.ts +0 -1
  782. package/dist/shared/incrementing-number.js +0 -1
  783. package/dist/shared/path-utils.d.ts +0 -1
  784. package/dist/shared/path-utils.js +0 -1
  785. package/dist/shared/runtime-root.d.ts +0 -1
  786. package/dist/shared/runtime-root.js +0 -1
  787. package/dist/shared/stale-policy.d.ts +0 -1
  788. package/dist/shared/stale-policy.js +0 -1
  789. package/package.json +12 -10
  790. package/scripts/canonical-store-link.mjs +296 -0
  791. package/scripts/canonical-store-prune.mjs +131 -0
  792. package/scripts/canonical-store.mjs +298 -0
  793. package/scripts/install-skills.mjs +175 -560
  794. package/skills/bee/peaks-qa/references/reading-handoff-frontmatter.md +3 -1
  795. package/skills/bee/peaks-rd/references/parallel-review-fanout.md +1 -1
  796. package/skills/bee/peaks-rd/references/rd-fanout-contracts.md +3 -2
  797. package/skills/bee/peaks-rd/references/writing-handoff-frontmatter.md +29 -7
  798. package/skills/peaks-audit/SKILL.md +3 -3
  799. package/skills/peaks-code/references/frontend-only-mode.md +2 -2
  800. package/skills/peaks-code/references/startup-sequence.md +0 -4
  801. package/dist/cli/commands/upgrade-commands.d.ts +0 -25
  802. package/dist/cli/commands/upgrade-commands.js +0 -154
  803. package/dist/services/codegraph/codegraph-include-reconciler.d.ts +0 -10
  804. package/dist/services/codegraph/codegraph-include-reconciler.js +0 -160
  805. package/dist/services/upgrade/1x-detector-service.d.ts +0 -7
  806. package/dist/services/upgrade/1x-detector-service.js +0 -96
  807. package/dist/services/upgrade/gitignore-migrate-service.d.ts +0 -56
  808. package/dist/services/upgrade/gitignore-migrate-service.js +0 -170
  809. package/dist/services/upgrade/upgrade-service.d.ts +0 -81
  810. package/dist/services/upgrade/upgrade-service.js +0 -428
  811. package/skills/peaks-code/references/step-0-55-1x-detection.md +0 -83
@@ -0,0 +1,217 @@
1
+ /**
2
+ * The line mechanics of a comment prune, and the proof that gates every write.
3
+ *
4
+ * Split from `comment-prune.ts` because the two change for different reasons: that
5
+ * module decides WHAT is debt (and follows the classifier), this one decides how a
6
+ * line is removed from a file without damaging the file (and follows the language).
7
+ * Keeping them apart is also what lets the proof be tested on a text array, with no
8
+ * filesystem and no scan in the room.
9
+ */
10
+ import { existsSync, readFileSync, writeFileSync } from 'node:fs';
11
+ import { join } from 'node:path';
12
+ import { endsInsideLiteral } from './comment-spans.js';
13
+ /**
14
+ * Read a file, or report that it is not there — a prune never creates one.
15
+ *
16
+ * `existsSync` first, and NO catch: a `catch { return null }` answers "present but
17
+ * unreadable" (permissions, a locked handle, a directory named as a file) with the same
18
+ * `null` as "absent", and that conflation is the defect this repository already
19
+ * ratchets under `silentWarningCatchReturnNull` — this very helper was counted by it.
20
+ * An absent path is a state the caller handles; an unreadable one should be a crash an
21
+ * operator sees.
22
+ */
23
+ export function readFileSafe(root, rel) {
24
+ const abs = join(root, rel);
25
+ return existsSync(abs) ? readFileSync(abs, 'utf8') : null;
26
+ }
27
+ /**
28
+ * Split a source into lines, remembering what separated them.
29
+ *
30
+ * `mixed` is the signal to leave a file alone rather than a detail to paper over: a
31
+ * file with both CRLF and LF endings cannot be re-joined from one delimiter without
32
+ * rewriting every line, and a rewrite of every line is not a comment edit — it would
33
+ * also make the proof below vacuous, because all the lines would differ.
34
+ */
35
+ export function splitLines(source) {
36
+ const crlf = source.includes('\r\n');
37
+ const lfOnly = /\n(?!\r)/.test(source.replace(/\r\n/g, '\n')) || /\n[^\r]/.test(source);
38
+ return {
39
+ lines: source.split(/\r?\n/),
40
+ eol: crlf ? '\r\n' : '\n',
41
+ mixed: crlf && lfOnly
42
+ };
43
+ }
44
+ /** Group a plan by file, in first-seen order. */
45
+ export function actionsByFile(actions) {
46
+ const byFile = new Map();
47
+ for (const action of actions) {
48
+ const list = byFile.get(action.file);
49
+ if (list === undefined)
50
+ byFile.set(action.file, [action]);
51
+ else
52
+ list.push(action);
53
+ }
54
+ return byFile;
55
+ }
56
+ /**
57
+ * The proof, as data: compare kept lines against the original.
58
+ *
59
+ * One string per violation; empty means every difference between the two texts is a
60
+ * line this plan named, and every line it named that was kept is byte-identical to
61
+ * what was there before. This is computed whether or not the caller intends to write,
62
+ * so a dry run reports the refusals a real run would hit.
63
+ */
64
+ export function proofViolations(before, after, actions) {
65
+ const dropped = new Set(actions.filter((a) => a.mode === 'drop-line').map((a) => a.line));
66
+ // The blanks the drops orphan are removed on purpose too — the SAME function the writer
67
+ // uses decides, so the proof can never be persuaded to allow more than the writer does.
68
+ const removed = new Set(dropped);
69
+ for (const blank of orphanedBlanks(before, dropped))
70
+ removed.add(blank);
71
+ const stripped = new Set(actions.filter((a) => a.mode === 'strip-trailing').map((a) => a.line));
72
+ const violations = [];
73
+ let afterAt = 0;
74
+ before.forEach((original, index) => {
75
+ const line = index + 1;
76
+ if (removed.has(line))
77
+ return; // deleted on purpose
78
+ if (stripped.has(line)) {
79
+ // The only thing a strip may do is reveal the code that was already there, so
80
+ // what survives must be a PREFIX of the original line — that is what makes it a
81
+ // comment edit, and anything else is a code edit wearing its clothes.
82
+ const kept = after[afterAt] ?? '';
83
+ afterAt += 1;
84
+ if (!original.startsWith(kept))
85
+ violations.push(`line ${line}: code text changed`);
86
+ // The prefix test above is true of EVERY truncation, which is how a strip that
87
+ // cut a template literal in half passed it. `startsWith` says nothing about
88
+ // whether what survives is still complete code, so that is asked separately.
89
+ // refused the write that left `snippet: \`` in `src/`.)
90
+ else if (endsInsideLiteral(kept)) {
91
+ violations.push(`line ${line}: strip left an unterminated literal — the code changed`);
92
+ }
93
+ return;
94
+ }
95
+ if (after[afterAt] !== original)
96
+ violations.push(`line ${line}: untouched line differs`);
97
+ afterAt += 1;
98
+ });
99
+ if (afterAt !== after.length)
100
+ violations.push(`produced ${after.length - afterAt} extra line(s)`);
101
+ return violations;
102
+ }
103
+ /**
104
+ * The blank lines a set of drops ORPHANS.
105
+ *
106
+ * A comment standing alone between two blanks is the only thing separating two blocks:
107
+ *
108
+ * }
109
+ * ← blank
110
+ * ← blank
111
+ * type AuditEnvelopeGuard<T> = …
112
+ *
113
+ * Deleting the comment joins the two blanks into a double blank, which is not what the
114
+ * file said before and not what any formatter will keep. So the drop owns that blank line
115
+ * — it is the residue of a comment removal, not an edit of someone's whitespace. Only a
116
+ * blank that becomes adjacent to another blank THROUGH a drop is claimed here: a double
117
+ * blank the repository already carries is left exactly where it is, because the pruner did
118
+ * not make it and has no business "fixing" it.
119
+ *
120
+ * ONE HELPER, BOTH CALLERS: `pruneFileLines` removes these and `proofViolations` allows
121
+ * them. A second copy of this rule is the defect class this whole feature answers, so the
122
+ * writer and the checker ask the same function the same question.
123
+ */
124
+ export function orphanedBlanks(before, dropped) {
125
+ const orphaned = new Set();
126
+ let lastKept = 0; // 1-based line number of the last line that survived
127
+ for (let index = 0; index < before.length; index += 1) {
128
+ const line = index + 1;
129
+ if (dropped.has(line))
130
+ continue;
131
+ const isBlank = (before[index] ?? '').trim() === '';
132
+ if (isBlank && lastKept > 0 && (before[lastKept - 1] ?? '').trim() === '') {
133
+ // Every original line between the two blanks was dropped, or this blank is the
134
+ // join the drop created. Anything else was a double blank before this run began.
135
+ // A blank is claimed ONLY when a drop actually sits between it and the previous
136
+ // surviving blank: `between` must be non-empty, because `[].every(…)` is true and
137
+ // an empty gap is a double blank the repository already had — which this run did
138
+ // not make and has no business touching.
139
+ const between = range(lastKept + 1, line - 1);
140
+ if (between.length > 0 && between.every((n) => dropped.has(n)))
141
+ orphaned.add(line);
142
+ }
143
+ lastKept = line;
144
+ }
145
+ return orphaned;
146
+ }
147
+ /** Inclusive integer range, empty when `from > to`. */
148
+ function range(from, to) {
149
+ const out = [];
150
+ for (let n = from; n <= to; n += 1)
151
+ out.push(n);
152
+ return out;
153
+ }
154
+ /** Apply one file's actions to its lines, in the plan's own terms. */
155
+ export function pruneFileLines(lines, actions) {
156
+ const drop = new Set(actions.filter((a) => a.mode === 'drop-line').map((a) => a.line));
157
+ const gone = new Set(drop);
158
+ for (const blank of orphanedBlanks(lines, drop))
159
+ gone.add(blank);
160
+ const strip = new Map(actions.filter((a) => a.mode === 'strip-trailing').map((a) => [a.line, a.comment]));
161
+ const out = [];
162
+ lines.forEach((original, index) => {
163
+ const line = index + 1;
164
+ if (gone.has(line))
165
+ return;
166
+ if (strip.has(line)) {
167
+ // Cut where the scan's comment text starts, not at the first `//` in the line:
168
+ // `const url = "https://example.com"; // Slice 1 kept it` has its `//` inside a
169
+ // string literal, and slicing there would delete code.
170
+ const comment = strip.get(line) ?? '';
171
+ const at = original.indexOf(comment);
172
+ out.push(at > 0 ? original.slice(0, at).trimEnd() : comment.trimEnd());
173
+ return;
174
+ }
175
+ out.push(original);
176
+ });
177
+ return out;
178
+ }
179
+ /**
180
+ * Run the proof on every planned file, and write only the files that passed it.
181
+ *
182
+ * A file that fails is reported and left alone — never written "mostly", because a
183
+ * partially-pruned file is exactly the state the proof exists to make unreachable.
184
+ */
185
+ export function executePlan(projectRoot, byFile, apply) {
186
+ const touched = [];
187
+ const notWritten = [];
188
+ const fileSkips = [];
189
+ for (const [file, fileActions] of byFile) {
190
+ const source = readFileSafe(projectRoot, file);
191
+ if (source === null) {
192
+ notWritten.push(file);
193
+ continue;
194
+ }
195
+ const parts = splitLines(source);
196
+ if (parts.mixed) {
197
+ fileSkips.push({
198
+ file,
199
+ line: 0,
200
+ reason: 'mixed-line-endings',
201
+ text: `${parts.lines.length} line(s) left untouched`
202
+ });
203
+ notWritten.push(file);
204
+ continue;
205
+ }
206
+ const after = pruneFileLines(parts.lines, fileActions);
207
+ const violations = proofViolations(parts.lines, after, fileActions);
208
+ if (violations.length > 0) {
209
+ notWritten.push(`${file} (${violations[0]})`);
210
+ continue;
211
+ }
212
+ touched.push(file);
213
+ if (apply)
214
+ writeFileSync(join(projectRoot, file), after.join(parts.eol));
215
+ }
216
+ return { touched, notWritten, fileSkips };
217
+ }
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Is a path required to exist in a checkout at all?
3
+ *
4
+ * The dominant false positive on `dead-reference` was never a stale comment: it
5
+ * was a correct reference to a file git is told not to track. Ranked over this
6
+ * repository, the top twelve "dead" citations were `.claude/settings.local.json`,
7
+ * `.peaks/_runtime/session.json`, `.peaks/.session.json`,
8
+ * `.peaks/_runtime/active-skill.json`, `.codegraph/config.json`,
9
+ * `.peaks/preferences.json` and friends — all generated state, all named
10
+ * correctly by the code that writes them.
11
+ *
12
+ * So the probe answers "exists OR ignored", and the ignore reading is deliberately
13
+ * bounded: trailing-slash prefixes, whole-path entries, and bare-basename entries.
14
+ * That limit has a direction, and the direction is the safe one — a rule
15
+ * `.gitignore` expresses fancily (negation, `**`, character classes) is NOT read
16
+ * here, so such a path stays reported. A missed exemption is a finding a human
17
+ * reads and dismisses; a phantom exemption is a silent false green in a gate that
18
+ * exists to catch claims that outlived their referent.
19
+ */
20
+ type IgnoreRules = {
21
+ /** Directory rules: match the path and everything below it. */
22
+ readonly prefixes: readonly string[];
23
+ /** File rules written with a slash: match that exact repo-relative path. */
24
+ readonly exact: ReadonlySet<string>;
25
+ /** Basename rules: match that name in any directory. */
26
+ readonly basenames: ReadonlySet<string>;
27
+ };
28
+ /** True when `.gitignore` says this repo-relative path need not be on disk. */
29
+ export declare function isIgnoredPath(relPath: string, rules: IgnoreRules): boolean;
30
+ /**
31
+ * Build the existence probe a scan should use: a real filesystem lookup, widened
32
+ * by the repository's own ignore list read from its root.
33
+ *
34
+ * The second export below is the deliberate exception. "Is this an installed
35
+ * package name?" must NOT be widened by the ignore list, because `node_modules` is
36
+ * itself ignored — an ignore-aware probe answers yes for every first segment, and
37
+ * the whole `dead-reference` count collapses to zero while looking perfectly
38
+ * healthy.
39
+ */
40
+ export declare function createRepoProbe(repoRoot: string): (relPath: string) => boolean;
41
+ /** Filesystem-only existence, for questions where "git ignores it" is no answer. */
42
+ export declare function createFsProbe(repoRoot: string): (relPath: string) => boolean;
43
+ export {};
@@ -0,0 +1,78 @@
1
+ /**
2
+ * Is a path required to exist in a checkout at all?
3
+ *
4
+ * The dominant false positive on `dead-reference` was never a stale comment: it
5
+ * was a correct reference to a file git is told not to track. Ranked over this
6
+ * repository, the top twelve "dead" citations were `.claude/settings.local.json`,
7
+ * `.peaks/_runtime/session.json`, `.peaks/.session.json`,
8
+ * `.peaks/_runtime/active-skill.json`, `.codegraph/config.json`,
9
+ * `.peaks/preferences.json` and friends — all generated state, all named
10
+ * correctly by the code that writes them.
11
+ *
12
+ * So the probe answers "exists OR ignored", and the ignore reading is deliberately
13
+ * bounded: trailing-slash prefixes, whole-path entries, and bare-basename entries.
14
+ * That limit has a direction, and the direction is the safe one — a rule
15
+ * `.gitignore` expresses fancily (negation, `**`, character classes) is NOT read
16
+ * here, so such a path stays reported. A missed exemption is a finding a human
17
+ * reads and dismisses; a phantom exemption is a silent false green in a gate that
18
+ * exists to catch claims that outlived their referent.
19
+ */
20
+ import { existsSync, readFileSync } from 'node:fs';
21
+ import { join } from 'node:path';
22
+ function parseGitignore(source) {
23
+ const prefixes = [];
24
+ const exact = new Set();
25
+ const basenames = new Set();
26
+ for (const raw of source.split(/\r?\n/)) {
27
+ const rule = raw.trim();
28
+ if (rule.length === 0 || rule.startsWith('#') || rule.startsWith('!'))
29
+ continue;
30
+ const cleaned = rule.replace(/^\//, '').replace(/\/$/, '');
31
+ if (cleaned.length === 0)
32
+ continue;
33
+ if (!cleaned.includes('/')) {
34
+ basenames.add(cleaned);
35
+ continue;
36
+ }
37
+ // A rule with a slash is registered both ways rather than guessed: `.peaks/_runtime/`
38
+ // is a directory, `.claude/settings.local.json` is one file, and a rule that
39
+ // matched only `path/` silently failed every single-file ignore in the
40
+ // repository. Registering both costs nothing — an over-broad directory prefix
41
+ // here can only ever name the path it was written for and things under it.
42
+ prefixes.push(`${cleaned}/`);
43
+ exact.add(cleaned);
44
+ }
45
+ return { prefixes, exact, basenames };
46
+ }
47
+ /** True when `.gitignore` says this repo-relative path need not be on disk. */
48
+ export function isIgnoredPath(relPath, rules) {
49
+ const posix = relPath.replace(/\\/g, '/');
50
+ if (rules.exact.has(posix))
51
+ return true;
52
+ if (rules.prefixes.some((prefix) => posix.startsWith(prefix)))
53
+ return true;
54
+ const segments = posix.split('/');
55
+ return segments.some((segment) => rules.basenames.has(segment));
56
+ }
57
+ /**
58
+ * Build the existence probe a scan should use: a real filesystem lookup, widened
59
+ * by the repository's own ignore list read from its root.
60
+ *
61
+ * The second export below is the deliberate exception. "Is this an installed
62
+ * package name?" must NOT be widened by the ignore list, because `node_modules` is
63
+ * itself ignored — an ignore-aware probe answers yes for every first segment, and
64
+ * the whole `dead-reference` count collapses to zero while looking perfectly
65
+ * healthy.
66
+ */
67
+ export function createRepoProbe(repoRoot) {
68
+ let rules = { prefixes: [], exact: new Set(), basenames: new Set() };
69
+ const ignorePath = join(repoRoot, '.gitignore');
70
+ if (existsSync(ignorePath)) {
71
+ rules = parseGitignore(readFileSync(ignorePath, 'utf8'));
72
+ }
73
+ return (relPath) => existsSync(join(repoRoot, relPath)) || isIgnoredPath(relPath, rules);
74
+ }
75
+ /** Filesystem-only existence, for questions where "git ignores it" is no answer. */
76
+ export function createFsProbe(repoRoot) {
77
+ return (relPath) => existsSync(join(repoRoot, relPath));
78
+ }
@@ -1,5 +1,4 @@
1
1
  /**
2
- * Strategic-compact decision tables (slice 2026-07-01-strategic-compact-cli).
3
2
  *
4
3
  * Pure data + lookup helpers. No I/O. The byte-for-byte text mirrors the
5
4
  * "Compaction Decision Guide" + "What Survives Compaction" tables in
@@ -9,7 +8,6 @@
9
8
  * The `peaks compact recommend` + `peaks compact survival` + `peaks
10
9
  * compact dry-run` primitives read from these tables; any change to the
11
10
  * upstream skill table must be mirrored here and re-asserted by the
12
- * `tests/unit/cli/compact-command.test.ts` regression suite.
13
11
  */
14
12
  export type Phase = 'research' | 'planning' | 'implementation' | 'testing' | 'debugging';
15
13
  export declare const PHASES: readonly Phase[];
@@ -1,5 +1,4 @@
1
1
  /**
2
- * Strategic-compact decision tables (slice 2026-07-01-strategic-compact-cli).
3
2
  *
4
3
  * Pure data + lookup helpers. No I/O. The byte-for-byte text mirrors the
5
4
  * "Compaction Decision Guide" + "What Survives Compaction" tables in
@@ -9,7 +8,6 @@
9
8
  * The `peaks compact recommend` + `peaks compact survival` + `peaks
10
9
  * compact dry-run` primitives read from these tables; any change to the
11
10
  * upstream skill table must be mirrored here and re-asserted by the
12
- * `tests/unit/cli/compact-command.test.ts` regression suite.
13
11
  */
14
12
  export const PHASES = [
15
13
  'research',
@@ -1,5 +1,4 @@
1
1
  /**
2
- * Slice-boundary pre-compact hook (slice 2026-07-01-strategic-compact-cli).
3
2
  *
4
3
  * The RD → QA and QA → final-review slice-boundary transitions go
5
4
  * through `peaks request transition`. When the active session is in
@@ -19,7 +18,6 @@
19
18
  * auto-compact orchestrator asks the harness to compact and reports that
20
19
  * it is waiting. It does not refuse sub-agent dispatch — peaks-loop has no
21
20
  * executor for a running session, so a refusal gated nothing and deadlocked
22
- * the runner (slice 2026-09-13-auto-compact-trigger-ownership).
23
21
  */
24
22
  import { existsSync, readFileSync } from 'node:fs';
25
23
  import { join } from 'node:path';
@@ -11,7 +11,6 @@ export interface CompactHistoryEvent {
11
11
  readonly checkpointPath: string;
12
12
  readonly dispatchMessage: string;
13
13
  /**
14
- * Slice 2026-09-13-auto-compact-trigger-ownership (T4): the window this
15
14
  * dispatch divided by. `beforeRatio * windowTokens` is the token point
16
15
  * peaks-loop asked the harness to compact at.
17
16
  */
@@ -27,7 +26,6 @@ export interface CompactHistoryEvent {
27
26
  /** `observed` rows only: the measured post-compact ratio. */
28
27
  readonly afterRatio?: number;
29
28
  /**
30
- * rid `2026-09-13-compact-event-settle`: what the HARNESS said caused the
31
29
  * compaction — `manual` (a user ran `/compact`) or `auto` (the harness's own
32
30
  * window fired). Written only by the `PostCompact` hook path, which is the
33
31
  * only path a harness reports it on.
@@ -1,6 +1,5 @@
1
1
  // src/services/compact-history/compact-history-service.ts
2
2
  //
3
- // Slice 2026-07-30-compact-visibility (slice 1/4). Pure-function
4
3
  // reader for the .peaks/_runtime/<sessionId>/compact-history.jsonl
5
4
  // file that auto-compact-orchestrator now appends to on every
6
5
  // dispatch. The CLI surface `peaks compact history` and the
@@ -1,6 +1,5 @@
1
1
  // src/services/compact-statusline/compact-lifecycle-store.ts
2
2
  //
3
- // Slice 2026-08-01-compact-lifecycle (Task 1/5). Pure persistence
4
3
  // for the runtime *compact lifecycle* record that the auto-compact
5
4
  // orchestrator writes on every state transition. The record is the
6
5
  // single source of truth that downstream statusline / dashboard
@@ -20,7 +19,6 @@
20
19
  // staleAfterMs. Terminal stages (`completed`, `failed`) NEVER go
21
20
  // stalled — the record is the historical answer, not a heartbeat.
22
21
  //
23
- // Slice 2026-09-12-compact-band-policy (defect B): `armed` is a third
24
22
  // category — a RESTING stage. It records a fact ("we registered a
25
23
  // compact trigger") that stays true until a measurement supersedes it;
26
24
  // no heartbeat was ever promised, so waiting in it is NORMAL and it
@@ -1,6 +1,5 @@
1
1
  export type CompactLifecycleStage = 'queued' | 'preparing' | 'compacting'
2
2
  /**
3
- * Slice 2026-09-12-compact-band-policy: a compact trigger was
4
3
  * REGISTERED but no compaction has started — e.g. claude-code's
5
4
  * `ide-native` pathway only installs the PreToolUse hook, which
6
5
  * compacts in-band at ratio ≥ 0.95. In the 0.80–0.95 band nothing
@@ -1,6 +1,5 @@
1
1
  // src/services/compact-statusline/compact-statusline-service.ts
2
2
  //
3
- // Slice 2026-08-01-compact-lifecycle (Task 3/5). Pure semantic
4
3
  // decision + render helper for the 'peaks statusline compact'
5
4
  // indicator. Reads .peaks/_runtime/<sessionId>/compact-lifecycle.json
6
5
  // first (the canonical source of truth) and falls back to the legacy
@@ -28,7 +27,6 @@
28
27
  // none → 0 cells
29
28
  // invalid → 0 cells (no false reassurance)
30
29
  // stalled → keep the active stage's cell
31
- // armed → NO bar at all (slice 2026-09-12-compact-band-policy):
32
30
  // a registered-but-idle trigger has no progress to
33
31
  // report, and a bar would imply one.
34
32
  //
@@ -130,7 +128,6 @@ function decideLegacyFallback(input) {
130
128
  // Priority 2 within legacy: a history row TESTIFIES that a compaction was
131
129
  // witnessed, recently enough to still be the one being reported.
132
130
  //
133
- // Repair R9 (AC4). This used to read the file's mtime — freshness taken as
134
131
  // evidence that "a compact just landed". Freshness is evidence of neither:
135
132
  // the same file takes a `dispatch` row every time peaks-loop ASKS for a
136
133
  // compact, and an ask is an intent, not an outcome. One real session
@@ -193,7 +190,6 @@ export function renderCompactStatusline(state) {
193
190
  return `compact ${renderBar(2)}`;
194
191
  case 'compacting':
195
192
  return `compact ${renderBar(STAGE_CELL_COMPACTING)}`;
196
- // Slice 2026-09-12-compact-band-policy: a registered trigger that has
197
193
  // not fired is NOT progress. Rendering a bar would imply movement
198
194
  // that is not happening, so `armed` deliberately renders no bar at
199
195
  // all — the label states what is true and what would change it.
@@ -15,7 +15,6 @@ export function planRollback() {
15
15
  export function executeRollback(opts) {
16
16
  const plan = planRollback();
17
17
  if (!plan.available) {
18
- // rid 2026-09-13-two-decisions ①: a machine that never migrated has no
19
18
  // `.bak`, and that is its normal state — `--apply` on such a machine is
20
19
  // "nothing to roll back", not a failure. Returned instead of thrown so the
21
20
  // exit status and the `available` key agree on every path; see
@@ -29,7 +29,6 @@ export declare function resolveProjectRootForConfig(startPath: string): string;
29
29
  */
30
30
  export declare function resolveCanonicalProjectRoot(startPath: string): string;
31
31
  /**
32
- * Slice rid-statusline-stale-ux AC-2 + P1 H1 option A: strict
33
32
  * canonicalization for use in trust-boundary paths (e.g.
34
33
  * `peaks session primer`).
35
34
  *
@@ -139,7 +139,6 @@ export function resolveCanonicalProjectRoot(startPath) {
139
139
  return start;
140
140
  }
141
141
  /**
142
- * Slice rid-statusline-stale-ux AC-2 + P1 H1 option A: strict
143
142
  * canonicalization for use in trust-boundary paths (e.g.
144
143
  * `peaks session primer`).
145
144
  *
@@ -18,7 +18,6 @@ export declare function isConfigLayer(value: string): value is ConfigLayer;
18
18
  /**
19
19
  * Machine-scoped context-window override key, the config twin of the
20
20
  * `PEAKS_CONTEXT_WINDOW_TOKENS` env var (slice
21
- * 2026-09-09-context-window-override). Written with
22
21
  * `peaks config set --key context.windowTokens --value <positive-int>`
23
22
  * (user layer) so the user pins it once instead of exporting an env var
24
23
  * in every shell.
@@ -200,7 +200,6 @@ export function isConfigLayer(value) {
200
200
  /**
201
201
  * Machine-scoped context-window override key, the config twin of the
202
202
  * `PEAKS_CONTEXT_WINDOW_TOKENS` env var (slice
203
- * 2026-09-09-context-window-override). Written with
204
203
  * `peaks config set --key context.windowTokens --value <positive-int>`
205
204
  * (user layer) so the user pins it once instead of exporting an env var
206
205
  * in every shell.
@@ -1,6 +1,5 @@
1
1
  import { type ModelProviderConfig, type PeaksConfig } from './config-types.js';
2
2
  /**
3
- * Slice 2026-07-09 add-zcode-adapter (A.3): replaces the legacy
4
3
  * `STRONGEST_MODEL_ID = 'claude-opus-4-7'` constant (removed) with a dynamic
5
4
  * resolver. The strongest planner/reviewer model is now derived
6
5
  * from the active config instead of being hardcoded to a specific
@@ -24,7 +23,6 @@ export declare function getStrongestModelId(config?: {
24
23
  model?: unknown;
25
24
  }): string;
26
25
  /**
27
- * Slice 2026-07-09 add-zcode-adapter (Slice C, C.4): async variant
28
26
  * of `getStrongestModelId`. Same precedence for layers 1 + 2, but
29
27
  * layer 2.5 is the IDE's runtime probe (`detectCurrentIdeModel`)
30
28
  * which is consulted BEFORE the env-var back-compat fallback.
@@ -53,7 +51,6 @@ export declare function getStrongestModelIdAsync(config?: {
53
51
  }, runtimeProbeDisabled?: boolean): Promise<string>;
54
52
  export declare function getConfiguredExecutionModelId(providers: ModelProviderConfig | undefined): string;
55
53
  /**
56
- * Slice 015 — typed exception for "no provider has a configured model".
57
54
  * Lives next to its throw site so a downstream `instanceof` check survives
58
55
  * any tree-shaking. CLI catch sites map this to the `INVALID_PROVIDERS`
59
56
  * envelope code via `_cli-error-envelope.mapServiceError`.
@@ -1,6 +1,5 @@
1
1
  import { detectCurrentIdeModel } from '../ide/current-model-detector.js';
2
2
  /**
3
- * Slice 2026-07-09 add-zcode-adapter (A.3): replaces the legacy
4
3
  * `STRONGEST_MODEL_ID = 'claude-opus-4-7'` constant (removed) with a dynamic
5
4
  * resolver. The strongest planner/reviewer model is now derived
6
5
  * from the active config instead of being hardcoded to a specific
@@ -25,12 +24,10 @@ export function getStrongestModelId(config) {
25
24
  const fromConfig = typeof raw === 'string' ? raw.trim() : undefined;
26
25
  if (fromConfig)
27
26
  return fromConfig;
28
- // Slice 2026-07-09: back-compat fallback for test fixtures that
29
27
  // pre-date this slice (SC §3.4 strategy A env-var override).
30
28
  return process.env.PEAKS_STRONGEST_MODEL_DEFAULT ?? 'claude-opus-4-7';
31
29
  }
32
30
  /**
33
- * Slice 2026-07-09 add-zcode-adapter (Slice C, C.4): async variant
34
31
  * of `getStrongestModelId`. Same precedence for layers 1 + 2, but
35
32
  * layer 2.5 is the IDE's runtime probe (`detectCurrentIdeModel`)
36
33
  * which is consulted BEFORE the env-var back-compat fallback.
@@ -86,7 +83,6 @@ export function getConfiguredExecutionModelId(providers) {
86
83
  return configuredModel;
87
84
  }
88
85
  /**
89
- * Slice 015 — typed exception for "no provider has a configured model".
90
86
  * Lives next to its throw site so a downstream `instanceof` check survives
91
87
  * any tree-shaking. CLI catch sites map this to the `INVALID_PROVIDERS`
92
88
  * envelope code via `_cli-error-envelope.mapServiceError`.
@@ -101,7 +97,6 @@ export function getEconomyAwareExecutionModelId(config) {
101
97
  // Slice 2.0.1-bug1 round 3: economy is the project default. Treat undefined as enabled
102
98
  // (matches the pre-slice implicit default from DEFAULT_CONFIG.economyMode = true). Only an
103
99
  // explicit `economyMode === false` switches execution to the strongest planner/reviewer
104
- // model (resolved dynamically per Slice 2026-07-09 add-zcode-adapter A.3).
105
100
  return config.economyMode !== false
106
101
  ? getConfiguredExecutionModelId(config.providers)
107
102
  : getStrongestModelId(config);
@@ -1,7 +1,6 @@
1
1
  /**
2
2
  * container-lease — pure-function lease store for `peaks container spawn`.
3
3
  *
4
- * Slice 2026-07-29-worktree-l2-extended Part 12 (L4 container
5
4
  * runtime). Mirrors the design of `worktree-lease.ts` (Part 1):
6
5
  * - Pure function module: every helper takes the lease
7
6
  * directory path as an argument and returns structured data.
@@ -1,7 +1,6 @@
1
1
  /**
2
2
  * container-lease — pure-function lease store for `peaks container spawn`.
3
3
  *
4
- * Slice 2026-07-29-worktree-l2-extended Part 12 (L4 container
5
4
  * runtime). Mirrors the design of `worktree-lease.ts` (Part 1):
6
5
  * - Pure function module: every helper takes the lease
7
6
  * directory path as an argument and returns structured data.
@@ -1,5 +1,4 @@
1
1
  /**
2
- * G7 — sub-agent context minimal-occupation (RL-17..RL-22, AC-38..AC-43).
3
2
  *
4
3
  * `ArtifactMeta` is what the dispatch record stores per sub-agent artifact
5
4
  * instead of the full content. The `contentInlined: false` literal is the
@@ -14,7 +14,6 @@ export interface DispatchIdeCompactInput {
14
14
  /** Spawn timeout (ms). Default 30s — Claude Code `/compact` is sync. */
15
15
  readonly timeoutMs?: number | undefined;
16
16
  /**
17
- * Slice 2026-06-28-code-mode-bypass-fix (defect #4): which session
18
17
  * the compact should target. Default `'main'` — the orchestrator
19
18
  * (peaks-code body) runs in the main-session Claude Code window and
20
19
  * wants to compress *its* context, not a sub-agent's. Sub-agent
@@ -23,13 +22,11 @@ export interface DispatchIdeCompactInput {
23
22
  *
24
23
  * Behaviour matrix, keyed on the ADAPTER'S DECLARED pathway only
25
24
  * — never on the adapter's name (slice
26
- * 2026-09-12-auto-compact-vendor-neutrality):
27
25
  * - target='main' → llm-self-compress (write intent; main LLM
28
26
  * fires its compact command on its next turn).
29
27
  * - target='sub-agent'→ shell-exec stub (DEPRECATED — no host
30
28
  * CLI spawn; returns envelope with
31
29
  * `pathway: 'shell-exec'` for legacy
32
- * contract only — see rid-031).
33
30
  * An adapter with no registered `compact` profile returns noop for
34
31
  * BOTH targets; an adapter whose profile serves the main session is
35
32
  * dispatched regardless of which IDE it is.