Closed TimoGlastra closed 2 years ago
@NB-MikeRichardson using this to track everything related to issue credential v2. Please make a separate PR per item so the code review will be easier to do.
Branch I'm working on to integrate ICv2 into AATH: https://github.com/TimoGlastra/aries-agent-test-harness/tree/feat/afj-icv2
I've got it working between AFJ <-> AFJ, but as listed in the items above there are some issues with interop.
I've also created a PR that integrates the breaking changes introduced by the v2 merge and it seems we're still fully interoperable with ACA-Py for ICv1. Nice!
This issue tracks all outstanding tasks for ICv2:
offersAttach === undefined
). We can remove them as the types are not optional anymore. This will reduce the complexity of the code.waitForProofRecord
incorrectly in some places, meaning it can lead to race conditions. As the event listener only starts when you callwaitForCredentialRecord
, there's a good chance the event will already be emitted. So instead it should be used like this (or use the subject approach as is done in some of the other tests):// do the action that will trigger the event aliceProofRecord = await aliceAgent.proofs.acceptRequest(acceptPresentationOptions)
// wait for the event proofRecord = await faberProofRecordPromise
while the actual fields should be snake_case. I think this is related to the comment I made here: https://github.com/hyperledger/aries-framework-javascript/pull/649#discussion_r864594747. We should make sure to transform the class instance to json before putting it inside the attachment. This is quite important and completely breaks interop with ACA-Py
revocationRegistryId
andrevocationId
are not stored in the credential exchange record anymore. I think some parts of the recent revocation notification have been undone now. There is a separate issue here to integrate icv2 with revocation notification and I think we can cover it in that PR (https://github.com/hyperledger/aries-framework-javascript/issues/737)