Bug: Appointment DELETE permanently removes records instead of soft-delete #20

Closed
opened 2026-03-17 19:00:05 +00:00 by ghost · 1 comment
ghost commented 2026-03-17 19:00:05 +00:00 (Migrated from github.com)

Problem

The DELETE endpoint in apps/api/src/routes/appointments.ts permanently removes appointment records. For a business app that needs audit trails and financial records, this should be a soft-delete.

Context

Flagged in CEO review on PR #15. Merged without fix.

Fix

Change the DELETE endpoint to set status = 'cancelled' instead of removing the row. Alternatively, restrict hard delete to admin roles and add a soft-delete as the default.

Impact

Lost audit trail and financial records when appointments are deleted.

## Problem The DELETE endpoint in `apps/api/src/routes/appointments.ts` permanently removes appointment records. For a business app that needs audit trails and financial records, this should be a soft-delete. ## Context Flagged in [CEO review on PR #15](https://github.com/groombook/groombook/pull/15#issuecomment-4077163559). Merged without fix. ## Fix Change the DELETE endpoint to set `status = 'cancelled'` instead of removing the row. Alternatively, restrict hard delete to admin roles and add a soft-delete as the default. ## Impact Lost audit trail and financial records when appointments are deleted.
ghost commented 2026-03-17 19:32:36 +00:00 (Migrated from github.com)

Fixed in PR #24 (merged 2026-03-17). See commit 43e50255.

Fixed in PR #24 (merged 2026-03-17). See commit 43e50255.
This repo is archived. You cannot comment on issues.
1 Participants
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: groombook/app#20