@cleocode/core 2026.4.9 → 2026.4.12

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 (1011) hide show
  1. package/dist/adapters/adapter-registry.js +64 -0
  2. package/dist/adapters/adapter-registry.js.map +1 -0
  3. package/dist/adapters/discovery.js +83 -0
  4. package/dist/adapters/discovery.js.map +1 -0
  5. package/dist/adapters/index.js +9 -0
  6. package/dist/adapters/index.js.map +1 -0
  7. package/dist/adapters/manager.js +260 -0
  8. package/dist/adapters/manager.js.map +1 -0
  9. package/dist/admin/export-tasks.js +171 -0
  10. package/dist/admin/export-tasks.js.map +1 -0
  11. package/dist/admin/export.js +103 -0
  12. package/dist/admin/export.js.map +1 -0
  13. package/dist/admin/help.js +106 -0
  14. package/dist/admin/help.js.map +1 -0
  15. package/dist/admin/import-tasks.js +182 -0
  16. package/dist/admin/import-tasks.js.map +1 -0
  17. package/dist/admin/import.js +129 -0
  18. package/dist/admin/import.js.map +1 -0
  19. package/dist/admin/index.js +13 -0
  20. package/dist/admin/index.js.map +1 -0
  21. package/dist/adrs/find.js +134 -0
  22. package/dist/adrs/find.js.map +1 -0
  23. package/dist/adrs/index.js +15 -0
  24. package/dist/adrs/index.js.map +1 -0
  25. package/dist/adrs/link-pipeline.js +160 -0
  26. package/dist/adrs/link-pipeline.js.map +1 -0
  27. package/dist/adrs/list.js +43 -0
  28. package/dist/adrs/list.js.map +1 -0
  29. package/dist/adrs/parse.js +51 -0
  30. package/dist/adrs/parse.js.map +1 -0
  31. package/dist/adrs/show.js +22 -0
  32. package/dist/adrs/show.js.map +1 -0
  33. package/dist/adrs/sync.js +188 -0
  34. package/dist/adrs/sync.js.map +1 -0
  35. package/dist/adrs/types.js +9 -0
  36. package/dist/adrs/types.js.map +1 -0
  37. package/dist/adrs/validate.js +57 -0
  38. package/dist/adrs/validate.js.map +1 -0
  39. package/dist/agents/agent-registry.js +288 -0
  40. package/dist/agents/agent-registry.js.map +1 -0
  41. package/dist/agents/agent-schema.d.ts +2 -2
  42. package/dist/agents/agent-schema.js +82 -0
  43. package/dist/agents/agent-schema.js.map +1 -0
  44. package/dist/agents/capacity.js +116 -0
  45. package/dist/agents/capacity.js.map +1 -0
  46. package/dist/agents/execution-learning.js +474 -0
  47. package/dist/agents/execution-learning.js.map +1 -0
  48. package/dist/agents/health-monitor.js +217 -0
  49. package/dist/agents/health-monitor.js.map +1 -0
  50. package/dist/agents/index.js +29 -0
  51. package/dist/agents/index.js.map +1 -0
  52. package/dist/agents/registry.js +314 -0
  53. package/dist/agents/registry.js.map +1 -0
  54. package/dist/agents/retry.js +215 -0
  55. package/dist/agents/retry.js.map +1 -0
  56. package/dist/audit-prune.js +94 -0
  57. package/dist/audit-prune.js.map +1 -0
  58. package/dist/audit.js +68 -0
  59. package/dist/audit.js.map +1 -0
  60. package/dist/backfill/index.js +229 -0
  61. package/dist/backfill/index.js.map +1 -0
  62. package/dist/bootstrap.js +344 -0
  63. package/dist/bootstrap.js.map +1 -0
  64. package/dist/caamp/adapter.js +259 -0
  65. package/dist/caamp/adapter.js.map +1 -0
  66. package/dist/caamp/capability-check.js +38 -0
  67. package/dist/caamp/capability-check.js.map +1 -0
  68. package/dist/caamp/index.js +21 -0
  69. package/dist/caamp/index.js.map +1 -0
  70. package/dist/caamp-init.js +16 -0
  71. package/dist/caamp-init.js.map +1 -0
  72. package/dist/cleo.js +322 -0
  73. package/dist/cleo.js.map +1 -0
  74. package/dist/code/index.js +10 -0
  75. package/dist/code/index.js.map +1 -0
  76. package/dist/code/outline.js +165 -0
  77. package/dist/code/outline.js.map +1 -0
  78. package/dist/code/parser.js +295 -0
  79. package/dist/code/parser.js.map +1 -0
  80. package/dist/code/search.js +135 -0
  81. package/dist/code/search.js.map +1 -0
  82. package/dist/code/unfold.js +155 -0
  83. package/dist/code/unfold.js.map +1 -0
  84. package/dist/codebase-map/analyzers/architecture.d.ts.map +1 -1
  85. package/dist/codebase-map/analyzers/architecture.js +129 -0
  86. package/dist/codebase-map/analyzers/architecture.js.map +1 -0
  87. package/dist/codebase-map/analyzers/concerns.js +122 -0
  88. package/dist/codebase-map/analyzers/concerns.js.map +1 -0
  89. package/dist/codebase-map/analyzers/conventions.js +149 -0
  90. package/dist/codebase-map/analyzers/conventions.js.map +1 -0
  91. package/dist/codebase-map/analyzers/integrations.js +108 -0
  92. package/dist/codebase-map/analyzers/integrations.js.map +1 -0
  93. package/dist/codebase-map/analyzers/stack.js +117 -0
  94. package/dist/codebase-map/analyzers/stack.js.map +1 -0
  95. package/dist/codebase-map/analyzers/structure.js +137 -0
  96. package/dist/codebase-map/analyzers/structure.js.map +1 -0
  97. package/dist/codebase-map/analyzers/testing.js +118 -0
  98. package/dist/codebase-map/analyzers/testing.js.map +1 -0
  99. package/dist/codebase-map/index.js +57 -0
  100. package/dist/codebase-map/index.js.map +1 -0
  101. package/dist/codebase-map/store.js +122 -0
  102. package/dist/codebase-map/store.js.map +1 -0
  103. package/dist/codebase-map/summary.js +152 -0
  104. package/dist/codebase-map/summary.js.map +1 -0
  105. package/dist/compliance/index.js +288 -0
  106. package/dist/compliance/index.js.map +1 -0
  107. package/dist/compliance/protocol-enforcement.js +332 -0
  108. package/dist/compliance/protocol-enforcement.js.map +1 -0
  109. package/dist/compliance/protocol-rules.js +786 -0
  110. package/dist/compliance/protocol-rules.js.map +1 -0
  111. package/dist/compliance/protocol-types.js +79 -0
  112. package/dist/compliance/protocol-types.js.map +1 -0
  113. package/dist/compliance/store.js +53 -0
  114. package/dist/compliance/store.js.map +1 -0
  115. package/dist/conduit/conduit-client.js +107 -0
  116. package/dist/conduit/conduit-client.js.map +1 -0
  117. package/dist/conduit/factory.js +52 -0
  118. package/dist/conduit/factory.js.map +1 -0
  119. package/dist/conduit/http-transport.js +155 -0
  120. package/dist/conduit/http-transport.js.map +1 -0
  121. package/dist/conduit/index.js +15 -0
  122. package/dist/conduit/index.js.map +1 -0
  123. package/dist/conduit/local-transport.d.ts +18 -8
  124. package/dist/conduit/local-transport.d.ts.map +1 -1
  125. package/dist/conduit/local-transport.js +255 -0
  126. package/dist/conduit/local-transport.js.map +1 -0
  127. package/dist/conduit/sse-transport.js +299 -0
  128. package/dist/conduit/sse-transport.js.map +1 -0
  129. package/dist/config/build-config.js +29 -0
  130. package/dist/config/build-config.js.map +1 -0
  131. package/dist/config.d.ts.map +1 -1
  132. package/dist/config.js +400 -0
  133. package/dist/config.js.map +1 -0
  134. package/dist/constants.js +18 -0
  135. package/dist/constants.js.map +1 -0
  136. package/dist/context/index.js +137 -0
  137. package/dist/context/index.js.map +1 -0
  138. package/dist/crypto/credentials.js +191 -0
  139. package/dist/crypto/credentials.js.map +1 -0
  140. package/dist/discovery.js +182 -0
  141. package/dist/discovery.js.map +1 -0
  142. package/dist/engine-result.js +12 -0
  143. package/dist/engine-result.js.map +1 -0
  144. package/dist/error-catalog.js +404 -0
  145. package/dist/error-catalog.js.map +1 -0
  146. package/dist/error-registry.js +393 -0
  147. package/dist/error-registry.js.map +1 -0
  148. package/dist/errors.d.ts +19 -0
  149. package/dist/errors.d.ts.map +1 -1
  150. package/dist/errors.js +173 -0
  151. package/dist/errors.js.map +1 -0
  152. package/dist/hooks/handlers/agent-hooks.js +106 -0
  153. package/dist/hooks/handlers/agent-hooks.js.map +1 -0
  154. package/dist/hooks/handlers/context-hooks.js +111 -0
  155. package/dist/hooks/handlers/context-hooks.js.map +1 -0
  156. package/dist/hooks/handlers/error-hooks.js +52 -0
  157. package/dist/hooks/handlers/error-hooks.js.map +1 -0
  158. package/dist/hooks/handlers/file-hooks.js +104 -0
  159. package/dist/hooks/handlers/file-hooks.js.map +1 -0
  160. package/dist/hooks/handlers/handler-helpers.js +61 -0
  161. package/dist/hooks/handlers/handler-helpers.js.map +1 -0
  162. package/dist/hooks/handlers/index.js +28 -0
  163. package/dist/hooks/handlers/index.js.map +1 -0
  164. package/dist/hooks/handlers/memory-bridge-refresh.js +42 -0
  165. package/dist/hooks/handlers/memory-bridge-refresh.js.map +1 -0
  166. package/dist/hooks/handlers/notification-hooks.js +62 -0
  167. package/dist/hooks/handlers/notification-hooks.js.map +1 -0
  168. package/dist/hooks/handlers/session-hooks.d.ts +21 -0
  169. package/dist/hooks/handlers/session-hooks.d.ts.map +1 -1
  170. package/dist/hooks/handlers/session-hooks.js +142 -0
  171. package/dist/hooks/handlers/session-hooks.js.map +1 -0
  172. package/dist/hooks/handlers/task-hooks.js +65 -0
  173. package/dist/hooks/handlers/task-hooks.js.map +1 -0
  174. package/dist/hooks/handlers/work-capture-hooks.js +165 -0
  175. package/dist/hooks/handlers/work-capture-hooks.js.map +1 -0
  176. package/dist/hooks/index.js +13 -0
  177. package/dist/hooks/index.js.map +1 -0
  178. package/dist/hooks/payload-schemas.d.ts +2 -2
  179. package/dist/hooks/payload-schemas.js +220 -0
  180. package/dist/hooks/payload-schemas.js.map +1 -0
  181. package/dist/hooks/provider-hooks.js +66 -0
  182. package/dist/hooks/provider-hooks.js.map +1 -0
  183. package/dist/hooks/registry.js +229 -0
  184. package/dist/hooks/registry.js.map +1 -0
  185. package/dist/hooks/types.js +66 -0
  186. package/dist/hooks/types.js.map +1 -0
  187. package/dist/hooks.js +136 -0
  188. package/dist/hooks.js.map +1 -0
  189. package/dist/index.js +175 -68684
  190. package/dist/index.js.map +1 -7
  191. package/dist/init.d.ts +1 -2
  192. package/dist/init.d.ts.map +1 -1
  193. package/dist/init.js +851 -0
  194. package/dist/init.js.map +1 -0
  195. package/dist/inject/index.js +82 -0
  196. package/dist/inject/index.js.map +1 -0
  197. package/dist/injection.js +343 -0
  198. package/dist/injection.js.map +1 -0
  199. package/dist/intelligence/adaptive-validation.js +497 -0
  200. package/dist/intelligence/adaptive-validation.js.map +1 -0
  201. package/dist/intelligence/impact.js +675 -0
  202. package/dist/intelligence/impact.js.map +1 -0
  203. package/dist/intelligence/index.js +22 -0
  204. package/dist/intelligence/index.js.map +1 -0
  205. package/dist/intelligence/patterns.js +492 -0
  206. package/dist/intelligence/patterns.js.map +1 -0
  207. package/dist/intelligence/prediction.js +499 -0
  208. package/dist/intelligence/prediction.js.map +1 -0
  209. package/dist/intelligence/types.js +13 -0
  210. package/dist/intelligence/types.js.map +1 -0
  211. package/dist/internal.d.ts +15 -5
  212. package/dist/internal.d.ts.map +1 -1
  213. package/dist/internal.js +306 -0
  214. package/dist/internal.js.map +1 -0
  215. package/dist/issue/create.js +121 -0
  216. package/dist/issue/create.js.map +1 -0
  217. package/dist/issue/diagnostics.js +59 -0
  218. package/dist/issue/diagnostics.js.map +1 -0
  219. package/dist/issue/index.js +10 -0
  220. package/dist/issue/index.js.map +1 -0
  221. package/dist/issue/template-parser.js +267 -0
  222. package/dist/issue/template-parser.js.map +1 -0
  223. package/dist/json-schema-validator.js +76 -0
  224. package/dist/json-schema-validator.js.map +1 -0
  225. package/dist/lib/index.js +11 -0
  226. package/dist/lib/index.js.map +1 -0
  227. package/dist/lib/retry.js +152 -0
  228. package/dist/lib/retry.js.map +1 -0
  229. package/dist/lib/tree-sitter-languages.js +71 -0
  230. package/dist/lib/tree-sitter-languages.js.map +1 -0
  231. package/dist/lifecycle/chain-composition.js +152 -0
  232. package/dist/lifecycle/chain-composition.js.map +1 -0
  233. package/dist/lifecycle/chain-store.js +246 -0
  234. package/dist/lifecycle/chain-store.js.map +1 -0
  235. package/dist/lifecycle/consolidate-rcasd.js +352 -0
  236. package/dist/lifecycle/consolidate-rcasd.js.map +1 -0
  237. package/dist/lifecycle/default-chain.js +176 -0
  238. package/dist/lifecycle/default-chain.js.map +1 -0
  239. package/dist/lifecycle/evidence.js +180 -0
  240. package/dist/lifecycle/evidence.js.map +1 -0
  241. package/dist/lifecycle/frontmatter.js +363 -0
  242. package/dist/lifecycle/frontmatter.js.map +1 -0
  243. package/dist/lifecycle/index.js +756 -0
  244. package/dist/lifecycle/index.js.map +1 -0
  245. package/dist/lifecycle/pipeline.js +656 -0
  246. package/dist/lifecycle/pipeline.js.map +1 -0
  247. package/dist/lifecycle/rcasd-index.js +326 -0
  248. package/dist/lifecycle/rcasd-index.js.map +1 -0
  249. package/dist/lifecycle/rcasd-paths.js +220 -0
  250. package/dist/lifecycle/rcasd-paths.js.map +1 -0
  251. package/dist/lifecycle/resume.js +864 -0
  252. package/dist/lifecycle/resume.js.map +1 -0
  253. package/dist/lifecycle/stage-artifacts.js +94 -0
  254. package/dist/lifecycle/stage-artifacts.js.map +1 -0
  255. package/dist/lifecycle/stage-guidance.js +234 -0
  256. package/dist/lifecycle/stage-guidance.js.map +1 -0
  257. package/dist/lifecycle/stages.js +534 -0
  258. package/dist/lifecycle/stages.js.map +1 -0
  259. package/dist/lifecycle/state-machine.js +516 -0
  260. package/dist/lifecycle/state-machine.js.map +1 -0
  261. package/dist/lifecycle/tessera-engine.js +249 -0
  262. package/dist/lifecycle/tessera-engine.js.map +1 -0
  263. package/dist/logger.js +140 -0
  264. package/dist/logger.js.map +1 -0
  265. package/dist/memory/auto-extract.js +177 -0
  266. package/dist/memory/auto-extract.js.map +1 -0
  267. package/dist/memory/brain-embedding.js +66 -0
  268. package/dist/memory/brain-embedding.js.map +1 -0
  269. package/dist/memory/brain-lifecycle.js +298 -0
  270. package/dist/memory/brain-lifecycle.js.map +1 -0
  271. package/dist/memory/brain-links.js +161 -0
  272. package/dist/memory/brain-links.js.map +1 -0
  273. package/dist/memory/brain-maintenance.js +114 -0
  274. package/dist/memory/brain-maintenance.js.map +1 -0
  275. package/dist/memory/brain-migration.js +149 -0
  276. package/dist/memory/brain-migration.js.map +1 -0
  277. package/dist/memory/brain-reasoning.js +215 -0
  278. package/dist/memory/brain-reasoning.js.map +1 -0
  279. package/dist/memory/brain-retrieval.js +542 -0
  280. package/dist/memory/brain-retrieval.js.map +1 -0
  281. package/dist/memory/brain-row-types.js +10 -0
  282. package/dist/memory/brain-row-types.js.map +1 -0
  283. package/dist/memory/brain-search.js +519 -0
  284. package/dist/memory/brain-search.js.map +1 -0
  285. package/dist/memory/brain-similarity.js +145 -0
  286. package/dist/memory/brain-similarity.js.map +1 -0
  287. package/dist/memory/claude-mem-migration.js +277 -0
  288. package/dist/memory/claude-mem-migration.js.map +1 -0
  289. package/dist/memory/decisions.js +162 -0
  290. package/dist/memory/decisions.js.map +1 -0
  291. package/dist/memory/embedding-local.js +97 -0
  292. package/dist/memory/embedding-local.js.map +1 -0
  293. package/dist/memory/embedding-queue.js +271 -0
  294. package/dist/memory/embedding-queue.js.map +1 -0
  295. package/dist/memory/embedding-worker.js +58 -0
  296. package/dist/memory/embedding-worker.js.map +1 -0
  297. package/dist/memory/engine-compat.js +1397 -0
  298. package/dist/memory/engine-compat.js.map +1 -0
  299. package/dist/memory/index.js +1140 -0
  300. package/dist/memory/index.js.map +1 -0
  301. package/dist/memory/learnings.d.ts +2 -2
  302. package/dist/memory/learnings.js +121 -0
  303. package/dist/memory/learnings.js.map +1 -0
  304. package/dist/memory/memory-bridge.js +370 -0
  305. package/dist/memory/memory-bridge.js.map +1 -0
  306. package/dist/memory/patterns.d.ts +4 -4
  307. package/dist/memory/patterns.js +122 -0
  308. package/dist/memory/patterns.js.map +1 -0
  309. package/dist/memory/pipeline-manifest-sqlite.js +975 -0
  310. package/dist/memory/pipeline-manifest-sqlite.js.map +1 -0
  311. package/dist/memory/session-memory.js +331 -0
  312. package/dist/memory/session-memory.js.map +1 -0
  313. package/dist/metrics/ab-test.js +260 -0
  314. package/dist/metrics/ab-test.js.map +1 -0
  315. package/dist/metrics/aggregation.js +363 -0
  316. package/dist/metrics/aggregation.js.map +1 -0
  317. package/dist/metrics/common.js +64 -0
  318. package/dist/metrics/common.js.map +1 -0
  319. package/dist/metrics/enums.js +78 -0
  320. package/dist/metrics/enums.js.map +1 -0
  321. package/dist/metrics/index.js +19 -0
  322. package/dist/metrics/index.js.map +1 -0
  323. package/dist/metrics/model-provider-registry.js +88 -0
  324. package/dist/metrics/model-provider-registry.js.map +1 -0
  325. package/dist/metrics/otel-integration.js +263 -0
  326. package/dist/metrics/otel-integration.js.map +1 -0
  327. package/dist/metrics/provider-detection.js +103 -0
  328. package/dist/metrics/provider-detection.js.map +1 -0
  329. package/dist/metrics/token-estimation.js +253 -0
  330. package/dist/metrics/token-estimation.js.map +1 -0
  331. package/dist/metrics/token-service.js +450 -0
  332. package/dist/metrics/token-service.js.map +1 -0
  333. package/dist/migration/agent-outputs.js +316 -0
  334. package/dist/migration/agent-outputs.js.map +1 -0
  335. package/dist/migration/checksum.js +92 -0
  336. package/dist/migration/checksum.js.map +1 -0
  337. package/dist/migration/index.js +282 -0
  338. package/dist/migration/index.js.map +1 -0
  339. package/dist/migration/logger.js +360 -0
  340. package/dist/migration/logger.js.map +1 -0
  341. package/dist/migration/preflight.js +9 -0
  342. package/dist/migration/preflight.js.map +1 -0
  343. package/dist/migration/state.js +421 -0
  344. package/dist/migration/state.js.map +1 -0
  345. package/dist/migration/validate.js +241 -0
  346. package/dist/migration/validate.js.map +1 -0
  347. package/dist/mvi-helpers.js +74 -0
  348. package/dist/mvi-helpers.js.map +1 -0
  349. package/dist/nexus/deps.js +375 -0
  350. package/dist/nexus/deps.js.map +1 -0
  351. package/dist/nexus/discover.js +288 -0
  352. package/dist/nexus/discover.js.map +1 -0
  353. package/dist/nexus/hash.js +10 -0
  354. package/dist/nexus/hash.js.map +1 -0
  355. package/dist/nexus/index.js +40 -0
  356. package/dist/nexus/index.js.map +1 -0
  357. package/dist/nexus/migrate-json-to-sqlite.js +115 -0
  358. package/dist/nexus/migrate-json-to-sqlite.js.map +1 -0
  359. package/dist/nexus/permissions.js +105 -0
  360. package/dist/nexus/permissions.js.map +1 -0
  361. package/dist/nexus/query.js +175 -0
  362. package/dist/nexus/query.js.map +1 -0
  363. package/dist/nexus/registry.js +584 -0
  364. package/dist/nexus/registry.js.map +1 -0
  365. package/dist/nexus/sharing/index.js +288 -0
  366. package/dist/nexus/sharing/index.js.map +1 -0
  367. package/dist/nexus/transfer-types.js +8 -0
  368. package/dist/nexus/transfer-types.js.map +1 -0
  369. package/dist/nexus/transfer.js +263 -0
  370. package/dist/nexus/transfer.js.map +1 -0
  371. package/dist/nexus/workspace.js +355 -0
  372. package/dist/nexus/workspace.js.map +1 -0
  373. package/dist/observability/index.js +103 -0
  374. package/dist/observability/index.js.map +1 -0
  375. package/dist/observability/log-filter.js +63 -0
  376. package/dist/observability/log-filter.js.map +1 -0
  377. package/dist/observability/log-parser.js +99 -0
  378. package/dist/observability/log-parser.js.map +1 -0
  379. package/dist/observability/log-reader.js +139 -0
  380. package/dist/observability/log-reader.js.map +1 -0
  381. package/dist/observability/types.js +19 -0
  382. package/dist/observability/types.js.map +1 -0
  383. package/dist/orchestration/analyze.js +107 -0
  384. package/dist/orchestration/analyze.js.map +1 -0
  385. package/dist/orchestration/bootstrap.js +132 -0
  386. package/dist/orchestration/bootstrap.js.map +1 -0
  387. package/dist/orchestration/context.js +56 -0
  388. package/dist/orchestration/context.js.map +1 -0
  389. package/dist/orchestration/critical-path.js +100 -0
  390. package/dist/orchestration/critical-path.js.map +1 -0
  391. package/dist/orchestration/hierarchy.js +183 -0
  392. package/dist/orchestration/hierarchy.js.map +1 -0
  393. package/dist/orchestration/index.js +287 -0
  394. package/dist/orchestration/index.js.map +1 -0
  395. package/dist/orchestration/parallel.js +89 -0
  396. package/dist/orchestration/parallel.js.map +1 -0
  397. package/dist/orchestration/protocol-validators.js +815 -0
  398. package/dist/orchestration/protocol-validators.js.map +1 -0
  399. package/dist/orchestration/skill-ops.js +98 -0
  400. package/dist/orchestration/skill-ops.js.map +1 -0
  401. package/dist/orchestration/status.js +107 -0
  402. package/dist/orchestration/status.js.map +1 -0
  403. package/dist/orchestration/unblock.js +103 -0
  404. package/dist/orchestration/unblock.js.map +1 -0
  405. package/dist/orchestration/validate-spawn.js +67 -0
  406. package/dist/orchestration/validate-spawn.js.map +1 -0
  407. package/dist/orchestration/waves.js +86 -0
  408. package/dist/orchestration/waves.js.map +1 -0
  409. package/dist/otel/index.js +163 -0
  410. package/dist/otel/index.js.map +1 -0
  411. package/dist/output.d.ts +32 -11
  412. package/dist/output.d.ts.map +1 -1
  413. package/dist/output.js +164 -0
  414. package/dist/output.js.map +1 -0
  415. package/dist/pagination.js +64 -0
  416. package/dist/pagination.js.map +1 -0
  417. package/dist/paths.d.ts +39 -9
  418. package/dist/paths.d.ts.map +1 -1
  419. package/dist/paths.js +842 -0
  420. package/dist/paths.js.map +1 -0
  421. package/dist/phases/deps.js +372 -0
  422. package/dist/phases/deps.js.map +1 -0
  423. package/dist/phases/index.js +349 -0
  424. package/dist/phases/index.js.map +1 -0
  425. package/dist/pipeline/index.js +10 -0
  426. package/dist/pipeline/index.js.map +1 -0
  427. package/dist/pipeline/phase.js +45 -0
  428. package/dist/pipeline/phase.js.map +1 -0
  429. package/dist/platform.js +211 -0
  430. package/dist/platform.js.map +1 -0
  431. package/dist/project-info.js +84 -0
  432. package/dist/project-info.js.map +1 -0
  433. package/dist/reconciliation/index.js +10 -0
  434. package/dist/reconciliation/index.js.map +1 -0
  435. package/dist/reconciliation/link-store.js +129 -0
  436. package/dist/reconciliation/link-store.js.map +1 -0
  437. package/dist/reconciliation/reconciliation-engine.js +298 -0
  438. package/dist/reconciliation/reconciliation-engine.js.map +1 -0
  439. package/dist/release/artifacts.js +427 -0
  440. package/dist/release/artifacts.js.map +1 -0
  441. package/dist/release/changelog-writer.js +151 -0
  442. package/dist/release/changelog-writer.js.map +1 -0
  443. package/dist/release/channel.js +144 -0
  444. package/dist/release/channel.js.map +1 -0
  445. package/dist/release/ci.js +166 -0
  446. package/dist/release/ci.js.map +1 -0
  447. package/dist/release/github-pr.js +225 -0
  448. package/dist/release/github-pr.js.map +1 -0
  449. package/dist/release/guards.js +116 -0
  450. package/dist/release/guards.js.map +1 -0
  451. package/dist/release/index.js +22 -0
  452. package/dist/release/index.js.map +1 -0
  453. package/dist/release/release-config.js +158 -0
  454. package/dist/release/release-config.js.map +1 -0
  455. package/dist/release/release-manifest.js +1019 -0
  456. package/dist/release/release-manifest.js.map +1 -0
  457. package/dist/release/version-bump.js +255 -0
  458. package/dist/release/version-bump.js.map +1 -0
  459. package/dist/remote/index.js +257 -0
  460. package/dist/remote/index.js.map +1 -0
  461. package/dist/repair.js +130 -0
  462. package/dist/repair.js.map +1 -0
  463. package/dist/research/index.js +2 -0
  464. package/dist/research/index.js.map +1 -0
  465. package/dist/roadmap/index.js +59 -0
  466. package/dist/roadmap/index.js.map +1 -0
  467. package/dist/routing/capability-matrix.js +1556 -0
  468. package/dist/routing/capability-matrix.js.map +1 -0
  469. package/dist/routing/index.js +9 -0
  470. package/dist/routing/index.js.map +1 -0
  471. package/dist/scaffold.d.ts +15 -2
  472. package/dist/scaffold.d.ts.map +1 -1
  473. package/dist/scaffold.js +1759 -0
  474. package/dist/scaffold.js.map +1 -0
  475. package/dist/schema-management.js +295 -0
  476. package/dist/schema-management.js.map +1 -0
  477. package/dist/security/index.js +9 -0
  478. package/dist/security/index.js.map +1 -0
  479. package/dist/security/input-sanitization.js +321 -0
  480. package/dist/security/input-sanitization.js.map +1 -0
  481. package/dist/sequence/index.js +295 -0
  482. package/dist/sequence/index.js.map +1 -0
  483. package/dist/sessions/assumptions.js +54 -0
  484. package/dist/sessions/assumptions.js.map +1 -0
  485. package/dist/sessions/briefing.js +377 -0
  486. package/dist/sessions/briefing.js.map +1 -0
  487. package/dist/sessions/context-alert.js +222 -0
  488. package/dist/sessions/context-alert.js.map +1 -0
  489. package/dist/sessions/context-inject.js +61 -0
  490. package/dist/sessions/context-inject.js.map +1 -0
  491. package/dist/sessions/context-monitor.js +98 -0
  492. package/dist/sessions/context-monitor.js.map +1 -0
  493. package/dist/sessions/decisions.js +65 -0
  494. package/dist/sessions/decisions.js.map +1 -0
  495. package/dist/sessions/find.js +65 -0
  496. package/dist/sessions/find.js.map +1 -0
  497. package/dist/sessions/handoff.js +328 -0
  498. package/dist/sessions/handoff.js.map +1 -0
  499. package/dist/sessions/hitl-warnings.js +254 -0
  500. package/dist/sessions/hitl-warnings.js.map +1 -0
  501. package/dist/sessions/index.js +327 -0
  502. package/dist/sessions/index.js.map +1 -0
  503. package/dist/sessions/session-archive.js +40 -0
  504. package/dist/sessions/session-archive.js.map +1 -0
  505. package/dist/sessions/session-cleanup.js +59 -0
  506. package/dist/sessions/session-cleanup.js.map +1 -0
  507. package/dist/sessions/session-drift.js +134 -0
  508. package/dist/sessions/session-drift.js.map +1 -0
  509. package/dist/sessions/session-enforcement.js +144 -0
  510. package/dist/sessions/session-enforcement.js.map +1 -0
  511. package/dist/sessions/session-grade.js +253 -0
  512. package/dist/sessions/session-grade.js.map +1 -0
  513. package/dist/sessions/session-history.js +42 -0
  514. package/dist/sessions/session-history.js.map +1 -0
  515. package/dist/sessions/session-id.js +81 -0
  516. package/dist/sessions/session-id.js.map +1 -0
  517. package/dist/sessions/session-memory-bridge.js +52 -0
  518. package/dist/sessions/session-memory-bridge.js.map +1 -0
  519. package/dist/sessions/session-show.js +24 -0
  520. package/dist/sessions/session-show.js.map +1 -0
  521. package/dist/sessions/session-stats.js +69 -0
  522. package/dist/sessions/session-stats.js.map +1 -0
  523. package/dist/sessions/session-suspend.js +39 -0
  524. package/dist/sessions/session-suspend.js.map +1 -0
  525. package/dist/sessions/session-switch.js +51 -0
  526. package/dist/sessions/session-switch.js.map +1 -0
  527. package/dist/sessions/session-view.js +76 -0
  528. package/dist/sessions/session-view.js.map +1 -0
  529. package/dist/sessions/snapshot.js +213 -0
  530. package/dist/sessions/snapshot.js.map +1 -0
  531. package/dist/sessions/statusline-setup.js +85 -0
  532. package/dist/sessions/statusline-setup.js.map +1 -0
  533. package/dist/sessions/types.js +8 -0
  534. package/dist/sessions/types.js.map +1 -0
  535. package/dist/skills/agents/config.js +94 -0
  536. package/dist/skills/agents/config.js.map +1 -0
  537. package/dist/skills/agents/install.js +116 -0
  538. package/dist/skills/agents/install.js.map +1 -0
  539. package/dist/skills/agents/registry.js +161 -0
  540. package/dist/skills/agents/registry.js.map +1 -0
  541. package/dist/skills/discovery.js +333 -0
  542. package/dist/skills/discovery.js.map +1 -0
  543. package/dist/skills/dispatch.js +347 -0
  544. package/dist/skills/dispatch.js.map +1 -0
  545. package/dist/skills/dynamic-skill-generator.d.ts +0 -2
  546. package/dist/skills/dynamic-skill-generator.d.ts.map +1 -1
  547. package/dist/skills/dynamic-skill-generator.js +87 -0
  548. package/dist/skills/dynamic-skill-generator.js.map +1 -0
  549. package/dist/skills/index.js +44 -0
  550. package/dist/skills/index.js.map +1 -0
  551. package/dist/skills/injection/subagent.js +195 -0
  552. package/dist/skills/injection/subagent.js.map +1 -0
  553. package/dist/skills/injection/token.js +260 -0
  554. package/dist/skills/injection/token.js.map +1 -0
  555. package/dist/skills/install.js +40 -0
  556. package/dist/skills/install.js.map +1 -0
  557. package/dist/skills/manifests/contribution.js +175 -0
  558. package/dist/skills/manifests/contribution.js.map +1 -0
  559. package/dist/skills/manifests/research.js +281 -0
  560. package/dist/skills/manifests/research.js.map +1 -0
  561. package/dist/skills/manifests/resolver.js +146 -0
  562. package/dist/skills/manifests/resolver.js.map +1 -0
  563. package/dist/skills/marketplace.js +90 -0
  564. package/dist/skills/marketplace.js.map +1 -0
  565. package/dist/skills/orchestrator/spawn.js +178 -0
  566. package/dist/skills/orchestrator/spawn.js.map +1 -0
  567. package/dist/skills/orchestrator/startup.js +451 -0
  568. package/dist/skills/orchestrator/startup.js.map +1 -0
  569. package/dist/skills/orchestrator/validator.js +301 -0
  570. package/dist/skills/orchestrator/validator.js.map +1 -0
  571. package/dist/skills/precedence-integration.js +73 -0
  572. package/dist/skills/precedence-integration.js.map +1 -0
  573. package/dist/skills/precedence-types.js +16 -0
  574. package/dist/skills/precedence-types.js.map +1 -0
  575. package/dist/skills/routing-table.js +63 -0
  576. package/dist/skills/routing-table.js.map +1 -0
  577. package/dist/skills/skill-paths.js +217 -0
  578. package/dist/skills/skill-paths.js.map +1 -0
  579. package/dist/skills/test-utility.js +55 -0
  580. package/dist/skills/test-utility.js.map +1 -0
  581. package/dist/skills/types.js +118 -0
  582. package/dist/skills/types.js.map +1 -0
  583. package/dist/skills/validation.js +183 -0
  584. package/dist/skills/validation.js.map +1 -0
  585. package/dist/skills/version.js +57 -0
  586. package/dist/skills/version.js.map +1 -0
  587. package/dist/snapshot/index.js +188 -0
  588. package/dist/snapshot/index.js.map +1 -0
  589. package/dist/spawn/adapter-registry.js +246 -0
  590. package/dist/spawn/adapter-registry.js.map +1 -0
  591. package/dist/spawn/index.js +10 -0
  592. package/dist/spawn/index.js.map +1 -0
  593. package/dist/stats/index.js +343 -0
  594. package/dist/stats/index.js.map +1 -0
  595. package/dist/stats/workflow-telemetry.js +400 -0
  596. package/dist/stats/workflow-telemetry.js.map +1 -0
  597. package/dist/sticky/archive.js +47 -0
  598. package/dist/sticky/archive.js.map +1 -0
  599. package/dist/sticky/convert.js +235 -0
  600. package/dist/sticky/convert.js.map +1 -0
  601. package/dist/sticky/create.js +48 -0
  602. package/dist/sticky/create.js.map +1 -0
  603. package/dist/sticky/id.js +35 -0
  604. package/dist/sticky/id.js.map +1 -0
  605. package/dist/sticky/index.js +16 -0
  606. package/dist/sticky/index.js.map +1 -0
  607. package/dist/sticky/list.js +44 -0
  608. package/dist/sticky/list.js.map +1 -0
  609. package/dist/sticky/purge.js +45 -0
  610. package/dist/sticky/purge.js.map +1 -0
  611. package/dist/sticky/show.js +42 -0
  612. package/dist/sticky/show.js.map +1 -0
  613. package/dist/sticky/types.js +10 -0
  614. package/dist/sticky/types.js.map +1 -0
  615. package/dist/store/agent-registry-accessor.d.ts +203 -12
  616. package/dist/store/agent-registry-accessor.d.ts.map +1 -1
  617. package/dist/store/agent-registry-accessor.js +783 -0
  618. package/dist/store/agent-registry-accessor.js.map +1 -0
  619. package/dist/store/api-key-kdf.d.ts +73 -0
  620. package/dist/store/api-key-kdf.d.ts.map +1 -0
  621. package/dist/store/api-key-kdf.js +84 -0
  622. package/dist/store/api-key-kdf.js.map +1 -0
  623. package/dist/store/atomic.js +167 -0
  624. package/dist/store/atomic.js.map +1 -0
  625. package/dist/store/backup.js +94 -0
  626. package/dist/store/backup.js.map +1 -0
  627. package/dist/store/brain-accessor.js +397 -0
  628. package/dist/store/brain-accessor.js.map +1 -0
  629. package/dist/store/brain-schema.d.ts +8 -8
  630. package/dist/store/brain-schema.js +215 -0
  631. package/dist/store/brain-schema.js.map +1 -0
  632. package/dist/store/brain-sqlite.js +222 -0
  633. package/dist/store/brain-sqlite.js.map +1 -0
  634. package/dist/store/cache.js +168 -0
  635. package/dist/store/cache.js.map +1 -0
  636. package/dist/store/chain-schema.js +51 -0
  637. package/dist/store/chain-schema.js.map +1 -0
  638. package/dist/store/cleanup-legacy.d.ts +128 -0
  639. package/dist/store/cleanup-legacy.d.ts.map +1 -0
  640. package/dist/store/cleanup-legacy.js +171 -0
  641. package/dist/store/cleanup-legacy.js.map +1 -0
  642. package/dist/store/conduit-sqlite.d.ts +184 -0
  643. package/dist/store/conduit-sqlite.d.ts.map +1 -0
  644. package/dist/store/conduit-sqlite.js +570 -0
  645. package/dist/store/conduit-sqlite.js.map +1 -0
  646. package/dist/store/converters.js +124 -0
  647. package/dist/store/converters.js.map +1 -0
  648. package/dist/store/cross-db-cleanup.js +319 -0
  649. package/dist/store/cross-db-cleanup.js.map +1 -0
  650. package/dist/store/data-accessor.js +26 -0
  651. package/dist/store/data-accessor.js.map +1 -0
  652. package/dist/store/data-safety-central.js +269 -0
  653. package/dist/store/data-safety-central.js.map +1 -0
  654. package/dist/store/data-safety.js +274 -0
  655. package/dist/store/data-safety.js.map +1 -0
  656. package/dist/store/db-helpers.js +224 -0
  657. package/dist/store/db-helpers.js.map +1 -0
  658. package/dist/store/export.js +155 -0
  659. package/dist/store/export.js.map +1 -0
  660. package/dist/store/file-utils.js +270 -0
  661. package/dist/store/file-utils.js.map +1 -0
  662. package/dist/store/git-checkpoint.js +365 -0
  663. package/dist/store/git-checkpoint.js.map +1 -0
  664. package/dist/store/global-salt.d.ts +78 -0
  665. package/dist/store/global-salt.d.ts.map +1 -0
  666. package/dist/store/global-salt.js +147 -0
  667. package/dist/store/global-salt.js.map +1 -0
  668. package/dist/store/import-logging.js +139 -0
  669. package/dist/store/import-logging.js.map +1 -0
  670. package/dist/store/import-remap.js +145 -0
  671. package/dist/store/import-remap.js.map +1 -0
  672. package/dist/store/import-sort.js +121 -0
  673. package/dist/store/import-sort.js.map +1 -0
  674. package/dist/store/index.d.ts +1 -0
  675. package/dist/store/index.d.ts.map +1 -1
  676. package/dist/store/index.js +29 -0
  677. package/dist/store/index.js.map +1 -0
  678. package/dist/store/json.js +208 -0
  679. package/dist/store/json.js.map +1 -0
  680. package/dist/store/lifecycle-store.js +249 -0
  681. package/dist/store/lifecycle-store.js.map +1 -0
  682. package/dist/store/lock.js +70 -0
  683. package/dist/store/lock.js.map +1 -0
  684. package/dist/store/migrate-signaldock-to-conduit.d.ts +81 -0
  685. package/dist/store/migrate-signaldock-to-conduit.d.ts.map +1 -0
  686. package/dist/store/migrate-signaldock-to-conduit.js +555 -0
  687. package/dist/store/migrate-signaldock-to-conduit.js.map +1 -0
  688. package/dist/store/migration-manager.js +151 -0
  689. package/dist/store/migration-manager.js.map +1 -0
  690. package/dist/store/migration-sqlite.js +676 -0
  691. package/dist/store/migration-sqlite.js.map +1 -0
  692. package/dist/store/nexus-schema.js +62 -0
  693. package/dist/store/nexus-schema.js.map +1 -0
  694. package/dist/store/nexus-sqlite.d.ts +14 -2
  695. package/dist/store/nexus-sqlite.d.ts.map +1 -1
  696. package/dist/store/nexus-sqlite.js +242 -0
  697. package/dist/store/nexus-sqlite.js.map +1 -0
  698. package/dist/store/nexus-validation-schemas.js +40 -0
  699. package/dist/store/nexus-validation-schemas.js.map +1 -0
  700. package/dist/store/parsers.js +37 -0
  701. package/dist/store/parsers.js.map +1 -0
  702. package/dist/store/project-detect.js +457 -0
  703. package/dist/store/project-detect.js.map +1 -0
  704. package/dist/store/provider.js +101 -0
  705. package/dist/store/provider.js.map +1 -0
  706. package/dist/store/safety-data-accessor.js +257 -0
  707. package/dist/store/safety-data-accessor.js.map +1 -0
  708. package/dist/store/schema.js +7 -0
  709. package/dist/store/schema.js.map +1 -0
  710. package/dist/store/session-store.js +219 -0
  711. package/dist/store/session-store.js.map +1 -0
  712. package/dist/store/signaldock-sqlite.d.ts +122 -19
  713. package/dist/store/signaldock-sqlite.d.ts.map +1 -1
  714. package/dist/store/signaldock-sqlite.js +550 -0
  715. package/dist/store/signaldock-sqlite.js.map +1 -0
  716. package/dist/store/sqlite-backup.d.ts +121 -10
  717. package/dist/store/sqlite-backup.d.ts.map +1 -1
  718. package/dist/store/sqlite-backup.js +359 -0
  719. package/dist/store/sqlite-backup.js.map +1 -0
  720. package/dist/store/sqlite-data-accessor.js +787 -0
  721. package/dist/store/sqlite-data-accessor.js.map +1 -0
  722. package/dist/store/sqlite.d.ts.map +1 -1
  723. package/dist/store/sqlite.js +481 -0
  724. package/dist/store/sqlite.js.map +1 -0
  725. package/dist/store/status-registry.js +8 -0
  726. package/dist/store/status-registry.js.map +1 -0
  727. package/dist/store/task-store.js +358 -0
  728. package/dist/store/task-store.js.map +1 -0
  729. package/dist/store/tasks-schema.d.ts +8 -8
  730. package/dist/store/tasks-schema.js +610 -0
  731. package/dist/store/tasks-schema.js.map +1 -0
  732. package/dist/store/typed-query.js +15 -0
  733. package/dist/store/typed-query.js.map +1 -0
  734. package/dist/store/validation-schemas.d.ts +37 -37
  735. package/dist/store/validation-schemas.js +278 -0
  736. package/dist/store/validation-schemas.js.map +1 -0
  737. package/dist/system/archive-analytics.js +277 -0
  738. package/dist/system/archive-analytics.js.map +1 -0
  739. package/dist/system/archive-stats.js +64 -0
  740. package/dist/system/archive-stats.js.map +1 -0
  741. package/dist/system/audit.js +145 -0
  742. package/dist/system/audit.js.map +1 -0
  743. package/dist/system/backup.d.ts +65 -3
  744. package/dist/system/backup.d.ts.map +1 -1
  745. package/dist/system/backup.js +280 -0
  746. package/dist/system/backup.js.map +1 -0
  747. package/dist/system/cleanup.js +134 -0
  748. package/dist/system/cleanup.js.map +1 -0
  749. package/dist/system/health.js +1100 -0
  750. package/dist/system/health.js.map +1 -0
  751. package/dist/system/index.js +18 -0
  752. package/dist/system/index.js.map +1 -0
  753. package/dist/system/inject-generate.js +122 -0
  754. package/dist/system/inject-generate.js.map +1 -0
  755. package/dist/system/labels.js +38 -0
  756. package/dist/system/labels.js.map +1 -0
  757. package/dist/system/metrics.js +61 -0
  758. package/dist/system/metrics.js.map +1 -0
  759. package/dist/system/migrate.js +43 -0
  760. package/dist/system/migrate.js.map +1 -0
  761. package/dist/system/platform-paths.js +80 -0
  762. package/dist/system/platform-paths.js.map +1 -0
  763. package/dist/system/runtime.d.ts +0 -2
  764. package/dist/system/runtime.d.ts.map +1 -1
  765. package/dist/system/runtime.js +161 -0
  766. package/dist/system/runtime.js.map +1 -0
  767. package/dist/system/safestop.js +99 -0
  768. package/dist/system/safestop.js.map +1 -0
  769. package/dist/system/storage-preflight.js +123 -0
  770. package/dist/system/storage-preflight.js.map +1 -0
  771. package/dist/task-work/index.js +159 -0
  772. package/dist/task-work/index.js.map +1 -0
  773. package/dist/tasks/add.d.ts +1 -1
  774. package/dist/tasks/add.d.ts.map +1 -1
  775. package/dist/tasks/add.js +736 -0
  776. package/dist/tasks/add.js.map +1 -0
  777. package/dist/tasks/analyze.js +85 -0
  778. package/dist/tasks/analyze.js.map +1 -0
  779. package/dist/tasks/archive.js +90 -0
  780. package/dist/tasks/archive.js.map +1 -0
  781. package/dist/tasks/atomicity.js +83 -0
  782. package/dist/tasks/atomicity.js.map +1 -0
  783. package/dist/tasks/cancel-ops.js +83 -0
  784. package/dist/tasks/cancel-ops.js.map +1 -0
  785. package/dist/tasks/complete.d.ts.map +1 -1
  786. package/dist/tasks/complete.js +214 -0
  787. package/dist/tasks/complete.js.map +1 -0
  788. package/dist/tasks/crossref-extract.js +73 -0
  789. package/dist/tasks/crossref-extract.js.map +1 -0
  790. package/dist/tasks/delete-preview.js +192 -0
  791. package/dist/tasks/delete-preview.js.map +1 -0
  792. package/dist/tasks/delete.js +120 -0
  793. package/dist/tasks/delete.js.map +1 -0
  794. package/dist/tasks/deletion-strategy.js +200 -0
  795. package/dist/tasks/deletion-strategy.js.map +1 -0
  796. package/dist/tasks/dependency-check.js +278 -0
  797. package/dist/tasks/dependency-check.js.map +1 -0
  798. package/dist/tasks/deps-ready.js +32 -0
  799. package/dist/tasks/deps-ready.js.map +1 -0
  800. package/dist/tasks/enforcement.js +86 -0
  801. package/dist/tasks/enforcement.js.map +1 -0
  802. package/dist/tasks/epic-enforcement.js +294 -0
  803. package/dist/tasks/epic-enforcement.js.map +1 -0
  804. package/dist/tasks/find.d.ts.map +1 -1
  805. package/dist/tasks/find.js +157 -0
  806. package/dist/tasks/find.js.map +1 -0
  807. package/dist/tasks/graph-cache.js +127 -0
  808. package/dist/tasks/graph-cache.js.map +1 -0
  809. package/dist/tasks/graph-ops.js +171 -0
  810. package/dist/tasks/graph-ops.js.map +1 -0
  811. package/dist/tasks/graph-rag.js +328 -0
  812. package/dist/tasks/graph-rag.js.map +1 -0
  813. package/dist/tasks/hierarchy-policy.js +149 -0
  814. package/dist/tasks/hierarchy-policy.js.map +1 -0
  815. package/dist/tasks/hierarchy.js +185 -0
  816. package/dist/tasks/hierarchy.js.map +1 -0
  817. package/dist/tasks/id-generator.js +65 -0
  818. package/dist/tasks/id-generator.js.map +1 -0
  819. package/dist/tasks/index.js +14 -0
  820. package/dist/tasks/index.js.map +1 -0
  821. package/dist/tasks/labels.d.ts.map +1 -1
  822. package/dist/tasks/labels.js +55 -0
  823. package/dist/tasks/labels.js.map +1 -0
  824. package/dist/tasks/list.js +75 -0
  825. package/dist/tasks/list.js.map +1 -0
  826. package/dist/tasks/phase-tracking.js +133 -0
  827. package/dist/tasks/phase-tracking.js.map +1 -0
  828. package/dist/tasks/pipeline-stage.js +248 -0
  829. package/dist/tasks/pipeline-stage.js.map +1 -0
  830. package/dist/tasks/plan.js +268 -0
  831. package/dist/tasks/plan.js.map +1 -0
  832. package/dist/tasks/relates.d.ts.map +1 -1
  833. package/dist/tasks/relates.js +101 -0
  834. package/dist/tasks/relates.js.map +1 -0
  835. package/dist/tasks/show.d.ts.map +1 -1
  836. package/dist/tasks/show.js +83 -0
  837. package/dist/tasks/show.js.map +1 -0
  838. package/dist/tasks/size-weighting.js +86 -0
  839. package/dist/tasks/size-weighting.js.map +1 -0
  840. package/dist/tasks/staleness.js +86 -0
  841. package/dist/tasks/staleness.js.map +1 -0
  842. package/dist/tasks/task-ops.js +1741 -0
  843. package/dist/tasks/task-ops.js.map +1 -0
  844. package/dist/tasks/update.d.ts.map +1 -1
  845. package/dist/tasks/update.js +303 -0
  846. package/dist/tasks/update.js.map +1 -0
  847. package/dist/templates/index.js +10 -0
  848. package/dist/templates/index.js.map +1 -0
  849. package/dist/templates/parser.js +254 -0
  850. package/dist/templates/parser.js.map +1 -0
  851. package/dist/ui/aliases.js +153 -0
  852. package/dist/ui/aliases.js.map +1 -0
  853. package/dist/ui/changelog.js +184 -0
  854. package/dist/ui/changelog.js.map +1 -0
  855. package/dist/ui/command-registry.js +168 -0
  856. package/dist/ui/command-registry.js.map +1 -0
  857. package/dist/ui/flags.js +94 -0
  858. package/dist/ui/flags.js.map +1 -0
  859. package/dist/ui/index.js +24 -0
  860. package/dist/ui/index.js.map +1 -0
  861. package/dist/upgrade.js +1148 -0
  862. package/dist/upgrade.js.map +1 -0
  863. package/dist/validation/chain-validation.js +146 -0
  864. package/dist/validation/chain-validation.js.map +1 -0
  865. package/dist/validation/compliance.js +155 -0
  866. package/dist/validation/compliance.js.map +1 -0
  867. package/dist/validation/docs-sync.js +212 -0
  868. package/dist/validation/docs-sync.js.map +1 -0
  869. package/dist/validation/doctor/checks.js +1069 -0
  870. package/dist/validation/doctor/checks.js.map +1 -0
  871. package/dist/validation/doctor/index.js +9 -0
  872. package/dist/validation/doctor/index.js.map +1 -0
  873. package/dist/validation/doctor/project-cache.js +160 -0
  874. package/dist/validation/doctor/project-cache.js.map +1 -0
  875. package/dist/validation/doctor/utils.js +155 -0
  876. package/dist/validation/doctor/utils.js.map +1 -0
  877. package/dist/validation/engine.d.ts.map +1 -1
  878. package/dist/validation/engine.js +914 -0
  879. package/dist/validation/engine.js.map +1 -0
  880. package/dist/validation/gap-check.js +175 -0
  881. package/dist/validation/gap-check.js.map +1 -0
  882. package/dist/validation/index.js +40 -0
  883. package/dist/validation/index.js.map +1 -0
  884. package/dist/validation/manifest.js +237 -0
  885. package/dist/validation/manifest.js.map +1 -0
  886. package/dist/validation/operation-gate-validators.js +724 -0
  887. package/dist/validation/operation-gate-validators.js.map +1 -0
  888. package/dist/validation/operation-verification-gates.js +532 -0
  889. package/dist/validation/operation-verification-gates.js.map +1 -0
  890. package/dist/validation/param-utils.d.ts +5 -3
  891. package/dist/validation/param-utils.d.ts.map +1 -1
  892. package/dist/validation/param-utils.js +141 -0
  893. package/dist/validation/param-utils.js.map +1 -0
  894. package/dist/validation/protocol-common.js +300 -0
  895. package/dist/validation/protocol-common.js.map +1 -0
  896. package/dist/validation/protocols/_shared.d.ts.map +1 -1
  897. package/dist/validation/protocols/_shared.js +82 -0
  898. package/dist/validation/protocols/_shared.js.map +1 -0
  899. package/dist/validation/protocols/architecture-decision.js +31 -0
  900. package/dist/validation/protocols/architecture-decision.js.map +1 -0
  901. package/dist/validation/protocols/artifact-publish.js +28 -0
  902. package/dist/validation/protocols/artifact-publish.js.map +1 -0
  903. package/dist/validation/protocols/consensus.js +41 -0
  904. package/dist/validation/protocols/consensus.js.map +1 -0
  905. package/dist/validation/protocols/contribution.js +27 -0
  906. package/dist/validation/protocols/contribution.js.map +1 -0
  907. package/dist/validation/protocols/decomposition.js +28 -0
  908. package/dist/validation/protocols/decomposition.js.map +1 -0
  909. package/dist/validation/protocols/implementation.js +24 -0
  910. package/dist/validation/protocols/implementation.js.map +1 -0
  911. package/dist/validation/protocols/provenance.js +29 -0
  912. package/dist/validation/protocols/provenance.js.map +1 -0
  913. package/dist/validation/protocols/release.js +29 -0
  914. package/dist/validation/protocols/release.js.map +1 -0
  915. package/dist/validation/protocols/research.js +24 -0
  916. package/dist/validation/protocols/research.js.map +1 -0
  917. package/dist/validation/protocols/specification.js +27 -0
  918. package/dist/validation/protocols/specification.js.map +1 -0
  919. package/dist/validation/protocols/testing.js +30 -0
  920. package/dist/validation/protocols/testing.js.map +1 -0
  921. package/dist/validation/protocols/validation.js +30 -0
  922. package/dist/validation/protocols/validation.js.map +1 -0
  923. package/dist/validation/schema-integrity.js +170 -0
  924. package/dist/validation/schema-integrity.js.map +1 -0
  925. package/dist/validation/schema-validator.js +176 -0
  926. package/dist/validation/schema-validator.js.map +1 -0
  927. package/dist/validation/validate-ops.js +937 -0
  928. package/dist/validation/validate-ops.js.map +1 -0
  929. package/dist/validation/validation-rules.js +226 -0
  930. package/dist/validation/validation-rules.js.map +1 -0
  931. package/dist/validation/verification.js +321 -0
  932. package/dist/validation/verification.js.map +1 -0
  933. package/package.json +10 -8
  934. package/src/__tests__/paths-walkup.test.ts +305 -0
  935. package/src/__tests__/paths.test.ts +61 -17
  936. package/src/adapters/__tests__/manager.test.ts +0 -1
  937. package/src/codebase-map/analyzers/architecture.ts +0 -1
  938. package/src/conduit/__tests__/local-credential-flow.test.ts +20 -18
  939. package/src/conduit/__tests__/local-transport.test.ts +14 -12
  940. package/src/conduit/local-transport.ts +23 -13
  941. package/src/config.ts +0 -1
  942. package/src/errors.ts +24 -0
  943. package/src/hooks/handlers/__tests__/hook-automation-e2e.test.ts +2 -5
  944. package/src/hooks/handlers/session-hooks.ts +42 -0
  945. package/src/init.ts +1 -2
  946. package/src/internal.ts +67 -3
  947. package/src/lifecycle/cant/lifecycle-rcasd.cant +133 -0
  948. package/src/memory/__tests__/engine-compat.test.ts +2 -2
  949. package/src/memory/__tests__/pipeline-manifest-sqlite.test.ts +4 -4
  950. package/src/observability/__tests__/index.test.ts +4 -4
  951. package/src/observability/__tests__/log-filter.test.ts +4 -4
  952. package/src/output.ts +73 -75
  953. package/src/paths.ts +91 -14
  954. package/src/scaffold.ts +22 -3
  955. package/src/sessions/__tests__/session-grade.integration.test.ts +1 -1
  956. package/src/sessions/__tests__/session-grade.test.ts +2 -2
  957. package/src/skills/__tests__/dynamic-skill-generator.test.ts +0 -2
  958. package/src/skills/dynamic-skill-generator.ts +0 -2
  959. package/src/store/__tests__/agent-registry-accessor.test.ts +807 -0
  960. package/src/store/__tests__/api-key-kdf.test.ts +113 -0
  961. package/src/store/__tests__/cleanup-legacy.test.ts +268 -0
  962. package/src/store/__tests__/conduit-sqlite.test.ts +413 -0
  963. package/src/store/__tests__/database-topology-integration.test.ts +504 -0
  964. package/src/store/__tests__/global-salt.test.ts +195 -0
  965. package/src/store/__tests__/migrate-signaldock-to-conduit.test.ts +715 -0
  966. package/src/store/__tests__/signaldock-sqlite.test.ts +652 -0
  967. package/src/store/__tests__/sqlite-backup-global.test.ts +585 -0
  968. package/src/store/__tests__/sqlite-backup.test.ts +122 -10
  969. package/src/store/__tests__/t310-integration.test.ts +1150 -0
  970. package/src/store/agent-registry-accessor.ts +847 -140
  971. package/src/store/api-key-kdf.ts +104 -0
  972. package/src/store/cleanup-legacy.ts +208 -0
  973. package/src/store/conduit-sqlite.ts +655 -0
  974. package/src/store/global-salt.ts +175 -0
  975. package/src/store/index.ts +7 -0
  976. package/src/store/migrate-signaldock-to-conduit.ts +669 -0
  977. package/src/store/nexus-sqlite.ts +32 -3
  978. package/src/store/signaldock-sqlite.ts +431 -254
  979. package/src/store/sqlite-backup.ts +544 -38
  980. package/src/store/sqlite.ts +19 -3
  981. package/src/system/__tests__/backup.test.ts +237 -0
  982. package/src/system/backup.ts +186 -26
  983. package/src/system/runtime.ts +4 -6
  984. package/src/tasks/__tests__/error-hints.test.ts +256 -0
  985. package/src/tasks/add.ts +99 -9
  986. package/src/tasks/complete.ts +4 -1
  987. package/src/tasks/find.ts +4 -1
  988. package/src/tasks/labels.ts +4 -1
  989. package/src/tasks/relates.ts +16 -4
  990. package/src/tasks/show.ts +4 -1
  991. package/src/tasks/update.ts +32 -3
  992. package/src/validation/__tests__/error-hints.test.ts +97 -0
  993. package/src/validation/engine.ts +16 -1
  994. package/src/validation/param-utils.ts +10 -7
  995. package/src/validation/protocols/_shared.ts +14 -6
  996. package/src/validation/protocols/cant/architecture-decision.cant +80 -0
  997. package/src/validation/protocols/cant/artifact-publish.cant +95 -0
  998. package/src/validation/protocols/cant/consensus.cant +74 -0
  999. package/src/validation/protocols/cant/contribution.cant +82 -0
  1000. package/src/validation/protocols/cant/decomposition.cant +92 -0
  1001. package/src/validation/protocols/cant/implementation.cant +67 -0
  1002. package/src/validation/protocols/cant/provenance.cant +88 -0
  1003. package/src/validation/protocols/cant/release.cant +96 -0
  1004. package/src/validation/protocols/cant/research.cant +66 -0
  1005. package/src/validation/protocols/cant/specification.cant +67 -0
  1006. package/src/validation/protocols/cant/testing.cant +88 -0
  1007. package/src/validation/protocols/cant/validation.cant +65 -0
  1008. package/src/validation/protocols/protocols-markdown/decomposition.md +0 -4
  1009. package/templates/cleo-gitignore +19 -3
  1010. package/templates/config.template.json +0 -1
  1011. package/templates/global-config.template.json +0 -1
@@ -0,0 +1,97 @@
1
+ /**
2
+ * Regression tests: CleoError fix hints on validation-layer throws.
3
+ *
4
+ * Each test invokes a validation function with invalid input and asserts that
5
+ * the thrown CleoError carries a non-empty `fix` string and, where applicable,
6
+ * a `details.field` identifying the failing field.
7
+ *
8
+ * @task T341
9
+ * @epic T335
10
+ */
11
+
12
+ import { describe, expect, it } from 'vitest';
13
+ import { CleoError } from '../../errors.js';
14
+ import { sanitizeFilePath } from '../engine.js';
15
+ import { loadManifestEntryByTaskId, loadManifestEntryFromFile } from '../protocols/_shared.js';
16
+
17
+ // ---------------------------------------------------------------------------
18
+ // Helper
19
+ // ---------------------------------------------------------------------------
20
+
21
+ function assertErrorHints(
22
+ fn: () => unknown,
23
+ opts: { fixIncludes?: string; detailsField?: string },
24
+ ): void {
25
+ let caught: unknown;
26
+ try {
27
+ fn();
28
+ } catch (err) {
29
+ caught = err;
30
+ }
31
+ expect(caught).toBeInstanceOf(CleoError);
32
+ const e = caught as CleoError;
33
+ expect(e.fix).toBeTruthy();
34
+ if (opts.fixIncludes) {
35
+ expect(e.fix).toContain(opts.fixIncludes);
36
+ }
37
+ if (opts.detailsField) {
38
+ expect(e.details).toBeDefined();
39
+ expect(e.details!.field).toBe(opts.detailsField);
40
+ }
41
+ }
42
+
43
+ // ---------------------------------------------------------------------------
44
+ // sanitizeFilePath — engine.ts
45
+ // ---------------------------------------------------------------------------
46
+
47
+ describe('error-hints: sanitizeFilePath', () => {
48
+ it('empty path — fix mentions file path, field=path', () => {
49
+ assertErrorHints(() => sanitizeFilePath(''), {
50
+ detailsField: 'path',
51
+ });
52
+ });
53
+
54
+ it('path with shell metachar — fix mentions shell metacharacters, field=path', () => {
55
+ assertErrorHints(() => sanitizeFilePath('/tmp/file;rm -rf /'), {
56
+ fixIncludes: 'metacharacter',
57
+ detailsField: 'path',
58
+ });
59
+ });
60
+
61
+ it('path ending in backslash — fix mentions backslash, field=path', () => {
62
+ assertErrorHints(() => sanitizeFilePath('/tmp/file\\'), {
63
+ fixIncludes: 'backslash',
64
+ detailsField: 'path',
65
+ });
66
+ });
67
+
68
+ it('path with newline — fix mentions newline, field=path', () => {
69
+ assertErrorHints(() => sanitizeFilePath('/tmp/file\ninjected'), {
70
+ fixIncludes: 'newline',
71
+ detailsField: 'path',
72
+ });
73
+ });
74
+ });
75
+
76
+ // ---------------------------------------------------------------------------
77
+ // loadManifestEntryByTaskId — protocols/_shared.ts
78
+ // ---------------------------------------------------------------------------
79
+
80
+ describe('error-hints: loadManifestEntryByTaskId', () => {
81
+ it('task not in manifest — fix mentions manifest entry, field=taskId', () => {
82
+ // This will always throw NOT_FOUND since no manifest exists in test env
83
+ assertErrorHints(() => loadManifestEntryByTaskId('T9999'), {
84
+ fixIncludes: 'manifest',
85
+ detailsField: 'taskId',
86
+ });
87
+ });
88
+ });
89
+
90
+ describe('error-hints: loadManifestEntryFromFile', () => {
91
+ it('manifest file not found — fix mentions manifest file path, field=manifestFile', () => {
92
+ assertErrorHints(() => loadManifestEntryFromFile('/nonexistent/path/manifest.json'), {
93
+ fixIncludes: 'manifest',
94
+ detailsField: 'manifestFile',
95
+ });
96
+ });
97
+ });
@@ -94,7 +94,10 @@ const SHELL_METACHARACTERS = new Set([
94
94
  */
95
95
  export function sanitizeFilePath(path: string): string {
96
96
  if (!path) {
97
- throw new CleoError(ExitCode.VALIDATION_ERROR, 'Empty path provided');
97
+ throw new CleoError(ExitCode.VALIDATION_ERROR, 'Empty path provided', {
98
+ fix: 'Provide a non-empty file path',
99
+ details: { field: 'path' },
100
+ }); /* internal invariant — no user action */
98
101
  }
99
102
 
100
103
  for (const char of path) {
@@ -102,6 +105,10 @@ export function sanitizeFilePath(path: string): string {
102
105
  throw new CleoError(
103
106
  ExitCode.VALIDATION_ERROR,
104
107
  `Path contains shell metacharacters - potential injection attempt: ${path}`,
108
+ {
109
+ fix: 'Remove shell metacharacters from the file path',
110
+ details: { field: 'path', actual: path },
111
+ },
105
112
  );
106
113
  }
107
114
  }
@@ -110,6 +117,10 @@ export function sanitizeFilePath(path: string): string {
110
117
  throw new CleoError(
111
118
  ExitCode.VALIDATION_ERROR,
112
119
  'Path ends with backslash - potential injection attempt',
120
+ {
121
+ fix: 'Remove trailing backslash from the file path',
122
+ details: { field: 'path', actual: path },
123
+ },
113
124
  );
114
125
  }
115
126
 
@@ -117,6 +128,10 @@ export function sanitizeFilePath(path: string): string {
117
128
  throw new CleoError(
118
129
  ExitCode.VALIDATION_ERROR,
119
130
  'Path contains newline/carriage return - potential injection attempt',
131
+ {
132
+ fix: 'Remove newline characters from the file path',
133
+ details: { field: 'path', actual: path },
134
+ },
120
135
  );
121
136
  }
122
137
 
@@ -56,7 +56,7 @@ interface ParamDef {
56
56
  items?: { type: ParamType };
57
57
  cli?: ParamCliDef;
58
58
  /** Schema config for dispatch adapter. */
59
- mcp?: ParamSchemaDef;
59
+ dispatch?: ParamSchemaDef;
60
60
  }
61
61
 
62
62
  // ---------------------------------------------------------------------------
@@ -79,7 +79,7 @@ export interface JSONSchemaObject {
79
79
  }
80
80
 
81
81
  // ---------------------------------------------------------------------------
82
- // 1. buildMcpInputSchema (name kept for backward compat)
82
+ // 1. buildDispatchInputSchema
83
83
  // ---------------------------------------------------------------------------
84
84
 
85
85
  /**
@@ -87,18 +87,18 @@ export interface JSONSchemaObject {
87
87
  *
88
88
  * Algorithm:
89
89
  * 1. Iterate `def.params`
90
- * 2. Skip params where schema `mcp.hidden === true`
90
+ * 2. Skip params where schema `dispatch.hidden === true`
91
91
  * 3. Map ParamType → JSON Schema type
92
92
  * 4. Collect names where `required === true` into `required[]`
93
93
  * 5. Return { type: 'object', properties, required }
94
94
  */
95
- export function buildMcpInputSchema(def: OperationDef): JSONSchemaObject {
95
+ export function buildDispatchInputSchema(def: OperationDef): JSONSchemaObject {
96
96
  const properties: Record<string, JsonSchemaProperty> = {};
97
97
  const required: string[] = [];
98
98
 
99
99
  for (const param of def.params ?? []) {
100
100
  // Skip CLI-only params from dispatch schema
101
- if (param.mcp?.hidden === true) continue;
101
+ if (param.dispatch?.hidden === true) continue;
102
102
 
103
103
  const prop: JsonSchemaProperty = {
104
104
  type: paramTypeToJsonSchema(param.type),
@@ -109,8 +109,8 @@ export function buildMcpInputSchema(def: OperationDef): JSONSchemaObject {
109
109
  prop.items = { type: 'string' };
110
110
  }
111
111
 
112
- if (param.mcp?.enum) {
113
- prop.enum = param.mcp.enum;
112
+ if (param.dispatch?.enum) {
113
+ prop.enum = param.dispatch.enum;
114
114
  }
115
115
 
116
116
  properties[param.name] = prop;
@@ -123,6 +123,9 @@ export function buildMcpInputSchema(def: OperationDef): JSONSchemaObject {
123
123
  return { type: 'object', properties, required };
124
124
  }
125
125
 
126
+ /** @deprecated Use {@link buildDispatchInputSchema} instead. */
127
+ export const buildMcpInputSchema = buildDispatchInputSchema;
128
+
126
129
  function paramTypeToJsonSchema(t: ParamDef['type']): JsonSchemaType {
127
130
  switch (t) {
128
131
  case 'string':
@@ -46,7 +46,10 @@ export function loadManifestEntryByTaskId(taskId: string): ManifestEntryInput {
46
46
  const manifestPath = getManifestPath();
47
47
  const entry = findManifestEntry(taskId, manifestPath);
48
48
  if (!entry) {
49
- throw new CleoError(ExitCode.NOT_FOUND, `No manifest entry found for task ${taskId}`);
49
+ throw new CleoError(ExitCode.NOT_FOUND, `No manifest entry found for task ${taskId}`, {
50
+ fix: `Ensure the agent wrote a manifest entry for ${taskId} before validation`,
51
+ details: { field: 'taskId', actual: taskId },
52
+ });
50
53
  }
51
54
  return JSON.parse(entry) as ManifestEntryInput;
52
55
  }
@@ -59,7 +62,10 @@ export function loadManifestEntryByTaskId(taskId: string): ManifestEntryInput {
59
62
  */
60
63
  export function loadManifestEntryFromFile(manifestFile: string): ManifestEntryInput {
61
64
  if (!existsSync(manifestFile)) {
62
- throw new CleoError(ExitCode.NOT_FOUND, `Manifest file not found: ${manifestFile}`);
65
+ throw new CleoError(ExitCode.NOT_FOUND, `Manifest file not found: ${manifestFile}`, {
66
+ fix: `Ensure the manifest file exists at: ${manifestFile}`,
67
+ details: { field: 'manifestFile', actual: manifestFile },
68
+ });
63
69
  }
64
70
  return JSON.parse(readFileSync(manifestFile, 'utf-8')) as ManifestEntryInput;
65
71
  }
@@ -78,11 +84,13 @@ export function throwIfStrictFailed(
78
84
  ): void {
79
85
  if (!opts.strict || result.valid) return;
80
86
  const code = PROTOCOL_EXIT_CODES[protocol];
87
+ const errorViolations = result.violations.filter((v) => v.severity === 'error');
81
88
  throw new CleoError(
82
89
  code,
83
- `${protocol} protocol violations for ${taskId}: ${result.violations
84
- .filter((v) => v.severity === 'error')
85
- .map((v) => v.message)
86
- .join('; ')}`,
90
+ `${protocol} protocol violations for ${taskId}: ${errorViolations.map((v) => v.message).join('; ')}`,
91
+ {
92
+ fix: `Review ${protocol} protocol requirements and correct the listed violations`,
93
+ details: { field: 'protocol', actual: protocol },
94
+ },
87
95
  );
88
96
  }
@@ -0,0 +1,80 @@
1
+ ---
2
+ kind: protocol
3
+ version: 1.0.0
4
+ id: ADR
5
+ title: "Architecture Decision Record Protocol"
6
+ status: active
7
+ type: conditional
8
+ audience: "llm-agent, orchestrator"
9
+ tags: "adr, architecture, decisions"
10
+ skillRef: ct-adr-recorder
11
+ lastUpdated: 2026-04-07
12
+ enforcement: advisory
13
+ ---
14
+
15
+ # Architecture Decision Record (ADR) Protocol
16
+ #
17
+ # Provenance: @task T4798 (ADR-006 Implementation)
18
+ # Type: Conditional Protocol
19
+ # Stage: RCADSD - A (ADR)
20
+ # Max Active: 3 protocols (including base)
21
+ #
22
+ # Trigger Conditions
23
+ #
24
+ # This protocol activates when the task involves:
25
+ # Decision Recording: "decision", "adr", "architecture decision"
26
+ # Stage Transition: "after consensus", "begin adr"
27
+ # Formalization: "lock in decision", "formalize choice", "decide"
28
+ # Architectural Shift: "pivot", "new architecture", "supersede"
29
+ # Record Creation: "create adr", "write adr", "record decision"
30
+ #
31
+ # Explicit Override: --protocol adr flag on task creation.
32
+ #
33
+ # Requirements (RFC 2119)
34
+ #
35
+ # MUST:
36
+ # ADR-001: MUST be generated from an accepted Consensus report verdict
37
+ # ADR-002: MUST include a consensus_manifest_id linking to its originating consensus
38
+ # ADR-003: MUST require explicit HITL approval to transition from proposed to accepted
39
+ # ADR-004: MUST include Context, Options Evaluated, Decision, Rationale, and Consequences sections
40
+ # ADR-005: MUST trigger downstream invalidation if superseded
41
+ # ADR-006: MUST be stored in the canonical decisions SQLite table via Drizzle ORM
42
+ # ADR-007: MUST set agent_type: "decision" in manifest entry
43
+ # ADR-008: MUST block the Specification stage until the ADR status is accepted
44
+ #
45
+ # SHOULD:
46
+ # ADR-010: SHOULD document the exact data structures or schema changes required
47
+ # ADR-011: SHOULD explicitly list which existing ADRs are superseded, with rationale
48
+ # ADR-012: SHOULD flag known technical debt introduced by the decision
49
+ # ADR-013: SHOULD document rejected alternatives with rationale for rejection
50
+ #
51
+ # MAY:
52
+ # ADR-020: MAY include diagrams (Mermaid) illustrating the architectural shift
53
+ # ADR-021: MAY link to external prior art or research documents
54
+ # ADR-022: MAY reference related ADRs that are not superseded but contextually relevant
55
+ #
56
+ # Decision Status Lifecycle:
57
+ # proposed -> accepted -> superseded
58
+ # \-> deprecated
59
+ #
60
+ # HITL Gate:
61
+ # 1. Agent drafts the ADR based on consensus verdict
62
+ # 2. Status is set to proposed
63
+ # 3. Pipeline pauses (HANDOFF_REQUIRED - exit code 65)
64
+ # 4. Human reviews the proposed ADR
65
+ # 5. If approved, status transitions to accepted
66
+ # 6. Only an accepted ADR unlocks the Specification stage
67
+ #
68
+ # Exit Codes:
69
+ # 65: HANDOFF_REQUIRED - ADR drafted as proposed, awaiting HITL acceptance
70
+ # 84: PROVENANCE_REQUIRED - Attempted to create ADR without linked Consensus report
71
+ # 18: CASCADE_FAILED - Downstream work blocked because governing ADR was superseded
72
+ #
73
+ # Anti-Patterns:
74
+ # - Creating ADR without consensus (decisions lack evidence foundation)
75
+ # - Auto-accepting without HITL review (bypasses human oversight gate)
76
+ # - Omitting downstream impact section (future implementers unaware of cascade)
77
+ # - Superseding without updating specs (creates orphaned specifications)
78
+ # - Using ADR to define implementation requirements (that is Specification's role)
79
+ # - Storing ADR only as markdown without SQLite record (loses relational queries)
80
+ # - Skipping rejected alternatives (loses institutional knowledge)
@@ -0,0 +1,95 @@
1
+ ---
2
+ kind: protocol
3
+ version: 1.0.0
4
+ id: ART
5
+ title: "Artifact Publish Protocol"
6
+ status: active
7
+ type: cross-cutting
8
+ audience: "llm-agent, orchestrator"
9
+ tags: "artifact, publish, distribution"
10
+ skillRef: ct-artifact-publisher
11
+ lastUpdated: 2026-04-07
12
+ enforcement: advisory
13
+ ---
14
+
15
+ # Artifact Publish Protocol
16
+ #
17
+ # Type: Conditional Protocol
18
+ # Max Active: 3 protocols (including base)
19
+ #
20
+ # Relationship to Release Protocol:
21
+ # This protocol orchestrates artifact building and publishing.
22
+ # Release orchestrates version bumping, tagging, and changelog.
23
+ # They compose: release triggers artifact-publish for distribution phase.
24
+ #
25
+ # Trigger Conditions
26
+ #
27
+ # This protocol activates when the task involves:
28
+ # Package Publish: "publish", "package", "distribute"
29
+ # Artifact Build: "artifact", "build artifact", "bundle"
30
+ # Container Push: "docker push", "container registry", "image publish"
31
+ # Language Package: "crate", "gem", "wheel", "sdist"
32
+ # Multi-Artifact: "publish all", "release artifacts", "multi-package"
33
+ #
34
+ # Explicit Override: --protocol artifact-publish flag on task creation.
35
+ #
36
+ # Requirements (RFC 2119)
37
+ #
38
+ # MUST:
39
+ # ARTP-001: MUST validate artifact configuration before build
40
+ # ARTP-002: MUST execute dry-run before any real publish
41
+ # ARTP-003: MUST follow handler interface contract: validate -> build -> publish
42
+ # ARTP-004: MUST generate SHA-256 checksums for all built artifacts
43
+ # ARTP-005: MUST record provenance metadata via record_release()
44
+ # ARTP-006: MUST use sequential execution for multi-artifact publish
45
+ # ARTP-007: MUST set agent_type: "artifact-publish" in manifest
46
+ # ARTP-008: MUST NOT store credentials in config, output, or manifest
47
+ # ARTP-009: MUST halt pipeline and attempt rollback on first publish failure
48
+ #
49
+ # SHOULD:
50
+ # ARTP-010: SHOULD verify registry reachability before publish
51
+ # ARTP-011: SHOULD validate version consistency between config and artifact metadata
52
+ # ARTP-012: SHOULD log all publish operations to audit trail
53
+ # ARTP-013: SHOULD verify build output exists and is non-empty before publish
54
+ #
55
+ # MAY:
56
+ # ARTP-020: MAY batch validation across all artifacts before starting builds
57
+ # ARTP-021: MAY generate SBOM alongside artifacts (delegate to provenance)
58
+ # ARTP-022: MAY sign artifacts using configured signing method (delegate to provenance)
59
+ #
60
+ # Artifact Lifecycle State Machine:
61
+ # configured -> validated -> built -> published
62
+ # | | |
63
+ # failed failed failed -> rollback
64
+ #
65
+ # Registered Handlers (9 types):
66
+ # npm-package, python-wheel, python-sdist, go-module,
67
+ # cargo-crate, ruby-gem, docker-image, github-release, generic-tarball
68
+ #
69
+ # Multi-Artifact Pipeline Phases:
70
+ # Phase 1: Pre-validate all artifacts
71
+ # Phase 2: Build sequential per artifact
72
+ # Phase 3: Publish with rollback on failure
73
+ #
74
+ # Credential Handling:
75
+ # Agents MUST NOT store, log, or embed credentials
76
+ # Resolution order: env var -> CI secret -> credential manager (future)
77
+ #
78
+ # Error Codes (85-89):
79
+ # 85: E_ARTIFACT_TYPE_UNKNOWN
80
+ # 86: E_ARTIFACT_VALIDATION_FAILED
81
+ # 87: E_ARTIFACT_BUILD_FAILED
82
+ # 88: E_ARTIFACT_PUBLISH_FAILED (rollback attempted)
83
+ # 89: E_ARTIFACT_ROLLBACK_FAILED
84
+ #
85
+ # Anti-Patterns:
86
+ # - Publishing without dry-run first (irreversible registry state)
87
+ # - Storing credentials in config.json (committed to VCS)
88
+ # - Parallel multi-artifact publish (race conditions)
89
+ # - Skipping checksum generation (cannot verify integrity)
90
+ # - Publishing without version check (duplicate version errors)
91
+ # - Ignoring publish failures (inconsistent state)
92
+ # - Logging credential values (exposure in audit trail)
93
+ # - Building without validation (wastes time)
94
+ # - Manual rollback without recording (lost provenance chain)
95
+ # - Hardcoding registry URLs (breaks across environments)
@@ -0,0 +1,74 @@
1
+ ---
2
+ kind: protocol
3
+ version: 1.0.0
4
+ id: CONS
5
+ title: "Consensus Protocol"
6
+ status: active
7
+ type: conditional
8
+ audience: "llm-agent, orchestrator"
9
+ tags: "consensus, voting, validation"
10
+ skillRef: ct-consensus-voter
11
+ lastUpdated: 2026-04-07
12
+ enforcement: strict
13
+ ---
14
+
15
+ # Consensus Protocol
16
+ #
17
+ # Provenance: @task T3155, @epic T3147
18
+ # Type: Conditional Protocol
19
+ # Max Active: 3 protocols (including base)
20
+ #
21
+ # Trigger Conditions
22
+ #
23
+ # This protocol activates when the task involves:
24
+ # Decision Making: "vote", "decide", "choose", "select"
25
+ # Agreement: "consensus", "agree", "alignment"
26
+ # Conflict Resolution: "resolve", "dispute", "conflict"
27
+ # Validation: "validate claim", "verify assertion"
28
+ #
29
+ # Explicit Override: --protocol consensus flag on task creation.
30
+ #
31
+ # Requirements (RFC 2119)
32
+ #
33
+ # MUST:
34
+ # CONS-001: MUST use structured voting format
35
+ # CONS-002: MUST document rationale for each position
36
+ # CONS-003: MUST include confidence scores (0.0-1.0)
37
+ # CONS-004: MUST cite evidence supporting positions
38
+ # CONS-005: MUST flag conflicts with severity levels
39
+ # CONS-006: MUST escalate to HITL when threshold not reached
40
+ # CONS-007: MUST set agent_type: "analysis" in manifest
41
+ #
42
+ # SHOULD:
43
+ # CONS-010: SHOULD present multiple perspectives
44
+ # CONS-011: SHOULD identify hidden assumptions
45
+ # CONS-012: SHOULD document rejected alternatives
46
+ # CONS-013: SHOULD include uncertainty notes for low confidence
47
+ #
48
+ # MAY:
49
+ # CONS-020: MAY propose compromise positions
50
+ # CONS-021: MAY defer non-critical decisions
51
+ # CONS-022: MAY request additional research
52
+ #
53
+ # Verdict Thresholds:
54
+ # PROVEN: 3/5 agents OR 50%+ weighted confidence, reproducible evidence
55
+ # REFUTED: Counter-evidence invalidates, counter-proof exists
56
+ # CONTESTED: 3/5 split after 2 challenge rounds, document both sides
57
+ # INSUFFICIENT_EVIDENCE: Cannot reach verdict, request investigation
58
+ #
59
+ # HITL Escalation:
60
+ # - Contested verdict (3/5 split): Present conflict to user
61
+ # - Critical severity conflict: Immediate escalation
62
+ # - Insufficient evidence: Request user guidance
63
+ # - Unanimous suspicious consensus: Verify with user
64
+ #
65
+ # Exit Codes:
66
+ # EXIT_PROTOCOL_CONSENSUS (61) - Consensus protocol violation
67
+ # EXIT_PROTOCOL_GENERIC (67) - Generic protocol error
68
+ #
69
+ # Anti-Patterns:
70
+ # - Accepting unanimous consensus without scrutiny (may indicate groupthink)
71
+ # - Skipping evidence citations (decisions lack foundation)
72
+ # - Binary voting without confidence (loses nuance)
73
+ # - Ignoring minority positions (may miss valid concerns)
74
+ # - Premature escalation (wastes human attention)
@@ -0,0 +1,82 @@
1
+ ---
2
+ kind: protocol
3
+ version: 1.0.0
4
+ id: CONT
5
+ title: "Contribution Protocol"
6
+ status: active
7
+ type: cross-cutting
8
+ audience: "llm-agent, orchestrator"
9
+ tags: "contribution, commit, pr"
10
+ skillRef: ct-contribution
11
+ lastUpdated: 2026-02-24
12
+ enforcement: strict
13
+ ---
14
+
15
+ # Contribution Protocol
16
+ #
17
+ # Provenance: @task T3155, @epic T3147
18
+ # Type: Cross-Cutting Protocol
19
+ # Applies To: All RCASD-IVTR+C stages
20
+ # Max Active: 3 protocols (including base)
21
+ #
22
+ # Cross-Cutting Nature: This protocol applies across ALL stages of RCASD-IVTR+C.
23
+ # Unlike stage-specific protocols, contribution tracking is active whenever
24
+ # multi-agent coordination or attribution is needed.
25
+ #
26
+ # Trigger Conditions
27
+ #
28
+ # This protocol activates when the task involves:
29
+ # Shared File Modification: Modifying CLAUDE.md, AGENTS.md, shared configs
30
+ # PR Creation: "pull request", "PR", "merge request"
31
+ # Cross-Session Work: Multiple agents on same epic
32
+ # Audit Trail: Provenance, attribution, tracking
33
+ #
34
+ # Explicit Override: --protocol contribution flag on task creation.
35
+ #
36
+ # Requirements (RFC 2119)
37
+ #
38
+ # MUST:
39
+ # CONT-001: MUST follow commit message conventions
40
+ # CONT-002: MUST include provenance tags in code comments
41
+ # CONT-003: MUST pass all validation gates before merge
42
+ # CONT-004: MUST document decisions with rationale
43
+ # CONT-005: MUST flag conflicts with other sessions
44
+ # CONT-006: MUST write contribution record to manifest
45
+ # CONT-007: MUST set agent_type: "implementation" in manifest
46
+ #
47
+ # SHOULD:
48
+ # CONT-010: SHOULD include test coverage for changes
49
+ # CONT-011: SHOULD link to related tasks and research
50
+ # CONT-012: SHOULD document rejected alternatives
51
+ # CONT-013: SHOULD request review for significant changes
52
+ #
53
+ # MAY:
54
+ # CONT-020: MAY batch related changes into single contribution
55
+ # CONT-021: MAY defer documentation updates
56
+ # CONT-022: MAY propose follow-up improvements
57
+ #
58
+ # Commit Message Format:
59
+ # <type>(<scope>): <summary>
60
+ # Types: feat, fix, docs, test, refactor, chore, perf
61
+ #
62
+ # Validation Gates:
63
+ # Schema: JSON Schema validation (MUST pass)
64
+ # Tests: All tests pass (MUST pass)
65
+ # Lint: Code style compliance (SHOULD pass)
66
+ # Security: No secrets committed (MUST pass)
67
+ # Conflicts: No unresolved conflicts (MUST resolve)
68
+ #
69
+ # Provenance Thresholds:
70
+ # New code: 100%
71
+ # Existing code: 80%
72
+ # Legacy code: 50%
73
+ #
74
+ # Exit Codes:
75
+ # EXIT_PROTOCOL_CONTRIBUTION (65) - Contribution protocol violation
76
+ #
77
+ # Anti-Patterns:
78
+ # - Committing without provenance (breaks audit trail)
79
+ # - Skipping validation gates (quality regression)
80
+ # - Ignoring conflicts (creates merge debt)
81
+ # - Large unfocused commits (hard to review/revert)
82
+ # - Missing decision documentation (lost context)
@@ -0,0 +1,92 @@
1
+ ---
2
+ kind: protocol
3
+ version: 2.0.0
4
+ id: DCMP
5
+ title: "Decomposition Protocol"
6
+ status: active
7
+ type: conditional
8
+ audience: "llm-agent, orchestrator"
9
+ tags: "decomposition, hierarchy, atomicity, planning"
10
+ skillRef: ct-epic-architect
11
+ lastUpdated: 2026-02-24
12
+ provenanceTask: T3155
13
+ enforcement: strict
14
+ ---
15
+
16
+ # Decomposition Protocol
17
+ #
18
+ # Provenance: @task T3155, @epic T3147
19
+ # Type: Conditional Protocol
20
+ # Max Active: 3 protocols (including base)
21
+ #
22
+ # Trigger Conditions
23
+ #
24
+ # This protocol activates when the task involves:
25
+ # Epic Planning: "epic", "project", "initiative"
26
+ # Breakdown: "decompose", "break down", "split"
27
+ # Planning: "plan", "roadmap", "phases"
28
+ # Analysis: "scope", "estimate complexity"
29
+ #
30
+ # Explicit Override: --protocol decomposition flag on task creation.
31
+ #
32
+ # Hard Invariants (always enforced):
33
+ # - Parent must exist: parent task ID must be present in the task store
34
+ # - No circular references: moving a task under its own descendant is rejected
35
+ # - Dependency DAG integrity: blockedBy/blocks must remain acyclic
36
+ #
37
+ # Configurable Limits (profile-driven):
38
+ # maxSiblings: default 0 (unlimited for llm-agent-first); 7 for human-cognitive
39
+ # maxActiveSiblings: default 32 (operational concurrency guard)
40
+ # maxDepth: default 3 (epic -> task -> subtask)
41
+ #
42
+ # Enforcement Profiles:
43
+ # llm-agent-first (default): maxSiblings=0, maxActiveSiblings=32, maxDepth=3
44
+ # human-cognitive: maxSiblings=7, maxActiveSiblings=3, maxDepth=3
45
+ #
46
+ # Requirements (RFC 2119)
47
+ #
48
+ # MUST:
49
+ # DCMP-001: MUST follow MECE principle (Mutually Exclusive, Collectively Exhaustive)
50
+ # DCMP-002: MUST map dependencies between tasks
51
+ # DCMP-003: MUST respect the configured hierarchy.maxDepth policy (default: 3)
52
+ # DCMP-004: MUST verify atomicity for leaf tasks
53
+ # DCMP-005: MUST NOT include time estimates (use size: small/medium/large)
54
+ # DCMP-006: MUST include acceptance criteria for each task
55
+ # DCMP-007: Siblings MUST respect the configured hierarchy.maxSiblings policy
56
+ # DCMP-008: Depth MUST respect the configured hierarchy.maxDepth policy
57
+ # DCMP-009: MUST set agent_type: "analysis" in manifest
58
+ #
59
+ # SHOULD:
60
+ # DCMP-010: SHOULD identify parallel execution opportunities
61
+ # DCMP-011: SHOULD flag unclear requirements for HITL
62
+ # DCMP-012: SHOULD consider existing task overlap
63
+ # DCMP-013: SHOULD assign phase to each task
64
+ #
65
+ # MAY:
66
+ # DCMP-020: MAY propose multiple decomposition options
67
+ # DCMP-021: MAY identify risks and mitigations
68
+ # DCMP-022: MAY suggest task consolidation
69
+ #
70
+ # Atomicity Criteria (6-Point Test):
71
+ # 1. Single File Scope: Affects <=3 tightly-coupled files
72
+ # 2. Single Cognitive Concern: One bounded concern per task
73
+ # 3. Clear Acceptance Criteria: Testable completion condition
74
+ # 4. No Context Switching: Completable within a single agent session
75
+ # 5. No Hidden Sub-Decisions: All choices made at decomposition
76
+ # 6. Programmatic Validation: Result verifiable by code/test
77
+ #
78
+ # Size Definitions:
79
+ # small: 1-2 files, single concern, MUST be atomic
80
+ # medium: 3-7 files, related concerns, SHOULD be atomic
81
+ # large: 8+ files, multiple concerns, MUST decompose further
82
+ #
83
+ # Exit Codes:
84
+ # EXIT_PROTOCOL_DECOMPOSITION (63) - Decomposition protocol violation
85
+ #
86
+ # Anti-Patterns:
87
+ # - Time estimates (cannot predict duration accurately)
88
+ # - Non-atomic leaf tasks (create hidden work)
89
+ # - Missing dependencies (incorrect execution order)
90
+ # - Exceeding configured maxDepth (complexity explosion)
91
+ # - Overlapping scopes (not MECE - duplicate work)
92
+ # - Skipping atomicity check (quality regression)