@verana-labs/vs-agent-sdk 2.0.0-dev.4 → 2.0.0-dev.40

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/build/agent/VsAgent.d.ts +8 -0
  2. package/build/agent/VsAgent.js +52 -50
  3. package/build/agent/VsAgent.js.map +1 -1
  4. package/build/agent/createVsAgent.d.ts +5 -0
  5. package/build/agent/createVsAgent.js +3 -0
  6. package/build/agent/createVsAgent.js.map +1 -1
  7. package/build/blockchain/AuthorizationService.d.ts +0 -2
  8. package/build/blockchain/AuthorizationService.js +0 -18
  9. package/build/blockchain/AuthorizationService.js.map +1 -1
  10. package/build/blockchain/IndexerWebSocketService.d.ts +6 -1
  11. package/build/blockchain/IndexerWebSocketService.js +40 -15
  12. package/build/blockchain/IndexerWebSocketService.js.map +1 -1
  13. package/build/blockchain/VeranaChainService.d.ts +5 -1
  14. package/build/blockchain/VeranaChainService.js +54 -5
  15. package/build/blockchain/VeranaChainService.js.map +1 -1
  16. package/build/blockchain/VeranaIndexerService.js +4 -4
  17. package/build/blockchain/VeranaIndexerService.js.map +1 -1
  18. package/build/blockchain/handlers/defaultHandlers.js +2 -0
  19. package/build/blockchain/handlers/defaultHandlers.js.map +1 -1
  20. package/build/blockchain/handlers/index.d.ts +1 -0
  21. package/build/blockchain/handlers/index.js +1 -0
  22. package/build/blockchain/handlers/index.js.map +1 -1
  23. package/build/blockchain/handlers/selfIssuanceHandlers.d.ts +13 -0
  24. package/build/blockchain/handlers/selfIssuanceHandlers.js +71 -0
  25. package/build/blockchain/handlers/selfIssuanceHandlers.js.map +1 -0
  26. package/build/blockchain/handlers/stateMutations.d.ts +16 -2
  27. package/build/blockchain/handlers/stateMutations.js +202 -28
  28. package/build/blockchain/handlers/stateMutations.js.map +1 -1
  29. package/build/blockchain/types.d.ts +20 -1
  30. package/build/blockchain/types.js.map +1 -1
  31. package/build/bootstrap/EcsBootstrapService.d.ts +16 -3
  32. package/build/bootstrap/EcsBootstrapService.js +195 -74
  33. package/build/bootstrap/EcsBootstrapService.js.map +1 -1
  34. package/build/events/ConnectionEvents.js +110 -82
  35. package/build/events/ConnectionEvents.js.map +1 -1
  36. package/build/plugins/setupBaseDidComm.js +3 -2
  37. package/build/plugins/setupBaseDidComm.js.map +1 -1
  38. package/build/transports/VsAgentWsInboundTransport.d.ts +1 -1
  39. package/build/transports/VsAgentWsInboundTransport.js +20 -14
  40. package/build/transports/VsAgentWsInboundTransport.js.map +1 -1
  41. package/build/utils/agent.d.ts +15 -0
  42. package/build/utils/agent.js +53 -4
  43. package/build/utils/agent.js.map +1 -1
  44. package/build/utils/didReadiness.d.ts +9 -0
  45. package/build/utils/didReadiness.js +42 -0
  46. package/build/utils/didReadiness.js.map +1 -0
  47. package/build/utils/ecsClaims.d.ts +47 -0
  48. package/build/utils/ecsClaims.js +120 -0
  49. package/build/utils/ecsClaims.js.map +1 -0
  50. package/build/utils/index.d.ts +2 -0
  51. package/build/utils/index.js +2 -0
  52. package/build/utils/index.js.map +1 -1
  53. package/build/utils/selfIssuedEcsCredential.d.ts +4 -0
  54. package/build/utils/selfIssuedEcsCredential.js +140 -0
  55. package/build/utils/selfIssuedEcsCredential.js.map +1 -0
  56. package/build/utils/setupSelfTr.d.ts +3 -56
  57. package/build/utils/setupSelfTr.js +41 -249
  58. package/build/utils/setupSelfTr.js.map +1 -1
  59. package/build/utils/trustCredentialStore.d.ts +32 -6
  60. package/build/utils/trustCredentialStore.js +182 -82
  61. package/build/utils/trustCredentialStore.js.map +1 -1
  62. package/build/utils/vtjscResolver.d.ts +18 -0
  63. package/build/utils/vtjscResolver.js +54 -0
  64. package/build/utils/vtjscResolver.js.map +1 -0
  65. package/build/vtFlow/VtFlowOrchestrator.d.ts +47 -9
  66. package/build/vtFlow/VtFlowOrchestrator.js +96 -55
  67. package/build/vtFlow/VtFlowOrchestrator.js.map +1 -1
  68. package/build/vtFlow/assertVerifiableService.d.ts +1 -0
  69. package/build/vtFlow/assertVerifiableService.js +45 -5
  70. package/build/vtFlow/assertVerifiableService.js.map +1 -1
  71. package/build/vtFlow/ecsIssuanceExemption.d.ts +12 -0
  72. package/build/vtFlow/ecsIssuanceExemption.js +84 -0
  73. package/build/vtFlow/ecsIssuanceExemption.js.map +1 -0
  74. package/build/vtFlow/index.d.ts +1 -0
  75. package/build/vtFlow/index.js +1 -0
  76. package/build/vtFlow/index.js.map +1 -1
  77. package/package.json +11 -11
@@ -10,101 +10,129 @@ const connectionEvents = async (agent, config) => {
10
10
  const alternativeDids = agentPublicDidRecord === null || agentPublicDidRecord === void 0 ? void 0 : agentPublicDidRecord.getTag('alternativeDids');
11
11
  const agentPublicDids = [agent.did, ...(Array.isArray(alternativeDids) ? alternativeDids : [])];
12
12
  agent.events.on(didcomm_1.DidCommConnectionEventTypes.DidCommConnectionStateChanged, async ({ payload }) => {
13
- const record = payload.connectionRecord;
14
- if (record.outOfBandId && !record.getTag('parentConnectionId')) {
15
- const outOfBandRecord = await agent.didcomm.oob.findById(record.outOfBandId);
16
- const parentConnectionId = outOfBandRecord === null || outOfBandRecord === void 0 ? void 0 : outOfBandRecord.getTag('parentConnectionId');
17
- // Tag connection with its parent
18
- if (parentConnectionId) {
19
- record.setTag('parentConnectionId', parentConnectionId);
20
- await agent.context.dependencyManager
21
- .resolve(didcomm_1.DidCommConnectionRepository)
22
- .update(agent.context, record);
13
+ // an event listener is never awaited, so a rejection here would surface as an
14
+ // unhandled rejection and take the process down
15
+ try {
16
+ const record = payload.connectionRecord;
17
+ if (record.outOfBandId && !record.getTag('parentConnectionId')) {
18
+ const outOfBandRecord = await agent.didcomm.oob.findById(record.outOfBandId);
19
+ const parentConnectionId = outOfBandRecord === null || outOfBandRecord === void 0 ? void 0 : outOfBandRecord.getTag('parentConnectionId');
20
+ // Tag connection with its parent
21
+ if (parentConnectionId) {
22
+ record.setTag('parentConnectionId', parentConnectionId);
23
+ await agent.context.dependencyManager
24
+ .resolve(didcomm_1.DidCommConnectionRepository)
25
+ .update(agent.context, record);
26
+ }
23
27
  }
24
- }
25
- if (record.state === didcomm_1.DidCommDidExchangeState.Completed) {
26
- if (config.discoveryOptions)
27
- await agent.didcomm.discovery.queryFeatures({
28
- connectionId: record.id,
29
- protocolVersion: 'v2',
30
- queries: config.discoveryOptions,
28
+ if (record.state === didcomm_1.DidCommDidExchangeState.Completed) {
29
+ if (config.discoveryOptions)
30
+ await agent.didcomm.discovery.queryFeatures({
31
+ connectionId: record.id,
32
+ protocolVersion: 'v2',
33
+ queries: config.discoveryOptions,
34
+ });
35
+ }
36
+ // If an out-of-band ID exists, use the invitation to find the thread IDs
37
+ // and identify the invitation that created the connection to update its state.
38
+ if (record.outOfBandId) {
39
+ const invitationRecord = await agent.didcomm.oob.findById(record.outOfBandId);
40
+ const threadIds = invitationRecord === null || invitationRecord === void 0 ? void 0 : invitationRecord.getTag('invitationRequestsThreadIds');
41
+ threadIds === null || threadIds === void 0 ? void 0 : threadIds.map(async (threadId) => {
42
+ const [proofRecord] = await agent.didcomm.proofs.findAllByQuery({ threadId });
43
+ if (!proofRecord)
44
+ return;
45
+ const callbackParameters = proofRecord.metadata.get('_2060/callbackParameters');
46
+ if (callbackParameters &&
47
+ callbackParameters.callbackUrl &&
48
+ record.state === didcomm_1.DidCommDidExchangeState.RequestReceived) {
49
+ (0, VsAgentEvents_1.emitVsAgentEvent)(agent, VsAgentEvents_1.VsAgentEventTypes.PresentationStateUpdated, new vs_agent_model_1.PresentationStateUpdated({
50
+ proofExchangeId: proofRecord.id,
51
+ callbackUrl: callbackParameters.callbackUrl,
52
+ state: vs_agent_model_1.PresentationState.CONNECTED,
53
+ ref: callbackParameters.ref,
54
+ }));
55
+ }
31
56
  });
32
- }
33
- // If an out-of-band ID exists, use the invitation to find the thread IDs
34
- // and identify the invitation that created the connection to update its state.
35
- if (record.outOfBandId) {
36
- const invitationRecord = await agent.didcomm.oob.findById(record.outOfBandId);
37
- const threadIds = invitationRecord === null || invitationRecord === void 0 ? void 0 : invitationRecord.getTag('invitationRequestsThreadIds');
38
- threadIds === null || threadIds === void 0 ? void 0 : threadIds.map(async (threadId) => {
39
- const [proofRecord] = await agent.didcomm.proofs.findAllByQuery({ threadId });
40
- if (!proofRecord)
41
- return;
42
- const callbackParameters = proofRecord.metadata.get('_2060/callbackParameters');
43
- if (callbackParameters &&
44
- callbackParameters.callbackUrl &&
45
- record.state === didcomm_1.DidCommDidExchangeState.RequestReceived) {
46
- (0, VsAgentEvents_1.emitVsAgentEvent)(agent, VsAgentEvents_1.VsAgentEventTypes.PresentationStateUpdated, new vs_agent_model_1.PresentationStateUpdated({
47
- proofExchangeId: proofRecord.id,
48
- callbackUrl: callbackParameters.callbackUrl,
49
- state: vs_agent_model_1.PresentationState.CONNECTED,
50
- ref: callbackParameters.ref,
51
- }));
52
- }
57
+ }
58
+ // If discovery is enabled, send an empty 'completed' state so that the recipient knows to expect async features.
59
+ const body = new vs_agent_model_1.ConnectionStateUpdated({
60
+ connectionId: record.id,
61
+ invitationId: record.outOfBandId,
62
+ state: record.state,
63
+ metadata: config.discoveryOptions ? {} : undefined,
53
64
  });
65
+ (0, VsAgentEvents_1.emitVsAgentEvent)(agent, VsAgentEvents_1.VsAgentEventTypes.ConnectionStateUpdated, body);
66
+ }
67
+ catch (error) {
68
+ config.logger.error(`[connection-events] state change handler failed: ${error.message}`);
54
69
  }
55
- // If discovery is enabled, send an empty 'completed' state so that the recipient knows to expect async features.
56
- const body = new vs_agent_model_1.ConnectionStateUpdated({
57
- connectionId: record.id,
58
- invitationId: record.outOfBandId,
59
- state: record.state,
60
- metadata: config.discoveryOptions ? {} : undefined,
61
- });
62
- (0, VsAgentEvents_1.emitVsAgentEvent)(agent, VsAgentEvents_1.VsAgentEventTypes.ConnectionStateUpdated, body);
63
70
  });
64
71
  agent.events.on(didcomm_1.DidCommConnectionEventTypes.DidCommConnectionDidRotated, async ({ payload }) => {
65
72
  var _a, _b;
66
- const record = payload.connectionRecord;
67
- const isTerminationByPeer = record.theirDid === undefined && ((_b = (_a = record.previousTheirDids) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0) > 0;
68
- if (!isTerminationByPeer)
69
- return;
70
- const body = new vs_agent_model_1.ConnectionStateUpdated({
71
- connectionId: record.id,
72
- invitationId: record.outOfBandId,
73
- state: 'terminated',
74
- });
75
- (0, VsAgentEvents_1.emitVsAgentEvent)(agent, VsAgentEvents_1.VsAgentEventTypes.ConnectionStateUpdated, body);
73
+ // an event listener is never awaited, so a rejection here would surface as an
74
+ // unhandled rejection and take the process down
75
+ try {
76
+ const record = payload.connectionRecord;
77
+ const isTerminationByPeer = record.theirDid === undefined && ((_b = (_a = record.previousTheirDids) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0) > 0;
78
+ if (!isTerminationByPeer)
79
+ return;
80
+ const body = new vs_agent_model_1.ConnectionStateUpdated({
81
+ connectionId: record.id,
82
+ invitationId: record.outOfBandId,
83
+ state: 'terminated',
84
+ });
85
+ (0, VsAgentEvents_1.emitVsAgentEvent)(agent, VsAgentEvents_1.VsAgentEventTypes.ConnectionStateUpdated, body);
86
+ }
87
+ catch (error) {
88
+ config.logger.error(`[connection-events] did rotated handler failed: ${error.message}`);
89
+ }
76
90
  });
77
91
  agent.events.on(didcomm_1.DidCommDiscoverFeaturesEventTypes.DisclosureReceived, async ({ payload }) => {
78
92
  var _a;
79
- const record = payload.connection;
80
- payload.disclosures.forEach(item => record.metadata.add(`features-${item.type}`, { [item.id]: item.toJSON() }));
81
- await agent.context.dependencyManager
82
- .resolve(didcomm_1.DidCommConnectionRepository)
83
- .update(agent.context, payload.connection);
84
- const metadata = (_a = payload.disclosures) === null || _a === void 0 ? void 0 : _a.reduce((acc, item) => {
85
- acc[item.id] = JSON.stringify(item.toJSON());
86
- return acc;
87
- }, {});
88
- const body = new vs_agent_model_1.ConnectionStateUpdated({
89
- connectionId: record.id,
90
- invitationId: record.outOfBandId,
91
- state: vs_agent_model_1.ExtendedDidExchangeState.Updated,
92
- metadata,
93
- });
94
- (0, VsAgentEvents_1.emitVsAgentEvent)(agent, VsAgentEvents_1.VsAgentEventTypes.ConnectionStateUpdated, body);
93
+ // an event listener is never awaited, so a rejection here would surface as an
94
+ // unhandled rejection and take the process down
95
+ try {
96
+ const record = payload.connection;
97
+ payload.disclosures.forEach(item => record.metadata.add(`features-${item.type}`, { [item.id]: item.toJSON() }));
98
+ await agent.context.dependencyManager
99
+ .resolve(didcomm_1.DidCommConnectionRepository)
100
+ .update(agent.context, payload.connection);
101
+ const metadata = (_a = payload.disclosures) === null || _a === void 0 ? void 0 : _a.reduce((acc, item) => {
102
+ acc[item.id] = JSON.stringify(item.toJSON());
103
+ return acc;
104
+ }, {});
105
+ const body = new vs_agent_model_1.ConnectionStateUpdated({
106
+ connectionId: record.id,
107
+ invitationId: record.outOfBandId,
108
+ state: vs_agent_model_1.ExtendedDidExchangeState.Updated,
109
+ metadata,
110
+ });
111
+ (0, VsAgentEvents_1.emitVsAgentEvent)(agent, VsAgentEvents_1.VsAgentEventTypes.ConnectionStateUpdated, body);
112
+ }
113
+ catch (error) {
114
+ config.logger.error(`[connection-events] disclosure handler failed: ${error.message}`);
115
+ }
95
116
  });
96
117
  // Auto-accept connections that go to the public did
97
118
  agent.events.on(didcomm_1.DidCommConnectionEventTypes.DidCommConnectionStateChanged, async (data) => {
98
- config.logger.debug(`Incoming connection event: ${data.payload.connectionRecord.state}`);
99
- const outOfBandId = data.payload.connectionRecord.outOfBandId;
100
- if (!outOfBandId)
101
- return;
102
- const oob = await agent.didcomm.oob.findById(outOfBandId);
103
- if (agentPublicDids.includes(oob === null || oob === void 0 ? void 0 : oob.outOfBandInvitation.id) &&
104
- data.payload.connectionRecord.state === didcomm_1.DidCommDidExchangeState.RequestReceived) {
105
- config.logger.debug(`Incoming connection request for ${agent.did}`);
106
- await agent.didcomm.connections.acceptRequest(data.payload.connectionRecord.id);
107
- config.logger.debug(`Accepted request for ${agent.did}`);
119
+ // an event listener is never awaited, so a rejection here would surface as an
120
+ // unhandled rejection and take the process down
121
+ try {
122
+ config.logger.debug(`Incoming connection event: ${data.payload.connectionRecord.state}`);
123
+ const outOfBandId = data.payload.connectionRecord.outOfBandId;
124
+ if (!outOfBandId)
125
+ return;
126
+ const oob = await agent.didcomm.oob.findById(outOfBandId);
127
+ if (agentPublicDids.includes(oob === null || oob === void 0 ? void 0 : oob.outOfBandInvitation.id) &&
128
+ data.payload.connectionRecord.state === didcomm_1.DidCommDidExchangeState.RequestReceived) {
129
+ config.logger.debug(`Incoming connection request for ${agent.did}`);
130
+ await agent.didcomm.connections.acceptRequest(data.payload.connectionRecord.id);
131
+ config.logger.debug(`Accepted request for ${agent.did}`);
132
+ }
133
+ }
134
+ catch (error) {
135
+ config.logger.error(`[connection-events] incoming connection handler failed: ${error.message}`);
108
136
  }
109
137
  });
110
138
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ConnectionEvents.js","sourceRoot":"","sources":["../../src/events/ConnectionEvents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConnectionEvents.js","sourceRoot":"","sources":["../../src/events/ConnectionEvents.ts"],"names":[],"mappings":"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"}
@@ -21,13 +21,14 @@ const VsAgentWsOutboundTransport_1 = require("../transports/VsAgentWsOutboundTra
21
21
  */
22
22
  function setupBaseDidComm(options) {
23
23
  var _a;
24
+ const didcommVersions = (_a = options.didcommVersions) !== null && _a !== void 0 ? _a : ['v1', 'v2'];
24
25
  return {
25
26
  modules: {
26
27
  didcomm: new didcomm_1.DidCommModule({
27
28
  endpoints: options.endpoints,
28
- didcommVersions: options.didcommVersions,
29
+ didcommVersions,
29
30
  // BasicMessage protocols must be set separately, otherwise Credo rejects basicmessage/2.0.
30
- basicMessages: { protocols: (_a = options.didcommVersions) !== null && _a !== void 0 ? _a : ['v1'] },
31
+ basicMessages: { protocols: didcommVersions },
31
32
  transports: {
32
33
  outbound: [new didcomm_1.DidCommHttpOutboundTransport(), new VsAgentWsOutboundTransport_1.VsAgentWsOutboundTransport()],
33
34
  },
@@ -1 +1 @@
1
- {"version":3,"file":"setupBaseDidComm.js","sourceRoot":"","sources":["../../src/plugins/setupBaseDidComm.ts"],"names":[],"mappings":";;AAiDA,4CAoEC;AAnHD,mDAM4B;AAC5B,2CAA4E;AAC5E,yCAAiE;AACjE,+CAQ0B;AAC1B,2CAA6F;AAC7F,oEAAyD;AACzD,sEAA2D;AAC3D,oFAAoG;AACpG,yEAAmE;AAGnE,8EAA0E;AAC1E,sEAAmE;AACnE,sEAAkE;AAClE,4DAAwD;AACxD,yFAAqF;AAcrF;;;GAGG;AACH,SAAgB,gBAAgB,CAAC,OAAiC;;IAChE,OAAO;QACL,OAAO,EAAE;YACP,OAAO,EAAE,IAAI,uBAAa,CAAC;gBACzB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,eAAe,EAAE,OAAO,CAAC,eAAe;gBACxC,2FAA2F;gBAC3F,aAAa,EAAE,EAAE,SAAS,EAAE,MAAA,OAAO,CAAC,eAAe,mCAAI,CAAC,IAAI,CAAC,EAAE;gBAC/D,UAAU,EAAE;oBACV,QAAQ,EAAE,CAAC,IAAI,sCAA4B,EAAE,EAAE,IAAI,uDAA0B,EAAE,CAAC;iBACjF;gBACD,WAAW,EAAE;oBACX,qBAAqB,EAAE,IAAI;oBAC3B,kCAAkC,EAAE,IAAI;iBACzC;gBACD,WAAW,EAAE;oBACX,qBAAqB,EAAE,qCAA2B,CAAC,eAAe;oBAClE,mBAAmB,EAAE;wBACnB,IAAI,qCAA2B,CAAC;4BAC9B,iBAAiB,EAAE;gCACjB,IAAI,oDAAwC,EAAE;gCAC9C,IAAI,mDAAuC,EAAE;gCAC7C,IAAI,8CAAoC,EAAE;6BAC3C;yBACF,CAAC;qBACH;iBACF;gBACD,MAAM,EAAE;oBACN,gBAAgB,EAAE,gCAAsB,CAAC,eAAe;oBACxD,cAAc,EAAE;wBACd,IAAI,gCAAsB,CAAC;4BACzB,YAAY,EAAE;gCACZ,IAAI,+CAAmC,EAAE;gCACzC,IAAI,8CAAkC,EAAE;6BACzC;yBACF,CAAC;qBACH;iBACF;aACF,CAAC;YACF,KAAK,EAAE,IAAI,mBAAW,CAAC;gBACrB,KAAK,EAAL,oBAAK;gBACL,KAAK,EAAE,OAAO,CAAC,YAAY;aAC5B,CAAC;YACF,SAAS,EAAE,IAAI,2BAAe,CAAC;gBAC7B,SAAS,EAAT,4BAAS;gBACT,gBAAgB,EAAE,IAAI,2CAAoB,CAAC;oBACzC,kBAAkB,EAAE,GAAG,OAAO,CAAC,gBAAgB,qBAAqB;iBACrE,CAAC;gBACF,UAAU,EAAE;oBACV,IAAI,mDAAuB,CAAC;wBAC1B,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,sBAAsB,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;qBAC3E,CAAC;oBACF,IAAI,8BAAsB,EAAE;iBAC7B;aACF,CAAC;YACF,IAAI,EAAE,IAAI,iBAAU,CAAC;gBACnB,SAAS,EAAE;oBACT,IAAI,2CAAoB,CAAC,EAAE,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,EAAE,CAAC;oBACxE,IAAI,wBAAgB,EAAE;iBACvB;gBACD,UAAU,EAAE,CAAC,IAAI,iCAAe,EAAE,EAAE,IAAI,yBAAiB,EAAE,CAAC;aAC7D,CAAC;YACF,cAAc,EAAE,IAAI,2BAAoB,CAAC;gBACvC,cAAc,EAAE,4CAAqB;aACtC,CAAC;YACF,MAAM,EAAE,IAAI,uCAAY,mBAAM,OAAO,CAAC,MAAM,EAAG;SAChD;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"setupBaseDidComm.js","sourceRoot":"","sources":["../../src/plugins/setupBaseDidComm.ts"],"names":[],"mappings":";;AAiDA,4CAqEC;AApHD,mDAM4B;AAC5B,2CAA4E;AAC5E,yCAAiE;AACjE,+CAQ0B;AAC1B,2CAA6F;AAC7F,oEAAyD;AACzD,sEAA2D;AAC3D,oFAAoG;AACpG,yEAAmE;AAGnE,8EAA0E;AAC1E,sEAAmE;AACnE,sEAAkE;AAClE,4DAAwD;AACxD,yFAAqF;AAcrF;;;GAGG;AACH,SAAgB,gBAAgB,CAAC,OAAiC;;IAChE,MAAM,eAAe,GAAG,MAAA,OAAO,CAAC,eAAe,mCAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IAC/D,OAAO;QACL,OAAO,EAAE;YACP,OAAO,EAAE,IAAI,uBAAa,CAAC;gBACzB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,eAAe;gBACf,2FAA2F;gBAC3F,aAAa,EAAE,EAAE,SAAS,EAAE,eAAe,EAAE;gBAC7C,UAAU,EAAE;oBACV,QAAQ,EAAE,CAAC,IAAI,sCAA4B,EAAE,EAAE,IAAI,uDAA0B,EAAE,CAAC;iBACjF;gBACD,WAAW,EAAE;oBACX,qBAAqB,EAAE,IAAI;oBAC3B,kCAAkC,EAAE,IAAI;iBACzC;gBACD,WAAW,EAAE;oBACX,qBAAqB,EAAE,qCAA2B,CAAC,eAAe;oBAClE,mBAAmB,EAAE;wBACnB,IAAI,qCAA2B,CAAC;4BAC9B,iBAAiB,EAAE;gCACjB,IAAI,oDAAwC,EAAE;gCAC9C,IAAI,mDAAuC,EAAE;gCAC7C,IAAI,8CAAoC,EAAE;6BAC3C;yBACF,CAAC;qBACH;iBACF;gBACD,MAAM,EAAE;oBACN,gBAAgB,EAAE,gCAAsB,CAAC,eAAe;oBACxD,cAAc,EAAE;wBACd,IAAI,gCAAsB,CAAC;4BACzB,YAAY,EAAE;gCACZ,IAAI,+CAAmC,EAAE;gCACzC,IAAI,8CAAkC,EAAE;6BACzC;yBACF,CAAC;qBACH;iBACF;aACF,CAAC;YACF,KAAK,EAAE,IAAI,mBAAW,CAAC;gBACrB,KAAK,EAAL,oBAAK;gBACL,KAAK,EAAE,OAAO,CAAC,YAAY;aAC5B,CAAC;YACF,SAAS,EAAE,IAAI,2BAAe,CAAC;gBAC7B,SAAS,EAAT,4BAAS;gBACT,gBAAgB,EAAE,IAAI,2CAAoB,CAAC;oBACzC,kBAAkB,EAAE,GAAG,OAAO,CAAC,gBAAgB,qBAAqB;iBACrE,CAAC;gBACF,UAAU,EAAE;oBACV,IAAI,mDAAuB,CAAC;wBAC1B,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,sBAAsB,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;qBAC3E,CAAC;oBACF,IAAI,8BAAsB,EAAE;iBAC7B;aACF,CAAC;YACF,IAAI,EAAE,IAAI,iBAAU,CAAC;gBACnB,SAAS,EAAE;oBACT,IAAI,2CAAoB,CAAC,EAAE,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,EAAE,CAAC;oBACxE,IAAI,wBAAgB,EAAE;iBACvB;gBACD,UAAU,EAAE,CAAC,IAAI,iCAAe,EAAE,EAAE,IAAI,yBAAiB,EAAE,CAAC;aAC7D,CAAC;YACF,cAAc,EAAE,IAAI,2BAAoB,CAAC;gBACvC,cAAc,EAAE,4CAAqB;aACtC,CAAC;YACF,MAAM,EAAE,IAAI,uCAAY,mBAAM,OAAO,CAAC,MAAM,EAAG;SAChD;KACF,CAAA;AACH,CAAC"}
@@ -3,7 +3,7 @@ import { DidCommConnectionRecord, DidCommEncryptedMessage, DidCommInboundTranspo
3
3
  import WebSocket, { Server } from 'ws';
4
4
  export declare class VsAgentWsInboundTransport implements DidCommInboundTransport {
5
5
  private socketServer;
6
- private logger;
6
+ private logger?;
7
7
  private socketIds;
8
8
  constructor({ server, port, }: {
9
9
  server: Server;
@@ -46,35 +46,37 @@ class VsAgentWsInboundTransport {
46
46
  async start(agentContext) {
47
47
  const transportService = agentContext.dependencyManager.resolve(didcomm_1.DidCommTransportService);
48
48
  const didcomm = agentContext.dependencyManager.resolve(didcomm_1.DidCommApi);
49
- this.logger = agentContext.config.logger;
50
- this.logger.debug('VS Agent Ws Inbound transport start');
49
+ const logger = agentContext.config.logger;
50
+ this.logger = logger;
51
+ logger.debug('VS Agent Ws Inbound transport start');
51
52
  const wsEndpoint = didcomm.config.endpoints.find(e => e.startsWith('ws'));
52
- this.logger.debug(`Starting WS inbound transport`, {
53
+ logger.debug(`Starting WS inbound transport`, {
53
54
  endpoint: wsEndpoint,
54
55
  });
55
56
  this.socketServer.on('connection', (socket) => {
56
57
  const socketId = core_1.utils.uuid();
57
- this.logger.debug('Socket connected.');
58
+ logger.debug('Socket connected.');
58
59
  socket.isAlive = true;
59
60
  socket.lastActivity = new Date();
60
61
  if (!this.socketIds[socketId]) {
61
- this.logger.debug(`Saving new socket with id ${socketId}.`);
62
+ logger.debug(`Saving new socket with id ${socketId}.`);
62
63
  this.socketIds[socketId] = socket;
63
- const session = new WebSocketTransportSession(socketId, socket, this.logger);
64
+ const session = new WebSocketTransportSession(socketId, socket, logger);
64
65
  this.listenOnWebSocketMessages(agentContext, socket, session);
65
66
  socket.on('close', () => {
66
- this.logger.debug('Socket closed.');
67
+ logger.debug('Socket closed.');
67
68
  transportService.removeSession(session);
68
69
  });
69
70
  }
70
71
  else {
71
- this.logger.debug(`Socket with id ${socketId} already exists.`);
72
+ logger.debug(`Socket with id ${socketId} already exists.`);
72
73
  }
73
74
  });
74
75
  this.startIdleSocketTimer(60000);
75
76
  }
76
77
  async stop() {
77
- this.logger.debug('Closing WebSocket Server');
78
+ var _a;
79
+ (_a = this.logger) === null || _a === void 0 ? void 0 : _a.debug('Closing WebSocket Server');
78
80
  return new Promise((resolve, reject) => {
79
81
  this.socketServer.close(error => {
80
82
  if (error) {
@@ -85,15 +87,17 @@ class VsAgentWsInboundTransport {
85
87
  });
86
88
  }
87
89
  getServer() {
88
- this.logger.debug('Get WebSocket Server');
90
+ var _a;
91
+ (_a = this.logger) === null || _a === void 0 ? void 0 : _a.debug('Get WebSocket Server');
89
92
  return this.socketServer;
90
93
  }
91
94
  startIdleSocketTimer(interval) {
92
95
  setInterval(() => {
93
96
  const currentDate = new Date();
94
97
  this.socketServer.clients.forEach(item => {
98
+ var _a;
95
99
  if (currentDate.valueOf() - item.lastActivity.valueOf() > interval) {
96
- this.logger.debug('Client session closed by inactivity');
100
+ (_a = this.logger) === null || _a === void 0 ? void 0 : _a.debug('Client session closed by inactivity');
97
101
  item.close();
98
102
  }
99
103
  });
@@ -101,19 +105,21 @@ class VsAgentWsInboundTransport {
101
105
  }
102
106
  listenOnWebSocketMessages(agentContext, socket, session) {
103
107
  socket.on('pong', () => {
104
- this.logger.debug('Pong received');
108
+ var _a;
109
+ (_a = this.logger) === null || _a === void 0 ? void 0 : _a.debug('Pong received');
105
110
  socket.isAlive = true;
106
111
  });
107
112
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
108
113
  socket.addEventListener('message', async (event) => {
109
- this.logger.debug('WebSocket message event received.', { url: event.target.url, data: event.data });
114
+ var _a, _b;
115
+ (_a = this.logger) === null || _a === void 0 ? void 0 : _a.debug('WebSocket message event received.', { url: event.target.url, data: event.data });
110
116
  socket.lastActivity = new Date();
111
117
  try {
112
118
  const messageReceiver = agentContext.dependencyManager.resolve(didcomm_1.DidCommMessageReceiver);
113
119
  await messageReceiver.receiveMessage(JSON.parse(event.data), { session });
114
120
  }
115
121
  catch (error) {
116
- this.logger.error('Error processing message');
122
+ (_b = this.logger) === null || _b === void 0 ? void 0 : _b.error(`Error processing inbound message: ${error instanceof Error ? error.message : String(error)}`, { error });
117
123
  }
118
124
  });
119
125
  }
@@ -1 +1 @@
1
- {"version":3,"file":"VsAgentWsInboundTransport.js","sourceRoot":"","sources":["../../src/transports/VsAgentWsInboundTransport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VsAgentWsInboundTransport.js","sourceRoot":"","sources":["../../src/transports/VsAgentWsInboundTransport.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAwE;AACxE,+CAQ0B;AAC1B,yCAAsC;AAQtC,MAAa,yBAAyB;IAQpC,YAAmB,EACjB,MAAM,EACN,IAAI,GACwE;QAN9E,4FAA4F;QACpF,cAAS,GAA4B,EAAE,CAAA;QAM7C,IAAI,CAAC,YAAY,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,IAAI,WAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;IACpD,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,YAA0B;QAC3C,MAAM,gBAAgB,GAAG,YAAY,CAAC,iBAAiB,CAAC,OAAO,CAAC,iCAAuB,CAAC,CAAA;QACxF,MAAM,OAAO,GAAG,YAAY,CAAC,iBAAiB,CAAC,OAAO,CAAC,oBAAU,CAAC,CAAA;QAElE,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,MAAM,CAAA;QACzC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,MAAM,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAA;QAEnD,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAA;QACzE,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE;YAC5C,QAAQ,EAAE,UAAU;SACrB,CAAC,CAAA;QAEF,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,MAAiB,EAAE,EAAE;YACvD,MAAM,QAAQ,GAAG,YAAK,CAAC,IAAI,EAAE,CAAA;YAC7B,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAChC;YAAC,MAAuB,CAAC,OAAO,GAAG,IAAI,CACvC;YAAC,MAAuB,CAAC,YAAY,GAAG,IAAI,IAAI,EAAE,CAAA;YACnD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC9B,MAAM,CAAC,KAAK,CAAC,6BAA6B,QAAQ,GAAG,CAAC,CAAA;gBACtD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAA;gBACjC,MAAM,OAAO,GAAG,IAAI,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;gBACvE,IAAI,CAAC,yBAAyB,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;gBAC7D,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;oBACtB,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;oBAC9B,gBAAgB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;gBACzC,CAAC,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,KAAK,CAAC,kBAAkB,QAAQ,kBAAkB,CAAC,CAAA;YAC5D,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAA;IAClC,CAAC;IAEM,KAAK,CAAC,IAAI;;QACf,MAAA,IAAI,CAAC,MAAM,0CAAE,KAAK,CAAC,0BAA0B,CAAC,CAAA;QAE9C,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3C,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;gBAC9B,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,CAAC,KAAK,CAAC,CAAA;gBACf,CAAC;gBAED,OAAO,EAAE,CAAA;YACX,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAEM,SAAS;;QACd,MAAA,IAAI,CAAC,MAAM,0CAAE,KAAK,CAAC,sBAAsB,CAAC,CAAA;QAE1C,OAAO,IAAI,CAAC,YAAY,CAAA;IAC1B,CAAC;IAEO,oBAAoB,CAAC,QAAgB;QAC3C,WAAW,CAAC,GAAG,EAAE;YACf,MAAM,WAAW,GAAG,IAAI,IAAI,EAAE,CAAA;YAC9B,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;;gBACvC,IAAI,WAAW,CAAC,OAAO,EAAE,GAAI,IAAqB,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,QAAQ,EAAE,CAAC;oBACrF,MAAA,IAAI,CAAC,MAAM,0CAAE,KAAK,CAAC,qCAAqC,CAAC,CAAA;oBACzD,IAAI,CAAC,KAAK,EAAE,CAAA;gBACd,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,EAAE,QAAQ,CAAC,CAAA;IACd,CAAC;IAEO,yBAAyB,CAC/B,YAA0B,EAC1B,MAAiB,EACjB,OAAkC;QAElC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;;YACrB,MAAA,IAAI,CAAC,MAAM,0CAAE,KAAK,CAAC,eAAe,CAAC,CAClC;YAAC,MAAuB,CAAC,OAAO,GAAG,IAAI,CAAA;QAC1C,CAAC,CAAC,CAAA;QAEF,8DAA8D;QAC9D,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,EAAE,KAAU,EAAE,EAAE;;YACtD,MAAA,IAAI,CAAC,MAAM,0CAAE,KAAK,CAAC,mCAAmC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CACnG;YAAC,MAAuB,CAAC,YAAY,GAAG,IAAI,IAAI,EAAE,CAAA;YACnD,IAAI,CAAC;gBACH,MAAM,eAAe,GAAG,YAAY,CAAC,iBAAiB,CAAC,OAAO,CAAC,gCAAsB,CAAC,CAAA;gBACtF,MAAM,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;YAC3E,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAA,IAAI,CAAC,MAAM,0CAAE,KAAK,CAChB,qCAAqC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAC7F,EAAE,KAAK,EAAE,CACV,CAAA;YACH,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;CACF;AA3GD,8DA2GC;AAED,MAAa,yBAAyB;IAOpC,YAAmB,EAAU,EAAE,MAAiB,EAAE,MAAc;QALhD,SAAI,GAAG,WAAW,CAAA;QAMhC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QACZ,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,YAA0B,EAAE,gBAAyC;QACrF,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,KAAK,YAAS,CAAC,IAAI,EAAE,CAAC;YAC9C,MAAM,IAAI,iBAAU,CAAC,GAAG,IAAI,CAAC,IAAI,qCAAqC,CAAC,CAAA;QACzE,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CACjD;QAAC,IAAI,CAAC,MAAuB,CAAC,YAAY,GAAG,IAAI,IAAI,EAAE,CAAA;IAC1D,CAAC;IAEM,KAAK,CAAC,KAAK;;QAChB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gEAAgE,MAAA,IAAI,CAAC,UAAU,0CAAE,EAAE,EAAE,CAAC,CAAA;QACxG,8DAA8D;IAChE,CAAC;CACF;AA1BD,8DA0BC"}
@@ -17,5 +17,20 @@ export declare function createInvitation(options: {
17
17
  }): Promise<{
18
18
  url: string;
19
19
  }>;
20
+ /**
21
+ * Connects to a peer that publishes a public DID, and reuses the connection that the
22
+ * agent already has to that peer.
23
+ *
24
+ * The agent must keep one connection record only for each peer. A second record for the
25
+ * same pair of DIDs makes the `findByDids` lookup of the message receiver throw
26
+ * `RecordDuplicateError`, and the agent then fails to process every inbound message from
27
+ * that peer. To find the existing record, the agent reads the `publicDid` tag that it
28
+ * sets on each connection to a peer that publishes a public DID.
29
+ *
30
+ * @param agent the local agent
31
+ * @param peerPublicDid the public DID of the peer
32
+ * @returns the id of a ready connection record
33
+ */
34
+ export declare function connectToPublicDid(agent: VsAgent, peerPublicDid: string): Promise<string>;
20
35
  export declare function getRecordId(agent: VsAgent, id: string): Promise<string>;
21
36
  export declare function getWebDid(agent: VsAgent): Promise<string | undefined>;
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createInvitation = createInvitation;
4
+ exports.connectToPublicDid = connectToPublicDid;
4
5
  exports.getRecordId = getRecordId;
5
6
  exports.getWebDid = getWebDid;
6
7
  const core_1 = require("@credo-ts/core");
@@ -16,14 +17,14 @@ async function createInvitation(options) {
16
17
  const { agent, messages, useLegacyDid, invitationBaseUrl, imageUrl, didCommVersion } = options;
17
18
  // Use legacy did:web in case agent's did is webvh and using legacy did
18
19
  const ourDid = agent.did && (0, core_1.parseDid)(agent.did).method === 'webvh' && useLegacyDid
19
- ? `did:web:${(0, core_1.parseDid)(agent.did).id.split(':')[1]}`
20
+ ? `did:web:${(0, core_1.parseDid)(agent.did).id.split(':').slice(1).join(':')}`
20
21
  : agent.did;
21
- const effectiveVersion = didCommVersion !== null && didCommVersion !== void 0 ? didCommVersion : (agent.didcomm.config.sendsV2 ? 'v2' : 'v1');
22
+ const effectiveVersion = didCommVersion !== null && didCommVersion !== void 0 ? didCommVersion : 'v2';
22
23
  const isV2 = effectiveVersion === 'v2';
23
24
  if (!agent.didcomm.config.didcommVersions.includes(effectiveVersion)) {
24
25
  throw new Error(`Cannot create ${effectiveVersion} invitation: agent is configured with ` +
25
26
  `didcommVersions: [${agent.didcomm.config.didcommVersions.join(', ')}]. ` +
26
- `Add "${effectiveVersion}" to AGENT_DIDCOMM_VERSIONS or omit didCommVersion from the request.`);
27
+ `Add "${effectiveVersion}" to the agent's didcommVersions configuration.`);
27
28
  }
28
29
  const outOfBandInvitation = (await agent.didcomm.oob.createInvitation(Object.assign({ label: agent.label, multiUseInvitation: !messages, imageUrl,
29
30
  messages, didCommVersion: effectiveVersion }, (isV2
@@ -38,6 +39,54 @@ async function createInvitation(options) {
38
39
  }),
39
40
  };
40
41
  }
42
+ /**
43
+ * Connects to a peer that publishes a public DID, and reuses the connection that the
44
+ * agent already has to that peer.
45
+ *
46
+ * The agent must keep one connection record only for each peer. A second record for the
47
+ * same pair of DIDs makes the `findByDids` lookup of the message receiver throw
48
+ * `RecordDuplicateError`, and the agent then fails to process every inbound message from
49
+ * that peer. To find the existing record, the agent reads the `publicDid` tag that it
50
+ * sets on each connection to a peer that publishes a public DID.
51
+ *
52
+ * @param agent the local agent
53
+ * @param peerPublicDid the public DID of the peer
54
+ * @returns the id of a ready connection record
55
+ */
56
+ async function connectToPublicDid(agent, peerPublicDid) {
57
+ if (!agent.did)
58
+ throw new Error('Agent has no public DID');
59
+ const [existing] = await agent.didcomm.connections.findAllByQuery({
60
+ publicDid: peerPublicDid,
61
+ });
62
+ if (existing)
63
+ return (await agent.didcomm.connections.returnWhenIsConnected(existing.id)).id;
64
+ const { connectionRecord } = await agent.didcomm.oob.receiveImplicitInvitation({
65
+ did: peerPublicDid,
66
+ ourDid: agent.did,
67
+ label: agent.label,
68
+ didCommVersion: 'v2',
69
+ });
70
+ if (!connectionRecord)
71
+ throw new Error(`Failed to establish a DIDComm connection to ${peerPublicDid}`);
72
+ try {
73
+ // Tag the record with the public DID of the peer, to find it on the next call.
74
+ connectionRecord.setTag('publicDid', peerPublicDid);
75
+ await agent.context.resolve(didcomm_1.DidCommConnectionRepository).update(agent.context, connectionRecord);
76
+ const ready = await agent.didcomm.connections.returnWhenIsConnected(connectionRecord.id);
77
+ return ready.id;
78
+ }
79
+ catch (error) {
80
+ // Delete the incomplete record. If it stays, the next call reuses a connection that
81
+ // the peer never completed, and a later retry adds a duplicate record for the pair.
82
+ await agent.didcomm.connections.deleteById(connectionRecord.id).catch(deleteError => {
83
+ agent.config.logger.warn(`Failed to delete the incomplete connection ${connectionRecord.id}`, {
84
+ error: deleteError,
85
+ });
86
+ });
87
+ throw error;
88
+ }
89
+ }
41
90
  async function getRecordId(agent, id) {
42
91
  var _a;
43
92
  const record = await agent.genericRecords.findById(id);
@@ -49,7 +98,7 @@ async function getWebDid(agent) {
49
98
  if (parsedDid.method === 'web')
50
99
  return agent.did;
51
100
  if (parsedDid.method === 'webvh')
52
- return `did:web:${parsedDid.id.split(':')[1]}`;
101
+ return `did:web:${parsedDid.id.split(':').slice(1).join(':')}`;
53
102
  }
54
103
  }
55
104
  //# sourceMappingURL=agent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/utils/agent.ts"],"names":[],"mappings":";;AAYA,4CA+CC;AAED,kCAGC;AAED,8BAOC;AAvED,yCAAyC;AACzC,+CAAiG;AAEjG;;;;;;GAMG;AACI,KAAK,UAAU,gBAAgB,CAAC,OAOtC;IACC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,iBAAiB,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,OAAO,CAAA;IAE9F,uEAAuE;IACvE,MAAM,MAAM,GACV,KAAK,CAAC,GAAG,IAAI,IAAA,eAAQ,EAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,OAAO,IAAI,YAAY;QACjE,CAAC,CAAC,WAAW,IAAA,eAAQ,EAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;QACnD,CAAC,CAAC,KAAK,CAAC,GAAG,CAAA;IAEf,MAAM,gBAAgB,GAAmB,cAAc,aAAd,cAAc,cAAd,cAAc,GAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IACvG,MAAM,IAAI,GAAG,gBAAgB,KAAK,IAAI,CAAA;IAEtC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CACb,iBAAiB,gBAAgB,wCAAwC;YACvE,qBAAqB,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;YACzE,QAAQ,gBAAgB,sEAAsE,CACjG,CAAA;IACH,CAAC;IAED,MAAM,mBAAmB,GAAG,CAC1B,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,iBACtC,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,kBAAkB,EAAE,CAAC,QAAQ,EAC7B,QAAQ;QACR,QAAQ,EACR,cAAc,EAAE,gBAAgB,IAC7B,CAAC,IAAI;QACN,CAAC,CAAC,EAAE,MAAM,EAAE;QACZ,CAAC,CAAC;YACE,kBAAkB,EAAE,CAAC,kCAAwB,CAAC,WAAW,EAAE,kCAAwB,CAAC,WAAW,CAAC;YAChG,aAAa,EAAE,MAAM;SACtB,CAAC,EACN,CACH,CAAC,mBAAmB,CAAA;IACrB,OAAO;QACL,GAAG,EAAE,mBAAmB,CAAC,KAAK,CAAC;YAC7B,MAAM,EAAE,iBAAiB;SAC1B,CAAC;KACH,CAAA;AACH,CAAC;AAEM,KAAK,UAAU,WAAW,CAAC,KAAc,EAAE,EAAU;;IAC1D,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IACtD,OAAO,MAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAC,WAAW,CAAY,mCAAI,EAAE,CAAA;AACtD,CAAC;AAEM,KAAK,UAAU,SAAS,CAAC,KAAc;IAC5C,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;QACd,MAAM,SAAS,GAAG,IAAA,eAAQ,EAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAErC,IAAI,SAAS,CAAC,MAAM,KAAK,KAAK;YAAE,OAAO,KAAK,CAAC,GAAG,CAAA;QAChD,IAAI,SAAS,CAAC,MAAM,KAAK,OAAO;YAAE,OAAO,WAAW,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAClF,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/utils/agent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { Logger } from '@credo-ts/core';
2
+ import { VsAgent } from '../agent/VsAgent';
3
+ /**
4
+ * Waits until this agent's own DID document is fetchable at its public endpoint, so a peer
5
+ * can resolve it as soon as we reach out. Checks the same file a peer's resolver would fetch:
6
+ * did.jsonl for did:webvh, did.json for did:web. Logs and returns if the deadline passes,
7
+ * rather than blocking the caller forever on a misconfigured deployment.
8
+ */
9
+ export declare function waitUntilOwnDidIsPubliclyResolvable(agent: VsAgent, logger: Logger): Promise<void>;
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.waitUntilOwnDidIsPubliclyResolvable = waitUntilOwnDidIsPubliclyResolvable;
4
+ // On a fresh deployment, the ingress route to this agent's own public endpoint
5
+ // can lag a few seconds behind the process becoming ready (e.g. a k8s Service
6
+ // has not finished propagating the new pod IP yet). A peer resolves our DID as
7
+ // part of processing any message we send it, so we wait for our own DID
8
+ // document to be publicly fetchable before reaching out to one.
9
+ const OWN_DID_READY_TIMEOUT_MS = 60000;
10
+ const OWN_DID_READY_POLL_INTERVAL_MS = 2000;
11
+ /**
12
+ * Waits until this agent's own DID document is fetchable at its public endpoint, so a peer
13
+ * can resolve it as soon as we reach out. Checks the same file a peer's resolver would fetch:
14
+ * did.jsonl for did:webvh, did.json for did:web. Logs and returns if the deadline passes,
15
+ * rather than blocking the caller forever on a misconfigured deployment.
16
+ */
17
+ async function waitUntilOwnDidIsPubliclyResolvable(agent, logger) {
18
+ const did = agent.did;
19
+ if (!did || !agent.publicApiBaseUrl)
20
+ return;
21
+ const documentFile = did.startsWith('did:web:') ? 'did.json' : 'did.jsonl';
22
+ const baseUrl = agent.publicApiBaseUrl.replace(/\/+$/, '');
23
+ // A path-based DID location serves its document at <base>/did.json(l), not under /.well-known
24
+ const hasPath = new URL(baseUrl).pathname !== '/';
25
+ const url = hasPath ? `${baseUrl}/${documentFile}` : `${baseUrl}/.well-known/${documentFile}`;
26
+ const deadline = Date.now() + OWN_DID_READY_TIMEOUT_MS;
27
+ let lastStatus = 'unreachable';
28
+ while (Date.now() < deadline) {
29
+ try {
30
+ const response = await fetch(url);
31
+ if (response.ok)
32
+ return;
33
+ lastStatus = response.status;
34
+ }
35
+ catch (error) {
36
+ lastStatus = error.message;
37
+ }
38
+ await new Promise(resolve => setTimeout(resolve, OWN_DID_READY_POLL_INTERVAL_MS));
39
+ }
40
+ logger.warn(`[DidReadiness] own DID document at ${url} was not publicly resolvable after ${OWN_DID_READY_TIMEOUT_MS}ms (last: ${lastStatus}); proceeding anyway`);
41
+ }
42
+ //# sourceMappingURL=didReadiness.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"didReadiness.js","sourceRoot":"","sources":["../../src/utils/didReadiness.ts"],"names":[],"mappings":";;AAkBA,kFAyBC;AAvCD,+EAA+E;AAC/E,8EAA8E;AAC9E,+EAA+E;AAC/E,wEAAwE;AACxE,gEAAgE;AAChE,MAAM,wBAAwB,GAAG,KAAM,CAAA;AACvC,MAAM,8BAA8B,GAAG,IAAK,CAAA;AAE5C;;;;;GAKG;AACI,KAAK,UAAU,mCAAmC,CAAC,KAAc,EAAE,MAAc;IACtF,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAA;IACrB,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB;QAAE,OAAM;IAE3C,MAAM,YAAY,GAAG,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAA;IAC1E,MAAM,OAAO,GAAG,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IAC1D,8FAA8F;IAC9F,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAA;IACjD,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,YAAY,EAAE,CAAC,CAAC,CAAC,GAAG,OAAO,gBAAgB,YAAY,EAAE,CAAA;IAE7F,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,wBAAwB,CAAA;IACtD,IAAI,UAAU,GAAoB,aAAa,CAAA;IAC/C,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA;YACjC,IAAI,QAAQ,CAAC,EAAE;gBAAE,OAAM;YACvB,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAA;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,UAAU,GAAI,KAAe,CAAC,OAAO,CAAA;QACvC,CAAC;QACD,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,8BAA8B,CAAC,CAAC,CAAA;IACnF,CAAC;IACD,MAAM,CAAC,IAAI,CACT,sCAAsC,GAAG,sCAAsC,wBAAwB,aAAa,UAAU,sBAAsB,CACrJ,CAAA;AACH,CAAC"}