hazo_connect 2.6.0 → 2.7.1

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.
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Shared serialization helpers for the claimRows primitive.
3
+ * Pure functions; no I/O. Used by Pg, Postgrest, and Sqlite adapters.
4
+ */
5
+ export type Dialect = "pg" | "postgrest" | "sqlite";
6
+ export type NowSentinel = {
7
+ $now: true;
8
+ };
9
+ export declare function isNowSentinel(v: unknown): v is NowSentinel;
10
+ export declare function validateColumnName(name: string): void;
11
+ export declare function validateOperator(op: string): void;
12
+ export type ResolvedNow = {
13
+ kind: "sql";
14
+ value: string;
15
+ } | {
16
+ kind: "literal";
17
+ value: unknown;
18
+ };
19
+ export declare function resolveNowSentinel(v: unknown, dialect: Dialect): ResolvedNow;
20
+ export declare function serializeWhereToPostgrest(where: Record<string, unknown>): Record<string, string>;
21
+ export interface PgSqlFragment {
22
+ fragment: string;
23
+ params: unknown[];
24
+ nextParamIndex: number;
25
+ }
26
+ export declare function serializeWhereToPgSql(where: Record<string, unknown>, startIndex: number): PgSqlFragment;
27
+ type SetValue = unknown | NowSentinel | {
28
+ increment: number;
29
+ };
30
+ export declare function serializeSetToPgSql(set: Record<string, SetValue>, startIndex: number): PgSqlFragment;
31
+ export declare function serializeSetToPostgrestBody(set: Record<string, SetValue>, observed: Record<string, unknown>): Record<string, unknown>;
32
+ /** Columns the caller incremented — needed for CAS witnesses on PostgrestAdapter. */
33
+ export declare function incrementedColumns(set: Record<string, SetValue>): string[];
34
+ /**
35
+ * Reject empty where/set/returning at the API boundary so adapters
36
+ * don't generate malformed SQL or — on PostgrestAdapter — accidentally
37
+ * match every row.
38
+ *
39
+ * Caller is expected to pass the full ClaimRowsOptions; types kept loose
40
+ * here because the helper lives in clause-builder which doesn't import
41
+ * from types.ts (avoids circular import risk).
42
+ */
43
+ export declare function validateClaimRowsOptions(opts: {
44
+ where: Record<string, unknown>;
45
+ set: Record<string, unknown>;
46
+ returning?: string[];
47
+ }): void;
48
+ export {};
49
+ //# sourceMappingURL=clause-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clause-builder.d.ts","sourceRoot":"","sources":["../../src/lib/adapters/clause-builder.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,MAAM,MAAM,OAAO,GAAG,IAAI,GAAG,WAAW,GAAG,QAAQ,CAAC;AAEpD,MAAM,MAAM,WAAW,GAAG;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,CAAC;AACzC,wBAAgB,aAAa,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,WAAW,CAE1D;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAIrD;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAIjD;AAED,MAAM,MAAM,WAAW,GAAG;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC;AAC/F,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,WAAW,CAK5E;AA0BD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAmChG;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;CACxB;AAMD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,aAAa,CAyCvG;AAID,KAAK,QAAQ,GAAG,OAAO,GAAG,WAAW,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAE9D,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,aAAa,CAqBpG;AAED,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAmBrI;AAED,qFAAqF;AACrF,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,MAAM,EAAE,CAI1E;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE;IAC7C,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB,GAAG,IAAI,CAUP"}
@@ -0,0 +1,221 @@
1
+ "use strict";
2
+ /**
3
+ * Shared serialization helpers for the claimRows primitive.
4
+ * Pure functions; no I/O. Used by Pg, Postgrest, and Sqlite adapters.
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.isNowSentinel = isNowSentinel;
8
+ exports.validateColumnName = validateColumnName;
9
+ exports.validateOperator = validateOperator;
10
+ exports.resolveNowSentinel = resolveNowSentinel;
11
+ exports.serializeWhereToPostgrest = serializeWhereToPostgrest;
12
+ exports.serializeWhereToPgSql = serializeWhereToPgSql;
13
+ exports.serializeSetToPgSql = serializeSetToPgSql;
14
+ exports.serializeSetToPostgrestBody = serializeSetToPostgrestBody;
15
+ exports.incrementedColumns = incrementedColumns;
16
+ exports.validateClaimRowsOptions = validateClaimRowsOptions;
17
+ const COLUMN_NAME_RE = /^[a-zA-Z_][a-zA-Z0-9_]*$/;
18
+ const ALLOWED_OPS = new Set(["eq", "lte", "gte", "lt", "gt", "in", "increment", "$now"]);
19
+ function isNowSentinel(v) {
20
+ return typeof v === "object" && v !== null && "$now" in v && v.$now === true;
21
+ }
22
+ function validateColumnName(name) {
23
+ if (!COLUMN_NAME_RE.test(name)) {
24
+ throw new Error(`invalid column name: ${JSON.stringify(name)}`);
25
+ }
26
+ }
27
+ function validateOperator(op) {
28
+ if (!ALLOWED_OPS.has(op)) {
29
+ throw new Error(`unknown operator: ${JSON.stringify(op)}`);
30
+ }
31
+ }
32
+ function resolveNowSentinel(v, dialect) {
33
+ if (!isNowSentinel(v))
34
+ return { kind: "literal", value: v };
35
+ if (dialect === "pg")
36
+ return { kind: "sql", value: "now()" };
37
+ if (dialect === "sqlite")
38
+ return { kind: "sql", value: "datetime('now')" };
39
+ return { kind: "literal", value: new Date().toISOString() };
40
+ }
41
+ function asOperator(v) {
42
+ if (typeof v !== "object" || v === null || isNowSentinel(v))
43
+ return null;
44
+ const keys = Object.keys(v).filter((k) => ["lte", "gte", "lt", "gt", "in"].includes(k));
45
+ if (keys.length === 0)
46
+ return null;
47
+ if (keys.length > 1) {
48
+ throw new Error(`multiple operators in single clause not supported: ${keys.join(", ")}`);
49
+ }
50
+ const op = keys[0];
51
+ return { op, value: v[op] };
52
+ }
53
+ function isNotNullSentinel(v) {
54
+ return (typeof v === "object" &&
55
+ v !== null &&
56
+ !isNowSentinel(v) &&
57
+ "isNotNull" in v &&
58
+ v.isNotNull === true);
59
+ }
60
+ function serializeWhereToPostgrest(where) {
61
+ const out = {};
62
+ for (const [col, raw] of Object.entries(where)) {
63
+ validateColumnName(col);
64
+ if (raw === null) {
65
+ out[col] = "is.null";
66
+ continue;
67
+ }
68
+ if (isNotNullSentinel(raw)) {
69
+ out[col] = "not.is.null";
70
+ continue;
71
+ }
72
+ const opObj = asOperator(raw);
73
+ if (opObj) {
74
+ if (opObj.op === "in") {
75
+ if (!Array.isArray(opObj.value))
76
+ throw new Error(`in clause requires array for column ${col}`);
77
+ for (const v of opObj.value) {
78
+ const s = String(v);
79
+ if (s.includes(",") || s.includes("(") || s.includes(")")) {
80
+ throw new Error(`in clause value contains reserved PostgREST chars (, ( )) — column ${col}`);
81
+ }
82
+ }
83
+ out[col] = `in.(${opObj.value.map(String).join(",")})`;
84
+ }
85
+ else {
86
+ const resolved = resolveNowSentinel(opObj.value, "postgrest");
87
+ if (resolved.kind === "sql")
88
+ throw new Error("postgrest path cannot use sql sentinel");
89
+ out[col] = `${opObj.op}.${String(resolved.value)}`;
90
+ }
91
+ }
92
+ else {
93
+ // scalar => eq
94
+ const resolved = resolveNowSentinel(raw, "postgrest");
95
+ out[col] = `eq.${String(resolved.value)}`;
96
+ }
97
+ }
98
+ return out;
99
+ }
100
+ const PG_OP_SQL = {
101
+ lte: "<=", gte: ">=", lt: "<", gt: ">", eq: "=",
102
+ };
103
+ function serializeWhereToPgSql(where, startIndex) {
104
+ const parts = [];
105
+ const params = [];
106
+ let idx = startIndex;
107
+ for (const [col, raw] of Object.entries(where)) {
108
+ validateColumnName(col);
109
+ if (raw === null) {
110
+ parts.push(`${col} IS NULL`);
111
+ continue;
112
+ }
113
+ if (isNotNullSentinel(raw)) {
114
+ parts.push(`${col} IS NOT NULL`);
115
+ continue;
116
+ }
117
+ const opObj = asOperator(raw);
118
+ if (opObj) {
119
+ if (opObj.op === "in") {
120
+ if (!Array.isArray(opObj.value))
121
+ throw new Error(`in clause requires array for column ${col}`);
122
+ const slots = opObj.value.map(() => `$${idx++}`);
123
+ params.push(...opObj.value);
124
+ parts.push(`${col} IN (${slots.join(", ")})`);
125
+ }
126
+ else {
127
+ const resolved = resolveNowSentinel(opObj.value, "pg");
128
+ if (resolved.kind === "sql") {
129
+ parts.push(`${col} ${PG_OP_SQL[opObj.op]} ${resolved.value}`);
130
+ }
131
+ else {
132
+ parts.push(`${col} ${PG_OP_SQL[opObj.op]} $${idx++}`);
133
+ params.push(resolved.value);
134
+ }
135
+ }
136
+ }
137
+ else {
138
+ const resolved = resolveNowSentinel(raw, "pg");
139
+ if (resolved.kind === "sql") {
140
+ parts.push(`${col} = ${resolved.value}`);
141
+ }
142
+ else {
143
+ parts.push(`${col} = $${idx++}`);
144
+ params.push(resolved.value);
145
+ }
146
+ }
147
+ }
148
+ return { fragment: parts.join(" AND "), params, nextParamIndex: idx };
149
+ }
150
+ function serializeSetToPgSql(set, startIndex) {
151
+ const parts = [];
152
+ const params = [];
153
+ let idx = startIndex;
154
+ for (const [col, raw] of Object.entries(set)) {
155
+ validateColumnName(col);
156
+ if (typeof raw === "object" && raw !== null && "increment" in raw) {
157
+ const n = raw.increment;
158
+ if (typeof n !== "number" || !Number.isFinite(n))
159
+ throw new Error(`increment must be a finite number for column ${col}`);
160
+ parts.push(`${col} = ${col} + ${n}`);
161
+ continue;
162
+ }
163
+ const resolved = resolveNowSentinel(raw, "pg");
164
+ if (resolved.kind === "sql") {
165
+ parts.push(`${col} = ${resolved.value}`);
166
+ }
167
+ else {
168
+ parts.push(`${col} = $${idx++}`);
169
+ params.push(resolved.value);
170
+ }
171
+ }
172
+ return { fragment: parts.join(", "), params, nextParamIndex: idx };
173
+ }
174
+ function serializeSetToPostgrestBody(set, observed) {
175
+ const out = {};
176
+ for (const [col, raw] of Object.entries(set)) {
177
+ validateColumnName(col);
178
+ if (typeof raw === "object" && raw !== null && "increment" in raw) {
179
+ const n = raw.increment;
180
+ if (typeof n !== "number" || !Number.isFinite(n))
181
+ throw new Error(`increment must be a finite number for column ${col}`);
182
+ const current = observed[col];
183
+ if (typeof current !== "number") {
184
+ const display = current === null ? "null" : typeof current;
185
+ throw new Error(`increment on ${col} requires observed numeric value (got ${display})`);
186
+ }
187
+ out[col] = current + n;
188
+ continue;
189
+ }
190
+ const resolved = resolveNowSentinel(raw, "postgrest");
191
+ out[col] = resolved.value;
192
+ }
193
+ return out;
194
+ }
195
+ /** Columns the caller incremented — needed for CAS witnesses on PostgrestAdapter. */
196
+ function incrementedColumns(set) {
197
+ return Object.entries(set)
198
+ .filter(([_, v]) => typeof v === "object" && v !== null && "increment" in v)
199
+ .map(([col]) => col);
200
+ }
201
+ /**
202
+ * Reject empty where/set/returning at the API boundary so adapters
203
+ * don't generate malformed SQL or — on PostgrestAdapter — accidentally
204
+ * match every row.
205
+ *
206
+ * Caller is expected to pass the full ClaimRowsOptions; types kept loose
207
+ * here because the helper lives in clause-builder which doesn't import
208
+ * from types.ts (avoids circular import risk).
209
+ */
210
+ function validateClaimRowsOptions(opts) {
211
+ if (Object.keys(opts.where).length === 0) {
212
+ throw new Error("claimRows: where must contain at least one condition");
213
+ }
214
+ if (Object.keys(opts.set).length === 0) {
215
+ throw new Error("claimRows: set must contain at least one field");
216
+ }
217
+ if (opts.returning !== undefined && opts.returning.length === 0) {
218
+ throw new Error("claimRows: returning must contain at least one column (or omit for default *)");
219
+ }
220
+ }
221
+ //# sourceMappingURL=clause-builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clause-builder.js","sourceRoot":"","sources":["../../src/lib/adapters/clause-builder.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@
13
13
  * }
14
14
  * }
15
15
  */
16
- import type { HazoConnectAdapter, Logger } from '../types.js';
16
+ import type { HazoConnectAdapter, Logger, ClaimRowsOptions } from '../types.js';
17
17
  import { BaseAdapter } from './base-adapter.js';
18
18
  import { QueryBuilder } from '../query-builder.js';
19
19
  /**
@@ -46,5 +46,6 @@ export declare class FileAdapter extends BaseAdapter implements HazoConnectAdapt
46
46
  * @returns Promise with adapter-specific config
47
47
  */
48
48
  getConfig(): Promise<any>;
49
+ claimRows<T = Record<string, unknown>>(_opts: ClaimRowsOptions): Promise<T[]>;
49
50
  }
50
51
  //# sourceMappingURL=file-adapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-adapter.d.ts","sourceRoot":"","sources":["../../src/lib/adapters/file-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAGlD;;GAEG;AACH,qBAAa,WAAY,SAAQ,WAAY,YAAW,kBAAkB;IACxE;;;;OAIG;gBACS,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM;IAKxC;;;;;;OAMG;IACG,KAAK,CACT,OAAO,EAAE,YAAY,EACrB,MAAM,GAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAgB,EAC3D,IAAI,CAAC,EAAE,GAAG,GACT,OAAO,CAAC,GAAG,CAAC;IAOf;;;;;OAKG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,GAAG,CAAC;IAOzE;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC;CAGhC"}
1
+ {"version":3,"file":"file-adapter.d.ts","sourceRoot":"","sources":["../../src/lib/adapters/file-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAGlD;;GAEG;AACH,qBAAa,WAAY,SAAQ,WAAY,YAAW,kBAAkB;IACxE;;;;OAIG;gBACS,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM;IAKxC;;;;;;OAMG;IACG,KAAK,CACT,OAAO,EAAE,YAAY,EACrB,MAAM,GAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAgB,EAC3D,IAAI,CAAC,EAAE,GAAG,GACT,OAAO,CAAC,GAAG,CAAC;IAOf;;;;;OAKG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,GAAG,CAAC;IAOzE;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC;IAIzB,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;CAGpF"}
@@ -57,6 +57,9 @@ class FileAdapter extends base_adapter_js_1.BaseAdapter {
57
57
  async getConfig() {
58
58
  return Promise.resolve(this.config.file || this.config);
59
59
  }
60
+ async claimRows(_opts) {
61
+ this.throwError(types_js_1.ErrorCode.NOT_IMPLEMENTED, "FileAdapter.claimRows: not supported by file backend");
62
+ }
60
63
  }
61
64
  exports.FileAdapter = FileAdapter;
62
65
  //# sourceMappingURL=file-adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-adapter.js","sourceRoot":"","sources":["../../src/lib/adapters/file-adapter.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAGH,uDAA+C;AAE/C,0CAAuC;AAEvC;;GAEG;AACH,MAAa,WAAY,SAAQ,6BAAW;IAC1C;;;;OAIG;IACH,YAAY,MAAW,EAAE,MAAe;QACtC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACrB,8CAA8C;IAChD,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,KAAK,CACT,OAAqB,EACrB,SAAsD,KAAK,EAC3D,IAAU;QAEV,IAAI,CAAC,UAAU,CACb,oBAAS,CAAC,eAAe,EACzB,4EAA4E,CAC7E,CAAA;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,QAAQ,CAAC,QAAgB,EAAE,UAAuB,EAAE;QACxD,IAAI,CAAC,UAAU,CACb,oBAAS,CAAC,eAAe,EACzB,4EAA4E,CAC7E,CAAA;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS;QACb,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,CAAA;IACzD,CAAC;CACF;AAjDD,kCAiDC"}
1
+ {"version":3,"file":"file-adapter.js","sourceRoot":"","sources":["../../src/lib/adapters/file-adapter.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAGH,uDAA+C;AAE/C,0CAAuC;AAEvC;;GAEG;AACH,MAAa,WAAY,SAAQ,6BAAW;IAC1C;;;;OAIG;IACH,YAAY,MAAW,EAAE,MAAe;QACtC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACrB,8CAA8C;IAChD,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,KAAK,CACT,OAAqB,EACrB,SAAsD,KAAK,EAC3D,IAAU;QAEV,IAAI,CAAC,UAAU,CACb,oBAAS,CAAC,eAAe,EACzB,4EAA4E,CAC7E,CAAA;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,QAAQ,CAAC,QAAgB,EAAE,UAAuB,EAAE;QACxD,IAAI,CAAC,UAAU,CACb,oBAAS,CAAC,eAAe,EACzB,4EAA4E,CAC7E,CAAA;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS;QACb,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,CAAA;IACzD,CAAC;IAED,KAAK,CAAC,SAAS,CAA8B,KAAuB;QAClE,IAAI,CAAC,UAAU,CAAC,oBAAS,CAAC,eAAe,EAAE,sDAAsD,CAAC,CAAA;IACpG,CAAC;CACF;AArDD,kCAqDC"}
@@ -6,7 +6,7 @@
6
6
  * does not expose. The query(builder) method intentionally throws until Task 1.3
7
7
  * adds toPgSql() to the QueryBuilder.
8
8
  */
9
- import type { Logger } from '../types.js';
9
+ import type { Logger, ClaimRowsOptions } from '../types.js';
10
10
  import { BaseAdapter } from './base-adapter.js';
11
11
  import type { QueryBuilder } from '../query-builder.js';
12
12
  export interface PgAdapterConfig {
@@ -40,6 +40,17 @@ export declare class PgAdapter extends BaseAdapter {
40
40
  * @returns Array of row objects
41
41
  */
42
42
  raw<T = unknown>(text: string, values?: unknown[]): Promise<T[]>;
43
+ /**
44
+ * Atomically claim rows from a queue table using FOR UPDATE SKIP LOCKED.
45
+ *
46
+ * A CTE selects candidate rows matching `where`, locks them with
47
+ * SKIP LOCKED so concurrent callers never contend, then UPDATE sets
48
+ * the requested fields and returns the RETURNING projection.
49
+ *
50
+ * @param opts - Table, where filter, set patch, optional orderBy/limit/returning
51
+ * @returns Array of updated row objects (empty when no rows match)
52
+ */
53
+ claimRows<T = Record<string, unknown>>(opts: ClaimRowsOptions): Promise<T[]>;
43
54
  /**
44
55
  * Drain the connection pool and release all Postgres connections.
45
56
  * Call this on process shutdown or when the adapter is no longer needed.
@@ -1 +1 @@
1
- {"version":3,"file":"pg-adapter.d.ts","sourceRoot":"","sources":["../../src/lib/adapters/pg-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAEvD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,IAAI,CAAA;IACV,gBAAgB,EAAE,MAAM,CAAA;IACxB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,qBAAa,SAAU,SAAQ,WAAW;IACxC,OAAO,CAAC,GAAG,CAAK;gBAEJ,MAAM,EAAE,eAAe,EAAE,MAAM,CAAC,EAAE,MAAM;IAYpD;;;;OAIG;IACG,KAAK,CACT,QAAQ,EAAE,YAAY,EACtB,OAAO,GAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAgB,EAC5D,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,KAAK,CAAC;IAOjB;;;OAGG;IACG,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;IAOzE;;;;;;;;OAQG;IACG,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAE,OAAO,EAAO,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAS1E;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,eAAe,CAAC;CAG5C"}
1
+ {"version":3,"file":"pg-adapter.d.ts","sourceRoot":"","sources":["../../src/lib/adapters/pg-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAQvD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,IAAI,CAAA;IACV,gBAAgB,EAAE,MAAM,CAAA;IACxB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,qBAAa,SAAU,SAAQ,WAAW;IACxC,OAAO,CAAC,GAAG,CAAK;gBAEJ,MAAM,EAAE,eAAe,EAAE,MAAM,CAAC,EAAE,MAAM;IAYpD;;;;OAIG;IACG,KAAK,CACT,QAAQ,EAAE,YAAY,EACtB,OAAO,GAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAgB,EAC5D,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,KAAK,CAAC;IAOjB;;;OAGG;IACG,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;IAOzE;;;;;;;;OAQG;IACG,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAE,OAAO,EAAO,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAS1E;;;;;;;;;OASG;IACG,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAkClF;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,eAAe,CAAC;CAG5C"}
@@ -15,6 +15,7 @@ exports.PgAdapter = void 0;
15
15
  const postgres_1 = __importDefault(require("postgres"));
16
16
  const base_adapter_js_1 = require("./base-adapter.js");
17
17
  const types_js_1 = require("../types.js");
18
+ const clause_builder_js_1 = require("./clause-builder.js");
18
19
  class PgAdapter extends base_adapter_js_1.BaseAdapter {
19
20
  constructor(config, logger) {
20
21
  super(config, logger);
@@ -58,6 +59,49 @@ class PgAdapter extends base_adapter_js_1.BaseAdapter {
58
59
  this.handleConnectionError(error);
59
60
  }
60
61
  }
62
+ /**
63
+ * Atomically claim rows from a queue table using FOR UPDATE SKIP LOCKED.
64
+ *
65
+ * A CTE selects candidate rows matching `where`, locks them with
66
+ * SKIP LOCKED so concurrent callers never contend, then UPDATE sets
67
+ * the requested fields and returns the RETURNING projection.
68
+ *
69
+ * @param opts - Table, where filter, set patch, optional orderBy/limit/returning
70
+ * @returns Array of updated row objects (empty when no rows match)
71
+ */
72
+ async claimRows(opts) {
73
+ (0, clause_builder_js_1.validateClaimRowsOptions)(opts);
74
+ (0, clause_builder_js_1.validateColumnName)(opts.table);
75
+ const returning = (opts.returning ?? ['*']).map((c) => {
76
+ if (c !== '*')
77
+ (0, clause_builder_js_1.validateColumnName)(c);
78
+ return c;
79
+ });
80
+ if (opts.orderBy)
81
+ (0, clause_builder_js_1.validateColumnName)(opts.orderBy.column);
82
+ const limit = opts.limit ?? 1;
83
+ const whereFrag = (0, clause_builder_js_1.serializeWhereToPgSql)(opts.where, 1);
84
+ const orderByClause = opts.orderBy
85
+ ? `ORDER BY ${opts.orderBy.column} ${opts.orderBy.direction.toUpperCase()}`
86
+ : '';
87
+ const setFrag = (0, clause_builder_js_1.serializeSetToPgSql)(opts.set, whereFrag.nextParamIndex);
88
+ const sql = `
89
+ WITH claimed AS (
90
+ SELECT id FROM ${opts.table}
91
+ WHERE ${whereFrag.fragment}
92
+ ${orderByClause}
93
+ LIMIT ${limit}
94
+ FOR UPDATE SKIP LOCKED
95
+ )
96
+ UPDATE ${opts.table} t
97
+ SET ${setFrag.fragment}
98
+ FROM claimed
99
+ WHERE t.id = claimed.id
100
+ RETURNING ${returning.map((c) => `t.${c === '*' ? '*' : c}`).join(', ')}
101
+ `;
102
+ const params = [...whereFrag.params, ...setFrag.params];
103
+ return await this.raw(sql, params);
104
+ }
61
105
  /**
62
106
  * Drain the connection pool and release all Postgres connections.
63
107
  * Call this on process shutdown or when the adapter is no longer needed.
@@ -1 +1 @@
1
- {"version":3,"file":"pg-adapter.js","sourceRoot":"","sources":["../../src/lib/adapters/pg-adapter.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;;;;AAEH,wDAA6C;AAG7C,uDAA+C;AAC/C,0CAAuC;AAWvC,MAAa,SAAU,SAAQ,6BAAW;IAGxC,YAAY,MAAuB,EAAE,MAAe;QAClD,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAErB,IAAI,CAAC,cAAc,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAA;QAEzC,IAAI,CAAC,GAAG,GAAG,IAAA,kBAAQ,EAAC,MAAM,CAAC,gBAAgB,EAAE;YAC3C,GAAG,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE;YACzB,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI,KAAK;YACxB,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;SACnB,CAAC,CAAA;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,KAAK,CACT,QAAsB,EACtB,UAAuD,KAAK,EAC5D,KAAe;QAEf,IAAI,CAAC,UAAU,CACb,oBAAS,CAAC,eAAe,EACzB,mFAAmF,CACpF,CAAA;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,QAAQ,CAAC,SAAiB,EAAE,QAAsB;QACtD,IAAI,CAAC,UAAU,CACb,oBAAS,CAAC,eAAe,EACzB,wEAAwE,CACzE,CAAA;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,GAAG,CAAc,IAAY,EAAE,SAAoB,EAAE;QACzD,IAAI,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;YAC7D,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAe,CAAC,CAAQ,CAAA;QAC9D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAA;QACnC,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAA;IACtB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS;QACb,OAAO,EAAE,GAAI,IAAI,CAAC,MAA0B,EAAE,CAAA;IAChD,CAAC;CACF;AA1ED,8BA0EC"}
1
+ {"version":3,"file":"pg-adapter.js","sourceRoot":"","sources":["../../src/lib/adapters/pg-adapter.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  * Uses injected config and logger (no file reading or project dependencies).
6
6
  * Zero dependencies - only Node.js built-ins (fetch) and types.
7
7
  */
8
- import type { HazoConnectAdapter, Logger } from '../types.js';
8
+ import type { ClaimRowsOptions, HazoConnectAdapter, Logger } from '../types.js';
9
9
  import { BaseAdapter } from './base-adapter.js';
10
10
  import { QueryBuilder } from '../query-builder.js';
11
11
  /**
@@ -59,6 +59,35 @@ export declare class PostgrestAdapter extends BaseAdapter implements HazoConnect
59
59
  getConfig(): Promise<PostgrestConfig>;
60
60
  private parseErrorPayload;
61
61
  private buildFriendlyErrorMessage;
62
+ /**
63
+ * Claim rows from a queue table using an optimistic Compare-And-Swap (CAS) pattern.
64
+ *
65
+ * Phase 1 — GET candidates: fetch rows matching `where` (plus the incremented columns so we
66
+ * can record their current values as witnesses).
67
+ *
68
+ * Phase 2 — PATCH with witness: for each candidate, issue a conditional PATCH whose WHERE
69
+ * clause includes both the original `where` filters AND a `col=eq.<observed>` guard for every
70
+ * incremented column. The CAS witness is what makes this safe under concurrency: if two
71
+ * workers both GET the same row with `attempt_count=0`, only the first PATCH succeeds because
72
+ * it bumps attempt_count to 1; the second worker's PATCH carries `attempt_count=eq.0` but that
73
+ * condition no longer holds, so PostgREST returns [] — the row was not claimed.
74
+ *
75
+ * @remarks CAS safety guarantee: only holds when `set` contains at least one
76
+ * `{ increment: N }` column, or when every `set` column also appears in `where`
77
+ * (so the PATCH's WHERE clause becomes false once any worker claims the row).
78
+ * If neither condition holds, concurrent claims may both succeed.
79
+ */
80
+ claimRows<T = Record<string, unknown>>(opts: ClaimRowsOptions): Promise<T[]>;
81
+ /**
82
+ * Build a full PostgREST URL for claimRows (table + flat key=value params).
83
+ * Separate from buildPostgrestUrl which takes a QueryBuilder instance.
84
+ */
85
+ private buildClaimRowsUrl;
86
+ /**
87
+ * Build headers for claimRows fetch calls, matching the Authorization pattern
88
+ * used by rawQuery throughout this adapter.
89
+ */
90
+ private claimRowsHeaders;
62
91
  private sanitizeUrl;
63
92
  }
64
93
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"postgrest-adapter.d.ts","sourceRoot":"","sources":["../../src/lib/adapters/postgrest-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAGlD;;GAEG;AACH,UAAU,eAAe;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,WAAY,YAAW,kBAAkB;IAC7E,OAAO,CAAC,eAAe,CAAiB;IAExC;;;;OAIG;gBACS,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM;IAoBxC;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAW5B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAuGzB;;;;;;OAMG;IACG,KAAK,CACT,OAAO,EAAE,YAAY,EACrB,MAAM,GAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAgB,EAC3D,IAAI,CAAC,EAAE,GAAG,GACT,OAAO,CAAC,GAAG,CAAC;IAoBf;;;;;OAKG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,GAAG,CAAC;IAwFzE;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC,eAAe,CAAC;IAG3C,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,yBAAyB;IAyBjC,OAAO,CAAC,WAAW;CAKpB"}
1
+ {"version":3,"file":"postgrest-adapter.d.ts","sourceRoot":"","sources":["../../src/lib/adapters/postgrest-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAUlD;;GAEG;AACH,UAAU,eAAe;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,WAAY,YAAW,kBAAkB;IAC7E,OAAO,CAAC,eAAe,CAAiB;IAExC;;;;OAIG;gBACS,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM;IAoBxC;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAW5B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAuGzB;;;;;;OAMG;IACG,KAAK,CACT,OAAO,EAAE,YAAY,EACrB,MAAM,GAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAgB,EAC3D,IAAI,CAAC,EAAE,GAAG,GACT,OAAO,CAAC,GAAG,CAAC;IAoBf;;;;;OAKG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,GAAG,CAAC;IAwFzE;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC,eAAe,CAAC;IAG3C,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,yBAAyB;IAyBjC;;;;;;;;;;;;;;;;;OAiBG;IACG,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAgFlF;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAQzB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,WAAW;CAKpB"}
@@ -10,6 +10,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.PostgrestAdapter = void 0;
11
11
  const base_adapter_js_1 = require("./base-adapter.js");
12
12
  const types_js_1 = require("../types.js");
13
+ const clause_builder_js_1 = require("./clause-builder.js");
13
14
  /**
14
15
  * PostgREST adapter implementation
15
16
  */
@@ -255,6 +256,109 @@ class PostgrestAdapter extends base_adapter_js_1.BaseAdapter {
255
256
  }
256
257
  return `PostgREST request failed (${status} ${statusText}).${detailMessage}${requestInfo}`;
257
258
  }
259
+ /**
260
+ * Claim rows from a queue table using an optimistic Compare-And-Swap (CAS) pattern.
261
+ *
262
+ * Phase 1 — GET candidates: fetch rows matching `where` (plus the incremented columns so we
263
+ * can record their current values as witnesses).
264
+ *
265
+ * Phase 2 — PATCH with witness: for each candidate, issue a conditional PATCH whose WHERE
266
+ * clause includes both the original `where` filters AND a `col=eq.<observed>` guard for every
267
+ * incremented column. The CAS witness is what makes this safe under concurrency: if two
268
+ * workers both GET the same row with `attempt_count=0`, only the first PATCH succeeds because
269
+ * it bumps attempt_count to 1; the second worker's PATCH carries `attempt_count=eq.0` but that
270
+ * condition no longer holds, so PostgREST returns [] — the row was not claimed.
271
+ *
272
+ * @remarks CAS safety guarantee: only holds when `set` contains at least one
273
+ * `{ increment: N }` column, or when every `set` column also appears in `where`
274
+ * (so the PATCH's WHERE clause becomes false once any worker claims the row).
275
+ * If neither condition holds, concurrent claims may both succeed.
276
+ */
277
+ async claimRows(opts) {
278
+ (0, clause_builder_js_1.validateClaimRowsOptions)(opts);
279
+ (0, clause_builder_js_1.validateColumnName)(opts.table);
280
+ const returning = (opts.returning ?? ['*']).map((col) => {
281
+ if (col !== '*')
282
+ (0, clause_builder_js_1.validateColumnName)(col);
283
+ return col;
284
+ });
285
+ if (opts.orderBy)
286
+ (0, clause_builder_js_1.validateColumnName)(opts.orderBy.column);
287
+ const limit = opts.limit ?? 1;
288
+ const incCols = (0, clause_builder_js_1.incrementedColumns)(opts.set);
289
+ const whereParams = (0, clause_builder_js_1.serializeWhereToPostgrest)(opts.where);
290
+ // Always fetch `id` plus every incremented column so we can build CAS witnesses.
291
+ const candidateSelectCols = ['id', ...incCols].join(',');
292
+ const orderClause = opts.orderBy ? `${opts.orderBy.column}.${opts.orderBy.direction}` : undefined;
293
+ const getUrl = this.buildClaimRowsUrl(opts.table, {
294
+ ...whereParams,
295
+ select: candidateSelectCols,
296
+ limit: String(limit),
297
+ ...(orderClause ? { order: orderClause } : {}),
298
+ });
299
+ const candidatesRes = await fetch(getUrl, { headers: this.claimRowsHeaders() });
300
+ if (!candidatesRes.ok) {
301
+ const body = await candidatesRes.text();
302
+ throw new Error(`claimRows: GET candidates failed (${candidatesRes.status}): ${body}`);
303
+ }
304
+ const candidates = (await candidatesRes.json());
305
+ if (candidates.length === 0)
306
+ return [];
307
+ const claimed = (await Promise.all(candidates.map(async (cand) => {
308
+ // Build CAS witness: for each incremented column, lock its observed value so that
309
+ // only the first concurrent PATCH (the one that actually bumps the column) succeeds.
310
+ const casWitness = {};
311
+ for (const col of incCols) {
312
+ casWitness[col] = `eq.${String(cand[col])}`;
313
+ }
314
+ const patchUrl = this.buildClaimRowsUrl(opts.table, {
315
+ id: `eq.${String(cand.id)}`,
316
+ ...whereParams, // original WHERE conditions
317
+ ...casWitness, // CAS guard — MUST be included; omitting it destroys the safety contract
318
+ select: returning.join(','),
319
+ });
320
+ const body = (0, clause_builder_js_1.serializeSetToPostgrestBody)(opts.set, cand);
321
+ const patchRes = await fetch(patchUrl, {
322
+ method: 'PATCH',
323
+ headers: this.claimRowsHeaders({
324
+ 'Content-Type': 'application/json',
325
+ Prefer: 'return=representation',
326
+ }),
327
+ body: JSON.stringify(body),
328
+ });
329
+ // 4xx/5xx are real errors — throw rather than silently swallow.
330
+ if (!patchRes.ok) {
331
+ const errBody = await patchRes.text();
332
+ throw new Error(`claimRows: PATCH failed (${patchRes.status}): ${errBody}`);
333
+ }
334
+ // 2xx with empty array means the CAS witness failed — another worker claimed this row first.
335
+ const patched = (await patchRes.json());
336
+ return patched.length > 0 ? patched[0] : null;
337
+ })));
338
+ return claimed.filter((r) => r !== null);
339
+ }
340
+ /**
341
+ * Build a full PostgREST URL for claimRows (table + flat key=value params).
342
+ * Separate from buildPostgrestUrl which takes a QueryBuilder instance.
343
+ */
344
+ buildClaimRowsUrl(table, params) {
345
+ const url = new URL(`${this.postgrestConfig.base_url}/${table}`);
346
+ for (const [key, value] of Object.entries(params)) {
347
+ url.searchParams.append(key, value);
348
+ }
349
+ return url.toString();
350
+ }
351
+ /**
352
+ * Build headers for claimRows fetch calls, matching the Authorization pattern
353
+ * used by rawQuery throughout this adapter.
354
+ */
355
+ claimRowsHeaders(extra) {
356
+ return {
357
+ Authorization: `Bearer ${this.postgrestConfig.api_key}`,
358
+ Accept: 'application/json',
359
+ ...(extra ?? {}),
360
+ };
361
+ }
258
362
  sanitizeUrl(url) {
259
363
  return this.postgrestConfig.api_key
260
364
  ? url.replace(this.postgrestConfig.api_key, '...REDACTED...')
@@ -1 +1 @@
1
- {"version":3,"file":"postgrest-adapter.js","sourceRoot":"","sources":["../../src/lib/adapters/postgrest-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"postgrest-adapter.js","sourceRoot":"","sources":["../../src/lib/adapters/postgrest-adapter.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * The adapter supports in-memory and file-backed databases, translating QueryBuilder
5
5
  * instructions into parameterised SQL statements and persisting results when required.
6
6
  */
7
- import type { HazoConnectAdapter, Logger } from '../types.js';
7
+ import type { ClaimRowsOptions, HazoConnectAdapter, Logger } from '../types.js';
8
8
  import { BaseAdapter } from './base-adapter.js';
9
9
  import { QueryBuilder } from '../query-builder.js';
10
10
  /**
@@ -33,6 +33,7 @@ export declare class SqliteAdapter extends BaseAdapter implements HazoConnectAda
33
33
  private dbInstance?;
34
34
  private readonly databasePath?;
35
35
  private inTransaction;
36
+ private _claimQueue;
36
37
  constructor(config: any, logger?: Logger);
37
38
  query(builder: QueryBuilder, method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE', body?: unknown): Promise<any>;
38
39
  rawQuery(sql: string, options?: RequestInit & {
@@ -45,6 +46,12 @@ export declare class SqliteAdapter extends BaseAdapter implements HazoConnectAda
45
46
  * Persists the database afterwards unless inside a transaction.
46
47
  */
47
48
  execScript(sql: string): Promise<void>;
49
+ /**
50
+ * Atomically claim up to `limit` rows matching `where`, apply `set`, and
51
+ * return the updated rows. Wrapped in transaction() so concurrent callers on
52
+ * the same adapter instance are serialized by sql.js's single-process event loop.
53
+ */
54
+ claimRows<T = Record<string, unknown>>(opts: ClaimRowsOptions): Promise<T[]>;
48
55
  /**
49
56
  * Run a sequence of writes atomically. Wraps the callback in
50
57
  * BEGIN/COMMIT/ROLLBACK and suppresses per-statement persistence until
@@ -61,6 +68,12 @@ export declare class SqliteAdapter extends BaseAdapter implements HazoConnectAda
61
68
  private executeUpdate;
62
69
  private executeDelete;
63
70
  private normalizeConfig;
71
+ /**
72
+ * Returns true for the sql.js / sqlite in-memory sentinels.
73
+ * These must not be passed through path.resolve(), which would otherwise
74
+ * create a file literally named ":memory:" in the working directory.
75
+ */
76
+ private static isInMemorySentinel;
64
77
  private loadSqlJs;
65
78
  private initializeDatabase;
66
79
  private getDatabase;
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite-adapter.d.ts","sourceRoot":"","sources":["../../src/lib/adapters/sqlite-adapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAoBlD;;;;;GAKG;AACH,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,CACL,OAAO,EAAE,YAAY,EACrB,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,EACpD,IAAI,CAAC,EAAE,OAAO,KACX,OAAO,CAAC,GAAG,CAAC,CAAA;IACjB,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG;QAAE,MAAM,CAAC,EAAE,OAAO,EAAE,CAAA;KAAE,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;IACvF;;;OAGG;IACH,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAC3C;AAED,qBAAa,aAAc,SAAQ,WAAY,YAAW,kBAAkB;IAC1E,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IACnD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IACnD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAwB;IACxD,OAAO,CAAC,UAAU,CAAC,CAAe;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAQ;IACtC,OAAO,CAAC,aAAa,CAAiB;gBAE1B,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM;IAmBlC,KAAK,CACT,OAAO,EAAE,YAAY,EACrB,MAAM,GAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAgB,EAC3D,IAAI,CAAC,EAAE,OAAO,GACb,OAAO,CAAC,GAAG,CAAC;IA4BT,QAAQ,CACZ,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,WAAW,GAAG;QAAE,MAAM,CAAC,EAAE,OAAO,EAAE,CAAA;KAAO,GACjD,OAAO,CAAC,GAAG,CAAC;IA4BT,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC;IAI/B;;;;OAIG;IACG,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAW5C;;;;;;;;;OASG;IACG,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,wBAAwB,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;YA2CpE,aAAa;YAcb,aAAa;YAmBb,aAAa;YAoBb,aAAa;IAiB3B,OAAO,CAAC,eAAe;IAkBvB,OAAO,CAAC,SAAS;YAKH,kBAAkB;YAmClB,WAAW;IAWzB,OAAO,CAAC,iBAAiB;IAUzB,OAAO,CAAC,gBAAgB;YAsBV,eAAe;IAoD7B,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,mBAAmB;IAyB3B,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,qBAAqB;IAW7B,OAAO,CAAC,iBAAiB;CAY1B"}
1
+ {"version":3,"file":"sqlite-adapter.d.ts","sourceRoot":"","sources":["../../src/lib/adapters/sqlite-adapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAkDlD;;;;;GAKG;AACH,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,CACL,OAAO,EAAE,YAAY,EACrB,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,EACpD,IAAI,CAAC,EAAE,OAAO,KACX,OAAO,CAAC,GAAG,CAAC,CAAA;IACjB,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG;QAAE,MAAM,CAAC,EAAE,OAAO,EAAE,CAAA;KAAE,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;IACvF;;;OAGG;IACH,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAC3C;AAED,qBAAa,aAAc,SAAQ,WAAY,YAAW,kBAAkB;IAC1E,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IACnD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IACnD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAwB;IACxD,OAAO,CAAC,UAAU,CAAC,CAAe;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAQ;IACtC,OAAO,CAAC,aAAa,CAAiB;IACtC,OAAO,CAAC,WAAW,CAAsC;gBAE7C,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM;IAmBlC,KAAK,CACT,OAAO,EAAE,YAAY,EACrB,MAAM,GAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAgB,EAC3D,IAAI,CAAC,EAAE,OAAO,GACb,OAAO,CAAC,GAAG,CAAC;IA4BT,QAAQ,CACZ,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,WAAW,GAAG;QAAE,MAAM,CAAC,EAAE,OAAO,EAAE,CAAA;KAAO,GACjD,OAAO,CAAC,GAAG,CAAC;IA4BT,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC;IAI/B;;;;OAIG;IACG,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAW5C;;;;OAIG;IACG,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAsClF;;;;;;;;;OASG;IACG,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,wBAAwB,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;YA2CpE,aAAa;YAcb,aAAa;YAmBb,aAAa;YAoBb,aAAa;IAiB3B,OAAO,CAAC,eAAe;IA6BvB;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAOjC,OAAO,CAAC,SAAS;YAKH,kBAAkB;YAmClB,WAAW;IAWzB,OAAO,CAAC,iBAAiB;IAUzB,OAAO,CAAC,gBAAgB;YAsBV,eAAe;IAoD7B,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,mBAAmB;IAyB3B,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,qBAAqB;IAW7B,OAAO,CAAC,iBAAiB;CAY1B"}
@@ -18,10 +18,34 @@ const sqlite_utils_js_1 = require("../utils/sqlite-utils.js");
18
18
  const base_adapter_js_1 = require("./base-adapter.js");
19
19
  const types_js_1 = require("../types.js");
20
20
  const query_translator_js_1 = require("../sqlite/query-translator.js");
21
+ const clause_builder_js_1 = require("./clause-builder.js");
22
+ // nodeRequire and WASM resolution moved to wasm-resolver utility
23
+ /**
24
+ * Rewrite a pg-style fragment ($1, $2, ...) to unnamed sqlite positional placeholders (?).
25
+ * The params array retains the same order; sql.js binds `?` slots sequentially.
26
+ */
27
+ function sqliteSerializeWhere(where, startIndex) {
28
+ const pg = (0, clause_builder_js_1.serializeWhereToPgSql)(where, startIndex);
29
+ return { ...pg, fragment: pg.fragment.replace(/\$\d+/g, "?") };
30
+ }
31
+ /**
32
+ * Rewrite a pg-style SET fragment to unnamed sqlite positional placeholders and datetime sentinel.
33
+ * Increment expressions (col = col + N) have no placeholder and are unaffected.
34
+ */
35
+ function sqliteSerializeSet(set, startIndex) {
36
+ const pg = (0, clause_builder_js_1.serializeSetToPgSql)(set, startIndex);
37
+ return {
38
+ ...pg,
39
+ fragment: pg.fragment
40
+ .replace(/now\(\)/g, "datetime('now')")
41
+ .replace(/\$\d+/g, "?"),
42
+ };
43
+ }
21
44
  class SqliteAdapter extends base_adapter_js_1.BaseAdapter {
22
45
  constructor(config, logger) {
23
46
  super(config, logger);
24
47
  this.inTransaction = false;
48
+ this._claimQueue = Promise.resolve();
25
49
  this.sqliteConfig = this.normalizeConfig(config);
26
50
  this.isReadOnlyMode = Boolean(this.sqliteConfig.read_only);
27
51
  this.databasePath = this.sqliteConfig.database_path;
@@ -98,6 +122,47 @@ class SqliteAdapter extends base_adapter_js_1.BaseAdapter {
98
122
  return this.handleSqliteError(error);
99
123
  }
100
124
  }
125
+ /**
126
+ * Atomically claim up to `limit` rows matching `where`, apply `set`, and
127
+ * return the updated rows. Wrapped in transaction() so concurrent callers on
128
+ * the same adapter instance are serialized by sql.js's single-process event loop.
129
+ */
130
+ async claimRows(opts) {
131
+ // Validate eagerly so callers get errors immediately (not queued).
132
+ (0, clause_builder_js_1.validateClaimRowsOptions)(opts);
133
+ (0, clause_builder_js_1.validateColumnName)(opts.table);
134
+ const returning = (opts.returning ?? ["*"]).map((c) => {
135
+ if (c !== "*")
136
+ (0, clause_builder_js_1.validateColumnName)(c);
137
+ return c;
138
+ });
139
+ if (opts.orderBy)
140
+ (0, clause_builder_js_1.validateColumnName)(opts.orderBy.column);
141
+ const limit = opts.limit ?? 1;
142
+ // Serialize concurrent claimRows calls through a promise chain so that a
143
+ // second call waits for the first transaction to commit before starting its
144
+ // own BEGIN, preventing sql.js "cannot start a transaction within a
145
+ // transaction" errors.
146
+ const result = this._claimQueue.then(() => this.transaction(async (tx) => {
147
+ const whereClause = sqliteSerializeWhere(opts.where, 1);
148
+ const orderByClause = opts.orderBy
149
+ ? ` ORDER BY ${opts.orderBy.column} ${opts.orderBy.direction.toUpperCase()}`
150
+ : "";
151
+ const selectSql = `SELECT id FROM ${opts.table} WHERE ${whereClause.fragment}${orderByClause} LIMIT ${limit}`;
152
+ const candidates = (await tx.rawQuery(selectSql, { params: whereClause.params }));
153
+ if (candidates.length === 0)
154
+ return [];
155
+ const setClause = sqliteSerializeSet(opts.set, whereClause.nextParamIndex);
156
+ const idPlaceholders = candidates.map(() => "?").join(", ");
157
+ const idParams = candidates.map((c) => c.id);
158
+ const updateSql = `UPDATE ${opts.table} SET ${setClause.fragment} WHERE id IN (${idPlaceholders}) RETURNING ${returning.join(", ")}`;
159
+ const updated = await tx.rawQuery(updateSql, { params: [...setClause.params, ...idParams] });
160
+ return updated;
161
+ }));
162
+ // Advance the queue tail regardless of whether this call succeeded or failed.
163
+ this._claimQueue = result.catch(() => undefined);
164
+ return result;
165
+ }
101
166
  /**
102
167
  * Run a sequence of writes atomically. Wraps the callback in
103
168
  * BEGIN/COMMIT/ROLLBACK and suppresses per-statement persistence until
@@ -199,13 +264,36 @@ class SqliteAdapter extends base_adapter_js_1.BaseAdapter {
199
264
  : initialSqlInput
200
265
  ? [initialSqlInput]
201
266
  : [];
267
+ // Treat sql.js in-memory sentinels as "no file" — without this guard,
268
+ // path.resolve(":memory:") creates a real file at <cwd>/:memory:.
269
+ const rawDatabasePath = raw?.database_path != null ? String(raw.database_path) : undefined;
270
+ const isInMemorySentinel = rawDatabasePath !== undefined && SqliteAdapter.isInMemorySentinel(rawDatabasePath);
271
+ const databasePath = rawDatabasePath
272
+ ? isInMemorySentinel
273
+ ? undefined
274
+ : path_1.default.resolve(rawDatabasePath)
275
+ : undefined;
202
276
  return {
203
- database_path: raw?.database_path ? path_1.default.resolve(String(raw.database_path)) : undefined,
277
+ database_path: databasePath,
204
278
  read_only: raw?.read_only === true,
205
279
  initial_sql: initialSqlArray.map((statement) => String(statement)).filter(Boolean),
206
280
  wasm_directory: raw?.wasm_directory ? path_1.default.resolve(String(raw.wasm_directory)) : undefined
207
281
  };
208
282
  }
283
+ /**
284
+ * Returns true for the sql.js / sqlite in-memory sentinels.
285
+ * These must not be passed through path.resolve(), which would otherwise
286
+ * create a file literally named ":memory:" in the working directory.
287
+ */
288
+ static isInMemorySentinel(value) {
289
+ if (value === ":memory:")
290
+ return true;
291
+ if (value === "file::memory:")
292
+ return true;
293
+ if (value.startsWith("file:") && /[?&]mode=memory(\b|&)/.test(value))
294
+ return true;
295
+ return false;
296
+ }
209
297
  loadSqlJs() {
210
298
  const config = (0, wasm_resolver_js_1.createSqlJsConfig)(this.wasmDirectory);
211
299
  return (0, sql_js_1.default)(config);
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite-adapter.js","sourceRoot":"","sources":["../../src/lib/adapters/sqlite-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sqlite-adapter.js","sourceRoot":"","sources":["../../src/lib/adapters/sqlite-adapter.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@
14
14
  * }
15
15
  * }
16
16
  */
17
- import type { HazoConnectAdapter, Logger } from '../types.js';
17
+ import type { HazoConnectAdapter, Logger, ClaimRowsOptions } from '../types.js';
18
18
  import { BaseAdapter } from './base-adapter.js';
19
19
  import { QueryBuilder } from '../query-builder.js';
20
20
  /**
@@ -84,6 +84,7 @@ export declare class SupabaseAdapter extends BaseAdapter implements HazoConnectA
84
84
  url: string;
85
85
  hasServiceRoleKey: boolean;
86
86
  }>;
87
+ claimRows<T = Record<string, unknown>>(_opts: ClaimRowsOptions): Promise<T[]>;
87
88
  /**
88
89
  * Parse error payload from response
89
90
  * @param raw - Raw error response text
@@ -1 +1 @@
1
- {"version":3,"file":"supabase-adapter.d.ts","sourceRoot":"","sources":["../../src/lib/adapters/supabase-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAYlD;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,WAAY,YAAW,kBAAkB;IAC5E,OAAO,CAAC,cAAc,CAAgB;IAEtC;;;;OAIG;gBACS,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM;IAgCxC;;;;;OAKG;IACH,OAAO,CAAC,SAAS;IAOjB;;;;OAIG;IACH,OAAO,CAAC,UAAU;IAIlB;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAW5B;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAuGxB;;;;;;OAMG;IACG,KAAK,CACT,OAAO,EAAE,YAAY,EACrB,MAAM,GAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAgB,EAC3D,IAAI,CAAC,EAAE,GAAG,GACT,OAAO,CAAC,GAAG,CAAC;IAoBf;;;;;OAKG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,GAAG,CAAC;IA0FzE;;;;;;OAMG;IACG,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,GAAG,CAAC;IA4EhF;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,iBAAiB,EAAE,OAAO,CAAA;KAAE,CAAC;IAOvE;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAYzB;;;;;;;;OAQG;IACH,OAAO,CAAC,yBAAyB;IAqCjC;;;;OAIG;IACH,OAAO,CAAC,WAAW;CAUpB"}
1
+ {"version":3,"file":"supabase-adapter.d.ts","sourceRoot":"","sources":["../../src/lib/adapters/supabase-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAYlD;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,WAAY,YAAW,kBAAkB;IAC5E,OAAO,CAAC,cAAc,CAAgB;IAEtC;;;;OAIG;gBACS,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM;IAgCxC;;;;;OAKG;IACH,OAAO,CAAC,SAAS;IAOjB;;;;OAIG;IACH,OAAO,CAAC,UAAU;IAIlB;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAW5B;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAuGxB;;;;;;OAMG;IACG,KAAK,CACT,OAAO,EAAE,YAAY,EACrB,MAAM,GAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAgB,EAC3D,IAAI,CAAC,EAAE,GAAG,GACT,OAAO,CAAC,GAAG,CAAC;IAoBf;;;;;OAKG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,GAAG,CAAC;IA0FzE;;;;;;OAMG;IACG,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,GAAG,CAAC;IA4EhF;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,iBAAiB,EAAE,OAAO,CAAA;KAAE,CAAC;IAOjE,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAInF;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAYzB;;;;;;;;OAQG;IACH,OAAO,CAAC,yBAAyB;IAqCjC;;;;OAIG;IACH,OAAO,CAAC,WAAW;CAUpB"}
@@ -325,6 +325,9 @@ class SupabaseAdapter extends base_adapter_js_1.BaseAdapter {
325
325
  hasServiceRoleKey: !!this.supabaseConfig.service_role_key
326
326
  });
327
327
  }
328
+ async claimRows(_opts) {
329
+ this.throwError(types_js_1.ErrorCode.NOT_IMPLEMENTED, "SupabaseAdapter.claimRows: not yet implemented");
330
+ }
328
331
  /**
329
332
  * Parse error payload from response
330
333
  * @param raw - Raw error response text
@@ -1 +1 @@
1
- {"version":3,"file":"supabase-adapter.js","sourceRoot":"","sources":["../../src/lib/adapters/supabase-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"supabase-adapter.js","sourceRoot":"","sources":["../../src/lib/adapters/supabase-adapter.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -104,6 +104,75 @@ export interface HazoConnectAdapter {
104
104
  * @returns Promise with adapter-specific config
105
105
  */
106
106
  getConfig(): Promise<any>;
107
+ /**
108
+ * Atomically claim rows matching `where` and apply `set` in one operation.
109
+ * Per-adapter atomicity:
110
+ * - PgAdapter: SELECT ... FOR UPDATE SKIP LOCKED + UPDATE ... RETURNING (strong).
111
+ * - PostgrestAdapter: GET candidates + per-row CAS PATCH (optimistic).
112
+ * - SqliteAdapter: BEGIN IMMEDIATE wrapping SELECT + UPDATE + RETURNING.
113
+ *
114
+ * Returns rows actually claimed (always non-empty for a single-call success,
115
+ * may be shorter than `limit` if others contended).
116
+ */
117
+ claimRows<T = Record<string, unknown>>(opts: ClaimRowsOptions): Promise<T[]>;
118
+ }
119
+ /**
120
+ * Scalar values usable in claimRows where/set clauses.
121
+ * - WHERE bare-value position: interpreted as `eq.<value>`.
122
+ * - WHERE operator-value position: compared per operator.
123
+ * - SET value position: assigned literally.
124
+ *
125
+ * For non-scalar columns (JSONB etc.), use the general `query()` API instead.
126
+ */
127
+ export type Scalar = string | number | boolean | null;
128
+ /**
129
+ * Sentinel for "current timestamp at execution time".
130
+ * - PgAdapter emits SQL now() (server-side, transaction time).
131
+ * - PostgrestAdapter resolves client-side via new Date().toISOString().
132
+ * - SqliteAdapter emits datetime('now').
133
+ */
134
+ export type NowSentinel = {
135
+ $now: true;
136
+ };
137
+ /**
138
+ * Value accepted in a claimRows where-clause column position.
139
+ * - Scalar: equality match (`eq.<value>`).
140
+ * - `null` (bare value): emits SQL `col IS NULL` / PostgREST `col=is.null`.
141
+ * Use this — not `{ eq: null }` — because SQL `col = NULL` is always false.
142
+ * - `{ isNotNull: true }`: emits `col IS NOT NULL` / `col=not.is.null`.
143
+ * - NowSentinel: equality match against current timestamp.
144
+ * - Operator object: structured comparison; must contain **exactly one** operator key.
145
+ * Multi-key objects (e.g. `{ lte: 5, gte: 1 }`) throw at runtime.
146
+ */
147
+ export type ClaimRowsWhereValue = Scalar | null | NowSentinel | {
148
+ isNotNull: true;
149
+ } | {
150
+ lte?: Scalar | NowSentinel;
151
+ gte?: Scalar | NowSentinel;
152
+ lt?: Scalar | NowSentinel;
153
+ gt?: Scalar | NowSentinel;
154
+ in?: Scalar[];
155
+ };
156
+ /** Value accepted in a claimRows set-clause column position. */
157
+ export type ClaimRowsSetValue = Scalar | NowSentinel | {
158
+ increment: number;
159
+ };
160
+ export interface ClaimRowsOptions {
161
+ /** Table name to claim from. */
162
+ table: string;
163
+ /** WHERE clause; column => scalar (eq) or operator object. */
164
+ where: Record<string, ClaimRowsWhereValue>;
165
+ /** SET clause; column => literal, NowSentinel, or { increment: N }. */
166
+ set: Record<string, ClaimRowsSetValue>;
167
+ /** Columns to return on success. Defaults to ['*']. */
168
+ returning?: string[];
169
+ /** Max rows to claim per call. Defaults to 1. */
170
+ limit?: number;
171
+ /** Order to claim in. Optional. */
172
+ orderBy?: {
173
+ column: string;
174
+ direction: "asc" | "desc";
175
+ };
107
176
  }
108
177
  /**
109
178
  * Standardized error response
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/lib/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/lib/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/lib/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAgBH;;GAEG;AACU,QAAA,UAAU,GAAW;IAChC,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;IACf,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;IACd,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;IACd,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;CAChB,CAAA;AAyHD;;GAEG;AACH,IAAY,SAMX;AAND,WAAY,SAAS;IACnB,uDAA0C,CAAA;IAC1C,iEAAoD,CAAA;IACpD,qDAAwC,CAAA;IACxC,6DAAgD,CAAA;IAChD,+DAAkD,CAAA;AACpD,CAAC,EANW,SAAS,yBAAT,SAAS,QAMpB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/lib/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAgBH;;GAEG;AACU,QAAA,UAAU,GAAW;IAChC,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;IACf,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;IACd,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;IACd,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;CAChB,CAAA;AA0LD;;GAEG;AACH,IAAY,SAMX;AAND,WAAY,SAAS;IACnB,uDAA0C,CAAA;IAC1C,iEAAoD,CAAA;IACpD,qDAAwC,CAAA;IACxC,6DAAgD,CAAA;IAChD,+DAAkD,CAAA;AACpD,CAAC,EANW,SAAS,yBAAT,SAAS,QAMpB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hazo_connect",
3
- "version": "2.6.0",
3
+ "version": "2.7.1",
4
4
  "description": "Module to connect to the data store (postgres via postgrest, supabase, etc)",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",