Add Prisma middleware for automatic soft-delete filtering #10

Closed
opened 2026-02-08 06:44:19 -08:00 by kyle · 1 comment
Owner

Context: where: { deletedAt: null } is manually added to 50+ Prisma queries across all CRUD services. This is error-prone and verbose.

Files affected: All service files (vips, drivers, vehicles, events, users, flights)

Suggested fix:

  • Add Prisma middleware in prisma.service.ts that automatically appends deletedAt: null to all findMany, findFirst, findUnique, count, and aggregate queries
  • Add an escape hatch like { includeDeleted: true } for queries that need to see soft-deleted records
  • This eliminates ~50 manual filter additions

Effort: Medium

**Context:** `where: { deletedAt: null }` is manually added to 50+ Prisma queries across all CRUD services. This is error-prone and verbose. **Files affected:** All service files (vips, drivers, vehicles, events, users, flights) **Suggested fix:** - Add Prisma middleware in `prisma.service.ts` that automatically appends `deletedAt: null` to all `findMany`, `findFirst`, `findUnique`, `count`, and `aggregate` queries - Add an escape hatch like `{ includeDeleted: true }` for queries that need to see soft-deleted records - This eliminates ~50 manual filter additions **Effort:** Medium
Author
Owner

Added Prisma middleware in prisma.service.ts that auto-appends deletedAt: null to all queries on soft-deletable models. Removed manual filters from 50+ queries across all services.

Added Prisma middleware in prisma.service.ts that auto-appends deletedAt: null to all queries on soft-deletable models. Removed manual filters from 50+ queries across all services.
kyle closed this issue 2026-02-08 07:34:35 -08:00
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: kyle/vip-coordinator#10