chkit 0.1.2-beta.7 → 0.2.0-beta.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (322) hide show
  1. package/README.md +69 -56
  2. package/dist/bin/chkit.js +82 -31
  3. package/dist/bin/chkit.js.map +1 -1
  4. package/dist/commands/check/output.js +1 -1
  5. package/dist/commands/check/output.js.map +1 -1
  6. package/dist/commands/drift/command.d.ts.map +1 -1
  7. package/dist/commands/drift/command.js +9 -0
  8. package/dist/commands/drift/command.js.map +1 -1
  9. package/dist/commands/drift/compare.d.ts +52 -4
  10. package/dist/commands/drift/compare.d.ts.map +1 -1
  11. package/dist/commands/drift/compare.js +258 -49
  12. package/dist/commands/drift/compare.js.map +1 -1
  13. package/dist/commands/drift/payload.d.ts +1 -0
  14. package/dist/commands/drift/payload.d.ts.map +1 -1
  15. package/dist/commands/drift/payload.js +59 -10
  16. package/dist/commands/drift/payload.js.map +1 -1
  17. package/dist/commands/generate/command.d.ts.map +1 -1
  18. package/dist/commands/generate/command.js +73 -33
  19. package/dist/commands/generate/command.js.map +1 -1
  20. package/dist/commands/generate/cutover.d.ts +56 -0
  21. package/dist/commands/generate/cutover.d.ts.map +1 -0
  22. package/dist/commands/generate/cutover.js +138 -0
  23. package/dist/commands/generate/cutover.js.map +1 -0
  24. package/dist/commands/generate/output.d.ts +3 -2
  25. package/dist/commands/generate/output.d.ts.map +1 -1
  26. package/dist/commands/generate/output.js +17 -2
  27. package/dist/commands/generate/output.js.map +1 -1
  28. package/dist/commands/generate/plan-pipeline.d.ts.map +1 -1
  29. package/dist/commands/generate/plan-pipeline.js +35 -36
  30. package/dist/commands/generate/plan-pipeline.js.map +1 -1
  31. package/dist/commands/init.d.ts +2 -0
  32. package/dist/commands/init.d.ts.map +1 -1
  33. package/dist/commands/init.js +21 -4
  34. package/dist/commands/init.js.map +1 -1
  35. package/dist/commands/migrate/abandon.d.ts +39 -0
  36. package/dist/commands/migrate/abandon.d.ts.map +1 -0
  37. package/dist/commands/migrate/abandon.js +76 -0
  38. package/dist/commands/migrate/abandon.js.map +1 -0
  39. package/dist/commands/migrate/apply.d.ts +10 -1
  40. package/dist/commands/migrate/apply.d.ts.map +1 -1
  41. package/dist/commands/migrate/apply.js +108 -10
  42. package/dist/commands/migrate/apply.js.map +1 -1
  43. package/dist/commands/migrate/async-apply.d.ts +11 -3
  44. package/dist/commands/migrate/async-apply.d.ts.map +1 -1
  45. package/dist/commands/migrate/async-apply.js +113 -27
  46. package/dist/commands/migrate/async-apply.js.map +1 -1
  47. package/dist/commands/migrate/command.d.ts +46 -1
  48. package/dist/commands/migrate/command.d.ts.map +1 -1
  49. package/dist/commands/migrate/command.js +159 -35
  50. package/dist/commands/migrate/command.js.map +1 -1
  51. package/dist/commands/migrate/empty.d.ts +8 -0
  52. package/dist/commands/migrate/empty.d.ts.map +1 -0
  53. package/dist/commands/migrate/empty.js +17 -0
  54. package/dist/commands/migrate/empty.js.map +1 -0
  55. package/dist/commands/migrate/errors.d.ts +22 -0
  56. package/dist/commands/migrate/errors.d.ts.map +1 -0
  57. package/dist/commands/migrate/errors.js +31 -0
  58. package/dist/commands/migrate/errors.js.map +1 -0
  59. package/dist/commands/migrate/output.d.ts +31 -0
  60. package/dist/commands/migrate/output.d.ts.map +1 -1
  61. package/dist/commands/migrate/output.js +120 -9
  62. package/dist/commands/migrate/output.js.map +1 -1
  63. package/dist/commands/migrate/prompts.d.ts +1 -0
  64. package/dist/commands/migrate/prompts.d.ts.map +1 -1
  65. package/dist/commands/migrate/prompts.js +3 -0
  66. package/dist/commands/migrate/prompts.js.map +1 -1
  67. package/dist/commands/migrate/recovery.d.ts +90 -0
  68. package/dist/commands/migrate/recovery.d.ts.map +1 -0
  69. package/dist/commands/migrate/recovery.js +163 -0
  70. package/dist/commands/migrate/recovery.js.map +1 -0
  71. package/dist/commands/migrate/retry.d.ts +37 -0
  72. package/dist/commands/migrate/retry.d.ts.map +1 -0
  73. package/dist/commands/migrate/retry.js +46 -0
  74. package/dist/commands/migrate/retry.js.map +1 -0
  75. package/dist/commands/migrate/settings.d.ts +8 -0
  76. package/dist/commands/migrate/settings.d.ts.map +1 -0
  77. package/dist/commands/migrate/settings.js +40 -0
  78. package/dist/commands/migrate/settings.js.map +1 -0
  79. package/dist/commands/plugin.d.ts.map +1 -1
  80. package/dist/commands/plugin.js +28 -4
  81. package/dist/commands/plugin.js.map +1 -1
  82. package/dist/commands/query.d.ts.map +1 -1
  83. package/dist/commands/query.js +11 -15
  84. package/dist/commands/query.js.map +1 -1
  85. package/dist/commands/registry.d.ts +2 -0
  86. package/dist/commands/registry.d.ts.map +1 -0
  87. package/dist/commands/registry.js +228 -0
  88. package/dist/commands/registry.js.map +1 -0
  89. package/dist/commands/snapshot/command.d.ts +3 -0
  90. package/dist/commands/snapshot/command.d.ts.map +1 -0
  91. package/dist/commands/snapshot/command.js +32 -0
  92. package/dist/commands/snapshot/command.js.map +1 -0
  93. package/dist/commands/snapshot/output.d.ts +24 -0
  94. package/dist/commands/snapshot/output.d.ts.map +1 -0
  95. package/dist/commands/snapshot/output.js +86 -0
  96. package/dist/commands/snapshot/output.js.map +1 -0
  97. package/dist/commands/snapshot/rebuild.d.ts +19 -0
  98. package/dist/commands/snapshot/rebuild.d.ts.map +1 -0
  99. package/dist/commands/snapshot/rebuild.js +94 -0
  100. package/dist/commands/snapshot/rebuild.js.map +1 -0
  101. package/dist/internal-plugins/core/plugin.d.ts.map +1 -1
  102. package/dist/internal-plugins/core/plugin.js +2 -0
  103. package/dist/internal-plugins/core/plugin.js.map +1 -1
  104. package/dist/registry/build.d.ts +17 -0
  105. package/dist/registry/build.d.ts.map +1 -0
  106. package/dist/registry/build.js +94 -0
  107. package/dist/registry/build.js.map +1 -0
  108. package/dist/registry/dependencies.d.ts +19 -0
  109. package/dist/registry/dependencies.d.ts.map +1 -0
  110. package/dist/registry/dependencies.js +105 -0
  111. package/dist/registry/dependencies.js.map +1 -0
  112. package/dist/registry/files.d.ts +4 -0
  113. package/dist/registry/files.d.ts.map +1 -0
  114. package/dist/registry/files.js +33 -0
  115. package/dist/registry/files.js.map +1 -0
  116. package/dist/registry/install.d.ts +55 -0
  117. package/dist/registry/install.d.ts.map +1 -0
  118. package/dist/registry/install.js +175 -0
  119. package/dist/registry/install.js.map +1 -0
  120. package/dist/registry/model.d.ts +172 -0
  121. package/dist/registry/model.d.ts.map +1 -0
  122. package/dist/registry/model.js +161 -0
  123. package/dist/registry/model.js.map +1 -0
  124. package/dist/registry/project-config.d.ts +18 -0
  125. package/dist/registry/project-config.d.ts.map +1 -0
  126. package/dist/registry/project-config.js +337 -0
  127. package/dist/registry/project-config.js.map +1 -0
  128. package/dist/registry/resolve.d.ts +7 -0
  129. package/dist/registry/resolve.d.ts.map +1 -0
  130. package/dist/registry/resolve.js +136 -0
  131. package/dist/registry/resolve.js.map +1 -0
  132. package/dist/runtime/argv.d.ts +3 -0
  133. package/dist/runtime/argv.d.ts.map +1 -0
  134. package/dist/runtime/argv.js +29 -0
  135. package/dist/runtime/argv.js.map +1 -0
  136. package/dist/runtime/command-dispatch.d.ts +2 -1
  137. package/dist/runtime/command-dispatch.d.ts.map +1 -1
  138. package/dist/runtime/command-dispatch.js +15 -7
  139. package/dist/runtime/command-dispatch.js.map +1 -1
  140. package/dist/runtime/config-merge.d.ts.map +1 -1
  141. package/dist/runtime/config-merge.js +2 -1
  142. package/dist/runtime/config-merge.js.map +1 -1
  143. package/dist/runtime/config.d.ts.map +1 -1
  144. package/dist/runtime/config.js +2 -1
  145. package/dist/runtime/config.js.map +1 -1
  146. package/dist/runtime/global-flags.d.ts +4 -0
  147. package/dist/runtime/global-flags.d.ts.map +1 -1
  148. package/dist/runtime/global-flags.js +1 -0
  149. package/dist/runtime/global-flags.js.map +1 -1
  150. package/dist/runtime/help.d.ts +1 -1
  151. package/dist/runtime/help.d.ts.map +1 -1
  152. package/dist/runtime/help.js +13 -4
  153. package/dist/runtime/help.js.map +1 -1
  154. package/dist/runtime/journal-store.d.ts.map +1 -1
  155. package/dist/runtime/journal-store.js +178 -42
  156. package/dist/runtime/journal-store.js.map +1 -1
  157. package/dist/runtime/json-output.d.ts +15 -1
  158. package/dist/runtime/json-output.d.ts.map +1 -1
  159. package/dist/runtime/json-output.js +43 -2
  160. package/dist/runtime/json-output.js.map +1 -1
  161. package/dist/runtime/migration-store.d.ts +1 -1
  162. package/dist/runtime/migration-store.d.ts.map +1 -1
  163. package/dist/runtime/migration-store.js +17 -16
  164. package/dist/runtime/migration-store.js.map +1 -1
  165. package/dist/runtime/plugin-runtime/executor-debug.d.ts.map +1 -1
  166. package/dist/runtime/plugin-runtime/executor-debug.js +10 -8
  167. package/dist/runtime/plugin-runtime/executor-debug.js.map +1 -1
  168. package/dist/runtime/plugin-runtime/loader.js +1 -1
  169. package/dist/runtime/plugin-runtime/loader.js.map +1 -1
  170. package/dist/runtime/safety-markers.d.ts +4 -2
  171. package/dist/runtime/safety-markers.d.ts.map +1 -1
  172. package/dist/runtime/safety-markers.js +4 -2
  173. package/dist/runtime/safety-markers.js.map +1 -1
  174. package/dist/runtime/schema-loader.d.ts +20 -1
  175. package/dist/runtime/schema-loader.d.ts.map +1 -1
  176. package/dist/runtime/schema-loader.js +26 -0
  177. package/dist/runtime/schema-loader.js.map +1 -1
  178. package/dist/runtime/snapshot-document.d.ts +33 -0
  179. package/dist/runtime/snapshot-document.d.ts.map +1 -0
  180. package/dist/runtime/snapshot-document.js +65 -0
  181. package/dist/runtime/snapshot-document.js.map +1 -0
  182. package/package.json +20 -7
  183. package/dist/bin/clickhouse-resource.d.ts +0 -4
  184. package/dist/bin/clickhouse-resource.d.ts.map +0 -1
  185. package/dist/bin/clickhouse-resource.js +0 -11
  186. package/dist/bin/clickhouse-resource.js.map +0 -1
  187. package/dist/bin/command-dispatch.d.ts +0 -13
  188. package/dist/bin/command-dispatch.d.ts.map +0 -1
  189. package/dist/bin/command-dispatch.js +0 -186
  190. package/dist/bin/command-dispatch.js.map +0 -1
  191. package/dist/bin/command-registry.d.ts +0 -34
  192. package/dist/bin/command-registry.d.ts.map +0 -1
  193. package/dist/bin/command-registry.js +0 -87
  194. package/dist/bin/command-registry.js.map +0 -1
  195. package/dist/bin/commands/check.d.ts +0 -3
  196. package/dist/bin/commands/check.d.ts.map +0 -1
  197. package/dist/bin/commands/check.js +0 -181
  198. package/dist/bin/commands/check.js.map +0 -1
  199. package/dist/bin/commands/codegen.d.ts +0 -2
  200. package/dist/bin/commands/codegen.d.ts.map +0 -1
  201. package/dist/bin/commands/codegen.js +0 -25
  202. package/dist/bin/commands/codegen.js.map +0 -1
  203. package/dist/bin/commands/drift.d.ts +0 -27
  204. package/dist/bin/commands/drift.d.ts.map +0 -1
  205. package/dist/bin/commands/drift.js +0 -220
  206. package/dist/bin/commands/drift.js.map +0 -1
  207. package/dist/bin/commands/generate/output.d.ts +0 -8
  208. package/dist/bin/commands/generate/output.d.ts.map +0 -1
  209. package/dist/bin/commands/generate/output.js +0 -58
  210. package/dist/bin/commands/generate/output.js.map +0 -1
  211. package/dist/bin/commands/generate/plan-pipeline.d.ts +0 -7
  212. package/dist/bin/commands/generate/plan-pipeline.d.ts.map +0 -1
  213. package/dist/bin/commands/generate/plan-pipeline.js +0 -143
  214. package/dist/bin/commands/generate/plan-pipeline.js.map +0 -1
  215. package/dist/bin/commands/generate/rename-mappings.d.ts +0 -29
  216. package/dist/bin/commands/generate/rename-mappings.d.ts.map +0 -1
  217. package/dist/bin/commands/generate/rename-mappings.js +0 -195
  218. package/dist/bin/commands/generate/rename-mappings.js.map +0 -1
  219. package/dist/bin/commands/generate.d.ts +0 -3
  220. package/dist/bin/commands/generate.d.ts.map +0 -1
  221. package/dist/bin/commands/generate.js +0 -158
  222. package/dist/bin/commands/generate.js.map +0 -1
  223. package/dist/bin/commands/init.d.ts +0 -2
  224. package/dist/bin/commands/init.d.ts.map +0 -1
  225. package/dist/bin/commands/init.js +0 -12
  226. package/dist/bin/commands/init.js.map +0 -1
  227. package/dist/bin/commands/migrate.d.ts +0 -3
  228. package/dist/bin/commands/migrate.d.ts.map +0 -1
  229. package/dist/bin/commands/migrate.js +0 -288
  230. package/dist/bin/commands/migrate.js.map +0 -1
  231. package/dist/bin/commands/plugin-like.d.ts +0 -38
  232. package/dist/bin/commands/plugin-like.d.ts.map +0 -1
  233. package/dist/bin/commands/plugin-like.js +0 -101
  234. package/dist/bin/commands/plugin-like.js.map +0 -1
  235. package/dist/bin/commands/plugin.d.ts +0 -3
  236. package/dist/bin/commands/plugin.d.ts.map +0 -1
  237. package/dist/bin/commands/plugin.js +0 -148
  238. package/dist/bin/commands/plugin.js.map +0 -1
  239. package/dist/bin/commands/pull.d.ts +0 -2
  240. package/dist/bin/commands/pull.d.ts.map +0 -1
  241. package/dist/bin/commands/pull.js +0 -25
  242. package/dist/bin/commands/pull.js.map +0 -1
  243. package/dist/bin/commands/status.d.ts +0 -3
  244. package/dist/bin/commands/status.d.ts.map +0 -1
  245. package/dist/bin/commands/status.js +0 -63
  246. package/dist/bin/commands/status.js.map +0 -1
  247. package/dist/bin/commands/typegen.d.ts +0 -2
  248. package/dist/bin/commands/typegen.d.ts.map +0 -1
  249. package/dist/bin/commands/typegen.js +0 -25
  250. package/dist/bin/commands/typegen.js.map +0 -1
  251. package/dist/bin/config.d.ts +0 -13
  252. package/dist/bin/config.d.ts.map +0 -1
  253. package/dist/bin/config.js +0 -48
  254. package/dist/bin/config.js.map +0 -1
  255. package/dist/bin/debug.d.ts +0 -3
  256. package/dist/bin/debug.d.ts.map +0 -1
  257. package/dist/bin/debug.js +0 -14
  258. package/dist/bin/debug.js.map +0 -1
  259. package/dist/bin/global-flags.d.ts +0 -16
  260. package/dist/bin/global-flags.d.ts.map +0 -1
  261. package/dist/bin/global-flags.js +0 -7
  262. package/dist/bin/global-flags.js.map +0 -1
  263. package/dist/bin/help.d.ts +0 -5
  264. package/dist/bin/help.d.ts.map +0 -1
  265. package/dist/bin/help.js +0 -84
  266. package/dist/bin/help.js.map +0 -1
  267. package/dist/bin/internal-plugins/index.d.ts +0 -3
  268. package/dist/bin/internal-plugins/index.d.ts.map +0 -1
  269. package/dist/bin/internal-plugins/index.js +0 -5
  270. package/dist/bin/internal-plugins/index.js.map +0 -1
  271. package/dist/bin/internal-plugins/skill-hint.d.ts +0 -31
  272. package/dist/bin/internal-plugins/skill-hint.d.ts.map +0 -1
  273. package/dist/bin/internal-plugins/skill-hint.js +0 -172
  274. package/dist/bin/internal-plugins/skill-hint.js.map +0 -1
  275. package/dist/bin/journal-store.d.ts +0 -10
  276. package/dist/bin/journal-store.d.ts.map +0 -1
  277. package/dist/bin/journal-store.js +0 -137
  278. package/dist/bin/journal-store.js.map +0 -1
  279. package/dist/bin/json-output.d.ts +0 -5
  280. package/dist/bin/json-output.d.ts.map +0 -1
  281. package/dist/bin/json-output.js +0 -21
  282. package/dist/bin/json-output.js.map +0 -1
  283. package/dist/bin/lib.d.ts +0 -5
  284. package/dist/bin/lib.d.ts.map +0 -1
  285. package/dist/bin/lib.js +0 -5
  286. package/dist/bin/lib.js.map +0 -1
  287. package/dist/bin/logging.d.ts +0 -3
  288. package/dist/bin/logging.d.ts.map +0 -1
  289. package/dist/bin/logging.js +0 -31
  290. package/dist/bin/logging.js.map +0 -1
  291. package/dist/bin/migration-store.d.ts +0 -22
  292. package/dist/bin/migration-store.d.ts.map +0 -1
  293. package/dist/bin/migration-store.js +0 -60
  294. package/dist/bin/migration-store.js.map +0 -1
  295. package/dist/bin/plugin-runtime.d.ts +0 -45
  296. package/dist/bin/plugin-runtime.d.ts.map +0 -1
  297. package/dist/bin/plugin-runtime.js +0 -513
  298. package/dist/bin/plugin-runtime.js.map +0 -1
  299. package/dist/bin/safety-markers.d.ts +0 -23
  300. package/dist/bin/safety-markers.d.ts.map +0 -1
  301. package/dist/bin/safety-markers.js +0 -85
  302. package/dist/bin/safety-markers.js.map +0 -1
  303. package/dist/bin/schema-loader.d.ts +0 -3
  304. package/dist/bin/schema-loader.d.ts.map +0 -1
  305. package/dist/bin/schema-loader.js +0 -11
  306. package/dist/bin/schema-loader.js.map +0 -1
  307. package/dist/bin/table-scope.d.ts +0 -38
  308. package/dist/bin/table-scope.d.ts.map +0 -1
  309. package/dist/bin/table-scope.js +0 -167
  310. package/dist/bin/table-scope.js.map +0 -1
  311. package/dist/bin/version.d.ts +0 -2
  312. package/dist/bin/version.d.ts.map +0 -1
  313. package/dist/bin/version.js +0 -5
  314. package/dist/bin/version.js.map +0 -1
  315. package/dist/drift-diff.d.ts +0 -8
  316. package/dist/drift-diff.d.ts.map +0 -1
  317. package/dist/drift-diff.js +0 -46
  318. package/dist/drift-diff.js.map +0 -1
  319. package/dist/drift.d.ts +0 -66
  320. package/dist/drift.d.ts.map +0 -1
  321. package/dist/drift.js +0 -220
  322. package/dist/drift.js.map +0 -1
package/README.md CHANGED
@@ -1,99 +1,112 @@
1
1
  # chkit
2
2
 
3
- ClickHouse schema and migration CLI for TypeScript projects.
3
+ **ClickHouse schema management in TypeScript, with Python support in beta.**
4
4
 
5
- Define your ClickHouse schema in TypeScript, generate migrations automatically, detect drift, and run CI checks -- all from a single CLI.
5
+ chkit is an open-source CLI for defining ClickHouse schemas in code, generating SQL migrations, and checking schema drift. Keep definitions and migration files in your repository, review the SQL before applying it, and verify the live database from the terminal or CI.
6
+
7
+ [Get started](https://chkit.obsessiondb.com/getting-started/) · [First-schema tutorial](https://chkit.obsessiondb.com/tutorials/first-schema/) · [Documentation](https://chkit.obsessiondb.com)
8
+
9
+ ## TL;DR
10
+
11
+ **Define → generate → preview → migrate → check.** TypeScript schemas use `@chkit/core`. Python support is in beta and uses [`chkit-py`](https://pypi.org/project/chkit-py/), with the same migration SQL, snapshots, and ClickHouse journal.
6
12
 
7
13
  ## Features
8
14
 
9
- - **Schema-as-code** -- Define tables, views, and materialized views in TypeScript using a declarative DSL
10
- - **Automatic migration generation** -- Diff your schema changes and generate timestamped SQL migrations with rename detection
11
- - **Safe migrations** -- Destructive operations are flagged with risk levels and require explicit confirmation
12
- - **Drift detection** -- Compare your local schema against a live ClickHouse instance to catch out-of-band changes
13
- - **CI gate** -- Run `chkit check` to fail builds on pending migrations, checksum mismatches, or schema drift
14
- - **TypeScript codegen** -- Generate row types and optional Zod schemas from your schema definitions (`@chkit/plugin-codegen`)
15
- - **Schema pulling** -- Introspect an existing ClickHouse database into local schema files (`@chkit/plugin-pull`)
16
- - **Data backfill** -- Time-windowed, checkpointed backfill operations with retry logic (`@chkit/plugin-backfill`)
17
- - **JSON output** -- Every command supports `--json` for scripting and automation
15
+ - **Schema as code** — Define tables, views, materialized views, and dictionaries with ClickHouse-native types and options.
16
+ - **Migration generation** — Diff definitions against the previous snapshot and generate timestamped SQL migrations with rename metadata.
17
+ - **Migration risk checks** — Review risk levels and approve destructive operations before applying them.
18
+ - **Drift detection** — Compare the schema snapshot against a live ClickHouse instance to catch out-of-band changes.
19
+ - **CI gate** — Run `chkit check` to fail builds on pending migrations, checksum mismatches, or schema drift.
20
+ - **TypeScript codegen** — Generate row types and optional Zod schemas with `@chkit/plugin-codegen`.
21
+ - **Schema pulling** — Import a live ClickHouse schema into local files with `@chkit/plugin-pull`.
22
+ - **Data backfill (beta)** — Run checkpointed SQL backfills for data migrations with `@chkit/plugin-backfill`.
23
+ - **JSON output** — Use `--json` for scripting and automation.
18
24
 
19
25
  ## Install
20
26
 
21
- ```bash
27
+ ```sh
22
28
  bun add -d chkit @chkit/core
23
29
  ```
24
30
 
25
- `@chkit/core` provides the `table()` / schema DSL your `*.schema.ts` files import, so it is required alongside the CLI.
31
+ Install both packages: the CLI runs commands, and `@chkit/core` provides the schema DSL and config helpers imported by TypeScript projects.
32
+
33
+ ## First migration
26
34
 
27
- ## Usage
35
+ Initialize the config and starter schema:
28
36
 
29
- ```bash
30
- # Scaffold a new project
37
+ ```sh
31
38
  bunx chkit init
39
+ ```
40
+
41
+ Choose a database connection in the prompt, or set `CLICKHOUSE_URL`, `CLICKHOUSE_USER`, and `CLICKHOUSE_PASSWORD` for an existing ClickHouse instance. Edit the starter definition in `src/db/schema/example.ts` to match the intended table, then run the schema workflow:
32
42
 
33
- # Generate a migration from schema changes
34
- bunx chkit generate --name add-users-table
43
+ ```sh
44
+ # Generate SQL from the schema definitions
45
+ bunx chkit generate --name create-events
35
46
 
36
- # Preview and apply pending migrations
47
+ # Review chkit/migrations/*.sql, then preview pending migrations
48
+ bunx chkit migrate --json
49
+
50
+ # Apply the reviewed migrations
37
51
  bunx chkit migrate --apply
38
52
 
39
- # Check migration status
53
+ # Verify migration state and the live schema
40
54
  bunx chkit status
55
+ bunx chkit check
56
+ ```
41
57
 
42
- # Detect schema drift
43
- bunx chkit drift
58
+ Without `--apply`, JSON mode only prints the pending migration plan. Commit the schema definitions, migration files, and `chkit/meta/` together. Repeat the workflow after changing a definition, and use `chkit drift` for a detailed schema comparison.
44
59
 
45
- # CI gate (fails on pending migrations or drift)
46
- bunx chkit check
60
+ All commands support `--json` for machine-readable output and `--config <path>` for a custom config file. The [first-schema tutorial](https://chkit.obsessiondb.com/tutorials/first-schema/) includes a complete definition, database setup, queries, and a schema change.
61
+
62
+ ## Python (beta)
63
+
64
+ Python support is in beta. Install the Python implementation and initialize a project:
65
+
66
+ ```sh
67
+ pip install chkit-py
68
+ chkit init
47
69
  ```
48
70
 
49
- All commands support `--json` for machine-readable output and `--config <path>` to specify a custom config file.
71
+ Use Python schema modules and `clickhouse.config.py`, then run the same `generate`, `migrate`, `status`, `drift`, and `check` commands. See the [Python overview](https://chkit.obsessiondb.com/python/overview/).
50
72
 
51
73
  ## Requirements
52
74
 
53
- - **Node 20+** or **Bun** — chkit loads your TypeScript config and schema files on both runtimes.
54
- - **ClickHouse 24.x or newer** — chkit targets recent ClickHouse (self-hosted, ClickHouse Cloud, or ObsessionDB). Some schema features are version-gated; see [ClickHouse compatibility](https://chkit.obsessiondb.com/guides/clickhouse-compatibility/).
75
+ - **Node.js 22+ or Bun 1.3.5+** for TypeScript config and schemas. Python projects require **Python 3.11+** and `chkit-py`.
76
+ - **ClickHouse 24.x or newer**, self-hosted or managed. Some schema features are version-gated; see [ClickHouse compatibility](https://chkit.obsessiondb.com/guides/clickhouse-compatibility/).
55
77
 
56
78
  ## Plugins
57
79
 
58
80
  | Plugin | Description |
59
- |--------|-------------|
81
+ | --- | --- |
60
82
  | [`@chkit/plugin-codegen`](https://www.npmjs.com/package/@chkit/plugin-codegen) | Generate TypeScript row types and Zod schemas |
61
- | [`@chkit/plugin-pull`](https://www.npmjs.com/package/@chkit/plugin-pull) | Pull schemas from a live ClickHouse instance |
62
- | [`@chkit/plugin-backfill`](https://www.npmjs.com/package/@chkit/plugin-backfill) | Time-windowed data backfill with checkpoints |
63
- | [`@chkit/plugin-obsessiondb`](https://www.npmjs.com/package/@chkit/plugin-obsessiondb) | Auto-rewrite Shared engines for ObsessionDB compatibility |
83
+ | [`@chkit/plugin-pull`](https://www.npmjs.com/package/@chkit/plugin-pull) | Pull a live schema into local definitions |
84
+ | [`@chkit/plugin-backfill`](https://www.npmjs.com/package/@chkit/plugin-backfill) | Run checkpointed SQL backfills for data migrations (beta) |
85
+ | [`@chkit/plugin-obsessiondb`](https://www.npmjs.com/package/@chkit/plugin-obsessiondb) | Connect to ObsessionDB and run schema commands remotely |
86
+
87
+ Register plugins in `clickhouse.config.ts`. See the [plugin documentation](https://chkit.obsessiondb.com/plugins/overview/) for setup.
64
88
 
65
- ## AI Agent Skill
89
+ ## AI agent skill
66
90
 
67
- Install the chkit agent skill so AI coding assistants understand chkit:
91
+ Install the schema skill for AI coding assistants:
68
92
 
69
- ```bash
70
- npx skills add obsessiondb/chkit
93
+ ```sh
94
+ npx skills add obsessiondb/chkit --skill chkit
71
95
  ```
72
96
 
73
- ## Documentation
97
+ See [Agent skills](https://chkit.obsessiondb.com/ai-agents/) for supported tools and setup.
98
+
99
+ ## Versioning and releases
74
100
 
75
- See the [chkit documentation](https://chkit.obsessiondb.com).
101
+ chkit is pre-1.0: the public API is still evolving, and releases may contain breaking changes. Pin versions for reproducible installs.
76
102
 
77
- ## Versioning & releases
103
+ - All publishable packages release in lockstep. Install matching versions of `chkit`, `@chkit/core`, and plugins.
104
+ - The supported public API is the CLI, `@chkit/core`, and `@chkit/plugin-*`. `@chkit/clickhouse` and `@chkit/codegen` are internal packages.
105
+ - At 1.0, chkit will follow SemVer with breaking changes in major releases.
78
106
 
79
- chkit is **pre-1.0**. While the version is `0.x`, the public API is still
80
- stabilizing and **any release may contain breaking changes** — this is the
81
- standard [SemVer](https://semver.org/#spec-item-4) `0.x` contract. Pin an exact
82
- version (or a tight range) if you need reproducible installs.
107
+ ## chkit Sync (beta)
83
108
 
84
- - **`latest` tracks the current beta line.** Until 1.0 ships, installing
85
- `chkit` with no tag (`bun add -d chkit`) gives you the latest `0.1.0-beta.x`
86
- build. This is intentional for the pre-1.0 period.
87
- - **All publishable packages release in lockstep.** `chkit`, `create-chkit`,
88
- and every `@chkit/*` package share a single version, so a given chkit version
89
- always lines up with matching plugin and core versions — there is no
90
- cross-package version skew.
91
- - **Public vs. internal surface.** The supported public API is the `chkit` CLI,
92
- `@chkit/core`, and the `@chkit/plugin-*` packages. `@chkit/clickhouse` and
93
- `@chkit/codegen` are internal and not meant to be installed directly.
94
- - **At 1.0** chkit will commit to real SemVer (breaking changes only in major
95
- bumps) and a deprecation policy. Until then, treat minor/patch bumps as
96
- potentially breaking.
109
+ We're also building **chkit Sync**, a beta toolkit for syncing data from business applications into ClickHouse. It builds on chkit's schema management and has its own [Sync documentation](https://chkit.obsessiondb.com/sync/).
97
110
 
98
111
  ## License
99
112
 
@@ -101,4 +114,4 @@ version (or a tight range) if you need reproducible installs.
101
114
 
102
115
  ---
103
116
 
104
- Built and maintained by the team behind [**ObsessionDB**](https://obsessiondb.com) — fully-managed ClickHouse with a first-party chkit integration ([`@chkit/plugin-obsessiondb`](https://www.npmjs.com/package/@chkit/plugin-obsessiondb)).
117
+ The [ObsessionDB](https://obsessiondb.com) team builds and maintains chkit. Connect to its managed ClickHouse service with [`@chkit/plugin-obsessiondb`](https://www.npmjs.com/package/@chkit/plugin-obsessiondb).
package/dist/bin/chkit.js CHANGED
@@ -1,8 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
  import process from 'node:process';
3
+ import { format } from 'node:util';
3
4
  import { cmdInit } from '../commands/init.js';
4
5
  import { cmdSkills } from '../commands/skills.js';
5
6
  import { getInternalPlugins } from '../internal-plugins/index.js';
7
+ import { normalizeGlobalArgs } from '../runtime/argv.js';
6
8
  import { parseCommandArgs, runResolvedCommand } from '../runtime/command-dispatch.js';
7
9
  import { createCommandRegistry } from '../runtime/command-registry.js';
8
10
  import { loadConfig } from '../runtime/config.js';
@@ -10,12 +12,13 @@ import { debug } from '../runtime/debug.js';
10
12
  import { extractConfigPath } from '../runtime/extract-config-path.js';
11
13
  import { GLOBAL_FLAGS } from '../runtime/global-flags.js';
12
14
  import { formatCommandHelp, formatGlobalHelp } from '../runtime/help.js';
13
- import { emitJsonError, hasEmittedJson } from '../runtime/json-output.js';
15
+ import { emitJsonError, hasEmittedJson, stdoutDrained, writeStdout, } from '../runtime/json-output.js';
14
16
  import { configureCliLogging } from '../runtime/logging.js';
15
17
  import { loadPluginRuntime } from '../runtime/plugin-runtime/index.js';
16
18
  import { CLI_VERSION } from '../runtime/version.js';
17
19
  const WELL_KNOWN_PLUGIN_COMMANDS = {
18
20
  codegen: 'Codegen',
21
+ ingest: 'Ingest',
19
22
  pull: 'Pull',
20
23
  };
21
24
  const PROJECT_ONLY_COMMANDS = new Set([
@@ -24,9 +27,11 @@ const PROJECT_ONLY_COMMANDS = new Set([
24
27
  'status',
25
28
  'drift',
26
29
  'check',
30
+ 'snapshot',
27
31
  'codegen',
28
32
  'pull',
29
33
  ]);
34
+ let activeCommand = 'chkit';
30
35
  function firstPluginPositional(argv) {
31
36
  const globalFlags = new Map(GLOBAL_FLAGS.map((flag) => [flag.name, flag]));
32
37
  for (let i = 1; i < argv.length; i += 1) {
@@ -116,11 +121,29 @@ function collectPluginCommands(runtime) {
116
121
  return [{ pluginName: p.plugin.manifest.name, commands, manifestName: p.plugin.manifest.name }];
117
122
  });
118
123
  }
124
+ function createInternalRegistry() {
125
+ return createCommandRegistry({
126
+ globalFlags: GLOBAL_FLAGS,
127
+ pluginExtensions: [],
128
+ pluginCommands: getInternalPlugins().map((plugin) => ({
129
+ pluginName: plugin.manifest.name,
130
+ manifestName: plugin.manifest.name,
131
+ commands: plugin.commands ?? [],
132
+ })),
133
+ });
134
+ }
119
135
  async function run() {
120
136
  configureCliLogging();
121
- const argv = process.argv.slice(2);
137
+ // Text output from commands, plugins and prompts goes through writeStdout
138
+ // too, so it stays in order with JSON output and the exit path waits for it
139
+ // to drain instead of losing what did not fit in the pipe buffer.
140
+ console.log = (...args) => writeStdout(format(...args));
141
+ const argv = normalizeGlobalArgs(process.argv.slice(2));
122
142
  const commandName = argv[0];
143
+ activeCommand = commandName ?? 'chkit';
123
144
  debug('cli', `chkit ${CLI_VERSION} — argv: [${argv.join(', ')}]`);
145
+ const includePluginHelp = argv.includes('--help-plugins');
146
+ const wantsHelp = includePluginHelp || argv.includes('--help') || argv.includes('-h');
124
147
  if (!commandName || commandName === '-h' || commandName === '--help') {
125
148
  await printGlobalHelp(argv);
126
149
  return;
@@ -130,15 +153,32 @@ async function run() {
130
153
  return;
131
154
  }
132
155
  if (commandName === 'init') {
133
- await cmdInit(argv.slice(1));
156
+ await cmdInit(wantsHelp ? ['--help'] : argv.slice(1));
134
157
  return;
135
158
  }
136
159
  // `skills` proxies to the external `skills` CLI and needs no project config, so handle it
137
160
  // before config loading (like `init`).
138
161
  if (commandName === 'skills') {
139
- process.exitCode = await cmdSkills(argv.slice(1));
162
+ process.exitCode = await cmdSkills(wantsHelp ? ['--help'] : argv.slice(1));
140
163
  return;
141
164
  }
165
+ // Registry discovery and bootstrapping work before a project config exists.
166
+ if (commandName === 'add' || commandName === 'registry') {
167
+ const { cmdRegistry } = await import('../commands/registry.js');
168
+ await cmdRegistry(commandName, wantsHelp ? ['--help'] : argv.slice(1));
169
+ return;
170
+ }
171
+ // Built-in help must work in an empty directory, with missing credentials,
172
+ // or with an invalid config. In particular, do not run initialization hooks
173
+ // (which may connect or bootstrap metadata) just to describe a command.
174
+ if (wantsHelp && !includePluginHelp) {
175
+ const registry = createInternalRegistry();
176
+ const command = registry.get(commandName);
177
+ if (command) {
178
+ console.log(formatCommandHelp(command, registry.globalFlags));
179
+ return;
180
+ }
181
+ }
142
182
  const configPathArg = extractConfigPath(argv);
143
183
  const env = { command: commandName, mode: process.env.NODE_ENV };
144
184
  const { config, path: configPath, source: configSource } = await loadConfig(configPathArg, env, {
@@ -171,8 +211,7 @@ async function run() {
171
211
  if (resolved &&
172
212
  !resolved.subcommands &&
173
213
  commandName !== 'plugin' &&
174
- !argv.includes('--help') &&
175
- !argv.includes('-h')) {
214
+ !wantsHelp) {
176
215
  const parsed = parseCommandArgs(commandName, argv.slice(1), registry.resolveFlags(commandName));
177
216
  if (!parsed)
178
217
  return;
@@ -186,6 +225,21 @@ async function run() {
186
225
  flags: initFlags,
187
226
  config,
188
227
  };
228
+ if (wantsHelp) {
229
+ if (resolved) {
230
+ console.log(formatCommandHelp(resolved, registry.globalFlags, firstPluginPositional(argv)));
231
+ }
232
+ else {
233
+ reportUsageError({
234
+ command: commandName,
235
+ code: 'unknown_command',
236
+ message: `Unknown command: ${commandName}`,
237
+ jsonMode: argv.includes('--json'),
238
+ onText: () => console.log(formatGlobalHelp(registry, CLI_VERSION)),
239
+ });
240
+ }
241
+ return;
242
+ }
189
243
  await pluginRuntime.runOnInit(initCtx);
190
244
  let completed = false;
191
245
  const complete = async (exitCode) => {
@@ -219,10 +273,6 @@ async function run() {
219
273
  });
220
274
  return;
221
275
  }
222
- if (argv.includes('--help') || argv.includes('-h')) {
223
- console.log(formatCommandHelp(resolved, registry.globalFlags));
224
- return;
225
- }
226
276
  await runResolvedCommand({
227
277
  argv,
228
278
  commandName,
@@ -231,8 +281,18 @@ async function run() {
231
281
  config,
232
282
  configPath,
233
283
  pluginRuntime,
234
- onAmbiguousPluginSubcommand() {
235
- console.log(formatCommandHelp(resolved, registry.globalFlags));
284
+ onAmbiguousPluginSubcommand(token) {
285
+ if (token === undefined) {
286
+ console.log(formatCommandHelp(resolved, registry.globalFlags));
287
+ return;
288
+ }
289
+ reportUsageError({
290
+ command: commandName,
291
+ code: 'unknown_subcommand',
292
+ message: `Unknown ${commandName} command "${token}". Available: ${(resolved.subcommands ?? []).map((sub) => sub.name).join(', ')}.`,
293
+ jsonMode: argv.includes('--json'),
294
+ onText: () => console.log(formatCommandHelp(resolved, registry.globalFlags)),
295
+ });
236
296
  },
237
297
  });
238
298
  }
@@ -248,9 +308,9 @@ async function run() {
248
308
  await complete(resolveExitCode());
249
309
  }
250
310
  async function printGlobalHelp(argv) {
251
- const configPathArg = extractConfigPath(argv);
252
- let registry;
253
- try {
311
+ let registry = createInternalRegistry();
312
+ if (argv.includes('--help-plugins')) {
313
+ const configPathArg = extractConfigPath(argv);
254
314
  const { config, path: configPath } = await loadConfig(configPathArg);
255
315
  const pluginRuntime = await loadPluginRuntime({
256
316
  config,
@@ -264,24 +324,14 @@ async function printGlobalHelp(argv) {
264
324
  pluginCommands: collectPluginCommands(pluginRuntime),
265
325
  });
266
326
  }
267
- catch {
268
- const internal = getInternalPlugins();
269
- registry = createCommandRegistry({
270
- globalFlags: GLOBAL_FLAGS,
271
- pluginExtensions: [],
272
- pluginCommands: internal.flatMap((plugin) => {
273
- const commands = plugin.commands;
274
- if (!commands || commands.length === 0)
275
- return [];
276
- return [{ pluginName: plugin.manifest.name, commands, manifestName: plugin.manifest.name }];
277
- }),
278
- });
279
- }
280
327
  console.log(formatGlobalHelp(registry, CLI_VERSION));
281
328
  }
282
329
  run()
283
- .then(exitIfNeeded)
284
- .catch((error) => {
330
+ .then(async () => {
331
+ await stdoutDrained();
332
+ exitIfNeeded();
333
+ })
334
+ .catch(async (error) => {
285
335
  debug('cli', 'fatal error', error instanceof Error
286
336
  ? {
287
337
  message: error.message,
@@ -296,9 +346,10 @@ run()
296
346
  // structured JSON payload. The human-readable message always goes to
297
347
  // stderr — stdout stays parseable, stderr stays diagnostic.
298
348
  if (jsonMode && !hasEmittedJson()) {
299
- emitJsonError(argv[0] ?? 'chkit', toJsonError(error));
349
+ emitJsonError(activeCommand, toJsonError(error));
300
350
  }
301
351
  console.error(formatFatalError(error));
352
+ await stdoutDrained();
302
353
  process.exit(1);
303
354
  });
304
355
  //# sourceMappingURL=chkit.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chkit.js","sourceRoot":"","sources":["../../src/bin/chkit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chkit.js","sourceRoot":"","sources":["../../src/bin/chkit.ts"],"names":[],"mappings":"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"}
@@ -60,7 +60,7 @@ export function emitCheckJson(inputs, result) {
60
60
  export function renderCheckText(inputs, result) {
61
61
  const { policy, pending, checksumMismatches, drift, pluginResults, tableScope, databaseMissing, database } = inputs;
62
62
  if (databaseMissing) {
63
- console.log(`⚠ Database "${database}" does not exist on the target server.`);
63
+ console.log(`⚠ Database "${database ?? ''}" does not exist on the target server.`);
64
64
  console.log(' It will be created when you run: chkit migrate --apply\n');
65
65
  }
66
66
  console.log(`Check status: ${result.ok ? 'ok' : 'failed'}`);
@@ -1 +1 @@
1
- {"version":3,"file":"output.js","sourceRoot":"","sources":["../../../src/commands/check/output.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"output.js","sourceRoot":"","sources":["../../../src/commands/check/output.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../src/commands/drift/command.ts"],"names":[],"mappings":"AAEA,OAAO,EAAc,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAQpE,eAAO,MAAM,YAAY,EAAE,gBA6G1B,CAAA"}
1
+ {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../src/commands/drift/command.ts"],"names":[],"mappings":"AAEA,OAAO,EAAc,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAQpE,eAAO,MAAM,YAAY,EAAE,gBAsH1B,CAAA"}
@@ -87,6 +87,12 @@ export const driftCommand = {
87
87
  console.log(`- ${item.code} ${item.object}: expected=${item.expectedKind ?? ''} actual=${item.actualKind ?? ''}`);
88
88
  continue;
89
89
  }
90
+ if (item.code === 'query_mismatch' || item.code === 'target_mismatch') {
91
+ console.log(`- ${item.code} ${item.object}`);
92
+ console.log(` expected=${item.expected ?? ''}`);
93
+ console.log(` actual=${item.actual ?? ''}`);
94
+ continue;
95
+ }
90
96
  console.log(`- ${item.code} ${item.object}`);
91
97
  }
92
98
  }
@@ -119,6 +125,9 @@ export const driftCommand = {
119
125
  if (item.projectionDiffs.length > 0) {
120
126
  console.log(` projectionDiffs=${item.projectionDiffs.join(',')}`);
121
127
  }
128
+ if (item.constraintDiffs.length > 0) {
129
+ console.log(` constraintDiffs=${item.constraintDiffs.join(',')}`);
130
+ }
122
131
  console.log(` reasonCodes=${item.reasonCodes.join(',')}`);
123
132
  }
124
133
  }
@@ -1 +1 @@
1
- {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/commands/drift/command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/commands/drift/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,OAAO,EAAE,UAAU,EAAyB,MAAM,kBAAkB,CAAA;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAC/D,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAA;AAC1F,OAAO,EAAE,iBAAiB,EAAqB,MAAM,cAAc,CAAA;AAEnE,MAAM,CAAC,MAAM,YAAY,GAAqB;IAC5C,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,wDAAwD;IACrE,KAAK,EAAE,EAAE;IACT,KAAK,CAAC,GAAG,CAAC,OAAO;QACf,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,CAAA;QAChD,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAA;QACzC,MAAM,aAAa,GAAG,CAAC,CAAC,SAAS,CAAC,CAAA;QAClC,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAA;QACrC,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;QACvC,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,CAAA;QAC5C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAA;QAClF,CAAC;QACD,MAAM,KAAK,GAAG,iBAAiB,CAAC,aAAa,EAAE,wBAAwB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAA;QAC9F,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;YAC5C,MAAM,OAAO,GAAiB;gBAC5B,KAAK;gBACL,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC;gBAC5C,aAAa,EAAE,CAAC;gBAChB,WAAW,EAAE,CAAC;gBACd,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,EAAE;gBACX,KAAK,EAAE,EAAE;gBACT,cAAc,EAAE,EAAE;gBAClB,WAAW,EAAE,EAAE;gBACf,UAAU,EAAE,EAAE;aACf,CAAA;YACD,IAAI,QAAQ,EAAE,CAAC;gBACb,QAAQ,CAAC,OAAO,EAAE;oBAChB,GAAG,OAAO;oBACV,OAAO,EAAE,+BAA+B,KAAK,CAAC,QAAQ,IAAI,EAAE,IAAI;iBACjE,CAAC,CAAA;gBACF,OAAO,CAAC,CAAA;YACV,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,+BAA+B,KAAK,CAAC,QAAQ,IAAI,EAAE,4BAA4B,CAAC,CAAA;YAC5F,OAAO,CAAC,CAAA;QACV,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;QACnE,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAA;QAEjG,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAC1B,OAAO,CAAC,CAAA;QACV,CAAC;QAED,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,eAAe,OAAO,CAAC,QAAQ,IAAI,EAAE,wCAAwC,CAAC,CAAA;YAC1F,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAA;QAC3E,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,qBAAqB,OAAO,CAAC,aAAa,EAAE,CAAC,CAAA;QACzD,OAAO,CAAC,GAAG,CAAC,qBAAqB,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;QACvD,OAAO,CAAC,GAAG,CAAC,qBAAqB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;QAClE,IAAI,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,qBAAqB,OAAO,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,KAAK,OAAO,CAAC,KAAK,CAAC,UAAU,WAAW,CAAC,CAAA;YACtG,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,aAAa;gBAAE,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC,CAAA;QAC5E,CAAC;QACD,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAA;YACjC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,OAAO;gBAAE,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA;QAC9D,CAAC;QACD,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;YACpC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA;QAC5D,CAAC;QACD,IAAI,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAA;YACjC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;gBAC1C,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,MAAM,cAAc,IAAI,CAAC,QAAQ,WAAW,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;YAClF,CAAC;QACH,CAAC;QACD,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAA;YACtC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;gBACvC,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;oBAClC,OAAO,CAAC,GAAG,CACT,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,cAAc,IAAI,CAAC,YAAY,IAAI,EAAE,WAAW,IAAI,CAAC,UAAU,IAAI,EAAE,EAAE,CACrG,CAAA;oBACD,SAAQ;gBACV,CAAC;gBACD,IAAI,IAAI,CAAC,IAAI,KAAK,gBAAgB,IAAI,IAAI,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;oBACtE,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;oBAC5C,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC,CAAA;oBAChD,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC,CAAA;oBAC5C,SAAQ;gBACV,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;YAC9C,CAAC;QACH,CAAC;QACD,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAA;YACnC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;gBACtC,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;gBAC9B,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;oBAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBACpG,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;oBAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBAC9F,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;oBAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBACpG,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;oBAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBAC9F,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;oBAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBACxF,IAAI,IAAI,CAAC,WAAW;oBAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAA;gBACvD,IAAI,IAAI,CAAC,cAAc;oBAAE,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;gBAC7D,IAAI,IAAI,CAAC,kBAAkB;oBAAE,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;gBACrE,IAAI,IAAI,CAAC,eAAe;oBAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAA;gBAC/D,IAAI,IAAI,CAAC,iBAAiB;oBAAE,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAA;gBACnE,IAAI,IAAI,CAAC,mBAAmB;oBAAE,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAA;gBACvE,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpC,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBACpE,CAAC;gBACD,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpC,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBACpE,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YAC5D,CAAC;QACH,CAAC;QACD,OAAO,CAAC,CAAA;IACV,CAAC;CACF,CAAA"}
@@ -1,6 +1,19 @@
1
- import { type ColumnDefinition, type ProjectionDefinition, type SkipIndexDefinition, type TableDefinition } from '@chkit/core';
2
- type TableDriftReasonCode = 'missing_column' | 'extra_column' | 'changed_column' | 'setting_mismatch' | 'index_mismatch' | 'ttl_mismatch' | 'engine_mismatch' | 'primary_key_mismatch' | 'order_by_mismatch' | 'partition_by_mismatch' | 'unique_key_mismatch' | 'projection_mismatch';
3
- type ObjectDriftReasonCode = 'missing_object' | 'extra_object' | 'kind_mismatch';
1
+ import { type ColumnDefinition, type ProjectionDefinition, type SkipIndexDefinition, type MaterializedViewDefinition, type TableConstraintDefinition, type TableDefinition, type ViewDefinition } from '@chkit/core';
2
+ /**
3
+ * Canonicalizes SQL fragments to the exact form ClickHouse stores, so a schema
4
+ * fragment compares equal to what a live table reports even when the two are
5
+ * spelled differently (`cityHash64(a,b)` vs `cityHash64(a, b)`, `n*2+1` vs
6
+ * `(n * 2) + 1`, `INTERVAL 5 YEAR` vs `toIntervalYear(5)`). Only ClickHouse's own
7
+ * formatter can produce this, so it is injected by the drift command; when it is
8
+ * absent (offline, or a fragment ClickHouse couldn't parse) each field falls
9
+ * back to plain string normalization (#195).
10
+ */
11
+ export interface SqlCanonicalizer {
12
+ expression(fragment: string): string | null;
13
+ query(fragment: string): string | null;
14
+ }
15
+ type TableDriftReasonCode = 'missing_column' | 'extra_column' | 'changed_column' | 'setting_mismatch' | 'index_mismatch' | 'ttl_mismatch' | 'engine_mismatch' | 'primary_key_mismatch' | 'order_by_mismatch' | 'partition_by_mismatch' | 'unique_key_mismatch' | 'projection_mismatch' | 'constraint_mismatch';
16
+ type ObjectDriftReasonCode = 'missing_object' | 'extra_object' | 'kind_mismatch' | 'query_mismatch' | 'target_mismatch';
4
17
  type DriftReasonCode = ObjectDriftReasonCode | TableDriftReasonCode;
5
18
  interface SchemaObjectShape {
6
19
  kind: 'table' | 'view' | 'materialized_view' | 'dictionary';
@@ -12,6 +25,16 @@ export interface ObjectDriftDetail {
12
25
  object: string;
13
26
  expectedKind?: SchemaObjectShape['kind'];
14
27
  actualKind?: SchemaObjectShape['kind'];
28
+ /** query_mismatch / target_mismatch: the compared query or `TO` target. */
29
+ expected?: string;
30
+ actual?: string;
31
+ }
32
+ interface ActualViewShape {
33
+ query: string;
34
+ to?: {
35
+ database: string;
36
+ name: string;
37
+ };
15
38
  }
16
39
  interface ActualTableShape {
17
40
  columns: ColumnDefinition[];
@@ -24,6 +47,7 @@ interface ActualTableShape {
24
47
  uniqueKey?: string;
25
48
  partitionBy?: string;
26
49
  projections: ProjectionDefinition[];
50
+ constraints?: TableConstraintDefinition[];
27
51
  }
28
52
  export interface TableDriftDetail {
29
53
  table: string;
@@ -40,6 +64,7 @@ export interface TableDriftDetail {
40
64
  uniqueKeyMismatch: boolean;
41
65
  partitionByMismatch: boolean;
42
66
  projectionDiffs: string[];
67
+ constraintDiffs: string[];
43
68
  }
44
69
  interface DriftReasonSummary {
45
70
  counts: Partial<Record<DriftReasonCode, number>>;
@@ -61,6 +86,29 @@ export declare function summarizeDriftReasons(input: {
61
86
  objectDrift: ObjectDriftDetail[];
62
87
  tableDrift: TableDriftDetail[];
63
88
  }): DriftReasonSummary;
64
- export declare function compareTableShape(expected: TableDefinition, actual: ActualTableShape): TableDriftDetail | null;
89
+ /**
90
+ * Every SQL fragment `compareTableShape` will look up in a `SqlCanonicalizer`,
91
+ * at the exact granularity it looks them up (whole expressions for index/ttl,
92
+ * per-element for key/partition clauses, whole query for SELECT projections).
93
+ * The drift command collects these across all compared tables, formats them in
94
+ * one round-trip, and hands back a map-backed canonicalizer.
95
+ */
96
+ export declare function collectTableSqlFragments(expected: TableDefinition, actual: ActualTableShape): {
97
+ expressions: string[];
98
+ queries: string[];
99
+ };
100
+ export declare function compareTableShape(expected: TableDefinition, actual: ActualTableShape, canonicalizer?: SqlCanonicalizer): TableDriftDetail | null;
101
+ /** The view and materialized view queries `compareViewShape` will look up. */
102
+ export declare function collectViewSqlQueries(expected: ViewDefinition | MaterializedViewDefinition, actual: ActualViewShape): string[];
103
+ /**
104
+ * Compares a view or materialized view query with the live one, and a
105
+ * materialized view's `TO` target. ClickHouse stores the query reformatted, so
106
+ * the queries are compared only as its formatter renders them: when either side
107
+ * can't be formatted, the query is not compared, rather than reporting drift
108
+ * on a query that may be the same. Nor is a query in which ClickHouse replaced
109
+ * a secret (a table function's password) with `'[HIDDEN]'`: it never matches
110
+ * the schema, and the schema's side would print the secret.
111
+ */
112
+ export declare function compareViewShape(expected: ViewDefinition | MaterializedViewDefinition, actual: ActualViewShape, currentDatabase: string, canonicalizer?: SqlCanonicalizer): ObjectDriftDetail[];
65
113
  export {};
66
114
  //# sourceMappingURL=compare.d.ts.map