primitive-admin 1.2.0-alpha.3 → 1.2.0-alpha.5

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 (143) hide show
  1. package/assets/skill/skills/primitive-platform/SKILL.md +17 -0
  2. package/dist/src/commands/agent-sessions.js +4 -0
  3. package/dist/src/commands/agent-sessions.js.map +1 -1
  4. package/dist/src/commands/auth.js +7 -4
  5. package/dist/src/commands/auth.js.map +1 -1
  6. package/dist/src/commands/connections.js +11 -12
  7. package/dist/src/commands/connections.js.map +1 -1
  8. package/dist/src/commands/database-type-configs.js +2 -76
  9. package/dist/src/commands/database-type-configs.js.map +1 -1
  10. package/dist/src/commands/database-types.js +313 -13
  11. package/dist/src/commands/database-types.js.map +1 -1
  12. package/dist/src/commands/databases.d.ts +9 -0
  13. package/dist/src/commands/databases.js +78 -403
  14. package/dist/src/commands/databases.js.map +1 -1
  15. package/dist/src/commands/documents.d.ts +32 -2
  16. package/dist/src/commands/documents.js +344 -711
  17. package/dist/src/commands/documents.js.map +1 -1
  18. package/dist/src/commands/functions.js +2 -2
  19. package/dist/src/commands/functions.js.map +1 -1
  20. package/dist/src/commands/llm.js +6 -9
  21. package/dist/src/commands/llm.js.map +1 -1
  22. package/dist/src/commands/prompts.d.ts +7 -0
  23. package/dist/src/commands/prompts.js +44 -0
  24. package/dist/src/commands/prompts.js.map +1 -1
  25. package/dist/src/commands/settings.d.ts +9 -12
  26. package/dist/src/commands/settings.js +79 -31
  27. package/dist/src/commands/settings.js.map +1 -1
  28. package/dist/src/commands/sync.d.ts +43 -110
  29. package/dist/src/commands/sync.js +356 -1251
  30. package/dist/src/commands/sync.js.map +1 -1
  31. package/dist/src/lib/aggregate-output.d.ts +25 -0
  32. package/dist/src/lib/aggregate-output.js +53 -0
  33. package/dist/src/lib/aggregate-output.js.map +1 -0
  34. package/dist/src/lib/api-client.d.ts +48 -204
  35. package/dist/src/lib/api-client.js +57 -321
  36. package/dist/src/lib/api-client.js.map +1 -1
  37. package/dist/src/lib/codegen-shared/generatedFiles.d.ts +6 -7
  38. package/dist/src/lib/codegen-shared/generatedFiles.js +2 -2
  39. package/dist/src/lib/codegen-shared/generatedFiles.js.map +1 -1
  40. package/dist/src/lib/codegen-shared/prettierStable.d.ts +1 -1
  41. package/dist/src/lib/codegen-shared/prettierStable.js +1 -1
  42. package/dist/src/lib/codegen-shared/resolveCodegenSourceDir.d.ts +2 -2
  43. package/dist/src/lib/codegen-shared/resolveCodegenSourceDir.js +2 -2
  44. package/dist/src/lib/config-object-descriptor.js +15 -10
  45. package/dist/src/lib/config-object-descriptor.js.map +1 -1
  46. package/dist/src/lib/config-surface.d.ts +2 -1
  47. package/dist/src/lib/config-surface.js +4 -1
  48. package/dist/src/lib/config-surface.js.map +1 -1
  49. package/dist/src/lib/connections-list.d.ts +10 -0
  50. package/dist/src/lib/connections-list.js +18 -0
  51. package/dist/src/lib/connections-list.js.map +1 -0
  52. package/dist/src/lib/csv.d.ts +8 -9
  53. package/dist/src/lib/csv.js +3 -4
  54. package/dist/src/lib/csv.js.map +1 -1
  55. package/dist/src/lib/db-codegen/dbGenerator.js +5 -16
  56. package/dist/src/lib/db-codegen/dbGenerator.js.map +1 -1
  57. package/dist/src/lib/db-codegen/dbNaming.d.ts +5 -13
  58. package/dist/src/lib/db-codegen/dbNaming.js +5 -17
  59. package/dist/src/lib/db-codegen/dbNaming.js.map +1 -1
  60. package/dist/src/lib/db-codegen/dbTemplates.d.ts +7 -56
  61. package/dist/src/lib/db-codegen/dbTemplates.js +25 -125
  62. package/dist/src/lib/db-codegen/dbTemplates.js.map +1 -1
  63. package/dist/src/lib/db-codegen/dbTsTypes.d.ts +2 -2
  64. package/dist/src/lib/db-codegen/dbTsTypes.js +2 -2
  65. package/dist/src/lib/db-codegen/dbTypeIR.d.ts +60 -2
  66. package/dist/src/lib/db-codegen/dbTypeIR.js +12 -1
  67. package/dist/src/lib/db-codegen/dbTypeIR.js.map +1 -1
  68. package/dist/src/lib/document-export-record-log.d.ts +57 -0
  69. package/dist/src/lib/document-export-record-log.js +215 -0
  70. package/dist/src/lib/document-export-record-log.js.map +1 -0
  71. package/dist/src/lib/document-ingest-artifact.d.ts +13 -2
  72. package/dist/src/lib/document-ingest-artifact.js +7 -3
  73. package/dist/src/lib/document-ingest-artifact.js.map +1 -1
  74. package/dist/src/lib/document-ingest-rows.d.ts +16 -0
  75. package/dist/src/lib/document-ingest-rows.js +17 -0
  76. package/dist/src/lib/document-ingest-rows.js.map +1 -1
  77. package/dist/src/lib/document-ingest.d.ts +22 -0
  78. package/dist/src/lib/document-ingest.js +33 -0
  79. package/dist/src/lib/document-ingest.js.map +1 -1
  80. package/dist/src/lib/function-sync.d.ts +3 -16
  81. package/dist/src/lib/function-sync.js +14 -18
  82. package/dist/src/lib/function-sync.js.map +1 -1
  83. package/dist/src/lib/function-triggers.d.ts +3 -15
  84. package/dist/src/lib/function-triggers.js +10 -72
  85. package/dist/src/lib/function-triggers.js.map +1 -1
  86. package/dist/src/lib/generated-allowlist.js +0 -20
  87. package/dist/src/lib/generated-allowlist.js.map +1 -1
  88. package/dist/src/lib/generated-config-surfaces.d.ts +212 -49
  89. package/dist/src/lib/generated-config-surfaces.js +759 -184
  90. package/dist/src/lib/generated-config-surfaces.js.map +1 -1
  91. package/dist/src/lib/generated-sdk-types.d.ts +1 -1
  92. package/dist/src/lib/generated-sdk-types.js +1 -1
  93. package/dist/src/lib/generated-sdk-types.js.map +1 -1
  94. package/dist/src/lib/login-scope-lines.d.ts +15 -0
  95. package/dist/src/lib/login-scope-lines.js +22 -0
  96. package/dist/src/lib/login-scope-lines.js.map +1 -0
  97. package/dist/src/lib/paginate.d.ts +0 -5
  98. package/dist/src/lib/paginate.js +0 -5
  99. package/dist/src/lib/paginate.js.map +1 -1
  100. package/dist/src/lib/prompt-schema-codegen.js +5 -2
  101. package/dist/src/lib/prompt-schema-codegen.js.map +1 -1
  102. package/dist/src/lib/refresh-admin-credentials.d.ts +7 -0
  103. package/dist/src/lib/refresh-admin-credentials.js +16 -4
  104. package/dist/src/lib/refresh-admin-credentials.js.map +1 -1
  105. package/dist/src/lib/root-import-decision.d.ts +15 -14
  106. package/dist/src/lib/root-import-decision.js +44 -51
  107. package/dist/src/lib/root-import-decision.js.map +1 -1
  108. package/dist/src/lib/snapshot-build-rows.d.ts +21 -0
  109. package/dist/src/lib/snapshot-build-rows.js +22 -0
  110. package/dist/src/lib/snapshot-build-rows.js.map +1 -1
  111. package/dist/src/lib/snapshot-build.js +8 -3
  112. package/dist/src/lib/snapshot-build.js.map +1 -1
  113. package/dist/src/lib/swift-codegen/banners.d.ts +34 -7
  114. package/dist/src/lib/swift-codegen/banners.js +37 -7
  115. package/dist/src/lib/swift-codegen/banners.js.map +1 -1
  116. package/dist/src/lib/swift-codegen/dbGenerator.d.ts +4 -3
  117. package/dist/src/lib/swift-codegen/dbGenerator.js +14 -117
  118. package/dist/src/lib/swift-codegen/dbGenerator.js.map +1 -1
  119. package/dist/src/lib/swift-codegen/functionGenerator.d.ts +3 -3
  120. package/dist/src/lib/swift-codegen/functionGenerator.js +22 -17
  121. package/dist/src/lib/swift-codegen/functionGenerator.js.map +1 -1
  122. package/dist/src/lib/swift-codegen/generator.d.ts +5 -5
  123. package/dist/src/lib/swift-codegen/generator.js +35 -40
  124. package/dist/src/lib/swift-codegen/generator.js.map +1 -1
  125. package/dist/src/lib/toml-database-config.d.ts +14 -75
  126. package/dist/src/lib/toml-database-config.js +14 -305
  127. package/dist/src/lib/toml-database-config.js.map +1 -1
  128. package/dist/src/lib/workflow-codegen/generator.d.ts +7 -7
  129. package/dist/src/lib/workflow-codegen/generator.js +16 -23
  130. package/dist/src/lib/workflow-codegen/generator.js.map +1 -1
  131. package/dist/src/lib/workflow-codegen/invokerIR.d.ts +6 -12
  132. package/dist/src/lib/workflow-codegen/invokerIR.js +4 -5
  133. package/dist/src/lib/workflow-codegen/invokerIR.js.map +1 -1
  134. package/dist/src/lib/workflow-toml-validator.d.ts +2 -0
  135. package/dist/src/lib/workflow-toml-validator.js +28 -1
  136. package/dist/src/lib/workflow-toml-validator.js.map +1 -1
  137. package/package.json +3 -5
  138. package/dist/src/lib/generated-workflow-model-fields.d.ts +0 -20
  139. package/dist/src/lib/generated-workflow-model-fields.js +0 -53
  140. package/dist/src/lib/generated-workflow-model-fields.js.map +0 -1
  141. package/dist/src/lib/workflow-field-descriptor.d.ts +0 -91
  142. package/dist/src/lib/workflow-field-descriptor.js +0 -153
  143. package/dist/src/lib/workflow-field-descriptor.js.map +0 -1
@@ -154,7 +154,7 @@ export interface RenderOpResultAliasInput {
154
154
  * controller; per-op aliases point at them (and, where the definition makes the
155
155
  * shape derivable, at a narrowed form — see `renderOpResultAlias`).
156
156
  */
157
- export declare const RESULT_ALIASES_BLOCK = "// Generic per-op result shapes. These mirror the runtime result shapes\n// produced by the database-operations controller; per-op aliases reference\n// them (or a narrowed form when the op definition makes the shape derivable).\n\n/** `query` ops return a page of records. */\nexport interface QueryResult<T = Record<string, unknown>> {\n data: T[];\n hasMore?: boolean;\n nextCursor?: string;\n}\n\n/**\n * One step's result inside a `mutation` op's uniform response (#1458).\n * `op` is the step kind; `id` is the record id (the resolved canonical id for\n * `upsertOn` saves). `values` carries an `increment` step's post-increment\n * counters; `error` a per-step failure string.\n */\nexport interface MutationStepResult {\n op: \"save\" | \"patch\" | \"delete\" | \"increment\" | \"addToSet\" | \"removeFromSet\";\n success: boolean;\n id: string;\n values?: Record<string, number>;\n error?: string;\n}\n\n/**\n * Every `mutation` op returns a uniform `{ results: MutationStepResult[] }`\n * in DEFINITION-STEP order \u2014 one entry per step, tagged with its `op` kind and\n * record `id` (#1458). This is a SUCCESS-PATH guarantee: a step that fails at\n * the HTTP level surfaces as an error, and committed sibling writes in the same\n * op are not reported (the ops are not yet executed atomically \u2014 see #1478).\n */\nexport interface MutationResult {\n results: MutationStepResult[];\n}\n\n/** `count` ops return a single count. */\nexport interface CountResult {\n count: number;\n}\n\n/** `aggregate` ops return a single result object. */\nexport interface AggregateResult {\n result: Record<string, unknown>;\n}\n\n/** `applyToQuery` ops return match/affect/fail counts. */\nexport interface ApplyToQueryResult {\n matched: number;\n affected: number;\n failed: number;\n sample?: unknown[];\n}\n\n/** `pipeline` ops return per-step results keyed by step name. */\nexport interface PipelineResult {\n steps: Record<string, unknown>;\n}\n";
157
+ export declare const RESULT_ALIASES_BLOCK = "// Generic per-op result shapes. These mirror the runtime result shapes\n// produced by the database-operations controller; per-op aliases reference\n// them (or a narrowed form when the op definition makes the shape derivable).\n\n/** `query` ops return a page of records. */\nexport interface QueryResult<T = Record<string, unknown>> {\n data: T[];\n hasMore?: boolean;\n nextCursor?: string;\n}\n\n/**\n * One step's result inside a `mutation` op's uniform response (#1458).\n * `op` is the step kind; `id` is the record id (the resolved canonical id for\n * `upsertOn` saves). `values` carries an `increment` step's post-increment\n * counters; `error` a per-step failure string.\n */\nexport interface MutationStepResult {\n op: \"save\" | \"patch\" | \"delete\" | \"increment\" | \"addToSet\" | \"removeFromSet\";\n success: boolean;\n id: string;\n values?: Record<string, number>;\n error?: string;\n}\n\n/**\n * Every `mutation` op returns a uniform `{ results: MutationStepResult[] }`\n * in DEFINITION-STEP order \u2014 one entry per step, tagged with its `op` kind and\n * record `id` (#1458). This is a SUCCESS-PATH guarantee: a step that fails at\n * the HTTP level surfaces as an error, and committed sibling writes in the same\n * op are not reported (the ops are not yet executed atomically \u2014 see #1478).\n */\nexport interface MutationResult {\n results: MutationStepResult[];\n}\n\n/** `count` ops return a single count. */\nexport interface CountResult {\n count: number;\n}\n\n/** `aggregate` ops return one row per group: `{ group, ...operationValues }`. */\nexport interface AggregateResult {\n result: Array<{\n group: Record<string, unknown>;\n [operationKey: string]: unknown;\n }>;\n}\n\n/** `applyToQuery` ops return match/affect/fail counts. */\nexport interface ApplyToQueryResult {\n matched: number;\n affected: number;\n failed: number;\n sample?: unknown[];\n}\n\n/** `pipeline` ops return per-step results keyed by step name. */\nexport interface PipelineResult {\n steps: Record<string, unknown>;\n}\n";
158
158
  /**
159
159
  * Render the header (banner + regen hint + fingerprint).
160
160
  */
@@ -183,46 +183,6 @@ export declare function fieldNameUnion(fields: string[]): TypeNode;
183
183
  * no-return / unresolvable keep the generic `PipelineResult`.
184
184
  */
185
185
  export declare function renderOpResultAlias(input: RenderOpResultAliasInput): string;
186
- /** One operation the typed-ops factory exposes as a method (#1441). */
187
- export interface OpsFactoryOp {
188
- /**
189
- * Object-literal property key for the method — bare (`getX`) for a plain JS
190
- * identifier, or a quoted string (`"get-x"`, `"delete"`) for a hyphenated /
191
- * reserved-word / leading-digit op name. Produced by `objectPropertyKey`.
192
- */
193
- propertyKey: string;
194
- /** Exact operation name passed as the `executeOperation` string argument. */
195
- opName: string;
196
- /** The op's `<Op>Params` interface name (write shape). */
197
- paramsInterfaceName: string;
198
- /** The op's `<Op>Result` alias name (read shape). */
199
- resultAliasName: string;
200
- /**
201
- * Whether the op declares any params. A param-less op yields a method callable
202
- * with no arguments (`ops.foo()`); its only arg is the optional `options`.
203
- */
204
- hasParams: boolean;
205
- }
206
- export interface RenderOpsFactoryInput {
207
- /** Factory function name (e.g. `securitiesRefOps`). */
208
- factoryName: string;
209
- /** Database type name, for the doc comment. */
210
- databaseType: string;
211
- /** Operations to expose, in deterministic (name-sorted) order. */
212
- ops: OpsFactoryOp[];
213
- }
214
- /**
215
- * Render the typed-operations factory (#1441): an inlined structural client
216
- * interface + a shared call-options type + the `export function <type>Ops`
217
- * factory. Each method pairs an op's `<Op>Params` input with its `<Op>Result`
218
- * output and calls `client.databases.executeOperation<<Op>Result>(...)`, so the
219
- * generated code carries no `as` cast and no import — the real `JsBaoClient`
220
- * satisfies the structural `OpsClient` param.
221
- *
222
- * Returns "" for a database type with no operations, so the caller can omit the
223
- * factory entirely rather than emit an empty function.
224
- */
225
- export declare function renderOpsFactory(input: RenderOpsFactoryInput): string;
226
186
  /** One subscription the typed-subscriptions factory exposes as a method. */
227
187
  export interface SubscriptionFactoryEntry {
228
188
  /**
@@ -246,27 +206,18 @@ export interface SubscriptionFactoryEntry {
246
206
  export interface RenderFactoriesInput {
247
207
  /** Database type name, for the doc comments. */
248
208
  databaseType: string;
249
- /** Name of the `<type>Ops` factory function. */
250
- opsFactoryName: string;
251
209
  /** Name of the `<type>Subscriptions` factory function. */
252
210
  subscriptionsFactoryName: string;
253
- /** Operations to expose, in deterministic (name-sorted) order. */
254
- ops: OpsFactoryOp[];
255
211
  /** Subscriptions to expose, in deterministic (key-sorted) order. */
256
212
  subscriptions: SubscriptionFactoryEntry[];
257
213
  }
258
214
  /**
259
- * Render the typed-ops factory (#1441) and the typed-subscriptions factory
260
- * (#1544 Phase 2) for one database type, sharing a single structural `OpsClient`
261
- * interface (Fork 4 = A).
262
- *
263
- * With no subscriptions this is byte-identical to {@link renderOpsFactory}, so
264
- * every existing generated file (none of which has subscriptions) is unchanged.
265
- * When subscriptions exist, the shared `OpsClient` gains a `subscribe<T>`
266
- * member, the inlined subscribe types are emitted once, and a separate
267
- * `<type>Subscriptions` factory follows the ops factory. The file stays
268
- * import-free (behavior 10).
215
+ * Render the typed-subscriptions factory (#1544 Phase 2) for one database type,
216
+ * behind the structural `OpsClient` interface it calls through. No `<type>Ops`
217
+ * factory is emitted: the client door its methods called was retired (#3188).
218
+ * The per-op `<Op>Params` / `<Op>Result` types stay, describing the operations
219
+ * a server function runs. The file stays import-free (behavior 10).
269
220
  *
270
- * Returns "" when the type has neither ops nor subscriptions.
221
+ * Returns "" when the type has no subscriptions.
271
222
  */
272
223
  export declare function renderFactories(input: RenderFactoriesInput): string;
@@ -78,9 +78,12 @@ export interface CountResult {
78
78
  count: number;
79
79
  }
80
80
 
81
- /** \`aggregate\` ops return a single result object. */
81
+ /** \`aggregate\` ops return one row per group: \`{ group, ...operationValues }\`. */
82
82
  export interface AggregateResult {
83
- result: Record<string, unknown>;
83
+ result: Array<{
84
+ group: Record<string, unknown>;
85
+ [operationKey: string]: unknown;
86
+ }>;
84
87
  }
85
88
 
86
89
  /** \`applyToQuery\` ops return match/affect/fail counts. */
@@ -261,22 +264,6 @@ export function renderOpResultAlias(input) {
261
264
  return alias(atom("unknown"));
262
265
  }
263
266
  }
264
- // The `databases.executeOperation<R>` member on the structural client shape.
265
- // `object` (not `Record<string, unknown>`) so a strict generated `<Op>Params`
266
- // interface — which has no index signature — is still assignable here.
267
- const EXECUTE_OPERATION_MEMBER = [
268
- " executeOperation<R>(",
269
- " databaseId: string,",
270
- " name: string,",
271
- " options?: {",
272
- " params?: object;",
273
- " limit?: number;",
274
- " cursor?: string;",
275
- " direction?: 1 | -1;",
276
- " timing?: boolean;",
277
- " },",
278
- " ): Promise<R>;",
279
- ];
280
267
  // The `databases.subscribe<T>` member on the structural client shape
281
268
  // (#1544 Phase 2). Mirrors the client's `subscribe<T, P>` closely enough that
282
269
  // the real `JsBaoClient` satisfies it structurally; `P` defaults there so the
@@ -288,17 +275,6 @@ const SUBSCRIBE_MEMBER = [
288
275
  " options: SubscribeOptions<T>,",
289
276
  " ): () => void;",
290
277
  ];
291
- // Non-param options (pagination + diagnostics) each ops factory method accepts.
292
- const OPS_CALL_OPTIONS_BLOCK = [
293
- "// Non-param options (pagination + diagnostics) each factory method accepts",
294
- "// alongside its params, passed straight through to `executeOperation`.",
295
- "interface OpsCallOptions {",
296
- " limit?: number;",
297
- " cursor?: string;",
298
- " direction?: 1 | -1;",
299
- " timing?: boolean;",
300
- "}",
301
- ].join("\n");
302
278
  // Inlined structural subscribe types (#1544 Phase 2) — import-free mirrors of
303
279
  // the client's `DatabaseSubscribeOptions` / `DatabaseChangePayload` /
304
280
  // `DatabaseChangeEvent`. `T` is the record type bound to each change; a
@@ -329,78 +305,23 @@ const SUBSCRIBE_TYPES_BLOCK = [
329
305
  "}",
330
306
  ].join("\n");
331
307
  /**
332
- * The inlined structural client shape, carrying whichever members the file
333
- * needs (`executeOperation` for ops, `subscribe` for subscriptions). One shared
334
- * `OpsClient` interface serves both the `<type>Ops` and `<type>Subscriptions`
335
- * factories so the file never declares the interface twice.
308
+ * The inlined structural client shape: the one `subscribe<T>` member the
309
+ * `<type>Subscriptions` factory calls. The file carries no operation factory —
310
+ * the client door a `<type>Ops` method called was retired (#3188), and an
311
+ * operation is reached from a server function instead.
336
312
  */
337
- function renderClientInterface(members) {
313
+ function renderClientInterface() {
338
314
  return [
339
315
  "// Minimal structural client shape — inlined so this file stays import-free",
340
316
  "// and carries no runtime dependency on the client package. The real",
341
317
  "// `JsBaoClient` satisfies it structurally.",
342
318
  "interface OpsClient {",
343
319
  " databases: {",
344
- ...members,
345
- " };",
346
- "}",
347
- ].join("\n");
348
- }
349
- /** One factory method per op, pairing `<Op>Params` in with `<Op>Result` out. */
350
- function opsMethodLines(ops) {
351
- return ops.map((op) => {
352
- const nameLiteral = JSON.stringify(op.opName);
353
- // No declared params: the method takes only the optional options object, so
354
- // it stays callable with no arguments (`ops.foo()`).
355
- const params = op.hasParams
356
- ? [`params: ${op.paramsInterfaceName}`, "options?: OpsCallOptions"]
357
- : ["options?: OpsCallOptions"];
358
- return renderArrowProperty({
359
- level: 2,
360
- key: op.propertyKey,
361
- params,
362
- signatureTail: `: Promise<${op.resultAliasName}> =>`,
363
- callee: generic("client.databases.executeOperation", [
364
- atom(op.resultAliasName),
365
- ]),
366
- leadingArgs: ["databaseId", nameLiteral],
367
- objectMembers: op.hasParams ? ["params", "...options"] : ["...options"],
368
- tail: ",",
369
- });
370
- });
371
- }
372
- /** The `export function <type>Ops(...)` factory body. */
373
- function opsFactoryBlock(factoryName, databaseType, ops) {
374
- return [
375
- `/** Typed accessor for \`${databaseType}\` operations. */`,
376
- renderParenList(`export function ${factoryName}`, ["client: OpsClient", "databaseId: string"], " {", 0),
377
- " return {",
378
- ...opsMethodLines(ops),
320
+ ...SUBSCRIBE_MEMBER,
379
321
  " };",
380
322
  "}",
381
323
  ].join("\n");
382
324
  }
383
- /**
384
- * Render the typed-operations factory (#1441): an inlined structural client
385
- * interface + a shared call-options type + the `export function <type>Ops`
386
- * factory. Each method pairs an op's `<Op>Params` input with its `<Op>Result`
387
- * output and calls `client.databases.executeOperation<<Op>Result>(...)`, so the
388
- * generated code carries no `as` cast and no import — the real `JsBaoClient`
389
- * satisfies the structural `OpsClient` param.
390
- *
391
- * Returns "" for a database type with no operations, so the caller can omit the
392
- * factory entirely rather than emit an empty function.
393
- */
394
- export function renderOpsFactory(input) {
395
- const { factoryName, databaseType, ops } = input;
396
- if (ops.length === 0)
397
- return "";
398
- return [
399
- renderClientInterface(EXECUTE_OPERATION_MEMBER),
400
- OPS_CALL_OPTIONS_BLOCK,
401
- opsFactoryBlock(factoryName, databaseType, ops),
402
- ].join("\n\n");
403
- }
404
325
  /**
405
326
  * The `export function <type>Subscriptions(...)` factory body.
406
327
  *
@@ -438,43 +359,22 @@ function subscriptionsFactoryBlock(factoryName, databaseType, subscriptions) {
438
359
  ].join("\n");
439
360
  }
440
361
  /**
441
- * Render the typed-ops factory (#1441) and the typed-subscriptions factory
442
- * (#1544 Phase 2) for one database type, sharing a single structural `OpsClient`
443
- * interface (Fork 4 = A).
444
- *
445
- * With no subscriptions this is byte-identical to {@link renderOpsFactory}, so
446
- * every existing generated file (none of which has subscriptions) is unchanged.
447
- * When subscriptions exist, the shared `OpsClient` gains a `subscribe<T>`
448
- * member, the inlined subscribe types are emitted once, and a separate
449
- * `<type>Subscriptions` factory follows the ops factory. The file stays
450
- * import-free (behavior 10).
362
+ * Render the typed-subscriptions factory (#1544 Phase 2) for one database type,
363
+ * behind the structural `OpsClient` interface it calls through. No `<type>Ops`
364
+ * factory is emitted: the client door its methods called was retired (#3188).
365
+ * The per-op `<Op>Params` / `<Op>Result` types stay, describing the operations
366
+ * a server function runs. The file stays import-free (behavior 10).
451
367
  *
452
- * Returns "" when the type has neither ops nor subscriptions.
368
+ * Returns "" when the type has no subscriptions.
453
369
  */
454
370
  export function renderFactories(input) {
455
- const { databaseType, ops, subscriptions } = input;
456
- // No subscriptions → identical to the standalone ops factory (keeps every
457
- // pre-#1544 generated file byte-for-byte unchanged).
458
- if (subscriptions.length === 0) {
459
- return renderOpsFactory({
460
- factoryName: input.opsFactoryName,
461
- databaseType,
462
- ops,
463
- });
464
- }
465
- const hasOps = ops.length > 0;
466
- const members = [
467
- ...(hasOps ? EXECUTE_OPERATION_MEMBER : []),
468
- ...SUBSCRIBE_MEMBER,
469
- ];
470
- const blocks = [renderClientInterface(members)];
471
- if (hasOps)
472
- blocks.push(OPS_CALL_OPTIONS_BLOCK);
473
- blocks.push(SUBSCRIBE_TYPES_BLOCK);
474
- if (hasOps) {
475
- blocks.push(opsFactoryBlock(input.opsFactoryName, databaseType, ops));
476
- }
477
- blocks.push(subscriptionsFactoryBlock(input.subscriptionsFactoryName, databaseType, subscriptions));
478
- return blocks.join("\n\n");
371
+ const { databaseType, subscriptions } = input;
372
+ if (subscriptions.length === 0)
373
+ return "";
374
+ return [
375
+ renderClientInterface(),
376
+ SUBSCRIBE_TYPES_BLOCK,
377
+ subscriptionsFactoryBlock(input.subscriptionsFactoryName, databaseType, subscriptions),
378
+ ].join("\n\n");
479
379
  }
480
380
  //# sourceMappingURL=dbTemplates.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dbTemplates.js","sourceRoot":"","sources":["../../../../src/lib/db-codegen/dbTemplates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dbTemplates.js","sourceRoot":"","sources":["../../../../src/lib/db-codegen/dbTemplates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EACL,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,mBAAmB,EACnB,YAAY,EACZ,eAAe,EACf,eAAe,EACf,eAAe,EACf,KAAK,GAEN,MAAM,qCAAqC,CAAC;AAE7C,MAAM,aAAa,GACjB,kEAAkE,CAAC;AACrE,MAAM,iBAAiB,GACrB,qEAAqE,CAAC;AAqHxE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6DnC,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,WAAmB;IAC9C,OAAO;QACL,aAAa;QACb,iBAAiB;QACjB,mBAAmB,WAAW,EAAE;KACjC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CACnC,KAAiC;IAEjC,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC;IACvD,MAAM,WAAW,GAAa,EAAE,CAAC;IAEjC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACrB,WAAW,CAAC,IAAI,CACd,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CACzE,CAAC;IACJ,CAAC;IAED,mEAAmE;IACnE,sEAAsE;IACtE,8DAA8D;IAC9D,KAAK,MAAM,OAAO,IAAI,aAAa,EAAE,CAAC;QACpC,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,SAAS;QACpC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtB,WAAW,CAAC,IAAI,CAAC,KAAK,OAAO,YAAY,CAAC,CAAC;IAC7C,CAAC;IAED,sEAAsE;IACtE,2EAA2E;IAC3E,2EAA2E;IAC3E,0EAA0E;IAC1E,wEAAwE;IACxE,4EAA4E;IAC5E,wEAAwE;IACxE,0EAA0E;IAC1E,qEAAqE;IACrE,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,eAAe,CAAC,aAAa,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,oBAAoB,aAAa,IAAI,CAAC,CAAC;IAClD,KAAK,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CACrC,KAAmC;IAEnC,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IACxC,sEAAsE;IACtE,uEAAuE;IACvE,qEAAqE;IACrE,6DAA6D;IAC7D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,eAAe,CAAC,aAAa,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3D,CAAC;IACD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,oBAAoB,aAAa,IAAI,CAAC,CAAC;IAClD,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CACR,YAAY,CACV,CAAC,EACD,CAAC,CAAC,IAAI,EACN,CAAC,CAAC,CAAC,QAAQ,EACX,sBAAsB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAChD,CACF,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,kBAAkB,CACzB,mBAAkC,EAClC,UAAqC;IAErC,IAAI,mBAAmB,KAAK,IAAI;QAAE,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACzC,MAAM,CAAC,GAAG,UAAU,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,MAAM;YACT,OAAO,MAAM,CAAC;QAChB,KAAK,SAAS;YACZ,OAAO,OAAO,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QACtC,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,sEAAsE;YACtE,wEAAwE;YACxE,sCAAsC;YACtC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,MAAM,CAAC;YACzC,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC7D,CAAC;QACD,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,2EAA2E;YAC3E,yEAAyE;YACzE,yEAAyE;YACzE,4BAA4B;YAC5B,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,MAAM,CAAC;YACzC,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;AACH,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,cAAc,CAAC,MAAgB;IAC7C,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAA+B;IACjE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,mBAAmB,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IACrE,MAAM,KAAK,GAAG,CAAC,IAAc,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACnE,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,OAAO;YACV,OAAO,KAAK,CACV,OAAO,CAAC,aAAa,EAAE;gBACrB,kBAAkB,CAAC,mBAAmB,EAAE,UAAU,CAAC;aACpD,CAAC,CACH,CAAC;QACJ,KAAK,UAAU;YACb,4EAA4E;YAC5E,uEAAuE;YACvE,OAAO,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;QACvC,KAAK,OAAO;YACV,OAAO,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;QACpC,KAAK,WAAW;YACd,OAAO,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACxC,KAAK,cAAc;YACjB,OAAO,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAC3C,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,CAAC,GAAG,KAAK,CAAC,cAAc,IAAI,EAAE,IAAI,EAAE,QAAiB,EAAE,CAAC;YAC9D,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;gBACf,KAAK,OAAO;oBACV,OAAO,KAAK,CACV,OAAO,CAAC,aAAa,EAAE;wBACrB,kBAAkB,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC,CAAC,UAAU,CAAC;qBACxD,CAAC,CACH,CAAC;gBACJ,KAAK,OAAO;oBACV,OAAO,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;gBACpC,KAAK,WAAW;oBACd,OAAO,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;gBACxC,mEAAmE;gBACnE,qEAAqE;gBACrE,KAAK,QAAQ,CAAC;gBACd;oBACE,OAAO,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;QACD;YACE,kEAAkE;YAClE,4DAA4D;YAC5D,OAAO,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IAClC,CAAC;AACH,CAAC;AAED,qEAAqE;AACrE,8EAA8E;AAC9E,8EAA8E;AAC9E,qCAAqC;AACrC,MAAM,gBAAgB,GAAG;IACvB,mBAAmB;IACnB,2BAA2B;IAC3B,gCAAgC;IAChC,qCAAqC;IACrC,oBAAoB;CACrB,CAAC;AAEF,8EAA8E;AAC9E,sEAAsE;AACtE,wEAAwE;AACxE,iEAAiE;AACjE,MAAM,qBAAqB,GAAG;IAC5B,iCAAiC;IACjC,iCAAiC;IACjC,yDAAyD;IACzD,GAAG;IACH,uCAAuC;IACvC,sBAAsB;IACtB,uBAAuB;IACvB,4BAA4B;IAC5B,uCAAuC;IACvC,sBAAsB;IACtB,sCAAsC;IACtC,gCAAgC;IAChC,sBAAsB;IACtB,0BAA0B;IAC1B,GAAG;IACH,qCAAqC;IACrC,8CAA8C;IAC9C,iFAAiF;IACjF,sBAAsB;IACtB,eAAe;IACf,oBAAoB;IACpB,4BAA4B;IAC5B,GAAG;CACJ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb;;;;;GAKG;AACH,SAAS,qBAAqB;IAC5B,OAAO;QACL,6EAA6E;QAC7E,sEAAsE;QACtE,6CAA6C;QAC7C,uBAAuB;QACvB,gBAAgB;QAChB,GAAG,gBAAgB;QACnB,MAAM;QACN,GAAG;KACJ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAgCD;;;;;;;;;;;;GAYG;AACH,SAAS,yBAAyB,CAChC,WAAmB,EACnB,YAAoB,EACpB,aAAyC;IAEzC,MAAM,WAAW,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAC5C,mBAAmB,CAAC;QAClB,KAAK,EAAE,CAAC;QACR,GAAG,EAAE,GAAG,CAAC,WAAW;QACpB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,kBAAkB,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QACjF,aAAa,EAAE,mBAAmB;QAClC,MAAM,EAAE,OAAO,CAAC,4BAA4B,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC9D,WAAW,EAAE;YACX,YAAY;YACZ,eAAe,CAAC,GAAG,CAAC,eAAe,CAAC;YACpC,SAAS;SACV;QACD,IAAI,EAAE,GAAG;KACV,CAAC,CACH,CAAC;IACF,OAAO;QACL,4BAA4B,YAAY,+BAA+B;QACvE,eAAe,CACb,mBAAmB,WAAW,EAAE,EAChC,CAAC,mBAAmB,EAAE,oBAAoB,CAAC,EAC3C,IAAI,EACJ,CAAC,CACF;QACD,YAAY;QACZ,GAAG,WAAW;QACd,MAAM;QACN,GAAG;KACJ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAAC,KAA2B;IACzD,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC;IAC9C,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAE1C,OAAO;QACL,qBAAqB,EAAE;QACvB,qBAAqB;QACrB,yBAAyB,CACvB,KAAK,CAAC,wBAAwB,EAC9B,YAAY,EACZ,aAAa,CACd;KACF,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACjB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  /**
2
- * Map database-type TOML field/param types → TypeScript types for the
3
- * `databases codegen` generator (issue #814).
2
+ * Map database-type TOML field/param types → TypeScript types (issue #814),
3
+ * for the database IR the function codegen renders a typed handle from.
4
4
  *
5
5
  * The record-interface half reuses the SAME `FieldType` vocabulary that
6
6
  * powers the document-model codegen-v2 generator
@@ -1,6 +1,6 @@
1
1
  /**
2
- * Map database-type TOML field/param types → TypeScript types for the
3
- * `databases codegen` generator (issue #814).
2
+ * Map database-type TOML field/param types → TypeScript types (issue #814),
3
+ * for the database IR the function codegen renders a typed handle from.
4
4
  *
5
5
  * The record-interface half reuses the SAME `FieldType` vocabulary that
6
6
  * powers the document-model codegen-v2 generator
@@ -19,7 +19,65 @@
19
19
  * MODEL NAME (naming-neutral) rather than a resolved TS interface name, so the
20
20
  * Swift renderer can map the same model to its own type name.
21
21
  */
22
- import type { RecordField, ParamField, ProjectionClassification } from "./dbTemplates.js";
22
+ /** A field on a record interface (read shape). */
23
+ export interface RecordField {
24
+ name: string;
25
+ /** TOML field type (`string|number|boolean|date|id|stringset`). */
26
+ type: string;
27
+ /** Required props render as `name: T`; otherwise `name?: T`. */
28
+ required: boolean;
29
+ /**
30
+ * Allowed-value set for a `string` field (#843). When non-empty, the field
31
+ * renders a TS string-literal union (`"a" | "b"`) instead of bare `string`.
32
+ */
33
+ enum?: string[];
34
+ }
35
+ /** One declared param on an op-input interface (write shape). */
36
+ export interface ParamField {
37
+ name: string;
38
+ /** TOML param type (`string|number|boolean|object|array`). */
39
+ type: string;
40
+ required: boolean;
41
+ /**
42
+ * Allowed-value set for a `string` param → string-literal union (#861).
43
+ * Validated server-side (`validateParams`) at config-push time; the emitter
44
+ * renders the union when present and falls back to the base type otherwise.
45
+ */
46
+ enum?: string[];
47
+ /**
48
+ * Scalar element type for an `array` param (#1488), either declared
49
+ * (`type = "array"` + `items = "..."`) or inferred from a `$in`/`$nin`
50
+ * binding. Undefined on a non-array param, or on an array whose element type
51
+ * could not be resolved (renders `unknown[]`).
52
+ */
53
+ items?: string;
54
+ }
55
+ /**
56
+ * How a query op's static `projection` narrows its record type (#1439). The
57
+ * generator resolves the projection against the model's record fields (guarding
58
+ * unknown / nested keys) and hands the template one of these; the template only
59
+ * assembles the `Pick`/`Partial` string.
60
+ * - `full` → `QueryResult<M>` (no projection, empty `{}`, or no schema).
61
+ * - `pick` → `QueryResult<Pick<M, ...fields>>` (inclusion; `id` folded in).
62
+ * - `omit` → `QueryResult<Omit<M, ...fields>>` (static all-exclusion over
63
+ * known schema fields, minus `id`/`type`). The DO strips excluded
64
+ * fields server-side (#1493 / issue #1456), so the excluded fields
65
+ * are genuinely absent from the result and `Omit` is truthful.
66
+ * - `partial` → `QueryResult<Partial<M>>` (dynamic / mixed / unknown-key /
67
+ * nested-key exclusion — the honest fallback when the excluded set
68
+ * can't be resolved to known members; #1439/Codex-P2).
69
+ */
70
+ export type ProjectionClassification = {
71
+ kind: "full";
72
+ } | {
73
+ kind: "pick";
74
+ fields: string[];
75
+ } | {
76
+ kind: "omit";
77
+ fields: string[];
78
+ } | {
79
+ kind: "partial";
80
+ };
23
81
  export interface DbCodegenInput {
24
82
  /** Database type name (drives the output filename). */
25
83
  databaseType: string;
@@ -60,7 +118,7 @@ export interface DbRecordIR {
60
118
  }
61
119
  /** One operation on a database type, naming-neutral. */
62
120
  export interface DbOpIR {
63
- /** Exact operation name (the `executeOperation` string argument). */
121
+ /** Exact operation name, as the database type declares it. */
64
122
  opName: string;
65
123
  /** Operation type (`query|mutation|count|aggregate|pipeline|applyToQuery`). */
66
124
  opType: string;
@@ -22,6 +22,7 @@
22
22
  import { parseConfigToml, stringifyConfigToml } from "../config-toml.js";
23
23
  import { loadSchemaFromTomlString } from "js-bao";
24
24
  import { parseDatabaseTypeToml } from "../../commands/sync.js";
25
+ import { normalizeOperationFromToml, normalizeSubscriptionFromToml, } from "../toml-database-config.js";
25
26
  import { fingerprintToml } from "./dbFingerprint.js";
26
27
  import { tsTypeForDbFieldType } from "./dbTsTypes.js";
27
28
  /**
@@ -36,7 +37,17 @@ export function describeDbType(input) {
36
37
  // the [models.*] subtree through the shared js-bao loader (same path the
37
38
  // server uses to validate the schema).
38
39
  const tomlData = parseConfigToml(tomlContent);
39
- const { typeConfig, operations, subscriptions } = parseDatabaseTypeToml(tomlData);
40
+ const { typeConfig } = parseDatabaseTypeToml(tomlData);
41
+ // #3189 — `config push` no longer reads `[[operations]]`/`[[subscriptions]]`
42
+ // (they are refused); the database codegen still renders a file that carries
43
+ // them until it is retired with the rest of the client database surface.
44
+ const operations = (tomlData.operations || []).map((op) => {
45
+ const normalized = normalizeOperationFromToml(op);
46
+ if (typeof normalized.name === "string")
47
+ normalized.name = normalized.name.trim();
48
+ return normalized;
49
+ });
50
+ const subscriptions = (tomlData.subscriptions || []).map((sub) => normalizeSubscriptionFromToml(sub));
40
51
  // #3501 — codegen is an AUTHORING door, so a field name the engine reserves
41
52
  // is refused here rather than emitted as a property. `type` maps to the
42
53
  // internal `_type` column in every translated query, so a generated
@@ -1 +1 @@
1
- {"version":3,"file":"dbTypeIR.js","sourceRoot":"","sources":["../../../../src/lib/db-codegen/dbTypeIR.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dbTypeIR.js","sourceRoot":"","sources":["../../../../src/lib/db-codegen/dbTypeIR.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * `documents export` of a record-log (format 3) document (#4310, behavior 24).
3
+ *
4
+ * The document's base is a segment: its row chunks were written across
5
+ * alarms while writes continued, so they are no image of the document at any
6
+ * one log number; its corrections chunk holds every row and tombstone written
7
+ * between the export's start `B` and the read `C`. This module requests a
8
+ * segment, waits for it, downloads the chunks and the corrections through the
9
+ * chain export's grant, verifies each, merges the corrections into the rows
10
+ * (a changed row replaces its line, a tombstone removes it, a new row joins
11
+ * in id order) and re-cuts the merged rows into snapshot-layout chunks — so
12
+ * the directory is the document at `C`, which `documents ingest` loads into
13
+ * another format-3 document.
14
+ *
15
+ * Nothing is written under `snapshot/` until every download has verified.
16
+ */
17
+ /** The calls an export makes; `ApiClient` supplies them in the verb. */
18
+ export interface RecordLogExportClient {
19
+ requestSegment(): Promise<any>;
20
+ getSegment(segmentId: string): Promise<any>;
21
+ listSegments(): Promise<any>;
22
+ exportChain(): Promise<any>;
23
+ /** Read one object through a `/doc-artifact/…` path. */
24
+ download(artifactPath: string): Promise<Buffer>;
25
+ }
26
+ /** What the export wrote. */
27
+ export interface RecordLogExportResult {
28
+ /** Bytes of the segment's chunks and corrections, as downloaded. */
29
+ bytes: number;
30
+ /** `C`: the log number the directory is an image of. */
31
+ lsn: number;
32
+ segment: {
33
+ segmentId: string;
34
+ lsn: number;
35
+ completedLsn: number;
36
+ rows: number;
37
+ chunks: number;
38
+ corrections: number;
39
+ };
40
+ }
41
+ /** Rows per re-cut chunk. */
42
+ export declare const RECORD_LOG_EXPORT_CHUNK_ROWS = 10000;
43
+ /**
44
+ * Export a format-3 document into `docDir`: `snapshot/manifest.json`, its
45
+ * re-cut chunks `snapshot/{model}/{n}.ndjson.gz`, and `chain.json`
46
+ * (`{version: 3, documentFormat: 3, documentId, lsn: C, segment}`, with no
47
+ * grant in it). The caller writes `permissions.json`, `metadata.json` and the
48
+ * blobs, as for every format.
49
+ */
50
+ export declare function exportRecordLogDocument(options: {
51
+ client: RecordLogExportClient;
52
+ documentId: string;
53
+ docDir: string;
54
+ chunkRows?: number;
55
+ sleep?: (ms: number) => Promise<void>;
56
+ onProgress?: (line: string) => void;
57
+ }): Promise<RecordLogExportResult>;