@cleocode/core 2026.7.2 → 2026.8.2

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 (297) hide show
  1. package/dist/bootstrap.d.ts.map +1 -1
  2. package/dist/bootstrap.js +57 -27
  3. package/dist/bootstrap.js.map +1 -1
  4. package/dist/conduit/local-transport.d.ts +3 -6
  5. package/dist/conduit/local-transport.d.ts.map +1 -1
  6. package/dist/conduit/local-transport.js +6 -7
  7. package/dist/conduit/local-transport.js.map +1 -1
  8. package/dist/db/index.d.ts +28 -1
  9. package/dist/db/index.d.ts.map +1 -1
  10. package/dist/db/index.js +28 -1
  11. package/dist/db/index.js.map +1 -1
  12. package/dist/docs/display-alias.js +1 -1
  13. package/dist/docs/display-alias.js.map +1 -1
  14. package/dist/docs/export-document.js +16292 -22315
  15. package/dist/docs/export-document.js.map +3 -3
  16. package/dist/docs/numbering.js +1 -1
  17. package/dist/docs/numbering.js.map +1 -1
  18. package/dist/docs/supersede.js +1 -1
  19. package/dist/docs/supersede.js.map +1 -1
  20. package/dist/goal/store.d.ts.map +1 -1
  21. package/dist/goal/store.js.map +1 -1
  22. package/dist/hooks/payload-schemas.d.ts +9 -9
  23. package/dist/injection.d.ts.map +1 -1
  24. package/dist/injection.js +44 -3
  25. package/dist/injection.js.map +1 -1
  26. package/dist/lifecycle/index.js +1 -1
  27. package/dist/lifecycle/index.js.map +1 -1
  28. package/dist/llm/pi/pi-session-storage.d.ts.map +1 -1
  29. package/dist/llm/pi/pi-session-storage.js +6 -1
  30. package/dist/llm/pi/pi-session-storage.js.map +1 -1
  31. package/dist/llm/plugin-facade.js +5726 -16641
  32. package/dist/llm/plugin-facade.js.map +3 -3
  33. package/dist/memory/brain-backfill.js +3 -3
  34. package/dist/memory/brain-backfill.js.map +1 -1
  35. package/dist/memory/brain-consolidator.js +2 -2
  36. package/dist/memory/brain-consolidator.js.map +1 -1
  37. package/dist/memory/brain-doctor.js +1 -1
  38. package/dist/memory/brain-doctor.js.map +1 -1
  39. package/dist/memory/brain-health-dashboard.js +1 -1
  40. package/dist/memory/brain-health-dashboard.js.map +1 -1
  41. package/dist/memory/brain-lifecycle.js +10 -10
  42. package/dist/memory/brain-lifecycle.js.map +1 -1
  43. package/dist/memory/brain-links.d.ts +26 -2
  44. package/dist/memory/brain-links.d.ts.map +1 -1
  45. package/dist/memory/brain-links.js +65 -19
  46. package/dist/memory/brain-links.js.map +1 -1
  47. package/dist/memory/brain-maintenance.js +1 -1
  48. package/dist/memory/brain-maintenance.js.map +1 -1
  49. package/dist/memory/brain-page-nodes.js +4 -4
  50. package/dist/memory/brain-page-nodes.js.map +1 -1
  51. package/dist/memory/brain-reasoning.js +1 -1
  52. package/dist/memory/brain-reasoning.js.map +1 -1
  53. package/dist/memory/brain-search.js +1 -1
  54. package/dist/memory/brain-search.js.map +1 -1
  55. package/dist/memory/brain-similarity.js +1 -1
  56. package/dist/memory/brain-similarity.js.map +1 -1
  57. package/dist/memory/brain-stdp.js +6 -6
  58. package/dist/memory/brain-stdp.js.map +1 -1
  59. package/dist/memory/brain-sweep-executor.js +1 -1
  60. package/dist/memory/brain-sweep-executor.js.map +1 -1
  61. package/dist/memory/brain-writer-handlers.js +2 -2
  62. package/dist/memory/brain-writer-handlers.js.map +1 -1
  63. package/dist/memory/brain-writer-thread.d.ts.map +1 -1
  64. package/dist/memory/brain-writer-thread.js +31 -40
  65. package/dist/memory/brain-writer-thread.js.map +1 -1
  66. package/dist/memory/claude-mem-migration.d.ts.map +1 -1
  67. package/dist/memory/claude-mem-migration.js +9 -3
  68. package/dist/memory/claude-mem-migration.js.map +1 -1
  69. package/dist/memory/dialectic-evaluator.d.ts +11 -6
  70. package/dist/memory/dialectic-evaluator.d.ts.map +1 -1
  71. package/dist/memory/dialectic-evaluator.js +8 -2
  72. package/dist/memory/dialectic-evaluator.js.map +1 -1
  73. package/dist/memory/engine-compat.js +4 -4
  74. package/dist/memory/engine-compat.js.map +1 -1
  75. package/dist/memory/extraction-gate.js +3 -3
  76. package/dist/memory/extraction-gate.js.map +1 -1
  77. package/dist/memory/graph-memory-bridge.d.ts.map +1 -1
  78. package/dist/memory/graph-memory-bridge.js +12 -10
  79. package/dist/memory/graph-memory-bridge.js.map +1 -1
  80. package/dist/memory/graph-queries.js +4 -4
  81. package/dist/memory/graph-queries.js.map +1 -1
  82. package/dist/memory/learnings.d.ts +8 -8
  83. package/dist/memory/llm-extraction.js +1 -1
  84. package/dist/memory/llm-extraction.js.map +1 -1
  85. package/dist/memory/memory-bridge.js +1 -1
  86. package/dist/memory/memory-bridge.js.map +1 -1
  87. package/dist/memory/nexus-plasticity.js +1 -1
  88. package/dist/memory/nexus-plasticity.js.map +1 -1
  89. package/dist/memory/observer-reflector.js +1 -1
  90. package/dist/memory/observer-reflector.js.map +1 -1
  91. package/dist/memory/patterns.d.ts +14 -14
  92. package/dist/memory/pipeline-manifest-sqlite.d.ts.map +1 -1
  93. package/dist/memory/pipeline-manifest-sqlite.js +13 -3
  94. package/dist/memory/pipeline-manifest-sqlite.js.map +1 -1
  95. package/dist/memory/quality-feedback.js +4 -4
  96. package/dist/memory/quality-feedback.js.map +1 -1
  97. package/dist/memory/retrieval/build-retrieval-bundle.d.ts +1 -1
  98. package/dist/memory/retrieval/build-retrieval-bundle.d.ts.map +1 -1
  99. package/dist/memory/retrieval/build-retrieval-bundle.js.map +1 -1
  100. package/dist/memory/retrieval/increment-citation-counts.js +1 -1
  101. package/dist/memory/retrieval/increment-citation-counts.js.map +1 -1
  102. package/dist/memory/retrieval/log-retrieval.js +1 -1
  103. package/dist/memory/retrieval/log-retrieval.js.map +1 -1
  104. package/dist/memory/retrieval/observe.d.ts.map +1 -1
  105. package/dist/memory/retrieval/observe.js +32 -17
  106. package/dist/memory/retrieval/observe.js.map +1 -1
  107. package/dist/memory/retrieval/search.js +1 -1
  108. package/dist/memory/retrieval/search.js.map +1 -1
  109. package/dist/memory/retrieval/timeline.js +1 -1
  110. package/dist/memory/retrieval/timeline.js.map +1 -1
  111. package/dist/memory/session-memory.d.ts.map +1 -1
  112. package/dist/memory/session-memory.js +35 -1
  113. package/dist/memory/session-memory.js.map +1 -1
  114. package/dist/memory/sleep-consolidation.js +4 -4
  115. package/dist/memory/sleep-consolidation.js.map +1 -1
  116. package/dist/memory/temporal-supersession.js +5 -5
  117. package/dist/memory/temporal-supersession.js.map +1 -1
  118. package/dist/memory/transcript-extractor.js +1 -1
  119. package/dist/memory/transcript-extractor.js.map +1 -1
  120. package/dist/memory/transcript-ingestor.js +1 -1
  121. package/dist/memory/transcript-ingestor.js.map +1 -1
  122. package/dist/memory/transcript-scanner.js +1 -1
  123. package/dist/memory/transcript-scanner.js.map +1 -1
  124. package/dist/nexus/living-brain.js +7 -7
  125. package/dist/nexus/living-brain.js.map +1 -1
  126. package/dist/nexus/migrations/M-split-graph.d.ts.map +1 -1
  127. package/dist/nexus/migrations/M-split-graph.js +4 -1
  128. package/dist/nexus/migrations/M-split-graph.js.map +1 -1
  129. package/dist/nexus/sigil.d.ts +1 -2
  130. package/dist/nexus/sigil.d.ts.map +1 -1
  131. package/dist/nexus/tasks-bridge.js +4 -4
  132. package/dist/nexus/tasks-bridge.js.map +1 -1
  133. package/dist/nexus/user-profile.d.ts +1 -2
  134. package/dist/nexus/user-profile.d.ts.map +1 -1
  135. package/dist/orchestration/spawn-prompt.d.ts.map +1 -1
  136. package/dist/orchestration/spawn-prompt.js +4 -2
  137. package/dist/orchestration/spawn-prompt.js.map +1 -1
  138. package/dist/release/reconcile.d.ts.map +1 -1
  139. package/dist/release/reconcile.js +5 -1
  140. package/dist/release/reconcile.js.map +1 -1
  141. package/dist/sagas/migrate-containment.d.ts.map +1 -1
  142. package/dist/sagas/migrate-containment.js +4 -2
  143. package/dist/sagas/migrate-containment.js.map +1 -1
  144. package/dist/scaffold/ensure-dirs.js +1 -1
  145. package/dist/scaffold/ensure-dirs.js.map +1 -1
  146. package/dist/scaffold/ensure-skills.d.ts.map +1 -1
  147. package/dist/scaffold/ensure-skills.js +67 -0
  148. package/dist/scaffold/ensure-skills.js.map +1 -1
  149. package/dist/selfimprove/dhq-adapter.d.ts.map +1 -1
  150. package/dist/selfimprove/dhq-adapter.js +6 -2
  151. package/dist/selfimprove/dhq-adapter.js.map +1 -1
  152. package/dist/selfimprove/fix-gen.js +5833 -16627
  153. package/dist/selfimprove/fix-gen.js.map +3 -3
  154. package/dist/sentient/dream-cycle.js +1 -1
  155. package/dist/sentient/dream-cycle.js.map +1 -1
  156. package/dist/sentient/hygiene-scan.js +1 -1
  157. package/dist/sentient/hygiene-scan.js.map +1 -1
  158. package/dist/sentient/propose-tick.js +3 -3
  159. package/dist/sentient/propose-tick.js.map +1 -1
  160. package/dist/sentient/stage-drift-tick.js +1 -1
  161. package/dist/sentient/stage-drift-tick.js.map +1 -1
  162. package/dist/sequence/index.js +1 -1
  163. package/dist/sequence/index.js.map +1 -1
  164. package/dist/store/agent-registry-store.d.ts.map +1 -1
  165. package/dist/store/agent-registry-store.js +72 -30
  166. package/dist/store/agent-registry-store.js.map +1 -1
  167. package/dist/store/attachment-store.js +3 -3
  168. package/dist/store/attachment-store.js.map +1 -1
  169. package/dist/store/background-jobs.d.ts +1 -2
  170. package/dist/store/background-jobs.d.ts.map +1 -1
  171. package/dist/store/background-jobs.js.map +1 -1
  172. package/dist/store/conduit-sqlite.d.ts +21 -1
  173. package/dist/store/conduit-sqlite.d.ts.map +1 -1
  174. package/dist/store/conduit-sqlite.js +43 -58
  175. package/dist/store/conduit-sqlite.js.map +1 -1
  176. package/dist/store/cross-db-cleanup.d.ts +38 -0
  177. package/dist/store/cross-db-cleanup.d.ts.map +1 -1
  178. package/dist/store/cross-db-cleanup.js +125 -0
  179. package/dist/store/cross-db-cleanup.js.map +1 -1
  180. package/dist/store/db-helpers.d.ts +1 -2
  181. package/dist/store/db-helpers.d.ts.map +1 -1
  182. package/dist/store/dual-scope-db.d.ts +343 -4
  183. package/dist/store/dual-scope-db.d.ts.map +1 -1
  184. package/dist/store/dual-scope-db.js +665 -262
  185. package/dist/store/dual-scope-db.js.map +1 -1
  186. package/dist/store/memory-accessor.d.ts +1 -1
  187. package/dist/store/memory-accessor.d.ts.map +1 -1
  188. package/dist/store/memory-accessor.js.map +1 -1
  189. package/dist/store/memory-sqlite.d.ts +58 -4
  190. package/dist/store/memory-sqlite.d.ts.map +1 -1
  191. package/dist/store/memory-sqlite.js +70 -78
  192. package/dist/store/memory-sqlite.js.map +1 -1
  193. package/dist/store/migration-manager.d.ts +7 -4
  194. package/dist/store/migration-manager.d.ts.map +1 -1
  195. package/dist/store/migration-manager.js +10 -10
  196. package/dist/store/migration-manager.js.map +1 -1
  197. package/dist/store/migration-sqlite.js +1 -1
  198. package/dist/store/migration-sqlite.js.map +1 -1
  199. package/dist/store/nexus-sqlite.d.ts +43 -1
  200. package/dist/store/nexus-sqlite.d.ts.map +1 -1
  201. package/dist/store/nexus-sqlite.js +80 -116
  202. package/dist/store/nexus-sqlite.js.map +1 -1
  203. package/dist/store/ports/domain-binding.d.ts +233 -0
  204. package/dist/store/ports/domain-binding.d.ts.map +1 -0
  205. package/dist/store/ports/domain-binding.js +500 -0
  206. package/dist/store/ports/domain-binding.js.map +1 -0
  207. package/dist/store/ports/fk-integrity.d.ts +155 -0
  208. package/dist/store/ports/fk-integrity.d.ts.map +1 -0
  209. package/dist/store/ports/fk-integrity.js +182 -0
  210. package/dist/store/ports/fk-integrity.js.map +1 -0
  211. package/dist/store/role-accessors-impl.js +2 -2
  212. package/dist/store/role-accessors-impl.js.map +1 -1
  213. package/dist/store/schema/attachments.d.ts +1 -1
  214. package/dist/store/schema/audit.d.ts +2 -2
  215. package/dist/store/schema/background-jobs.d.ts +1 -1
  216. package/dist/store/schema/cleo-global/agent-registry.d.ts +1 -1
  217. package/dist/store/schema/cleo-global/models-catalog.d.ts +1 -1
  218. package/dist/store/schema/cleo-global/skills.d.ts +2 -2
  219. package/dist/store/schema/cleo-project/audit.d.ts +2 -2
  220. package/dist/store/schema/cleo-project/docs.d.ts +1 -1
  221. package/dist/store/schema/cleo-project/lifecycle.d.ts +4 -4
  222. package/dist/store/schema/cleo-project/nexus-graph.d.ts +2 -2
  223. package/dist/store/schema/cleo-project/provenance-rest.d.ts +3 -3
  224. package/dist/store/schema/cleo-project/runtime.d.ts +2 -2
  225. package/dist/store/schema/cleo-project/tasks-core-batch2.d.ts +1 -1
  226. package/dist/store/schema/cleo-project/tasks-core.d.ts +3 -3
  227. package/dist/store/schema/cleo-shared/brain.d.ts +5 -5
  228. package/dist/store/schema/jsonb.js +1 -1
  229. package/dist/store/schema/jsonb.js.map +1 -1
  230. package/dist/store/schema/lifecycle.d.ts +4 -4
  231. package/dist/store/schema/memory-schema.d.ts +3 -3
  232. package/dist/store/schema/nexus-schema.d.ts +1 -1
  233. package/dist/store/schema/provenance/releases.d.ts +3 -3
  234. package/dist/store/schema/skills-schema.d.ts +2 -2
  235. package/dist/store/schema/tasks.d.ts +2 -2
  236. package/dist/store/skills-db.d.ts +20 -1
  237. package/dist/store/skills-db.d.ts.map +1 -1
  238. package/dist/store/skills-db.js +80 -72
  239. package/dist/store/skills-db.js.map +1 -1
  240. package/dist/store/sqlite-backup.js +2 -2
  241. package/dist/store/sqlite-backup.js.map +1 -1
  242. package/dist/store/sqlite-data-accessor.js +1 -1
  243. package/dist/store/sqlite-data-accessor.js.map +1 -1
  244. package/dist/store/sqlite.d.ts +73 -11
  245. package/dist/store/sqlite.d.ts.map +1 -1
  246. package/dist/store/sqlite.js +173 -138
  247. package/dist/store/sqlite.js.map +1 -1
  248. package/dist/store/tasks-sqlite.js +2 -2
  249. package/dist/store/tasks-sqlite.js.map +1 -1
  250. package/dist/store/validation-schemas.d.ts +35 -35
  251. package/dist/store/writer-lease.d.ts +85 -53
  252. package/dist/store/writer-lease.d.ts.map +1 -1
  253. package/dist/store/writer-lease.js +194 -112
  254. package/dist/store/writer-lease.js.map +1 -1
  255. package/dist/system/health.d.ts +0 -4
  256. package/dist/system/health.d.ts.map +1 -1
  257. package/dist/system/health.js +58 -2
  258. package/dist/system/health.js.map +1 -1
  259. package/dist/tasks/add.d.ts.map +1 -1
  260. package/dist/tasks/add.js +9 -2
  261. package/dist/tasks/add.js.map +1 -1
  262. package/dist/tasks/backfill-child-projections.d.ts.map +1 -1
  263. package/dist/tasks/backfill-child-projections.js +3 -1
  264. package/dist/tasks/backfill-child-projections.js.map +1 -1
  265. package/dist/tasks/evidence.d.ts +17 -0
  266. package/dist/tasks/evidence.d.ts.map +1 -1
  267. package/dist/tasks/evidence.js +145 -35
  268. package/dist/tasks/evidence.js.map +1 -1
  269. package/dist/tasks/infer-add-params.d.ts.map +1 -1
  270. package/dist/tasks/infer-add-params.js +6 -1
  271. package/dist/tasks/infer-add-params.js.map +1 -1
  272. package/dist/tasks/tool-cache.d.ts +29 -0
  273. package/dist/tasks/tool-cache.d.ts.map +1 -1
  274. package/dist/tasks/tool-cache.js +166 -6
  275. package/dist/tasks/tool-cache.js.map +1 -1
  276. package/dist/tasks/tool-resolver.d.ts +5 -1
  277. package/dist/tasks/tool-resolver.d.ts.map +1 -1
  278. package/dist/tasks/tool-resolver.js +28 -20
  279. package/dist/tasks/tool-resolver.js.map +1 -1
  280. package/dist/telemetry/index.d.ts.map +1 -1
  281. package/dist/telemetry/index.js +4 -1
  282. package/dist/telemetry/index.js.map +1 -1
  283. package/dist/telemetry/sqlite.d.ts +1 -2
  284. package/dist/telemetry/sqlite.d.ts.map +1 -1
  285. package/dist/telemetry/sqlite.js +1 -2
  286. package/dist/telemetry/sqlite.js.map +1 -1
  287. package/dist/upgrade.js +2 -2
  288. package/dist/upgrade.js.map +1 -1
  289. package/dist/validation/doctor/checks.d.ts +23 -1
  290. package/dist/validation/doctor/checks.d.ts.map +1 -1
  291. package/dist/validation/doctor/checks.js +79 -19
  292. package/dist/validation/doctor/checks.js.map +1 -1
  293. package/dist/worktree/list.js +1 -1
  294. package/dist/worktree/list.js.map +1 -1
  295. package/package.json +24 -14
  296. package/schemas/project-context.schema.json +69 -0
  297. package/templates/workflows/release-prepare.yml.tmpl +10 -0
@@ -0,0 +1,182 @@
1
+ /**
2
+ * Foreign-key integrity verification for the consolidated dual-scope
3
+ * `cleo.db` files.
4
+ *
5
+ * ## Why this exists (E6-L10 · T11530)
6
+ *
7
+ * The E6 cutover consolidated eight standalone databases into two files
8
+ * (project `cleo.db` and global `cleo.db`) and re-pointed every cross-domain
9
+ * foreign key at the PREFIXED consolidated tables. Two properties must hold
10
+ * afterwards and neither is self-evident:
11
+ *
12
+ * 1. **Referential integrity survived the move.** Exodus copies tables in
13
+ * dependency order, but a partially-applied migration, a hand-edited row,
14
+ * or a legacy DB restored from a pre-consolidation backup can leave an
15
+ * orphan whose parent row never made the trip.
16
+ * 2. **The FKs point at the right tables.** SQLite resolves a `REFERENCES`
17
+ * clause lazily, so an FK naming a table that no longer exists is not an
18
+ * error at DDL time — it fails only when a write touches it. A schema that
19
+ * still references the retired bare `tasks` table looks fine until
20
+ * something inserts.
21
+ *
22
+ * `PRAGMA foreign_key_check` answers both: it walks every FK in the schema and
23
+ * returns one row per violation, including one whose `parent` names a table
24
+ * that does not exist. So a structural defect and a row-level orphan surface
25
+ * through the same path.
26
+ *
27
+ * The verification runs against the LIVE consolidated files, not a fixture —
28
+ * this is the check that proves a real installation is sound.
29
+ *
30
+ * @packageDocumentation
31
+ * @task T11530 (E6-L10)
32
+ * @epic T11249 (E6)
33
+ * @saga T11242 (SG-DB-SUBSTRATE-V2)
34
+ */
35
+ import { bindGlobalDomain, bindProjectDomain } from './domain-binding.js';
36
+ /**
37
+ * Run `PRAGMA foreign_key_check` against one open connection.
38
+ *
39
+ * @param native - An open consolidated `cleo.db` connection.
40
+ * @param scope - The scope label to attribute violations to.
41
+ * @returns Every violation the pragma reported.
42
+ */
43
+ export function checkForeignKeys(native, scope) {
44
+ let rows;
45
+ try {
46
+ rows = native.prepare('PRAGMA foreign_key_check').all();
47
+ }
48
+ catch (err) {
49
+ // The pragma normally reports a dangling parent table as an ordinary
50
+ // violation row, so this path is defensive: it covers the cases where
51
+ // SQLite raises instead (a malformed schema row, an unreadable page).
52
+ // Surfacing the error as a violation keeps a failure from reading as
53
+ // "no violations found".
54
+ const message = err instanceof Error ? err.message : String(err);
55
+ return [
56
+ {
57
+ scope,
58
+ table: '(schema)',
59
+ rowid: null,
60
+ parent: message,
61
+ fkid: -1,
62
+ },
63
+ ];
64
+ }
65
+ return rows.map((row) => ({
66
+ scope,
67
+ table: row.table,
68
+ rowid: row.rowid,
69
+ parent: row.parent,
70
+ fkid: row.fkid,
71
+ }));
72
+ }
73
+ /**
74
+ * Verify foreign-key integrity across the consolidated dual-scope databases.
75
+ *
76
+ * Opens each requested scope through the ProjectStore/GlobalStore ports — the
77
+ * same chokepoint the runtime uses — so the check runs against exactly the
78
+ * connection (and therefore the schema and pragmas) production code sees.
79
+ *
80
+ * The `establish` callbacks are deliberately inert: this is a read-only probe
81
+ * and must not reconcile or migrate anything as a side effect of checking.
82
+ *
83
+ * @param options - Which scopes to check and which project.
84
+ * @returns A report; `ok` is `true` only when ZERO violations were found.
85
+ *
86
+ * @example
87
+ * ```ts
88
+ * const report = await verifyForeignKeyIntegrity({ cwd: projectRoot });
89
+ * if (!report.ok) {
90
+ * for (const v of report.violations) {
91
+ * console.error(`${v.scope}: ${v.table} row ${v.rowid} → missing ${v.parent}`);
92
+ * }
93
+ * }
94
+ * ```
95
+ *
96
+ * @task T11530
97
+ */
98
+ export async function verifyForeignKeyIntegrity(options) {
99
+ const scopes = options?.scopes ?? ['project', 'global'];
100
+ const violations = [];
101
+ for (const scope of scopes) {
102
+ const binding = scope === 'project'
103
+ ? await bindProjectDomain('fk-check', options?.cwd, (native) => native)
104
+ : await bindGlobalDomain('fk-check', (native) => native);
105
+ violations.push(...checkForeignKeys(binding.native, scope));
106
+ }
107
+ return { ok: violations.length === 0, scopes, violations };
108
+ }
109
+ /**
110
+ * Whether the child table's failing foreign key declares `ON DELETE CASCADE`.
111
+ *
112
+ * This is the authorisation rule for automatic repair. A `CASCADE` FK is the
113
+ * schema stating "this row exists only while its parent does" — so an orphan
114
+ * is a row that SHOULD already have been deleted and removing it restores the
115
+ * intended state rather than discarding meaningful data. Any other
116
+ * `ON DELETE` action (`NO ACTION`, `RESTRICT`, `SET NULL`) means the schema
117
+ * expects the row to outlive or block the parent's removal, and deleting it
118
+ * would be destroying data the operator never authorised.
119
+ *
120
+ * @param native - The open connection.
121
+ * @param table - The child table.
122
+ * @param fkid - Index into the child's `PRAGMA foreign_key_list`.
123
+ */
124
+ function isCascadeDelete(native, table, fkid) {
125
+ try {
126
+ const fks = native.prepare(`PRAGMA foreign_key_list(${JSON.stringify(table)})`).all();
127
+ return fks.some((fk) => fk.id === fkid && fk.on_delete.toUpperCase() === 'CASCADE');
128
+ }
129
+ catch {
130
+ return false;
131
+ }
132
+ }
133
+ /**
134
+ * Delete orphan rows whose foreign key declares `ON DELETE CASCADE`.
135
+ *
136
+ * These rows are the residue of a parent deletion that happened while FK
137
+ * enforcement was off — most commonly a pre-consolidation legacy database that
138
+ * exodus then copied verbatim. The schema already says they should not exist;
139
+ * this restores that invariant.
140
+ *
141
+ * Rows whose FK is NOT `CASCADE` are reported in `skipped` and left untouched.
142
+ *
143
+ * @param options - Which scopes to repair and which project.
144
+ * @returns What was found, repaired, and deliberately skipped.
145
+ *
146
+ * @task T11530
147
+ */
148
+ export async function repairForeignKeyViolations(options) {
149
+ const scopes = options?.scopes ?? ['project', 'global'];
150
+ const found = [];
151
+ const repaired = [];
152
+ const skipped = [];
153
+ for (const scope of scopes) {
154
+ const binding = scope === 'project'
155
+ ? await bindProjectDomain('fk-check', options?.cwd, (native) => native)
156
+ : await bindGlobalDomain('fk-check', (native) => native);
157
+ const native = binding.native;
158
+ const violations = checkForeignKeys(native, scope);
159
+ found.push(...violations);
160
+ for (const v of violations) {
161
+ // A structural violation has no single row to delete.
162
+ if (v.rowid === null || v.fkid < 0) {
163
+ skipped.push(v);
164
+ continue;
165
+ }
166
+ if (!isCascadeDelete(native, v.table, v.fkid)) {
167
+ skipped.push(v);
168
+ continue;
169
+ }
170
+ native
171
+ .prepare(`DELETE FROM ${JSON.stringify(v.table)} WHERE rowid = ?`)
172
+ .run(v.rowid);
173
+ repaired.push(v);
174
+ }
175
+ }
176
+ const after = await verifyForeignKeyIntegrity({
177
+ ...(options?.cwd === undefined ? {} : { cwd: options.cwd }),
178
+ scopes,
179
+ });
180
+ return { found, repaired, skipped, ok: after.ok };
181
+ }
182
+ //# sourceMappingURL=fk-integrity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fk-integrity.js","sourceRoot":"","sources":["../../../src/store/ports/fk-integrity.ts"],"names":[],"mappings":"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"}
@@ -28,7 +28,7 @@ export function createConduitAccessor(projectRoot) {
28
28
  async publish(topic, payload) {
29
29
  const { ensureConduitDb, getConduitNativeDb } = await import('./conduit-sqlite.js');
30
30
  await ensureConduitDb(cwd);
31
- const db = getConduitNativeDb();
31
+ const db = getConduitNativeDb(cwd);
32
32
  if (!db)
33
33
  throw new Error('ConduitAccessor: conduit.db not initialized');
34
34
  // Best-effort publish into the prefixed conduit_messages table (T11578 ·
@@ -50,7 +50,7 @@ export function createConduitAccessor(projectRoot) {
50
50
  try {
51
51
  const { ensureConduitDb, getConduitNativeDb } = await import('./conduit-sqlite.js');
52
52
  await ensureConduitDb(cwd);
53
- const db = getConduitNativeDb();
53
+ const db = getConduitNativeDb(cwd);
54
54
  if (!db)
55
55
  return false;
56
56
  db.prepare('SELECT 1').get();
@@ -1 +1 @@
1
- {"version":3,"file":"role-accessors-impl.js","sourceRoot":"","sources":["../../src/store/role-accessors-impl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"role-accessors-impl.js","sourceRoot":"","sources":["../../src/store/role-accessors-impl.ts"],"names":[],"mappings":"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"}
@@ -155,7 +155,7 @@ export declare const attachments: import("drizzle-orm/sqlite-core").SQLiteTableW
155
155
  name: string;
156
156
  tableName: "attachments";
157
157
  dataType: "string enum";
158
- data: "archived" | "proposed" | "accepted" | "superseded" | "deprecated" | "draft";
158
+ data: "archived" | "proposed" | "accepted" | "superseded" | "draft" | "deprecated";
159
159
  driverParam: string;
160
160
  notNull: true;
161
161
  hasDefault: true;
@@ -645,7 +645,7 @@ export declare const tokenUsage: import("drizzle-orm/sqlite-core").SQLiteTableWi
645
645
  name: string;
646
646
  tableName: "token_usage";
647
647
  dataType: "string enum";
648
- data: "otel" | "provider_api" | "tokenizer" | "heuristic";
648
+ data: "tokenizer" | "otel" | "provider_api" | "heuristic";
649
649
  driverParam: string;
650
650
  notNull: true;
651
651
  hasDefault: true;
@@ -930,7 +930,7 @@ export declare const architectureDecisions: import("drizzle-orm/sqlite-core").SQ
930
930
  name: string;
931
931
  tableName: "architecture_decisions";
932
932
  dataType: "string enum";
933
- data: "pending" | "failed" | "passed" | "waived";
933
+ data: "failed" | "pending" | "passed" | "waived";
934
934
  driverParam: string;
935
935
  notNull: false;
936
936
  hasDefault: false;
@@ -72,7 +72,7 @@ export declare const backgroundJobs: import("drizzle-orm/sqlite-core").SQLiteTab
72
72
  name: string;
73
73
  tableName: "background_jobs";
74
74
  dataType: "string enum";
75
- data: "orphaned" | "pending" | "failed" | "cancelled" | "running" | "complete";
75
+ data: "orphaned" | "cancelled" | "complete" | "failed" | "pending" | "running";
76
76
  driverParam: string;
77
77
  notNull: true;
78
78
  hasDefault: true;
@@ -808,7 +808,7 @@ export declare const agentRegistryAgents: import("drizzle-orm/sqlite-core").SQLi
808
808
  name: string;
809
809
  tableName: "agent_registry_agents";
810
810
  dataType: "string enum";
811
- data: "online" | "offline" | "busy" | "away";
811
+ data: "online" | "busy" | "offline" | "away";
812
812
  driverParam: string;
813
813
  notNull: true;
814
814
  hasDefault: true;
@@ -273,7 +273,7 @@ export declare const modelsCatalog: import("drizzle-orm/sqlite-core").SQLiteTabl
273
273
  name: string;
274
274
  tableName: "models_catalog";
275
275
  dataType: "string enum";
276
- data: "stable" | "beta" | "preview" | "deprecated" | "retired";
276
+ data: "beta" | "deprecated" | "preview" | "stable" | "retired";
277
277
  driverParam: string;
278
278
  notNull: true;
279
279
  hasDefault: true;
@@ -142,7 +142,7 @@ export declare const skillsSkills: import("drizzle-orm/sqlite-core").SQLiteTable
142
142
  name: string;
143
143
  tableName: "skills_skills";
144
144
  dataType: "string enum";
145
- data: "community" | "user" | "canonical" | "agent-created";
145
+ data: "community" | "canonical" | "user" | "agent-created";
146
146
  driverParam: string;
147
147
  notNull: true;
148
148
  hasDefault: false;
@@ -238,7 +238,7 @@ export declare const skillsSkills: import("drizzle-orm/sqlite-core").SQLiteTable
238
238
  name: string;
239
239
  tableName: "skills_skills";
240
240
  dataType: "string enum";
241
- data: "active" | "archived" | "stale";
241
+ data: "active" | "stale" | "archived";
242
242
  driverParam: string;
243
243
  notNull: true;
244
244
  hasDefault: true;
@@ -680,7 +680,7 @@ export declare const tasksTokenUsage: import("drizzle-orm/sqlite-core").SQLiteTa
680
680
  name: string;
681
681
  tableName: "tasks_token_usage";
682
682
  dataType: "string enum";
683
- data: "otel" | "provider_api" | "tokenizer" | "heuristic";
683
+ data: "tokenizer" | "otel" | "provider_api" | "heuristic";
684
684
  driverParam: string;
685
685
  notNull: true;
686
686
  hasDefault: true;
@@ -964,7 +964,7 @@ export declare const tasksArchitectureDecisions: import("drizzle-orm/sqlite-core
964
964
  name: string;
965
965
  tableName: "tasks_architecture_decisions";
966
966
  dataType: "string enum";
967
- data: "pending" | "failed" | "passed" | "waived";
967
+ data: "failed" | "pending" | "passed" | "waived";
968
968
  driverParam: string;
969
969
  notNull: false;
970
970
  hasDefault: false;
@@ -177,7 +177,7 @@ export declare const docsAttachments: import("drizzle-orm/sqlite-core").SQLiteTa
177
177
  name: string;
178
178
  tableName: "docs_attachments";
179
179
  dataType: "string enum";
180
- data: "archived" | "proposed" | "accepted" | "superseded" | "deprecated" | "draft";
180
+ data: "archived" | "proposed" | "accepted" | "superseded" | "draft" | "deprecated";
181
181
  driverParam: string;
182
182
  notNull: true;
183
183
  hasDefault: true;
@@ -80,7 +80,7 @@ export declare const tasksLifecyclePipelines: import("drizzle-orm/sqlite-core").
80
80
  name: string;
81
81
  tableName: "tasks_lifecycle_pipelines";
82
82
  dataType: "string enum";
83
- data: "active" | "failed" | "blocked" | "cancelled" | "completed" | "aborted";
83
+ data: "active" | "cancelled" | "blocked" | "failed" | "completed" | "aborted";
84
84
  driverParam: string;
85
85
  notNull: true;
86
86
  hasDefault: true;
@@ -220,7 +220,7 @@ export declare const tasksLifecycleStages: import("drizzle-orm/sqlite-core").SQL
220
220
  name: string;
221
221
  tableName: "tasks_lifecycle_stages";
222
222
  dataType: "string enum";
223
- data: "research" | "release" | "consensus" | "architecture_decision" | "specification" | "decomposition" | "implementation" | "validation" | "testing" | "contribution";
223
+ data: "release" | "research" | "consensus" | "architecture_decision" | "specification" | "decomposition" | "implementation" | "validation" | "testing" | "contribution";
224
224
  driverParam: string;
225
225
  notNull: true;
226
226
  hasDefault: false;
@@ -236,7 +236,7 @@ export declare const tasksLifecycleStages: import("drizzle-orm/sqlite-core").SQL
236
236
  name: string;
237
237
  tableName: "tasks_lifecycle_stages";
238
238
  dataType: "string enum";
239
- data: "in_progress" | "failed" | "skipped" | "blocked" | "completed" | "not_started";
239
+ data: "blocked" | "failed" | "in_progress" | "skipped" | "completed" | "not_started";
240
240
  driverParam: string;
241
241
  notNull: true;
242
242
  hasDefault: true;
@@ -460,7 +460,7 @@ export declare const tasksLifecycleStages: import("drizzle-orm/sqlite-core").SQL
460
460
  name: string;
461
461
  tableName: "tasks_lifecycle_stages";
462
462
  dataType: "string enum";
463
- data: "pending" | "approved" | "rejected" | "in_review" | "needs_revision";
463
+ data: "pending" | "approved" | "in_review" | "rejected" | "needs_revision";
464
464
  driverParam: string;
465
465
  notNull: false;
466
466
  hasDefault: false;
@@ -147,7 +147,7 @@ export declare const nexusNodes: import("drizzle-orm/sqlite-core").SQLiteTableWi
147
147
  name: string;
148
148
  tableName: "nexus_nodes";
149
149
  dataType: "string enum";
150
- data: "function" | "file" | "enum" | "folder" | "module" | "namespace" | "method" | "constructor" | "class" | "interface" | "struct" | "trait" | "impl" | "type_alias" | "property" | "constant" | "variable" | "static" | "record" | "delegate" | "macro" | "union" | "typedef" | "annotation" | "template" | "community" | "process" | "route" | "tool" | "section" | "import" | "export" | "type";
150
+ data: "function" | "file" | "type" | "union" | "enum" | "folder" | "module" | "namespace" | "method" | "constructor" | "class" | "interface" | "struct" | "trait" | "impl" | "type_alias" | "property" | "constant" | "variable" | "static" | "record" | "delegate" | "macro" | "typedef" | "annotation" | "template" | "community" | "process" | "route" | "tool" | "section" | "import" | "export";
151
151
  driverParam: string;
152
152
  notNull: true;
153
153
  hasDefault: false;
@@ -901,7 +901,7 @@ export declare const nexusCodeIndex: import("drizzle-orm/sqlite-core").SQLiteTab
901
901
  name: string;
902
902
  tableName: "nexus_code_index";
903
903
  dataType: "string enum";
904
- data: "function" | "enum" | "module" | "method" | "class" | "interface" | "struct" | "trait" | "impl" | "constant" | "variable" | "import" | "export" | "type";
904
+ data: "function" | "type" | "enum" | "module" | "method" | "class" | "interface" | "struct" | "trait" | "impl" | "constant" | "variable" | "import" | "export";
905
905
  driverParam: string;
906
906
  notNull: true;
907
907
  hasDefault: false;
@@ -595,7 +595,7 @@ export declare const tasksReleases: import("drizzle-orm/sqlite-core").SQLiteTabl
595
595
  name: string;
596
596
  tableName: "tasks_releases";
597
597
  dataType: "string enum";
598
- data: "beta" | "latest" | "dev" | "hotfix";
598
+ data: "latest" | "beta" | "dev" | "hotfix";
599
599
  driverParam: string;
600
600
  notNull: true;
601
601
  hasDefault: true;
@@ -643,7 +643,7 @@ export declare const tasksReleases: import("drizzle-orm/sqlite-core").SQLiteTabl
643
643
  name: string;
644
644
  tableName: "tasks_releases";
645
645
  dataType: "string enum";
646
- data: "failed" | "cancelled" | "reconciled" | "planned" | "pr-opened" | "pr-merged" | "published" | "prepared" | "committed" | "tagged" | "pushed" | "rolled_back";
646
+ data: "cancelled" | "failed" | "reconciled" | "planned" | "pr-opened" | "pr-merged" | "published" | "prepared" | "committed" | "tagged" | "pushed" | "rolled_back";
647
647
  driverParam: string;
648
648
  notNull: true;
649
649
  hasDefault: true;
@@ -1259,7 +1259,7 @@ export declare const tasksReleaseChanges: import("drizzle-orm/sqlite-core").SQLi
1259
1259
  name: string;
1260
1260
  tableName: "tasks_release_changes";
1261
1261
  dataType: "string enum";
1262
- data: "patch" | "major" | "minor" | "none";
1262
+ data: "none" | "major" | "minor" | "patch";
1263
1263
  driverParam: string;
1264
1264
  notNull: true;
1265
1265
  hasDefault: true;
@@ -295,7 +295,7 @@ export declare const tasksWarpChainInstances: import("drizzle-orm/sqlite-core").
295
295
  name: string;
296
296
  tableName: "tasks_warp_chain_instances";
297
297
  dataType: "string enum";
298
- data: "pending" | "active" | "failed" | "cancelled" | "completed";
298
+ data: "active" | "cancelled" | "failed" | "pending" | "completed";
299
299
  driverParam: string;
300
300
  notNull: true;
301
301
  hasDefault: true;
@@ -827,7 +827,7 @@ export declare const tasksPlaybookRuns: import("drizzle-orm/sqlite-core").SQLite
827
827
  name: string;
828
828
  tableName: "tasks_playbook_runs";
829
829
  dataType: "string enum";
830
- data: "failed" | "cancelled" | "completed" | "running" | "paused";
830
+ data: "cancelled" | "failed" | "completed" | "running" | "paused";
831
831
  driverParam: string;
832
832
  notNull: true;
833
833
  hasDefault: true;
@@ -106,7 +106,7 @@ export declare const tasksBackgroundJobs: import("drizzle-orm/sqlite-core").SQLi
106
106
  name: string;
107
107
  tableName: "tasks_background_jobs";
108
108
  dataType: "string enum";
109
- data: "orphaned" | "pending" | "failed" | "cancelled" | "running" | "complete";
109
+ data: "orphaned" | "cancelled" | "complete" | "failed" | "pending" | "running";
110
110
  driverParam: string;
111
111
  notNull: true;
112
112
  hasDefault: true;
@@ -126,7 +126,7 @@ export declare const tasksTasks: import("drizzle-orm/sqlite-core").SQLiteTableWi
126
126
  name: string;
127
127
  tableName: "tasks_tasks";
128
128
  dataType: "string enum";
129
- data: "pending" | "active" | "archived" | "proposed" | "done" | "blocked" | "cancelled";
129
+ data: "active" | "done" | "archived" | "cancelled" | "blocked" | "pending" | "proposed";
130
130
  driverParam: string;
131
131
  notNull: true;
132
132
  hasDefault: true;
@@ -174,7 +174,7 @@ export declare const tasksTasks: import("drizzle-orm/sqlite-core").SQLiteTableWi
174
174
  name: string;
175
175
  tableName: "tasks_tasks";
176
176
  dataType: "string enum";
177
- data: "work" | "research" | "experiment" | "bug" | "spike" | "release";
177
+ data: "release" | "work" | "research" | "experiment" | "bug" | "spike";
178
178
  driverParam: string;
179
179
  notNull: true;
180
180
  hasDefault: true;
@@ -526,7 +526,7 @@ export declare const tasksTasks: import("drizzle-orm/sqlite-core").SQLiteTableWi
526
526
  name: string;
527
527
  tableName: "tasks_tasks";
528
528
  dataType: "string enum";
529
- data: "verified" | "superseded" | "cancelled" | "reconciled" | "shadowed" | "completed-unverified";
529
+ data: "cancelled" | "verified" | "superseded" | "reconciled" | "shadowed" | "completed-unverified";
530
530
  driverParam: string;
531
531
  notNull: false;
532
532
  hasDefault: false;
@@ -2205,7 +2205,7 @@ export declare const brainObservations: import("drizzle-orm/sqlite-core").SQLite
2205
2205
  name: string;
2206
2206
  tableName: "brain_observations";
2207
2207
  dataType: "string enum";
2208
- data: "agent" | "session-debrief" | "claude-mem" | "manual";
2208
+ data: "manual" | "agent" | "session-debrief" | "claude-mem";
2209
2209
  driverParam: string;
2210
2210
  notNull: true;
2211
2211
  hasDefault: true;
@@ -2329,7 +2329,7 @@ export declare const brainStickyNotes: import("drizzle-orm/sqlite-core").SQLiteT
2329
2329
  name: string;
2330
2330
  tableName: "brain_sticky_notes";
2331
2331
  dataType: "string enum";
2332
- data: "active" | "converted" | "archived";
2332
+ data: "active" | "archived" | "converted";
2333
2333
  driverParam: string;
2334
2334
  notNull: true;
2335
2335
  hasDefault: true;
@@ -4193,7 +4193,7 @@ export declare const brainTranscriptEvents: import("drizzle-orm/sqlite-core").SQ
4193
4193
  name: string;
4194
4194
  tableName: "brain_transcript_events";
4195
4195
  dataType: "string enum";
4196
- data: "user" | "assistant" | "system";
4196
+ data: "system" | "user" | "assistant";
4197
4197
  driverParam: string;
4198
4198
  notNull: true;
4199
4199
  hasDefault: false;
@@ -4457,7 +4457,7 @@ export declare const brainBackfillRuns: import("drizzle-orm/sqlite-core").SQLite
4457
4457
  name: string;
4458
4458
  tableName: "brain_backfill_runs";
4459
4459
  dataType: "string enum";
4460
- data: "custom" | "observation-promotion" | "transcript-ingest" | "graph-backfill" | "noise-sweep-2440";
4460
+ data: "custom" | "graph-backfill" | "noise-sweep-2440" | "observation-promotion" | "transcript-ingest";
4461
4461
  driverParam: string;
4462
4462
  notNull: true;
4463
4463
  hasDefault: false;
@@ -4774,7 +4774,7 @@ export declare const brainDeriverQueue: import("drizzle-orm/sqlite-core").SQLite
4774
4774
  name: string;
4775
4775
  tableName: "brain_deriver_queue";
4776
4776
  dataType: "string enum";
4777
- data: "pending" | "in_progress" | "done" | "failed";
4777
+ data: "done" | "failed" | "pending" | "in_progress";
4778
4778
  driverParam: string;
4779
4779
  notNull: true;
4780
4780
  hasDefault: true;
@@ -127,6 +127,6 @@ export function jsonbText(column) {
127
127
  // `sql` interpolates a column reference, an aliased expression, or a raw SQL
128
128
  // fragment uniformly — all are valid `json()` arguments. The decoder parses
129
129
  // the TEXT json() emits so consumers receive the live document.
130
- return sql `json(${column})`.mapWith((text) => JSON.parse(text));
130
+ return sql `json(${column})`.mapWith((value) => JSON.parse(String(value)));
131
131
  }
132
132
  //# sourceMappingURL=jsonb.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"jsonb.js","sourceRoot":"","sources":["../../../src/store/schema/jsonb.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AAGH,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAUrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CAAI,IAAY,EAAE,EAAE,CACvC,UAAU,CAA2C;IACnD,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM;IACtB;;;OAGG;IACH,QAAQ,EAAE,CAAC,KAAQ,EAAO,EAAE,CAAC,GAAG,CAAA,SAAS,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG;IACjE;;;;;;;OAOG;IACH,UAAU,EAAE,CAAC,MAAuB,EAAK,EAAE;QACzC,MAAM,IAAI,KAAK,CACb,gFAAgF;YAC9E,yEAAyE;YACzE,qFAAqF,CACxF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC,IAAI,CAAC,CAAC;AAEX;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,SAAS,CAAc,MAAyB;IAC9D,6EAA6E;IAC7E,4EAA4E;IAC5E,gEAAgE;IAChE,OAAO,GAAG,CAAA,QAAQ,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC,IAAY,EAAK,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAM,CAAC,CAAC;AAClF,CAAC"}
1
+ {"version":3,"file":"jsonb.js","sourceRoot":"","sources":["../../../src/store/schema/jsonb.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AAGH,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAUrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CAAI,IAAY,EAAE,EAAE,CACvC,UAAU,CAA2C;IACnD,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM;IACtB;;;OAGG;IACH,QAAQ,EAAE,CAAC,KAAQ,EAAO,EAAE,CAAC,GAAG,CAAA,SAAS,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG;IACjE;;;;;;;OAOG;IACH,UAAU,EAAE,CAAC,MAAuB,EAAK,EAAE;QACzC,MAAM,IAAI,KAAK,CACb,gFAAgF;YAC9E,yEAAyE;YACzE,qFAAqF,CACxF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC,IAAI,CAAC,CAAC;AAEX;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,SAAS,CAAc,MAAyB;IAC9D,6EAA6E;IAC7E,4EAA4E;IAC5E,gEAAgE;IAChE,OAAO,GAAG,CAAA,QAAQ,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC,KAAc,EAAK,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAM,CAAC,CAAC;AAC7F,CAAC"}
@@ -50,7 +50,7 @@ export declare const lifecyclePipelines: import("drizzle-orm/sqlite-core").SQLit
50
50
  name: string;
51
51
  tableName: "lifecycle_pipelines";
52
52
  dataType: "string enum";
53
- data: "active" | "failed" | "blocked" | "cancelled" | "completed" | "aborted";
53
+ data: "active" | "cancelled" | "blocked" | "failed" | "completed" | "aborted";
54
54
  driverParam: string;
55
55
  notNull: true;
56
56
  hasDefault: true;
@@ -185,7 +185,7 @@ export declare const lifecycleStages: import("drizzle-orm/sqlite-core").SQLiteTa
185
185
  name: string;
186
186
  tableName: "lifecycle_stages";
187
187
  dataType: "string enum";
188
- data: "research" | "release" | "consensus" | "architecture_decision" | "specification" | "decomposition" | "implementation" | "validation" | "testing" | "contribution";
188
+ data: "release" | "research" | "consensus" | "architecture_decision" | "specification" | "decomposition" | "implementation" | "validation" | "testing" | "contribution";
189
189
  driverParam: string;
190
190
  notNull: true;
191
191
  hasDefault: false;
@@ -201,7 +201,7 @@ export declare const lifecycleStages: import("drizzle-orm/sqlite-core").SQLiteTa
201
201
  name: string;
202
202
  tableName: "lifecycle_stages";
203
203
  dataType: "string enum";
204
- data: "in_progress" | "failed" | "skipped" | "blocked" | "completed" | "not_started";
204
+ data: "blocked" | "failed" | "in_progress" | "skipped" | "completed" | "not_started";
205
205
  driverParam: string;
206
206
  notNull: true;
207
207
  hasDefault: true;
@@ -425,7 +425,7 @@ export declare const lifecycleStages: import("drizzle-orm/sqlite-core").SQLiteTa
425
425
  name: string;
426
426
  tableName: "lifecycle_stages";
427
427
  dataType: "string enum";
428
- data: "pending" | "approved" | "rejected" | "in_review" | "needs_revision";
428
+ data: "pending" | "approved" | "in_review" | "rejected" | "needs_revision";
429
429
  driverParam: string;
430
430
  notNull: false;
431
431
  hasDefault: false;
@@ -1815,7 +1815,7 @@ export declare const brainObservations: import("drizzle-orm/sqlite-core").SQLite
1815
1815
  name: string;
1816
1816
  tableName: "brain_observations";
1817
1817
  dataType: "string enum";
1818
- data: "agent" | "session-debrief" | "claude-mem" | "manual";
1818
+ data: "manual" | "agent" | "session-debrief" | "claude-mem";
1819
1819
  driverParam: string;
1820
1820
  notNull: true;
1821
1821
  hasDefault: true;
@@ -2383,7 +2383,7 @@ export declare const brainStickyNotes: import("drizzle-orm/sqlite-core").SQLiteT
2383
2383
  name: string;
2384
2384
  tableName: "brain_sticky_notes";
2385
2385
  dataType: "string enum";
2386
- data: "active" | "converted" | "archived";
2386
+ data: "active" | "archived" | "converted";
2387
2387
  driverParam: string;
2388
2388
  notNull: true;
2389
2389
  hasDefault: true;
@@ -4947,7 +4947,7 @@ export declare const deriverQueue: import("drizzle-orm/sqlite-core").SQLiteTable
4947
4947
  name: string;
4948
4948
  tableName: "deriver_queue";
4949
4949
  dataType: "string enum";
4950
- data: "pending" | "in_progress" | "done" | "failed";
4950
+ data: "done" | "failed" | "pending" | "in_progress";
4951
4951
  driverParam: string;
4952
4952
  notNull: true;
4953
4953
  hasDefault: true;
@@ -724,7 +724,7 @@ export declare const nexusNodes: import("drizzle-orm/sqlite-core").SQLiteTableWi
724
724
  name: string;
725
725
  tableName: "nexus_nodes";
726
726
  dataType: "string enum";
727
- data: "function" | "file" | "enum" | "folder" | "module" | "namespace" | "method" | "constructor" | "class" | "interface" | "struct" | "trait" | "impl" | "type_alias" | "property" | "constant" | "variable" | "static" | "record" | "delegate" | "macro" | "union" | "typedef" | "annotation" | "template" | "community" | "process" | "route" | "tool" | "section" | "import" | "export" | "type";
727
+ data: "function" | "file" | "type" | "union" | "enum" | "folder" | "module" | "namespace" | "method" | "constructor" | "class" | "interface" | "struct" | "trait" | "impl" | "type_alias" | "property" | "constant" | "variable" | "static" | "record" | "delegate" | "macro" | "typedef" | "annotation" | "template" | "community" | "process" | "route" | "tool" | "section" | "import" | "export";
728
728
  driverParam: string;
729
729
  notNull: true;
730
730
  hasDefault: false;