@cleocode/core 2026.5.133 → 2026.6.0

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 (560) 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/local-transport.d.ts +1 -1
  19. package/dist/conduit/local-transport.d.ts.map +1 -1
  20. package/dist/conduit/local-transport.js +69 -43
  21. package/dist/conduit/local-transport.js.map +1 -1
  22. package/dist/dispatch/mutate-projection.d.ts.map +1 -1
  23. package/dist/dispatch/mutate-projection.js +11 -0
  24. package/dist/dispatch/mutate-projection.js.map +1 -1
  25. package/dist/docs/docs-read-model.d.ts +7 -0
  26. package/dist/docs/docs-read-model.d.ts.map +1 -1
  27. package/dist/docs/docs-read-model.js +5 -0
  28. package/dist/docs/docs-read-model.js.map +1 -1
  29. package/dist/docs/supersede.d.ts.map +1 -1
  30. package/dist/docs/supersede.js +12 -7
  31. package/dist/docs/supersede.js.map +1 -1
  32. package/dist/doctor/db-substrate.d.ts.map +1 -1
  33. package/dist/doctor/db-substrate.js +10 -9
  34. package/dist/doctor/db-substrate.js.map +1 -1
  35. package/dist/git-shim-export.d.ts +18 -0
  36. package/dist/git-shim-export.d.ts.map +1 -0
  37. package/dist/git-shim-export.js +18 -0
  38. package/dist/git-shim-export.js.map +1 -0
  39. package/dist/hooks/payload-schemas.d.ts +2 -2
  40. package/dist/init.d.ts.map +1 -1
  41. package/dist/init.js +39 -32
  42. package/dist/init.js.map +1 -1
  43. package/dist/internal.d.ts +11 -3
  44. package/dist/internal.d.ts.map +1 -1
  45. package/dist/internal.js +14 -5
  46. package/dist/internal.js.map +1 -1
  47. package/dist/lafs-export.d.ts +18 -0
  48. package/dist/lafs-export.d.ts.map +1 -0
  49. package/dist/lafs-export.js +18 -0
  50. package/dist/lafs-export.js.map +1 -0
  51. package/dist/lifecycle/effective-stage.js +1 -1
  52. package/dist/lifecycle/index.js +1 -1
  53. package/dist/lifecycle/index.js.map +1 -1
  54. package/dist/lifecycle/rollup.js +1 -1
  55. package/dist/llm/credential-pool.d.ts +17 -0
  56. package/dist/llm/credential-pool.d.ts.map +1 -1
  57. package/dist/llm/credential-pool.js +40 -1
  58. package/dist/llm/credential-pool.js.map +1 -1
  59. package/dist/llm/plugin-facade.d.ts.map +1 -1
  60. package/dist/llm/plugin-facade.js +11 -19
  61. package/dist/llm/plugin-facade.js.map +1 -1
  62. package/dist/llm/role-executor.d.ts +8 -0
  63. package/dist/llm/role-executor.d.ts.map +1 -1
  64. package/dist/llm/role-executor.js +96 -4
  65. package/dist/llm/role-executor.js.map +1 -1
  66. package/dist/llm/role-resolver.d.ts.map +1 -1
  67. package/dist/llm/role-resolver.js +56 -1
  68. package/dist/llm/role-resolver.js.map +1 -1
  69. package/dist/llm/transports/codex-oauth-headers.d.ts +51 -0
  70. package/dist/llm/transports/codex-oauth-headers.d.ts.map +1 -0
  71. package/dist/llm/transports/codex-oauth-headers.js +89 -0
  72. package/dist/llm/transports/codex-oauth-headers.js.map +1 -0
  73. package/dist/memory/claude-mem-migration.d.ts.map +1 -1
  74. package/dist/memory/claude-mem-migration.js +1 -3
  75. package/dist/memory/claude-mem-migration.js.map +1 -1
  76. package/dist/memory/decisions.d.ts.map +1 -1
  77. package/dist/memory/decisions.js +77 -23
  78. package/dist/memory/decisions.js.map +1 -1
  79. package/dist/memory/graph-memory-bridge.d.ts.map +1 -1
  80. package/dist/memory/graph-memory-bridge.js +12 -6
  81. package/dist/memory/graph-memory-bridge.js.map +1 -1
  82. package/dist/memory/learnings.d.ts +2 -2
  83. package/dist/memory/nexus-plasticity.d.ts +21 -9
  84. package/dist/memory/nexus-plasticity.d.ts.map +1 -1
  85. package/dist/memory/nexus-plasticity.js +44 -22
  86. package/dist/memory/nexus-plasticity.js.map +1 -1
  87. package/dist/memory/patterns.d.ts +2 -2
  88. package/dist/memory/redaction.d.ts +19 -3
  89. package/dist/memory/redaction.d.ts.map +1 -1
  90. package/dist/memory/redaction.js +22 -94
  91. package/dist/memory/redaction.js.map +1 -1
  92. package/dist/metrics/token-service.d.ts +8 -2
  93. package/dist/metrics/token-service.d.ts.map +1 -1
  94. package/dist/metrics/token-service.js +1 -1
  95. package/dist/metrics/token-service.js.map +1 -1
  96. package/dist/nexus/analyze-orchestrator.d.ts.map +1 -1
  97. package/dist/nexus/analyze-orchestrator.js +6 -8
  98. package/dist/nexus/analyze-orchestrator.js.map +1 -1
  99. package/dist/nexus/api-extractors/http-extractor.d.ts.map +1 -1
  100. package/dist/nexus/api-extractors/http-extractor.js +3 -3
  101. package/dist/nexus/api-extractors/http-extractor.js.map +1 -1
  102. package/dist/nexus/clusters.d.ts.map +1 -1
  103. package/dist/nexus/clusters.js +3 -2
  104. package/dist/nexus/clusters.js.map +1 -1
  105. package/dist/nexus/context.d.ts.map +1 -1
  106. package/dist/nexus/context.js +10 -16
  107. package/dist/nexus/context.js.map +1 -1
  108. package/dist/nexus/diff.d.ts.map +1 -1
  109. package/dist/nexus/diff.js +6 -4
  110. package/dist/nexus/diff.js.map +1 -1
  111. package/dist/nexus/export.d.ts.map +1 -1
  112. package/dist/nexus/export.js +7 -4
  113. package/dist/nexus/export.js.map +1 -1
  114. package/dist/nexus/flows.d.ts.map +1 -1
  115. package/dist/nexus/flows.js +3 -1
  116. package/dist/nexus/flows.js.map +1 -1
  117. package/dist/nexus/impact.d.ts +1 -1
  118. package/dist/nexus/impact.d.ts.map +1 -1
  119. package/dist/nexus/impact.js +31 -17
  120. package/dist/nexus/impact.js.map +1 -1
  121. package/dist/nexus/living-brain.d.ts.map +1 -1
  122. package/dist/nexus/living-brain.js +27 -15
  123. package/dist/nexus/living-brain.js.map +1 -1
  124. package/dist/nexus/nexus-bridge.d.ts.map +1 -1
  125. package/dist/nexus/nexus-bridge.js +28 -29
  126. package/dist/nexus/nexus-bridge.js.map +1 -1
  127. package/dist/nexus/plasticity-queries.d.ts +4 -2
  128. package/dist/nexus/plasticity-queries.d.ts.map +1 -1
  129. package/dist/nexus/plasticity-queries.js +27 -15
  130. package/dist/nexus/plasticity-queries.js.map +1 -1
  131. package/dist/nexus/query.d.ts.map +1 -1
  132. package/dist/nexus/query.js +6 -2
  133. package/dist/nexus/query.js.map +1 -1
  134. package/dist/nexus/registry.d.ts.map +1 -1
  135. package/dist/nexus/registry.js +65 -30
  136. package/dist/nexus/registry.js.map +1 -1
  137. package/dist/nexus/route-analysis.d.ts +3 -2
  138. package/dist/nexus/route-analysis.d.ts.map +1 -1
  139. package/dist/nexus/route-analysis.js +11 -10
  140. package/dist/nexus/route-analysis.js.map +1 -1
  141. package/dist/nexus/sigil.d.ts.map +1 -1
  142. package/dist/nexus/sigil.js +60 -13
  143. package/dist/nexus/sigil.js.map +1 -1
  144. package/dist/nexus/user-profile.d.ts +2 -1
  145. package/dist/nexus/user-profile.d.ts.map +1 -1
  146. package/dist/nexus/user-profile.js +8 -4
  147. package/dist/nexus/user-profile.js.map +1 -1
  148. package/dist/orchestrate/index.d.ts +1 -1
  149. package/dist/orchestrate/index.d.ts.map +1 -1
  150. package/dist/orchestrate/index.js +1 -1
  151. package/dist/orchestrate/index.js.map +1 -1
  152. package/dist/orchestrate/plan.d.ts +3 -3
  153. package/dist/orchestrate/plan.d.ts.map +1 -1
  154. package/dist/orchestrate/plan.js +7 -7
  155. package/dist/orchestrate/plan.js.map +1 -1
  156. package/dist/orchestrate/spawn-ops.js +2 -2
  157. package/dist/orchestrate/spawn-ops.js.map +1 -1
  158. package/dist/orchestration/classify.d.ts +2 -2
  159. package/dist/orchestration/classify.js +3 -3
  160. package/dist/orchestration/classify.js.map +1 -1
  161. package/dist/orchestration/validate-spawn.d.ts.map +1 -1
  162. package/dist/orchestration/validate-spawn.js +5 -5
  163. package/dist/orchestration/validate-spawn.js.map +1 -1
  164. package/dist/paths-export.d.ts +18 -0
  165. package/dist/paths-export.d.ts.map +1 -0
  166. package/dist/paths-export.js +18 -0
  167. package/dist/paths-export.js.map +1 -0
  168. package/dist/paths.d.ts.map +1 -1
  169. package/dist/paths.js +24 -11
  170. package/dist/paths.js.map +1 -1
  171. package/dist/playbooks/index.d.ts +1 -0
  172. package/dist/playbooks/index.d.ts.map +1 -1
  173. package/dist/playbooks/index.js +4 -0
  174. package/dist/playbooks/index.js.map +1 -1
  175. package/dist/playbooks/skill-node-executor.d.ts +155 -0
  176. package/dist/playbooks/skill-node-executor.d.ts.map +1 -0
  177. package/dist/playbooks/skill-node-executor.js +156 -0
  178. package/dist/playbooks/skill-node-executor.js.map +1 -0
  179. package/dist/repair.d.ts +3 -7
  180. package/dist/repair.d.ts.map +1 -1
  181. package/dist/repair.js +5 -43
  182. package/dist/repair.js.map +1 -1
  183. package/dist/sagas/migrate-containment.js +7 -7
  184. package/dist/sagas/migrate-containment.js.map +1 -1
  185. package/dist/scaffold/ensure-dirs.d.ts +8 -2
  186. package/dist/scaffold/ensure-dirs.d.ts.map +1 -1
  187. package/dist/scaffold/ensure-dirs.js +24 -11
  188. package/dist/scaffold/ensure-dirs.js.map +1 -1
  189. package/dist/scaffold/project-detection.d.ts +5 -1
  190. package/dist/scaffold/project-detection.d.ts.map +1 -1
  191. package/dist/scaffold/project-detection.js +9 -5
  192. package/dist/scaffold/project-detection.js.map +1 -1
  193. package/dist/sentient/hygiene-scan.js +6 -6
  194. package/dist/sentient/hygiene-scan.js.map +1 -1
  195. package/dist/sentient/proposal-dedup.js +2 -2
  196. package/dist/sentient/proposal-rate-limiter.js +1 -1
  197. package/dist/sentient/propose-tick.js +5 -5
  198. package/dist/sentient/propose-tick.js.map +1 -1
  199. package/dist/sentient/stage-drift-tick.js +3 -3
  200. package/dist/sentient/stage-drift-tick.js.map +1 -1
  201. package/dist/sequence/index.d.ts.map +1 -1
  202. package/dist/sequence/index.js +6 -2
  203. package/dist/sequence/index.js.map +1 -1
  204. package/dist/setup/sections/verification.js +2 -2
  205. package/dist/setup/sections/verification.js.map +1 -1
  206. package/dist/shutdown.d.ts +81 -0
  207. package/dist/shutdown.d.ts.map +1 -0
  208. package/dist/shutdown.js +105 -0
  209. package/dist/shutdown.js.map +1 -0
  210. package/dist/skills/index.d.ts +2 -0
  211. package/dist/skills/index.d.ts.map +1 -1
  212. package/dist/skills/index.js +1 -0
  213. package/dist/skills/index.js.map +1 -1
  214. package/dist/skills/skill-executor-adapter.d.ts +136 -0
  215. package/dist/skills/skill-executor-adapter.d.ts.map +1 -0
  216. package/dist/skills/skill-executor-adapter.js +137 -0
  217. package/dist/skills/skill-executor-adapter.js.map +1 -0
  218. package/dist/skills/usage-recorder.d.ts.map +1 -1
  219. package/dist/skills/usage-recorder.js +30 -0
  220. package/dist/skills/usage-recorder.js.map +1 -1
  221. package/dist/skills-export.d.ts +23 -0
  222. package/dist/skills-export.d.ts.map +1 -0
  223. package/dist/skills-export.js +23 -0
  224. package/dist/skills-export.js.map +1 -0
  225. package/dist/stats/index.d.ts.map +1 -1
  226. package/dist/stats/index.js +8 -3
  227. package/dist/stats/index.js.map +1 -1
  228. package/dist/store/agent-doctor.d.ts +3 -3
  229. package/dist/store/agent-doctor.d.ts.map +1 -1
  230. package/dist/store/agent-doctor.js +18 -13
  231. package/dist/store/agent-doctor.js.map +1 -1
  232. package/dist/store/agent-install.d.ts +6 -5
  233. package/dist/store/agent-install.d.ts.map +1 -1
  234. package/dist/store/agent-install.js +20 -16
  235. package/dist/store/agent-install.js.map +1 -1
  236. package/dist/store/agent-registry-accessor.d.ts +66 -28
  237. package/dist/store/agent-registry-accessor.d.ts.map +1 -1
  238. package/dist/store/agent-registry-accessor.js +248 -167
  239. package/dist/store/agent-registry-accessor.js.map +1 -1
  240. package/dist/store/agent-registry-store.d.ts +242 -0
  241. package/dist/store/agent-registry-store.d.ts.map +1 -0
  242. package/dist/store/agent-registry-store.js +501 -0
  243. package/dist/store/agent-registry-store.js.map +1 -0
  244. package/dist/store/agent-resolver.d.ts +8 -8
  245. package/dist/store/agent-resolver.d.ts.map +1 -1
  246. package/dist/store/agent-resolver.js +19 -17
  247. package/dist/store/agent-resolver.js.map +1 -1
  248. package/dist/store/backup-pack.d.ts.map +1 -1
  249. package/dist/store/backup-pack.js +24 -8
  250. package/dist/store/backup-pack.js.map +1 -1
  251. package/dist/store/conduit-sqlite.d.ts +181 -74
  252. package/dist/store/conduit-sqlite.d.ts.map +1 -1
  253. package/dist/store/conduit-sqlite.js +307 -528
  254. package/dist/store/conduit-sqlite.js.map +1 -1
  255. package/dist/store/cross-db-cleanup.d.ts +5 -5
  256. package/dist/store/cross-db-cleanup.d.ts.map +1 -1
  257. package/dist/store/cross-db-cleanup.js +12 -10
  258. package/dist/store/cross-db-cleanup.js.map +1 -1
  259. package/dist/store/data-accessor.d.ts +4 -4
  260. package/dist/store/data-accessor.js +5 -5
  261. package/dist/store/data-accessor.js.map +1 -1
  262. package/dist/store/data-safety-central.d.ts +83 -1
  263. package/dist/store/data-safety-central.d.ts.map +1 -1
  264. package/dist/store/data-safety-central.js +257 -0
  265. package/dist/store/data-safety-central.js.map +1 -1
  266. package/dist/store/db-helpers.d.ts +8 -2
  267. package/dist/store/db-helpers.d.ts.map +1 -1
  268. package/dist/store/db-helpers.js +6 -2
  269. package/dist/store/db-helpers.js.map +1 -1
  270. package/dist/store/dual-scope-db.d.ts +46 -4
  271. package/dist/store/dual-scope-db.d.ts.map +1 -1
  272. package/dist/store/dual-scope-db.js +103 -9
  273. package/dist/store/dual-scope-db.js.map +1 -1
  274. package/dist/store/exodus/__fixtures__/representative-fixture.d.ts +116 -0
  275. package/dist/store/exodus/__fixtures__/representative-fixture.d.ts.map +1 -0
  276. package/dist/store/exodus/__fixtures__/representative-fixture.js +274 -0
  277. package/dist/store/exodus/__fixtures__/representative-fixture.js.map +1 -0
  278. package/dist/store/exodus/index.d.ts +18 -0
  279. package/dist/store/exodus/index.d.ts.map +1 -0
  280. package/dist/store/exodus/index.js +18 -0
  281. package/dist/store/exodus/index.js.map +1 -0
  282. package/dist/store/exodus/migrate.d.ts +160 -0
  283. package/dist/store/exodus/migrate.d.ts.map +1 -0
  284. package/dist/store/exodus/migrate.js +1220 -0
  285. package/dist/store/exodus/migrate.js.map +1 -0
  286. package/dist/store/exodus/on-open.d.ts +189 -0
  287. package/dist/store/exodus/on-open.d.ts.map +1 -0
  288. package/dist/store/exodus/on-open.js +464 -0
  289. package/dist/store/exodus/on-open.js.map +1 -0
  290. package/dist/store/exodus/plan.d.ts +44 -0
  291. package/dist/store/exodus/plan.d.ts.map +1 -0
  292. package/dist/store/exodus/plan.js +178 -0
  293. package/dist/store/exodus/plan.js.map +1 -0
  294. package/dist/store/exodus/status.d.ts +22 -0
  295. package/dist/store/exodus/status.d.ts.map +1 -0
  296. package/dist/store/exodus/status.js +88 -0
  297. package/dist/store/exodus/status.js.map +1 -0
  298. package/dist/store/exodus/table-name-map.d.ts +173 -0
  299. package/dist/store/exodus/table-name-map.d.ts.map +1 -0
  300. package/dist/store/exodus/table-name-map.js +660 -0
  301. package/dist/store/exodus/table-name-map.js.map +1 -0
  302. package/dist/store/exodus/types.d.ts +169 -0
  303. package/dist/store/exodus/types.d.ts.map +1 -0
  304. package/dist/store/exodus/types.js +21 -0
  305. package/dist/store/exodus/types.js.map +1 -0
  306. package/dist/store/exodus/verify-migration.d.ts +72 -0
  307. package/dist/store/exodus/verify-migration.d.ts.map +1 -0
  308. package/dist/store/exodus/verify-migration.js +678 -0
  309. package/dist/store/exodus/verify-migration.js.map +1 -0
  310. package/dist/store/exodus/verify.d.ts +58 -0
  311. package/dist/store/exodus/verify.d.ts.map +1 -0
  312. package/dist/store/exodus/verify.js +74 -0
  313. package/dist/store/exodus/verify.js.map +1 -0
  314. package/dist/store/index.d.ts +2 -3
  315. package/dist/store/index.d.ts.map +1 -1
  316. package/dist/store/index.js +2 -3
  317. package/dist/store/index.js.map +1 -1
  318. package/dist/store/memory-accessor.d.ts +31 -0
  319. package/dist/store/memory-accessor.d.ts.map +1 -1
  320. package/dist/store/memory-accessor.js +38 -0
  321. package/dist/store/memory-accessor.js.map +1 -1
  322. package/dist/store/memory-sqlite.d.ts +86 -13
  323. package/dist/store/memory-sqlite.d.ts.map +1 -1
  324. package/dist/store/memory-sqlite.js +326 -528
  325. package/dist/store/memory-sqlite.js.map +1 -1
  326. package/dist/store/migrate-signaldock-to-conduit.d.ts +1 -1
  327. package/dist/store/migrate-signaldock-to-conduit.d.ts.map +1 -1
  328. package/dist/store/migrate-signaldock-to-conduit.js +126 -35
  329. package/dist/store/migrate-signaldock-to-conduit.js.map +1 -1
  330. package/dist/store/migration-manager.d.ts +49 -0
  331. package/dist/store/migration-manager.d.ts.map +1 -1
  332. package/dist/store/migration-manager.js +167 -67
  333. package/dist/store/migration-manager.js.map +1 -1
  334. package/dist/store/migration-sqlite.d.ts +1 -1
  335. package/dist/store/migration-sqlite.d.ts.map +1 -1
  336. package/dist/store/migration-sqlite.js +32 -3
  337. package/dist/store/migration-sqlite.js.map +1 -1
  338. package/dist/store/nexus-sqlite.d.ts +152 -29
  339. package/dist/store/nexus-sqlite.d.ts.map +1 -1
  340. package/dist/store/nexus-sqlite.js +496 -177
  341. package/dist/store/nexus-sqlite.js.map +1 -1
  342. package/dist/store/nexus-validation-schemas.d.ts +32 -32
  343. package/dist/store/open-cleo-db.d.ts +37 -40
  344. package/dist/store/open-cleo-db.d.ts.map +1 -1
  345. package/dist/store/open-cleo-db.js +76 -153
  346. package/dist/store/open-cleo-db.js.map +1 -1
  347. package/dist/store/role-accessors-impl.d.ts +4 -4
  348. package/dist/store/role-accessors-impl.d.ts.map +1 -1
  349. package/dist/store/role-accessors-impl.js +18 -15
  350. package/dist/store/role-accessors-impl.js.map +1 -1
  351. package/dist/store/schema/{signaldock-schema.d.ts → agent-registry-schema.d.ts} +15 -5
  352. package/dist/store/schema/agent-registry-schema.d.ts.map +1 -0
  353. package/dist/store/schema/{signaldock-schema.js → agent-registry-schema.js} +15 -5
  354. package/dist/store/schema/agent-registry-schema.js.map +1 -0
  355. package/dist/store/schema/agent-schema.d.ts +1 -1
  356. package/dist/store/schema/agent-schema.js +4 -4
  357. package/dist/store/schema/agent-schema.js.map +1 -1
  358. package/dist/store/schema/attachments.d.ts +1 -1
  359. package/dist/store/schema/audit.d.ts +15 -5
  360. package/dist/store/schema/audit.d.ts.map +1 -1
  361. package/dist/store/schema/audit.js +12 -2
  362. package/dist/store/schema/audit.js.map +1 -1
  363. package/dist/store/schema/background-jobs.d.ts +1 -1
  364. package/dist/store/schema/cleo-global/{signaldock.d.ts → agent-registry.d.ts} +277 -271
  365. package/dist/store/schema/cleo-global/agent-registry.d.ts.map +1 -0
  366. package/dist/store/schema/cleo-global/{signaldock.js → agent-registry.js} +136 -125
  367. package/dist/store/schema/cleo-global/agent-registry.js.map +1 -0
  368. package/dist/store/schema/cleo-global/index.d.ts +29 -22
  369. package/dist/store/schema/cleo-global/index.d.ts.map +1 -1
  370. package/dist/store/schema/cleo-global/index.js +29 -22
  371. package/dist/store/schema/cleo-global/index.js.map +1 -1
  372. package/dist/store/schema/cleo-global/nexus.d.ts +36 -1034
  373. package/dist/store/schema/cleo-global/nexus.d.ts.map +1 -1
  374. package/dist/store/schema/cleo-global/nexus.js +32 -337
  375. package/dist/store/schema/cleo-global/nexus.js.map +1 -1
  376. package/dist/store/schema/cleo-global/skills.d.ts +16 -0
  377. package/dist/store/schema/cleo-global/skills.d.ts.map +1 -1
  378. package/dist/store/schema/cleo-global/skills.js +11 -0
  379. package/dist/store/schema/cleo-global/skills.js.map +1 -1
  380. package/dist/store/schema/{cleo-project → cleo-global}/telemetry.d.ts +33 -17
  381. package/dist/store/schema/cleo-global/telemetry.d.ts.map +1 -0
  382. package/dist/store/schema/{cleo-project → cleo-global}/telemetry.js +30 -18
  383. package/dist/store/schema/cleo-global/telemetry.js.map +1 -0
  384. package/dist/store/schema/cleo-project/audit.d.ts +8 -8
  385. package/dist/store/schema/cleo-project/audit.d.ts.map +1 -1
  386. package/dist/store/schema/cleo-project/audit.js +2 -6
  387. package/dist/store/schema/cleo-project/audit.js.map +1 -1
  388. package/dist/store/schema/cleo-project/docs.d.ts +1 -1
  389. package/dist/store/schema/cleo-project/index.d.ts +29 -12
  390. package/dist/store/schema/cleo-project/index.d.ts.map +1 -1
  391. package/dist/store/schema/cleo-project/index.js +29 -12
  392. package/dist/store/schema/cleo-project/index.js.map +1 -1
  393. package/dist/store/schema/cleo-project/lifecycle.d.ts +2 -2
  394. package/dist/store/schema/cleo-project/nexus-graph.d.ts +1067 -0
  395. package/dist/store/schema/cleo-project/nexus-graph.d.ts.map +1 -0
  396. package/dist/store/schema/cleo-project/nexus-graph.js +407 -0
  397. package/dist/store/schema/cleo-project/nexus-graph.js.map +1 -0
  398. package/dist/store/schema/cleo-project/provenance-orphans.d.ts +385 -0
  399. package/dist/store/schema/cleo-project/provenance-orphans.d.ts.map +1 -0
  400. package/dist/store/schema/cleo-project/provenance-orphans.js +142 -0
  401. package/dist/store/schema/cleo-project/provenance-orphans.js.map +1 -0
  402. package/dist/store/schema/cleo-project/provenance-rest.d.ts +1 -1
  403. package/dist/store/schema/cleo-project/runtime.d.ts +1 -1
  404. package/dist/store/schema/cleo-project/tasks-core-batch2.d.ts +1 -1
  405. package/dist/store/schema/cleo-project/tasks-core.d.ts +3 -3
  406. package/dist/store/schema/cleo-shared/brain.d.ts +711 -494
  407. package/dist/store/schema/cleo-shared/brain.d.ts.map +1 -1
  408. package/dist/store/schema/cleo-shared/brain.js +215 -134
  409. package/dist/store/schema/cleo-shared/brain.js.map +1 -1
  410. package/dist/store/schema/conduit-schema.d.ts +63 -51
  411. package/dist/store/schema/conduit-schema.d.ts.map +1 -1
  412. package/dist/store/schema/conduit-schema.js +23 -11
  413. package/dist/store/schema/conduit-schema.js.map +1 -1
  414. package/dist/store/schema/goal.d.ts +3 -2
  415. package/dist/store/schema/goal.d.ts.map +1 -1
  416. package/dist/store/schema/goal.js +3 -2
  417. package/dist/store/schema/goal.js.map +1 -1
  418. package/dist/store/schema/index.d.ts +1 -0
  419. package/dist/store/schema/index.d.ts.map +1 -1
  420. package/dist/store/schema/index.js +1 -0
  421. package/dist/store/schema/index.js.map +1 -1
  422. package/dist/store/schema/lifecycle.d.ts +2 -2
  423. package/dist/store/schema/memory-schema.d.ts +2 -2
  424. package/dist/store/schema/nexus-schema.d.ts +174 -115
  425. package/dist/store/schema/nexus-schema.d.ts.map +1 -1
  426. package/dist/store/schema/nexus-schema.js +175 -55
  427. package/dist/store/schema/nexus-schema.js.map +1 -1
  428. package/dist/store/schema/provenance/releases.d.ts +1 -1
  429. package/dist/store/schema/schema-utils.d.ts +78 -0
  430. package/dist/store/schema/schema-utils.d.ts.map +1 -0
  431. package/dist/store/schema/schema-utils.js +49 -0
  432. package/dist/store/schema/schema-utils.js.map +1 -0
  433. package/dist/store/schema/skills-schema.d.ts +81 -44
  434. package/dist/store/schema/skills-schema.d.ts.map +1 -1
  435. package/dist/store/schema/skills-schema.js +49 -16
  436. package/dist/store/schema/skills-schema.js.map +1 -1
  437. package/dist/store/schema/tasks.d.ts +3 -3
  438. package/dist/store/skills-db.d.ts +90 -50
  439. package/dist/store/skills-db.d.ts.map +1 -1
  440. package/dist/store/skills-db.js +132 -146
  441. package/dist/store/skills-db.js.map +1 -1
  442. package/dist/store/sqlite-backup.d.ts +2 -2
  443. package/dist/store/sqlite-backup.d.ts.map +1 -1
  444. package/dist/store/sqlite-backup.js +11 -10
  445. package/dist/store/sqlite-backup.js.map +1 -1
  446. package/dist/store/sqlite-data-accessor.d.ts.map +1 -1
  447. package/dist/store/sqlite-data-accessor.js +25 -18
  448. package/dist/store/sqlite-data-accessor.js.map +1 -1
  449. package/dist/store/sqlite.d.ts +72 -12
  450. package/dist/store/sqlite.d.ts.map +1 -1
  451. package/dist/store/sqlite.js +153 -89
  452. package/dist/store/sqlite.js.map +1 -1
  453. package/dist/store/tasks-schema.d.ts +4 -0
  454. package/dist/store/tasks-schema.d.ts.map +1 -1
  455. package/dist/store/tasks-schema.js +60 -0
  456. package/dist/store/tasks-schema.js.map +1 -1
  457. package/dist/store/tasks-sqlite.d.ts +2 -2
  458. package/dist/store/tasks-sqlite.d.ts.map +1 -1
  459. package/dist/store/tasks-sqlite.js +10 -5
  460. package/dist/store/tasks-sqlite.js.map +1 -1
  461. package/dist/store/umbrella-data-accessor.d.ts +17 -6
  462. package/dist/store/umbrella-data-accessor.d.ts.map +1 -1
  463. package/dist/store/umbrella-data-accessor.js +8 -8
  464. package/dist/store/umbrella-data-accessor.js.map +1 -1
  465. package/dist/store/validation-schemas.d.ts +241 -208
  466. package/dist/store/validation-schemas.d.ts.map +1 -1
  467. package/dist/system/health.d.ts.map +1 -1
  468. package/dist/system/health.js +11 -6
  469. package/dist/system/health.js.map +1 -1
  470. package/dist/system/project-health.d.ts.map +1 -1
  471. package/dist/system/project-health.js +58 -12
  472. package/dist/system/project-health.js.map +1 -1
  473. package/dist/tasks/add.d.ts +8 -0
  474. package/dist/tasks/add.d.ts.map +1 -1
  475. package/dist/tasks/add.js +101 -0
  476. package/dist/tasks/add.js.map +1 -1
  477. package/dist/tasks/cancelled-child-waiver-audit.d.ts +47 -0
  478. package/dist/tasks/cancelled-child-waiver-audit.d.ts.map +1 -0
  479. package/dist/tasks/cancelled-child-waiver-audit.js +34 -0
  480. package/dist/tasks/cancelled-child-waiver-audit.js.map +1 -0
  481. package/dist/tasks/complete.d.ts +22 -2
  482. package/dist/tasks/complete.d.ts.map +1 -1
  483. package/dist/tasks/complete.js +71 -6
  484. package/dist/tasks/complete.js.map +1 -1
  485. package/dist/tasks/compute-task-view.js +1 -1
  486. package/dist/tasks/session-scope.d.ts +5 -0
  487. package/dist/tasks/session-scope.d.ts.map +1 -1
  488. package/dist/tasks/session-scope.js +4 -0
  489. package/dist/tasks/session-scope.js.map +1 -1
  490. package/dist/tools/guard.d.ts +71 -1
  491. package/dist/tools/guard.d.ts.map +1 -1
  492. package/dist/tools/guard.js +73 -1
  493. package/dist/tools/guard.js.map +1 -1
  494. package/dist/tools/index.d.ts +21 -0
  495. package/dist/tools/index.d.ts.map +1 -1
  496. package/dist/tools/index.js +25 -0
  497. package/dist/tools/index.js.map +1 -1
  498. package/dist/upgrade.d.ts.map +1 -1
  499. package/dist/upgrade.js +22 -13
  500. package/dist/upgrade.js.map +1 -1
  501. package/dist/workgraph/containment.js +18 -18
  502. package/dist/workgraph/relations.js +2 -2
  503. package/dist/worktree/list.d.ts +1 -1
  504. package/dist/worktree/list.d.ts.map +1 -1
  505. package/dist/worktree/list.js +19 -21
  506. package/dist/worktree/list.js.map +1 -1
  507. package/dist/worktree-export.d.ts +18 -0
  508. package/dist/worktree-export.d.ts.map +1 -0
  509. package/dist/worktree-export.js +18 -0
  510. package/dist/worktree-export.js.map +1 -0
  511. package/migrations/drizzle-agent-registry/20260412000000_initial-global-agent-registry/migration.sql +29 -0
  512. package/migrations/drizzle-brain/20260601000001_t11522-brain-task-observations/migration.sql +28 -0
  513. package/migrations/drizzle-brain/20260601000002_t11522-inline-only-brain-tables/migration.sql +75 -0
  514. package/migrations/drizzle-cleo-global/20260531000001_t11363-consolidation-cleo-global/migration.sql +49 -144
  515. package/migrations/drizzle-cleo-global/20260531000001_t11363-consolidation-cleo-global/snapshot.json +8 -8
  516. package/migrations/drizzle-cleo-global/20260531000002_t11546-brain-usage-log/migration.sql +16 -0
  517. package/migrations/drizzle-cleo-global/20260601000001_t11544-skills-usage-project-id/migration.sql +12 -0
  518. package/migrations/drizzle-cleo-global/20260602000001_t11622-agent-registry-rename/migration.sql +80 -0
  519. package/migrations/drizzle-cleo-project/20260531000001_t11363-consolidation-cleo-project/migration.sql +26 -167
  520. package/migrations/drizzle-cleo-project/20260531000001_t11363-consolidation-cleo-project/snapshot.json +8 -8
  521. package/migrations/drizzle-cleo-project/20260531000002_t11546-brain-usage-log/migration.sql +21 -0
  522. package/migrations/drizzle-cleo-project/20260601000001_t11549-agent-credentials-brain-release-links/migration.sql +49 -0
  523. package/migrations/drizzle-cleo-project/20260601000002_t11538-project-nexus-graph/migration.sql +140 -0
  524. package/migrations/drizzle-cleo-project/20260602000002_t11649-token-usage-transport-mcp/migration.sql +146 -0
  525. package/migrations/drizzle-conduit/20260601000003_t11523-conduit-inline-schema/migration.sql +82 -0
  526. package/migrations/drizzle-nexus/20260421200001_t1165-baseline-reset/migration.sql +26 -8
  527. package/migrations/drizzle-nexus/20260601000001_t11545-nexus-relation-weights-partition/migration.sql +97 -0
  528. package/package.json +43 -11
  529. package/scripts/install-supervisor-binary.mjs +50 -201
  530. package/scripts/napi-binary-picker.mjs +267 -0
  531. package/dist/agents/agent-registry.d.ts.map +0 -1
  532. package/dist/agents/agent-registry.js.map +0 -1
  533. package/dist/store/data-safety.d.ts +0 -92
  534. package/dist/store/data-safety.d.ts.map +0 -1
  535. package/dist/store/data-safety.js +0 -274
  536. package/dist/store/data-safety.js.map +0 -1
  537. package/dist/store/schema/cleo-global/signaldock.d.ts.map +0 -1
  538. package/dist/store/schema/cleo-global/signaldock.js.map +0 -1
  539. package/dist/store/schema/cleo-project/telemetry.d.ts.map +0 -1
  540. package/dist/store/schema/cleo-project/telemetry.js.map +0 -1
  541. package/dist/store/schema/signaldock-schema.d.ts.map +0 -1
  542. package/dist/store/schema/signaldock-schema.js.map +0 -1
  543. package/dist/store/signaldock-sqlite.d.ts +0 -173
  544. package/dist/store/signaldock-sqlite.d.ts.map +0 -1
  545. package/dist/store/signaldock-sqlite.js +0 -445
  546. package/dist/store/signaldock-sqlite.js.map +0 -1
  547. package/migrations/drizzle-nexus/20260318205558_initial/migration.sql +0 -46
  548. package/migrations/drizzle-nexus/20260412000001_t529-nexus-graph-tables/migration.sql +0 -49
  549. package/migrations/drizzle-nexus/20260415000001_t622-project-registry-paths/migration.sql +0 -12
  550. package/migrations/drizzle-nexus/20260419000001_t998-nexus-plasticity/migration.sql +0 -13
  551. package/migrations/drizzle-nexus/20260423052640_t1077-add-user-profile-table/migration.sql +0 -16
  552. package/migrations/drizzle-nexus/20260423052640_t1077-add-user-profile-table/snapshot.json +0 -1531
  553. package/migrations/drizzle-nexus/20260424140538_t1148-add-sigils-table/migration.sql +0 -13
  554. package/migrations/drizzle-nexus/20260424140538_t1148-add-sigils-table/snapshot.json +0 -1652
  555. package/migrations/drizzle-nexus/20260504000001_t1839-fts5-nexus-symbols/migration.sql +0 -68
  556. package/migrations/drizzle-nexus/20260507135519_t9163-nexus-is-external/migration.sql +0 -20
  557. package/migrations/drizzle-nexus/20260507135519_t9163-nexus-is-external/snapshot.json +0 -1652
  558. package/migrations/drizzle-nexus/20260526222449_t11025-project-id-aliases/migration.sql +0 -16
  559. package/migrations/drizzle-signaldock/20260412000000_initial-global-signaldock/migration.sql +0 -209
  560. package/migrations/drizzle-signaldock/20260412000000_initial-global-signaldock/snapshot.json +0 -2060
@@ -0,0 +1,75 @@
1
+ -- T11522 (E6-L2): Forward Drizzle migrations for the three brain tables that had
2
+ -- NO drizzle-brain migration and were created ONLY by post-hoc
3
+ -- `CREATE TABLE IF NOT EXISTS` band-aids in memory-sqlite.ts::runBrainMigrations.
4
+ --
5
+ -- E6-L2 removes those inline band-aids and replaces them with this forward
6
+ -- migration (T11522 AC: post-hoc DDL → forward Drizzle migration), matching the
7
+ -- T9179 precedent. The schemas reproduce the removed inline DDL EXACTLY (legacy
8
+ -- runtime shape) so the brain runtime writers continue to work unchanged:
9
+ --
10
+ -- 1. brain_transcript_events (T1002) — full-fidelity Claude session block store.
11
+ -- 2. brain_promotion_log (T1001/T1903) — typed promotion audit trail (includes
12
+ -- the T1903 fulfilled_at / fulfillment_note columns folded into the CREATE).
13
+ -- 3. brain_backfill_runs (T1003) — staged backfill audit log.
14
+ --
15
+ -- All statements are IF NOT EXISTS so re-running on a DB that already has the
16
+ -- tables is idempotent and safe.
17
+ CREATE TABLE IF NOT EXISTS `brain_transcript_events` (
18
+ `id` text PRIMARY KEY,
19
+ `session_id` text NOT NULL,
20
+ `seq` integer NOT NULL,
21
+ `role` text NOT NULL,
22
+ `block_type` text NOT NULL,
23
+ `content` text NOT NULL,
24
+ `tokens` integer,
25
+ `redacted_at` text,
26
+ `created_at` text DEFAULT (datetime('now')) NOT NULL
27
+ );
28
+ --> statement-breakpoint
29
+ CREATE UNIQUE INDEX IF NOT EXISTS `idx_transcript_events_session_seq` ON `brain_transcript_events` (`session_id`, `seq`);
30
+ --> statement-breakpoint
31
+ CREATE INDEX IF NOT EXISTS `idx_transcript_events_session` ON `brain_transcript_events` (`session_id`);
32
+ --> statement-breakpoint
33
+ CREATE INDEX IF NOT EXISTS `idx_transcript_events_role` ON `brain_transcript_events` (`role`);
34
+ --> statement-breakpoint
35
+ CREATE INDEX IF NOT EXISTS `idx_transcript_events_block_type` ON `brain_transcript_events` (`block_type`);
36
+ --> statement-breakpoint
37
+ CREATE TABLE IF NOT EXISTS `brain_promotion_log` (
38
+ `id` text PRIMARY KEY,
39
+ `observation_id` text NOT NULL,
40
+ `from_tier` text NOT NULL,
41
+ `to_tier` text NOT NULL,
42
+ `score` real NOT NULL,
43
+ `decided_at` text DEFAULT (datetime('now')) NOT NULL,
44
+ `decided_by` text DEFAULT 'composite-scorer' NOT NULL,
45
+ `rationale_json` text,
46
+ `fulfilled_at` text,
47
+ `fulfillment_note` text
48
+ );
49
+ --> statement-breakpoint
50
+ CREATE INDEX IF NOT EXISTS `idx_promotion_log_observation` ON `brain_promotion_log` (`observation_id`);
51
+ --> statement-breakpoint
52
+ CREATE INDEX IF NOT EXISTS `idx_promotion_log_decided_at` ON `brain_promotion_log` (`decided_at`);
53
+ --> statement-breakpoint
54
+ CREATE INDEX IF NOT EXISTS `idx_promotion_log_to_tier` ON `brain_promotion_log` (`to_tier`);
55
+ --> statement-breakpoint
56
+ CREATE INDEX IF NOT EXISTS `idx_promotion_log_score` ON `brain_promotion_log` (`score`);
57
+ --> statement-breakpoint
58
+ CREATE TABLE IF NOT EXISTS `brain_backfill_runs` (
59
+ `id` text PRIMARY KEY,
60
+ `kind` text NOT NULL,
61
+ `status` text DEFAULT 'staged' NOT NULL,
62
+ `created_at` text DEFAULT (datetime('now')) NOT NULL,
63
+ `approved_at` text,
64
+ `rows_affected` integer DEFAULT 0 NOT NULL,
65
+ `rollback_snapshot_json` text,
66
+ `source` text DEFAULT 'unknown' NOT NULL,
67
+ `target_table` text DEFAULT 'brain_observations' NOT NULL,
68
+ `approved_by` text
69
+ );
70
+ --> statement-breakpoint
71
+ CREATE INDEX IF NOT EXISTS `idx_backfill_runs_status` ON `brain_backfill_runs` (`status`);
72
+ --> statement-breakpoint
73
+ CREATE INDEX IF NOT EXISTS `idx_backfill_runs_kind` ON `brain_backfill_runs` (`kind`);
74
+ --> statement-breakpoint
75
+ CREATE INDEX IF NOT EXISTS `idx_backfill_runs_created_at` ON `brain_backfill_runs` (`created_at`);
@@ -6,15 +6,10 @@ CREATE TABLE `brain_attention` (
6
6
  `scope_kind` text NOT NULL,
7
7
  `scope_id` text NOT NULL,
8
8
  `tags` blob DEFAULT (jsonb('[]')),
9
- `created_at` text DEFAULT (datetime('now')) NOT NULL,
10
- `expires_at` text,
9
+ `created_at` integer DEFAULT (unixepoch() * 1000) NOT NULL,
10
+ `expires_at` integer,
11
11
  `decay_score` real,
12
- `status` text DEFAULT 'open' NOT NULL,
13
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
14
- CHECK ("scope_kind" IN ('agent', 'task', 'epic', 'saga', 'session', 'global')),
15
- CHECK ("created_at" IS NULL OR "created_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
16
- CHECK ("expires_at" IS NULL OR "expires_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
17
- CHECK ("status" IN ('open', 'consolidated', 'discarded'))
12
+ `status` text DEFAULT 'open' NOT NULL
18
13
  );
19
14
  --> statement-breakpoint
20
15
  CREATE TABLE `brain_backfill_runs` (
@@ -27,12 +22,7 @@ CREATE TABLE `brain_backfill_runs` (
27
22
  `rollback_snapshot_json` text,
28
23
  `source` text DEFAULT 'unknown' NOT NULL,
29
24
  `target_table` text DEFAULT 'brain_observations' NOT NULL,
30
- `approved_by` text,
31
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
32
- CHECK ("kind" IN ('observation-promotion', 'transcript-ingest', 'graph-backfill', 'noise-sweep-2440', 'custom')),
33
- CHECK ("status" IN ('staged', 'approved', 'rolled-back')),
34
- CHECK ("created_at" IS NULL OR "created_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
35
- CHECK ("approved_at" IS NULL OR "approved_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*')
25
+ `approved_by` text
36
26
  );
37
27
  --> statement-breakpoint
38
28
  CREATE TABLE `brain_consolidation_events` (
@@ -42,10 +32,7 @@ CREATE TABLE `brain_consolidation_events` (
42
32
  `step_results_json` text NOT NULL,
43
33
  `duration_ms` integer,
44
34
  `succeeded` integer DEFAULT true NOT NULL,
45
- `started_at` text DEFAULT (datetime('now')) NOT NULL,
46
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
47
- CHECK ("succeeded" IN (0, 1)),
48
- CHECK ("started_at" IS NULL OR "started_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*')
35
+ `started_at` text DEFAULT (datetime('now')) NOT NULL
49
36
  );
50
37
  --> statement-breakpoint
51
38
  CREATE TABLE `brain_decisions` (
@@ -81,27 +68,10 @@ CREATE TABLE `brain_decisions` (
81
68
  `superseded_by` text,
82
69
  `confirmation_state` text DEFAULT 'proposed' NOT NULL,
83
70
  `decided_by` text DEFAULT 'agent' NOT NULL,
84
- `validator_run_at` text,
71
+ `validator_run_at` integer,
85
72
  `decision_category` text DEFAULT 'architectural' NOT NULL,
86
73
  CONSTRAINT `fk_brain_decisions_supersedes_brain_decisions_id_fk` FOREIGN KEY (`supersedes`) REFERENCES `brain_decisions`(`id`),
87
- CONSTRAINT `fk_brain_decisions_superseded_by_brain_decisions_id_fk` FOREIGN KEY (`superseded_by`) REFERENCES `brain_decisions`(`id`),
88
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
89
- CHECK ("type" IN ('architecture', 'technical', 'process', 'strategic', 'tactical')),
90
- CHECK ("confidence" IN ('low', 'medium', 'high')),
91
- CHECK ("outcome" IN ('success', 'failure', 'mixed', 'pending')),
92
- CHECK ("created_at" IS NULL OR "created_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
93
- CHECK ("updated_at" IS NULL OR "updated_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
94
- CHECK ("memory_tier" IN ('short', 'medium', 'long')),
95
- CHECK ("memory_type" IN ('semantic', 'episodic', 'procedural')),
96
- CHECK ("verified" IN (0, 1)),
97
- CHECK ("valid_at" IS NULL OR "valid_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
98
- CHECK ("invalid_at" IS NULL OR "invalid_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
99
- CHECK ("source_confidence" IN ('owner', 'task-outcome', 'agent', 'speculative')),
100
- CHECK ("tier_promoted_at" IS NULL OR "tier_promoted_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
101
- CHECK ("confirmation_state" IN ('proposed', 'accepted', 'superseded')),
102
- CHECK ("decided_by" IN ('owner', 'council', 'agent')),
103
- CHECK ("validator_run_at" IS NULL OR "validator_run_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
104
- CHECK ("decision_category" IN ('architectural', 'agent_dispatch', 'other'))
74
+ CONSTRAINT `fk_brain_decisions_superseded_by_brain_decisions_id_fk` FOREIGN KEY (`superseded_by`) REFERENCES `brain_decisions`(`id`)
105
75
  );
106
76
  --> statement-breakpoint
107
77
  CREATE TABLE `brain_deriver_queue` (
@@ -115,13 +85,7 @@ CREATE TABLE `brain_deriver_queue` (
115
85
  `error_msg` text,
116
86
  `retry_count` integer DEFAULT 0 NOT NULL,
117
87
  `created_at` text DEFAULT (datetime('now')) NOT NULL,
118
- `completed_at` text,
119
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
120
- CHECK ("item_type" IN ('observation', 'session', 'narrative', 'embedding')),
121
- CHECK ("status" IN ('pending', 'in_progress', 'done', 'failed')),
122
- CHECK ("claimed_at" IS NULL OR "claimed_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
123
- CHECK ("created_at" IS NULL OR "created_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
124
- CHECK ("completed_at" IS NULL OR "completed_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*')
88
+ `completed_at` text
125
89
  );
126
90
  --> statement-breakpoint
127
91
  CREATE TABLE `brain_learnings` (
@@ -147,18 +111,7 @@ CREATE TABLE `brain_learnings` (
147
111
  `content_hash` text,
148
112
  `provenance_class` text DEFAULT 'swept-clean',
149
113
  `peer_id` text DEFAULT 'global' NOT NULL,
150
- `peer_scope` text DEFAULT 'project' NOT NULL,
151
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
152
- CHECK ("actionable" IN (0, 1)),
153
- CHECK ("created_at" IS NULL OR "created_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
154
- CHECK ("updated_at" IS NULL OR "updated_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
155
- CHECK ("memory_tier" IN ('short', 'medium', 'long')),
156
- CHECK ("memory_type" IN ('semantic', 'episodic', 'procedural')),
157
- CHECK ("verified" IN (0, 1)),
158
- CHECK ("valid_at" IS NULL OR "valid_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
159
- CHECK ("invalid_at" IS NULL OR "invalid_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
160
- CHECK ("source_confidence" IN ('owner', 'task-outcome', 'agent', 'speculative')),
161
- CHECK ("tier_promoted_at" IS NULL OR "tier_promoted_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*')
114
+ `peer_scope` text DEFAULT 'project' NOT NULL
162
115
  );
163
116
  --> statement-breakpoint
164
117
  CREATE TABLE `brain_memory_links` (
@@ -167,11 +120,7 @@ CREATE TABLE `brain_memory_links` (
167
120
  `task_id` text NOT NULL,
168
121
  `link_type` text NOT NULL,
169
122
  `created_at` text DEFAULT (datetime('now')) NOT NULL,
170
- CONSTRAINT `brain_memory_links_pk` PRIMARY KEY(`memory_type`, `memory_id`, `task_id`, `link_type`),
171
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
172
- CHECK ("memory_type" IN ('decision', 'pattern', 'learning', 'observation')),
173
- CHECK ("link_type" IN ('produced_by', 'applies_to', 'informed_by', 'contradicts')),
174
- CHECK ("created_at" IS NULL OR "created_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*')
123
+ CONSTRAINT `brain_memory_links_pk` PRIMARY KEY(`memory_type`, `memory_id`, `task_id`, `link_type`)
175
124
  );
176
125
  --> statement-breakpoint
177
126
  CREATE TABLE `brain_memory_trees` (
@@ -181,10 +130,7 @@ CREATE TABLE `brain_memory_trees` (
181
130
  `centroid` text,
182
131
  `parent_id` integer,
183
132
  `created_at` text DEFAULT (datetime('now')) NOT NULL,
184
- `updated_at` text,
185
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
186
- CHECK ("created_at" IS NULL OR "created_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
187
- CHECK ("updated_at" IS NULL OR "updated_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*')
133
+ `updated_at` text
188
134
  );
189
135
  --> statement-breakpoint
190
136
  CREATE TABLE `brain_modulators` (
@@ -195,9 +141,7 @@ CREATE TABLE `brain_modulators` (
195
141
  `source_event_id` text,
196
142
  `session_id` text,
197
143
  `description` text,
198
- `created_at` text DEFAULT (datetime('now')) NOT NULL,
199
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
200
- CHECK ("created_at" IS NULL OR "created_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*')
144
+ `created_at` text DEFAULT (datetime('now')) NOT NULL
201
145
  );
202
146
  --> statement-breakpoint
203
147
  CREATE TABLE `brain_observations` (
@@ -240,20 +184,7 @@ CREATE TABLE `brain_observations` (
240
184
  `origin` text,
241
185
  `validated_at` text,
242
186
  `provenance_chain` text,
243
- `idempotency_key` text CONSTRAINT `uq_brain_observations_idempotency_key` UNIQUE,
244
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
245
- CHECK ("type" IN ('discovery', 'change', 'feature', 'bugfix', 'decision', 'refactor', 'diary', 'session-summary')),
246
- CHECK ("source_type" IN ('agent', 'session-debrief', 'claude-mem', 'manual')),
247
- CHECK ("created_at" IS NULL OR "created_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
248
- CHECK ("updated_at" IS NULL OR "updated_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
249
- CHECK ("memory_tier" IN ('short', 'medium', 'long')),
250
- CHECK ("memory_type" IN ('semantic', 'episodic', 'procedural')),
251
- CHECK ("verified" IN (0, 1)),
252
- CHECK ("valid_at" IS NULL OR "valid_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
253
- CHECK ("invalid_at" IS NULL OR "invalid_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
254
- CHECK ("source_confidence" IN ('owner', 'task-outcome', 'agent', 'speculative')),
255
- CHECK ("tier_promoted_at" IS NULL OR "tier_promoted_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
256
- CHECK ("validated_at" IS NULL OR "validated_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*')
187
+ `idempotency_key` text CONSTRAINT `uq_brain_observations_idempotency_key` UNIQUE
257
188
  );
258
189
  --> statement-breakpoint
259
190
  CREATE TABLE `brain_observations_staging` (
@@ -266,12 +197,7 @@ CREATE TABLE `brain_observations_staging` (
266
197
  `new_invalid_at` text,
267
198
  `new_provenance_class` text,
268
199
  `validation_status` text DEFAULT 'pending' NOT NULL,
269
- `created_at` text DEFAULT (datetime('now')) NOT NULL,
270
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
271
- CHECK ("action" IN ('purge', 'keep', 'reclassify', 'promote')),
272
- CHECK ("new_invalid_at" IS NULL OR "new_invalid_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
273
- CHECK ("validation_status" IN ('pending', 'applied', 'skipped')),
274
- CHECK ("created_at" IS NULL OR "created_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*')
200
+ `created_at` text DEFAULT (datetime('now')) NOT NULL
275
201
  );
276
202
  --> statement-breakpoint
277
203
  CREATE TABLE `brain_page_edges` (
@@ -287,13 +213,7 @@ CREATE TABLE `brain_page_edges` (
287
213
  `last_depressed_at` text,
288
214
  `depression_count` integer DEFAULT 0 NOT NULL,
289
215
  `stability_score` real,
290
- CONSTRAINT `brain_page_edges_pk` PRIMARY KEY(`from_id`, `to_id`, `edge_type`),
291
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
292
- CHECK ("edge_type" IN ('derived_from', 'produced_by', 'informed_by', 'supports', 'contradicts', 'supersedes', 'applies_to', 'documents', 'summarizes', 'part_of', 'references', 'modified_by', 'code_reference', 'affects', 'mentions', 'conduit_mentions_symbol', 'co_retrieved', 'blocks', 'discusses', 'cites', 'embeds', 'touches_code', 'task_touches_symbol')),
293
- CHECK ("created_at" IS NULL OR "created_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
294
- CHECK ("last_reinforced_at" IS NULL OR "last_reinforced_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
295
- CHECK ("plasticity_class" IN ('static', 'hebbian', 'stdp')),
296
- CHECK ("last_depressed_at" IS NULL OR "last_depressed_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*')
216
+ CONSTRAINT `brain_page_edges_pk` PRIMARY KEY(`from_id`, `to_id`, `edge_type`)
297
217
  );
298
218
  --> statement-breakpoint
299
219
  CREATE TABLE `brain_page_nodes` (
@@ -305,12 +225,7 @@ CREATE TABLE `brain_page_nodes` (
305
225
  `last_activity_at` text DEFAULT (datetime('now')) NOT NULL,
306
226
  `metadata_json` text,
307
227
  `created_at` text DEFAULT (datetime('now')) NOT NULL,
308
- `updated_at` text,
309
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
310
- CHECK ("node_type" IN ('decision', 'pattern', 'learning', 'observation', 'sticky', 'task', 'session', 'epic', 'file', 'symbol', 'concept', 'summary', 'msg', 'llmtxt', 'commit')),
311
- CHECK ("last_activity_at" IS NULL OR "last_activity_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
312
- CHECK ("created_at" IS NULL OR "created_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
313
- CHECK ("updated_at" IS NULL OR "updated_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*')
228
+ `updated_at` text
314
229
  );
315
230
  --> statement-breakpoint
316
231
  CREATE TABLE `brain_patterns` (
@@ -341,20 +256,7 @@ CREATE TABLE `brain_patterns` (
341
256
  `peer_id` text DEFAULT 'global' NOT NULL,
342
257
  `peer_scope` text DEFAULT 'project' NOT NULL,
343
258
  `occurrence_count` integer DEFAULT 1 NOT NULL,
344
- `last_seen_at` text,
345
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
346
- CHECK ("type" IN ('workflow', 'blocker', 'success', 'failure', 'optimization')),
347
- CHECK ("impact" IN ('low', 'medium', 'high')),
348
- CHECK ("extracted_at" IS NULL OR "extracted_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
349
- CHECK ("updated_at" IS NULL OR "updated_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
350
- CHECK ("memory_tier" IN ('short', 'medium', 'long')),
351
- CHECK ("memory_type" IN ('semantic', 'episodic', 'procedural')),
352
- CHECK ("verified" IN (0, 1)),
353
- CHECK ("valid_at" IS NULL OR "valid_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
354
- CHECK ("invalid_at" IS NULL OR "invalid_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
355
- CHECK ("source_confidence" IN ('owner', 'task-outcome', 'agent', 'speculative')),
356
- CHECK ("tier_promoted_at" IS NULL OR "tier_promoted_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
357
- CHECK ("last_seen_at" IS NULL OR "last_seen_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*')
259
+ `last_seen_at` text
358
260
  );
359
261
  --> statement-breakpoint
360
262
  CREATE TABLE `brain_plasticity_events` (
@@ -369,9 +271,7 @@ CREATE TABLE `brain_plasticity_events` (
369
271
  `weight_after` real,
370
272
  `retrieval_log_id` integer,
371
273
  `reward_signal` real,
372
- `delta_t_ms` integer,
373
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
374
- CHECK ("kind" IN ('ltp', 'ltd'))
274
+ `delta_t_ms` integer
375
275
  );
376
276
  --> statement-breakpoint
377
277
  CREATE TABLE `brain_promotion_log` (
@@ -382,9 +282,7 @@ CREATE TABLE `brain_promotion_log` (
382
282
  `score` real NOT NULL,
383
283
  `decided_at` text DEFAULT (datetime('now')) NOT NULL,
384
284
  `decided_by` text DEFAULT 'composite-scorer' NOT NULL,
385
- `rationale_json` text,
386
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
387
- CHECK ("decided_at" IS NULL OR "decided_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*')
285
+ `rationale_json` text
388
286
  );
389
287
  --> statement-breakpoint
390
288
  CREATE TABLE `brain_retrieval_log` (
@@ -398,9 +296,7 @@ CREATE TABLE `brain_retrieval_log` (
398
296
  `created_at` text DEFAULT (datetime('now')) NOT NULL,
399
297
  `retrieval_order` integer,
400
298
  `delta_ms` integer,
401
- `reward_signal` real,
402
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
403
- CHECK ("created_at" IS NULL OR "created_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*')
299
+ `reward_signal` real
404
300
  );
405
301
  --> statement-breakpoint
406
302
  CREATE TABLE `brain_schema_meta` (
@@ -412,10 +308,8 @@ CREATE TABLE `brain_session_narrative` (
412
308
  `session_id` text PRIMARY KEY,
413
309
  `narrative` text DEFAULT '' NOT NULL,
414
310
  `turn_count` integer DEFAULT 0 NOT NULL,
415
- `last_updated_at` text,
416
- `pivot_count` integer DEFAULT 0 NOT NULL,
417
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
418
- CHECK ("last_updated_at" IS NULL OR "last_updated_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*')
311
+ `last_updated_at` integer DEFAULT 0 NOT NULL,
312
+ `pivot_count` integer DEFAULT 0 NOT NULL
419
313
  );
420
314
  --> statement-breakpoint
421
315
  CREATE TABLE `brain_sticky_notes` (
@@ -428,13 +322,7 @@ CREATE TABLE `brain_sticky_notes` (
428
322
  `converted_to_json` text,
429
323
  `color` text,
430
324
  `priority` text,
431
- `source_type` text DEFAULT 'sticky-note',
432
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
433
- CHECK ("created_at" IS NULL OR "created_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
434
- CHECK ("updated_at" IS NULL OR "updated_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
435
- CHECK ("status" IN ('active', 'converted', 'archived')),
436
- CHECK ("color" IN ('yellow', 'blue', 'green', 'red', 'purple')),
437
- CHECK ("priority" IN ('low', 'medium', 'high'))
325
+ `source_type` text DEFAULT 'sticky-note'
438
326
  );
439
327
  --> statement-breakpoint
440
328
  CREATE TABLE `brain_sticky_tags` (
@@ -453,11 +341,7 @@ CREATE TABLE `brain_transcript_events` (
453
341
  `content` text NOT NULL,
454
342
  `tokens` integer,
455
343
  `redacted_at` text,
456
- `created_at` text DEFAULT (datetime('now')) NOT NULL,
457
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
458
- CHECK ("role" IN ('user', 'assistant', 'system')),
459
- CHECK ("redacted_at" IS NULL OR "redacted_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*'),
460
- CHECK ("created_at" IS NULL OR "created_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*')
344
+ `created_at` text DEFAULT (datetime('now')) NOT NULL
461
345
  );
462
346
  --> statement-breakpoint
463
347
  CREATE TABLE `brain_weight_history` (
@@ -472,9 +356,7 @@ CREATE TABLE `brain_weight_history` (
472
356
  `source_plasticity_event_id` integer,
473
357
  `retrieval_log_id` integer,
474
358
  `reward_signal` real,
475
- `changed_at` text DEFAULT (datetime('now')) NOT NULL,
476
- -- consolidation CHECK constraints (T11363) — derived from schema enum/boolean/timestamp metadata, never hand-typed
477
- CHECK ("changed_at" IS NULL OR "changed_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*')
359
+ `changed_at` text DEFAULT (datetime('now')) NOT NULL
478
360
  );
479
361
  --> statement-breakpoint
480
362
  CREATE TABLE `nexus_audit_log` (
@@ -939,6 +821,24 @@ CREATE TABLE `skills_skills` (
939
821
  CHECK ("archived_at" IS NULL OR "archived_at" GLOB '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]*')
940
822
  );
941
823
  --> statement-breakpoint
824
+ CREATE TABLE `telemetry_events` (
825
+ `id` text PRIMARY KEY,
826
+ `anonymous_id` text NOT NULL,
827
+ `domain` text NOT NULL,
828
+ `gateway` text NOT NULL,
829
+ `operation` text NOT NULL,
830
+ `command` text NOT NULL,
831
+ `exit_code` integer DEFAULT 0 NOT NULL,
832
+ `duration_ms` integer NOT NULL,
833
+ `error_code` text,
834
+ `timestamp` text DEFAULT (datetime('now')) NOT NULL
835
+ );
836
+ --> statement-breakpoint
837
+ CREATE TABLE `telemetry_schema_meta` (
838
+ `key` text PRIMARY KEY,
839
+ `value` text NOT NULL
840
+ );
841
+ --> statement-breakpoint
942
842
  CREATE INDEX `idx_brain_attention_scope` ON `brain_attention` (`scope_kind`,`scope_id`);--> statement-breakpoint
943
843
  CREATE INDEX `idx_brain_attention_session` ON `brain_attention` (`session_id`);--> statement-breakpoint
944
844
  CREATE INDEX `idx_brain_attention_status_expires` ON `brain_attention` (`status`,`expires_at`);--> statement-breakpoint
@@ -1142,4 +1042,9 @@ CREATE INDEX `idx_skills_skill_reviews_outcome` ON `skills_skill_reviews` (`outc
1142
1042
  CREATE INDEX `idx_skills_skill_usage_name_observed` ON `skills_skill_usage` (`skill_name`,`observed_at`);--> statement-breakpoint
1143
1043
  CREATE INDEX `idx_skills_skill_usage_kind` ON `skills_skill_usage` (`event_kind`);--> statement-breakpoint
1144
1044
  CREATE INDEX `idx_skills_skills_state` ON `skills_skills` (`lifecycle_state`);--> statement-breakpoint
1145
- CREATE INDEX `idx_skills_skills_source` ON `skills_skills` (`source_type`);
1045
+ CREATE INDEX `idx_skills_skills_source` ON `skills_skills` (`source_type`);--> statement-breakpoint
1046
+ CREATE INDEX `idx_telemetry_command` ON `telemetry_events` (`command`);--> statement-breakpoint
1047
+ CREATE INDEX `idx_telemetry_domain` ON `telemetry_events` (`domain`);--> statement-breakpoint
1048
+ CREATE INDEX `idx_telemetry_exit_code` ON `telemetry_events` (`exit_code`);--> statement-breakpoint
1049
+ CREATE INDEX `idx_telemetry_timestamp` ON `telemetry_events` (`timestamp`);--> statement-breakpoint
1050
+ CREATE INDEX `idx_telemetry_duration` ON `telemetry_events` (`duration_ms`);
@@ -277,17 +277,17 @@
277
277
  "table": "brain_attention"
278
278
  },
279
279
  {
280
- "type": "text",
280
+ "type": "integer",
281
281
  "notNull": true,
282
282
  "autoincrement": false,
283
- "default": "(datetime('now'))",
283
+ "default": "(unixepoch() * 1000)",
284
284
  "generated": null,
285
285
  "name": "created_at",
286
286
  "entityType": "columns",
287
287
  "table": "brain_attention"
288
288
  },
289
289
  {
290
- "type": "text",
290
+ "type": "integer",
291
291
  "notNull": false,
292
292
  "autoincrement": false,
293
293
  "default": null,
@@ -807,7 +807,7 @@
807
807
  "table": "brain_decisions"
808
808
  },
809
809
  {
810
- "type": "text",
810
+ "type": "integer",
811
811
  "notNull": false,
812
812
  "autoincrement": false,
813
813
  "default": null,
@@ -2717,10 +2717,10 @@
2717
2717
  "table": "brain_session_narrative"
2718
2718
  },
2719
2719
  {
2720
- "type": "text",
2721
- "notNull": false,
2720
+ "type": "integer",
2721
+ "notNull": true,
2722
2722
  "autoincrement": false,
2723
- "default": null,
2723
+ "default": 0,
2724
2724
  "generated": null,
2725
2725
  "name": "last_updated_at",
2726
2726
  "entityType": "columns",
@@ -9584,4 +9584,4 @@
9584
9584
  }
9585
9585
  ],
9586
9586
  "renames": []
9587
- }
9587
+ }
@@ -0,0 +1,16 @@
1
+ -- T11546: Add brain_usage_log table to consolidated cleo-global schema.
2
+ --
3
+ -- brain_usage_log is mirrored across both project and global scopes (it is a
4
+ -- brain-domain table). See drizzle-cleo-project version for full rationale.
5
+ CREATE TABLE IF NOT EXISTS `brain_usage_log` (
6
+ `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,
7
+ `entry_id` text NOT NULL,
8
+ `task_id` text,
9
+ `used` integer DEFAULT 0 NOT NULL,
10
+ `outcome` text DEFAULT 'unknown' NOT NULL,
11
+ `created_at` text DEFAULT (datetime('now')) NOT NULL
12
+ );
13
+ --> statement-breakpoint
14
+ CREATE INDEX IF NOT EXISTS `idx_brain_usage_log_entry_id` ON `brain_usage_log` (`entry_id`);
15
+ --> statement-breakpoint
16
+ CREATE INDEX IF NOT EXISTS `idx_brain_usage_log_task_id` ON `brain_usage_log` (`task_id`);
@@ -0,0 +1,12 @@
1
+ -- T11544: Add nullable `project_id` to `skills_skill_usage` (consolidated
2
+ -- GLOBAL cleo.db, drizzle-cleo-global scope).
3
+ --
4
+ -- Cross-project skill-usage attribution: the active ProjectContext's canonical
5
+ -- project_id is stamped onto each telemetry row so analytics can group skill
6
+ -- usage by project. Nullable so existing rows and project-less global usage
7
+ -- (skill loaded outside any resolvable CLEO repo) stay valid.
8
+ --
9
+ -- No CHECK constraint: `project_id` is a plain free-text soft FK (not a
10
+ -- timestamp `_at`, boolean, or enum), so the T11363 consolidation-check
11
+ -- injector contributes nothing for it.
12
+ ALTER TABLE `skills_skill_usage` ADD COLUMN `project_id` text;
@@ -0,0 +1,80 @@
1
+ -- T11622 (SG-AGENT-IDENTITY E4): Signaldock → Agent Registry physical rename.
2
+ --
3
+ -- The frozen consolidation migration (20260531000001_t11363-consolidation-cleo-global)
4
+ -- has SHIPPED and hard-codes the `signaldock_*` table + index names; it MUST NOT be
5
+ -- regenerated. This forward migration renames those 13 tables (+ their 21 standalone
6
+ -- indexes) to the `agent_registry_*` prefix that the renamed schema module
7
+ -- (`schema/cleo-global/agent-registry.ts`) now declares.
8
+ --
9
+ -- O(1) metadata-only rename in SQLite (zero row copy). Runs exactly once, in lexical
10
+ -- order AFTER the consolidation migration created `signaldock_*` — so on BOTH a fresh
11
+ -- install (consolidation just created `signaldock_*`) and an existing dev/test
12
+ -- `cleo.db` already holding `signaldock_*`, the source tables are present when this
13
+ -- runs. The journal then prevents re-runs.
14
+ --
15
+ -- Indexes do not auto-rename on ALTER TABLE … RENAME, so each standalone index is
16
+ -- dropped and recreated under the `idx_agent_registry_*` name on the renamed table.
17
+ -- UNIQUE/PK/FK constraints are carried by the table rename automatically.
18
+ --
19
+ -- The legacy per-source ledgers `_signaldock_meta` / `_signaldock_migrations` are NOT
20
+ -- touched here — they belong to the legacy bare-shape store path and are matched by
21
+ -- the exodus INTERNAL_LEDGER_PATTERN regex regardless of prefix.
22
+ --
23
+ -- @task T11622
24
+ -- @saga T11586 (SG-AGENT-IDENTITY)
25
+ -- @epic T11245 (SG-DB-SUBSTRATE-V2 consolidated global schema)
26
+ ALTER TABLE `signaldock_users` RENAME TO `agent_registry_users`;--> statement-breakpoint
27
+ ALTER TABLE `signaldock_organization` RENAME TO `agent_registry_organization`;--> statement-breakpoint
28
+ ALTER TABLE `signaldock_agents` RENAME TO `agent_registry_agents`;--> statement-breakpoint
29
+ ALTER TABLE `signaldock_claim_codes` RENAME TO `agent_registry_claim_codes`;--> statement-breakpoint
30
+ ALTER TABLE `signaldock_capabilities` RENAME TO `agent_registry_capabilities`;--> statement-breakpoint
31
+ ALTER TABLE `signaldock_skills` RENAME TO `agent_registry_skills`;--> statement-breakpoint
32
+ ALTER TABLE `signaldock_agent_capabilities` RENAME TO `agent_registry_agent_capabilities`;--> statement-breakpoint
33
+ ALTER TABLE `signaldock_agent_skills` RENAME TO `agent_registry_agent_skills`;--> statement-breakpoint
34
+ ALTER TABLE `signaldock_agent_connections` RENAME TO `agent_registry_agent_connections`;--> statement-breakpoint
35
+ ALTER TABLE `signaldock_accounts` RENAME TO `agent_registry_accounts`;--> statement-breakpoint
36
+ ALTER TABLE `signaldock_sessions` RENAME TO `agent_registry_sessions`;--> statement-breakpoint
37
+ ALTER TABLE `signaldock_verifications` RENAME TO `agent_registry_verifications`;--> statement-breakpoint
38
+ ALTER TABLE `signaldock_org_agent_keys` RENAME TO `agent_registry_org_agent_keys`;--> statement-breakpoint
39
+ DROP INDEX `idx_signaldock_accounts_user_id`;--> statement-breakpoint
40
+ DROP INDEX `idx_signaldock_agent_connections_agent`;--> statement-breakpoint
41
+ DROP INDEX `idx_signaldock_agent_connections_transport`;--> statement-breakpoint
42
+ DROP INDEX `idx_signaldock_agent_connections_heartbeat`;--> statement-breakpoint
43
+ DROP INDEX `idx_signaldock_agent_skills_source`;--> statement-breakpoint
44
+ DROP INDEX `idx_signaldock_agents_owner`;--> statement-breakpoint
45
+ DROP INDEX `idx_signaldock_agents_class`;--> statement-breakpoint
46
+ DROP INDEX `idx_signaldock_agents_privacy`;--> statement-breakpoint
47
+ DROP INDEX `idx_signaldock_agents_org`;--> statement-breakpoint
48
+ DROP INDEX `idx_signaldock_agents_transport_type`;--> statement-breakpoint
49
+ DROP INDEX `idx_signaldock_agents_is_active`;--> statement-breakpoint
50
+ DROP INDEX `idx_signaldock_agents_last_used`;--> statement-breakpoint
51
+ DROP INDEX `idx_signaldock_agents_tier`;--> statement-breakpoint
52
+ DROP INDEX `idx_signaldock_agents_cant_path`;--> statement-breakpoint
53
+ DROP INDEX `idx_signaldock_claim_codes_agent`;--> statement-breakpoint
54
+ DROP INDEX `idx_signaldock_org_agent_keys_org`;--> statement-breakpoint
55
+ DROP INDEX `idx_signaldock_org_agent_keys_agent`;--> statement-breakpoint
56
+ DROP INDEX `idx_signaldock_organization_slug`;--> statement-breakpoint
57
+ DROP INDEX `idx_signaldock_sessions_user_id`;--> statement-breakpoint
58
+ DROP INDEX `idx_signaldock_users_slug`;--> statement-breakpoint
59
+ DROP INDEX `idx_signaldock_verifications_identifier`;--> statement-breakpoint
60
+ CREATE INDEX `idx_agent_registry_accounts_user_id` ON `agent_registry_accounts` (`user_id`);--> statement-breakpoint
61
+ CREATE INDEX `idx_agent_registry_agent_connections_agent` ON `agent_registry_agent_connections` (`agent_id`);--> statement-breakpoint
62
+ CREATE INDEX `idx_agent_registry_agent_connections_transport` ON `agent_registry_agent_connections` (`transport_type`);--> statement-breakpoint
63
+ CREATE INDEX `idx_agent_registry_agent_connections_heartbeat` ON `agent_registry_agent_connections` (`last_heartbeat`);--> statement-breakpoint
64
+ CREATE INDEX `idx_agent_registry_agent_skills_source` ON `agent_registry_agent_skills` (`source`);--> statement-breakpoint
65
+ CREATE INDEX `idx_agent_registry_agents_owner` ON `agent_registry_agents` (`owner_id`);--> statement-breakpoint
66
+ CREATE INDEX `idx_agent_registry_agents_class` ON `agent_registry_agents` (`class`);--> statement-breakpoint
67
+ CREATE INDEX `idx_agent_registry_agents_privacy` ON `agent_registry_agents` (`privacy_tier`);--> statement-breakpoint
68
+ CREATE INDEX `idx_agent_registry_agents_org` ON `agent_registry_agents` (`organization_id`);--> statement-breakpoint
69
+ CREATE INDEX `idx_agent_registry_agents_transport_type` ON `agent_registry_agents` (`transport_type`);--> statement-breakpoint
70
+ CREATE INDEX `idx_agent_registry_agents_is_active` ON `agent_registry_agents` (`is_active`);--> statement-breakpoint
71
+ CREATE INDEX `idx_agent_registry_agents_last_used` ON `agent_registry_agents` (`last_used_at`);--> statement-breakpoint
72
+ CREATE INDEX `idx_agent_registry_agents_tier` ON `agent_registry_agents` (`tier`);--> statement-breakpoint
73
+ CREATE INDEX `idx_agent_registry_agents_cant_path` ON `agent_registry_agents` (`cant_path`);--> statement-breakpoint
74
+ CREATE INDEX `idx_agent_registry_claim_codes_agent` ON `agent_registry_claim_codes` (`agent_id`);--> statement-breakpoint
75
+ CREATE INDEX `idx_agent_registry_org_agent_keys_org` ON `agent_registry_org_agent_keys` (`organization_id`);--> statement-breakpoint
76
+ CREATE INDEX `idx_agent_registry_org_agent_keys_agent` ON `agent_registry_org_agent_keys` (`agent_id`);--> statement-breakpoint
77
+ CREATE INDEX `idx_agent_registry_organization_slug` ON `agent_registry_organization` (`slug`);--> statement-breakpoint
78
+ CREATE INDEX `idx_agent_registry_sessions_user_id` ON `agent_registry_sessions` (`user_id`);--> statement-breakpoint
79
+ CREATE INDEX `idx_agent_registry_users_slug` ON `agent_registry_users` (`slug`);--> statement-breakpoint
80
+ CREATE INDEX `idx_agent_registry_verifications_identifier` ON `agent_registry_verifications` (`identifier`);