@chkit/plugin-backfill 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 (64) hide show
  1. package/README.md +3 -3
  2. package/dist/async-backfill.d.ts +13 -2
  3. package/dist/async-backfill.d.ts.map +1 -1
  4. package/dist/async-backfill.js +38 -17
  5. package/dist/async-backfill.js.map +1 -1
  6. package/dist/check.d.ts +1 -1
  7. package/dist/check.d.ts.map +1 -1
  8. package/dist/check.js +42 -2
  9. package/dist/check.js.map +1 -1
  10. package/dist/chunking/e2e/seed-datasets.script.d.ts +2 -5
  11. package/dist/chunking/e2e/seed-datasets.script.d.ts.map +1 -1
  12. package/dist/chunking/e2e/seed-datasets.script.js +4 -7
  13. package/dist/chunking/e2e/seed-datasets.script.js.map +1 -1
  14. package/dist/chunking/services/distribution-source.js.map +1 -1
  15. package/dist/chunking/services/metadata-source.d.ts.map +1 -1
  16. package/dist/chunking/services/metadata-source.js +10 -2
  17. package/dist/chunking/services/metadata-source.js.map +1 -1
  18. package/dist/chunking/services/row-probe.js.map +1 -1
  19. package/dist/chunking/sql.d.ts +2 -0
  20. package/dist/chunking/sql.d.ts.map +1 -1
  21. package/dist/chunking/sql.js +54 -7
  22. package/dist/chunking/sql.js.map +1 -1
  23. package/dist/options.d.ts +20 -2
  24. package/dist/options.d.ts.map +1 -1
  25. package/dist/options.js +18 -1
  26. package/dist/options.js.map +1 -1
  27. package/dist/planner.d.ts +31 -2
  28. package/dist/planner.d.ts.map +1 -1
  29. package/dist/planner.js +211 -9
  30. package/dist/planner.js.map +1 -1
  31. package/dist/plugin.d.ts.map +1 -1
  32. package/dist/plugin.js +34 -3
  33. package/dist/plugin.js.map +1 -1
  34. package/dist/sdk.d.ts +2 -1
  35. package/dist/sdk.d.ts.map +1 -1
  36. package/dist/sdk.js +1 -0
  37. package/dist/sdk.js.map +1 -1
  38. package/dist/state.d.ts +43 -1
  39. package/dist/state.d.ts.map +1 -1
  40. package/dist/state.js +58 -0
  41. package/dist/state.js.map +1 -1
  42. package/dist/types.d.ts +23 -3
  43. package/dist/types.d.ts.map +1 -1
  44. package/package.json +4 -6
  45. package/dist/args.d.ts +0 -111
  46. package/dist/args.d.ts.map +0 -1
  47. package/dist/args.js +0 -146
  48. package/dist/args.js.map +0 -1
  49. package/dist/chunking/build.d.ts +0 -11
  50. package/dist/chunking/build.d.ts.map +0 -1
  51. package/dist/chunking/build.js +0 -51
  52. package/dist/chunking/build.js.map +0 -1
  53. package/dist/chunking/introspect.d.ts +0 -40
  54. package/dist/chunking/introspect.d.ts.map +0 -1
  55. package/dist/chunking/introspect.js +0 -187
  56. package/dist/chunking/introspect.js.map +0 -1
  57. package/dist/chunking/splitter.d.ts +0 -20
  58. package/dist/chunking/splitter.d.ts.map +0 -1
  59. package/dist/chunking/splitter.js +0 -76
  60. package/dist/chunking/splitter.js.map +0 -1
  61. package/dist/runtime.d.ts +0 -54
  62. package/dist/runtime.d.ts.map +0 -1
  63. package/dist/runtime.js +0 -517
  64. package/dist/runtime.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAOA,OAAO,EAmBL,KAAK,YAAY,EAIlB,MAAM,cAAc,CAAA;AAcrB,OAAO,KAAK,EACV,cAAc,EAEd,0BAA0B,EAE3B,MAAM,YAAY,CAAA;AAsJnB,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,YAAiB,GAAG,cAAc,CAkT/E;AAED,wBAAgB,QAAQ,CAAC,OAAO,GAAE,YAAiB,GAAG,0BAA0B,CAO/E"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAOA,OAAO,EAmBL,KAAK,YAAY,EAIlB,MAAM,cAAc,CAAA;AAcrB,OAAO,KAAK,EACV,cAAc,EAEd,0BAA0B,EAE3B,MAAM,YAAY,CAAA;AAiKnB,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,YAAiB,GAAG,cAAc,CAuU/E;AAED,wBAAgB,QAAQ,CAAC,OAAO,GAAE,YAAiB,GAAG,0BAA0B,CAO/E"}
package/dist/plugin.js CHANGED
@@ -1,4 +1,4 @@
1
- import { createClickHouseExecutor } from '@chkit/clickhouse';
1
+ import { createClickHouseExecutor, createStatelessClickHouseExecutor } from '@chkit/clickhouse';
2
2
  import { createPluginRunner, withFactoryDefaults } from '@chkit/core';
3
3
  import { executeBackfill } from './async-backfill.js';
4
4
  import { buildChunkExecutionSql } from './chunking/sql.js';
@@ -6,7 +6,7 @@ import { generateIdempotencyToken } from './chunking/utils/ids.js';
6
6
  import { BackfillConfigError } from './errors.js';
7
7
  import { CheckSchema, PLAN_FLAGS, PLAN_FLAG_MAP, PLAN_ID_FLAGS, PLAN_ID_FLAG_MAP, PlanSchema, PluginConfigSchema, RESUME_FLAGS, RESUME_FLAG_MAP, ResumeSchema, RUN_FLAGS, RUN_FLAG_MAP, RunSchema, StatusSchema, SUBMIT_FLAGS, SUBMIT_FLAG_MAP, SubmitSchema, } from './options.js';
8
8
  import { planPayload, statusPayload, cancelPayload, doctorPayload } from './payload.js';
9
- import { buildBackfillPlan } from './planner.js';
9
+ import { assertBackfillTargetSafe, assertReplayColumnsStillInsertable, buildBackfillPlan } from './planner.js';
10
10
  import { evaluateBackfillCheck } from './check.js';
11
11
  import { cancelBackfillRun, getBackfillDoctorReport, getBackfillStatus } from './queries.js';
12
12
  import { backfillPaths, ensureEnvironmentMatch, nowIso, readPlan, readRun, summarizeRunStatus, writeJson, } from './state.js';
@@ -54,6 +54,16 @@ async function runBackfill(input) {
54
54
  }
55
55
  const db = createClickHouseExecutor(input.clickhouse);
56
56
  try {
57
+ const [database, table] = plan.target.split('.');
58
+ if (!database || !table)
59
+ throw new BackfillConfigError('Invalid backfill target.');
60
+ const insertableColumns = await assertBackfillTargetSafe({ database, table, mode: plan.execution.mode, query: (sql, settings) => db.query(sql, settings) });
61
+ assertReplayColumnsStillInsertable({
62
+ planId: plan.planId,
63
+ target: plan.target,
64
+ targetColumns: plan.execution.targetColumns,
65
+ insertableColumns,
66
+ });
57
67
  const runState = {
58
68
  planId: plan.planId,
59
69
  target: plan.target,
@@ -65,6 +75,7 @@ async function runBackfill(input) {
65
75
  await writeJson(paths.runPath, runState);
66
76
  const result = await executeBackfill({
67
77
  executor: db,
78
+ cluster: input.clickhouse.cluster,
68
79
  planId: plan.planId,
69
80
  chunks: plan.chunkPlan.chunks.map((chunk) => ({ id: chunk.id })),
70
81
  buildQuery: (chunk) => {
@@ -79,6 +90,7 @@ async function runBackfill(input) {
79
90
  table: plan.chunkPlan.table,
80
91
  mvReplayQueries: plan.execution.mvReplayQueries,
81
92
  targetColumns: plan.execution.targetColumns,
93
+ cutoverKey: plan.execution.cutoverKey,
82
94
  idempotencyToken: plan.execution.requireIdempotencyToken
83
95
  ? generateIdempotencyToken(plan.planId, planChunk.id)
84
96
  : '',
@@ -158,7 +170,10 @@ export function createBackfillPlugin(options = {}) {
158
170
  if (!context.config.clickhouse) {
159
171
  throw new BackfillConfigError('ClickHouse connection is required for backfill planning. Configure clickhouse in your clickhouse.config.ts.');
160
172
  }
161
- const db = createClickHouseExecutor(context.config.clickhouse);
173
+ // Planning only reads, and chunk refinement reads several slices
174
+ // at once, which a session-bound executor rejects ("Session is
175
+ // locked by a concurrent client").
176
+ const db = createStatelessClickHouseExecutor(context.config.clickhouse);
162
177
  try {
163
178
  const output = await buildBackfillPlan({
164
179
  opts,
@@ -388,6 +403,22 @@ export function createBackfillPlugin(options = {}) {
388
403
  },
389
404
  }),
390
405
  },
406
+ {
407
+ name: 'list',
408
+ description: 'List the backfill jobs of a managed job backend service (e.g. ObsessionDB)',
409
+ run: runCommand({
410
+ command: 'list',
411
+ label: 'Backfill list',
412
+ fn: async () => {
413
+ // Reaching this handler means no managed backend intercepted the
414
+ // command. The ObsessionDB plugin lists a service's jobs via its
415
+ // onBeforePluginCommand hook; local runs have no job list.
416
+ throw new BackfillConfigError('backfill list shows the jobs of a managed job backend. Register the ObsessionDB plugin, log in and select a service ' +
417
+ '(`chkit obsessiondb login`, then `chkit obsessiondb service select`). ' +
418
+ 'Inspect a local run with `chkit plugin backfill status --plan-id <id>`.');
419
+ },
420
+ }),
421
+ },
391
422
  ],
392
423
  hooks: {
393
424
  onConfigLoaded() {
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
package/dist/sdk.d.ts CHANGED
@@ -4,12 +4,13 @@ export { analyzeAndChunk, analyzeTable } from './chunking/analyze.js';
4
4
  export { decodeChunkPlanFromPersistence, encodeChunkPlanForPersistence, } from './chunking/boundary-codec.js';
5
5
  export { generateChunkPlan } from './chunking/planner.js';
6
6
  export { buildBackfillPlan } from './planner.js';
7
+ export { confirmBackfillSubmission, listRemoteSubmissions, readPlanSubmission, recordBackfillSubmission, } from './state.js';
7
8
  export { PlanSchema, SubmitSchema, parseByteSize } from './options.js';
8
9
  export { CHKIT_BACKFILL_LOGGER_CATEGORY, CHKIT_LOGGER_CATEGORY, getBackfillLogger, } from './logging.js';
9
10
  export { buildChunkExecutionSql, buildWhereClauseFromChunk, injectSortKeyFilter, rewriteSelectColumns, } from './chunking/sql.js';
10
11
  export { generateIdempotencyToken } from './chunking/utils/ids.js';
11
12
  export type { PlanOptions, SubmitOptions } from './options.js';
12
- export type { BackfillPlanState, BuildBackfillPlanOutput } from './types.js';
13
+ export type { BackfillPlanState, BackfillSubmissionState, BuildBackfillPlanOutput } from './types.js';
13
14
  export type { BackfillOptions, BackfillChunkState, BackfillProgress, BackfillResult, } from './async-backfill.js';
14
15
  export type { AnalyzeAndChunkInput, AnalyzeAndChunkResult, AnalyzeTableInput, AnalyzeTableResult, } from './chunking/analyze.js';
15
16
  export type { Chunk, ChunkDerivationStep, ChunkPlan, ChunkRange, EstimateConfidence, EstimateReason, FocusedValue, Partition, PartitionDiagnostics, SortKey, } from './chunking/types.js';
package/dist/sdk.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAEhC,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACrE,OAAO,EACL,8BAA8B,EAC9B,6BAA6B,GAC9B,MAAM,8BAA8B,CAAA;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAChD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACtE,OAAO,EACL,8BAA8B,EAC9B,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAElE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC9D,YAAY,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AAE5E,YAAY,EACV,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,cAAc,GACf,MAAM,qBAAqB,CAAA;AAE5B,YAAY,EACV,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,uBAAuB,CAAA;AAE9B,YAAY,EACV,KAAK,EACL,mBAAmB,EACnB,SAAS,EACT,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,SAAS,EACT,oBAAoB,EACpB,OAAO,GACR,MAAM,qBAAqB,CAAA"}
1
+ {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAEhC,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACrE,OAAO,EACL,8BAA8B,EAC9B,6BAA6B,GAC9B,MAAM,8BAA8B,CAAA;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAChD,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACrB,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACtE,OAAO,EACL,8BAA8B,EAC9B,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAElE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC9D,YAAY,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AAErG,YAAY,EACV,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,cAAc,GACf,MAAM,qBAAqB,CAAA;AAE5B,YAAY,EACV,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,uBAAuB,CAAA;AAE9B,YAAY,EACV,KAAK,EACL,mBAAmB,EACnB,SAAS,EACT,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,SAAS,EACT,oBAAoB,EACpB,OAAO,GACR,MAAM,qBAAqB,CAAA"}
package/dist/sdk.js CHANGED
@@ -4,6 +4,7 @@ export { analyzeAndChunk, analyzeTable } from './chunking/analyze.js';
4
4
  export { decodeChunkPlanFromPersistence, encodeChunkPlanForPersistence, } from './chunking/boundary-codec.js';
5
5
  export { generateChunkPlan } from './chunking/planner.js';
6
6
  export { buildBackfillPlan } from './planner.js';
7
+ export { confirmBackfillSubmission, listRemoteSubmissions, readPlanSubmission, recordBackfillSubmission, } from './state.js';
7
8
  export { PlanSchema, SubmitSchema, parseByteSize } from './options.js';
8
9
  export { CHKIT_BACKFILL_LOGGER_CATEGORY, CHKIT_LOGGER_CATEGORY, getBackfillLogger, } from './logging.js';
9
10
  export { buildChunkExecutionSql, buildWhereClauseFromChunk, injectSortKeyFilter, rewriteSelectColumns, } from './chunking/sql.js';
package/dist/sdk.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAEhC,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACrE,OAAO,EACL,8BAA8B,EAC9B,6BAA6B,GAC9B,MAAM,8BAA8B,CAAA;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAChD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACtE,OAAO,EACL,8BAA8B,EAC9B,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA"}
1
+ {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAEhC,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACrE,OAAO,EACL,8BAA8B,EAC9B,6BAA6B,GAC9B,MAAM,8BAA8B,CAAA;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAChD,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACrB,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACtE,OAAO,EACL,8BAA8B,EAC9B,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA"}
package/dist/state.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type { ResolvedChxConfig } from '@chkit/core';
2
- import type { BackfillEnvironment, BackfillPathSet, BackfillPlanState, BackfillRunState, BackfillStatusSummary, ReadPlanOutput } from './types.js';
2
+ import type { BackfillEnvironment, BackfillPathSet, BackfillPlanState, BackfillRunState, BackfillStatusSummary, BackfillSubmissionState, ReadPlanOutput } from './types.js';
3
3
  export declare function hashId(input: string): string;
4
4
  export declare function nowIso(): string;
5
5
  export declare function randomPlanId(): string;
@@ -25,6 +25,48 @@ export declare function readPlan(input: {
25
25
  stateDir?: string;
26
26
  }): Promise<ReadPlanOutput>;
27
27
  export declare function readRun(runPath: string): Promise<BackfillRunState | null>;
28
+ export declare function readSubmission(submissionPath: string): Promise<BackfillSubmissionState | null>;
29
+ /**
30
+ * Records that a plan was handed to a managed job backend, so `check` does not
31
+ * wait for a local run that will never be written.
32
+ */
33
+ export declare function recordBackfillSubmission(input: {
34
+ plan: Pick<BackfillPlanState, 'planId' | 'target'>;
35
+ jobId: string;
36
+ configPath: string;
37
+ config: Pick<ResolvedChxConfig, 'metaDir'>;
38
+ stateDir?: string;
39
+ }): Promise<string>;
40
+ /**
41
+ * A saved plan and its submission marker (null when it was never submitted),
42
+ * or null when no plan with this id is saved.
43
+ */
44
+ export declare function readPlanSubmission(input: {
45
+ planId: string;
46
+ configPath: string;
47
+ config: Pick<ResolvedChxConfig, 'metaDir'>;
48
+ stateDir?: string;
49
+ }): Promise<{
50
+ plan: BackfillPlanState;
51
+ submission: BackfillSubmissionState | null;
52
+ } | null>;
53
+ /**
54
+ * Submissions of saved plans that have no local run. The job backend, not a
55
+ * local run, decides whether these backfills are done.
56
+ */
57
+ export declare function listRemoteSubmissions(input: {
58
+ configPath: string;
59
+ config: Pick<ResolvedChxConfig, 'metaDir'>;
60
+ stateDir?: string;
61
+ }): Promise<Array<{
62
+ submissionPath: string;
63
+ submission: BackfillSubmissionState;
64
+ }>>;
65
+ /** Records that the job backend reported the submitted job completed. */
66
+ export declare function confirmBackfillSubmission(input: {
67
+ submissionPath: string;
68
+ submission: BackfillSubmissionState;
69
+ }): Promise<BackfillSubmissionState>;
28
70
  export declare function listPlanIds(plansDir: string): Promise<string[]>;
29
71
  export declare function summarizeRunStatus(run: BackfillRunState, runPath: string, plan: BackfillPlanState): BackfillStatusSummary;
30
72
  //# sourceMappingURL=state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAIpD,OAAO,KAAK,EACV,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,cAAc,EACf,MAAM,YAAY,CAAA;AAEnB,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED,wBAAgB,MAAM,IAAI,MAAM,CAE/B;AAED,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED,wBAAgB,6BAA6B,CAC3C,UAAU,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,GACzD,mBAAmB,GAAG,SAAS,CASjC;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,IAAI,EAAE,iBAAiB,CAAA;IACvB,UAAU,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAA;IAC1D,gBAAgB,EAAE,OAAO,CAAA;CAC1B,GAAG,IAAI,CAeP;AAED,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,IAAI,CAAC,iBAAiB,EAAE,SAAS,CAAC,EAC1C,UAAU,EAAE,MAAM,EAClB,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,CAKR;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,eAAe,CAU/E;AAcD,wBAAsB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAG/E;AAED,wBAAsB,QAAQ,CAAC,KAAK,EAAE;IACpC,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,IAAI,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAA;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,GAAG,OAAO,CAAC,cAAc,CAAC,CAqB1B;AAED,wBAAsB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAE/E;AAED,wBAAsB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAOrE;AAED,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,gBAAgB,EACrB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,iBAAiB,GACtB,qBAAqB,CAmCvB"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
package/dist/state.js CHANGED
@@ -56,6 +56,7 @@ export function backfillPaths(stateDir, planId) {
56
56
  runsDir,
57
57
  planPath: join(plansDir, `${planId}.json`),
58
58
  runPath: join(runsDir, `${planId}.json`),
59
+ submissionPath: join(stateDir, 'submissions', `${planId}.json`),
59
60
  };
60
61
  }
61
62
  async function readJsonMaybe(filePath) {
@@ -93,6 +94,63 @@ export async function readPlan(input) {
93
94
  export async function readRun(runPath) {
94
95
  return readJsonMaybe(runPath);
95
96
  }
97
+ export async function readSubmission(submissionPath) {
98
+ return readJsonMaybe(submissionPath);
99
+ }
100
+ /**
101
+ * Records that a plan was handed to a managed job backend, so `check` does not
102
+ * wait for a local run that will never be written.
103
+ */
104
+ export async function recordBackfillSubmission(input) {
105
+ const stateDir = computeBackfillStateDir(input.config, input.configPath, input.stateDir);
106
+ const { submissionPath } = backfillPaths(stateDir, input.plan.planId);
107
+ const submission = {
108
+ planId: input.plan.planId,
109
+ target: input.plan.target,
110
+ jobId: input.jobId,
111
+ submittedAt: nowIso(),
112
+ };
113
+ await writeJson(submissionPath, submission);
114
+ return submissionPath;
115
+ }
116
+ /**
117
+ * A saved plan and its submission marker (null when it was never submitted),
118
+ * or null when no plan with this id is saved.
119
+ */
120
+ export async function readPlanSubmission(input) {
121
+ const stateDir = computeBackfillStateDir(input.config, input.configPath, input.stateDir);
122
+ const paths = backfillPaths(stateDir, input.planId);
123
+ if (!existsSync(paths.planPath))
124
+ return null;
125
+ const { plan } = await readPlan(input);
126
+ return { plan, submission: await readSubmission(paths.submissionPath) };
127
+ }
128
+ /**
129
+ * Submissions of saved plans that have no local run. The job backend, not a
130
+ * local run, decides whether these backfills are done.
131
+ */
132
+ export async function listRemoteSubmissions(input) {
133
+ const stateDir = computeBackfillStateDir(input.config, input.configPath, input.stateDir);
134
+ const planIds = await listPlanIds(join(stateDir, 'plans'));
135
+ const entries = await Promise.all(planIds.map(async (planId) => {
136
+ const paths = backfillPaths(stateDir, planId);
137
+ if (await readRun(paths.runPath))
138
+ return undefined;
139
+ const submission = await readSubmission(paths.submissionPath);
140
+ return submission ? { submissionPath: paths.submissionPath, submission } : undefined;
141
+ }));
142
+ return entries.filter((entry) => entry !== undefined);
143
+ }
144
+ /** Records that the job backend reported the submitted job completed. */
145
+ export async function confirmBackfillSubmission(input) {
146
+ const confirmed = {
147
+ ...input.submission,
148
+ status: 'completed',
149
+ confirmedAt: nowIso(),
150
+ };
151
+ await writeJson(input.submissionPath, confirmed);
152
+ return confirmed;
153
+ }
96
154
  export async function listPlanIds(plansDir) {
97
155
  if (!existsSync(plansDir))
98
156
  return [];
package/dist/state.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -11,8 +11,14 @@ export interface BackfillEnvironment {
11
11
  }
12
12
  export type BackfillPlanStatus = 'planned' | 'running' | 'paused' | 'completed' | 'failed' | 'cancelled';
13
13
  interface BackfillExecutionPlan {
14
- mode: 'copy' | 'mv_replay';
14
+ /**
15
+ * `cutover_copy` copies a `generate --cutover` snapshot into its shadow
16
+ * table, skipping rows whose key the shadow already holds.
17
+ */
18
+ mode: 'copy' | 'mv_replay' | 'cutover_copy';
15
19
  sourceTarget: string;
20
+ /** cutover_copy: the unique key that tells copied rows from mirrored rows. */
21
+ cutoverKey?: string[];
16
22
  /**
17
23
  * One `SELECT` per materialized view feeding the target table. mv_replay
18
24
  * inserts all of them (via `UNION ALL`) so every MV's rows are rebuilt.
@@ -58,6 +64,19 @@ export interface BackfillRunState {
58
64
  lastError?: string;
59
65
  progress: BackfillProgress;
60
66
  }
67
+ /**
68
+ * Written by a managed `submit` (e.g. ObsessionDB): the plan's chunks run as a
69
+ * job on the backend, so no local run state is ever written for it.
70
+ */
71
+ export interface BackfillSubmissionState {
72
+ planId: string;
73
+ target: string;
74
+ jobId: string;
75
+ submittedAt: string;
76
+ /** Set once the job backend reported the job completed; check stops asking then. */
77
+ status?: 'completed';
78
+ confirmedAt?: string;
79
+ }
61
80
  export interface BackfillStatusSummary {
62
81
  planId: string;
63
82
  target: string;
@@ -87,7 +106,7 @@ export interface BackfillPluginCheckResult {
87
106
  evaluated: boolean;
88
107
  ok: boolean;
89
108
  findings: Array<{
90
- code: 'backfill_required_pending' | 'backfill_plan_missing' | 'backfill_plan_stale' | 'backfill_overlap_blocked' | 'backfill_window_exceeds_limit' | 'backfill_chunk_failed_retry_exhausted' | 'backfill_policy_relaxed';
109
+ code: 'backfill_required_pending' | 'backfill_submitted_unverified' | 'backfill_plan_missing' | 'backfill_plan_stale' | 'backfill_overlap_blocked' | 'backfill_window_exceeds_limit' | 'backfill_chunk_failed_retry_exhausted' | 'backfill_policy_relaxed';
91
110
  message: string;
92
111
  severity: 'info' | 'warn' | 'error';
93
112
  metadata?: Record<string, unknown>;
@@ -109,6 +128,7 @@ export interface BackfillPathSet {
109
128
  runsDir: string;
110
129
  planPath: string;
111
130
  runPath: string;
131
+ submissionPath: string;
112
132
  }
113
133
  export interface BackfillDoctorReport {
114
134
  planId: string;
@@ -135,7 +155,7 @@ export interface BackfillPlugin {
135
155
  };
136
156
  optionsSchema?: SafeParseable<Record<string, unknown>>;
137
157
  commands: Array<{
138
- name: 'plan' | 'submit' | 'run' | 'resume' | 'status' | 'cancel' | 'doctor';
158
+ name: 'plan' | 'submit' | 'run' | 'resume' | 'status' | 'cancel' | 'doctor' | 'list';
139
159
  description: string;
140
160
  flags?: ReadonlyArray<{
141
161
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chkit/plugin-backfill",
3
- "version": "0.1.2-beta.7",
3
+ "version": "0.2.0-beta.12",
4
4
  "description": "Time-windowed data backfill with checkpoints for chkit",
5
5
  "license": "MIT",
6
6
  "author": "ObsessionDB",
@@ -42,14 +42,12 @@
42
42
  "dev": "tsc -p tsconfig.json --watch",
43
43
  "typecheck": "tsc -p tsconfig.json --noEmit",
44
44
  "lint": "biome lint src",
45
- "test": "bun test src",
46
- "test:env": "doppler run --project chkit --config ci -- bun test src",
47
- "seed:env": "doppler run --project chkit --config ci -- bun run src/chunking/e2e/seed-datasets.script.ts",
45
+ "test": "bun run src/chunking/e2e/seed-datasets.script.ts && bun test src",
48
46
  "clean": "rm -rf dist"
49
47
  },
50
48
  "dependencies": {
51
- "@chkit/clickhouse": "0.1.2-beta.7",
52
- "@chkit/core": "0.1.2-beta.7",
49
+ "@chkit/clickhouse": "0.2.0-beta.12",
50
+ "@chkit/core": "0.2.0-beta.12",
53
51
  "@logtape/logtape": "^2.0.5",
54
52
  "p-map": "^7.0.4",
55
53
  "zod": "^4.3.6"
package/dist/args.d.ts DELETED
@@ -1,111 +0,0 @@
1
- import { type ParsedFlags } from '@chkit/core';
2
- import type { ParsedCancelArgs, ParsedDoctorArgs, ParsedPlanArgs, ParsedResumeArgs, ParsedRunArgs, ParsedStatusArgs } from './types.js';
3
- export declare const PLAN_FLAGS: readonly [{
4
- readonly name: "--target";
5
- readonly type: "string";
6
- readonly description: "Target table (database.table)";
7
- readonly placeholder: "<database.table>";
8
- }, {
9
- readonly name: "--from";
10
- readonly type: "string";
11
- readonly description: "Start timestamp";
12
- readonly placeholder: "<timestamp>";
13
- }, {
14
- readonly name: "--to";
15
- readonly type: "string";
16
- readonly description: "End timestamp";
17
- readonly placeholder: "<timestamp>";
18
- }, {
19
- readonly name: "--chunk-hours";
20
- readonly type: "string";
21
- readonly description: "Hours per chunk";
22
- readonly placeholder: "<hours>";
23
- }, {
24
- readonly name: "--time-column";
25
- readonly type: "string";
26
- readonly description: "Time column for WHERE clause";
27
- readonly placeholder: "<column>";
28
- }, {
29
- readonly name: "--force-large-window";
30
- readonly type: "boolean";
31
- readonly description: "Allow large time windows without confirmation";
32
- }, {
33
- readonly name: "--force";
34
- readonly type: "boolean";
35
- readonly description: "Delete existing plan and regenerate from scratch";
36
- }];
37
- export declare const RUN_FLAGS: readonly [{
38
- readonly name: "--plan-id";
39
- readonly type: "string";
40
- readonly description: "Plan ID to execute";
41
- readonly placeholder: "<id>";
42
- }, {
43
- readonly name: "--replay-done";
44
- readonly type: "boolean";
45
- readonly description: "Re-execute already completed chunks";
46
- }, {
47
- readonly name: "--replay-failed";
48
- readonly type: "boolean";
49
- readonly description: "Re-execute failed chunks";
50
- }, {
51
- readonly name: "--force-overlap";
52
- readonly type: "boolean";
53
- readonly description: "Allow overlapping runs";
54
- }, {
55
- readonly name: "--force-compatibility";
56
- readonly type: "boolean";
57
- readonly description: "Skip compatibility checks";
58
- }, {
59
- readonly name: "--force-environment";
60
- readonly type: "boolean";
61
- readonly description: "Skip environment mismatch checks";
62
- }, {
63
- readonly name: "--simulate-fail-chunk";
64
- readonly type: "string";
65
- readonly description: "Simulate failure on chunk";
66
- readonly placeholder: "<chunk-id>";
67
- }, {
68
- readonly name: "--simulate-fail-count";
69
- readonly type: "string";
70
- readonly description: "Number of simulated failures";
71
- readonly placeholder: "<count>";
72
- }];
73
- export declare const RESUME_FLAGS: readonly [{
74
- readonly name: "--plan-id";
75
- readonly type: "string";
76
- readonly description: "Plan ID to resume";
77
- readonly placeholder: "<id>";
78
- }, {
79
- readonly name: "--replay-done";
80
- readonly type: "boolean";
81
- readonly description: "Re-execute already completed chunks";
82
- }, {
83
- readonly name: "--replay-failed";
84
- readonly type: "boolean";
85
- readonly description: "Re-execute failed chunks";
86
- }, {
87
- readonly name: "--force-overlap";
88
- readonly type: "boolean";
89
- readonly description: "Allow overlapping runs";
90
- }, {
91
- readonly name: "--force-compatibility";
92
- readonly type: "boolean";
93
- readonly description: "Skip compatibility checks";
94
- }, {
95
- readonly name: "--force-environment";
96
- readonly type: "boolean";
97
- readonly description: "Skip environment mismatch checks";
98
- }];
99
- export declare const PLAN_ID_FLAGS: readonly [{
100
- readonly name: "--plan-id";
101
- readonly type: "string";
102
- readonly description: "Plan ID";
103
- readonly placeholder: "<id>";
104
- }];
105
- export declare function parsePlanArgs(flags: ParsedFlags): ParsedPlanArgs;
106
- export declare function parseRunArgs(flags: ParsedFlags): ParsedRunArgs;
107
- export declare function parseResumeArgs(flags: ParsedFlags): ParsedResumeArgs;
108
- export declare function parseStatusArgs(flags: ParsedFlags): ParsedStatusArgs;
109
- export declare function parseCancelArgs(flags: ParsedFlags): ParsedCancelArgs;
110
- export declare function parseDoctorArgs(flags: ParsedFlags): ParsedDoctorArgs;
111
- //# sourceMappingURL=args.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../src/args.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAGvE,OAAO,KAAK,EACV,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EACjB,MAAM,YAAY,CAAA;AAEnB,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQZ,CAAA;AAEX,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASX,CAAA;AAEX,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;EAOd,CAAA;AAEX,eAAO,MAAM,aAAa;;;;;EAEf,CAAA;AAgCX,wBAAgB,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,cAAc,CAgChE;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,aAAa,CAgC9D;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,WAAW,GAAG,gBAAgB,CAUpE;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,WAAW,GAAG,gBAAgB,CAKpE;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,WAAW,GAAG,gBAAgB,CAEpE;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,WAAW,GAAG,gBAAgB,CAEpE"}