@rindle/api-server 0.3.1 → 0.4.2

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.
package/dist/index.d.ts CHANGED
@@ -1,5 +1,7 @@
1
- import type { Ast, MutationEnvelope, NamedQuery, Query, Schema } from "@rindle/client";
2
- import type { ClaimRoomEpochInput, ClaimRoomEpochOutput, DematerializeInput, DematerializeOutput, MaterializationPolicy, MaterializeInput, MaterializeOutput, MigrateInput, MigrateOutput, MutationRejection, MutationRejectionOutput, QueryOnceInput, QueryOnceOutput, RindleDaemonClient, RoomLmidsInput, RoomLmidsOutput, RowChangeTxn, RowChangeTxnOutput, SqlRead, SqlReadOutput, SqlStatement, SqlTxn, SqlTxnOutput, StreamMode, WireValue } from "@rindle/daemon-client";
1
+ import type { Ast, ColType, KeyedRow, MutationEnvelope, MutationOp, MutatorCtx, NamedQuery, Query, Schema, SharedMutator, SharedMutatorWithArgs, ServerWriteTx } from "@rindle/client";
2
+ import type { ClaimRoomEpochInput, ClaimRoomEpochOutput, DematerializeInput, DematerializeOutput, MaterializationPolicy, MaterializeInput, MaterializeOutput, MigrateInput, MigrateOutput, MutationRejection, MutationRejectionOutput, MutationSessionBegin, MutationSessionBeginOutput, MutationSessionExec, MutationSessionQuery, MutationSessionRef, QueryOnceInput, QueryOnceOutput, RindleDaemonClient, RoomLmidsInput, RoomLmidsOutput, RowChangeTxn, RowChangeTxnOutput, SqlRead, SqlReadOutput, SqlStatement, SqlTxn, SqlTxnOutput, StreamMode, WireValue } from "@rindle/daemon-client";
3
+ export { isoTx, shared } from "@rindle/client";
4
+ export type { ArgSchema, IsoTx, MutationGen, MutatorCtx, SharedMutator, SharedMutatorWithArgs } from "@rindle/client";
3
5
  export declare const DEFAULT_RINDLE_API_ROUTES: {
4
6
  readonly query: "/api/rindle/query";
5
7
  readonly read: "/api/rindle/read";
@@ -42,12 +44,36 @@ export interface MutationContext<User> {
42
44
  daemon: RindleDaemonClient;
43
45
  request?: unknown;
44
46
  }
47
+ /** The legacy raw-SQL escape hatch (still the surface for relational/authority statements a keyed op
48
+ * can't express — an owner-gated cascade, a `NOT EXISTS` dedup). `exec` accumulates on the daemon
49
+ * backend and executes live on the Postgres backend; `statements` is the collected raw list. */
45
50
  export interface SqlMutationTx {
46
51
  exec(sql: string, params?: WireValue[]): void;
47
52
  readonly statements: readonly SqlStatement[];
48
53
  }
54
+ /** The write handle a server mutator runs against — the ASYNC twin of the client's `MutationTx`. It
55
+ * is both the isomorphic {@link ServerWriteTx} logical surface (insert/update/upsert/insertIgnore/
56
+ * delete/row, rendered to dialect SQL) AND the legacy {@link SqlMutationTx} raw escape hatch. Both
57
+ * backends run reads through the OPEN transaction (read-your-writes): the Postgres backend executes
58
+ * everything live; the daemon backend accumulates writes and lazily upgrades to an interactive
59
+ * mutation session at the first read (DAEMON-INTERACTIVE-TXN-DESIGN.md §5). */
60
+ export interface ServerMutationTx extends ServerWriteTx, SqlMutationTx {
61
+ /** Run a full query (a fluent `Query` or its wire `Ast`) INSIDE the open transaction —
62
+ * read-your-writes, like {@link ServerWriteTx.row} but for arbitrary shapes. Returns the
63
+ * parsed nested result tree: an array for a plural root, an object or `null` for a `.one()`
64
+ * root, with cells in their raw SQLite storage-class representations (the same vocabulary
65
+ * `row` speaks). Daemon backend: compiled by `@rindle/query-compiler`'s sqlite dialect (bind
66
+ * params, NO casts — §5.4) and executed through the mutation session. Postgres backend: lands
67
+ * with the read-compiler catalog integration (POSTGRES-READ-COMPILER-DESIGN.md Phase B). */
68
+ query(q: Ast | Query<any, any, any>): Promise<unknown>;
69
+ }
49
70
  export type ApiMutatorResult = void | SqlStatement[] | SqlTxn;
50
- export type ApiMutator<User, Args> = (tx: SqlMutationTx, args: Args, ctx: MutationContext<User>) => MaybePromise<ApiMutatorResult>;
71
+ /** A server mutator: a plain async function against the live {@link ServerMutationTx}. Two ways to
72
+ * write one (MUTATORS-ISOMORPHIC): drive it directly (the raw escape hatch — an owner-gated cascade,
73
+ * a `NOT EXISTS` dedup — plus a returned `SqlStatement[]`/`SqlTxn`), OR delegate to a SHARED generator
74
+ * (the SAME body the client predicts) via {@link runSharedMutation}, keeping only the server-only
75
+ * authority (arg parse, principal, policy) in the wrapper. */
76
+ export type ApiMutator<User, Args> = (tx: ServerMutationTx, args: Args, ctx: MutationContext<User>) => MaybePromise<ApiMutatorResult>;
51
77
  export type ApiMutators<User> = Record<string, ApiMutator<User, any>>;
52
78
  export interface QueryLeaseRequest<User> {
53
79
  user: User;
@@ -93,31 +119,47 @@ export interface QueryReadResponse {
93
119
  * so the booting client opens its ws to the same warm follower. Absent ⇒ single-daemon. */
94
120
  wsEndpoint?: string;
95
121
  }
96
- /** One mutation's collected effects, handed to a {@link MutationBackend} as ONE atomic unit. */
97
- export interface MutationApplyInput {
122
+ /** The context a {@link MutationBackend} needs to run one mutation inside its transaction. */
123
+ export interface MutationRunInput {
98
124
  envelope: MutationEnvelope;
99
- /** What the mutator emitted, in order. */
100
- statements: readonly SqlStatement[];
101
- /** Present when the mutator returned a full `SqlTxn` carrying one. */
102
- idempotencyKey?: string;
125
+ /** Schema-derived render metadata (from {@link RindleApiServerOptions.schema}). A logical op on a
126
+ * table absent here throws loudly — never a silent dropped write. `{}` when no schema is set. */
127
+ render: RenderIndex;
128
+ /** Invoke the (authorized) mutator against the backend-provided tx. A THROW that is NOT a
129
+ * {@link BackendError} is a BUSINESS rejection (roll the data back, then advance `lmid` alone,
130
+ * §2.4); a {@link BackendError} (a DB-layer failure) is INFRA and rejects the returned promise. */
131
+ run(tx: ServerMutationTx): Promise<void>;
103
132
  }
133
+ /** The result of {@link MutationBackend.runMutation}: either the data+lmid committed together, or a
134
+ * business rejection whose data was rolled back but whose `lmid` still advanced (§2.4). */
135
+ export type MutationOutcome = {
136
+ accepted: true;
137
+ output: SqlTxnOutput;
138
+ } | {
139
+ accepted: false;
140
+ reason: string;
141
+ output?: unknown;
142
+ };
104
143
  /**
105
- * Where a mutation's statements go, and who stamps `lmid` — the seam that makes the mutator
106
- * authoring surface backend-agnostic (`BYO-POSTGRES-LMID-CONTRACT-DESIGN.md` §6). Two impls ship:
107
- * {@link daemonBackend} (today's behaviorthe daemon's co-transactional stamp; the default) and
108
- * {@link postgresBackend} (BYO-Postgres: the same guarantees discharged in one PG transaction,
109
- * confirmation riding the CDC loop back down).
144
+ * Where a mutation runs and who stamps `lmid` — the seam that makes the mutator authoring surface
145
+ * backend-agnostic (`BYO-POSTGRES-LMID-CONTRACT-DESIGN.md` §6; MUTATORS-ISOMORPHIC plan). Two impls
146
+ * ship: {@link daemonBackend} (the defaultwrites accumulate, one batch to the daemon which stamps
147
+ * `lmid` co-transactionally) and {@link postgresBackend} (a REAL interactive PG transaction writes
148
+ * and reads execute live, `lmid` committed in the same txn, confirmation riding the CDC loop down).
110
149
  *
111
- * Both methods advance the client's `last_mutation_id`; that is the load-bearing invariant:
112
- * - `apply` runs the statements AND advances `lmid` to `envelope.mid` in the SAME atomic unit
113
- * (OPTIMISTIC-WRITES-DESIGN.md §8.2) never in a second transaction.
114
- * - `reject` applies NO data but STILL advances `lmid` past `envelope.mid` (§2.4 — the sharp
115
- * edge: without it the client's pending queue never drains and the optimistic stack wedges).
116
- * - A backend/infrastructure failure THROWS from either it is never reported as a user
117
- * rejection (the client retries; mid dedup absorbs any applied prefix).
150
+ * The load-bearing invariant is that a mutation ALWAYS advances the client's `last_mutation_id`:
151
+ * - `runMutation` runs the mutator inside the backend's transaction; on success it advances `lmid`
152
+ * to `envelope.mid` in the SAME atomic unit (OPTIMISTIC-WRITES-DESIGN.md §8.2); on a BUSINESS
153
+ * rejection it rolls the data back but STILL advances `lmid` (§2.4 — else the client's pending
154
+ * queue never drains and the optimistic stack wedges).
155
+ * - `reject` is the pre-flight path (unknown mutator, failed authorization): NO data, `lmid` alone.
156
+ * - An infrastructure failure THROWS from `runMutation` never a user rejection (the client
157
+ * retries; mid dedup absorbs any applied prefix).
118
158
  */
119
159
  export interface MutationBackend {
120
- apply(input: MutationApplyInput): Promise<SqlTxnOutput>;
160
+ /** The SQL dialect this backend renders logical ops to (drives placeholder style). */
161
+ readonly dialect: SqlDialect;
162
+ runMutation(input: MutationRunInput): Promise<MutationOutcome>;
121
163
  reject(input: {
122
164
  envelope: MutationEnvelope;
123
165
  reason: string;
@@ -177,6 +219,11 @@ export interface RindleApiServerOptions<User> {
177
219
  * `daemonBackend(daemon)` — exactly today's behavior. Pass `postgresBackend(...)` when
178
220
  * Postgres is the source of truth (the daemon leg then serves only the read side). */
179
221
  backend?: MutationBackend;
222
+ /** The typed schema (`createSchema`/`refineSchema`). Required only when a mutator uses the LOGICAL
223
+ * write vocabulary (`tx.insert`/`update`/`upsert`/`insertIgnore`/`delete`/`row`) — it drives the
224
+ * dialect SQL renderer (column order, pk, quoting). A logical op with no schema configured throws
225
+ * loudly. Pure raw-`tx.exec` mutators do not need it. */
226
+ schema?: Schema;
180
227
  queries?: ApiQueries<User>;
181
228
  runQuery?: RunQuery<User>;
182
229
  mutators?: ApiMutators<User>;
@@ -289,6 +336,11 @@ export declare class SplitDaemonClient implements RindleDaemonClient {
289
336
  executeSqlTxn(input: SqlTxn): Promise<SqlTxnOutput>;
290
337
  executeSqlRead(input: SqlRead): Promise<SqlReadOutput>;
291
338
  rejectMutation(input: MutationRejection): Promise<MutationRejectionOutput>;
339
+ beginMutationSession(input: MutationSessionBegin): Promise<MutationSessionBeginOutput>;
340
+ execInMutationSession(input: MutationSessionExec): Promise<unknown>;
341
+ queryInMutationSession(input: MutationSessionQuery): Promise<SqlReadOutput>;
342
+ commitMutationSession(input: MutationSessionRef): Promise<SqlTxnOutput>;
343
+ rollbackMutationSession(input: MutationSessionRef): Promise<unknown>;
292
344
  applyRowChangeTxn(input: RowChangeTxn): Promise<RowChangeTxnOutput>;
293
345
  claimRoomEpoch(input: ClaimRoomEpochInput): Promise<ClaimRoomEpochOutput>;
294
346
  roomLmids(input: RoomLmidsInput): Promise<RoomLmidsOutput>;
@@ -297,10 +349,47 @@ export declare class SplitDaemonClient implements RindleDaemonClient {
297
349
  query(input: QueryOnceInput): Promise<QueryOnceOutput>;
298
350
  dematerialize(input: DematerializeInput): Promise<DematerializeOutput>;
299
351
  }
352
+ /** A SQL dialect for the logical mutation renderer. */
353
+ export interface SqlDialect {
354
+ readonly name: "sqlite" | "postgres";
355
+ /** Render the i-th (1-based) bind placeholder. sqlite: `?`; postgres: `$i`. */
356
+ placeholder(oneBased: number): string;
357
+ /** Optional value coercion hook (e.g. a future SQLite `0/1` boolean). Default: identity. */
358
+ encodeValue?(v: WireValue, type: ColType): WireValue;
359
+ }
360
+ export declare const sqliteDialect: SqlDialect;
361
+ export declare const postgresDialect: SqlDialect;
362
+ /** Per-table metadata the renderer needs (all reachable from a `TableMeta`). */
363
+ export interface TableRenderMeta {
364
+ /** Columns in schema (wire) order — the stable INSERT column list + completeness check. */
365
+ columns: string[];
366
+ /** Primary-key column NAMES — the WHERE / ON CONFLICT target / SET partition. */
367
+ pkNames: string[];
368
+ /** Column name → declared type (only consulted by {@link SqlDialect.encodeValue}). */
369
+ types: Record<string, ColType>;
370
+ }
371
+ export type RenderIndex = Record<string, TableRenderMeta>;
372
+ /** Build the {@link RenderIndex} from a typed schema (`schema.tables[name]` is a `TableMeta`). */
373
+ export declare function buildRenderIndex(schema: Schema): RenderIndex;
374
+ /** Render one {@link MutationOp} to a `{sql, params}` for the dialect, or `null` for a no-op (an
375
+ * `update` whose row names only pk columns — nothing to SET, matching the client's no-op edit). */
376
+ export declare function renderOp(op: MutationOp, meta: TableRenderMeta, dialect: SqlDialect): SqlStatement | null;
377
+ /** Render a point read (`tx.row`) — `SELECT <cols> FROM "T" WHERE <pk>` — for read-your-writes. */
378
+ export declare function renderPointRead(table: string, pk: KeyedRow, meta: TableRenderMeta, dialect: SqlDialect): SqlStatement;
379
+ /** Thrown (wrapping the driver error) by a server tx's DB calls, so the seam can tell an INFRA
380
+ * failure (retry) from a mutator-body throw (business rejection). */
381
+ export declare class BackendError extends Error {
382
+ readonly driverError: unknown;
383
+ constructor(driverError: unknown);
384
+ }
300
385
  /**
301
- * Today's behavior as a {@link MutationBackend}: ship the statements + envelope to the daemon,
302
- * whose `/execute-sql-txn` path stamps `lmid` co-transactionally (and `/reject-mutation` advances
303
- * it past a rejected mid). This is the default backend existing users never see a change.
386
+ * The default {@link MutationBackend}. A pure-write mutator keeps the historical shape: writes
387
+ * ACCUMULATE and ship as ONE batch to `/execute-sql-txn`, which stamps `lmid` co-transactionally
388
+ * (and `/reject-mutation` advances it past a rejected mid) — byte-identical behavior. A
389
+ * READ-bearing mutator lazily upgrades to an interactive mutation session
390
+ * (DAEMON-INTERACTIVE-TXN-DESIGN.md): reads are read-your-writes through the open transaction
391
+ * (PG parity), the commit stamps `lmid` in the same atomic unit, and a begin-absorbed replay
392
+ * short-circuits without re-running the body.
304
393
  */
305
394
  export declare function daemonBackend(daemon: RindleDaemonClient): MutationBackend;
306
395
  /** The query surface a {@link PostgresPlugger} transaction exposes. `exec` runs one statement;
@@ -375,6 +464,28 @@ export declare function defineApiQueries<User, Q extends ApiQueries<User>>(queri
375
464
  */
376
465
  export declare function registerQueries<User>(queries: readonly NamedQuery<any, any, any>[]): ApiQueries<User>;
377
466
  export declare function defineApiMutators<User, M extends ApiMutators<User>>(mutators: M): M;
467
+ /**
468
+ * Bulk-register a SHARED (generator) mutator registry as server mutators — the mutator twin of
469
+ * {@link registerQueries} (which does the same for co-located `defineQuery` values). Each shared
470
+ * mutator carries its own arg validator (`shared(schema, gen)`), so this wraps every one with the
471
+ * UNIVERSAL server triad and nothing else: parse the UNTRUSTED wire args (its `.args`), map the server
472
+ * {@link MutationContext} to the shared {@link MutatorCtx} principal, and drive the SAME body the
473
+ * client predicts ({@link runSharedMutation}). The point is that a shared mutator whose server run
474
+ * adds NO authority beyond that triad needs no hand-written wrapper.
475
+ *
476
+ * Server-only AUTHORITY the client cannot predict (a title guard, an owner-gated cascade, a
477
+ * `NOT EXISTS` dedup) stays an explicit {@link ApiMutator} that OVERRIDES the auto-wrapped default —
478
+ * spread this first, then the overrides win by key:
479
+ *
480
+ * ```ts
481
+ * mutators: defineApiMutators({
482
+ * ...sharedApiMutators(sharedMutators, (ctx) => ({ user: requireUser(ctx.user) })),
483
+ * createIssue: withTitleGuard(sharedMutators.createIssue), // + server-only policy
484
+ * deleteIssue: async (tx, raw, ctx) => { ... }, // raw owner-gated cascade
485
+ * }),
486
+ * ```
487
+ */
488
+ export declare function sharedApiMutators<User>(registry: Record<string, SharedMutatorWithArgs<any>>, principal: (ctx: MutationContext<User>) => MutatorCtx): ApiMutators<User>;
378
489
  export declare function queryResultToAst(result: ApiQueryResult): Ast;
379
490
  /** One exemplar invocation for {@link dumpQueryShapes} — the `args`/`user` a query is built with.
380
491
  * Literal values never matter to the dump (shapes are deduped with literals stripped); what an
@@ -414,4 +525,11 @@ export declare function dumpQueryShapes<User>(opts: {
414
525
  exemplars?: Partial<Record<string, ReadonlyArray<ShapeExemplar<User>>>>;
415
526
  }): Promise<QueryShapesDoc>;
416
527
  export declare function createRindleApiServer<User = unknown>(opts: RindleApiServerOptions<User>): RindleApiServer<User>;
528
+ /** Run a SHARED generator mutator (the SAME body the client predicts) against a live server
529
+ * transaction (MUTATORS-ISOMORPHIC): bind the tier-agnostic {@link isoTx} factory and drive it —
530
+ * each yielded logical op renders + runs against `tx` (dialect SQL, per backend), each `tx.row`
531
+ * suspends for read-your-writes, and `tx.all` fans out. A server mutator uses this to delegate its
532
+ * write body after parsing untrusted args and applying its server-only authority (principal, policy).
533
+ * A mutator-body throw remains a business rejection; a DB failure propagates as infra. */
534
+ export declare function runSharedMutation<Args, Ctx extends MutatorCtx>(mutator: SharedMutator<Args, Ctx>, args: Args, ctx: Ctx, tx: ServerMutationTx): Promise<void>;
417
535
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}