@cleocode/core 2026.4.0 → 2026.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1282) hide show
  1. package/dist/audit.d.ts +1 -1
  2. package/dist/audit.d.ts.map +1 -1
  3. package/dist/bootstrap.d.ts +2 -2
  4. package/dist/bootstrap.d.ts.map +1 -1
  5. package/dist/caamp/adapter.d.ts +6 -49
  6. package/dist/caamp/adapter.d.ts.map +1 -1
  7. package/dist/caamp/index.d.ts +2 -2
  8. package/dist/caamp/index.d.ts.map +1 -1
  9. package/dist/code/parser.d.ts +2 -0
  10. package/dist/code/parser.d.ts.map +1 -1
  11. package/dist/compliance/protocol-enforcement.d.ts +1 -1
  12. package/dist/compliance/protocol-rules.d.ts +1 -1
  13. package/dist/compliance/protocol-types.d.ts +2 -3
  14. package/dist/compliance/protocol-types.d.ts.map +1 -1
  15. package/dist/conduit/conduit-client.d.ts +5 -0
  16. package/dist/conduit/conduit-client.d.ts.map +1 -1
  17. package/dist/conduit/factory.d.ts +9 -1
  18. package/dist/conduit/factory.d.ts.map +1 -1
  19. package/dist/conduit/http-transport.d.ts +1 -1
  20. package/dist/conduit/http-transport.d.ts.map +1 -1
  21. package/dist/crypto/credentials.d.ts.map +1 -1
  22. package/dist/error-catalog.d.ts +3 -3
  23. package/dist/error-catalog.d.ts.map +1 -1
  24. package/dist/errors.d.ts +1 -1
  25. package/dist/hooks/handlers/index.d.ts +2 -2
  26. package/dist/hooks/handlers/index.d.ts.map +1 -1
  27. package/dist/hooks/handlers/notification-hooks.d.ts +31 -0
  28. package/dist/hooks/handlers/notification-hooks.d.ts.map +1 -0
  29. package/dist/index.d.ts +0 -1
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +863 -1044
  32. package/dist/index.js.map +4 -4
  33. package/dist/init.d.ts +6 -6
  34. package/dist/init.d.ts.map +1 -1
  35. package/dist/injection.d.ts.map +1 -1
  36. package/dist/internal.d.ts +5 -5
  37. package/dist/internal.d.ts.map +1 -1
  38. package/dist/logger.d.ts +3 -3
  39. package/dist/memory/brain-retrieval.d.ts +1 -1
  40. package/dist/memory/engine-compat.d.ts +392 -25
  41. package/dist/memory/engine-compat.d.ts.map +1 -1
  42. package/dist/memory/index.d.ts +416 -3
  43. package/dist/memory/index.d.ts.map +1 -1
  44. package/dist/metrics/token-service.d.ts +3 -3
  45. package/dist/metrics/token-service.d.ts.map +1 -1
  46. package/dist/paths.d.ts +335 -2
  47. package/dist/paths.d.ts.map +1 -1
  48. package/dist/routing/capability-matrix.d.ts +3 -3
  49. package/dist/routing/capability-matrix.d.ts.map +1 -1
  50. package/dist/scaffold.d.ts +422 -11
  51. package/dist/scaffold.d.ts.map +1 -1
  52. package/dist/security/input-sanitization.d.ts +2 -2
  53. package/dist/sessions/index.d.ts.map +1 -1
  54. package/dist/skills/dynamic-skill-generator.d.ts +3 -2
  55. package/dist/skills/dynamic-skill-generator.d.ts.map +1 -1
  56. package/dist/skills/routing-table.d.ts +4 -4
  57. package/dist/skills/routing-table.d.ts.map +1 -1
  58. package/dist/store/provider.d.ts +1 -1
  59. package/dist/store/sqlite.d.ts +1 -1
  60. package/dist/store/tasks-schema.d.ts +4 -4
  61. package/dist/store/tasks-schema.d.ts.map +1 -1
  62. package/dist/store/validation-schemas.d.ts +4 -5
  63. package/dist/store/validation-schemas.d.ts.map +1 -1
  64. package/dist/system/archive-analytics.d.ts +1 -1
  65. package/dist/system/health.d.ts +1 -1
  66. package/dist/system/health.d.ts.map +1 -1
  67. package/dist/system/runtime.d.ts +2 -1
  68. package/dist/system/runtime.d.ts.map +1 -1
  69. package/dist/tasks/list.d.ts +1 -1
  70. package/dist/tasks/list.d.ts.map +1 -1
  71. package/dist/tasks/task-ops.d.ts +415 -3
  72. package/dist/tasks/task-ops.d.ts.map +1 -1
  73. package/dist/tasks/update.d.ts.map +1 -1
  74. package/dist/templates/parser.d.ts +1 -1
  75. package/dist/ui/index.d.ts +1 -1
  76. package/dist/upgrade.d.ts +1 -1
  77. package/dist/upgrade.d.ts.map +1 -1
  78. package/dist/validation/operation-gate-validators.d.ts +1 -1
  79. package/dist/validation/operation-verification-gates.d.ts +3 -3
  80. package/dist/validation/param-utils.d.ts +6 -5
  81. package/dist/validation/param-utils.d.ts.map +1 -1
  82. package/dist/validation/validate-ops.d.ts +1 -1
  83. package/dist/validation/validate-ops.d.ts.map +1 -1
  84. package/package.json +13 -11
  85. package/src/__tests__/caamp-skill-install.test.js +0 -15
  86. package/src/__tests__/caamp-skill-install.test.js.map +1 -1
  87. package/src/__tests__/caamp-skill-install.test.ts +0 -16
  88. package/src/__tests__/injection-mvi-tiers.test.js +7 -7
  89. package/src/__tests__/injection-mvi-tiers.test.js.map +1 -1
  90. package/src/__tests__/injection-mvi-tiers.test.ts +55 -103
  91. package/src/audit.ts +2 -2
  92. package/src/bootstrap.ts +5 -39
  93. package/src/caamp/adapter.ts +3 -219
  94. package/src/caamp/index.ts +1 -13
  95. package/src/cant/__tests__/cant-agent-parse.test.d.ts.map +1 -0
  96. package/src/cant/__tests__/cant-agent-parse.test.js +77 -0
  97. package/src/cant/__tests__/cant-agent-parse.test.js.map +1 -0
  98. package/src/code/parser.ts +35 -3
  99. package/src/codebase-map/analyzers/architecture.ts +2 -2
  100. package/src/compliance/protocol-enforcement.ts +1 -1
  101. package/src/compliance/protocol-rules.ts +1 -1
  102. package/src/compliance/protocol-types.ts +2 -3
  103. package/src/conduit/__tests__/dual-api-e2e.test.d.ts.map +1 -0
  104. package/src/conduit/__tests__/dual-api-e2e.test.js +178 -0
  105. package/src/conduit/__tests__/dual-api-e2e.test.js.map +1 -0
  106. package/src/conduit/__tests__/local-credential-flow.test.d.ts.map +1 -0
  107. package/src/conduit/__tests__/local-credential-flow.test.js +185 -0
  108. package/src/conduit/__tests__/local-credential-flow.test.js.map +1 -0
  109. package/src/conduit/__tests__/local-transport.test.d.ts.map +1 -0
  110. package/src/conduit/__tests__/local-transport.test.js +404 -0
  111. package/src/conduit/__tests__/local-transport.test.js.map +1 -0
  112. package/src/conduit/__tests__/local-transport.test.ts +189 -0
  113. package/src/conduit/__tests__/sse-transport.test.d.ts.map +1 -0
  114. package/src/conduit/__tests__/sse-transport.test.js +291 -0
  115. package/src/conduit/__tests__/sse-transport.test.js.map +1 -0
  116. package/src/conduit/__tests__/sse-transport.test.ts +1 -1
  117. package/src/conduit/conduit-client.ts +5 -0
  118. package/src/conduit/factory.ts +25 -8
  119. package/src/conduit/http-transport.ts +3 -2
  120. package/src/crypto/credentials.ts +59 -13
  121. package/src/error-catalog.ts +3 -3
  122. package/src/errors.ts +1 -1
  123. package/src/hooks/__tests__/provider-hooks.test.js +4 -4
  124. package/src/hooks/__tests__/provider-hooks.test.js.map +1 -1
  125. package/src/hooks/__tests__/provider-hooks.test.ts +4 -4
  126. package/src/hooks/handlers/__tests__/hook-automation-e2e.test.js +2 -2
  127. package/src/hooks/handlers/__tests__/hook-automation-e2e.test.js.map +1 -1
  128. package/src/hooks/handlers/__tests__/hook-automation-e2e.test.ts +6 -4
  129. package/src/hooks/handlers/index.ts +2 -6
  130. package/src/hooks/handlers/notification-hooks.ts +65 -0
  131. package/src/index.ts +1 -1
  132. package/src/init.ts +14 -54
  133. package/src/injection.ts +4 -3
  134. package/src/internal.ts +7 -9
  135. package/src/logger.ts +5 -5
  136. package/src/memory/__tests__/brain-links.test.js +13 -0
  137. package/src/memory/__tests__/brain-links.test.js.map +1 -1
  138. package/src/memory/__tests__/brain-retrieval.test.js +9 -0
  139. package/src/memory/__tests__/brain-retrieval.test.js.map +1 -1
  140. package/src/memory/__tests__/session-memory.test.js +16 -0
  141. package/src/memory/__tests__/session-memory.test.js.map +1 -1
  142. package/src/memory/brain-retrieval.ts +1 -1
  143. package/src/memory/engine-compat.ts +392 -25
  144. package/src/memory/index.ts +417 -4
  145. package/src/metrics/token-service.ts +4 -4
  146. package/src/migration/index.ts +1 -1
  147. package/src/paths.ts +340 -5
  148. package/src/routing/capability-matrix.ts +49 -49
  149. package/src/scaffold.ts +428 -70
  150. package/src/security/input-sanitization.ts +4 -4
  151. package/src/sessions/__tests__/session-grade.integration.test.js +9 -9
  152. package/src/sessions/__tests__/session-grade.integration.test.ts +9 -9
  153. package/src/sessions/__tests__/session-grade.test.js +10 -10
  154. package/src/sessions/__tests__/session-grade.test.js.map +1 -1
  155. package/src/sessions/__tests__/session-grade.test.ts +10 -10
  156. package/src/sessions/index.ts +12 -7
  157. package/src/sessions/session-grade.ts +4 -4
  158. package/src/skills/__tests__/dynamic-skill-generator.test.js +24 -26
  159. package/src/skills/__tests__/dynamic-skill-generator.test.js.map +1 -1
  160. package/src/skills/__tests__/dynamic-skill-generator.test.ts +24 -26
  161. package/src/skills/__tests__/routing-table.test.js +22 -22
  162. package/src/skills/__tests__/routing-table.test.js.map +1 -1
  163. package/src/skills/__tests__/routing-table.test.ts +23 -23
  164. package/src/skills/dynamic-skill-generator.ts +13 -24
  165. package/src/skills/routing-table.ts +4 -4
  166. package/src/store/__tests__/data-safety-central.test.js +8 -0
  167. package/src/store/__tests__/data-safety-central.test.js.map +1 -1
  168. package/src/store/__tests__/data-safety-central.test.ts +8 -0
  169. package/src/store/__tests__/safety-accessor.test.js +8 -0
  170. package/src/store/__tests__/safety-accessor.test.js.map +1 -1
  171. package/src/store/__tests__/safety-accessor.test.ts +8 -0
  172. package/src/store/provider.ts +2 -2
  173. package/src/store/sqlite.ts +2 -2
  174. package/src/store/tasks-schema.ts +2 -2
  175. package/src/system/__tests__/health.test.js +2 -2
  176. package/src/system/__tests__/health.test.js.map +1 -1
  177. package/src/system/archive-analytics.ts +1 -1
  178. package/src/system/health.ts +11 -6
  179. package/src/system/inject-generate.ts +20 -20
  180. package/src/system/runtime.ts +5 -4
  181. package/src/tasks/atomicity.ts +1 -1
  182. package/src/tasks/list.ts +1 -1
  183. package/src/tasks/task-ops.ts +415 -3
  184. package/src/tasks/update.ts +8 -0
  185. package/src/templates/parser.ts +1 -1
  186. package/src/ui/index.ts +4 -4
  187. package/src/upgrade.ts +3 -14
  188. package/src/validation/operation-gate-validators.ts +1 -1
  189. package/src/validation/operation-verification-gates.ts +3 -3
  190. package/src/validation/param-utils.ts +11 -10
  191. package/src/validation/validate-ops.ts +6 -6
  192. package/templates/CLEO-INJECTION.md +38 -110
  193. package/dist/adapters/adapter-registry.js +0 -64
  194. package/dist/adapters/adapter-registry.js.map +0 -1
  195. package/dist/adapters/discovery.js +0 -83
  196. package/dist/adapters/discovery.js.map +0 -1
  197. package/dist/adapters/index.js +0 -9
  198. package/dist/adapters/index.js.map +0 -1
  199. package/dist/adapters/manager.js +0 -260
  200. package/dist/adapters/manager.js.map +0 -1
  201. package/dist/admin/export-tasks.js +0 -171
  202. package/dist/admin/export-tasks.js.map +0 -1
  203. package/dist/admin/export.js +0 -103
  204. package/dist/admin/export.js.map +0 -1
  205. package/dist/admin/help.js +0 -106
  206. package/dist/admin/help.js.map +0 -1
  207. package/dist/admin/import-tasks.js +0 -182
  208. package/dist/admin/import-tasks.js.map +0 -1
  209. package/dist/admin/import.js +0 -129
  210. package/dist/admin/import.js.map +0 -1
  211. package/dist/admin/index.js +0 -13
  212. package/dist/admin/index.js.map +0 -1
  213. package/dist/adrs/find.js +0 -134
  214. package/dist/adrs/find.js.map +0 -1
  215. package/dist/adrs/index.js +0 -15
  216. package/dist/adrs/index.js.map +0 -1
  217. package/dist/adrs/link-pipeline.js +0 -160
  218. package/dist/adrs/link-pipeline.js.map +0 -1
  219. package/dist/adrs/list.js +0 -43
  220. package/dist/adrs/list.js.map +0 -1
  221. package/dist/adrs/parse.js +0 -51
  222. package/dist/adrs/parse.js.map +0 -1
  223. package/dist/adrs/show.js +0 -22
  224. package/dist/adrs/show.js.map +0 -1
  225. package/dist/adrs/sync.js +0 -188
  226. package/dist/adrs/sync.js.map +0 -1
  227. package/dist/adrs/types.js +0 -9
  228. package/dist/adrs/types.js.map +0 -1
  229. package/dist/adrs/validate.js +0 -57
  230. package/dist/adrs/validate.js.map +0 -1
  231. package/dist/agents/agent-registry.js +0 -288
  232. package/dist/agents/agent-registry.js.map +0 -1
  233. package/dist/agents/agent-schema.js +0 -85
  234. package/dist/agents/agent-schema.js.map +0 -1
  235. package/dist/agents/capacity.js +0 -116
  236. package/dist/agents/capacity.js.map +0 -1
  237. package/dist/agents/execution-learning.js +0 -474
  238. package/dist/agents/execution-learning.js.map +0 -1
  239. package/dist/agents/health-monitor.js +0 -217
  240. package/dist/agents/health-monitor.js.map +0 -1
  241. package/dist/agents/index.js +0 -29
  242. package/dist/agents/index.js.map +0 -1
  243. package/dist/agents/registry.js +0 -314
  244. package/dist/agents/registry.js.map +0 -1
  245. package/dist/agents/retry.js +0 -215
  246. package/dist/agents/retry.js.map +0 -1
  247. package/dist/audit-prune.js +0 -94
  248. package/dist/audit-prune.js.map +0 -1
  249. package/dist/audit.js +0 -68
  250. package/dist/audit.js.map +0 -1
  251. package/dist/backfill/index.js +0 -229
  252. package/dist/backfill/index.js.map +0 -1
  253. package/dist/bootstrap.js +0 -367
  254. package/dist/bootstrap.js.map +0 -1
  255. package/dist/caamp/adapter.js +0 -434
  256. package/dist/caamp/adapter.js.map +0 -1
  257. package/dist/caamp/capability-check.js +0 -38
  258. package/dist/caamp/capability-check.js.map +0 -1
  259. package/dist/caamp/index.js +0 -23
  260. package/dist/caamp/index.js.map +0 -1
  261. package/dist/caamp-init.js +0 -16
  262. package/dist/caamp-init.js.map +0 -1
  263. package/dist/cant/approval.js +0 -185
  264. package/dist/cant/approval.js.map +0 -1
  265. package/dist/cant/context-builder.js +0 -117
  266. package/dist/cant/context-builder.js.map +0 -1
  267. package/dist/cant/discretion.js +0 -116
  268. package/dist/cant/discretion.js.map +0 -1
  269. package/dist/cant/index.js +0 -23
  270. package/dist/cant/index.js.map +0 -1
  271. package/dist/cant/parallel-runner.js +0 -173
  272. package/dist/cant/parallel-runner.js.map +0 -1
  273. package/dist/cant/types.js +0 -11
  274. package/dist/cant/types.js.map +0 -1
  275. package/dist/cant/workflow-executor.js +0 -440
  276. package/dist/cant/workflow-executor.js.map +0 -1
  277. package/dist/cleo.js +0 -322
  278. package/dist/cleo.js.map +0 -1
  279. package/dist/codebase-map/analyzers/architecture.js +0 -130
  280. package/dist/codebase-map/analyzers/architecture.js.map +0 -1
  281. package/dist/codebase-map/analyzers/concerns.js +0 -122
  282. package/dist/codebase-map/analyzers/concerns.js.map +0 -1
  283. package/dist/codebase-map/analyzers/conventions.js +0 -149
  284. package/dist/codebase-map/analyzers/conventions.js.map +0 -1
  285. package/dist/codebase-map/analyzers/integrations.js +0 -108
  286. package/dist/codebase-map/analyzers/integrations.js.map +0 -1
  287. package/dist/codebase-map/analyzers/stack.js +0 -117
  288. package/dist/codebase-map/analyzers/stack.js.map +0 -1
  289. package/dist/codebase-map/analyzers/structure.js +0 -137
  290. package/dist/codebase-map/analyzers/structure.js.map +0 -1
  291. package/dist/codebase-map/analyzers/testing.js +0 -118
  292. package/dist/codebase-map/analyzers/testing.js.map +0 -1
  293. package/dist/codebase-map/index.js +0 -57
  294. package/dist/codebase-map/index.js.map +0 -1
  295. package/dist/codebase-map/store.js +0 -122
  296. package/dist/codebase-map/store.js.map +0 -1
  297. package/dist/codebase-map/summary.js +0 -152
  298. package/dist/codebase-map/summary.js.map +0 -1
  299. package/dist/compliance/index.js +0 -288
  300. package/dist/compliance/index.js.map +0 -1
  301. package/dist/compliance/protocol-enforcement.js +0 -332
  302. package/dist/compliance/protocol-enforcement.js.map +0 -1
  303. package/dist/compliance/protocol-rules.js +0 -786
  304. package/dist/compliance/protocol-rules.js.map +0 -1
  305. package/dist/compliance/protocol-types.js +0 -80
  306. package/dist/compliance/protocol-types.js.map +0 -1
  307. package/dist/compliance/store.js +0 -53
  308. package/dist/compliance/store.js.map +0 -1
  309. package/dist/conduit/conduit-client.js +0 -94
  310. package/dist/conduit/conduit-client.js.map +0 -1
  311. package/dist/conduit/factory.js +0 -35
  312. package/dist/conduit/factory.js.map +0 -1
  313. package/dist/conduit/http-transport.js +0 -165
  314. package/dist/conduit/http-transport.js.map +0 -1
  315. package/dist/conduit/index.js +0 -12
  316. package/dist/conduit/index.js.map +0 -1
  317. package/dist/config/build-config.js +0 -29
  318. package/dist/config/build-config.js.map +0 -1
  319. package/dist/config.js +0 -401
  320. package/dist/config.js.map +0 -1
  321. package/dist/constants.js +0 -18
  322. package/dist/constants.js.map +0 -1
  323. package/dist/context/index.js +0 -137
  324. package/dist/context/index.js.map +0 -1
  325. package/dist/crypto/credentials.js +0 -144
  326. package/dist/crypto/credentials.js.map +0 -1
  327. package/dist/engine-result.js +0 -12
  328. package/dist/engine-result.js.map +0 -1
  329. package/dist/error-catalog.js +0 -404
  330. package/dist/error-catalog.js.map +0 -1
  331. package/dist/error-registry.js +0 -393
  332. package/dist/error-registry.js.map +0 -1
  333. package/dist/errors.js +0 -167
  334. package/dist/errors.js.map +0 -1
  335. package/dist/hooks/handlers/agent-hooks.js +0 -106
  336. package/dist/hooks/handlers/agent-hooks.js.map +0 -1
  337. package/dist/hooks/handlers/context-hooks.js +0 -111
  338. package/dist/hooks/handlers/context-hooks.js.map +0 -1
  339. package/dist/hooks/handlers/error-hooks.js +0 -52
  340. package/dist/hooks/handlers/error-hooks.js.map +0 -1
  341. package/dist/hooks/handlers/file-hooks.js +0 -104
  342. package/dist/hooks/handlers/file-hooks.js.map +0 -1
  343. package/dist/hooks/handlers/handler-helpers.js +0 -61
  344. package/dist/hooks/handlers/handler-helpers.js.map +0 -1
  345. package/dist/hooks/handlers/index.js +0 -28
  346. package/dist/hooks/handlers/index.js.map +0 -1
  347. package/dist/hooks/handlers/mcp-hooks.d.ts +0 -48
  348. package/dist/hooks/handlers/mcp-hooks.d.ts.map +0 -1
  349. package/dist/hooks/handlers/mcp-hooks.js +0 -147
  350. package/dist/hooks/handlers/mcp-hooks.js.map +0 -1
  351. package/dist/hooks/handlers/memory-bridge-refresh.js +0 -42
  352. package/dist/hooks/handlers/memory-bridge-refresh.js.map +0 -1
  353. package/dist/hooks/handlers/session-hooks.js +0 -104
  354. package/dist/hooks/handlers/session-hooks.js.map +0 -1
  355. package/dist/hooks/handlers/task-hooks.js +0 -65
  356. package/dist/hooks/handlers/task-hooks.js.map +0 -1
  357. package/dist/hooks/handlers/work-capture-hooks.js +0 -165
  358. package/dist/hooks/handlers/work-capture-hooks.js.map +0 -1
  359. package/dist/hooks/index.js +0 -13
  360. package/dist/hooks/index.js.map +0 -1
  361. package/dist/hooks/payload-schemas.js +0 -220
  362. package/dist/hooks/payload-schemas.js.map +0 -1
  363. package/dist/hooks/provider-hooks.js +0 -66
  364. package/dist/hooks/provider-hooks.js.map +0 -1
  365. package/dist/hooks/registry.js +0 -229
  366. package/dist/hooks/registry.js.map +0 -1
  367. package/dist/hooks/types.js +0 -66
  368. package/dist/hooks/types.js.map +0 -1
  369. package/dist/hooks.js +0 -136
  370. package/dist/hooks.js.map +0 -1
  371. package/dist/init.js +0 -723
  372. package/dist/init.js.map +0 -1
  373. package/dist/inject/index.js +0 -82
  374. package/dist/inject/index.js.map +0 -1
  375. package/dist/injection.js +0 -343
  376. package/dist/injection.js.map +0 -1
  377. package/dist/intelligence/adaptive-validation.js +0 -497
  378. package/dist/intelligence/adaptive-validation.js.map +0 -1
  379. package/dist/intelligence/impact.js +0 -675
  380. package/dist/intelligence/impact.js.map +0 -1
  381. package/dist/intelligence/index.js +0 -22
  382. package/dist/intelligence/index.js.map +0 -1
  383. package/dist/intelligence/patterns.js +0 -492
  384. package/dist/intelligence/patterns.js.map +0 -1
  385. package/dist/intelligence/prediction.js +0 -499
  386. package/dist/intelligence/prediction.js.map +0 -1
  387. package/dist/intelligence/types.js +0 -13
  388. package/dist/intelligence/types.js.map +0 -1
  389. package/dist/internal.js +0 -286
  390. package/dist/internal.js.map +0 -1
  391. package/dist/issue/create.js +0 -121
  392. package/dist/issue/create.js.map +0 -1
  393. package/dist/issue/diagnostics.js +0 -59
  394. package/dist/issue/diagnostics.js.map +0 -1
  395. package/dist/issue/index.js +0 -10
  396. package/dist/issue/index.js.map +0 -1
  397. package/dist/issue/template-parser.js +0 -267
  398. package/dist/issue/template-parser.js.map +0 -1
  399. package/dist/json-schema-validator.js +0 -76
  400. package/dist/json-schema-validator.js.map +0 -1
  401. package/dist/lib/index.js +0 -10
  402. package/dist/lib/index.js.map +0 -1
  403. package/dist/lib/retry.js +0 -152
  404. package/dist/lib/retry.js.map +0 -1
  405. package/dist/lifecycle/chain-composition.js +0 -152
  406. package/dist/lifecycle/chain-composition.js.map +0 -1
  407. package/dist/lifecycle/chain-store.js +0 -246
  408. package/dist/lifecycle/chain-store.js.map +0 -1
  409. package/dist/lifecycle/consolidate-rcasd.js +0 -352
  410. package/dist/lifecycle/consolidate-rcasd.js.map +0 -1
  411. package/dist/lifecycle/default-chain.js +0 -167
  412. package/dist/lifecycle/default-chain.js.map +0 -1
  413. package/dist/lifecycle/evidence.js +0 -180
  414. package/dist/lifecycle/evidence.js.map +0 -1
  415. package/dist/lifecycle/frontmatter.js +0 -363
  416. package/dist/lifecycle/frontmatter.js.map +0 -1
  417. package/dist/lifecycle/index.js +0 -753
  418. package/dist/lifecycle/index.js.map +0 -1
  419. package/dist/lifecycle/pipeline.js +0 -656
  420. package/dist/lifecycle/pipeline.js.map +0 -1
  421. package/dist/lifecycle/rcasd-index.js +0 -326
  422. package/dist/lifecycle/rcasd-index.js.map +0 -1
  423. package/dist/lifecycle/rcasd-paths.js +0 -220
  424. package/dist/lifecycle/rcasd-paths.js.map +0 -1
  425. package/dist/lifecycle/resume.js +0 -864
  426. package/dist/lifecycle/resume.js.map +0 -1
  427. package/dist/lifecycle/stage-artifacts.js +0 -94
  428. package/dist/lifecycle/stage-artifacts.js.map +0 -1
  429. package/dist/lifecycle/stages.js +0 -534
  430. package/dist/lifecycle/stages.js.map +0 -1
  431. package/dist/lifecycle/state-machine.js +0 -516
  432. package/dist/lifecycle/state-machine.js.map +0 -1
  433. package/dist/lifecycle/tessera-engine.js +0 -249
  434. package/dist/lifecycle/tessera-engine.js.map +0 -1
  435. package/dist/logger.js +0 -140
  436. package/dist/logger.js.map +0 -1
  437. package/dist/mcp/index.d.ts +0 -42
  438. package/dist/mcp/index.d.ts.map +0 -1
  439. package/dist/mcp/index.js +0 -146
  440. package/dist/mcp/index.js.map +0 -1
  441. package/dist/memory/auto-extract.js +0 -177
  442. package/dist/memory/auto-extract.js.map +0 -1
  443. package/dist/memory/brain-embedding.js +0 -66
  444. package/dist/memory/brain-embedding.js.map +0 -1
  445. package/dist/memory/brain-lifecycle.js +0 -298
  446. package/dist/memory/brain-lifecycle.js.map +0 -1
  447. package/dist/memory/brain-links.js +0 -148
  448. package/dist/memory/brain-links.js.map +0 -1
  449. package/dist/memory/brain-maintenance.js +0 -98
  450. package/dist/memory/brain-maintenance.js.map +0 -1
  451. package/dist/memory/brain-migration.js +0 -149
  452. package/dist/memory/brain-migration.js.map +0 -1
  453. package/dist/memory/brain-reasoning.js +0 -215
  454. package/dist/memory/brain-reasoning.js.map +0 -1
  455. package/dist/memory/brain-retrieval.js +0 -526
  456. package/dist/memory/brain-retrieval.js.map +0 -1
  457. package/dist/memory/brain-row-types.js +0 -10
  458. package/dist/memory/brain-row-types.js.map +0 -1
  459. package/dist/memory/brain-search.js +0 -519
  460. package/dist/memory/brain-search.js.map +0 -1
  461. package/dist/memory/brain-similarity.js +0 -145
  462. package/dist/memory/brain-similarity.js.map +0 -1
  463. package/dist/memory/claude-mem-migration.js +0 -277
  464. package/dist/memory/claude-mem-migration.js.map +0 -1
  465. package/dist/memory/decisions.js +0 -148
  466. package/dist/memory/decisions.js.map +0 -1
  467. package/dist/memory/embedding-local.js +0 -97
  468. package/dist/memory/embedding-local.js.map +0 -1
  469. package/dist/memory/embedding-queue.js +0 -271
  470. package/dist/memory/embedding-queue.js.map +0 -1
  471. package/dist/memory/embedding-worker.js +0 -58
  472. package/dist/memory/embedding-worker.js.map +0 -1
  473. package/dist/memory/engine-compat.js +0 -1030
  474. package/dist/memory/engine-compat.js.map +0 -1
  475. package/dist/memory/index.js +0 -773
  476. package/dist/memory/index.js.map +0 -1
  477. package/dist/memory/learnings.js +0 -121
  478. package/dist/memory/learnings.js.map +0 -1
  479. package/dist/memory/memory-bridge.js +0 -370
  480. package/dist/memory/memory-bridge.js.map +0 -1
  481. package/dist/memory/patterns.js +0 -122
  482. package/dist/memory/patterns.js.map +0 -1
  483. package/dist/memory/pipeline-manifest-sqlite.js +0 -975
  484. package/dist/memory/pipeline-manifest-sqlite.js.map +0 -1
  485. package/dist/memory/session-memory.js +0 -331
  486. package/dist/memory/session-memory.js.map +0 -1
  487. package/dist/metrics/ab-test.js +0 -260
  488. package/dist/metrics/ab-test.js.map +0 -1
  489. package/dist/metrics/aggregation.js +0 -363
  490. package/dist/metrics/aggregation.js.map +0 -1
  491. package/dist/metrics/common.js +0 -64
  492. package/dist/metrics/common.js.map +0 -1
  493. package/dist/metrics/enums.js +0 -78
  494. package/dist/metrics/enums.js.map +0 -1
  495. package/dist/metrics/index.js +0 -19
  496. package/dist/metrics/index.js.map +0 -1
  497. package/dist/metrics/model-provider-registry.js +0 -88
  498. package/dist/metrics/model-provider-registry.js.map +0 -1
  499. package/dist/metrics/otel-integration.js +0 -263
  500. package/dist/metrics/otel-integration.js.map +0 -1
  501. package/dist/metrics/provider-detection.js +0 -103
  502. package/dist/metrics/provider-detection.js.map +0 -1
  503. package/dist/metrics/token-estimation.js +0 -253
  504. package/dist/metrics/token-estimation.js.map +0 -1
  505. package/dist/metrics/token-service.js +0 -450
  506. package/dist/metrics/token-service.js.map +0 -1
  507. package/dist/migration/agent-outputs.js +0 -316
  508. package/dist/migration/agent-outputs.js.map +0 -1
  509. package/dist/migration/checksum.js +0 -92
  510. package/dist/migration/checksum.js.map +0 -1
  511. package/dist/migration/index.js +0 -282
  512. package/dist/migration/index.js.map +0 -1
  513. package/dist/migration/logger.js +0 -360
  514. package/dist/migration/logger.js.map +0 -1
  515. package/dist/migration/preflight.js +0 -9
  516. package/dist/migration/preflight.js.map +0 -1
  517. package/dist/migration/state.js +0 -421
  518. package/dist/migration/state.js.map +0 -1
  519. package/dist/migration/validate.js +0 -241
  520. package/dist/migration/validate.js.map +0 -1
  521. package/dist/mvi-helpers.js +0 -74
  522. package/dist/mvi-helpers.js.map +0 -1
  523. package/dist/nexus/deps.js +0 -375
  524. package/dist/nexus/deps.js.map +0 -1
  525. package/dist/nexus/discover.js +0 -288
  526. package/dist/nexus/discover.js.map +0 -1
  527. package/dist/nexus/hash.js +0 -10
  528. package/dist/nexus/hash.js.map +0 -1
  529. package/dist/nexus/index.js +0 -40
  530. package/dist/nexus/index.js.map +0 -1
  531. package/dist/nexus/migrate-json-to-sqlite.js +0 -115
  532. package/dist/nexus/migrate-json-to-sqlite.js.map +0 -1
  533. package/dist/nexus/permissions.js +0 -105
  534. package/dist/nexus/permissions.js.map +0 -1
  535. package/dist/nexus/query.js +0 -175
  536. package/dist/nexus/query.js.map +0 -1
  537. package/dist/nexus/registry.js +0 -584
  538. package/dist/nexus/registry.js.map +0 -1
  539. package/dist/nexus/sharing/index.js +0 -288
  540. package/dist/nexus/sharing/index.js.map +0 -1
  541. package/dist/nexus/transfer-types.js +0 -8
  542. package/dist/nexus/transfer-types.js.map +0 -1
  543. package/dist/nexus/transfer.js +0 -263
  544. package/dist/nexus/transfer.js.map +0 -1
  545. package/dist/nexus/workspace.js +0 -355
  546. package/dist/nexus/workspace.js.map +0 -1
  547. package/dist/observability/index.js +0 -103
  548. package/dist/observability/index.js.map +0 -1
  549. package/dist/observability/log-filter.js +0 -63
  550. package/dist/observability/log-filter.js.map +0 -1
  551. package/dist/observability/log-parser.js +0 -99
  552. package/dist/observability/log-parser.js.map +0 -1
  553. package/dist/observability/log-reader.js +0 -139
  554. package/dist/observability/log-reader.js.map +0 -1
  555. package/dist/observability/types.js +0 -19
  556. package/dist/observability/types.js.map +0 -1
  557. package/dist/orchestration/analyze.js +0 -107
  558. package/dist/orchestration/analyze.js.map +0 -1
  559. package/dist/orchestration/bootstrap.js +0 -132
  560. package/dist/orchestration/bootstrap.js.map +0 -1
  561. package/dist/orchestration/context.js +0 -56
  562. package/dist/orchestration/context.js.map +0 -1
  563. package/dist/orchestration/critical-path.js +0 -100
  564. package/dist/orchestration/critical-path.js.map +0 -1
  565. package/dist/orchestration/index.js +0 -286
  566. package/dist/orchestration/index.js.map +0 -1
  567. package/dist/orchestration/parallel.js +0 -89
  568. package/dist/orchestration/parallel.js.map +0 -1
  569. package/dist/orchestration/protocol-validators.js +0 -524
  570. package/dist/orchestration/protocol-validators.js.map +0 -1
  571. package/dist/orchestration/skill-ops.js +0 -98
  572. package/dist/orchestration/skill-ops.js.map +0 -1
  573. package/dist/orchestration/status.js +0 -107
  574. package/dist/orchestration/status.js.map +0 -1
  575. package/dist/orchestration/unblock.js +0 -103
  576. package/dist/orchestration/unblock.js.map +0 -1
  577. package/dist/orchestration/validate-spawn.js +0 -67
  578. package/dist/orchestration/validate-spawn.js.map +0 -1
  579. package/dist/orchestration/waves.js +0 -86
  580. package/dist/orchestration/waves.js.map +0 -1
  581. package/dist/otel/index.js +0 -163
  582. package/dist/otel/index.js.map +0 -1
  583. package/dist/output.js +0 -164
  584. package/dist/output.js.map +0 -1
  585. package/dist/pagination.js +0 -64
  586. package/dist/pagination.js.map +0 -1
  587. package/dist/paths.js +0 -337
  588. package/dist/paths.js.map +0 -1
  589. package/dist/phases/deps.js +0 -372
  590. package/dist/phases/deps.js.map +0 -1
  591. package/dist/phases/index.js +0 -349
  592. package/dist/phases/index.js.map +0 -1
  593. package/dist/pipeline/index.js +0 -10
  594. package/dist/pipeline/index.js.map +0 -1
  595. package/dist/pipeline/phase.js +0 -45
  596. package/dist/pipeline/phase.js.map +0 -1
  597. package/dist/platform.js +0 -211
  598. package/dist/platform.js.map +0 -1
  599. package/dist/project-info.js +0 -84
  600. package/dist/project-info.js.map +0 -1
  601. package/dist/reconciliation/index.js +0 -10
  602. package/dist/reconciliation/index.js.map +0 -1
  603. package/dist/reconciliation/link-store.js +0 -129
  604. package/dist/reconciliation/link-store.js.map +0 -1
  605. package/dist/reconciliation/reconciliation-engine.js +0 -298
  606. package/dist/reconciliation/reconciliation-engine.js.map +0 -1
  607. package/dist/release/artifacts.js +0 -427
  608. package/dist/release/artifacts.js.map +0 -1
  609. package/dist/release/changelog-writer.js +0 -151
  610. package/dist/release/changelog-writer.js.map +0 -1
  611. package/dist/release/channel.js +0 -144
  612. package/dist/release/channel.js.map +0 -1
  613. package/dist/release/ci.js +0 -166
  614. package/dist/release/ci.js.map +0 -1
  615. package/dist/release/github-pr.js +0 -225
  616. package/dist/release/github-pr.js.map +0 -1
  617. package/dist/release/guards.js +0 -116
  618. package/dist/release/guards.js.map +0 -1
  619. package/dist/release/index.js +0 -22
  620. package/dist/release/index.js.map +0 -1
  621. package/dist/release/release-config.js +0 -158
  622. package/dist/release/release-config.js.map +0 -1
  623. package/dist/release/release-manifest.js +0 -1019
  624. package/dist/release/release-manifest.js.map +0 -1
  625. package/dist/release/version-bump.js +0 -255
  626. package/dist/release/version-bump.js.map +0 -1
  627. package/dist/remote/index.js +0 -257
  628. package/dist/remote/index.js.map +0 -1
  629. package/dist/repair.js +0 -130
  630. package/dist/repair.js.map +0 -1
  631. package/dist/research/index.js +0 -2
  632. package/dist/research/index.js.map +0 -1
  633. package/dist/roadmap/index.js +0 -59
  634. package/dist/roadmap/index.js.map +0 -1
  635. package/dist/routing/capability-matrix.js +0 -1557
  636. package/dist/routing/capability-matrix.js.map +0 -1
  637. package/dist/routing/index.js +0 -9
  638. package/dist/routing/index.js.map +0 -1
  639. package/dist/scaffold.js +0 -1178
  640. package/dist/scaffold.js.map +0 -1
  641. package/dist/schema-management.js +0 -295
  642. package/dist/schema-management.js.map +0 -1
  643. package/dist/security/index.js +0 -9
  644. package/dist/security/index.js.map +0 -1
  645. package/dist/security/input-sanitization.js +0 -321
  646. package/dist/security/input-sanitization.js.map +0 -1
  647. package/dist/sequence/index.js +0 -295
  648. package/dist/sequence/index.js.map +0 -1
  649. package/dist/sessions/assumptions.js +0 -54
  650. package/dist/sessions/assumptions.js.map +0 -1
  651. package/dist/sessions/briefing.js +0 -377
  652. package/dist/sessions/briefing.js.map +0 -1
  653. package/dist/sessions/context-alert.js +0 -222
  654. package/dist/sessions/context-alert.js.map +0 -1
  655. package/dist/sessions/context-inject.js +0 -61
  656. package/dist/sessions/context-inject.js.map +0 -1
  657. package/dist/sessions/context-monitor.js +0 -98
  658. package/dist/sessions/context-monitor.js.map +0 -1
  659. package/dist/sessions/decisions.js +0 -65
  660. package/dist/sessions/decisions.js.map +0 -1
  661. package/dist/sessions/find.js +0 -65
  662. package/dist/sessions/find.js.map +0 -1
  663. package/dist/sessions/handoff.js +0 -328
  664. package/dist/sessions/handoff.js.map +0 -1
  665. package/dist/sessions/hitl-warnings.js +0 -254
  666. package/dist/sessions/hitl-warnings.js.map +0 -1
  667. package/dist/sessions/index.js +0 -321
  668. package/dist/sessions/index.js.map +0 -1
  669. package/dist/sessions/session-archive.js +0 -40
  670. package/dist/sessions/session-archive.js.map +0 -1
  671. package/dist/sessions/session-cleanup.js +0 -59
  672. package/dist/sessions/session-cleanup.js.map +0 -1
  673. package/dist/sessions/session-drift.js +0 -134
  674. package/dist/sessions/session-drift.js.map +0 -1
  675. package/dist/sessions/session-enforcement.js +0 -144
  676. package/dist/sessions/session-enforcement.js.map +0 -1
  677. package/dist/sessions/session-grade.js +0 -253
  678. package/dist/sessions/session-grade.js.map +0 -1
  679. package/dist/sessions/session-history.js +0 -42
  680. package/dist/sessions/session-history.js.map +0 -1
  681. package/dist/sessions/session-id.js +0 -81
  682. package/dist/sessions/session-id.js.map +0 -1
  683. package/dist/sessions/session-memory-bridge.js +0 -52
  684. package/dist/sessions/session-memory-bridge.js.map +0 -1
  685. package/dist/sessions/session-show.js +0 -24
  686. package/dist/sessions/session-show.js.map +0 -1
  687. package/dist/sessions/session-stats.js +0 -69
  688. package/dist/sessions/session-stats.js.map +0 -1
  689. package/dist/sessions/session-suspend.js +0 -39
  690. package/dist/sessions/session-suspend.js.map +0 -1
  691. package/dist/sessions/session-switch.js +0 -51
  692. package/dist/sessions/session-switch.js.map +0 -1
  693. package/dist/sessions/session-view.js +0 -76
  694. package/dist/sessions/session-view.js.map +0 -1
  695. package/dist/sessions/snapshot.js +0 -213
  696. package/dist/sessions/snapshot.js.map +0 -1
  697. package/dist/sessions/statusline-setup.js +0 -85
  698. package/dist/sessions/statusline-setup.js.map +0 -1
  699. package/dist/sessions/types.js +0 -8
  700. package/dist/sessions/types.js.map +0 -1
  701. package/dist/signaldock/claude-code-transport.d.ts +0 -34
  702. package/dist/signaldock/claude-code-transport.d.ts.map +0 -1
  703. package/dist/signaldock/claude-code-transport.js +0 -107
  704. package/dist/signaldock/claude-code-transport.js.map +0 -1
  705. package/dist/signaldock/factory.d.ts +0 -22
  706. package/dist/signaldock/factory.d.ts.map +0 -1
  707. package/dist/signaldock/factory.js +0 -25
  708. package/dist/signaldock/factory.js.map +0 -1
  709. package/dist/signaldock/index.d.ts +0 -13
  710. package/dist/signaldock/index.d.ts.map +0 -1
  711. package/dist/signaldock/index.js +0 -9
  712. package/dist/signaldock/index.js.map +0 -1
  713. package/dist/signaldock/signaldock-transport.d.ts +0 -45
  714. package/dist/signaldock/signaldock-transport.d.ts.map +0 -1
  715. package/dist/signaldock/signaldock-transport.js +0 -122
  716. package/dist/signaldock/signaldock-transport.js.map +0 -1
  717. package/dist/signaldock/transport.d.ts +0 -49
  718. package/dist/signaldock/transport.d.ts.map +0 -1
  719. package/dist/signaldock/transport.js +0 -11
  720. package/dist/signaldock/transport.js.map +0 -1
  721. package/dist/signaldock/types.d.ts +0 -88
  722. package/dist/signaldock/types.d.ts.map +0 -1
  723. package/dist/signaldock/types.js +0 -11
  724. package/dist/signaldock/types.js.map +0 -1
  725. package/dist/skills/agents/config.js +0 -94
  726. package/dist/skills/agents/config.js.map +0 -1
  727. package/dist/skills/agents/install.js +0 -116
  728. package/dist/skills/agents/install.js.map +0 -1
  729. package/dist/skills/agents/registry.js +0 -161
  730. package/dist/skills/agents/registry.js.map +0 -1
  731. package/dist/skills/discovery.js +0 -333
  732. package/dist/skills/discovery.js.map +0 -1
  733. package/dist/skills/dispatch.js +0 -347
  734. package/dist/skills/dispatch.js.map +0 -1
  735. package/dist/skills/dynamic-skill-generator.js +0 -100
  736. package/dist/skills/dynamic-skill-generator.js.map +0 -1
  737. package/dist/skills/index.js +0 -44
  738. package/dist/skills/index.js.map +0 -1
  739. package/dist/skills/injection/subagent.js +0 -195
  740. package/dist/skills/injection/subagent.js.map +0 -1
  741. package/dist/skills/injection/token.js +0 -260
  742. package/dist/skills/injection/token.js.map +0 -1
  743. package/dist/skills/install.js +0 -40
  744. package/dist/skills/install.js.map +0 -1
  745. package/dist/skills/manifests/contribution.js +0 -175
  746. package/dist/skills/manifests/contribution.js.map +0 -1
  747. package/dist/skills/manifests/research.js +0 -281
  748. package/dist/skills/manifests/research.js.map +0 -1
  749. package/dist/skills/manifests/resolver.js +0 -146
  750. package/dist/skills/manifests/resolver.js.map +0 -1
  751. package/dist/skills/marketplace.js +0 -90
  752. package/dist/skills/marketplace.js.map +0 -1
  753. package/dist/skills/orchestrator/spawn.js +0 -178
  754. package/dist/skills/orchestrator/spawn.js.map +0 -1
  755. package/dist/skills/orchestrator/startup.js +0 -451
  756. package/dist/skills/orchestrator/startup.js.map +0 -1
  757. package/dist/skills/orchestrator/validator.js +0 -301
  758. package/dist/skills/orchestrator/validator.js.map +0 -1
  759. package/dist/skills/precedence-integration.js +0 -73
  760. package/dist/skills/precedence-integration.js.map +0 -1
  761. package/dist/skills/precedence-types.js +0 -16
  762. package/dist/skills/precedence-types.js.map +0 -1
  763. package/dist/skills/routing-table.js +0 -63
  764. package/dist/skills/routing-table.js.map +0 -1
  765. package/dist/skills/skill-paths.js +0 -220
  766. package/dist/skills/skill-paths.js.map +0 -1
  767. package/dist/skills/test-utility.js +0 -55
  768. package/dist/skills/test-utility.js.map +0 -1
  769. package/dist/skills/types.js +0 -118
  770. package/dist/skills/types.js.map +0 -1
  771. package/dist/skills/validation.js +0 -183
  772. package/dist/skills/validation.js.map +0 -1
  773. package/dist/skills/version.js +0 -57
  774. package/dist/skills/version.js.map +0 -1
  775. package/dist/snapshot/index.js +0 -188
  776. package/dist/snapshot/index.js.map +0 -1
  777. package/dist/spawn/adapter-registry.js +0 -246
  778. package/dist/spawn/adapter-registry.js.map +0 -1
  779. package/dist/spawn/index.js +0 -10
  780. package/dist/spawn/index.js.map +0 -1
  781. package/dist/stats/index.js +0 -343
  782. package/dist/stats/index.js.map +0 -1
  783. package/dist/stats/workflow-telemetry.js +0 -400
  784. package/dist/stats/workflow-telemetry.js.map +0 -1
  785. package/dist/sticky/archive.js +0 -47
  786. package/dist/sticky/archive.js.map +0 -1
  787. package/dist/sticky/convert.js +0 -235
  788. package/dist/sticky/convert.js.map +0 -1
  789. package/dist/sticky/create.js +0 -48
  790. package/dist/sticky/create.js.map +0 -1
  791. package/dist/sticky/id.js +0 -35
  792. package/dist/sticky/id.js.map +0 -1
  793. package/dist/sticky/index.js +0 -16
  794. package/dist/sticky/index.js.map +0 -1
  795. package/dist/sticky/list.js +0 -44
  796. package/dist/sticky/list.js.map +0 -1
  797. package/dist/sticky/purge.js +0 -45
  798. package/dist/sticky/purge.js.map +0 -1
  799. package/dist/sticky/show.js +0 -42
  800. package/dist/sticky/show.js.map +0 -1
  801. package/dist/sticky/types.js +0 -10
  802. package/dist/sticky/types.js.map +0 -1
  803. package/dist/store/agent-registry-accessor.js +0 -169
  804. package/dist/store/agent-registry-accessor.js.map +0 -1
  805. package/dist/store/atomic.js +0 -167
  806. package/dist/store/atomic.js.map +0 -1
  807. package/dist/store/backup.js +0 -94
  808. package/dist/store/backup.js.map +0 -1
  809. package/dist/store/brain-accessor.js +0 -397
  810. package/dist/store/brain-accessor.js.map +0 -1
  811. package/dist/store/brain-schema.js +0 -215
  812. package/dist/store/brain-schema.js.map +0 -1
  813. package/dist/store/brain-sqlite.js +0 -222
  814. package/dist/store/brain-sqlite.js.map +0 -1
  815. package/dist/store/cache.js +0 -168
  816. package/dist/store/cache.js.map +0 -1
  817. package/dist/store/chain-schema.js +0 -51
  818. package/dist/store/chain-schema.js.map +0 -1
  819. package/dist/store/converters.js +0 -124
  820. package/dist/store/converters.js.map +0 -1
  821. package/dist/store/cross-db-cleanup.js +0 -169
  822. package/dist/store/cross-db-cleanup.js.map +0 -1
  823. package/dist/store/data-accessor.js +0 -26
  824. package/dist/store/data-accessor.js.map +0 -1
  825. package/dist/store/data-safety-central.js +0 -269
  826. package/dist/store/data-safety-central.js.map +0 -1
  827. package/dist/store/data-safety.js +0 -274
  828. package/dist/store/data-safety.js.map +0 -1
  829. package/dist/store/db-helpers.js +0 -224
  830. package/dist/store/db-helpers.js.map +0 -1
  831. package/dist/store/export.js +0 -155
  832. package/dist/store/export.js.map +0 -1
  833. package/dist/store/file-utils.js +0 -270
  834. package/dist/store/file-utils.js.map +0 -1
  835. package/dist/store/git-checkpoint.js +0 -365
  836. package/dist/store/git-checkpoint.js.map +0 -1
  837. package/dist/store/import-logging.js +0 -139
  838. package/dist/store/import-logging.js.map +0 -1
  839. package/dist/store/import-remap.js +0 -145
  840. package/dist/store/import-remap.js.map +0 -1
  841. package/dist/store/import-sort.js +0 -121
  842. package/dist/store/import-sort.js.map +0 -1
  843. package/dist/store/index.js +0 -28
  844. package/dist/store/index.js.map +0 -1
  845. package/dist/store/json.js +0 -208
  846. package/dist/store/json.js.map +0 -1
  847. package/dist/store/lifecycle-store.js +0 -249
  848. package/dist/store/lifecycle-store.js.map +0 -1
  849. package/dist/store/lock.js +0 -70
  850. package/dist/store/lock.js.map +0 -1
  851. package/dist/store/migration-manager.js +0 -151
  852. package/dist/store/migration-manager.js.map +0 -1
  853. package/dist/store/migration-sqlite.js +0 -676
  854. package/dist/store/migration-sqlite.js.map +0 -1
  855. package/dist/store/nexus-schema.js +0 -62
  856. package/dist/store/nexus-schema.js.map +0 -1
  857. package/dist/store/nexus-sqlite.js +0 -217
  858. package/dist/store/nexus-sqlite.js.map +0 -1
  859. package/dist/store/nexus-validation-schemas.js +0 -40
  860. package/dist/store/nexus-validation-schemas.js.map +0 -1
  861. package/dist/store/parsers.js +0 -37
  862. package/dist/store/parsers.js.map +0 -1
  863. package/dist/store/project-detect.js +0 -457
  864. package/dist/store/project-detect.js.map +0 -1
  865. package/dist/store/provider.js +0 -101
  866. package/dist/store/provider.js.map +0 -1
  867. package/dist/store/safety-data-accessor.js +0 -257
  868. package/dist/store/safety-data-accessor.js.map +0 -1
  869. package/dist/store/schema.js +0 -7
  870. package/dist/store/schema.js.map +0 -1
  871. package/dist/store/session-store.js +0 -219
  872. package/dist/store/session-store.js.map +0 -1
  873. package/dist/store/signaldock-sqlite.js +0 -178
  874. package/dist/store/signaldock-sqlite.js.map +0 -1
  875. package/dist/store/sqlite-backup.js +0 -105
  876. package/dist/store/sqlite-backup.js.map +0 -1
  877. package/dist/store/sqlite-data-accessor.js +0 -784
  878. package/dist/store/sqlite-data-accessor.js.map +0 -1
  879. package/dist/store/sqlite.js +0 -465
  880. package/dist/store/sqlite.js.map +0 -1
  881. package/dist/store/status-registry.js +0 -8
  882. package/dist/store/status-registry.js.map +0 -1
  883. package/dist/store/task-store.js +0 -350
  884. package/dist/store/task-store.js.map +0 -1
  885. package/dist/store/tasks-schema.js +0 -637
  886. package/dist/store/tasks-schema.js.map +0 -1
  887. package/dist/store/typed-query.js +0 -15
  888. package/dist/store/typed-query.js.map +0 -1
  889. package/dist/store/validation-schemas.js +0 -278
  890. package/dist/store/validation-schemas.js.map +0 -1
  891. package/dist/system/archive-analytics.js +0 -277
  892. package/dist/system/archive-analytics.js.map +0 -1
  893. package/dist/system/archive-stats.js +0 -64
  894. package/dist/system/archive-stats.js.map +0 -1
  895. package/dist/system/audit.js +0 -145
  896. package/dist/system/audit.js.map +0 -1
  897. package/dist/system/backup.js +0 -141
  898. package/dist/system/backup.js.map +0 -1
  899. package/dist/system/cleanup.js +0 -134
  900. package/dist/system/cleanup.js.map +0 -1
  901. package/dist/system/health.js +0 -1089
  902. package/dist/system/health.js.map +0 -1
  903. package/dist/system/index.js +0 -18
  904. package/dist/system/index.js.map +0 -1
  905. package/dist/system/inject-generate.js +0 -122
  906. package/dist/system/inject-generate.js.map +0 -1
  907. package/dist/system/labels.js +0 -38
  908. package/dist/system/labels.js.map +0 -1
  909. package/dist/system/metrics.js +0 -61
  910. package/dist/system/metrics.js.map +0 -1
  911. package/dist/system/migrate.js +0 -43
  912. package/dist/system/migrate.js.map +0 -1
  913. package/dist/system/platform-paths.js +0 -80
  914. package/dist/system/platform-paths.js.map +0 -1
  915. package/dist/system/runtime.js +0 -161
  916. package/dist/system/runtime.js.map +0 -1
  917. package/dist/system/safestop.js +0 -99
  918. package/dist/system/safestop.js.map +0 -1
  919. package/dist/system/storage-preflight.js +0 -123
  920. package/dist/system/storage-preflight.js.map +0 -1
  921. package/dist/task-work/index.js +0 -159
  922. package/dist/task-work/index.js.map +0 -1
  923. package/dist/tasks/add.js +0 -661
  924. package/dist/tasks/add.js.map +0 -1
  925. package/dist/tasks/analyze.js +0 -85
  926. package/dist/tasks/analyze.js.map +0 -1
  927. package/dist/tasks/archive.js +0 -90
  928. package/dist/tasks/archive.js.map +0 -1
  929. package/dist/tasks/atomicity.js +0 -83
  930. package/dist/tasks/atomicity.js.map +0 -1
  931. package/dist/tasks/cancel-ops.js +0 -83
  932. package/dist/tasks/cancel-ops.js.map +0 -1
  933. package/dist/tasks/complete.js +0 -211
  934. package/dist/tasks/complete.js.map +0 -1
  935. package/dist/tasks/crossref-extract.js +0 -73
  936. package/dist/tasks/crossref-extract.js.map +0 -1
  937. package/dist/tasks/delete-preview.js +0 -192
  938. package/dist/tasks/delete-preview.js.map +0 -1
  939. package/dist/tasks/delete.js +0 -120
  940. package/dist/tasks/delete.js.map +0 -1
  941. package/dist/tasks/deletion-strategy.js +0 -200
  942. package/dist/tasks/deletion-strategy.js.map +0 -1
  943. package/dist/tasks/dependency-check.js +0 -278
  944. package/dist/tasks/dependency-check.js.map +0 -1
  945. package/dist/tasks/deps-ready.js +0 -32
  946. package/dist/tasks/deps-ready.js.map +0 -1
  947. package/dist/tasks/enforcement.js +0 -86
  948. package/dist/tasks/enforcement.js.map +0 -1
  949. package/dist/tasks/epic-enforcement.js +0 -294
  950. package/dist/tasks/epic-enforcement.js.map +0 -1
  951. package/dist/tasks/find.js +0 -154
  952. package/dist/tasks/find.js.map +0 -1
  953. package/dist/tasks/graph-cache.js +0 -127
  954. package/dist/tasks/graph-cache.js.map +0 -1
  955. package/dist/tasks/graph-ops.js +0 -171
  956. package/dist/tasks/graph-ops.js.map +0 -1
  957. package/dist/tasks/graph-rag.js +0 -328
  958. package/dist/tasks/graph-rag.js.map +0 -1
  959. package/dist/tasks/hierarchy-policy.js +0 -149
  960. package/dist/tasks/hierarchy-policy.js.map +0 -1
  961. package/dist/tasks/hierarchy.js +0 -185
  962. package/dist/tasks/hierarchy.js.map +0 -1
  963. package/dist/tasks/id-generator.js +0 -65
  964. package/dist/tasks/id-generator.js.map +0 -1
  965. package/dist/tasks/index.js +0 -14
  966. package/dist/tasks/index.js.map +0 -1
  967. package/dist/tasks/labels.js +0 -52
  968. package/dist/tasks/labels.js.map +0 -1
  969. package/dist/tasks/list.js +0 -75
  970. package/dist/tasks/list.js.map +0 -1
  971. package/dist/tasks/phase-tracking.js +0 -133
  972. package/dist/tasks/phase-tracking.js.map +0 -1
  973. package/dist/tasks/pipeline-stage.js +0 -248
  974. package/dist/tasks/pipeline-stage.js.map +0 -1
  975. package/dist/tasks/plan.js +0 -268
  976. package/dist/tasks/plan.js.map +0 -1
  977. package/dist/tasks/relates.js +0 -89
  978. package/dist/tasks/relates.js.map +0 -1
  979. package/dist/tasks/show.js +0 -80
  980. package/dist/tasks/show.js.map +0 -1
  981. package/dist/tasks/size-weighting.js +0 -86
  982. package/dist/tasks/size-weighting.js.map +0 -1
  983. package/dist/tasks/staleness.js +0 -86
  984. package/dist/tasks/staleness.js.map +0 -1
  985. package/dist/tasks/task-ops.js +0 -1340
  986. package/dist/tasks/task-ops.js.map +0 -1
  987. package/dist/tasks/update.js +0 -271
  988. package/dist/tasks/update.js.map +0 -1
  989. package/dist/templates/index.js +0 -10
  990. package/dist/templates/index.js.map +0 -1
  991. package/dist/templates/parser.js +0 -254
  992. package/dist/templates/parser.js.map +0 -1
  993. package/dist/ui/aliases.js +0 -153
  994. package/dist/ui/aliases.js.map +0 -1
  995. package/dist/ui/changelog.js +0 -184
  996. package/dist/ui/changelog.js.map +0 -1
  997. package/dist/ui/command-registry.js +0 -168
  998. package/dist/ui/command-registry.js.map +0 -1
  999. package/dist/ui/flags.js +0 -94
  1000. package/dist/ui/flags.js.map +0 -1
  1001. package/dist/ui/index.js +0 -24
  1002. package/dist/ui/index.js.map +0 -1
  1003. package/dist/upgrade.js +0 -1159
  1004. package/dist/upgrade.js.map +0 -1
  1005. package/dist/validation/chain-validation.js +0 -146
  1006. package/dist/validation/chain-validation.js.map +0 -1
  1007. package/dist/validation/compliance.js +0 -155
  1008. package/dist/validation/compliance.js.map +0 -1
  1009. package/dist/validation/docs-sync.js +0 -212
  1010. package/dist/validation/docs-sync.js.map +0 -1
  1011. package/dist/validation/doctor/checks.js +0 -1069
  1012. package/dist/validation/doctor/checks.js.map +0 -1
  1013. package/dist/validation/doctor/index.js +0 -9
  1014. package/dist/validation/doctor/index.js.map +0 -1
  1015. package/dist/validation/doctor/project-cache.js +0 -160
  1016. package/dist/validation/doctor/project-cache.js.map +0 -1
  1017. package/dist/validation/doctor/utils.js +0 -155
  1018. package/dist/validation/doctor/utils.js.map +0 -1
  1019. package/dist/validation/engine.js +0 -902
  1020. package/dist/validation/engine.js.map +0 -1
  1021. package/dist/validation/gap-check.js +0 -175
  1022. package/dist/validation/gap-check.js.map +0 -1
  1023. package/dist/validation/index.js +0 -40
  1024. package/dist/validation/index.js.map +0 -1
  1025. package/dist/validation/manifest.js +0 -237
  1026. package/dist/validation/manifest.js.map +0 -1
  1027. package/dist/validation/operation-gate-validators.js +0 -724
  1028. package/dist/validation/operation-gate-validators.js.map +0 -1
  1029. package/dist/validation/operation-verification-gates.js +0 -532
  1030. package/dist/validation/operation-verification-gates.js.map +0 -1
  1031. package/dist/validation/param-utils.js +0 -139
  1032. package/dist/validation/param-utils.js.map +0 -1
  1033. package/dist/validation/protocol-common.js +0 -300
  1034. package/dist/validation/protocol-common.js.map +0 -1
  1035. package/dist/validation/protocols/consensus.js +0 -71
  1036. package/dist/validation/protocols/consensus.js.map +0 -1
  1037. package/dist/validation/protocols/contribution.js +0 -59
  1038. package/dist/validation/protocols/contribution.js.map +0 -1
  1039. package/dist/validation/protocols/decomposition.js +0 -59
  1040. package/dist/validation/protocols/decomposition.js.map +0 -1
  1041. package/dist/validation/protocols/implementation.js +0 -59
  1042. package/dist/validation/protocols/implementation.js.map +0 -1
  1043. package/dist/validation/protocols/release-protocol.js +0 -60
  1044. package/dist/validation/protocols/release-protocol.js.map +0 -1
  1045. package/dist/validation/protocols/research.js +0 -77
  1046. package/dist/validation/protocols/research.js.map +0 -1
  1047. package/dist/validation/protocols/specification.js +0 -84
  1048. package/dist/validation/protocols/specification.js.map +0 -1
  1049. package/dist/validation/protocols/testing-protocol.js +0 -70
  1050. package/dist/validation/protocols/testing-protocol.js.map +0 -1
  1051. package/dist/validation/protocols/validation-protocol.js +0 -70
  1052. package/dist/validation/protocols/validation-protocol.js.map +0 -1
  1053. package/dist/validation/schema-integrity.js +0 -170
  1054. package/dist/validation/schema-integrity.js.map +0 -1
  1055. package/dist/validation/schema-validator.js +0 -176
  1056. package/dist/validation/schema-validator.js.map +0 -1
  1057. package/dist/validation/validate-ops.js +0 -937
  1058. package/dist/validation/validate-ops.js.map +0 -1
  1059. package/dist/validation/validation-rules.js +0 -226
  1060. package/dist/validation/validation-rules.js.map +0 -1
  1061. package/dist/validation/verification.js +0 -321
  1062. package/dist/validation/verification.js.map +0 -1
  1063. package/src/__tests__/audit-prune.test.d.ts +0 -2
  1064. package/src/__tests__/caamp-skill-install.test.d.ts +0 -14
  1065. package/src/__tests__/cli-mcp-parity.integration.test.d.ts +0 -34
  1066. package/src/__tests__/cli-mcp-parity.integration.test.d.ts.map +0 -1
  1067. package/src/__tests__/cli-mcp-parity.integration.test.js +0 -898
  1068. package/src/__tests__/cli-mcp-parity.integration.test.js.map +0 -1
  1069. package/src/__tests__/cli-parity.test.d.ts +0 -9
  1070. package/src/__tests__/config.test.d.ts +0 -7
  1071. package/src/__tests__/core-parity.test.d.ts +0 -17
  1072. package/src/__tests__/error-catalog.test.d.ts +0 -2
  1073. package/src/__tests__/golden-parity.test.d.ts +0 -12
  1074. package/src/__tests__/hooks.test.d.ts +0 -5
  1075. package/src/__tests__/human-output.test.d.ts +0 -12
  1076. package/src/__tests__/index-api-compat.test.d.ts +0 -2
  1077. package/src/__tests__/init-e2e.test.d.ts +0 -12
  1078. package/src/__tests__/injection-chain.test.d.ts +0 -18
  1079. package/src/__tests__/injection-mvi-tiers.test.d.ts +0 -14
  1080. package/src/__tests__/injection-shared.test.d.ts +0 -10
  1081. package/src/__tests__/lafs-conformance.test.d.ts +0 -18
  1082. package/src/__tests__/logger.test.d.ts +0 -2
  1083. package/src/__tests__/mcp-install-verify.test.d.ts +0 -13
  1084. package/src/__tests__/mcp-install-verify.test.d.ts.map +0 -1
  1085. package/src/__tests__/mcp-install-verify.test.js +0 -177
  1086. package/src/__tests__/mcp-install-verify.test.js.map +0 -1
  1087. package/src/__tests__/mcp-install-verify.test.ts +0 -217
  1088. package/src/__tests__/paths.test.d.ts +0 -7
  1089. package/src/__tests__/project-info.test.d.ts +0 -2
  1090. package/src/__tests__/rcsd-pipeline-e2e.test.d.ts +0 -14
  1091. package/src/__tests__/remote.test.d.ts +0 -6
  1092. package/src/__tests__/scaffold.test.d.ts +0 -6
  1093. package/src/__tests__/schema-management.test.d.ts +0 -5
  1094. package/src/__tests__/schema.test.d.ts +0 -2
  1095. package/src/__tests__/sharing.test.d.ts +0 -6
  1096. package/src/__tests__/snapshot.test.d.ts +0 -6
  1097. package/src/__tests__/upgrade.test.d.ts +0 -7
  1098. package/src/adapters/__tests__/discovery.test.d.ts +0 -6
  1099. package/src/adapters/__tests__/manager.test.d.ts +0 -6
  1100. package/src/agents/__tests__/agent-registry.test.d.ts +0 -12
  1101. package/src/agents/__tests__/capacity.test.d.ts +0 -7
  1102. package/src/agents/__tests__/execution-learning.test.d.ts +0 -14
  1103. package/src/agents/__tests__/health-monitor.test.d.ts +0 -10
  1104. package/src/agents/__tests__/registry.test.d.ts +0 -8
  1105. package/src/agents/__tests__/retry.test.d.ts +0 -7
  1106. package/src/compliance/__tests__/sync.test.d.ts +0 -5
  1107. package/src/hooks/__tests__/provider-hooks.test.d.ts +0 -2
  1108. package/src/hooks/__tests__/registry.test.d.ts +0 -2
  1109. package/src/hooks/handlers/__tests__/error-hooks.test.d.ts +0 -2
  1110. package/src/hooks/handlers/__tests__/file-hooks.test.d.ts +0 -2
  1111. package/src/hooks/handlers/__tests__/hook-automation-e2e.test.d.ts +0 -13
  1112. package/src/hooks/handlers/__tests__/mcp-hooks.test.d.ts +0 -2
  1113. package/src/hooks/handlers/__tests__/mcp-hooks.test.d.ts.map +0 -1
  1114. package/src/hooks/handlers/__tests__/mcp-hooks.test.js +0 -119
  1115. package/src/hooks/handlers/__tests__/mcp-hooks.test.js.map +0 -1
  1116. package/src/hooks/handlers/__tests__/mcp-hooks.test.ts +0 -150
  1117. package/src/hooks/handlers/__tests__/session-hooks.test.d.ts +0 -2
  1118. package/src/hooks/handlers/__tests__/task-hooks.test.d.ts +0 -2
  1119. package/src/hooks/handlers/mcp-hooks.ts +0 -162
  1120. package/src/intelligence/__tests__/adaptive-validation.test.d.ts +0 -11
  1121. package/src/intelligence/__tests__/impact.test.d.ts +0 -16
  1122. package/src/intelligence/__tests__/patterns.test.d.ts +0 -8
  1123. package/src/intelligence/__tests__/prediction.test.d.ts +0 -8
  1124. package/src/lib/__tests__/retry.test.d.ts +0 -7
  1125. package/src/lifecycle/__tests__/chain-store.test.d.ts +0 -10
  1126. package/src/lifecycle/__tests__/consolidate-rcasd.test.d.ts +0 -7
  1127. package/src/lifecycle/__tests__/default-chain.test.d.ts +0 -7
  1128. package/src/lifecycle/__tests__/frontmatter.test.d.ts +0 -7
  1129. package/src/lifecycle/__tests__/lifecycle.test.d.ts +0 -7
  1130. package/src/lifecycle/__tests__/pipeline.integration.test.d.ts +0 -19
  1131. package/src/lifecycle/__tests__/rcasd-paths.test.d.ts +0 -7
  1132. package/src/lifecycle/__tests__/resume-schema-contract.test.d.ts +0 -16
  1133. package/src/lifecycle/__tests__/stage-record-provenance.integration.test.d.ts +0 -7
  1134. package/src/lifecycle/__tests__/tessera-engine.test.d.ts +0 -10
  1135. package/src/mcp/index.ts +0 -163
  1136. package/src/memory/__tests__/auto-extract.test.d.ts +0 -7
  1137. package/src/memory/__tests__/brain-automation.test.d.ts +0 -11
  1138. package/src/memory/__tests__/brain-embedding.test.d.ts +0 -2
  1139. package/src/memory/__tests__/brain-links.test.d.ts +0 -8
  1140. package/src/memory/__tests__/brain-migration.test.d.ts +0 -8
  1141. package/src/memory/__tests__/brain-retrieval.test.d.ts +0 -10
  1142. package/src/memory/__tests__/brain-search.test.d.ts +0 -8
  1143. package/src/memory/__tests__/claude-mem-migration.test.d.ts +0 -12
  1144. package/src/memory/__tests__/decisions.test.d.ts +0 -8
  1145. package/src/memory/__tests__/engine-compat.test.d.ts +0 -12
  1146. package/src/memory/__tests__/memory-bridge.test.d.ts +0 -10
  1147. package/src/memory/__tests__/pipeline-manifest-sqlite.test.d.ts +0 -13
  1148. package/src/memory/__tests__/session-memory.test.d.ts +0 -9
  1149. package/src/metrics/__tests__/model-provider-registry.test.d.ts +0 -2
  1150. package/src/metrics/__tests__/provider-detection.test.d.ts +0 -2
  1151. package/src/migration/__tests__/checksum.test.d.ts +0 -8
  1152. package/src/migration/__tests__/logger.test.d.ts +0 -5
  1153. package/src/migration/__tests__/migration-failure.integration.test.d.ts +0 -15
  1154. package/src/migration/__tests__/migration.test.d.ts +0 -13
  1155. package/src/migration/__tests__/state.test.d.ts +0 -8
  1156. package/src/migration/__tests__/validate.test.d.ts +0 -8
  1157. package/src/nexus/__tests__/deps.test.d.ts +0 -7
  1158. package/src/nexus/__tests__/nexus-e2e.test.d.ts +0 -12
  1159. package/src/nexus/__tests__/permissions.test.d.ts +0 -7
  1160. package/src/nexus/__tests__/query.test.d.ts +0 -7
  1161. package/src/nexus/__tests__/reconcile.test.d.ts +0 -7
  1162. package/src/nexus/__tests__/registry.test.d.ts +0 -7
  1163. package/src/nexus/__tests__/transfer.test.d.ts +0 -8
  1164. package/src/observability/__tests__/index.test.d.ts +0 -7
  1165. package/src/observability/__tests__/log-filter.test.d.ts +0 -7
  1166. package/src/observability/__tests__/log-parser.test.d.ts +0 -7
  1167. package/src/observability/__tests__/log-reader.test.d.ts +0 -7
  1168. package/src/orchestration/__tests__/autonomous-spec.test.d.ts +0 -9
  1169. package/src/orchestration/__tests__/orchestration.test.d.ts +0 -7
  1170. package/src/orchestration/__tests__/protocol-validators.test.d.ts +0 -9
  1171. package/src/phases/__tests__/deps.test.d.ts +0 -7
  1172. package/src/phases/__tests__/phases.test.d.ts +0 -7
  1173. package/src/release/__tests__/artifacts.test.d.ts +0 -7
  1174. package/src/release/__tests__/cancel-release.test.d.ts +0 -10
  1175. package/src/release/__tests__/changelog-writer.test.d.ts +0 -6
  1176. package/src/release/__tests__/push-policy.test.d.ts +0 -14
  1177. package/src/release/__tests__/release.test.d.ts +0 -11
  1178. package/src/sequence/__tests__/allocate.test.d.ts +0 -6
  1179. package/src/sessions/__tests__/briefing-blocked.test.d.ts +0 -6
  1180. package/src/sessions/__tests__/briefing.test.d.ts +0 -11
  1181. package/src/sessions/__tests__/handoff-integration.test.d.ts +0 -8
  1182. package/src/sessions/__tests__/handoff.test.d.ts +0 -11
  1183. package/src/sessions/__tests__/index.test.d.ts +0 -2
  1184. package/src/sessions/__tests__/session-cleanup.test.d.ts +0 -7
  1185. package/src/sessions/__tests__/session-edge-cases.test.d.ts +0 -9
  1186. package/src/sessions/__tests__/session-find.test.d.ts +0 -9
  1187. package/src/sessions/__tests__/session-grade.integration.test.d.ts +0 -11
  1188. package/src/sessions/__tests__/session-grade.test.d.ts +0 -6
  1189. package/src/sessions/__tests__/session-memory-bridge.test.d.ts +0 -2
  1190. package/src/sessions/__tests__/sessions.test.d.ts +0 -7
  1191. package/src/skills/__tests__/discovery.test.d.ts +0 -6
  1192. package/src/skills/__tests__/dispatch.test.d.ts +0 -6
  1193. package/src/skills/__tests__/dynamic-skill-generator.test.d.ts +0 -2
  1194. package/src/skills/__tests__/manifests.test.d.ts +0 -6
  1195. package/src/skills/__tests__/precedence.test.d.ts +0 -6
  1196. package/src/skills/__tests__/routing-table.test.d.ts +0 -2
  1197. package/src/skills/__tests__/skill-paths.test.d.ts +0 -7
  1198. package/src/skills/__tests__/test-utility.test.d.ts +0 -7
  1199. package/src/skills/__tests__/token.test.d.ts +0 -6
  1200. package/src/skills/__tests__/validation.test.d.ts +0 -6
  1201. package/src/skills/__tests__/version.test.d.ts +0 -5
  1202. package/src/skills/injection/__tests__/subagent.test.d.ts +0 -2
  1203. package/src/skills/orchestrator/__tests__/spawn-tier.test.d.ts +0 -2
  1204. package/src/spawn/__tests__/adapter-registry.test.d.ts +0 -2
  1205. package/src/stats/__tests__/stats.test.d.ts +0 -7
  1206. package/src/sticky/__tests__/purge.test.d.ts +0 -9
  1207. package/src/store/__tests__/atomic.test.d.ts +0 -7
  1208. package/src/store/__tests__/backup.test.d.ts +0 -7
  1209. package/src/store/__tests__/brain-accessor-pageindex.test.d.ts +0 -12
  1210. package/src/store/__tests__/brain-accessor.test.d.ts +0 -10
  1211. package/src/store/__tests__/brain-pageindex.test.d.ts +0 -11
  1212. package/src/store/__tests__/brain-schema.test.d.ts +0 -11
  1213. package/src/store/__tests__/brain-vec.test.d.ts +0 -11
  1214. package/src/store/__tests__/collision-detection.test.d.ts +0 -11
  1215. package/src/store/__tests__/data-safety-central.test.d.ts +0 -20
  1216. package/src/store/__tests__/db-helpers.test.d.ts +0 -7
  1217. package/src/store/__tests__/e2e-safety-integration.test.d.ts +0 -13
  1218. package/src/store/__tests__/git-checkpoint.test.d.ts +0 -7
  1219. package/src/store/__tests__/idempotent-migration.test.d.ts +0 -5
  1220. package/src/store/__tests__/import-logging.test.d.ts +0 -7
  1221. package/src/store/__tests__/import-sort.test.d.ts +0 -7
  1222. package/src/store/__tests__/json.test.d.ts +0 -7
  1223. package/src/store/__tests__/lifecycle-schema-parity.test.d.ts +0 -2
  1224. package/src/store/__tests__/migration-integration.test.d.ts +0 -15
  1225. package/src/store/__tests__/migration-retry.test.d.ts +0 -10
  1226. package/src/store/__tests__/migration-safety.test.d.ts +0 -21
  1227. package/src/store/__tests__/migration-sqlite.test.d.ts +0 -11
  1228. package/src/store/__tests__/performance-safety.test.d.ts +0 -17
  1229. package/src/store/__tests__/project-detect.test.d.ts +0 -6
  1230. package/src/store/__tests__/project-registry.test.d.ts +0 -7
  1231. package/src/store/__tests__/provider.test.d.ts +0 -9
  1232. package/src/store/__tests__/relations.test.d.ts +0 -9
  1233. package/src/store/__tests__/safety-accessor.test.d.ts +0 -18
  1234. package/src/store/__tests__/sequence-validation.test.d.ts +0 -11
  1235. package/src/store/__tests__/session-store.test.d.ts +0 -11
  1236. package/src/store/__tests__/sqlite-backup.test.d.ts +0 -14
  1237. package/src/store/__tests__/sqlite.test.d.ts +0 -11
  1238. package/src/store/__tests__/task-store.test.d.ts +0 -11
  1239. package/src/store/__tests__/test-db-helper.d.ts +0 -61
  1240. package/src/store/__tests__/write-verification.test.d.ts +0 -11
  1241. package/src/system/__tests__/cleanup.test.d.ts +0 -2
  1242. package/src/system/__tests__/health.test.d.ts +0 -2
  1243. package/src/task-work/__tests__/start-deps.test.d.ts +0 -6
  1244. package/src/tasks/__tests__/add.test.d.ts +0 -7
  1245. package/src/tasks/__tests__/archive.test.d.ts +0 -7
  1246. package/src/tasks/__tests__/assignee.test.d.ts +0 -14
  1247. package/src/tasks/__tests__/atomicity.test.d.ts +0 -6
  1248. package/src/tasks/__tests__/cancel-ops.test.d.ts +0 -7
  1249. package/src/tasks/__tests__/complete-unblocks.test.d.ts +0 -6
  1250. package/src/tasks/__tests__/complete.test.d.ts +0 -7
  1251. package/src/tasks/__tests__/delete.test.d.ts +0 -7
  1252. package/src/tasks/__tests__/dependency-check.test.d.ts +0 -7
  1253. package/src/tasks/__tests__/deps-ready.test.d.ts +0 -6
  1254. package/src/tasks/__tests__/epic-enforcement.test.d.ts +0 -15
  1255. package/src/tasks/__tests__/find.test.d.ts +0 -7
  1256. package/src/tasks/__tests__/graph-ops.test.d.ts +0 -7
  1257. package/src/tasks/__tests__/hierarchy-policy.test.d.ts +0 -6
  1258. package/src/tasks/__tests__/hierarchy.test.d.ts +0 -7
  1259. package/src/tasks/__tests__/id-generator.test.d.ts +0 -2
  1260. package/src/tasks/__tests__/labels.test.d.ts +0 -7
  1261. package/src/tasks/__tests__/list.test.d.ts +0 -7
  1262. package/src/tasks/__tests__/minimal-test.test.d.ts +0 -2
  1263. package/src/tasks/__tests__/phase-tracking.test.d.ts +0 -7
  1264. package/src/tasks/__tests__/pipeline-stage.test.d.ts +0 -14
  1265. package/src/tasks/__tests__/plan-priority.test.d.ts +0 -10
  1266. package/src/tasks/__tests__/priority-normalization.test.d.ts +0 -7
  1267. package/src/tasks/__tests__/relates.test.d.ts +0 -9
  1268. package/src/tasks/__tests__/show-deps.test.d.ts +0 -6
  1269. package/src/tasks/__tests__/show.test.d.ts +0 -7
  1270. package/src/tasks/__tests__/staleness.test.d.ts +0 -7
  1271. package/src/tasks/__tests__/task-ops-depends.test.d.ts +0 -6
  1272. package/src/tasks/__tests__/update.test.d.ts +0 -7
  1273. package/src/validation/__tests__/chain-validation.test.d.ts +0 -7
  1274. package/src/validation/__tests__/compliance.test.d.ts +0 -7
  1275. package/src/validation/__tests__/docs-sync.test.d.ts +0 -7
  1276. package/src/validation/__tests__/doctor-gitignore.test.d.ts +0 -7
  1277. package/src/validation/__tests__/doctor-injection.test.d.ts +0 -11
  1278. package/src/validation/__tests__/doctor.test.d.ts +0 -7
  1279. package/src/validation/__tests__/engine.test.d.ts +0 -7
  1280. package/src/validation/__tests__/manifest.test.d.ts +0 -7
  1281. package/src/validation/__tests__/protocol-common.test.d.ts +0 -7
  1282. package/src/validation/__tests__/verification.test.d.ts +0 -7
@@ -1,937 +0,0 @@
1
- /**
2
- * Core validation operations - business logic extracted from validate-engine.ts.
3
- *
4
- * These are pure business logic functions that throw on failure and return
5
- * data directly (no EngineResult wrapper). The engine layer wraps these
6
- * in try/catch to produce EngineResult.
7
- *
8
- * @task T4786
9
- * @epic T4654
10
- */
11
- import { execFileSync } from 'node:child_process';
12
- import { appendFileSync, existsSync, mkdirSync, readFileSync } from 'node:fs';
13
- import { dirname, join, resolve } from 'node:path';
14
- import { TASK_STATUSES } from '@cleocode/contracts';
15
- import { getManifestPath as getCentralManifestPath } from '../paths.js';
16
- import { getAccessor } from '../store/data-accessor.js';
17
- import { computeChecksum } from '../store/json.js';
18
- import { detectCircularDeps, validateDependencies } from '../tasks/dependency-check.js';
19
- import { validateSchema as ajvValidateSchema } from './schema-validator.js';
20
- import { hasErrors, validateHierarchy, validateIdUniqueness, validateNoDuplicateDescription, validateTimestamps, validateTitleDescription, } from './validation-rules.js';
21
- /**
22
- * Run comprehensive validation report on tasks database — checks business rules,
23
- * dependencies, checksums, data integrity, and schema compliance.
24
- * @task T4795
25
- */
26
- export async function coreValidateReport(projectRoot) {
27
- const accessor = await getAccessor(projectRoot);
28
- const { tasks: allTasks } = await accessor.queryTasks({});
29
- const details = [];
30
- let errors = 0;
31
- let warnings = 0;
32
- const addOk = (check, message) => {
33
- details.push({ check, status: 'ok', message });
34
- };
35
- const addError = (check, message) => {
36
- details.push({ check, status: 'error', message });
37
- errors++;
38
- };
39
- const addWarn = (check, message) => {
40
- details.push({ check, status: 'warning', message });
41
- warnings++;
42
- };
43
- // 1. JSON syntax (already parsed above)
44
- addOk('json_syntax', 'JSON syntax valid');
45
- // 2. Check duplicate task IDs
46
- const idCounts = new Map();
47
- for (const t of allTasks) {
48
- idCounts.set(t.id, (idCounts.get(t.id) ?? 0) + 1);
49
- }
50
- const duplicateIds = [...idCounts.entries()].filter(([, c]) => c > 1).map(([id]) => id);
51
- if (duplicateIds.length > 0) {
52
- addError('duplicate_ids_todo', `Duplicate task IDs in tasks database: ${duplicateIds.join(', ')}`);
53
- }
54
- else {
55
- addOk('duplicate_ids_todo', 'No duplicate task IDs in tasks database');
56
- }
57
- // 2b. Cross-file duplicates with archive
58
- const archive = await accessor.loadArchive();
59
- if (archive && archive.archivedTasks.length > 0) {
60
- const archiveIds = new Set(archive.archivedTasks.map((t) => t.id));
61
- const todoIds = new Set(allTasks.map((t) => t.id));
62
- const crossDups = [...todoIds].filter((id) => archiveIds.has(id));
63
- if (crossDups.length > 0) {
64
- addError('duplicate_ids_cross', `IDs exist in both tasks database and archive: ${crossDups.join(', ')}`);
65
- }
66
- else {
67
- addOk('duplicate_ids_cross', 'No cross-file duplicate IDs');
68
- }
69
- }
70
- // 3. Active task limit
71
- const activeTasks = allTasks.filter((t) => t.status === 'active');
72
- if (activeTasks.length > 1) {
73
- addError('active_task', `Too many active tasks: ${activeTasks.length}. Maximum allowed: 1`);
74
- }
75
- else if (activeTasks.length === 1) {
76
- addOk('active_task', 'Single active task');
77
- }
78
- else {
79
- addOk('active_task', 'No active tasks');
80
- }
81
- // 4. Dependencies exist
82
- const taskIds = new Set(allTasks.map((t) => t.id));
83
- const missingDeps = [];
84
- for (const t of allTasks) {
85
- if (t.depends) {
86
- for (const depId of t.depends) {
87
- if (!taskIds.has(depId))
88
- missingDeps.push(depId);
89
- }
90
- }
91
- }
92
- if (missingDeps.length > 0) {
93
- addError('dependencies', `Missing dependency references: ${[...new Set(missingDeps)].join(', ')}`);
94
- }
95
- else {
96
- addOk('dependencies', 'All dependencies exist');
97
- }
98
- // 5. Circular dependencies
99
- const depResult = validateDependencies(allTasks);
100
- const circularErrors = depResult.errors.filter((e) => e.code === 'E_CIRCULAR_DEP');
101
- if (circularErrors.length > 0) {
102
- for (const err of circularErrors) {
103
- addError('circular_deps', err.message);
104
- }
105
- }
106
- else {
107
- addOk('circular_deps', 'No circular dependencies');
108
- }
109
- // 6. Blocked tasks have blockedBy
110
- const blockedNoReason = allTasks.filter((t) => t.status === 'blocked' && !t.blockedBy);
111
- if (blockedNoReason.length > 0) {
112
- addError('blocked_reasons', `${blockedNoReason.length} blocked task(s) missing blockedBy reason`);
113
- }
114
- else {
115
- addOk('blocked_reasons', 'All blocked tasks have reasons');
116
- }
117
- // 7. Done tasks have completedAt
118
- const doneNoDate = allTasks.filter((t) => t.status === 'done' && !t.completedAt);
119
- if (doneNoDate.length > 0) {
120
- addError('completed_at', `${doneNoDate.length} done task(s) missing completedAt`);
121
- }
122
- else {
123
- addOk('completed_at', 'All done tasks have completedAt');
124
- }
125
- // 8. Schema version
126
- const schemaVersion = await accessor.getSchemaVersion();
127
- if (!schemaVersion) {
128
- addError('schema_version', 'Missing ._meta.schemaVersion field. Run: cleo upgrade');
129
- }
130
- else {
131
- addOk('schema_version', `Schema version compatible (${schemaVersion})`);
132
- }
133
- // 9. Required fields
134
- const missingFieldTasks = allTasks.filter((t) => !t.id || !t.title || !t.status || !t.priority || !t.createdAt);
135
- if (missingFieldTasks.length > 0) {
136
- for (const t of missingFieldTasks) {
137
- const missing = [];
138
- if (!t.id)
139
- missing.push('id');
140
- if (!t.title)
141
- missing.push('title');
142
- if (!t.status)
143
- missing.push('status');
144
- if (!t.priority)
145
- missing.push('priority');
146
- if (!t.createdAt)
147
- missing.push('createdAt');
148
- addError('required_fields', `Task ${t.id ?? '(unknown)'} missing: ${missing.join(', ')}`);
149
- }
150
- }
151
- else {
152
- addOk('required_fields', 'All tasks have required fields');
153
- }
154
- // 10. Focus matches active task
155
- const focusState = await accessor.getMetaValue('focus_state');
156
- const focusTask = focusState?.currentTask;
157
- const activeTaskId = activeTasks[0]?.id ?? null;
158
- if (focusTask && focusTask !== activeTaskId) {
159
- addError('focus_match', `focus.currentTask (${focusTask}) doesn't match active task (${activeTaskId ?? 'none'})`);
160
- }
161
- else {
162
- addOk('focus_match', 'Focus matches active task');
163
- }
164
- // 11. Checksum
165
- const fileMeta = await accessor.getMetaValue('file_meta');
166
- const storedChecksum = fileMeta?.checksum;
167
- if (storedChecksum) {
168
- const computed = computeChecksum(allTasks);
169
- if (storedChecksum !== computed) {
170
- addError('checksum', `Checksum mismatch: stored=${storedChecksum}, computed=${computed}`);
171
- }
172
- else {
173
- addOk('checksum', 'Checksum valid');
174
- }
175
- }
176
- else {
177
- addWarn('checksum', 'No checksum found');
178
- }
179
- // 12. Missing size fields
180
- const missingSizeTasks = allTasks.filter((t) => !t.size);
181
- if (missingSizeTasks.length > 0) {
182
- addWarn('missing_sizes', `${missingSizeTasks.length} task(s) missing size field`);
183
- }
184
- else {
185
- addOk('missing_sizes', 'All tasks have size field');
186
- }
187
- // 13. Stale tasks (pending > 30 days)
188
- const staleDays = 30;
189
- const staleThreshold = Date.now() - staleDays * 86400 * 1000;
190
- const staleTasks = allTasks.filter((t) => t.status === 'pending' && t.createdAt && new Date(t.createdAt).getTime() < staleThreshold);
191
- if (staleTasks.length > 0) {
192
- addWarn('stale_tasks', `${staleTasks.length} task(s) pending for >${staleDays} days`);
193
- }
194
- return {
195
- valid: errors === 0,
196
- schemaVersion: schemaVersion ?? 'unknown',
197
- errors,
198
- warnings,
199
- details,
200
- };
201
- }
202
- // ============================================================================
203
- // Validate and Fix
204
- // ============================================================================
205
- import { runAllRepairs } from '../repair.js';
206
- /**
207
- * Run validation report, then apply data repairs for fixable issues.
208
- * Calls runAllRepairs() from src/core/repair.ts (same repairs used by `upgrade`).
209
- * @task T4795
210
- */
211
- export async function coreValidateAndFix(projectRoot, dryRun = false) {
212
- // Repairs operate directly on SQLite — no TaskFile loading required
213
- const repairs = await runAllRepairs(projectRoot, dryRun);
214
- const applied = repairs.filter((r) => r.status === 'applied');
215
- // Run validation report after repairs
216
- const report = await coreValidateReport(projectRoot);
217
- return {
218
- ...report,
219
- repairsApplied: applied.length,
220
- repairs,
221
- };
222
- }
223
- // ============================================================================
224
- // Schema Validation
225
- // ============================================================================
226
- /** Read a JSON file, returning parsed data or null. */
227
- function readJsonFile(filePath) {
228
- try {
229
- const raw = readFileSync(filePath, 'utf-8');
230
- return JSON.parse(raw);
231
- }
232
- catch {
233
- return null;
234
- }
235
- }
236
- /**
237
- * Validate data against a schema type.
238
- *
239
- * For SQLite-backed types (todo, archive, sessions, log), queries rows
240
- * directly from SQLite and validates with drizzle-zod schemas.
241
- * For config type, uses AJV against the JSON schema file.
242
- * If raw `data` is provided, validates directly with AJV (backward compat).
243
- *
244
- * @task T4786
245
- */
246
- export async function coreValidateSchema(type, data, projectRoot) {
247
- if (!type) {
248
- throw new Error('type is required (todo, config, archive, log, sessions)');
249
- }
250
- const validTypes = ['todo', 'config', 'archive', 'log', 'sessions'];
251
- if (!validTypes.includes(type)) {
252
- throw new Error(`Unknown schema type: ${type}. Valid types: ${validTypes.join(', ')}`);
253
- }
254
- // Config type: AJV against JSON schema file (not stored in SQLite)
255
- if (type === 'config') {
256
- const filePath = join(projectRoot, '.cleo', 'config.json');
257
- if (!existsSync(filePath)) {
258
- throw new Error('File not found: .cleo/config.json');
259
- }
260
- const configData = data ?? readJsonFile(filePath);
261
- const result = ajvValidateSchema('config', configData);
262
- return { type, valid: result.valid, errors: result.errors, errorCount: result.errors.length };
263
- }
264
- // SQLite-backed types: query rows and validate with drizzle-zod
265
- return validateSqliteRows(type, projectRoot);
266
- }
267
- /** Collect validation errors from a Zod safeParse result for a given row. */
268
- function collectZodErrors(result, rowId) {
269
- if (result.success)
270
- return [];
271
- return (result.error?.issues ?? []).map((issue) => ({
272
- path: `/${rowId}/` + issue.path.map(String).join('/'),
273
- message: issue.message,
274
- keyword: issue.code,
275
- rowId,
276
- }));
277
- }
278
- /**
279
- * Query rows from SQLite and validate each against the drizzle-zod select schema.
280
- */
281
- async function validateSqliteRows(type, projectRoot) {
282
- const { getDb } = await import('../store/sqlite.js');
283
- const schemaTable = await import('../store/tasks-schema.js');
284
- const zodSchemas = await import('../store/validation-schemas.js');
285
- const { ne, eq } = await import('drizzle-orm');
286
- const db = await getDb(projectRoot);
287
- const errors = [];
288
- switch (type) {
289
- case 'todo': {
290
- const rows = await db
291
- .select()
292
- .from(schemaTable.tasks)
293
- .where(ne(schemaTable.tasks.status, 'archived'));
294
- for (const row of rows) {
295
- errors.push(...collectZodErrors(zodSchemas.selectTaskSchema.safeParse(row), row.id));
296
- }
297
- break;
298
- }
299
- case 'archive': {
300
- const rows = await db
301
- .select()
302
- .from(schemaTable.tasks)
303
- .where(eq(schemaTable.tasks.status, 'archived'));
304
- for (const row of rows) {
305
- errors.push(...collectZodErrors(zodSchemas.selectTaskSchema.safeParse(row), row.id));
306
- }
307
- break;
308
- }
309
- case 'sessions': {
310
- const rows = await db.select().from(schemaTable.sessions);
311
- for (const row of rows) {
312
- errors.push(...collectZodErrors(zodSchemas.selectSessionSchema.safeParse(row), row.id));
313
- }
314
- break;
315
- }
316
- case 'log': {
317
- const rows = await db.select().from(schemaTable.auditLog).limit(1000);
318
- for (const row of rows) {
319
- errors.push(...collectZodErrors(zodSchemas.selectAuditLogSchema.safeParse(row), row.id));
320
- }
321
- break;
322
- }
323
- default:
324
- throw new Error(`Unknown SQLite type: ${type}`);
325
- }
326
- return { type, valid: errors.length === 0, errors, errorCount: errors.length };
327
- }
328
- // ============================================================================
329
- // Task Validation (Anti-Hallucination)
330
- // ============================================================================
331
- /**
332
- * Validate a single task against anti-hallucination rules.
333
- * @task T4786
334
- */
335
- export async function coreValidateTask(taskId, projectRoot) {
336
- if (!taskId) {
337
- throw new Error('taskId is required');
338
- }
339
- const accessor = await getAccessor(projectRoot);
340
- const { tasks: activeTasks } = await accessor.queryTasks({});
341
- const archiveData = await accessor.loadArchive();
342
- const allValidationTasks = [...activeTasks, ...(archiveData?.archivedTasks || [])];
343
- const task = allValidationTasks.find((t) => t.id === taskId);
344
- if (!task) {
345
- throw new Error(`Task ${taskId} not found`);
346
- }
347
- const violations = [];
348
- violations.push(...validateTitleDescription(task.title, task.description));
349
- violations.push(...validateTimestamps(task));
350
- const allIds = new Set(allValidationTasks.map((t) => t.id));
351
- violations.push(...validateIdUniqueness(task.id, allIds));
352
- const allDescriptions = allValidationTasks
353
- .filter((t) => t.id !== task.id)
354
- .map((t) => t.description ?? '');
355
- violations.push(...validateNoDuplicateDescription(task.description ?? '', allDescriptions));
356
- if (task.parentId) {
357
- const parent = allValidationTasks.find((t) => t.id === task.parentId);
358
- if (parent) {
359
- violations.push(...validateHierarchy(task.parentId, allValidationTasks));
360
- }
361
- }
362
- return {
363
- taskId,
364
- valid: !hasErrors(violations),
365
- violations,
366
- errorCount: violations.filter((v) => v.severity === 'error').length,
367
- warningCount: violations.filter((v) => v.severity === 'warning').length,
368
- };
369
- }
370
- // ============================================================================
371
- // Protocol Validation
372
- // ============================================================================
373
- /**
374
- * Check basic protocol compliance for a task.
375
- * @task T4786
376
- */
377
- export async function coreValidateProtocol(taskId, protocolType, projectRoot) {
378
- if (!taskId) {
379
- throw new Error('taskId is required');
380
- }
381
- const accessor = await getAccessor(projectRoot);
382
- const task = await accessor.loadSingleTask(taskId);
383
- if (!task) {
384
- throw new Error(`Task ${taskId} not found`);
385
- }
386
- const violations = [];
387
- if (!task.title) {
388
- violations.push({
389
- code: 'P_MISSING_TITLE',
390
- message: 'Task title is missing',
391
- severity: 'error',
392
- });
393
- }
394
- if (!task.description) {
395
- violations.push({
396
- code: 'P_MISSING_DESCRIPTION',
397
- message: 'Task description is missing',
398
- severity: 'error',
399
- });
400
- }
401
- if (task.title === task.description) {
402
- violations.push({
403
- code: 'P_SAME_TITLE_DESC',
404
- message: 'Title and description must be different',
405
- severity: 'error',
406
- });
407
- }
408
- if (!TASK_STATUSES.includes(task.status)) {
409
- violations.push({
410
- code: 'P_INVALID_STATUS',
411
- message: `Invalid status: ${task.status}. Valid: ${TASK_STATUSES.join(', ')}`,
412
- severity: 'error',
413
- });
414
- }
415
- return {
416
- taskId,
417
- protocolType: protocolType || 'generic',
418
- compliant: violations.filter((v) => v.severity === 'error').length === 0,
419
- violations,
420
- };
421
- }
422
- // ============================================================================
423
- // Manifest Validation
424
- // ============================================================================
425
- /**
426
- * Validate manifest JSONL entries for required fields.
427
- * @task T4786
428
- */
429
- export function coreValidateManifest(projectRoot) {
430
- const manifestPath = getCentralManifestPath(projectRoot);
431
- if (!existsSync(manifestPath)) {
432
- return {
433
- valid: true,
434
- totalEntries: 0,
435
- validEntries: 0,
436
- invalidEntries: 0,
437
- errors: [],
438
- message: 'No manifest file found',
439
- };
440
- }
441
- const content = readFileSync(manifestPath, 'utf-8');
442
- const lines = content.split('\n').filter((l) => l.trim());
443
- let validCount = 0;
444
- let invalidCount = 0;
445
- const errors = [];
446
- for (let i = 0; i < lines.length; i++) {
447
- try {
448
- const entry = JSON.parse(lines[i]);
449
- const entryErrors = [];
450
- if (!entry.id)
451
- entryErrors.push('missing id');
452
- if (!entry.file)
453
- entryErrors.push('missing file');
454
- if (!entry.title)
455
- entryErrors.push('missing title');
456
- if (!entry.date)
457
- entryErrors.push('missing date');
458
- if (!entry.status)
459
- entryErrors.push('missing status');
460
- if (!entry.agent_type)
461
- entryErrors.push('missing agent_type');
462
- if (!entry.topics)
463
- entryErrors.push('missing topics');
464
- if (entry.actionable === undefined)
465
- entryErrors.push('missing actionable');
466
- if (entryErrors.length > 0) {
467
- invalidCount++;
468
- errors.push({ line: i + 1, entryId: entry.id || `line-${i + 1}`, errors: entryErrors });
469
- }
470
- else {
471
- validCount++;
472
- }
473
- }
474
- catch {
475
- invalidCount++;
476
- errors.push({ line: i + 1, entryId: `line-${i + 1}`, errors: ['invalid JSON'] });
477
- }
478
- }
479
- return {
480
- valid: invalidCount === 0,
481
- totalEntries: lines.length,
482
- validEntries: validCount,
483
- invalidEntries: invalidCount,
484
- errors,
485
- };
486
- }
487
- // ============================================================================
488
- // Output Validation
489
- // ============================================================================
490
- /**
491
- * Validate an output file for required sections.
492
- * @task T4786
493
- */
494
- export function coreValidateOutput(filePath, taskId, projectRoot) {
495
- if (!filePath) {
496
- throw new Error('filePath is required');
497
- }
498
- const fullPath = resolve(projectRoot, filePath);
499
- if (!existsSync(fullPath)) {
500
- throw new Error(`Output file not found: ${filePath}`);
501
- }
502
- const content = readFileSync(fullPath, 'utf-8');
503
- const issues = [];
504
- if (!content.includes('# ')) {
505
- issues.push({
506
- code: 'O_MISSING_TITLE',
507
- message: 'Output file should have a markdown title',
508
- severity: 'warning',
509
- });
510
- }
511
- if (taskId && !content.includes(taskId)) {
512
- issues.push({
513
- code: 'O_MISSING_TASK_REF',
514
- message: `Output file should reference task ${taskId}`,
515
- severity: 'warning',
516
- });
517
- }
518
- if (!content.includes('## Summary') && !content.includes('## summary')) {
519
- issues.push({
520
- code: 'O_MISSING_SUMMARY',
521
- message: 'Output file should have a Summary section',
522
- severity: 'warning',
523
- });
524
- }
525
- return {
526
- filePath,
527
- valid: issues.filter((i) => i.severity === 'error').length === 0,
528
- issues,
529
- fileSize: content.length,
530
- lineCount: content.split('\n').length,
531
- };
532
- }
533
- // ============================================================================
534
- // Compliance Summary
535
- // ============================================================================
536
- /** Parse COMPLIANCE.jsonl entries. */
537
- function parseComplianceEntries(projectRoot) {
538
- const compliancePath = join(projectRoot, '.cleo', 'metrics', 'COMPLIANCE.jsonl');
539
- if (!existsSync(compliancePath)) {
540
- return [];
541
- }
542
- const content = readFileSync(compliancePath, 'utf-8');
543
- const entries = [];
544
- for (const line of content.split('\n')) {
545
- const trimmed = line.trim();
546
- if (!trimmed)
547
- continue;
548
- try {
549
- entries.push(JSON.parse(trimmed));
550
- }
551
- catch { }
552
- }
553
- return entries;
554
- }
555
- /**
556
- * Get aggregated compliance metrics.
557
- * @task T4786
558
- */
559
- export function coreComplianceSummary(projectRoot) {
560
- const entries = parseComplianceEntries(projectRoot);
561
- const pass = entries.filter((e) => e.result === 'pass').length;
562
- const fail = entries.filter((e) => e.result === 'fail').length;
563
- const partial = entries.filter((e) => e.result === 'partial').length;
564
- const total = entries.length;
565
- const byProtocol = {};
566
- for (const entry of entries) {
567
- if (!byProtocol[entry.protocol]) {
568
- byProtocol[entry.protocol] = { pass: 0, fail: 0, partial: 0 };
569
- }
570
- byProtocol[entry.protocol][entry.result]++;
571
- }
572
- return {
573
- total,
574
- pass,
575
- fail,
576
- partial,
577
- passRate: total > 0 ? Math.round((pass / total) * 100) : 0,
578
- byProtocol,
579
- };
580
- }
581
- // ============================================================================
582
- // Compliance Violations
583
- // ============================================================================
584
- /**
585
- * List compliance violations.
586
- * @task T4786
587
- */
588
- export function coreComplianceViolations(limit, projectRoot) {
589
- const entries = parseComplianceEntries(projectRoot);
590
- let violations = entries.filter((e) => e.result === 'fail' || e.result === 'partial');
591
- if (limit && limit > 0) {
592
- violations = violations.slice(-limit);
593
- }
594
- return {
595
- violations: violations.map((v) => ({
596
- timestamp: v.timestamp,
597
- taskId: v.taskId,
598
- protocol: v.protocol,
599
- result: v.result,
600
- violations: v.violations,
601
- })),
602
- total: violations.length,
603
- };
604
- }
605
- // ============================================================================
606
- // Compliance Record
607
- // ============================================================================
608
- /**
609
- * Record a compliance check result to COMPLIANCE.jsonl.
610
- * @task T4786
611
- */
612
- export function coreComplianceRecord(taskId, result, protocol, violations, projectRoot) {
613
- if (!taskId || !result) {
614
- throw new Error('taskId and result are required');
615
- }
616
- const validResults = ['pass', 'fail', 'partial'];
617
- if (!validResults.includes(result)) {
618
- throw new Error(`Invalid result: ${result}. Valid: ${validResults.join(', ')}`);
619
- }
620
- const compliancePath = join(projectRoot, '.cleo', 'metrics', 'COMPLIANCE.jsonl');
621
- const dir = dirname(compliancePath);
622
- if (!existsSync(dir)) {
623
- mkdirSync(dir, { recursive: true });
624
- }
625
- const entry = {
626
- timestamp: new Date().toISOString(),
627
- taskId,
628
- protocol: protocol || 'generic',
629
- result: result,
630
- violations,
631
- linkedTask: taskId,
632
- };
633
- appendFileSync(compliancePath, JSON.stringify(entry) + '\n', 'utf-8');
634
- return {
635
- recorded: true,
636
- taskId,
637
- result,
638
- protocol: protocol || 'generic',
639
- };
640
- }
641
- // ============================================================================
642
- // Test Status
643
- // ============================================================================
644
- /**
645
- * Check test suite availability.
646
- * @task T4786
647
- */
648
- export function coreTestStatus(projectRoot) {
649
- const testDir = join(projectRoot, 'tests');
650
- const mcpTestDir = join(projectRoot, 'src', 'mcp', '__tests__');
651
- const hasBatsTests = existsSync(testDir);
652
- const hasMcpTests = existsSync(mcpTestDir);
653
- return {
654
- batsTests: {
655
- available: hasBatsTests,
656
- directory: hasBatsTests ? 'tests/' : null,
657
- },
658
- mcpTests: {
659
- available: hasMcpTests,
660
- directory: hasMcpTests ? 'src/mcp/__tests__/' : null,
661
- },
662
- message: 'Use validate.test.run to execute tests',
663
- };
664
- }
665
- // ============================================================================
666
- // Coherence Check
667
- // ============================================================================
668
- /**
669
- * Cross-validate task graph for consistency.
670
- * @task T4786
671
- */
672
- export async function coreCoherenceCheck(projectRoot) {
673
- const accessor = await getAccessor(projectRoot);
674
- const { tasks } = await accessor.queryTasks({});
675
- if (!tasks || tasks.length === 0) {
676
- throw new Error('No task data found (SQLite store unavailable)');
677
- }
678
- const taskMap = new Map(tasks.map((t) => [t.id, t]));
679
- const issues = [];
680
- // 1. Done tasks with incomplete subtasks
681
- for (const task of tasks) {
682
- if (task.status === 'done') {
683
- const incompleteChildren = tasks.filter((t) => t.parentId === task.id && t.status !== 'done' && t.status !== 'cancelled');
684
- for (const child of incompleteChildren) {
685
- issues.push({
686
- type: 'done_with_incomplete_subtask',
687
- taskId: task.id,
688
- message: `Task ${task.id} is done but child ${child.id} ("${child.title}") has status "${child.status}"`,
689
- severity: 'error',
690
- });
691
- }
692
- }
693
- }
694
- // 2. Dependency cycles
695
- const reportedCycles = new Set();
696
- for (const task of tasks) {
697
- if (task.depends && task.depends.length > 0) {
698
- const cycle = detectCircularDeps(task.id, tasks);
699
- if (cycle.length > 0) {
700
- const cycleKey = [...cycle].sort().join(',');
701
- if (!reportedCycles.has(cycleKey)) {
702
- reportedCycles.add(cycleKey);
703
- issues.push({
704
- type: 'dependency_cycle',
705
- taskId: task.id,
706
- message: `Dependency cycle detected: ${cycle.join(' -> ')}`,
707
- severity: 'error',
708
- });
709
- }
710
- }
711
- }
712
- }
713
- // 3. Orphaned references — query taskDependencies directly to catch refs filtered
714
- // out by loadDependenciesForTasks (which strips non-existent dependsOn IDs).
715
- try {
716
- const { getDb } = await import('../store/sqlite.js');
717
- const schemaTable = await import('../store/tasks-schema.js');
718
- const db = await getDb(projectRoot);
719
- const allDepRows = await db.select().from(schemaTable.taskDependencies).all();
720
- for (const dep of allDepRows) {
721
- if (!taskMap.has(dep.dependsOn)) {
722
- issues.push({
723
- type: 'orphaned_dependency',
724
- taskId: dep.taskId,
725
- message: `Task ${dep.taskId} depends on non-existent task ${dep.dependsOn}`,
726
- severity: 'error',
727
- });
728
- }
729
- }
730
- }
731
- catch {
732
- // Fall back to task.depends if direct DB query unavailable
733
- for (const task of tasks) {
734
- if (task.depends) {
735
- for (const depId of task.depends) {
736
- if (!taskMap.has(depId)) {
737
- issues.push({
738
- type: 'orphaned_dependency',
739
- taskId: task.id,
740
- message: `Task ${task.id} depends on non-existent task ${depId}`,
741
- severity: 'error',
742
- });
743
- }
744
- }
745
- }
746
- }
747
- }
748
- // 4. Stale tasks
749
- const thirtyDaysMs = 30 * 24 * 60 * 60 * 1000;
750
- const now = Date.now();
751
- for (const task of tasks) {
752
- if (task.status === 'active') {
753
- const lastUpdate = task.updatedAt || task.createdAt;
754
- if (lastUpdate) {
755
- const ageMs = now - new Date(lastUpdate).getTime();
756
- if (ageMs > thirtyDaysMs) {
757
- const ageDays = Math.floor(ageMs / (1000 * 60 * 60 * 24));
758
- issues.push({
759
- type: 'stale_task',
760
- taskId: task.id,
761
- message: `Task ${task.id} has been active for ${ageDays} days without update`,
762
- severity: 'warning',
763
- });
764
- }
765
- }
766
- }
767
- }
768
- // 5. Status inconsistencies
769
- for (const task of tasks) {
770
- if (task.parentId && (task.status === 'active' || task.status === 'pending')) {
771
- const parent = taskMap.get(task.parentId);
772
- if (parent && (parent.status === 'done' || parent.status === 'cancelled')) {
773
- issues.push({
774
- type: 'status_inconsistency',
775
- taskId: task.id,
776
- message: `Task ${task.id} is "${task.status}" but parent ${parent.id} is "${parent.status}"`,
777
- severity: 'error',
778
- });
779
- }
780
- }
781
- }
782
- // 6. Duplicate titles
783
- const titleMap = new Map();
784
- for (const task of tasks) {
785
- const titleLower = task.title.toLowerCase().trim();
786
- if (!titleMap.has(titleLower)) {
787
- titleMap.set(titleLower, []);
788
- }
789
- titleMap.get(titleLower).push(task.id);
790
- }
791
- for (const [title, ids] of titleMap) {
792
- if (ids.length > 1) {
793
- issues.push({
794
- type: 'duplicate_title',
795
- taskId: ids[0],
796
- message: `Duplicate title "${title}" found on tasks: ${ids.join(', ')}`,
797
- severity: 'info',
798
- });
799
- }
800
- }
801
- return {
802
- coherent: issues.filter((i) => i.severity === 'error').length === 0,
803
- issues,
804
- };
805
- }
806
- // ============================================================================
807
- // Test Run
808
- // ============================================================================
809
- /**
810
- * Execute test suite via subprocess.
811
- * @task T4786
812
- */
813
- export function coreTestRun(params, projectRoot) {
814
- const hasVitest = existsSync(join(projectRoot, 'node_modules', '.bin', 'vitest'));
815
- const hasBats = existsSync(join(projectRoot, 'tests'));
816
- if (!hasVitest && !hasBats) {
817
- return {
818
- ran: false,
819
- message: 'No test runner found (vitest or bats tests/ directory)',
820
- };
821
- }
822
- try {
823
- const args = ['vitest', 'run', '--reporter=json'];
824
- if (params?.scope) {
825
- args.push(params.scope);
826
- }
827
- if (params?.pattern) {
828
- args.push('--testNamePattern', params.pattern);
829
- }
830
- const result = execFileSync('npx', args, {
831
- cwd: projectRoot,
832
- timeout: 120000,
833
- encoding: 'utf-8',
834
- stdio: ['pipe', 'pipe', 'pipe'],
835
- });
836
- let parsed;
837
- try {
838
- parsed = JSON.parse(result);
839
- }
840
- catch {
841
- parsed = null;
842
- }
843
- return {
844
- ran: true,
845
- runner: 'vitest',
846
- output: parsed || result.slice(0, 2000),
847
- exitCode: 0,
848
- };
849
- }
850
- catch (error) {
851
- const execError = error;
852
- return {
853
- ran: true,
854
- runner: 'vitest',
855
- exitCode: execError.status || 1,
856
- stdout: (execError.stdout || '').slice(0, 2000),
857
- stderr: (execError.stderr || '').slice(0, 2000),
858
- passed: false,
859
- };
860
- }
861
- }
862
- // ============================================================================
863
- // Batch Validate
864
- // ============================================================================
865
- /**
866
- * Batch validate all tasks against schema and rules.
867
- * @task T4786
868
- */
869
- export async function coreBatchValidate(projectRoot) {
870
- const accessor = await getAccessor(projectRoot);
871
- const { tasks: batchTasks } = await accessor.queryTasks({});
872
- const archiveData = await accessor.loadArchive();
873
- const allTasks = [...batchTasks, ...(archiveData?.archivedTasks || [])];
874
- const results = [];
875
- let totalErrors = 0;
876
- let totalWarnings = 0;
877
- const allIds = new Set(allTasks.map((t) => t.id));
878
- const allDescriptions = allTasks.map((t) => t.description ?? '');
879
- for (const task of allTasks) {
880
- const violations = [];
881
- violations.push(...validateTitleDescription(task.title, task.description));
882
- violations.push(...validateTimestamps(task));
883
- violations.push(...validateIdUniqueness(task.id, allIds));
884
- const otherDescs = allDescriptions.filter((_, i) => allTasks[i].id !== task.id);
885
- violations.push(...validateNoDuplicateDescription(task.description ?? '', otherDescs));
886
- if (task.parentId) {
887
- const parent = allTasks.find((t) => t.id === task.parentId);
888
- if (parent) {
889
- violations.push(...validateHierarchy(task.parentId, allTasks));
890
- }
891
- }
892
- const errors = violations.filter((v) => v.severity === 'error').length;
893
- const warnings = violations.filter((v) => v.severity === 'warning').length;
894
- totalErrors += errors;
895
- totalWarnings += warnings;
896
- results.push({
897
- taskId: task.id,
898
- valid: errors === 0,
899
- errorCount: errors,
900
- warningCount: warnings,
901
- violations,
902
- });
903
- }
904
- return {
905
- totalTasks: allTasks.length,
906
- validTasks: results.filter((r) => r.valid).length,
907
- invalidTasks: results.filter((r) => !r.valid).length,
908
- totalErrors,
909
- totalWarnings,
910
- results: results.filter((r) => !r.valid),
911
- };
912
- }
913
- // ============================================================================
914
- // Test Coverage
915
- // ============================================================================
916
- /**
917
- * Get test coverage metrics.
918
- * @task T4786
919
- */
920
- export function coreTestCoverage(projectRoot) {
921
- const coveragePath = join(projectRoot, 'coverage', 'coverage-summary.json');
922
- if (!existsSync(coveragePath)) {
923
- return {
924
- available: false,
925
- message: 'No coverage data found. Run tests with coverage first.',
926
- };
927
- }
928
- const coverageData = readJsonFile(coveragePath);
929
- if (!coverageData) {
930
- throw new Error('Failed to read coverage data');
931
- }
932
- return {
933
- available: true,
934
- ...coverageData,
935
- };
936
- }
937
- //# sourceMappingURL=validate-ops.js.map