Problem
The engine currently exposes no dedicated bulk mutations. As a result, the admin UI must execute N individual mutation calls for common batch operations such as:
- publishing/unpublishing products
- tagging entities
- assigning products to assortments
- advancing order workflows
- deleting products
This creates:
- unnecessary network overhead
- slower/Bad UX
- more frontend orchestration complexity
- difficult partial failure handling
Proposed Bulk Mutations
bulkSetProductStatus(productIds, status)
bulkUpdateProductTags(productIds, add, remove)
bulkAssignProductsToAssortment(productIds, assortmentId)
bulkRemoveProducts(productIds)
bulkUpdateUserTags(userIds, add, remove)
bulkUpdateOrderStatus(orderIds, transition)
bulkRegenerateFilters(filterIds)
Benefits
- Enables modern multi-select admin workflows
- Reduces N requests → 1 request
- Simplifies frontend logic
- Improves performance and UX
- Centralizes validation and error handling
Suggested Response Type
type BulkOperationResult {
successCount: Int!
failedCount: Int!
failedIds: [ID!]!
}
Notes
This proposal intentionally focuses on a small set of explicit, high-value bulk mutations instead of introducing a generic bulk execution framework.
Implementation complexity should remain relatively low since the underlying single-entity mutations already exist.
Problem
The engine currently exposes no dedicated bulk mutations. As a result, the admin UI must execute N individual mutation calls for common batch operations such as:
This creates:
Proposed Bulk Mutations
Benefits
Suggested Response Type
Notes
This proposal intentionally focuses on a small set of explicit, high-value bulk mutations instead of introducing a generic bulk execution framework.
Implementation complexity should remain relatively low since the underlying single-entity mutations already exist.