@opensaas/stack-core 0.42.2 → 0.43.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.
@@ -1,4 +1,4 @@
1
1
 
2
- > @opensaas/stack-core@0.42.2 build /home/runner/work/stack/stack/packages/core
2
+ > @opensaas/stack-core@0.43.0 build /home/runner/work/stack/stack/packages/core
3
3
  > tsc
4
4
 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,38 @@
1
1
  # @opensaas/stack-core
2
2
 
3
+ ## 0.43.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#1385](https://github.com/OpenSaasAU/stack/pull/1385) [`1da6535`](https://github.com/OpenSaasAU/stack/commit/1da6535a840596a7ef4ec3f7ba742da62ef117df) Thanks [@borisno2](https://github.com/borisno2)! - Close an access-control gap in nested relationship writes ([#1384](https://github.com/OpenSaasAU/stack/issues/1384)). Non-sudo `context.db` writes carrying a nested `set`, `updateMany` or `deleteMany` under a relationship key previously reached Prisma as an unchecked pass-through — the target list's `operation.update`/`operation.delete` access was never consulted, no hooks ran, and an unscoped `where` could reach rows well outside the parent's own subtree. These three kinds are now refused outright for non-sudo contexts, throwing a new `NestedRelationInputError` (exported from `@opensaas/stack-core`) that names the list, the relationship field, and the offending kind(s):
8
+
9
+ ```typescript
10
+ import { NestedRelationInputError } from '@opensaas/stack-core'
11
+
12
+ try {
13
+ await context.db.post.update({
14
+ where: { id },
15
+ data: { tags: { deleteMany: {} } },
16
+ })
17
+ } catch (err) {
18
+ if (err instanceof NestedRelationInputError) {
19
+ // err.listKey / err.fieldKey / err.kinds
20
+ }
21
+ }
22
+ ```
23
+
24
+ Replace a nested `set`/`updateMany`/`deleteMany` with writes against the target list directly (`context.db.<targetList>`), wrapped in `context.transaction()` when they must land atomically with the parent write. `context.sudo()` still accepts all three kinds unchanged, matching every other access-control escape hatch in the write pipeline.
25
+
26
+ Nested `disconnect`'s target-row form (`{ disconnect: { id } }`, as opposed to the to-one `{ disconnect: true }`) is now gated by the target list's `operation.query` access, the same reachability check `connect` already applies — a caller can no longer disconnect a row it cannot read. This closes the last unchecked nested-write shape from the same report.
27
+
28
+ ## 0.42.3
29
+
30
+ ### Patch Changes
31
+
32
+ - [#1337](https://github.com/OpenSaasAU/stack/pull/1337) [`1a616c1`](https://github.com/OpenSaasAU/stack/commit/1a616c1e2ff31de1afe970a5fcfcc25ea7cbedb0) Thanks [@borisno2](https://github.com/borisno2)! - Core's `AugmentedFindUnique`/`AugmentedFindFirst`/`AugmentedFindMany` now carry the same trailing non-generic overload the generator's `CustomDB` already emits ([#1287](https://github.com/OpenSaasAU/stack/issues/1287)), and `getContext` takes a third, unconstrained, defaulted `TDb` type parameter so a caller can ask for `StackContext<TPrisma, CustomDB>` directly. The generated `.opensaas/context.ts` factory uses this to drop its `as unknown as Context<TSession>` casts down to a single, honest `as Context<TSession>`.
33
+
34
+ Observable side effect: since `Parameters<>`/`ReturnType<>` resolve against an overloaded type's LAST member, `Parameters<AccessControlledDB<P>[K]['findMany' | 'findFirst' | 'findUnique']>[0]` now resolves to the new trailing member's argument type (Prisma's args shape minus `select`/`include`/`query`) instead of the full original Prisma args — anyone introspecting these types directly via `Parameters<>` will see this narrower shape.
35
+
3
36
  ## 0.42.2
4
37
 
5
38
  ## 0.42.1
@@ -87,6 +87,7 @@ export interface AugmentedFindMany<TOriginal extends (...args: any[]) => any> {
87
87
  query: Fragment<TItem, TFields>;
88
88
  }): Promise<ResultOf<Fragment<TItem, TFields>>[]>;
89
89
  (...args: Parameters<TOriginal>): ReturnType<TOriginal>;
90
+ (args?: Omit<Parameters<TOriginal>[0], 'select' | 'include' | 'query'>): ReturnType<TOriginal>;
90
91
  }
91
92
  /**
92
93
  * Extra query arguments accepted when a `query` Fragment is provided alongside
@@ -124,6 +125,7 @@ export interface AugmentedFindFirst<TOriginal extends (...args: any[]) => any> {
124
125
  query: Fragment<TItem, TFields>;
125
126
  }): Promise<ResultOf<Fragment<TItem, TFields>> | null>;
126
127
  (...args: Parameters<TOriginal>): ReturnType<TOriginal>;
128
+ (args?: Omit<Parameters<TOriginal>[0], 'select' | 'include' | 'query'>): ReturnType<TOriginal>;
127
129
  }
128
130
  /**
129
131
  * Overloaded `findUnique` that accepts an optional `query` Fragment.
@@ -148,6 +150,7 @@ export interface AugmentedFindUnique<TOriginal extends (...args: any[]) => any>
148
150
  query: Fragment<TItem, TFields>;
149
151
  }): Promise<ResultOf<Fragment<TItem, TFields>> | null>;
150
152
  (...args: Parameters<TOriginal>): ReturnType<TOriginal>;
153
+ (args: Pick<Parameters<TOriginal>[0], 'where'>): ReturnType<TOriginal>;
151
154
  }
152
155
  export type AccessControlledDB<TPrisma extends PrismaClientLike> = {
153
156
  [K in keyof TPrisma]: TPrisma[K] extends {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/access/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/access/types.ts"],"names":[],"mappings":"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"}
@@ -138,10 +138,10 @@ export interface StackContext<TPrisma extends PrismaClientLike = PrismaClientLik
138
138
  /** @internal See `_transactionOwner` on `AccessContext`. */
139
139
  _transactionOwner?: TransactionRegistry;
140
140
  }
141
- export declare function getContext<TConfig extends OpenSaasConfig, TPrisma extends PrismaClientLike = PrismaClientLike>(config: TConfig, prisma: TPrisma, session: Session | null, storage?: StorageUtils, _isSudo?: boolean, _sharedPlugins?: Record<string, unknown>, _transactionOwner?: TransactionRegistry, _resolveOutputChain?: readonly {
141
+ export declare function getContext<TConfig extends OpenSaasConfig, TPrisma extends PrismaClientLike = PrismaClientLike, TDb = AccessControlledDB<TPrisma>>(config: TConfig, prisma: TPrisma, session: Session | null, storage?: StorageUtils, _isSudo?: boolean, _sharedPlugins?: Record<string, unknown>, _transactionOwner?: TransactionRegistry, _resolveOutputChain?: readonly {
142
142
  listKey: string;
143
143
  fieldKey: string;
144
- }[]): StackContext<TPrisma>;
144
+ }[]): StackContext<TPrisma, TDb>;
145
145
  /**
146
146
  * Populate `target` with the access-controlled CRUD operations for every list,
147
147
  * each bound to `prisma` and `context`. Used both by {@link getContext} (at
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/context/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/context/index.ts"],"names":[],"mappings":"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"}
@@ -559,6 +559,13 @@ _resolveOutputChain) {
559
559
  return settleTransactionOwner(settled, registry);
560
560
  }
561
561
  const returned = {
562
+ // The one place that legitimately knows `db` is shaped as the caller's
563
+ // `TDb` says: `populateDbDelegate` above always builds the plain
564
+ // `AccessControlledDB<TPrisma>` runtime shape, and a caller asking for a
565
+ // richer description (e.g. the generated `CustomDB`) is asserting that
566
+ // description is compatible with what actually comes back at runtime.
567
+ // This is the single internal cast `TDb` exists to replace every
568
+ // consumer-side `as unknown as` with (#1328).
562
569
  db: db,
563
570
  session,
564
571
  prisma,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/context/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/context/index.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,33 @@ import type { StackContext } from './index.js';
8
8
  * {@link AfterTask}s that {@link runAfterTasks} runs once the parent has
9
9
  * persisted. See ADR-0010 for the full mechanism.
10
10
  */
11
+ /**
12
+ * Thrown when a non-sudo write's payload carries a nested `set`, `updateMany`
13
+ * or `deleteMany` under a relationship key (#1384). These three kinds were
14
+ * historically a pass-through straight to Prisma: the target list's
15
+ * `operation.update`/`operation.delete` access was never consulted, no hooks
16
+ * ran, and an unscoped `updateMany`/`deleteMany` `where` reached rows well
17
+ * outside the parent's own subtree. ADR-0050 removes nested relation input
18
+ * from the secured write surface entirely on the `prisma-8` line, so building
19
+ * per-kind access machinery for these three kinds on `main` would be work
20
+ * that major deletes wholesale — this refuses them instead, an interim
21
+ * fail-closed fix mirroring ADR-0050's own refusal shape.
22
+ *
23
+ * The refusal fires before any part of the write executes, so a payload
24
+ * mixing a refused kind with a permitted one persists nothing. `sudo()`
25
+ * still accepts all three kinds unchanged — the same escape hatch every
26
+ * other access-control refusal in this module leans on.
27
+ *
28
+ * Replacement: author the writes against the target list directly, via
29
+ * `context.db.<targetList>`, wrapped in `context.transaction` when they must
30
+ * land atomically with this write.
31
+ */
32
+ export declare class NestedRelationInputError extends Error {
33
+ listKey: string;
34
+ fieldKey: string;
35
+ kinds: readonly string[];
36
+ constructor(listKey: string, fieldKey: string, kinds: readonly string[]);
37
+ }
11
38
  /** A deferred nested `afterOperation` task, run once the parent has persisted. */
12
39
  export interface AfterTask {
13
40
  /** Field name on the parent linking to the related list (for include lookup). */
@@ -1 +1 @@
1
- {"version":3,"file":"nested-operations.d.ts","sourceRoot":"","sources":["../../src/context/nested-operations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAc,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAEjF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AA0B9C;;;;;;;GAOG;AAEH,kFAAkF;AAClF,MAAM,WAAW,SAAS;IACxB,iFAAiF;IACjF,SAAS,EAAE,MAAM,CAAA;IACjB,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1D;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,uEAAuE;IACvE,UAAU,EAAE,SAAS,EAAE,CAAA;IACvB,wEAAwE;IACxE,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAC3B;AA4nCD;;;;;;;GAOG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,EACzC,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,YAAY,GAAG;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,EAC3C,SAAS,EAAE,QAAQ,GAAG,QAAQ,EAC9B,cAAc,EAAE,MAAM,EACtB,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAGvD,eAAe,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAqB,GAC/D,OAAO,CAAC,eAAe,CAAC,CAuF1B;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CACjC,UAAU,EAAE,SAAS,EAAE,EACvB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACpC,OAAO,CAAC,IAAI,CAAC,CAIf"}
1
+ {"version":3,"file":"nested-operations.d.ts","sourceRoot":"","sources":["../../src/context/nested-operations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAc,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAEjF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AA0B9C;;;;;;;GAOG;AAEH;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,wBAAyB,SAAQ,KAAK;IAC1C,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,SAAS,MAAM,EAAE,CAAA;IAE/B,YAAY,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,MAAM,EAAE,EActE;CACF;AAKD,kFAAkF;AAClF,MAAM,WAAW,SAAS;IACxB,iFAAiF;IACjF,SAAS,EAAE,MAAM,CAAA;IACjB,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1D;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,uEAAuE;IACvE,UAAU,EAAE,SAAS,EAAE,CAAA;IACvB,wEAAwE;IACxE,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAC3B;AA+tCD;;;;;;;GAOG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,EACzC,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,YAAY,GAAG;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,EAC3C,SAAS,EAAE,QAAQ,GAAG,QAAQ,EAC9B,cAAc,EAAE,MAAM,EACtB,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAGvD,eAAe,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAqB,GAC/D,OAAO,CAAC,eAAe,CAAC,CAuF1B;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CACjC,UAAU,EAAE,SAAS,EAAE,EACvB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACpC,OAAO,CAAC,IAAI,CAAC,CAIf"}
@@ -3,6 +3,55 @@ import { checkFieldAccess } from '../access/field-access.js';
3
3
  import { executeResolveInput, executeValidate, executeFieldResolveInputHooks, executeBeforeOperation, executeAfterOperation, executeFieldBeforeOperationHooks, executeFieldAfterOperationHooks, executeFieldValidateHooks, validateFieldRules, splitMultiColumnFields, ValidationError, } from '../hooks/index.js';
4
4
  import { getDbKey } from '../lib/case-utils.js';
5
5
  import { applyCreateDefaults } from './apply-defaults.js';
6
+ /**
7
+ * Nested writes (#569 / ADR-0010): give nested `create`/`update`/`delete` the
8
+ * same before/afterOperation hooks as an equivalent top-level write, inside
9
+ * the one transaction the Write Pipeline opens. `processNestedOperations`
10
+ * transforms the payload and runs `beforeOperation`, returning deferred
11
+ * {@link AfterTask}s that {@link runAfterTasks} runs once the parent has
12
+ * persisted. See ADR-0010 for the full mechanism.
13
+ */
14
+ /**
15
+ * Thrown when a non-sudo write's payload carries a nested `set`, `updateMany`
16
+ * or `deleteMany` under a relationship key (#1384). These three kinds were
17
+ * historically a pass-through straight to Prisma: the target list's
18
+ * `operation.update`/`operation.delete` access was never consulted, no hooks
19
+ * ran, and an unscoped `updateMany`/`deleteMany` `where` reached rows well
20
+ * outside the parent's own subtree. ADR-0050 removes nested relation input
21
+ * from the secured write surface entirely on the `prisma-8` line, so building
22
+ * per-kind access machinery for these three kinds on `main` would be work
23
+ * that major deletes wholesale — this refuses them instead, an interim
24
+ * fail-closed fix mirroring ADR-0050's own refusal shape.
25
+ *
26
+ * The refusal fires before any part of the write executes, so a payload
27
+ * mixing a refused kind with a permitted one persists nothing. `sudo()`
28
+ * still accepts all three kinds unchanged — the same escape hatch every
29
+ * other access-control refusal in this module leans on.
30
+ *
31
+ * Replacement: author the writes against the target list directly, via
32
+ * `context.db.<targetList>`, wrapped in `context.transaction` when they must
33
+ * land atomically with this write.
34
+ */
35
+ export class NestedRelationInputError extends Error {
36
+ listKey;
37
+ fieldKey;
38
+ kinds;
39
+ constructor(listKey, fieldKey, kinds) {
40
+ const kindList = kinds.map((kind) => `"${kind}"`).join(', ');
41
+ super(`Cannot write "${listKey}.${fieldKey}" — this payload carries a nested ${kindList} ` +
42
+ `operation, which non-sudo contexts no longer accept (#1384): the target list's access ` +
43
+ `rules were never consulted for these kinds. Author the writes against the target list ` +
44
+ `directly (\`context.db.<targetList>\`), wrapped in \`context.transaction\` when they must ` +
45
+ `land atomically with this write, or use \`context.sudo()\` if this write is trusted to ` +
46
+ `bypass the target list's access entirely.`);
47
+ this.name = 'NestedRelationInputError';
48
+ this.listKey = listKey;
49
+ this.fieldKey = fieldKey;
50
+ this.kinds = kinds;
51
+ }
52
+ }
53
+ /** Nested-op kinds refused outright for non-sudo contexts. See {@link NestedRelationInputError}. */
54
+ const REFUSED_KINDS = ['set', 'updateMany', 'deleteMany'];
6
55
  function isRelationshipField(fieldConfig) {
7
56
  return fieldConfig?.type === 'relationship';
8
57
  }
@@ -197,29 +246,42 @@ relatedListConfig, context, config, prisma, afterTasks, recovery) {
197
246
  return Array.isArray(items) ? processedItems : processedItems[0];
198
247
  }
199
248
  /**
200
- * Verify that a single connection target is reachable for the caller.
249
+ * Verify that a single connection (or, for `disconnect`, disconnection)
250
+ * target is reachable for the caller.
251
+ *
252
+ * Both directions reference an existing row rather than modifying it, so —
253
+ * mirroring Keystone — they require **read/query** access on the target
254
+ * (#578/#1384), not update. A filter-result query access is evaluated in the
255
+ * DATABASE via `findFirst({ where: { AND: [connection, accessFilter] } })`
256
+ * rather than in memory, so it correctly handles arbitrary nested-relation
257
+ * predicates and boolean combinators; a non-existent id is folded into the
258
+ * same check.
201
259
  *
202
- * Connecting references an existing row rather than modifying it, so mirroring
203
- * Keystone it requires **read/query** access on the target (#578), not update.
204
- * A filter-result query access is evaluated in the DATABASE via
205
- * `findFirst({ where: { AND: [connection, accessFilter] } })` rather than in
206
- * memory, so it correctly handles arbitrary nested-relation predicates and
207
- * boolean combinators; a non-existent id is folded into the same check.
260
+ * For `connect` (the default, `action: 'connect'`), the OWNING relationship
261
+ * field's field-level access (e.g. `Post.author`'s `create`/`update` access)
262
+ * must ADDITIONALLY permit the connect (#588) the other half Keystone
263
+ * requires: read access on the target AND write access on the owning field. A
264
+ * deny here denies the connect even when the target row is readable/reachable.
208
265
  *
209
- * In ADDITION, the OWNING relationship field's field-level access (e.g.
210
- * `Post.author`'s `create`/`update` access) must permit the connect (#588)
211
- * the other half Keystone requires: read access on the target AND write access
212
- * on the owning field. A deny here denies the connect even when the target row
213
- * is readable/reachable.
266
+ * For `disconnect` (`action: 'disconnect'`), the caller passes
267
+ * `owningFieldAccess: undefined`, which makes this second gate a no-op
268
+ * (`checkFieldAccess` defaults an absent rule to allow) deliberately: the
269
+ * owning field's write access is already enforced by Phase 5's
270
+ * `filterWritableFields` before nested-op processing ever sees this payload,
271
+ * so re-running it here would only duplicate that gate, not add one. See
272
+ * {@link processNestedDisconnect}.
214
273
  *
215
274
  * Sudo bypasses the entire check (handled by the caller).
216
275
  */
217
276
  async function verifyConnectReachable(connection, relatedListName,
218
277
  // eslint-disable-next-line @typescript-eslint/no-explicit-any -- ListConfig must accept any TypeInfo
219
- relatedListConfig, context, prisma, owningFieldAccess, enclosingOperation, enclosingItem, enclosingInputData) {
278
+ relatedListConfig, context, prisma, owningFieldAccess, enclosingOperation, enclosingItem, enclosingInputData, action = 'connect') {
220
279
  // Access Prisma model dynamically - required because model names are generated at runtime
221
280
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
222
281
  const model = prisma[getDbKey(relatedListName)];
282
+ const deniedMessage = action === 'connect'
283
+ ? 'Access denied: Cannot connect to this item'
284
+ : 'Access denied: Cannot disconnect from this item';
223
285
  // #588 owning-field gate (see docblock above). `item`/`inputData` are the
224
286
  // ENCLOSING write's `originalItem`/`inputData` — the same values the canonical
225
287
  // Phase-5 `filterWritableFields` call passes for this field — so an
@@ -231,7 +293,7 @@ relatedListConfig, context, prisma, owningFieldAccess, enclosingOperation, enclo
231
293
  context,
232
294
  });
233
295
  if (!owningFieldAllowed) {
234
- throw new Error('Access denied: Cannot connect to this item');
296
+ throw new Error(deniedMessage);
235
297
  }
236
298
  const queryAccess = relatedListConfig.access?.operation?.query;
237
299
  const accessResult = await checkAccess(queryAccess, {
@@ -239,13 +301,13 @@ relatedListConfig, context, prisma, owningFieldAccess, enclosingOperation, enclo
239
301
  context,
240
302
  });
241
303
  if (accessResult === false) {
242
- throw new Error('Access denied: Cannot connect to this item');
304
+ throw new Error(deniedMessage);
243
305
  }
244
306
  // Full access still verifies the row exists, to keep "Item not found" behaviour.
245
307
  if (accessResult === true) {
246
308
  const item = await model.findUnique({ where: connection });
247
309
  if (!item) {
248
- throw new Error(`Cannot connect: Item not found`);
310
+ throw new Error(`Cannot ${action}: Item not found`);
249
311
  }
250
312
  return;
251
313
  }
@@ -255,7 +317,7 @@ relatedListConfig, context, prisma, owningFieldAccess, enclosingOperation, enclo
255
317
  where: { AND: [connection, accessResult] },
256
318
  });
257
319
  if (!reachable) {
258
- throw new Error('Access denied: Cannot connect to this item');
320
+ throw new Error(deniedMessage);
259
321
  }
260
322
  }
261
323
  /**
@@ -274,6 +336,35 @@ relatedListConfig, context, prisma, owningFieldAccess, enclosingOperation, enclo
274
336
  }
275
337
  return connections;
276
338
  }
339
+ /**
340
+ * Process a nested `disconnect` (#1384).
341
+ *
342
+ * `{ disconnect: true }` — the to-one boolean form — nulls the foreign key on
343
+ * the row already being updated; that row's own update access has already
344
+ * been checked (by the enclosing write), so it is left permitted, unchanged,
345
+ * with no target-list check. This is the form the admin UI's `removeRelated`
346
+ * action emits for a to-one back-reference (ADR-0018).
347
+ *
348
+ * `{ disconnect: { <criteria> } }` — or an array of criteria, for a to-many —
349
+ * names a target row on the OTHER list. This requires that target's
350
+ * `operation.query` access, Keystone's semantic, reusing `verifyConnectReachable`
351
+ * (see its docblock for why the owning-field gate is skipped here) rather than
352
+ * a second reachability check.
353
+ */
354
+ async function processNestedDisconnect(value, relatedListName,
355
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any -- ListConfig must accept any TypeInfo
356
+ relatedListConfig, context, prisma, enclosingOperation) {
357
+ if (value === true || context._isSudo) {
358
+ return value;
359
+ }
360
+ const criteriaArray = Array.isArray(value)
361
+ ? value
362
+ : [value];
363
+ for (const criteria of criteriaArray) {
364
+ await verifyConnectReachable(criteria, relatedListName, relatedListConfig, context, prisma, undefined, enclosingOperation, undefined, undefined, 'disconnect');
365
+ }
366
+ return value;
367
+ }
277
368
  /**
278
369
  * Re-check a nested update/delete access result against the target row,
279
370
  * mirroring the Write Pipeline's `resolveExistingTarget` (#1081): `false`
@@ -549,10 +640,19 @@ const CREATING_KINDS = new Set(['create', 'connectOrCreate']);
549
640
  *
550
641
  * Kinds that run the full hook pipeline (`create`, `update`, `delete`, and the
551
642
  * create branch of `connectOrCreate`) run `beforeOperation` inline and register
552
- * deferred `afterOperation` tasks. `connect`/`connectOrCreate`'s connect branch
553
- * enforce access only. Remaining pass-through kinds (`disconnect`, `set`,
554
- * `updateMany`, `deleteMany`) return their value unchanged so Prisma's own
555
- * constraints apply — they are intentionally NOT in scope for #569.
643
+ * deferred `afterOperation` tasks. `connect`/`connectOrCreate`'s connect branch,
644
+ * and `disconnect`'s target-row form, enforce access only no hooks (#1384;
645
+ * this settles the `disconnect` half of #569's original scope note, which is
646
+ * now closed).
647
+ *
648
+ * `set`, `updateMany` and `deleteMany` are refused outright for non-sudo
649
+ * contexts before dispatch even reaches this registry (see `REFUSED_KINDS` /
650
+ * {@link NestedRelationInputError} near the top of this file) rather than
651
+ * given their own access machinery — ADR-0050 removes nested relation input
652
+ * from the secured write surface entirely on the `prisma-8` line, so that
653
+ * machinery would be built into a module the next major deletes wholesale.
654
+ * Their entries below therefore only ever run under `sudo()`, where they
655
+ * remain an unchecked, hook-free pass-through to Prisma, unchanged.
556
656
  */
557
657
  const nestedOpRegistry = {
558
658
  create: {
@@ -576,9 +676,14 @@ const nestedOpRegistry = {
576
676
  needsInclude: false,
577
677
  execute: ({ value, relatedListName, relatedListConfig, context, prisma, afterTasks }) => processNestedDelete(value, relatedListName, relatedListConfig, context, prisma, afterTasks),
578
678
  },
579
- // Pass-through kinds: no hooks/access control, left to Prisma's own constraints.
580
- // (Out of scope for #569 see the issue's "Out of scope" notes.)
581
- disconnect: { needsInclude: false, execute: ({ value }) => Promise.resolve(value) },
679
+ // Gated pass-through: no hooks, but the target-row form requires the target
680
+ // list's operation.query access (#1384). See processNestedDisconnect.
681
+ disconnect: {
682
+ needsInclude: false,
683
+ execute: ({ value, relatedListName, relatedListConfig, context, prisma, enclosingOperation }) => processNestedDisconnect(value, relatedListName, relatedListConfig, context, prisma, enclosingOperation),
684
+ },
685
+ // Refused for non-sudo before dispatch reaches here (see REFUSED_KINDS) —
686
+ // these entries only ever run under sudo, as an unchecked pass-through.
582
687
  deleteMany: { needsInclude: false, execute: ({ value }) => Promise.resolve(value) },
583
688
  set: { needsInclude: false, execute: ({ value }) => Promise.resolve(value) },
584
689
  updateMany: { needsInclude: false, execute: ({ value }) => Promise.resolve(value) },
@@ -603,6 +708,17 @@ const nestedOpOrder = [
603
708
  * the {@link nestedOpRegistry}.
604
709
  */
605
710
  async function processFieldNestedOps(fieldName, valueRecord, args, includeFields, parentListName, parentOriginalItem) {
711
+ // Refuse a non-sudo payload carrying a refused kind BEFORE any part of the
712
+ // write executes — including before another kind on this same field
713
+ // dispatches (see NestedRelationInputError's docblock). Collects every
714
+ // refused kind present so a payload mixing e.g. `set` and `updateMany`
715
+ // reports both in one error, not just the first found.
716
+ if (!args.context._isSudo) {
717
+ const refusedKinds = REFUSED_KINDS.filter((kind) => valueRecord[kind] !== undefined);
718
+ if (refusedKinds.length > 0) {
719
+ throw new NestedRelationInputError(parentListName, fieldName, refusedKinds);
720
+ }
721
+ }
606
722
  const nestedOp = {};
607
723
  // Created-row recovery is only needed when this field has a creating kind
608
724
  // (`create`/`connectOrCreate`). When present it requires a pre-persist read of