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
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/bin/commands/generate.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export declare function cmdInit(): Promise<void>;
2
- //# sourceMappingURL=init.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/init.ts"],"names":[],"mappings":"AAIA,wBAAsB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAiB7C"}
@@ -1,12 +0,0 @@
1
- import { resolve } from 'node:path';
2
- import { DEFAULT_CONFIG_FILE, writeIfMissing } from '../config.js';
3
- export async function cmdInit() {
4
- const configPath = resolve(process.cwd(), DEFAULT_CONFIG_FILE);
5
- const schemaPath = resolve(process.cwd(), 'src/db/schema/example.ts');
6
- await writeIfMissing(configPath, `import { defineConfig } from '@chkit/core'\n\nexport default defineConfig({\n schema: './src/db/schema/**/*.ts',\n outDir: './chkit',\n migrationsDir: './chkit/migrations',\n metaDir: './chkit/meta',\n plugins: [\n // Typed plugin registration (recommended):\n // import { codegen } from '@chkit/plugin-codegen'\n // codegen({ emitZod: true }),\n\n // Legacy path-based registration (still supported):\n // { resolve: './plugins/example-plugin.ts', options: {}, enabled: true },\n ],\n clickhouse: {\n url: process.env.CLICKHOUSE_URL ?? 'http://localhost:8123',\n username: process.env.CLICKHOUSE_USER ?? 'default',\n password: process.env.CLICKHOUSE_PASSWORD ?? '',\n database: process.env.CLICKHOUSE_DB ?? 'default',\n },\n})\n`);
7
- await writeIfMissing(schemaPath, `import { schema, table } from '@chkit/core'\n\nconst events = table({\n database: 'default',\n name: 'events',\n engine: 'MergeTree',\n columns: [\n { name: 'id', type: 'UInt64' },\n { name: 'source', type: 'String' },\n { name: 'ingested_at', type: 'DateTime64(3)', default: 'fn:now64(3)' },\n ],\n primaryKey: ['id'],\n orderBy: ['id'],\n partitionBy: 'toYYYYMM(ingested_at)',\n})\n\nexport default schema(events)\n`);
8
- console.log(`Initialized chkit project files:`);
9
- console.log(`- ${configPath}`);
10
- console.log(`- ${schemaPath}`);
11
- }
12
- //# sourceMappingURL=init.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/bin/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAElE,MAAM,CAAC,KAAK,UAAU,OAAO;IAC3B,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,mBAAmB,CAAC,CAAA;IAC9D,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,0BAA0B,CAAC,CAAA;IAErE,MAAM,cAAc,CAClB,UAAU,EACV,8vBAA8vB,CAC/vB,CAAA;IAED,MAAM,cAAc,CAClB,UAAU,EACV,obAAob,CACrb,CAAA;IAED,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAA;IAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,UAAU,EAAE,CAAC,CAAA;IAC9B,OAAO,CAAC,GAAG,CAAC,KAAK,UAAU,EAAE,CAAC,CAAA;AAChC,CAAC"}
@@ -1,3 +0,0 @@
1
- import { type CommandDef } from '../../plugins.js';
2
- export declare const migrateCommand: CommandDef;
3
- //# sourceMappingURL=migrate.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/migrate.ts"],"names":[],"mappings":"AAKA,OAAO,EAA2B,KAAK,UAAU,EAA0B,MAAM,kBAAkB,CAAA;AA4BnG,eAAO,MAAM,cAAc,EAAE,UAK5B,CAAA"}
@@ -1,288 +0,0 @@
1
- import { mkdir, readFile } from 'node:fs/promises';
2
- import { join } from 'node:path';
3
- import process from 'node:process';
4
- import { createInterface } from 'node:readline/promises';
5
- import { defineFlags, typedFlags } from '../../plugins.js';
6
- import { waitForDDLPropagation } from '@chkit/clickhouse';
7
- import { GLOBAL_FLAGS } from '../global-flags.js';
8
- import { emitJson } from '../json-output.js';
9
- import { createJournalStore } from '../journal-store.js';
10
- import { checksumSQL, findChecksumMismatches, listMigrations, readSnapshot, } from '../migration-store.js';
11
- import { collectDestructiveOperationMarkers, extractExecutableStatements, extractMigrationOperationSummaries, migrationContainsDangerOperation, } from '../safety-markers.js';
12
- import { databaseKeyFromOperationKey, resolveTableScope, tableKeyFromOperationKey, tableKeysFromDefinitions } from '../table-scope.js';
13
- import { debug } from '../debug.js';
14
- const MIGRATE_FLAGS = defineFlags([
15
- { name: '--apply', type: 'boolean', description: 'Apply pending migrations on ClickHouse (no prompt)' },
16
- { name: '--execute', type: 'boolean', description: 'Alias for --apply' },
17
- { name: '--allow-destructive', type: 'boolean', description: 'Allow destructive migrations tagged with risk=danger' },
18
- ]);
19
- export const migrateCommand = {
20
- name: 'migrate',
21
- description: 'Review or execute pending migrations',
22
- flags: MIGRATE_FLAGS,
23
- run: cmdMigrate,
24
- };
25
- function isBackgroundOrCI() {
26
- return process.env.CI === '1' || process.env.CI === 'true' || !process.stdin.isTTY || !process.stdout.isTTY;
27
- }
28
- function printDestructiveOperationDetails(markers) {
29
- console.log('Destructive operations detected:');
30
- for (const [index, marker] of markers.entries()) {
31
- console.log(`${index + 1}. ${marker.migration}`);
32
- console.log(` operation: ${marker.type}`);
33
- console.log(` key: ${marker.key}`);
34
- console.log(` warning: ${marker.warningCode}`);
35
- console.log(` reason: ${marker.reason}`);
36
- console.log(` impact: ${marker.impact}`);
37
- console.log(` recommendation: ${marker.recommendation}`);
38
- }
39
- }
40
- async function confirmDestructiveExecution(markers) {
41
- const rl = createInterface({ input: process.stdin, output: process.stdout });
42
- try {
43
- printDestructiveOperationDetails(markers);
44
- console.log('');
45
- console.log('Type "yes" to continue. Any other input cancels.');
46
- const response = await rl.question('Apply destructive operations? [no/yes]: ');
47
- return response.trim().toLowerCase() === 'yes';
48
- }
49
- finally {
50
- rl.close();
51
- }
52
- }
53
- async function filterPendingByScope(migrationsDir, pending, selectedTables) {
54
- const selectedDatabases = new Set([...selectedTables].map((table) => table.split('.')[0] ?? ''));
55
- const inScope = [];
56
- for (const file of pending) {
57
- const sql = await readFile(join(migrationsDir, file), 'utf8');
58
- const operations = extractMigrationOperationSummaries(sql);
59
- const matches = operations.some((operation) => {
60
- const tableKey = tableKeyFromOperationKey(operation.key);
61
- if (tableKey)
62
- return selectedTables.has(tableKey);
63
- const database = databaseKeyFromOperationKey(operation.key);
64
- if (database)
65
- return selectedDatabases.has(database);
66
- return false;
67
- });
68
- if (matches)
69
- inScope.push(file);
70
- }
71
- return inScope;
72
- }
73
- async function cmdMigrate(runCtx) {
74
- const { flags, config, configPath, dirs, pluginRuntime, ctx } = runCtx;
75
- const f = typedFlags(flags, [...GLOBAL_FLAGS, ...MIGRATE_FLAGS]);
76
- const executeRequested = f['--apply'] === true || f['--execute'] === true;
77
- const allowDestructive = f['--allow-destructive'] === true;
78
- const tableSelector = f['--table'];
79
- const jsonMode = f['--json'] === true;
80
- const { migrationsDir, metaDir } = dirs;
81
- debug('migrate', `flags: execute=${executeRequested}, allowDestructive=${allowDestructive}, json=${jsonMode}`);
82
- if (!ctx.hasExecutor) {
83
- throw new Error('clickhouse config is required for migrate (journal is stored in ClickHouse)');
84
- }
85
- const db = ctx.executor;
86
- {
87
- const journalStore = createJournalStore(db);
88
- const snapshot = await readSnapshot(metaDir);
89
- const tableScope = resolveTableScope(tableSelector, tableKeysFromDefinitions(snapshot?.definitions ?? []));
90
- await pluginRuntime.runOnConfigLoaded({
91
- command: 'migrate',
92
- config,
93
- configPath,
94
- tableScope,
95
- flags,
96
- });
97
- await mkdir(migrationsDir, { recursive: true });
98
- const files = await listMigrations(migrationsDir);
99
- const journal = await journalStore.readJournal();
100
- const appliedNames = new Set(journal.applied.map((entry) => entry.name));
101
- const pendingAll = files.filter((f) => !appliedNames.has(f));
102
- debug('migrate', `migrations: total=${files.length}, applied=${journal.applied.length}, pending=${pendingAll.length}`);
103
- const checksumMismatches = await findChecksumMismatches(migrationsDir, journal);
104
- if (checksumMismatches.length > 0) {
105
- debug('migrate', `checksum mismatches: ${checksumMismatches.map((m) => m.name).join(', ')}`);
106
- }
107
- if (checksumMismatches.length > 0) {
108
- if (jsonMode) {
109
- emitJson('migrate', {
110
- mode: executeRequested ? 'execute' : 'plan',
111
- scope: tableScope,
112
- error: 'Checksum mismatch detected on applied migrations',
113
- checksumMismatches,
114
- });
115
- process.exitCode = 1;
116
- return;
117
- }
118
- throw new Error(`Checksum mismatch detected on applied migrations: ${checksumMismatches
119
- .map((item) => item.name)
120
- .join(', ')}`);
121
- }
122
- if (tableScope.enabled && tableScope.matchCount === 0) {
123
- if (jsonMode) {
124
- emitJson('migrate', {
125
- mode: executeRequested ? 'execute' : 'plan',
126
- scope: tableScope,
127
- pending: [],
128
- applied: [],
129
- warning: `No tables matched selector "${tableScope.selector ?? ''}".`,
130
- });
131
- }
132
- else {
133
- console.log(`No tables matched selector "${tableScope.selector ?? ''}". No migrations selected.`);
134
- }
135
- return;
136
- }
137
- const pending = tableScope.enabled
138
- ? await filterPendingByScope(migrationsDir, pendingAll, new Set(tableScope.matchedTables))
139
- : pendingAll;
140
- if (pending.length === 0) {
141
- if (jsonMode) {
142
- emitJson('migrate', {
143
- mode: executeRequested ? 'execute' : 'plan',
144
- scope: tableScope,
145
- pending: [],
146
- applied: [],
147
- });
148
- }
149
- else {
150
- console.log('No pending migrations.');
151
- }
152
- return;
153
- }
154
- const planned = {
155
- mode: executeRequested ? 'execute' : 'plan',
156
- scope: tableScope,
157
- pending,
158
- };
159
- if (jsonMode && !executeRequested) {
160
- emitJson('migrate', planned);
161
- return;
162
- }
163
- if (!jsonMode) {
164
- if (tableScope.enabled) {
165
- console.log(`Table scope: ${tableScope.selector ?? ''} (${tableScope.matchCount} matched)`);
166
- for (const table of tableScope.matchedTables)
167
- console.log(`- ${table}`);
168
- }
169
- console.log(`Pending migrations: ${pending.length}`);
170
- for (const file of pending)
171
- console.log(`- ${file}`);
172
- }
173
- let shouldExecute = executeRequested;
174
- if (!shouldExecute) {
175
- if (isBackgroundOrCI() || jsonMode) {
176
- if (!jsonMode) {
177
- console.log('\nPlan only. Re-run with --apply to apply and journal these migrations.');
178
- }
179
- return;
180
- }
181
- const rl = createInterface({ input: process.stdin, output: process.stdout });
182
- try {
183
- console.log('');
184
- console.log('Type "yes" to continue. Any other input cancels.');
185
- const response = await rl.question('Apply pending migrations now? [no/yes]: ');
186
- shouldExecute = response.trim().toLowerCase() === 'yes';
187
- }
188
- finally {
189
- rl.close();
190
- }
191
- if (!shouldExecute) {
192
- console.log('Migration apply cancelled by user.');
193
- return;
194
- }
195
- }
196
- const destructiveMigrations = [];
197
- const destructiveOperations = [];
198
- for (const file of pending) {
199
- const sql = await readFile(join(migrationsDir, file), 'utf8');
200
- if (migrationContainsDangerOperation(sql)) {
201
- destructiveMigrations.push(file);
202
- destructiveOperations.push(...collectDestructiveOperationMarkers(file, sql));
203
- }
204
- }
205
- let destructiveAllowed = allowDestructive || config.safety?.allowDestructive === true;
206
- if (destructiveMigrations.length > 0 && !destructiveAllowed) {
207
- const error = 'Blocked destructive migration execution. Re-run with --allow-destructive or set safety.allowDestructive=true after review.';
208
- if (jsonMode) {
209
- emitJson('migrate', {
210
- mode: 'execute',
211
- scope: tableScope,
212
- error,
213
- destructiveMigrations,
214
- destructiveOperations,
215
- });
216
- process.exitCode = 3;
217
- return;
218
- }
219
- if (isBackgroundOrCI()) {
220
- printDestructiveOperationDetails(destructiveOperations);
221
- throw new Error(`${error}\nDestructive migrations: ${destructiveMigrations.join(', ')}\n` +
222
- 'Non-interactive run detected. Pass --allow-destructive to proceed.');
223
- }
224
- const confirmed = await confirmDestructiveExecution(destructiveOperations);
225
- if (!confirmed) {
226
- throw new Error(`Destructive migration cancelled by user.\nDestructive migrations: ${destructiveMigrations.join(', ')}`);
227
- }
228
- destructiveAllowed = true;
229
- }
230
- if (destructiveMigrations.length > 0 && !destructiveAllowed) {
231
- throw new Error('Blocked destructive migration execution.');
232
- }
233
- const appliedNow = [];
234
- for (const file of pending) {
235
- debug('migrate', `applying ${file}`);
236
- const fullPath = join(migrationsDir, file);
237
- const sql = await readFile(fullPath, 'utf8');
238
- const parsedStatements = extractExecutableStatements(sql);
239
- const operationSummaries = extractMigrationOperationSummaries(sql);
240
- debug('migrate', `${file}: ${parsedStatements.length} statements, ${operationSummaries.length} operations`);
241
- const statements = await pluginRuntime.runOnBeforeApply({
242
- command: 'migrate',
243
- config,
244
- tableScope,
245
- flags,
246
- migration: file,
247
- sql,
248
- statements: parsedStatements,
249
- });
250
- for (let i = 0; i < statements.length; i++) {
251
- const statement = statements[i];
252
- await db.command(statement);
253
- const operation = operationSummaries[i];
254
- if (operation) {
255
- await waitForDDLPropagation(db, operation.type, operation.key);
256
- }
257
- }
258
- const entry = {
259
- name: file,
260
- appliedAt: new Date().toISOString().replace('Z', ''),
261
- checksum: checksumSQL(sql),
262
- };
263
- appliedNow.push(entry);
264
- await journalStore.appendEntry(entry);
265
- await pluginRuntime.runOnAfterApply({
266
- command: 'migrate',
267
- config,
268
- tableScope,
269
- flags,
270
- migration: file,
271
- statements,
272
- appliedAt: entry.appliedAt,
273
- });
274
- if (!jsonMode)
275
- console.log(`Applied: ${file}`);
276
- }
277
- if (jsonMode) {
278
- emitJson('migrate', {
279
- mode: 'execute',
280
- scope: tableScope,
281
- applied: appliedNow,
282
- });
283
- return;
284
- }
285
- console.log(`\nMigrations recorded in ClickHouse _chkit_migrations table.`);
286
- }
287
- }
288
- //# sourceMappingURL=migrate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../../src/bin/commands/migrate.ts"],"names":[],"mappings":"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"}
@@ -1,38 +0,0 @@
1
- import { getCommandContext } from '../config.js';
2
- import { type PluginRuntime } from '../plugin-runtime.js';
3
- import { type TableScope } from '../table-scope.js';
4
- export interface PluginLikeContext {
5
- config: Awaited<ReturnType<typeof getCommandContext>>['config'];
6
- configPath: string;
7
- jsonMode: boolean;
8
- runtime: PluginRuntime;
9
- commandArgs: string[];
10
- tableScope: TableScope;
11
- }
12
- interface BuildPluginLikeContextInput {
13
- args: string[];
14
- command: 'plugin' | 'codegen' | 'pull';
15
- handleInvalidPluginOptions?: boolean;
16
- }
17
- interface MissingPluginArgs {
18
- pluginName: string;
19
- availablePlugins: string[];
20
- }
21
- interface MissingCommandArgs {
22
- pluginName: string;
23
- commandName: string;
24
- availableCommands: string[];
25
- }
26
- interface RunPluginLikeCommandInput {
27
- context: PluginLikeContext;
28
- pluginName: string;
29
- commandName: string;
30
- commandArgs: string[];
31
- missingPluginMessage?: (args: MissingPluginArgs) => string;
32
- missingCommandMessage?: (args: MissingCommandArgs) => string;
33
- }
34
- export declare function stripGlobalFlags(args: string[]): string[];
35
- export declare function buildPluginLikeContext(input: BuildPluginLikeContextInput): Promise<PluginLikeContext | null>;
36
- export declare function runPluginLikeCommand(input: RunPluginLikeCommandInput): Promise<void>;
37
- export {};
38
- //# sourceMappingURL=plugin-like.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plugin-like.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/plugin-like.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAY,MAAM,cAAc,CAAA;AAG1D,OAAO,EAAE,KAAK,aAAa,EAAqB,MAAM,sBAAsB,CAAA;AAC5E,OAAO,EAA+C,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAGhG,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;IAC/D,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,OAAO,CAAA;IACjB,OAAO,EAAE,aAAa,CAAA;IACtB,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,UAAU,EAAE,UAAU,CAAA;CACvB;AAED,UAAU,2BAA2B;IACnC,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,OAAO,EAAE,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAA;IACtC,0BAA0B,CAAC,EAAE,OAAO,CAAA;CACrC;AAED,UAAU,iBAAiB;IACzB,UAAU,EAAE,MAAM,CAAA;IAClB,gBAAgB,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED,UAAU,kBAAkB;IAC1B,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,EAAE,MAAM,EAAE,CAAA;CAC5B;AAED,UAAU,yBAAyB;IACjC,OAAO,EAAE,iBAAiB,CAAA;IAC1B,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,oBAAoB,CAAC,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,MAAM,CAAA;IAC1D,qBAAqB,CAAC,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,MAAM,CAAA;CAC7D;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAiBzD;AAED,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,2BAA2B,GACjC,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAqCnC;AAED,wBAAsB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6C1F"}
@@ -1,101 +0,0 @@
1
- import process from 'node:process';
2
- import { getCommandContext, parseArg } from '../config.js';
3
- import { loadSchemaDefinitions } from '../lib.js';
4
- import { printOutput } from '../json-output.js';
5
- import { loadPluginRuntime } from '../plugin-runtime.js';
6
- import { resolveTableScope, tableKeysFromDefinitions } from '../table-scope.js';
7
- import { CLI_VERSION } from '../version.js';
8
- export function stripGlobalFlags(args) {
9
- const tokens = [];
10
- for (let i = 0; i < args.length; i += 1) {
11
- const value = args[i];
12
- if (!value)
13
- continue;
14
- if (value === '--json')
15
- continue;
16
- if (value === '--config') {
17
- i += 1;
18
- continue;
19
- }
20
- if (value === '--table') {
21
- i += 1;
22
- continue;
23
- }
24
- tokens.push(value);
25
- }
26
- return tokens;
27
- }
28
- export async function buildPluginLikeContext(input) {
29
- const commandArgs = stripGlobalFlags(input.args);
30
- const { config, configPath, jsonMode } = await getCommandContext(input.args);
31
- const selector = parseArg('--table', input.args);
32
- const definitions = await loadSchemaDefinitions(config.schema);
33
- const tableScope = resolveTableScope(selector, tableKeysFromDefinitions(definitions));
34
- const runtime = await loadPluginRuntime({
35
- config,
36
- configPath,
37
- cliVersion: CLI_VERSION,
38
- });
39
- try {
40
- await runtime.runOnConfigLoaded({
41
- command: input.command,
42
- config,
43
- configPath,
44
- tableScope,
45
- });
46
- }
47
- catch (error) {
48
- const message = error instanceof Error ? error.message : String(error);
49
- if (input.handleInvalidPluginOptions && message.includes('Invalid plugin option')) {
50
- printOutput({ ok: false, error: message }, jsonMode);
51
- process.exitCode = 2;
52
- return null;
53
- }
54
- throw error;
55
- }
56
- return {
57
- config,
58
- configPath,
59
- jsonMode,
60
- runtime,
61
- commandArgs,
62
- tableScope,
63
- };
64
- }
65
- export async function runPluginLikeCommand(input) {
66
- const selectedPlugin = input.context.runtime.plugins.find((entry) => entry.plugin.manifest.name === input.pluginName);
67
- if (!selectedPlugin) {
68
- const availablePlugins = input.context.runtime.plugins
69
- .map((entry) => entry.plugin.manifest.name)
70
- .sort();
71
- if (input.missingPluginMessage) {
72
- throw new Error(input.missingPluginMessage({ pluginName: input.pluginName, availablePlugins }));
73
- }
74
- throw new Error(`Unknown plugin "${input.pluginName}". Available: ${availablePlugins.length > 0 ? availablePlugins.join(', ') : '(none)'}.`);
75
- }
76
- const foundCommand = input.context.runtime.getCommand(input.pluginName, input.commandName);
77
- if (!foundCommand) {
78
- const availableCommands = (selectedPlugin.plugin.commands ?? []).map((command) => command.name).sort();
79
- if (input.missingCommandMessage) {
80
- throw new Error(input.missingCommandMessage({
81
- pluginName: input.pluginName,
82
- commandName: input.commandName,
83
- availableCommands,
84
- }));
85
- }
86
- throw new Error(`Unknown command "${input.commandName}" for plugin "${input.pluginName}". Available: ${availableCommands.length > 0 ? availableCommands.join(', ') : '(none)'}.`);
87
- }
88
- const exitCode = await input.context.runtime.runPluginCommand(input.pluginName, input.commandName, {
89
- config: input.context.config,
90
- configPath: input.context.configPath,
91
- jsonMode: input.context.jsonMode,
92
- tableScope: input.context.tableScope,
93
- args: input.commandArgs,
94
- print(value) {
95
- printOutput(value, input.context.jsonMode);
96
- },
97
- });
98
- if (exitCode !== 0)
99
- process.exitCode = exitCode;
100
- }
101
- //# sourceMappingURL=plugin-like.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plugin-like.js","sourceRoot":"","sources":["../../../src/bin/commands/plugin-like.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import { type CommandDef } from '../../plugins.js';
2
- export declare const pluginCommand: CommandDef;
3
- //# sourceMappingURL=plugin.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,UAAU,EAA4C,MAAM,kBAAkB,CAAA;AAOxG,eAAO,MAAM,aAAa,EAAE,UAK3B,CAAA"}