openwallet-foundation / credo-ts

Typescript framework for building decentralized identity and verifiable credential solutions
https://credo.js.org
Apache License 2.0
276 stars 202 forks source link

160 Connection can't complete with credo with no inbound transports #2041

Open nodlesh opened 2 months ago

nodlesh commented 2 months ago

I have a test where credo/acme requests mediation from an acapy/bob agent. On credo the inbound transports are not set but the outbound is set to "ws", "http" . The acapy agent has those settings for both inbound and outbound transports. It starts off trying to create a 0160 connection between the two agents, however, the connection never gets completed. The acapy connection state is responded while credo can’t determine the state. Somewhere along the way in the testing this was allowed to pass if afj/credo couldn’t determine the state, so I don’t know how long this has been happening. After the connection the test is requesting mediation from acapy with the connection id, which of course fails. If I set the inbound transport for credo to "ws", "http" as well, then the connection completes fine and request mediation happens successfully. However the test is written in a way that it is expected to work when the inbound transports are not set. And this test was setup to run with AFJ with ACA-Py Can anyone shed some light on what might be going on here? I do know that not all agent support being started without inbound transports, is this just a mistake and credo should not be running this test? The Credo docs seem to indicate that inbound transports are optional. Thanks!