@cleocode/core 2026.3.73 → 2026.3.76

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 (1093) hide show
  1. package/README.md +1 -1
  2. package/dist/cant/approval.d.ts +110 -0
  3. package/dist/cant/approval.d.ts.map +1 -0
  4. package/dist/cant/context-builder.d.ts +79 -0
  5. package/dist/cant/context-builder.d.ts.map +1 -0
  6. package/dist/cant/discretion.d.ts +95 -0
  7. package/dist/cant/discretion.d.ts.map +1 -0
  8. package/dist/cant/index.d.ts +25 -0
  9. package/dist/cant/index.d.ts.map +1 -0
  10. package/dist/cant/parallel-runner.d.ts +38 -0
  11. package/dist/cant/parallel-runner.d.ts.map +1 -0
  12. package/dist/cant/types.d.ts +127 -0
  13. package/dist/cant/types.d.ts.map +1 -0
  14. package/dist/cant/workflow-executor.d.ts +105 -0
  15. package/dist/cant/workflow-executor.d.ts.map +1 -0
  16. package/dist/cleo.d.ts.map +1 -1
  17. package/dist/conduit/conduit-client.d.ts +26 -0
  18. package/dist/conduit/conduit-client.d.ts.map +1 -0
  19. package/dist/conduit/factory.d.ts +13 -0
  20. package/dist/conduit/factory.d.ts.map +1 -0
  21. package/dist/conduit/http-transport.d.ts +32 -0
  22. package/dist/conduit/http-transport.d.ts.map +1 -0
  23. package/dist/conduit/index.d.ts +12 -0
  24. package/dist/conduit/index.d.ts.map +1 -0
  25. package/dist/crypto/credentials.d.ts +40 -0
  26. package/dist/crypto/credentials.d.ts.map +1 -0
  27. package/dist/engine-result.d.ts +1 -1
  28. package/dist/engine-result.d.ts.map +1 -1
  29. package/dist/error-catalog.d.ts +1 -1
  30. package/dist/error-catalog.d.ts.map +1 -1
  31. package/dist/error-registry.d.ts +1 -1
  32. package/dist/error-registry.d.ts.map +1 -1
  33. package/dist/errors.d.ts +1 -1
  34. package/dist/errors.d.ts.map +1 -1
  35. package/dist/hooks/handlers/agent-hooks.d.ts.map +1 -1
  36. package/dist/hooks/handlers/context-hooks.d.ts.map +1 -1
  37. package/dist/hooks/handlers/error-hooks.d.ts +14 -5
  38. package/dist/hooks/handlers/error-hooks.d.ts.map +1 -1
  39. package/dist/hooks/handlers/file-hooks.d.ts.map +1 -1
  40. package/dist/hooks/handlers/handler-helpers.d.ts +41 -0
  41. package/dist/hooks/handlers/handler-helpers.d.ts.map +1 -0
  42. package/dist/hooks/handlers/mcp-hooks.d.ts.map +1 -1
  43. package/dist/hooks/handlers/session-hooks.d.ts.map +1 -1
  44. package/dist/hooks/handlers/task-hooks.d.ts.map +1 -1
  45. package/dist/hooks/handlers/work-capture-hooks.d.ts.map +1 -1
  46. package/dist/index.d.ts +3 -1
  47. package/dist/index.d.ts.map +1 -1
  48. package/dist/index.js +2766 -939
  49. package/dist/index.js.map +4 -4
  50. package/dist/init.d.ts.map +1 -1
  51. package/dist/internal.d.ts +7 -0
  52. package/dist/internal.d.ts.map +1 -1
  53. package/dist/memory/brain-retrieval.d.ts +3 -0
  54. package/dist/memory/brain-retrieval.d.ts.map +1 -1
  55. package/dist/mvi-helpers.d.ts +52 -0
  56. package/dist/mvi-helpers.d.ts.map +1 -0
  57. package/dist/nexus/index.d.ts +2 -0
  58. package/dist/nexus/index.d.ts.map +1 -1
  59. package/dist/nexus/workspace.d.ts +128 -0
  60. package/dist/nexus/workspace.d.ts.map +1 -0
  61. package/dist/output.d.ts +2 -2
  62. package/dist/output.d.ts.map +1 -1
  63. package/dist/pagination.d.ts +1 -1
  64. package/dist/pagination.d.ts.map +1 -1
  65. package/dist/sessions/find.d.ts +3 -0
  66. package/dist/sessions/find.d.ts.map +1 -1
  67. package/dist/sessions/index.d.ts.map +1 -1
  68. package/dist/store/agent-registry-accessor.d.ts +454 -0
  69. package/dist/store/agent-registry-accessor.d.ts.map +1 -0
  70. package/dist/store/converters.d.ts.map +1 -1
  71. package/dist/store/db-helpers.d.ts.map +1 -1
  72. package/dist/store/safety-data-accessor.d.ts +7 -0
  73. package/dist/store/safety-data-accessor.d.ts.map +1 -1
  74. package/dist/store/signaldock-sqlite.d.ts +48 -0
  75. package/dist/store/signaldock-sqlite.d.ts.map +1 -0
  76. package/dist/store/sqlite-data-accessor.d.ts.map +1 -1
  77. package/dist/store/sqlite.d.ts.map +1 -1
  78. package/dist/store/task-store.d.ts.map +1 -1
  79. package/dist/store/tasks-schema.d.ts +240 -0
  80. package/dist/store/tasks-schema.d.ts.map +1 -1
  81. package/dist/store/validation-schemas.d.ts +32 -0
  82. package/dist/store/validation-schemas.d.ts.map +1 -1
  83. package/dist/system/health.d.ts.map +1 -1
  84. package/dist/task-work/index.d.ts.map +1 -1
  85. package/dist/tasks/find.d.ts +3 -0
  86. package/dist/tasks/find.d.ts.map +1 -1
  87. package/dist/tasks/list.d.ts +5 -2
  88. package/dist/tasks/list.d.ts.map +1 -1
  89. package/dist/tasks/show.d.ts +3 -0
  90. package/dist/tasks/show.d.ts.map +1 -1
  91. package/dist/upgrade.d.ts.map +1 -1
  92. package/migrations/drizzle-tasks/20260324000000_assignee-column/migration.sql +6 -0
  93. package/migrations/drizzle-tasks/20260324000000_assignee-column/snapshot.json +9 -0
  94. package/migrations/drizzle-tasks/20260327000000_agent-credentials/migration.sql +23 -0
  95. package/package.json +7 -7
  96. package/src/__tests__/cli-parity.test.js +11 -1
  97. package/src/__tests__/cli-parity.test.js.map +1 -1
  98. package/src/__tests__/cli-parity.test.ts +17 -1
  99. package/src/__tests__/human-output.test.js +11 -1
  100. package/src/__tests__/human-output.test.js.map +1 -1
  101. package/src/__tests__/human-output.test.ts +18 -1
  102. package/src/__tests__/injection-chain.test.js +3 -2
  103. package/src/__tests__/injection-chain.test.js.map +1 -1
  104. package/src/__tests__/injection-mvi-tiers.test.d.ts +2 -2
  105. package/src/__tests__/injection-mvi-tiers.test.js +15 -15
  106. package/src/__tests__/injection-mvi-tiers.test.js.map +1 -1
  107. package/src/__tests__/lafs-conformance.test.d.ts +1 -1
  108. package/src/__tests__/lafs-conformance.test.js +2 -2
  109. package/src/__tests__/sharing.test.js +19 -0
  110. package/src/__tests__/sharing.test.js.map +1 -1
  111. package/src/agents/__tests__/agent-registry.test.d.ts +12 -0
  112. package/src/agents/__tests__/agent-registry.test.d.ts.map +1 -0
  113. package/src/agents/__tests__/agent-registry.test.js +262 -0
  114. package/src/agents/__tests__/agent-registry.test.js.map +1 -0
  115. package/src/agents/__tests__/execution-learning.test.d.ts +14 -0
  116. package/src/agents/__tests__/execution-learning.test.d.ts.map +1 -0
  117. package/src/agents/__tests__/execution-learning.test.js +533 -0
  118. package/src/agents/__tests__/execution-learning.test.js.map +1 -0
  119. package/src/agents/__tests__/health-monitor.test.d.ts +10 -0
  120. package/src/agents/__tests__/health-monitor.test.d.ts.map +1 -0
  121. package/src/agents/__tests__/health-monitor.test.js +259 -0
  122. package/src/agents/__tests__/health-monitor.test.js.map +1 -0
  123. package/src/agents/__tests__/registry.test.js +27 -2
  124. package/src/agents/__tests__/registry.test.js.map +1 -1
  125. package/src/cant/__tests__/cant-agent-parse.test.ts +94 -0
  126. package/src/cant/approval.ts +218 -0
  127. package/src/cant/context-builder.ts +135 -0
  128. package/src/cant/discretion.ts +149 -0
  129. package/src/cant/index.ts +58 -0
  130. package/src/cant/parallel-runner.ts +205 -0
  131. package/src/cant/types.ts +158 -0
  132. package/src/cant/workflow-executor.ts +618 -0
  133. package/src/cleo.ts +14 -0
  134. package/src/conduit/conduit-client.ts +114 -0
  135. package/src/conduit/factory.ts +45 -0
  136. package/src/conduit/http-transport.ts +140 -0
  137. package/src/conduit/index.ts +12 -0
  138. package/src/crypto/credentials.ts +166 -0
  139. package/src/engine-result.ts +1 -1
  140. package/src/error-catalog.ts +1 -1
  141. package/src/error-registry.ts +1 -1
  142. package/src/errors.ts +1 -1
  143. package/src/hooks/handlers/__tests__/hook-automation-e2e.test.d.ts +13 -0
  144. package/src/hooks/handlers/__tests__/hook-automation-e2e.test.d.ts.map +1 -0
  145. package/src/hooks/handlers/__tests__/hook-automation-e2e.test.js +501 -0
  146. package/src/hooks/handlers/__tests__/hook-automation-e2e.test.js.map +1 -0
  147. package/src/hooks/handlers/agent-hooks.ts +1 -30
  148. package/src/hooks/handlers/context-hooks.ts +1 -30
  149. package/src/hooks/handlers/error-hooks.ts +14 -5
  150. package/src/hooks/handlers/file-hooks.ts +1 -6
  151. package/src/hooks/handlers/handler-helpers.ts +62 -0
  152. package/src/hooks/handlers/mcp-hooks.ts +2 -14
  153. package/src/hooks/handlers/session-hooks.ts +1 -6
  154. package/src/hooks/handlers/task-hooks.ts +1 -6
  155. package/src/hooks/handlers/work-capture-hooks.ts +1 -10
  156. package/src/index.ts +11 -1
  157. package/src/init.ts +12 -0
  158. package/src/intelligence/__tests__/adaptive-validation.test.d.ts +11 -0
  159. package/src/intelligence/__tests__/adaptive-validation.test.d.ts.map +1 -0
  160. package/src/intelligence/__tests__/adaptive-validation.test.js +517 -0
  161. package/src/intelligence/__tests__/adaptive-validation.test.js.map +1 -0
  162. package/src/intelligence/__tests__/impact.test.d.ts +1 -0
  163. package/src/intelligence/__tests__/impact.test.d.ts.map +1 -1
  164. package/src/intelligence/__tests__/impact.test.js +132 -1
  165. package/src/intelligence/__tests__/impact.test.js.map +1 -1
  166. package/src/internal.ts +17 -0
  167. package/src/lib/__tests__/retry.test.d.ts +7 -0
  168. package/src/lib/__tests__/retry.test.d.ts.map +1 -0
  169. package/src/lib/__tests__/retry.test.js +225 -0
  170. package/src/lib/__tests__/retry.test.js.map +1 -0
  171. package/src/lifecycle/__tests__/chain-store.test.js +6 -0
  172. package/src/lifecycle/__tests__/chain-store.test.js.map +1 -1
  173. package/src/lifecycle/__tests__/tessera-engine.test.js +52 -0
  174. package/src/lifecycle/__tests__/tessera-engine.test.js.map +1 -1
  175. package/src/memory/__tests__/brain-automation.test.d.ts +11 -0
  176. package/src/memory/__tests__/brain-automation.test.d.ts.map +1 -0
  177. package/src/memory/__tests__/brain-automation.test.js +730 -0
  178. package/src/memory/__tests__/brain-automation.test.js.map +1 -0
  179. package/src/memory/brain-retrieval.ts +9 -0
  180. package/src/mvi-helpers.ts +81 -0
  181. package/src/nexus/index.ts +15 -0
  182. package/src/nexus/workspace.ts +520 -0
  183. package/src/output.ts +43 -10
  184. package/src/pagination.ts +1 -1
  185. package/src/sessions/__tests__/session-edge-cases.test.js +20 -1
  186. package/src/sessions/__tests__/session-edge-cases.test.js.map +1 -1
  187. package/src/sessions/__tests__/session-find.test.js +1 -1
  188. package/src/sessions/__tests__/session-find.test.js.map +1 -1
  189. package/src/sessions/__tests__/session-find.test.ts +1 -1
  190. package/src/sessions/find.ts +6 -1
  191. package/src/sessions/index.ts +9 -0
  192. package/src/store/__tests__/migration-safety.test.js +3 -0
  193. package/src/store/__tests__/migration-safety.test.js.map +1 -1
  194. package/src/store/__tests__/session-store.test.js +128 -1
  195. package/src/store/__tests__/session-store.test.js.map +1 -1
  196. package/src/store/__tests__/task-store.test.js +18 -1
  197. package/src/store/__tests__/task-store.test.js.map +1 -1
  198. package/src/store/__tests__/test-db-helper.d.ts.map +1 -1
  199. package/src/store/__tests__/test-db-helper.js +12 -0
  200. package/src/store/__tests__/test-db-helper.js.map +1 -1
  201. package/src/store/agent-registry-accessor.ts +199 -0
  202. package/src/store/converters.ts +2 -0
  203. package/src/store/db-helpers.ts +1 -0
  204. package/src/store/safety-data-accessor.ts +23 -0
  205. package/src/store/signaldock-sqlite.ts +227 -0
  206. package/src/store/sqlite-data-accessor.ts +69 -0
  207. package/src/store/sqlite.ts +4 -1
  208. package/src/store/task-store.ts +1 -0
  209. package/src/store/tasks-schema.ts +42 -0
  210. package/src/system/health.ts +33 -0
  211. package/src/task-work/index.ts +5 -0
  212. package/src/tasks/__tests__/add.test.js +19 -1
  213. package/src/tasks/__tests__/add.test.js.map +1 -1
  214. package/src/tasks/__tests__/assignee.test.d.ts +14 -0
  215. package/src/tasks/__tests__/assignee.test.d.ts.map +1 -0
  216. package/src/tasks/__tests__/assignee.test.js +125 -0
  217. package/src/tasks/__tests__/assignee.test.js.map +1 -0
  218. package/src/tasks/__tests__/assignee.test.ts +162 -0
  219. package/src/tasks/__tests__/complete-unblocks.test.js +13 -1
  220. package/src/tasks/__tests__/complete-unblocks.test.js.map +1 -1
  221. package/src/tasks/__tests__/complete.test.js +28 -7
  222. package/src/tasks/__tests__/complete.test.js.map +1 -1
  223. package/src/tasks/__tests__/epic-enforcement.test.d.ts +15 -0
  224. package/src/tasks/__tests__/epic-enforcement.test.d.ts.map +1 -0
  225. package/src/tasks/__tests__/epic-enforcement.test.js +669 -0
  226. package/src/tasks/__tests__/epic-enforcement.test.js.map +1 -0
  227. package/src/tasks/__tests__/hierarchy-policy.test.js +5 -0
  228. package/src/tasks/__tests__/hierarchy-policy.test.js.map +1 -1
  229. package/src/tasks/__tests__/minimal-test.test.d.ts +2 -0
  230. package/src/tasks/__tests__/minimal-test.test.d.ts.map +1 -0
  231. package/src/tasks/__tests__/minimal-test.test.js +25 -0
  232. package/src/tasks/__tests__/minimal-test.test.js.map +1 -0
  233. package/src/tasks/__tests__/pipeline-stage.test.d.ts +14 -0
  234. package/src/tasks/__tests__/pipeline-stage.test.d.ts.map +1 -0
  235. package/src/tasks/__tests__/pipeline-stage.test.js +277 -0
  236. package/src/tasks/__tests__/pipeline-stage.test.js.map +1 -0
  237. package/src/tasks/__tests__/update.test.js +43 -6
  238. package/src/tasks/__tests__/update.test.js.map +1 -1
  239. package/src/tasks/find.ts +11 -1
  240. package/src/tasks/list.ts +14 -3
  241. package/src/tasks/show.ts +6 -0
  242. package/src/upgrade.ts +16 -0
  243. package/dist/adapters/adapter-registry.js +0 -64
  244. package/dist/adapters/adapter-registry.js.map +0 -1
  245. package/dist/adapters/discovery.js +0 -83
  246. package/dist/adapters/discovery.js.map +0 -1
  247. package/dist/adapters/index.js +0 -9
  248. package/dist/adapters/index.js.map +0 -1
  249. package/dist/adapters/manager.js +0 -260
  250. package/dist/adapters/manager.js.map +0 -1
  251. package/dist/admin/export-tasks.js +0 -171
  252. package/dist/admin/export-tasks.js.map +0 -1
  253. package/dist/admin/export.js +0 -103
  254. package/dist/admin/export.js.map +0 -1
  255. package/dist/admin/help.js +0 -106
  256. package/dist/admin/help.js.map +0 -1
  257. package/dist/admin/import-tasks.js +0 -182
  258. package/dist/admin/import-tasks.js.map +0 -1
  259. package/dist/admin/import.js +0 -129
  260. package/dist/admin/import.js.map +0 -1
  261. package/dist/admin/index.js +0 -13
  262. package/dist/admin/index.js.map +0 -1
  263. package/dist/adrs/find.js +0 -134
  264. package/dist/adrs/find.js.map +0 -1
  265. package/dist/adrs/index.js +0 -15
  266. package/dist/adrs/index.js.map +0 -1
  267. package/dist/adrs/link-pipeline.js +0 -160
  268. package/dist/adrs/link-pipeline.js.map +0 -1
  269. package/dist/adrs/list.js +0 -43
  270. package/dist/adrs/list.js.map +0 -1
  271. package/dist/adrs/parse.js +0 -51
  272. package/dist/adrs/parse.js.map +0 -1
  273. package/dist/adrs/show.js +0 -22
  274. package/dist/adrs/show.js.map +0 -1
  275. package/dist/adrs/sync.js +0 -188
  276. package/dist/adrs/sync.js.map +0 -1
  277. package/dist/adrs/types.js +0 -9
  278. package/dist/adrs/types.js.map +0 -1
  279. package/dist/adrs/validate.js +0 -57
  280. package/dist/adrs/validate.js.map +0 -1
  281. package/dist/agents/agent-registry.js +0 -288
  282. package/dist/agents/agent-registry.js.map +0 -1
  283. package/dist/agents/agent-schema.js +0 -85
  284. package/dist/agents/agent-schema.js.map +0 -1
  285. package/dist/agents/capacity.js +0 -116
  286. package/dist/agents/capacity.js.map +0 -1
  287. package/dist/agents/execution-learning.js +0 -474
  288. package/dist/agents/execution-learning.js.map +0 -1
  289. package/dist/agents/health-monitor.js +0 -217
  290. package/dist/agents/health-monitor.js.map +0 -1
  291. package/dist/agents/index.js +0 -29
  292. package/dist/agents/index.js.map +0 -1
  293. package/dist/agents/registry.js +0 -314
  294. package/dist/agents/registry.js.map +0 -1
  295. package/dist/agents/retry.js +0 -210
  296. package/dist/agents/retry.js.map +0 -1
  297. package/dist/audit-prune.js +0 -94
  298. package/dist/audit-prune.js.map +0 -1
  299. package/dist/audit.js +0 -68
  300. package/dist/audit.js.map +0 -1
  301. package/dist/backfill/index.js +0 -229
  302. package/dist/backfill/index.js.map +0 -1
  303. package/dist/bootstrap.js +0 -367
  304. package/dist/bootstrap.js.map +0 -1
  305. package/dist/caamp/adapter.js +0 -434
  306. package/dist/caamp/adapter.js.map +0 -1
  307. package/dist/caamp/capability-check.js +0 -38
  308. package/dist/caamp/capability-check.js.map +0 -1
  309. package/dist/caamp/index.js +0 -23
  310. package/dist/caamp/index.js.map +0 -1
  311. package/dist/caamp-init.js +0 -16
  312. package/dist/caamp-init.js.map +0 -1
  313. package/dist/cleo.js +0 -302
  314. package/dist/cleo.js.map +0 -1
  315. package/dist/codebase-map/analyzers/architecture.js +0 -130
  316. package/dist/codebase-map/analyzers/architecture.js.map +0 -1
  317. package/dist/codebase-map/analyzers/concerns.js +0 -122
  318. package/dist/codebase-map/analyzers/concerns.js.map +0 -1
  319. package/dist/codebase-map/analyzers/conventions.js +0 -149
  320. package/dist/codebase-map/analyzers/conventions.js.map +0 -1
  321. package/dist/codebase-map/analyzers/integrations.js +0 -108
  322. package/dist/codebase-map/analyzers/integrations.js.map +0 -1
  323. package/dist/codebase-map/analyzers/stack.js +0 -117
  324. package/dist/codebase-map/analyzers/stack.js.map +0 -1
  325. package/dist/codebase-map/analyzers/structure.js +0 -137
  326. package/dist/codebase-map/analyzers/structure.js.map +0 -1
  327. package/dist/codebase-map/analyzers/testing.js +0 -118
  328. package/dist/codebase-map/analyzers/testing.js.map +0 -1
  329. package/dist/codebase-map/index.js +0 -57
  330. package/dist/codebase-map/index.js.map +0 -1
  331. package/dist/codebase-map/store.js +0 -122
  332. package/dist/codebase-map/store.js.map +0 -1
  333. package/dist/codebase-map/summary.js +0 -152
  334. package/dist/codebase-map/summary.js.map +0 -1
  335. package/dist/compliance/index.js +0 -288
  336. package/dist/compliance/index.js.map +0 -1
  337. package/dist/compliance/protocol-enforcement.js +0 -332
  338. package/dist/compliance/protocol-enforcement.js.map +0 -1
  339. package/dist/compliance/protocol-rules.js +0 -786
  340. package/dist/compliance/protocol-rules.js.map +0 -1
  341. package/dist/compliance/protocol-types.js +0 -80
  342. package/dist/compliance/protocol-types.js.map +0 -1
  343. package/dist/compliance/store.js +0 -53
  344. package/dist/compliance/store.js.map +0 -1
  345. package/dist/config/build-config.js +0 -29
  346. package/dist/config/build-config.js.map +0 -1
  347. package/dist/config.js +0 -400
  348. package/dist/config.js.map +0 -1
  349. package/dist/constants.js +0 -18
  350. package/dist/constants.js.map +0 -1
  351. package/dist/context/index.js +0 -137
  352. package/dist/context/index.js.map +0 -1
  353. package/dist/engine-result.js +0 -12
  354. package/dist/engine-result.js.map +0 -1
  355. package/dist/error-catalog.js +0 -404
  356. package/dist/error-catalog.js.map +0 -1
  357. package/dist/error-registry.js +0 -393
  358. package/dist/error-registry.js.map +0 -1
  359. package/dist/errors.js +0 -167
  360. package/dist/errors.js.map +0 -1
  361. package/dist/hooks/handlers/error-hooks.js +0 -43
  362. package/dist/hooks/handlers/error-hooks.js.map +0 -1
  363. package/dist/hooks/handlers/file-hooks.js +0 -80
  364. package/dist/hooks/handlers/file-hooks.js.map +0 -1
  365. package/dist/hooks/handlers/index.js +0 -19
  366. package/dist/hooks/handlers/index.js.map +0 -1
  367. package/dist/hooks/handlers/mcp-hooks.js +0 -80
  368. package/dist/hooks/handlers/mcp-hooks.js.map +0 -1
  369. package/dist/hooks/handlers/memory-bridge-refresh.js +0 -42
  370. package/dist/hooks/handlers/memory-bridge-refresh.js.map +0 -1
  371. package/dist/hooks/handlers/session-hooks.js +0 -109
  372. package/dist/hooks/handlers/session-hooks.js.map +0 -1
  373. package/dist/hooks/handlers/task-hooks.js +0 -70
  374. package/dist/hooks/handlers/task-hooks.js.map +0 -1
  375. package/dist/hooks/index.js +0 -13
  376. package/dist/hooks/index.js.map +0 -1
  377. package/dist/hooks/payload-schemas.js +0 -163
  378. package/dist/hooks/payload-schemas.js.map +0 -1
  379. package/dist/hooks/provider-hooks.js +0 -34
  380. package/dist/hooks/provider-hooks.js.map +0 -1
  381. package/dist/hooks/registry.js +0 -176
  382. package/dist/hooks/registry.js.map +0 -1
  383. package/dist/hooks/types.js +0 -62
  384. package/dist/hooks/types.js.map +0 -1
  385. package/dist/hooks.js +0 -136
  386. package/dist/hooks.js.map +0 -1
  387. package/dist/init.js +0 -711
  388. package/dist/init.js.map +0 -1
  389. package/dist/inject/index.js +0 -82
  390. package/dist/inject/index.js.map +0 -1
  391. package/dist/injection.js +0 -343
  392. package/dist/injection.js.map +0 -1
  393. package/dist/intelligence/adaptive-validation.js +0 -497
  394. package/dist/intelligence/adaptive-validation.js.map +0 -1
  395. package/dist/intelligence/impact.js +0 -675
  396. package/dist/intelligence/impact.js.map +0 -1
  397. package/dist/intelligence/index.js +0 -22
  398. package/dist/intelligence/index.js.map +0 -1
  399. package/dist/intelligence/patterns.js +0 -492
  400. package/dist/intelligence/patterns.js.map +0 -1
  401. package/dist/intelligence/prediction.js +0 -499
  402. package/dist/intelligence/prediction.js.map +0 -1
  403. package/dist/intelligence/types.js +0 -13
  404. package/dist/intelligence/types.js.map +0 -1
  405. package/dist/internal.js +0 -276
  406. package/dist/internal.js.map +0 -1
  407. package/dist/issue/create.js +0 -121
  408. package/dist/issue/create.js.map +0 -1
  409. package/dist/issue/diagnostics.js +0 -59
  410. package/dist/issue/diagnostics.js.map +0 -1
  411. package/dist/issue/index.js +0 -10
  412. package/dist/issue/index.js.map +0 -1
  413. package/dist/issue/template-parser.js +0 -267
  414. package/dist/issue/template-parser.js.map +0 -1
  415. package/dist/json-schema-validator.js +0 -76
  416. package/dist/json-schema-validator.js.map +0 -1
  417. package/dist/lib/index.js +0 -10
  418. package/dist/lib/index.js.map +0 -1
  419. package/dist/lib/retry.js +0 -152
  420. package/dist/lib/retry.js.map +0 -1
  421. package/dist/lifecycle/chain-composition.js +0 -152
  422. package/dist/lifecycle/chain-composition.js.map +0 -1
  423. package/dist/lifecycle/chain-store.js +0 -246
  424. package/dist/lifecycle/chain-store.js.map +0 -1
  425. package/dist/lifecycle/consolidate-rcasd.js +0 -352
  426. package/dist/lifecycle/consolidate-rcasd.js.map +0 -1
  427. package/dist/lifecycle/default-chain.js +0 -167
  428. package/dist/lifecycle/default-chain.js.map +0 -1
  429. package/dist/lifecycle/evidence.js +0 -180
  430. package/dist/lifecycle/evidence.js.map +0 -1
  431. package/dist/lifecycle/frontmatter.js +0 -363
  432. package/dist/lifecycle/frontmatter.js.map +0 -1
  433. package/dist/lifecycle/index.js +0 -753
  434. package/dist/lifecycle/index.js.map +0 -1
  435. package/dist/lifecycle/pipeline.js +0 -656
  436. package/dist/lifecycle/pipeline.js.map +0 -1
  437. package/dist/lifecycle/rcasd-index.js +0 -326
  438. package/dist/lifecycle/rcasd-index.js.map +0 -1
  439. package/dist/lifecycle/rcasd-paths.js +0 -220
  440. package/dist/lifecycle/rcasd-paths.js.map +0 -1
  441. package/dist/lifecycle/resume.js +0 -864
  442. package/dist/lifecycle/resume.js.map +0 -1
  443. package/dist/lifecycle/stage-artifacts.js +0 -94
  444. package/dist/lifecycle/stage-artifacts.js.map +0 -1
  445. package/dist/lifecycle/stages.js +0 -534
  446. package/dist/lifecycle/stages.js.map +0 -1
  447. package/dist/lifecycle/state-machine.js +0 -516
  448. package/dist/lifecycle/state-machine.js.map +0 -1
  449. package/dist/lifecycle/tessera-engine.js +0 -249
  450. package/dist/lifecycle/tessera-engine.js.map +0 -1
  451. package/dist/logger.js +0 -140
  452. package/dist/logger.js.map +0 -1
  453. package/dist/mcp/index.js +0 -146
  454. package/dist/mcp/index.js.map +0 -1
  455. package/dist/memory/auto-extract.js +0 -177
  456. package/dist/memory/auto-extract.js.map +0 -1
  457. package/dist/memory/brain-embedding.js +0 -66
  458. package/dist/memory/brain-embedding.js.map +0 -1
  459. package/dist/memory/brain-lifecycle.js +0 -298
  460. package/dist/memory/brain-lifecycle.js.map +0 -1
  461. package/dist/memory/brain-links.js +0 -148
  462. package/dist/memory/brain-links.js.map +0 -1
  463. package/dist/memory/brain-maintenance.js +0 -98
  464. package/dist/memory/brain-maintenance.js.map +0 -1
  465. package/dist/memory/brain-migration.js +0 -149
  466. package/dist/memory/brain-migration.js.map +0 -1
  467. package/dist/memory/brain-reasoning.js +0 -215
  468. package/dist/memory/brain-reasoning.js.map +0 -1
  469. package/dist/memory/brain-retrieval.js +0 -521
  470. package/dist/memory/brain-retrieval.js.map +0 -1
  471. package/dist/memory/brain-row-types.js +0 -10
  472. package/dist/memory/brain-row-types.js.map +0 -1
  473. package/dist/memory/brain-search.js +0 -519
  474. package/dist/memory/brain-search.js.map +0 -1
  475. package/dist/memory/brain-similarity.js +0 -145
  476. package/dist/memory/brain-similarity.js.map +0 -1
  477. package/dist/memory/claude-mem-migration.js +0 -277
  478. package/dist/memory/claude-mem-migration.js.map +0 -1
  479. package/dist/memory/decisions.js +0 -148
  480. package/dist/memory/decisions.js.map +0 -1
  481. package/dist/memory/embedding-local.js +0 -97
  482. package/dist/memory/embedding-local.js.map +0 -1
  483. package/dist/memory/embedding-queue.js +0 -271
  484. package/dist/memory/embedding-queue.js.map +0 -1
  485. package/dist/memory/embedding-worker.js +0 -58
  486. package/dist/memory/embedding-worker.js.map +0 -1
  487. package/dist/memory/engine-compat.js +0 -1030
  488. package/dist/memory/engine-compat.js.map +0 -1
  489. package/dist/memory/index.js +0 -773
  490. package/dist/memory/index.js.map +0 -1
  491. package/dist/memory/learnings.js +0 -121
  492. package/dist/memory/learnings.js.map +0 -1
  493. package/dist/memory/memory-bridge.js +0 -370
  494. package/dist/memory/memory-bridge.js.map +0 -1
  495. package/dist/memory/patterns.js +0 -122
  496. package/dist/memory/patterns.js.map +0 -1
  497. package/dist/memory/pipeline-manifest-sqlite.js +0 -975
  498. package/dist/memory/pipeline-manifest-sqlite.js.map +0 -1
  499. package/dist/memory/session-memory.js +0 -331
  500. package/dist/memory/session-memory.js.map +0 -1
  501. package/dist/metrics/ab-test.js +0 -260
  502. package/dist/metrics/ab-test.js.map +0 -1
  503. package/dist/metrics/aggregation.js +0 -363
  504. package/dist/metrics/aggregation.js.map +0 -1
  505. package/dist/metrics/common.js +0 -64
  506. package/dist/metrics/common.js.map +0 -1
  507. package/dist/metrics/enums.js +0 -78
  508. package/dist/metrics/enums.js.map +0 -1
  509. package/dist/metrics/index.js +0 -19
  510. package/dist/metrics/index.js.map +0 -1
  511. package/dist/metrics/model-provider-registry.js +0 -88
  512. package/dist/metrics/model-provider-registry.js.map +0 -1
  513. package/dist/metrics/otel-integration.js +0 -263
  514. package/dist/metrics/otel-integration.js.map +0 -1
  515. package/dist/metrics/provider-detection.js +0 -103
  516. package/dist/metrics/provider-detection.js.map +0 -1
  517. package/dist/metrics/token-estimation.js +0 -253
  518. package/dist/metrics/token-estimation.js.map +0 -1
  519. package/dist/metrics/token-service.js +0 -450
  520. package/dist/metrics/token-service.js.map +0 -1
  521. package/dist/migration/agent-outputs.js +0 -316
  522. package/dist/migration/agent-outputs.js.map +0 -1
  523. package/dist/migration/checksum.js +0 -92
  524. package/dist/migration/checksum.js.map +0 -1
  525. package/dist/migration/index.js +0 -282
  526. package/dist/migration/index.js.map +0 -1
  527. package/dist/migration/logger.js +0 -360
  528. package/dist/migration/logger.js.map +0 -1
  529. package/dist/migration/preflight.js +0 -9
  530. package/dist/migration/preflight.js.map +0 -1
  531. package/dist/migration/state.js +0 -421
  532. package/dist/migration/state.js.map +0 -1
  533. package/dist/migration/validate.js +0 -241
  534. package/dist/migration/validate.js.map +0 -1
  535. package/dist/nexus/deps.js +0 -375
  536. package/dist/nexus/deps.js.map +0 -1
  537. package/dist/nexus/discover.js +0 -288
  538. package/dist/nexus/discover.js.map +0 -1
  539. package/dist/nexus/hash.js +0 -10
  540. package/dist/nexus/hash.js.map +0 -1
  541. package/dist/nexus/index.js +0 -38
  542. package/dist/nexus/index.js.map +0 -1
  543. package/dist/nexus/migrate-json-to-sqlite.js +0 -115
  544. package/dist/nexus/migrate-json-to-sqlite.js.map +0 -1
  545. package/dist/nexus/permissions.js +0 -105
  546. package/dist/nexus/permissions.js.map +0 -1
  547. package/dist/nexus/query.js +0 -175
  548. package/dist/nexus/query.js.map +0 -1
  549. package/dist/nexus/registry.js +0 -584
  550. package/dist/nexus/registry.js.map +0 -1
  551. package/dist/nexus/sharing/index.js +0 -288
  552. package/dist/nexus/sharing/index.js.map +0 -1
  553. package/dist/nexus/transfer-types.js +0 -8
  554. package/dist/nexus/transfer-types.js.map +0 -1
  555. package/dist/nexus/transfer.js +0 -263
  556. package/dist/nexus/transfer.js.map +0 -1
  557. package/dist/observability/index.js +0 -103
  558. package/dist/observability/index.js.map +0 -1
  559. package/dist/observability/log-filter.js +0 -63
  560. package/dist/observability/log-filter.js.map +0 -1
  561. package/dist/observability/log-parser.js +0 -99
  562. package/dist/observability/log-parser.js.map +0 -1
  563. package/dist/observability/log-reader.js +0 -139
  564. package/dist/observability/log-reader.js.map +0 -1
  565. package/dist/observability/types.js +0 -19
  566. package/dist/observability/types.js.map +0 -1
  567. package/dist/orchestration/analyze.js +0 -107
  568. package/dist/orchestration/analyze.js.map +0 -1
  569. package/dist/orchestration/bootstrap.js +0 -132
  570. package/dist/orchestration/bootstrap.js.map +0 -1
  571. package/dist/orchestration/context.js +0 -56
  572. package/dist/orchestration/context.js.map +0 -1
  573. package/dist/orchestration/critical-path.js +0 -100
  574. package/dist/orchestration/critical-path.js.map +0 -1
  575. package/dist/orchestration/index.js +0 -286
  576. package/dist/orchestration/index.js.map +0 -1
  577. package/dist/orchestration/parallel.js +0 -89
  578. package/dist/orchestration/parallel.js.map +0 -1
  579. package/dist/orchestration/protocol-validators.js +0 -524
  580. package/dist/orchestration/protocol-validators.js.map +0 -1
  581. package/dist/orchestration/skill-ops.js +0 -98
  582. package/dist/orchestration/skill-ops.js.map +0 -1
  583. package/dist/orchestration/status.js +0 -107
  584. package/dist/orchestration/status.js.map +0 -1
  585. package/dist/orchestration/unblock.js +0 -103
  586. package/dist/orchestration/unblock.js.map +0 -1
  587. package/dist/orchestration/validate-spawn.js +0 -67
  588. package/dist/orchestration/validate-spawn.js.map +0 -1
  589. package/dist/orchestration/waves.js +0 -86
  590. package/dist/orchestration/waves.js.map +0 -1
  591. package/dist/otel/index.js +0 -163
  592. package/dist/otel/index.js.map +0 -1
  593. package/dist/output.js +0 -132
  594. package/dist/output.js.map +0 -1
  595. package/dist/pagination.js +0 -64
  596. package/dist/pagination.js.map +0 -1
  597. package/dist/paths.js +0 -337
  598. package/dist/paths.js.map +0 -1
  599. package/dist/phases/deps.js +0 -372
  600. package/dist/phases/deps.js.map +0 -1
  601. package/dist/phases/index.js +0 -349
  602. package/dist/phases/index.js.map +0 -1
  603. package/dist/pipeline/index.js +0 -10
  604. package/dist/pipeline/index.js.map +0 -1
  605. package/dist/pipeline/phase.js +0 -45
  606. package/dist/pipeline/phase.js.map +0 -1
  607. package/dist/platform.js +0 -211
  608. package/dist/platform.js.map +0 -1
  609. package/dist/project-info.js +0 -84
  610. package/dist/project-info.js.map +0 -1
  611. package/dist/reconciliation/index.js +0 -10
  612. package/dist/reconciliation/index.js.map +0 -1
  613. package/dist/reconciliation/link-store.js +0 -129
  614. package/dist/reconciliation/link-store.js.map +0 -1
  615. package/dist/reconciliation/reconciliation-engine.js +0 -298
  616. package/dist/reconciliation/reconciliation-engine.js.map +0 -1
  617. package/dist/release/artifacts.js +0 -427
  618. package/dist/release/artifacts.js.map +0 -1
  619. package/dist/release/changelog-writer.js +0 -151
  620. package/dist/release/changelog-writer.js.map +0 -1
  621. package/dist/release/channel.js +0 -144
  622. package/dist/release/channel.js.map +0 -1
  623. package/dist/release/ci.js +0 -166
  624. package/dist/release/ci.js.map +0 -1
  625. package/dist/release/github-pr.js +0 -225
  626. package/dist/release/github-pr.js.map +0 -1
  627. package/dist/release/guards.js +0 -116
  628. package/dist/release/guards.js.map +0 -1
  629. package/dist/release/index.js +0 -22
  630. package/dist/release/index.js.map +0 -1
  631. package/dist/release/release-config.js +0 -158
  632. package/dist/release/release-config.js.map +0 -1
  633. package/dist/release/release-manifest.js +0 -1019
  634. package/dist/release/release-manifest.js.map +0 -1
  635. package/dist/release/version-bump.js +0 -255
  636. package/dist/release/version-bump.js.map +0 -1
  637. package/dist/remote/index.js +0 -257
  638. package/dist/remote/index.js.map +0 -1
  639. package/dist/repair.js +0 -130
  640. package/dist/repair.js.map +0 -1
  641. package/dist/research/index.js +0 -2
  642. package/dist/research/index.js.map +0 -1
  643. package/dist/roadmap/index.js +0 -59
  644. package/dist/roadmap/index.js.map +0 -1
  645. package/dist/routing/capability-matrix.js +0 -1557
  646. package/dist/routing/capability-matrix.js.map +0 -1
  647. package/dist/routing/index.js +0 -9
  648. package/dist/routing/index.js.map +0 -1
  649. package/dist/scaffold.js +0 -1178
  650. package/dist/scaffold.js.map +0 -1
  651. package/dist/schema-management.js +0 -295
  652. package/dist/schema-management.js.map +0 -1
  653. package/dist/security/index.js +0 -9
  654. package/dist/security/index.js.map +0 -1
  655. package/dist/security/input-sanitization.js +0 -321
  656. package/dist/security/input-sanitization.js.map +0 -1
  657. package/dist/sequence/index.js +0 -295
  658. package/dist/sequence/index.js.map +0 -1
  659. package/dist/sessions/assumptions.js +0 -54
  660. package/dist/sessions/assumptions.js.map +0 -1
  661. package/dist/sessions/briefing.js +0 -377
  662. package/dist/sessions/briefing.js.map +0 -1
  663. package/dist/sessions/context-alert.js +0 -222
  664. package/dist/sessions/context-alert.js.map +0 -1
  665. package/dist/sessions/context-inject.js +0 -61
  666. package/dist/sessions/context-inject.js.map +0 -1
  667. package/dist/sessions/context-monitor.js +0 -98
  668. package/dist/sessions/context-monitor.js.map +0 -1
  669. package/dist/sessions/decisions.js +0 -65
  670. package/dist/sessions/decisions.js.map +0 -1
  671. package/dist/sessions/find.js +0 -63
  672. package/dist/sessions/find.js.map +0 -1
  673. package/dist/sessions/handoff.js +0 -328
  674. package/dist/sessions/handoff.js.map +0 -1
  675. package/dist/sessions/hitl-warnings.js +0 -254
  676. package/dist/sessions/hitl-warnings.js.map +0 -1
  677. package/dist/sessions/index.js +0 -314
  678. package/dist/sessions/index.js.map +0 -1
  679. package/dist/sessions/session-archive.js +0 -40
  680. package/dist/sessions/session-archive.js.map +0 -1
  681. package/dist/sessions/session-cleanup.js +0 -59
  682. package/dist/sessions/session-cleanup.js.map +0 -1
  683. package/dist/sessions/session-drift.js +0 -134
  684. package/dist/sessions/session-drift.js.map +0 -1
  685. package/dist/sessions/session-enforcement.js +0 -144
  686. package/dist/sessions/session-enforcement.js.map +0 -1
  687. package/dist/sessions/session-grade.js +0 -253
  688. package/dist/sessions/session-grade.js.map +0 -1
  689. package/dist/sessions/session-history.js +0 -42
  690. package/dist/sessions/session-history.js.map +0 -1
  691. package/dist/sessions/session-id.js +0 -81
  692. package/dist/sessions/session-id.js.map +0 -1
  693. package/dist/sessions/session-memory-bridge.js +0 -52
  694. package/dist/sessions/session-memory-bridge.js.map +0 -1
  695. package/dist/sessions/session-show.js +0 -24
  696. package/dist/sessions/session-show.js.map +0 -1
  697. package/dist/sessions/session-stats.js +0 -69
  698. package/dist/sessions/session-stats.js.map +0 -1
  699. package/dist/sessions/session-suspend.js +0 -39
  700. package/dist/sessions/session-suspend.js.map +0 -1
  701. package/dist/sessions/session-switch.js +0 -51
  702. package/dist/sessions/session-switch.js.map +0 -1
  703. package/dist/sessions/session-view.js +0 -76
  704. package/dist/sessions/session-view.js.map +0 -1
  705. package/dist/sessions/statusline-setup.js +0 -85
  706. package/dist/sessions/statusline-setup.js.map +0 -1
  707. package/dist/sessions/types.js +0 -8
  708. package/dist/sessions/types.js.map +0 -1
  709. package/dist/signaldock/claude-code-transport.d.ts +0 -34
  710. package/dist/signaldock/claude-code-transport.d.ts.map +0 -1
  711. package/dist/signaldock/claude-code-transport.js +0 -107
  712. package/dist/signaldock/claude-code-transport.js.map +0 -1
  713. package/dist/signaldock/factory.d.ts +0 -22
  714. package/dist/signaldock/factory.d.ts.map +0 -1
  715. package/dist/signaldock/factory.js +0 -25
  716. package/dist/signaldock/factory.js.map +0 -1
  717. package/dist/signaldock/index.d.ts +0 -13
  718. package/dist/signaldock/index.d.ts.map +0 -1
  719. package/dist/signaldock/index.js +0 -9
  720. package/dist/signaldock/index.js.map +0 -1
  721. package/dist/signaldock/signaldock-transport.d.ts +0 -45
  722. package/dist/signaldock/signaldock-transport.d.ts.map +0 -1
  723. package/dist/signaldock/signaldock-transport.js +0 -122
  724. package/dist/signaldock/signaldock-transport.js.map +0 -1
  725. package/dist/signaldock/transport.d.ts +0 -49
  726. package/dist/signaldock/transport.d.ts.map +0 -1
  727. package/dist/signaldock/transport.js +0 -11
  728. package/dist/signaldock/transport.js.map +0 -1
  729. package/dist/signaldock/types.d.ts +0 -88
  730. package/dist/signaldock/types.d.ts.map +0 -1
  731. package/dist/signaldock/types.js +0 -11
  732. package/dist/signaldock/types.js.map +0 -1
  733. package/dist/skills/agents/config.js +0 -94
  734. package/dist/skills/agents/config.js.map +0 -1
  735. package/dist/skills/agents/install.js +0 -116
  736. package/dist/skills/agents/install.js.map +0 -1
  737. package/dist/skills/agents/registry.js +0 -161
  738. package/dist/skills/agents/registry.js.map +0 -1
  739. package/dist/skills/discovery.js +0 -333
  740. package/dist/skills/discovery.js.map +0 -1
  741. package/dist/skills/dispatch.js +0 -347
  742. package/dist/skills/dispatch.js.map +0 -1
  743. package/dist/skills/dynamic-skill-generator.js +0 -100
  744. package/dist/skills/dynamic-skill-generator.js.map +0 -1
  745. package/dist/skills/index.js +0 -44
  746. package/dist/skills/index.js.map +0 -1
  747. package/dist/skills/injection/subagent.js +0 -195
  748. package/dist/skills/injection/subagent.js.map +0 -1
  749. package/dist/skills/injection/token.js +0 -260
  750. package/dist/skills/injection/token.js.map +0 -1
  751. package/dist/skills/install.js +0 -40
  752. package/dist/skills/install.js.map +0 -1
  753. package/dist/skills/manifests/contribution.js +0 -175
  754. package/dist/skills/manifests/contribution.js.map +0 -1
  755. package/dist/skills/manifests/research.js +0 -281
  756. package/dist/skills/manifests/research.js.map +0 -1
  757. package/dist/skills/manifests/resolver.js +0 -146
  758. package/dist/skills/manifests/resolver.js.map +0 -1
  759. package/dist/skills/marketplace.js +0 -90
  760. package/dist/skills/marketplace.js.map +0 -1
  761. package/dist/skills/orchestrator/spawn.js +0 -178
  762. package/dist/skills/orchestrator/spawn.js.map +0 -1
  763. package/dist/skills/orchestrator/startup.js +0 -451
  764. package/dist/skills/orchestrator/startup.js.map +0 -1
  765. package/dist/skills/orchestrator/validator.js +0 -301
  766. package/dist/skills/orchestrator/validator.js.map +0 -1
  767. package/dist/skills/precedence-integration.js +0 -73
  768. package/dist/skills/precedence-integration.js.map +0 -1
  769. package/dist/skills/precedence-types.js +0 -16
  770. package/dist/skills/precedence-types.js.map +0 -1
  771. package/dist/skills/routing-table.js +0 -63
  772. package/dist/skills/routing-table.js.map +0 -1
  773. package/dist/skills/skill-paths.js +0 -220
  774. package/dist/skills/skill-paths.js.map +0 -1
  775. package/dist/skills/test-utility.js +0 -55
  776. package/dist/skills/test-utility.js.map +0 -1
  777. package/dist/skills/types.js +0 -118
  778. package/dist/skills/types.js.map +0 -1
  779. package/dist/skills/validation.js +0 -183
  780. package/dist/skills/validation.js.map +0 -1
  781. package/dist/skills/version.js +0 -57
  782. package/dist/skills/version.js.map +0 -1
  783. package/dist/snapshot/index.js +0 -188
  784. package/dist/snapshot/index.js.map +0 -1
  785. package/dist/spawn/adapter-registry.js +0 -246
  786. package/dist/spawn/adapter-registry.js.map +0 -1
  787. package/dist/spawn/index.js +0 -10
  788. package/dist/spawn/index.js.map +0 -1
  789. package/dist/stats/index.js +0 -343
  790. package/dist/stats/index.js.map +0 -1
  791. package/dist/stats/workflow-telemetry.js +0 -400
  792. package/dist/stats/workflow-telemetry.js.map +0 -1
  793. package/dist/sticky/archive.js +0 -47
  794. package/dist/sticky/archive.js.map +0 -1
  795. package/dist/sticky/convert.js +0 -235
  796. package/dist/sticky/convert.js.map +0 -1
  797. package/dist/sticky/create.js +0 -48
  798. package/dist/sticky/create.js.map +0 -1
  799. package/dist/sticky/id.js +0 -35
  800. package/dist/sticky/id.js.map +0 -1
  801. package/dist/sticky/index.js +0 -16
  802. package/dist/sticky/index.js.map +0 -1
  803. package/dist/sticky/list.js +0 -44
  804. package/dist/sticky/list.js.map +0 -1
  805. package/dist/sticky/purge.js +0 -45
  806. package/dist/sticky/purge.js.map +0 -1
  807. package/dist/sticky/show.js +0 -42
  808. package/dist/sticky/show.js.map +0 -1
  809. package/dist/sticky/types.js +0 -10
  810. package/dist/sticky/types.js.map +0 -1
  811. package/dist/store/atomic.js +0 -167
  812. package/dist/store/atomic.js.map +0 -1
  813. package/dist/store/backup.js +0 -94
  814. package/dist/store/backup.js.map +0 -1
  815. package/dist/store/brain-accessor.js +0 -397
  816. package/dist/store/brain-accessor.js.map +0 -1
  817. package/dist/store/brain-schema.js +0 -215
  818. package/dist/store/brain-schema.js.map +0 -1
  819. package/dist/store/brain-sqlite.js +0 -222
  820. package/dist/store/brain-sqlite.js.map +0 -1
  821. package/dist/store/cache.js +0 -168
  822. package/dist/store/cache.js.map +0 -1
  823. package/dist/store/chain-schema.js +0 -51
  824. package/dist/store/chain-schema.js.map +0 -1
  825. package/dist/store/converters.js +0 -122
  826. package/dist/store/converters.js.map +0 -1
  827. package/dist/store/cross-db-cleanup.js +0 -169
  828. package/dist/store/cross-db-cleanup.js.map +0 -1
  829. package/dist/store/data-accessor.js +0 -26
  830. package/dist/store/data-accessor.js.map +0 -1
  831. package/dist/store/data-safety-central.js +0 -269
  832. package/dist/store/data-safety-central.js.map +0 -1
  833. package/dist/store/data-safety.js +0 -274
  834. package/dist/store/data-safety.js.map +0 -1
  835. package/dist/store/db-helpers.js +0 -223
  836. package/dist/store/db-helpers.js.map +0 -1
  837. package/dist/store/export.js +0 -155
  838. package/dist/store/export.js.map +0 -1
  839. package/dist/store/file-utils.js +0 -270
  840. package/dist/store/file-utils.js.map +0 -1
  841. package/dist/store/git-checkpoint.js +0 -365
  842. package/dist/store/git-checkpoint.js.map +0 -1
  843. package/dist/store/import-logging.js +0 -139
  844. package/dist/store/import-logging.js.map +0 -1
  845. package/dist/store/import-remap.js +0 -145
  846. package/dist/store/import-remap.js.map +0 -1
  847. package/dist/store/import-sort.js +0 -121
  848. package/dist/store/import-sort.js.map +0 -1
  849. package/dist/store/index.js +0 -28
  850. package/dist/store/index.js.map +0 -1
  851. package/dist/store/json.js +0 -208
  852. package/dist/store/json.js.map +0 -1
  853. package/dist/store/lifecycle-store.js +0 -249
  854. package/dist/store/lifecycle-store.js.map +0 -1
  855. package/dist/store/lock.js +0 -70
  856. package/dist/store/lock.js.map +0 -1
  857. package/dist/store/migration-manager.js +0 -151
  858. package/dist/store/migration-manager.js.map +0 -1
  859. package/dist/store/migration-sqlite.js +0 -676
  860. package/dist/store/migration-sqlite.js.map +0 -1
  861. package/dist/store/nexus-schema.js +0 -62
  862. package/dist/store/nexus-schema.js.map +0 -1
  863. package/dist/store/nexus-sqlite.js +0 -217
  864. package/dist/store/nexus-sqlite.js.map +0 -1
  865. package/dist/store/nexus-validation-schemas.js +0 -40
  866. package/dist/store/nexus-validation-schemas.js.map +0 -1
  867. package/dist/store/parsers.js +0 -37
  868. package/dist/store/parsers.js.map +0 -1
  869. package/dist/store/project-detect.js +0 -457
  870. package/dist/store/project-detect.js.map +0 -1
  871. package/dist/store/provider.js +0 -101
  872. package/dist/store/provider.js.map +0 -1
  873. package/dist/store/safety-data-accessor.js +0 -243
  874. package/dist/store/safety-data-accessor.js.map +0 -1
  875. package/dist/store/schema.js +0 -7
  876. package/dist/store/schema.js.map +0 -1
  877. package/dist/store/session-store.js +0 -219
  878. package/dist/store/session-store.js.map +0 -1
  879. package/dist/store/sqlite-backup.js +0 -105
  880. package/dist/store/sqlite-backup.js.map +0 -1
  881. package/dist/store/sqlite-data-accessor.js +0 -734
  882. package/dist/store/sqlite-data-accessor.js.map +0 -1
  883. package/dist/store/sqlite.js +0 -436
  884. package/dist/store/sqlite.js.map +0 -1
  885. package/dist/store/status-registry.js +0 -8
  886. package/dist/store/status-registry.js.map +0 -1
  887. package/dist/store/task-store.js +0 -348
  888. package/dist/store/task-store.js.map +0 -1
  889. package/dist/store/tasks-schema.js +0 -604
  890. package/dist/store/tasks-schema.js.map +0 -1
  891. package/dist/store/typed-query.js +0 -15
  892. package/dist/store/typed-query.js.map +0 -1
  893. package/dist/store/validation-schemas.js +0 -278
  894. package/dist/store/validation-schemas.js.map +0 -1
  895. package/dist/system/archive-analytics.js +0 -277
  896. package/dist/system/archive-analytics.js.map +0 -1
  897. package/dist/system/archive-stats.js +0 -64
  898. package/dist/system/archive-stats.js.map +0 -1
  899. package/dist/system/audit.js +0 -145
  900. package/dist/system/audit.js.map +0 -1
  901. package/dist/system/backup.js +0 -141
  902. package/dist/system/backup.js.map +0 -1
  903. package/dist/system/cleanup.js +0 -134
  904. package/dist/system/cleanup.js.map +0 -1
  905. package/dist/system/health.js +0 -1054
  906. package/dist/system/health.js.map +0 -1
  907. package/dist/system/index.js +0 -18
  908. package/dist/system/index.js.map +0 -1
  909. package/dist/system/inject-generate.js +0 -122
  910. package/dist/system/inject-generate.js.map +0 -1
  911. package/dist/system/labels.js +0 -38
  912. package/dist/system/labels.js.map +0 -1
  913. package/dist/system/metrics.js +0 -61
  914. package/dist/system/metrics.js.map +0 -1
  915. package/dist/system/migrate.js +0 -43
  916. package/dist/system/migrate.js.map +0 -1
  917. package/dist/system/platform-paths.js +0 -80
  918. package/dist/system/platform-paths.js.map +0 -1
  919. package/dist/system/runtime.js +0 -161
  920. package/dist/system/runtime.js.map +0 -1
  921. package/dist/system/safestop.js +0 -99
  922. package/dist/system/safestop.js.map +0 -1
  923. package/dist/system/storage-preflight.js +0 -123
  924. package/dist/system/storage-preflight.js.map +0 -1
  925. package/dist/task-work/index.js +0 -155
  926. package/dist/task-work/index.js.map +0 -1
  927. package/dist/tasks/add.js +0 -661
  928. package/dist/tasks/add.js.map +0 -1
  929. package/dist/tasks/analyze.js +0 -85
  930. package/dist/tasks/analyze.js.map +0 -1
  931. package/dist/tasks/archive.js +0 -90
  932. package/dist/tasks/archive.js.map +0 -1
  933. package/dist/tasks/atomicity.js +0 -83
  934. package/dist/tasks/atomicity.js.map +0 -1
  935. package/dist/tasks/cancel-ops.js +0 -83
  936. package/dist/tasks/cancel-ops.js.map +0 -1
  937. package/dist/tasks/complete.js +0 -208
  938. package/dist/tasks/complete.js.map +0 -1
  939. package/dist/tasks/crossref-extract.js +0 -73
  940. package/dist/tasks/crossref-extract.js.map +0 -1
  941. package/dist/tasks/delete-preview.js +0 -192
  942. package/dist/tasks/delete-preview.js.map +0 -1
  943. package/dist/tasks/delete.js +0 -120
  944. package/dist/tasks/delete.js.map +0 -1
  945. package/dist/tasks/deletion-strategy.js +0 -200
  946. package/dist/tasks/deletion-strategy.js.map +0 -1
  947. package/dist/tasks/dependency-check.js +0 -278
  948. package/dist/tasks/dependency-check.js.map +0 -1
  949. package/dist/tasks/deps-ready.js +0 -32
  950. package/dist/tasks/deps-ready.js.map +0 -1
  951. package/dist/tasks/enforcement.js +0 -86
  952. package/dist/tasks/enforcement.js.map +0 -1
  953. package/dist/tasks/epic-enforcement.js +0 -294
  954. package/dist/tasks/epic-enforcement.js.map +0 -1
  955. package/dist/tasks/find.js +0 -148
  956. package/dist/tasks/find.js.map +0 -1
  957. package/dist/tasks/graph-cache.js +0 -127
  958. package/dist/tasks/graph-cache.js.map +0 -1
  959. package/dist/tasks/graph-ops.js +0 -171
  960. package/dist/tasks/graph-ops.js.map +0 -1
  961. package/dist/tasks/graph-rag.js +0 -328
  962. package/dist/tasks/graph-rag.js.map +0 -1
  963. package/dist/tasks/hierarchy-policy.js +0 -149
  964. package/dist/tasks/hierarchy-policy.js.map +0 -1
  965. package/dist/tasks/hierarchy.js +0 -185
  966. package/dist/tasks/hierarchy.js.map +0 -1
  967. package/dist/tasks/id-generator.js +0 -65
  968. package/dist/tasks/id-generator.js.map +0 -1
  969. package/dist/tasks/index.js +0 -14
  970. package/dist/tasks/index.js.map +0 -1
  971. package/dist/tasks/labels.js +0 -52
  972. package/dist/tasks/labels.js.map +0 -1
  973. package/dist/tasks/list.js +0 -68
  974. package/dist/tasks/list.js.map +0 -1
  975. package/dist/tasks/phase-tracking.js +0 -133
  976. package/dist/tasks/phase-tracking.js.map +0 -1
  977. package/dist/tasks/pipeline-stage.js +0 -248
  978. package/dist/tasks/pipeline-stage.js.map +0 -1
  979. package/dist/tasks/plan.js +0 -268
  980. package/dist/tasks/plan.js.map +0 -1
  981. package/dist/tasks/relates.js +0 -89
  982. package/dist/tasks/relates.js.map +0 -1
  983. package/dist/tasks/reparent.d.ts +0 -38
  984. package/dist/tasks/reparent.d.ts.map +0 -1
  985. package/dist/tasks/show.js +0 -78
  986. package/dist/tasks/show.js.map +0 -1
  987. package/dist/tasks/size-weighting.js +0 -86
  988. package/dist/tasks/size-weighting.js.map +0 -1
  989. package/dist/tasks/staleness.js +0 -86
  990. package/dist/tasks/staleness.js.map +0 -1
  991. package/dist/tasks/task-ops.js +0 -1340
  992. package/dist/tasks/task-ops.js.map +0 -1
  993. package/dist/tasks/update.js +0 -271
  994. package/dist/tasks/update.js.map +0 -1
  995. package/dist/templates/index.js +0 -10
  996. package/dist/templates/index.js.map +0 -1
  997. package/dist/templates/parser.js +0 -254
  998. package/dist/templates/parser.js.map +0 -1
  999. package/dist/ui/aliases.js +0 -153
  1000. package/dist/ui/aliases.js.map +0 -1
  1001. package/dist/ui/changelog.js +0 -184
  1002. package/dist/ui/changelog.js.map +0 -1
  1003. package/dist/ui/command-registry.js +0 -168
  1004. package/dist/ui/command-registry.js.map +0 -1
  1005. package/dist/ui/flags.js +0 -94
  1006. package/dist/ui/flags.js.map +0 -1
  1007. package/dist/ui/index.js +0 -24
  1008. package/dist/ui/index.js.map +0 -1
  1009. package/dist/ui/injection-legacy.d.ts +0 -26
  1010. package/dist/ui/injection-legacy.d.ts.map +0 -1
  1011. package/dist/ui/injection-legacy.js +0 -42
  1012. package/dist/ui/injection-legacy.js.map +0 -1
  1013. package/dist/upgrade.js +0 -1144
  1014. package/dist/upgrade.js.map +0 -1
  1015. package/dist/validation/chain-validation.js +0 -146
  1016. package/dist/validation/chain-validation.js.map +0 -1
  1017. package/dist/validation/compliance.js +0 -155
  1018. package/dist/validation/compliance.js.map +0 -1
  1019. package/dist/validation/docs-sync.js +0 -212
  1020. package/dist/validation/docs-sync.js.map +0 -1
  1021. package/dist/validation/doctor/checks.js +0 -1069
  1022. package/dist/validation/doctor/checks.js.map +0 -1
  1023. package/dist/validation/doctor/index.js +0 -9
  1024. package/dist/validation/doctor/index.js.map +0 -1
  1025. package/dist/validation/doctor/project-cache.js +0 -160
  1026. package/dist/validation/doctor/project-cache.js.map +0 -1
  1027. package/dist/validation/doctor/utils.js +0 -155
  1028. package/dist/validation/doctor/utils.js.map +0 -1
  1029. package/dist/validation/engine.js +0 -902
  1030. package/dist/validation/engine.js.map +0 -1
  1031. package/dist/validation/gap-check.js +0 -175
  1032. package/dist/validation/gap-check.js.map +0 -1
  1033. package/dist/validation/index.js +0 -40
  1034. package/dist/validation/index.js.map +0 -1
  1035. package/dist/validation/manifest.js +0 -237
  1036. package/dist/validation/manifest.js.map +0 -1
  1037. package/dist/validation/operation-gate-validators.js +0 -724
  1038. package/dist/validation/operation-gate-validators.js.map +0 -1
  1039. package/dist/validation/operation-verification-gates.js +0 -532
  1040. package/dist/validation/operation-verification-gates.js.map +0 -1
  1041. package/dist/validation/param-utils.js +0 -139
  1042. package/dist/validation/param-utils.js.map +0 -1
  1043. package/dist/validation/protocol-common.js +0 -300
  1044. package/dist/validation/protocol-common.js.map +0 -1
  1045. package/dist/validation/protocols/consensus.js +0 -71
  1046. package/dist/validation/protocols/consensus.js.map +0 -1
  1047. package/dist/validation/protocols/contribution.js +0 -59
  1048. package/dist/validation/protocols/contribution.js.map +0 -1
  1049. package/dist/validation/protocols/decomposition.js +0 -59
  1050. package/dist/validation/protocols/decomposition.js.map +0 -1
  1051. package/dist/validation/protocols/implementation.js +0 -59
  1052. package/dist/validation/protocols/implementation.js.map +0 -1
  1053. package/dist/validation/protocols/release-protocol.js +0 -60
  1054. package/dist/validation/protocols/release-protocol.js.map +0 -1
  1055. package/dist/validation/protocols/research.js +0 -77
  1056. package/dist/validation/protocols/research.js.map +0 -1
  1057. package/dist/validation/protocols/specification.js +0 -84
  1058. package/dist/validation/protocols/specification.js.map +0 -1
  1059. package/dist/validation/protocols/testing-protocol.js +0 -70
  1060. package/dist/validation/protocols/testing-protocol.js.map +0 -1
  1061. package/dist/validation/protocols/validation-protocol.js +0 -70
  1062. package/dist/validation/protocols/validation-protocol.js.map +0 -1
  1063. package/dist/validation/schema-integrity.js +0 -170
  1064. package/dist/validation/schema-integrity.js.map +0 -1
  1065. package/dist/validation/schema-validator.js +0 -176
  1066. package/dist/validation/schema-validator.js.map +0 -1
  1067. package/dist/validation/validate-ops.js +0 -937
  1068. package/dist/validation/validate-ops.js.map +0 -1
  1069. package/dist/validation/validation-rules.js +0 -226
  1070. package/dist/validation/validation-rules.js.map +0 -1
  1071. package/dist/validation/verification.js +0 -321
  1072. package/dist/validation/verification.js.map +0 -1
  1073. package/src/signaldock/__tests__/claude-code-transport.test.d.ts +0 -7
  1074. package/src/signaldock/__tests__/claude-code-transport.test.d.ts.map +0 -1
  1075. package/src/signaldock/__tests__/claude-code-transport.test.js +0 -147
  1076. package/src/signaldock/__tests__/claude-code-transport.test.js.map +0 -1
  1077. package/src/signaldock/__tests__/claude-code-transport.test.ts +0 -180
  1078. package/src/signaldock/__tests__/factory.test.d.ts +0 -7
  1079. package/src/signaldock/__tests__/factory.test.d.ts.map +0 -1
  1080. package/src/signaldock/__tests__/factory.test.js +0 -55
  1081. package/src/signaldock/__tests__/factory.test.js.map +0 -1
  1082. package/src/signaldock/__tests__/factory.test.ts +0 -61
  1083. package/src/signaldock/__tests__/signaldock-transport.test.d.ts +0 -9
  1084. package/src/signaldock/__tests__/signaldock-transport.test.d.ts.map +0 -1
  1085. package/src/signaldock/__tests__/signaldock-transport.test.js +0 -321
  1086. package/src/signaldock/__tests__/signaldock-transport.test.js.map +0 -1
  1087. package/src/signaldock/__tests__/signaldock-transport.test.ts +0 -421
  1088. package/src/signaldock/claude-code-transport.ts +0 -137
  1089. package/src/signaldock/factory.ts +0 -39
  1090. package/src/signaldock/index.ts +0 -28
  1091. package/src/signaldock/signaldock-transport.ts +0 -194
  1092. package/src/signaldock/transport.ts +0 -78
  1093. package/src/signaldock/types.ts +0 -100
@@ -1,294 +0,0 @@
1
- /**
2
- * Epic lifecycle pipeline enforcement (RCASD-IVTR+C).
3
- *
4
- * Enforces three constraints specific to tasks of type "epic":
5
- *
6
- * 1. **Creation requirements** (strict mode only):
7
- * - Minimum 5 acceptance criteria (vs. 3 for regular tasks).
8
- * - Completion criteria must be defined (non-empty description field).
9
- * - Initial pipeline stage defaults to "research" (inherited from
10
- * pipeline-stage.ts, not re-asserted here).
11
- *
12
- * 2. **Child stage ceiling**: A child task's pipeline stage cannot advance
13
- * past the epic's current pipeline stage. This is checked on child task
14
- * update (pipelineStage change) and on child task creation.
15
- *
16
- * 3. **Epic stage advancement gate**: An epic cannot advance its pipeline
17
- * stage while it has children whose status is not "done" AND whose
18
- * pipeline stage equals the epic's current stage. In other words, all
19
- * in-flight children at the current stage must be completed before the
20
- * epic may move forward.
21
- *
22
- * Enforcement is conditional on `lifecycle.mode`:
23
- * - "strict" → block (throw CleoError on violation)
24
- * - "advisory" → warn (return error string but do not throw)
25
- * - "off" → skip (all checks are no-ops)
26
- *
27
- * @task T062
28
- * @epic T056
29
- */
30
- import { ExitCode } from '@cleocode/contracts';
31
- import { loadConfig } from '../config.js';
32
- import { CleoError } from '../errors.js';
33
- import { getPipelineStageOrder, isValidPipelineStage } from './pipeline-stage.js';
34
- // =============================================================================
35
- // CONSTANTS
36
- // =============================================================================
37
- /** Minimum acceptance criteria count required for epic creation in strict mode. */
38
- export const EPIC_MIN_AC = 5;
39
- /** Minimum acceptance criteria count for regular tasks. */
40
- export const TASK_MIN_AC = 3;
41
- // =============================================================================
42
- // HELPERS
43
- // =============================================================================
44
- /**
45
- * Read `lifecycle.mode` from config. Falls back to "strict" when unset
46
- * (matches the DEFAULTS in config.ts).
47
- *
48
- * @remarks
49
- * In VITEST environments, returns "off" to avoid blocking tests.
50
- *
51
- * @param cwd - Working directory for config resolution
52
- * @returns The resolved lifecycle mode
53
- *
54
- * @example
55
- * ```ts
56
- * const mode = await getLifecycleMode();
57
- * // => 'strict' | 'advisory' | 'off'
58
- * ```
59
- *
60
- * @task T062
61
- */
62
- export async function getLifecycleMode(cwd) {
63
- if (process.env.VITEST)
64
- return 'off';
65
- const config = await loadConfig(cwd);
66
- return config.lifecycle?.mode ?? 'strict';
67
- }
68
- // =============================================================================
69
- // 1. EPIC CREATION REQUIREMENTS
70
- // =============================================================================
71
- /**
72
- * Validate that a new epic satisfies creation requirements.
73
- *
74
- * In **strict** mode:
75
- * - At least {@link EPIC_MIN_AC} acceptance criteria must be provided.
76
- * - `description` must be non-empty (treated as completion criteria).
77
- *
78
- * In **advisory** mode the same checks are run but violations do not block —
79
- * they are returned as `warning` text for the caller to surface.
80
- *
81
- * In **off** mode this function is a no-op.
82
- *
83
- * @remarks
84
- * The description field serves as a proxy for completion criteria — epics
85
- * without a description have no definition of "done" and should be blocked.
86
- *
87
- * @param options - Epic creation parameters
88
- * @param options.acceptance - Acceptance criteria array supplied by the caller.
89
- * @param options.description - Task description (used as completion criteria proxy).
90
- * @param cwd - Working directory for config resolution.
91
- * @returns EpicEnforcementResult — `valid: false` only in strict mode on error.
92
- * @throws CleoError(VALIDATION_ERROR) in strict mode when constraints are violated.
93
- *
94
- * @example
95
- * ```ts
96
- * await validateEpicCreation({ acceptance: ['AC1','AC2','AC3','AC4','AC5'] });
97
- * // => { valid: true }
98
- * ```
99
- *
100
- * @task T062
101
- */
102
- export async function validateEpicCreation(options, cwd) {
103
- const mode = await getLifecycleMode(cwd);
104
- if (mode === 'off')
105
- return { valid: true };
106
- const ac = options.acceptance ?? [];
107
- const desc = (options.description ?? '').trim();
108
- const violations = [];
109
- if (ac.length < EPIC_MIN_AC) {
110
- violations.push(`Epic requires at least ${EPIC_MIN_AC} acceptance criteria (${ac.length} provided). Regular tasks need ${TASK_MIN_AC}.`);
111
- }
112
- if (!desc) {
113
- violations.push('Epic must have a non-empty description (used as completion criteria).');
114
- }
115
- if (violations.length === 0)
116
- return { valid: true };
117
- const message = violations.join(' | ');
118
- const fix = `Add --acceptance "..." flags (need ${EPIC_MIN_AC}) and a --description "completion criteria"`;
119
- if (mode === 'strict') {
120
- throw new CleoError(ExitCode.VALIDATION_ERROR, message, { fix });
121
- }
122
- // advisory: warn but allow
123
- return { valid: true, warning: message };
124
- }
125
- // =============================================================================
126
- // 2. CHILD STAGE CEILING
127
- // =============================================================================
128
- /**
129
- * Validate that a child task's pipeline stage does not exceed its epic's stage.
130
- *
131
- * Call this when:
132
- * - A child task is **created** under an epic parent.
133
- * - A child task's `pipelineStage` is **updated** and it has an epic ancestor.
134
- *
135
- * The check walks the task's ancestor chain to find the nearest epic ancestor.
136
- * If none exists, the check is skipped.
137
- *
138
- * @remarks
139
- * Skips the check if the epic has no pipeline stage set, or if the child
140
- * stage is not a recognised value (those are handled by separate validation).
141
- *
142
- * @param options - Ceiling check parameters
143
- * @param options.childStage - The proposed pipeline stage for the child.
144
- * @param options.epicId - ID of the epic ancestor to check against.
145
- * @param accessor - DataAccessor for task lookups.
146
- * @param cwd - Working directory for config resolution.
147
- * @returns EpicEnforcementResult
148
- * @throws CleoError(VALIDATION_ERROR) in strict mode when the child stage exceeds the epic.
149
- *
150
- * @example
151
- * ```ts
152
- * await validateChildStageCeiling(
153
- * { childStage: 'testing', epicId: 'T001' },
154
- * accessor,
155
- * );
156
- * ```
157
- *
158
- * @task T062
159
- */
160
- export async function validateChildStageCeiling(options, accessor, cwd) {
161
- const mode = await getLifecycleMode(cwd);
162
- if (mode === 'off')
163
- return { valid: true };
164
- const epic = await accessor.loadSingleTask(options.epicId);
165
- if (!epic || epic.type !== 'epic')
166
- return { valid: true };
167
- const epicStage = epic.pipelineStage;
168
- if (!epicStage || !isValidPipelineStage(epicStage))
169
- return { valid: true };
170
- const childStage = options.childStage;
171
- if (!isValidPipelineStage(childStage))
172
- return { valid: true }; // stage validation handled elsewhere
173
- const epicOrder = getPipelineStageOrder(epicStage);
174
- const childOrder = getPipelineStageOrder(childStage);
175
- if (childOrder <= epicOrder)
176
- return { valid: true };
177
- const message = `Child task cannot be at pipeline stage "${childStage}" (order ${childOrder}) ` +
178
- `because its parent epic ${options.epicId} is only at stage "${epicStage}" (order ${epicOrder}). ` +
179
- `Children cannot exceed their epic's current stage.`;
180
- const fix = `Use a stage at or before "${epicStage}". Advance the epic first if needed.`;
181
- if (mode === 'strict') {
182
- throw new CleoError(ExitCode.VALIDATION_ERROR, message, { fix });
183
- }
184
- return { valid: true, warning: message };
185
- }
186
- /**
187
- * Find the nearest epic ancestor for a given task.
188
- *
189
- * Walks the ancestor chain (root-first) and returns the first task whose
190
- * type is "epic", or null if no epic ancestor exists.
191
- *
192
- * @remarks
193
- * Scans from closest ancestor to root so the *nearest* epic is returned,
194
- * not the highest-level one.
195
- *
196
- * @param taskId - ID of the task whose ancestors to inspect.
197
- * @param accessor - DataAccessor for the ancestor chain query.
198
- * @returns The nearest epic ancestor, or null.
199
- *
200
- * @example
201
- * ```ts
202
- * const epic = await findEpicAncestor('T042', accessor);
203
- * if (epic) console.log(epic.id); // e.g. 'T029'
204
- * ```
205
- *
206
- * @task T062
207
- */
208
- export async function findEpicAncestor(taskId, accessor) {
209
- const ancestors = await accessor.getAncestorChain(taskId);
210
- // ancestors is root-first; the last entry is the immediate parent
211
- // We want the nearest epic, so scan from the end (closest ancestor first)
212
- for (let i = ancestors.length - 1; i >= 0; i--) {
213
- const ancestor = ancestors[i];
214
- if (ancestor && ancestor.type === 'epic')
215
- return ancestor;
216
- }
217
- return null;
218
- }
219
- // =============================================================================
220
- // 3. EPIC STAGE ADVANCEMENT GATE
221
- // =============================================================================
222
- /**
223
- * Validate that an epic can advance its pipeline stage.
224
- *
225
- * An epic is **blocked** from advancing to a later stage when it has at least
226
- * one child that:
227
- * - Has a pipeline stage **equal to the epic's current stage**, AND
228
- * - Has a status that is **not** "done" (i.e., is still in-flight).
229
- *
230
- * Rationale: the epic stage represents the stage the team is actively working
231
- * in. Moving the epic forward while children are unfinished at the current
232
- * stage violates the pipeline discipline.
233
- *
234
- * @remarks
235
- * Only fires on genuine forward advancement — same-stage updates and
236
- * backward moves are handled by {@link validatePipelineTransition}.
237
- * Children with status "done", "cancelled", or "archived" are excluded
238
- * from the blocker check.
239
- *
240
- * @param options - Advancement check parameters
241
- * @param options.epicId - ID of the epic being advanced.
242
- * @param options.currentStage - Epic's current pipeline stage (before the update).
243
- * @param options.newStage - Proposed new pipeline stage.
244
- * @param accessor - DataAccessor for children lookup.
245
- * @param cwd - Working directory for config resolution.
246
- * @returns EpicEnforcementResult
247
- * @throws CleoError(VALIDATION_ERROR) in strict mode when incomplete children exist.
248
- *
249
- * @example
250
- * ```ts
251
- * await validateEpicStageAdvancement(
252
- * { epicId: 'T029', currentStage: 'research', newStage: 'consensus' },
253
- * accessor,
254
- * );
255
- * ```
256
- *
257
- * @task T062
258
- */
259
- export async function validateEpicStageAdvancement(options, accessor, cwd) {
260
- const mode = await getLifecycleMode(cwd);
261
- if (mode === 'off')
262
- return { valid: true };
263
- const { epicId, currentStage, newStage } = options;
264
- // Only enforce if actually advancing (not a same-stage no-op)
265
- if (!isValidPipelineStage(currentStage) || !isValidPipelineStage(newStage)) {
266
- return { valid: true };
267
- }
268
- const currentOrder = getPipelineStageOrder(currentStage);
269
- const newOrder = getPipelineStageOrder(newStage);
270
- if (newOrder <= currentOrder) {
271
- // Same stage or backward — backward is caught by validatePipelineTransition
272
- return { valid: true };
273
- }
274
- // Find all children whose stage equals the current epic stage and are not done
275
- const children = await accessor.getChildren(epicId);
276
- const blockers = children.filter((child) => {
277
- if (child.status === 'done' || child.status === 'cancelled' || child.status === 'archived') {
278
- return false;
279
- }
280
- return child.pipelineStage === currentStage;
281
- });
282
- if (blockers.length === 0)
283
- return { valid: true };
284
- const blockerIds = blockers.map((t) => t.id).join(', ');
285
- const message = `Epic ${epicId} cannot advance from "${currentStage}" to "${newStage}" — ` +
286
- `${blockers.length} child task(s) are still in-flight at stage "${currentStage}": ${blockerIds}. ` +
287
- `Complete all children at the current stage before advancing the epic.`;
288
- const fix = `Complete tasks ${blockerIds} first, then advance the epic stage.`;
289
- if (mode === 'strict') {
290
- throw new CleoError(ExitCode.VALIDATION_ERROR, message, { fix });
291
- }
292
- return { valid: true, warning: message };
293
- }
294
- //# sourceMappingURL=epic-enforcement.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"epic-enforcement.js","sourceRoot":"","sources":["../../src/tasks/epic-enforcement.ts"],"names":[],"mappings":"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"}
@@ -1,148 +0,0 @@
1
- /**
2
- * Fuzzy task search with minimal output.
3
- * @task T4460
4
- * @epic T4454
5
- */
6
- import { ExitCode } from '@cleocode/contracts';
7
- import { CleoError } from '../errors.js';
8
- import { getAccessor } from '../store/data-accessor.js';
9
- /**
10
- * Calculate fuzzy match score between query and text.
11
- * Higher score = better match. 0 = no match.
12
- * @task T4460
13
- */
14
- export function fuzzyScore(query, text) {
15
- const q = query.toLowerCase();
16
- const t = text.toLowerCase();
17
- // Exact match
18
- if (t === q)
19
- return 100;
20
- // Contains full query
21
- if (t.includes(q))
22
- return 80;
23
- // Word-boundary match
24
- const words = t.split(/\s+/);
25
- const queryWords = q.split(/\s+/);
26
- let wordMatchCount = 0;
27
- for (const qw of queryWords) {
28
- if (words.some((w) => w.startsWith(qw) || w.includes(qw))) {
29
- wordMatchCount++;
30
- }
31
- }
32
- if (wordMatchCount > 0) {
33
- return 40 + (wordMatchCount / queryWords.length) * 40;
34
- }
35
- // Character sequence match
36
- let qIdx = 0;
37
- let matched = 0;
38
- for (let tIdx = 0; tIdx < t.length && qIdx < q.length; tIdx++) {
39
- if (t[tIdx] === q[qIdx]) {
40
- matched++;
41
- qIdx++;
42
- }
43
- }
44
- if (qIdx === q.length) {
45
- return 10 + (matched / t.length) * 20;
46
- }
47
- return 0;
48
- }
49
- /**
50
- * Search tasks by fuzzy matching, ID prefix, or exact title.
51
- * Returns minimal fields only (context-efficient).
52
- * @task T4460
53
- */
54
- export async function findTasks(options, cwd, accessor) {
55
- if (!options.query && !options.id) {
56
- throw new CleoError(ExitCode.INVALID_INPUT, 'Search query or --id is required');
57
- }
58
- const acc = accessor ?? (await getAccessor(cwd));
59
- // Use targeted query with status filter when available
60
- const filters = {};
61
- if (options.status) {
62
- filters.status = options.status;
63
- }
64
- const queryResult = await acc.queryTasks(filters);
65
- let allTasks = [...queryResult.tasks];
66
- // Include archive if requested
67
- if (options.includeArchive) {
68
- const archive = await acc.loadArchive();
69
- if (archive?.archivedTasks) {
70
- let archivedTasks = archive.archivedTasks;
71
- if (options.status) {
72
- archivedTasks = archivedTasks.filter((t) => t.status === options.status);
73
- }
74
- allTasks = [...allTasks, ...archivedTasks];
75
- }
76
- }
77
- let results;
78
- let searchType;
79
- let queryStr;
80
- if (options.id) {
81
- // ID prefix search
82
- searchType = 'id';
83
- queryStr = options.id;
84
- const idQuery = options.id.toUpperCase();
85
- results = allTasks
86
- .filter((t) => t.id.toUpperCase().startsWith(idQuery) || t.id.toUpperCase().includes(idQuery))
87
- .map((t) => ({
88
- id: t.id,
89
- title: t.title,
90
- status: t.status,
91
- priority: t.priority,
92
- type: t.type,
93
- parentId: t.parentId,
94
- score: t.id.toUpperCase() === idQuery ? 100 : t.id.toUpperCase().startsWith(idQuery) ? 80 : 50,
95
- }));
96
- }
97
- else if (options.exact) {
98
- // Exact title match
99
- searchType = 'exact';
100
- queryStr = options.query;
101
- results = allTasks
102
- .filter((t) => t.title === options.query)
103
- .map((t) => ({
104
- id: t.id,
105
- title: t.title,
106
- status: t.status,
107
- priority: t.priority,
108
- type: t.type,
109
- parentId: t.parentId,
110
- score: 100,
111
- }));
112
- }
113
- else {
114
- // Fuzzy search
115
- searchType = 'fuzzy';
116
- queryStr = options.query;
117
- const scored = [];
118
- for (const t of allTasks) {
119
- const titleScore = fuzzyScore(queryStr, t.title);
120
- const descScore = t.description ? fuzzyScore(queryStr, t.description) * 0.7 : 0;
121
- const score = Math.max(titleScore, descScore);
122
- if (score > 0) {
123
- scored.push({
124
- id: t.id,
125
- title: t.title,
126
- status: t.status,
127
- priority: t.priority,
128
- type: t.type,
129
- parentId: t.parentId,
130
- score: Math.round(score),
131
- });
132
- }
133
- }
134
- results = scored.sort((a, b) => b.score - a.score);
135
- }
136
- const total = results.length;
137
- // Apply pagination
138
- const limit = options.limit ?? 20;
139
- const offset = options.offset ?? 0;
140
- results = results.slice(offset, offset + limit);
141
- return {
142
- results,
143
- total,
144
- query: queryStr,
145
- searchType,
146
- };
147
- }
148
- //# sourceMappingURL=find.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"find.js","sourceRoot":"","sources":["../../src/tasks/find.ts"],"names":[],"mappings":"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"}
@@ -1,127 +0,0 @@
1
- /**
2
- * Graph cache - memoized dependency graph operations.
3
- * Ported from lib/tasks/graph-cache.sh
4
- *
5
- * @epic T4454
6
- * @task T4529
7
- */
8
- import { getDependentIds } from './dependency-check.js';
9
- import { computeDependencyWaves } from './graph-ops.js';
10
- import { getChildIds, getDescendantIds } from './hierarchy.js';
11
- /**
12
- * Graph cache for expensive dependency calculations.
13
- * Automatically invalidates when tasks change.
14
- */
15
- export class GraphCache {
16
- descendantsCache = new Map();
17
- childrenCache = new Map();
18
- dependentsCache = new Map();
19
- wavesCache = null;
20
- taskChecksum = '';
21
- ttlMs;
22
- constructor(options) {
23
- this.ttlMs = options?.ttlMs ?? 30_000; // 30 second default TTL
24
- }
25
- /**
26
- * Compute a simple checksum from task data to detect changes.
27
- */
28
- computeChecksum(tasks) {
29
- // Use task count + IDs + statuses + deps as a quick checksum
30
- const parts = tasks.map((t) => `${t.id}:${t.status}:${t.parentId ?? ''}:${(t.depends ?? []).join(',')}`);
31
- return parts.sort().join('|');
32
- }
33
- /**
34
- * Check if cache is still valid for given tasks.
35
- */
36
- isValid(tasks) {
37
- return this.computeChecksum(tasks) === this.taskChecksum;
38
- }
39
- /**
40
- * Check if a cache entry has expired.
41
- */
42
- isExpired(entry) {
43
- return Date.now() - entry.timestamp > this.ttlMs;
44
- }
45
- /**
46
- * Invalidate all caches.
47
- */
48
- invalidate() {
49
- this.descendantsCache.clear();
50
- this.childrenCache.clear();
51
- this.dependentsCache.clear();
52
- this.wavesCache = null;
53
- this.taskChecksum = '';
54
- }
55
- /**
56
- * Ensure cache is fresh for the given task set.
57
- */
58
- ensureFresh(tasks) {
59
- if (!this.isValid(tasks)) {
60
- this.invalidate();
61
- this.taskChecksum = this.computeChecksum(tasks);
62
- }
63
- }
64
- /**
65
- * Get descendants of a task (cached).
66
- */
67
- getDescendants(taskId, tasks) {
68
- this.ensureFresh(tasks);
69
- const cached = this.descendantsCache.get(taskId);
70
- if (cached && !this.isExpired(cached)) {
71
- return cached.value;
72
- }
73
- const result = getDescendantIds(taskId, tasks);
74
- this.descendantsCache.set(taskId, { value: result, timestamp: Date.now() });
75
- return result;
76
- }
77
- /**
78
- * Get children of a task (cached).
79
- */
80
- getChildren(taskId, tasks) {
81
- this.ensureFresh(tasks);
82
- const cached = this.childrenCache.get(taskId);
83
- if (cached && !this.isExpired(cached)) {
84
- return cached.value;
85
- }
86
- const result = getChildIds(taskId, tasks);
87
- this.childrenCache.set(taskId, { value: result, timestamp: Date.now() });
88
- return result;
89
- }
90
- /**
91
- * Get dependents of a task (cached).
92
- */
93
- getDependents(taskId, tasks) {
94
- this.ensureFresh(tasks);
95
- const cached = this.dependentsCache.get(taskId);
96
- if (cached && !this.isExpired(cached)) {
97
- return cached.value;
98
- }
99
- const result = getDependentIds(taskId, tasks);
100
- this.dependentsCache.set(taskId, { value: result, timestamp: Date.now() });
101
- return result;
102
- }
103
- /**
104
- * Get dependency waves (cached).
105
- */
106
- getWaves(tasks) {
107
- this.ensureFresh(tasks);
108
- if (this.wavesCache && !this.isExpired(this.wavesCache)) {
109
- return this.wavesCache.value;
110
- }
111
- const result = computeDependencyWaves(tasks);
112
- this.wavesCache = { value: result, timestamp: Date.now() };
113
- return result;
114
- }
115
- /**
116
- * Get cache statistics.
117
- */
118
- getStats() {
119
- return {
120
- descendantsSize: this.descendantsCache.size,
121
- childrenSize: this.childrenCache.size,
122
- dependentsSize: this.dependentsCache.size,
123
- hasWaves: this.wavesCache !== null,
124
- };
125
- }
126
- }
127
- //# sourceMappingURL=graph-cache.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"graph-cache.js","sourceRoot":"","sources":["../../src/tasks/graph-cache.ts"],"names":[],"mappings":"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"}