Delete a Ride

The ride creator soft-deletes a ride. All deletions set the ride to deleted status and hide it immediately; the document is cleaned up by the midnight archival process. Deleted rides can be recovered before that cleanup — see Undelete a Ride.

Who Can Do This

  • Creator — can delete any ride they own, subject to the rules below.

Steps

  1. Open the ride.
  2. Select the delete option.
  3. Type DELETE in the confirmation prompt to confirm.
  4. Confirm the deletion.

Rules

  • Only the ride creator can delete a ride.
  • The DELETE confirmation is required to prevent accidental deletions.
  • All deletions are soft-deletes: the ride status is set to deleted and the ride document and sub-documents remain in Firestore until the archival process runs at midnight and moves them to Cloud Storage.
  • The ride is immediately hidden from all participants and discovery surfaces on deletion.
  • Draft rides — can be deleted at any time before publishing.
  • Upcoming rides — can be deleted at any time. All RSVP'd participants are notified immediately.
  • On-going rides — can be deleted, but only by a subscriber creator. A free-user creator (one who inherited the ride via transfer) cannot delete an on-going ride. Participants are notified immediately on deletion.
  • There is no permanent delete. The ride is always recoverable until midnight archival runs.

What Happens Next

The ride is immediately hidden from all users. The creator can still see it in Ride History. All RSVP'd participants are notified (for published rides). The ride can be recovered via Undelete a Ride until the midnight archival process runs.

Failure Cases

  • Not the creator: admins and group owners cannot delete a ride — only the creator can.
  • On-going ride, free-user creator: deletion of an on-going ride is blocked if the creator is a free user (quota-exhausted, inherited the ride via transfer). The delete option is unavailable until the ride completes.
  • Confirmation text mismatch: the ride is not deleted if the user does not type DELETE exactly.

Status: partially-live. Backend API is complete. Frontend delete UI is not yet built.