@abloatai/transaction 0.51.0 → 0.53.0

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 (216) hide show
  1. package/dist/ablo.d.ts +1 -1
  2. package/dist/ablo.js +1 -1
  3. package/dist/ai-sdk/updateTool.d.ts +1 -1
  4. package/dist/ai-sdk/updateTool.js +1 -1
  5. package/dist/auth/apiKey.d.ts +0 -6
  6. package/dist/auth/apiKey.d.ts.map +1 -1
  7. package/dist/auth/apiKey.js +13 -60
  8. package/dist/auth/apiKey.js.map +1 -1
  9. package/dist/auth/baseUrl.d.ts +38 -0
  10. package/dist/auth/baseUrl.d.ts.map +1 -0
  11. package/dist/auth/baseUrl.js +126 -0
  12. package/dist/auth/baseUrl.js.map +1 -0
  13. package/dist/auth/capability.d.ts +2 -2
  14. package/dist/auth/capability.js +1 -1
  15. package/dist/auth/index.d.ts +15 -2
  16. package/dist/auth/index.d.ts.map +1 -1
  17. package/dist/auth/index.js +35 -21
  18. package/dist/auth/index.js.map +1 -1
  19. package/dist/auth/schemas.d.ts +24 -1
  20. package/dist/auth/schemas.d.ts.map +1 -1
  21. package/dist/auth/schemas.js +8 -2
  22. package/dist/auth/schemas.js.map +1 -1
  23. package/dist/auth/sessionIssuanceProtocol.d.ts +41 -0
  24. package/dist/auth/sessionIssuanceProtocol.d.ts.map +1 -0
  25. package/dist/auth/sessionIssuanceProtocol.js +48 -0
  26. package/dist/auth/sessionIssuanceProtocol.js.map +1 -0
  27. package/dist/auth/sessionMint.js +2 -2
  28. package/dist/branches.d.ts +34 -33
  29. package/dist/branches.d.ts.map +1 -1
  30. package/dist/branches.js +2 -4
  31. package/dist/branches.js.map +1 -1
  32. package/dist/coordination/schema.d.ts +3 -2
  33. package/dist/coordination/schema.d.ts.map +1 -1
  34. package/dist/coordination/schema.js +7 -2
  35. package/dist/coordination/schema.js.map +1 -1
  36. package/dist/errorCodes.d.ts +7 -3
  37. package/dist/errorCodes.d.ts.map +1 -1
  38. package/dist/errorCodes.js +8 -4
  39. package/dist/errorCodes.js.map +1 -1
  40. package/dist/errors.d.ts +1 -1
  41. package/dist/errors.js +1 -1
  42. package/dist/index.d.ts +2 -0
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js.map +1 -1
  45. package/dist/resources/httpResources.d.ts +35 -2
  46. package/dist/resources/httpResources.d.ts.map +1 -1
  47. package/dist/resources/httpResources.js +10 -1
  48. package/dist/resources/httpResources.js.map +1 -1
  49. package/dist/resources/modelOperations.d.ts +18 -6
  50. package/dist/resources/modelOperations.d.ts.map +1 -1
  51. package/dist/resources/modelOperations.js.map +1 -1
  52. package/dist/resources/where.d.ts +67 -2
  53. package/dist/resources/where.d.ts.map +1 -1
  54. package/dist/resources/where.js +73 -0
  55. package/dist/resources/where.js.map +1 -1
  56. package/dist/schema/ddl.d.ts.map +1 -1
  57. package/dist/schema/ddl.js +9 -12
  58. package/dist/schema/ddl.js.map +1 -1
  59. package/dist/schema/field.d.ts +3 -3
  60. package/dist/schema/field.js +2 -2
  61. package/dist/schema/fieldRef.d.ts +1 -1
  62. package/dist/schema/generate.d.ts +2 -3
  63. package/dist/schema/generate.d.ts.map +1 -1
  64. package/dist/schema/generate.js +2 -8
  65. package/dist/schema/generate.js.map +1 -1
  66. package/dist/schema/index.d.ts +2 -2
  67. package/dist/schema/index.js +3 -3
  68. package/dist/schema/model.d.ts +7 -7
  69. package/dist/schema/model.js +2 -2
  70. package/dist/schema/openapi.d.ts.map +1 -1
  71. package/dist/schema/openapi.js +63 -21
  72. package/dist/schema/openapi.js.map +1 -1
  73. package/dist/schema/queries.d.ts +1 -1
  74. package/dist/schema/queries.js +1 -1
  75. package/dist/schema/relation.d.ts +8 -8
  76. package/dist/schema/relation.js +5 -5
  77. package/dist/schema/schema.d.ts +24 -37
  78. package/dist/schema/schema.d.ts.map +1 -1
  79. package/dist/schema/schema.js +15 -28
  80. package/dist/schema/schema.js.map +1 -1
  81. package/dist/schema/sugar.d.ts +7 -7
  82. package/dist/schema/sugar.js +5 -5
  83. package/dist/server/adapter.d.ts +2 -0
  84. package/dist/server/adapter.d.ts.map +1 -1
  85. package/dist/server/commit.d.ts +5 -1
  86. package/dist/server/commit.d.ts.map +1 -1
  87. package/dist/server/index.d.ts +3 -2
  88. package/dist/server/index.d.ts.map +1 -1
  89. package/dist/server/index.js.map +1 -1
  90. package/dist/server/readConfig.d.ts +109 -57
  91. package/dist/server/readConfig.d.ts.map +1 -1
  92. package/dist/server/readConfig.js +19 -5
  93. package/dist/server/readConfig.js.map +1 -1
  94. package/dist/source/adapters/drizzle.d.ts.map +1 -1
  95. package/dist/source/adapters/drizzle.js +5 -0
  96. package/dist/source/adapters/drizzle.js.map +1 -1
  97. package/dist/source/adapters/kysely.d.ts.map +1 -1
  98. package/dist/source/adapters/kysely.js +33 -8
  99. package/dist/source/adapters/kysely.js.map +1 -1
  100. package/dist/source/adapters/kyselyMutationCore.d.ts +1 -1
  101. package/dist/source/adapters/kyselyMutationCore.d.ts.map +1 -1
  102. package/dist/source/adapters/kyselyMutationCore.js +58 -20
  103. package/dist/source/adapters/kyselyMutationCore.js.map +1 -1
  104. package/dist/source/adapters/memory.d.ts.map +1 -1
  105. package/dist/source/adapters/memory.js +5 -0
  106. package/dist/source/adapters/memory.js.map +1 -1
  107. package/dist/source/adapters/prisma.d.ts.map +1 -1
  108. package/dist/source/adapters/prisma.js +6 -1
  109. package/dist/source/adapters/prisma.js.map +1 -1
  110. package/dist/source/conformance.js +21 -21
  111. package/dist/source/contract.d.ts +17 -0
  112. package/dist/source/contract.d.ts.map +1 -1
  113. package/dist/source/contract.js +31 -0
  114. package/dist/source/contract.js.map +1 -1
  115. package/dist/source/index.d.ts +1 -1
  116. package/dist/source/index.d.ts.map +1 -1
  117. package/dist/source/index.js +1 -1
  118. package/dist/source/index.js.map +1 -1
  119. package/dist/source/types.d.ts +1 -0
  120. package/dist/source/types.d.ts.map +1 -1
  121. package/dist/source/types.js.map +1 -1
  122. package/dist/transactionLayer.d.ts +3 -3
  123. package/dist/transactionLayer.js +3 -3
  124. package/dist/transport/httpClient.d.ts +13 -4
  125. package/dist/transport/httpClient.d.ts.map +1 -1
  126. package/dist/transport/httpClient.js +4 -2
  127. package/dist/transport/httpClient.js.map +1 -1
  128. package/dist/transport/httpTransport.d.ts +1 -0
  129. package/dist/transport/httpTransport.d.ts.map +1 -1
  130. package/dist/transport/httpTransport.js +79 -11
  131. package/dist/transport/httpTransport.js.map +1 -1
  132. package/dist/transport/wsFrameHandlers.d.ts.map +1 -1
  133. package/dist/transport/wsFrameHandlers.js +3 -0
  134. package/dist/transport/wsFrameHandlers.js.map +1 -1
  135. package/dist/types/streams.d.ts +2 -2
  136. package/dist/wire/accountResponses.d.ts +18 -13
  137. package/dist/wire/accountResponses.d.ts.map +1 -1
  138. package/dist/wire/accountResponses.js +5 -11
  139. package/dist/wire/accountResponses.js.map +1 -1
  140. package/dist/wire/claims.d.ts +1 -0
  141. package/dist/wire/claims.d.ts.map +1 -1
  142. package/dist/wire/claims.js +7 -1
  143. package/dist/wire/claims.js.map +1 -1
  144. package/dist/wire/commit.d.ts +144 -0
  145. package/dist/wire/commit.d.ts.map +1 -1
  146. package/dist/wire/commit.js +22 -1
  147. package/dist/wire/commit.js.map +1 -1
  148. package/dist/wire/frames.d.ts +4 -0
  149. package/dist/wire/frames.d.ts.map +1 -1
  150. package/dist/wire/inboundFrames.d.ts +22 -0
  151. package/dist/wire/inboundFrames.d.ts.map +1 -1
  152. package/dist/wire/index.d.ts +3 -3
  153. package/dist/wire/index.d.ts.map +1 -1
  154. package/dist/wire/index.js +2 -2
  155. package/dist/wire/index.js.map +1 -1
  156. package/dist/wire/listEnvelope.d.ts +20 -0
  157. package/dist/wire/listEnvelope.d.ts.map +1 -1
  158. package/dist/wire/listEnvelope.js +20 -0
  159. package/dist/wire/listEnvelope.js.map +1 -1
  160. package/dist/wire/protocol.d.ts +1 -1
  161. package/dist/wire/protocol.js +1 -1
  162. package/package.json +1 -1
  163. package/src/ablo.ts +1 -1
  164. package/src/ai-sdk/updateTool.ts +1 -1
  165. package/src/auth/apiKey.ts +13 -61
  166. package/src/auth/baseUrl.ts +144 -0
  167. package/src/auth/capability.ts +3 -3
  168. package/src/auth/index.ts +62 -21
  169. package/src/auth/schemas.ts +16 -2
  170. package/src/auth/sessionIssuanceProtocol.ts +57 -0
  171. package/src/auth/sessionMint.ts +2 -2
  172. package/src/branches.ts +2 -4
  173. package/src/coordination/schema.ts +7 -2
  174. package/src/errorCodes.ts +29 -5
  175. package/src/errors.ts +1 -1
  176. package/src/index.ts +2 -0
  177. package/src/resources/httpResources.ts +45 -2
  178. package/src/resources/modelOperations.ts +18 -6
  179. package/src/resources/where.ts +70 -4
  180. package/src/schema/ddl.ts +9 -13
  181. package/src/schema/field.ts +3 -3
  182. package/src/schema/fieldRef.ts +1 -1
  183. package/src/schema/generate.ts +2 -8
  184. package/src/schema/index.ts +3 -3
  185. package/src/schema/model.ts +7 -7
  186. package/src/schema/openapi.ts +64 -21
  187. package/src/schema/queries.ts +1 -1
  188. package/src/schema/relation.ts +8 -8
  189. package/src/schema/residency.ts +0 -1
  190. package/src/schema/schema.ts +33 -58
  191. package/src/schema/sugar.ts +7 -7
  192. package/src/server/adapter.ts +2 -0
  193. package/src/server/commit.ts +5 -1
  194. package/src/server/index.ts +8 -2
  195. package/src/server/readConfig.ts +111 -57
  196. package/src/source/adapters/drizzle.ts +5 -0
  197. package/src/source/adapters/kysely.ts +48 -10
  198. package/src/source/adapters/kyselyMutationCore.ts +69 -22
  199. package/src/source/adapters/memory.ts +5 -0
  200. package/src/source/adapters/prisma.ts +6 -1
  201. package/src/source/conformance.ts +21 -21
  202. package/src/source/contract.ts +34 -0
  203. package/src/source/index.ts +2 -0
  204. package/src/source/types.ts +1 -0
  205. package/src/transactionLayer.ts +3 -3
  206. package/src/transport/httpClient.ts +23 -6
  207. package/src/transport/httpTransport.ts +88 -11
  208. package/src/transport/wsFrameHandlers.ts +3 -0
  209. package/src/types/global.ts +1 -1
  210. package/src/types/streams.ts +2 -2
  211. package/src/wire/accountResponses.ts +5 -11
  212. package/src/wire/claims.ts +7 -1
  213. package/src/wire/commit.ts +31 -1
  214. package/src/wire/index.ts +10 -1
  215. package/src/wire/listEnvelope.ts +23 -0
  216. package/src/wire/protocol.ts +1 -1
@@ -1,9 +1,23 @@
1
1
  /**
2
- * Canonical per-model read configuration consumed when a client bootstraps. Each
3
- * {@link BootstrapModel} maps a model to its physical table, its tenancy column, and
4
- * any parent scoping — plain data with no database driver. It feeds the read side of
5
- * the data adapter contract; your query builder reads it to load a model's initial
6
- * rows.
2
+ * Canonical per-model read configuration how one model's rows are located,
3
+ * scoped to a tenant, and decoded back into the types the schema declared.
4
+ *
5
+ * {@link ReadModelShape} is the definition site for those facts. Every read seam
6
+ * needs the same set, and each one that restated the set drifted from the
7
+ * others: `json` decoding reached three of them, `number` decoding reached none,
8
+ * and the where-clause `boolean` list reached exactly one — so a `bigint`-backed
9
+ * field left one seam as a decimal string and its `int4` neighbour left the next
10
+ * as a number. Adding a declared type is now one edit here rather than a
11
+ * remembered sweep.
12
+ *
13
+ * The descriptors below carry that shape plus the facts only they need. They
14
+ * disagree on one thing, deliberately: the model's own name. A bootstrap
15
+ * descriptor spells it `name`, the server's read-model descriptor spells it
16
+ * `typename`. `name` is part of the published data-adapter contract, so the two
17
+ * spellings stay and the shape they share owns everything else.
18
+ *
19
+ * Plain data, no database driver — it feeds the read side of the data adapter
20
+ * contract, and your query builder reads it to load a model's initial rows.
7
21
  */
8
22
  /** A mapping from a declared field to a physical column, with the alias to apply after a `SELECT *`. */
9
23
  export interface ColumnOverride {
@@ -11,71 +25,109 @@ export interface ColumnOverride {
11
25
  readonly column: string;
12
26
  readonly alias: string;
13
27
  }
14
- /** Read configuration for one model: how to locate its rows and scope them to a tenant. */
15
- export interface BootstrapModel {
16
- name: string;
28
+ /**
29
+ * Parent-table tenancy scoping for rows that have no `organization_id` column
30
+ * of their own, mirroring the schema's `scopedVia` option. A read carrying this
31
+ * adds:
32
+ *
33
+ * WHERE <table>.<localKey> IN
34
+ * (SELECT <parentKey> FROM <parentTable> WHERE <parentOrgColumn> = $1)
35
+ *
36
+ * It applies on top of whatever `orgScoped` dictates, so a table can carry its
37
+ * own `organization_id` and still narrow through a parent. The common case is
38
+ * `orgScoped: false` together with this on a table that lacks the column —
39
+ * without it, such a table reads every tenant's rows.
40
+ */
41
+ export interface ParentScope {
42
+ readonly localKey: string;
43
+ readonly parentTable: string;
44
+ readonly parentKey?: string;
45
+ readonly parentOrgColumn?: string;
46
+ }
47
+ /**
48
+ * Everything a read seam needs to know about one model except what it is called.
49
+ *
50
+ * Split from the descriptors that carry it because the two of them name the
51
+ * model differently and agree on all of this. A seam that only decodes, or only
52
+ * compiles SQL, projects the members it uses with `Pick` rather than declaring
53
+ * its own near-copy.
54
+ */
55
+ export interface ReadModelShape {
17
56
  /**
18
57
  * Extra names accepted when a request looks up or filters this model. When the
19
- * physical table name is canonical, `name` stays that table name and the aliases
20
- * cover generated compatibility names such as `WeatherReports` or `weatherReports`.
58
+ * physical table name is canonical, the descriptor's own name stays that table
59
+ * name and the aliases cover generated compatibility names such as
60
+ * `WeatherReports` or `weatherReports`.
21
61
  */
22
- aliases?: readonly string[];
62
+ readonly aliases?: readonly string[];
23
63
  /**
24
- * The schema key used by source endpoints. `name` stays the wire and result model
25
- * name (usually the typename), while source handlers are keyed by the developer's
26
- * schema key, such as `files` or `blocks`.
64
+ * The schema key used by source endpoints. The descriptor's own name stays the
65
+ * wire and result model name (usually the typename), while source handlers are
66
+ * keyed by the developer's schema key, such as `files` or `blocks`.
27
67
  */
28
- sourceModel?: string;
29
- table: string;
30
- syncGroups?: string[];
31
- enabled?: boolean;
32
- /** Max rows to return. Omit for unlimited. Maps to schema's bootstrapLimit. */
33
- limit?: number;
34
- /** SQL ORDER BY clause. Default: 'id'. Maps to schema's bootstrapOrderBy. */
35
- orderBy?: string;
68
+ readonly sourceModel?: string;
69
+ readonly table: string;
36
70
  /** Whether the table has organization_id. Default: true. */
37
- orgScoped?: boolean;
71
+ readonly orgScoped?: boolean;
38
72
  /**
39
73
  * The model derives its tenant from the connected data source (`policy:
40
- * { by: 'source' }`) rather than a row column. It carries no tenant predicate on a
41
- * log plane, so it is excluded from the bootstrap set entirely until the
42
- * write-through connect path can resolve the org from the source registration
43
- * serving it now would return every row to every tenant. Kept on the type as a
44
- * defense-in-depth marker so a source-scoped model that reaches `getBootstrapData`
45
- * fails closed rather than bootstrapping unscoped.
74
+ * { by: 'source' }`) rather than a row column the source registration is the
75
+ * tenant boundary. Distinct from `orgScoped: false` (a `none`/global model): a
76
+ * source-scoped model IS tenant-scoped, just not by a column. It carries no
77
+ * tenant predicate on a log plane, so every read and bootstrap site fails it
78
+ * closed with `source_tenancy_not_enforced` rather than treating it as global
79
+ * serving it now would return every row to every tenant. When the
80
+ * write-through connect path can resolve the org from the source registration,
81
+ * this same flag routes to that resolution.
46
82
  */
47
- sourceScoped?: boolean;
83
+ readonly sourceScoped?: boolean;
48
84
  /** Physical tenancy column (default `organization_id`, configurable per model). */
49
- orgColumn?: string;
50
- /**
51
- * Parent-table scoping for rows that have no `organization_id` column, mirroring
52
- * the schema's `scopedVia` option. When set, the bootstrap query adds:
53
- *
54
- * WHERE <table>.<localKey> IN
55
- * (SELECT <parentKey> FROM <parentTable> WHERE <parentOrgColumn> = $1)
56
- *
57
- * This applies on top of whatever `orgScoped` dictates, so a table can carry its
58
- * own `organization_id` and still narrow through a parent. The common case,
59
- * though, is `orgScoped: false` together with `scopedVia` on a table that lacks the
60
- * column.
61
- */
62
- scopedVia?: {
63
- localKey: string;
64
- parentTable: string;
65
- parentKey?: string;
66
- parentOrgColumn?: string;
67
- };
85
+ readonly orgColumn?: string;
86
+ /** Parent-table scoping for rows with no tenancy column of their own. */
87
+ readonly scopedVia?: ParentScope;
68
88
  /** Client-facing field name → physical DB column for declared fields. */
69
- fieldColumns?: Record<string, string>;
89
+ readonly fieldColumns?: Readonly<Record<string, string>>;
70
90
  /** Physical-column aliases needed after SELECT * for `.from(...)` fields. */
71
- columnOverrides?: readonly ColumnOverride[];
91
+ readonly columnOverrides?: readonly ColumnOverride[];
72
92
  /**
73
- * Physical columns the schema declares as JSON (via `field.json()`). A JSON field
74
- * stored in a text column comes back from `row_to_json` as a serialized string, so
75
- * the bootstrap reparses these columns to make the wire value the canonical object
76
- * regardless of the physical column type. A `jsonb` column already returns an
77
- * object, so reparsing it is a no-op.
93
+ * Physical columns the schema declares as JSON (via `field.json()`). A JSON
94
+ * field stored in a text column comes back serialized, so a read reparses these
95
+ * to make the wire value the canonical object regardless of the physical column
96
+ * type. A `jsonb` column already returns an object, so reparsing it is a no-op.
78
97
  */
79
- jsonColumns?: readonly string[];
98
+ readonly jsonColumns?: readonly string[];
99
+ /**
100
+ * Physical columns the schema declares as a boolean (via `field.boolean()`).
101
+ * Two seams need the list. A where-clause parameter is coerced to a real JS
102
+ * boolean before binding, because the driver's bool encoder is a strict
103
+ * `=== true` and a string `'t'` would silently bind as `'f'` — an INVERTED
104
+ * filter, not an error. A row read back from the log is coerced the same way,
105
+ * because a value echoed from a customer's database arrives as PG's text
106
+ * literal rather than as `true`.
107
+ */
108
+ readonly boolColumns?: readonly string[];
109
+ /**
110
+ * Physical columns the schema declares as a number (via `field.number()`).
111
+ * Postgres has four integer widths where JavaScript has one, so a column too
112
+ * wide to always fit a JS number comes back as decimal text. A read decodes
113
+ * these so a `bigint`-backed field and an `int4`-backed one reach the client as
114
+ * the same JS type.
115
+ */
116
+ readonly numberColumns?: readonly string[];
117
+ }
118
+ /**
119
+ * Read configuration for one model at bootstrap: {@link ReadModelShape} plus the
120
+ * facts only the initial payload needs — which models are in it, how much of
121
+ * each, and in what order.
122
+ */
123
+ export interface BootstrapModel extends ReadModelShape {
124
+ /** The wire and result model name. `ModelMeta.typename` is the same fact. */
125
+ readonly name: string;
126
+ readonly syncGroups?: readonly string[];
127
+ readonly enabled?: boolean;
128
+ /** Max rows to return. Omit for unlimited. Maps to schema's bootstrapLimit. */
129
+ readonly limit?: number;
130
+ /** SQL ORDER BY clause. Default: 'id'. Maps to schema's bootstrapOrderBy. */
131
+ readonly orderBy?: string;
80
132
  }
81
133
  //# sourceMappingURL=readConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"readConfig.d.ts","sourceRoot":"","sources":["../../src/server/readConfig.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,wGAAwG;AACxG,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,2FAA2F;AAC3F,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,mFAAmF;IACnF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,EAAE;QACV,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,yEAAyE;IACzE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,6EAA6E;IAC7E,eAAe,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;IAC5C;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACjC"}
1
+ {"version":3,"file":"readConfig.d.ts","sourceRoot":"","sources":["../../src/server/readConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,wGAAwG;AACxG,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,4DAA4D;IAC5D,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC,mFAAmF;IACnF,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,yEAAyE;IACzE,QAAQ,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC;IACjC,yEAAyE;IACzE,QAAQ,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACzD,6EAA6E;IAC7E,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;IACrD;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC;;;;;;;;OAQG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC;;;;;;OAMG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC5C;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAe,SAAQ,cAAc;IACpD,6EAA6E;IAC7E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,+EAA+E;IAC/E,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,6EAA6E;IAC7E,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B"}
@@ -1,9 +1,23 @@
1
1
  /**
2
- * Canonical per-model read configuration consumed when a client bootstraps. Each
3
- * {@link BootstrapModel} maps a model to its physical table, its tenancy column, and
4
- * any parent scoping — plain data with no database driver. It feeds the read side of
5
- * the data adapter contract; your query builder reads it to load a model's initial
6
- * rows.
2
+ * Canonical per-model read configuration how one model's rows are located,
3
+ * scoped to a tenant, and decoded back into the types the schema declared.
4
+ *
5
+ * {@link ReadModelShape} is the definition site for those facts. Every read seam
6
+ * needs the same set, and each one that restated the set drifted from the
7
+ * others: `json` decoding reached three of them, `number` decoding reached none,
8
+ * and the where-clause `boolean` list reached exactly one — so a `bigint`-backed
9
+ * field left one seam as a decimal string and its `int4` neighbour left the next
10
+ * as a number. Adding a declared type is now one edit here rather than a
11
+ * remembered sweep.
12
+ *
13
+ * The descriptors below carry that shape plus the facts only they need. They
14
+ * disagree on one thing, deliberately: the model's own name. A bootstrap
15
+ * descriptor spells it `name`, the server's read-model descriptor spells it
16
+ * `typename`. `name` is part of the published data-adapter contract, so the two
17
+ * spellings stay and the shape they share owns everything else.
18
+ *
19
+ * Plain data, no database driver — it feeds the read side of the data adapter
20
+ * contract, and your query builder reads it to load a model's initial rows.
7
21
  */
8
22
  export {};
9
23
  //# sourceMappingURL=readConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"readConfig.js","sourceRoot":"","sources":["../../src/server/readConfig.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
1
+ {"version":3,"file":"readConfig.js","sourceRoot":"","sources":["../../src/server/readConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG"}
@@ -1 +1 @@
1
- {"version":3,"file":"drizzle.d.ts","sourceRoot":"","sources":["../../../src/source/adapters/drizzle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAGH,OAAO,EAAO,KAAK,GAAG,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAGV,iBAAiB,EACjB,GAAG,EACJ,MAAM,eAAe,CAAC;AAYvB,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAMnE,6EAA6E;AAC7E,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACnD,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACjE;AAED,8EAA8E;AAC9E,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,EAAE,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,EAAE,CAAA;CAAE,CAAC;AAuDtF,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,YAAY,EACtD,EAAE,EAAE,WAAW,EACf,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAChB,iBAAiB,CAuKnB"}
1
+ {"version":3,"file":"drizzle.d.ts","sourceRoot":"","sources":["../../../src/source/adapters/drizzle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAGH,OAAO,EAAO,KAAK,GAAG,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAGV,iBAAiB,EACjB,GAAG,EACJ,MAAM,eAAe,CAAC;AAYvB,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAMnE,6EAA6E;AAC7E,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACnD,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACjE;AAED,8EAA8E;AAC9E,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,EAAE,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,EAAE,CAAA;CAAE,CAAC;AAuDtF,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,YAAY,EACtD,EAAE,EAAE,WAAW,EACf,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAChB,iBAAiB,CA4KnB"}
@@ -106,6 +106,11 @@ export function drizzleDataSource(db, schema) {
106
106
  return out;
107
107
  };
108
108
  const applyOperation = async (tx, op) => {
109
+ if (op.where) {
110
+ throw new AbloValidationError('The Drizzle adapter does not support conditional operations', {
111
+ code: 'source_adapter_misconfigured',
112
+ });
113
+ }
109
114
  const mc = modelColumns(op.model);
110
115
  const table = sql.identifier(mc.table);
111
116
  const id = rowId(op);
@@ -1 +1 @@
1
- {"version":3,"file":"drizzle.js","sourceRoot":"","sources":["../../../src/source/adapters/drizzle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"drizzle.js","sourceRoot":"","sources":["../../../src/source/adapters/drizzle.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"kysely.d.ts","sourceRoot":"","sources":["../../../src/source/adapters/kysely.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,KAAK,EAEV,iBAAiB,EACjB,eAAe,EAEhB,MAAM,eAAe,CAAC;AAoBvB,OAAO,EAIL,KAAK,UAAU,EACf,KAAK,kBAAkB,EACxB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAC9B,KAAK,UAAU,EACf,KAAK,kBAAkB,EACvB,KAAK,yBAAyB,EAC9B,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,GAC5B,MAAM,yBAAyB,CAAC;AAEjC,KAAK,kBAAkB,GAAG,UAAU,GAAG,QAAQ,CAAC;AA+GhD;;;;GAIG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;;;OAKG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,MAAM,CAAC;CAC9D;AAED,wBAAgB,2BAA2B,CACzC,EAAE,EAAE,UAAU,EACd,IAAI,EAAE,kBAAkB,EACxB,IAAI,EAAE,kBAAkB,EACxB,OAAO,GAAE,4BAAiC,GACzC,eAAe,CAyFjB;AAED,6EAA6E;AAC7E,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,YAAY,EACrD,EAAE,EAAE,UAAU,EACd,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAChB,iBAAiB,CAqCnB;AAED,iFAAiF;AACjF,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,YAAY,EACzD,EAAE,EAAE,UAAU,EACd,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAChB,eAAe,CAoBjB"}
1
+ {"version":3,"file":"kysely.d.ts","sourceRoot":"","sources":["../../../src/source/adapters/kysely.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,KAAK,EAEV,iBAAiB,EACjB,eAAe,EAEhB,MAAM,eAAe,CAAC;AAsBvB,OAAO,EAIL,KAAK,UAAU,EACf,KAAK,kBAAkB,EACxB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAC9B,KAAK,UAAU,EACf,KAAK,kBAAkB,EACvB,KAAK,yBAAyB,EAC9B,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,GAC5B,MAAM,yBAAyB,CAAC;AAEjC,KAAK,kBAAkB,GAAG,UAAU,GAAG,QAAQ,CAAC;AA0IhD;;;;GAIG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;;;OAKG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,MAAM,CAAC;CAC9D;AAED,wBAAgB,2BAA2B,CACzC,EAAE,EAAE,UAAU,EACd,IAAI,EAAE,kBAAkB,EACxB,IAAI,EAAE,kBAAkB,EACxB,OAAO,GAAE,4BAAiC,GACzC,eAAe,CAkGjB;AAED,6EAA6E;AAC7E,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,YAAY,EACrD,EAAE,EAAE,UAAU,EACd,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAChB,iBAAiB,CAqCnB;AAED,iFAAiF;AACjF,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,YAAY,EACzD,EAAE,EAAE,UAAU,EACd,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAChB,eAAe,CAoBjB"}
@@ -19,7 +19,7 @@
19
19
  import { AbloValidationError } from '../../errors.js';
20
20
  import { defineDatabaseAdapter } from '../adapterFactory.js';
21
21
  import { postgresAdapterProfile } from '../adapterProfile.js';
22
- import { changeSetSchema, outboxEventSchema, sourceCommitEchoMarkerSchema, } from '../contract.js';
22
+ import { changeSetSchema, outboxEventSchema, sourceCommitEchoMarkerSchema, sourceCommitEchoIntentSchema, } from '../contract.js';
23
23
  import { assertSourceIdempotencyIntent, assertSourceIdempotencyRetention, sourceChangeIntentHash, SOURCE_IDEMPOTENCY_RETENTION, } from '../idempotency.js';
24
24
  import { adapterTableMigrations, idempotencyLedgerMigrations, } from '../migrations.js';
25
25
  import { ABLO_POSTGRES_COMMIT_ECHO_PREFIX } from '../types.js';
@@ -61,13 +61,13 @@ function markerAction(type) {
61
61
  return 'D';
62
62
  return 'U';
63
63
  }
64
- function assertDirectLogicalMarker(change, markerModelFor) {
64
+ function parseEchoIntent(change, markerModelFor, required) {
65
65
  const payload = change.echo?.payload;
66
66
  if (!payload) {
67
- throw new AbloValidationError('A direct Kysely mutation requires a transactional Postgres logical marker', { code: 'source_adapter_misconfigured' });
67
+ return undefined;
68
68
  }
69
69
  try {
70
- const marker = sourceCommitEchoMarkerSchema.parse(JSON.parse(payload));
70
+ const marker = sourceCommitEchoIntentSchema.parse(JSON.parse(payload));
71
71
  if (marker.correlationId !== change.correlationId) {
72
72
  throw new Error('marker correlation does not match the ledger key');
73
73
  }
@@ -82,19 +82,39 @@ function assertDirectLogicalMarker(change, markerModelFor) {
82
82
  // key through the schema so the two vocabularies compare correctly.
83
83
  if (!markerOperation ||
84
84
  markerOperation.model !== markerModelFor(operation.model) ||
85
- markerOperation.id !== kyselyOperationRowId(operation) ||
85
+ (markerOperation.id != null && markerOperation.id !== kyselyOperationRowId(operation)) ||
86
+ (markerOperation.id == null && operation.type !== 'CREATE') ||
86
87
  markerOperation.action !== markerAction(operation.type) ||
87
88
  markerOperation.transactionId !== operation.transactionId) {
88
89
  throw new Error(`marker operation ${index} does not match the mutation`);
89
90
  }
90
91
  }
92
+ return marker;
91
93
  }
92
94
  catch (error) {
93
95
  if (error instanceof AbloValidationError)
94
96
  throw error;
97
+ if (!required)
98
+ return undefined;
95
99
  throw new AbloValidationError(`The direct Postgres logical marker is invalid: ${error instanceof Error ? error.message : 'unknown marker error'}`, { code: 'source_adapter_misconfigured' });
96
100
  }
97
101
  }
102
+ function resolveEchoMarker(intent, rows) {
103
+ return sourceCommitEchoMarkerSchema.parse({
104
+ ...intent,
105
+ operations: intent.operations.map((operation, index) => {
106
+ const returnedId = rows[index]?.id;
107
+ const id = operation.id ?? returnedId;
108
+ if (typeof id !== 'string' || id.length === 0) {
109
+ throw new AbloValidationError(`source operation ${index} did not return a canonical id for WAL correlation`, { code: 'source_adapter_misconfigured' });
110
+ }
111
+ if (returnedId != null && String(returnedId) !== id) {
112
+ throw new AbloValidationError(`source operation ${index} returned an id that does not match its WAL correlation`, { code: 'source_adapter_misconfigured' });
113
+ }
114
+ return { ...operation, id };
115
+ }),
116
+ });
117
+ }
98
118
  export function createKyselyMutationAdapter(db, core, mode, options = {}) {
99
119
  const markerModelFor = options.markerModelFor ?? ((model) => model);
100
120
  return defineDatabaseAdapter({
@@ -116,8 +136,10 @@ export function createKyselyMutationAdapter(db, core, mode, options = {}) {
116
136
  },
117
137
  async commit(change) {
118
138
  const request = changeSetSchema.parse(change);
119
- if (mode === 'direct')
120
- assertDirectLogicalMarker(request, markerModelFor);
139
+ if (mode === 'direct' && !request.echo) {
140
+ throw new AbloValidationError('A direct Kysely mutation requires a transactional Postgres logical marker', { code: 'source_adapter_misconfigured' });
141
+ }
142
+ const echoIntent = parseEchoIntent(request, markerModelFor, mode === 'direct');
121
143
  const requestHash = sourceChangeIntentHash(request);
122
144
  return db.transaction().execute(async (transaction) => {
123
145
  const reservation = await transaction.executeQuery(reserveLedgerQuery(request.correlationId, requestHash));
@@ -159,7 +181,10 @@ export function createKyselyMutationAdapter(db, core, mode, options = {}) {
159
181
  }
160
182
  await transaction.executeQuery(completeLedgerQuery(request.correlationId, rows));
161
183
  if (request.echo?.kind === 'postgres-wal') {
162
- await transaction.executeQuery(postgresLogicalMarkerQuery(request.echo.payload));
184
+ const payload = echoIntent
185
+ ? JSON.stringify(resolveEchoMarker(echoIntent, rows))
186
+ : request.echo.payload;
187
+ await transaction.executeQuery(postgresLogicalMarkerQuery(payload));
163
188
  }
164
189
  return { rows };
165
190
  });
@@ -1 +1 @@
1
- {"version":3,"file":"kysely.js","sourceRoot":"","sources":["../../../src/source/adapters/kysely.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kysely.js","sourceRoot":"","sources":["../../../src/source/adapters/kysely.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Reusable Kysely row-mutation core.
3
3
  *
4
- * This is the single schema-field ↔ physical-column translation used by both
4
+ * This is the single schema-field ↔ database-column translation used by both
5
5
  * Kysely transports. It deliberately knows nothing about outboxes, logical
6
6
  * markers, or idempotency: wrappers compose those transaction policies around
7
7
  * the same `applyOperation` implementation, so direct and endpoint DML cannot
@@ -1 +1 @@
1
- {"version":3,"file":"kyselyMutationCore.d.ts","sourceRoot":"","sources":["../../../src/source/adapters/kyselyMutationCore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kyselyMutationCore.d.ts","sourceRoot":"","sources":["../../../src/source/adapters/kyselyMutationCore.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Reusable Kysely row-mutation core.
3
3
  *
4
- * This is the single schema-field ↔ physical-column translation used by both
4
+ * This is the single schema-field ↔ database-column translation used by both
5
5
  * Kysely transports. It deliberately knows nothing about outboxes, logical
6
6
  * markers, or idempotency: wrappers compose those transaction policies around
7
7
  * the same `applyOperation` implementation, so direct and endpoint DML cannot
@@ -58,6 +58,10 @@ export function kyselyOperationRowId(operation) {
58
58
  }
59
59
  return id;
60
60
  }
61
+ function suppliedOperationRowId(operation) {
62
+ const id = operation.id ?? operation.input?.id;
63
+ return typeof id === 'string' && id.length > 0 ? id : undefined;
64
+ }
61
65
  export function createKyselyMutationCore(db, schema) {
62
66
  const maps = buildColumnMaps(schema);
63
67
  const modelColumns = (model) => {
@@ -71,14 +75,20 @@ export function createKyselyMutationCore(db, schema) {
71
75
  const fieldFor = (columns, column) => columns.columnToField.get(column) ?? snakeToCamel(column);
72
76
  const toColumns = (columns, row) => {
73
77
  const out = {};
74
- for (const key of Object.keys(row))
78
+ for (const key of Object.keys(row)) {
75
79
  out[columnFor(columns, key)] = row[key];
80
+ }
76
81
  return out;
77
82
  };
78
83
  const toFields = (columns, row) => {
79
84
  const out = {};
80
- for (const key of Object.keys(row))
81
- out[fieldFor(columns, key)] = row[key];
85
+ for (const key of Object.keys(row)) {
86
+ const field = fieldFor(columns, key);
87
+ const value = row[key];
88
+ out[field] = field === 'id' && value !== null && value !== undefined
89
+ ? String(value)
90
+ : value;
91
+ }
82
92
  return out;
83
93
  };
84
94
  return {
@@ -88,7 +98,7 @@ export function createKyselyMutationCore(db, schema) {
88
98
  const rows = await db
89
99
  .selectFrom(columns.table)
90
100
  .selectAll()
91
- .where('id', '=', request.id)
101
+ .where(columnFor(columns, 'id'), '=', request.id)
92
102
  .limit(1)
93
103
  .execute();
94
104
  return rows.map((row) => toFields(columns, row));
@@ -102,12 +112,44 @@ export function createKyselyMutationCore(db, schema) {
102
112
  },
103
113
  async applyOperation(transaction, operation) {
104
114
  const columns = modelColumns(operation.model);
105
- const id = kyselyOperationRowId(operation);
106
115
  const input = operation.input ?? {};
116
+ if (operation.where && operation.type !== 'UPDATE') {
117
+ throw new AbloValidationError('where is supported only for UPDATE operations', {
118
+ code: 'commit_operation_invalid',
119
+ param: 'where',
120
+ });
121
+ }
122
+ if (operation.type === 'CREATE') {
123
+ const suppliedId = suppliedOperationRowId(operation);
124
+ const createInput = operation.id == null
125
+ ? Object.fromEntries(Object.entries(input).filter(([field]) => field !== 'id'))
126
+ : input;
127
+ const inserted = await transaction
128
+ .insertInto(columns.table)
129
+ .values(toColumns(columns, {
130
+ ...createInput,
131
+ ...(operation.id == null
132
+ ? {}
133
+ : suppliedId
134
+ ? { id: suppliedId }
135
+ : {}),
136
+ }))
137
+ .returningAll()
138
+ .execute();
139
+ if (!inserted[0]) {
140
+ throw new AbloValidationError(`${operation.type} on "${operation.model}" returned no source row`, { code: 'source_adapter_misconfigured' });
141
+ }
142
+ const row = toFields(columns, inserted[0]);
143
+ if (typeof row.id !== 'string' || row.id.length === 0) {
144
+ throw new AbloValidationError(`${operation.type} on "${operation.model}" did not return a canonical id`, { code: 'source_adapter_misconfigured' });
145
+ }
146
+ return row;
147
+ }
148
+ const id = kyselyOperationRowId(operation);
107
149
  if (operation.type === 'DELETE') {
108
150
  const deleted = await transaction
109
151
  .deleteFrom(columns.table)
110
- .where('id', '=', id)
152
+ .where(columnFor(columns, 'id'), '=', id)
111
153
  .returningAll()
112
154
  .execute();
113
155
  if (!deleted[0]) {
@@ -115,27 +157,23 @@ export function createKyselyMutationCore(db, schema) {
115
157
  }
116
158
  return toFields(columns, deleted[0]);
117
159
  }
118
- if (operation.type === 'CREATE') {
119
- const inserted = await transaction
120
- .insertInto(columns.table)
121
- .values(toColumns(columns, { id, ...input }))
122
- .returningAll()
123
- .execute();
124
- return inserted[0] ? toFields(columns, inserted[0]) : { id, ...input };
125
- }
126
160
  const patch = toColumns(columns, {
127
161
  ...input,
128
162
  ...(operation.type === 'ARCHIVE' ? { archivedAt: new Date() } : {}),
129
163
  ...(operation.type === 'UNARCHIVE' ? { archivedAt: null } : {}),
130
164
  });
131
- const updated = await transaction
165
+ let update = transaction
132
166
  .updateTable(columns.table)
133
167
  .set(patch)
134
- .where('id', '=', id)
135
- .returningAll()
136
- .execute();
168
+ .where(columnFor(columns, 'id'), '=', id);
169
+ for (const [column, value] of Object.entries(toColumns(columns, operation.where ?? {}))) {
170
+ update = update.where(column, '=', value);
171
+ }
172
+ const updated = await update.returningAll().execute();
137
173
  if (!updated[0]) {
138
- throw new AbloValidationError(`${operation.type} on "${operation.model}/${id}" matched no source row`, { code: 'mutate_update_entity_not_found' });
174
+ throw new AbloValidationError(operation.where
175
+ ? `The conditional ${operation.type} on "${operation.model}/${id}" did not match`
176
+ : `${operation.type} on "${operation.model}/${id}" matched no source row`, { code: operation.where ? 'precondition_failed' : 'mutate_update_entity_not_found' });
139
177
  }
140
178
  return toFields(columns, updated[0]);
141
179
  },