Closed kukgini closed 1 year ago
AFAIK -- ACA-Py does not support connectionless credential issue. This has been talked about, but I don't think it has been implemented by anyone. AFAIK, only Aries Framework .NET supports connectionless issue.
It seems like most of the parts are there. ACA-Py can receive an OOB message with a credential offer attached, and connect and send a credential request. The receive_request
method (issue-credential 1.0) also has some special handling for OOB messages, but it looks like in this case the originating credential exchange can't be found when the request is being processed. I'm not sure at the moment if it's an issue with the thread ID on the credential request or if it's being filtered out because of the connection ID.
The credential exchange would be created as a 'free offer', with no connection ID. So maybe the filter should just look for records with the same connection ID or an empty connection ID. Otherwise, we could add a method to assign the connection ID on the credential exchange (to match the OOB invitation connection record) but that seems more error prone.
It turns out holder agent missed pthid
in ~thread
decorator when sending credential-offer message. related requirements is this. After fixing it, I'll test it again and close the issue.
@kukgini We ran into the same issue for OOB credential request. Curious, how did you include the pthid
in ~thread
on the holder, are you using bifold??
@dinbtechit I have tried this with aries-framework-swift and fixed now with this:
https://github.com/hyperledger/aries-framework-swift/issues/12
https://github.com/hyperledger/aries-framework-swift/pull/19
I heard that aries-framework-javascript which is base of bifold has the same issue. see:
I made an oob invitation with following procedure:
In the step 2, I put attachments like this:
created OOB invitation URL is like this
When holder agent accepts this invitation and made credential-request message like this:
When aca-py received this credential-request message through inbound port, It gives following error:
The cause of the error I inferred with above error message is: The credential-offer created in step 1 is not related with any connection yet. However, it seems that when a credential-request comes in, aca-py tries to find the corresponding credential-exchange record based on connection, not thread, but cannot find it.