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

Revise the well known goal codes aries.rel and aries.rel.build #785

Merged
merged 2 commits into from Jun 28, 2023

Conversation

swcurran
Copy link
Member

@swcurran swcurran commented Jun 5, 2023

Updates the definition of where to use "aries.rel" and "aries.rel.build to remove the "can't be used to establish a DIDComm connection". We see no reason for that limitation.

We have come across the need for a goal code that we can use when doing nothing more than making a DIDComm connection between agents controlled by humans. Scenarios:

  • Two Mobile Wallet apps, with an invitation from one for the other in order to establish a connection to be used for a variety of purposes - messaging, issuance, and verification.
  • An enterprise agent sends an invitation to a Mobile Agent (via a QR code) to establish a connection for a variety of purposes - messaging, issuance, and verification.

Signed-off-by: Stephen Curran <swcurran@gmail.com>
@swcurran
Copy link
Member Author

swcurran commented Jun 6, 2023

FYI -- @cvarjao

Copy link
Member

@dhh1128 dhh1128 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am okay with this. However, I would like to explain the history as I remember it. IIRC, we wrote this caveat because people were declaring a dislike for DIDComm's pattern of establishing a "connection" before running protocols. They felt that this was "heavy." They had also implemented UI that asked users before establishing such a connection. @TelegramSam and I felt that this was an antipattern, and that DIDComm "connections" should be thought of more like SSL tunnels. Your browser doesn't ask you in advance if you want an SSL tunnel; it just builds one, automatically, and THEN asks you if you want to login or do other stuff. So we felt like making a DIDComm connection a goal was teaching the wrong idea -- that this was a heavy operation requiring user consent/intention, where we wanted it to feel lightweight and automatic (a precursor to interesting goals).

If actual experience is, now, that people look at building a DIDComm connection as a meaningful goal unto itself -- and not one that users should have to consent to, normally, but one that users have to help with when scanning a QR code -- then I'll go along with community wisdom.

@swcurran
Copy link
Member Author

swcurran commented Jun 6, 2023

There are goal codes that enable a UI to combine the consent for both establishing a connection (in the DIDComm sense) and taking another action, but in this case, the goal is simply to start a relationship manifest in a DIDComm connection and we don’t know what will come after.

We’ve not seen any pickup in the “beyond DIDComm connection” connection establishment scenario. E.g. the automated “Who are you?” mutual proof exchange that is facilitated by the DIDComm connection. I think this is desirable, but we’ve not seen (or made) any progress has been made on that front.

@swcurran
Copy link
Member Author

Discussed on the Aries Working Group call on 2023.06.28 and there was agreement to merge.

@swcurran swcurran merged commit 7096307 into hyperledger:main Jun 28, 2023
1 check passed
@swcurran swcurran deleted the goal-code-connect branch March 13, 2024 15:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants