-
Notifications
You must be signed in to change notification settings - Fork 7
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
Add 'chck operation' endpoint #35
Conversation
Fixes #23 Signed-off-by: Jon Geater <[email protected]>
Editors meeting suggestion: add a correlation id for the registration to coordinate on long-running operation requests. |
|
||
The response contains a reference to the running operation which will eventually be available for the Signed Statement. | ||
|
||
If 202 is returned, then clients should wait until Registration succeeded or failed by polling the Check Operation endpoint using the identifier returned in the response. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Concern for a failed registration returning not found, as the client will not know if it failed due to registration policy, or failed due to a network connection and continues to try.
Signed-off-by: Jon Geater <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we show some error states for cases where the server rejects the operation id the client chose?
Question from the editor's call: Was the request ID also meant to be the Some background on idempotent patterns
Do we need a request ID (
In an idempotent world, the server would check if the request was previously made and, if so, return the same response.
Separately, a discussion to support success/failure response codes for failed registration vs. "not found" is needed. |
The addition of the This seemed reasonable to try to accommodate and I did it to show how it might look, but actually I don't like how it's turned out and would gladly revert. Reasons:
I like the idempotency key stuff and we should look into it but I think it's a reasonable and coherent v1 to just say that EVERY POST is a new registration and starts a new registration operation for a new receipt. We can't legislate for software bugs or try to guess the intention of the client.
Agreed. That's already on the list. |
Yes, I think I am convinced by this argument, the request_id returned for the /operations call is a unique identifier for the registration and is enough for clients. The ability to set request_id in the registration request is unnecessary and may be confusing. I would also suggest to rename request_id to registration_id to make it clear that it is the identifier picked by the server when the registration is accepted |
@JAG-UK here are my proposed changed to resolve this |
This reverts commit 5b74d67.
Meeting notes: |
Fixes #23