-
Notifications
You must be signed in to change notification settings - Fork 511
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
Regression: DID Exchange webhook state with "completed" #2434
Comments
You can work around this by using the |
@anwalker293 spotted the issue; in the DID Exchange protocol manager, the
|
…erminal-state-to-active fix: issue #2434: Change DIDExchange States to Match rfc160
Connection records have two different state attributes: one reflecting the old states associated with the connection protocol and one for the DID Exchange protocol. These are
state
andrfc23_state
respectively. The terminal state for thestate
attribute isactive
. The terminal state forrfc23_state
iscompleted
. Recently something changed and we now get astate
ofcompleted
under certain circumstances.A minimal example can be found here: https://github.com/Indicio-tech/acapy-minimal-example/tree/main/examples/simple
The example can be run by:
The webhooks are printed to stdout under the DEBUG log level. Right at the end of the exchange, you will see:
This output is 3 webhook events:
response
completed
<- This is the problematic webhookactive
-- This is the state Bob should have reachedThese webhooks happen to have been received over websocket. Just to double check, I looked at posted webhook values as well (which can be seen with
docker-compose logs webhook-listener
in the docker-compose setup used for this example) and the same erroneous state is visible there.When later querying Bob's connections, the returned records show the correct state of
active
instead ofcompleted
for thestate
attribute.I believe this webhook is being emitted as Bob is sending the
complete
message to Alice after receiving Alice'sresponse
message.We've seen this break at least one controller so far.
The text was updated successfully, but these errors were encountered: