@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,40 +0,0 @@
1
- /**
2
- * Archive old/ended sessions.
3
- *
4
- * @task T4782
5
- * @epic T4654
6
- */
7
- import { getAccessor } from '../store/data-accessor.js';
8
- /**
9
- * Archive old/ended sessions.
10
- * Identifies ended and suspended sessions older than the threshold.
11
- * With SQLite, all sessions live in a single table — "archiving" marks them
12
- * as identified for potential cleanup rather than moving between arrays.
13
- */
14
- export async function archiveSessions(projectRoot, olderThan) {
15
- const accessor = await getAccessor(projectRoot);
16
- const sessions = await accessor.loadSessions();
17
- if (!sessions || sessions.length === 0) {
18
- return { archived: [], count: 0 };
19
- }
20
- const archivedIds = [];
21
- for (const session of sessions) {
22
- if (session.status === 'active')
23
- continue;
24
- // Only archive ended, orphaned, or suspended sessions
25
- if (session.status !== 'ended' &&
26
- session.status !== 'orphaned' &&
27
- session.status !== 'suspended')
28
- continue;
29
- // Check age threshold
30
- if (olderThan) {
31
- const sessionDate = session.endedAt || session.startedAt;
32
- if (sessionDate && new Date(sessionDate) > new Date(olderThan)) {
33
- continue;
34
- }
35
- }
36
- archivedIds.push(session.id);
37
- }
38
- return { archived: archivedIds, count: archivedIds.length };
39
- }
40
- //# sourceMappingURL=session-archive.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"session-archive.js","sourceRoot":"","sources":["../../src/sessions/session-archive.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,WAAmB,EACnB,SAAkB;IAElB,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,WAAW,CAAC,CAAC;IAEhD,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,CAAC;IAE/C,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACpC,CAAC;IAED,MAAM,WAAW,GAAa,EAAE,CAAC;IAEjC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ;YAAE,SAAS;QAC1C,sDAAsD;QACtD,IACE,OAAO,CAAC,MAAM,KAAK,OAAO;YAC1B,OAAO,CAAC,MAAM,KAAK,UAAU;YAC7B,OAAO,CAAC,MAAM,KAAK,WAAW;YAE9B,SAAS;QAEX,sBAAsB;QACtB,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,SAAS,CAAC;YACzD,IAAI,WAAW,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC/D,SAAS;YACX,CAAC;QACH,CAAC;QAED,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC;AAC9D,CAAC"}
@@ -1,59 +0,0 @@
1
- /**
2
- * Remove orphaned sessions and clean up stale data.
3
- *
4
- * @task T4782
5
- * @task T2304
6
- * @epic T4654
7
- */
8
- import { getRawConfigValue } from '../config.js';
9
- import { getAccessor } from '../store/data-accessor.js';
10
- /** Default auto-end threshold when no config is set (7 days). */
11
- const DEFAULT_AUTO_END_DAYS = 7;
12
- /**
13
- * Remove orphaned sessions, auto-end stale active sessions, and clean up stale data.
14
- *
15
- * Stale active sessions (no activity beyond the configured threshold) are
16
- * transitioned to 'ended' with an auto-end note. The threshold is read from
17
- * `retention.autoEndActiveAfterDays` in the project config (default: 7 days).
18
- *
19
- * @task T2304
20
- */
21
- export async function cleanupSessions(projectRoot) {
22
- const accessor = await getAccessor(projectRoot);
23
- const sessions = await accessor.loadSessions();
24
- if (sessions.length === 0) {
25
- return { removed: [], autoEnded: [], cleaned: false };
26
- }
27
- const removed = [];
28
- const autoEnded = [];
29
- // Read auto-end threshold from config
30
- const configDays = await getRawConfigValue('retention.autoEndActiveAfterDays', projectRoot);
31
- const autoEndDays = typeof configDays === 'number' && configDays > 0 ? configDays : DEFAULT_AUTO_END_DAYS;
32
- const autoEndMs = autoEndDays * 24 * 60 * 60 * 1000;
33
- const now = Date.now();
34
- for (const session of sessions) {
35
- // Auto-end stale active sessions (T2304)
36
- if (session.status === 'active') {
37
- const sessionTime = new Date(session.startedAt).getTime();
38
- if (now - sessionTime > autoEndMs) {
39
- session.status = 'ended';
40
- session.endedAt = new Date().toISOString();
41
- if (!session.notes)
42
- session.notes = [];
43
- session.notes.push(`Auto-ended: session exceeded ${autoEndDays}-day inactivity threshold`);
44
- autoEnded.push(session.id);
45
- await accessor.upsertSingleSession(session);
46
- }
47
- }
48
- // Identify archived sessions to remove
49
- if (session.status === 'archived') {
50
- removed.push(session.id);
51
- }
52
- }
53
- // Remove archived sessions
54
- for (const id of removed) {
55
- await accessor.removeSingleSession(id);
56
- }
57
- return { removed, autoEnded, cleaned: removed.length > 0 || autoEnded.length > 0 };
58
- }
59
- //# sourceMappingURL=session-cleanup.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"session-cleanup.js","sourceRoot":"","sources":["../../src/sessions/session-cleanup.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,iEAAiE;AACjE,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAEhC;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,WAAmB;IAEnB,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,WAAW,CAAC,CAAC;IAEhD,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,CAAC;IAE/C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACxD,CAAC;IAED,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,sCAAsC;IACtC,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,kCAAkC,EAAE,WAAW,CAAC,CAAC;IAC5F,MAAM,WAAW,GACf,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,qBAAqB,CAAC;IACxF,MAAM,SAAS,GAAG,WAAW,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IACpD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAEvB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,yCAAyC;QACzC,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAChC,MAAM,WAAW,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;YAC1D,IAAI,GAAG,GAAG,WAAW,GAAG,SAAS,EAAE,CAAC;gBAClC,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC;gBACzB,OAAO,CAAC,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBAC3C,IAAI,CAAC,OAAO,CAAC,KAAK;oBAAE,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;gBACvC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,gCAAgC,WAAW,2BAA2B,CAAC,CAAC;gBAC3F,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAC3B,MAAM,QAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;QAED,uCAAuC;QACvC,IAAK,OAAO,CAAC,MAAiB,KAAK,UAAU,EAAE,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,2BAA2B;IAC3B,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;QACzB,MAAM,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;AACrF,CAAC"}
@@ -1,134 +0,0 @@
1
- /**
2
- * Compute context drift score for a session.
3
- *
4
- * @task T4782
5
- * @epic T4654
6
- */
7
- import { ExitCode } from '@cleocode/contracts';
8
- import { CleoError } from '../errors.js';
9
- import { getAccessor } from '../store/data-accessor.js';
10
- /**
11
- * Collect all descendant task IDs for a given parent task.
12
- */
13
- function collectDescendantIds(parentId, tasks) {
14
- const result = new Set();
15
- for (const task of tasks) {
16
- if (task.parentId === parentId) {
17
- result.add(task.id);
18
- const grandchildren = collectDescendantIds(task.id, tasks);
19
- for (const gc of grandchildren) {
20
- result.add(gc);
21
- }
22
- }
23
- }
24
- return result;
25
- }
26
- /**
27
- * Compute context drift score for the current session.
28
- * Compares session progress against original scope by counting
29
- * completed vs total tasks in scope, and detecting out-of-scope work.
30
- */
31
- export async function getContextDrift(projectRoot, params) {
32
- const accessor = await getAccessor(projectRoot);
33
- const { tasks } = await accessor.queryTasks({});
34
- const focus = await accessor.getMetaValue('focus_state');
35
- const current = {
36
- tasks,
37
- focus: focus ?? undefined,
38
- };
39
- // Find the active session (or specified session)
40
- let session;
41
- if (params?.sessionId) {
42
- const sessions = await accessor.loadSessions();
43
- session = sessions.find((s) => s.id === params.sessionId);
44
- if (!session) {
45
- throw new CleoError(ExitCode.SESSION_NOT_FOUND, `Session '${params.sessionId}' not found`);
46
- }
47
- }
48
- else {
49
- const activeSession = await accessor.getActiveSession();
50
- session = activeSession ?? undefined;
51
- }
52
- const factors = [];
53
- // If no session with scope, compute a basic drift from focus state
54
- if (!session) {
55
- const focusTask = current.focus?.currentTask;
56
- if (!focusTask) {
57
- return {
58
- score: 0,
59
- factors: ['No active session or focus'],
60
- completedInScope: 0,
61
- totalInScope: 0,
62
- outOfScope: 0,
63
- };
64
- }
65
- const rootTaskId = focusTask;
66
- const inScopeIds = collectDescendantIds(rootTaskId, tasks);
67
- inScopeIds.add(rootTaskId);
68
- const inScopeTasks = tasks.filter((t) => inScopeIds.has(t.id));
69
- const completedInScope = inScopeTasks.filter((t) => t.status === 'done').length;
70
- const totalInScope = inScopeTasks.length;
71
- const score = totalInScope > 0 ? Math.round((completedInScope / totalInScope) * 100) : 0;
72
- factors.push('Single-session mode (focus-based scope)');
73
- if (completedInScope === 0)
74
- factors.push('No tasks completed in scope yet');
75
- return { score, factors, completedInScope, totalInScope, outOfScope: 0 };
76
- }
77
- // Multi-session: use session scope to determine in-scope tasks
78
- const rootTaskId = session.scope.rootTaskId ?? session.scope.epicId ?? '';
79
- const inScopeIds = new Set();
80
- if (session.scope.explicitTaskIds && session.scope.explicitTaskIds.length > 0) {
81
- for (const id of session.scope.explicitTaskIds) {
82
- inScopeIds.add(id);
83
- }
84
- }
85
- else {
86
- inScopeIds.add(rootTaskId);
87
- if (session.scope.includeDescendants !== false) {
88
- const descendants = collectDescendantIds(rootTaskId, tasks);
89
- for (const id of descendants) {
90
- inScopeIds.add(id);
91
- }
92
- }
93
- }
94
- if (session.scope.excludeTaskIds) {
95
- for (const id of session.scope.excludeTaskIds) {
96
- inScopeIds.delete(id);
97
- }
98
- }
99
- const inScopeTasks = tasks.filter((t) => inScopeIds.has(t.id));
100
- const completedInScope = inScopeTasks.filter((t) => t.status === 'done').length;
101
- const totalInScope = inScopeTasks.length;
102
- // Detect out-of-scope work: tasks completed during session that are NOT in scope
103
- let outOfScope = 0;
104
- const sessionStartTime = new Date(session.startedAt).getTime();
105
- for (const task of tasks) {
106
- if (!inScopeIds.has(task.id) && task.status === 'done') {
107
- const completedAt = typeof task.completedAt === 'string' ? new Date(task.completedAt).getTime() : 0;
108
- if (completedAt >= sessionStartTime) {
109
- outOfScope++;
110
- }
111
- }
112
- }
113
- // Calculate drift score (0 = no progress, 100 = all done in scope)
114
- let score = 0;
115
- if (totalInScope > 0) {
116
- const progressRatio = completedInScope / totalInScope;
117
- const driftPenalty = outOfScope > 0 ? Math.min(outOfScope / totalInScope, 0.5) : 0;
118
- score = Math.round(Math.max(0, Math.min(100, progressRatio * 100 - driftPenalty * 50)));
119
- }
120
- if (totalInScope === 0)
121
- factors.push('No tasks found in session scope');
122
- if (completedInScope === 0 && totalInScope > 0)
123
- factors.push('No tasks completed in scope yet');
124
- if (completedInScope === totalInScope && totalInScope > 0)
125
- factors.push('All in-scope tasks completed');
126
- if (outOfScope > 0)
127
- factors.push(`${outOfScope} task(s) completed outside of session scope`);
128
- if (outOfScope === 0 && completedInScope > 0)
129
- factors.push('All completed work is within scope');
130
- if (session.scope.type)
131
- factors.push(`Scope type: ${session.scope.type}`);
132
- return { score, factors, completedInScope, totalInScope, outOfScope };
133
- }
134
- //# sourceMappingURL=session-drift.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"session-drift.js","sourceRoot":"","sources":["../../src/sessions/session-drift.ts"],"names":[],"mappings":"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"}
@@ -1,144 +0,0 @@
1
- /**
2
- * Session enforcement - require active sessions for write operations.
3
- *
4
- * Part of the Epic-Bound Session architecture. Enforces that write operations
5
- * (add, update, complete) require an active session.
6
- *
7
- * @task T4454
8
- * @epic T4454
9
- */
10
- import { existsSync, readFileSync } from 'node:fs';
11
- import { join } from 'node:path';
12
- import { ExitCode } from '@cleocode/contracts';
13
- import { CleoError } from '../errors.js';
14
- import { getCleoDir } from '../paths.js';
15
- import { sessionStatus } from './index.js';
16
- /** Synchronous config value reader. */
17
- function readConfigValueSync(path, defaultValue, cwd) {
18
- try {
19
- const configPath = join(getCleoDir(cwd), 'config.json');
20
- if (!existsSync(configPath))
21
- return defaultValue;
22
- const config = JSON.parse(readFileSync(configPath, 'utf-8'));
23
- const keys = path.split('.');
24
- let value = config;
25
- for (const key of keys) {
26
- if (value == null || typeof value !== 'object')
27
- return defaultValue;
28
- value = value[key];
29
- }
30
- return value ?? defaultValue;
31
- }
32
- catch {
33
- return defaultValue;
34
- }
35
- }
36
- /** Get the current enforcement mode. */
37
- export function getEnforcementMode(cwd) {
38
- // CLEO_TEST_MODE disables enforcement in vitest — tests validate enforcement
39
- // logic directly via unit tests, not via side effects during data setup.
40
- if (process.env.VITEST)
41
- return 'none';
42
- try {
43
- const requiredForMutate = readConfigValueSync('enforcement.session.requiredForMutate', true, cwd);
44
- if (requiredForMutate === false)
45
- return 'none';
46
- // Legacy mode fallback from config
47
- const mode = readConfigValueSync('session.enforcement', 'strict', cwd);
48
- if (mode === 'strict' || mode === 'warn' || mode === 'none')
49
- return mode;
50
- return 'strict'; // Default
51
- }
52
- catch {
53
- return 'strict';
54
- }
55
- }
56
- /** Check if session enforcement is enabled. */
57
- export function isSessionEnforcementEnabled(cwd) {
58
- return getEnforcementMode(cwd) !== 'none';
59
- }
60
- /** Get active session info. Returns null if no active session. */
61
- export async function getActiveSessionInfo(cwd) {
62
- const session = await sessionStatus(cwd);
63
- if (!session)
64
- return null;
65
- return {
66
- id: session.id,
67
- name: session.name,
68
- scope: session.scope,
69
- };
70
- }
71
- /**
72
- * Require an active session for write operations.
73
- * In strict mode, throws if no session is active.
74
- * In warn mode, returns a warning but allows the operation.
75
- * In none mode, always allows.
76
- */
77
- export async function requireActiveSession(operation, cwd) {
78
- const mode = getEnforcementMode(cwd);
79
- if (mode === 'none') {
80
- return { allowed: true, mode, session: null };
81
- }
82
- const session = await getActiveSessionInfo(cwd);
83
- if (session) {
84
- return { allowed: true, mode, session };
85
- }
86
- // No active session
87
- if (mode === 'strict') {
88
- throw new CleoError(ExitCode.SESSION_REQUIRED, `Operation '${operation}' requires an active session`, {
89
- fix: 'Start a session with \'cleo session start --scope epic:T### --auto-start --name "Work"\'',
90
- alternatives: [
91
- {
92
- action: 'Start session',
93
- command: 'cleo session start --scope epic:T001 --auto-start --name "Work"',
94
- },
95
- { action: 'List sessions', command: 'cleo session list' },
96
- ],
97
- });
98
- }
99
- // Warn mode
100
- return {
101
- allowed: true,
102
- mode,
103
- session: null,
104
- warning: `No active session for operation '${operation}'. Consider starting one.`,
105
- };
106
- }
107
- /**
108
- * Validate that a task is within the current session's scope.
109
- * Only enforced when a session is active.
110
- */
111
- export async function validateTaskInScope(taskId, taskEpicId, cwd) {
112
- const mode = getEnforcementMode(cwd);
113
- if (mode === 'none')
114
- return { inScope: true };
115
- const session = await getActiveSessionInfo(cwd);
116
- if (!session)
117
- return { inScope: true }; // No session = no scope enforcement
118
- // Global scope allows everything
119
- if (session.scope.type === 'global')
120
- return { inScope: true };
121
- // Epic scope: task must be within the session's epic
122
- if (session.scope.type === 'epic' && session.scope.epicId) {
123
- const epicId = session.scope.epicId;
124
- // Task is the epic itself or is a child
125
- if (taskId === epicId || taskEpicId === epicId) {
126
- return { inScope: true };
127
- }
128
- if (mode === 'strict') {
129
- throw new CleoError(ExitCode.TASK_NOT_IN_SCOPE, `Task ${taskId} is not in scope of session ${session.id} (epic: ${epicId})`, {
130
- fix: `Focus on tasks within epic ${epicId} or start a new session`,
131
- alternatives: [
132
- { action: 'View session', command: `cleo session status` },
133
- { action: 'End session', command: `cleo session end` },
134
- ],
135
- });
136
- }
137
- return {
138
- inScope: false,
139
- warning: `Task ${taskId} is outside session scope (epic: ${epicId})`,
140
- };
141
- }
142
- return { inScope: true };
143
- }
144
- //# sourceMappingURL=session-enforcement.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"session-enforcement.js","sourceRoot":"","sources":["../../src/sessions/session-enforcement.ts"],"names":[],"mappings":"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"}
@@ -1,253 +0,0 @@
1
- /**
2
- * Session grading - rubric-based behavioral analysis of agent sessions.
3
- *
4
- * Reads audit log entries for a session and applies a 5-dimension rubric
5
- * to score agent behavior:
6
- * - Session discipline (20pts)
7
- * - Discovery efficiency (20pts)
8
- * - Task hygiene (20pts)
9
- * - Error protocol (20pts)
10
- * - Progressive disclosure use (20pts)
11
- *
12
- * @task T4916
13
- */
14
- import { existsSync } from 'node:fs';
15
- import { appendFile, mkdir, readFile } from 'node:fs/promises';
16
- import { join } from 'node:path';
17
- import { queryAudit } from '../audit.js';
18
- import { getCleoDirAbsolute } from '../paths.js';
19
- /**
20
- * Grade a session by sessionId using the 5-dimension behavioral rubric.
21
- */
22
- export async function gradeSession(sessionId, cwd) {
23
- const sessionEntries = await queryAudit({ sessionId });
24
- const result = {
25
- sessionId,
26
- totalScore: 0,
27
- maxScore: 100,
28
- dimensions: {
29
- sessionDiscipline: { score: 0, max: 20, evidence: [] },
30
- discoveryEfficiency: { score: 0, max: 20, evidence: [] },
31
- taskHygiene: { score: 0, max: 20, evidence: [] },
32
- errorProtocol: { score: 0, max: 20, evidence: [] },
33
- disclosureUse: { score: 0, max: 20, evidence: [] },
34
- },
35
- flags: [],
36
- timestamp: new Date().toISOString(),
37
- entryCount: sessionEntries.length,
38
- };
39
- if (sessionEntries.length === 0) {
40
- result.flags.push('No audit entries found for session (use --grade flag when starting session)');
41
- await appendGradeResult(result, cwd);
42
- return result;
43
- }
44
- // -- Dimension 1: Session Discipline (20pts) --
45
- const sessionListCalls = sessionEntries.filter((e) => e.domain === 'session' && e.operation === 'list');
46
- const sessionEndCalls = sessionEntries.filter((e) => e.domain === 'session' && e.operation === 'end');
47
- const taskOps = sessionEntries.filter((e) => e.domain === 'tasks');
48
- let disciplineScore = 0;
49
- if (sessionListCalls.length > 0) {
50
- const firstListTime = new Date(sessionListCalls[0].timestamp).getTime();
51
- const firstTaskTime = taskOps.length > 0 ? new Date(taskOps[0].timestamp).getTime() : Infinity;
52
- if (firstListTime <= firstTaskTime) {
53
- disciplineScore += 10;
54
- result.dimensions.sessionDiscipline.evidence.push('session.list called before first task op');
55
- }
56
- else {
57
- result.flags.push('session.list called after task ops (should check sessions first)');
58
- }
59
- }
60
- else {
61
- result.flags.push('session.list never called (check existing sessions before starting)');
62
- }
63
- if (sessionEndCalls.length > 0) {
64
- disciplineScore += 10;
65
- result.dimensions.sessionDiscipline.evidence.push('session.end called');
66
- }
67
- else {
68
- result.flags.push('session.end never called (always end sessions when done)');
69
- }
70
- result.dimensions.sessionDiscipline.score = disciplineScore;
71
- // -- Dimension 2: Discovery Efficiency (20pts) --
72
- const findCalls = sessionEntries.filter((e) => e.domain === 'tasks' && e.operation === 'find');
73
- const listCalls = sessionEntries.filter((e) => e.domain === 'tasks' && e.operation === 'list');
74
- const showCalls = sessionEntries.filter((e) => e.domain === 'tasks' && e.operation === 'show');
75
- let discoveryScore = 0;
76
- const totalDiscoveryCalls = findCalls.length + listCalls.length;
77
- if (totalDiscoveryCalls > 0) {
78
- const findRatio = findCalls.length / totalDiscoveryCalls;
79
- if (findRatio >= 0.8) {
80
- discoveryScore += 15;
81
- result.dimensions.discoveryEfficiency.evidence.push(`find:list ratio ${(findRatio * 100).toFixed(0)}% >= 80%`);
82
- }
83
- else {
84
- result.flags.push(`tasks.list used ${listCalls.length}x (prefer tasks.find for discovery)`);
85
- discoveryScore += Math.round(15 * findRatio);
86
- }
87
- }
88
- else {
89
- discoveryScore += 10;
90
- result.dimensions.discoveryEfficiency.evidence.push('No discovery calls needed');
91
- }
92
- if (showCalls.length > 0) {
93
- discoveryScore = Math.min(20, discoveryScore + 5);
94
- result.dimensions.discoveryEfficiency.evidence.push(`tasks.show used ${showCalls.length}x for detail`);
95
- }
96
- result.dimensions.discoveryEfficiency.score = Math.min(20, discoveryScore);
97
- // -- Dimension 3: Task Hygiene (20pts) --
98
- const addCalls = sessionEntries.filter((e) => e.domain === 'tasks' && e.operation === 'add' && e.result.success);
99
- const existsCalls = sessionEntries.filter((e) => e.domain === 'tasks' && e.operation === 'exists');
100
- let hygieneScore = 20;
101
- for (const addCall of addCalls) {
102
- const desc = addCall.params?.description;
103
- if (!desc || desc.trim().length === 0) {
104
- hygieneScore -= 5;
105
- result.flags.push(`tasks.add without description (taskId: ${addCall.metadata?.taskId ?? 'unknown'})`);
106
- }
107
- }
108
- const subtaskAdds = addCalls.filter((e) => e.params?.parent);
109
- if (subtaskAdds.length > 0 && existsCalls.length > 0) {
110
- result.dimensions.taskHygiene.evidence.push('Parent existence verified before subtask creation');
111
- }
112
- else if (subtaskAdds.length > 0) {
113
- result.flags.push('Subtasks created without tasks.exists parent check');
114
- hygieneScore -= 3;
115
- }
116
- if (addCalls.length > 0 && hygieneScore >= 20) {
117
- result.dimensions.taskHygiene.evidence.push(`All ${addCalls.length} tasks.add calls had descriptions`);
118
- }
119
- result.dimensions.taskHygiene.score = Math.max(0, hygieneScore);
120
- // -- Dimension 4: Error Protocol (20pts) --
121
- const notFoundErrors = sessionEntries.filter((e) => !e.result.success && e.result.exitCode === 4);
122
- let errorScore = 20;
123
- for (const errEntry of notFoundErrors) {
124
- const errIdx = sessionEntries.indexOf(errEntry);
125
- const nextEntries = sessionEntries.slice(errIdx + 1, errIdx + 5);
126
- const hasRecovery = nextEntries.some((e) => e.domain === 'tasks' && (e.operation === 'find' || e.operation === 'exists'));
127
- if (!hasRecovery) {
128
- errorScore -= 5;
129
- result.flags.push(`E_NOT_FOUND (${errEntry.domain}.${errEntry.operation}) not followed by recovery lookup`);
130
- }
131
- else {
132
- result.dimensions.errorProtocol.evidence.push('E_NOT_FOUND followed by recovery lookup');
133
- }
134
- }
135
- const duplicateCreates = detectDuplicateCreates(sessionEntries);
136
- if (duplicateCreates > 0) {
137
- errorScore -= 5;
138
- result.flags.push(`${duplicateCreates} potentially duplicate task create(s) detected`);
139
- }
140
- if (notFoundErrors.length === 0 && duplicateCreates === 0) {
141
- result.dimensions.errorProtocol.evidence.push('No error protocol violations');
142
- }
143
- result.dimensions.errorProtocol.score = Math.max(0, errorScore);
144
- // -- Dimension 5: Progressive Disclosure Use (20pts) --
145
- const helpCalls = sessionEntries.filter((e) => (e.domain === 'admin' && e.operation === 'help') ||
146
- (e.domain === 'tools' && (e.operation === 'skill.show' || e.operation === 'skill.list')) ||
147
- (e.domain === 'skills' && (e.operation === 'list' || e.operation === 'show')));
148
- // gateway is stored as 'query'/'mutate' in the audit log
149
- const mcpQueryCalls = sessionEntries.filter((e) => e.metadata?.gateway === 'query');
150
- let disclosureScore = 0;
151
- if (helpCalls.length > 0) {
152
- disclosureScore += 10;
153
- result.dimensions.disclosureUse.evidence.push(`Progressive disclosure used (${helpCalls.length}x)`);
154
- }
155
- else {
156
- result.flags.push('No admin.help or skill lookup calls (load ct-cleo for guidance)');
157
- }
158
- if (mcpQueryCalls.length > 0) {
159
- disclosureScore += 10;
160
- result.dimensions.disclosureUse.evidence.push(`query (MCP) used ${mcpQueryCalls.length}x`);
161
- }
162
- else {
163
- result.flags.push('No MCP query calls (prefer query over CLI for programmatic access)');
164
- }
165
- result.dimensions.disclosureUse.score = disclosureScore;
166
- // -- Total --
167
- result.totalScore = Object.values(result.dimensions).reduce((sum, d) => sum + d.score, 0);
168
- await feedGradeToBrain(result, cwd);
169
- await appendGradeResult(result, cwd);
170
- return result;
171
- }
172
- /** Detect potentially duplicate task creates (same title within session). */
173
- function detectDuplicateCreates(entries) {
174
- const creates = entries.filter((e) => e.domain === 'tasks' && e.operation === 'add' && e.result.success);
175
- const titles = creates
176
- .map((e) => e.params?.title?.toLowerCase().trim())
177
- .filter(Boolean);
178
- const unique = new Set(titles);
179
- return titles.length - unique.size;
180
- }
181
- /**
182
- * Feed grade insights back into brain.db as learnings.
183
- * Best-effort — errors are silently caught.
184
- */
185
- async function feedGradeToBrain(result, projectRoot) {
186
- if (!projectRoot)
187
- return;
188
- try {
189
- const { storeLearning } = await import('../memory/learnings.js');
190
- // Find dimensions scoring below 50% of max
191
- const weakDimensions = [];
192
- for (const [name, dim] of Object.entries(result.dimensions)) {
193
- if (dim.score < dim.max * 0.5) {
194
- weakDimensions.push(name);
195
- }
196
- }
197
- if (weakDimensions.length > 0) {
198
- await storeLearning(projectRoot, {
199
- insight: `Session ${result.sessionId} scored ${result.totalScore}/${result.maxScore}. Weak dimensions: ${weakDimensions.join(', ')}`,
200
- source: `grade:${result.sessionId}`,
201
- confidence: 0.8,
202
- actionable: true,
203
- application: `Improve in next session: ${weakDimensions.join(', ')}`,
204
- });
205
- }
206
- // Store protocol violations as separate learning
207
- if (result.flags.length > 0) {
208
- await storeLearning(projectRoot, {
209
- insight: `Session ${result.sessionId} protocol violations: ${result.flags.join('; ')}`,
210
- source: `grade:${result.sessionId}`,
211
- confidence: 0.7,
212
- actionable: true,
213
- application: 'Address protocol violations in next session',
214
- });
215
- }
216
- }
217
- catch {
218
- // Best-effort — grade feedback should never block
219
- }
220
- }
221
- /** Append a grade result to .cleo/metrics/GRADES.jsonl */
222
- async function appendGradeResult(result, cwd) {
223
- try {
224
- const cleoDir = getCleoDirAbsolute(cwd);
225
- const metricsDir = join(cleoDir, 'metrics');
226
- await mkdir(metricsDir, { recursive: true });
227
- const gradesPath = join(metricsDir, 'GRADES.jsonl');
228
- const line = JSON.stringify({ ...result, evaluator: 'auto' }) + '\n';
229
- await appendFile(gradesPath, line, 'utf8');
230
- }
231
- catch {
232
- // Best-effort
233
- }
234
- }
235
- /** Read past grade results from .cleo/metrics/GRADES.jsonl */
236
- export async function readGrades(sessionId, cwd) {
237
- try {
238
- const cleoDir = getCleoDirAbsolute(cwd);
239
- const gradesPath = join(cleoDir, 'metrics', 'GRADES.jsonl');
240
- if (!existsSync(gradesPath))
241
- return [];
242
- const content = await readFile(gradesPath, 'utf8');
243
- const results = content
244
- .split('\n')
245
- .filter((l) => l.trim())
246
- .map((l) => JSON.parse(l));
247
- return sessionId ? results.filter((r) => r.sessionId === sessionId) : results;
248
- }
249
- catch {
250
- return [];
251
- }
252
- }
253
- //# sourceMappingURL=session-grade.js.map