Add cancel RSVP feature (backend DELETE endpoint + frontend UI)
All checks were successful
CI / backend-test (push) Successful in 59s
CI / frontend-test (push) Successful in 24s
CI / frontend-e2e (push) Successful in 1m18s
CI / build-and-publish (push) Has been skipped

Allows guests to cancel their RSVP via a DELETE endpoint using their
guestToken. Frontend shows cancel button in RsvpBar and clears local
storage on success. Includes unit tests, integration tests, and E2E spec.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-12 17:45:37 +01:00
parent a1855ff8d6
commit 41bb17d5c9
23 changed files with 1371 additions and 12 deletions

View File

@@ -0,0 +1,40 @@
# Cancel RSVP — API Contract
# This contract will be merged into backend/src/main/resources/openapi/api.yaml
# Path: /events/{token}/rsvps/{rsvpToken}
# Method: DELETE
path:
/events/{token}/rsvps/{rsvpToken}:
delete:
summary: Cancel RSVP
description: |
Permanently deletes an RSVP identified by the RSVP token.
Idempotent: returns 204 whether the RSVP existed or not.
operationId: cancelRsvp
tags:
- Events
parameters:
- name: token
in: path
required: true
description: Event token (UUID)
schema:
type: string
format: uuid
example: "550e8400-e29b-41d4-a716-446655440000"
- name: rsvpToken
in: path
required: true
description: RSVP token (UUID) identifying the attendance to cancel
schema:
type: string
format: uuid
example: "7c9e6679-7425-40de-944b-e07fc1f90ae7"
responses:
"204":
description: >
RSVP successfully cancelled (or was already cancelled).
No response body.
"500":
description: Internal server error