Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Order Deletion request is idempotent #237

Open
nickevansuk opened this issue Apr 6, 2023 · 1 comment
Open

Order Deletion request is idempotent #237

nickevansuk opened this issue Apr 6, 2023 · 1 comment
Labels
CR3 Issues relating to CR3

Comments

@nickevansuk
Copy link
Contributor

nickevansuk commented Apr 6, 2023

Three lines in the spec appear to conflict:

  1. "All Booking System endpoints defined in this specification must be idempotent."

  2. "GoneError": "An Order has been soft-deleted by an Order Deletion request."

The Test Suite implements (1), which is consistent with the overall design of the specification.

The second line should therefore be updated for clarity:

  1. "GoneError": "An Order has been soft-deleted by an Order Deletion request (not applicable to Order Deletion requests, which are idempotent)."
@nickevansuk
Copy link
Contributor Author

nickevansuk commented Apr 13, 2023

Additionally the following should be clarified within 9.2.7 Order Deletion:

When an Order is deleted the Booking System should hard delete it as though it had not been created in the first place (, with only a stub deleted record remaining. , for the Orders feed, if necessary), but may soft delete it providing All related personal data must be purged. The audit for the deletion is guaranteed to be stored in the Broker in all cases.

The Booking System must return an OrderAlreadyExistsError in response to C1, C2, P or B if the request includes a soft deleted / redacted or stubbed Order UUID.

An Order Deletion request must simply return a 204 success status when an Order is successfully deleted. The endpoint is idempotent, so a 204 MUST be returned upon subsequent calls to the delete the same Order.

An Order Deletion request must return a 404 status when the specified Order is not recognised, and should return a NotFoundError response.

@nickevansuk nickevansuk added the CR3 Issues relating to CR3 label Jun 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CR3 Issues relating to CR3
Projects
None yet
Development

No branches or pull requests

1 participant