@cleocode/core 2026.10.5 → 2026.10.6

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 (321) hide show
  1. package/dist/bootstrap.d.ts +13 -0
  2. package/dist/bootstrap.d.ts.map +1 -1
  3. package/dist/bootstrap.js +21 -32
  4. package/dist/bootstrap.js.map +1 -1
  5. package/dist/build-provenance.json +2 -2
  6. package/dist/cloud/nexus-cloud-status.d.ts.map +1 -1
  7. package/dist/cloud/nexus-cloud-status.js +3 -1
  8. package/dist/cloud/nexus-cloud-status.js.map +1 -1
  9. package/dist/cloud/nexus-device.d.ts +1 -1
  10. package/dist/cloud/nexus-presence-refresh.d.ts.map +1 -1
  11. package/dist/cloud/nexus-presence-refresh.js +20 -13
  12. package/dist/cloud/nexus-presence-refresh.js.map +1 -1
  13. package/dist/cloud/nexus-vault.d.ts.map +1 -1
  14. package/dist/cloud/nexus-vault.js +4 -1
  15. package/dist/cloud/nexus-vault.js.map +1 -1
  16. package/dist/docs/derive-links.d.ts +69 -0
  17. package/dist/docs/derive-links.d.ts.map +1 -0
  18. package/dist/docs/derive-links.js +85 -0
  19. package/dist/docs/derive-links.js.map +1 -0
  20. package/dist/docs/docs-generator.d.ts.map +1 -1
  21. package/dist/docs/docs-generator.js +2 -0
  22. package/dist/docs/docs-generator.js.map +1 -1
  23. package/dist/docs/docs-update.d.ts.map +1 -1
  24. package/dist/docs/docs-update.js +24 -4
  25. package/dist/docs/docs-update.js.map +1 -1
  26. package/dist/docs/fetch-result.d.ts +77 -0
  27. package/dist/docs/fetch-result.d.ts.map +1 -0
  28. package/dist/docs/fetch-result.js +132 -0
  29. package/dist/docs/fetch-result.js.map +1 -0
  30. package/dist/docs/supersede.d.ts.map +1 -1
  31. package/dist/docs/supersede.js +9 -0
  32. package/dist/docs/supersede.js.map +1 -1
  33. package/dist/doctor/db-substrate.d.ts.map +1 -1
  34. package/dist/doctor/db-substrate.js +64 -29
  35. package/dist/doctor/db-substrate.js.map +1 -1
  36. package/dist/doctor/row-identity-refill.d.ts.map +1 -1
  37. package/dist/doctor/row-identity-refill.js +25 -10
  38. package/dist/doctor/row-identity-refill.js.map +1 -1
  39. package/dist/doctor/row-identity.d.ts.map +1 -1
  40. package/dist/doctor/row-identity.js +8 -2
  41. package/dist/doctor/row-identity.js.map +1 -1
  42. package/dist/doctor/sync-repair.d.ts +5 -0
  43. package/dist/doctor/sync-repair.d.ts.map +1 -1
  44. package/dist/doctor/sync-repair.js +11 -0
  45. package/dist/doctor/sync-repair.js.map +1 -1
  46. package/dist/doctor/sync-triggers.d.ts.map +1 -1
  47. package/dist/doctor/sync-triggers.js +3 -17
  48. package/dist/doctor/sync-triggers.js.map +1 -1
  49. package/dist/hygiene/validate-spawn-readiness.d.ts +6 -1
  50. package/dist/hygiene/validate-spawn-readiness.d.ts.map +1 -1
  51. package/dist/hygiene/validate-spawn-readiness.js +11 -6
  52. package/dist/hygiene/validate-spawn-readiness.js.map +1 -1
  53. package/dist/init.d.ts.map +1 -1
  54. package/dist/init.js +10 -1
  55. package/dist/init.js.map +1 -1
  56. package/dist/injection.d.ts +37 -12
  57. package/dist/injection.d.ts.map +1 -1
  58. package/dist/injection.js +152 -35
  59. package/dist/injection.js.map +1 -1
  60. package/dist/memory/brain-search.d.ts.map +1 -1
  61. package/dist/memory/brain-search.js +7 -32
  62. package/dist/memory/brain-search.js.map +1 -1
  63. package/dist/memory/pipeline-manifest-sqlite.d.ts +2 -0
  64. package/dist/memory/pipeline-manifest-sqlite.d.ts.map +1 -1
  65. package/dist/memory/pipeline-manifest-sqlite.js +51 -9
  66. package/dist/memory/pipeline-manifest-sqlite.js.map +1 -1
  67. package/dist/nexus/assessment-projection.d.ts +96 -1
  68. package/dist/nexus/assessment-projection.d.ts.map +1 -1
  69. package/dist/nexus/assessment-projection.js +135 -0
  70. package/dist/nexus/assessment-projection.js.map +1 -1
  71. package/dist/nexus/assessment-store.d.ts +54 -0
  72. package/dist/nexus/assessment-store.d.ts.map +1 -1
  73. package/dist/nexus/assessment-store.js +161 -2
  74. package/dist/nexus/assessment-store.js.map +1 -1
  75. package/dist/nexus/knowledge.d.ts +19 -0
  76. package/dist/nexus/knowledge.d.ts.map +1 -1
  77. package/dist/nexus/knowledge.js +56 -2
  78. package/dist/nexus/knowledge.js.map +1 -1
  79. package/dist/orchestrate/spawn-ops.d.ts.map +1 -1
  80. package/dist/orchestrate/spawn-ops.js +12 -1
  81. package/dist/orchestrate/spawn-ops.js.map +1 -1
  82. package/dist/release/commit-presence.d.ts +24 -0
  83. package/dist/release/commit-presence.d.ts.map +1 -1
  84. package/dist/release/commit-presence.js +31 -0
  85. package/dist/release/commit-presence.js.map +1 -1
  86. package/dist/release/plan.d.ts +8 -6
  87. package/dist/release/plan.d.ts.map +1 -1
  88. package/dist/release/plan.js +11 -6
  89. package/dist/release/plan.js.map +1 -1
  90. package/dist/release/reconcile.d.ts.map +1 -1
  91. package/dist/release/reconcile.js +10 -8
  92. package/dist/release/reconcile.js.map +1 -1
  93. package/dist/release/verify-provenance.d.ts.map +1 -1
  94. package/dist/release/verify-provenance.js +6 -8
  95. package/dist/release/verify-provenance.js.map +1 -1
  96. package/dist/resources/admission-ledger.d.ts +66 -0
  97. package/dist/resources/admission-ledger.d.ts.map +1 -1
  98. package/dist/resources/admission-ledger.js +145 -6
  99. package/dist/resources/admission-ledger.js.map +1 -1
  100. package/dist/resources/run-class.d.ts +71 -0
  101. package/dist/resources/run-class.d.ts.map +1 -1
  102. package/dist/resources/run-class.js +203 -0
  103. package/dist/resources/run-class.js.map +1 -1
  104. package/dist/resources/run-governed.d.ts +2 -0
  105. package/dist/resources/run-governed.d.ts.map +1 -1
  106. package/dist/resources/run-governed.js +1 -0
  107. package/dist/resources/run-governed.js.map +1 -1
  108. package/dist/scaffold/ensure-config.d.ts +20 -9
  109. package/dist/scaffold/ensure-config.d.ts.map +1 -1
  110. package/dist/scaffold/ensure-config.js +56 -23
  111. package/dist/scaffold/ensure-config.js.map +1 -1
  112. package/dist/scaffold/ensure-skills.d.ts +10 -0
  113. package/dist/scaffold/ensure-skills.d.ts.map +1 -1
  114. package/dist/scaffold/ensure-skills.js +47 -3
  115. package/dist/scaffold/ensure-skills.js.map +1 -1
  116. package/dist/scaffold/upgrade-file-journal.d.ts +79 -0
  117. package/dist/scaffold/upgrade-file-journal.d.ts.map +1 -0
  118. package/dist/scaffold/upgrade-file-journal.js +111 -0
  119. package/dist/scaffold/upgrade-file-journal.js.map +1 -0
  120. package/dist/session/engine-ops.d.ts.map +1 -1
  121. package/dist/session/engine-ops.js +10 -2
  122. package/dist/session/engine-ops.js.map +1 -1
  123. package/dist/sessions/index.d.ts.map +1 -1
  124. package/dist/sessions/index.js +3 -0
  125. package/dist/sessions/index.js.map +1 -1
  126. package/dist/spawn/worktree-lock-holder.d.ts +59 -1
  127. package/dist/spawn/worktree-lock-holder.d.ts.map +1 -1
  128. package/dist/spawn/worktree-lock-holder.js +114 -0
  129. package/dist/spawn/worktree-lock-holder.js.map +1 -1
  130. package/dist/store/attachment-store.d.ts.map +1 -1
  131. package/dist/store/attachment-store.js +38 -0
  132. package/dist/store/attachment-store.js.map +1 -1
  133. package/dist/store/backup-recover.d.ts +4 -4
  134. package/dist/store/backup-recover.d.ts.map +1 -1
  135. package/dist/store/backup-recover.js +11 -4
  136. package/dist/store/backup-recover.js.map +1 -1
  137. package/dist/store/backup-sidecar.d.ts +19 -1
  138. package/dist/store/backup-sidecar.d.ts.map +1 -1
  139. package/dist/store/backup-sidecar.js +57 -6
  140. package/dist/store/backup-sidecar.js.map +1 -1
  141. package/dist/store/db-helpers.js +1 -1
  142. package/dist/store/display-id-alias.js +1 -1
  143. package/dist/store/display-id-alias.js.map +1 -1
  144. package/dist/store/dual-scope-db.d.ts +2 -0
  145. package/dist/store/dual-scope-db.d.ts.map +1 -1
  146. package/dist/store/dual-scope-db.js +28 -16
  147. package/dist/store/dual-scope-db.js.map +1 -1
  148. package/dist/store/exodus/archive.d.ts +42 -2
  149. package/dist/store/exodus/archive.d.ts.map +1 -1
  150. package/dist/store/exodus/archive.js +81 -4
  151. package/dist/store/exodus/archive.js.map +1 -1
  152. package/dist/store/exodus/bare-family.d.ts +104 -0
  153. package/dist/store/exodus/bare-family.d.ts.map +1 -0
  154. package/dist/store/exodus/bare-family.js +470 -0
  155. package/dist/store/exodus/bare-family.js.map +1 -0
  156. package/dist/store/exodus/column-transforms.d.ts.map +1 -1
  157. package/dist/store/exodus/column-transforms.js +15 -8
  158. package/dist/store/exodus/column-transforms.js.map +1 -1
  159. package/dist/store/exodus/health.d.ts +2 -0
  160. package/dist/store/exodus/health.d.ts.map +1 -1
  161. package/dist/store/exodus/health.js +7 -1
  162. package/dist/store/exodus/health.js.map +1 -1
  163. package/dist/store/exodus/index.d.ts +2 -2
  164. package/dist/store/exodus/index.d.ts.map +1 -1
  165. package/dist/store/exodus/index.js +2 -2
  166. package/dist/store/exodus/index.js.map +1 -1
  167. package/dist/store/exodus/migrate.d.ts.map +1 -1
  168. package/dist/store/exodus/migrate.js +30 -1
  169. package/dist/store/exodus/migrate.js.map +1 -1
  170. package/dist/store/exodus/on-open.d.ts +11 -0
  171. package/dist/store/exodus/on-open.d.ts.map +1 -1
  172. package/dist/store/exodus/on-open.js +26 -1
  173. package/dist/store/exodus/on-open.js.map +1 -1
  174. package/dist/store/exodus/prior-recoveries.d.ts +3 -2
  175. package/dist/store/exodus/prior-recoveries.d.ts.map +1 -1
  176. package/dist/store/exodus/prior-recoveries.js +7 -3
  177. package/dist/store/exodus/prior-recoveries.js.map +1 -1
  178. package/dist/store/exodus/reconcile.d.ts +44 -6
  179. package/dist/store/exodus/reconcile.d.ts.map +1 -1
  180. package/dist/store/exodus/reconcile.js +246 -173
  181. package/dist/store/exodus/reconcile.js.map +1 -1
  182. package/dist/store/exodus/recovery.d.ts +48 -0
  183. package/dist/store/exodus/recovery.d.ts.map +1 -1
  184. package/dist/store/exodus/recovery.js +104 -6
  185. package/dist/store/exodus/recovery.js.map +1 -1
  186. package/dist/store/exodus/seal.d.ts.map +1 -1
  187. package/dist/store/exodus/seal.js +4 -2
  188. package/dist/store/exodus/seal.js.map +1 -1
  189. package/dist/store/exodus/table-order.d.ts +6 -0
  190. package/dist/store/exodus/table-order.d.ts.map +1 -1
  191. package/dist/store/exodus/table-order.js +15 -0
  192. package/dist/store/exodus/table-order.js.map +1 -1
  193. package/dist/store/exodus/types.d.ts +4 -0
  194. package/dist/store/exodus/types.d.ts.map +1 -1
  195. package/dist/store/exodus/types.js +4 -0
  196. package/dist/store/exodus/types.js.map +1 -1
  197. package/dist/store/exodus/verify-migration.d.ts.map +1 -1
  198. package/dist/store/exodus/verify-migration.js +22 -17
  199. package/dist/store/exodus/verify-migration.js.map +1 -1
  200. package/dist/store/identity-share.d.ts +14 -0
  201. package/dist/store/identity-share.d.ts.map +1 -1
  202. package/dist/store/identity-share.js +33 -0
  203. package/dist/store/identity-share.js.map +1 -1
  204. package/dist/store/lock.d.ts +33 -0
  205. package/dist/store/lock.d.ts.map +1 -1
  206. package/dist/store/lock.js +60 -0
  207. package/dist/store/lock.js.map +1 -1
  208. package/dist/store/portable-bundle-import.d.ts.map +1 -1
  209. package/dist/store/portable-bundle-import.js +7 -0
  210. package/dist/store/portable-bundle-import.js.map +1 -1
  211. package/dist/store/portable-bundle-scan.d.ts +3 -2
  212. package/dist/store/portable-bundle-scan.d.ts.map +1 -1
  213. package/dist/store/portable-bundle-scan.js +7 -5
  214. package/dist/store/portable-bundle-scan.js.map +1 -1
  215. package/dist/store/portable-bundle.d.ts +1 -1
  216. package/dist/store/portable-bundle.d.ts.map +1 -1
  217. package/dist/store/portable-bundle.js +9 -1
  218. package/dist/store/portable-bundle.js.map +1 -1
  219. package/dist/store/repair-malformed-dbs.d.ts.map +1 -1
  220. package/dist/store/repair-malformed-dbs.js +36 -6
  221. package/dist/store/repair-malformed-dbs.js.map +1 -1
  222. package/dist/store/restore-marker.d.ts +20 -2
  223. package/dist/store/restore-marker.d.ts.map +1 -1
  224. package/dist/store/restore-marker.js +41 -1
  225. package/dist/store/restore-marker.js.map +1 -1
  226. package/dist/store/row-identity-flag.d.ts +9 -6
  227. package/dist/store/row-identity-flag.d.ts.map +1 -1
  228. package/dist/store/row-identity-flag.js +10 -7
  229. package/dist/store/row-identity-flag.js.map +1 -1
  230. package/dist/store/row-identity-registry.d.ts +4 -3
  231. package/dist/store/row-identity-registry.d.ts.map +1 -1
  232. package/dist/store/row-identity-registry.js +132 -31
  233. package/dist/store/row-identity-registry.js.map +1 -1
  234. package/dist/store/row-identity.d.ts +81 -14
  235. package/dist/store/row-identity.d.ts.map +1 -1
  236. package/dist/store/row-identity.js +238 -32
  237. package/dist/store/row-identity.js.map +1 -1
  238. package/dist/store/schema/cleo-shared/brain.d.ts +368 -0
  239. package/dist/store/schema/cleo-shared/brain.d.ts.map +1 -1
  240. package/dist/store/schema/cleo-shared/brain.js +104 -2
  241. package/dist/store/schema/cleo-shared/brain.js.map +1 -1
  242. package/dist/store/sync/apply/applier.d.ts +5 -0
  243. package/dist/store/sync/apply/applier.d.ts.map +1 -1
  244. package/dist/store/sync/apply/applier.js +5 -1
  245. package/dist/store/sync/apply/applier.js.map +1 -1
  246. package/dist/store/sync/apply/parent-delete.d.ts.map +1 -1
  247. package/dist/store/sync/apply/parent-delete.js +4 -0
  248. package/dist/store/sync/apply/parent-delete.js.map +1 -1
  249. package/dist/store/sync/capture.d.ts +13 -1
  250. package/dist/store/sync/capture.d.ts.map +1 -1
  251. package/dist/store/sync/capture.js +31 -3
  252. package/dist/store/sync/capture.js.map +1 -1
  253. package/dist/store/sync/flags.d.ts +14 -5
  254. package/dist/store/sync/flags.d.ts.map +1 -1
  255. package/dist/store/sync/flags.js +20 -8
  256. package/dist/store/sync/flags.js.map +1 -1
  257. package/dist/store/sync/genesis.d.ts +130 -0
  258. package/dist/store/sync/genesis.d.ts.map +1 -0
  259. package/dist/store/sync/genesis.js +337 -0
  260. package/dist/store/sync/genesis.js.map +1 -0
  261. package/dist/store/sync/repair.d.ts +2 -2
  262. package/dist/store/sync/repair.d.ts.map +1 -1
  263. package/dist/store/sync/repair.js +55 -15
  264. package/dist/store/sync/repair.js.map +1 -1
  265. package/dist/store/sync/sealer.d.ts +14 -0
  266. package/dist/store/sync/sealer.d.ts.map +1 -1
  267. package/dist/store/sync/sealer.js +27 -6
  268. package/dist/store/sync/sealer.js.map +1 -1
  269. package/dist/store/sync/segments.d.ts +124 -0
  270. package/dist/store/sync/segments.d.ts.map +1 -0
  271. package/dist/store/sync/segments.js +267 -0
  272. package/dist/store/sync/segments.js.map +1 -0
  273. package/dist/store/sync/sequencing.d.ts +44 -1
  274. package/dist/store/sync/sequencing.d.ts.map +1 -1
  275. package/dist/store/sync/sequencing.js +59 -2
  276. package/dist/store/sync/sequencing.js.map +1 -1
  277. package/dist/store/sync/timestamp-canon.d.ts +6 -3
  278. package/dist/store/sync/timestamp-canon.d.ts.map +1 -1
  279. package/dist/store/sync/timestamp-canon.js +55 -4
  280. package/dist/store/sync/timestamp-canon.js.map +1 -1
  281. package/dist/store/sync/txn-signing.d.ts +69 -0
  282. package/dist/store/sync/txn-signing.d.ts.map +1 -0
  283. package/dist/store/sync/txn-signing.js +81 -0
  284. package/dist/store/sync/txn-signing.js.map +1 -0
  285. package/dist/store/table-classification.d.ts.map +1 -1
  286. package/dist/store/table-classification.js +30 -0
  287. package/dist/store/table-classification.js.map +1 -1
  288. package/dist/store/twin-collapse.d.ts.map +1 -1
  289. package/dist/store/twin-collapse.js +65 -2
  290. package/dist/store/twin-collapse.js.map +1 -1
  291. package/dist/system/backup.d.ts +3 -2
  292. package/dist/system/backup.d.ts.map +1 -1
  293. package/dist/system/backup.js +43 -17
  294. package/dist/system/backup.js.map +1 -1
  295. package/dist/system/health.d.ts.map +1 -1
  296. package/dist/system/health.js +2 -1
  297. package/dist/system/health.js.map +1 -1
  298. package/dist/tasks/affected-packages.d.ts +26 -0
  299. package/dist/tasks/affected-packages.d.ts.map +1 -1
  300. package/dist/tasks/affected-packages.js +95 -28
  301. package/dist/tasks/affected-packages.js.map +1 -1
  302. package/dist/tasks/change-set.d.ts.map +1 -1
  303. package/dist/tasks/change-set.js +14 -4
  304. package/dist/tasks/change-set.js.map +1 -1
  305. package/dist/tasks/done-plan.d.ts.map +1 -1
  306. package/dist/tasks/done-plan.js +50 -4
  307. package/dist/tasks/done-plan.js.map +1 -1
  308. package/dist/tasks/test-run-binding.d.ts +14 -0
  309. package/dist/tasks/test-run-binding.d.ts.map +1 -1
  310. package/dist/tasks/test-run-binding.js +35 -4
  311. package/dist/tasks/test-run-binding.js.map +1 -1
  312. package/dist/upgrade.d.ts +6 -0
  313. package/dist/upgrade.d.ts.map +1 -1
  314. package/dist/upgrade.js +58 -11
  315. package/dist/upgrade.js.map +1 -1
  316. package/migrations/drizzle-cleo-global/20261010120000_t12894-brain-row-uids/migration.sql +88 -0
  317. package/migrations/drizzle-cleo-project/20261010120000_t12894-brain-row-uids/migration.sql +92 -0
  318. package/migrations/sync-journal/20261007120000_t12343-segment-outbox/migration.sql +38 -0
  319. package/package.json +13 -13
  320. package/templates/CLEO-INJECTION.md +1 -1
  321. package/templates/CLEO-REFERENCE.md +2 -2
@@ -0,0 +1,470 @@
1
+ /**
2
+ * The live store's own bare legacy family as a reconcile source.
3
+ *
4
+ * A `cleo.db` from before consolidation can hold rows in bare tables
5
+ * (`tasks`, `task_labels`, `sessions`, …) that the runtime no longer reads.
6
+ * Two reconcile modes carry them into the prefixed tables:
7
+ *
8
+ * - full mode, while `tasks_tasks` is still EMPTY (the project never ran on
9
+ * the consolidated store): every bare row (T12346);
10
+ * - bare-strands mode (T13309), once `tasks_tasks` is populated: only bare
11
+ * rows whose key the prefixed twin lacks, plus bare tasks whose id a
12
+ * DIFFERENT live task took (renumbered by the caller). A row that is, or
13
+ * refers to, a task the live store recorded as deleted is skipped and named,
14
+ * never resurrected, and so is a row referring to a task neither side holds.
15
+ *
16
+ * @module
17
+ * @task T12346
18
+ * @task T13309
19
+ */
20
+ import { join } from 'node:path';
21
+ import { openCleoDbSnapshot } from '../open-cleo-db.js';
22
+ import { bareTableDigest } from '../sync/flags.js';
23
+ import { taskReferenceColumns } from '../task-reference-columns.js';
24
+ import { legacyRowProjection } from './column-transforms.js';
25
+ import { EXODUS_RECEIPTS_TABLE, identityImageSql } from './recovery.js';
26
+ import { resolveConsolidatedTableName } from './table-name-map.js';
27
+ import { countRows, hasTable, ident } from './table-order.js';
28
+ import { remapCollidingTaskIds } from './task-id-remap.js';
29
+ import { BARE_SOURCE_NAME, BARE_STRANDS_SOURCE_NAME } from './types.js';
30
+ /**
31
+ * Whether a bare legacy table in the live `cleo.db` is one the runtime NO LONGER
32
+ * reads — i.e. its runtime target is a different (prefixed) table. Derived from
33
+ * the runtime's own table bindings via `resolveTarget`, never a hand-kept list:
34
+ * `tasks` → `tasks_tasks` is dead-bare; `audit_log` → `audit_log` is live.
35
+ *
36
+ * @task T12346
37
+ */
38
+ function isRuntimeDeadBare(resolveTarget, table) {
39
+ const target = resolveTarget('tasks', table);
40
+ return target.kind !== 'skip' && target.targetName !== table;
41
+ }
42
+ /** The dead bare tables of the live store that hold rows, with their DDL. */
43
+ function deadBareTables(live, resolveTarget) {
44
+ return live
45
+ .prepare("SELECT name, sql FROM main.sqlite_master WHERE type='table' AND sql IS NOT NULL")
46
+ .all().filter((t) => isRuntimeDeadBare(resolveTarget, t.name) && countRows(live, 'main', t.name) > 0);
47
+ }
48
+ /** Whether `tasks_tasks` holds a row (the project has run on the consolidated store). */
49
+ function liveTaskGraphPopulated(live) {
50
+ return hasTable(live, 'main', 'tasks_tasks') && countRows(live, 'main', 'tasks_tasks') > 0;
51
+ }
52
+ /**
53
+ * The live store's own dead bare task-core family as a reconcile source — item
54
+ * 2 of T12319, found real by the T12346 sweep: a stranded `cleo.db` can hold
55
+ * rows in bare tables the runtime no longer reads that exist in NO legacy file
56
+ * (llmtxt: 1,972 `task_labels`; versionguard: 20 `task_dependencies`).
57
+ *
58
+ * Offered ONLY while the prefixed `tasks_tasks` is still empty — i.e. the
59
+ * project never ran on the consolidated store. Once it has, a bare row missing
60
+ * from the prefixed family may be one the runtime deliberately removed; the
61
+ * bare-strands mode ({@link bareStrandSource}) handles that case.
62
+ *
63
+ * @returns The descriptor (path = the materialised file), or `null`.
64
+ */
65
+ export async function bareTaskCoreSource(liveStorePath, resolveTarget, outDir) {
66
+ const live = openCleoDbSnapshot(liveStorePath, { readOnly: true });
67
+ let tables;
68
+ try {
69
+ if (liveTaskGraphPopulated(live.db))
70
+ return null;
71
+ tables = deadBareTables(live.db, resolveTarget);
72
+ }
73
+ finally {
74
+ live.close();
75
+ }
76
+ if (tables.length === 0)
77
+ return null;
78
+ const path = join(outDir, 'cleo-bare-task-core.db');
79
+ const kept = await materializeBareTables(liveStorePath, tables, path, outDir);
80
+ return kept > 0 ? { name: BARE_SOURCE_NAME, path, targetScope: 'project' } : null;
81
+ }
82
+ /**
83
+ * Copy `tables` (rows and DDL) out of the live store into a standalone file at
84
+ * `path`, minus rows a FRESH project store already holds.
85
+ *
86
+ * Built table by table from the live file's own DDL (a whole-file copy cannot
87
+ * be pruned: sqlite-vec `vec0` tables cannot be dropped without their module).
88
+ * Rows a fresh project store already holds (e.g. the lineage's 18 backfilled
89
+ * `commits`) are not project data and are excluded — measured by building such
90
+ * a store, not by guessing — so a reconciled project ends up with exactly what
91
+ * a fresh one has there, the same as exodus-on-open. Tables left empty are
92
+ * dropped, so the post-copy verification judges exactly what was copied.
93
+ *
94
+ * @returns The rows kept.
95
+ */
96
+ async function materializeBareTables(liveStorePath, tables, path, outDir) {
97
+ const seedPath = await buildFreshProjectStore(join(outDir, 'fresh-project-seed.db'));
98
+ const snap = openCleoDbSnapshot(path, { readOnly: false });
99
+ let kept = 0;
100
+ try {
101
+ snap.db.exec('PRAGMA foreign_keys=OFF');
102
+ snap.db.exec(`ATTACH DATABASE '${liveStorePath.replace(/'/g, "''")}' AS live`);
103
+ snap.db.exec(`ATTACH DATABASE '${seedPath.replace(/'/g, "''")}' AS seed`);
104
+ for (const t of tables) {
105
+ snap.db.exec(t.sql);
106
+ snap.db.exec(`INSERT INTO main.${ident(t.name)} SELECT * FROM live.${ident(t.name)}`);
107
+ if (hasTable(snap.db, 'seed', t.name)) {
108
+ const seedCols = new Set(snap.db.prepare(`PRAGMA seed.table_info(${ident(t.name)})`).all().map((c) => c.name));
109
+ const cols = snap.db.prepare(`PRAGMA main.table_info(${ident(t.name)})`).all();
110
+ // A seed row is identified by its KEY: seeded rows carry the time they
111
+ // were seeded (e.g. `commits.created_at`), so whole-row equality never
112
+ // matches a seed written on another day. Keyless tables compare rows.
113
+ const pk = cols.filter((c) => c.pk > 0 && seedCols.has(c.name)).map((c) => c.name);
114
+ const match = (pk.length > 0 ? pk : cols.map((c) => c.name).filter((c) => seedCols.has(c)))
115
+ .map((c) => `s.${ident(c)} IS m.${ident(c)}`)
116
+ .join(' AND ');
117
+ if (match.length > 0)
118
+ snap.db.exec(`DELETE FROM main.${ident(t.name)} AS m WHERE EXISTS (SELECT 1 FROM seed.${ident(t.name)} s WHERE ${match})`);
119
+ }
120
+ const n = countRows(snap.db, 'main', t.name);
121
+ if (n === 0)
122
+ snap.db.exec(`DROP TABLE main.${ident(t.name)}`);
123
+ kept += n;
124
+ }
125
+ snap.db.exec('DETACH DATABASE live');
126
+ snap.db.exec('DETACH DATABASE seed');
127
+ }
128
+ finally {
129
+ snap.close();
130
+ }
131
+ return kept;
132
+ }
133
+ /**
134
+ * Build a FRESH project store — consolidated schema plus the tasks-domain
135
+ * lineage, exactly as a brand-new project gets it — and return its path. Its
136
+ * rows are, by construction, only what CLEO seeds (e.g. the 18 backfilled
137
+ * `commits`), never project data.
138
+ */
139
+ async function buildFreshProjectStore(path) {
140
+ const { getDualScopeNativeDb, openDualScopeDbAtPath } = await import('../dual-scope-db.js');
141
+ const { ensureTasksDomainTables, seedTasksMeta } = await import('../sqlite.js');
142
+ const handle = await openDualScopeDbAtPath('project', path, undefined, { dedicated: true });
143
+ try {
144
+ const native = getDualScopeNativeDb(handle);
145
+ ensureTasksDomainTables(native, path);
146
+ seedTasksMeta(native);
147
+ }
148
+ finally {
149
+ handle.close();
150
+ }
151
+ return path;
152
+ }
153
+ /**
154
+ * Audit actions that record a task's deletion, the whole vocabulary as of
155
+ * T13309: `cleo delete` writes `task_deleted` (archiving keeps the row, so
156
+ * `tasks_archived` is no deletion). Sessions have none — session GC and
157
+ * cleanup remove rows without an audit record — so a bare session row is
158
+ * copied unless its key is present.
159
+ */
160
+ const TASK_DELETION_ACTIONS = ['task_deleted'];
161
+ /** A renumbering that changes nothing (no shadowed bare task, or no source). */
162
+ const NO_REMAP = {
163
+ sources: [],
164
+ remaps: [],
165
+ undecided: null,
166
+ remappedPath: null,
167
+ };
168
+ /**
169
+ * How a bare row (alias `s`) produces the twin's primary key: `match` joins it
170
+ * to a twin row (alias `t`), `exprs` are the key values in key order. `null`
171
+ * when the bare table cannot produce every key column.
172
+ */
173
+ function twinKey(db, bareSchema, bare, twinSchema, twin) {
174
+ const pk = db.prepare(`PRAGMA ${ident(twinSchema)}.table_info(${ident(twin)})`).all()
175
+ .filter((c) => c.pk > 0)
176
+ .sort((a, b) => a.pk - b.pk)
177
+ .map((c) => c.name);
178
+ const bareCols = new Set(db.prepare(`PRAGMA ${ident(bareSchema)}.table_info(${ident(bare)})`).all().map((c) => c.name));
179
+ // Compared in the PROJECTED form the copy writes (T12346), as countMissing does.
180
+ const projection = legacyRowProjection(twin, bare);
181
+ const keyOf = (c) => {
182
+ const project = projection.get(c);
183
+ if (project)
184
+ return project((name) => `s.${ident(name)}`);
185
+ return bareCols.has(c) ? `s.${ident(c)}` : null;
186
+ };
187
+ const exprs = pk.map(keyOf);
188
+ if (pk.length === 0 || !exprs.every((e) => e !== null))
189
+ return null;
190
+ return {
191
+ match: pk.map((c, i) => `t.${ident(c)} = ${exprs[i]}`).join(' AND '),
192
+ exprs,
193
+ };
194
+ }
195
+ /**
196
+ * The live store's stranded bare rows as a reconcile source (T13309): for a
197
+ * project already running on the consolidated store, the bare rows whose key
198
+ * the prefixed twin lacks, and the bare tasks a different live task shadows by
199
+ * id (kept so the caller's renumbering recovers them).
200
+ *
201
+ * The shadowed tasks are renumbered first, with every reference re-pointed,
202
+ * so a child row is judged by the key it is copied under, never by the key of
203
+ * the live holder's child (T13333). An undecided collision is not renumbered:
204
+ * the caller withholds the task graph.
205
+ *
206
+ * Skipped, and named in `skipped`: a row that is, or whose task reference
207
+ * points at, a task the live store recorded as deleted (`tasks_audit_log`
208
+ * action `task_deleted`), a row whose task reference neither the live store
209
+ * nor the copy holds (`parent-absent`), and, to a fixed point, a row whose
210
+ * task reference is a bare task this run skipped (`parent-skipped`, T13334).
211
+ * A deletion record of a shadowed id, or of a fresh id a renumbering took,
212
+ * belongs to another task and skips nothing. A table whose twin key the bare
213
+ * table cannot produce keeps every row, and the post-copy verification judges
214
+ * it.
215
+ *
216
+ * @param liveStorePath - The live project `cleo.db` (read only).
217
+ * @param resolveTarget - Runtime target resolver.
218
+ * @param outDir - Scratch directory for the materialised file.
219
+ * @param cleoDir - The project's `.cleo`, where earlier receipts live.
220
+ */
221
+ export async function bareStrandSource(liveStorePath, resolveTarget, outDir, cleoDir) {
222
+ const live = openCleoDbSnapshot(liveStorePath, { readOnly: true });
223
+ let tables;
224
+ let deleted = [];
225
+ let accounted;
226
+ const none = { source: null, skipped: [], remap: NO_REMAP, accountingPath: null };
227
+ try {
228
+ if (!liveTaskGraphPopulated(live.db))
229
+ return { ...none, accounted: [], populated: false };
230
+ tables = deadBareTables(live.db, resolveTarget);
231
+ accounted = tables.map((t) => bareTableDigest(live.db, 'main', t.name));
232
+ if (hasTable(live.db, 'main', 'tasks_audit_log')) {
233
+ deleted = live.db
234
+ .prepare(`SELECT DISTINCT task_id AS id FROM main.tasks_audit_log WHERE action IN (${TASK_DELETION_ACTIONS.map(() => '?').join(', ')})`)
235
+ .all(...TASK_DELETION_ACTIONS).map((r) => r.id);
236
+ }
237
+ }
238
+ finally {
239
+ live.close();
240
+ }
241
+ if (tables.length === 0)
242
+ return { ...none, accounted, populated: true };
243
+ const materialized = join(outDir, 'cleo-bare-strands.db');
244
+ await materializeBareTables(liveStorePath, tables, materialized, outDir);
245
+ // Renumber BEFORE judging any row (T13333): a child of a shadowed task keyed
246
+ // by the shadowed id would otherwise match the live holder's child.
247
+ const remap = remapCollidingTaskIds(liveStorePath, [{ name: 'tasks', path: materialized, targetScope: 'project' }], outDir, cleoDir);
248
+ // An undecided collision withholds the whole task graph, so the caller
249
+ // reads the rows as they are (as a full run reads its original files).
250
+ const path = remap.undecided === null ? (remap.remappedPath ?? materialized) : materialized;
251
+ const shadowed = [...remap.remaps.map((r) => r.legacyId), ...(remap.undecided?.ids ?? [])];
252
+ // A fresh id is new to this store: a deletion record of it is another task's.
253
+ const fresh = remap.undecided === null
254
+ ? remap.remaps.filter((r) => !r.alreadyRecovered).map((r) => r.newId)
255
+ : [];
256
+ // Everything not listed as skipped, renumbered (T13333).
257
+ const accountingPath = join(outDir, 'cleo-bare-strands-accounting.db');
258
+ const skipped = [];
259
+ const snap = openCleoDbSnapshot(path, { readOnly: false, applyPragmas: false });
260
+ let kept = 0;
261
+ try {
262
+ const db = snap.db;
263
+ db.exec(`VACUUM INTO '${accountingPath.replace(/'/g, "''")}'`);
264
+ db.exec('PRAGMA foreign_keys=OFF');
265
+ db.exec(`ATTACH DATABASE '${liveStorePath.replace(/'/g, "''")}' AS live`);
266
+ db.exec(`ATTACH DATABASE '${accountingPath.replace(/'/g, "''")}' AS acct`);
267
+ db.exec('CREATE TEMP TABLE strand_shadowed (id TEXT PRIMARY KEY)');
268
+ db.exec('CREATE TEMP TABLE strand_deleted (id TEXT PRIMARY KEY)');
269
+ const addShadowed = db.prepare('INSERT OR IGNORE INTO temp.strand_shadowed VALUES (?)');
270
+ for (const id of shadowed)
271
+ addShadowed.run(id);
272
+ const addDeleted = db.prepare('INSERT OR IGNORE INTO temp.strand_deleted VALUES (?)');
273
+ for (const id of deleted)
274
+ addDeleted.run(id);
275
+ // A shadowed id's deletion record is the LIVE holder's, a different task;
276
+ // a fresh id's is a task deleted before the renumbering took its id.
277
+ db.exec('DELETE FROM temp.strand_deleted WHERE id IN (SELECT id FROM temp.strand_shadowed)');
278
+ const dropFresh = db.prepare('DELETE FROM temp.strand_deleted WHERE id = ?');
279
+ for (const id of fresh)
280
+ dropFresh.run(id);
281
+ const present = () => tables.map((t) => t.name).filter((name) => hasTable(db, 'main', name));
282
+ const twinOf = (bare) => {
283
+ const r = resolveTarget('tasks', bare);
284
+ return r.kind === 'skip' ? bare : r.targetName;
285
+ };
286
+ const localName = localNameOf(db);
287
+ // A JSON array of task ids is history, never a dangling reference (T13377).
288
+ const refs = taskReferenceColumns(db, localName).filter((r) => !r.jsonArray);
289
+ const drop = (table, column, where, reason) => {
290
+ const ids = db
291
+ .prepare(`SELECT DISTINCT ${ident(column)} AS id FROM main.${ident(table)} AS s WHERE ${where} ORDER BY 1`)
292
+ .all().map((r) => String(r.id));
293
+ if (ids.length === 0)
294
+ return;
295
+ // Every skipped row by its key, so the plan names each one (T13309).
296
+ const info = db.prepare(`PRAGMA main.table_info(${ident(table)})`).all();
297
+ const pk = info
298
+ .filter((c) => c.pk > 0)
299
+ .sort((a, b) => a.pk - b.pk)
300
+ .map((c) => c.name);
301
+ const keyNames = pk.length > 0 ? pk : info.map((c) => c.name);
302
+ const keyCols = keyNames.map(ident).join(', ');
303
+ const keys = db
304
+ .prepare(`SELECT ${keyCols} FROM main.${ident(table)} AS s WHERE ${where} ORDER BY 1`)
305
+ .all().map((row) => JSON.stringify(Object.values(row)));
306
+ // A listed row leaves the accounting copy too: only it may go uncopied.
307
+ if (hasTable(db, 'acct', table)) {
308
+ const same = keyNames.map((c) => `a.${ident(c)} IS s.${ident(c)}`).join(' AND ');
309
+ db.exec(`DELETE FROM acct.${ident(table)} AS a WHERE EXISTS (SELECT 1 FROM main.${ident(table)} AS s WHERE (${where}) AND ${same})`);
310
+ }
311
+ const rows = db.prepare(`DELETE FROM main.${ident(table)} AS s WHERE ${where}`).run().changes;
312
+ // One entry per table and reason, however many passes found its rows.
313
+ const prior = skipped.find((c) => c.sourceTable === table && c.reason === reason);
314
+ if (prior) {
315
+ prior.rows += Number(rows);
316
+ prior.ids = [...new Set([...(prior.ids ?? []), ...ids])].sort();
317
+ prior.keys = [...(prior.keys ?? []), ...keys];
318
+ return;
319
+ }
320
+ skipped.push({
321
+ sourceDb: BARE_STRANDS_SOURCE_NAME,
322
+ sourceTable: table,
323
+ targetTable: twinOf(table),
324
+ rows: Number(rows),
325
+ reason,
326
+ ids,
327
+ keys,
328
+ });
329
+ };
330
+ // Every bare task before any is judged: a reference to one this run then
331
+ // skips is `parent-skipped`, to one no side ever held `parent-absent`.
332
+ db.exec(`CREATE TEMP TABLE strand_tasks AS SELECT id FROM ${hasTable(db, 'main', 'tasks') ? 'main.tasks' : '(SELECT NULL AS id WHERE 0)'}`);
333
+ // 1. Rows the twin already holds by key are not stranded (an undecided
334
+ // shadowed task, left unrenumbered, is not the live holder). A row an earlier reconcile
335
+ // copied into the twin (its committed copy receipt, in the store) that
336
+ // the twin no longer holds was deleted since: copying it again would
337
+ // resurrect it.
338
+ const receipts = hasTable(db, 'live', EXODUS_RECEIPTS_TABLE);
339
+ for (const bare of present()) {
340
+ const twin = twinOf(bare);
341
+ if (!hasTable(db, 'live', twin))
342
+ continue;
343
+ const key = twinKey(db, 'main', bare, 'live', twin);
344
+ if (key === null)
345
+ continue;
346
+ const keep = bare === 'tasks' ? ' AND s.id NOT IN (SELECT id FROM temp.strand_shadowed)' : '';
347
+ db.exec(`DELETE FROM main.${ident(bare)} AS s WHERE EXISTS (SELECT 1 FROM live.${ident(twin)} t WHERE ${key.match})${keep}`);
348
+ if (receipts && hasTable(db, 'main', bare)) {
349
+ drop(bare, firstKeyColumn(db, bare), `${identityImageSql(key.exprs)} IN (SELECT identity_json FROM live.${ident(EXODUS_RECEIPTS_TABLE)} ` +
350
+ `WHERE target_table = '${twin.replace(/'/g, "''")}' AND source_table = '${bare.replace(/'/g, "''")}' ` +
351
+ `AND state = 'committed')${keep}`, 'carried-then-deleted');
352
+ }
353
+ }
354
+ // 2. A deleted task, or a row referring to one, would be resurrected.
355
+ if (hasTable(db, 'main', 'tasks')) {
356
+ drop('tasks', 'id', 'id IN (SELECT id FROM temp.strand_deleted)', 'deleted-live');
357
+ }
358
+ for (const ref of refs) {
359
+ if (!hasTable(db, 'main', ref.table))
360
+ continue;
361
+ drop(ref.table, ref.column, `${ident(ref.column)} IN (SELECT id FROM temp.strand_deleted)`, 'deleted-live');
362
+ }
363
+ // 3. A reference to a task neither side holds would dangle. Repeated to a
364
+ // fixed point (T13334): skipping a task strands every row referring to
365
+ // it, whatever the order of the reference columns.
366
+ const copiesTasks = hasTable(db, 'main', 'tasks');
367
+ let grew;
368
+ do {
369
+ grew = false;
370
+ for (const ref of refs) {
371
+ if (!hasTable(db, 'main', ref.table))
372
+ continue;
373
+ const c = ident(ref.column);
374
+ const inCopy = copiesTasks ? ` AND ${c} NOT IN (SELECT id FROM main.tasks)` : '';
375
+ const dangling = `${c} IS NOT NULL AND ${c} NOT IN (SELECT id FROM live.tasks_tasks)${inCopy}`;
376
+ const before = skipped.reduce((n, s) => n + s.rows, 0);
377
+ drop(ref.table, ref.column, `${dangling} AND ${c} IN (SELECT id FROM temp.strand_tasks)`, 'parent-skipped');
378
+ drop(ref.table, ref.column, `${dangling} AND ${c} NOT IN (SELECT id FROM temp.strand_tasks)`, 'parent-absent');
379
+ if (skipped.reduce((n, s) => n + s.rows, 0) > before)
380
+ grew = true;
381
+ }
382
+ } while (grew);
383
+ for (const bare of present()) {
384
+ const n = countRows(db, 'main', bare);
385
+ if (n === 0)
386
+ db.exec(`DROP TABLE main.${ident(bare)}`);
387
+ kept += n;
388
+ }
389
+ db.exec('DETACH DATABASE acct');
390
+ db.exec('DETACH DATABASE live');
391
+ }
392
+ finally {
393
+ snap.close();
394
+ }
395
+ const source = kept > 0 ? { name: BARE_STRANDS_SOURCE_NAME, path, targetScope: 'project' } : null;
396
+ return {
397
+ source,
398
+ skipped,
399
+ accounted,
400
+ populated: true,
401
+ // Under the strands source name, which the receipt and later runs read.
402
+ remap: {
403
+ sources: source ? [source] : [],
404
+ remaps: remap.remaps.map((r) => ({ ...r, sourceDb: BARE_STRANDS_SOURCE_NAME })),
405
+ undecided: remap.undecided && { ...remap.undecided, sourceDb: BARE_STRANDS_SOURCE_NAME },
406
+ remappedPath: path === materialized ? null : path,
407
+ },
408
+ accountingPath,
409
+ };
410
+ }
411
+ /**
412
+ * Task references in the copied strands source that the live store cannot
413
+ * resolve after the copy: `table.column -> id` for each (T13334). Empty when
414
+ * every reference a copied row carries names a live task.
415
+ *
416
+ * Only scalar references are judged. A JSON array of task ids (a session's
417
+ * `tasks_completed_json`, `tasks_created_json`) is history: an id in it whose
418
+ * task is gone is valid, as the runtime keeps it (deleting a task leaves it
419
+ * listed) and the sync wire drops it rather than rejecting the row (T12798).
420
+ * A copied session listing a deleted task is therefore copied (T13377).
421
+ *
422
+ * @param liveStorePath - The live project `cleo.db` (read only).
423
+ * @param sourcePath - The strands source the run copied from.
424
+ */
425
+ export function danglingStrandReferences(liveStorePath, sourcePath) {
426
+ const snap = openCleoDbSnapshot(sourcePath, { readOnly: true, applyPragmas: false });
427
+ try {
428
+ const db = snap.db;
429
+ db.exec(`ATTACH DATABASE '${liveStorePath.replace(/'/g, "''")}' AS live`);
430
+ const out = [];
431
+ try {
432
+ for (const ref of taskReferenceColumns(db, localNameOf(db))) {
433
+ if (ref.jsonArray || !hasTable(db, 'main', ref.table))
434
+ continue;
435
+ const c = ident(ref.column);
436
+ const ids = db
437
+ .prepare(`SELECT DISTINCT ${c} AS id FROM main.${ident(ref.table)} WHERE ${c} IS NOT NULL AND ${c} NOT IN (SELECT id FROM live.tasks_tasks) ORDER BY 1`)
438
+ .all();
439
+ for (const { id } of ids)
440
+ out.push(`${ref.table}.${ref.column} -> ${String(id)}`);
441
+ }
442
+ }
443
+ finally {
444
+ db.exec('DETACH DATABASE live');
445
+ }
446
+ return out;
447
+ }
448
+ finally {
449
+ snap.close();
450
+ }
451
+ }
452
+ /** The first primary-key column of a bare-family table (its first column if keyless). */
453
+ function firstKeyColumn(db, table) {
454
+ const info = db.prepare(`PRAGMA main.table_info(${ident(table)})`).all();
455
+ return (info.find((c) => c.pk === 1) ?? info[0])?.name ?? 'rowid';
456
+ }
457
+ /** Consolidated table name → its name in a bare-family file, by the exodus map. */
458
+ function localNameOf(db) {
459
+ const byConsolidated = new Map();
460
+ const tables = db
461
+ .prepare("SELECT name FROM main.sqlite_master WHERE type='table' AND name NOT LIKE 'sqlite_%'")
462
+ .all();
463
+ for (const { name } of tables) {
464
+ const r = resolveConsolidatedTableName('tasks', name);
465
+ if (r.kind !== 'skip')
466
+ byConsolidated.set(r.targetName, name);
467
+ }
468
+ return (consolidated) => byConsolidated.get(consolidated) ?? null;
469
+ }
470
+ //# sourceMappingURL=bare-family.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bare-family.js","sourceRoot":"","sources":["../../../src/store/exodus/bare-family.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"column-transforms.d.ts","sourceRoot":"","sources":["../../../src/store/exodus/column-transforms.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"column-transforms.d.ts","sourceRoot":"","sources":["../../../src/store/exodus/column-transforms.ts"],"names":[],"mappings":"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"}
@@ -169,20 +169,27 @@ export const ENUM_NORMALIZATIONS = new Map([
169
169
  ` ELSE 'chore'` +
170
170
  ` END`,
171
171
  ],
172
- // --- tasks_tasks.archive_reason (T12319) ---------------------------------
172
+ // --- tasks_tasks.archive_reason (T12319, T12711) -------------------------
173
173
  // A legacy tasks.db that never ran the T1408 migration still carries
174
- // pre-enum reasons ('deleted', 'completed', 'recovered', 'orphan-cleanup',
175
- // 'synthetic-test-artifact', …) that the 6-value CHECK rejects — so
176
- // `INSERT OR IGNORE` silently dropped those tasks (23 of 849 in llmtxt, 4,692
177
- // of 5,330 in claude-todo) and the acceptance criteria pointing at them then
178
- // aborted the whole migration. Apply exactly the T1408 backfill rule
179
- // (`drizzle-tasks/20260424000000_t1408-archive-reason-enum`): every non-NULL
180
- // out-of-enum value becomes the migration-only tombstone 'completed-unverified'.
174
+ // pre-enum reasons that the 6-value CHECK rejects — so `INSERT OR IGNORE`
175
+ // silently dropped those tasks (23 of 849 in llmtxt, 4,692 of 5,330 in
176
+ // claude-todo) and the acceptance criteria pointing at them then aborted the
177
+ // whole migration. Each known legacy reason maps to the member that says the
178
+ // same thing (T12711); the enum is never widened:
179
+ // completed → completed-unverified
180
+ // deleted, orphan-cleanup, synthetic-test-artifact → cancelled
181
+ // recovered → reconciled
182
+ // Any other non-NULL out-of-enum value takes the T1408 backfill rule
183
+ // (`drizzle-tasks/20260424000000_t1408-archive-reason-enum`): the
184
+ // migration-only tombstone 'completed-unverified'. Every mapped row keeps its
185
+ // legacy value in `_exodus_recovery_value_map` (T12711).
181
186
  [
182
187
  'tasks_tasks.archive_reason',
183
188
  (src) => `CASE` +
184
189
  ` WHEN ${src} IS NULL THEN NULL` +
185
190
  ` WHEN ${src} IN ('verified', 'reconciled', 'superseded', 'shadowed', 'cancelled', 'completed-unverified') THEN ${src}` +
191
+ ` WHEN ${src} IN ('deleted', 'orphan-cleanup', 'synthetic-test-artifact') THEN 'cancelled'` +
192
+ ` WHEN ${src} = 'recovered' THEN 'reconciled'` +
186
193
  ` ELSE 'completed-unverified'` +
187
194
  ` END`,
188
195
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"column-transforms.js","sourceRoot":"","sources":["../../../src/store/exodus/column-transforms.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"column-transforms.js","sourceRoot":"","sources":["../../../src/store/exodus/column-transforms.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,8 @@ export interface ExodusScopeHealth {
35
35
  readonly markerPresent: boolean;
36
36
  readonly legacySources: readonly ExodusSourceHealth[];
37
37
  readonly strandedResidue: readonly string[];
38
+ /** What the cutover's verify reported beyond data continuity, from the marker (T12711). */
39
+ readonly verifyIssues: readonly string[];
38
40
  }
39
41
  /** Full read-only exodus health report. */
40
42
  export interface ExodusHealth {
@@ -1 +1 @@
1
- {"version":3,"file":"health.d.ts","sourceRoot":"","sources":["../../../src/store/exodus/health.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAMH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAK9C,iCAAiC;AACjC,MAAM,MAAM,gBAAgB,GACxB,QAAQ,GACR,mBAAmB,GACnB,iBAAiB,GACjB,cAAc,CAAC;AAEnB,8CAA8C;AAC9C,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,mFAAmF;IACnF,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB;AAED,8CAA8C;AAC9C,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC;IACjC,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACtD,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7C;AAED,2CAA2C;AAC3C,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,kDAAkD;IAClD,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,sEAAsE;IACtE,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,wEAAwE;IACxE,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,0EAA0E;IAC1E,QAAQ,CAAC,cAAc,EAAE,aAAa,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,WAAW,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5F,4CAA4C;IAC5C,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7C;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,YAAY,CA+GvE"}
1
+ {"version":3,"file":"health.d.ts","sourceRoot":"","sources":["../../../src/store/exodus/health.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAMH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAK9C,iCAAiC;AACjC,MAAM,MAAM,gBAAgB,GACxB,QAAQ,GACR,mBAAmB,GACnB,iBAAiB,GACjB,cAAc,CAAC;AAEnB,8CAA8C;AAC9C,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,mFAAmF;IACnF,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB;AAED,8CAA8C;AAC9C,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC;IACjC,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACtD,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C,2FAA2F;IAC3F,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1C;AAED,2CAA2C;AAC3C,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,kDAAkD;IAClD,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,sEAAsE;IACtE,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,wEAAwE;IACxE,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,0EAA0E;IAC1E,QAAQ,CAAC,cAAc,EAAE,aAAa,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,WAAW,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5F,4CAA4C;IAC5C,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7C;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,YAAY,CAuHvE"}