-
Notifications
You must be signed in to change notification settings - Fork 516
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
Problem Report not delivered until connection is active #2650
Comments
MY a bit confused by this. I don’t think an “active” connection is needed to send a problem report — or at least I don’t think one should not be needed. The minimum needed to send a DIDComm message is the DIDComm Messaging Service Endpoint of the other party, which is a lower bar than an active connection. If I get a message from another party that is bad in the process of establishing a connection, and I have the DIDComm Messaging Service Endpoint for that party, I think I should be able to send them a problem report. Since each of the listed “skip” message types contain a DIDComm Messaging Service Endpoint, if they are bad, I should be able to send a Problem Report back. Likewise, if I get a message with no known context (perhaps a connection request that I have abandoned) and there is a DIDComm Messaging Service Endpoint in it, I can (send a Problem Report). |
Yes, we absolutely should be able to send the report but the current implementation prevents it. Because the message is of type The errors that become problem reports are caught, turned into problem reports then the responder sends them, when they hit the dispatcher - that's where it checks the message type before it sends the DIDComm message. So we could add |
Sorry, it's: |
Good progress on this, need to include #2598 with this; just makes sense to complete both connection and did problem report fixes. |
See #2599 and PR #2600.
Problem Reports require an active connection for delivery. However, if the issue is in the early stages of the connection/didexchange protocols, we have no way of successfully communicating that back to the other agent. We do have logic that catches exceptions and fires a ProblemReport in the request and response handlers but those reports will be swallowed and not delivered because the underlying connection is not active.
Should we add problem report the skip types? Which would allow the message to be delivered? or add some other flag/logic that would allow problem reports in the skipped type protocol stages to be delivered? Like a problem report that occurs during the execution of a skipped type?
The text was updated successfully, but these errors were encountered: