Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 9 additions & 3 deletions packages/spec/src/data/api-methods-batch-conformance.test.ts
Original file line numberDiff line numberDiff line change
Expand Up@@ -45,9 +45,15 @@ const WRITE_PRIMITIVES = ['create', 'update', 'delete'] as const;
* keyed by object name with the reason. Every other tightened whitelist in the
* monorepo either grants `bulk` or grants no write verb at all.
*
* Adding an entry is a real decision — batch denial is invisible until a user
* multi-selects rows and `data-objectstack` rethrows the 405 without falling
* back to per-row writes. Write down why the object is worth that.
* Adding an entry is a real decision — but price it correctly per #3757's
* two corrections (that issue's premise was retracted by its own author and
* closed not planned). `data-objectstack` does rethrow the 405, but its only
* caller, `useBulkExecutor` → `executeBulkBatch`, falls back to per-row
* writes on ANY throw; and the grid's built-in bulk-delete entry gates on the
* child verb `delete`, not on `bulk` (gating it on `bulk` would be a
* regression). So an exemption costs a wasted round trip plus N per-row
* writes, not a hard user-visible error. Write down why the object is worth
* that.
*/
const SINGLE_RECORD_WRITE_ONLY: Record<string, string> = {
// #7802. `update` arrived in #7727/#7769 for exactly one gesture on exactly
Expand Down
Loading