@cleocode/core 2026.5.134 → 2026.6.1

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 (557) hide show
  1. package/binaries/README.md +49 -27
  2. package/dist/agents/{agent-registry.d.ts → agent-capacity-tracker.d.ts} +2 -2
  3. package/dist/agents/agent-capacity-tracker.d.ts.map +1 -0
  4. package/dist/agents/{agent-registry.js → agent-capacity-tracker.js} +2 -2
  5. package/dist/agents/agent-capacity-tracker.js.map +1 -0
  6. package/dist/agents/index.d.ts +1 -1
  7. package/dist/agents/index.d.ts.map +1 -1
  8. package/dist/agents/index.js +4 -2
  9. package/dist/agents/index.js.map +1 -1
  10. package/dist/agents/seed-install.d.ts +1 -1
  11. package/dist/agents/seed-install.d.ts.map +1 -1
  12. package/dist/agents/seed-install.js +42 -36
  13. package/dist/agents/seed-install.js.map +1 -1
  14. package/dist/caamp-export.d.ts +18 -0
  15. package/dist/caamp-export.d.ts.map +1 -0
  16. package/dist/caamp-export.js +18 -0
  17. package/dist/caamp-export.js.map +1 -0
  18. package/dist/conduit/http-transport.d.ts +7 -13
  19. package/dist/conduit/http-transport.d.ts.map +1 -1
  20. package/dist/conduit/http-transport.js +12 -59
  21. package/dist/conduit/http-transport.js.map +1 -1
  22. package/dist/conduit/local-transport.d.ts +1 -1
  23. package/dist/conduit/local-transport.d.ts.map +1 -1
  24. package/dist/conduit/local-transport.js +69 -43
  25. package/dist/conduit/local-transport.js.map +1 -1
  26. package/dist/dispatch/mutate-projection.d.ts.map +1 -1
  27. package/dist/dispatch/mutate-projection.js +11 -0
  28. package/dist/dispatch/mutate-projection.js.map +1 -1
  29. package/dist/docs/docs-read-model.d.ts +7 -0
  30. package/dist/docs/docs-read-model.d.ts.map +1 -1
  31. package/dist/docs/docs-read-model.js +5 -0
  32. package/dist/docs/docs-read-model.js.map +1 -1
  33. package/dist/docs/export-document.js +40526 -281
  34. package/dist/docs/export-document.js.map +6 -1
  35. package/dist/docs/supersede.d.ts.map +1 -1
  36. package/dist/docs/supersede.js +12 -7
  37. package/dist/docs/supersede.js.map +1 -1
  38. package/dist/doctor/db-substrate.d.ts.map +1 -1
  39. package/dist/doctor/db-substrate.js +10 -9
  40. package/dist/doctor/db-substrate.js.map +1 -1
  41. package/dist/git-shim-export.d.ts +18 -0
  42. package/dist/git-shim-export.d.ts.map +1 -0
  43. package/dist/git-shim-export.js +18 -0
  44. package/dist/git-shim-export.js.map +1 -0
  45. package/dist/hooks/payload-schemas.d.ts +2 -2
  46. package/dist/init.d.ts.map +1 -1
  47. package/dist/init.js +39 -32
  48. package/dist/init.js.map +1 -1
  49. package/dist/internal.d.ts +11 -3
  50. package/dist/internal.d.ts.map +1 -1
  51. package/dist/internal.js +14 -5
  52. package/dist/internal.js.map +1 -1
  53. package/dist/lafs-export.d.ts +18 -0
  54. package/dist/lafs-export.d.ts.map +1 -0
  55. package/dist/lafs-export.js +18 -0
  56. package/dist/lafs-export.js.map +1 -0
  57. package/dist/lifecycle/effective-stage.js +1 -1
  58. package/dist/lifecycle/index.js +1 -1
  59. package/dist/lifecycle/index.js.map +1 -1
  60. package/dist/lifecycle/rollup.js +1 -1
  61. package/dist/llm/credential-pool.d.ts +17 -0
  62. package/dist/llm/credential-pool.d.ts.map +1 -1
  63. package/dist/llm/credential-pool.js +40 -1
  64. package/dist/llm/credential-pool.js.map +1 -1
  65. package/dist/llm/plugin-facade.d.ts.map +1 -1
  66. package/dist/llm/plugin-facade.js +43392 -354
  67. package/dist/llm/plugin-facade.js.map +6 -1
  68. package/dist/llm/role-executor.d.ts +8 -0
  69. package/dist/llm/role-executor.d.ts.map +1 -1
  70. package/dist/llm/role-executor.js +96 -4
  71. package/dist/llm/role-executor.js.map +1 -1
  72. package/dist/llm/role-resolver.d.ts.map +1 -1
  73. package/dist/llm/role-resolver.js +56 -1
  74. package/dist/llm/role-resolver.js.map +1 -1
  75. package/dist/llm/transports/codex-oauth-headers.d.ts +51 -0
  76. package/dist/llm/transports/codex-oauth-headers.d.ts.map +1 -0
  77. package/dist/llm/transports/codex-oauth-headers.js +89 -0
  78. package/dist/llm/transports/codex-oauth-headers.js.map +1 -0
  79. package/dist/memory/claude-mem-migration.d.ts.map +1 -1
  80. package/dist/memory/claude-mem-migration.js +1 -3
  81. package/dist/memory/claude-mem-migration.js.map +1 -1
  82. package/dist/memory/decisions.d.ts.map +1 -1
  83. package/dist/memory/decisions.js +77 -23
  84. package/dist/memory/decisions.js.map +1 -1
  85. package/dist/memory/graph-memory-bridge.d.ts.map +1 -1
  86. package/dist/memory/graph-memory-bridge.js +12 -6
  87. package/dist/memory/graph-memory-bridge.js.map +1 -1
  88. package/dist/memory/learnings.d.ts +2 -2
  89. package/dist/memory/nexus-plasticity.d.ts +21 -9
  90. package/dist/memory/nexus-plasticity.d.ts.map +1 -1
  91. package/dist/memory/nexus-plasticity.js +44 -22
  92. package/dist/memory/nexus-plasticity.js.map +1 -1
  93. package/dist/memory/patterns.d.ts +2 -2
  94. package/dist/memory/redaction.d.ts +19 -3
  95. package/dist/memory/redaction.d.ts.map +1 -1
  96. package/dist/memory/redaction.js +64 -129
  97. package/dist/memory/redaction.js.map +6 -1
  98. package/dist/metrics/token-service.d.ts +8 -2
  99. package/dist/metrics/token-service.d.ts.map +1 -1
  100. package/dist/metrics/token-service.js +1 -1
  101. package/dist/metrics/token-service.js.map +1 -1
  102. package/dist/nexus/analyze-orchestrator.d.ts.map +1 -1
  103. package/dist/nexus/analyze-orchestrator.js +6 -8
  104. package/dist/nexus/analyze-orchestrator.js.map +1 -1
  105. package/dist/nexus/api-extractors/http-extractor.d.ts.map +1 -1
  106. package/dist/nexus/api-extractors/http-extractor.js +3 -3
  107. package/dist/nexus/api-extractors/http-extractor.js.map +1 -1
  108. package/dist/nexus/clusters.d.ts.map +1 -1
  109. package/dist/nexus/clusters.js +3 -2
  110. package/dist/nexus/clusters.js.map +1 -1
  111. package/dist/nexus/context.d.ts.map +1 -1
  112. package/dist/nexus/context.js +10 -16
  113. package/dist/nexus/context.js.map +1 -1
  114. package/dist/nexus/diff.d.ts.map +1 -1
  115. package/dist/nexus/diff.js +6 -4
  116. package/dist/nexus/diff.js.map +1 -1
  117. package/dist/nexus/export.d.ts.map +1 -1
  118. package/dist/nexus/export.js +7 -4
  119. package/dist/nexus/export.js.map +1 -1
  120. package/dist/nexus/flows.d.ts.map +1 -1
  121. package/dist/nexus/flows.js +3 -1
  122. package/dist/nexus/flows.js.map +1 -1
  123. package/dist/nexus/impact.d.ts +1 -1
  124. package/dist/nexus/impact.d.ts.map +1 -1
  125. package/dist/nexus/impact.js +31 -17
  126. package/dist/nexus/impact.js.map +1 -1
  127. package/dist/nexus/living-brain.d.ts.map +1 -1
  128. package/dist/nexus/living-brain.js +27 -15
  129. package/dist/nexus/living-brain.js.map +1 -1
  130. package/dist/nexus/nexus-bridge.d.ts.map +1 -1
  131. package/dist/nexus/nexus-bridge.js +28 -29
  132. package/dist/nexus/nexus-bridge.js.map +1 -1
  133. package/dist/nexus/plasticity-queries.d.ts +4 -2
  134. package/dist/nexus/plasticity-queries.d.ts.map +1 -1
  135. package/dist/nexus/plasticity-queries.js +27 -15
  136. package/dist/nexus/plasticity-queries.js.map +1 -1
  137. package/dist/nexus/query.d.ts.map +1 -1
  138. package/dist/nexus/query.js +6 -2
  139. package/dist/nexus/query.js.map +1 -1
  140. package/dist/nexus/registry.d.ts.map +1 -1
  141. package/dist/nexus/registry.js +65 -30
  142. package/dist/nexus/registry.js.map +1 -1
  143. package/dist/nexus/route-analysis.d.ts +3 -2
  144. package/dist/nexus/route-analysis.d.ts.map +1 -1
  145. package/dist/nexus/route-analysis.js +11 -10
  146. package/dist/nexus/route-analysis.js.map +1 -1
  147. package/dist/nexus/sigil.d.ts.map +1 -1
  148. package/dist/nexus/sigil.js +60 -13
  149. package/dist/nexus/sigil.js.map +1 -1
  150. package/dist/nexus/user-profile.d.ts +2 -1
  151. package/dist/nexus/user-profile.d.ts.map +1 -1
  152. package/dist/nexus/user-profile.js +8 -4
  153. package/dist/nexus/user-profile.js.map +1 -1
  154. package/dist/orchestrate/index.d.ts +1 -1
  155. package/dist/orchestrate/index.d.ts.map +1 -1
  156. package/dist/orchestrate/index.js +1 -1
  157. package/dist/orchestrate/index.js.map +1 -1
  158. package/dist/orchestrate/plan.d.ts +3 -3
  159. package/dist/orchestrate/plan.d.ts.map +1 -1
  160. package/dist/orchestrate/plan.js +7 -7
  161. package/dist/orchestrate/plan.js.map +1 -1
  162. package/dist/orchestrate/spawn-ops.js +2 -2
  163. package/dist/orchestrate/spawn-ops.js.map +1 -1
  164. package/dist/orchestration/classify.d.ts +2 -2
  165. package/dist/orchestration/classify.js +3 -3
  166. package/dist/orchestration/classify.js.map +1 -1
  167. package/dist/orchestration/validate-spawn.d.ts.map +1 -1
  168. package/dist/orchestration/validate-spawn.js +5 -5
  169. package/dist/orchestration/validate-spawn.js.map +1 -1
  170. package/dist/paths-export.d.ts +18 -0
  171. package/dist/paths-export.d.ts.map +1 -0
  172. package/dist/paths-export.js +18 -0
  173. package/dist/paths-export.js.map +1 -0
  174. package/dist/paths.d.ts.map +1 -1
  175. package/dist/paths.js +24 -11
  176. package/dist/paths.js.map +1 -1
  177. package/dist/playbooks/index.d.ts +1 -0
  178. package/dist/playbooks/index.d.ts.map +1 -1
  179. package/dist/playbooks/index.js +4 -0
  180. package/dist/playbooks/index.js.map +1 -1
  181. package/dist/playbooks/skill-node-executor.d.ts +155 -0
  182. package/dist/playbooks/skill-node-executor.d.ts.map +1 -0
  183. package/dist/playbooks/skill-node-executor.js +156 -0
  184. package/dist/playbooks/skill-node-executor.js.map +1 -0
  185. package/dist/repair.d.ts +3 -7
  186. package/dist/repair.d.ts.map +1 -1
  187. package/dist/repair.js +5 -43
  188. package/dist/repair.js.map +1 -1
  189. package/dist/sagas/migrate-containment.js +7 -7
  190. package/dist/sagas/migrate-containment.js.map +1 -1
  191. package/dist/scaffold/ensure-dirs.d.ts +8 -2
  192. package/dist/scaffold/ensure-dirs.d.ts.map +1 -1
  193. package/dist/scaffold/ensure-dirs.js +24 -11
  194. package/dist/scaffold/ensure-dirs.js.map +1 -1
  195. package/dist/scaffold/project-detection.d.ts +5 -1
  196. package/dist/scaffold/project-detection.d.ts.map +1 -1
  197. package/dist/scaffold/project-detection.js +9 -5
  198. package/dist/scaffold/project-detection.js.map +1 -1
  199. package/dist/sentient/hygiene-scan.js +6 -6
  200. package/dist/sentient/hygiene-scan.js.map +1 -1
  201. package/dist/sentient/proposal-dedup.js +2 -2
  202. package/dist/sentient/proposal-rate-limiter.js +1 -1
  203. package/dist/sentient/propose-tick.js +5 -5
  204. package/dist/sentient/propose-tick.js.map +1 -1
  205. package/dist/sentient/stage-drift-tick.js +3 -3
  206. package/dist/sentient/stage-drift-tick.js.map +1 -1
  207. package/dist/sequence/index.d.ts.map +1 -1
  208. package/dist/sequence/index.js +6 -2
  209. package/dist/sequence/index.js.map +1 -1
  210. package/dist/sessions/briefing.d.ts.map +1 -1
  211. package/dist/sessions/briefing.js +18 -4
  212. package/dist/sessions/briefing.js.map +1 -1
  213. package/dist/setup/sections/verification.js +2 -2
  214. package/dist/setup/sections/verification.js.map +1 -1
  215. package/dist/shutdown.d.ts +91 -0
  216. package/dist/shutdown.d.ts.map +1 -0
  217. package/dist/shutdown.js +120 -0
  218. package/dist/shutdown.js.map +1 -0
  219. package/dist/skills/index.d.ts +2 -0
  220. package/dist/skills/index.d.ts.map +1 -1
  221. package/dist/skills/index.js +1 -0
  222. package/dist/skills/index.js.map +1 -1
  223. package/dist/skills/skill-executor-adapter.d.ts +136 -0
  224. package/dist/skills/skill-executor-adapter.d.ts.map +1 -0
  225. package/dist/skills/skill-executor-adapter.js +137 -0
  226. package/dist/skills/skill-executor-adapter.js.map +1 -0
  227. package/dist/skills/usage-recorder.d.ts.map +1 -1
  228. package/dist/skills/usage-recorder.js +30 -0
  229. package/dist/skills/usage-recorder.js.map +1 -1
  230. package/dist/skills-export.d.ts +23 -0
  231. package/dist/skills-export.d.ts.map +1 -0
  232. package/dist/skills-export.js +23 -0
  233. package/dist/skills-export.js.map +1 -0
  234. package/dist/stats/index.d.ts.map +1 -1
  235. package/dist/stats/index.js +8 -3
  236. package/dist/stats/index.js.map +1 -1
  237. package/dist/store/agent-doctor.d.ts +3 -3
  238. package/dist/store/agent-doctor.d.ts.map +1 -1
  239. package/dist/store/agent-doctor.js +18 -13
  240. package/dist/store/agent-doctor.js.map +1 -1
  241. package/dist/store/agent-install.d.ts +6 -5
  242. package/dist/store/agent-install.d.ts.map +1 -1
  243. package/dist/store/agent-install.js +20 -16
  244. package/dist/store/agent-install.js.map +1 -1
  245. package/dist/store/agent-registry-accessor.d.ts +66 -28
  246. package/dist/store/agent-registry-accessor.d.ts.map +1 -1
  247. package/dist/store/agent-registry-accessor.js +248 -167
  248. package/dist/store/agent-registry-accessor.js.map +1 -1
  249. package/dist/store/agent-registry-store.d.ts +242 -0
  250. package/dist/store/agent-registry-store.d.ts.map +1 -0
  251. package/dist/store/agent-registry-store.js +501 -0
  252. package/dist/store/agent-registry-store.js.map +1 -0
  253. package/dist/store/agent-resolver.d.ts +8 -8
  254. package/dist/store/agent-resolver.d.ts.map +1 -1
  255. package/dist/store/agent-resolver.js +19 -17
  256. package/dist/store/agent-resolver.js.map +1 -1
  257. package/dist/store/backup-pack.d.ts.map +1 -1
  258. package/dist/store/backup-pack.js +24 -8
  259. package/dist/store/backup-pack.js.map +1 -1
  260. package/dist/store/conduit-sqlite.d.ts +181 -74
  261. package/dist/store/conduit-sqlite.d.ts.map +1 -1
  262. package/dist/store/conduit-sqlite.js +307 -528
  263. package/dist/store/conduit-sqlite.js.map +1 -1
  264. package/dist/store/cross-db-cleanup.d.ts +5 -5
  265. package/dist/store/cross-db-cleanup.d.ts.map +1 -1
  266. package/dist/store/cross-db-cleanup.js +12 -10
  267. package/dist/store/cross-db-cleanup.js.map +1 -1
  268. package/dist/store/data-accessor.d.ts +4 -4
  269. package/dist/store/data-accessor.js +5 -5
  270. package/dist/store/data-accessor.js.map +1 -1
  271. package/dist/store/data-safety-central.d.ts +83 -1
  272. package/dist/store/data-safety-central.d.ts.map +1 -1
  273. package/dist/store/data-safety-central.js +257 -0
  274. package/dist/store/data-safety-central.js.map +1 -1
  275. package/dist/store/db-helpers.d.ts +8 -2
  276. package/dist/store/db-helpers.d.ts.map +1 -1
  277. package/dist/store/db-helpers.js +6 -2
  278. package/dist/store/db-helpers.js.map +1 -1
  279. package/dist/store/dual-scope-db.d.ts +46 -4
  280. package/dist/store/dual-scope-db.d.ts.map +1 -1
  281. package/dist/store/dual-scope-db.js +103 -9
  282. package/dist/store/dual-scope-db.js.map +1 -1
  283. package/dist/store/exodus/__fixtures__/representative-fixture.d.ts +116 -0
  284. package/dist/store/exodus/__fixtures__/representative-fixture.d.ts.map +1 -0
  285. package/dist/store/exodus/__fixtures__/representative-fixture.js +274 -0
  286. package/dist/store/exodus/__fixtures__/representative-fixture.js.map +1 -0
  287. package/dist/store/exodus/index.d.ts +3 -1
  288. package/dist/store/exodus/index.d.ts.map +1 -1
  289. package/dist/store/exodus/index.js +3 -1
  290. package/dist/store/exodus/index.js.map +1 -1
  291. package/dist/store/exodus/migrate.d.ts +120 -1
  292. package/dist/store/exodus/migrate.d.ts.map +1 -1
  293. package/dist/store/exodus/migrate.js +923 -119
  294. package/dist/store/exodus/migrate.js.map +1 -1
  295. package/dist/store/exodus/on-open.d.ts +189 -0
  296. package/dist/store/exodus/on-open.d.ts.map +1 -0
  297. package/dist/store/exodus/on-open.js +464 -0
  298. package/dist/store/exodus/on-open.js.map +1 -0
  299. package/dist/store/exodus/table-name-map.d.ts +173 -0
  300. package/dist/store/exodus/table-name-map.d.ts.map +1 -0
  301. package/dist/store/exodus/table-name-map.js +660 -0
  302. package/dist/store/exodus/table-name-map.js.map +1 -0
  303. package/dist/store/exodus/verify-migration.d.ts +72 -0
  304. package/dist/store/exodus/verify-migration.d.ts.map +1 -0
  305. package/dist/store/exodus/verify-migration.js +678 -0
  306. package/dist/store/exodus/verify-migration.js.map +1 -0
  307. package/dist/store/exodus/verify.d.ts +32 -8
  308. package/dist/store/exodus/verify.d.ts.map +1 -1
  309. package/dist/store/exodus/verify.js +48 -142
  310. package/dist/store/exodus/verify.js.map +1 -1
  311. package/dist/store/index.d.ts +2 -3
  312. package/dist/store/index.d.ts.map +1 -1
  313. package/dist/store/index.js +2 -3
  314. package/dist/store/index.js.map +1 -1
  315. package/dist/store/memory-accessor.d.ts +31 -0
  316. package/dist/store/memory-accessor.d.ts.map +1 -1
  317. package/dist/store/memory-accessor.js +38 -0
  318. package/dist/store/memory-accessor.js.map +1 -1
  319. package/dist/store/memory-sqlite.d.ts +86 -13
  320. package/dist/store/memory-sqlite.d.ts.map +1 -1
  321. package/dist/store/memory-sqlite.js +326 -528
  322. package/dist/store/memory-sqlite.js.map +1 -1
  323. package/dist/store/migrate-signaldock-to-conduit.d.ts +1 -1
  324. package/dist/store/migrate-signaldock-to-conduit.d.ts.map +1 -1
  325. package/dist/store/migrate-signaldock-to-conduit.js +126 -35
  326. package/dist/store/migrate-signaldock-to-conduit.js.map +1 -1
  327. package/dist/store/migration-manager.d.ts +49 -0
  328. package/dist/store/migration-manager.d.ts.map +1 -1
  329. package/dist/store/migration-manager.js +167 -67
  330. package/dist/store/migration-manager.js.map +1 -1
  331. package/dist/store/migration-sqlite.d.ts +1 -1
  332. package/dist/store/migration-sqlite.d.ts.map +1 -1
  333. package/dist/store/migration-sqlite.js +32 -3
  334. package/dist/store/migration-sqlite.js.map +1 -1
  335. package/dist/store/nexus-sqlite.d.ts +152 -29
  336. package/dist/store/nexus-sqlite.d.ts.map +1 -1
  337. package/dist/store/nexus-sqlite.js +496 -177
  338. package/dist/store/nexus-sqlite.js.map +1 -1
  339. package/dist/store/nexus-validation-schemas.d.ts +32 -32
  340. package/dist/store/open-cleo-db.d.ts +37 -40
  341. package/dist/store/open-cleo-db.d.ts.map +1 -1
  342. package/dist/store/open-cleo-db.js +76 -153
  343. package/dist/store/open-cleo-db.js.map +1 -1
  344. package/dist/store/role-accessors-impl.d.ts +4 -4
  345. package/dist/store/role-accessors-impl.d.ts.map +1 -1
  346. package/dist/store/role-accessors-impl.js +18 -15
  347. package/dist/store/role-accessors-impl.js.map +1 -1
  348. package/dist/store/schema/{signaldock-schema.d.ts → agent-registry-schema.d.ts} +15 -5
  349. package/dist/store/schema/agent-registry-schema.d.ts.map +1 -0
  350. package/dist/store/schema/{signaldock-schema.js → agent-registry-schema.js} +15 -5
  351. package/dist/store/schema/agent-registry-schema.js.map +1 -0
  352. package/dist/store/schema/agent-schema.d.ts +1 -1
  353. package/dist/store/schema/agent-schema.js +4 -4
  354. package/dist/store/schema/agent-schema.js.map +1 -1
  355. package/dist/store/schema/attachments.d.ts +1 -1
  356. package/dist/store/schema/audit.d.ts +15 -5
  357. package/dist/store/schema/audit.d.ts.map +1 -1
  358. package/dist/store/schema/audit.js +12 -2
  359. package/dist/store/schema/audit.js.map +1 -1
  360. package/dist/store/schema/background-jobs.d.ts +1 -1
  361. package/dist/store/schema/cleo-global/{signaldock.d.ts → agent-registry.d.ts} +277 -271
  362. package/dist/store/schema/cleo-global/agent-registry.d.ts.map +1 -0
  363. package/dist/store/schema/cleo-global/{signaldock.js → agent-registry.js} +136 -125
  364. package/dist/store/schema/cleo-global/agent-registry.js.map +1 -0
  365. package/dist/store/schema/cleo-global/index.d.ts +29 -22
  366. package/dist/store/schema/cleo-global/index.d.ts.map +1 -1
  367. package/dist/store/schema/cleo-global/index.js +29 -22
  368. package/dist/store/schema/cleo-global/index.js.map +1 -1
  369. package/dist/store/schema/cleo-global/nexus.d.ts +36 -1034
  370. package/dist/store/schema/cleo-global/nexus.d.ts.map +1 -1
  371. package/dist/store/schema/cleo-global/nexus.js +32 -337
  372. package/dist/store/schema/cleo-global/nexus.js.map +1 -1
  373. package/dist/store/schema/cleo-global/skills.d.ts +16 -0
  374. package/dist/store/schema/cleo-global/skills.d.ts.map +1 -1
  375. package/dist/store/schema/cleo-global/skills.js +11 -0
  376. package/dist/store/schema/cleo-global/skills.js.map +1 -1
  377. package/dist/store/schema/{cleo-project → cleo-global}/telemetry.d.ts +33 -17
  378. package/dist/store/schema/cleo-global/telemetry.d.ts.map +1 -0
  379. package/dist/store/schema/{cleo-project → cleo-global}/telemetry.js +30 -18
  380. package/dist/store/schema/cleo-global/telemetry.js.map +1 -0
  381. package/dist/store/schema/cleo-project/audit.d.ts +8 -8
  382. package/dist/store/schema/cleo-project/audit.d.ts.map +1 -1
  383. package/dist/store/schema/cleo-project/audit.js +2 -6
  384. package/dist/store/schema/cleo-project/audit.js.map +1 -1
  385. package/dist/store/schema/cleo-project/docs.d.ts +1 -1
  386. package/dist/store/schema/cleo-project/index.d.ts +29 -12
  387. package/dist/store/schema/cleo-project/index.d.ts.map +1 -1
  388. package/dist/store/schema/cleo-project/index.js +29 -12
  389. package/dist/store/schema/cleo-project/index.js.map +1 -1
  390. package/dist/store/schema/cleo-project/lifecycle.d.ts +2 -2
  391. package/dist/store/schema/cleo-project/nexus-graph.d.ts +1067 -0
  392. package/dist/store/schema/cleo-project/nexus-graph.d.ts.map +1 -0
  393. package/dist/store/schema/cleo-project/nexus-graph.js +407 -0
  394. package/dist/store/schema/cleo-project/nexus-graph.js.map +1 -0
  395. package/dist/store/schema/cleo-project/provenance-orphans.d.ts +385 -0
  396. package/dist/store/schema/cleo-project/provenance-orphans.d.ts.map +1 -0
  397. package/dist/store/schema/cleo-project/provenance-orphans.js +142 -0
  398. package/dist/store/schema/cleo-project/provenance-orphans.js.map +1 -0
  399. package/dist/store/schema/cleo-project/provenance-rest.d.ts +1 -1
  400. package/dist/store/schema/cleo-project/runtime.d.ts +1 -1
  401. package/dist/store/schema/cleo-project/tasks-core-batch2.d.ts +1 -1
  402. package/dist/store/schema/cleo-project/tasks-core.d.ts +3 -3
  403. package/dist/store/schema/cleo-shared/brain.d.ts +711 -494
  404. package/dist/store/schema/cleo-shared/brain.d.ts.map +1 -1
  405. package/dist/store/schema/cleo-shared/brain.js +215 -134
  406. package/dist/store/schema/cleo-shared/brain.js.map +1 -1
  407. package/dist/store/schema/conduit-schema.d.ts +63 -51
  408. package/dist/store/schema/conduit-schema.d.ts.map +1 -1
  409. package/dist/store/schema/conduit-schema.js +23 -11
  410. package/dist/store/schema/conduit-schema.js.map +1 -1
  411. package/dist/store/schema/goal.d.ts +3 -2
  412. package/dist/store/schema/goal.d.ts.map +1 -1
  413. package/dist/store/schema/goal.js +3 -2
  414. package/dist/store/schema/goal.js.map +1 -1
  415. package/dist/store/schema/index.d.ts +1 -0
  416. package/dist/store/schema/index.d.ts.map +1 -1
  417. package/dist/store/schema/index.js +1 -0
  418. package/dist/store/schema/index.js.map +1 -1
  419. package/dist/store/schema/lifecycle.d.ts +2 -2
  420. package/dist/store/schema/memory-schema.d.ts +2 -2
  421. package/dist/store/schema/nexus-schema.d.ts +174 -115
  422. package/dist/store/schema/nexus-schema.d.ts.map +1 -1
  423. package/dist/store/schema/nexus-schema.js +175 -55
  424. package/dist/store/schema/nexus-schema.js.map +1 -1
  425. package/dist/store/schema/provenance/releases.d.ts +1 -1
  426. package/dist/store/schema/schema-utils.d.ts +78 -0
  427. package/dist/store/schema/schema-utils.d.ts.map +1 -0
  428. package/dist/store/schema/schema-utils.js +49 -0
  429. package/dist/store/schema/schema-utils.js.map +1 -0
  430. package/dist/store/schema/skills-schema.d.ts +81 -44
  431. package/dist/store/schema/skills-schema.d.ts.map +1 -1
  432. package/dist/store/schema/skills-schema.js +49 -16
  433. package/dist/store/schema/skills-schema.js.map +1 -1
  434. package/dist/store/schema/tasks.d.ts +3 -3
  435. package/dist/store/skills-db.d.ts +90 -50
  436. package/dist/store/skills-db.d.ts.map +1 -1
  437. package/dist/store/skills-db.js +132 -146
  438. package/dist/store/skills-db.js.map +1 -1
  439. package/dist/store/sqlite-backup.d.ts +2 -2
  440. package/dist/store/sqlite-backup.d.ts.map +1 -1
  441. package/dist/store/sqlite-backup.js +11 -10
  442. package/dist/store/sqlite-backup.js.map +1 -1
  443. package/dist/store/sqlite-data-accessor.d.ts.map +1 -1
  444. package/dist/store/sqlite-data-accessor.js +25 -18
  445. package/dist/store/sqlite-data-accessor.js.map +1 -1
  446. package/dist/store/sqlite.d.ts +72 -12
  447. package/dist/store/sqlite.d.ts.map +1 -1
  448. package/dist/store/sqlite.js +153 -89
  449. package/dist/store/sqlite.js.map +1 -1
  450. package/dist/store/tasks-schema.d.ts +4 -0
  451. package/dist/store/tasks-schema.d.ts.map +1 -1
  452. package/dist/store/tasks-schema.js +60 -0
  453. package/dist/store/tasks-schema.js.map +1 -1
  454. package/dist/store/tasks-sqlite.d.ts +2 -2
  455. package/dist/store/tasks-sqlite.d.ts.map +1 -1
  456. package/dist/store/tasks-sqlite.js +10 -5
  457. package/dist/store/tasks-sqlite.js.map +1 -1
  458. package/dist/store/umbrella-data-accessor.d.ts +17 -6
  459. package/dist/store/umbrella-data-accessor.d.ts.map +1 -1
  460. package/dist/store/umbrella-data-accessor.js +8 -8
  461. package/dist/store/umbrella-data-accessor.js.map +1 -1
  462. package/dist/store/validation-schemas.d.ts +241 -208
  463. package/dist/store/validation-schemas.d.ts.map +1 -1
  464. package/dist/system/health.d.ts.map +1 -1
  465. package/dist/system/health.js +11 -6
  466. package/dist/system/health.js.map +1 -1
  467. package/dist/system/project-health.d.ts.map +1 -1
  468. package/dist/system/project-health.js +58 -12
  469. package/dist/system/project-health.js.map +1 -1
  470. package/dist/tasks/add.d.ts +8 -0
  471. package/dist/tasks/add.d.ts.map +1 -1
  472. package/dist/tasks/add.js +101 -0
  473. package/dist/tasks/add.js.map +1 -1
  474. package/dist/tasks/cancelled-child-waiver-audit.d.ts +47 -0
  475. package/dist/tasks/cancelled-child-waiver-audit.d.ts.map +1 -0
  476. package/dist/tasks/cancelled-child-waiver-audit.js +34 -0
  477. package/dist/tasks/cancelled-child-waiver-audit.js.map +1 -0
  478. package/dist/tasks/complete.d.ts +22 -2
  479. package/dist/tasks/complete.d.ts.map +1 -1
  480. package/dist/tasks/complete.js +71 -6
  481. package/dist/tasks/complete.js.map +1 -1
  482. package/dist/tasks/compute-task-view.js +1 -1
  483. package/dist/tasks/session-scope.d.ts +5 -0
  484. package/dist/tasks/session-scope.d.ts.map +1 -1
  485. package/dist/tasks/session-scope.js +4 -0
  486. package/dist/tasks/session-scope.js.map +1 -1
  487. package/dist/tools/guard.d.ts +71 -1
  488. package/dist/tools/guard.d.ts.map +1 -1
  489. package/dist/tools/guard.js +73 -1
  490. package/dist/tools/guard.js.map +1 -1
  491. package/dist/tools/index.d.ts +21 -0
  492. package/dist/tools/index.d.ts.map +1 -1
  493. package/dist/tools/index.js +25 -0
  494. package/dist/tools/index.js.map +1 -1
  495. package/dist/upgrade.d.ts.map +1 -1
  496. package/dist/upgrade.js +22 -13
  497. package/dist/upgrade.js.map +1 -1
  498. package/dist/workgraph/containment.js +18 -18
  499. package/dist/workgraph/relations.js +2 -2
  500. package/dist/worktree/list.d.ts +1 -1
  501. package/dist/worktree/list.d.ts.map +1 -1
  502. package/dist/worktree/list.js +19 -21
  503. package/dist/worktree/list.js.map +1 -1
  504. package/dist/worktree-export.d.ts +18 -0
  505. package/dist/worktree-export.d.ts.map +1 -0
  506. package/dist/worktree-export.js +18 -0
  507. package/dist/worktree-export.js.map +1 -0
  508. package/migrations/drizzle-agent-registry/20260412000000_initial-global-agent-registry/migration.sql +29 -0
  509. package/migrations/drizzle-brain/20260601000001_t11522-brain-task-observations/migration.sql +28 -0
  510. package/migrations/drizzle-brain/20260601000002_t11522-inline-only-brain-tables/migration.sql +75 -0
  511. package/migrations/drizzle-cleo-global/20260531000001_t11363-consolidation-cleo-global/migration.sql +49 -144
  512. package/migrations/drizzle-cleo-global/20260531000001_t11363-consolidation-cleo-global/snapshot.json +8 -8
  513. package/migrations/drizzle-cleo-global/20260531000002_t11546-brain-usage-log/migration.sql +16 -0
  514. package/migrations/drizzle-cleo-global/20260601000001_t11544-skills-usage-project-id/migration.sql +12 -0
  515. package/migrations/drizzle-cleo-global/20260602000001_t11622-agent-registry-rename/migration.sql +80 -0
  516. package/migrations/drizzle-cleo-project/20260531000001_t11363-consolidation-cleo-project/migration.sql +26 -167
  517. package/migrations/drizzle-cleo-project/20260531000001_t11363-consolidation-cleo-project/snapshot.json +8 -8
  518. package/migrations/drizzle-cleo-project/20260531000002_t11546-brain-usage-log/migration.sql +21 -0
  519. package/migrations/drizzle-cleo-project/20260601000001_t11549-agent-credentials-brain-release-links/migration.sql +49 -0
  520. package/migrations/drizzle-cleo-project/20260601000002_t11538-project-nexus-graph/migration.sql +140 -0
  521. package/migrations/drizzle-cleo-project/20260602000002_t11649-token-usage-transport-mcp/migration.sql +146 -0
  522. package/migrations/drizzle-conduit/20260601000003_t11523-conduit-inline-schema/migration.sql +82 -0
  523. package/migrations/drizzle-nexus/20260421200001_t1165-baseline-reset/migration.sql +26 -8
  524. package/migrations/drizzle-nexus/20260601000001_t11545-nexus-relation-weights-partition/migration.sql +97 -0
  525. package/package.json +45 -13
  526. package/scripts/install-supervisor-binary.mjs +50 -201
  527. package/scripts/napi-binary-picker.mjs +267 -0
  528. package/dist/agents/agent-registry.d.ts.map +0 -1
  529. package/dist/agents/agent-registry.js.map +0 -1
  530. package/dist/store/data-safety.d.ts +0 -92
  531. package/dist/store/data-safety.d.ts.map +0 -1
  532. package/dist/store/data-safety.js +0 -274
  533. package/dist/store/data-safety.js.map +0 -1
  534. package/dist/store/schema/cleo-global/signaldock.d.ts.map +0 -1
  535. package/dist/store/schema/cleo-global/signaldock.js.map +0 -1
  536. package/dist/store/schema/cleo-project/telemetry.d.ts.map +0 -1
  537. package/dist/store/schema/cleo-project/telemetry.js.map +0 -1
  538. package/dist/store/schema/signaldock-schema.d.ts.map +0 -1
  539. package/dist/store/schema/signaldock-schema.js.map +0 -1
  540. package/dist/store/signaldock-sqlite.d.ts +0 -173
  541. package/dist/store/signaldock-sqlite.d.ts.map +0 -1
  542. package/dist/store/signaldock-sqlite.js +0 -445
  543. package/dist/store/signaldock-sqlite.js.map +0 -1
  544. package/migrations/drizzle-nexus/20260318205558_initial/migration.sql +0 -46
  545. package/migrations/drizzle-nexus/20260412000001_t529-nexus-graph-tables/migration.sql +0 -49
  546. package/migrations/drizzle-nexus/20260415000001_t622-project-registry-paths/migration.sql +0 -12
  547. package/migrations/drizzle-nexus/20260419000001_t998-nexus-plasticity/migration.sql +0 -13
  548. package/migrations/drizzle-nexus/20260423052640_t1077-add-user-profile-table/migration.sql +0 -16
  549. package/migrations/drizzle-nexus/20260423052640_t1077-add-user-profile-table/snapshot.json +0 -1531
  550. package/migrations/drizzle-nexus/20260424140538_t1148-add-sigils-table/migration.sql +0 -13
  551. package/migrations/drizzle-nexus/20260424140538_t1148-add-sigils-table/snapshot.json +0 -1652
  552. package/migrations/drizzle-nexus/20260504000001_t1839-fts5-nexus-symbols/migration.sql +0 -68
  553. package/migrations/drizzle-nexus/20260507135519_t9163-nexus-is-external/migration.sql +0 -20
  554. package/migrations/drizzle-nexus/20260507135519_t9163-nexus-is-external/snapshot.json +0 -1652
  555. package/migrations/drizzle-nexus/20260526222449_t11025-project-id-aliases/migration.sql +0 -16
  556. package/migrations/drizzle-signaldock/20260412000000_initial-global-signaldock/migration.sql +0 -209
  557. package/migrations/drizzle-signaldock/20260412000000_initial-global-signaldock/snapshot.json +0 -2060
@@ -1,445 +0,0 @@
1
- /**
2
- * SQLite store for global-tier signaldock.db — canonical agent identity database.
3
- *
4
- * Post-T310 (ADR-037), signaldock.db lives at `$XDG_DATA_HOME/cleo/signaldock.db`
5
- * (resolved via getCleoHome()). It holds cross-project agent identity, capabilities
6
- * catalog, and cloud-sync tables. Project-local messaging state has moved to
7
- * conduit.db (managed by conduit-sqlite.ts, T344).
8
- *
9
- * Migration runner: standard drizzle pipeline via migrateSanitized + reconcileJournal
10
- * (migration-manager.ts). Replaces the bare-SQL GLOBAL_EMBEDDED_MIGRATIONS runner
11
- * that was previously embedded here (T1166 / T1150 Wave 2A-04).
12
- *
13
- * Migration folder: packages/core/migrations/drizzle-signaldock/
14
- *
15
- * GLOBAL-TIER ONLY. This module MUST NOT resolve paths under any project's .cleo/
16
- * directory. The path guard in getGlobalSignaldockDbPath() enforces this invariant.
17
- *
18
- * @task T346
19
- * @task T1166
20
- * @epic T310
21
- * @epic T1150
22
- * @related ADR-037
23
- */
24
- import { existsSync, mkdirSync } from 'node:fs';
25
- import { join } from 'node:path';
26
- import { drizzle } from 'drizzle-orm/node-sqlite';
27
- import { getCleoHome } from '../paths.js';
28
- import { migrateSanitized, reconcileJournal } from './migration-manager.js';
29
- import { resolveCorePackageMigrationsFolder } from './resolve-migrations-folder.js';
30
- import * as signaldockSchema from './schema/signaldock-schema.js';
31
- // Import openNativeDatabase directly from the leaf module (sqlite-native.ts) to
32
- // avoid any static import from sqlite.ts that could re-enter the circular chain
33
- // agent-resolver → ... → memory-sqlite → sqlite.ts (T1325/T1331 v3).
34
- import { openNativeDatabase } from './sqlite-native.js';
35
- /**
36
- * Database file name within the global cleo home directory.
37
- *
38
- * @task T346
39
- * @epic T310
40
- */
41
- export const GLOBAL_SIGNALDOCK_DB_FILENAME = 'signaldock.db';
42
- /**
43
- * Schema version for global signaldock databases.
44
- *
45
- * @task T346
46
- * @epic T310
47
- */
48
- export const GLOBAL_SIGNALDOCK_SCHEMA_VERSION = '2026.4.12';
49
- /**
50
- * @deprecated Use GLOBAL_SIGNALDOCK_SCHEMA_VERSION. T310 is done (archived).
51
- * Retained only because packages/core/src/internal.ts re-exports this name.
52
- * Removal blocked until internal.ts export is cleaned up.
53
- * Tracking: T355 / T1508 P2-NEW-2 — remove in v2026.5.0.
54
- */
55
- export const SIGNALDOCK_SCHEMA_VERSION = GLOBAL_SIGNALDOCK_SCHEMA_VERSION;
56
- // ---------------------------------------------------------------------------
57
- // Path helpers
58
- // ---------------------------------------------------------------------------
59
- /**
60
- * Returns the GLOBAL-tier signaldock.db path. Post-T310, signaldock.db
61
- * holds canonical agent identity + cloud-sync tables. Project-local
62
- * messaging state lives in conduit.db (T344).
63
- *
64
- * Resolves to `getCleoHome() + '/signaldock.db'`.
65
- * Guard: asserts the resolved path starts with getCleoHome() (defense in depth,
66
- * mirrors the ADR-036 pattern used by getNexusDbPath in nexus-sqlite.ts).
67
- *
68
- * @task T346
69
- * @epic T310
70
- * @why ADR-037 split single signaldock.db into project conduit + global signaldock
71
- * @throws {Error} If resolved path is not under getCleoHome() — indicates a code
72
- * path that bypasses canonical path resolution. Fix the caller, do not suppress.
73
- */
74
- export function getGlobalSignaldockDbPath() {
75
- const cleoHome = getCleoHome();
76
- const dbPath = join(cleoHome, GLOBAL_SIGNALDOCK_DB_FILENAME);
77
- if (!dbPath.startsWith(cleoHome)) {
78
- throw new Error(`BUG: getGlobalSignaldockDbPath() resolved to "${dbPath}" which is NOT under ` +
79
- `getCleoHome() ("${cleoHome}"). signaldock.db is global-only per ADR-037. ` +
80
- `This indicates a code path that bypasses path resolution — ` +
81
- `fix the caller, do not suppress this error.`);
82
- }
83
- return dbPath;
84
- }
85
- /**
86
- * @deprecated Use getGlobalSignaldockDbPath() directly. T310 is done (archived).
87
- * Blocked from deletion: two callers still use this shim and require migration:
88
- * - packages/core/src/store/cross-db-cleanup.ts (calls with cwd — will throw)
89
- * - packages/core/src/internal.ts (re-exports this name)
90
- * Fix: migrate cross-db-cleanup.ts to use getConduitDbPath() and remove from
91
- * internal.ts. Tracking: T355 / T1508 P2-NEW-2 — remove in v2026.5.0.
92
- *
93
- * When called WITHOUT arguments: returns the global-tier path (forwards to
94
- * getGlobalSignaldockDbPath()).
95
- *
96
- * When called WITH a non-undefined `cwd` argument: throws a migration error
97
- * immediately. The project-tier path is now owned by conduit-sqlite.ts (T344).
98
- *
99
- * @param cwd - Must be undefined. Any other value throws a migration error.
100
- * @task T346
101
- * @epic T310
102
- */
103
- export function getSignaldockDbPath(cwd) {
104
- if (cwd !== undefined) {
105
- throw new Error('getSignaldockDbPath(cwd) is removed as of T310 (v2026.4.12). ' +
106
- 'signaldock.db is now global-only at $XDG_DATA_HOME/cleo/signaldock.db. ' +
107
- 'Use getGlobalSignaldockDbPath(), or for project-local messaging use ' +
108
- 'getConduitDbPath() from conduit-sqlite.ts (T344).');
109
- }
110
- return getGlobalSignaldockDbPath();
111
- }
112
- // ---------------------------------------------------------------------------
113
- // Migration folder resolution
114
- // ---------------------------------------------------------------------------
115
- /**
116
- * Resolve the absolute path to the drizzle-signaldock migrations folder inside
117
- * @cleocode/core, using ESM-native module resolution (T1177).
118
- *
119
- * Delegates to {@link resolveCorePackageMigrationsFolder} which handles
120
- * bundled dist/, workspace dev, and global-install layouts uniformly via
121
- * `import.meta.resolve()` + `createRequire().resolve()` fallback.
122
- *
123
- * @task T1166
124
- * @epic T1150
125
- */
126
- export function resolveSignaldockMigrationsFolder() {
127
- return resolveCorePackageMigrationsFolder('drizzle-signaldock');
128
- }
129
- // ---------------------------------------------------------------------------
130
- // Migration runner
131
- // ---------------------------------------------------------------------------
132
- /**
133
- * Run drizzle migrations to create/update signaldock.db tables.
134
- *
135
- * Uses reconcileJournal + migrateSanitized for backwards compatibility with
136
- * existing signaldock.db files in the wild. The reconciler's Scenario 1 and
137
- * Scenario 3 probe-and-mark-applied logic detects when the schema already
138
- * matches (e.g., an existing DB that had the T897 migration applied via the
139
- * old bare-SQL runner) and inserts journal rows without re-running DDL.
140
- *
141
- * Replaces the former applyGlobalSignaldockSchema() / GLOBAL_EMBEDDED_MIGRATIONS
142
- * bare-SQL runner (T1166 / T1150 Wave 2A-04).
143
- *
144
- * @param nativeDb - An open DatabaseSync handle at the global signaldock path
145
- * @task T1166
146
- * @epic T1150
147
- */
148
- function runSignaldockMigrations(nativeDb) {
149
- const migrationsFolder = resolveSignaldockMigrationsFolder();
150
- // Reconcile the Drizzle journal before running migrations.
151
- // Handles:
152
- // Scenario 1: agents table exists but __drizzle_migrations does not
153
- // → bootstrap the baseline as applied
154
- // Scenario 3: column exists but journal entry absent
155
- // → insert missing journal entry to avoid duplicate-column errors
156
- // Scenario 4: null name in journal entries
157
- // → backfill names so Drizzle v1 beta can detect applied migrations
158
- reconcileJournal(nativeDb, migrationsFolder, 'agents', 'signaldock');
159
- // Create the drizzle ORM wrapper and run pending migrations.
160
- const db = drizzle({ client: nativeDb, schema: signaldockSchema });
161
- migrateSanitized(db, { migrationsFolder });
162
- }
163
- // ---------------------------------------------------------------------------
164
- // Database lifecycle
165
- // ---------------------------------------------------------------------------
166
- /** Singleton native DatabaseSync handle for the current process. */
167
- let _globalSignaldockNativeDb = null;
168
- /**
169
- * Ensure global signaldock.db exists with the full global schema applied.
170
- * Creates the global cleo home directory if it doesn't exist.
171
- * Idempotent — safe to call multiple times.
172
- *
173
- * @returns Object with action ('created' | 'exists') and the database path
174
- * @task T346
175
- * @task T1166
176
- * @epic T310
177
- */
178
- /**
179
- * Read the `schema_version` row from `_signaldock_meta` if it exists.
180
- *
181
- * Used by {@link ensureGlobalSignaldockDb} as a fast-path sentinel: when the
182
- * value matches {@link GLOBAL_SIGNALDOCK_SCHEMA_VERSION} we know the DB is
183
- * fully bootstrapped and migrated to the in-process code version, so we can
184
- * skip the {@link runSignaldockMigrations} pipeline (reconcileJournal +
185
- * migrateSanitized) on every CLI invocation (T9027 — epic T9026, CLI startup
186
- * tax reduction).
187
- *
188
- * Defensive: returns `null` if the meta table is missing (very old / partially
189
- * initialized DBs) or the row is absent. Any throw is swallowed — a sentinel
190
- * miss simply forces the fall-through migration replay path which is safe.
191
- *
192
- * @param db - An open signaldock.db handle.
193
- * @returns The schema_version string, or `null` if absent / unreadable.
194
- * @task T9027
195
- * @epic T9026
196
- */
197
- function readSignaldockSchemaVersionSentinel(db) {
198
- try {
199
- const row = db
200
- .prepare("SELECT value FROM _signaldock_meta WHERE key = 'schema_version'")
201
- .get();
202
- return row?.value ?? null;
203
- }
204
- catch {
205
- return null;
206
- }
207
- }
208
- /**
209
- * Write the in-process schema version into `_signaldock_meta`.
210
- *
211
- * Creates the meta table if missing (older signaldock.db files predate any
212
- * meta-table guarantee) and stamps the current version so the next process
213
- * can short-circuit via {@link readSignaldockSchemaVersionSentinel}.
214
- *
215
- * @param db - An open signaldock.db handle (post-migration).
216
- * @task T9027
217
- * @epic T9026
218
- */
219
- function writeSignaldockSchemaVersionSentinel(db) {
220
- try {
221
- db.exec(`CREATE TABLE IF NOT EXISTS _signaldock_meta (
222
- key TEXT PRIMARY KEY,
223
- value TEXT NOT NULL,
224
- updated_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now'))
225
- );
226
- INSERT OR REPLACE INTO _signaldock_meta (key, value, updated_at)
227
- VALUES ('schema_version', '${GLOBAL_SIGNALDOCK_SCHEMA_VERSION}', strftime('%s', 'now'));`);
228
- }
229
- catch {
230
- // Non-fatal: if the meta write fails, ensure() still succeeds. Next
231
- // invocation will simply take the fall-through path (sentinel miss).
232
- }
233
- }
234
- export async function ensureGlobalSignaldockDb() {
235
- const dbPath = getGlobalSignaldockDbPath();
236
- const alreadyExists = existsSync(dbPath);
237
- // Ensure global cleo home directory exists
238
- const cleoHome = getCleoHome();
239
- if (!existsSync(cleoHome)) {
240
- mkdirSync(cleoHome, { recursive: true });
241
- }
242
- const nativeDb = openNativeDatabase(dbPath);
243
- try {
244
- // Check if schema already applied (agents table as sentinel)
245
- const hasSchema = (() => {
246
- try {
247
- const result = nativeDb
248
- .prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='agents'")
249
- .get();
250
- return !!result;
251
- }
252
- catch {
253
- return false;
254
- }
255
- })();
256
- // T9027 — Schema-version sentinel fast path (epic T9026, CLI startup tax).
257
- //
258
- // If the DB already has the global signaldock schema applied AND its
259
- // `_signaldock_meta.schema_version` row exactly equals the in-process
260
- // `GLOBAL_SIGNALDOCK_SCHEMA_VERSION` constant, we can skip
261
- // `runSignaldockMigrations()` entirely. That function performs a
262
- // reconcileJournal() + migrateSanitized() pass that, while a no-op for an
263
- // up-to-date DB, still pays a non-trivial cost on every CLI invocation
264
- // (journal SELECT, regex sanitization, drizzle migrator probe).
265
- //
266
- // Fall-through (sentinel missing, stale, or mismatched) preserves the
267
- // full migration replay path so fresh DBs and version bumps still work.
268
- if (alreadyExists &&
269
- hasSchema &&
270
- readSignaldockSchemaVersionSentinel(nativeDb) === GLOBAL_SIGNALDOCK_SCHEMA_VERSION) {
271
- _globalSignaldockNativeDb = nativeDb;
272
- return { action: 'exists', path: dbPath };
273
- }
274
- // Run drizzle migrations (reconcileJournal + migrateSanitized).
275
- // For existing DBs that used the old bare-SQL runner, reconcileJournal
276
- // Scenario 1 bootstraps the __drizzle_migrations journal from the existing
277
- // agents table, and Scenario 3 marks T897 ALTER columns as applied without
278
- // re-running the DDL.
279
- runSignaldockMigrations(nativeDb);
280
- // Stamp schema_version sentinel so the next process can take the fast path.
281
- writeSignaldockSchemaVersionSentinel(nativeDb);
282
- // Store native handle for backup integration (getGlobalSignaldockNativeDb)
283
- _globalSignaldockNativeDb = nativeDb;
284
- return {
285
- action: alreadyExists && hasSchema ? 'exists' : 'created',
286
- path: dbPath,
287
- };
288
- }
289
- catch (err) {
290
- nativeDb.close();
291
- _globalSignaldockNativeDb = null;
292
- throw err;
293
- }
294
- // NOTE: We intentionally do NOT close `nativeDb` here — the native handle is
295
- // retained as _globalSignaldockNativeDb for backup integration. Callers
296
- // that need a short-lived open/close pattern should open the DB themselves.
297
- }
298
- /**
299
- * @deprecated Use ensureGlobalSignaldockDb(). T310 is done (archived).
300
- * Blocked from deletion: caller still uses this shim and requires migration:
301
- * - packages/core/src/upgrade.ts calls ensureSignaldockDb(projectRootForMaint)
302
- * (with cwd arg — will throw at runtime). Must migrate to ensureConduitDb(cwd).
303
- * - packages/core/src/internal.ts re-exports this name.
304
- * Tracking: T355 / T1508 P2-NEW-2 — remove in v2026.5.0.
305
- *
306
- * When called WITHOUT arguments: forwards to ensureGlobalSignaldockDb().
307
- * When called WITH a non-undefined `cwd` argument: throws a migration error.
308
- *
309
- * @param cwd - Must be undefined. Any other value throws a migration error.
310
- * @task T346
311
- * @epic T310
312
- */
313
- export async function ensureSignaldockDb(cwd) {
314
- if (cwd !== undefined) {
315
- throw new Error('ensureSignaldockDb(cwd) is removed as of T310 (v2026.4.12). ' +
316
- 'signaldock.db is now global-only. ' +
317
- 'Use ensureGlobalSignaldockDb() for global identity, or ' +
318
- 'ensureConduitDb(cwd) from conduit-sqlite.ts for project messaging (T344).');
319
- }
320
- return ensureGlobalSignaldockDb();
321
- }
322
- /**
323
- * Check global signaldock.db health: table count, WAL mode, schema version.
324
- * Used by `cleo doctor` to verify global signaldock.db integrity.
325
- *
326
- * @returns Health report object, or object with exists=false if the DB does not exist.
327
- * @task T346
328
- * @epic T310
329
- */
330
- export async function checkGlobalSignaldockDbHealth() {
331
- const dbPath = getGlobalSignaldockDbPath();
332
- if (!existsSync(dbPath)) {
333
- return {
334
- exists: false,
335
- path: dbPath,
336
- tableCount: 0,
337
- walMode: false,
338
- schemaVersion: null,
339
- foreignKeysEnabled: false,
340
- };
341
- }
342
- const nativeDb = openNativeDatabase(dbPath, { readonly: true });
343
- try {
344
- const tables = nativeDb
345
- .prepare("SELECT COUNT(*) as count FROM sqlite_master WHERE type='table' AND name NOT LIKE 'sqlite_%'")
346
- .get();
347
- const journalMode = nativeDb.prepare('PRAGMA journal_mode').get();
348
- const fkEnabled = nativeDb.prepare('PRAGMA foreign_keys').get();
349
- // Schema version: check the __drizzle_migrations journal for evidence of
350
- // migrations applied. Fallback to _signaldock_meta for pre-T1166 DBs.
351
- let schemaVersion = null;
352
- try {
353
- // Post-T1166 path: check if drizzle journal has entries
354
- const journalRow = nativeDb
355
- .prepare('SELECT COUNT(*) as cnt FROM "__drizzle_migrations"')
356
- .get();
357
- if (journalRow && journalRow.cnt > 0) {
358
- schemaVersion = GLOBAL_SIGNALDOCK_SCHEMA_VERSION;
359
- }
360
- }
361
- catch {
362
- // __drizzle_migrations does not exist yet — fall through to _signaldock_meta
363
- }
364
- if (!schemaVersion) {
365
- try {
366
- // Pre-T1166 path: _signaldock_meta table (old bare-SQL runner)
367
- const meta = nativeDb
368
- .prepare("SELECT value FROM _signaldock_meta WHERE key = 'schema_version'")
369
- .get();
370
- schemaVersion = meta?.value ?? null;
371
- }
372
- catch {
373
- // _signaldock_meta may not exist on very old or partially-initialized DBs
374
- }
375
- }
376
- return {
377
- exists: true,
378
- path: dbPath,
379
- tableCount: tables.count,
380
- walMode: journalMode.journal_mode === 'wal',
381
- schemaVersion,
382
- foreignKeysEnabled: fkEnabled.foreign_keys === 1,
383
- };
384
- }
385
- finally {
386
- nativeDb.close();
387
- }
388
- }
389
- /**
390
- * @deprecated Use checkGlobalSignaldockDbHealth(). T310 is done (archived).
391
- * Retained only because packages/core/src/internal.ts re-exports this name.
392
- * Removal blocked until internal.ts export is cleaned up.
393
- * Tracking: T355 / T1508 P2-NEW-2 — remove in v2026.5.0.
394
- *
395
- * When called WITHOUT arguments: forwards to checkGlobalSignaldockDbHealth().
396
- * When called WITH a non-undefined `cwd` argument: throws a migration error.
397
- *
398
- * @param cwd - Must be undefined. Any other value throws a migration error.
399
- * @task T346
400
- * @epic T310
401
- */
402
- export async function checkSignaldockDbHealth(cwd) {
403
- if (cwd !== undefined) {
404
- throw new Error('checkSignaldockDbHealth(cwd) is removed as of T310 (v2026.4.12). ' +
405
- 'signaldock.db is now global-only. ' +
406
- 'Use checkGlobalSignaldockDbHealth() for global signaldock health, or ' +
407
- 'checkConduitDbHealth(cwd) from conduit-sqlite.ts for project conduit health (T344).');
408
- }
409
- return checkGlobalSignaldockDbHealth();
410
- }
411
- /**
412
- * Get the underlying node:sqlite DatabaseSync instance for global signaldock.db.
413
- * Returns the handle stored by the most recent ensureGlobalSignaldockDb() call,
414
- * or null if the database has not yet been initialized in this process.
415
- *
416
- * Used by sqlite-backup.ts to activate the signaldock GLOBAL_SNAPSHOT_TARGET
417
- * (spec §6.2, T310).
418
- *
419
- * @task T346
420
- * @epic T310
421
- */
422
- export function getGlobalSignaldockNativeDb() {
423
- return _globalSignaldockNativeDb;
424
- }
425
- /**
426
- * Reset the in-process global signaldock.db singleton.
427
- * ONLY for use in test isolation — never call in production code.
428
- *
429
- * @task T346
430
- * @epic T310
431
- */
432
- export function _resetGlobalSignaldockDb_TESTING_ONLY() {
433
- if (_globalSignaldockNativeDb) {
434
- try {
435
- if (_globalSignaldockNativeDb.isOpen) {
436
- _globalSignaldockNativeDb.close();
437
- }
438
- }
439
- catch {
440
- // Ignore close errors
441
- }
442
- _globalSignaldockNativeDb = null;
443
- }
444
- }
445
- //# sourceMappingURL=signaldock-sqlite.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"signaldock-sqlite.js","sourceRoot":"","sources":["../../src/store/signaldock-sqlite.ts"],"names":[],"mappings":"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"}
@@ -1,46 +0,0 @@
1
- CREATE TABLE IF NOT EXISTS `nexus_audit_log` (
2
- `id` text PRIMARY KEY,
3
- `timestamp` text DEFAULT (datetime('now')) NOT NULL,
4
- `action` text NOT NULL,
5
- `project_hash` text,
6
- `project_id` text,
7
- `domain` text,
8
- `operation` text,
9
- `session_id` text,
10
- `request_id` text,
11
- `source` text,
12
- `gateway` text,
13
- `success` integer,
14
- `duration_ms` integer,
15
- `details_json` text DEFAULT '{}',
16
- `error_message` text
17
- );
18
- --> statement-breakpoint
19
- CREATE TABLE IF NOT EXISTS `nexus_schema_meta` (
20
- `key` text PRIMARY KEY,
21
- `value` text NOT NULL
22
- );
23
- --> statement-breakpoint
24
- CREATE TABLE IF NOT EXISTS `project_registry` (
25
- `project_id` text PRIMARY KEY,
26
- `project_hash` text NOT NULL UNIQUE,
27
- `project_path` text NOT NULL UNIQUE,
28
- `name` text NOT NULL,
29
- `registered_at` text DEFAULT (datetime('now')) NOT NULL,
30
- `last_seen` text DEFAULT (datetime('now')) NOT NULL,
31
- `health_status` text DEFAULT 'unknown' NOT NULL,
32
- `health_last_check` text,
33
- `permissions` text DEFAULT 'read' NOT NULL,
34
- `last_sync` text DEFAULT (datetime('now')) NOT NULL,
35
- `task_count` integer DEFAULT 0 NOT NULL,
36
- `labels_json` text DEFAULT '[]' NOT NULL
37
- );
38
- --> statement-breakpoint
39
- CREATE INDEX IF NOT EXISTS `idx_nexus_audit_timestamp` ON `nexus_audit_log` (`timestamp`);--> statement-breakpoint
40
- CREATE INDEX IF NOT EXISTS `idx_nexus_audit_action` ON `nexus_audit_log` (`action`);--> statement-breakpoint
41
- CREATE INDEX IF NOT EXISTS `idx_nexus_audit_project_hash` ON `nexus_audit_log` (`project_hash`);--> statement-breakpoint
42
- CREATE INDEX IF NOT EXISTS `idx_nexus_audit_project_id` ON `nexus_audit_log` (`project_id`);--> statement-breakpoint
43
- CREATE INDEX IF NOT EXISTS `idx_nexus_audit_session` ON `nexus_audit_log` (`session_id`);--> statement-breakpoint
44
- CREATE INDEX IF NOT EXISTS `idx_project_registry_hash` ON `project_registry` (`project_hash`);--> statement-breakpoint
45
- CREATE INDEX IF NOT EXISTS `idx_project_registry_health` ON `project_registry` (`health_status`);--> statement-breakpoint
46
- CREATE INDEX IF NOT EXISTS `idx_project_registry_name` ON `project_registry` (`name`);
@@ -1,49 +0,0 @@
1
- CREATE TABLE IF NOT EXISTS `nexus_nodes` (
2
- `id` text PRIMARY KEY,
3
- `project_id` text NOT NULL,
4
- `kind` text NOT NULL,
5
- `label` text NOT NULL,
6
- `name` text,
7
- `file_path` text,
8
- `start_line` integer,
9
- `end_line` integer,
10
- `language` text,
11
- `is_exported` integer DEFAULT false NOT NULL,
12
- `parent_id` text,
13
- `parameters_json` text,
14
- `return_type` text,
15
- `doc_summary` text,
16
- `community_id` text,
17
- `meta_json` text,
18
- `indexed_at` text DEFAULT (datetime('now')) NOT NULL
19
- );
20
- --> statement-breakpoint
21
- CREATE TABLE IF NOT EXISTS `nexus_relations` (
22
- `id` text PRIMARY KEY,
23
- `project_id` text NOT NULL,
24
- `source_id` text NOT NULL,
25
- `target_id` text NOT NULL,
26
- `type` text NOT NULL,
27
- `confidence` real NOT NULL,
28
- `reason` text,
29
- `step` integer,
30
- `indexed_at` text DEFAULT (datetime('now')) NOT NULL
31
- );
32
- --> statement-breakpoint
33
- CREATE INDEX IF NOT EXISTS `idx_nexus_nodes_project` ON `nexus_nodes` (`project_id`);--> statement-breakpoint
34
- CREATE INDEX IF NOT EXISTS `idx_nexus_nodes_kind` ON `nexus_nodes` (`kind`);--> statement-breakpoint
35
- CREATE INDEX IF NOT EXISTS `idx_nexus_nodes_file` ON `nexus_nodes` (`file_path`);--> statement-breakpoint
36
- CREATE INDEX IF NOT EXISTS `idx_nexus_nodes_name` ON `nexus_nodes` (`name`);--> statement-breakpoint
37
- CREATE INDEX IF NOT EXISTS `idx_nexus_nodes_project_kind` ON `nexus_nodes` (`project_id`,`kind`);--> statement-breakpoint
38
- CREATE INDEX IF NOT EXISTS `idx_nexus_nodes_project_file` ON `nexus_nodes` (`project_id`,`file_path`);--> statement-breakpoint
39
- CREATE INDEX IF NOT EXISTS `idx_nexus_nodes_community` ON `nexus_nodes` (`community_id`);--> statement-breakpoint
40
- CREATE INDEX IF NOT EXISTS `idx_nexus_nodes_parent` ON `nexus_nodes` (`parent_id`);--> statement-breakpoint
41
- CREATE INDEX IF NOT EXISTS `idx_nexus_nodes_exported` ON `nexus_nodes` (`is_exported`);--> statement-breakpoint
42
- CREATE INDEX IF NOT EXISTS `idx_nexus_relations_project` ON `nexus_relations` (`project_id`);--> statement-breakpoint
43
- CREATE INDEX IF NOT EXISTS `idx_nexus_relations_source` ON `nexus_relations` (`source_id`);--> statement-breakpoint
44
- CREATE INDEX IF NOT EXISTS `idx_nexus_relations_target` ON `nexus_relations` (`target_id`);--> statement-breakpoint
45
- CREATE INDEX IF NOT EXISTS `idx_nexus_relations_type` ON `nexus_relations` (`type`);--> statement-breakpoint
46
- CREATE INDEX IF NOT EXISTS `idx_nexus_relations_project_type` ON `nexus_relations` (`project_id`,`type`);--> statement-breakpoint
47
- CREATE INDEX IF NOT EXISTS `idx_nexus_relations_source_type` ON `nexus_relations` (`source_id`,`type`);--> statement-breakpoint
48
- CREATE INDEX IF NOT EXISTS `idx_nexus_relations_target_type` ON `nexus_relations` (`target_id`,`type`);--> statement-breakpoint
49
- CREATE INDEX IF NOT EXISTS `idx_nexus_relations_confidence` ON `nexus_relations` (`confidence`);
@@ -1,12 +0,0 @@
1
- -- T622: Multi-Project Registry — add brain_db_path, tasks_db_path, last_indexed, stats_json
2
- -- to project_registry so Studio can switch between project contexts and display per-project stats.
3
-
4
- ALTER TABLE `project_registry` ADD COLUMN `brain_db_path` text;
5
- --> statement-breakpoint
6
- ALTER TABLE `project_registry` ADD COLUMN `tasks_db_path` text;
7
- --> statement-breakpoint
8
- ALTER TABLE `project_registry` ADD COLUMN `last_indexed` text;
9
- --> statement-breakpoint
10
- ALTER TABLE `project_registry` ADD COLUMN `stats_json` text DEFAULT '{}' NOT NULL;
11
- --> statement-breakpoint
12
- CREATE INDEX IF NOT EXISTS `idx_project_registry_last_indexed` ON `project_registry` (`last_indexed`);
@@ -1,13 +0,0 @@
1
- -- T998: NEXUS plasticity columns — Hebbian co-access strengthening.
2
- -- Adds weight, last_accessed_at, and co_accessed_count to nexus_relations so
3
- -- edges can be strengthened each time the connected nodes are co-accessed
4
- -- during retrieval (fire-together-wire-together principle).
5
- -- Migration is idempotent: ALTER TABLE ADD COLUMN is a no-op if column exists (via ensureColumns band-aid in nexus-sqlite.ts).
6
-
7
- ALTER TABLE `nexus_relations` ADD COLUMN `weight` real DEFAULT 0.0;
8
- --> statement-breakpoint
9
- ALTER TABLE `nexus_relations` ADD COLUMN `last_accessed_at` text;
10
- --> statement-breakpoint
11
- ALTER TABLE `nexus_relations` ADD COLUMN `co_accessed_count` integer DEFAULT 0;
12
- --> statement-breakpoint
13
- CREATE INDEX IF NOT EXISTS `idx_nexus_relations_last_accessed` ON `nexus_relations` (`last_accessed_at`);
@@ -1,16 +0,0 @@
1
- CREATE TABLE `user_profile` (
2
- `trait_key` text PRIMARY KEY,
3
- `trait_value` text NOT NULL,
4
- `confidence` real NOT NULL,
5
- `source` text NOT NULL,
6
- `derived_from_message_id` text,
7
- `first_observed_at` integer NOT NULL,
8
- `last_reinforced_at` integer NOT NULL,
9
- `reinforcement_count` integer DEFAULT 1 NOT NULL,
10
- `superseded_by` text
11
- );
12
- --> statement-breakpoint
13
- CREATE INDEX `idx_user_profile_confidence` ON `user_profile` (`confidence`);--> statement-breakpoint
14
- CREATE INDEX `idx_user_profile_source` ON `user_profile` (`source`);--> statement-breakpoint
15
- CREATE INDEX `idx_user_profile_last_reinforced` ON `user_profile` (`last_reinforced_at`);--> statement-breakpoint
16
- CREATE INDEX `idx_user_profile_superseded` ON `user_profile` (`superseded_by`);