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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1072) hide show
  1. package/CHANGELOG.md +90 -0
  2. package/README-en.md +178 -67
  3. package/README.md +178 -57
  4. package/examples/video-demo/README.md +108 -23
  5. package/examples/video-demo/preview/peaks-loop-demo-en.mp4 +0 -0
  6. package/examples/video-demo/preview/peaks-loop-demo.mp4 +0 -0
  7. package/package.json +19 -6
  8. package/scripts/copy-templates.mjs +64 -0
  9. package/skills/bee/peaks-rd/SKILL.md +1 -1
  10. package/skills/bee/peaks-rd/references/library-version-awareness.md +2 -2
  11. package/skills/bee/peaks-rd/references/mock-data-placement.md +1 -1
  12. package/skills/bee/peaks-rd/references/rd-runbook.md +2 -2
  13. package/skills/bee/peaks-rd/references/rd-transition-gates.md +2 -2
  14. package/skills/bee/peaks-rd/references/writing-handoff-frontmatter.md +1 -1
  15. package/skills/bee/peaks-ui/SKILL.md +2 -2
  16. package/skills/peaks-code/SKILL.md +18 -49
  17. package/skills/peaks-code/references/project-scan-checklist.md +3 -1
  18. package/skills/peaks-code/references/runbook.md +2 -2
  19. package/skills/peaks-code/references/standards-preflight.md +1 -1
  20. package/skills/peaks-code/references/step-11-memory-sediment.md +56 -0
  21. package/skills/peaks-code/references/swarm-dispatch-contract.md +1 -1
  22. package/skills/peaks-code/references/workflow-gates-and-types.md +3 -3
  23. package/dist/src/cli/cli-helpers.d.ts +0 -43
  24. package/dist/src/cli/cli-helpers.js +0 -86
  25. package/dist/src/cli/commands/adapter-commands-s2a.d.ts +0 -34
  26. package/dist/src/cli/commands/adapter-commands-s2a.js +0 -92
  27. package/dist/src/cli/commands/adapter-commands.d.ts +0 -30
  28. package/dist/src/cli/commands/adapter-commands.js +0 -35
  29. package/dist/src/cli/commands/agent-commands.d.ts +0 -20
  30. package/dist/src/cli/commands/agent-commands.js +0 -48
  31. package/dist/src/cli/commands/asset-commands.d.ts +0 -45
  32. package/dist/src/cli/commands/asset-commands.js +0 -404
  33. package/dist/src/cli/commands/audit-commands.d.ts +0 -28
  34. package/dist/src/cli/commands/audit-commands.js +0 -437
  35. package/dist/src/cli/commands/bee-commands.d.ts +0 -26
  36. package/dist/src/cli/commands/bee-commands.js +0 -169
  37. package/dist/src/cli/commands/capability-commands.d.ts +0 -16
  38. package/dist/src/cli/commands/capability-commands.js +0 -45
  39. package/dist/src/cli/commands/capability-worker-config-sc-commands.d.ts +0 -3
  40. package/dist/src/cli/commands/capability-worker-config-sc-commands.js +0 -10
  41. package/dist/src/cli/commands/classify-classify-commands.d.ts +0 -19
  42. package/dist/src/cli/commands/classify-classify-commands.js +0 -151
  43. package/dist/src/cli/commands/code-commands.d.ts +0 -80
  44. package/dist/src/cli/commands/code-commands.js +0 -798
  45. package/dist/src/cli/commands/code-review-commands.d.ts +0 -34
  46. package/dist/src/cli/commands/code-review-commands.js +0 -83
  47. package/dist/src/cli/commands/codegraph-commands.d.ts +0 -3
  48. package/dist/src/cli/commands/codegraph-commands.js +0 -99
  49. package/dist/src/cli/commands/compact-command.d.ts +0 -21
  50. package/dist/src/cli/commands/compact-command.js +0 -252
  51. package/dist/src/cli/commands/complexity-commands.d.ts +0 -9
  52. package/dist/src/cli/commands/complexity-commands.js +0 -34
  53. package/dist/src/cli/commands/config-commands.d.ts +0 -3
  54. package/dist/src/cli/commands/config-commands.js +0 -220
  55. package/dist/src/cli/commands/context-builder-commands.d.ts +0 -11
  56. package/dist/src/cli/commands/context-builder-commands.js +0 -85
  57. package/dist/src/cli/commands/context-commands.d.ts +0 -21
  58. package/dist/src/cli/commands/context-commands.js +0 -254
  59. package/dist/src/cli/commands/contract-commands.d.ts +0 -26
  60. package/dist/src/cli/commands/contract-commands.js +0 -114
  61. package/dist/src/cli/commands/core/artifacts-command.d.ts +0 -3
  62. package/dist/src/cli/commands/core/artifacts-command.js +0 -62
  63. package/dist/src/cli/commands/core/binding-commands.d.ts +0 -3
  64. package/dist/src/cli/commands/core/binding-commands.js +0 -58
  65. package/dist/src/cli/commands/core/doctor-command.d.ts +0 -11
  66. package/dist/src/cli/commands/core/doctor-command.js +0 -204
  67. package/dist/src/cli/commands/core/memory-command.d.ts +0 -3
  68. package/dist/src/cli/commands/core/memory-command.js +0 -98
  69. package/dist/src/cli/commands/core/profile-command.d.ts +0 -3
  70. package/dist/src/cli/commands/core/profile-command.js +0 -9
  71. package/dist/src/cli/commands/core/proxy-command.d.ts +0 -3
  72. package/dist/src/cli/commands/core/proxy-command.js +0 -26
  73. package/dist/src/cli/commands/core/session-command.d.ts +0 -3
  74. package/dist/src/cli/commands/core/session-command.js +0 -241
  75. package/dist/src/cli/commands/core/skill-command.d.ts +0 -3
  76. package/dist/src/cli/commands/core/skill-command.js +0 -297
  77. package/dist/src/cli/commands/core/standards-command.d.ts +0 -3
  78. package/dist/src/cli/commands/core/standards-command.js +0 -95
  79. package/dist/src/cli/commands/core-artifact-commands.d.ts +0 -15
  80. package/dist/src/cli/commands/core-artifact-commands.js +0 -31
  81. package/dist/src/cli/commands/dispatch-commands.d.ts +0 -10
  82. package/dist/src/cli/commands/dispatch-commands.js +0 -351
  83. package/dist/src/cli/commands/dispatch-from-dag.d.ts +0 -3
  84. package/dist/src/cli/commands/dispatch-from-dag.js +0 -251
  85. package/dist/src/cli/commands/doc-commands.d.ts +0 -11
  86. package/dist/src/cli/commands/doc-commands.js +0 -65
  87. package/dist/src/cli/commands/evolution-commands.d.ts +0 -27
  88. package/dist/src/cli/commands/evolution-commands.js +0 -393
  89. package/dist/src/cli/commands/feedback-commands.d.ts +0 -18
  90. package/dist/src/cli/commands/feedback-commands.js +0 -145
  91. package/dist/src/cli/commands/final-review-commands.d.ts +0 -31
  92. package/dist/src/cli/commands/final-review-commands.js +0 -161
  93. package/dist/src/cli/commands/fixture-commands.d.ts +0 -32
  94. package/dist/src/cli/commands/fixture-commands.js +0 -91
  95. package/dist/src/cli/commands/fork-commands.d.ts +0 -16
  96. package/dist/src/cli/commands/fork-commands.js +0 -163
  97. package/dist/src/cli/commands/gate-commands.d.ts +0 -3
  98. package/dist/src/cli/commands/gate-commands.js +0 -117
  99. package/dist/src/cli/commands/heartbeat-commands.d.ts +0 -3
  100. package/dist/src/cli/commands/heartbeat-commands.js +0 -135
  101. package/dist/src/cli/commands/hook-handle.d.ts +0 -17
  102. package/dist/src/cli/commands/hook-handle.js +0 -157
  103. package/dist/src/cli/commands/hooks-commands.d.ts +0 -3
  104. package/dist/src/cli/commands/hooks-commands.js +0 -156
  105. package/dist/src/cli/commands/ide-commands.d.ts +0 -25
  106. package/dist/src/cli/commands/ide-commands.js +0 -42
  107. package/dist/src/cli/commands/impact-commands.d.ts +0 -15
  108. package/dist/src/cli/commands/impact-commands.js +0 -62
  109. package/dist/src/cli/commands/job-commands.d.ts +0 -3
  110. package/dist/src/cli/commands/job-commands.js +0 -289
  111. package/dist/src/cli/commands/legacy-commands.d.ts +0 -11
  112. package/dist/src/cli/commands/legacy-commands.js +0 -32
  113. package/dist/src/cli/commands/log-commands.d.ts +0 -17
  114. package/dist/src/cli/commands/log-commands.js +0 -64
  115. package/dist/src/cli/commands/loop-commands.d.ts +0 -27
  116. package/dist/src/cli/commands/loop-commands.js +0 -262
  117. package/dist/src/cli/commands/loop-eval-commands.d.ts +0 -20
  118. package/dist/src/cli/commands/loop-eval-commands.js +0 -526
  119. package/dist/src/cli/commands/memory-commands.d.ts +0 -23
  120. package/dist/src/cli/commands/memory-commands.js +0 -129
  121. package/dist/src/cli/commands/migrate-1-4-1-command.d.ts +0 -11
  122. package/dist/src/cli/commands/migrate-1-4-1-command.js +0 -34
  123. package/dist/src/cli/commands/migrate-v2-10-to-v2-11-command.d.ts +0 -20
  124. package/dist/src/cli/commands/migrate-v2-10-to-v2-11-command.js +0 -52
  125. package/dist/src/cli/commands/mut-commands.d.ts +0 -20
  126. package/dist/src/cli/commands/mut-commands.js +0 -239
  127. package/dist/src/cli/commands/observability-commands.d.ts +0 -22
  128. package/dist/src/cli/commands/observability-commands.js +0 -201
  129. package/dist/src/cli/commands/openspec-commands.d.ts +0 -3
  130. package/dist/src/cli/commands/openspec-commands.js +0 -237
  131. package/dist/src/cli/commands/perf-audit-commands.d.ts +0 -22
  132. package/dist/src/cli/commands/perf-audit-commands.js +0 -132
  133. package/dist/src/cli/commands/perf-commands.d.ts +0 -3
  134. package/dist/src/cli/commands/perf-commands.js +0 -41
  135. package/dist/src/cli/commands/playwright-commands.d.ts +0 -95
  136. package/dist/src/cli/commands/playwright-commands.js +0 -432
  137. package/dist/src/cli/commands/polyrepo-commands.d.ts +0 -37
  138. package/dist/src/cli/commands/polyrepo-commands.js +0 -155
  139. package/dist/src/cli/commands/prd-blocks-commands.d.ts +0 -18
  140. package/dist/src/cli/commands/prd-blocks-commands.js +0 -50
  141. package/dist/src/cli/commands/prd-commands.d.ts +0 -18
  142. package/dist/src/cli/commands/prd-commands.js +0 -141
  143. package/dist/src/cli/commands/preferences-commands.d.ts +0 -2
  144. package/dist/src/cli/commands/preferences-commands.js +0 -197
  145. package/dist/src/cli/commands/project-commands.d.ts +0 -3
  146. package/dist/src/cli/commands/project-commands.js +0 -248
  147. package/dist/src/cli/commands/qa-business-review-commands.d.ts +0 -17
  148. package/dist/src/cli/commands/qa-business-review-commands.js +0 -148
  149. package/dist/src/cli/commands/qa-commands.d.ts +0 -94
  150. package/dist/src/cli/commands/qa-commands.js +0 -271
  151. package/dist/src/cli/commands/release-commands.d.ts +0 -24
  152. package/dist/src/cli/commands/release-commands.js +0 -231
  153. package/dist/src/cli/commands/request-commands.d.ts +0 -3
  154. package/dist/src/cli/commands/request-commands.js +0 -548
  155. package/dist/src/cli/commands/retrospective-commands.d.ts +0 -12
  156. package/dist/src/cli/commands/retrospective-commands.js +0 -175
  157. package/dist/src/cli/commands/reviewer-commands.d.ts +0 -14
  158. package/dist/src/cli/commands/reviewer-commands.js +0 -64
  159. package/dist/src/cli/commands/role-commands.d.ts +0 -13
  160. package/dist/src/cli/commands/role-commands.js +0 -85
  161. package/dist/src/cli/commands/runtime-commands.d.ts +0 -52
  162. package/dist/src/cli/commands/runtime-commands.js +0 -150
  163. package/dist/src/cli/commands/sc-commands.d.ts +0 -3
  164. package/dist/src/cli/commands/sc-commands.js +0 -45
  165. package/dist/src/cli/commands/scan-commands.d.ts +0 -3
  166. package/dist/src/cli/commands/scan-commands.js +0 -445
  167. package/dist/src/cli/commands/security-audit-commands.d.ts +0 -23
  168. package/dist/src/cli/commands/security-audit-commands.js +0 -132
  169. package/dist/src/cli/commands/sediment-commands.d.ts +0 -80
  170. package/dist/src/cli/commands/sediment-commands.js +0 -649
  171. package/dist/src/cli/commands/session-auto-compact-hook-command.d.ts +0 -37
  172. package/dist/src/cli/commands/session-auto-compact-hook-command.js +0 -127
  173. package/dist/src/cli/commands/session-checkpoint-command.d.ts +0 -10
  174. package/dist/src/cli/commands/session-checkpoint-command.js +0 -100
  175. package/dist/src/cli/commands/session-migrate-skill-name.d.ts +0 -17
  176. package/dist/src/cli/commands/session-migrate-skill-name.js +0 -41
  177. package/dist/src/cli/commands/session-resume-command.d.ts +0 -11
  178. package/dist/src/cli/commands/session-resume-command.js +0 -83
  179. package/dist/src/cli/commands/share-commands.d.ts +0 -17
  180. package/dist/src/cli/commands/share-commands.js +0 -296
  181. package/dist/src/cli/commands/skill-conformance-commands.d.ts +0 -9
  182. package/dist/src/cli/commands/skill-conformance-commands.js +0 -39
  183. package/dist/src/cli/commands/skill-loop-engineering-readiness-commands.d.ts +0 -67
  184. package/dist/src/cli/commands/skill-loop-engineering-readiness-commands.js +0 -173
  185. package/dist/src/cli/commands/skill-search-commands.d.ts +0 -25
  186. package/dist/src/cli/commands/skill-search-commands.js +0 -68
  187. package/dist/src/cli/commands/skill-visibility.d.ts +0 -8
  188. package/dist/src/cli/commands/skill-visibility.js +0 -63
  189. package/dist/src/cli/commands/slice-commands.d.ts +0 -24
  190. package/dist/src/cli/commands/slice-commands.js +0 -492
  191. package/dist/src/cli/commands/slice-integrate-commands.d.ts +0 -11
  192. package/dist/src/cli/commands/slice-integrate-commands.js +0 -74
  193. package/dist/src/cli/commands/slice-review-commands.d.ts +0 -23
  194. package/dist/src/cli/commands/slice-review-commands.js +0 -162
  195. package/dist/src/cli/commands/smoke-commands.d.ts +0 -21
  196. package/dist/src/cli/commands/smoke-commands.js +0 -203
  197. package/dist/src/cli/commands/sop-commands.d.ts +0 -3
  198. package/dist/src/cli/commands/sop-commands.js +0 -215
  199. package/dist/src/cli/commands/statusline-commands.d.ts +0 -3
  200. package/dist/src/cli/commands/statusline-commands.js +0 -169
  201. package/dist/src/cli/commands/sub-agent-commands.d.ts +0 -22
  202. package/dist/src/cli/commands/sub-agent-commands.js +0 -19
  203. package/dist/src/cli/commands/sub-agent-dispatch-guard.d.ts +0 -55
  204. package/dist/src/cli/commands/sub-agent-dispatch-guard.js +0 -57
  205. package/dist/src/cli/commands/sub-agent-shared.d.ts +0 -99
  206. package/dist/src/cli/commands/sub-agent-shared.js +0 -67
  207. package/dist/src/cli/commands/test-commands.d.ts +0 -47
  208. package/dist/src/cli/commands/test-commands.js +0 -204
  209. package/dist/src/cli/commands/understand-commands.d.ts +0 -3
  210. package/dist/src/cli/commands/understand-commands.js +0 -148
  211. package/dist/src/cli/commands/upgrade-commands.d.ts +0 -23
  212. package/dist/src/cli/commands/upgrade-commands.js +0 -119
  213. package/dist/src/cli/commands/user-touchpoint-commands.d.ts +0 -18
  214. package/dist/src/cli/commands/user-touchpoint-commands.js +0 -78
  215. package/dist/src/cli/commands/verdict-aggregate-command.d.ts +0 -14
  216. package/dist/src/cli/commands/verdict-aggregate-command.js +0 -106
  217. package/dist/src/cli/commands/worker-commands.d.ts +0 -3
  218. package/dist/src/cli/commands/worker-commands.js +0 -52
  219. package/dist/src/cli/commands/workflow-commands.d.ts +0 -3
  220. package/dist/src/cli/commands/workflow-commands.js +0 -535
  221. package/dist/src/cli/commands/workflow-plan-commands.d.ts +0 -39
  222. package/dist/src/cli/commands/workflow-plan-commands.js +0 -163
  223. package/dist/src/cli/commands/workspace/clean-command.d.ts +0 -14
  224. package/dist/src/cli/commands/workspace/clean-command.js +0 -49
  225. package/dist/src/cli/commands/workspace/helpers.d.ts +0 -28
  226. package/dist/src/cli/commands/workspace/helpers.js +0 -87
  227. package/dist/src/cli/commands/workspace/init-command.d.ts +0 -121
  228. package/dist/src/cli/commands/workspace/init-command.js +0 -436
  229. package/dist/src/cli/commands/workspace/migrate-command.d.ts +0 -11
  230. package/dist/src/cli/commands/workspace/migrate-command.js +0 -91
  231. package/dist/src/cli/commands/workspace/reconcile-command.d.ts +0 -14
  232. package/dist/src/cli/commands/workspace/reconcile-command.js +0 -103
  233. package/dist/src/cli/commands/workspace-commands.d.ts +0 -18
  234. package/dist/src/cli/commands/workspace-commands.js +0 -50
  235. package/dist/src/cli/index.d.ts +0 -1
  236. package/dist/src/cli/index.js +0 -30
  237. package/dist/src/cli/program.d.ts +0 -5
  238. package/dist/src/cli/program.js +0 -408
  239. package/dist/src/hooks/pre-tool-use-sub-agent.d.ts +0 -28
  240. package/dist/src/hooks/pre-tool-use-sub-agent.js +0 -105
  241. package/dist/src/lib/render/message-renderer.d.ts +0 -20
  242. package/dist/src/lib/render/message-renderer.js +0 -80
  243. package/dist/src/services/adapter/adapter-registry.d.ts +0 -48
  244. package/dist/src/services/adapter/adapter-registry.js +0 -186
  245. package/dist/src/services/adapter/adapter.d.ts +0 -27
  246. package/dist/src/services/adapter/adapter.js +0 -5
  247. package/dist/src/services/adapter/auto-adapter.d.ts +0 -11
  248. package/dist/src/services/adapter/auto-adapter.js +0 -15
  249. package/dist/src/services/adapter/claude-adapter.d.ts +0 -14
  250. package/dist/src/services/adapter/claude-adapter.js +0 -40
  251. package/dist/src/services/adapter/codex-adapter.d.ts +0 -14
  252. package/dist/src/services/adapter/codex-adapter.js +0 -14
  253. package/dist/src/services/adapter/copilot-adapter.d.ts +0 -14
  254. package/dist/src/services/adapter/copilot-adapter.js +0 -14
  255. package/dist/src/services/agent/ecc-agent-service.d.ts +0 -47
  256. package/dist/src/services/agent/ecc-agent-service.js +0 -143
  257. package/dist/src/services/artifacts/artifact-lint-service.d.ts +0 -23
  258. package/dist/src/services/artifacts/artifact-lint-service.js +0 -99
  259. package/dist/src/services/artifacts/artifact-prerequisites.d.ts +0 -78
  260. package/dist/src/services/artifacts/artifact-prerequisites.js +0 -491
  261. package/dist/src/services/artifacts/artifact-service.d.ts +0 -43
  262. package/dist/src/services/artifacts/artifact-service.js +0 -98
  263. package/dist/src/services/artifacts/artifact-templates.d.ts +0 -30
  264. package/dist/src/services/artifacts/artifact-templates.js +0 -302
  265. package/dist/src/services/artifacts/repair-cycle-service.d.ts +0 -23
  266. package/dist/src/services/artifacts/repair-cycle-service.js +0 -52
  267. package/dist/src/services/artifacts/request-artifact-service.d.ts +0 -116
  268. package/dist/src/services/artifacts/request-artifact-service.js +0 -451
  269. package/dist/src/services/artifacts/request-artifact-state-helpers.d.ts +0 -51
  270. package/dist/src/services/artifacts/request-artifact-state-helpers.js +0 -114
  271. package/dist/src/services/artifacts/workspace-service.d.ts +0 -34
  272. package/dist/src/services/artifacts/workspace-service.js +0 -272
  273. package/dist/src/services/audit/artifact-writer.d.ts +0 -93
  274. package/dist/src/services/audit/artifact-writer.js +0 -303
  275. package/dist/src/services/audit/audit-goal-service.d.ts +0 -35
  276. package/dist/src/services/audit/audit-goal-service.js +0 -75
  277. package/dist/src/services/audit/audit-goal-types.d.ts +0 -40
  278. package/dist/src/services/audit/audit-goal-types.js +0 -15
  279. package/dist/src/services/audit/backing-detector.d.ts +0 -24
  280. package/dist/src/services/audit/backing-detector.js +0 -59
  281. package/dist/src/services/audit/classifier.d.ts +0 -38
  282. package/dist/src/services/audit/classifier.js +0 -134
  283. package/dist/src/services/audit/decision-writer.d.ts +0 -76
  284. package/dist/src/services/audit/decision-writer.js +0 -217
  285. package/dist/src/services/audit/enforcers/active-skill-resolver.d.ts +0 -29
  286. package/dist/src/services/audit/enforcers/active-skill-resolver.js +0 -71
  287. package/dist/src/services/audit/enforcers/code-ban.d.ts +0 -23
  288. package/dist/src/services/audit/enforcers/code-ban.js +0 -27
  289. package/dist/src/services/audit/enforcers/design-draft-confirm.d.ts +0 -24
  290. package/dist/src/services/audit/enforcers/design-draft-confirm.js +0 -58
  291. package/dist/src/services/audit/enforcers/lint-audit-regression.d.ts +0 -21
  292. package/dist/src/services/audit/enforcers/lint-audit-regression.js +0 -86
  293. package/dist/src/services/audit/enforcers/lint-catalog-governance.d.ts +0 -32
  294. package/dist/src/services/audit/enforcers/lint-catalog-governance.js +0 -48
  295. package/dist/src/services/audit/enforcers/lint-cli-back.d.ts +0 -16
  296. package/dist/src/services/audit/enforcers/lint-cli-back.js +0 -35
  297. package/dist/src/services/audit/enforcers/lint-output-style.d.ts +0 -11
  298. package/dist/src/services/audit/enforcers/lint-output-style.js +0 -94
  299. package/dist/src/services/audit/enforcers/lint-reference-integrity.d.ts +0 -6
  300. package/dist/src/services/audit/enforcers/lint-reference-integrity.js +0 -83
  301. package/dist/src/services/audit/enforcers/lint-reference-shape.d.ts +0 -30
  302. package/dist/src/services/audit/enforcers/lint-reference-shape.js +0 -272
  303. package/dist/src/services/audit/enforcers/lint-style.d.ts +0 -49
  304. package/dist/src/services/audit/enforcers/lint-style.js +0 -173
  305. package/dist/src/services/audit/enforcers/lint-workflow-shape.d.ts +0 -4
  306. package/dist/src/services/audit/enforcers/lint-workflow-shape.js +0 -100
  307. package/dist/src/services/audit/enforcers/login-gate.d.ts +0 -23
  308. package/dist/src/services/audit/enforcers/login-gate.js +0 -40
  309. package/dist/src/services/audit/enforcers/mock-placement.d.ts +0 -25
  310. package/dist/src/services/audit/enforcers/mock-placement.js +0 -48
  311. package/dist/src/services/audit/enforcers/no-root-pollution.d.ts +0 -21
  312. package/dist/src/services/audit/enforcers/no-root-pollution.js +0 -56
  313. package/dist/src/services/audit/enforcers/pre-rd-scan.d.ts +0 -22
  314. package/dist/src/services/audit/enforcers/pre-rd-scan.js +0 -23
  315. package/dist/src/services/audit/enforcers/prototype-fidelity.d.ts +0 -25
  316. package/dist/src/services/audit/enforcers/prototype-fidelity.js +0 -75
  317. package/dist/src/services/audit/enforcers/resume-detection.d.ts +0 -21
  318. package/dist/src/services/audit/enforcers/resume-detection.js +0 -52
  319. package/dist/src/services/audit/enforcers/sub-agent-sid.d.ts +0 -25
  320. package/dist/src/services/audit/enforcers/sub-agent-sid.js +0 -63
  321. package/dist/src/services/audit/prose-ratio-calculator.d.ts +0 -45
  322. package/dist/src/services/audit/prose-ratio-calculator.js +0 -52
  323. package/dist/src/services/audit/red-line-catalog-p2-a.d.ts +0 -21
  324. package/dist/src/services/audit/red-line-catalog-p2-a.js +0 -229
  325. package/dist/src/services/audit/red-line-catalog-p2-b.d.ts +0 -19
  326. package/dist/src/services/audit/red-line-catalog-p2-b.js +0 -225
  327. package/dist/src/services/audit/red-line-catalog.d.ts +0 -51
  328. package/dist/src/services/audit/red-line-catalog.js +0 -195
  329. package/dist/src/services/audit/red-lines-service.d.ts +0 -23
  330. package/dist/src/services/audit/red-lines-service.js +0 -464
  331. package/dist/src/services/audit/scanners/openspec-scanner.d.ts +0 -15
  332. package/dist/src/services/audit/scanners/openspec-scanner.js +0 -55
  333. package/dist/src/services/audit/scanners/rules-tree-scanner.d.ts +0 -16
  334. package/dist/src/services/audit/scanners/rules-tree-scanner.js +0 -56
  335. package/dist/src/services/audit/scanners/skills-tree-scanner.d.ts +0 -17
  336. package/dist/src/services/audit/scanners/skills-tree-scanner.js +0 -68
  337. package/dist/src/services/audit/static-service.d.ts +0 -60
  338. package/dist/src/services/audit/static-service.js +0 -130
  339. package/dist/src/services/audit/types.d.ts +0 -86
  340. package/dist/src/services/audit/types.js +0 -13
  341. package/dist/src/services/audit-independent/perf-audit-service.d.ts +0 -151
  342. package/dist/src/services/audit-independent/perf-audit-service.js +0 -316
  343. package/dist/src/services/audit-independent/security-audit-service.d.ts +0 -155
  344. package/dist/src/services/audit-independent/security-audit-service.js +0 -316
  345. package/dist/src/services/classify/classify-service.d.ts +0 -42
  346. package/dist/src/services/classify/classify-service.js +0 -122
  347. package/dist/src/services/classify/classify-types.d.ts +0 -79
  348. package/dist/src/services/classify/classify-types.js +0 -90
  349. package/dist/src/services/code/auto-compact-orchestrator.d.ts +0 -98
  350. package/dist/src/services/code/auto-compact-orchestrator.js +0 -343
  351. package/dist/src/services/code/batch-heartbeat-poller.d.ts +0 -51
  352. package/dist/src/services/code/batch-heartbeat-poller.js +0 -88
  353. package/dist/src/services/code/dag-orchestrator.d.ts +0 -128
  354. package/dist/src/services/code/dag-orchestrator.js +0 -304
  355. package/dist/src/services/code/emit-handoff.d.ts +0 -49
  356. package/dist/src/services/code/emit-handoff.js +0 -79
  357. package/dist/src/services/code/job-shape-decision.d.ts +0 -71
  358. package/dist/src/services/code/job-shape-decision.js +0 -151
  359. package/dist/src/services/code/mode-gate.d.ts +0 -163
  360. package/dist/src/services/code/mode-gate.js +0 -212
  361. package/dist/src/services/code/post-compact-detector.d.ts +0 -61
  362. package/dist/src/services/code/post-compact-detector.js +0 -240
  363. package/dist/src/services/code/status-line-renderer.d.ts +0 -34
  364. package/dist/src/services/code/status-line-renderer.js +0 -55
  365. package/dist/src/services/code/step-08-gate.d.ts +0 -90
  366. package/dist/src/services/code/step-08-gate.js +0 -136
  367. package/dist/src/services/code/user-touchpoint-classifier.d.ts +0 -44
  368. package/dist/src/services/code/user-touchpoint-classifier.js +0 -145
  369. package/dist/src/services/code-review/ecc-bridge.d.ts +0 -148
  370. package/dist/src/services/code-review/ecc-bridge.js +0 -242
  371. package/dist/src/services/code-review/ocr-service.d.ts +0 -129
  372. package/dist/src/services/code-review/ocr-service.js +0 -369
  373. package/dist/src/services/codegraph/codegraph-process-runner.d.ts +0 -2
  374. package/dist/src/services/codegraph/codegraph-process-runner.js +0 -93
  375. package/dist/src/services/codegraph/codegraph-service.d.ts +0 -43
  376. package/dist/src/services/codegraph/codegraph-service.js +0 -160
  377. package/dist/src/services/compact/decision-tables.d.ts +0 -66
  378. package/dist/src/services/compact/decision-tables.js +0 -127
  379. package/dist/src/services/compact/request-transition-hook.d.ts +0 -20
  380. package/dist/src/services/compact/request-transition-hook.js +0 -110
  381. package/dist/src/services/compact/suggest-service.d.ts +0 -74
  382. package/dist/src/services/compact/suggest-service.js +0 -203
  383. package/dist/src/services/complexity/complexity-estimator.d.ts +0 -34
  384. package/dist/src/services/complexity/complexity-estimator.js +0 -64
  385. package/dist/src/services/config/config-migration.d.ts +0 -45
  386. package/dist/src/services/config/config-migration.js +0 -154
  387. package/dist/src/services/config/config-restore.d.ts +0 -10
  388. package/dist/src/services/config/config-restore.js +0 -47
  389. package/dist/src/services/config/config-rollback.d.ts +0 -13
  390. package/dist/src/services/config/config-rollback.js +0 -26
  391. package/dist/src/services/config/config-safety.d.ts +0 -40
  392. package/dist/src/services/config/config-safety.js +0 -359
  393. package/dist/src/services/config/config-service.d.ts +0 -69
  394. package/dist/src/services/config/config-service.js +0 -814
  395. package/dist/src/services/config/config-types.d.ts +0 -119
  396. package/dist/src/services/config/config-types.js +0 -18
  397. package/dist/src/services/config/model-routing.d.ts +0 -57
  398. package/dist/src/services/config/model-routing.js +0 -93
  399. package/dist/src/services/config/provider-service.d.ts +0 -48
  400. package/dist/src/services/config/provider-service.js +0 -143
  401. package/dist/src/services/config/proxy-service.d.ts +0 -21
  402. package/dist/src/services/config/proxy-service.js +0 -44
  403. package/dist/src/services/config/sidecar-store.d.ts +0 -25
  404. package/dist/src/services/config/sidecar-store.js +0 -61
  405. package/dist/src/services/config/workspace-state-service.d.ts +0 -30
  406. package/dist/src/services/config/workspace-state-service.js +0 -142
  407. package/dist/src/services/context/artifact-meta.d.ts +0 -72
  408. package/dist/src/services/context/artifact-meta.js +0 -105
  409. package/dist/src/services/context/auto-compact-dispatcher.d.ts +0 -37
  410. package/dist/src/services/context/auto-compact-dispatcher.js +0 -240
  411. package/dist/src/services/context/auto-compact-reader.d.ts +0 -51
  412. package/dist/src/services/context/auto-compact-reader.js +0 -164
  413. package/dist/src/services/context/auto-compact-types.d.ts +0 -143
  414. package/dist/src/services/context/auto-compact-types.js +0 -36
  415. package/dist/src/services/context/collector.d.ts +0 -24
  416. package/dist/src/services/context/collector.js +0 -133
  417. package/dist/src/services/context/context-builder.d.ts +0 -30
  418. package/dist/src/services/context/context-builder.js +0 -78
  419. package/dist/src/services/context/context-guard.d.ts +0 -49
  420. package/dist/src/services/context/context-guard.js +0 -91
  421. package/dist/src/services/context/context-schema.d.ts +0 -415
  422. package/dist/src/services/context/context-schema.js +0 -73
  423. package/dist/src/services/context/dispatch-context-guard.d.ts +0 -27
  424. package/dist/src/services/context/dispatch-context-guard.js +0 -192
  425. package/dist/src/services/context/doc-retriever.d.ts +0 -26
  426. package/dist/src/services/context/doc-retriever.js +0 -51
  427. package/dist/src/services/context/headroom-client.d.ts +0 -34
  428. package/dist/src/services/context/headroom-client.js +0 -117
  429. package/dist/src/services/context/headroom-fetcher.d.ts +0 -6
  430. package/dist/src/services/context/headroom-fetcher.js +0 -28
  431. package/dist/src/services/context/headroom-prefs.d.ts +0 -46
  432. package/dist/src/services/context/headroom-prefs.js +0 -34
  433. package/dist/src/services/context/index.d.ts +0 -7
  434. package/dist/src/services/context/index.js +0 -6
  435. package/dist/src/services/context/main-session-monitor.d.ts +0 -89
  436. package/dist/src/services/context/main-session-monitor.js +0 -142
  437. package/dist/src/services/context/renderer.d.ts +0 -20
  438. package/dist/src/services/context/renderer.js +0 -30
  439. package/dist/src/services/context/shared-channel.d.ts +0 -93
  440. package/dist/src/services/context/shared-channel.js +0 -308
  441. package/dist/src/services/context/threshold.d.ts +0 -35
  442. package/dist/src/services/context/threshold.js +0 -76
  443. package/dist/src/services/context/tokenizer.d.ts +0 -12
  444. package/dist/src/services/context/tokenizer.js +0 -43
  445. package/dist/src/services/context/types.d.ts +0 -93
  446. package/dist/src/services/context/types.js +0 -9
  447. package/dist/src/services/crystallization/crystallization-service.d.ts +0 -239
  448. package/dist/src/services/crystallization/crystallization-service.js +0 -397
  449. package/dist/src/services/crystallization/crystallization-store.d.ts +0 -75
  450. package/dist/src/services/crystallization/crystallization-store.js +0 -193
  451. package/dist/src/services/crystallization/crystallization-types.d.ts +0 -313
  452. package/dist/src/services/crystallization/crystallization-types.js +0 -299
  453. package/dist/src/services/crystallization/evidence-brief-builder.d.ts +0 -237
  454. package/dist/src/services/crystallization/evidence-brief-builder.js +0 -240
  455. package/dist/src/services/dashboard/project-dashboard-service.d.ts +0 -91
  456. package/dist/src/services/dashboard/project-dashboard-service.js +0 -147
  457. package/dist/src/services/dispatch/batch-counter.d.ts +0 -27
  458. package/dist/src/services/dispatch/batch-counter.js +0 -102
  459. package/dist/src/services/dispatch/contract-store.d.ts +0 -63
  460. package/dist/src/services/dispatch/contract-store.js +0 -157
  461. package/dist/src/services/dispatch/dispatch-record-writer.d.ts +0 -138
  462. package/dist/src/services/dispatch/dispatch-record-writer.js +0 -460
  463. package/dist/src/services/dispatch/heartbeat-truncator.d.ts +0 -26
  464. package/dist/src/services/dispatch/heartbeat-truncator.js +0 -13
  465. package/dist/src/services/dispatch/leak-detector.d.ts +0 -11
  466. package/dist/src/services/dispatch/leak-detector.js +0 -72
  467. package/dist/src/services/dispatch/slice-dag.d.ts +0 -81
  468. package/dist/src/services/dispatch/slice-dag.js +0 -238
  469. package/dist/src/services/dispatch/sub-agent-dispatcher.d.ts +0 -239
  470. package/dist/src/services/dispatch/sub-agent-dispatcher.js +0 -382
  471. package/dist/src/services/dispatch/test-tool-detection.d.ts +0 -36
  472. package/dist/src/services/dispatch/test-tool-detection.js +0 -46
  473. package/dist/src/services/doc/doc-generator.d.ts +0 -38
  474. package/dist/src/services/doc/doc-generator.js +0 -122
  475. package/dist/src/services/doctor/doctor-service.d.ts +0 -149
  476. package/dist/src/services/doctor/doctor-service.js +0 -929
  477. package/dist/src/services/evolution/evolution-service.d.ts +0 -137
  478. package/dist/src/services/evolution/evolution-service.js +0 -281
  479. package/dist/src/services/evolution/evolution-store.d.ts +0 -57
  480. package/dist/src/services/evolution/evolution-store.js +0 -232
  481. package/dist/src/services/evolution/evolution-types.d.ts +0 -706
  482. package/dist/src/services/evolution/evolution-types.js +0 -286
  483. package/dist/src/services/evolution/independent-evaluator-runner.d.ts +0 -90
  484. package/dist/src/services/evolution/independent-evaluator-runner.js +0 -106
  485. package/dist/src/services/evolution/regression-skeptic-runner.d.ts +0 -64
  486. package/dist/src/services/evolution/regression-skeptic-runner.js +0 -113
  487. package/dist/src/services/feedback/feedback-promotion-service.d.ts +0 -123
  488. package/dist/src/services/feedback/feedback-promotion-service.js +0 -300
  489. package/dist/src/services/filesystem/file-lock.d.ts +0 -11
  490. package/dist/src/services/filesystem/file-lock.js +0 -129
  491. package/dist/src/services/final-review/final-review-service.d.ts +0 -12
  492. package/dist/src/services/final-review/final-review-service.js +0 -52
  493. package/dist/src/services/final-review/final-review-types.d.ts +0 -42
  494. package/dist/src/services/final-review/final-review-types.js +0 -18
  495. package/dist/src/services/fixture/fixture-capture-service.d.ts +0 -87
  496. package/dist/src/services/fixture/fixture-capture-service.js +0 -317
  497. package/dist/src/services/fixture/fixture-sanitize-service.d.ts +0 -117
  498. package/dist/src/services/fixture/fixture-sanitize-service.js +0 -161
  499. package/dist/src/services/fixture/index.d.ts +0 -8
  500. package/dist/src/services/fixture/index.js +0 -8
  501. package/dist/src/services/fork/fork-sync-state.d.ts +0 -85
  502. package/dist/src/services/fork/fork-sync-state.js +0 -130
  503. package/dist/src/services/fuzzy-matching/fuzzy-match-service.d.ts +0 -15
  504. package/dist/src/services/fuzzy-matching/fuzzy-match-service.js +0 -56
  505. package/dist/src/services/fuzzy-matching/fzf-pick-service.d.ts +0 -68
  506. package/dist/src/services/fuzzy-matching/fzf-pick-service.js +0 -158
  507. package/dist/src/services/fuzzy-matching/types.d.ts +0 -20
  508. package/dist/src/services/fuzzy-matching/types.js +0 -1
  509. package/dist/src/services/handoff/handoff-parser.d.ts +0 -28
  510. package/dist/src/services/handoff/handoff-parser.js +0 -69
  511. package/dist/src/services/handoff/handoff-types.d.ts +0 -39
  512. package/dist/src/services/handoff/handoff-types.js +0 -19
  513. package/dist/src/services/handoff/handoff-writer.d.ts +0 -23
  514. package/dist/src/services/handoff/handoff-writer.js +0 -30
  515. package/dist/src/services/hooks/auto-compact-hook-install.d.ts +0 -104
  516. package/dist/src/services/hooks/auto-compact-hook-install.js +0 -157
  517. package/dist/src/services/hooks/output.d.ts +0 -92
  518. package/dist/src/services/hooks/output.js +0 -111
  519. package/dist/src/services/hooks/presence-marker-detector.d.ts +0 -16
  520. package/dist/src/services/hooks/presence-marker-detector.js +0 -105
  521. package/dist/src/services/ide/adapters/claude-code-adapter.d.ts +0 -18
  522. package/dist/src/services/ide/adapters/claude-code-adapter.js +0 -103
  523. package/dist/src/services/ide/adapters/codex-adapter.d.ts +0 -46
  524. package/dist/src/services/ide/adapters/codex-adapter.js +0 -97
  525. package/dist/src/services/ide/adapters/cursor-adapter.d.ts +0 -36
  526. package/dist/src/services/ide/adapters/cursor-adapter.js +0 -84
  527. package/dist/src/services/ide/adapters/hermes-adapter.d.ts +0 -21
  528. package/dist/src/services/ide/adapters/hermes-adapter.js +0 -51
  529. package/dist/src/services/ide/adapters/openclaw-adapter.d.ts +0 -14
  530. package/dist/src/services/ide/adapters/openclaw-adapter.js +0 -42
  531. package/dist/src/services/ide/adapters/trae-adapter.d.ts +0 -42
  532. package/dist/src/services/ide/adapters/trae-adapter.js +0 -83
  533. package/dist/src/services/ide/adapters/zcode-adapter.d.ts +0 -40
  534. package/dist/src/services/ide/adapters/zcode-adapter.js +0 -220
  535. package/dist/src/services/ide/current-model-detector.d.ts +0 -14
  536. package/dist/src/services/ide/current-model-detector.js +0 -60
  537. package/dist/src/services/ide/hook-protocol.d.ts +0 -47
  538. package/dist/src/services/ide/hook-protocol.js +0 -74
  539. package/dist/src/services/ide/hook-translator.d.ts +0 -72
  540. package/dist/src/services/ide/hook-translator.js +0 -128
  541. package/dist/src/services/ide/ide-detector.d.ts +0 -10
  542. package/dist/src/services/ide/ide-detector.js +0 -19
  543. package/dist/src/services/ide/ide-registry.d.ts +0 -14
  544. package/dist/src/services/ide/ide-registry.js +0 -63
  545. package/dist/src/services/ide/ide-types.d.ts +0 -253
  546. package/dist/src/services/ide/ide-types.js +0 -2
  547. package/dist/src/services/ide/resource-profile.d.ts +0 -52
  548. package/dist/src/services/ide/resource-profile.js +0 -33
  549. package/dist/src/services/ide/shared/atomic-json.d.ts +0 -15
  550. package/dist/src/services/ide/shared/atomic-json.js +0 -58
  551. package/dist/src/services/ide/shared/safe-path.d.ts +0 -11
  552. package/dist/src/services/ide/shared/safe-path.js +0 -29
  553. package/dist/src/services/impact/impact-scan-service.d.ts +0 -66
  554. package/dist/src/services/impact/impact-scan-service.js +0 -197
  555. package/dist/src/services/job/job-event-emitter.d.ts +0 -30
  556. package/dist/src/services/job/job-event-emitter.js +0 -5
  557. package/dist/src/services/job/job-orchestrator.d.ts +0 -50
  558. package/dist/src/services/job/job-orchestrator.js +0 -104
  559. package/dist/src/services/job/job-progress-store.d.ts +0 -60
  560. package/dist/src/services/job/job-progress-store.js +0 -70
  561. package/dist/src/services/job/job-resource-snapshot.d.ts +0 -7
  562. package/dist/src/services/job/job-resource-snapshot.js +0 -75
  563. package/dist/src/services/job/job-rotation.d.ts +0 -17
  564. package/dist/src/services/job/job-rotation.js +0 -30
  565. package/dist/src/services/job/job-state-store.d.ts +0 -24
  566. package/dist/src/services/job/job-state-store.js +0 -60
  567. package/dist/src/services/job/job-types.d.ts +0 -444
  568. package/dist/src/services/job/job-types.js +0 -87
  569. package/dist/src/services/job/subagent-job-wrapper.d.ts +0 -35
  570. package/dist/src/services/job/subagent-job-wrapper.js +0 -30
  571. package/dist/src/services/legacy/legacy-detector.d.ts +0 -34
  572. package/dist/src/services/legacy/legacy-detector.js +0 -111
  573. package/dist/src/services/log/log-commands-service.d.ts +0 -54
  574. package/dist/src/services/log/log-commands-service.js +0 -83
  575. package/dist/src/services/log/logger.d.ts +0 -103
  576. package/dist/src/services/log/logger.js +0 -224
  577. package/dist/src/services/log/redact.d.ts +0 -32
  578. package/dist/src/services/log/redact.js +0 -89
  579. package/dist/src/services/log/retention.d.ts +0 -34
  580. package/dist/src/services/log/retention.js +0 -78
  581. package/dist/src/services/loop/evaluator-dispatcher.d.ts +0 -50
  582. package/dist/src/services/loop/evaluator-dispatcher.js +0 -552
  583. package/dist/src/services/loop/loop-bee-relation-service.d.ts +0 -107
  584. package/dist/src/services/loop/loop-bee-relation-service.js +0 -211
  585. package/dist/src/services/loop/loop-bee-relation-store.d.ts +0 -53
  586. package/dist/src/services/loop/loop-bee-relation-store.js +0 -130
  587. package/dist/src/services/loop/loop-bee-relation-types.d.ts +0 -118
  588. package/dist/src/services/loop/loop-bee-relation-types.js +0 -114
  589. package/dist/src/services/loop/loop-release-service.d.ts +0 -46
  590. package/dist/src/services/loop/loop-release-service.js +0 -66
  591. package/dist/src/services/loop/loop-release-store.d.ts +0 -55
  592. package/dist/src/services/loop/loop-release-store.js +0 -134
  593. package/dist/src/services/loop/loop-release-types.d.ts +0 -250
  594. package/dist/src/services/loop/loop-release-types.js +0 -162
  595. package/dist/src/services/loop/monotonic-guard.d.ts +0 -80
  596. package/dist/src/services/loop/monotonic-guard.js +0 -232
  597. package/dist/src/services/loop/monotonic-runner.d.ts +0 -58
  598. package/dist/src/services/loop/monotonic-runner.js +0 -231
  599. package/dist/src/services/loop/run-driver.d.ts +0 -70
  600. package/dist/src/services/loop/run-driver.js +0 -400
  601. package/dist/src/services/loop/spec-service.d.ts +0 -90
  602. package/dist/src/services/loop/spec-service.js +0 -497
  603. package/dist/src/services/memory/llm-reranker.d.ts +0 -174
  604. package/dist/src/services/memory/llm-reranker.js +0 -284
  605. package/dist/src/services/memory/memory-search-service.d.ts +0 -93
  606. package/dist/src/services/memory/memory-search-service.js +0 -117
  607. package/dist/src/services/memory/project-context-service.d.ts +0 -11
  608. package/dist/src/services/memory/project-context-service.js +0 -148
  609. package/dist/src/services/memory/project-memory-service.d.ts +0 -167
  610. package/dist/src/services/memory/project-memory-service.js +0 -817
  611. package/dist/src/services/migrate-skill-name/migrate.d.ts +0 -17
  612. package/dist/src/services/migrate-skill-name/migrate.js +0 -152
  613. package/dist/src/services/migrate-skill-name/schema.d.ts +0 -42
  614. package/dist/src/services/migrate-skill-name/schema.js +0 -25
  615. package/dist/src/services/migration/v2-10-to-v2-11-service.d.ts +0 -44
  616. package/dist/src/services/migration/v2-10-to-v2-11-service.js +0 -190
  617. package/dist/src/services/migration/v2-10-to-v2-11-types.d.ts +0 -41
  618. package/dist/src/services/migration/v2-10-to-v2-11-types.js +0 -23
  619. package/dist/src/services/mode/bypass-tracker.d.ts +0 -4
  620. package/dist/src/services/mode/bypass-tracker.js +0 -31
  621. package/dist/src/services/mode/mode-enforcement.d.ts +0 -14
  622. package/dist/src/services/mode/mode-enforcement.js +0 -84
  623. package/dist/src/services/mut/assert-scanner.d.ts +0 -6
  624. package/dist/src/services/mut/assert-scanner.js +0 -116
  625. package/dist/src/services/mut/index.d.ts +0 -8
  626. package/dist/src/services/mut/index.js +0 -7
  627. package/dist/src/services/mut/mut-runner.d.ts +0 -39
  628. package/dist/src/services/mut/mut-runner.js +0 -29
  629. package/dist/src/services/mut/production-stryker.d.ts +0 -2
  630. package/dist/src/services/mut/production-stryker.js +0 -75
  631. package/dist/src/services/mut/report-builder.d.ts +0 -11
  632. package/dist/src/services/mut/report-builder.js +0 -110
  633. package/dist/src/services/mut/report-loader.d.ts +0 -31
  634. package/dist/src/services/mut/report-loader.js +0 -78
  635. package/dist/src/services/mut/thresholds.d.ts +0 -21
  636. package/dist/src/services/mut/thresholds.js +0 -22
  637. package/dist/src/services/mut/types.d.ts +0 -336
  638. package/dist/src/services/mut/types.js +0 -59
  639. package/dist/src/services/observability/aggregation.d.ts +0 -64
  640. package/dist/src/services/observability/aggregation.js +0 -217
  641. package/dist/src/services/observability/jsonl-store.d.ts +0 -59
  642. package/dist/src/services/observability/jsonl-store.js +0 -120
  643. package/dist/src/services/observability/observability-service.d.ts +0 -95
  644. package/dist/src/services/observability/observability-service.js +0 -119
  645. package/dist/src/services/observability/report-formatter.d.ts +0 -42
  646. package/dist/src/services/observability/report-formatter.js +0 -156
  647. package/dist/src/services/openspec/openspec-archive-service.d.ts +0 -12
  648. package/dist/src/services/openspec/openspec-archive-service.js +0 -28
  649. package/dist/src/services/openspec/openspec-bridge-service.d.ts +0 -16
  650. package/dist/src/services/openspec/openspec-bridge-service.js +0 -76
  651. package/dist/src/services/openspec/openspec-init-service.d.ts +0 -23
  652. package/dist/src/services/openspec/openspec-init-service.js +0 -122
  653. package/dist/src/services/openspec/openspec-propose-from-doctor-service.d.ts +0 -31
  654. package/dist/src/services/openspec/openspec-propose-from-doctor-service.js +0 -95
  655. package/dist/src/services/openspec/openspec-render-service.d.ts +0 -38
  656. package/dist/src/services/openspec/openspec-render-service.js +0 -130
  657. package/dist/src/services/openspec/openspec-scan-service.d.ts +0 -6
  658. package/dist/src/services/openspec/openspec-scan-service.js +0 -123
  659. package/dist/src/services/openspec/openspec-types.d.ts +0 -39
  660. package/dist/src/services/openspec/openspec-types.js +0 -1
  661. package/dist/src/services/openspec/openspec-validate-service.d.ts +0 -27
  662. package/dist/src/services/openspec/openspec-validate-service.js +0 -77
  663. package/dist/src/services/perf/perf-baseline-service.d.ts +0 -70
  664. package/dist/src/services/perf/perf-baseline-service.js +0 -214
  665. package/dist/src/services/polyrepo/polyrepo-dispatcher.d.ts +0 -34
  666. package/dist/src/services/polyrepo/polyrepo-dispatcher.js +0 -119
  667. package/dist/src/services/polyrepo/polyrepo-scanner.d.ts +0 -9
  668. package/dist/src/services/polyrepo/polyrepo-scanner.js +0 -94
  669. package/dist/src/services/polyrepo/polyrepo-service.d.ts +0 -34
  670. package/dist/src/services/polyrepo/polyrepo-service.js +0 -49
  671. package/dist/src/services/polyrepo/polyrepo-types.d.ts +0 -55
  672. package/dist/src/services/polyrepo/polyrepo-types.js +0 -1
  673. package/dist/src/services/prd/handoff-auto-regen.d.ts +0 -22
  674. package/dist/src/services/prd/handoff-auto-regen.js +0 -73
  675. package/dist/src/services/prd/handoff-service.d.ts +0 -54
  676. package/dist/src/services/prd/handoff-service.js +0 -142
  677. package/dist/src/services/prd/handoff-types.d.ts +0 -64
  678. package/dist/src/services/prd/handoff-types.js +0 -22
  679. package/dist/src/services/prd/prd-blocks-checker.d.ts +0 -51
  680. package/dist/src/services/prd/prd-blocks-checker.js +0 -130
  681. package/dist/src/services/prd/project-scan-reader.d.ts +0 -24
  682. package/dist/src/services/prd/project-scan-reader.js +0 -150
  683. package/dist/src/services/prd/project-scan-sediment.d.ts +0 -97
  684. package/dist/src/services/prd/project-scan-sediment.js +0 -445
  685. package/dist/src/services/prd/project-scan-types.d.ts +0 -66
  686. package/dist/src/services/prd/project-scan-types.js +0 -20
  687. package/dist/src/services/preferences/preferences-service.d.ts +0 -38
  688. package/dist/src/services/preferences/preferences-service.js +0 -198
  689. package/dist/src/services/preferences/preferences-types.d.ts +0 -148
  690. package/dist/src/services/preferences/preferences-types.js +0 -53
  691. package/dist/src/services/profiles/profile-service.d.ts +0 -6
  692. package/dist/src/services/profiles/profile-service.js +0 -19
  693. package/dist/src/services/progress/progress-service.d.ts +0 -125
  694. package/dist/src/services/progress/progress-service.js +0 -192
  695. package/dist/src/services/providers/minimax-provider-service.d.ts +0 -24
  696. package/dist/src/services/providers/minimax-provider-service.js +0 -143
  697. package/dist/src/services/providers/minimax-worker-service.d.ts +0 -21
  698. package/dist/src/services/providers/minimax-worker-service.js +0 -83
  699. package/dist/src/services/proxy/proxy-service.d.ts +0 -7
  700. package/dist/src/services/proxy/proxy-service.js +0 -31
  701. package/dist/src/services/qa/browser-event-logger.d.ts +0 -40
  702. package/dist/src/services/qa/browser-event-logger.js +0 -54
  703. package/dist/src/services/qa/browser-restart-detector.d.ts +0 -74
  704. package/dist/src/services/qa/browser-restart-detector.js +0 -138
  705. package/dist/src/services/qa/browser-reuse-hint.d.ts +0 -18
  706. package/dist/src/services/qa/browser-reuse-hint.js +0 -18
  707. package/dist/src/services/qa/browser-wrapper-service.d.ts +0 -37
  708. package/dist/src/services/qa/browser-wrapper-service.js +0 -88
  709. package/dist/src/services/qa/qa-business-review-state.d.ts +0 -47
  710. package/dist/src/services/qa/qa-business-review-state.js +0 -96
  711. package/dist/src/services/rd/ast-gate.d.ts +0 -19
  712. package/dist/src/services/rd/ast-gate.js +0 -71
  713. package/dist/src/services/rd/impl.d.ts +0 -9
  714. package/dist/src/services/rd/impl.js +0 -57
  715. package/dist/src/services/rd/rd-service.d.ts +0 -129
  716. package/dist/src/services/rd/rd-service.js +0 -441
  717. package/dist/src/services/rd/reviewer-dispatch-policy.d.ts +0 -122
  718. package/dist/src/services/rd/reviewer-dispatch-policy.js +0 -148
  719. package/dist/src/services/rd/standards-diagnostic.d.ts +0 -76
  720. package/dist/src/services/rd/standards-diagnostic.js +0 -166
  721. package/dist/src/services/rd/strategic-stage.d.ts +0 -4
  722. package/dist/src/services/rd/strategic-stage.js +0 -15
  723. package/dist/src/services/rd/strategy.d.ts +0 -13
  724. package/dist/src/services/rd/strategy.js +0 -60
  725. package/dist/src/services/rd/tactical-stage.d.ts +0 -33
  726. package/dist/src/services/rd/tactical-stage.js +0 -62
  727. package/dist/src/services/rd/types.d.ts +0 -252
  728. package/dist/src/services/rd/types.js +0 -47
  729. package/dist/src/services/recommendations/capability-availability.d.ts +0 -5
  730. package/dist/src/services/recommendations/capability-availability.js +0 -40
  731. package/dist/src/services/recommendations/capability-map-service.d.ts +0 -7
  732. package/dist/src/services/recommendations/capability-map-service.js +0 -131
  733. package/dist/src/services/recommendations/capability-seed-items.d.ts +0 -2
  734. package/dist/src/services/recommendations/capability-seed-items.js +0 -140
  735. package/dist/src/services/recommendations/capability-seed-mappings.d.ts +0 -2
  736. package/dist/src/services/recommendations/capability-seed-mappings.js +0 -54
  737. package/dist/src/services/recommendations/capability-seed-sources.d.ts +0 -2
  738. package/dist/src/services/recommendations/capability-seed-sources.js +0 -35
  739. package/dist/src/services/recommendations/recommendation-service.d.ts +0 -8
  740. package/dist/src/services/recommendations/recommendation-service.js +0 -106
  741. package/dist/src/services/recommendations/recommendation-types.d.ts +0 -129
  742. package/dist/src/services/recommendations/recommendation-types.js +0 -1
  743. package/dist/src/services/recommendations/seed-capability-catalog.d.ts +0 -3
  744. package/dist/src/services/recommendations/seed-capability-catalog.js +0 -3
  745. package/dist/src/services/refactor/refactor-service.d.ts +0 -9
  746. package/dist/src/services/refactor/refactor-service.js +0 -36
  747. package/dist/src/services/release/release-state.d.ts +0 -70
  748. package/dist/src/services/release/release-state.js +0 -140
  749. package/dist/src/services/retrospective/retrospective-index.d.ts +0 -37
  750. package/dist/src/services/retrospective/retrospective-index.js +0 -110
  751. package/dist/src/services/retrospective/retrospective-search-service.d.ts +0 -55
  752. package/dist/src/services/retrospective/retrospective-search-service.js +0 -107
  753. package/dist/src/services/retrospective/retrospective-show.d.ts +0 -40
  754. package/dist/src/services/retrospective/retrospective-show.js +0 -109
  755. package/dist/src/services/reviewer/model-family.d.ts +0 -18
  756. package/dist/src/services/reviewer/model-family.js +0 -70
  757. package/dist/src/services/reviewer/providers/anthropic.d.ts +0 -2
  758. package/dist/src/services/reviewer/providers/anthropic.js +0 -61
  759. package/dist/src/services/reviewer/providers/ollama.d.ts +0 -26
  760. package/dist/src/services/reviewer/providers/ollama.js +0 -38
  761. package/dist/src/services/reviewer/providers/openai.d.ts +0 -2
  762. package/dist/src/services/reviewer/providers/openai.js +0 -63
  763. package/dist/src/services/reviewer/reviewer-config.d.ts +0 -34
  764. package/dist/src/services/reviewer/reviewer-config.js +0 -100
  765. package/dist/src/services/reviewer/reviewer-service.d.ts +0 -56
  766. package/dist/src/services/reviewer/reviewer-service.js +0 -263
  767. package/dist/src/services/reviewer/selection-strategies.d.ts +0 -27
  768. package/dist/src/services/reviewer/selection-strategies.js +0 -53
  769. package/dist/src/services/role/role-registry.d.ts +0 -38
  770. package/dist/src/services/role/role-registry.js +0 -83
  771. package/dist/src/services/runtime/runtime-detector.d.ts +0 -15
  772. package/dist/src/services/runtime/runtime-detector.js +0 -62
  773. package/dist/src/services/runtime/runtime-service.d.ts +0 -59
  774. package/dist/src/services/runtime/runtime-service.js +0 -51
  775. package/dist/src/services/runtime/vendor-adapter.d.ts +0 -59
  776. package/dist/src/services/runtime/vendor-adapter.js +0 -1
  777. package/dist/src/services/runtime/vendors/claude-code.d.ts +0 -7
  778. package/dist/src/services/runtime/vendors/claude-code.js +0 -39
  779. package/dist/src/services/runtime/vendors/codex.d.ts +0 -7
  780. package/dist/src/services/runtime/vendors/codex.js +0 -43
  781. package/dist/src/services/runtime/vendors/copilot.d.ts +0 -7
  782. package/dist/src/services/runtime/vendors/copilot.js +0 -40
  783. package/dist/src/services/sc/index.d.ts +0 -1
  784. package/dist/src/services/sc/index.js +0 -1
  785. package/dist/src/services/sc/sc-service.d.ts +0 -131
  786. package/dist/src/services/sc/sc-service.js +0 -552
  787. package/dist/src/services/scan/acceptance-coverage-service.d.ts +0 -42
  788. package/dist/src/services/scan/acceptance-coverage-service.js +0 -140
  789. package/dist/src/services/scan/api-surface-service.d.ts +0 -69
  790. package/dist/src/services/scan/api-surface-service.js +0 -239
  791. package/dist/src/services/scan/archetype-service.d.ts +0 -5
  792. package/dist/src/services/scan/archetype-service.js +0 -242
  793. package/dist/src/services/scan/diff-scope-service.d.ts +0 -40
  794. package/dist/src/services/scan/diff-scope-service.js +0 -198
  795. package/dist/src/services/scan/existing-system-service.d.ts +0 -7
  796. package/dist/src/services/scan/existing-system-service.js +0 -300
  797. package/dist/src/services/scan/file-size-scan.d.ts +0 -23
  798. package/dist/src/services/scan/file-size-scan.js +0 -68
  799. package/dist/src/services/scan/karpathy-service.d.ts +0 -60
  800. package/dist/src/services/scan/karpathy-service.js +0 -228
  801. package/dist/src/services/scan/libraries-service.d.ts +0 -24
  802. package/dist/src/services/scan/libraries-service.js +0 -419
  803. package/dist/src/services/scan/libraries-types.d.ts +0 -59
  804. package/dist/src/services/scan/libraries-types.js +0 -9
  805. package/dist/src/services/scan/orphan-service.d.ts +0 -76
  806. package/dist/src/services/scan/orphan-service.js +0 -538
  807. package/dist/src/services/scan/scan-types.d.ts +0 -59
  808. package/dist/src/services/scan/scan-types.js +0 -1
  809. package/dist/src/services/scan/type-sanity-service.d.ts +0 -23
  810. package/dist/src/services/scan/type-sanity-service.js +0 -116
  811. package/dist/src/services/security/safe-settings-path.d.ts +0 -12
  812. package/dist/src/services/security/safe-settings-path.js +0 -104
  813. package/dist/src/services/sediment/dispose-confirm.d.ts +0 -9
  814. package/dist/src/services/sediment/dispose-confirm.js +0 -5
  815. package/dist/src/services/sediment/json-schema.d.ts +0 -247
  816. package/dist/src/services/sediment/json-schema.js +0 -26
  817. package/dist/src/services/sediment/manifest-lint.d.ts +0 -13
  818. package/dist/src/services/sediment/manifest-lint.js +0 -11
  819. package/dist/src/services/sediment/pool-paths.d.ts +0 -22
  820. package/dist/src/services/sediment/pool-paths.js +0 -25
  821. package/dist/src/services/sediment/pool-read.d.ts +0 -20
  822. package/dist/src/services/sediment/pool-read.js +0 -73
  823. package/dist/src/services/sediment/pool-rebuild-index.d.ts +0 -15
  824. package/dist/src/services/sediment/pool-rebuild-index.js +0 -28
  825. package/dist/src/services/sediment/pool-write.d.ts +0 -14
  826. package/dist/src/services/sediment/pool-write.js +0 -25
  827. package/dist/src/services/sediment/promotion-gate.d.ts +0 -12
  828. package/dist/src/services/sediment/promotion-gate.js +0 -20
  829. package/dist/src/services/sediment/types.d.ts +0 -52
  830. package/dist/src/services/sediment/types.js +0 -1
  831. package/dist/src/services/session/binding-status-service.d.ts +0 -56
  832. package/dist/src/services/session/binding-status-service.js +0 -106
  833. package/dist/src/services/session/binding-store.d.ts +0 -161
  834. package/dist/src/services/session/binding-store.js +0 -509
  835. package/dist/src/services/session/caller-binding-service.d.ts +0 -70
  836. package/dist/src/services/session/caller-binding-service.js +0 -148
  837. package/dist/src/services/session/caller-id-types.d.ts +0 -77
  838. package/dist/src/services/session/caller-id-types.js +0 -46
  839. package/dist/src/services/session/getSessionDir.d.ts +0 -1
  840. package/dist/src/services/session/getSessionDir.js +0 -27
  841. package/dist/src/services/session/index.d.ts +0 -6
  842. package/dist/src/services/session/index.js +0 -7
  843. package/dist/src/services/session/platform-fallbacks.d.ts +0 -31
  844. package/dist/src/services/session/platform-fallbacks.js +0 -35
  845. package/dist/src/services/session/resolve-caller-id.d.ts +0 -57
  846. package/dist/src/services/session/resolve-caller-id.js +0 -88
  847. package/dist/src/services/session/session-binding-bridge.d.ts +0 -76
  848. package/dist/src/services/session/session-binding-bridge.js +0 -247
  849. package/dist/src/services/session/session-checkpoint-service.d.ts +0 -57
  850. package/dist/src/services/session/session-checkpoint-service.js +0 -143
  851. package/dist/src/services/session/session-manager.d.ts +0 -168
  852. package/dist/src/services/session/session-manager.js +0 -502
  853. package/dist/src/services/session/session-resume-service.d.ts +0 -25
  854. package/dist/src/services/session/session-resume-service.js +0 -101
  855. package/dist/src/services/share/bundle-reader.d.ts +0 -100
  856. package/dist/src/services/share/bundle-reader.js +0 -434
  857. package/dist/src/services/share/bundle-types.d.ts +0 -392
  858. package/dist/src/services/share/bundle-types.js +0 -318
  859. package/dist/src/services/share/bundle-writer.d.ts +0 -97
  860. package/dist/src/services/share/bundle-writer.js +0 -429
  861. package/dist/src/services/share/run-state-contract.d.ts +0 -133
  862. package/dist/src/services/share/run-state-contract.js +0 -138
  863. package/dist/src/services/signal/cancel-handler.d.ts +0 -14
  864. package/dist/src/services/signal/cancel-handler.js +0 -76
  865. package/dist/src/services/skill/resume-detector.d.ts +0 -54
  866. package/dist/src/services/skill/resume-detector.js +0 -334
  867. package/dist/src/services/skill/skill-scheduler.d.ts +0 -40
  868. package/dist/src/services/skill/skill-scheduler.js +0 -53
  869. package/dist/src/services/skill/skill-search-service.d.ts +0 -88
  870. package/dist/src/services/skill/skill-search-service.js +0 -228
  871. package/dist/src/services/skillhub/release-diff.d.ts +0 -18
  872. package/dist/src/services/skillhub/release-diff.js +0 -38
  873. package/dist/src/services/skillhub/release-export.d.ts +0 -8
  874. package/dist/src/services/skillhub/release-export.js +0 -31
  875. package/dist/src/services/skillhub/release-gc-blobs.d.ts +0 -13
  876. package/dist/src/services/skillhub/release-gc-blobs.js +0 -32
  877. package/dist/src/services/skillhub/release-import.d.ts +0 -7
  878. package/dist/src/services/skillhub/release-import.js +0 -64
  879. package/dist/src/services/skillhub/release-retain.d.ts +0 -23
  880. package/dist/src/services/skillhub/release-retain.js +0 -94
  881. package/dist/src/services/skillhub/sqlite-store.d.ts +0 -22
  882. package/dist/src/services/skillhub/sqlite-store.js +0 -63
  883. package/dist/src/services/skillhub/tar-runtime.d.ts +0 -21
  884. package/dist/src/services/skillhub/tar-runtime.js +0 -91
  885. package/dist/src/services/skillhub/types.d.ts +0 -115
  886. package/dist/src/services/skillhub/types.js +0 -1
  887. package/dist/src/services/skills/hooks-settings-service.d.ts +0 -137
  888. package/dist/src/services/skills/hooks-settings-service.js +0 -396
  889. package/dist/src/services/skills/skill-conformance-service.d.ts +0 -40
  890. package/dist/src/services/skills/skill-conformance-service.js +0 -139
  891. package/dist/src/services/skills/skill-presence-service.d.ts +0 -158
  892. package/dist/src/services/skills/skill-presence-service.js +0 -474
  893. package/dist/src/services/skills/skill-registry.d.ts +0 -17
  894. package/dist/src/services/skills/skill-registry.js +0 -67
  895. package/dist/src/services/skills/skill-runbook-service.d.ts +0 -11
  896. package/dist/src/services/skills/skill-runbook-service.js +0 -128
  897. package/dist/src/services/skills/skill-statusline-renderer.d.ts +0 -6
  898. package/dist/src/services/skills/skill-statusline-renderer.js +0 -55
  899. package/dist/src/services/skills/skill-statusline-service.d.ts +0 -24
  900. package/dist/src/services/skills/skill-statusline-service.js +0 -110
  901. package/dist/src/services/skills/statusline-settings-service.d.ts +0 -59
  902. package/dist/src/services/skills/statusline-settings-service.js +0 -141
  903. package/dist/src/services/skills/sync-service.d.ts +0 -86
  904. package/dist/src/services/skills/sync-service.js +0 -271
  905. package/dist/src/services/slice/calibration-store.d.ts +0 -39
  906. package/dist/src/services/slice/calibration-store.js +0 -68
  907. package/dist/src/services/slice/cross-pass-edge-merger.d.ts +0 -53
  908. package/dist/src/services/slice/cross-pass-edge-merger.js +0 -246
  909. package/dist/src/services/slice/granularity-decider.d.ts +0 -37
  910. package/dist/src/services/slice/granularity-decider.js +0 -40
  911. package/dist/src/services/slice/llm-arbitrator.d.ts +0 -35
  912. package/dist/src/services/slice/llm-arbitrator.js +0 -63
  913. package/dist/src/services/slice/multi-pass-orchestrator.d.ts +0 -67
  914. package/dist/src/services/slice/multi-pass-orchestrator.js +0 -225
  915. package/dist/src/services/slice/schema-router.d.ts +0 -44
  916. package/dist/src/services/slice/schema-router.js +0 -61
  917. package/dist/src/services/slice/slice-archive-service.d.ts +0 -20
  918. package/dist/src/services/slice/slice-archive-service.js +0 -111
  919. package/dist/src/services/slice/slice-benchmark-service.d.ts +0 -19
  920. package/dist/src/services/slice/slice-benchmark-service.js +0 -60
  921. package/dist/src/services/slice/slice-check-service.d.ts +0 -2
  922. package/dist/src/services/slice/slice-check-service.js +0 -459
  923. package/dist/src/services/slice/slice-check-types.d.ts +0 -104
  924. package/dist/src/services/slice/slice-check-types.js +0 -28
  925. package/dist/src/services/slice/slice-decompose-runners.d.ts +0 -23
  926. package/dist/src/services/slice/slice-decompose-runners.js +0 -174
  927. package/dist/src/services/slice/slice-decompose-service.d.ts +0 -24
  928. package/dist/src/services/slice/slice-decompose-service.js +0 -532
  929. package/dist/src/services/slice/slice-decompose-types.d.ts +0 -263
  930. package/dist/src/services/slice/slice-decompose-types.js +0 -30
  931. package/dist/src/services/slice/slice-integration.d.ts +0 -43
  932. package/dist/src/services/slice/slice-integration.js +0 -106
  933. package/dist/src/services/slice/slice-pick-service.d.ts +0 -32
  934. package/dist/src/services/slice/slice-pick-service.js +0 -75
  935. package/dist/src/services/slice/slice-review-state.d.ts +0 -70
  936. package/dist/src/services/slice/slice-review-state.js +0 -109
  937. package/dist/src/services/slice/slice-topology-types.d.ts +0 -115
  938. package/dist/src/services/slice/slice-topology-types.js +0 -20
  939. package/dist/src/services/smoke/smoke-paths-state.d.ts +0 -73
  940. package/dist/src/services/smoke/smoke-paths-state.js +0 -117
  941. package/dist/src/services/sop/gate-enforce-service.d.ts +0 -33
  942. package/dist/src/services/sop/gate-enforce-service.js +0 -168
  943. package/dist/src/services/sop/sop-advance-service.d.ts +0 -74
  944. package/dist/src/services/sop/sop-advance-service.js +0 -115
  945. package/dist/src/services/sop/sop-check-service.d.ts +0 -45
  946. package/dist/src/services/sop/sop-check-service.js +0 -181
  947. package/dist/src/services/sop/sop-paths.d.ts +0 -62
  948. package/dist/src/services/sop/sop-paths.js +0 -92
  949. package/dist/src/services/sop/sop-registry-service.d.ts +0 -46
  950. package/dist/src/services/sop/sop-registry-service.js +0 -89
  951. package/dist/src/services/sop/sop-service.d.ts +0 -55
  952. package/dist/src/services/sop/sop-service.js +0 -222
  953. package/dist/src/services/sop/sop-types.d.ts +0 -95
  954. package/dist/src/services/sop/sop-types.js +0 -11
  955. package/dist/src/services/standards/ide-aware-standards-service.d.ts +0 -94
  956. package/dist/src/services/standards/ide-aware-standards-service.js +0 -89
  957. package/dist/src/services/standards/loop-engineering-lint.d.ts +0 -38
  958. package/dist/src/services/standards/loop-engineering-lint.js +0 -101
  959. package/dist/src/services/standards/loop-engineering-readiness-lint.d.ts +0 -111
  960. package/dist/src/services/standards/loop-engineering-readiness-lint.js +0 -248
  961. package/dist/src/services/standards/migrate-claude-rules-service.d.ts +0 -19
  962. package/dist/src/services/standards/migrate-claude-rules-service.js +0 -193
  963. package/dist/src/services/standards/migrate-service.d.ts +0 -63
  964. package/dist/src/services/standards/migrate-service.js +0 -193
  965. package/dist/src/services/standards/missing-standards-detector.d.ts +0 -79
  966. package/dist/src/services/standards/missing-standards-detector.js +0 -132
  967. package/dist/src/services/standards/project-context.d.ts +0 -24
  968. package/dist/src/services/standards/project-context.js +0 -314
  969. package/dist/src/services/standards/project-standards-service.d.ts +0 -114
  970. package/dist/src/services/standards/project-standards-service.js +0 -574
  971. package/dist/src/services/tech/tech-service.d.ts +0 -69
  972. package/dist/src/services/tech/tech-service.js +0 -299
  973. package/dist/src/services/test-cache/test-cache-service.d.ts +0 -70
  974. package/dist/src/services/test-cache/test-cache-service.js +0 -175
  975. package/dist/src/services/understand/hybrid-types.d.ts +0 -32
  976. package/dist/src/services/understand/hybrid-types.js +0 -1
  977. package/dist/src/services/understand/understand-hybrid-service.d.ts +0 -10
  978. package/dist/src/services/understand/understand-hybrid-service.js +0 -100
  979. package/dist/src/services/understand/understand-scan-service.d.ts +0 -28
  980. package/dist/src/services/understand/understand-scan-service.js +0 -170
  981. package/dist/src/services/understand/understand-types.d.ts +0 -50
  982. package/dist/src/services/understand/understand-types.js +0 -1
  983. package/dist/src/services/upgrade/1x-detector-service.d.ts +0 -7
  984. package/dist/src/services/upgrade/1x-detector-service.js +0 -94
  985. package/dist/src/services/upgrade/gitignore-migrate-service.d.ts +0 -56
  986. package/dist/src/services/upgrade/gitignore-migrate-service.js +0 -170
  987. package/dist/src/services/upgrade/upgrade-service.d.ts +0 -81
  988. package/dist/src/services/upgrade/upgrade-service.js +0 -403
  989. package/dist/src/services/verdict/envelopes.d.ts +0 -93
  990. package/dist/src/services/verdict/envelopes.js +0 -349
  991. package/dist/src/services/verdict/verdict-aggregator.d.ts +0 -94
  992. package/dist/src/services/verdict/verdict-aggregator.js +0 -112
  993. package/dist/src/services/workflow/artifact-paths.d.ts +0 -59
  994. package/dist/src/services/workflow/artifact-paths.js +0 -166
  995. package/dist/src/services/workflow/autonomous-resume-writer.d.ts +0 -16
  996. package/dist/src/services/workflow/autonomous-resume-writer.js +0 -170
  997. package/dist/src/services/workflow/pipeline-verify-service.d.ts +0 -90
  998. package/dist/src/services/workflow/pipeline-verify-service.js +0 -449
  999. package/dist/src/services/workflow/plan-reader.d.ts +0 -29
  1000. package/dist/src/services/workflow/plan-reader.js +0 -174
  1001. package/dist/src/services/workflow/plan-refresher.d.ts +0 -32
  1002. package/dist/src/services/workflow/plan-refresher.js +0 -353
  1003. package/dist/src/services/workflow/plan-trigger-detector.d.ts +0 -55
  1004. package/dist/src/services/workflow/plan-trigger-detector.js +0 -142
  1005. package/dist/src/services/workflow/workflow-autonomous-resume-helpers.d.ts +0 -19
  1006. package/dist/src/services/workflow/workflow-autonomous-resume-helpers.js +0 -300
  1007. package/dist/src/services/workflow/workflow-autonomous-service.d.ts +0 -100
  1008. package/dist/src/services/workflow/workflow-autonomous-service.js +0 -306
  1009. package/dist/src/services/workflow/workflow-loader.d.ts +0 -63
  1010. package/dist/src/services/workflow/workflow-loader.js +0 -168
  1011. package/dist/src/services/workflow/workflow-router-service.d.ts +0 -85
  1012. package/dist/src/services/workflow/workflow-router-service.js +0 -233
  1013. package/dist/src/services/workflow/workflow-skip-service.d.ts +0 -106
  1014. package/dist/src/services/workflow/workflow-skip-service.js +0 -209
  1015. package/dist/src/services/workflow/workflow-spec.d.ts +0 -116
  1016. package/dist/src/services/workflow/workflow-spec.js +0 -431
  1017. package/dist/src/services/workflow/workflow-state-store.d.ts +0 -27
  1018. package/dist/src/services/workflow/workflow-state-store.js +0 -95
  1019. package/dist/src/services/workspace/claude-settings-template.d.ts +0 -101
  1020. package/dist/src/services/workspace/claude-settings-template.js +0 -254
  1021. package/dist/src/services/workspace/migrate-1-4-1-service.d.ts +0 -44
  1022. package/dist/src/services/workspace/migrate-1-4-1-service.js +0 -195
  1023. package/dist/src/services/workspace/migrate-service.d.ts +0 -2
  1024. package/dist/src/services/workspace/migrate-service.js +0 -613
  1025. package/dist/src/services/workspace/migrate-types.d.ts +0 -127
  1026. package/dist/src/services/workspace/migrate-types.js +0 -21
  1027. package/dist/src/services/workspace/reconcile-service.d.ts +0 -188
  1028. package/dist/src/services/workspace/reconcile-service.js +0 -683
  1029. package/dist/src/services/workspace/reconcile-types.d.ts +0 -130
  1030. package/dist/src/services/workspace/reconcile-types.js +0 -13
  1031. package/dist/src/services/workspace/sid-naming-guard.d.ts +0 -17
  1032. package/dist/src/services/workspace/sid-naming-guard.js +0 -34
  1033. package/dist/src/services/workspace/workspace-claude-settings-materializer.d.ts +0 -45
  1034. package/dist/src/services/workspace/workspace-claude-settings-materializer.js +0 -194
  1035. package/dist/src/services/workspace/workspace-clean-service.d.ts +0 -28
  1036. package/dist/src/services/workspace/workspace-clean-service.js +0 -46
  1037. package/dist/src/services/workspace/workspace-service.d.ts +0 -177
  1038. package/dist/src/services/workspace/workspace-service.js +0 -432
  1039. package/dist/src/services/workspace/workspace-state-service.d.ts +0 -7
  1040. package/dist/src/services/workspace/workspace-state-service.js +0 -43
  1041. package/dist/src/shared/format-md-compact.d.ts +0 -32
  1042. package/dist/src/shared/format-md-compact.js +0 -297
  1043. package/dist/src/shared/frontmatter.d.ts +0 -6
  1044. package/dist/src/shared/frontmatter.js +0 -165
  1045. package/dist/src/shared/fs-utils.d.ts +0 -4
  1046. package/dist/src/shared/fs-utils.js +0 -16
  1047. package/dist/src/shared/fs.d.ts +0 -4
  1048. package/dist/src/shared/fs.js +0 -26
  1049. package/dist/src/shared/incrementing-number.d.ts +0 -23
  1050. package/dist/src/shared/incrementing-number.js +0 -68
  1051. package/dist/src/shared/json-schema-mini.d.ts +0 -10
  1052. package/dist/src/shared/json-schema-mini.js +0 -113
  1053. package/dist/src/shared/path-safety.d.ts +0 -21
  1054. package/dist/src/shared/path-safety.js +0 -54
  1055. package/dist/src/shared/path-utils.d.ts +0 -13
  1056. package/dist/src/shared/path-utils.js +0 -56
  1057. package/dist/src/shared/paths.d.ts +0 -6
  1058. package/dist/src/shared/paths.js +0 -50
  1059. package/dist/src/shared/planner-response.d.ts +0 -21
  1060. package/dist/src/shared/planner-response.js +0 -26
  1061. package/dist/src/shared/platform.d.ts +0 -6
  1062. package/dist/src/shared/platform.js +0 -11
  1063. package/dist/src/shared/process.d.ts +0 -5
  1064. package/dist/src/shared/process.js +0 -12
  1065. package/dist/src/shared/result.d.ts +0 -22
  1066. package/dist/src/shared/result.js +0 -46
  1067. package/dist/src/shared/stale-policy.d.ts +0 -67
  1068. package/dist/src/shared/stale-policy.js +0 -85
  1069. package/dist/src/shared/version.d.ts +0 -1
  1070. package/dist/src/shared/version.js +0 -1
  1071. package/dist/src/skills/peaks-maker/index.d.ts +0 -5
  1072. package/dist/src/skills/peaks-maker/index.js +0 -32
@@ -1,449 +0,0 @@
1
- import { existsSync } from 'node:fs';
2
- import { join } from 'node:path';
3
- import { isRequestType } from '../artifacts/artifact-prerequisites.js';
4
- import { showRequestArtifact } from '../artifacts/request-artifact-service.js';
5
- import { resolveSecurityFindingsPath, resolvePerformanceFindingsPath } from './artifact-paths.js';
6
- import { readSkipState } from './workflow-state-store.js';
7
- import { getSessionIdCanonical } from '../session/session-manager.js';
8
- import { listUnpromotedFeedback } from '../feedback/feedback-promotion-service.js';
9
- function extractState(markdown) {
10
- for (const rawLine of markdown.split(/\r?\n/)) {
11
- const match = /^-\s*state:\s*(.+?)\s*$/.exec(rawLine.trim());
12
- if (match?.[1])
13
- return match[1];
14
- }
15
- return 'unknown';
16
- }
17
- /**
18
- * As of slice 2026-06-05-change-id-as-unit-of-work, the file's durable
19
- * scope is the change-id (the `.peaks/_runtime/<sessionId>/` dir the file lives
20
- * in), NOT the session-id. We resolve the on-disk location via
21
- * `showRequestArtifact` (which scans all top-level dirs and returns the
22
- * actual dir the file was found in) instead of assuming
23
- * `.peaks/_runtime/<sessionId>/<role>/requests/`.
24
- */
25
- async function findRequestFile(projectRoot, role, rid) {
26
- const artifact = await showRequestArtifact({ projectRoot, role: role, requestId: rid });
27
- if (artifact === null)
28
- return null;
29
- // Slice 2026-06-28-code-mode-bypass-fix (defect #3): the legacy
30
- // `showRequestArtifact` returns the FULL SCOPE (`_runtime/<sid>`)
31
- // as `sessionId`, not just the trailing id segment. The canonical
32
- // evidence lookup needs only the bare id (`.peaks/_runtime/change/<id>/`).
33
- // When the scope starts with `_runtime/`, strip that prefix so the
34
- // path resolver builds the right canonical location.
35
- let sessionId = artifact.sessionId;
36
- if (sessionId.startsWith('_runtime/') || sessionId.startsWith('_runtime\\')) {
37
- sessionId = sessionId.replace(/^_runtime[\\/]/, '');
38
- }
39
- return { path: artifact.path, content: artifact.content, sessionId };
40
- }
41
- function rdGatesForType(requestType) {
42
- const gates = [
43
- { name: 'rd-request-exists', description: 'RD request artifact created', passed: false, detail: '' }
44
- ];
45
- if (requestType === 'feature' || requestType === 'refactor') {
46
- gates.push({ name: 'tech-doc', description: 'Technical design doc', passed: false, detail: '' });
47
- }
48
- if (requestType === 'bugfix') {
49
- gates.push({ name: 'bug-analysis', description: 'Bug root-cause analysis', passed: false, detail: '' });
50
- }
51
- if (requestType !== 'docs' && requestType !== 'chore' && requestType !== 'config') {
52
- gates.push({ name: 'code-review', description: 'Code review evidence', passed: false, detail: '' });
53
- }
54
- if (requestType === 'feature' || requestType === 'refactor' || requestType === 'bugfix' || requestType === 'config') {
55
- gates.push({ name: 'security-review', description: 'Security review evidence', passed: false, detail: '' });
56
- }
57
- return gates;
58
- }
59
- function qaGatesForType(requestType) {
60
- const gates = [
61
- { name: 'qa-request-exists', description: 'QA request artifact created', passed: false, detail: '' }
62
- ];
63
- if (requestType === 'feature' || requestType === 'refactor' || requestType === 'bugfix') {
64
- gates.push({ name: 'test-cases', description: 'QA test cases', passed: false, detail: '' });
65
- gates.push({ name: 'test-report', description: 'QA test report with execution results', passed: false, detail: '' });
66
- }
67
- if (requestType === 'feature' || requestType === 'refactor' || requestType === 'bugfix' || requestType === 'config') {
68
- gates.push({ name: 'security-findings', description: 'QA security findings', passed: false, detail: '' });
69
- }
70
- if (requestType === 'feature' || requestType === 'refactor') {
71
- gates.push({ name: 'performance-findings', description: 'QA performance findings', passed: false, detail: '' });
72
- }
73
- return gates;
74
- }
75
- const RD_QA_HANDOFF_STATES = new Set(['qa-handoff', 'handed-off', 'implemented']);
76
- const QA_COMPLETE_STATES = new Set(['verdict-issued']);
77
- export async function verifyPipeline(options) {
78
- const requestType = isRequestType(options.requestType ?? '') ? options.requestType : 'feature';
79
- const violations = [];
80
- const nextActions = [];
81
- const rdGates = rdGatesForType(requestType);
82
- const qaGates = qaGatesForType(requestType);
83
- // Slice 2026-06-13-peaks-workflow-skip: read the skip-state (if any)
84
- // and pre-mark matching gates as `status: 'skipped'`. We do this
85
- // BEFORE evaluating evidence files, so a skipped gate never
86
- // emits a "missing evidence" violation. The boolean `passed` is
87
- // set to `true` so legacy consumers (which only check `passed`)
88
- // treat skipped gates as satisfied; the new `status` field
89
- // distinguishes the bypass from an actual pass.
90
- const skippedGateNames = new Set();
91
- if (options.sessionId !== undefined) {
92
- const skipState = readSkipState(options.projectRoot, options.sessionId, options.rid);
93
- if (skipState !== null) {
94
- for (const gateName of skipState.skippedGates) {
95
- if (gateName === 'QA' || gateName === 'qa-phase' || gateName === 'qa') {
96
- for (const g of qaGates)
97
- skippedGateNames.add(g.name);
98
- }
99
- else if (gateName === 'RD' || gateName === 'rd-phase' || gateName === 'rd') {
100
- for (const g of rdGates)
101
- skippedGateNames.add(g.name);
102
- }
103
- else {
104
- skippedGateNames.add(gateName);
105
- }
106
- }
107
- nextActions.push(`Skipped gates (via peaks workflow skip): [${skipState.skippedGates.join(', ')}] — reason: ${skipState.skipReason}`);
108
- }
109
- }
110
- function markIfSkipped(gate) {
111
- if (skippedGateNames.has(gate.name)) {
112
- gate.status = 'skipped';
113
- gate.passed = true;
114
- gate.detail = 'skipped via peaks workflow skip';
115
- }
116
- }
117
- // Resolve RD + QA on-disk locations via showRequestArtifact (the change-id
118
- // is whatever dir the file actually lives in, not the caller's session-id).
119
- const rdFile = await findRequestFile(options.projectRoot, 'rd', options.rid);
120
- let rdInvoked = false;
121
- let rdState = 'missing';
122
- // The resolved change-id is the on-disk location the file actually
123
- // lives in. The caller's `options.sessionId` is a hint used for
124
- // path construction (nextActions strings), NOT for the resolved
125
- // sessionId field — the on-disk location is the source of truth.
126
- let resolvedChangeId = '';
127
- if (rdFile) {
128
- rdInvoked = true;
129
- rdState = extractState(rdFile.content);
130
- rdGates[0].passed = true;
131
- rdGates[0].detail = `found at ${rdFile.path}`;
132
- resolvedChangeId = rdFile.sessionId;
133
- }
134
- else {
135
- violations.push('RD phase skipped: peaks-rd was never invoked for this request (no RD request artifact found)');
136
- nextActions.push('Invoke Skill(skill="peaks-rd") with the request-id, then run unit tests + code review + security review');
137
- rdGates[0].detail = 'not found';
138
- }
139
- // Check RD evidence files (under the change-id dir the RD request lives in)
140
- const RD_EVIDENCE_FILE = {
141
- 'tech-doc': 'tech-doc.md',
142
- 'bug-analysis': 'bug-analysis.md',
143
- 'code-review': 'code-review.md',
144
- 'security-review': 'security-review.md'
145
- };
146
- // Slice v2.17.0 hard-kill — change-id axis removed as filesystem
147
- // scope. The canonical evidence location is now the session axis
148
- // `.peaks/_runtime/<sessionId>/<role>/...` (where `<sessionId>` is
149
- // the on-disk dir the request artifact lives in; for back-compat
150
- // with the legacy `_runtime/<sessionId>/` and `.peaks/<sessionId>/`
151
- // layouts we also probe those). When the legacy fallback fires, the
152
- // gate detail / nextActions surface the `DEPRECATION_LEGACY_PATH_USED`
153
- // warning so QA / TXT can nudge users to migrate via
154
- // `peaks workspace migrate-change-scope --apply`.
155
- // v2.18.1 bug #5 fix: same session-axis fallback as the QA resolver
156
- // below. When `resolvedChangeId` is empty (no RD/QA artifact on disk
157
- // yet), the canonical session id from the binding-store is the
158
- // preferred filesystem scope; falling through to `options.rid` would
159
- // make every missing-evidence path look like a per-rid scope dir.
160
- const rdEvidenceDir = resolvedChangeId || options.sessionId || getSessionIdCanonical(options.projectRoot) || options.rid;
161
- // Slice 2026-06-28-code-mode-bypass-fix (defect #3): track whether
162
- // every resolved evidence file landed on the canonical path. Drives
163
- // the `usedCanonicalPath` envelope field. The flag stays `true` if
164
- // no evidence file was resolved at all (nothing to be non-canonical
165
- // about); it flips to `false` if any file resolves via legacy.
166
- let anyEvidenceResolved = false;
167
- let allResolvedPathsCanonical = true;
168
- for (const gate of rdGates.slice(1)) {
169
- const fileName = RD_EVIDENCE_FILE[gate.name];
170
- // v2.17.0 canonical: session axis — `<sessionId>` is the on-disk
171
- // dir the request artifact was found in (matches the layout used
172
- // by `request-artifact-service.ts` for new artifacts).
173
- const canonicalPath = join(options.projectRoot, '.peaks', '_runtime', rdEvidenceDir, 'rd', fileName);
174
- const legacyMisplacedPath = join(options.projectRoot, '.peaks', rdEvidenceDir, 'rd', fileName);
175
- // Pre-v2.17.0 change-axis form: `.peaks/_runtime/change/<id>/rd/<file>`
176
- // — the v2.16.0 / v2.17.0-era canonical that v2.17.0 hard-killed.
177
- // Kept as a back-compat fallback for un-migrated workspaces.
178
- const legacyChangeAxisPath = join(options.projectRoot, '.peaks', '_runtime', 'change', rdEvidenceDir, 'rd', fileName);
179
- let resolvedPath = null;
180
- let usedLegacy = false;
181
- for (const candidate of [canonicalPath, legacyMisplacedPath, legacyChangeAxisPath]) {
182
- if (existsSync(candidate)) {
183
- resolvedPath = candidate;
184
- usedLegacy = candidate !== canonicalPath;
185
- break;
186
- }
187
- }
188
- if (resolvedPath !== null) {
189
- anyEvidenceResolved = true;
190
- if (usedLegacy)
191
- allResolvedPathsCanonical = false;
192
- gate.passed = true;
193
- gate.detail = resolvedPath + (usedLegacy ? ' [DEPRECATION_LEGACY_PATH_USED]' : '');
194
- if (usedLegacy) {
195
- violations.push(`DEPRECATION_LEGACY_PATH_USED: ${resolvedPath} — move the file into .peaks/_runtime/${rdEvidenceDir}/rd/ (the canonical location) so subsequent runs resolve on the canonical path. The legacy \`peaks workspace migrate-change-scope\` helper was removed in v2.19.0; use \`peaks workspace migrate\` to relocate misplaced content.`);
196
- }
197
- }
198
- else {
199
- gate.detail = `missing: ${canonicalPath}`;
200
- violations.push(`RD evidence missing: ${gate.description} (${fileName})`);
201
- nextActions.push(`Create .peaks/_runtime/${rdEvidenceDir}/rd/${fileName}`);
202
- }
203
- }
204
- // Check if RD reached qa-handoff
205
- if (rdInvoked && !RD_QA_HANDOFF_STATES.has(rdState)) {
206
- violations.push(`RD not ready for QA: state is "${rdState}" — must reach "qa-handoff" (unit tests, karpathy-guidelines §1 Think / §2 Simplicity / §3 Surgical / §4 Goal-Driven, code review, security review complete)`);
207
- nextActions.push(`Complete RD gates → peaks request transition ${options.rid} --role rd --state qa-handoff`);
208
- }
209
- // Check QA phase
210
- const qaFile = await findRequestFile(options.projectRoot, 'qa', options.rid);
211
- let qaInvoked = false;
212
- let qaState = 'missing';
213
- if (qaFile) {
214
- qaInvoked = true;
215
- qaState = extractState(qaFile.content);
216
- qaGates[0].passed = true;
217
- qaGates[0].detail = `found at ${qaFile.path}`;
218
- resolvedChangeId = qaFile.sessionId || resolvedChangeId;
219
- }
220
- else {
221
- violations.push('QA phase skipped: peaks-qa was never invoked for this request (no QA request artifact found)');
222
- nextActions.push('Invoke Skill(skill="peaks-qa") with the request-id for functional/performance/security testing');
223
- qaGates[0].detail = 'not found';
224
- }
225
- // Check QA evidence files. For the security/performance findings
226
- // gates, the canonical form post-slice-025 is the per-rid suffixed
227
- // path; the legacy non-suffixed form is still accepted during the
228
- // 1-minor-release back-compat window. The path resolver
229
- // (artifact-paths.ts) decides which form to consume; we pass the
230
- // resolved change-id and the rid.
231
- // v2.18.1 bug #5 fix: when no RD/QA artifact is on disk yet (resolvedChangeId
232
- // is empty), fall back to the current session id from the binding-store
233
- // instead of `rdEvidenceDir` (= the rid). The session axis
234
- // `.peaks/_runtime/<sessionId>/qa/...` is the canonical v2.17.0 home; the
235
- // legacy `_runtime/change/<sessionId>/qa/...` probe should only fire for
236
- // pre-v2.17.0 workspaces, not as a default for new requests. The slug in
237
- // the `sessionId` envelope field is preserved below for traceability.
238
- const changeIdForResolver = resolvedChangeId || getSessionIdCanonical(options.projectRoot) || rdEvidenceDir;
239
- const QA_EVIDENCE_FILE = {
240
- 'test-cases': `test-cases/${options.rid}.md`,
241
- 'test-report': `test-reports/${options.rid}.md`,
242
- 'security-findings': '',
243
- 'performance-findings': ''
244
- };
245
- for (const gate of qaGates.slice(1)) {
246
- if (gate.name === 'security-findings' || gate.name === 'performance-findings') {
247
- const resolver = gate.name === 'security-findings' ? resolveSecurityFindingsPath : resolvePerformanceFindingsPath;
248
- const resolved = resolver({ projectRoot: options.projectRoot, sessionId: changeIdForResolver, rid: options.rid });
249
- if (existsSync(resolved.path)) {
250
- anyEvidenceResolved = true;
251
- if (resolved.form === 'legacy')
252
- allResolvedPathsCanonical = false;
253
- gate.passed = true;
254
- gate.detail = resolved.path;
255
- if (resolved.form === 'legacy') {
256
- // 1-minor-release back-compat window. Surface the warning so
257
- // users know to migrate. Per PRD §Migration the form will be
258
- // rejected after the next minor bump.
259
- violations.push(`QA evidence accepted in legacy form (will be rejected after next minor release): ${resolved.path} — re-run peaks workflow plan refresh to migrate`);
260
- }
261
- }
262
- else {
263
- gate.detail = `missing: ${resolved.path}`;
264
- violations.push(`QA evidence missing: ${gate.description} (${resolved.path})`);
265
- nextActions.push(`Create ${resolved.path} (or use the legacy non-suffixed form during the 1-minor-release back-compat window)`);
266
- }
267
- continue;
268
- }
269
- const fileName = QA_EVIDENCE_FILE[gate.name];
270
- // v2.17.0 canonical: session axis — `<sessionId>/qa/<file>`.
271
- const canonicalQaPath = join(options.projectRoot, '.peaks', '_runtime', rdEvidenceDir, 'qa', fileName);
272
- const legacyMisplacedQaPath = join(options.projectRoot, '.peaks', rdEvidenceDir, 'qa', fileName);
273
- // Pre-v2.17.0 change-axis form: kept as back-compat fallback.
274
- const legacyChangeAxisQaPath = join(options.projectRoot, '.peaks', '_runtime', 'change', rdEvidenceDir, 'qa', fileName);
275
- let resolvedQaPath = null;
276
- let usedLegacyQa = false;
277
- for (const candidate of [canonicalQaPath, legacyMisplacedQaPath, legacyChangeAxisQaPath]) {
278
- if (existsSync(candidate)) {
279
- resolvedQaPath = candidate;
280
- usedLegacyQa = candidate !== canonicalQaPath;
281
- break;
282
- }
283
- }
284
- if (resolvedQaPath !== null) {
285
- anyEvidenceResolved = true;
286
- if (usedLegacyQa)
287
- allResolvedPathsCanonical = false;
288
- gate.passed = true;
289
- gate.detail = resolvedQaPath + (usedLegacyQa ? ' [DEPRECATION_LEGACY_PATH_USED]' : '');
290
- if (usedLegacyQa) {
291
- violations.push(`DEPRECATION_LEGACY_PATH_USED: ${resolvedQaPath} — move the file into .peaks/_runtime/${rdEvidenceDir}/qa/ (the canonical location) so subsequent runs resolve on the canonical path. The legacy \`peaks workspace migrate-change-scope\` helper was removed in v2.19.0; use \`peaks workspace migrate\` to relocate misplaced content.`);
292
- }
293
- }
294
- else {
295
- gate.detail = `missing: ${canonicalQaPath}`;
296
- violations.push(`QA evidence missing: ${gate.description} (${fileName})`);
297
- nextActions.push(`Create .peaks/_runtime/${rdEvidenceDir}/qa/${fileName}`);
298
- }
299
- }
300
- // Check if QA reached verdict-issued
301
- if (qaInvoked && !QA_COMPLETE_STATES.has(qaState)) {
302
- violations.push(`QA not complete: state is "${qaState}" — must reach "verdict-issued" (functional + performance + security checks done)`);
303
- nextActions.push(`Complete QA gates → peaks request transition ${options.rid} --role qa --state verdict-issued`);
304
- }
305
- // RD invoked without QA — check is moved to AFTER markIfSkipped
306
- // (slice 2026-06-13-peaks-workflow-skip) because the gate.status
307
- // values are only final after the post-process pass. We track the
308
- // decision with a placeholder here and resolve it below.
309
- const rdInvokedWithoutQaRaw = rdInvoked && !qaInvoked;
310
- // Slice 2026-06-13-peaks-workflow-skip: post-process. For any gate
311
- // the user marked as skipped, override the evaluation result. The
312
- // boolean `passed` is set to true so the gate counts as satisfied;
313
- // the new `status: 'skipped'` field signals the bypass to
314
- // downstream consumers. Violations and nextActions pushed for
315
- // skipped gates are filtered out (the user explicitly chose to
316
- // skip — the missing-evidence message is no longer actionable).
317
- for (const gate of [...rdGates, ...qaGates]) {
318
- if (skippedGateNames.has(gate.name)) {
319
- markIfSkipped(gate);
320
- }
321
- }
322
- if (skippedGateNames.size > 0) {
323
- const skippedViolations = new Set();
324
- for (const gate of [...rdGates, ...qaGates]) {
325
- if (gate.status === 'skipped') {
326
- skippedViolations.add(`RD evidence missing: ${gate.description}`);
327
- skippedViolations.add(`QA evidence missing: ${gate.description}`);
328
- }
329
- }
330
- for (let i = violations.length - 1; i >= 0; i -= 1) {
331
- const v = violations[i];
332
- for (const sv of skippedViolations) {
333
- if (v.startsWith(sv)) {
334
- violations.splice(i, 1);
335
- break;
336
- }
337
- }
338
- }
339
- }
340
- // Resolve the "RD invoked without QA" check now that markIfSkipped
341
- // has run. The check is suppressed when every QA gate is skipped
342
- // (slice 2026-06-13-peaks-workflow-skip: the user explicitly chose
343
- // to skip the QA phase).
344
- if (rdInvokedWithoutQaRaw) {
345
- const allQaSkipped = qaGates.every((g) => g.status === 'skipped');
346
- if (!allQaSkipped) {
347
- violations.push('CRITICAL: peaks-rd was invoked but peaks-qa was NOT — QA functional/performance/security testing is mandatory after all RD work');
348
- nextActions.push('MUST invoke Skill(skill="peaks-qa") before declaring workflow complete');
349
- }
350
- }
351
- // Slice 002 (v2.15.0) AC-3 — Gate H "feedback-promotion". Scans
352
- // `.peaks/memory/*.md` for `metadata.type === 'feedback'` entries
353
- // without a promotion marker (HTML comment or `.promotion.json`
354
- // sidecar). When any unpromoted feedback is found, the gate fails
355
- // and the pipeline does not complete until the user promotes via
356
- // `peaks feedback promote <memory-file> --layer <A|B|C>`.
357
- //
358
- // The scan is intentionally non-throwing — a missing or unreadable
359
- // memory dir is treated as "no feedback found, gate passes" so
360
- // empty projects / pre-feedback-epoch projects don't false-positive.
361
- const feedbackGates = [
362
- {
363
- name: 'feedback-promotion',
364
- description: 'Every feedback memory is promoted to at least one enforcement layer (sop / hooks / hard-floor)',
365
- passed: false,
366
- detail: ''
367
- }
368
- ];
369
- let unpromotedFeedbackCount = 0;
370
- try {
371
- const unpromoted = listUnpromotedFeedback({ projectRoot: options.projectRoot });
372
- unpromotedFeedbackCount = unpromoted.length;
373
- if (unpromoted.length === 0) {
374
- feedbackGates[0].passed = true;
375
- feedbackGates[0].detail = `0 unpromoted feedback memories in .peaks/memory/`;
376
- }
377
- else {
378
- feedbackGates[0].detail = `${unpromoted.length} unpromoted feedback memor${unpromoted.length === 1 ? 'y' : 'ies'}: ${unpromoted.map((u) => u.name).join(', ')}`;
379
- violations.push(`Gate H feedback-promotion FAILED: ${unpromoted.length} feedback memor${unpromoted.length === 1 ? 'y is' : 'ies are'} not yet promoted to an enforcement layer (${unpromoted.map((u) => u.name).join(', ')}). Run \`peaks feedback promote <memory-file> --layer <A|B|C>\` for each. See sops/feedback-promotion-sop.md.`);
380
- nextActions.push(`Run \`peaks feedback promote <memory-file> --layer <A|B|C>\` for each unpromoted feedback memory to satisfy Gate H.`);
381
- }
382
- }
383
- catch {
384
- // listUnpromotedFeedback swallows IO errors internally; the
385
- // outer catch is a belt-and-braces guard for unexpected
386
- // failures (e.g. permission denied). Treat as "no feedback" —
387
- // fail-open on gate infrastructure rather than blocking ship.
388
- feedbackGates[0].passed = true;
389
- feedbackGates[0].detail = 'feedback-promotion scan skipped (memory dir unreadable; treating as no feedback)';
390
- }
391
- const allFeedbackGatesPassed = feedbackGates.every((g) => g.passed);
392
- const allRdGatesPassed = rdGates.every((g) => g.passed);
393
- const allQaGatesPassed = qaGates.every((g) => g.passed);
394
- const complete = rdInvoked && qaInvoked && allRdGatesPassed && allQaGatesPassed && allFeedbackGatesPassed
395
- && RD_QA_HANDOFF_STATES.has(rdState) && QA_COMPLETE_STATES.has(qaState);
396
- // Slice 025 — derive the `acceptedForm` and `gateC` verdict. The form is
397
- // 'suffixed' if both the security + perf gates passed via the new
398
- // per-rid path; 'legacy' if either was consumed via the legacy fallback;
399
- // 'none' if neither passed.
400
- const secGate = qaGates.find((g) => g.name === 'security-findings');
401
- const perfGate = qaGates.find((g) => g.name === 'performance-findings');
402
- const secForm = secGate?.detail?.includes(`-${options.rid}.md`) ? 'suffixed' : 'legacy';
403
- const perfForm = perfGate?.detail?.includes(`-${options.rid}.md`) ? 'suffixed' : 'legacy';
404
- const acceptedForm = !secGate?.passed && !perfGate?.passed
405
- ? 'none'
406
- : (secForm === 'suffixed' && perfForm === 'suffixed')
407
- ? 'suffixed'
408
- : (secForm === 'legacy' || perfForm === 'legacy')
409
- ? 'legacy'
410
- : 'suffixed';
411
- const gateC = allQaGatesPassed ? 'pass' : 'fail';
412
- const gateH = allFeedbackGatesPassed ? 'pass' : 'fail';
413
- // Slice 2026-06-28-code-mode-bypass-fix (defect #3): `true` when
414
- // every gate resolved on the canonical path; `false` when at least
415
- // one fell back to a legacy form. QA / TXT surface the value so the
416
- // user knows the legacy content must be moved into the canonical
417
- // location (the legacy `peaks workspace migrate-change-scope` helper
418
- // was removed in v2.19.0; use `peaks workspace migrate` to relocate
419
- // misplaced content).
420
- //
421
- // Implementation note: use the in-loop flag `allResolvedPathsCanonical`
422
- // (correctly updated by both the inline evidence loop AND the
423
- // artifact-paths resolver for security/performance findings), not a
424
- // string-scan over `gate.detail`. The string-scan approach misses the
425
- // artifact-paths legacy branch (it does NOT inject the
426
- // `DEPRECATION_LEGACY_PATH_USED` suffix into gate.detail).
427
- //
428
- // If NO evidence file resolved (e.g. all gates missing), the field is
429
- // `true` — there is nothing non-canonical to worry about. If every
430
- // resolved gate was skipped via `peaks workflow skip`, the field is
431
- // `true` — the user opted out of the canonical/legacy decision.
432
- const allGatesSkipped = [...rdGates, ...qaGates].every((g) => g.status === 'skipped');
433
- const usedCanonicalPath = !anyEvidenceResolved || allGatesSkipped || allResolvedPathsCanonical;
434
- return {
435
- rid: options.rid,
436
- sessionId: resolvedChangeId,
437
- requestType,
438
- complete,
439
- rdPhase: { invoked: rdInvoked, state: rdState, gates: rdGates },
440
- qaPhase: { invoked: qaInvoked, state: qaState, gates: qaGates },
441
- feedbackPhase: { gates: feedbackGates },
442
- violations,
443
- nextActions,
444
- acceptedForm,
445
- gateC,
446
- gateH,
447
- usedCanonicalPath
448
- };
449
- }
@@ -1,29 +0,0 @@
1
- import { type ResultEnvelope } from '../../shared/result.js';
2
- export type PlanType = 'security' | 'perf';
3
- /** Back-compat env-var. When set to "1", fall back to legacy paths. */
4
- export declare const BACK_COMPAT_FLAG = "PEAKS_PLAN_LEGACY_FALLBACK";
5
- /** F-1 (slice 025 security): canonical session-id shape. */
6
- export declare const SESSION_ID_PATTERN: RegExp;
7
- export interface ReadPlanArgs {
8
- readonly type: PlanType;
9
- readonly project: string;
10
- readonly sessionId: string;
11
- }
12
- export interface ReadPlanData {
13
- readonly type: PlanType;
14
- readonly exists: boolean;
15
- readonly path: string;
16
- readonly hash: string | null;
17
- readonly refreshedAt: string | null;
18
- /** `'canonical' | 'legacy' | 'missing'` — surfaced to the slice workflow
19
- * so it can warn the user about a back-compat fallback. */
20
- readonly source: 'canonical' | 'legacy' | 'missing';
21
- }
22
- /**
23
- * Normalize a markdown body for hashing. Sections sorted, blank lines
24
- * collapsed, leading/trailing whitespace stripped. Hash is sha256[0:12].
25
- */
26
- export declare function normalizePlanBody(body: string): string;
27
- /** Compute the deterministic plan hash on a normalized body. */
28
- export declare function hashNormalizedBody(body: string): string;
29
- export declare function readPlan(args: ReadPlanArgs): ResultEnvelope<ReadPlanData>;
@@ -1,174 +0,0 @@
1
- /**
2
- * `peaks workflow plan read` — slice 025 (Security + Perf Plan/Result split).
3
- *
4
- * Returns the envelope `{ exists, path, hash, refreshedAt }` for the
5
- * session-scoped security-test-plan or perf-baseline plan. The hash is
6
- * computed on the **normalized** body (sections sorted, blank lines
7
- * collapsed) so it is independent of cosmetic re-ordering; mtime is
8
- * surfaced as ISO-8601.
9
- *
10
- * Back-compat: when the BACK_COMPAT_FLAG env var is "1" and the
11
- * legacy path (`.peaks/_runtime/<planFile>` at the project root) exists but
12
- * the canonical session path does not, the reader falls back to the
13
- * legacy path and reports `source: "legacy"`.
14
- */
15
- import { createHash } from 'node:crypto';
16
- import { existsSync, readFileSync, realpathSync, statSync } from 'node:fs';
17
- import { join, sep } from 'node:path';
18
- import { fail, ok } from '../../shared/result.js';
19
- import { getSessionDir } from '../session/getSessionDir.js';
20
- /** Back-compat env-var. When set to "1", fall back to legacy paths. */
21
- export const BACK_COMPAT_FLAG = 'PEAKS_PLAN_LEGACY_FALLBACK';
22
- /** F-1 (slice 025 security): canonical session-id shape. */
23
- export const SESSION_ID_PATTERN = /^\d{4}-\d{2}-\d{2}-[a-z][a-z0-9-]*[a-z0-9]$/;
24
- const PLAN_FILE = {
25
- security: 'security-test-plan.md',
26
- perf: 'perf-baseline.md'
27
- };
28
- /**
29
- * Normalize a markdown body for hashing. Sections sorted, blank lines
30
- * collapsed, leading/trailing whitespace stripped. Hash is sha256[0:12].
31
- */
32
- export function normalizePlanBody(body) {
33
- const lines = body
34
- .split(/\r?\n/)
35
- .map((line) => line.trim())
36
- .filter((line) => line.length > 0);
37
- return lines.sort().join('\n');
38
- }
39
- /** Compute the deterministic plan hash on a normalized body. */
40
- export function hashNormalizedBody(body) {
41
- const normalized = normalizePlanBody(body);
42
- return createHash('sha256').update(normalized, 'utf8').digest('hex').slice(0, 12);
43
- }
44
- function canonicalPath(args) {
45
- return join(getSessionDir(args.projectRoot, args.sessionId), 'qa', PLAN_FILE[args.type]);
46
- }
47
- function legacyPath(args) {
48
- return join(args.projectRoot, '.peaks', PLAN_FILE[args.type]);
49
- }
50
- /** Build the data envelope for a path that exists. */
51
- function buildData(args) {
52
- const stats = statSync(args.path);
53
- return {
54
- type: args.type,
55
- exists: true,
56
- path: args.path,
57
- hash: hashNormalizedBody(readFileSync(args.path, 'utf8')),
58
- refreshedAt: stats.mtime.toISOString(),
59
- source: args.source
60
- };
61
- }
62
- /**
63
- * F-2 (slice 025 security): resolve symlinks and confirm the real path
64
- * still lives under the expected base directory. A canonical path
65
- * may itself be a symlink (or a directory in the path chain may be),
66
- * which would let a malicious or accidental symlink escape the
67
- * `.peaks/_runtime/<sessionId>/` containment. We reject anything
68
- * whose real path falls outside the expected base.
69
- *
70
- * The caller passes the expected base:
71
- * - session dir for canonical reads (`.peaks/_runtime/<sid>/qa/...`)
72
- * - project root for legacy back-compat reads (`.peaks/_runtime/<planFile>`)
73
- */
74
- function assertContained(args) {
75
- let real;
76
- try {
77
- real = realpathSync(args.path);
78
- }
79
- catch {
80
- // If realpath fails (e.g. broken symlink), treat as escape — never
81
- // return "ok" without a verified real path.
82
- return {
83
- ok: false,
84
- code: 'SYMLINK_ESCAPE',
85
- message: `resolved path escapes base directory: cannot resolve ${args.path}`
86
- };
87
- }
88
- // Slice 2026-06-13-repair-pre-existing-test-failures: realpath the
89
- // expectedBase too. On macOS the OS exposes /tmp and
90
- // /var/folders/... as symlinks to /private/tmp and
91
- // /private/var/folders/.... `mkdtempSync` returns the unresolved
92
- // form; the file inside resolves through the symlink. Without
93
- // symmetric realpath on both sides, the prefix check incorrectly
94
- // rejects a file that is genuinely inside the base directory.
95
- // Falls back to the raw expectedBase when the base itself does
96
- // not yet exist (e.g. the canonical session dir before first
97
- // write), preserving the pre-fix behavior for that case.
98
- let expectedPrefix;
99
- try {
100
- expectedPrefix = join(realpathSync(args.expectedBase), sep);
101
- }
102
- catch {
103
- expectedPrefix = join(args.expectedBase, sep);
104
- }
105
- if (!real.startsWith(expectedPrefix)) {
106
- return {
107
- ok: false,
108
- code: 'SYMLINK_ESCAPE',
109
- message: `resolved path escapes base directory: ${real} is not under ${expectedPrefix}`
110
- };
111
- }
112
- return { ok: true, real };
113
- }
114
- export function readPlan(args) {
115
- // F-1 (slice 025 security): reject path-traversal payloads before any
116
- // filesystem call. The CLI also validates, but the service is the
117
- // authoritative gate — every caller (CLI, skill, integration test)
118
- // benefits from the same rejection shape.
119
- if (!SESSION_ID_PATTERN.test(args.sessionId)) {
120
- return fail('workflow.plan.read', 'INVALID_SESSION_ID', 'session id must match YYYY-MM-DD-slug pattern', {
121
- type: args.type,
122
- exists: false,
123
- path: '',
124
- hash: null,
125
- refreshedAt: null,
126
- source: 'missing'
127
- });
128
- }
129
- const canonical = canonicalPath({ projectRoot: args.project, sessionId: args.sessionId, type: args.type });
130
- if (existsSync(canonical)) {
131
- const guard = assertContained({
132
- expectedBase: getSessionDir(args.project, args.sessionId),
133
- path: canonical
134
- });
135
- if (!guard.ok) {
136
- return fail('workflow.plan.read', guard.code, guard.message, {
137
- type: args.type,
138
- exists: false,
139
- path: canonical,
140
- hash: null,
141
- refreshedAt: null,
142
- source: 'missing'
143
- });
144
- }
145
- return ok('workflow.plan.read', buildData({ type: args.type, path: canonical, source: 'canonical' }));
146
- }
147
- const legacy = legacyPath({ projectRoot: args.project, type: args.type });
148
- const backCompatEnabled = process.env[BACK_COMPAT_FLAG] === '1';
149
- if (backCompatEnabled && existsSync(legacy)) {
150
- const guard = assertContained({
151
- expectedBase: args.project,
152
- path: legacy
153
- });
154
- if (!guard.ok) {
155
- return fail('workflow.plan.read', guard.code, guard.message, {
156
- type: args.type,
157
- exists: false,
158
- path: legacy,
159
- hash: null,
160
- refreshedAt: null,
161
- source: 'missing'
162
- });
163
- }
164
- return ok('workflow.plan.read', buildData({ type: args.type, path: legacy, source: 'legacy' }));
165
- }
166
- return ok('workflow.plan.read', {
167
- type: args.type,
168
- exists: false,
169
- path: canonical,
170
- hash: null,
171
- refreshedAt: null,
172
- source: 'missing'
173
- });
174
- }